Runtime Agen 🤖
OpenClaw menjalankan runtime agen tunggal (embedded) yang diturunkan dari pi-mono.Workspace (wajib)
OpenClaw menggunakan satu direktori workspace agen (agents.defaults.workspace) sebagai satu-satunya direktori kerja (cwd) agen untuk alat dan konteks.
Direkomendasikan: gunakan openclaw setup untuk membuat ~/.openclaw/openclaw.json jika hilang dan menginisialisasi file workspace.
Tata letak workspace lengkap + panduan cadangan: Workspace agen
Jika agents.defaults.sandbox diaktifkan, sesi non-utama dapat menimpanya dengan
workspace per-sesi di bawah agents.defaults.sandbox.workspaceRoot (lihat
Konfigurasi Gateway).
File bootstrap (disuntikkan)
Di dalamagents.defaults.workspace, OpenClaw mengharapkan file yang dapat diedit pengguna berikut ini:
AGENTS.md— instruksi operasi + “memori”SOUL.md— persona, batasan, nada bicaraTOOLS.md— catatan alat yang dikelola pengguna (misalnyaimsg,sag, konvensi)BOOTSTRAP.md— ritual penggunaan pertama kali (dihapus setelah selesai)IDENTITY.md— nama agen/vibe/emojiUSER.md— profil pengguna + panggilan pilihan
openclaw setup akan membuat template default yang aman).
BOOTSTRAP.md hanya dibuat untuk workspace yang benar-benar baru (tidak ada file bootstrap lain). Jika Anda menghapusnya setelah menyelesaikan ritual, file tersebut tidak seharusnya dibuat ulang pada restart berikutnya.
Untuk menonaktifkan pembuatan file bootstrap sepenuhnya (untuk workspace yang sudah diisi sebelumnya), atur:
Alat bawaan (Built-in tools)
Alat inti (baca/eksekusi/edit/tulis dan alat sistem terkait) selalu tersedia, tunduk pada kebijakan alat.apply_patch bersifat opsional dan dibatasi oleh
tools.exec.applyPatch. TOOLS.md tidak mengontrol alat apa yang ada; itu adalah
panduan tentang bagaimana Anda ingin alat tersebut digunakan.
Skill
OpenClaw memuat skill dari tiga lokasi (workspace menang jika ada konflik nama):- Bundled (disertakan saat instalasi)
- Dikelola/lokal:
~/.openclaw/skills - Workspace:
<workspace>/skills
skills di Konfigurasi Gateway).
Integrasi pi-mono
OpenClaw menggunakan kembali bagian dari basis kode pi-mono (model/alat), tetapi manajemen sesi, penemuan (discovery), dan penyambungan alat adalah milik OpenClaw.- Tidak ada runtime agen pi-coding.
- Tidak ada pengaturan
~/.pi/agentatau<workspace>/.piyang dikonsultasikan.
Sesi
Transkrip sesi disimpan sebagai JSONL di:~/.openclaw/agents/<agentId>/sessions/<SessionId>.jsonl
Mengendalikan saat streaming (Steering while streaming)
Saat mode antrean adalahsteer, pesan masuk disuntikkan ke dalam proses yang sedang berjalan.
Antrean diperiksa setelah setiap pemanggilan alat; jika ada pesan yang antre,
pemanggilan alat yang tersisa dari pesan asisten saat ini akan dilewati (hasil alat error
dengan “Skipped due to queued user message.”), kemudian pesan pengguna yang antre
disuntikkan sebelum respons asisten berikutnya.
Saat mode antrean adalah followup atau collect, pesan masuk ditahan sampai
giliran saat ini berakhir, kemudian giliran agen baru dimulai dengan payload yang antre. Lihat
Antrean untuk perilaku mode + debounce/cap.
Block streaming mengirimkan blok asisten yang telah selesai segera setelah blok tersebut selesai; ini
mati secara default (agents.defaults.blockStreamingDefault: "off").
Atur batas melalui agents.defaults.blockStreamingBreak (text_end vs message_end; default ke text_end).
Kontrol pemotongan blok lunak dengan agents.defaults.blockStreamingChunk (default ke
800–1200 karakter; lebih memilih pemisahan paragraf, kemudian baris baru; kalimat terakhir).
Gabungkan potongan yang dialirkan dengan agents.defaults.blockStreamingCoalesce untuk mengurangi
spam satu baris (penggabungan berbasis idle sebelum kirim). Saluran Non-Telegram memerlukan
*.blockStreaming: true eksplisit untuk mengaktifkan balasan blok.
Ringkasan alat verbose dipancarkan pada saat alat dimulai (tanpa debounce); Control UI
mengalirkan output alat melalui event agen jika tersedia.
Lebih detail: Streaming + chunking.
Referensi model (Model refs)
Referensi model dalam konfigurasi (misalnyaagents.defaults.model dan agents.defaults.models) diparsing dengan memisahkan pada / pertama.
- Gunakan
provider/modelsaat mengonfigurasi model. - Jika ID model itu sendiri mengandung
/(gaya OpenRouter), sertakan awalan provider (contoh:openrouter/moonshotai/kimi-k2). - Jika Anda menghilangkan provider, OpenClaw memperlakukan input sebagai alias atau model untuk provider default (hanya berfungsi jika tidak ada
/dalam ID model).
Konfigurasi (minimal)
Minimal, atur:agents.defaults.workspacechannels.whatsapp.allowFrom(sangat direkomendasikan)
Selanjutnya: Chat Grup 🦞