<< All versions
Skill v1.0.1
currentAutomated scan100/100tiancaiamao/ai/todo-writer
+3 new
──Details
PublishedOctober 22, 2026 at 01:37 PM
Content Hashsha256:8ed37f4220c78ff9...
Git SHAf074eafa91a5
Bump Typepatch
──Files
Files (1 file, 3.1 KB)
SKILL.md3.1 KBactive
SKILL.md · 83 lines · 3.1 KB
version: "1.0.1" name: todo-writer description: 任务规划与进度追踪。当任务有 5+ 步骤、多文件改动、或长执行链时使用。 核心机制:用 checkbox 列表追踪进度,每完成一步立即更新,利用"重写列表"将完整任务清单重新注入 context。
Todo Writer — 进度追踪即 Context Recall
为什么需要
长任务中,agent 的注意力会被最近的 debug 循环吸引,早期的任务目标和进度逐渐被推到 context window 远处。
每次更新 checkbox 列表时,你都会重写整个清单 — 这不是格式偏好,而是一个主动召回机制:把完整的任务上下文重新拉回注意力中心。
When to Use
- 任务有 5+ 个步骤(写文件、改代码、跑测试算独立步骤)
- 多文件改动
- 需要跨多轮 tool 调用的长执行链
不需要用于: 单步任务、快速回答、读一个文件。
How — 三条规则
规则 1:开始前列出完整清单
收到任务后,第一件事就是拆解为 checkbox 列表。不是思考中的简短列举,而是正式的 markdown 输出:
markdown
## 任务计划-[ ] 1. 创建项目结构和 __init__.py-[ ] 2. 实现 models.py(Task 数据模型)-[ ] 3. 实现 storage.py(持久化和 CRUD)-[ ] 4. 实现 cli.py(命令行接口)-[ ] 5. 编写测试(models / storage / cli)-[ ] 6. 运行 pytest 验证全部通过-[ ] 7. 编写 README.md
规则 2:每完成一步,立即更新
完成一个步骤后,重写整个列表,将已完成项标记为 - [x]。不要只写"第 3 步完成了",而是输出完整的更新后的列表:
markdown
## 任务进度-[x] 1. 创建项目结构和 __init__.py-[x] 2. 实现 models.py(Task 数据模型)-[x] 3. 实现 storage.py(持久化和 CRUD)-[ ] 4. 实现 cli.py(命令行接口) ← 当前-[ ] 5. 编写测试(models / storage / cli)-[ ] 6. 运行 pytest 验证全部通过-[ ] 7. 编写 README.md
关键: 每次更新都重写全部列表,包括未完成的项。目的不是记录历史,而是让完整的任务上下文重新出现在最新的 context 位置。
规则 3:用验证驱动状态变更
只有当你实际验证了某一步的产出(测试通过、编译成功、功能确认)后,才标记为 [x]。不要在"写完了但还没测"时就标记完成。
粒度建议
| 任务类型 | checkbox 粒度 | |
|---|---|---|
| 功能开发 | 每个功能模块 = 1 项 | |
| Bug 修复 | 诊断 → 修复 → 测试 = 3 项 | |
| 重构 | 每个目标文件 = 1 项 | |
| 测试编写 | 每个测试文件 = 1 项 |
粒度过细(如每个函数一行)会产生过多噪音,削弱召回效果。 粒度过粗(如"实现后端"一项)则失去了追踪意义。
反模式
| ❌ | 问题 | |
|---|---|---|
| 只在 thinking 中列出步骤 | 不算正式输出,下一轮对话中不可见 | |
| 创建列表后再也不更新 | 等于没有列表,还浪费了创建时的 context | |
标记 [x] 但没实际验证 | 虚假进度,掩盖问题 | |
| 粒度过细(每行代码一项) | 噪音 > 信号 |