Execute - 多模型协同实现¶
多模型协同实现 - 从计划获取原型 → Claude 重构并实现 → 多模型审计与交付。
前提条件: 此命令需要外部
ccg-workflow运行时。它不包含在基础 ECC 安装中。请运行npx ccg-workflow进行初始化,并配置此命令所依赖的~/.claude/bin/codeagent-wrapper和~/.claude/.ccg/prompts/*角色文件。如果没有此运行时,此命令无法正常工作。
$ARGUMENTS
核心协议¶
- 语言协议:与工具/模型交互时使用英语,与用户沟通时使用用户的语言
- 代码主权:外部模型对文件系统零写入访问权限,所有变更均由 Claude 执行
- 重构脏原型:将 Codex/Gemini 的统一差异视为“脏原型”,需要重构为生产级代码
- 损失限制机制:在当前阶段输出经过验证之前,不进入下一阶段
- 前提条件:仅在用户针对
/ccg:plan的输出明确回复“Y”后执行(如果缺失,则必须先确认)
多模型调用规范¶
调用语法(并行:使用 run_in_background: true):
# セッション再開呼び出し(推奨) - 実装プロトタイプ
Bash({
command: "~/.claude/bin/codeagent-wrapper {{LITE_MODE_FLAG}}--backend <codex|gemini> {{GEMINI_MODEL_FLAG}}resume <SESSION_ID> - \"$PWD\" <<'EOF'
ROLE_FILE: <ロールプロンプトパス>
<TASK>
Requirement: <タスクの説明>
Context: <計画内容 + 対象ファイル>
</TASK>
OUTPUT: 統一差分パッチのみ。実際の変更を厳格に禁止。
EOF",
run_in_background: true,
timeout: 3600000,
description: "簡潔な説明"
})
# 新規セッション呼び出し - 実装プロトタイプ
Bash({
command: "~/.claude/bin/codeagent-wrapper {{LITE_MODE_FLAG}}--backend <codex|gemini> {{GEMINI_MODEL_FLAG}}- \"$PWD\" <<'EOF'
ROLE_FILE: <ロールプロンプトパス>
<TASK>
Requirement: <タスクの説明>
Context: <計画内容 + 対象ファイル>
</TASK>
OUTPUT: 統一差分パッチのみ。実際の変更を厳格に禁止。
EOF",
run_in_background: true,
timeout: 3600000,
description: "簡潔な説明"
})
审计调用语法(代码审查/审计):
Bash({
command: "~/.claude/bin/codeagent-wrapper {{LITE_MODE_FLAG}}--backend <codex|gemini> {{GEMINI_MODEL_FLAG}}resume <SESSION_ID> - \"$PWD\" <<'EOF'
ROLE_FILE: <ロールプロンプトパス>
<TASK>
Scope: 最終的なコード変更を監査。
Inputs:
- 適用されたパッチ(git diff / 最終的な統一差分)
- 変更されたファイル(必要に応じて関連する抜粋)
Constraints:
- ファイルを変更しない。
- ファイルシステムアクセスを前提とするツールコマンドを出力しない。
</TASK>
OUTPUT:
1) 優先順位付けされた問題リスト(重大度、ファイル、根拠)
2) 具体的な修正; コード変更が必要な場合は、フェンスされたコードブロックに統一差分パッチを含める。
EOF",
run_in_background: true,
timeout: 3600000,
description: "簡潔な説明"
})
模型参数注意事项:
- {{GEMINI_MODEL_FLAG}}:如果使用 --backend gemini,请替换为 --gemini-model gemini-3-pro-preview(注意末尾空格);如果是 codex,则使用空字符串
角色提示词:
| 阶段 | Codex | Gemini |
|---|---|---|
| 实现 | ~/.claude/.ccg/prompts/codex/architect.md |
~/.claude/.ccg/prompts/gemini/frontend.md |
| 审查 | ~/.claude/.ccg/prompts/codex/reviewer.md |
~/.claude/.ccg/prompts/gemini/reviewer.md |
会话复用:如果 /ccg:plan 提供了 SESSION_ID,请使用 resume <SESSION_ID> 复用上下文。
等待后台任务(最大超时 600000ms = 10 分钟):
重要:
- 必须指定 timeout: 600000。如果不指定,默认 30 秒会提前超时
- 如果 10 分钟后仍未完成,请继续使用 TaskOutput 轮询,不要强制终止进程
- 如果因超时跳过了等待,必须调用 AskUserQuestion 询问用户是继续等待还是强制终止任务
执行工作流¶
执行任务:$ARGUMENTS
阶段 0:读取计划¶
[Mode: Prepare]
- 识别输入类型:
- 计划文件路径(例如:
.claude/plan/xxx.md) -
直接的任务说明
-
读取计划内容:
- 如果提供了计划文件路径,则读取并解析
-
提取:任务类型、实现步骤、关键文件、SESSION_ID
-
执行前确认:
- 如果输入是“直接的任务说明”,或者计划中缺少
SESSION_ID/ 关键文件:先向用户确认 -
如果无法确认用户已对计划回复“Y”:在继续之前需要再次确认
-
任务类型路由:
| 任务类型 | 检测 | 路由 |
|---|---|---|
| 前端 | 页面、组件、UI、样式、布局 | Gemini |
| 后端 | API、接口、数据库、逻辑、算法 | Codex |
| 全栈 | 同时包含前端和后端 | Codex ∥ Gemini 并行 |
阶段 1:快速上下文检索¶
[Mode: Retrieval]
如果 ace-tool MCP 可用,用于快速上下文检索:
基于计划的“关键文件”列表,调用 mcp__ace-tool__search_context:
mcp__ace-tool__search_context({
query: "<計画内容に基づくセマンティッククエリ、キーファイル、モジュール、関数名を含む>",
project_root_path: "$PWD"
})
检索策略: - 从计划的“关键文件”表中提取目标路径 - 构建覆盖范围的语义查询:入口文件、依赖模块、相关类型定义 - 如果结果不足,额外进行 1-2 次递归检索
如果 ace-tool MCP 不可用,使用 Claude Code 内置工具回退:
1. Glob:从计划的“关键文件”表中搜索目标文件(例如:Glob("src/components/**/*.tsx"))
2. Grep:在整个代码库中搜索关键符号、函数名、类型定义
3. Read:读取发现的文件,收集完整上下文
4. Task(Explore 代理):如果需要更广泛的探索,使用 Task 并设置 subagent_type: "Explore"
检索后: - 整理检索到的代码片段 - 确认用于实现的完整上下文 - 进入阶段 3
阶段 3:原型获取¶
[Mode: Prototype]
根据任务类型路由:
路由 A:前端/UI/样式 → Gemini¶
限制:上下文 < 32k 令牌
- 调用 Gemini(使用
~/.claude/.ccg/prompts/gemini/frontend.md) - 输入:计划内容 + 检索到的上下文 + 目标文件
- 输出:
統一差分パッチのみ。実際の変更を厳格に禁止。 - Gemini 是前端设计的权威,其 CSS/React/Vue 原型是最终视觉基线
- 警告:忽略 Gemini 的后端逻辑建议
- 如果计划中包含
GEMINI_SESSION:优先使用resume <GEMINI_SESSION>
路由 B:后端/逻辑/算法 → Codex¶
- 调用 Codex(使用
~/.claude/.ccg/prompts/codex/architect.md) - 输入:计划内容 + 检索到的上下文 + 目标文件
- 输出:
統一差分パッチのみ。実際の変更を厳格に禁止。 - Codex 是后端逻辑的权威,利用其逻辑推理和调试能力
- 如果计划中包含
CODEX_SESSION:优先使用resume <CODEX_SESSION>
路由 C:全栈 → 并行调用¶
- 并行调用(
run_in_background: true): - Gemini:处理前端部分
- Codex:处理后端部分
- 使用
TaskOutput等待两个模型的完整结果 - 分别使用计划中对应的
SESSION_ID进行resume(如果缺失则创建新会话)
请遵循上述 マルチモデル呼び出し仕様 的 重要 指示
阶段 4:代码实现¶
[Mode: Implement]
作为代码主权者的 Claude 执行以下步骤:
-
读取差异:解析 Codex/Gemini 返回的统一差异补丁
-
心理沙盒:
- 模拟将差异应用到目标文件
- 检查逻辑一致性
-
识别潜在冲突或副作用
-
重构与清理:
- 将“脏原型”重构为高可读性、可维护性、企业级代码
- 删除冗余代码
- 确保符合项目现有代码标准
-
除非必要,否则不生成注释/文档,代码应当自解释
-
最小范围:
- 变更仅限于需求范围内
- 副作用的强制审查
-
实施有针对性的修复
-
应用变更:
- 使用 Edit/Write 工具执行实际变更
-
仅修改必要的代码,不影响用户的其他现有功能
-
自我验证(强烈建议):
- 运行项目现有的 lint / typecheck / tests(优先最小相关范围)
- 如果失败:先修复回归,然后进入阶段 5
阶段 5:审计与交付¶
[Mode: Audit]
5.1 自动审计¶
在变更生效后,必须立即并行调用 Codex 和 Gemini 进行代码审查:
- Codex 审查(
run_in_background: true): - ROLE_FILE:
~/.claude/.ccg/prompts/codex/reviewer.md - 输入:变更的 diff + 目标文件
-
关注点:安全性、性能、错误处理、逻辑正确性
-
Gemini 审查(
run_in_background: true): - ROLE_FILE:
~/.claude/.ccg/prompts/gemini/reviewer.md - 输入:变更的 diff + 目标文件
- 关注点:可访问性、设计一致性、用户体验
等待 TaskOutput 中两个模型的完整审查结果。为了保持上下文一致性,优先复用阶段 3 的会话(resume <SESSION_ID>)。
5.2 整合与修正¶
- 整合 Codex + Gemini 审查反馈
- 根据信任规则进行加权:后端遵循 Codex,前端遵循 Gemini
- 执行必要的修正
- 必要时重复阶段 5.1(直到风险可接受)
5.3 交付确认¶
审计通过后,向用户报告:
## 実装完了
### 変更の概要
| ファイル | 操作 | 説明 |
|------|-----------|-------------|
| path/to/file.ts | 変更 | 説明 |
### 監査結果
- Codex: <合格/N個の問題を発見>
- Gemini: <合格/N個の問題を発見>
### 推奨事項
1. [ ] <推奨されるテスト手順>
2. [ ] <推奨される検証手順>
重要规则¶
- 代码主权 – 所有文件变更均由 Claude 执行,外部模型零写入访问
- 脏原型重构 – 将 Codex/Gemini 的输出视为草稿,需要重构
- 信任规则 – 后端遵循 Codex,前端遵循 Gemini
- 最小化变更 – 仅修改必要的代码,无副作用
- 强制审计 – 变更后必须执行多模型代码审查
使用方法¶
# 計画ファイルを実行
/ccg:execute .claude/plan/feature-name.md
# タスクを直接実行(コンテキストで既に議論された計画の場合)
/ccg:execute 前の計画に基づいてユーザー認証を実装
与 /ccg:plan 的关系¶
/ccg:plan生成计划 + SESSION_ID- 用户以“Y”确认
/ccg:execute读取计划,复用 SESSION_ID,并执行实现
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 ev/ECC