用途
writing-plans 技能用于为多步骤开发任务创建详细的实施计划。计划面向对代码库熟悉度有限的工程师,采用细粒度步骤(每个约 2-5 分钟)并包含完整代码片段。
适用场景
- 多步骤功能实现
- 需要多处修改的复杂缺陷修复
- 跨多个文件的重构
- 任何需要超过 30 分钟的任务
- 需要在多个会话之间保留上下文的场景
核心原则
DRY(不要重复自己):识别通用模式。 YAGNI(你不会需要它):只做当前需要的。 TDD(测试驱动开发):先写测试再写代码。 频繁提交:定期设置检查点。
假设前提
- 开发者技术熟练,但对特定工具集不熟悉
- 将工作拆解为细粒度步骤可避免混乱
- 完整代码片段优于抽象描述
- 命令应包含预期输出
计划结构
头部格式
# Implementation Plan: [Feature Name]
## Goal
[One sentence describing the outcome]
## Architecture
[Brief description of how this fits into the system]
## Tech Stack
- Language: [language]
- Framework: [framework]
- Testing: [test framework]
- Dependencies: [key dependencies]
## Tasks
任务格式
每个任务指定:精确的文件路径(创建/修改/测试),以及五个顺序步骤:
- 写失败测试
- 验证测试失败
- 实现最小代码
- 验证测试通过
- 提交更改
任务模板示例:
### Task 1: [Descriptive Name]
**Files:**
- Create: `path/to/new/file.ts`
- Modify: `path/to/existing/file.ts`
- Test: `path/to/test/file.test.ts`
**Step 1: Write failing test**
// path/to/test/file.test.ts
describe('FeatureName', () => {
it('should do expected behavior', () => {
// Complete test code
});
});
**Step 2: Verify test failure**
npm test -- --grep "should do expected behavior"
# Expected: FAIL - Cannot find module 'path/to/file'
**Step 3: Implement minimal code**
// path/to/file.ts
// Complete implementation code
**Step 4: Verify test passes**
npm test -- --grep "should do expected behavior"
# Expected: PASS
**Step 5: Commit**
git add .
git commit -m "feat: add expected behavior for FeatureName"
任务粒度
目标:每个任务 2-5 分钟。
过大示例:“实现认证”“构建 API 端点”“编写测试”。 恰当示例:“添加密码验证函数”“创建 POST /users 端点”“测试用户创建正常路径”。 过小示例:“添加分号”“导入 express”“添加 describe 块”。
拆分大任务:若某任务超过 5 分钟,则应识别子组件、为每个子组件创建独立任务、在任务之间添加依赖关系、让测试聚焦于单一行为。
代码片段要求
应包含:可完整复制粘贴的代码、所有导入与依赖、类型定义(如 TypeScript)、错误处理、针对非显而易见逻辑的注释。
不应包含:占位注释(// TODO: implement)、抽象描述(“添加必要的代码”)、部分实现、未经测试的代码。
执行交接
计划完成后提供两种方式:
方式一:子代理驱动 在当前会话中为每个任务使用新的子代理。最适合独立任务、保持在上下文中。使用 subagent-driven 技能。
方式二:并行会话 使用 executing-plans 技能在独立会话中执行。最适合紧密耦合的任务、长计划。在新终端中使用 executing-plans 技能。
计划审查清单
在呈现计划前检查:头部完整(目标、架构、技术栈);每个任务 2-5 分钟;文件路径精确;代码片段完整;测试命令包含预期输出;提交为原子且描述清晰;任务间依赖关系明确。
最佳实践
应做:从目标而非任务开始;按依赖顺序排列任务;为高风险变更包含回滚策略;引用代码库中已有模式;使用一致命名约定;按逻辑对相关任务分组。
不应做:编写含糊的任务描述;跳过测试先行步骤;合并无关更改;假设已有先验知识;遗漏错误场景;使任务过大或过小。
错误处理
| 情况 | 行动 |
|---|---|
| 需求不清晰 | 返回 brainstorming 技能 |
| 任务过于复杂 | 拆分为更小任务 |
| 发现依赖 | 添加前置任务 |
| 计划超出范围 | 记录范围外事项 |
指标
| 指标 | 目标 | 说明 |
|---|---|---|
| 任务完成率 | >95% | 任务可按所写内容完成 |
| 平均任务耗时 | 2-5 分钟 | 细粒度但有意义 |
| 返工率 | <10% | 需要修订的任务 |
| 测试覆盖率 | 100% | 每个任务都有测试 |
相关技能
tdd-obra - 测试先行方法论 brainstorming - 设计细化 subagent-driven - 计划执行 parallel-dispatch - 并行执行
版本历史
1.0.0(2026-01-19):首次发布,改编自 obra/superpowers。
快速开始
- 声明:“I'm using the writing-plans skill to create the implementation plan.”
- 写头部:功能名、目标、架构、技术栈
- 创建任务:拆分为 2-5 分钟的可操作步骤
- 包含代码:完整片段而非抽象描述
- 提供执行方式:子代理驱动或并行会话
限制
资料未提供该技能的具体收费、价格、支持平台、实际效果等细节。