概念
chain 是 CC Run 的多后端流水线功能——把一次完整任务拆成多个段(segment),每段用不同 provider 拉起 claude -p 执行,段与段之间通过文件和占位符传递上下文。
它填补了什么空白
官方子代理(sub-agent)和 Agent SDK 能做的事情很多,但它们有一个共同的盲区:异构后端流水线。
现实需求很简单:用户想把不同模型串起来用——规划用强模型、实现用便宜模型、审查换一家独立检查——但目前没有工具支持这种"一段一个后端"的编排。你只能端到端用一个模型跑到底。
CC Run chain 就是为这个空白而设计的。
参考链:三段式流水线
chain 内置一个参考模板,开箱即用:
Plan(强模型) → Implement(便宜模型) → Review(另一家 provider)设计哲学:智力前置到规划阶段。强模型把计划拆得很细——分阶段、分任务、写验收标准——到了实现阶段,就变成"照计划干活"的工作,便宜模型完全能胜任。最后,由第三家独立审查,捕捉问题和遗漏。
为什么不用同一个模型审查自己?
自己审查自己容易漏掉盲点。换一家 provider 来做 review,就像代码 review 找同事而不是自己审——多一双不同的"眼睛",更容易发现问题。
使用方式
两条命令:
bash
ccr chain init # 生成 plan-impl-review.chain.yaml(内置模板)
ccr chain init mychain # 用名为 mychain 的内置模板生成 mychain.chain.yaml关于 init 的参数
init 后面跟的是内置模板名(目前只有 plan-impl-review,也是缺省值),不是输出文件名。生成的文件固定叫 <模板名>.chain.yaml;若同名文件已存在,init 会拒绝覆盖。
bash
ccr chain plan-impl-review.chain.yaml # 运行
ccr chain plan-impl-review.chain.yaml --input "做一个 todolist app" # 注入需求
ccr chain plan-impl-review.chain.yaml --auto # 跳过所有暂停,端到端跑完
ccr chain plan-impl-review.chain.yaml -q # 静默;-v 则更详细(二者互斥)模板文件会带着完整的注释和字段说明,把它当起点来改,比自己从零写快得多。
引擎如何工作
三段式引擎,每段职责单一:
- 分段执行:每个 segment 是一个隔离的
claude -p调用,执行完就退出——天然就是 handoff 边界。每段的 provider 由 yaml 中的profile字段指定。 - 交接(handoff):所有 segment 共享同一个工作目录,文件天然持久化。前一段的产出写入约定路径(如
docs/plans/<task>.md),后一段通过{{prev.output}}占位符得到方向性指引。此外,引擎还会追踪「本链至今改动过的文件」,把这份清单作为软提示追加进下游每一段的 prompt,引导后续段聚焦在这些文件上、不去乱读外部路径。 - 人在回路中(human in the loop):默认每段结束后暂停,给你检查、编辑、跳过或退出的机会。详情见 放行与审查。
下一步
→ 写一条链