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