Appearance
openclaw commitments 是 OpenClaw 的 CLI 子命令,用于检查和管理由对话上下文推断产生的短期跟进承诺。默认只显示“待处理”状态的承诺,可通过 --all 查看全部状态,--agent 按智能体筛选,--status 按 pending、sent、dismissed、snoozed 或 expired 过滤。使用 dismiss 子命令可批量取消不再需要的承诺。JSON 输出模式包含承诺存储路径,适合脚本审计。
OpenClaw commitments 命令:查看和管理推断式跟进承诺
列出并管理由会话上下文推断生成的跟进承诺。
承诺是可选开启、短期有效的跟进记忆,自动从对话中推断产生。相关概念请参考 推断式承诺。
不带子命令时,openclaw commitments 默认列出所有待处理的承诺。
用法
bash
openclaw commitments [--all] [--agent <id>] [--status <status>] [--json]
openclaw commitments list [--all] [--agent <id>] [--status <status>] [--json]
openclaw commitments dismiss <id...> [--json]选项
--all:显示所有状态的承诺,而不只是待处理的。--agent <id>:按智能体 ID 过滤。--status <status>:按状态过滤。可选值:pending(待处理)、sent(已发送)、dismissed(已取消)、snoozed(已暂缓)、expired(已过期)。--json:输出机器可读的 JSON 格式。
示例
列出待处理承诺:
bash
openclaw commitments列出所有存储的承诺(含已取消、已过期等):
bash
openclaw commitments --all过滤到某个智能体:
bash
openclaw commitments --agent main查找已暂缓状态的承诺:
bash
openclaw commitments --status snoozed取消一个或多个承诺(通过承诺 ID):
bash
openclaw commitments dismiss cm_abc123 cm_def456以 JSON 格式导出所有承诺:
bash
openclaw commitments --all --json输出说明
文本输出包含以下几列:
- 承诺 ID
- 状态
- 类型(kind)
- 最早到期时间
- 作用范围(scope)
- 建议的检查文本(suggested check-in text)
JSON 输出除了上述字段,还会包含承诺存储路径(commitment store path)和完整的存储记录。
相关参考
常见问题
怎么取消某个承诺?
使用 openclaw commitments dismiss <id>,其中 <id> 是承诺 ID(如 cm_abc123)。可以一次取消多个,用空格分隔 ID。
为什么我看不到某些承诺?
默认 openclaw commitments 只显示 pending(待处理)状态的承诺。如果想看所有状态(包括已取消、已发送、已暂缓、已过期),需要加上 --all 参数。如果仍找不到,检查是否使用了 --agent 过滤器,或者承诺本身已被删除(过期后自动清除)。
commitments 和定时代码任务(cron jobs)有什么区别?
承诺是由对话上下文自动推断产生的短期跟进提醒,而定时任务(cron jobs)是用户手动配置的周期性操作。承诺通常用于 AI 智能体觉得需要后续跟进时触发,例如“我稍后帮你查一下”这类场景。定时任务则用于固定时间执行自动化动作。两者都可以与心跳(heartbeat)配合触发。