diff --git a/prompt_templates/design-confirmation.md b/prompt_templates/design-confirmation.md new file mode 100644 index 0000000..fb21029 --- /dev/null +++ b/prompt_templates/design-confirmation.md @@ -0,0 +1,31 @@ +# prompt_templates/design-confirmation.md +# 设计确认检查模板 — 先理解再改(批次1卡片8,6次 + 批次1卡片7) +name: design-confirmation +trigger: "发现当前实现与预期不符,准备修改时" +template: | + ## 设计确认检查清单 + + 在修改任何现有代码/设计之前,按此清单自检: + + - [ ] 已理解当前的设计逻辑(不是凭直觉判断对错) + - [ ] 已查阅已有的设计文档,对已确定决策保持尊重 + - [ ] 已确认设计意图(不确定时问用户确认) + - [ ] 已评估修改的影响范围(关联模块、状态、数据) + - [ ] 已向用户/评审者汇报发现,等待确认后再改 + + ⚠️ "先不要改" / "先不要着急改" 是明确的暂停信号 + ⚠️ 当前设计可能有自己的理由,不要凭直觉改 + ⚠️ "这是之前设计过的" = 不要重新发明轮子 + ⚠️ 实现 ≠ 重新设计,应该忠实于已有的设计决策 + +evidence: + - "批次1卡片8:先确认当前设计再改,6 次被纠正" + - "批次1卡片7:尊重已确定的设计决策(resume/resumed_from)" + - "批次1卡片1:用户多次说"先不要改",Agent 必须立即停下" + - "批次2卡片4:设计文档-代码一致性审查不可省(4次)" + - "批次2卡片5:一键三连闭环标准:文档→代码→最终确认" + +anti-patterns: + - "看到实现与直觉不符就直接改代码" + - "实现时简化或遗忘之前讨论确定的关键细节" + - "改完后发现原设计是对的,又要改回来" diff --git a/prompt_templates/inform-lightweight.md b/prompt_templates/inform-lightweight.md new file mode 100644 index 0000000..b4fc484 --- /dev/null +++ b/prompt_templates/inform-lightweight.md @@ -0,0 +1,34 @@ +# prompt_templates/inform-lightweight.md +# inform 轻量处理模板 — 避免资源浪费 +name: inform-lightweight +trigger: "Agent 收到 inform 类型邮件/通知时" +template: | + ## Inform 邮件处理规则 + + inform 类型是**纯通知**,不需要回复或执行任务。 + + ### 处理方式 + - 阅读内容,了解信息 + - 不需要回复、不需要执行任何操作 + - 直接标 done + + ### 与 request 的区别 + | 类型 | 处理方式 | 说明 | + |------|---------|------| + | inform | 阅读 → 标 done | 纯通知,知会即可 | + | request | 阅读 → 执行 → 回复 | 需要响应和处理 | + + ### ⚠️ 关键约束 + - inform 不触发完整 Agent 执行流程 + - inform 不消耗 counter 资源 + - inform 不需要超时重投递 + - 默认类型是 request,inform 是显式指定的特殊场景 + +evidence: + - "批次2卡片12:inform 类型邮件不应触发完整 Agent 执行,2 次被纠正" + - "错误做法:daemon 用 openclaw agent --timeout 300 处理 inform,310s 超时后重新投递形成死循环" + - "庞统和用户讨论后确认:inform 仍让 Agent 看到内容,但 prompt 告诉它不需要回复" + +anti-patterns: + - "用完整 spawn 处理 inform 邮件,浪费 token 和 counter" + - "inform 触发完整执行 + 超时重投递,形成死循环" diff --git a/prompt_templates/role-match-check.md b/prompt_templates/role-match-check.md new file mode 100644 index 0000000..f7a91d5 --- /dev/null +++ b/prompt_templates/role-match-check.md @@ -0,0 +1,34 @@ +# prompt_templates/role-match-check.md +# 角色匹配检查模板 — 系统性高频问题(20+ 次) +name: role-match-check +trigger: "Agent 收到黑板广播任务,准备认领时" +template: | + ## 角色匹配自检 + + 认领任务前,确认以下条件: + + 1. **任务类型与角色匹配** + - 编码/实现任务 → 编码角色(张飞/关羽等) + - 评审/审查任务 → 评审角色(司马懿) + - 数据任务 → 数据角色(赵云) + - 平台/部署任务 → 平台角色(姜维) + + 2. **禁止认领** + - 评审者不应认领编码任务 + - 编码者不应认领纯评审任务 + - 不确定时宁可跳过,等匹配的 Agent 认领 + + 3. **原则** + - 只认领符合自己专长的任务 + - 角色错配比无人认领更危险(产出质量不符预期) + - 广播 ≠ 你应该认领 + +evidence: + - "批次2卡片11:Agent 认领任务前必须检查角色匹配,4 次明确纠正" + - "批次2卡片11 注:这个问题出现了 20+ 次(大量 E2E 广播任务被司马懿认领)" + - "根因:黑板没有角色过滤机制,完全靠 Agent 自律" + +anti-patterns: + - "审查者(simayi-challenger)认领了 coding 类型任务" + - "看到广播任务就认领,不考虑角色匹配" + - "角色错配导致编码任务被审查者执行,产出质量不符合预期"