OpenClaw voert shellopdrachten uit via de toolDocumentation Index
Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
exec en houdt langlopende taken in het geheugen. De tool process beheert die achtergrondsessies.
exec-tool
Belangrijkste parameters:command(vereist)yieldMs(standaard 10000): automatisch naar achtergrond na deze vertragingbackground(bool): onmiddellijk op de achtergrond uitvoerentimeout(seconden, standaardtools.exec.timeoutSec): het proces na deze timeout beëindigen; steltimeout: 0alleen in om de timeout van het exec-proces voor die aanroep uit te schakelenelevated(bool): buiten de sandbox uitvoeren als verhoogde modus is ingeschakeld/toegestaan (gatewaystandaard, ofnodewanneer het exec-doelnodeis)- Een echte TTY nodig? Stel
pty: truein. workdir,env
- Voorgronduitvoeringen geven uitvoer direct terug.
- Wanneer naar de achtergrond verplaatst (expliciet of door timeout), geeft de tool
status: "running"+sessionIden een korte staart terug. - Achtergrond- en
yieldMs-uitvoeringen erventools.exec.timeoutSec, tenzij de aanroep een explicietetimeoutopgeeft. - Uitvoer wordt in het geheugen bewaard totdat de sessie wordt gepolld of gewist.
- Als de tool
processniet is toegestaan, draaitexecsynchroon en negeert hetyieldMs/background. - Gestarte exec-opdrachten ontvangen
OPENCLAW_SHELL=execvoor contextbewuste shell-/profielregels. - Voor langlopend werk dat nu start, start je het eenmaal en vertrouw je op automatische voltooiingswake wanneer die is ingeschakeld en de opdracht uitvoer produceert of faalt.
- Als automatische voltooiingswake niet beschikbaar is, of je een bevestiging van stille
succesvolle voltooiing nodig hebt voor een opdracht die netjes zonder uitvoer is afgesloten, gebruik dan
processom voltooiing te bevestigen. - Emuleer geen herinneringen of vertraagde follow-ups met
sleep-lussen of herhaald pollen; gebruik Cron voor toekomstig werk.
Brug naar onderliggende processen
Wanneer je langlopende onderliggende processen buiten de exec/process-tools start (bijvoorbeeld CLI-herstarts of gateway-helpers), koppel dan de bridge-helper voor onderliggende processen zodat beëindigingssignalen worden doorgestuurd en listeners bij exit/error worden losgekoppeld. Dit voorkomt verweesde processen op systemd en houdt afsluitgedrag consistent tussen platforms. Omgevingsoverschrijvingen:PI_BASH_YIELD_MS: standaard yield (ms)PI_BASH_MAX_OUTPUT_CHARS: uitvoerlimiet in geheugen (tekens)OPENCLAW_BASH_PENDING_MAX_OUTPUT_CHARS: limiet voor wachtende stdout/stderr per stream (tekens)PI_BASH_JOB_TTL_MS: TTL voor voltooide sessies (ms, begrensd tot 1m-3h)OPENCLAW_PROCESS_INPUT_WAIT_IDLE_MS: drempel voor inactieve uitvoer voordat schrijfbare achtergrondsessies worden gemarkeerd als waarschijnlijk wachtend op invoer (standaard 15000 ms)
tools.exec.backgroundMs(standaard 10000)tools.exec.timeoutSec(standaard 1800)tools.exec.cleanupMs(standaard 1800000)tools.exec.notifyOnExit(standaard true): zet een systeemgebeurtenis in de wachtrij + vraag een Heartbeat aan wanneer een exec op de achtergrond afsluit.tools.exec.notifyOnExitEmptySuccess(standaard false): wanneer true, zet ook voltooiingsgebeurtenissen in de wachtrij voor succesvolle achtergrondruns die geen uitvoer produceerden.
process-tool
Acties:list: actieve + voltooide sessiespoll: nieuwe uitvoer voor een sessie leegmaken (rapporteert ook exitstatus)log: de geaggregeerde uitvoer lezen en hints voor invoerherstel tonen (ondersteuntoffset+limit)write: stdin verzenden (data, optioneeleof)send-keys: expliciete toetstokens of bytes naar een PTY-ondersteunde sessie sturensubmit: Enter / carriage return naar een PTY-ondersteunde sessie sturenpaste: letterlijke tekst verzenden, optioneel verpakt in bracketed paste-moduskill: een achtergrondsessie beëindigenclear: een voltooide sessie uit het geheugen verwijderenremove: beëindigen als deze draait, anders wissen als deze voltooid is
- Alleen achtergrondsessies worden vermeld/bewaard in het geheugen.
- Sessies gaan verloren bij een procesherstart (geen schijfpersistentie).
- Sessielogs worden alleen opgeslagen in de chatgeschiedenis als je
process poll/loguitvoert en het toolresultaat wordt vastgelegd. processis per agent afgebakend; het ziet alleen sessies die door die agent zijn gestart.- Gebruik
poll/logvoor status, logs, bevestiging van stille succesvolle voltooiing, of voltooiingsbevestiging wanneer automatische voltooiingswake niet beschikbaar is. - Gebruik
logvoordat je een interactieve CLI herstelt, zodat het huidige transcript, de stdin-status en de input-wait-hint samen zichtbaar zijn. - Gebruik
write/send-keys/submit/paste/killwanneer je invoer of ingrijpen nodig hebt. process listbevat een afgeleidename(opdrachtwerkwoord + doel) voor snelle scans.process list,pollenlograpporterenwaitingForInputalleen wanneer de sessie nog schrijfbare stdin heeft en langer inactief is geweest dan de input-wait-drempel.process loggebruikt regelgebaseerdeoffset/limit.- Wanneer zowel
offsetalslimitzijn weggelaten, retourneert het de laatste 200 regels en bevat het een pagineringshint. - Wanneer
offsetis opgegeven enlimitis weggelaten, retourneert het vanafoffsettot het einde (niet begrensd op 200). - Pollen is bedoeld voor status op aanvraag, niet voor wait-loop-planning. Als het werk later moet plaatsvinden, gebruik dan in plaats daarvan Cron.