说什么
--message 就是纸条正文,没有它,这张任务单根本没内容。
Tools 导读
`openclaw agent` 让你在终端直接发消息给 Agent,适合脚本、测试或定时任务。最常用的三个参数是 `--message`(必填)、`--to`(指定目标)和 `--deliver`(把回复发到聊天频道)。注意:默认走 Gateway,加 `--local` 才强制本地运行;`--to` 和 `--session-id` 互斥,前者自动派生会话,后者复用已有会话。
先讲这一页到底在解决什么
`openclaw agent` 让你在终端直接发消息给 Agent,适合脚本、测试或定时任务。最常用的三个参数是 `--message`(必填)、`--to`(指定目标)和 `--deliver`(把回复发到聊天频道)。注意:默认走 Gateway,加 `--local` 才强制本地运行;`--to` 和 `--session-id` 互斥,前者自动派生会话,后者复用已有会话。
第一站
官方开头说它是 command line 里跑一个 agent turn。翻成人话就是:不用等别人从聊天通道发消息,你自己就能从后台发起一轮任务。
像有人从前门敲门,说一句话,等 OpenClaw 回答。
openclaw agent像你从后台递进一张任务纸条,不用前门聊天流程也能让它干活。
因为你可以直接在命令行里喂消息、看结果,不必每次都去打开聊天软件。
Agent Send 是后台投递口,不是聊天窗本身。
第二站
原文 quick start 列了三种最常见的投递方式:简单发一次、指定 agent / session、再决定要不要真的送去某个聊天通道。
openclaw agent --message "What is the weather today?"像最朴素地塞进去一张纸条:“帮我回答这个问题。”然后就在命令行里等它把回执吐出来。
--agent ops像不是随便塞给主前台,而是明确交给叫 ops 的那位专门负责人。
--to +15555550123像你按收件人地址去推导会话门牌,不是直接拿 session id,而是从目标号码猜“这纸条该放进哪个抽屉”。
--session-id abc123像你已经知道抽屉编号了,那就直接把纸条塞进那个旧抽屉里,继续上次那条线。
第三站
--deliver 最容易误会,它在讲“要不要把回信真的寄出去”很多人以为 `openclaw agent` 只是本地输出。其实加上 --deliver 后,它不只是在终端给你看,还会真的往通道里发。
--deliver像后台办事办完了,只把结果念给你听,不往外寄。
--deliver像事情办完后,真的把回信投递到某个聊天通道。
--reply-channel slack --reply-to "#reports"像你在投递单上明确写:回信别发回原来那儿了,改投到 Slack 的 #reports 这个信箱。
--deliver 决定结果是“只给你看”还是“真的寄出去”。
第四站
别硬背参数表。按“说什么、塞给谁、怎么想、回哪里、要什么格式”来记就行。
--message 就是纸条正文,没有它,这张任务单根本没内容。
--to、--agent、--session-id 都是在定收件抽屉。
--thinking、--verbose、--timeout 像给这张任务单贴上处理方式。
--json 像要求回执别只用人话,而是按结构化表格吐回来,方便脚本接。
第五站
官方 behavior 里这条很关键。因为很多人会以为 CLI 就一定是本地直接跑,其实默认不是。
像你先把任务单交给总控室,让它按正式路由去处理。
--local像你跳过总控室,直接在眼前这台机器上临时处理。
官方说如果 Gateway 摸不到,CLI 会退回本地 embedded run。像总控室门锁了,那就先自己现场处理这张单子。
默认正式走网关,--local 才是明确改成“我自己在这台机器上就地办”。
最后总结
openclaw agent 就是一个后台投递口:你在命令行里直接塞任务纸条进去,决定塞给哪个 agent / session、要不要真的寄回某个聊天通道,再把结果拿回来。
如果你下一页只想继续看一页,我建议看 /gateway/doctor。因为一旦你开始用命令行后台投递,下一件最常做的事就是排查“为什么这台总控室今天不对劲”。