夜雨聆风学习资料网

ARTICLE · 1295201

OpenClaw:任务跑完,消息没来

OpenClaw:任务跑完,消息没来

OpenClaw 的定时任务显示成功,聊天里却没消息,可以按下面的顺序查:先找这次运行,再核对投递目标,接着区分静默和失败。这份教程帮你把“没收到”缩小到具体环节,避免一上来就重建任务、反复重跑。

适合已经装好 OpenClaw、接通聊天渠道并有现成任务的人。本文依据 2026.10.9 稳定版官方文档整理,没有做真实定时消息收发实测;文中的状态是官方说明,不是本机截图。排查不需要另装插件,后续若重跑模型任务,仍按原来的模型和平台条件使用。

运行、投递、阅读分别核对。依据官方文档绘制,非产品截图;送达不代表已读。

先对上这次运行,再找收件人

在运行 Gateway 的那台机器上查询。Gateway 就是替你接消息、调度任务的常驻服务;它需要在线,下面的查询命令才能取到记录。先列出任务,包括已停用的任务:

openclaw --versionopenclaw automations list --all

这里使用 automations;官方保留了 cron 这个别名。同一套子命令两种写法都能用。若旧安装没有对应命令,先看本机帮助和版本差异,别直接照着网上的旧 JSON 文件改。

默认清单会隐藏已停用的任务,--all 把它们也列出来。否则,任务只是被停用了,看起来却像凭空消失。

从清单复制目标任务的 ID,替换下面的占位文字。show 看任务详情和投递预览,runs 看最近几次实际运行。任务名称相似时用 ID,少认错一条。

JOB_ID="替换为任务ID"openclaw automations show "$JOB_ID"openclaw automations runs "$JOB_ID" \  --limit 5 --json

把运行时间和你等待消息的时间对上。没有对应运行,回头查是否启用、时区和 Gateway 是否持续在线;有记录,再看执行状态和摘要。显示 ok 也要读诊断:官方明确说,工具执行失败后 Agent 给了回复,运行仍可能以 ok 结束,诊断里会留下警告。

执行结果确认后,看这次的投递状态和错误,别拿“下次运行时间正常”当收到了消息。任务配置是现在的设置,某一次运行的记录才说明那次发生了什么。

接着读 show 的投递预览:哪个平台、哪个账号、发给谁,有没有指定群里的话题。平台对了、账号错了,照样找不到;群对了、话题不同,也可能看错位置。收件目标要核对具体 ID,不能只看显示名称。

投递预览应对到账号、收件人和话题;创建会话绑定也会影响隐式投递。依据官方资料绘制。

从网页聊天创建的任务,在符合会话绑定条件时,结果可以回到那段网页对话。普通命令行创建的孤立任务没有这层创建会话,不能假定它知道你正在看哪个聊天。需要能解析的渠道目标,或明确采用其他投递方式。

已经绑定的创建会话如果被删除或重置,官方会记录投递失败。这个时候,继续盯着新开的窗口等消息,没有用。先核对原任务的绑定和错误,再决定是否在正确对话里重建。

静默、失败、未知,处理不同

任务详情里常见的 announce,意思是 Agent 没有直接发送时,由调度器补送最终回复。none 则关闭这次补送。说白了,就是活干完以后,要不要由调度器再递一份结果。

别把 --no-deliver 当成“绝不发消息”的开关。官方说明,它只关补送;有可用聊天路由时,Agent 仍可能使用 message 工具直接发送。排查时也要看运行记录里的直接发送信息,避免把“没有补送”误判成“从没发过”。

若显示 ok (suppressed),看静默原因。你原本要求“没有变化就别通知”,保持安静可能符合任务要求。对纯文本的孤立任务,最终回复只有 NO_REPLY,或末尾带静默标记,也会抑制整段文本;前面写了报告,并不保证报告会送出来。

看 JSON 时,把 deliverySuppressionReason 和 deliveryError 分开读:前者解释为何主动不发,后者记录投递错误。单独看到 not-delivered 就急着修账号,可能修错方向;把静默条件改掉,也未必能解决真正的渠道错误。

若显示 ok (not delivered),再查目标、渠道权限和认证错误。把这些原因修好,才有必要考虑重试。临时加 --best-effort-deliver 只会允许投递失败不拖垮任务状态,既不会替你选收件人,也不会把消息送成功。

三类结果对应不同处理;“未知”不能直接当成失败重发。依据官方文档绘制,非实测结果。

还有一种是 delivery unknown:系统没拿到足够的确认,例如 webhook 请求超时。它可能已经到达接收端。先查接收端记录,直接重跑可能重复发送;对外通知、生成订单等任务尤其需要谨慎。

记录显示已投递,也只说明系统确认了相应交付,不证明本人读过。回到目标账号和指定话题查看,再检查客户端通知。到这里,才把任务状态和你眼前的聊天对上。

拿一条已有任务,保存它最近一次运行的时间、执行结果、投递状态和具体目标。四项能对应起来,再决定改哪里;先别拿“成功”两个字替整条流程验收。

参考资料:命令与状态:https://docs.openclaw.ai/cli/cron投递方式:https://docs.openclaw.ai/automation/cron-jobs/delivery排障说明:https://docs.openclaw.ai/automation/cron-jobs/troubleshooting执行与会话:https://docs.openclaw.ai/automation/cron-jobs/payloads核验版本:https://github.com/openclaw/openclaw/releases/tag/v2026.10.9

内容由AI生成

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料