OpenClaw menjalankan perintah shell melalui alatDocumentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
exec dan menyimpan tugas yang berjalan lama di memori. Alat process mengelola sesi latar belakang tersebut.
Alat exec
Parameter utama:command(wajib)yieldMs(default 10000): otomatis berjalan di latar belakang setelah jeda inibackground(bool): langsung berjalan di latar belakangtimeout(detik, defaulttools.exec.timeoutSec): hentikan proses setelah batas waktu ini; tetapkantimeout: 0hanya untuk menonaktifkan batas waktu proses exec untuk panggilan tersebutelevated(bool): jalankan di luar sandbox jika mode elevated diaktifkan/diizinkan (gatewaysecara default, ataunodesaat target exec adalahnode)- Perlu TTY nyata? Tetapkan
pty: true. workdir,env
- Eksekusi latar depan mengembalikan output secara langsung.
- Saat dijalankan di latar belakang (eksplisit atau karena waktu habis), alat mengembalikan
status: "running"+sessionIddan cuplikan akhir singkat. - Eksekusi
backgrounddanyieldMsmewarisitools.exec.timeoutSeckecuali panggilan menyediakantimeouteksplisit. - Output disimpan di memori hingga sesi dipolling atau dibersihkan.
- Jika alat
processtidak diizinkan,execberjalan secara sinkron dan mengabaikanyieldMs/background. - Perintah exec yang dibuat menerima
OPENCLAW_SHELL=execuntuk aturan shell/profil yang sadar konteks. - Untuk pekerjaan yang berjalan lama dan dimulai sekarang, mulai sekali dan andalkan wake penyelesaian otomatis saat diaktifkan dan perintah mengeluarkan output atau gagal.
- Jika wake penyelesaian otomatis tidak tersedia, atau Anda membutuhkan konfirmasi sukses senyap untuk perintah yang keluar bersih tanpa output, gunakan
processuntuk mengonfirmasi penyelesaian. - Jangan meniru pengingat atau tindak lanjut tertunda dengan loop
sleepatau polling berulang; gunakan cron untuk pekerjaan mendatang.
Penjembatanan proses turunan
Saat membuat proses turunan yang berjalan lama di luar alat exec/process (misalnya, respawn CLI atau helper gateway), pasang helper bridge proses turunan agar sinyal terminasi diteruskan dan listener dilepas saat keluar/error. Ini menghindari proses yatim pada systemd dan menjaga perilaku shutdown tetap konsisten di berbagai platform. Override lingkungan:PI_BASH_YIELD_MS: yield default (md)PI_BASH_MAX_OUTPUT_CHARS: batas output dalam memori (karakter)OPENCLAW_BASH_PENDING_MAX_OUTPUT_CHARS: batas stdout/stderr tertunda per stream (karakter)PI_BASH_JOB_TTL_MS: TTL untuk sesi selesai (md, dibatasi 1m–3h)OPENCLAW_PROCESS_INPUT_WAIT_IDLE_MS: ambang output idle sebelum sesi latar belakang yang dapat ditulis ditandai kemungkinan menunggu input (default 15000 md)
tools.exec.backgroundMs(default 10000)tools.exec.timeoutSec(default 1800)tools.exec.cleanupMs(default 1800000)tools.exec.notifyOnExit(default true): antrekan event sistem + minta Heartbeat saat exec latar belakang keluar.tools.exec.notifyOnExitEmptySuccess(default false): saat true, juga antrekan event penyelesaian untuk eksekusi latar belakang yang berhasil tetapi tidak menghasilkan output.
Alat process
Tindakan:list: sesi berjalan + selesaipoll: kuras output baru untuk sebuah sesi (juga melaporkan status keluar)log: baca output teragregasi dan tampilkan petunjuk pemulihan input (mendukungoffset+limit)write: kirim stdin (data, opsionaleof)send-keys: kirim token tombol eksplisit atau byte ke sesi yang didukung PTYsubmit: kirim Enter / carriage return ke sesi yang didukung PTYpaste: kirim teks literal, opsional dibungkus dalam mode bracketed pastekill: akhiri sesi latar belakangclear: hapus sesi selesai dari memoriremove: hentikan jika berjalan, jika tidak bersihkan jika selesai
- Hanya sesi latar belakang yang dicantumkan/dipertahankan di memori.
- Sesi hilang saat proses dimulai ulang (tidak ada persistensi disk).
- Log sesi hanya disimpan ke riwayat chat jika Anda menjalankan
process poll/logdan hasil alat direkam. processmemiliki cakupan per agent; hanya melihat sesi yang dimulai oleh agent tersebut.- Gunakan
poll/loguntuk status, log, konfirmasi sukses senyap, atau konfirmasi penyelesaian saat wake penyelesaian otomatis tidak tersedia. - Gunakan
logsebelum memulihkan CLI interaktif agar transkrip saat ini, status stdin, dan petunjuk tunggu-input terlihat bersama. - Gunakan
write/send-keys/submit/paste/killsaat Anda membutuhkan input atau intervensi. process listmenyertakannameturunan (kata kerja perintah + target) untuk pemindaian cepat.process list,poll, danlogmelaporkanwaitingForInputhanya saat sesi masih memiliki stdin yang dapat ditulis dan telah idle lebih lama dari ambang tunggu-input.process logmenggunakanoffset/limitberbasis baris.- Saat
offsetdanlimitsama-sama dihilangkan, ini mengembalikan 200 baris terakhir dan menyertakan petunjuk paginasi. - Saat
offsetdiberikan danlimitdihilangkan, ini mengembalikan darioffsethingga akhir (tidak dibatasi ke 200). - Polling ditujukan untuk status sesuai permintaan, bukan penjadwalan loop tunggu. Jika pekerjaan harus terjadi nanti, gunakan cron sebagai gantinya.