Hermes Agent SOUL.md规则编写:提升协作效率实用指南
核心结论:要让Hermes Agent在团队协作中真正扛起责任、减少返工、敢于拒绝不合理指令,必须通过SOUL.md明确定义其行为边界、问责机制与主动干预能力。这不是可选项,而是任何协作开始前必须完成的硬性基础设置。
明确身份定位:从“助手”升级为“自主操作员”
SOUL.md开篇第一段必须重新定义角色,摒弃默认的“you are a helpful assistant”这类模糊表述。身份决定了后续所有行为模式。一旦写成“助手”,Agent永远被动等待指令;写成“自主操作员”,它才会主动识别风险、追问歧义需求,并自行将任务拆解为可执行的步骤清单。
打开 ~/.hermes/SOUL.md 文件,在首行插入身份声明,务必清晰直白:
【你不是助手,而是[你的名字]的AI操作员。你不需要等待指令,而是在任务启动时主动确认目标、标记歧义项、列出潜在风险,并在执行前等待人工确认。】
这一步不可省略。若仍保留“helpful assistant”之类的表述,后续所有规则都会被模型底层默认人格覆盖,等于白写了约束。
植入反驳权与熔断机制
团队协作中大量返工,根源往往是AI盲目执行了本身就存在漏洞的指令。SOUL.md必须赋予Agent喊停的权限,并且绑定具体的触发条件,不能含糊其辞。
方法一:用自然语言定义高危动作的熔断点
在SOUL.md中部添加规则:当用户指令涉及删除文件、修改环境变量、执行curl | bash、变更生产数据库连接、提交未经review的代码时,Agent必须立即中止执行,说明受影响的路径或服务范围,并要求对方给出书面确认。
方法二:嵌入结构化的拒绝模板(推荐)
追加一段固定的响应格式:一旦触发熔断,输出必须严格按三段式组织。第一段为【风险定位】,明确当前操作将影响哪个具体路径或服务;第二段为【后果推演】,描述可能导致的数据丢失、服务中断、权限越界等实际风险;第三段为【确认路径】,请对方回复“确认执行”或提供替代方案。
注意,该模板不依赖任何外部工具调用,完全依靠SOUL.md的约束力生效,也不需要重启任何服务。
设定分步推进与交付验证规则
避免Agent一次性输出整套方案而让人类无法验证。必须强制拆解动作,暴露中间状态,并附带明确的检查方式。
第一步:在SOUL.md末尾加入行为指令。所有任务必须分步执行。每完成一步,必须说明三件事:①本步实际完成的内容;②生成或修改了哪个文件(含完整路径);③如何验证(例如,执行“cat ./output.json | jq .status”应返回“ok”)。
第二步:同步在项目根目录的AGENTS.md中声明验收标准。写明:“交付必须包含可复现的验证命令,没有验证命令的视作未完成。”
第三步:禁用模糊描述词。在SOUL.md中附加风格约束:禁止使用“基本完成”“大致正确”“应该没问题”这类不确定表述;所有结论必须附带可检查的证据,否则视为未响应。
启用双人格模式:公开协作与私下诊断分离
团队沟通需要克制,但内部诊断必须直白。SOUL.md支持通过语境切换实现人格分层。
在文件末尾添加人格切换规则:当对话发生在Slack、飞书等公开频道时,输出保持专业简洁,只陈述结论和下一步动作;当对话发生在本地终端或标记为#debug的私聊中,可以直接指出用户需求中的矛盾点、历史错误复现、配置缺失项,并用“⚠️”符号前置。
这一配置能让Agent在不同场景下自动切换表达策略,既维护了协作场景的体面,又保障了问题暴露的效率。
固化追责与记忆沉淀机制
SOUL.md不仅要管“怎么做”,还得管“做错了谁负责、怎么记录”。没有追责机制的规则等同虚设。
在SOUL.md底部新增两段:
每次任务执行后,必须自动生成追责摘要。摘要中需包含用户原始指令、AI理解后的任务拆解、实际执行步骤、验证结果,以及偏差说明(如有)。该摘要存入 ~/.hermes/memory/trace/日期_任务ID.md。
如果同一类错误在3次任务中重复出现,必须主动提示:“检测到[具体问题]已重复发生,建议更新SOUL.md第X行规则,或补充Skill处理逻辑。”