agents.*, multiAgent.*, session.*,
messages.*, dan talk.*. Untuk channel, alat, runtime Gateway, dan kunci
tingkat atas lainnya, lihat Referensi konfigurasi.
Bawaan agen
agents.defaults.workspace
Bawaan: OPENCLAW_WORKSPACE_DIR saat diatur, jika tidak ~/.openclaw/workspace.
agents.defaults.workspace eksplisit lebih diprioritaskan daripada
OPENCLAW_WORKSPACE_DIR. Gunakan variabel lingkungan untuk mengarahkan agen bawaan
ke workspace yang di-mount saat Anda tidak ingin menulis path tersebut ke config.
agents.defaults.repoRoot
Root repositori opsional yang ditampilkan di baris Runtime pada prompt sistem. Jika tidak diatur, OpenClaw mendeteksi otomatis dengan menelusuri ke atas dari workspace.
agents.defaults.skills
Allowlist skill bawaan opsional untuk agen yang tidak mengatur
agents.list[].skills.
- Hilangkan
agents.defaults.skillsuntuk skill tanpa batasan secara bawaan. - Hilangkan
agents.list[].skillsuntuk mewarisi bawaan. - Atur
agents.list[].skills: []untuk tanpa skill. - Daftar
agents.list[].skillsyang tidak kosong adalah set final untuk agen tersebut; daftar itu tidak digabung dengan bawaan.
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.skipOptionalBootstrapFiles
Melewati pembuatan file workspace opsional tertentu sambil tetap menulis file bootstrap wajib. Nilai valid: SOUL.md, USER.md, HEARTBEAT.md, dan IDENTITY.md.
agents.defaults.contextInjection
Mengontrol kapan file bootstrap workspace disuntikkan ke prompt sistem. Bawaan: "always".
"continuation-skip": giliran lanjutan yang aman (setelah respons asisten selesai) melewati penyuntikan ulang bootstrap workspace, sehingga mengurangi ukuran prompt. Jalankan Heartbeat dan percobaan ulang pasca-Compaction tetap membangun ulang konteks."never": nonaktifkan bootstrap workspace dan penyuntikan file konteks pada setiap giliran. Gunakan ini hanya untuk agen yang sepenuhnya memiliki lifecycle prompt sendiri (mesin konteks kustom, runtime native yang membangun konteks sendiri, atau workflow khusus tanpa bootstrap). Giliran Heartbeat dan pemulihan Compaction juga melewati penyuntikan.
agents.list[].contextInjection. Nilai yang dihilangkan mewarisi
agents.defaults.contextInjection.
agents.defaults.bootstrapMaxChars
Jumlah karakter maksimum per file bootstrap workspace sebelum pemotongan. Bawaan: 20000.
agents.list[].bootstrapMaxChars. Nilai yang dihilangkan mewarisi
agents.defaults.bootstrapMaxChars.
agents.defaults.bootstrapTotalMaxChars
Jumlah karakter total maksimum yang disuntikkan di seluruh file bootstrap workspace. Bawaan: 60000.
agents.list[].bootstrapTotalMaxChars. Nilai yang dihilangkan
mewarisi agents.defaults.bootstrapTotalMaxChars.
Override profil bootstrap per agen
Gunakan override profil bootstrap per agen saat satu agen memerlukan perilaku penyuntikan prompt yang berbeda dari bawaan bersama. Field yang dihilangkan mewarisi dariagents.defaults.
agents.defaults.bootstrapPromptTruncationWarning
Mengontrol pemberitahuan prompt sistem yang terlihat oleh agen saat konteks bootstrap dipotong.
Bawaan: "always".
"off": jangan pernah menyuntikkan teks pemberitahuan pemotongan ke prompt sistem."once": suntikkan pemberitahuan ringkas satu kali per tanda tangan pemotongan unik."always": suntikkan pemberitahuan ringkas pada setiap run saat ada pemotongan (direkomendasikan).
Peta kepemilikan anggaran konteks
OpenClaw memiliki beberapa anggaran prompt/konteks bervolume tinggi, dan anggaran tersebut sengaja dipisahkan berdasarkan subsistem, bukan semuanya mengalir melalui satu knob generik.agents.defaults.bootstrapMaxChars/agents.defaults.bootstrapTotalMaxChars: penyuntikan bootstrap workspace normal.agents.defaults.startupContext.*: prelude satu kali untuk run model reset/startup, termasuk filememory/*.mdharian terbaru. Perintah chat polos/newdan/resetdiakui tanpa memanggil model.skills.limits.*: daftar skills ringkas yang disuntikkan ke prompt sistem.agents.defaults.contextLimits.*: kutipan runtime berbatas dan blok milik runtime yang disuntikkan.memory.qmd.limits.*: ukuran snippet pencarian memori terindeks dan penyuntikan.
agents.list[].skillsLimits.maxSkillsPromptCharsagents.list[].contextInjectionagents.list[].bootstrapMaxCharsagents.list[].bootstrapTotalMaxCharsagents.list[].contextLimits.*
agents.defaults.startupContext
Mengontrol prelude startup giliran pertama yang disuntikkan pada run model reset/startup.
Perintah chat polos /new dan /reset mengakui reset tanpa memanggil
model, sehingga tidak memuat prelude ini.
agents.defaults.contextLimits
Bawaan bersama untuk surface konteks runtime berbatas.
memoryGetMaxChars: batas kutipanmemory_getbawaan sebelum metadata pemotongan dan pemberitahuan lanjutan ditambahkan.memoryGetDefaultLines: jendela barismemory_getbawaan saatlinesdihilangkan.toolResultMaxChars: batas atas hasil alat live tingkat lanjut yang digunakan untuk hasil persisten dan pemulihan overflow. Biarkan tidak diatur untuk batas otomatis konteks model:16000karakter di bawah 100K token,32000karakter pada 100K+ token, dan64000karakter pada 200K+ token. Nilai eksplisit hingga1000000diterima untuk model berkonteks panjang, tetapi batas efektif masih dibatasi sekitar 30% dari jendela konteks model.openclaw doctor --deepmencetak batas efektif, dan doctor hanya memperingatkan saat override eksplisit sudah usang atau tidak berpengaruh.postCompactionMaxChars: batas kutipan AGENTS.md yang digunakan selama penyuntikan refresh pasca-Compaction.
agents.list[].contextLimits
Override per agen untuk knob contextLimits bersama. Field yang dihilangkan mewarisi
dari agents.defaults.contextLimits.
skills.limits.maxSkillsPromptChars
Batas global untuk daftar skills ringkas yang disuntikkan ke prompt sistem. Ini
tidak memengaruhi pembacaan file SKILL.md sesuai kebutuhan.
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/alat sebelum panggilan penyedia.
Bawaan: 1200.
Nilai yang lebih rendah biasanya mengurangi penggunaan token visi dan ukuran payload permintaan untuk run yang banyak screenshot.
Nilai yang lebih tinggi mempertahankan lebih banyak detail visual.
agents.defaults.imageQuality
Preferensi kompresi/detail alat gambar untuk gambar yang dimuat dari path file, URL, dan referensi media.
Bawaan: auto.
OpenClaw menyesuaikan tangga resize dengan model gambar yang dipilih. Misalnya, Claude Opus 4.8, OpenAI GPT-5.5, Qwen VL, dan model visi Llama 4 yang di-host dapat menggunakan gambar yang lebih besar daripada jalur visi detail tinggi lama/bawaan, sementara giliran multi-gambar dikompresi lebih agresif dalam mode auto untuk mengontrol biaya token dan latensi.
Nilai:
auto: sesuaikan dengan batas model dan jumlah gambar.efficient: utamakan gambar yang lebih kecil untuk penggunaan token dan byte yang lebih rendah.balanced: gunakan tangga jalan tengah standar.high: pertahankan lebih banyak detail untuk screenshot, diagram, dan gambar dokumen.
agents.defaults.userTimezone
Zona waktu untuk konteks prompt sistem (bukan stempel waktu pesan). Fallback ke zona waktu host.
agents.defaults.timeFormat
Format waktu dalam prompt sistem. Bawaan: auto (preferensi OS).
agents.defaults.model
model: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Bentuk string hanya menetapkan model utama.
- Bentuk objek menetapkan model utama plus model failover berurutan.
imageModel: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Digunakan oleh jalur alat
imagesebagai konfigurasi model vision-nya. - Juga digunakan sebagai perutean fallback ketika model yang dipilih/default tidak dapat menerima input gambar.
- Utamakan ref
provider/modeleksplisit. ID polos diterima untuk kompatibilitas; jika ID polos cocok secara unik dengan entri berkemampuan gambar yang dikonfigurasi dimodels.providers.*.models, OpenClaw melengkapinya ke provider tersebut. Kecocokan terkonfigurasi yang ambigu memerlukan prefiks provider eksplisit.
- Digunakan oleh jalur alat
imageGenerationModel: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Digunakan oleh kapabilitas pembuatan gambar bersama dan permukaan alat/plugin masa depan apa pun yang menghasilkan gambar.
- Nilai umum:
google/gemini-3.1-flash-image-previewuntuk pembuatan gambar Gemini native,fal/fal-ai/flux/devuntuk fal,openai/gpt-image-2untuk OpenAI Images, atauopenai/gpt-image-1.5untuk output PNG/WebP OpenAI berlatar transparan. - Jika Anda memilih provider/model secara langsung, konfigurasikan juga autentikasi provider yang cocok (misalnya
GEMINI_API_KEYatauGOOGLE_API_KEYuntukgoogle/*,OPENAI_API_KEYatau OpenAI Codex OAuth untukopenai/gpt-image-2/openai/gpt-image-1.5,FAL_KEYuntukfal/*). - Jika dihilangkan,
image_generatemasih dapat menyimpulkan default provider yang didukung autentikasi. Ini mencoba provider default saat ini terlebih dahulu, lalu provider pembuatan gambar terdaftar yang tersisa dalam urutan ID provider.
musicGenerationModel: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Digunakan oleh kapabilitas pembuatan musik bersama dan alat bawaan
music_generate. - Nilai umum:
google/lyria-3-clip-preview,google/lyria-3-pro-preview, atauminimax/music-2.6. - Jika dihilangkan,
music_generatemasih dapat menyimpulkan default provider yang didukung autentikasi. Ini mencoba provider default saat ini terlebih dahulu, lalu provider pembuatan musik terdaftar yang tersisa dalam urutan ID provider. - Jika Anda memilih provider/model secara langsung, konfigurasikan juga autentikasi/kunci API provider yang cocok.
- Digunakan oleh kapabilitas pembuatan musik bersama dan alat bawaan
videoGenerationModel: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Digunakan oleh kapabilitas pembuatan video bersama dan alat 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_generatemasih dapat menyimpulkan default provider yang didukung autentikasi. Ini mencoba provider default saat ini terlebih dahulu, lalu provider pembuatan video terdaftar yang tersisa dalam urutan ID provider. - Jika Anda memilih provider/model secara langsung, konfigurasikan juga autentikasi/kunci API provider yang cocok.
- Plugin pembuatan video Qwen resmi 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 alat bawaan
pdfModel: menerima string ("provider/model") atau objek ({ primary, fallbacks }).- Digunakan oleh alat
pdfuntuk perutean model. - Jika dihilangkan, alat PDF melakukan fallback ke
imageModel, lalu ke model sesi/default yang telah diselesaikan.
- Digunakan oleh alat
pdfMaxBytesMb: batas ukuran PDF default untuk alatpdfketikamaxBytesMbtidak diteruskan saat pemanggilan.pdfMaxPages: halaman maksimum default yang dipertimbangkan oleh mode fallback ekstraksi di alatpdf.verboseDefault: tingkat verbose default untuk agen. Nilai:"off","on","full". Default:"off".toolProgressDetail: mode detail untuk ringkasan alat/verbosedan baris alat draf progres. Nilai:"explain"(default, label manusia ringkas) atau"raw"(tambahkan perintah/detail mentah bila tersedia).agents.list[].toolProgressDetailper agen menimpa default ini.reasoningDefault: visibilitas reasoning default untuk agen. Nilai:"off","on","stream".agents.list[].reasoningDefaultper agen menimpa default ini. Default reasoning yang dikonfigurasi hanya diterapkan untuk pemilik, pengirim terotorisasi, atau konteks Gateway admin operator ketika tidak ada override reasoning per pesan atau sesi yang ditetapkan.elevatedDefault: tingkat output elevated default untuk agen. Nilai:"off","on","ask","full". Default:"on".model.primary: formatprovider/model(misalnyaopenai/gpt-5.5untuk akses kunci API OpenAI atau Codex OAuth). Jika Anda menghilangkan provider, OpenClaw mencoba alias terlebih dahulu, lalu kecocokan provider terkonfigurasi yang unik untuk ID model persis tersebut, dan baru setelah itu fallback ke provider default terkonfigurasi (perilaku kompatibilitas yang tidak digunakan lagi, jadi utamakanprovider/modeleksplisit). Jika provider tersebut tidak lagi mengekspos model default terkonfigurasi, OpenClaw fallback ke provider/model terkonfigurasi pertama alih-alih memunculkan default provider lama yang sudah dihapus.models: katalog model terkonfigurasi dan allowlist untuk/model. Setiap entri dapat menyertakanalias(pintasan) danparams(khusus provider, misalnyatemperature,maxTokens,cacheRetention,context1m,responsesServerCompaction,responsesCompactThreshold, peruteanproviderOpenRouter,chat_template_kwargs,extra_body/extraBody).- Gunakan entri
provider/*seperti"openai/*": {}atau"vllm/*": {}untuk menampilkan semua model yang ditemukan untuk provider terpilih tanpa mencantumkan setiap ID model secara manual. - Tambahkan
agentRuntimeke entriprovider/*ketika setiap model yang ditemukan secara dinamis untuk provider tersebut harus menggunakan runtime yang sama. Kebijakan runtimeprovider/modelpersis tetap mengalahkan wildcard. - Edit 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 meneruskan--replace. - Alur configure/onboarding bercakupan provider menggabungkan model provider terpilih ke dalam map ini dan mempertahankan provider tidak terkait yang sudah dikonfigurasi.
- Untuk model OpenAI Responses langsung, Compaction sisi server diaktifkan otomatis. Gunakan
params.responsesServerCompaction: falseuntuk berhenti menyuntikkancontext_management, atauparams.responsesCompactThresholduntuk menimpa ambang batas. Lihat Compaction sisi server OpenAI.
- Gunakan entri
params: parameter provider default global yang diterapkan ke semua model. Diatur diagents.defaults.params(misalnya{ cacheRetention: "long" }).- Prioritas penggabungan
params(konfigurasi):agents.defaults.params(basis global) ditimpa olehagents.defaults.models["provider/model"].params(per model), laluagents.list[].params(ID agen yang cocok) menimpa berdasarkan kunci. Lihat Prompt Caching untuk detail. models.providers.openrouter.params.provider: kebijakan perutean provider default untuk seluruh OpenRouter. OpenClaw meneruskan ini ke objekproviderpermintaan OpenRouter;agents.defaults.models["openrouter/<model>"].params.providerper model dan parameter agen menimpa berdasarkan kunci. Lihat perutean provider OpenRouter.params.extra_body/params.extraBody: JSON pass-through lanjutan yang digabungkan ke body permintaanapi: "openai-completions"untuk proxy kompatibel OpenAI. Jika bertabrakan dengan kunci permintaan yang dihasilkan, body ekstra menang; rute completions non-native tetap menghapusstorekhusus OpenAI setelahnya.params.chat_template_kwargs: argumen chat-template kompatibel vLLM/OpenAI yang digabungkan ke body permintaanapi: "openai-completions"tingkat atas. Untukvllm/nemotron-3-*dengan thinking mati, plugin vLLM bawaan otomatis mengirimenable_thinking: falsedanforce_nonempty_content: true;chat_template_kwargseksplisit menimpa default yang dihasilkan, danextra_body.chat_template_kwargstetap memiliki prioritas akhir. Model thinking Qwen dan Nemotron vLLM terkonfigurasi mengekspos pilihan/thinkbiner (off,on) alih-alih tangga effort bertingkat.compat.thinkingFormat: gaya payload thinking kompatibel OpenAI. Gunakan"together"untukreasoning.enabledgaya Together,"qwen"untukenable_thinkingtingkat atas gaya Qwen, atau"qwen-chat-template"untukchat_template_kwargs.enable_thinkingpada backend keluarga Qwen yang mendukung kwargs chat-template tingkat permintaan, seperti vLLM. OpenClaw memetakan thinking yang dinonaktifkan kefalsedan thinking yang diaktifkan ketrue, dan model Qwen vLLM terkonfigurasi mengekspos pilihan/thinkbiner untuk format ini.compat.supportedReasoningEfforts: daftar effort reasoning kompatibel OpenAI per model. Sertakan"xhigh"untuk endpoint kustom yang benar-benar menerimanya; OpenClaw kemudian mengekspos/think xhighdi menu perintah, baris sesi Gateway, validasi patch sesi, validasi CLI agen, dan validasillm-taskuntuk provider/model terkonfigurasi tersebut. Gunakancompat.reasoningEffortMapketika backend menginginkan nilai khusus provider untuk level kanonis.params.preserveThinking: opt-in khusus Z.AI untuk thinking yang dipertahankan. Ketika diaktifkan dan thinking menyala, OpenClaw mengirimthinking.clear_thinking: falsedan memutar ulangreasoning_contentsebelumnya; lihat thinking Z.AI dan thinking yang dipertahankan.localService: manajer proses tingkat provider opsional untuk server model lokal/self-hosted. Ketika model yang dipilih milik provider tersebut, OpenClaw memeriksahealthUrl(ataubaseUrl + "/models"), menjalankancommanddenganargsjika endpoint sedang turun, menunggu hinggareadyTimeoutMs, lalu mengirim permintaan model.commandharus berupa path absolut.idleStopMs: 0membuat proses tetap hidup hingga OpenClaw keluar; nilai positif menghentikan proses yang dijalankan OpenClaw setelah idle selama jumlah milidetik tersebut. Lihat layanan model lokal.- Kebijakan runtime berada pada provider atau model, bukan pada
agents.defaults. Gunakanmodels.providers.<provider>.agentRuntimeuntuk aturan seluruh provider atauagents.defaults.models["provider/model"].agentRuntime/agents.list[].models["provider/model"].agentRuntimeuntuk aturan khusus model. Model agen OpenAI pada provider OpenAI resmi memilih Codex secara default. - Penulis konfigurasi yang memutasi 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 run agen paralel lintas sesi (setiap sesi tetap diserialisasi). Default: 4.
Kebijakan runtime
id:"auto","openclaw", id harness plugin terdaftar, atau alias backend CLI yang didukung. Plugin Codex bawaan mendaftarkancodex; plugin Anthropic bawaan menyediakan backend CLIclaude-cli.id: "auto"memungkinkan harness plugin terdaftar mengklaim giliran yang didukung dan menggunakan OpenClaw saat tidak ada harness yang cocok. Runtime plugin eksplisit sepertiid: "codex"memerlukan harness tersebut dan gagal tertutup jika tidak tersedia atau gagal.id: "pi"diterima hanya sebagai alias usang untukopenclawguna mempertahankan config yang sudah dirilis dari v2026.5.22 dan sebelumnya. Config baru harus menggunakanopenclaw.- Prioritas runtime adalah kebijakan model persis terlebih dahulu (
agents.list[].models["provider/model"],agents.defaults.models["provider/model"], ataumodels.providers.<provider>.models[]), laluagents.list[]/agents.defaults.models["provider/*"], lalu kebijakan seluruh provider dimodels.providers.<provider>.agentRuntime. - Kunci runtime seluruh agen bersifat legacy.
agents.defaults.agentRuntime,agents.list[].agentRuntime, pin runtime sesi, danOPENCLAW_AGENT_RUNTIMEdiabaikan oleh pemilihan runtime. Jalankanopenclaw doctor --fixuntuk menghapus nilai usang. - Model agen OpenAI menggunakan harness Codex secara default; provider/model
agentRuntime.id: "codex"tetap valid saat Anda ingin membuatnya eksplisit. - Untuk deployment Claude CLI, pilih
model: "anthropic/claude-opus-4-8"ditambahagentRuntime.id: "claude-cli"yang dicakup model. Ref model legacyclaude-cli/claude-opus-4-7masih berfungsi untuk kompatibilitas, tetapi config baru harus menjaga pemilihan provider/model tetap kanonis dan menempatkan backend eksekusi dalam kebijakan runtime provider/model. - Ini hanya mengontrol eksekusi giliran agen teks. 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-8 |
sonnet | anthropic/claude-sonnet-4-6 |
gpt | openai/gpt-5.4 |
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 |
--thinking off atau mendefinisikan sendiri agents.defaults.models["zai/<model>"].params.thinking.
Model Z.AI mengaktifkan tool_stream secara default untuk streaming tool call. Tetapkan agents.defaults.models["zai/<model>"].params.tool_stream ke false untuk menonaktifkannya.
Anthropic Claude Opus 4.8 menjaga berpikir tetap nonaktif secara default di OpenClaw; saat berpikir adaptif diaktifkan secara eksplisit, default effort milik provider Anthropic adalah high. Model Claude 4.6 default ke adaptive saat tidak ada level berpikir eksplisit yang ditetapkan.
agents.defaults.cliBackends
Backend CLI opsional untuk run fallback khusus teks (tanpa tool call). Berguna sebagai cadangan saat provider API gagal.
- Backend CLI mengutamakan teks; tool selalu dinonaktifkan.
- Sesi didukung saat
sessionArgditetapkan. - Pass-through gambar didukung saat
imageArgmenerima path file. reseedFromRawTranscriptWhenUncompacted: truememungkinkan backend memulihkan sesi yang aman tetapi sudah diinvalidasi dari ekor transkrip mentah OpenClaw yang dibatasi sebelum ringkasan Compaction pertama ada. Perubahan profil auth atau epoch kredensial tetap tidak pernah melakukan raw-reseed.
agents.defaults.promptOverlays
Overlay prompt yang independen dari provider diterapkan berdasarkan keluarga model pada permukaan prompt yang dirakit OpenClaw. Id model keluarga GPT-5 menerima kontrak perilaku bersama di seluruh rute OpenClaw/provider; personality hanya mengontrol lapisan gaya interaksi yang ramah. Rute app-server Codex native mempertahankan instruksi dasar/model milik Codex alih-alih overlay GPT-5 OpenClaw ini, dan OpenClaw menonaktifkan personality bawaan Codex untuk thread native.
"friendly"(default) dan"on"mengaktifkan lapisan gaya interaksi yang ramah."off"hanya menonaktifkan lapisan ramah; kontrak perilaku GPT-5 bertag tetap aktif.- Legacy
plugins.entries.openai.config.personalitymasih dibaca saat pengaturan bersama ini belum ditetapkan.
agents.defaults.heartbeat
Run Heartbeat berkala.
every: string durasi (ms/s/m/h). Default:30m(auth kunci API) atau1h(auth OAuth). Tetapkan ke0muntuk menonaktifkan.includeSystemPromptSection: saat false, menghilangkan bagian Heartbeat dari prompt sistem dan melewati injeksiHEARTBEAT.mdke dalam konteks bootstrap. Default:true.suppressToolErrorWarnings: saat true, menekan payload peringatan error tool selama run Heartbeat.timeoutSeconds: waktu maksimum dalam detik yang diizinkan untuk giliran agen Heartbeat sebelum dibatalkan. Biarkan tidak ditetapkan untuk menggunakanagents.defaults.timeoutSecondssaat ditetapkan, jika tidak cadence Heartbeat dibatasi pada 600 detik.directPolicy: kebijakan pengiriman langsung/DM.allow(default) mengizinkan pengiriman target langsung.blockmenekan pengiriman target langsung dan menghasilkanreason=dm-blocked.lightContext: saat true, run Heartbeat menggunakan konteks bootstrap ringan dan hanya mempertahankanHEARTBEAT.mddari file bootstrap workspace.isolatedSession: saat true, setiap Heartbeat berjalan dalam sesi baru tanpa riwayat percakapan sebelumnya. Pola isolasi yang sama seperti cronsessionTarget: "isolated". Mengurangi biaya token per Heartbeat dari ~100K menjadi ~2-5K token.skipWhenBusy: saat true, run Heartbeat ditunda pada lane sibuk tambahan agen tersebut: subagen berkunci sesi miliknya sendiri atau pekerjaan command bertingkat. Lane Cron selalu menunda Heartbeat, bahkan tanpa flag ini.- Per agen: tetapkan
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 berpotongan untuk riwayat panjang). Lihat Compaction.provider: id dari plugin penyedia compaction yang terdaftar. Saat disetel,summarize()milik penyedia dipanggil alih-alih peringkasan LLM bawaan. Kembali ke bawaan jika gagal. Menyetel penyedia memaksamode: "safeguard". Lihat Compaction.timeoutSeconds: jumlah detik maksimum yang diizinkan untuk satu operasi compaction sebelum OpenClaw membatalkannya. Default:180.keepRecentTokens: anggaran titik potong agen untuk mempertahankan ekor transkrip terbaru secara verbatim./compactmanual menghormati ini saat disetel secara eksplisit; jika tidak, compaction manual adalah checkpoint keras.identifierPolicy:strict(default),off, ataucustom.strictmenambahkan panduan retensi pengenal buram bawaan di awal selama peringkasan compaction.identifierInstructions: teks pelestarian pengenal kustom opsional yang digunakan saatidentifierPolicy=custom.qualityGuard: pemeriksaan coba-ulang-saat-output-cacat untuk ringkasan safeguard. Diaktifkan secara default dalam mode safeguard; setelenabled: falseuntuk melewati audit.midTurnPrecheck: pemeriksaan tekanan tool-loop opsional. Saatenabled: true, OpenClaw memeriksa tekanan konteks setelah hasil tool ditambahkan dan sebelum panggilan model berikutnya. Jika konteks tidak lagi muat, upaya saat ini dibatalkan sebelum mengirim prompt dan jalur pemulihan precheck yang ada digunakan ulang untuk memotong hasil tool atau melakukan compact lalu mencoba lagi. Berfungsi dengan mode compactiondefaultdansafeguard. Default: dinonaktifkan.postCompactionSections: nama bagian H2/H3 AGENTS.md opsional untuk disuntikkan kembali setelah compaction. Penyuntikan ulang dinonaktifkan saat tidak disetel atau disetel ke[]. Menyetel["Session Startup", "Red Lines"]secara eksplisit mengaktifkan pasangan itu dan mempertahankan fallback lamaEvery Session/Safety. Aktifkan ini hanya saat konteks tambahan sepadan dengan risiko menggandakan panduan proyek yang sudah ditangkap dalam ringkasan compaction.model:provider/model-idopsional atau alias polos dariagents.defaults.modelshanya untuk peringkasan compaction. Alias polos diselesaikan sebelum dispatch; ID model literal yang dikonfigurasi mempertahankan prioritas saat terjadi benturan. Gunakan ini saat sesi utama harus mempertahankan satu model tetapi ringkasan compaction harus berjalan pada model lain; saat tidak disetel, compaction menggunakan model utama sesi.maxActiveTranscriptBytes: ambang byte opsional (numberatau string seperti"20mb") yang memicu compaction lokal normal sebelum run saat JSONL aktif tumbuh melewati ambang. MemerlukantruncateAfterCompactionagar compaction yang berhasil dapat merotasi ke transkrip penerus yang lebih kecil. Dinonaktifkan saat tidak disetel atau0.notifyUser: saattrue, mengirim pemberitahuan singkat kepada 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 auto-compaction untuk menyimpan memori tahan lama. Setelmodelke penyedia/model persis sepertiollama/qwen3:8bsaat giliran housekeeping ini harus tetap pada model lokal; override tidak mewarisi rantai fallback sesi aktif. Dilewati saat workspace bersifat read-only.
agents.defaults.runRetries
Batas iterasi retry loop run luar untuk runtime agen tertanam guna mencegah loop eksekusi tak terbatas selama pemulihan kegagalan. Perhatikan bahwa pengaturan ini saat ini hanya berlaku untuk runtime agen tertanam, bukan runtime ACP atau CLI.
base: jumlah dasar iterasi retry run untuk loop run luar. Default:24.perProfile: iterasi retry run tambahan yang diberikan per kandidat profil fallback. Default:8.min: batas absolut minimum untuk iterasi retry run. Default:32.max: batas absolut maksimum untuk iterasi retry run guna mencegah eksekusi tak terkendali. Default:160.
agents.defaults.contextPruning
Memangkas hasil tool lama dari konteks dalam memori sebelum dikirim ke LLM. Tidak mengubah riwayat sesi di disk.
cache-ttl mode behavior
cache-ttl mode behavior
mode: "cache-ttl"mengaktifkan lintasan pemangkasan.ttlmengontrol seberapa sering pemangkasan dapat berjalan lagi (setelah sentuhan cache terakhir).- Pemangkasan terlebih dahulu melakukan soft-trim pada hasil tool yang terlalu besar, lalu hard-clear pada hasil tool yang lebih lama jika diperlukan.
softTrimRatiodanhardClearRatiomenerima nilai dari0.0hingga1.0; validasi konfigurasi menolak nilai di luar rentang itu.
... di tengah.Hard-clear mengganti seluruh hasil tool dengan placeholder.Catatan:- Blok gambar tidak pernah dipangkas/dibersihkan.
- Rasio berbasis karakter (perkiraan), bukan jumlah token persis.
- Jika ada lebih sedikit dari
keepLastAssistantspesan asisten, pemangkasan 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 menggunakan defaultminChars: 1500. humanDelay: jeda acak antarbalasan blok.natural= 800–2500md. Override per agen:agents.list[].humanDelay.
Indikator pengetikan
- Default:
instantuntuk chat langsung/mention,messageuntuk chat grup tanpa mention. - Override per sesi:
session.typingMode,session.typingIntervalSeconds.
agents.defaults.sandbox
Sandboxing opsional untuk agen tertanam. Lihat Sandboxing untuk panduan lengkap.
Sandbox details
Sandbox details
Backend:Mode OpenShell:
docker: runtime Docker lokal (default)ssh: runtime jarak jauh generik berbasis SSHopenshell: runtime OpenShell
backend: "openshell" dipilih, pengaturan khusus runtime berpindah ke
plugins.entries.openshell.config.Konfigurasi backend SSH:target: target SSH dalam bentukuser@host[:port]command: perintah klien SSH (default:ssh)workspaceRoot: root jarak jauh absolut yang digunakan untuk workspace per cakupanidentityFile/certificateFile/knownHostsFile: file lokal yang ada yang diteruskan ke OpenSSHidentityData/certificateData/knownHostsData: konten inline atau SecretRef yang diwujudkan OpenClaw menjadi file sementara saat runtimestrictHostKeyChecking/updateHostKeys: knob kebijakan host-key OpenSSH
identityDatamenang atasidentityFilecertificateDatamenang atascertificateFileknownHostsDatamenang atasknownHostsFile- Nilai
*Databerbasis SecretRef diselesaikan dari snapshot runtime secret aktif sebelum sesi sandbox dimulai
- menanamkan workspace jarak jauh satu kali setelah create atau recreate
- lalu mempertahankan workspace SSH jarak jauh sebagai kanonis
- merutekan
exec, tool file, dan path media melalui SSH - tidak menyinkronkan perubahan jarak jauh kembali ke host secara otomatis
- tidak mendukung container browser sandbox
none: workspace sandbox per cakupan di bawah~/.openclaw/sandboxesro: workspace sandbox di/workspace, workspace agen dipasang read-only di/agentrw: workspace agen dipasang read/write di/workspace
session: container + workspace per sesiagent: satu container + workspace per agen (default)shared: container dan workspace bersama (tanpa isolasi lintas sesi)
mirror: isi remote dari lokal sebelum eksekusi, sinkronkan kembali setelah eksekusi; workspace lokal tetap menjadi kanonisremote: isi remote sekali saat sandbox dibuat, lalu pertahankan workspace remote sebagai kanonis
remote, edit host-lokal yang dibuat di luar OpenClaw tidak disinkronkan ke sandbox secara otomatis setelah langkah pengisian awal.
Transport adalah SSH ke sandbox OpenShell, tetapi plugin memiliki siklus hidup sandbox dan sinkronisasi mirror opsional.setupCommand berjalan sekali setelah pembuatan kontainer (melalui sh -lc). Membutuhkan egress jaringan, root yang dapat ditulis, pengguna root.Kontainer secara default menggunakan network: "none" — atur ke "bridge" (atau jaringan bridge kustom) jika agen membutuhkan akses keluar.
"host" diblokir. "container:<id>" diblokir secara default kecuali Anda secara eksplisit mengatur
sandbox.docker.dangerouslyAllowContainerNamespaceJoin: true (break-glass).
Giliran app-server Codex dalam sandbox OpenClaw aktif menggunakan pengaturan egress yang sama untuk akses jaringan mode kode native mereka.Lampiran masuk ditempatkan di media/inbound/* dalam workspace aktif.docker.binds memasang direktori host tambahan; bind global dan per agen digabungkan.Browser tersandbox (sandbox.browser.enabled): Chromium + CDP dalam kontainer. URL noVNC disuntikkan ke prompt sistem. Tidak memerlukan browser.enabled di openclaw.json.
Akses pengamat noVNC menggunakan autentikasi VNC secara default dan OpenClaw menerbitkan URL token berumur pendek (alih-alih mengekspos kata sandi di URL bersama).allowHostControl: false(default) memblokir sesi tersandbox agar tidak menargetkan browser host.networkdefault keopenclaw-sandbox-browser(jaringan bridge khusus). Atur kebridgehanya ketika Anda secara eksplisit menginginkan konektivitas bridge global.cdpSourceRangesecara opsional membatasi ingress CDP di tepi kontainer ke rentang CIDR (misalnya172.21.0.1/32).sandbox.browser.bindsmemasang direktori host tambahan hanya ke kontainer browser sandbox. Saat diatur (termasuk[]), ini menggantikandocker.bindsuntuk kontainer browser.- Default peluncuran didefinisikan di
scripts/sandbox-browser-entrypoint.shdan disetel untuk host kontainer:--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(diaktifkan secara default)--disable-3d-apis,--disable-software-rasterizer, dan--disable-gpudiaktifkan 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>; atur0untuk menggunakan batas proses default Chromium.- ditambah
--no-sandboxsaatnoSandboxdiaktifkan. - Default adalah baseline image kontainer; gunakan image browser kustom dengan entrypoint kustom untuk mengubah default kontainer.
sandbox.docker.binds hanya untuk Docker.
Bangun image (dari checkout sumber):
docker build inline.
agents.list (penggantian per agen)
Gunakan agents.list[].tts untuk memberi agen penyedia TTS, suara, model,
gaya, atau mode TTS otomatisnya sendiri. Blok agen melakukan deep-merge di atas
messages.tts, sehingga kredensial bersama dapat tetap berada di satu tempat sementara agen individual
hanya mengganti kolom suara atau penyedia yang mereka perlukan. Penggantian agen aktif
berlaku untuk balasan lisan otomatis, /tts audio, /tts status, dan
alat agen tts. Lihat Text-to-speech
untuk contoh penyedia dan prioritas.
id: id agen stabil (wajib).default: ketika beberapa diatur, yang pertama menang (peringatan dicatat). Jika tidak ada yang diatur, entri daftar pertama menjadi default.model: bentuk string menetapkan primary per agen yang ketat tanpa fallback model; bentuk objek{ primary }juga ketat kecuali Anda menambahkanfallbacks. Gunakan{ primary, fallbacks: [...] }untuk mengikutsertakan agen tersebut ke fallback, atau{ primary, fallbacks: [] }untuk membuat perilaku ketat eksplisit. Pekerjaan Cron yang hanya menggantiprimarytetap mewarisi fallback default kecuali Anda mengaturfallbacks: [].params: parameter stream per agen yang digabungkan di atas entri model terpilih diagents.defaults.models. Gunakan ini untuk penggantian khusus agen seperticacheRetention,temperature, ataumaxTokenstanpa menduplikasi seluruh katalog model.tts: penggantian text-to-speech per agen opsional. Blok ini melakukan deep-merge di atasmessages.tts, jadi simpan kredensial penyedia bersama dan kebijakan fallback dimessages.ttsdan atur hanya nilai khusus persona seperti penyedia, suara, model, gaya, atau mode otomatis di sini.skills: allowlist Skills per agen opsional. Jika dihilangkan, agen mewarisiagents.defaults.skillssaat diatur; daftar eksplisit menggantikan default alih-alih menggabungkan, dan[]berarti tanpa skills.thinkingDefault: tingkat thinking default per agen opsional (off | minimal | low | medium | high | xhigh | adaptive | max). Menggantiagents.defaults.thinkingDefaultuntuk agen ini ketika tidak ada penggantian per pesan atau sesi yang diatur. Profil penyedia/model yang dipilih mengontrol nilai mana yang valid; untuk Google Gemini,adaptivemempertahankan thinking dinamis milik penyedia (thinkingLeveldihilangkan pada Gemini 3/3.1,thinkingBudget: -1pada Gemini 2.5).reasoningDefault: visibilitas reasoning default per agen opsional (on | off | stream). Menggantiagents.defaults.reasoningDefaultuntuk agen ini ketika tidak ada penggantian reasoning per pesan atau sesi yang diatur.fastModeDefault: default per agen opsional untuk mode cepat ("auto" | true | false). Berlaku ketika tidak ada penggantian mode cepat per pesan atau sesi yang diatur.models: katalog model/penggantian runtime per agen opsional yang diindeks oleh id lengkapprovider/model. Gunakanmodels["provider/model"].agentRuntimeuntuk pengecualian runtime per agen.runtime: deskriptor runtime per agen opsional. Gunakantype: "acp"dengan defaultruntime.acp(agent,backend,mode,cwd) saat agen harus default ke sesi harness ACP.identity.avatar: path relatif workspace, URLhttp(s), atau URIdata:.- File gambar
identity.avatarlokal relatif workspace dibatasi hingga 2 MB. URLhttp(s)dan URIdata:tidak diperiksa dengan batas ukuran file lokal. identitymenurunkan default:ackReactiondariemoji,mentionPatternsdariname/emoji.subagents.allowAgents: allowlist id agen yang dikonfigurasi untuk target eksplisitsessions_spawn.agentId(["*"]= target terkonfigurasi apa pun; default: hanya agen yang sama). Sertakan id peminta saat panggilanagentIdyang menargetkan diri sendiri harus diizinkan. Entri kedaluwarsa yang konfigurasi agennya telah dihapus ditolak olehsessions_spawndan dihilangkan dariagents_list; jalankanopenclaw doctor --fixuntuk membersihkannya, atau tambahkan entri minimalagents.list[]jika target tersebut harus tetap dapat di-spawn sambil mewarisi default.- Penjaga pewarisan sandbox: jika sesi peminta tersandbox,
sessions_spawnmenolak target yang akan berjalan tanpa sandbox. subagents.requireAgentId: ketika true, blokir panggilansessions_spawnyang menghilangkanagentId(memaksa pemilihan profil eksplisit; default: false).
Perutean multi-agen
Jalankan beberapa agen terisolasi di dalam satu Gateway. Lihat Multi-Agent.Kolom kecocokan binding
type(opsional):routeuntuk perutean normal (tipe yang hilang default ke route),acpuntuk binding percakapan ACP persisten.match.channel(wajib)match.accountId(opsional;*= akun apa pun; dihilangkan = akun default)match.peer(opsional;{ kind: direct|group|channel, id })match.guildId/match.teamId(opsional; khusus kanal)acp(opsional; hanya untuktype: "acp"):{ mode, label, cwd, backend }
match.peermatch.guildIdmatch.teamIdmatch.accountId(tepat, tanpa peer/guild/team)match.accountId: "*"(seluruh kanal)- Agen default
bindings pertama yang cocok menang.
Untuk entri type: "acp", OpenClaw menyelesaikan berdasarkan identitas percakapan yang tepat (match.channel + akun + match.peer.id) dan tidak menggunakan urutan tingkat binding route di atas.
Profil akses per agen
Full access (no sandbox)
Full access (no sandbox)
Read-only tools + workspace
Read-only tools + workspace
No filesystem access (messaging only)
No filesystem access (messaging only)
Sesi
Session field details
Session field details
scope: strategi pengelompokan sesi dasar untuk konteks obrolan grup.per-sender(default): setiap pengirim mendapatkan sesi terisolasi dalam konteks channel.global: semua peserta dalam konteks channel berbagi satu sesi (gunakan hanya ketika konteks bersama memang dimaksudkan).
dmScope: cara DM dikelompokkan.main: semua DM berbagi sesi utama.per-peer: isolasi berdasarkan id pengirim lintas channel.per-channel-peer: isolasi per channel + pengirim (direkomendasikan untuk kotak masuk multi-pengguna).per-account-channel-peer: isolasi per akun + channel + pengirim (direkomendasikan untuk multi-akun).
identityLinks: memetakan id kanonis ke peer berprefiks penyedia untuk berbagi sesi lintas channel. Perintah dock seperti/dock_discordmenggunakan peta yang sama untuk mengalihkan rute balasan sesi aktif ke peer channel tertaut lain; lihat Docking channel.reset: kebijakan reset utama.dailymereset pada waktu lokalatHour;idlemereset setelahidleMinutes. Saat keduanya dikonfigurasi, yang kedaluwarsa lebih dulu menang. Kesegaran reset harian menggunakansessionStartedAtpada baris sesi; kesegaran reset idle menggunakanlastInteractionAt. Penulisan latar belakang/peristiwa sistem seperti Heartbeat, bangun Cron, notifikasi exec, dan pembukuan Gateway dapat memperbaruiupdatedAt, tetapi tidak menjaga sesi harian/idle tetap segar.resetByType: override per tipe (direct,group,thread).dmlama diterima sebagai alias untukdirect.mainKey: kolom lama. Runtime selalu menggunakan"main"untuk bucket obrolan langsung utama.agentToAgent.maxPingPongTurns: jumlah maksimum giliran balasan bolak-balik antar agen selama pertukaran agen-ke-agen (bilangan bulat, rentang:0-20, default:5).0menonaktifkan rantai ping-pong.sendPolicy: cocokkan berdasarkanchannel,chatType(direct|group|channel, dengan alias lamadm),keyPrefix, ataurawKeyPrefix. Penolakan pertama menang.maintenance: kontrol pembersihan + retensi penyimpanan sesi.mode:enforcemenerapkan pembersihan dan merupakan default;warnhanya mengeluarkan peringatan.pruneAfter: batas usia untuk entri usang (default30d).maxEntries: jumlah maksimum entri dalamsessions.json(default500). Runtime menulis pembersihan batch dengan buffer high-water kecil untuk batas ukuran produksi;openclaw sessions cleanup --enforcelangsung menerapkan batas tersebut.- Sesi probe model-run Gateway berumur pendek menggunakan retensi tetap
24h, tetapi pembersihan dibatasi tekanan: pembersihan hanya menghapus baris probe model-run ketat yang usang ketika tekanan pemeliharaan/batas entri sesi tercapai. Hanya kunci probe eksplisit ketat yang cocok denganagent:*:explicit:model-run-<uuid>yang memenuhi syarat; sesi langsung, grup, thread, Cron, hook, Heartbeat, ACP, dan sub-agen normal tidak mewarisi retensi 24 jam ini. Saat pembersihan model-run berjalan, pembersihan tersebut berjalan sebelum pembersihan entri usangpruneAfteryang lebih luas dan batasmaxEntries. rotateBytes: tidak digunakan lagi dan diabaikan;openclaw doctor --fixmenghapusnya dari konfigurasi lama.resetArchiveRetention: retensi untuk arsip transkrip*.reset.<timestamp>. Default kepruneAfter; aturfalseuntuk menonaktifkan.maxDiskBytes: anggaran disk direktori sesi opsional. Dalam modewarn, ini mencatat peringatan; dalam modeenforce, ini menghapus artefak/sesi tertua terlebih dahulu.highWaterBytes: target opsional setelah pembersihan anggaran. Default ke80%darimaxDiskBytes.
threadBindings: default global untuk fitur sesi terikat thread.enabled: sakelar default utama (penyedia dapat meng-override; Discord menggunakanchannels.discord.threadBindings.enabled)idleHours: auto-unfocus default karena tidak aktif dalam jam (0menonaktifkan; penyedia dapat meng-override)maxAgeHours: usia maksimum keras default dalam jam (0menonaktifkan; penyedia dapat meng-override)spawnSessions: gerbang default untuk membuat sesi kerja terikat thread darisessions_spawndan spawn thread ACP. Default ketruesaat binding thread diaktifkan; penyedia/akun dapat meng-override.defaultSpawnContext: konteks subagen native default untuk spawn terikat thread ("fork"atau"isolated"). Default ke"fork".
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 cascade. "auto" menurunkan [{identity.name}].
Variabel template:
| Variabel | Deskripsi | Contoh |
|---|---|---|
{model} | Nama model singkat | claude-opus-4-6 |
{modelFull} | Pengidentifikasi model lengkap | anthropic/claude-opus-4-6 |
{provider} | Nama penyedia | anthropic |
{thinkingLevel} | Tingkat berpikir 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"👀". Atur""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 pada channel yang mendukung reaksi seperti Slack, Discord, Signal, Telegram, WhatsApp, dan iMessage.messages.statusReactions.enabled: mengaktifkan reaksi status siklus hidup pada Slack, Discord, Signal, Telegram, dan WhatsApp. Pada Slack dan Discord, nilai yang tidak disetel mempertahankan reaksi status aktif saat reaksi ack aktif. Pada Signal, Telegram, dan WhatsApp, atur secara eksplisit ketrueuntuk mengaktifkan reaksi status siklus hidup.messages.statusReactions.emojis: meng-override kunci emoji siklus hidup:queued,thinking,compacting,tool,coding,web,deploy,build,concierge,done,error,stallSoft, danstallHard. Telegram hanya mengizinkan kumpulan reaksi tetap, jadi emoji terkonfigurasi yang tidak didukung akan fallback ke varian status terdekat yang didukung untuk obrolan tersebut.
Debounce masuk
Mengelompokkan pesan teks-saja yang cepat dari pengirim yang sama menjadi satu giliran agen. Media/lampiran langsung di-flush. Perintah kontrol melewati debouncing.TTS (teks-ke-ucapan)
automengontrol mode auto-TTS default:off,always,inbound, atautagged./tts on|offdapat mengganti preferensi lokal, dan/tts statusmenampilkan status efektif.summaryModelmenggantiagents.defaults.model.primaryuntuk ringkasan otomatis.modelOverridesdiaktifkan secara default;modelOverrides.allowProviderdefault-nyafalse(ikut serta secara eksplisit).- Kunci API menggunakan fallback ke
ELEVENLABS_API_KEY/XI_API_KEYdanOPENAI_API_KEY. - Penyedia ucapan bawaan dimiliki oleh plugin. Jika
plugins.allowdiatur, sertakan setiap Plugin penyedia TTS yang ingin Anda gunakan, misalnyamicrosoftuntuk Edge TTS. Id penyedia lamaedgediterima sebagai alias untukmicrosoft. providers.openai.baseUrlmengganti endpoint OpenAI TTS. Urutan resolusinya adalah konfigurasi, laluOPENAI_TTS_BASE_URL, laluhttps://api.openai.com/v1.- Ketika
providers.openai.baseUrlmengarah ke endpoint non-OpenAI, OpenClaw memperlakukannya sebagai server TTS yang kompatibel dengan OpenAI dan melonggarkan validasi model/suara.
Bicara
Default untuk mode Bicara (macOS/iOS/Android).talk.providerharus cocok dengan kunci ditalk.providersketika beberapa penyedia Bicara dikonfigurasi.- Kunci Bicara datar lama (
talk.voiceId,talk.voiceAliases,talk.modelId,talk.outputFormat,talk.apiKey) hanya untuk kompatibilitas. Jalankanopenclaw doctor --fixuntuk menulis ulang konfigurasi tersimpan ketalk.providers.<provider>. - Id suara menggunakan fallback ke
ELEVENLABS_VOICE_IDatauSAG_VOICE_ID. providers.*.apiKeymenerima string teks biasa atau objek SecretRef.- Fallback
ELEVENLABS_API_KEYhanya berlaku ketika tidak ada kunci API Bicara yang dikonfigurasi. providers.*.voiceAliasesmemungkinkan direktif Bicara menggunakan nama yang mudah dikenali.providers.mlx.modelIdmemilih repo Hugging Face yang digunakan oleh pembantu MLX lokal macOS. Jika dihilangkan, macOS menggunakanmlx-community/Soprano-80M-bf16.- Pemutaran MLX macOS berjalan melalui pembantu bawaan
openclaw-mlx-ttssaat tersedia, atau executable diPATH;OPENCLAW_MLX_TTS_BINmengganti jalur pembantu untuk pengembangan. consultThinkingLevelmengontrol tingkat berpikir untuk eksekusi agen OpenClaw penuh di balik panggilan Control UI Bicara waktu nyataopenclaw_agent_consult. Biarkan tidak diatur untuk mempertahankan perilaku sesi/model normal.consultFastModemenetapkan penggantian mode cepat sekali pakai untuk konsultasi Control UI Bicara waktu nyata tanpa mengubah pengaturan mode cepat normal sesi.speechLocalemenetapkan id lokal BCP 47 yang digunakan oleh pengenalan ucapan Bicara iOS/macOS. Biarkan tidak diatur untuk menggunakan default perangkat.silenceTimeoutMsmengontrol berapa lama mode Bicara menunggu setelah pengguna diam sebelum mengirim transkrip. Tidak diatur mempertahankan jendela jeda default platform (700 ms on macOS and Android, 900 ms on iOS).realtime.instructionsmenambahkan instruksi sistem yang ditujukan ke penyedia ke prompt waktu nyata bawaan OpenClaw, sehingga gaya suara dapat dikonfigurasi tanpa kehilangan panduan defaultopenclaw_agent_consult.realtime.consultRoutingmengontrol fallback relai Gateway ketika penyedia waktu nyata menghasilkan transkrip pengguna final tanpaopenclaw_agent_consult:provider-directmempertahankan balasan penyedia langsung, sedangkanforce-agent-consultmerutekan permintaan yang telah difinalisasi melalui OpenClaw.
Terkait
- Referensi konfigurasi — semua kunci konfigurasi lainnya
- Konfigurasi — tugas umum dan penyiapan cepat
- Contoh konfigurasi