关于 writing-plans
面向软件工程师的技能,可将功能需求整理为逐项实施计划。计划涵盖文件、代码、测试、命令和执行交接,并区分预定检查与已验证结果。
主要功能
- 01拆分为小型实施任务
- 02明确文件路径与代码指导
- 03列出测试步骤和预期结果
- 04规划文档结构
- 05执行交接选项
适用场景
- 01规划功能实施
- 02拆解为可测试步骤
- 03准备符合仓库情况的任务说明
- 04将计划交给执行流程
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill writing-plans安装后在 Claude Code 中输入/writing-plans确认已加载。
详细介绍
编写计划
概述
编写全面的实施计划,假设工程师对我们的代码库一无所知,而且品味值得商榷。记录他们需要了解的一切:每项任务要修改哪些文件、代码、测试、需要查看的文档,以及如何测试。将完整计划拆分为易于执行的小任务。遵循 DRY、YAGNI、TDD。频繁提交。
假设他们是熟练的开发者,但对我们的工具集或问题领域几乎一无所知。假设他们不太了解如何设计好的测试。
开始时宣布:“我正在使用编写计划技能来创建实施计划。”
**上下文:**使用项目现有的计划存放位置和工作流。在需要隔离代码时,使用专用工作树很有帮助,但规划不需要不可用的头脑风暴技能,也不代表获准实施。
将计划保存到: docs/plans/YYYY-MM-DD-<feature-name>.md
小任务粒度
每个步骤只做一项操作(2-5 分钟):
- “编写失败的测试”——一个步骤
- “运行测试,确认它失败”——一个步骤
- “实现最少的代码,让测试通过”——一个步骤
- “运行测试,确认它们通过”——一个步骤
- “提交”——一个步骤
计划文档头部
每份计划都必须以此头部开头:
# [Feature Name] Implementation Plan
> **Execution:** Follow this plan task-by-task within the user-authorized scope. If the installed environment provides an executing-plans skill, read it before use; this catalog entry does not bundle that dependency.
**Goal:** [One sentence describing what this builds]
**Architecture:** [2-3 sentences about approach]
**Tech Stack:** [Key technologies/libraries]
---
任务结构
### Task N: [Component Name]
**Files:**
- Create: `exact/path/to/file.py`
- Modify: `exact/path/to/existing.py:123-145`
- Test: `tests/exact/path/to/test.py`
**Step 1: Write the failing test**
```python
def test_specific_behavior():
result = function(input)
assert result == expected
```
**Step 2: Run test to verify it fails**
Run: `pytest tests/path/test.py::test_name -v`
Expected: FAIL with "function not defined"
**Step 3: Write minimal implementation**
```python
def function(input):
return expected
```
**Step 4: Run test to verify it passes**
Run: `pytest tests/path/test.py::test_name -v`
Expected: PASS
**Step 5: Commit**
```bash
git add tests/path/test.py src/path/file.py
git commit -m "feat: add specific feature"
```
外层的任务结构模板应以 Markdown 形式复制,并保留其中的代码块。命令和预期输出是计划中的检查步骤,并非这些检查已经运行的证据;请根据实际代码库核实文件路径和工具是否可用。根据有意义的行为和代码库规范调整测试与提交的数量,不要为了每次修改都机械地添加测试或提交。
请记住
- 始终填写精确的文件路径
- 在计划中提供完整代码(不要只写“添加验证”)
- 提供精确命令和预期输出
- 使用 @ 语法引用相关技能
- 遵循 DRY、YAGNI、TDD,并频繁提交
执行交接
保存计划后,提供执行方式选项:
“计划已完成并保存到 docs/plans/<filename>.md。有两种执行方式:
1. 子 Agent 驱动(本会话)——我会为每项任务分派一个新的子 Agent,并在任务之间进行审查,以便快速迭代
2. 并行会话(单独会话)——在新会话中使用 executing-plans,分批执行并设置检查点
你想采用哪种方式?”
如果选择子 Agent 驱动:
- 如果有已安装的子 Agent 驱动开发流程,则使用该流程;否则,说明可用的执行工作流,不要声称此依赖已随附
- 留在本会话中
- 每项任务都使用新的子 Agent,并进行代码审查
如果选择并行会话:
- 指引用户在工作树中开启新会话
- 如果有已安装的 executing-plans 流程,则使用该流程;否则,将已保存的计划和项目说明带入新会话
适用场景
此技能适用于执行概述中所述的工作流或操作。
限制
- 仅在任务明确符合上述范围时使用此技能
- 不要将输出视为环境验证、测试或专家审查的替代品
- 如果缺少必需的输入、权限、安全边界或成功标准,请停下并请求澄清