agents.*, multiAgent.*, session.*,
messages.*, dan talk.*. Untuk channel, tool, runtime Gateway, dan key tingkat atas lainnya, lihat Referensi konfigurasi.
Default agen
agents.defaults.workspace
Default: ~/.openclaw/workspace.
agents.defaults.repoRoot
Root repositori opsional yang ditampilkan pada baris Runtime di system prompt. Jika tidak disetel, OpenClaw mendeteksi otomatis dengan menelusuri ke atas dari workspace.
agents.defaults.skills
Allowlist Skills default opsional untuk agen yang tidak menyetel
agents.list[].skills.
- Hilangkan
agents.defaults.skillsuntuk Skills tak dibatasi secara default. - Hilangkan
agents.list[].skillsuntuk mewarisi default. - Setel
agents.list[].skills: []untuk tanpa Skills. - Daftar
agents.list[].skillsyang tidak kosong adalah kumpulan final untuk agen tersebut; daftar ini tidak digabungkan dengan default.
agents.defaults.skipBootstrap
Menonaktifkan pembuatan otomatis file bootstrap workspace (AGENTS.md, SOUL.md, TOOLS.md, IDENTITY.md, USER.md, HEARTBEAT.md, BOOTSTRAP.md).
agents.defaults.contextInjection
Mengontrol kapan file bootstrap workspace disuntikkan ke system prompt. Default: "always".
"continuation-skip": giliran lanjutan yang aman (setelah respons asisten selesai) melewati penyuntikan ulang bootstrap workspace, sehingga mengurangi ukuran prompt. Proses Heartbeat dan retry pasca-Compaction tetap membangun ulang konteks.
agents.defaults.bootstrapMaxChars
Karakter maksimum per file bootstrap workspace sebelum dipotong. Default: 12000.
agents.defaults.bootstrapTotalMaxChars
Total karakter maksimum yang disuntikkan di semua file bootstrap workspace. Default: 60000.
agents.defaults.bootstrapPromptTruncationWarning
Mengontrol teks peringatan yang terlihat oleh agen saat konteks bootstrap dipotong.
Default: "once".
"off": jangan pernah menyuntikkan teks peringatan ke system prompt."once": suntikkan peringatan sekali per signature pemotongan unik (disarankan)."always": suntikkan peringatan pada setiap proses ketika ada pemotongan.
Peta kepemilikan anggaran konteks
OpenClaw memiliki beberapa anggaran prompt/konteks bervolume tinggi, dan anggaran ini sengaja dipisahkan berdasarkan subsistem alih-alih semuanya mengalir melalui satu pengaturan generik.agents.defaults.bootstrapMaxChars/agents.defaults.bootstrapTotalMaxChars: penyuntikan bootstrap workspace normal.agents.defaults.startupContext.*: prelude startup sekali pakai untuk/newdan/reset, termasuk filememory/*.mdharian terbaru.skills.limits.*: daftar Skills ringkas yang disuntikkan ke system prompt.agents.defaults.contextLimits.*: kutipan runtime terbatas dan blok milik runtime yang disuntikkan.memory.qmd.limits.*: ukuran cuplikan dan injeksi memory-search yang diindeks.
agents.list[].skillsLimits.maxSkillsPromptCharsagents.list[].contextLimits.*
agents.defaults.startupContext
Mengontrol prelude startup giliran pertama yang disuntikkan pada proses /new dan /reset
polos.
agents.defaults.contextLimits
Default bersama untuk surface konteks runtime terbatas.
memoryGetMaxChars: batas kutipanmemory_getdefault sebelum metadata pemotongan dan pemberitahuan lanjutan ditambahkan.memoryGetDefaultLines: jendela barismemory_getdefault saatlinesdihilangkan.toolResultMaxChars: batas hasil tool langsung yang digunakan untuk hasil yang disimpan dan pemulihan overflow.postCompactionMaxChars: batas kutipanAGENTS.mdyang digunakan selama penyuntikan refresh pasca-Compaction.
agents.list[].contextLimits
Override per agen untuk pengaturan contextLimits bersama. Field yang dihilangkan mewarisi
dari agents.defaults.contextLimits.
skills.limits.maxSkillsPromptChars
Batas global untuk daftar Skills ringkas yang disuntikkan ke system prompt. Ini
tidak memengaruhi pembacaan file SKILL.md sesuai permintaan.
agents.list[].skillsLimits.maxSkillsPromptChars
Override per agen untuk anggaran prompt Skills.
agents.defaults.imageMaxDimensionPx
Ukuran piksel maksimum untuk sisi gambar terpanjang dalam blok gambar transkrip/tool sebelum pemanggilan provider.
Default: 1200.
Nilai yang lebih rendah biasanya mengurangi penggunaan vision-token dan ukuran payload permintaan untuk proses yang banyak menggunakan screenshot.
Nilai yang lebih tinggi mempertahankan lebih banyak detail visual.
agents.defaults.userTimezone
Zona waktu untuk konteks system prompt (bukan timestamp pesan). Fallback ke zona waktu host.
agents.defaults.timeFormat
Format waktu dalam system prompt. Default: auto (preferensi OS).
agents.defaults.model
model: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Bentuk string hanya menetapkan model primary.
- Bentuk objek menetapkan primary plus model failover berurutan.
imageModel: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Digunakan oleh jalur tool
imagesebagai konfigurasi vision model. - Juga digunakan sebagai routing fallback saat model yang dipilih/default tidak dapat menerima input gambar.
- Digunakan oleh jalur tool
imageGenerationModel: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Digunakan oleh kapabilitas pembuatan gambar bersama dan semua surface tool/plugin masa depan yang membuat gambar.
- Nilai umum:
google/gemini-3.1-flash-image-previewuntuk pembuatan gambar Gemini native,fal/fal-ai/flux/devuntuk fal, atauopenai/gpt-image-2untuk OpenAI Images. - Jika Anda memilih provider/model secara langsung, konfigurasikan juga auth provider yang sesuai (misalnya
GEMINI_API_KEYatauGOOGLE_API_KEYuntukgoogle/*,OPENAI_API_KEYatau OpenAI Codex OAuth untukopenai/gpt-image-2,FAL_KEYuntukfal/*). - Jika dihilangkan,
image_generatetetap dapat menyimpulkan default provider berbasis auth. Tool ini mencoba provider default saat ini terlebih dahulu, lalu provider pembuatan gambar terdaftar lainnya dalam urutan provider-id.
musicGenerationModel: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Digunakan oleh kapabilitas pembuatan musik bersama dan tool bawaan
music_generate. - Nilai umum:
google/lyria-3-clip-preview,google/lyria-3-pro-preview, atauminimax/music-2.5+. - Jika dihilangkan,
music_generatetetap dapat menyimpulkan default provider berbasis auth. Tool ini mencoba provider default saat ini terlebih dahulu, lalu provider pembuatan musik terdaftar lainnya dalam urutan provider-id. - Jika Anda memilih provider/model secara langsung, konfigurasikan juga auth/API key provider yang sesuai.
- Digunakan oleh kapabilitas pembuatan musik bersama dan tool bawaan
videoGenerationModel: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Digunakan oleh kapabilitas pembuatan video bersama dan tool bawaan
video_generate. - Nilai umum:
qwen/wan2.6-t2v,qwen/wan2.6-i2v,qwen/wan2.6-r2v,qwen/wan2.6-r2v-flash, atauqwen/wan2.7-r2v. - Jika dihilangkan,
video_generatetetap dapat menyimpulkan default provider berbasis auth. Tool ini mencoba provider default saat ini terlebih dahulu, lalu provider pembuatan video terdaftar lainnya dalam urutan provider-id. - Jika Anda memilih provider/model secara langsung, konfigurasikan juga auth/API key provider yang sesuai.
- Provider pembuatan video Qwen bawaan mendukung hingga 1 video output, 1 gambar input, 4 video input, durasi 10 detik, serta opsi tingkat provider
size,aspectRatio,resolution,audio, danwatermark.
- Digunakan oleh kapabilitas pembuatan video bersama dan tool bawaan
pdfModel: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Digunakan oleh tool
pdfuntuk routing model. - Jika dihilangkan, tool PDF akan fallback ke
imageModel, lalu ke model sesi/default yang telah diselesaikan.
- Digunakan oleh tool
pdfMaxBytesMb: batas ukuran PDF default untuk toolpdfsaatmaxBytesMbtidak diberikan pada waktu pemanggilan.pdfMaxPages: jumlah halaman maksimum default yang dipertimbangkan oleh mode fallback ekstraksi di toolpdf.verboseDefault: level verbose default untuk agen. Nilai:"off","on","full". Default:"off".elevatedDefault: level elevated-output default untuk agen. Nilai:"off","on","ask","full". Default:"on".model.primary: formatprovider/model(mis.openai/gpt-5.4untuk akses API key atauopenai-codex/gpt-5.5untuk Codex OAuth). Jika Anda menghilangkan provider, OpenClaw mencoba alias terlebih dahulu, lalu kecocokan unik configured-provider untuk model id persis itu, dan baru kemudian fallback ke provider default yang dikonfigurasi (perilaku kompatibilitas lama yang sudah deprecated, jadi lebih baik gunakanprovider/modeleksplisit). Jika provider tersebut tidak lagi mengekspos model default yang dikonfigurasi, OpenClaw akan fallback ke provider/model pertama yang dikonfigurasi alih-alih menampilkan default provider lama yang sudah dihapus.models: katalog model yang dikonfigurasi dan allowlist untuk/model. Setiap entri dapat menyertakanalias(shortcut) danparams(spesifik provider, misalnyatemperature,maxTokens,cacheRetention,context1m,responsesServerCompaction,responsesCompactThreshold).- Pengeditan aman: gunakan
openclaw config set agents.defaults.models '<json>' --strict-json --mergeuntuk menambahkan entri.config setmenolak penggantian yang akan menghapus entri allowlist yang ada kecuali Anda memberikan--replace. - Alur configure/onboarding dengan cakupan provider akan menggabungkan model provider yang dipilih ke peta ini dan mempertahankan provider lain yang tidak terkait yang sudah dikonfigurasi.
- Untuk model OpenAI Responses langsung, Compaction sisi server diaktifkan secara otomatis. Gunakan
params.responsesServerCompaction: falseuntuk berhenti menyuntikkancontext_management, atauparams.responsesCompactThresholduntuk menimpa ambang batas. Lihat OpenAI server-side compaction.
- Pengeditan aman: gunakan
params: parameter provider default global yang diterapkan ke semua model. Disetel diagents.defaults.params(mis.{ cacheRetention: "long" }).- Prioritas penggabungan
params(konfigurasi):agents.defaults.params(dasar global) ditimpa olehagents.defaults.models["provider/model"].params(per model), laluagents.list[].params(id agen yang cocok) menimpa per key. Lihat Prompt Caching untuk detailnya. embeddedHarness: kebijakan runtime agen tersemat tingkat rendah default. Gunakanruntime: "auto"agar harness plugin yang terdaftar dapat mengklaim model yang didukung,runtime: "pi"untuk memaksa harness PI bawaan, atau id harness terdaftar sepertiruntime: "codex". Setelfallback: "none"untuk menonaktifkan fallback PI otomatis.- Penulis konfigurasi yang memutasi field-field ini (misalnya
/models set,/models set-image, dan perintah tambah/hapus fallback) menyimpan bentuk objek kanonis dan mempertahankan daftar fallback yang ada bila memungkinkan. maxConcurrent: jumlah maksimum proses agen paralel di seluruh sesi (setiap sesi tetap diserialkan). Default: 4.
agents.defaults.embeddedHarness
embeddedHarness mengontrol eksekutor tingkat rendah mana yang menjalankan giliran agen tersemat.
Sebagian besar deployment sebaiknya mempertahankan default { runtime: "auto", fallback: "pi" }.
Gunakan ini saat plugin tepercaya menyediakan harness native, seperti harness
app-server Codex bawaan.
runtime:"auto","pi", atau id harness plugin yang terdaftar. Plugin Codex bawaan mendaftarkancodex.fallback:"pi"atau"none"."pi"mempertahankan harness PI bawaan sebagai fallback kompatibilitas saat tidak ada harness plugin yang dipilih."none"membuat pemilihan harness plugin yang hilang atau tidak didukung gagal alih-alih diam-diam menggunakan PI. Kegagalan harness plugin yang dipilih selalu ditampilkan secara langsung.- Override environment:
OPENCLAW_AGENT_RUNTIME=<id|auto|pi>menimparuntime;OPENCLAW_AGENT_HARNESS_FALLBACK=nonemenonaktifkan fallback PI untuk proses tersebut. - Untuk deployment khusus Codex, setel
model: "openai/gpt-5.5",embeddedHarness.runtime: "codex", danembeddedHarness.fallback: "none". - Pilihan harness dipasang per id sesi setelah proses tersemat pertama. Perubahan konfigurasi/env memengaruhi sesi baru atau yang di-reset, bukan transkrip yang sudah ada. Sesi lama dengan riwayat transkrip tetapi tanpa pin yang terekam diperlakukan sebagai dipin ke PI.
/statusmenampilkan id harness non-PI seperticodexdi sampingFast. - Ini hanya mengontrol harness chat tersemat. Pembuatan media, vision, PDF, musik, video, dan TTS tetap menggunakan pengaturan provider/model masing-masing.
agents.defaults.models):
| Alias | Model |
|---|---|
opus | anthropic/claude-opus-4-6 |
sonnet | anthropic/claude-sonnet-4-6 |
gpt | openai/gpt-5.4 atau GPT-5.5 Codex OAuth yang dikonfigurasi |
gpt-mini | openai/gpt-5.4-mini |
gpt-nano | openai/gpt-5.4-nano |
gemini | google/gemini-3.1-pro-preview |
gemini-flash | google/gemini-3-flash-preview |
gemini-flash-lite | google/gemini-3.1-flash-lite-preview |
--thinking off atau mendefinisikan sendiri agents.defaults.models["zai/<model>"].params.thinking.
Model Z.AI mengaktifkan tool_stream secara default untuk streaming pemanggilan tool. Setel agents.defaults.models["zai/<model>"].params.tool_stream ke false untuk menonaktifkannya.
Model Anthropic Claude 4.6 default ke thinking adaptive saat tidak ada level thinking eksplisit yang disetel.
agents.defaults.cliBackends
CLI backend opsional untuk proses fallback teks saja (tanpa pemanggilan tool). Berguna sebagai cadangan saat provider API gagal.
- CLI backend bersifat text-first; tool selalu dinonaktifkan.
- Sesi didukung saat
sessionArgdisetel. - Pass-through gambar didukung saat
imageArgmenerima path file.
agents.defaults.systemPromptOverride
Ganti seluruh system prompt yang dirakit OpenClaw dengan string tetap. Setel di level default (agents.defaults.systemPromptOverride) atau per agen (agents.list[].systemPromptOverride). Nilai per agen lebih diutamakan; nilai kosong atau hanya spasi diabaikan. Berguna untuk eksperimen prompt yang terkendali.
agents.defaults.promptOverlays
Overlay prompt yang independen dari provider dan diterapkan berdasarkan keluarga model. Model id keluarga GPT-5 menerima kontrak perilaku bersama lintas provider; personality hanya mengontrol lapisan gaya interaksi yang ramah.
"friendly"(default) dan"on"mengaktifkan lapisan gaya interaksi yang ramah."off"hanya menonaktifkan lapisan ramah; kontrak perilaku GPT-5 yang diberi tag tetap aktif.plugins.entries.openai.config.personalitylama masih dibaca saat pengaturan bersama ini tidak disetel.
agents.defaults.heartbeat
Proses Heartbeat berkala.
every: string durasi (ms/s/m/h). Default:30m(auth API key) atau1h(auth OAuth). Setel ke0muntuk menonaktifkan.includeSystemPromptSection: saat false, menghilangkan bagian Heartbeat dari system prompt dan melewati penyuntikanHEARTBEAT.mdke konteks bootstrap. Default:true.suppressToolErrorWarnings: saat true, menekan payload peringatan error tool selama proses Heartbeat.timeoutSeconds: waktu maksimum dalam detik yang diizinkan untuk satu giliran agen Heartbeat sebelum dibatalkan. Biarkan tidak disetel untuk menggunakanagents.defaults.timeoutSeconds.directPolicy: kebijakan pengiriman langsung/DM.allow(default) mengizinkan pengiriman target langsung.blockmenekan pengiriman target langsung dan mengeluarkanreason=dm-blocked.lightContext: saat true, proses Heartbeat menggunakan konteks bootstrap ringan dan hanya mempertahankanHEARTBEAT.mddari file bootstrap workspace.isolatedSession: saat true, setiap Heartbeat berjalan di sesi baru tanpa riwayat percakapan sebelumnya. Pola isolasi yang sama seperti CronsessionTarget: "isolated". Mengurangi biaya token per Heartbeat dari ~100K menjadi ~2-5K token.- Per agen: setel
agents.list[].heartbeat. Saat agen mana pun mendefinisikanheartbeat, hanya agen tersebut yang menjalankan Heartbeat. - Heartbeat menjalankan giliran agen penuh — interval yang lebih pendek membakar lebih banyak token.
agents.defaults.compaction
mode:defaultatausafeguard(peringkasan bertahap untuk riwayat panjang). Lihat Compaction.provider: id dari plugin provider Compaction yang terdaftar. Saat disetel,summarize()milik provider dipanggil alih-alih peringkasan LLM bawaan. Fallback ke bawaan saat gagal. Menyetel provider memaksamode: "safeguard". Lihat Compaction.timeoutSeconds: jumlah detik maksimum yang diizinkan untuk satu operasi Compaction sebelum OpenClaw membatalkannya. Default:900.identifierPolicy:strict(default),off, ataucustom.strictmenambahkan panduan retensi identifier opak bawaan selama peringkasan Compaction.identifierInstructions: teks pelestarian identifier kustom opsional yang digunakan saatidentifierPolicy=custom.postCompactionSections: nama bagian H2/H3AGENTS.mdopsional untuk disuntikkan ulang setelah Compaction. Default ke["Session Startup", "Red Lines"]; setel[]untuk menonaktifkan penyuntikan ulang. Saat tidak disetel atau secara eksplisit disetel ke pasangan default tersebut, heading lamaEvery Session/Safetyjuga diterima sebagai fallback lama.model: overrideprovider/model-idopsional hanya untuk peringkasan Compaction. Gunakan ini saat sesi utama harus tetap memakai satu model tetapi ringkasan Compaction harus dijalankan pada model lain; saat tidak disetel, Compaction menggunakan model utama sesi.notifyUser: saattrue, mengirim notifikasi singkat ke pengguna saat Compaction dimulai dan saat selesai (misalnya, “Memadatkan konteks…” dan “Compaction selesai”). Dinonaktifkan secara default agar Compaction tetap senyap.memoryFlush: giliran agentic senyap sebelum Compaction otomatis untuk menyimpan memori tahan lama. Dilewati saat workspace bersifat read-only.
agents.defaults.contextPruning
Memangkas hasil tool lama dari konteks dalam memori sebelum dikirim ke LLM. Tidak memodifikasi riwayat sesi di disk.
Perilaku mode cache-ttl
Perilaku mode cache-ttl
mode: "cache-ttl"mengaktifkan proses pruning.ttlmengontrol seberapa sering pruning dapat dijalankan lagi (setelah sentuhan cache terakhir).- Pruning melakukan soft-trim pada hasil tool yang terlalu besar terlebih dahulu, lalu hard-clear pada hasil tool yang lebih lama bila diperlukan.
... di tengah.Hard-clear mengganti seluruh hasil tool dengan placeholder.Catatan:- Blok gambar tidak pernah dipangkas/dibersihkan.
- Rasio berbasis karakter (perkiraan), bukan jumlah token yang presisi.
- Jika pesan asisten kurang dari
keepLastAssistants, pruning dilewati.
Streaming blok
- Channel non-Telegram memerlukan
*.blockStreaming: trueeksplisit untuk mengaktifkan balasan blok. - Override channel:
channels.<channel>.blockStreamingCoalesce(dan varian per akun). Signal/Slack/Discord/Google Chat default keminChars: 1500. humanDelay: jeda acak di antara balasan blok.natural= 800–2500ms. Override per agen:agents.list[].humanDelay.
Indikator mengetik
- Default:
instantuntuk chat langsung/mention,messageuntuk chat grup tanpa mention. - Override per sesi:
session.typingMode,session.typingIntervalSeconds.
agents.defaults.sandbox
Sandboxing opsional untuk agen tersemat. Lihat Sandboxing untuk panduan lengkap.
Detail sandbox
Detail sandbox
Backend:Mode OpenShell:
docker: runtime Docker lokal (default)ssh: runtime remote umum berbasis SSHopenshell: runtime OpenShell
backend: "openshell" dipilih, pengaturan spesifik runtime dipindahkan ke
plugins.entries.openshell.config.Konfigurasi backend SSH:target: target SSH dalam bentukuser@host[:port]command: perintah klien SSH (default:ssh)workspaceRoot: root remote absolut yang digunakan untuk workspace per scopeidentityFile/certificateFile/knownHostsFile: file lokal yang ada dan diteruskan ke OpenSSHidentityData/certificateData/knownHostsData: konten inline atau SecretRef yang diwujudkan OpenClaw menjadi file sementara saat runtimestrictHostKeyChecking/updateHostKeys: pengaturan kebijakan host-key OpenSSH
identityDatalebih diutamakan daripadaidentityFilecertificateDatalebih diutamakan daripadacertificateFileknownHostsDatalebih diutamakan daripadaknownHostsFile- Nilai
*Databerbasis SecretRef diselesaikan dari snapshot runtime secret aktif sebelum sesi sandbox dimulai
- melakukan seed workspace remote sekali setelah create atau recreate
- lalu mempertahankan workspace SSH remote sebagai kanonis
- merutekan
exec, file tools, dan path media melalui SSH - tidak menyinkronkan perubahan remote kembali ke host secara otomatis
- tidak mendukung container browser sandbox
none: workspace sandbox per scope di bawah~/.openclaw/sandboxesro: workspace sandbox di/workspace, workspace agen di-mount read-only di/agentrw: workspace agen di-mount read/write di/workspace
session: container + workspace per sesiagent: satu container + workspace per agen (default)shared: container dan workspace bersama (tanpa isolasi antar sesi)
mirror: seed remote dari lokal sebelum exec, sinkronkan kembali setelah exec; workspace lokal tetap kanonisremote: seed remote sekali saat sandbox dibuat, lalu pertahankan workspace remote sebagai kanonis
remote, edit lokal host yang dibuat di luar OpenClaw tidak disinkronkan ke sandbox secara otomatis setelah langkah seed.
Transport menggunakan SSH ke sandbox OpenShell, tetapi plugin memiliki siklus hidup sandbox dan sinkronisasi mirror opsional.setupCommand berjalan sekali setelah pembuatan container (melalui sh -lc). Memerlukan egress jaringan, root yang dapat ditulis, dan pengguna root.Container default ke network: "none" — setel ke "bridge" (atau jaringan bridge kustom) jika agen memerlukan akses keluar.
"host" diblokir. "container:<id>" diblokir secara default kecuali Anda secara eksplisit menyetel
sandbox.docker.dangerouslyAllowContainerNamespaceJoin: true (opsi darurat).Lampiran masuk dipentaskan ke media/inbound/* di workspace aktif.docker.binds me-mount direktori host tambahan; bind global dan per agen digabungkan.Browser tersandbox (sandbox.browser.enabled): Chromium + CDP di dalam container. URL noVNC disuntikkan ke system prompt. Tidak memerlukan browser.enabled di openclaw.json.
Akses pengamat noVNC menggunakan auth VNC secara default dan OpenClaw mengeluarkan URL token berumur pendek (bukan mengekspos kata sandi di URL bersama).allowHostControl: false(default) memblokir sesi tersandbox untuk menargetkan browser host.networkdefault keopenclaw-sandbox-browser(jaringan bridge khusus). Setel kebridgehanya jika Anda secara eksplisit menginginkan konektivitas bridge global.cdpSourceRangesecara opsional membatasi ingress CDP di tepi container ke rentang CIDR (misalnya172.21.0.1/32).sandbox.browser.bindsme-mount direktori host tambahan hanya ke container browser sandbox. Saat disetel (termasuk[]), pengaturan ini menggantikandocker.bindsuntuk container browser.- Default peluncuran didefinisikan di
scripts/sandbox-browser-entrypoint.shdan disetel untuk host container:--remote-debugging-address=127.0.0.1--remote-debugging-port=<derived from OPENCLAW_BROWSER_CDP_PORT>--user-data-dir=${HOME}/.chrome--no-first-run--no-default-browser-check--disable-3d-apis--disable-gpu--disable-software-rasterizer--disable-dev-shm-usage--disable-background-networking--disable-features=TranslateUI--disable-breakpad--disable-crash-reporter--renderer-process-limit=2--no-zygote--metrics-recording-only--disable-extensions(aktif secara default)--disable-3d-apis,--disable-software-rasterizer, dan--disable-gpuaktif secara default dan dapat dinonaktifkan denganOPENCLAW_BROWSER_DISABLE_GRAPHICS_FLAGS=0jika penggunaan WebGL/3D memerlukannya.OPENCLAW_BROWSER_DISABLE_EXTENSIONS=0mengaktifkan kembali ekstensi jika alur kerja Anda bergantung padanya.--renderer-process-limit=2dapat diubah denganOPENCLAW_BROWSER_RENDERER_PROCESS_LIMIT=<N>; setel0untuk menggunakan batas proses default Chromium.- ditambah
--no-sandboxdan--disable-setuid-sandboxsaatnoSandboxdiaktifkan. - Default adalah baseline image container; gunakan image browser kustom dengan entrypoint kustom untuk mengubah default container.
sandbox.docker.binds hanya untuk Docker.
Bangun image:
agents.list (override per agen)
id: id agen stabil (wajib).default: saat beberapa disetel, yang pertama menang (peringatan dicatat). Jika tidak ada yang disetel, entri daftar pertama menjadi default.model: bentuk string hanya menimpaprimary; bentuk objek{ primary, fallbacks }menimpa keduanya ([]menonaktifkan fallback global). Tugas Cron yang hanya menimpaprimarytetap mewarisi fallback default kecuali Anda menyetelfallbacks: [].params: params stream per agen yang digabungkan di atas entri model yang dipilih diagents.defaults.models. Gunakan ini untuk override khusus agen seperticacheRetention,temperature, ataumaxTokenstanpa menduplikasi seluruh katalog model.skills: allowlist Skills per agen opsional. Jika dihilangkan, agen mewarisiagents.defaults.skillssaat disetel; daftar eksplisit menggantikan default alih-alih digabungkan, dan[]berarti tanpa Skills.thinkingDefault: level thinking default per agen opsional (off | minimal | low | medium | high | xhigh | adaptive | max). Menimpaagents.defaults.thinkingDefaultuntuk agen ini saat tidak ada override per pesan atau sesi.reasoningDefault: visibilitas reasoning default per agen opsional (on | off | stream). Berlaku saat tidak ada override reasoning per pesan atau sesi.fastModeDefault: default per agen opsional untuk fast mode (true | false). Berlaku saat tidak ada override fast-mode per pesan atau sesi.embeddedHarness: override kebijakan harness tingkat rendah per agen opsional. Gunakan{ runtime: "codex", fallback: "none" }agar satu agen hanya Codex sementara agen lain tetap menggunakan fallback PI default.runtime: deskriptor runtime per agen opsional. Gunakantype: "acp"dengan defaultruntime.acp(agent,backend,mode,cwd) saat agen seharusnya default ke sesi harness ACP.identity.avatar: path relatif workspace, URLhttp(s), atau URIdata:.identitymenurunkan default:ackReactiondariemoji,mentionPatternsdariname/emoji.subagents.allowAgents: allowlist id agen untuksessions_spawn(["*"]= apa saja; default: hanya agen yang sama).- Guard pewarisan sandbox: jika sesi peminta disandbox,
sessions_spawnmenolak target yang akan berjalan tanpa sandbox. subagents.requireAgentId: saat true, blokir pemanggilansessions_spawnyang menghilangkanagentId(memaksa pemilihan profil eksplisit; default: false).
Routing multi-agen
Jalankan beberapa agen terisolasi di dalam satu Gateway. Lihat Multi-Agent.Field pencocokan binding
type(opsional):routeuntuk routing normal (type yang hilang default ke route),acpuntuk binding percakapan ACP persisten.match.channel(wajib)match.accountId(opsional;*= akun apa saja; dihilangkan = akun default)match.peer(opsional;{ kind: direct|group|channel, id })match.guildId/match.teamId(opsional; khusus channel)acp(opsional; hanya untuk entritype: "acp"):{ mode, label, cwd, backend }
match.peermatch.guildIdmatch.teamIdmatch.accountId(persis, tanpa peer/guild/team)match.accountId: "*"(seluruh channel)- Agen default
bindings pertama yang cocok menang.
Untuk entri type: "acp", OpenClaw menyelesaikan berdasarkan identitas percakapan persis (match.channel + akun + match.peer.id) dan tidak menggunakan urutan tingkat binding route di atas.
Profil akses per agen
Akses penuh (tanpa sandbox)
Akses penuh (tanpa sandbox)
Tool + workspace read-only
Tool + workspace read-only
Tanpa akses filesystem (hanya messaging)
Tanpa akses filesystem (hanya messaging)
Sesi
Detail field sesi
Detail field sesi
scope: strategi pengelompokan sesi dasar untuk konteks chat grup.per-sender(default): setiap pengirim mendapatkan sesi terisolasi dalam konteks channel.global: semua peserta dalam konteks channel berbagi satu sesi (gunakan hanya bila konteks bersama memang diinginkan).
dmScope: bagaimana DM dikelompokkan.main: semua DM berbagi sesi utama.per-peer: isolasi berdasarkan id pengirim lintas channel.per-channel-peer: isolasi per channel + pengirim (disarankan untuk inbox multi-pengguna).per-account-channel-peer: isolasi per akun + channel + pengirim (disarankan untuk multi-akun).
identityLinks: peta id kanonis ke peer berprefiks provider untuk berbagi sesi lintas channel.reset: kebijakan reset utama.dailymereset padaatHourwaktu lokal;idlemereset setelahidleMinutes. Jika keduanya dikonfigurasi, yang kedaluwarsa lebih dulu yang berlaku.resetByType: override per jenis (direct,group,thread).dmlama diterima sebagai alias untukdirect.parentForkMaxTokens:totalTokenssesi induk maksimum yang diizinkan saat membuat sesi thread hasil fork (default100000).- Jika
totalTokensinduk di atas nilai ini, OpenClaw memulai sesi thread baru alih-alih mewarisi riwayat transkrip induk. - Setel
0untuk menonaktifkan guard ini dan selalu mengizinkan fork dari induk.
- Jika
mainKey: field lama. Runtime selalu menggunakan"main"untuk bucket chat langsung utama.agentToAgent.maxPingPongTurns: jumlah maksimum giliran balas-balik antar agen selama pertukaran agent-to-agent (integer, rentang:0–5).0menonaktifkan rantai ping-pong.sendPolicy: cocokkan berdasarkanchannel,chatType(direct|group|channel, dengan alias lamadm),keyPrefix, ataurawKeyPrefix. Deny pertama yang cocok menang.maintenance: pembersihan + kontrol retensi penyimpanan sesi.mode:warnhanya mengeluarkan peringatan;enforcemenerapkan pembersihan.pruneAfter: batas usia untuk entri usang (default30d).maxEntries: jumlah maksimum entri dalamsessions.json(default500).rotateBytes: rotasisessions.jsonsaat melebihi ukuran ini (default10mb).resetArchiveRetention: retensi untuk arsip transkrip*.reset.<timestamp>. Default kepruneAfter; setelfalseuntuk menonaktifkan.maxDiskBytes: anggaran disk direktori sesi opsional. Dalam modewarnini mencatat peringatan; dalam modeenforceini menghapus artefak/sesi tertua terlebih dahulu.highWaterBytes: target opsional setelah pembersihan anggaran. Default ke80%darimaxDiskBytes.
threadBindings: default global untuk fitur sesi yang terikat ke thread.enabled: sakelar default utama (provider dapat menimpa; Discord menggunakanchannels.discord.threadBindings.enabled)idleHours: auto-unfocus default karena tidak aktif dalam jam (0menonaktifkan; provider dapat menimpa)maxAgeHours: usia maksimum keras default dalam jam (0menonaktifkan; provider dapat menimpa)
Pesan
Prefiks respons
Override per channel/akun:channels.<channel>.responsePrefix, channels.<channel>.accounts.<id>.responsePrefix.
Resolusi (yang paling spesifik menang): akun → channel → global. "" menonaktifkan dan menghentikan kaskade. "auto" menurunkan [{identity.name}].
Variabel template:
| Variable | Description | Example |
|---|---|---|
{model} | Nama model singkat | claude-opus-4-6 |
{modelFull} | Identifier model penuh | anthropic/claude-opus-4-6 |
{provider} | Nama provider | anthropic |
{thinkingLevel} | Level thinking saat ini | high, low, off |
{identity.name} | Nama identitas agen | (sama seperti "auto") |
{think} adalah alias untuk {thinkingLevel}.
Reaksi ack
- Default ke
identity.emojiagen aktif, jika tidak ada maka"👀". Setel""untuk menonaktifkan. - Override per channel:
channels.<channel>.ackReaction,channels.<channel>.accounts.<id>.ackReaction. - Urutan resolusi: akun → channel →
messages.ackReaction→ fallback identitas. - Cakupan:
group-mentions(default),group-all,direct,all. removeAckAfterReply: menghapus ack setelah balasan di Slack, Discord, dan Telegram.messages.statusReactions.enabled: mengaktifkan reaksi status siklus hidup di Slack, Discord, dan Telegram. Di Slack dan Discord, jika tidak disetel maka reaksi status tetap aktif saat reaksi ack aktif. Di Telegram, setel secara eksplisit ketrueuntuk mengaktifkan reaksi status siklus hidup.
Debounce masuk
Mengelompokkan pesan teks cepat dari pengirim yang sama menjadi satu giliran agen. Media/lampiran langsung di-flush. Perintah kontrol melewati debounce.TTS (text-to-speech)
automengontrol mode auto-TTS default:off,always,inbound, atautagged./tts on|offdapat menimpa preferensi lokal, dan/tts statusmenampilkan status efektif.summaryModelmenimpaagents.defaults.model.primaryuntuk ringkasan otomatis.modelOverridesaktif secara default;modelOverrides.allowProviderdefault kefalse(perlu opt-in).- API key fallback ke
ELEVENLABS_API_KEY/XI_API_KEYdanOPENAI_API_KEY. openai.baseUrlmenimpa endpoint OpenAI TTS. Urutan resolusi adalah config, laluOPENAI_TTS_BASE_URL, laluhttps://api.openai.com/v1.- Saat
openai.baseUrlmengarah ke endpoint non-OpenAI, OpenClaw memperlakukannya sebagai server TTS yang kompatibel dengan OpenAI dan melonggarkan validasi model/voice.
Talk
Default untuk mode Talk (macOS/iOS/Android).talk.providerharus cocok dengan key ditalk.providerssaat beberapa provider Talk dikonfigurasi.- Key Talk datar lama (
talk.voiceId,talk.voiceAliases,talk.modelId,talk.outputFormat,talk.apiKey) hanya untuk kompatibilitas dan dimigrasikan otomatis ketalk.providers.<provider>. - Voice ID fallback ke
ELEVENLABS_VOICE_IDatauSAG_VOICE_ID. providers.*.apiKeymenerima string plaintext atau objek SecretRef.- Fallback
ELEVENLABS_API_KEYhanya berlaku saat tidak ada API key Talk yang dikonfigurasi. providers.*.voiceAliasesmemungkinkan direktif Talk menggunakan nama yang ramah.silenceTimeoutMsmengontrol berapa lama mode Talk menunggu setelah pengguna diam sebelum mengirim transkrip. Jika tidak disetel, jendela jeda default platform tetap digunakan (700 ms di macOS dan Android, 900 ms di iOS).
Terkait
- Referensi konfigurasi — semua key konfigurasi lainnya
- Konfigurasi — tugas umum dan penyiapan cepat
- Contoh konfigurasi