CLI commands
Агент
openclaw agent
Виконайте один цикл агента через Gateway. Якщо запит до Gateway завершується невдало, команда повертається до вбудованого агента; передайте --local, щоб відразу примусово використовувати вбудоване виконання.
Передайте принаймні один селектор сеансу: --to, --session-key, --session-id або --agent.
Пов’язане: Інструмент надсилання агенту
Параметри
-m, --message <text>: текст повідомлення--message-file <path>: прочитати текст повідомлення з UTF-8-файлу-t, --to <dest>: одержувач, який використовується для визначення ключа сеансу--session-key <key>: явний ключ сеансу для маршрутизації--session-id <id>: явний ідентифікатор сеансу--agent <id>: ідентифікатор агента; перевизначає прив’язки маршрутизації--model <id>: перевизначення моделі для цього запуску (provider/modelабо ідентифікатор моделі)--thinking <level>: рівень мислення агента (off,minimal,low,medium,high, а також спеціальні рівні, які підтримує постачальник, як-отxhigh,adaptiveабоmax)--verbose <on|off>: зберегти рівень докладності для сеансу--channel <channel>: канал доставки; не вказуйте, щоб використати основний канал сеансу--reply-to <target>: перевизначення адресата доставки--reply-channel <channel>: перевизначення каналу доставки--reply-account <id>: перевизначення облікового запису доставки--local: запустити вбудованого агента безпосередньо (після попереднього завантаження реєстру плагінів)--deliver: надіслати відповідь назад до вибраного каналу або адресата--timeout <seconds>: перевизначити час очікування агента (типово 600 абоagents.defaults.timeoutSeconds);0вимикає обмеження часу--json: вивести JSON
Приклади
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" --localПримітки
- Передавайте рівно один із параметрів
--messageабо--message-file.--message-fileвидаляє початкову позначку BOM UTF-8 і зберігає багаторядковий вміст; файли з некоректним кодуванням UTF-8 відхиляються. - Команди з косою рискою (наприклад,
/compact) не можна запускати через--message. CLI відхиляє їх і натомість указує на спеціалізовану команду (openclaw sessions compact <key>для ущільнення). - Запуски з
--localі вбудованим резервним виконанням є одноразовими: вбудовані ресурси зворотного підключення MCP і прогріті stdio-сеанси Claude, відкриті для запуску, завершуються після відповіді, тому сценарні виклики не залишають локальні дочірні процеси запущеними. Натомість під час запусків через Gateway ресурси зворотного підключення MCP, якими керує Gateway, залишаються в запущеному процесі Gateway. - Якщо разом указано
--agent,--channelі--to, маршрутизація сеансу використовує канонічного одержувача каналу таsession.dmScope. Канали зі стабільною ідентичністю одержувача лише для вихідних повідомлень використовують сеанс, яким керує постачальник і який ізольовано від основного сеансу агента.--reply-channelі--reply-accountвпливають лише на доставку. --session-keyвибирає явний ключ сеансу. Ключі з префіксом агента мають використовувати форматagent:<agent-id>:<session-key>, а якщо вказано обидва параметри, значення--agentмає відповідати ідентифікатору агента в ключі. Прості ключі, що не є службовими, належать до області--agent, якщо його вказано, або до налаштованого типового агента в іншому разі; наприклад,--agent ops --session-key incident-42спрямовує доagent:ops:incident-42. Буквальні ключіglobalіunknownзалишаються поза областю лише тоді, коли--agentне вказано.--jsonрезервує stdout для відповіді JSON; діагностичні повідомлення Gateway, плагіна та вбудованого резервного виконання надходять до stderr, щоб сценарії могли безпосередньо аналізувати stdout.- JSON вбудованого резервного виконання містить
meta.transport: "embedded"іmeta.fallbackFrom: "gateway", щоб сценарії могли виявити резервний запуск. - Якщо Gateway приймає запуск, але час очікування CLI на остаточну відповідь спливає, вбудоване резервне виконання використовує новий ідентифікатор сеансу або запуску
gateway-fallback-*і повідомляєmeta.fallbackReason: "gateway_timeout"разом із полями резервного сеансу, замість того щоб змагатися за журнал, яким керує Gateway, або непомітно замінювати початковий сеанс. SIGTERM/SIGINTпереривають очікування запиту через Gateway; якщо Gateway уже прийняв запуск, CLI також надсилаєchat.abortдля ідентифікатора цього запуску перед завершенням. Запуски з--localі вбудованим резервним виконанням отримують той самий сигнал, але не надсилаютьchat.abort. Якщо внутрішній ключ дедуплікації запусків уже має активний запуск для цього сеансу, відповідь повідомляєstatus: "in_flight", а CLI не у форматі JSON виводить діагностичне повідомлення до stderr замість порожньої відповіді. Для зовнішніх обгорток cron/systemd зберігайте страховий механізм примусового завершення, наприкладtimeout -k 60 600 openclaw agent ..., щоб диспетчер міг завершити процес, якщо під час вимкнення не вдається дочекатися завершення роботи.- Коли ця команда запускає повторне створення
models.json, облікові дані постачальника, якими керує SecretRef, зберігаються як маркери, що не містять секретів (наприклад, імена змінних середовища,secretref-env:ENV_VAR_NAMEабоsecretref-managed), а не як розкритий відкритий текст секретів. Маркери записуються з активного знімка вихідної конфігурації, а не з розкритих значень секретів середовища виконання.
Стан доставки JSON
З --json --deliver відповідь CLI у форматі JSON містить поле верхнього рівня deliveryStatus, щоб сценарії могли розрізняти успішну, пригнічену, часткову та невдалу доставку:
{ "payloads": [{ "text": "Report ready", "mediaUrl": null }], "meta": { "durationMs": 1200 }, "deliveryStatus": { "requested": true, "attempted": true, "status": "sent", "succeeded": true, "resultCount": 1 }}Відповіді CLI через Gateway також зберігають необроблену структуру результату Gateway в result.deliveryStatus.
deliveryStatus.status має одне з таких значень:
| Стан | Значення |
|---|---|
sent |
Доставку завершено. |
suppressed |
Доставку навмисно не виконано (наприклад, її скасував обробник надсилання повідомлень або видимий результат був відсутній). Кінцевий стан, без повтору. |
partial_failed |
Принаймні одне корисне навантаження надіслано до помилки під час надсилання наступного. |
failed |
Не завершено жодного надійного надсилання або сталася помилка попередньої перевірки доставки. |
Спільні поля:
requested: завждиtrue, коли об’єкт присутній.attempted:true, щойно запущено шлях надійного надсилання;falseдля помилок попередньої перевірки або за відсутності видимих корисних навантажень.succeeded:true,falseабо"partial";"partial"використовується разом зіstatus: "partial_failed".reason: причина в нижньому регістрі зі словами, розділеними підкресленнями, отримана від надійної доставки або перевірки перед доставкою. Відомі значення:cancelled_by_message_sending_hook,no_visible_payload,no_visible_result,channel_resolved_to_internal,unknown_channel,invalid_delivery_targetіno_delivery_target; невдалі надійні надсилання також можуть повідомляти етап, на якому сталася помилка. Невідомі значення слід вважати непрозорими, оскільки цей набір може розширюватися.resultCount: кількість результатів надсилання через канал, якщо доступна.sentBeforeError:true, якщо під час часткового збою принаймні одне корисне навантаження було надіслано до виникнення помилки.error:trueдля невдалих або частково невдалих надсилань.errorMessage: присутнє лише тоді, коли вдалося отримати повідомлення про внутрішню помилку доставки. Помилки попередньої перевірки містятьerror/reason, але неerrorMessage.payloadOutcomes: необов’язкові результати для кожного корисного навантаження з полямиindex,status,reason,resultCount,error,stage,sentBeforeErrorабо метаданими обробника, якщо вони доступні.
Пов’язане
Was this useful?