跳转到内容

工作原理

CCG 是一个 Hook 驱动的工作流引擎。它在 Claude Code 会话内运行,通过 4 个 JavaScript Hook 实现每轮状态追踪,并在需要时调用 Codex CLI / Gemini CLI 进行并行分析。

/ccg:go 给这个 API 加 JWT 认证 为例:

你: /ccg:go 给这个 API 加 JWT 认证
CCG 引擎:
1. 读取项目上下文(git status、技术栈、文件结构)
2. 意图分类: feature / L 复杂度 / backend / high 风险
3. 策略选择: full-collaborate
4. 创建 .ccg/tasks/add-jwt-auth/task.json
5. 启动双模型分析(Codex + Gemini 并行)
6. 输出计划 → HARD STOP 等待审批
7. Spawn Agent Teams Builders 并行实施
8. 运行质量关卡 + 双模型交叉审查
9. 报告结果

Step 1 — 项目上下文收集

引擎读取当前 git 状态、package.json / go.mod 等依赖文件、目录结构,建立对项目技术栈的理解。

Step 2 — 意图分类

对用户输入进行四维分类:

  • 类型:feature / bugfix / refactor / research / review / git-action
  • 复杂度:S(单文件)/ M(2-5 文件)/ L(跨模块)/ XL(架构级)
  • 领域:frontend / backend / fullstack / infra
  • 风险:low / medium / high

Step 3 — 策略选择

基于分类结果自动匹配 10 种策略之一。详见策略系统

Step 4 — Task 持久化

M 及以上复杂度的任务创建 .ccg/tasks/<slug>/task.json。该文件记录策略、当前阶段、门控状态等。详见任务系统

Step 5-6 — 多模型分析 + HARD STOP

通过 codeagent-wrapper 并行调用 Codex CLI 和 Gemini CLI,返回各自的分析和方案建议。引擎合成后输出计划,强制暂停等待人类审批。

Step 7 — Agent Teams 并行实施

审批通过后,大型任务 spawn 多个 Builder 队友并行编码。每个 Builder 拥有隔离的文件所有权。详见 Agent Teams

Step 8-9 — 质量关卡 + 报告

执行 verify-securityverify-qualityverify-change 等质量 Skill,Codex + Gemini 交叉审查,最终输出结果报告。

每次你发送消息,workflow-state.js Hook 自动注入当前任务状态:

<ccg-state>
Task: add-jwt-auth (in_progress)
Strategy: full-collaborate
Phase: 4-implementation
Next: Layer 1 Builders 执行中
</ccg-state>

这个面包屑确保 Claude 在长对话中始终知道当前任务处于什么阶段,即使经历了多轮对话也不会”忘记”正在做什么。

模型角色职责
Claude编排者(Orchestrator)意图分析、策略选择、代码写入、审查决策
Codex后端分析师API 设计、数据库逻辑、业务流程分析
Gemini前端分析师UI 组件、样式方案、交互逻辑分析

codeagent-wrapper 是 Go 编写的二进制工具,负责调用外部模型 CLI:

Terminal window
codeagent-wrapper --backend <codex|gemini> [工作目录] <<'EOF'
<任务内容>
EOF

特性:

  • 自动超时控制(默认 7200 秒)
  • 标准化输出格式
  • 错误重试与失败静默
  • 跨平台支持(macOS / Linux / Windows)
┌─────────────────────────────────────────────────────┐
│ Claude Code 会话 │
├─────────────────────────────────────────────────────┤
│ │
│ [Hook: session-start] → 注入项目上下文 + 任务状态 │
│ [Hook: workflow-state] → 每轮注入 <ccg-state> │
│ [Hook: skill-router] → 检测域关键词 → 注入知识 │
│ │
│ /ccg:go 命令 → 策略引擎 │
│ ↓ │
│ codeagent-wrapper → Codex CLI / Gemini CLI │
│ ↓ │
│ [Hook: subagent-context] → 注入 spec 到子 Agent │
│ ↓ │
│ Agent Teams Builders(并行编码) │
│ ↓ │
│ Quality Gates(verify-*) │
│ ↓ │
│ 输出结果 │
└─────────────────────────────────────────────────────┘

这种架构确保:

  1. 状态连续性 — Hook 在每轮注入状态,Claude 始终知道当前进度
  2. 规范一致性 — spec 文件自动注入子 Agent,无需人工提醒
  3. 质量保障 — 验证阶段强制运行质量关卡
  4. 并行效率 — 外部模型分析和 Builder 实施可并行执行