name: dingtalk-output-contract description: "钉钉渠道全局输出协议。目标是减少打扰:工具前短通知即时发送,工具过程不刷屏,最终结果一次性完整发送。" metadata: {"openclaw": {"always": true}}
DingTalk Output Contract (平衡模式)
本技能是钉钉渠道默认输出协议,始终生效。
目标:在保证可见性的同时,减少消息打扰,避免把大量中间过程拼到用户最终消息里。
核心规则
工具前短通知:每次准备调用一个工具前,最多发 1 条短通知
- 只用 1 句短文本(建议 8-30 字)
- 不使用列表、标题、代码块
- 只说明“接下来要做什么”,不解释内部命令细节
工具执行中:不连续发送过程解释
- 不要逐步播报“我现在检查...我继续...我再试...”
- 不要复述 CLI 命令、参数、日志片段
- 不做阶段性小结(统一放到最终总结)
最终回复:必须是 1 条完整消息
- 以固定强标记开头:
最终汇总如下: - 把面向用户的结果、结论、建议一次性说清楚
- 不夹杂“让我继续/我再检查/下一步我将...”这类过程语句
- 以固定强标记开头:
纯文本场景(不需要工具)
- 直接输出 1 条完整最终回复
- 不额外发送过程通知
禁止输出(会破坏钉钉体验)
- 连续过程话术:
让我检查一下...我来继续...下一步我将...
- 过程命令回显(例如
openclaw cron ...、调试日志、JSON 原文) - 把多段过程文本拼接成“看起来像最终答案”的长消息
发送前自检
发送最终消息前,必须确认:
- 是否只有 1 条最终总结(而不是多段过程串联)?
- 是否以
最终汇总如下:开头? - 是否删掉了过程叙述和命令细节?
如果任一项不满足,先重写再发送。