从循环开始:理解 Claude Code 的 Loop 机制

深入解析 Claude Code 团队如何定义、触发和停止循环(Loop)

什么是 Loop?

循环(Loop) 是指智能体重复执行工作,直到满足停止条件。

循环可按触发方式、停止条件以及所使用的 Claude Code 原语(命令/能力)来分类。并非所有任务都需要循环——从简单开始。


四种循环类型

01 基于轮次(Turn-based)

属性 说明
触发 用户提示(Prompt)
停止 Claude 判断任务完成或需要上下文
最适合 较短、一次性任务
管理方式 使用 SKILL.md,让 Claude 端到端自我验证

这是最基本的交互模式,用户发一条指令,Claude 执行并返回结果。


02 基于目标(Goal-based /goal)

属性 说明
触发 手动输入目标
停止 达到目标 或 达到最大轮次
最适合 有可验证退出标准的任务

示例命令

/goal 获取首页 Lighthouse 得分 ≥ 90,最多尝试 5 次

Claude 会自主迭代,直到满足目标条件或达到尝试上限。


03 基于时间(Time-based /loop, /schedule)

属性 说明
触发 时间间隔
停止 手动取消 或 工作完成
最适合 定期任务或外部系统相关工作

示例命令

/loop 每 5 分钟检查我的 PR,查看评审评论并修复 CI 问题

适合需要持续监控的场景,如代码审查、CI 状态跟踪等。


04 主动循环(Proactive)

属性 说明
触发 事件或计划(无需人工实时介入)
停止 任务自行结束;常驻运行直到关闭
最适合 持续性工作流 —— 问题排查、迁移、依赖升级等

这是最高级的循环模式,Claude 可以自主规划并执行长期任务。


主动循环示例(组合使用)

# /schedule + /goal + 动态工作流 + 自动模式

/schedule 每小时:检查项目反馈频道,收集 Bug 报告

/goal:在每次运行中,不要停止,直到找到的每个报告都已被分类、处理并回应。

修复 Bug 时,使用工作流探索 3 种解决方案,分别在并行工作树中实现,
并进行对抗式评审后再决定采用哪一个。

这个示例展示了如何组合多种循环原语,构建复杂的自动化工作流。


快速参考对照表

循环类型 你交给它的 何时使用 追求的结果
基于轮次(Turn-based) 检查内容 探索或做出决策 自定义验证(Skill)
基于目标(Goal-based) 停止条件 你知道"完成"的样子 /goal
基于时间(Time-based) 触发条件 按计划定期执行 /loop, /schedule
主动循环(Proactive) 提示/目标 持续运行 + 定义清晰 所有能力 + 动态工作流

最佳实践

代码质量最佳实践

  • ✅ 保持代码库整洁 —— Claude 会遵循现有模式
  • ✅ 通过 Skill(技能)让 Claude 自我验证
  • ✅ 保持文档可达 —— 使用最新的定和规范
  • ✅ 使用第二个智能体进行无偏见的代码评审

Token 使用最佳实践

  • ✅ 根据任务规模匹配原语(命令)+ 模型
  • ✅ 定义清晰的停止条件,让结果更快到达
  • ✅ 先试点(Pilot)大规模动态工作流运行
  • ✅ 用脚本处理确定性工作,用模型处理判断性工作
  • ✅ 通过 /usage、/goal、/workflows 定期复盘

总结

理解 Claude Code 的四种 Loop 类型,能帮助你:

  1. 选择合适的交互模式 —— 简单任务用 Turn-based,复杂任务用 Goal-based 或 Proactive
  2. 设计高效的自动化工作流 —— 通过组合 /schedule、/goal、/loop 实现复杂场景
  3. 优化 Token 使用效率 —— 清晰的停止条件和合适的循环类型能显著降低开销

从循环开始,让 AI 智能体真正成为你的得力助手。


原文来源:@ClaudeDevs | 整理:甄同学

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐