关于 deep-work
deep-work 是面向 Agent 的结构化编码工作流技能,将代码研究、计划、审阅与实现分阶段进行。它要求每阶段经用户确认,并将过程文档保存在 `.claude/` 中。
主要功能
- 01先研究代码库再规划
- 02编写实现计划
- 03循环审阅并处理批注
- 04实现前建立任务清单
- 05跟踪任务进度并检查
适用场景
- 01调查不熟悉的代码区域
- 02编码前确认实现方案
- 03根据审阅意见修改计划
- 04跟踪实现任务与检查
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ petekp/ agent-skills --skill deep-work安装后在 Claude Code 中输入/deep-work确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/plan-template.mdprompts.mdresearch-template.md详细介绍
深度工作
将思考与敲代码分开的结构化工作流。书面计划经过审阅和批准前,绝不编写代码。
工作流概览
Research → Plan → Annotate (repeat 1-6x) → Todo List → Implement → Feedback
所有产物都以 Markdown 文件的形式保存在 .claude/ 中(而非项目根目录)。
阶段 1:调研
在开展任何其他工作之前,深入阅读相关代码库。将调研结果写入 .claude/research.md。
调研方式:
- 阅读目标区域中的每个文件——不仅要看函数签名,还要看实现、边缘情况和错误处理
- 端到端追踪数据流
- 找出已有的模式、约定、工具和缓存层
- 记录与系统其他部分的集成点
- 将详细报告写入
.claude/research.md
调研深度要求: 深入阅读,理解细节,全面检查。浅尝辄止不可接受。继续调研,直到充分理解为止。
模板: 有关调研文档的结构,请参阅 references/research-template.md。
重要规则: 写完 research.md 后立即停止。在用户审阅调研内容并确认其准确之前,不得开始规划。
阶段 2:规划
将详细的实现计划写入 .claude/plan.md。计划必须以实际代码库为依据——提出修改建议前先阅读源文件。
计划内容:
- 方案及其理由
- 展示实际变更的代码片段(不是伪代码)
- 将要修改或创建的文件路径
- 注意事项和权衡
- 明确说明不会修改的内容及原因
模板: 有关计划文档的结构,请参阅 references/plan-template.md。
参考实现: 如果用户提供其他项目的参考代码,请仔细研究,并调整方案以符合当前代码库的模式。
重要规则: 计划结尾必须写上“计划已准备好供你审阅。请直接在 .claude/plan.md 中添加行内备注,并告知我何时处理这些备注。”不得开始实现。
阶段 3:批注循环
用户会直接在 plan.md 中添加行内备注。当用户说“处理我的备注”或类似的话时:
- 彻底阅读
.claude/plan.md,找出所有用户批注 - 用户批注是指原计划中没有的任何文字——留意更正、问题、覆盖要求和约束
- 逐条处理所有批注:更新章节、移除不采纳的方案、纳入领域知识
- 处理完后删除批注文本本身(保持计划整洁)
- 以“所有备注均已处理。请再次审阅,或满意后说‘添加待办清单’。”结束
重要规则: 不得开始实现。“暂时不要实现”是硬性约束。反复进行批注循环,直到用户明确批准为止。
阶段 4:待办清单
用户批准计划后,在 .claude/plan.md 中添加细化的任务清单:
## Tasks
### Phase 1: [Phase Name]
- [ ] Task 1 — specific, actionable description
- [ ] Task 2 — specific, actionable description
### Phase 2: [Phase Name]
- [ ] Task 3 — specific, actionable description
- [ ] Task 4 — specific, actionable description
每项任务都应足够小,能在一个专注步骤中完成。列出完整实现计划所需的所有阶段。
重要规则: 仍不得开始实现。等待用户确认后再开始。
阶段 5:实现
用户说“实现”或“开始”后:
- 按顺序执行计划中的每项任务
- 每完成一项任务,就更新
.claude/plan.md——将- [ ]改为- [x] - 直到所有任务完成后才能停止
- 每个阶段结束后运行项目的类型检查器/代码检查工具,尽早发现问题
- 不要添加不必要的注释、文档字符串或类型变通写法(
any、unknown)
实现期间的代码质量规则:
- 不添加不必要的注释或 jsdocs
- 不使用
any或unknown类型(TypeScript 项目) - 持续运行类型检查/代码检查
- 严格遵循现有代码库的模式
阶段 6:反馈
在实现过程中,用户可能会提供简短的修改意见。由于计划和会话中已有完整上下文,这些意见已足够:
- “你漏掉了去重函数” → 补上遗漏的实现
- “把这个移到管理端应用” → 按照指示移动
- “再宽一点”/“间距为 2px”/“还是被裁切了” → 调整并重新检查
- “让它看起来和用户表格一样” → 查看该参考内容,并完全照着实现
关于回退: 如果用户说“我把所有更改都回退了”,请重新读取当前文件状态,将范围缩小到用户明确指定的内容,并重新干净地实现。
提示词参考
请参阅 references/prompts.md,其中提供了每个阶段可直接使用的提示词,用户可以复制并调整。