BrainBank
AI 课堂/技能Claude Code Deep Dive

TodoWriteTool:待办清单

2026/8/2 14:50:28 · 来源

#state-management#skill#todo#task-management#claudes-code

`TodoWriteTool` is a lightweight task management tool in Claude Code that explicitly tracks session-level work through AppState updates, automatically cleans completed tasks and triggers verification prompts for complex workflows.

它不是普通 checklist,而是会话内任务外显

TodoWriteTool 是 Claude Code 经典的轻量任务管理工具。
它的作用不是替代正式任务系统,而是让模型在当前会话里把工作拆成一串可见的 todo。

你可以把它理解成:

  • TodoWriteTool:轻量、会话内、快速追踪
  • TaskCreateTool 系列:结构化、正式任务系统

关键源码

tools/TodoWriteTool/TodoWriteTool.ts

const inputSchema = z.strictObject({
  todos: TodoListSchema().describe('The updated todo list'),
})

而真正的状态写回是:

context.setAppState(prev => ({
  ...prev,
  todos: {
    ...prev.todos,
    [todoKey]: newTodos,
  },
}))

这说明它本质上是一个 AppState 写入工具

调用链

模型拆分当前工作 > TodoWriteTool > 更新 AppState.todos > UI 展示清单 > 模型按清单推进下一步

实现重点

它有两个很有意思的设计:

  1. 所有 todo 都完成时,会直接把列表清空
  2. 如果结束的是一个 3 项以上的复杂任务,而且没有验证步骤,会提醒生成 verification nudge

源码里这段很关键:

if (
  allDone &&
  todos.length >= 3 &&
  !todos.some(t => /verif/i.test(t.content))
) {
  verificationNudgeNeeded = true
}

这说明它并不只是“写清单”,还会在任务收尾时推动更严谨的验证。

一次典型使用路径

  1. 用户给一个中等复杂任务
  2. 模型先写 3-5 个 todo
  3. 每做完一项就更新状态
  4. 最后一项关闭时,如果没有验证,会被提醒补验证

它和相邻工具的关系

TodoWriteTool > 会话内轻量任务追踪

TaskCreate/Update/List > 正式任务系统

小结

TodoWriteTool 的价值是:

用最低成本把模型当前计划显式化,并把“做完就清单消失、复杂任务别忘验证”这种流程约束接进会话状态。

学习地图

应用能力培养

  • 基础层:理解任务分解的核心理念,掌握轻量级跟踪与会话状态维护的实践方式
  • 中级层:通过TodoWriteTool实现动态任务视图的构建和状态管理逻辑
  • 高级层:将待办工具集成进复杂工作流,并在关键节点添加验证机制的系统性思维

动手实践——分步指南

  1. 环境准备:确保Claude Code已部署并具备开发环境
  2. 创建TodoWriteTool实例:
    import { TodoWriteTool } from 'claudes-code/tools';
    const todoTool = new TodoWriteTool();
    
  3. 任务创建与维护:
    • 调用todoTool.addTask('Implement UI')
    • 每项完成后调用todoTool.complete('UI Task')
  4. 完成验证提示设置:
    • 修改配置使工具在完成5+任务时不自动清理
    • 添加自定义验证条件
  5. 验证流程测试:执行完整任务流,观察待办消失与验证提示触发时机

三大推荐资源

  1. 1
    Claude Code 官方工具文档

    包含TodoWriteTool实现细节和应用场景的完整指引

    https://docs.anthropic.com/claude/latest

  2. 2
    Zod 输入验证库指南

    了解工具如何通过类型安全架构处理任务数据输入

    https://zod.dev/

  3. 3
    状态管理最佳实践

    学习 AppState 的设计原理与实际应用案例

    https://react.dev/docs/state

链接由 AI 推荐——使用前建议快速核实。