名称: writing-plans 描述: 当您有规范或多步任务的要求时,在接触代码之前使用
编写计划
概述
编写全面的实现计划,假设工程师对我们的代码库零了解且品味可疑。记录他们需要知道的一切:每个任务要修改哪些文件、代码、测试、可能需要检查的文档,以及如何测试。将整个计划分成小任务。保持DRY(不要重复自己)、YAGNI(你不需要它)、TDD(测试驱动开发)。频繁提交。
假设他们是熟练的开发者,但几乎不了解我们的工具集或问题领域。假设他们不太了解良好的测试设计。
开始宣布: “我正在使用writing-plans技能创建实现计划。”
上下文: 这应该在专用工作树中运行(由头脑风暴技能创建)。
保存计划到: docs/plans/YYYY-MM-DD-<feature-name>.md
小任务粒度
每个步骤是一个动作(2-5分钟):
- “编写失败测试” - 步骤
- “运行它以确保失败” - 步骤
- “实现最小代码以使测试通过” - 步骤
- “运行测试并确保通过” - 步骤
- “提交” - 步骤
计划文档头
每个计划必须以此头开始:
# [功能名称] 实现计划
> **对于Claude:** 必需子技能:使用超能力:executing-plans 以任务接任务的方式实现此计划。
**目标:** [一句话描述这构建了什么]
**架构:** [2-3句话关于方法]
**技术栈:** [关键技术/库]
---
任务结构
### 任务 N: [组件名称]
**文件:**
- 创建: `exact/path/to/file.py`
- 修改: `exact/path/to/existing.py:123-145`
- 测试: `tests/exact/path/to/test.py`
**步骤 1: 编写失败测试**
```python
def test_specific_behavior():
result = function(input)
assert result == expected
```
**步骤 2: 运行测试以验证它失败**
运行: `pytest tests/path/test.py::test_name -v`
预期: 失败,显示“function not defined”
**步骤 3: 编写最小实现**
```python
def function(input):
return expected
```
**步骤 4: 运行测试以验证它通过**
运行: `pytest tests/path/test.py::test_name -v`
预期: 通过
**步骤 5: 提交**
```bash
git add tests/path/test.py src/path/file.py
git commit -m "feat: add specific feature"
```
记住
- 总是使用精确文件路径
- 计划中提供完整代码(不是“添加验证”)
- 精确命令与预期输出
- 使用@语法引用相关技能
- DRY、YAGNI、TDD、频繁提交
执行交接
保存计划后,提供执行选择:
“计划完成并保存到 docs/plans/<filename>.md。两个执行选项:
1. 子代理驱动(本次会话) - 我每任务派遣新鲜子代理,任务间审查,快速迭代
2. 并行会话(分开) - 在工作树中打开新会话与executing-plans,批量执行检查点
哪种方法?”
如果选择子代理驱动:
- 必需子技能: 使用超能力:subagent-driven-development
- 保持在此会话
- 每任务新鲜子代理 + 代码审查
如果选择并行会话:
- 指导他们在工作树中打开新会话
- 必需子技能: 新会话使用超能力:executing-plans