Tools
Pemecahan masalah browser
Masalah: Gagal memulai Chrome CDP pada port 18800
{ "error": "Error: Failed to start Chrome CDP on port 18800 for profile \"openclaw\"." }Penyebab utama
Di Ubuntu dan sebagian besar distro Linux, apt install chromium memasang pembungkus snap,
bukan peramban sebenarnya:
Note, selecting 'chromium-browser' instead of 'chromium'chromium-browser is already the newest version (2:1snap1-0ubuntu2).Pembatasan AppArmor milik Snap mengganggu cara OpenClaw menjalankan dan memantau proses peramban.
Kegagalan peluncuran Linux umum lainnya:
The profile appears to be in use by another Chromium process: berkas kunciSingleton*usang dalam direktori profil terkelola. OpenClaw menghapus kunci ini dan mencoba sekali lagi saat kunci mengarah ke proses yang sudah mati atau proses pada host lain.Missing X server or $DISPLAY: peramban dengan tampilan diminta secara eksplisit pada host tanpa sesi desktop. Profil lokal terkelola beralih ke mode tanpa antarmuka di Linux saatDISPLAYdanWAYLAND_DISPLAYkeduanya tidak disetel. Jika Anda menyetelOPENCLAW_BROWSER_HEADLESS=0,browser.headless: false, ataubrowser.profiles.<name>.headless: false, hapus penggantian mode bertampilan tersebut, setelOPENCLAW_BROWSER_HEADLESS=1, mulaiXvfb, jalankanopenclaw browser start --headlessuntuk peluncuran terkelola sekali pakai, atau jalankan OpenClaw dalam sesi desktop sebenarnya.
Solusi 1: instal Google Chrome (disarankan)
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 # jika terdapat kesalahan dependensiPerbarui ~/.openclaw/openclaw.json:
{ "browser": { "enabled": true, "executablePath": "/usr/bin/google-chrome-stable", "headless": true, "noSandbox": true }}Solusi 2: gunakan Chromium snap dalam mode hanya-lampirkan
Jika Anda harus tetap menggunakan Chromium snap, konfigurasikan OpenClaw agar terhubung ke peramban yang dimulai secara manual alih-alih meluncurkannya:
{ "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/.openclaw/browser/openclaw/user-data \ about:blank &Secara opsional, mulai otomatis dengan layanan pengguna systemd:
# ~/.config/systemd/user/openclaw-browser.service[Unit]Description=OpenClaw Browser (Chrome CDP)After=network.target [Service]ExecStart=/snap/bin/chromium --headless --no-sandbox --disable-gpu --remote-debugging-port=18800 --user-data-dir=%h/.openclaw/browser/openclaw/user-data about:blankRestart=on-failureRestartSec=5 [Install]WantedBy=default.targetsystemctl --user enable --now openclaw-browser.serviceVerifikasi bahwa peramban berfungsi
curl -s http://127.0.0.1:18791/ | jq '{running, pid, chosenBrowser}'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 peramban | true |
browser.executablePath |
Jalur ke biner peramban berbasis Chromium (Chrome/Brave/Edge/Chromium) | terdeteksi otomatis (mengutamakan peramban bawaan OS jika berbasis Chromium) |
browser.headless |
Jalankan tanpa GUI | false |
OPENCLAW_BROWSER_HEADLESS |
Penggantian per proses untuk mode tanpa antarmuka peramban lokal terkelola | tidak disetel |
browser.noSandbox |
Tambahkan flag --no-sandbox (diperlukan untuk beberapa konfigurasi Linux) |
false |
browser.attachOnly |
Jangan luncurkan peramban; hanya hubungkan ke peramban yang sudah ada | false |
browser.cdpPortRangeStart |
Port CDP lokal awal untuk profil yang ditetapkan otomatis | 18800 (diturunkan dari port Gateway) |
browser.localLaunchTimeoutMs |
Batas waktu penemuan Chrome lokal terkelola, hingga 120000 |
15000 |
browser.localCdpReadyTimeoutMs |
Batas waktu kesiapan CDP setelah peluncuran lokal terkelola, hingga 120000 |
8000 |
Kedua nilai batas waktu harus berupa bilangan bulat positif hingga 120000 md; nilai lainnya
ditolak saat konfigurasi dimuat. Pada Raspberry Pi, host VPS lama, atau penyimpanan
lambat, naikkan browser.localLaunchTimeoutMs jika Chrome memerlukan waktu lebih lama untuk
menyediakan titik akhir HTTP CDP-nya. Naikkan browser.localCdpReadyTimeoutMs jika
peluncuran berhasil tetapi openclaw browser start masih melaporkan not reachable after start.
Masalah: Tidak ditemukan tab Chrome untuk profile="user"
Anda menggunakan profil user (existing-session / Chrome MCP) dan tidak ada
tab yang terbuka untuk dihubungkan.
Opsi perbaikan:
- Gunakan peramban terkelola sebagai gantinya:
openclaw browser --browser-profile openclaw start(atau setelbrowser.defaultProfile: "openclaw"). - Biarkan Chrome lokal tetap berjalan dengan setidaknya satu tab terbuka, lalu coba lagi dengan
--browser-profile user.
Catatan:
userhanya tersedia pada host. Pada server Linux, kontainer, atau host jarak jauh, utamakan profil CDP.userdan profilexisting-sessionlainnya memiliki batasan Chrome MCP saat ini yang sama: hanya tindakan berbasis referensi, satu berkas per unggahan, tanpa penggantiantimeoutMsdialog, tanpawait --load networkidle, serta tanparesponsebody, ekspor PDF, intersepsi unduhan, atau tindakan massal.- Profil driver
openclawlokal menetapkancdpPort/cdpUrlsecara otomatis; hanya setel nilai tersebut secara manual untuk CDP jarak jauh. - Profil CDP jarak jauh menerima
http://,https://,ws://, danwss://. Gunakan HTTP(S) untuk penemuan/json/version, atau WS(S) jika layanan peramban memberikan URL soket DevTools langsung.