第 17 期 | Claude Cowork:跨多步骤的自动任务分解

更新于 2026/4/5

🎯 学习目标

学完本期你将掌握:

  1. Claude 如何自动将复杂任务分解为多步骤执行计划
  2. 多轮工具调用链的内部运作机制
  3. 如何观察和引导 Claude 的任务规划过程
  4. 复杂跨文件工作流的实战技巧

📖 核心概念讲解

17.1 什么是"任务分解"?

人类的做法:
  "做一个带认证的 REST API"
  → 脑子里列出步骤:
    1. 设计数据模型
    2. 写路由
    3. 加认证中间件
    4. 写测试
  → 按顺序执行

Claude Code 的做法:
  收到同样的指令
  → 内部推理出执行计划 (Agentic Reasoning)
  → 调用 40+ 次工具自动执行
  → 中途遇到问题自动调整计划

关键区别:
  人类: 先规划 → 再执行(分开的)
  Claude: 边规划 → 边执行 → 边调整(一体化的)

17.2 Claude 的内部执行循环

╭────────────── Agent Loop ──────────────────╮
│                                            │
│   接收指令                                 │
│     │                                      │
│     ▼                                      │
│   推理当前应该做什么 (Think)               │
│     │                                      │
│     ▼                                      │
│   选择工具并执行 (Act)                     │
│     │                                      │
│     ▼                                      │
│   观察结果 (Observe)                       │
│     │                                      │
│     ├─ 成功 → 推理下一步 ──→ 回到 Think   │
│     │                                      │
│     └─ 失败 → 调整策略 ──→ 回到 Think     │
│                                            │
│   直到所有步骤完成 → 输出总结              │
│                                            │
╰────────────────────────────────────────────╯

这就是 ReAct (Reasoning + Acting) 模式

17.3 复杂任务的典型分解

用户指令: 
  "给这个 Express 项目添加 JWT 用户认证"

Claude 的内部分解:

  步骤 1: 理解现有架构
    ├─ Read package.json
    ├─ Glob src/**/*.ts  
    └─ Read src/index.ts, src/routes/...

  步骤 2: 安装依赖
    └─ Bash: npm install jsonwebtoken bcrypt

  步骤 3: 创建数据模型
    └─ Write src/models/User.ts

  步骤 4: 创建认证服务
    └─ Write src/services/auth.ts

  步骤 5: 创建认证中间件
    └─ Write src/middleware/auth.ts

  步骤 6: 创建认证路由
    └─ Write src/routes/auth.ts

  步骤 7: 集成到主应用
    └─ Edit src/index.ts

  步骤 8: 保护现有路由
    └─ Edit src/routes/users.ts (添加 auth 中间件)

  步骤 9: 验证
    ├─ Bash: npx tsc --noEmit
    └─ Bash: npm test

  总计: ~20 次工具调用,全自动完成

💻 模拟 Claude TUI 交互

场景:观察 Claude 的多步骤执行过程

> 请为这个项目添加完整的 JWT 用户认证系统

╭─ Claude ─────────────────────────────────────────────╮
│                                                      │
│  让我先了解项目当前的架构。                          │
│                                                      │
│  🔍 Tool: Read → package.json                       │
│  框架: Express 4.18, TypeScript, Prisma ORM         │
│                                                      │
│  🔍 Tool: Glob → src/**/*.ts                        │
│  📁 项目结构:                                        │
│  ├── src/index.ts                                    │
│  ├── src/routes/users.ts                             │
│  ├── src/routes/products.ts                          │
│  └── src/db/prisma.ts                                │
│                                                      │
│  🔍 Tool: Read → prisma/schema.prisma               │
│  当前没有 User 模型,需要创建。                      │
│                                                      │
│  好的,我的计划是:                                    │
│  1️⃣ 创建 User 模型 (Prisma)                         │
│  2️⃣ 安装 JWT + bcrypt 依赖                          │
│  3️⃣ 实现认证服务 (注册/登录/验证)                   │
│  4️⃣ 创建 auth 中间件                                │
│  5️⃣ 添加 auth 路由                                  │
│  6️⃣ 保护已有路由                                    │
│  7️⃣ 运行测试验证                                    │
│                                                      │
│  开始执行...                                         │
│                                                      │
│  ⚙️ Tool: Edit → prisma/schema.prisma               │
│  Added User model with email, password, role fields  │
│                                                      │
│  ⚙️ Tool: Bash                                       │
│  $ npm install jsonwebtoken bcrypt                    │
│  $ npm install -D @types/jsonwebtoken @types/bcrypt  │
│  ✅ Dependencies installed                           │
│                                                      │
│  ⚙️ Tool: Bash                                       │
│  $ npx prisma migrate dev --name add-user            │
│  ✅ Migration applied                                │
│                                                      │
│  ⚙️ Tool: Write → src/services/auth.ts              │
│  Created: register(), login(), verifyToken()         │
│                                                      │
│  ⚙️ Tool: Write → src/middleware/auth.ts             │
│  Created: requireAuth middleware                     │
│                                                      │
│  ⚙️ Tool: Write → src/routes/auth.ts                │
│  POST /auth/register, POST /auth/login              │
│                                                      │
│  ⚙️ Tool: Edit → src/index.ts                       │
│  Added: import authRouter, app.use('/auth', ...)     │
│                                                      │
│  ⚙️ Tool: Edit → src/routes/users.ts                │
│  Added: requireAuth middleware to all routes         │
│                                                      │
│  ⚙️ Tool: Bash                                       │
│  $ npx tsc --noEmit                                  │
│  ✅ No TypeScript errors                             │
│                                                      │
│  ⚙️ Tool: Bash                                       │
│  $ npm test                                           │
│  ✅ 12 tests passed (3 new auth tests)               │
│                                                      │
│  🎉 JWT 认证系统已完成!                              │
│  共创建 3 个文件,修改 3 个文件。                    │
│                                                      │
╰──────────────────────────────────────────────────────╯

💻 代码演示

# ✅ 让 Claude 展示执行计划但不执行
# 切换到 Plan Mode (Shift+Tab)
> 描述你将如何添加支付系统集成
# Claude 会输出详细计划,但不执行

# ✅ 限制单次任务的复杂度
claude "只做步骤 1-3:创建数据模型和认证服务,
  路由和中间件我下次再让你做"

# ✅ 观察工具调用详情
# Claude 的每次工具调用都会实时显示在终端
# 你可以随时按 Ctrl+C 中断

# ✅ 引导 Claude 的执行顺序
claude "按以下顺序执行:
  1. 先创建测试文件(TDD方式)
  2. 再写实现代码
  3. 最后运行测试"

🔧 涉及的 Tools

工具 任务分解中的角色 说明
Read 理解环节 读取现有代码理解架构
Glob 发现环节 扫描项目结构
Bash 执行环节 安装依赖、运行迁移、测试
Write 创建环节 生成新文件
Edit 集成环节 修改已有文件,连接新旧代码

📝 本期要点回顾

  1. Claude Code 使用 ReAct 模式:边推理边执行边观察
  2. 复杂任务自动分解为 多步骤工具调用链
  3. Plan Mode 可以预览执行计划而不实际执行
  4. 可以通过 限制步骤范围 来控制执行粒度
  5. 失败时 Claude 会 自动调整策略,而不是直接报错

🔗 参考资料