Claude自动多轮任务与AI助手管理
一、/goal设定完成条件让 Claude 自己干到完解决了什么问题传统的对话式 AI 编程你得一轮一轮地喂 prompt。Claude 做一步停下来等你你再告诉它下一步做什么。简单任务还行但遇到迁移整个模块的 API或修复所有 lint 错误这种需要多轮操作的大任务你得一直守着不断催它继续。/goal 就是来解决这个的。你只需要设定一个完成条件Claude 会持续工作每完成一轮自动评估是否达标没达到就继续下一轮直到条件满足才停。版本要求Claude Code v2.1.139 或更高。基础用法在对话里输入/goal加上你的完成条件/goal auth 模块下所有测试通过且 lint 检查干净设置 goal 的同时会立即触发第一轮操作以 goal 本身作为指令——你不需要额外再发 prompt。Goal 激活后对话界面会显示一个时钟图标记录 goal 已经跑了多久。每轮结束后一个小型快速模型默认是 Haiku会评估条件是否达成并在对话里给出简短的原因说明。查看状态与清除/goal不带参数查看当前状态——已评估的轮次数、评估器的最新结论/goal 新条件替换当前 goal/goal --clear手动清除未达成的 goal启动新对话自动清除任何激活中的 goalGoal 恢复行为如果结束 session 时 goal 还在激活状态下次用/resume恢复时条件会延续但轮次计数、计时器和 token 消耗统计会重置。已达成或已清除的 goal 不会被恢复。编写高效 Goal 条件的技巧好用的 goal 条件通常包含三个要素可验证的结果测试结果、构建退出码、文件数量、队列为空验证方式明确告诉 Claude 怎么证明——“运行npm test确认所有用例通过”约束条件过程中不能改变的东西——“不修改其他测试文件”条件最长 4000 个字符。如果担心 goal 跑太久可以在条件里加入轮次或时间限制所有 API 端点都添加了认证检查且要在 5 轮内完成Goal 的评估机制/goal 实际是 session 级别 Stop hook 的一个便捷封装。每轮结束后对话内容和条件一起发给配置的评估模型默认 Haiku返回是/否决定和简短理由。关键是评估器不会调用工具只能判断 Claude 已经在对话里呈现的内容。所以条件要写成 Claude 自己的输出能证明的形式——所有测试通过可行因为 Claude 会跑测试并把结果放进对话。与其他自动化方式的对比方式触发下一轮的条件适用场景/goal评估模型确认条件未达成有明确终点的多轮任务Auto mode每次工具调用自动批准单轮内减少确认步骤Stop hook自定义脚本或 prompt需要自定义评估逻辑定时任务按时间间隔触发独立于 session 的定期任务这三种方式可以互补。auto mode 取消单轮内的工具确认/goal 在此基础上自动启动下一轮。二、Subagents创建专用 AI 助手为什么需要 Subagent主对话的上下文窗口是宝贵资源。搜索代码库、调试日志、跑测试这些任务会带来大量不需要长期保留的输出把主对话塞满。Subagent 出现之前你只能用新 session 或者忍受上下文的膨胀。Subagent 在独立的上下文窗口中运行有自己的系统 prompt、工具权限和记忆做完事只把摘要返回给主对话。核心价值就一句话把探索和实现从主对话中分离出去。内置 SubagentClaude Code 预置了几个 Subagent会在合适的时候自动启用名称工具用途Explore只读工具无写入/编辑代码搜索、文件发现、代码库探索Plan继承主对话权限规划模式下的代码库研究General-purpose读写工具全开复杂研究、多步操作、代码修改Explore 和 Plan 会跳过 CLAUDE.md 和父 session 的 git 状态让研究更快更省 token。Explore 被调用时可以指定 thoroughness 级别quick、balanced、thorough。创建自定义 Subagent核心就是 Markdown 文件加 YAML frontmatter。推荐用/agents命令打开图形界面创建。方式一通过 /agents 命令创建推荐输入/agents打开管理界面点击底部的 Create按指引描述 Subagent 的用途、选择工具范围、指定模型保存后立即生效方式二手动创建 Markdown 文件在不同层级放 Subagent 定义文件作用范围不同作用域存放位置说明项目级.claude/agents/code-reviewer.md团队共享纳入版本控制用户级~/.claude/agents/code-reviewer.md个人所有项目可用插件级插件目录的 agents 子目录通过插件分发CLI 参数级启动时通过--agent传递 JSON一次性或自动化脚本示例定义文件yaml---name: code-reviewerdescription: 审查代码质量和最佳实践model: claude-sonnet-4-20250514tools: [Read, Grep, Glob, Bash]color: blue---你是一个代码审查员。被调用时分析代码并提供具体、可操作的反馈涵盖代码质量、安全性和最佳实践。指出每个问题、展示当前代码、并提供改进版本。Frontmatter 配置项详解字段说明必填name唯一标识符小写连字符是description描述何时使用是tools可用工具列表省略则继承全部否denied_tools明确禁止的工具否model使用的模型否默认同主对话max_turns最大轮次后自动停止否skills预载入上下文的技能列表否mcp_servers可用的 MCP 服务器否memory是否启用跨 session 学习否permission_config权限模式否effort努力级别否worktree是否在隔离的 worktree 中运行否colorUI 中显示的标签颜色否start_first_turn自动提交的第一轮 prompt否工具权限控制限制 Subagent 的工具访问有两种方式allowlist 模式——只允许明确列出的工具yamltools: [Read, Grep, Glob, Bash]denylist 模式——继承全部排除特定工具yamltools: null # 继承全部denied_tools: [Edit, Write]以下工具无法在 Subagent 中使用即使列在 allowed 中Agent tool、AskUserQuestion、Bash部分交互命令。MCP 服务器作用域Subagent 可以访问主对话中没有的 MCP 服务器有两种方式yamlmcp_servers:# 内联定义仅此 Subagent 可用playwright:command: npxargs: [playwright-mcp]# 引用已有共享主对话的连接- filesystem内联定义的服务器在 Subagent 启动时连接、结束时断开不会消耗主对话的上下文。给 Subagent 编写的实用建议description 要写清楚何时适用——Claude 会根据 description 判断是否把任务委托给这个 Subagent选择合适的模型——简单搜索用 Haiku代码审查用 Sonnet复杂推理用 Opus控制上下文增长——Subagent 虽然独立运行但摘要和 tool call 结果仍会返回主对话权限意识——Subagent 继承主对话的权限模式auto 模式下全程无打断跨 session 记忆——启用 memory 可以让 Subagent 积累代码库模式和常见问题的洞察Subagent 与 Forks 的区别Forks 是通过/fork命令创建的独立 session用于探索替代方案。关键区别Forks完整独立的 session有自己的上下文和对话历史Subagents在同一个 session 内运行受主对话管理结果返回父级用 Fork 来试不同的方案用 Subagent 来处理副任务。三、动态工作流Dynamic Workflows脚本化编排上百个 Agent定位与适用场景动态工作流是一个 JavaScript 脚本在后台编排大量 Subagent。当任务需要的 Agent 数量超过一次对话能协调的上限或者你想把编排逻辑固化到可读可重用的脚本中时用它就对了。典型场景全代码库的 bug 扫描500 个文件大规模 API 迁移需要交叉验证来源的研究问题从多个独立角度起草方案再做权衡版本要求Claude Code v2.1.154 或更高所有付费计划可用。快速上手最简单的体验方式是用内置的/deep-research命令/deep-research Node.js 权限模型在 v20 和 v22 之间有什么变化你会看到后台多个 Agent 分阶段工作——分角度展开搜索、获取并交叉验证来源、合成带引用的报告——而你的 session 始终可用。运行结束后报告会显示每条声明的来源被交叉验证淘汰的声明已经被过滤掉了。核心概念Subagent vs 工作流 vs Agent Teams这三者都能执行多步骤任务区别在于谁拿着计划维度Subagents动态工作流Agent Teams计划在哪Claude 的上下文脚本代码共享任务列表中间结果Claude 的上下文脚本变量各 session 独立规模几个几十到几百几个到十几个对话能力单向汇报单向汇报互相通信可复现性手动重复脚本可重跑手动重建三种触发方式1. 显式请求——在 prompt 里提到workflow创建一个工作流扫描 src/routes/ 下所有 API 端点检查是否缺少认证提示中的 “workflow” 一词会被高亮Claude 会写一个工作流脚本而不是逐轮操作。2. Ultracode 模式——设置/effort xhigh后进入 ultracode 模式Claude 自动为每个实质性任务规划工作流/effort xhighUltracode 只对当前 session 生效重启后恢复。在这个模式下一次请求可能触发多个工作流先理解代码、再修改、再验证。3. 保存为命令——运行满意后把脚本保存为可重复执行的命令在/workflows视图中选择运行记录按s保存。可以选择保存到项目中团队共享或个人目录个人所有项目可用。保存后未来 session 中可以直接运行。工作流脚本结构工作流脚本本质上是 JS 文件运行时在一个隔离环境中执行。Claude 根据你的任务描述自动生成。脚本中的关键 APIjavascript// 创建一个 Agent 执行任务const result awaitagent({goal: 扫描 src/auth/ 下的安全漏洞,model: claude-sonnet-4-20250514,max_turns: 20})// 从多个角度独立执行const results awaitPromise.all([agent({ goal: 分析性能瓶颈 }),agent({ goal: 检查安全隐患 }),agent({ goal: 评估测试覆盖率 })])// 汇总结果returnsynthesize(results)脚本中每块独立的改动对应一个 phase/workflows 视图按 phase 展示 Agent 数量和 token 消耗。运行时约束最多 16 个并发 AgentGPU/CPU 有限时更少无直接文件系统或 shell 访问Agent 可以脚本不可以所有 Spawn 的 Agent 使用主对话的模型除非脚本指定不同的Agent 始终以 bypass-permissions 模式运行文件编辑自动批准shell 命令和 MCP 工具如果不在 allowlist 中仍可能触发确认查看和恢复运行/workflows列出所有进行中和已完成的工作流选中后可以看到每个 phase 的 Agent 数量、token 总量和耗时。可以深入 phase 查看每个 Agent 的 prompt、工具调用和结果。停止运行后可以恢复已完成的 Agent 返回缓存结果其余部分重新执行。但退出 Claude Code 后重新启动会从头开始。防火墙/代理环境如果工作流需要访问网络确保环境变量CLAUDE_CODE_DISABLE_WORKFLOWS未设置或设为 0。管理员可以通过managed-settings全局禁用工作流。四、Agent Teams多 session 协作集群适用边界Agent Teams 是实验性功能默认关闭。它协调多个独立的 Claude Code session 组成一个团队一个 Lead 负责统筹Teammates 各自在自己的上下文窗口中独立工作并且可以互相发消息。和 Subagent 的关键区别Subagent 只能单向汇报不能互相通信。Teammate 之间可以直接对话、共享发现、挑战对方的结论。启用方式设置环境变量CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS1。最适合的场景代码审查Security reviewer Performance reviewer Test coverage reviewer 同时从不同角度审查同一份代码多角度调试多个 Teammate 各自假设一个根因互相质疑对方的理论类似科学辩论并行重构前端、后端、测试各归一个 Teammate 独立完成探索式设计UX 角度 技术架构角度 质疑角度各自输出方案Lead 综合权衡使用方法我想设计一个跟踪 TODO 注释的 CLI 工具。创建一个 Agent 团队 从不同角度探索 - 一个 Teammate 负责 UX - 一个 Teammate 负责技术架构 - 一个 Teammate 扮演质疑者Claude 会自动创建 Lead为每个角度 spawn 对应的 Teammate协调探索并综合结果。任务系统Teams 有一个共享任务列表任务有三种状态状态含义Pending待认领In progress正在做Completed已完成任务可以有依赖关系——一个 pending 任务的依赖没完成时不能被认领。Lead 可以显式分配任务也可以让 Teammate 自行认领。显示模式In-process 模式默认所有 Teammate 在主终端内用 ShiftDown 切换Split-pane 模式每个 Teammate 有自己的窗格需要 tmux 或 iTerm2最佳实践3-5 个 Teammate 最合适太多协调开销超过收益给每个 Teammate 独立的文件范围避免编辑冲突每 2-3 个任务配一个 Teammate保持持续的产出显式指定 Teammate 名称方便后续引用善用 Plan approval——要求 Teammate 先出方案Lead 批准后再执行结束时要 cleanup——让 Lead 执行lead clean up清理资源已知限制需要稳定可靠的终端环境特别是 split-pane 模式无法为每个 Teammate 预设不同的权限模式Teammate 如果遇到错误可能不会自动恢复大规模团队对系统资源要求较高五、如何选择Subagent、Workflow 还是 Agent Team你的需求选哪个让 Claude 自己反复工作直到特定条件达成/goal有明确的副任务做完给结果即可Subagent需要几十上百个 Agent 并行干活或者想固化可重复的流程动态工作流多个 Agent 需要互相沟通、质疑、协作Agent Teams一边开发一边让另一个 Agent 在后台查资料后台 Subagent定期跑的任务不需要人在场定时任务 工作流从简单到复杂的选择路径先试试 /goal——大多数多步骤任务都能胜任最省事单个明确的副任务——用 Subagent写好 description 让 Claude 自己判断什么时候委托需要可复现的批量操作——用动态工作流脚本固化后可重复执行需要 Agent 之间协作——用 Agent Teams但要注意 token 消耗