Jawaban singkat ditambah pemecahan masalah yang lebih mendalam untuk penyiapan di dunia nyata (pengembangan lokal, VPS, multiagen, kunci OAuth/API, failover model). Untuk diagnostik runtime, lihat Pemecahan Masalah. Untuk referensi konfigurasi lengkap, lihat Konfigurasi.
60 detik pertama jika ada yang bermasalah
Status cepat
bash
openclaw status
Ringkasan lokal cepat: OS + pembaruan, keterjangkauan gateway/layanan, agen/sesi, konfigurasi penyedia + masalah runtime (saat gateway dapat dijangkau).
Laporan yang dapat ditempel (aman dibagikan)
bash
openclaw status --all
Diagnosis hanya-baca dengan bagian akhir log (token disamarkan).
Status daemon + port
bash
openclaw gateway status
Menampilkan runtime supervisor dibandingkan keterjangkauan RPC, URL target probe, dan konfigurasi yang kemungkinan digunakan layanan.
Probe mendalam
bash
openclaw status --deep
Probe kesehatan gateway secara langsung, termasuk probe saluran jika didukung (memerlukan gateway yang dapat dijangkau). Lihat Kesehatan.
Ikuti log terbaru
bash
openclaw logs --follow
Jika RPC tidak aktif, gunakan sebagai alternatif:
bash
tail -f "$(ls -t /tmp/openclaw/openclaw-*.log | head -1)"
Memperbaiki/memigrasikan konfigurasi dan status, lalu menjalankan pemeriksaan kesehatan. Lihat Doctor.
Snapshot Gateway (khusus WS)
bash
openclaw health --jsonopenclaw health --verbose # menampilkan URL target + jalur konfigurasi saat terjadi kesalahan
Meminta snapshot lengkap dari gateway yang sedang berjalan. Lihat Kesehatan.
Mulai cepat dan penyiapan pertama kali
Tanya jawab penggunaan pertama—instalasi, orientasi awal, rute autentikasi, langganan, kegagalan awal—tersedia di Tanya Jawab Penggunaan Pertama.
Apa itu OpenClaw?
Apa itu OpenClaw, dalam satu paragraf?
OpenClaw adalah asisten AI pribadi yang Anda jalankan di perangkat sendiri. OpenClaw merespons melalui sarana perpesanan yang sudah Anda gunakan (Discord, Google Chat, iMessage, Mattermost, Signal, Slack, Telegram, WebChat, WhatsApp, dan plugin saluran bawaan seperti QQ Bot), serta dapat menyediakan suara dan Canvas langsung pada platform yang didukung. Gateway adalah bidang kendali yang selalu aktif; asistennya adalah produk.
Proposisi nilai
OpenClaw bukan "sekadar pembungkus Claude". OpenClaw adalah bidang kendali yang mengutamakan penggunaan lokal dan menjalankan asisten berkemampuan tinggi pada perangkat keras Anda sendiri, dapat diakses dari aplikasi obrolan yang sudah Anda gunakan, dengan sesi berstatus, memori, dan alat—tanpa menyerahkan alur kerja Anda kepada SaaS terkelola.
Perangkat Anda, data Anda: jalankan Gateway di mana pun Anda inginkan (Mac, Linux, VPS) dan simpan ruang kerja serta riwayat sesi secara lokal.
Saluran nyata, bukan sandbox web: Discord/iMessage/Signal/Slack/Telegram/WhatsApp/dan lainnya, ditambah suara seluler dan Canvas pada platform yang didukung.
Tidak bergantung pada model tertentu: gunakan Anthropic, MiniMax, OpenAI, OpenRouter, dan lainnya, dengan perutean per agen dan failover.
Opsi khusus lokal: jalankan model lokal agar semua data dapat tetap berada di perangkat Anda.
Perutean multiagen: pisahkan agen berdasarkan saluran, akun, atau tugas, masing-masing dengan ruang kerja dan nilai default sendiri.
Sumber terbuka dan dapat dimodifikasi: periksa, perluas, dan lakukan hosting mandiri tanpa ketergantungan pada vendor.
Saya baru saja menyiapkannya—apa yang sebaiknya dilakukan terlebih dahulu?
Proyek awal yang baik: buat situs web (WordPress, Shopify, atau situs statis); buat prototipe aplikasi seluler (kerangka, layar, rencana API); tata berkas dan folder; hubungkan Gmail dan otomatisasikan ringkasan atau tindak lanjut.
OpenClaw dapat menangani tugas besar, tetapi bekerja paling baik jika tugas dibagi menjadi beberapa fase dengan subagen untuk pekerjaan paralel.
Apa lima kasus penggunaan sehari-hari teratas untuk OpenClaw?
Pengarahan pribadi: ringkasan kotak masuk, kalender, dan berita yang penting bagi Anda.
Riset dan penyusunan draf: riset cepat, ringkasan, dan draf awal untuk email atau dokumen.
Pengingat dan tindak lanjut: dorongan serta daftar periksa berbasis Cron atau Heartbeat.
Otomatisasi peramban: mengisi formulir, mengumpulkan data, dan mengulangi tugas web.
Koordinasi lintas perangkat: kirim tugas dari ponsel Anda, biarkan Gateway menjalankannya di server, lalu terima kembali hasilnya dalam obrolan.
Bisakah OpenClaw membantu pencarian calon pelanggan, penjangkauan, iklan, dan blog untuk SaaS?
Ya, untuk riset, kualifikasi, dan penyusunan draf: memindai situs, menyusun daftar pilihan, merangkum calon pelanggan, serta menulis draf penjangkauan atau teks iklan.
Untuk pelaksanaan penjangkauan atau iklan, tetap libatkan manusia. Hindari spam, patuhi hukum setempat dan kebijakan platform, serta tinjau semuanya sebelum dikirim. Biarkan OpenClaw menyusun draf; Anda menyetujuinya.
Apa keunggulannya dibandingkan Claude Code untuk pengembangan web?
OpenClaw adalah asisten pribadi dan lapisan koordinasi, bukan pengganti IDE. Gunakan Claude Code atau Codex untuk siklus pengodean langsung tercepat di dalam repo. Gunakan OpenClaw untuk memori yang persisten, akses lintas perangkat, dan orkestrasi alat.
Bagaimana cara menyesuaikan skill tanpa membuat repo terus berubah?
Gunakan penggantian terkelola alih-alih mengedit salinan repo. Tempatkan perubahan di ~/.openclaw/skills/<name>/SKILL.md (atau tambahkan folder melalui skills.load.extraDirs di ~/.openclaw/openclaw.json). Prioritas: <workspace>/skills -> <workspace>/.agents/skills -> ~/.agents/skills -> ~/.openclaw/skills -> bawaan -> skills.load.extraDirs, sehingga penggantian terkelola mengungguli Skills bawaan tanpa menyentuh git. Untuk menginstal secara global tetapi membatasi visibilitas hanya pada beberapa agen, simpan salinan bersama di ~/.openclaw/skills dan kendalikan visibilitas dengan agents.defaults.skills / agents.list[].skills. Hanya penyuntingan yang layak dikirim ke hulu yang seharusnya diajukan sebagai PR terhadap salinan repo.
Bisakah saya memuat skill dari folder khusus?
Ya: tambahkan direktori melalui skills.load.extraDirs di ~/.openclaw/openclaw.json (prioritas terendah dalam urutan di atas). clawhub secara default menginstal ke ./skills, yang diperlakukan OpenClaw sebagai <workspace>/skills pada sesi berikutnya. Untuk membatasi visibilitas pada agen tertentu, pasangkan dengan agents.defaults.skills atau agents.list[].skills.
Bagaimana cara menggunakan model atau pengaturan yang berbeda untuk tugas yang berbeda?
Pola yang didukung:
Tugas Cron: tugas terisolasi dapat menetapkan penggantian model untuk setiap tugas.
Agen: rutekan tugas ke agen terpisah dengan model default, tingkat pemikiran, dan parameter aliran yang berbeda.
Peralihan sesuai permintaan: /model mengganti model sesi saat ini kapan saja.
Contoh—model yang sama, pengaturan per agen yang berbeda:
Tempatkan nilai default per model yang digunakan bersama di agents.defaults.models["provider/model"].params, lalu penggantian khusus agen di agents.list[].params datar. Jangan menduplikasi model yang sama di bawah agents.list[].models["provider/model"].params bertingkat; jalur tersebut ditujukan untuk katalog model per agen dan penggantian runtime.
Bot macet saat melakukan pekerjaan berat. Bagaimana cara mengalihkannya?
Gunakan subagen untuk tugas panjang atau paralel: subagen berjalan dalam sesinya sendiri, mengembalikan ringkasan, dan menjaga obrolan utama Anda tetap responsif. Minta bot untuk "membuat subagen bagi tugas ini", atau gunakan /subagents. Gunakan /status untuk melihat apakah Gateway sedang sibuk.
Tugas panjang maupun subagen menggunakan token; tetapkan model yang lebih murah untuk subagen melalui agents.defaults.subagents.model jika biaya menjadi pertimbangan.
Subagen selesai, tetapi pembaruan penyelesaian dikirim ke tempat yang salah atau tidak pernah diposting. Apa yang perlu diperiksa?
Periksa rute peminta yang telah ditentukan:
Pengiriman subagen mode penyelesaian mengutamakan utas atau rute percakapan terikat jika tersedia.
Jika asal penyelesaian hanya membawa saluran, OpenClaw menggunakan rute tersimpan milik sesi peminta (lastChannel / lastTo / lastAccountId) sebagai alternatif agar pengiriman langsung tetap dapat berhasil.
Tidak ada rute terikat dan tidak ada rute tersimpan yang dapat digunakan: pengiriman langsung dapat gagal dan hasilnya beralih ke pengiriman sesi dalam antrean alih-alih langsung diposting.
Target yang tidak valid atau kedaluwarsa juga dapat memaksa penggunaan antrean sebagai alternatif atau menyebabkan kegagalan pengiriman akhir.
Jika balasan asisten terakhir yang terlihat dari proses anak sama persis dengan NO_REPLY / no_reply atau ANNOUNCE_SKIP, OpenClaw sengaja tidak mengirim pengumuman agar tidak memposting kemajuan lama sebelumnya.
Debug: openclaw tasks show <lookup> dengan <lookup> berupa ID tugas, ID eksekusi, atau kunci sesi.
Cron dipicu, tetapi tidak ada yang dikirim ke saluran. Mengapa?
Periksa mode pengiriman:
--no-deliver / delivery.mode: "none": pengiriman fallback pelaksana tidak diharapkan.
Target pengumuman tidak ada atau tidak valid (channel / to): pelaksana melewati pengiriman keluar.
Kegagalan autentikasi saluran (unauthorized, Forbidden): pelaksana mencoba melakukan pengiriman, tetapi kredensial menghalanginya.
Hasil terisolasi yang senyap (hanya NO_REPLY / no_reply) dianggap sengaja tidak dapat dikirim, sehingga pengiriman fallback yang diantrekan juga diblokir.
Untuk pekerjaan Cron terisolasi, agen masih dapat mengirim secara langsung dengan alat message saat rute obrolan tersedia. --announce hanya mengontrol pengiriman fallback pelaksana untuk teks akhir yang belum dikirim sendiri oleh agen.
Debug:
bash
openclaw cron runs --id <jobId> --limit 50openclaw tasks show <lookup>
Mengapa proses Cron terisolasi beralih model atau mencoba ulang sekali?
Itu adalah jalur peralihan model langsung, bukan penjadwalan duplikat. Cron terisolasi mempertahankan penyerahan model runtime dan mencoba ulang ketika proses aktif melempar LiveSessionModelSwitchError, dengan tetap menggunakan penyedia/model yang telah dialihkan (serta penggantian profil autentikasi yang dialihkan, jika ada) sebelum mencoba ulang.
Prioritas pemilihan model: penggantian model hook Gmail (hooks.gmail.model) terlebih dahulu, lalu model per pekerjaan, kemudian penggantian model sesi Cron yang tersimpan, lalu pemilihan model agen/default normal.
Perulangan percobaan ulang dibatasi pada percobaan awal ditambah 2 percobaan ulang peralihan; setelah itu Cron dibatalkan agar tidak berulang selamanya.
Gunakan perintah openclaw skills native atau tempatkan Skills ke ruang kerja Anda; UI Skills macOS tidak tersedia di Linux. Jelajahi Skills di https://clawhub.ai.
openclaw skills install native secara default menulis ke direktori skills/ ruang kerja aktif. Tambahkan --global untuk memasang ke direktori Skills terkelola bersama bagi semua agen lokal. Pasang CLI clawhub terpisah hanya untuk menerbitkan atau menyinkronkan Skills Anda sendiri. Gunakan agents.defaults.skills atau agents.list[].skills untuk membatasi agen yang dapat melihat Skills bersama.
Bisakah OpenClaw menjalankan tugas sesuai jadwal atau terus-menerus di latar belakang?
Ya, melalui penjadwal Gateway:
Pekerjaan Cron untuk tugas terjadwal atau berulang (tetap ada setelah dimulai ulang).
Heartbeat untuk pemeriksaan berkala sesi utama.
Pekerjaan terisolasi untuk agen otonom yang memposting ringkasan atau mengirimkannya ke obrolan.
Bisakah saya menjalankan Skills khusus Apple macOS dari Linux?
Tidak secara langsung. Skills macOS dibatasi oleh metadata.openclaw.os beserta biner yang diperlukan, dan hanya dimuat jika memenuhi syarat pada host Gateway. Di Linux, Skills khusus darwin (apple-notes, apple-reminders, things-mac) tidak akan dimuat kecuali Anda mengganti pembatasan tersebut.
Tiga pola yang didukung:
Opsi A - jalankan Gateway di Mac (paling sederhana). Jalankan Gateway di tempat biner macOS tersedia, lalu hubungkan dari Linux dalam mode jarak jauh atau melalui Tailscale. Skills dimuat secara normal karena host Gateway menggunakan macOS.
Opsi B - gunakan node macOS (tanpa SSH). Jalankan Gateway di Linux, pasangkan node macOS (aplikasi bilah menu), lalu atur Node Run Commands ke "Always Ask" atau "Always Allow" di Mac. OpenClaw menganggap Skills khusus macOS memenuhi syarat ketika biner yang diperlukan tersedia di node; agen menjalankannya melalui alat nodes. Dengan "Always Ask", menyetujui "Always Allow" dalam prompt akan menambahkan perintah tersebut ke daftar yang diizinkan.
Opsi C - proksikan biner macOS melalui SSH (lanjutan). Pertahankan Gateway di Linux, tetapi buat biner CLI yang diperlukan mengarah ke pembungkus SSH yang berjalan di Mac, lalu ganti pengaturan Skills agar mengizinkan Linux sehingga tetap memenuhi syarat.
Buat pembungkus SSH untuk biner tersebut (contoh: memo untuk Apple Notes):bash
Tempatkan pembungkus di PATH pada host Linux (misalnya ~/bin/memo).
Ganti metadata Skills (ruang kerja atau ~/.openclaw/skills) agar mengizinkan Linux:markdown
---name: apple-notesdescription: Kelola Apple Notes melalui CLI memo di macOS.metadata: { "openclaw": { "os": ["darwin", "linux"], "requires": { "bins": ["memo"] } } }---
Mulai sesi baru agar snapshot Skills diperbarui.
Apakah tersedia integrasi Notion atau HeyGen?
Saat ini belum tersedia secara bawaan. Pilihan:
Skills / Plugin khusus: paling sesuai untuk akses API yang andal (keduanya memiliki API).
Otomatisasi peramban: berfungsi tanpa kode, tetapi lebih lambat dan lebih rentan.
Untuk konteks per klien bergaya agensi: simpan satu halaman Notion per klien (konteks + preferensi + pekerjaan aktif) dan minta agen mengambil halaman tersebut pada awal sesi.
Untuk integrasi native, buat permintaan fitur atau bangun Skills berdasarkan API tersebut.
Pemasangan native ditempatkan di direktori skills/ ruang kerja aktif; gunakan --global untuk semua agen lokal, atau konfigurasikan agents.defaults.skills / agents.list[].skills untuk membatasi visibilitas. Beberapa Skills memerlukan biner yang dipasang melalui Homebrew; di Linux, ini berarti Linuxbrew.
Profil ini dapat menggunakan peramban host lokal atau node peramban yang terhubung. Jika Gateway berjalan di tempat lain, jalankan host node pada mesin peramban, atau gunakan CDP jarak jauh.
Batasan saat ini pada profil existing-session / user dibandingkan dengan profil openclaw terkelola:
click, type, hover, scrollIntoView, drag, dan select memerlukan referensi snapshot, bukan pemilih CSS.
Hook unggahan memerlukan ref atau inputRef, satu file setiap kali, tanpa element CSS.
responsebody, ekspor PDF, intersepsi unduhan, dan tindakan batch masih memerlukan jalur peramban terkelola.
Apakah tersedia dokumentasi khusus tentang sandboxing?
Ya: Sandboxing. Untuk penyiapan khusus Docker (Gateway lengkap dalam Docker atau image sandbox), lihat Docker.
Docker terasa terbatas - bagaimana cara mengaktifkan fitur lengkap?
Image default mengutamakan keamanan dan berjalan sebagai pengguna node, sehingga tidak menyertakan paket sistem, Homebrew, dan peramban bawaan. Untuk penyiapan yang lebih lengkap:
Pertahankan /home/node dengan OPENCLAW_HOME_VOLUME agar cache tetap tersedia.
Sertakan dependensi sistem ke dalam image dengan OPENCLAW_IMAGE_APT_PACKAGES.
Pasang peramban Playwright melalui CLI bawaan: node /app/node_modules/playwright-core/cli.js install chromium.
Atur PLAYWRIGHT_BROWSERS_PATH dan pertahankan jalur tersebut.
Bisakah saya menjaga DM tetap pribadi, tetapi membuat grup menjadi publik/terisolasi dengan satu agen?
Ya, jika lalu lintas pribadi berupa DM dan lalu lintas publik berupa grup. Atur agents.defaults.sandbox.mode: "non-main" agar sesi grup/saluran (kunci non-utama) berjalan di backend sandbox yang dikonfigurasi, sementara sesi DM utama tetap berada di host. Docker adalah backend default setelah sandboxing diaktifkan. Batasi alat yang tersedia dalam sesi terisolasi melalui tools.sandbox.tools.
Bagaimana cara mengikat folder host ke dalam sandbox?
Atur agents.defaults.sandbox.docker.binds ke ["host:container:mode"] (misalnya "/home/user/src:/src:ro"). Pengikatan global dan per agen digabungkan; pengikatan per agen diabaikan ketika scope: "shared". Gunakan :ro untuk semua hal sensitif; pengikatan melewati batas sistem berkas sandbox.
OpenClaw memvalidasi sumber pengikatan terhadap jalur yang dinormalisasi dan jalur kanonis yang diselesaikan melalui leluhur terdalam yang tersedia, sehingga pelolosan melalui induk symlink ditolak secara aman meskipun segmen jalur terakhir belum tersedia.
Memori OpenClaw berupa file Markdown dalam ruang kerja agen: catatan harian di memory/YYYY-MM-DD.md, catatan jangka panjang yang dikurasi di MEMORY.md (khusus sesi utama/pribadi).
OpenClaw juga menjalankan pembuangan memori pra-Compaction secara senyap sebelum Compaction meringkas percakapan, untuk mengingatkan model agar menulis catatan persisten terlebih dahulu. Proses ini hanya berjalan ketika ruang kerja dapat ditulis (sandbox hanya-baca melewatinya); nonaktifkan dengan agents.defaults.compaction.memoryFlush.enabled: false. Lihat Memori.
Memori terus melupakan berbagai hal. Bagaimana cara membuatnya tetap tersimpan?
Minta bot untuk menulis fakta tersebut ke memori: catatan jangka panjang disimpan di MEMORY.md, sedangkan konteks jangka pendek di memory/YYYY-MM-DD.md. Mengingatkan model agar menyimpan memori biasanya mengatasi masalah ini. Jika model tetap lupa, pastikan Gateway menggunakan ruang kerja yang sama pada setiap proses.
File memori berada di disk dan bertahan hingga dihapus; batasnya adalah penyimpanan Anda, bukan model. Konteks sesi tetap dibatasi oleh jendela konteks model, sehingga percakapan panjang dapat dipadatkan atau dipotong - karena itulah pencarian memori tersedia, dengan hanya memasukkan kembali bagian yang relevan ke dalam konteks.
Apakah pencarian memori semantik memerlukan kunci API OpenAI?
Hanya jika Anda menggunakan embedding OpenAI, yang merupakan penyedia default. OAuth Codex mencakup obrolan/penyelesaian dan tidak memberikan akses embedding, sehingga masuk dengan Codex (OAuth atau login CLI Codex) tidak mengaktifkan pencarian memori semantik. Embedding OpenAI tetap memerlukan kunci API asli (OPENAI_API_KEY atau models.providers.openai.apiKey).
Agar tetap lokal, atur agents.defaults.memorySearch.provider: "local" (GGUF/llama.cpp). Penyedia lain yang didukung: Bedrock, DeepInfra, Gemini (GEMINI_API_KEY atau memorySearch.remote.apiKey), GitHub Copilot, LM Studio, Mistral, Ollama, kompatibel dengan OpenAI, dan Voyage. Lihat Memori dan Pencarian memori untuk detail penyiapan.
Lokasi berbagai hal di disk
Apakah semua data yang digunakan dengan OpenClaw disimpan secara lokal?
Tidak: status milik OpenClaw sendiri bersifat lokal, tetapi layanan eksternal tetap dapat melihat apa yang Anda kirimkan kepada mereka.
Lokal secara default: sesi, file memori, konfigurasi, dan ruang kerja berada di host Gateway (~/.openclaw ditambah direktori ruang kerja Anda).
Jarak jauh karena diperlukan: pesan yang dikirim ke penyedia model (Anthropic/OpenAI/dll.) diteruskan ke API mereka, dan platform obrolan (Slack/Telegram/WhatsApp/dll.) menyimpan data pesan di server mereka.
Anda mengendalikan jejak data: model lokal menyimpan prompt di mesin Anda, tetapi lalu lintas kanal tetap melewati server kanal tersebut.
Status SQLite per agen, termasuk baris sesi dan transkrip
$OPENCLAW_STATE_DIR/agents/<agentId>/sessions/
Sumber migrasi sesi lama serta artefak arsip/dukungan
Jalur agen tunggal lama ~/.openclaw/agent/* dimigrasikan oleh openclaw doctor.
Ruang kerja Anda (AGENTS.md, file memori, skills, dll.) terpisah, dikonfigurasi melalui agents.defaults.workspace (default: ~/.openclaw/workspace).
Di mana seharusnya AGENTS.md / SOUL.md / USER.md / MEMORY.md berada?
File-file ini berada di ruang kerja agen, bukan ~/.openclaw.
Ruang kerja (per agen): AGENTS.md, SOUL.md, IDENTITY.md, USER.md, MEMORY.md, memory/YYYY-MM-DD.md, HEARTBEAT.md opsional. Root dengan huruf kecil memory.md hanya merupakan masukan perbaikan lama; openclaw doctor --fix dapat menggabungkannya ke dalam MEMORY.md jika keduanya ada.
Direktori status (~/.openclaw): konfigurasi, status kanal/penyedia, profil autentikasi, sesi, log, skills bersama (~/.openclaw/skills).
Ruang kerja default adalah ~/.openclaw/workspace, dan dapat dikonfigurasi:
Jika bot "lupa" setelah dimulai ulang, pastikan Gateway menggunakan ruang kerja yang sama pada setiap peluncuran (mode jarak jauh menggunakan ruang kerja milik host gateway, bukan laptop lokal Anda).
Kiat: untuk perilaku atau preferensi yang bertahan lama, minta bot untuk menuliskannya ke AGENTS.md atau MEMORY.md, alih-alih mengandalkan riwayat obrolan.
Ya. SOUL.md adalah salah satu file bootstrap ruang kerja yang dimasukkan ke dalam konteks agen. Batas injeksi default per file adalah 20000 karakter; total anggaran bootstrap untuk seluruh file adalah 60000 karakter.
Atau timpa satu agen di bawah agents.list[].bootstrapMaxChars / bootstrapTotalMaxChars.
Gunakan /context untuk memeriksa ukuran mentah dibandingkan ukuran yang diinjeksikan dan apakah terjadi pemotongan. Pastikan SOUL.md berfokus pada suara, sikap, dan kepribadian; tempatkan aturan operasional di AGENTS.md dan fakta yang bertahan lama di memori.
Tempatkan ruang kerja agen Anda dalam repo git privat dan cadangkan ke tempat privat (misalnya GitHub private). Ini mencakup memori beserta file AGENTS/SOUL/USER dan memungkinkan Anda memulihkan "pikiran" asisten nanti.
Jangan commit apa pun di bawah ~/.openclaw (kredensial, sesi, token, payload rahasia terenkripsi). Untuk pemulihan penuh, cadangkan ruang kerja dan direktori status secara terpisah.
Ya. Ruang kerja adalah cwd default dan jangkar memori, bukan sandbox yang ketat. Jalur relatif diselesaikan di dalam ruang kerja; jalur absolut dapat mengakses lokasi host lain kecuali sandbox diaktifkan. Untuk isolasi, gunakan agents.defaults.sandbox atau pengaturan sandbox per agen. Untuk menjadikan suatu repo sebagai direktori kerja default, arahkan workspace agen tersebut ke root repo - repo OpenClaw sendiri hanyalah kode sumber, jadi pisahkan ruang kerja kecuali Anda memang ingin agen bekerja di dalamnya.
Status sesi dimiliki oleh host gateway. Dalam mode jarak jauh, penyimpanan sesi yang relevan bagi Anda berada di mesin jarak jauh, bukan laptop lokal Anda. Lihat Pengelolaan sesi.
Dasar-dasar konfigurasi
Apa format konfigurasinya? Di mana lokasinya?
OpenClaw membaca konfigurasi JSON5 opsional dari $OPENCLAW_CONFIG_PATH (default: ~/.openclaw/openclaw.json). Jika file tersebut tidak ada, OpenClaw menggunakan default yang relatif aman, termasuk ruang kerja default ~/.openclaw/workspace.
Saya mengatur gateway.bind: "lan" (atau "tailnet") dan sekarang tidak ada yang mendengarkan / UI mengatakan tidak diotorisasi
Bind non-loopback memerlukan jalur autentikasi gateway yang valid: autentikasi rahasia bersama (token atau kata sandi), atau gateway.auth.mode: "trusted-proxy" di belakang proksi terbalik berbasis identitas yang dikonfigurasi dengan benar.
gateway.remote.token / .passwordtidak mengaktifkan autentikasi gateway lokal dengan sendirinya; jalur panggilan lokal hanya dapat menggunakan gateway.remote.* sebagai fallback ketika gateway.auth.* tidak ditetapkan.
Untuk autentikasi kata sandi, tetapkan gateway.auth.mode: "password" beserta gateway.auth.password (atau OPENCLAW_GATEWAY_PASSWORD).
Jika gateway.auth.token / .password dikonfigurasi secara eksplisit melalui SecretRef dan tidak dapat diselesaikan, resolusi gagal secara tertutup (tanpa fallback jarak jauh yang menyamarkannya).
Penyiapan Control UI dengan rahasia bersama melakukan autentikasi melalui connect.params.auth.token atau connect.params.auth.password (disimpan dalam pengaturan aplikasi/UI). Mode yang membawa identitas seperti Tailscale Serve atau trusted-proxy menggunakan header permintaan - hindari menempatkan rahasia bersama dalam URL.
Dengan gateway.auth.mode: "trusted-proxy", proksi terbalik loopback pada host yang sama memerlukan gateway.auth.trustedProxy.allowLoopback = true eksplisit dan entri loopback di gateway.trustedProxies.
Mengapa sekarang saya memerlukan token di localhost?
OpenClaw memberlakukan autentikasi gateway secara default, termasuk untuk loopback. Jika tidak ada jalur autentikasi eksplisit yang dikonfigurasi, saat dimulai sistem menggunakan mode token dan menghasilkan token khusus runtime untuk proses mulai tersebut, sehingga klien WS lokal harus melakukan autentikasi. Ini mencegah proses lokal lain memanggil Gateway.
Konfigurasikan gateway.auth.token, gateway.auth.password, OPENCLAW_GATEWAY_TOKEN, atau OPENCLAW_GATEWAY_PASSWORD secara eksplisit ketika klien memerlukan rahasia yang stabil setelah dimulai ulang. Anda juga dapat memilih mode kata sandi, atau trusted-proxy untuk proksi terbalik berbasis identitas. Untuk loopback terbuka, tetapkan gateway.auth.mode: "none" secara eksplisit. openclaw doctor --generate-gateway-token menghasilkan token kapan saja.
Apakah saya harus memulai ulang setelah mengubah konfigurasi?
Gateway memantau konfigurasi dan mendukung pemuatan ulang langsung: gateway.reload.mode: "hybrid" (default) langsung menerapkan perubahan yang aman dan memulai ulang untuk perubahan kritis. hot, restart, dan off juga didukung. Sebagian besar perubahan tools.*, kebijakan agents.*, session.*, dan messages.* langsung diterapkan tanpa tindakan pemuatan ulang sama sekali; perubahan binding/port gateway.* memerlukan mulai ulang.
Bagaimana cara menonaktifkan slogan CLI yang lucu?
Tetapkan cli.banner.taglineMode:
json5
{cli: {banner: {taglineMode: "off", // random | default | off }, },}
off: menyembunyikan teks slogan tetapi mempertahankan baris judul/versi banner.
default: selalu menggunakan All your chats, one OpenClaw..
random: slogan lucu/musiman yang berganti-ganti (perilaku default).
Untuk menghilangkan banner sepenuhnya, tetapkan env OPENCLAW_HIDE_BANNER=1.
Bagaimana cara mengaktifkan pencarian web (dan pengambilan web)?
web_fetch berfungsi tanpa kunci API. web_search bergantung pada penyedia yang Anda pilih:
Penyedia
Tanpa kunci
Variabel lingkungan
Brave
Tidak
BRAVE_API_KEY
DuckDuckGo
Ya (berbasis HTML tidak resmi)
-
Exa
Tidak
EXA_API_KEY
Firecrawl
Tidak
FIRECRAWL_API_KEY
Gemini
Tidak
GEMINI_API_KEY
Grok
Tidak (OAuth xAI atau kunci)
XAI_API_KEY
Kimi
Tidak
KIMI_API_KEY atau MOONSHOT_API_KEY
MiniMax Search
Tidak
MINIMAX_CODE_PLAN_KEY, MINIMAX_CODING_API_KEY, atau MINIMAX_API_KEY
Ollama Web Search
Ya (memerlukan ollama signin)
-
Perplexity
Tidak
PERPLEXITY_API_KEY atau OPENROUTER_API_KEY
SearXNG
Ya (dihosting sendiri)
SEARXNG_BASE_URL
Tavily
Tidak
TAVILY_API_KEY
Grok juga dapat menggunakan kembali OAuth xAI dari autentikasi model (openclaw onboard --auth-choice xai-oauth).
Disarankan: openclaw configure --section web dan pilih penyedia.
Konfigurasi pencarian web khusus penyedia berada di bawah plugins.entries.<plugin>.config.webSearch.*. Jalur penyedia lama tools.web.search.* masih dimuat untuk kompatibilitas, tetapi tidak boleh digunakan dalam konfigurasi baru. Konfigurasi fallback pengambilan web Firecrawl berada di bawah plugins.entries.firecrawl.config.webFetch.*.
Daftar izin: tambahkan web_search/web_fetch/x_search, atau group:web untuk ketiganya.
web_fetch diaktifkan secara default.
Jika tools.web.fetch.provider dihilangkan, OpenClaw secara otomatis mendeteksi penyedia fallback pengambilan pertama yang siap dari kredensial yang tersedia; Plugin Firecrawl resmi menyediakan fallback tersebut.
Daemon membaca variabel lingkungan dari ~/.openclaw/.env (atau lingkungan layanan).
config.apply menghapus konfigurasi saya. Bagaimana cara memulihkan dan mencegahnya?
config.apply mengganti seluruh konfigurasi; objek parsial menghapus semua yang lain.
OpenClaw saat ini melindungi dari sebagian besar penimpaan yang tidak disengaja:
Penulisan konfigurasi milik OpenClaw memvalidasi konfigurasi lengkap setelah perubahan sebelum menulis.
Penulisan milik OpenClaw yang tidak valid atau destruktif ditolak dan disimpan sebagai openclaw.json.rejected.*.
Pengeditan langsung yang merusak proses mulai atau pemuatan ulang langsung membuat Gateway gagal secara tertutup atau melewati pemuatan ulang; tindakan ini tidak menulis ulang openclaw.json.
openclaw doctor --fix menangani perbaikan, dapat memulihkan versi terakhir yang diketahui berfungsi, dan menyimpan berkas yang ditolak sebagai openclaw.json.clobbered.*.
Pemulihan:
Periksa openclaw logs --follow untuk Invalid config at, Config write rejected:, atau config reload skipped (invalid config).
Periksa openclaw.json.clobbered.* atau openclaw.json.rejected.* terbaru di sebelah konfigurasi aktif.
Jalankan openclaw config validate dan openclaw doctor --fix.
Salin kembali hanya kunci yang dimaksud dengan openclaw config set atau config.patch.
Jika tidak ada versi terakhir yang diketahui berfungsi atau payload yang ditolak: pulihkan dari cadangan, atau jalankan kembali openclaw doctor dan konfigurasi ulang saluran/model.
Untuk kehilangan yang tidak terduga: laporkan bug dengan konfigurasi terakhir yang diketahui atau cadangan Anda. Agen pengodean lokal sering kali dapat merekonstruksi konfigurasi yang berfungsi dari log atau riwayat.
Untuk mencegahnya: gunakan openclaw config set untuk perubahan kecil, openclaw configure untuk pengeditan interaktif, config.schema.lookup untuk memeriksa jalur yang tidak dikenal (mengembalikan node skema dangkal beserta ringkasan turunan langsung), dan config.patch untuk pengeditan RPC parsial—gunakan config.apply hanya untuk penggantian konfigurasi penuh. Alat runtime gateway yang ditujukan untuk agen menolak menulis ulang tools.exec.ask / tools.exec.security bahkan melalui alias lama tools.bash.*.
Nilai defaultnya adalah false (dengan antarmuka). Mode headless lebih mungkin memicu pemeriksaan anti-bot di beberapa situs (X/Twitter sering memblokir sesi headless). Mode ini menggunakan mesin Chromium yang sama dan berfungsi untuk sebagian besar otomatisasi; perbedaan utamanya adalah tidak ada jendela peramban yang terlihat (gunakan tangkapan layar untuk visual). Lihat Peramban.
Bagaimana cara menggunakan Brave untuk mengendalikan peramban?
Atur browser.executablePath ke biner Brave Anda (atau peramban berbasis Chromium lainnya) dan mulai ulang Gateway. Lihat Peramban.
Gateway dan node jarak jauh
Bagaimana perintah diteruskan antara Telegram, Gateway, dan node?
Pesan Telegram ditangani oleh Gateway, yang menjalankan agen dan baru kemudian memanggil node melalui WebSocket Gateway ketika alat node diperlukan:
Node tidak melihat lalu lintas masuk dari penyedia; node hanya menerima panggilan RPC node.
Bagaimana agen saya dapat mengakses komputer saya jika Gateway dihosting dari jarak jauh?
Pasangkan komputer Anda sebagai node. Gateway berjalan di tempat lain, tetapi dapat memanggil alat node.* (layar, kamera, sistem) pada mesin lokal Anda melalui WebSocket Gateway.
Jalankan Gateway pada host yang selalu aktif (VPS/server rumah).
Tempatkan host Gateway dan komputer Anda di tailnet yang sama.
Pastikan WS Gateway dapat dijangkau (pengikatan tailnet atau terowongan SSH).
Buka aplikasi macOS secara lokal dan hubungkan dalam mode Remote over SSH (atau tailnet langsung) agar aplikasi tersebut terdaftar sebagai node.
Tailscale sudah terhubung, tetapi saya tidak mendapat balasan. Apa selanjutnya?
Periksa hal-hal mendasar:
bash
openclaw gateway statusopenclaw statusopenclaw channels status
Kemudian verifikasi autentikasi dan perutean: jika Anda menggunakan Tailscale Serve, pastikan gateway.auth.allowTailscale diatur dengan benar; jika Anda terhubung melalui terowongan SSH, pastikan terowongan aktif dan mengarah ke port yang tepat; pastikan daftar izin DM/grup menyertakan akun Anda.
Dapatkah dua instans OpenClaw berkomunikasi satu sama lain (lokal + VPS)?
Ya, meskipun tidak ada jembatan antarbot bawaan.
Paling sederhana: gunakan saluran obrolan biasa yang dapat diakses kedua bot (Slack/Telegram/WhatsApp). Minta Bot A mengirim pesan kepada Bot B, lalu biarkan Bot B membalas seperti biasa.
Jembatan CLI (generik): jalankan skrip yang memanggil Gateway lain dengan openclaw agent --message ... --deliver, dengan menargetkan obrolan tempat bot lain mendengarkan. Jika salah satu bot berada di VPS jarak jauh, arahkan CLI Anda ke Gateway jarak jauh tersebut melalui SSH/Tailscale (lihat Akses jarak jauh):
Apakah saya memerlukan VPS terpisah untuk beberapa agen?
Tidak. Satu Gateway menghosting beberapa agen, masing-masing dengan ruang kerja, default model, dan peruteannya sendiri—ini adalah konfigurasi normal dan jauh lebih murah/sederhana daripada satu VPS per agen. Gunakan VPS terpisah hanya untuk isolasi ketat (batas keamanan) atau konfigurasi yang sangat berbeda dan tidak ingin Anda bagikan.
Apakah ada manfaat menggunakan node pada laptop pribadi saya daripada SSH dari VPS?
Ya: node adalah cara utama untuk menjangkau laptop Anda dari Gateway jarak jauh dan menyediakan lebih dari sekadar akses shell. Gateway berjalan di macOS/Linux (Windows melalui WSL2) dan ringan (VPS kecil atau perangkat sekelas Raspberry Pi sudah memadai; RAM 4 GB lebih dari cukup), sehingga konfigurasi yang umum adalah host yang selalu aktif ditambah laptop Anda sebagai node.
Tidak memerlukan SSH masuk—node membuat koneksi keluar ke WebSocket Gateway melalui pemasangan perangkat.
Kontrol eksekusi yang lebih aman—system.run dibatasi oleh daftar izin/persetujuan node pada laptop tersebut.
Lebih banyak alat perangkat—node menyediakan canvas, camera, dan screen selain system.run.
Otomatisasi peramban lokal—tetap jalankan Gateway di VPS, tetapi jalankan Chrome secara lokal melalui host node, atau hubungkan ke Chrome lokal melalui Chrome MCP.
SSH cocok untuk akses shell sewaktu-waktu; node lebih sederhana untuk alur kerja agen dan otomatisasi perangkat yang berkelanjutan.
Tidak. Hanya satu Gateway yang seharusnya berjalan per host, kecuali Anda sengaja menjalankan profil terisolasi (lihat Beberapa Gateway). Node adalah periferal yang terhubung ke Gateway (node iOS/Android, atau "mode node" macOS di aplikasi bilah menu). Untuk host node headless dan kontrol CLI, lihat CLI host Node.
Mulai ulang penuh diperlukan untuk gateway, discovery, dan perubahan permukaan Plugin yang dihosting.
Apakah ada cara API / RPC untuk menerapkan konfigurasi?
Ya:
config.schema.lookup: periksa satu subpohon konfigurasi beserta node skema dangkal, petunjuk UI yang cocok, dan ringkasan turunan langsungnya sebelum menulis.
config.get: ambil snapshot saat ini beserta hash.
config.patch: pembaruan parsial yang aman (lebih disukai untuk sebagian besar pengeditan RPC); memuat ulang secara langsung jika memungkinkan, memulai ulang jika diperlukan.
config.apply: validasi dan ganti seluruh konfigurasi; memuat ulang secara langsung jika memungkinkan, memulai ulang jika diperlukan.
Alat runtime gateway yang ditujukan bagi agen tetap menolak menulis ulang tools.exec.ask / tools.exec.security; alias lama tools.bash.* dinormalisasi ke jalur terlindungi yang sama.
Konfigurasi minimum yang wajar untuk instalasi pertamajson5
Menetapkan ruang kerja Anda dan membatasi siapa yang dapat memicu bot.
Bagaimana cara menyiapkan Tailscale pada VPS dan terhubung dari Mac saya?
Instal + masuk pada VPS:bash
curl -fsSL https://tailscale.com/install.sh | shsudo tailscale up
Instal + masuk pada Mac Anda menggunakan aplikasi Tailscale, pada tailnet yang sama.
Aktifkan MagicDNS di konsol admin Tailscale agar VPS memiliki nama yang stabil.
Gunakan nama host tailnet: SSH ssh user@your-vps.tailnet-xxxx.ts.net; WS Gateway ws://your-vps.tailnet-xxxx.ts.net:18789.
Untuk UI Kontrol tanpa SSH, gunakan Tailscale Serve pada VPS:
bash
openclaw gateway --tailscale serve
Ini mempertahankan gateway agar terikat ke loopback dan mengekspos HTTPS melalui Tailscale. Lihat Tailscale.
Bagaimana cara menghubungkan node Mac ke Gateway jarak jauh (Tailscale Serve)?
Serve mengekspos UI Kontrol Gateway + WS; node terhubung melalui endpoint WS Gateway yang sama.
Pastikan VPS dan Mac berada pada tailnet yang sama.
Gunakan aplikasi macOS dalam mode Jarak Jauh (target SSH dapat berupa nama host tailnet) - aplikasi tersebut membuat tunnel ke port Gateway dan terhubung sebagai node.
Haruskah saya menginstal pada laptop kedua atau cukup menambahkan node?
Untuk alat lokal saja (layar/kamera/eksekusi) pada laptop kedua, tambahkan sebagai node - satu Gateway, tanpa konfigurasi duplikat. Alat node lokal saat ini hanya tersedia di macOS. Instal Gateway kedua hanya untuk isolasi ketat atau dua bot yang sepenuhnya terpisah.
OpenClaw membaca variabel lingkungan dari proses induk (shell, launchd/systemd, CI, dan sebagainya) dan juga memuat:
.env dari direktori kerja saat ini.
fallback global .env dari ~/.openclaw/.env ($OPENCLAW_STATE_DIR/.env).
Kedua berkas .env tersebut tidak menimpa variabel lingkungan yang sudah ada. Kunci kredensial penyedia dan perutean endpoint merupakan pengecualian untuk .env ruang kerja: kunci seperti GEMINI_API_KEY, XAI_API_KEY, MISTRAL_API_KEY, atau kunci apa pun yang berakhiran _ENDPOINT (serta variabel lingkungan autentikasi atau endpoint penyedia bawaan lainnya) diabaikan dari .env ruang kerja dan sebaiknya ditempatkan di lingkungan proses, ~/.openclaw/.env, atau konfigurasi env.
Variabel lingkungan inline dalam konfigurasi hanya diterapkan jika tidak tersedia di lingkungan proses:
Ini menjalankan shell masuk Anda dan hanya mengimpor kunci yang diharapkan tetapi belum ada (tidak pernah menimpa). Variabel lingkungan yang setara: OPENCLAW_LOAD_SHELL_ENV=1, OPENCLAW_SHELL_ENV_TIMEOUT_MS=15000.
Saya menetapkan COPILOT_GITHUB_TOKEN, tetapi status model menampilkan "Shell env: off." Mengapa?
openclaw models status melaporkan apakah impor lingkungan shell diaktifkan. "Shell env: off" tidak berarti variabel lingkungan Anda tidak ada - itu hanya berarti OpenClaw tidak akan memuat shell masuk Anda secara otomatis.
Jika Gateway berjalan sebagai layanan (launchd/systemd), Gateway tidak akan mewarisi lingkungan shell Anda. Perbaiki dengan menempatkan token di ~/.openclaw/.env, mengaktifkan env.shellEnv.enabled: true, atau menambahkannya ke konfigurasi env (hanya diterapkan jika belum ada), lalu mulai ulang gateway dan periksa kembali:
bash
openclaw models status
Token Copilot diselesaikan dengan urutan berikut: OPENCLAW_GITHUB_TOKEN, lalu COPILOT_GITHUB_TOKEN, lalu GH_TOKEN, lalu GITHUB_TOKEN.
Kirim /new atau /reset sebagai pesan tersendiri. Lihat Pengelolaan sesi.
Apakah sesi diatur ulang secara otomatis jika saya tidak pernah mengirim /new?
Tidak, secara default tidak. Sesi mempertahankan sessionId yang sama, dan Compaction membatasi konteks model aktif seiring bertambah panjangnya percakapan. /new dan /reset tetap tersedia, atau Anda dapat mengaktifkan pengaturan ulang otomatis dengan mode: "daily" atau mode: "idle". Mode harian berganti pada session.reset.atHour (default 4, 0-23) di host gateway; mode menganggur menggunakan session.reset.idleMinutes sejak interaksi nyata terakhir, bukan peristiwa sistem heartbeat/cron/exec.
resetByType mendukung direct (alias lama dm), group, dan thread. session.idleMinutes tingkat atas yang lama masih berfungsi sebagai alias kompatibilitas untuk default mode menganggur jika tidak ada blok session.reset/resetByType yang ditetapkan. Lihat Pengelolaan sesi untuk siklus hidup lengkap.
Apakah ada cara untuk membuat tim instans OpenClaw (satu CEO dan banyak agen)?
Ya, melalui perutean multiagen dan subagen: satu agen koordinator ditambah beberapa agen pekerja dengan ruang kerja dan model masing-masing.
Ini paling tepat dipandang sebagai eksperimen yang menyenangkan - penggunaan tokennya tinggi dan sering kali kurang efisien dibandingkan satu bot dengan sesi terpisah. Model umumnya adalah satu bot yang Anda ajak berkomunikasi, dengan sesi berbeda untuk pekerjaan paralel, yang membuat subagen saat diperlukan.
Mengapa konteks terpotong di tengah tugas? Bagaimana cara mencegahnya?
Konteks sesi dibatasi oleh jendela model. Percakapan panjang, keluaran alat yang besar, atau banyak berkas dapat memicu Compaction atau pemotongan.
Minta bot merangkum status saat ini dan menuliskannya ke berkas.
Gunakan /compact sebelum tugas panjang, /new saat berganti topik.
Simpan konteks penting di ruang kerja dan minta bot membacanya kembali.
Gunakan subagen untuk pekerjaan panjang atau paralel agar percakapan utama tetap lebih ringkas.
Pilih model dengan jendela konteks yang lebih besar jika hal ini sering terjadi.
Bagaimana cara mengatur ulang OpenClaw sepenuhnya tetapi tetap mempertahankan instalasinya?bash
openclaw reset
Pengaturan ulang penuh noninteraktif:
bash
openclaw reset --scope full --yes --non-interactive
Kemudian jalankan kembali penyiapan:
bash
openclaw onboard --install-daemon
Orientasi juga menawarkan Atur ulang jika mendeteksi konfigurasi yang sudah ada; lihat Orientasi (CLI). Jika Anda menggunakan profil (--profile / OPENCLAW_PROFILE), atur ulang setiap direktori status (default ~/.openclaw-<profile>). Pengaturan ulang khusus pengembangan: openclaw gateway --dev --reset menghapus konfigurasi pengembangan, kredensial, sesi, dan ruang kerja.
Saya mendapatkan galat "context too large" - bagaimana cara mengatur ulang atau melakukan Compaction?
Compaction (mempertahankan percakapan, merangkum giliran lama): /compact atau /compact <instructions> untuk mengarahkan ringkasan.
Atur ulang (ID sesi baru untuk kunci percakapan yang sama): /new atau /reset.
Jika terus terjadi, sesuaikan pemangkasan sesi (agents.defaults.contextPruning) untuk memangkas keluaran alat lama, atau gunakan model dengan jendela konteks yang lebih besar.
Mengapa saya melihat "LLM request rejected: messages.content.tool_use.input field required"?
Galat validasi penyedia: model menghasilkan blok tool_use tanpa input yang diwajibkan. Biasanya berarti riwayat sesi sudah usang atau rusak (sering kali setelah utas panjang atau perubahan alat/skema).
Solusi: mulai sesi baru dengan /new (pesan tersendiri).
Mengapa saya menerima pesan Heartbeat setiap 30 menit?
Heartbeat berjalan setiap 30m secara default, atau 1h ketika mode autentikasi yang ditentukan adalah autentikasi OAuth/token Anthropic (termasuk penggunaan kembali Claude CLI) dan heartbeat.every belum ditetapkan. Sesuaikan atau nonaktifkan:
json5
{agents: {defaults: {heartbeat: {every: "2h", // atau "0m" untuk menonaktifkan }, }, },}
Jika HEARTBEAT.md ada tetapi secara efektif kosong (hanya baris kosong, komentar Markdown/HTML, judul ATX, penanda fence, atau stub butir daftar kosong), OpenClaw melewati proses Heartbeat untuk menghemat panggilan API. Jika berkas tidak ada, Heartbeat tetap berjalan dan model menentukan tindakan yang harus dilakukan.
Penggantian per agen menggunakan agents.list[].heartbeat. Dokumentasi: Heartbeat.
Apakah saya perlu menambahkan "akun bot" ke grup WhatsApp?
Tidak. OpenClaw berjalan pada akun Anda sendiri - jika Anda berada dalam grup tersebut, OpenClaw dapat melihatnya. Secara default, balasan grup diblokir hingga Anda mengizinkan pengirim (groupPolicy: "allowlist").
Dua penyebab umum: pembatasan berdasarkan penyebutan diaktifkan secara default (Anda harus @menyebut bot, atau cocok dengan mentionPatterns), atau Anda mengonfigurasi channels.whatsapp.groups tanpa "*" dan grup tersebut tidak masuk daftar yang diizinkan.
Percakapan langsung digabungkan ke sesi utama secara default. Grup/saluran memiliki kunci sesinya sendiri, dan topik Telegram / utas Discord merupakan sesi terpisah. Lihat Grup dan Pesan grup.
Berapa banyak ruang kerja dan agen yang dapat saya buat?
Tidak ada batas mutlak—puluhan atau bahkan ratusan tidak masalah, tetapi perhatikan:
Pertumbuhan penggunaan disk: sesi aktif dan transkrip disimpan dalam basis data SQLite per agen; artefak lama/arsip masih dapat terakumulasi di bawah ~/.openclaw/agents/<agentId>/sessions/.
Biaya token: lebih banyak agen berarti lebih banyak penggunaan model secara bersamaan.
Beban operasional: profil autentikasi, ruang kerja, dan perutean saluran per agen.
Pertahankan satu ruang kerja aktif per agen (agents.defaults.workspace), pangkas sesi lama dengan openclaw sessions cleanup jika penggunaan disk bertambah (jangan mengedit status SQLite aktif secara manual), dan gunakan openclaw doctor untuk menemukan ruang kerja yang tidak terpakai dan ketidakcocokan profil.
Dapatkah saya menjalankan beberapa bot atau percakapan secara bersamaan (Slack), dan bagaimana cara menyiapkannya?
Ya, melalui Perutean Multi-Agen: jalankan beberapa agen terisolasi dan rutekan pesan masuk berdasarkan saluran/akun/rekan. Slack didukung sebagai saluran dan dapat diikat ke agen tertentu.
Akses peramban sangat andal, tetapi bukan berarti "dapat melakukan apa pun yang dapat dilakukan manusia"—mekanisme anti-bot, CAPTCHA, dan MFA masih dapat memblokir otomatisasi. Untuk kontrol paling andal, gunakan Chrome MCP lokal pada hos, atau CDP pada mesin yang benar-benar menjalankan peramban.
Penyiapan praktik terbaik: hos Gateway yang selalu aktif (VPS/Mac mini), satu agen per peran (pengikatan), saluran Slack yang diikat ke agen tersebut, dan peramban lokal melalui Chrome MCP atau sebuah node bila diperlukan.
Mengapa openclaw gateway status mengatakan "Runtime: running", tetapi "Connectivity probe: failed"?
"Berjalan" adalah tampilan dari supervisor (launchd/systemd/schtasks); probe konektivitas adalah CLI yang benar-benar terhubung ke WebSocket gateway. Percayai baris-baris berikut dari openclaw gateway status: Probe target: (URL yang digunakan probe), Listening: (apa yang sebenarnya terikat pada port), Last gateway error: (akar penyebab umum ketika proses hidup tetapi port tidak mendengarkan).
Mengapa openclaw gateway status menampilkan "Config (cli)" dan "Config (service)" yang berbeda?
Anda mengedit satu berkas konfigurasi sementara layanan menjalankan berkas lain (sering kali akibat ketidakcocokan --profile / OPENCLAW_STATE_DIR).
Untuk memperbaikinya, jalankan dari --profile / lingkungan yang sama dengan yang ingin Anda gunakan untuk layanan:
bash
openclaw gateway install --force
Apa arti "another gateway instance is already listening"?
OpenClaw memberlakukan kunci runtime dengan langsung mengikat listener WebSocket saat dimulai (default ws://127.0.0.1:18789). Jika pengikatan gagal dengan EADDRINUSE, OpenClaw memunculkan GatewayLockError ("instans gateway lain sudah mendengarkan").
Perbaikan: hentikan instans lain, bebaskan port, atau jalankan dengan openclaw gateway --port <port>.
Bagaimana cara menjalankan OpenClaw dalam mode jarak jauh (klien terhubung ke Gateway di tempat lain)?
Atur gateway.mode: "remote" dan arahkan ke URL WebSocket jarak jauh, secara opsional dengan kredensial jarak jauh berupa rahasia bersama:
openclaw gateway hanya dimulai ketika gateway.mode adalah local (atau Anda meneruskan flag pengesampingan).
Aplikasi macOS memantau berkas konfigurasi dan beralih mode secara langsung ketika nilai-nilai ini berubah.
gateway.remote.token / .password hanya merupakan kredensial jarak jauh sisi klien; keduanya tidak mengaktifkan autentikasi gateway lokal dengan sendirinya.
UI Kontrol mengatakan "tidak diotorisasi" (atau terus menghubungkan ulang). Apa yang harus dilakukan?
Jalur autentikasi gateway dan metode autentikasi UI tidak cocok.
Fakta (dari kode):
UI Kontrol menyimpan token di sessionStorage, dengan cakupan terbatas pada tab peramban saat ini dan URL gateway yang dipilih, sehingga penyegaran di tab yang sama tetap berfungsi tanpa persistensi token localStorage berjangka panjang.
Pada AUTH_TOKEN_MISMATCH, klien tepercaya dapat mencoba satu percobaan ulang terbatas dengan token perangkat yang di-cache ketika gateway mengembalikan petunjuk percobaan ulang (canRetryWithDeviceToken=true, recommendedNextStep=retry_with_device_token).
Percobaan ulang dengan token yang di-cache tersebut menggunakan kembali cakupan yang telah disetujui dan disimpan bersama token perangkat; pemanggil deviceToken eksplisit / scopes eksplisit mempertahankan kumpulan cakupan yang diminta alih-alih mewarisi cakupan yang di-cache.
Di luar jalur percobaan ulang tersebut, urutan prioritas autentikasi koneksi adalah token/kata sandi bersama eksplisit terlebih dahulu, lalu deviceToken eksplisit, lalu token perangkat tersimpan, kemudian token bootstrap.
Bootstrap kode penyiapan bawaan mengembalikan token perangkat node dengan scopes: [] serta token serah terima operator terbatas untuk orientasi seluler tepercaya. Serah terima operator dapat membaca konfigurasi native saat penyiapan, tetapi tidak memberikan cakupan mutasi pemasangan atau operator.admin.
Perbaikan:
Paling cepat: openclaw dashboard (mencetak + menyalin URL dasbor, lalu mencoba membukanya; menampilkan petunjuk SSH jika tanpa antarmuka grafis).
Belum memiliki token: openclaw doctor --generate-gateway-token.
Jarak jauh: buat tunnel terlebih dahulu dengan ssh -N -L 18789:127.0.0.1:18789 user@host, lalu buka http://127.0.0.1:18789/.
Mode rahasia bersama: atur gateway.auth.token / OPENCLAW_GATEWAY_TOKEN atau gateway.auth.password / OPENCLAW_GATEWAY_PASSWORD, lalu tempelkan rahasia yang sesuai di pengaturan UI Kontrol.
Mode Tailscale Serve: pastikan gateway.auth.allowTailscale diaktifkan dan Anda membuka URL Serve, bukan URL loopback/tailnet mentah yang melewati header identitas Tailscale.
Mode proksi tepercaya: pastikan Anda terhubung melalui proksi sadar-identitas yang dikonfigurasi. Proksi loopback pada hos yang sama juga memerlukan gateway.auth.trustedProxy.allowLoopback = true.
Ketidakcocokan tetap ada setelah satu percobaan ulang: rotasi/setujui ulang token perangkat yang dipasangkan:bash
Rotasi ditolak: sesi perangkat yang dipasangkan hanya dapat merotasi perangkat miliknya sendiri, kecuali sesi tersebut juga memiliki operator.admin, dan nilai --scope eksplisit tidak boleh melampaui cakupan operator pemanggil saat ini.
Masih bermasalah: openclaw status --all serta Pemecahan masalah. Lihat Dasbor untuk detail autentikasi.
Saya mengatur gateway.bind ke tailnet, tetapi hanya mendengarkan pada loopback
Pengikatan tailnet memilih IP Tailscale dari antarmuka jaringan Anda (100.64.0.0/10). Jika mesin tidak berada di Tailscale (atau antarmukanya tidak aktif), Gateway kembali ke loopback alih-alih mengekspos antarmuka jaringan lain.
Perbaikan: mulai Tailscale pada hos tersebut dan mulai ulang Gateway, atau beralih secara eksplisit ke gateway.bind: "loopback" / "lan".
tailnet bersifat eksplisit; auto memprioritaskan loopback. Gunakan gateway.bind: "tailnet" untuk membatasi paparan non-loopback ke Tailnet sambil mempertahankan listener 127.0.0.1 pada hos yang sama sebagaimana diwajibkan.
Dapatkah saya menjalankan beberapa Gateway pada hos yang sama?
Biasanya tidak—satu Gateway dapat menjalankan beberapa saluran perpesanan dan agen. Gunakan beberapa Gateway hanya untuk redundansi (misalnya bot penyelamat) atau isolasi ketat, dan isolasikan masing-masing dengan OPENCLAW_CONFIG_PATH, OPENCLAW_STATE_DIR, agents.defaults.workspace, serta gateway.port yang unik.
Direkomendasikan: openclaw --profile <name> ... per instans (secara otomatis membuat ~/.openclaw-<name>), gateway.port yang unik per konfigurasi profil (atau --port untuk eksekusi manual), dan layanan per profil dengan openclaw --profile <name> gateway install.
Profil juga menambahkan sufiks pada nama layanan: launchd ai.openclaw.<profile>, systemd openclaw-gateway-<profile>.service, Windows OpenClaw Gateway (<profile>). Unit systemd openclaw-gateway tanpa kualifikasi hanya tersedia untuk profil default; nama unit systemd lama sebelum penggantian nama, clawdbot-gateway, dimigrasikan secara otomatis.
Gateway adalah server WebSocket dan mengharapkan pesan pertama berupa bingkai connect. Pesan lain apa pun akan menutup koneksi dengan kode 1008 (pelanggaran kebijakan).
Penyebab umum: Anda membuka URL HTTP di peramban alih-alih menggunakan klien WS, menggunakan port/jalur yang salah, atau proksi/tunnel menghapus header autentikasi maupun mengirim permintaan non-Gateway.
Perbaikan: gunakan URL WS (ws://<host>:18789, atau wss://... melalui HTTPS), jangan membuka port WS di tab peramban biasa, dan sertakan token/kata sandi dalam bingkai connect ketika autentikasi diaktifkan. Contoh CLI/TUI:
Log berkas (terstruktur): /tmp/openclaw/openclaw-YYYY-MM-DD.log. Atur jalur yang stabil melalui logging.file; tingkat log berkas melalui logging.level; verbositas konsol melalui --verbose dan logging.consoleLevel.
Cara tercepat untuk mengikuti log:
bash
openclaw logs --follow
Log layanan/supervisor (ketika gateway berjalan melalui launchd/systemd):
stdout launchd macOS: ~/Library/Logs/openclaw/gateway.log (profil menggunakan gateway-<profile>.log; stderr dinonaktifkan).
Bagaimana cara memulai/menghentikan/memulai ulang layanan Gateway?bash
openclaw gateway statusopenclaw gateway restart
Jika Anda menjalankan gateway secara manual, openclaw gateway --force dapat mengambil alih kembali port. Lihat Gateway.
Saya menutup terminal di Windows—bagaimana cara memulai ulang OpenClaw?
Tiga mode penginstalan Windows:
1) Penyiapan lokal Windows Hub: aplikasi native mengelola Gateway WSL lokal milik aplikasi. Buka OpenClaw Companion dari menu Start atau baki sistem, lalu gunakan Gateway Setup atau tab Connections.
2) Gateway WSL2 manual: Gateway berjalan di dalam Linux.
Penyebab umum: autentikasi model tidak dimuat pada host gateway (periksa models status), penyandingan/daftar izin saluran memblokir balasan (periksa konfigurasi dan log saluran), atau WebChat/Dashboard dibuka tanpa token yang tepat. Jika jarak jauh, pastikan koneksi terowongan/Tailscale aktif dan WebSocket Gateway dapat dijangkau.
"Terputus dari gateway: tanpa alasan" - apa yang harus dilakukan?
Biasanya berarti UI kehilangan koneksi WebSocket. Periksa: apakah Gateway berjalan (openclaw gateway status)? Apakah kondisinya sehat (openclaw status)? Apakah UI memiliki token yang tepat (openclaw dashboard)? Jika jarak jauh, apakah tautan terowongan/Tailscale aktif?
BOT_COMMANDS_TOO_MUCH: menu Telegram memiliki terlalu banyak entri. OpenClaw sudah memangkasnya hingga batas Telegram dan mencoba kembali dengan lebih sedikit perintah, tetapi beberapa entri menu mungkin masih dihapus. Kurangi perintah plugin/skill/kustom, atau nonaktifkan channels.telegram.commands.native jika Anda tidak memerlukan menu tersebut.
TypeError: fetch failed, Network request for 'setMyCommands' failed!, atau kesalahan jaringan serupa: pada VPS atau di belakang proksi, pastikan HTTPS keluar diizinkan dan DNS berfungsi untuk api.telegram.org.
Jika Gateway berada di jarak jauh, periksa log pada host Gateway.
Di TUI, gunakan /status untuk melihat status saat ini. Jika Anda mengharapkan balasan di saluran obrolan, pastikan pengiriman diaktifkan (/deliver on).
Penjelasan sederhana: openclaw gateway restart vs openclaw gateway
openclaw gateway restart memulai ulang layanan latar belakang (launchd/systemd). openclaw gateway menjalankan gateway di latar depan untuk sesi terminal ini. Gunakan subperintah gateway jika Anda menginstal layanan; gunakan eksekusi latar depan tanpa subperintah untuk penggunaan sekali jalan.
Cara tercepat mendapatkan detail tambahan saat terjadi kegagalan
Mulai Gateway dengan --verbose untuk memperoleh lebih banyak detail konsol, lalu periksa berkas log untuk kesalahan autentikasi saluran, perutean model, dan RPC.
Media dan lampiran
Skill saya menghasilkan gambar/PDF, tetapi tidak ada yang dikirim
Lampiran keluar dari agen harus menggunakan bidang media terstruktur seperti media, mediaUrl, path, atau filePath. Lihat Penyiapan asisten OpenClaw dan Pengiriman agen.
Periksa juga: saluran tujuan mendukung media keluar dan tidak diblokir oleh daftar izin; ukuran berkas berada dalam batas penyedia (gambar diubah ukurannya hingga sisi maksimum 2048px); tools.fs.workspaceOnly=true membatasi pengiriman jalur lokal ke ruang kerja, penyimpanan sementara/media, dan berkas yang telah divalidasi sandbox; tools.fs.workspaceOnly=false (bawaan) memungkinkan pengiriman media lokal terstruktur menggunakan berkas lokal host yang sudah dapat dibaca agen, untuk media serta jenis dokumen yang aman (gambar, audio, video, PDF, dokumen Office, dan dokumen teks tervalidasi seperti Markdown/MD, TXT, JSON, YAML/YML). Ini bukan pemindai rahasia—secret.txt atau config.json yang dapat dibaca agen dapat dilampirkan jika ekstensi dan validasi kontennya cocok. Simpan berkas sensitif di luar jalur yang dapat dibaca agen, atau pertahankan tools.fs.workspaceOnly=true untuk pengiriman jalur lokal yang lebih ketat.
Perlakukan DM masuk sebagai masukan tidak tepercaya. Pengaturan bawaan mengurangi risiko:
Perilaku bawaan pada saluran yang mendukung DM adalah penyandingan: pengirim yang tidak dikenal menerima kode penyandingan dan pesannya tidak diproses. Setujui dengan openclaw pairing approve --channel <channel> [--account <id>] <code>. Permintaan tertunda dibatasi hingga 3 per saluran; periksa openclaw pairing list --channel <channel> [--account <id>] jika kode tidak tiba.
Membuka DM untuk publik memerlukan persetujuan eksplisit (dmPolicy: "open" dan daftar izin "*").
Jalankan openclaw doctor untuk menemukan kebijakan DM yang berisiko.
Apakah injeksi prompt hanya menjadi masalah bagi bot publik?
Tidak. Injeksi prompt berkaitan dengan konten tidak tepercaya, bukan hanya siapa yang dapat mengirim DM kepada bot. Jika asisten Anda membaca konten eksternal (pencarian/pengambilan web, halaman peramban, email, dokumen, lampiran, log yang ditempelkan), konten tersebut dapat memuat instruksi yang mencoba mengambil alih model—meskipun Anda adalah satu-satunya pengirim.
Risiko terbesar muncul ketika alat diaktifkan: model dapat dikelabui agar mengekstraksi konteks atau memanggil alat atas nama Anda. Kurangi cakupan dampaknya:
gunakan agen "pembaca" hanya-baca atau tanpa alat untuk merangkum konten tidak tepercaya
tetap nonaktifkan web_search / web_fetch / browser untuk agen yang mengaktifkan alat
perlakukan teks berkas/dokumen yang didekodekan sebagai tidak tepercaya juga: input_file OpenResponses dan ekstraksi lampiran media sama-sama membungkus teks hasil ekstraksi dalam penanda batas konten eksternal eksplisit alih-alih meneruskan teks berkas mentah
Apakah OpenClaw kurang aman karena menggunakan TypeScript/Node alih-alih Rust/WASM?
Bahasa dan runtime memang penting, tetapi bukan risiko utama bagi agen pribadi. Risiko praktisnya adalah eksposur gateway, siapa yang dapat mengirim pesan kepada bot, injeksi prompt, cakupan alat, penanganan kredensial, akses peramban, akses eksekusi, serta kepercayaan terhadap skill/plugin pihak ketiga.
Rust dan WASM dapat memberikan isolasi yang lebih kuat untuk beberapa kelas kode, tetapi tidak mengatasi injeksi prompt, daftar izin yang buruk, eksposur gateway publik, alat yang terlalu luas, atau profil peramban yang sudah masuk ke akun sensitif. Perlakukan hal berikut sebagai kontrol utama: pertahankan Gateway tetap privat atau terautentikasi, gunakan penyandingan dan daftar izin untuk DM/grup, tolak atau jalankan alat berisiko dalam sandbox untuk masukan tidak tepercaya, instal hanya plugin dan skill tepercaya, serta jalankan openclaw security audit --deep setelah perubahan konfigurasi.
Saya melihat laporan tentang instans OpenClaw yang terekspos. Apa yang harus diperiksa?bash
openclaw security audit --deepopenclaw gateway status
Dasar yang lebih aman: Gateway diikat ke loopback, atau hanya diekspos melalui akses privat terautentikasi (tailnet, terowongan SSH, autentikasi token/kata sandi, atau proksi tepercaya yang dikonfigurasi dengan benar); DM dalam mode pairing atau allowlist; grup masuk daftar izin dan memerlukan penyebutan kecuali setiap anggota tepercaya; alat berisiko tinggi (exec, browser, gateway, cron) ditolak atau dibatasi secara ketat untuk agen yang membaca konten tidak tepercaya; sandboxing diaktifkan saat eksekusi alat memerlukan cakupan dampak yang lebih kecil.
Pengikatan publik tanpa autentikasi, DM/grup terbuka dengan alat, dan kontrol peramban yang terekspos adalah temuan yang harus diperbaiki terlebih dahulu. Detail: openclaw security audit.
Apakah skill ClawHub dan plugin pihak ketiga aman untuk diinstal?
Perlakukan skill dan plugin pihak ketiga sebagai kode yang Anda pilih untuk dipercaya. Halaman skill ClawHub menampilkan status pemindaian sebelum instalasi, tetapi pemindaian bukan batas keamanan yang lengkap. OpenClaw tidak menjalankan pemblokiran kode berbahaya lokal bawaan selama instalasi atau pembaruan plugin/skill; gunakan security.installPolicy yang dikelola operator untuk keputusan izin/blokir lokal.
Pola yang lebih aman: utamakan pembuat tepercaya dan versi yang dipatok, baca skill/plugin sebelum mengaktifkannya, pertahankan daftar izin plugin/skill tetap sempit, jalankan alur kerja masukan tidak tepercaya dalam sandbox dengan alat minimal, dan hindari memberikan akses luas ke sistem berkas, eksekusi, peramban, atau rahasia kepada kode pihak ketiga.
Haruskah bot saya memiliki email, akun GitHub, atau nomor telepon sendiri?
Ya, untuk sebagian besar penyiapan. Mengisolasi bot dengan akun dan nomor telepon terpisah mengurangi cakupan dampak jika terjadi masalah, serta mempermudah rotasi kredensial atau pencabutan akses tanpa memengaruhi akun pribadi Anda.
Mulai dari cakupan kecil: berikan akses hanya ke alat dan akun yang benar-benar diperlukan, lalu perluas nanti jika dibutuhkan.
Dapatkah saya memberinya otonomi atas pesan teks saya dan apakah itu aman?
Kami tidak menyarankan otonomi penuh atas pesan pribadi Anda. Pola teraman: pertahankan DM dalam mode penyandingan atau daftar izin yang ketat, gunakan nomor atau akun terpisah jika bot harus mengirim pesan atas nama Anda, dan biarkan bot membuat draf sementara Anda menyetujui sebelum mengirim.
Untuk bereksperimen, lakukan pada akun khusus yang terisolasi. Lihat Keamanan.
Dapatkah saya menggunakan model yang lebih murah untuk tugas asisten pribadi?
Ya, jika agen hanya digunakan untuk obrolan dan masukannya tepercaya. Tingkatan yang lebih kecil lebih rentan terhadap pengambilalihan instruksi, jadi hindari penggunaannya untuk agen yang mengaktifkan alat atau saat membaca konten tidak tepercaya. Jika Anda harus menggunakan model yang lebih kecil, batasi alat dengan ketat dan jalankan di dalam sandbox. Lihat Keamanan.
Saya menjalankan /start di Telegram tetapi tidak mendapatkan kode penyandingan
Kode penyandingan dikirim hanya saat pengirim yang tidak dikenal mengirim pesan kepada bot dan dmPolicy: "pairing" diaktifkan; /start saja tidak menghasilkan kode.
Periksa permintaan tertunda:
bash
openclaw pairing list telegram
Untuk akses langsung, masukkan id pengirim Anda ke daftar izin atau tetapkan dmPolicy: "open" untuk akun tersebut.
WhatsApp: apakah bot akan mengirim pesan kepada kontak saya? Bagaimana cara kerja penyandingan?
Tidak. Kebijakan DM WhatsApp bawaan adalah penyandingan. Pengirim yang tidak dikenal hanya menerima kode penyandingan; pesan mereka tidak diproses. OpenClaw hanya membalas obrolan yang diterimanya atau pengiriman eksplisit yang Anda picu.
bash
openclaw pairing approve whatsapp <code>openclaw pairing list whatsapp
Prompt nomor telepon wizard menetapkan daftar izin/pemilik Anda agar DM Anda sendiri diizinkan—nomor tersebut tidak digunakan untuk pengiriman otomatis. Untuk nomor WhatsApp pribadi Anda, gunakan nomor tersebut dan aktifkan channels.whatsapp.selfChatMode.
Perintah chat, membatalkan tugas, dan "tidak mau berhenti"
Bagaimana cara menghentikan pesan sistem internal agar tidak muncul di chat?
Sebagian besar pesan internal/alat hanya muncul saat verbose, trace, atau reasoning diaktifkan untuk sesi tersebut.
Perbaiki di chat tempat pesan itu muncul:
text
/verbose off/trace off/reasoning off
Jika masih ramai: periksa pengaturan sesi di Control UI dan atur verbose ke inherit; pastikan Anda tidak menggunakan profil bot dengan verboseDefault: "on" dalam konfigurasi.
Bagaimana cara menghentikan/membatalkan tugas yang sedang berjalan?
Kirim salah satu dari berikut ini sebagai pesan mandiri (tanpa garis miring) untuk memicu pembatalan: stop, stop action, stop current action, stop run, stop current run, stop agent, stop the agent, stop openclaw, openclaw stop, stop don't do anything, stop do not do anything, stop doing anything, do not do that, please stop, stop please, abort, esc, exit, interrupt, halt. Pemicu umum dalam bahasa selain Inggris (Prancis, Jerman, Spanyol, Tionghoa, Jepang, Hindi, Arab, Rusia) juga berfungsi.
Untuk proses latar belakang yang dimulai oleh alat exec, minta agen menjalankan:
text
process action:kill sessionId:XXX
Sebagian besar perintah garis miring harus dikirim sebagai pesan mandiri yang diawali dengan /, tetapi beberapa pintasan (seperti /status) juga berfungsi sebaris bagi pengirim dalam daftar izin. Lihat Perintah garis miring.
Bagaimana cara mengirim pesan Discord dari Telegram? ("Pesan lintas konteks ditolak")
OpenClaw memblokir pengiriman pesan lintas penyedia secara default. Jika pemanggilan alat terikat ke Telegram, alat tersebut tidak akan mengirim ke Discord kecuali Anda secara eksplisit mengizinkannya—dan perubahan ini langsung berlaku tanpa perlu memulai ulang Gateway:
Apa model default untuk Anthropic dengan kunci API?
Kredensial dan pemilihan model adalah hal yang terpisah. Menetapkan ANTHROPIC_API_KEY (atau menyimpan kunci API Anthropic dalam profil autentikasi) mengaktifkan autentikasi, tetapi model default sebenarnya adalah model yang Anda konfigurasikan dalam agents.defaults.model.primary (misalnya anthropic/claude-sonnet-4-6 atau anthropic/claude-opus-4-6). No credentials found for profile "anthropic:default" berarti Gateway tidak dapat menemukan kredensial Anthropic dalam auth-profiles.json yang diharapkan untuk agen yang sedang berjalan.