Tools
Pemecahan masalah peramban
Masalah: "Gagal memulai Chrome CDP pada port 18800"
Server kontrol browser OmeniaClaw gagal meluncurkan Chrome/Brave/Edge/Chromium dengan galat:
{"error":"Error: Failed to start Chrome CDP on port 18800 for profile \"OmeniaClaw\"."}Akar penyebab
Di Ubuntu (dan banyak distro Linux), instalasi Chromium bawaan adalah paket snap. Pembatasan AppArmor milik Snap mengganggu cara OmeniaClaw memunculkan dan memantau proses browser.
Perintah apt install chromium memasang paket stub yang mengalihkan ke snap:
Note, selecting 'chromium-browser' instead of 'chromium'chromium-browser is already the newest version (2:1snap1-0ubuntu2).Ini BUKAN browser sungguhan - hanya sebuah wrapper.
Kegagalan peluncuran Linux umum lainnya:
The profile appears to be in use by another Chromium processberarti Chrome menemukan berkas kunciSingleton*usang di direktori profil terkelola. OmeniaClaw menghapus kunci tersebut dan mencoba sekali lagi ketika kunci menunjuk ke proses yang sudah mati atau host yang berbeda.Missing X server or $DISPLAYberarti browser terlihat diminta secara eksplisit pada host tanpa sesi desktop. Secara default, profil lokal terkelola sekarang kembali ke mode headless di Linux ketikaDISPLAYdanWAYLAND_DISPLAYsama-sama tidak disetel. Jika Anda menyetelOmeniaClaw_BROWSER_HEADLESS=0,browser.headless: false, ataubrowser.profiles.<name>.headless: false, hapus override headed tersebut, setelOmeniaClaw_BROWSER_HEADLESS=1, mulaiXvfb, jalankanOmeniaClaw browser start --headlessuntuk peluncuran terkelola sekali jalan, atau jalankan OmeniaClaw dalam sesi desktop sungguhan.
Solusi 1: Pasang Google Chrome (Direkomendasikan)
Pasang paket resmi Google Chrome .deb, yang tidak di-sandbox oleh snap:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.debsudo dpkg -i google-chrome-stable_current_amd64.debsudo apt --fix-broken install -y # if there are dependency errorsLalu perbarui konfigurasi OmeniaClaw Anda (~/.OmeniaClaw/OmeniaClaw.json):
{ "browser": { "enabled": true, "executablePath": "/usr/bin/google-chrome-stable", "headless": true, "noSandbox": true }}Solusi 2: Gunakan Snap Chromium dengan Mode Hanya-Attach
Jika Anda harus menggunakan snap Chromium, konfigurasikan OmeniaClaw untuk attach ke browser yang dimulai secara manual:
- Perbarui konfigurasi:
{ "browser": { "enabled": true, "attachOnly": true, "headless": true, "noSandbox": true }}- Mulai Chromium secara manual:
chromium-browser --headless --no-sandbox --disable-gpu \ --remote-debugging-port=18800 \ --user-data-dir=$HOME/.OmeniaClaw/browser/OmeniaClaw/user-data \ about:blank &- Secara opsional, buat layanan pengguna systemd untuk memulai Chrome otomatis:
# ~/.config/systemd/user/OmeniaClaw-browser.service[Unit]Description=OmeniaClaw Browser (Chrome CDP)After=network.target [Service]ExecStart=/snap/bin/chromium --headless --no-sandbox --disable-gpu --remote-debugging-port=18800 --user-data-dir=%h/.OmeniaClaw/browser/OmeniaClaw/user-data about:blankRestart=on-failureRestartSec=5 [Install]WantedBy=default.targetAktifkan dengan: systemctl --user enable --now OmeniaClaw-browser.service
Memverifikasi Browser Berfungsi
Periksa status:
curl -s http://127.0.0.1:18791/ | jq '{running, pid, chosenBrowser}'Uji penjelajahan:
curl -s -X POST http://127.0.0.1:18791/startcurl -s http://127.0.0.1:18791/tabsReferensi konfigurasi
| Opsi | Deskripsi | Bawaan |
|---|---|---|
browser.enabled |
Aktifkan kontrol browser | true |
browser.executablePath |
Path ke biner browser berbasis Chromium (Chrome/Brave/Edge/Chromium) | terdeteksi otomatis (mengutamakan browser bawaan jika berbasis Chromium) |
browser.headless |
Jalankan tanpa GUI | false |
OmeniaClaw_BROWSER_HEADLESS |
Override per proses untuk mode headless browser lokal terkelola | tidak disetel |
browser.noSandbox |
Tambahkan flag --no-sandbox (diperlukan untuk sebagian setup Linux) |
false |
browser.attachOnly |
Jangan luncurkan browser, hanya attach ke yang sudah ada | false |
browser.cdpPort |
Port Chrome DevTools Protocol | 18800 |
browser.localLaunchTimeoutMs |
Timeout penemuan Chrome lokal terkelola | 15000 |
browser.localCdpReadyTimeoutMs |
Timeout kesiapan CDP setelah peluncuran lokal terkelola | 8000 |
Pada Raspberry Pi, host VPS lama, atau penyimpanan lambat, naikkan
browser.localLaunchTimeoutMs ketika Chrome memerlukan lebih banyak waktu untuk mengekspos endpoint HTTP CDP-nya. Naikkan browser.localCdpReadyTimeoutMs ketika peluncuran berhasil tetapi
OmeniaClaw browser start masih melaporkan not reachable after start. Nilai harus
berupa bilangan bulat positif hingga 120000 ms; nilai konfigurasi yang tidak valid akan ditolak.
Masalah: "Tidak ada tab Chrome yang ditemukan untuk profile="user""
Anda menggunakan profil existing-session / Chrome MCP. OmeniaClaw dapat melihat Chrome lokal,
tetapi tidak ada tab terbuka yang tersedia untuk di-attach.
Opsi perbaikan:
- Gunakan browser terkelola:
OmeniaClaw browser start --browser-profile OmeniaClaw(atau setelbrowser.defaultProfile: "OmeniaClaw"). - Gunakan Chrome MCP: pastikan Chrome lokal berjalan dengan setidaknya satu tab terbuka, lalu coba lagi dengan
--browser-profile user.
Catatan:
userhanya untuk host lokal. Untuk server Linux, kontainer, atau host jarak jauh, utamakan profil CDP.- Profil
user/existing-sessionlainnya mempertahankan batasan Chrome MCP saat ini: aksi berbasis ref, hook unggah satu berkas, tanpa override timeout dialog, tanpawait --load networkidle, dan tanparesponsebody, ekspor PDF, intersepsi unduhan, atau aksi batch. - Profil
OmeniaClawlokal menetapkan otomatiscdpPort/cdpUrl; hanya setel itu untuk CDP jarak jauh. - Profil CDP jarak jauh menerima
http://,https://,ws://, danwss://. Gunakan HTTP(S) untuk penemuan/json/version, atau WS(S) ketika layanan browser Anda memberi URL soket DevTools langsung.