From a22b324c5c3094582e0d01643a2282aa678d2567 Mon Sep 17 00:00:00 2001 From: csh Date: Mon, 18 May 2026 15:43:00 +0800 Subject: [PATCH] :memo: docs(templates): add execution and memory-bank prompt templates --- templates/README.md | 281 ++++++++++-------- .../memory-bank/active-context.template.md | 48 +++ .../memory-bank/system-patterns.template.md | 60 ++++ .../memory-bank/tech-context.template.md | 72 +++++ .../prompts/coding/close-task.template.md | 60 ++++ .../prompts/coding/update-memory.template.md | 79 +++++ .../prompts/coding/verify-change.template.md | 68 +++++ 7 files changed, 536 insertions(+), 132 deletions(-) create mode 100644 templates/memory-bank/active-context.template.md create mode 100644 templates/memory-bank/system-patterns.template.md create mode 100644 templates/memory-bank/tech-context.template.md create mode 100644 templates/prompts/coding/close-task.template.md create mode 100644 templates/prompts/coding/update-memory.template.md create mode 100644 templates/prompts/coding/verify-change.template.md diff --git a/templates/README.md b/templates/README.md index 50e3c8be..9e43decb 100644 --- a/templates/README.md +++ b/templates/README.md @@ -11,8 +11,9 @@ templates/ ├── AGENT_RULES.template.md # 执行流程模板 ├── memory-bank/ # 项目上下文模板 │ ├── project-brief.template.md -│ ├── tech-stack.template.md -│ ├── architecture.template.md +│ ├── tech-context.template.md +│ ├── system-patterns.template.md +│ ├── active-context.template.md │ ├── progress.template.md │ └── decisions.template.md ├── prompts/ # 提示词库模板 @@ -21,13 +22,16 @@ templates/ │ │ └── agent-behavior.template.md │ ├── coding/ │ │ ├── clarify.template.md -│ │ ├── review.template.md +│ │ ├── verify-change.template.md +│ │ ├── close-task.template.md +│ │ ├── update-memory.template.md │ │ └── code-review.template.md -│ └── meta/ -│ └── prompt-generator.template.md ├── ci/ # CI 模板 +│ ├── README.md │ └── gitea/ -│ └── .gitea/workflows/ +│ └── .gitea/ +│ ├── workflows/ +│ └── ci/ ├── cpp/ # C++ 配置模板 │ ├── .clang-format │ ├── .clangd @@ -40,62 +44,35 @@ templates/ ## 文件分类 -从部署角度,文件分为四类: +从部署角度看,本目录的文件分成三类: -| 类型 | 说明 | 部署行为 | -|------|------|----------| -| **框架模板** | playbook 提供,可随框架升级 | 可覆盖更新 | -| **项目上下文** | 首次部署后项目填写 | 首次创建,后续保护 | -| **项目私有** | 项目手动创建 | 不部署 | -| **参考资料** | 留在 playbook 快照中参考 | 不部署到项目根 | +- **会同步更新的框架模板** + - `AGENT_RULES.md` + - `docs/prompts/system/*.md` + - `docs/prompts/coding/*.md` + - `AGENTS.md`、`CLAUDE.md`(按 playbook 区块更新) +- **首次创建后由项目维护的上下文文件** + - `memory-bank/*.md` + - `AGENT_RULES.local.md` +- **只保留在快照中参考的模板** + - `ci/` + - `cpp/` + - `python/` -### 框架模板(A类) +补充说明: -``` -AGENT_RULES.md -AGENT_RULES.local.md # 首次自动创建(空模板) -AGENTS.md(区块更新) -CLAUDE.md(自动检测/创建,注入 @AGENTS.md) -docs/prompts/system/*.md # 框架提供 -docs/prompts/coding/*.md # 框架提供 -docs/prompts/meta/*.md # 框架提供 -``` - -### 项目上下文(B类) - -``` -memory-bank/ -├── project-brief.md -├── tech-stack.md -├── architecture.md -├── progress.md -└── decisions.md -``` - -> ⚠️ B类文件首次创建后应由项目填写。`force=true` 会覆盖已填写内容(自动备份)。 - -### 项目私有(C类,不部署) - -``` -docs/plans/ # 项目实施计划 -docs/prompts/custom/ # 项目自定义提示词 -docs/prompts/**/* # 项目新增的文件不会被删除 -``` - -> `AGENT_RULES.local.md` 由 `[sync_rules]` 首次自动创建(空模板),后续由项目维护,不会被覆盖。 - -### 参考资料(D类,不部署到项目根) - -``` -# 留在 /templates/ 中参考 -ci/ # CI 配置 -cpp/ # C++ 配置 -python/ # Python 配置 -``` +- `memory-bank/*.md` 首次创建后应由项目填写;`force=true` + 会覆盖已填写内容并先备份。 +- `AGENT_RULES.local.md` 由 `[sync_rules]` 首次自动创建, + 后续不再覆盖。 +- `docs/prompts/custom/` 和项目新增的 `docs/prompts/**/*` + 不会被 playbook 删除。 +- `CLAUDE.md` 如已有 playbook 区块则更新;如未引用 + `@AGENTS.md` 则追加;如已手工引用 `@AGENTS.md` 则跳过。 ## 快速部署 -使用统一入口 `playbook.py`,配置节存在即启用: +以下命令假设 **playbook 已经部署到项目内**,使用统一入口 `playbook.py`,配置节存在即启用: ```toml # playbook.toml @@ -120,23 +97,41 @@ project_name = "MyProject" python /scripts/playbook.py -config playbook.toml ``` -参数说明见 `playbook.toml.example`(仓库根目录)或项目内的 `/playbook.toml.example`。 +参数说明见 `playbook.toml.example`(仓库根目录)或项目内的 +`/playbook.toml.example`。 -其中 `` 默认为 `docs/standards/playbook`,也可以按项目配置改成 `custom/playbook` 等自定义目录;对应文档入口会变成 `/docs/...`。 +其中 `` 默认为 `docs/standards/playbook`, +也可以按项目配置改成 `custom/playbook` 等自定义目录; +对应文档入口会变成 `/docs/...`。 + +如果你当前是在 **外部 clone 的 playbook 仓库** 中执行,而不是在目标项目内执行快照,请使用: + +```bash +python scripts/playbook.py -config playbook.toml +``` + +此时 `[vendor]` 会把快照写入 `/`; +后续再在目标项目内使用 `/scripts/playbook.py` +做同步更新。 ### 配置节说明 -| 配置节 | 部署内容 | 选项 | -| -------------------- | --------------------------------- | --------------------------------- | -| `[sync_rules]` | AGENT_RULES.md + .local.md | `force`, `no_backup`, `date` | -| `[sync_memory_bank]` | memory-bank/ | `project_name`, `force`, `no_backup`, `date` | -| `[sync_prompts]` | docs/prompts/ | `force`, `no_backup`, `date` | -| `[sync_standards]` | .agents/\/ | `langs`, `gitattr_mode`, `no_backup` | -| `[install_skills]` | ~/.agents/skills/ 或 ~/.claude/skills/ | `mode`, `skills`, `agents_home`, `skill_link`, `no_backup` | +- `[sync_rules]`:部署 `AGENT_RULES.md`;必要时创建 `.local.md`。 + 选项:`force`、`no_backup`、`date` +- `[sync_memory_bank]`:部署 `memory-bank/`。 + 选项:`project_name`、`force`、`no_backup`、`date` +- `[sync_prompts]`:部署 `docs/prompts/`。 + 选项:`force`、`no_backup`、`date` +- `[sync_standards]`:部署 `.agents//`。 + 选项:`langs`、`gitattr_mode`、`no_backup` +- `[install_skills]`:部署到 `~/.agents/skills/` 或 + `~/.claude/skills/`。 + 选项:`mode`、`skills`、`agents_home`、`skill_link`、 + `no_backup` - **配置节存在即启用**:只写需要同步的配置节 - **AGENTS.md**:始终按区块更新(``),不受配置节控制 -- **CLAUDE.md**:自动检测/创建,注入 `@AGENTS.md` / `@AGENT_RULES.md` +- **CLAUDE.md**:自动检测/创建;如已存在 playbook 区块则更新,如未引用 `@AGENTS.md` 则追加,否则跳过 - **force**:默认 false,已存在则跳过;设为 true 时覆盖框架文件(会先备份) - **no_backup**:默认 false;设为 true 时跳过备份直接覆盖 - **不删除项目文件**:只更新框架提供的文件,项目新增的文件不会被删除 @@ -161,6 +156,35 @@ project_name = "MyProject" force = true ``` +### docs/superpowers 命名约定 + +为与 thirdparty `superpowers` 上游当前工作流对齐,建议统一使用: + +- `docs/superpowers/specs/YYYY-MM-DD--design.md`: + `brainstorming` 产出的设计稿 +- `docs/superpowers/plans/YYYY-MM-DD-.md`: + `writing-plans` 产出的实施计划 + +其中 `plans/` 为主执行入口;`specs/` 只作为设计背景和上游文档。 + +### 生命周期总览 + +```text +需求澄清 + -> using-superpowers + -> brainstorming + -> docs/superpowers/specs/*.md + -> playbook.py -record-spec + -> writing-plans + -> docs/superpowers/plans/*.md + -> playbook.py -record-plan + -> main_loop.py claim + -> executing-plans + -> [代码类任务] + karpathy-guidelines + .agents + AGENT_RULES + -> main_loop.py finish + -> update-memory / close-task +``` + ### 部署后的目录结构 ```text @@ -168,20 +192,27 @@ project/ ├── AGENTS.md # 路由中心(Codex 入口) ├── AGENT_RULES.md # 执行流程 ├── AGENT_RULES.local.md # 项目私有规则(自动创建,项目维护) -├── CLAUDE.md # Claude Code 入口(自动注入 @AGENTS.md) +├── CLAUDE.md # Claude Code 入口(按规则维护/追加 playbook 区块) ├── memory-bank/ # 项目上下文 │ ├── project-brief.md -│ ├── tech-stack.md -│ ├── architecture.md +│ ├── tech-context.md +│ ├── system-patterns.md +│ ├── active-context.md │ ├── progress.md │ └── decisions.md -└── docs/prompts/ # 提示词库 - ├── README.md - ├── system/agent-behavior.md - ├── coding/ - │ ├── clarify.md - │ └── review.md - └── meta/prompt-generator.md +└── docs/ + ├── prompts/ # 提示词库 + │ ├── README.md + │ ├── system/agent-behavior.md + │ └── coding/ + │ ├── clarify.md + │ ├── verify-change.md + │ ├── close-task.md + │ ├── update-memory.md + │ └── code-review.md + └── superpowers/ + ├── specs/ # brainstorming 产物 + └── plans/ # writing-plans / main_loop 消费 ``` ## 占位符说明 @@ -197,8 +228,11 @@ project/ | `{{PLAYBOOK_SCRIPTS}}` | 脚本路径 | ✅ 是 | | 其他 `{{...}}` | 项目特定内容 | ❌ 手动 | -`{{PROJECT_NAME}}` 可通过 `sync_memory_bank.project_name` 自动替换;未配置时保持原样。 -`{{PLAYBOOK_SCRIPTS}}` 自动替换为 Playbook 脚本路径(默认 `docs/standards/playbook/scripts`,也可按项目配置改成 `custom/playbook/scripts` 等)。 +`{{PROJECT_NAME}}` 可通过 `sync_memory_bank.project_name` 自动替换; +未配置时保持原样。 +`{{PLAYBOOK_SCRIPTS}}` 自动替换为 Playbook 脚本路径 +(默认 `docs/standards/playbook/scripts`, +也可按项目配置改成 `custom/playbook/scripts` 等)。 ## 模板说明 @@ -206,56 +240,35 @@ project/ 项目上下文文档,用于让 AI 快速理解项目: -| 文件 | 用途 | -| --------------------------- | -------------------- | -| `project-brief.template.md` | 项目定位、边界、约束 | -| `tech-stack.template.md` | 技术栈、工具链、环境 | -| `architecture.template.md` | 架构设计、模块职责 | -| `progress.template.md` | 开发进度追踪 | -| `decisions.template.md` | 架构决策记录(ADR) | +| 文件 | 用途 | +| ----------------------------- | -------------------------- | +| `project-brief.template.md` | 项目定位、边界、约束 | +| `tech-context.template.md` | 技术上下文、工具链、入口 | +| `system-patterns.template.md` | 系统模式、边界、不变量 | +| `active-context.template.md` | 当前目标、最近变更、下一步 | +| `progress.template.md` | 人类摘要 + Plan 状态块 | +| `decisions.template.md` | 架构决策记录(ADR) | ### prompts/ 工作流程模板(部署后去掉 `.template` 后缀): -| 文件 | 用途 | 使用场景 | -| ----------------------------------- | -------------- | ---------------------- | -| `system/agent-behavior.template.md` | 工作模式参考 | 切换探索/开发/调试模式 | -| `coding/clarify.template.md` | 需求澄清模板 | 需求不明确时 | -| `coding/review.template.md` | 复盘总结模板 | Plan 完成后复盘 | -| `coding/code-review.template.md` | 代码评审流程 | 执行 MR/PR 代码评审 | -| `meta/prompt-generator.template.md` | 元提示词生成器 | 创建新的专用提示词 | +| 文件 | 用途 | 使用场景 | +| ----------------------------------- | ------------ | ------------------- | +| `system/agent-behavior.template.md` | 工作流入口 | 选择执行路径 | +| `coding/clarify.template.md` | 需求澄清模板 | 需求不明确时 | +| `coding/verify-change.template.md` | 变更验证模板 | 声称完成前验证 | +| `coding/close-task.template.md` | 本轮收尾模板 | 一轮工作结束时 | +| `coding/update-memory.template.md` | 回写记忆模板 | 上下文变化后回写 | +| `coding/code-review.template.md` | 代码评审流程 | 执行 MR/PR 代码评审 | ### AGENT_RULES.template.md 执行流程规范,定义 AI 的工作循环和约束。 -如需项目私有规则,建议创建 `AGENT_RULES.local.md`,其优先级高于 `AGENT_RULES.md`, -且不会被 `playbook.py` 覆盖。 -主循环会根据 `memory-bank/progress.md` 的 Plan 状态清单, -通过 `scripts/main_loop.py claim/finish` 原子化领取 Plan 并写回状态。 - -### 示例:不跑测试的计划提示词 - -当你需要修改代码但暂时不运行测试时,可用以下提示词生成“可执行且不失败”的实施计划: - -```text -先使用 $brainstorming。 -目标:修改 <模块/功能>,细节如下:<你的需求> -约束: -- 不跑任何测试(test/ci),但允许做可通过的局部验证(格式化/静态检查/人工 diff)。 -- Plan 不能包含任何必然失败或未确认的任务;所有依赖必须在 brainstorming 阶段确认清楚。 -- 采用 writing-plans 的固定头部格式,且在 `---` 之后追加 `## Plan Meta`: - - Plan Group: - - Parent Plan: - - Verification Scope: local - - Verification Gate: must-pass - -流程: -1) 先完成 brainstorming,并输出设计文档 `docs/plans/YYYY-MM-DD--design.md`。 -2) 询问我“是否进入 `docs/plans/` 实施计划编写阶段”,确认后使用 writing-plans 生成实现计划。 -3) 实现计划内明确标注每步要改的文件与命令;验证步骤只包含可通过的局部验证,不包含测试。 -4) 执行计划时只走主循环,并通过 `/scripts/main_loop.py claim/finish` 更新 `memory-bank/progress.md`。 -``` +如需项目私有规则,建议维护 `AGENT_RULES.local.md`;该文件通常由 `[sync_rules]` +首次自动创建,其优先级高于 `AGENT_RULES.md`,且后续不会被 `playbook.py` 覆盖。 +计划编排与执行细节建议放在 `prompts/README.md` 或相关 workflow 文档中, +这里仅说明模板职责与部署边界。 ### AGENTS.template.md @@ -268,23 +281,28 @@ project/ **playbook 标记**(用于自动更新): -| 标记 | 用途 | 说明 | -| --------------------------------------- | ------------ | -------------------------- | -| `` | 语言规则链接 | 由 `[sync_standards]` 管理 | -| `` | 路由链接 | AGENTS.md 始终按区块更新 | -| `` | 完整框架 | AGENTS.md 始终按区块更新 | +- ``:语言规则链接。 + 由 `[sync_standards]` 管理 +- ``:路由链接。 + `AGENTS.md` 始终按区块更新 +- ``:完整框架。 + `AGENTS.md` 始终按区块更新 ### ci/、cpp/、python/ -语言和 CI 配置模板。通过 playbook.py 的 `[vendor]` 复制到快照中: +语言和 CI 配置模板。通过 playbook.py 的 `[vendor]` +复制到快照中: -| 目录 | 内容 | 部署位置 | -| ----------- | ----------------------------------------- | ------------------------ | -| `ci/gitea/` | Gitea Actions 工作流 | 快照 `templates/ci/` | -| `cpp/` | .clang-format, .clangd, CMakeLists.txt 等 | 快照 `templates/cpp/` | -| `python/` | pyproject.toml, .editorconfig 等 | 快照 `templates/python/` | +- `ci/gitea/`:Gitea Actions 工作流与辅助脚本。 + 部署到快照 `templates/ci/` +- `cpp/`:`.clang-format`、`.clangd`、`CMakeLists.txt` + 等文件。 + 部署到快照 `templates/cpp/` +- `python/`:`pyproject.toml`、`.editorconfig` 等文件。 + 部署到快照 `templates/python/` > 注意:这些模板通过 `[vendor]` 复制到快照的 `templates/` 目录,需手动从快照复制到项目根目录使用。 +> 其中 `ci/gitea/` 应按 `templates/ci/README.md` 的说明,整块复制 `.gitea/` 目录,而不只是复制 workflows。 **使用方式**: @@ -311,8 +329,7 @@ playbook/ ├── docs/ # 权威静态文档 ├── templates/ # 本目录:项目架构模板 → 部署到 memory-bank/ 等 └── scripts/ - ├── playbook.py # 统一入口:vendor/sync_rules/sync_memory_bank/sync_prompts/sync_standards/... - └── main_loop.py # 主循环领取与状态写回 + └── playbook.py # 统一入口:vendor / sync_* ``` ## 完整部署流程 diff --git a/templates/memory-bank/active-context.template.md b/templates/memory-bank/active-context.template.md new file mode 100644 index 00000000..0730a344 --- /dev/null +++ b/templates/memory-bank/active-context.template.md @@ -0,0 +1,48 @@ +# 当前上下文 + + + +## Current Goal + + + +- {{CURRENT_GOAL}} + +## Recent Changes + + + +- {{RECENT_CHANGE_1}} + +## Touched Files + + + +- `{{FILE_1}}` - {{FILE_1_REASON}} + +## Open Questions + + + +- {{QUESTION_1}} + +## Next Steps + + + +1. {{NEXT_STEP_1}} + +## Session Notes + + + +- {{SESSION_NOTE_1}} + +--- + +**最后更新**:{{DATE}} diff --git a/templates/memory-bank/system-patterns.template.md b/templates/memory-bank/system-patterns.template.md new file mode 100644 index 00000000..3a9186c2 --- /dev/null +++ b/templates/memory-bank/system-patterns.template.md @@ -0,0 +1,60 @@ +# 系统模式与约束 + + + +## 模块边界 + + + +### {{MODULE_1}} + +- **职责**:{{MODULE_1_DESC}} +- **输入**:{{MODULE_1_INPUT}} +- **输出**:{{MODULE_1_OUTPUT}} +- **不应负责**:{{MODULE_1_NON_GOAL}} + +## 关键数据流 + + + +1. {{FLOW_STEP_1}} +2. {{FLOW_STEP_2}} +3. {{FLOW_STEP_3}} + +## 核心不变量 + + + +- {{INVARIANT_1}} + +## 常见实现模式 + + + +### {{PATTERN_1}} + +- **适用场景**:{{PATTERN_1_SCENARIO}} +- **推荐做法**:{{PATTERN_1_APPROACH}} +- **避免事项**:{{PATTERN_1_AVOID}} + +## 扩展路径 + + + +1. {{EXTENSION_STEP_1}} +2. {{EXTENSION_STEP_2}} + +## 禁止破坏的约束 + + + +- {{DO_NOT_BREAK_1}} + +--- + +**最后更新**:{{DATE}} diff --git a/templates/memory-bank/tech-context.template.md b/templates/memory-bank/tech-context.template.md new file mode 100644 index 00000000..5fd8efad --- /dev/null +++ b/templates/memory-bank/tech-context.template.md @@ -0,0 +1,72 @@ +# 技术上下文与工具链 + + + +## 核心技术 + + + +- {{TECH_1}} + +## 项目结构 + + + +```text +{{PROJECT_NAME}}/ +├── {{DIR_1}}/ # {{DIR_1_DESC}} +└── memory-bank/ # 项目上下文 +``` + +## 关键入口 + + + +- `{{ENTRY_PATH_1}}` - {{ENTRY_PATH_1_DESC}} + +## 开发环境 + + + +**必需工具**: + +- {{TOOL_1}} + +**运行测试**: + +```bash +{{TEST_CMD}} +``` + +**格式化 / Lint**: + +```bash +{{FORMAT_OR_LINT_CMD}} +``` + +## 环境与平台差异 + + + +- {{ENV_DIFF_1}} + +## 依赖与限制 + + + +- {{DEPENDENCY_OR_LIMIT_1}} + +## 验证约定 + + + +- {{PASS_CONDITION_1}} + +--- + +**最后更新**:{{DATE}} diff --git a/templates/prompts/coding/close-task.template.md b/templates/prompts/coding/close-task.template.md new file mode 100644 index 00000000..7454e540 --- /dev/null +++ b/templates/prompts/coding/close-task.template.md @@ -0,0 +1,60 @@ +# 收尾模板 + + + +## 目标 + +确认当前任务已经形成可交付结果,并把后续工作所需的信息留痕。 + +## 执行步骤 + +### 1. 核对结果 + +- 已完成哪些改动? +- 哪些内容仍未完成? +- 是否存在阻塞、风险或待确认事项? + +### 2. 核对验证 + +- 已运行哪些验证? +- 哪些验证未运行,原因是什么? +- 当前结果是否满足本轮交付标准? + +### 3. 核对状态留痕 + +- `main_loop.py finish` 是否已经写回 `plan-status` +- `workflow-state.phase` 是否与当前结果一致 +- 如为代码类执行,`workflow-state` 中是否保留了 + `executor=executing-plans` 与既定 `constraints` + +### 4. 回写上下文 + +- 需要写入 `memory-bank/active-context.md` 的信息 +- 需要写入 `memory-bank/progress.md` 上半部分摘要 +- 需要写入 `memory-bank/decisions.md` 的关键决策 + +### 5. 输出收尾摘要 + +```markdown +## 本轮结果 + +- 已完成:... +- 未完成:... +- 验证:... +- 风险 / 待确认:... +- 下一步:... +``` + +## 原则 + +- 只写对下一轮仍然重要的信息 +- 未验证的内容必须显式说明 +- 如果任务状态变更,优先通过 `main_loop.py finish` 留痕 +- 不手工改写 `workflow-state` 或 `plan-status` 状态块 + +--- + +**最后更新**:{{DATE}} diff --git a/templates/prompts/coding/update-memory.template.md b/templates/prompts/coding/update-memory.template.md new file mode 100644 index 00000000..167f06d0 --- /dev/null +++ b/templates/prompts/coding/update-memory.template.md @@ -0,0 +1,79 @@ +# 回写记忆模板 + + + +## 什么时候需要回写 + +- 当前目标已经变化 +- 最近改动会影响下一轮判断 +- 发现新的系统模式或约束 +- 做出了值得保留的决策 + +## 回写路径 + +### `memory-bank/active-context.md` + +更新: + +- 当前目标 +- 最近变更 +- touched files +- 下一步 + +### `memory-bank/progress.md` + +更新: + +- 先读取 `workflow-state`:当前阶段、spec、plan、executor、constraints +- 再读取 `plan-status`:当前 Plan 的机器状态 +- Current Focus +- Recent Changes +- Next Steps +- Open Risks + +只更新上半部分的人类摘要,不修改状态块。 + +推荐写法: + +- `Current Focus`:当前阶段结束后,项目现在最重要的工作 +- `Recent Changes`:本轮实际完成的变更、写回的状态、关键验证结果 +- `Next Steps`:下一轮最自然的 1-3 个动作 +- `Open Risks`:仍未解决的阻塞、环境约束、待确认事项 + +禁止: + +- 手工改写 `` +- 手工改写 `` +- 把临时聊天内容、未验证猜测写进摘要 + +### `memory-bank/decisions.md` + +仅在出现重要决策时记录 ADR: + +- 为什么这样做 +- 备选方案是什么 +- 影响范围是什么 + +### `memory-bank/system-patterns.md` + +仅在发现稳定模式时更新: + +- 模块边界 +- 不变量 +- 扩展路径 +- 禁止破坏的约束 + +## 原则 + +- 只回写长期有价值的信息 +- 临时聊天内容不要写进去 +- 高变化信息放 `active-context`,稳定约束放 `system-patterns` +- `progress.md` 的状态块只由 `main_loop.py` 维护 +- 摘要应与 `workflow-state` / `plan-status` 保持一致 + +--- + +**最后更新**:{{DATE}} diff --git a/templates/prompts/coding/verify-change.template.md b/templates/prompts/coding/verify-change.template.md new file mode 100644 index 00000000..6b60db31 --- /dev/null +++ b/templates/prompts/coding/verify-change.template.md @@ -0,0 +1,68 @@ +# 变更验证模板 + + + +## 验证目标 + +- 这次改动要证明什么? +- 哪些行为必须通过? +- 哪些验证本轮不做? + +## 验证步骤 + +### 1. 语法 / 结构检查 + +- 确认修改文件可读、可解析、无明显结构错误 + +### 2. 定向验证 + +- 只跑与本次改动直接相关的验证命令 +- 记录命令、结果和关键输出 + +```bash +{{VERIFY_CMD}} +``` + +### 3. 差异复核 + +- 核对 diff 是否只包含预期修改 +- 确认没有误删、误改、命名漂移或路径漂移 + +### 4. 状态留痕复核 + +- `workflow-state.phase` 是否与当前声明一致 +- `plan-status` 是否已经通过 `main_loop.py finish` 写回 +- 如为代码类任务,`workflow-state` 中是否保留: + `executor=executing-plans` + `constraints=karpathy-guidelines,.agents,AGENT_RULES` + +### 5. 剩余风险 + +- 本轮未覆盖的验证 +- 环境限制 +- 需要人工确认的点 + +## 输出格式 + +```markdown +## 验证结果 + +- 已验证:... +- 证据:... +- 未验证:... +- 风险:... +``` + +## 原则 + +- 没有证据,不宣称完成 +- 局部修改优先局部验证 +- 不能运行的验证要明确写原因 +- 不手工改写 `workflow-state` 或 `plan-status` 状态块 + +--- + +**最后更新**:{{DATE}}