Deep troubleshooting
Diagnostik berbasis gejala dengan urutan perintah persis dan signature log.
Configuration
Panduan penyiapan berorientasi tugas + referensi konfigurasi lengkap.
Secrets management
Kontrak SecretRef, perilaku snapshot runtime, dan operasi migrasi/muat ulang.
Secrets plan contract
Aturan target/path
secrets apply yang persis dan perilaku profil autentikasi hanya-ref.Startup lokal 5 menit
Verify service health
Runtime: running, Connectivity probe: ok, dan Capability: ... yang sesuai dengan ekspektasi Anda. Gunakan openclaw gateway status --require-rpc saat Anda memerlukan bukti RPC cakupan-baca, bukan sekadar keterjangkauan.Muat ulang konfigurasi Gateway memantau path file konfigurasi aktif (diselesaikan dari default profil/state, atau
OPENCLAW_CONFIG_PATH saat disetel).
Mode default adalah gateway.reload.mode="hybrid".
Setelah pemuatan berhasil pertama, proses yang berjalan menyajikan snapshot konfigurasi dalam memori yang aktif; muat ulang yang berhasil menukar snapshot tersebut secara atomik.Model runtime
- Satu proses selalu aktif untuk perutean, control plane, dan koneksi channel.
- Satu port termultipleks untuk:
- Kontrol/RPC WebSocket
- API HTTP (
/v1/models,/v1/embeddings,/v1/chat/completions,/v1/responses,/tools/invoke) - Rute HTTP Plugin, seperti
/api/v1/admin/rpcopsional - Control UI dan hook
- Mode bind default:
loopback. - Autentikasi diwajibkan secara default. Penyiapan shared-secret menggunakan
gateway.auth.token/gateway.auth.password(atauOPENCLAW_GATEWAY_TOKEN/OPENCLAW_GATEWAY_PASSWORD), dan penyiapan reverse-proxy non-loopback dapat menggunakangateway.auth.mode: "trusted-proxy".
Endpoint yang kompatibel dengan OpenAI
Permukaan kompatibilitas OpenClaw dengan leverage tertinggi sekarang adalah:GET /v1/modelsGET /v1/models/{id}POST /v1/embeddingsPOST /v1/chat/completionsPOST /v1/responses
- Sebagian besar integrasi Open WebUI, LobeChat, dan LibreChat memeriksa
/v1/modelsterlebih dahulu. - Banyak pipeline RAG dan memori mengharapkan
/v1/embeddings. - Klien native-agent semakin memilih
/v1/responses.
/v1/modelsmengutamakan agent: endpoint ini mengembalikanopenclaw,openclaw/default, danopenclaw/<agentId>.openclaw/defaultadalah alias stabil yang selalu memetakan ke agent default yang dikonfigurasi.- Gunakan
x-openclaw-modelsaat Anda menginginkan override provider/model backend; jika tidak, model normal dan penyiapan embedding agent yang dipilih tetap memegang kendali.
POST /api/v1/admin/rpc) adalah rute Plugin terpisah yang nonaktif secara default untuk tooling host yang tidak dapat menggunakan RPC WebSocket. Lihat RPC HTTP Admin.
Prioritas port dan bind
| Pengaturan | Urutan resolusi |
|---|---|
| Port Gateway | --port → OPENCLAW_GATEWAY_PORT → gateway.port → 18789 |
| Mode bind | CLI/override → gateway.bind → loopback |
--port yang terselesaikan dalam metadata supervisor. Setelah mengubah gateway.port, jalankan openclaw doctor --fix atau openclaw gateway install --force agar launchd/systemd/schtasks memulai proses pada port baru.
Startup Gateway menggunakan port dan bind efektif yang sama saat mengisi origin
Control UI lokal untuk bind non-loopback. Misalnya, --bind lan --port 3000
mengisi http://localhost:3000 dan http://127.0.0.1:3000 sebelum validasi
runtime berjalan. Tambahkan origin browser jarak jauh apa pun, seperti URL proxy HTTPS, ke
gateway.controlUi.allowedOrigins secara eksplisit.
Mode hot reload
gateway.reload.mode | Perilaku |
|---|---|
off | Tidak ada muat ulang konfigurasi |
hot | Terapkan hanya perubahan yang aman-hot |
restart | Mulai ulang pada perubahan yang memerlukan muat ulang |
hybrid (default) | Terapkan-hot saat aman, mulai ulang saat diperlukan |
Kumpulan perintah operator
gateway status --deep digunakan untuk penemuan layanan tambahan (LaunchDaemons/unit sistem systemd/schtasks), bukan probe kesehatan RPC yang lebih dalam.
Beberapa Gateway (host yang sama)
Sebagian besar instalasi sebaiknya menjalankan satu Gateway per mesin. Satu Gateway dapat meng-host beberapa agent dan channel. Anda hanya memerlukan beberapa Gateway saat Anda sengaja menginginkan isolasi atau bot penyelamat. Pemeriksaan berguna:gateway status --deepdapat melaporkanOther gateway-like services detected (best effort)dan mencetak petunjuk pembersihan saat instalasi launchd/systemd/schtasks lama masih ada.gateway probedapat memperingatkan tentangmultiple reachable gateway identitiessaat Gateway yang berbeda menjawab, atau saat OpenClaw tidak dapat membuktikan target yang dapat dijangkau adalah Gateway yang sama. Tunnel SSH, URL proxy, atau URL jarak jauh yang dikonfigurasi ke Gateway yang sama adalah satu Gateway dengan beberapa transport, meskipun port transport berbeda.- Jika itu disengaja, isolasikan port, konfigurasi/state, dan root workspace per Gateway.
gateway.portunikOPENCLAW_CONFIG_PATHunikOPENCLAW_STATE_DIRunikagents.defaults.workspaceunik
Akses jarak jauh
Direkomendasikan: Tailscale/VPN. Fallback: tunnel SSH.ws://127.0.0.1:18789.
Lihat: Gateway Jarak Jauh, Autentikasi, Tailscale.
Supervisi dan siklus hidup layanan
Gunakan proses yang diawasi untuk keandalan seperti produksi.- macOS (launchd)
- Linux (systemd user)
- Windows (native)
- Linux (system service)
openclaw gateway restart untuk mulai ulang. Jangan merangkai openclaw gateway stop dan openclaw gateway start sebagai pengganti mulai ulang.Di macOS, gateway stop menggunakan launchctl bootout secara default — ini menghapus LaunchAgent dari sesi boot saat ini tanpa mempertahankan penonaktifan, sehingga pemulihan otomatis KeepAlive tetap berfungsi setelah crash tak terduga dan gateway start mengaktifkan ulang dengan bersih. Untuk menekan auto-respawn secara permanen lintas reboot, berikan --disable: openclaw gateway stop --disable.Label LaunchAgent adalah ai.openclaw.gateway (default) atau ai.openclaw.<profile> (profil bernama). openclaw doctor mengaudit dan memperbaiki drift konfigurasi layanan.Jalur cepat profil dev
19001.
Referensi cepat protokol (tampilan operator)
- Frame klien pertama harus
connect. - Gateway mengembalikan snapshot
hello-ok(presence,health,stateVersion,uptimeMs, limit/kebijakan). hello-ok.features.methods/eventsadalah daftar penemuan konservatif, bukan dump yang dihasilkan dari setiap rute helper yang dapat dipanggil.- Permintaan:
req(method, params)→res(ok/payload|error). - Event umum mencakup
connect.challenge,agent,chat,session.message,session.operation,session.tool,sessions.changed,presence,tick,health,heartbeat, event siklus hidup pairing/approval, danshutdown.
- Ack diterima langsung (
status:"accepted") - Respons penyelesaian final (
status:"ok"|"error"), dengan eventagentyang di-stream di antaranya.
Pemeriksaan operasional
Liveness
- Buka WS dan kirim
connect. - Harapkan respons
hello-okdengan snapshot.
Readiness
Pemulihan gap
Event tidak diputar ulang. Pada gap sequence, segarkan state (health, system-presence) sebelum melanjutkan.
Signature kegagalan umum
| Tanda tangan | Kemungkinan masalah |
|---|---|
refusing to bind gateway ... without auth | Pengikatan non-loopback tanpa jalur auth gateway yang valid |
another gateway instance is already listening / EADDRINUSE | Konflik port |
Gateway start blocked: set gateway.mode=local | Konfigurasi diatur ke mode remote, atau stempel mode lokal hilang dari konfigurasi yang rusak |
unauthorized during connect | Ketidakcocokan auth antara klien dan Gateway |
Jaminan keamanan
- Klien protokol Gateway gagal cepat saat Gateway tidak tersedia (tidak ada fallback direct-channel implisit).
- Frame pertama yang tidak valid/tidak terhubung ditolak dan ditutup.
- Shutdown anggun memancarkan peristiwa
shutdownsebelum socket ditutup.
Terkait: