CLI commands
Agent
openclaw agent
Voer één agentbeurt uit via de Gateway. Valt terug op de ingebedde agent als de Gateway-aanvraag mislukt; geef --local door om direct ingebedde uitvoering af te dwingen.
Geef ten minste één sessieselector door: --to, --session-key, --session-id of --agent.
Zie ook: Verzendtool voor agents
Opties
-m, --message <text>: berichtinhoud--message-file <path>: lees de berichtinhoud uit een UTF-8-bestand-t, --to <dest>: ontvanger die wordt gebruikt om de sessiesleutel af te leiden--session-key <key>: expliciete sessiesleutel voor routering--session-id <id>: expliciete sessie-id--agent <id>: agent-id; overschrijft routeringskoppelingen--model <id>: modeloverschrijving voor deze uitvoering (provider/modelof model-id)--thinking <level>: denkniveau van de agent (off,minimal,low,medium,high, plus door de provider ondersteunde aangepaste niveaus zoalsxhigh,adaptiveofmax)--verbose <on|off>: uitgebreidheidsniveau voor de sessie opslaan--channel <channel>: afleveringskanaal; laat weg om het hoofdkanaal van de sessie te gebruiken--reply-to <target>: overschrijving van het afleveringsdoel--reply-channel <channel>: overschrijving van het afleveringskanaal--reply-account <id>: overschrijving van het afleveringsaccount--local: voer de ingebedde agent rechtstreeks uit (nadat het pluginregister vooraf is geladen)--deliver: stuur het antwoord terug naar het geselecteerde kanaal/doel--timeout <seconds>: overschrijf de time-out van de agent (standaard 600, ofagents.defaults.timeoutSeconds);0schakelt de time-out uit--json: voer JSON uit
Voorbeelden
openclaw agent --to +15555550123 --message "status update" --deliveropenclaw agent --agent ops --message "Summarize logs"openclaw agent --agent ops --message-file ./task.mdopenclaw agent --agent ops --model openai/gpt-5.4 --message "Summarize logs"openclaw agent --session-key agent:ops:incident-42 --message "Summarize status"openclaw agent --agent ops --session-key incident-42 --message "Summarize status"openclaw agent --session-id 1234 --message "Summarize inbox" --thinking mediumopenclaw agent --to +15555550123 --message "Trace logs" --verbose on --jsonopenclaw agent --agent ops --message "Generate report" --deliver --reply-channel slack --reply-to "#reports"openclaw agent --agent ops --message "Run locally" --localOpmerkingen
- Geef precies één van
--messageof--message-filedoor.--message-fileverwijdert een voorafgaande UTF-8-BOM en behoudt inhoud met meerdere regels; bestanden die geen geldige UTF-8 bevatten, worden geweigerd. - Slash-opdrachten (bijvoorbeeld
/compact) kunnen niet via--messageworden uitgevoerd. De CLI weigert ze en verwijst in plaats daarvan naar de specifieke opdracht (openclaw sessions compact <key>voor Compaction). - Uitvoeringen met
--localen ingebedde terugval zijn eenmalig: gebundelde MCP-loopbackbronnen en warme Claude-stdio-sessies die voor de uitvoering zijn geopend, worden na het antwoord beëindigd, zodat gescripte aanroepen geen lokale onderliggende processen actief laten. Uitvoeringen via de Gateway houden MCP-loopbackbronnen die eigendom zijn van de Gateway onder het actieve Gateway-proces. - Wanneer
--agent,--channelen--tosamen worden gebruikt, volgt de sessieroutering de canonieke ontvanger van het kanaal ensession.dmScope. Kanalen met een stabiele ontvangersidentiteit die uitsluitend voor uitgaande berichten wordt gebruikt, gebruiken een providersessie die is geïsoleerd van de hoofdsessie van de agent.--reply-channelen--reply-accountzijn alleen van invloed op de aflevering. --session-keyselecteert een expliciete sessiesleutel. Sleutels met een agentvoorvoegsel moetenagent:<agent-id>:<session-key>gebruiken en--agentmoet overeenkomen met de agent-id van de sleutel wanneer beide zijn opgegeven. Kale sleutels die geen sentinel zijn, worden gekoppeld aan--agentwanneer deze is opgegeven, of anders aan de geconfigureerde standaardagent;--agent ops --session-key incident-42routeert bijvoorbeeld naaragent:ops:incident-42. De letterlijke sleutelsglobalenunknownblijven alleen buiten een bereik wanneer geen--agentis opgegeven.--jsonreserveert stdout voor het JSON-antwoord; diagnostiek van de Gateway, plugins en ingebedde terugval gaat naar stderr, zodat scripts stdout rechtstreeks kunnen parseren.- JSON van ingebedde terugval bevat
meta.transport: "embedded"enmeta.fallbackFrom: "gateway", zodat scripts een terugvaluitvoering kunnen detecteren. - Als de Gateway een uitvoering accepteert maar de CLI tijdens het wachten op het definitieve antwoord een time-out bereikt, gebruikt de ingebedde terugval een nieuwe sessie-/uitvoerings-id met
gateway-fallback-*en rapporteert dezemeta.fallbackReason: "gateway_timeout"plus de sessievelden van de terugval, in plaats van te concurreren met het transcript dat eigendom is van de Gateway of de oorspronkelijke sessie stilzwijgend te vervangen. SIGTERM/SIGINTonderbreken een wachtende aanvraag via de Gateway; als de Gateway de uitvoering al heeft geaccepteerd, verzendt de CLI vóór het afsluiten ookchat.abortvoor die uitvoerings-id. Uitvoeringen met--localen ingebedde terugval ontvangen hetzelfde signaal, maar verzenden geenchat.abort. Als de interne sleutel voor het ontdubbelen van uitvoeringen al een actieve uitvoering voor deze sessie heeft, rapporteert het antwoordstatus: "in_flight"en drukt de CLI zonder JSON een diagnostisch bericht af naar stderr in plaats van een leeg antwoord. Houd voor externe Cron-/systemd-wrappers een harde beëindigingsoptie aan, zoalstimeout -k 60 600 openclaw agent ..., zodat het beheerproces het proces kan opruimen als het afsluiten niet kan worden voltooid.- Wanneer deze opdracht het opnieuw genereren van
models.jsonactiveert, worden door SecretRef beheerde providerreferenties opgeslagen als niet-geheime markeringen (bijvoorbeeld namen van omgevingsvariabelen,secretref-env:ENV_VAR_NAMEofsecretref-managed), nooit als ontsleutelde geheime platte tekst. Markeringen worden geschreven vanuit de actieve momentopname van de bronconfiguratie, niet vanuit ontsleutelde geheime runtimewaarden.
JSON-afleveringsstatus
Met --json --deliver bevat het JSON-antwoord van de CLI het veld deliveryStatus op het hoogste niveau, zodat scripts onderscheid kunnen maken tussen afgeleverde, onderdrukte, gedeeltelijke en mislukte verzendingen:
{ "payloads": [{ "text": "Report ready", "mediaUrl": null }], "meta": { "durationMs": 1200 }, "deliveryStatus": { "requested": true, "attempted": true, "status": "sent", "succeeded": true, "resultCount": 1 }}CLI-antwoorden via de Gateway behouden ook de onbewerkte resultaatstructuur van de Gateway in result.deliveryStatus.
deliveryStatus.status is een van de volgende waarden:
| Status | Betekenis |
|---|---|
sent |
De aflevering is voltooid. |
suppressed |
De aflevering is bewust niet verzonden (bijvoorbeeld omdat een hook voor het verzenden van berichten deze heeft geannuleerd of omdat er geen zichtbaar resultaat was). Definitief, niet opnieuw proberen. |
partial_failed |
Er is ten minste één payload verzonden voordat een latere payload mislukte. |
failed |
Er is geen duurzame verzending voltooid of de voorafgaande afleveringscontrole is mislukt. |
Veelvoorkomende velden:
requested: altijdtruewanneer het object aanwezig is.attempted:truezodra het duurzame verzendpad is uitgevoerd;falsebij fouten in de voorafgaande controle of wanneer er geen zichtbare payloads zijn.succeeded:true,falseof"partial";"partial"hoort bijstatus: "partial_failed".reason: reden in kleine letters en snake_case uit de duurzame aflevering of voorafgaande validatie. Bekende waarden zijn onder meercancelled_by_message_sending_hook,no_visible_payload,no_visible_result,channel_resolved_to_internal,unknown_channel,invalid_delivery_targetenno_delivery_target; mislukte duurzame verzendingen kunnen ook de mislukte fase rapporteren. Behandel onbekende waarden als ondoorzichtig, omdat de verzameling kan worden uitgebreid.resultCount: aantal verzendresultaten van het kanaal, indien beschikbaar.sentBeforeError:truewanneer bij een gedeeltelijke mislukking ten minste één payload is verzonden voordat de fout optrad.error:truevoor mislukte of gedeeltelijk mislukte verzendingen.errorMessage: alleen aanwezig wanneer een onderliggende afleveringsfoutmelding is vastgelegd. Fouten in de voorafgaande controle bevattenerror/reason, maar geenerrorMessage.payloadOutcomes: optionele resultaten per payload metindex,status,reason,resultCount,error,stage,sentBeforeErrorof hookmetagegevens indien beschikbaar.
Gerelateerd
Was this useful?