OpenClaw AI Code 场景路由器
OpenClaw AI Code Scenario Router / 开发任务选型器
根据你的开发任务语义,自动匹配最优 AI Code CLI 工具和模型,给出可直接执行的命令。
⚠️ 前置要求: 使用前请配置 .env 文件(复制 .env.example 并填写实际 API Key)。
一、工具能力地图
外网工具安装方式(内网
claude-internal→ 外网claude,以此类推):
| 工具 | 外网安装方式 | 内网对应 | 核心优势 | 上下文 | 配置环境变量 |
|------|------------|----------|---------|--------|-------------|
| claude | npm install -g @anthropic-ai/claude-code | claude-internal | agentic loop 最强,多轮重构/TDD | 200K / 1M | ANTHROPIC_API_KEY |
| gemini | npm install -g @google/gemini-cli | gemini-internal | 超长上下文,支持多模型 | 1M | GEMINI_API_KEY |
| codex | npm install -g @openai/codex-cli | codex-internal | diff-patch 精确修改,算法/前端 | 128K | OPENAI_API_KEY |
| codebuddy | npm install -g codebuddy | codebuddy | 最通用,非交互完全支持,CI 首选 | 最高 1M | CODEBUDDY_API_KEY |
配置说明:所有 API Key 应通过
.env文件或环境变量管理,详见.env.example模板。 工具名映射:内网claude-internal→ 外网claude,gemini-internal→gemini,codex-internal→codex。
二、场景路由图谱
🔨 通用开发场景
| # | 场景 | 首选工具 + 模型 | 次选 | 核心理由 |
|---|------|----------------|------|---------|
| 1 | 大型项目重构 | claude(交互) | codebuddy --model claude-sonnet-4 | 跨文件依赖理解最深,主动找循环依赖 |
| 2 | 精确定点修改 | codex(交互) | codebuddy --model gpt-5-codex | diff-patch 只改目标,不动其他文件 |
| 3 | 复杂 Bug 修复(竞态/并发) | codex(交互) | codebuddy --model gpt-5-codex | 自适应推理,精准定位竞态条件 |
| 4 | 跨大量文件架构分析 | gemini -m gemini-3-pro | codebuddy --model gemini-3-pro | 1M 上下文,一次读 250+ 文件 |
| 5 | 新功能开发(多步多文件) | claude(交互) | codebuddy --model claude-sonnet-4 | agentic loop 最强,自主决策 |
| 6 | 代码审查 / PR Review | claude(交互) | codebuddy --model claude-sonnet-4 | 分析细致,边界处理完善 |
| 7 | 算法实现 | codebuddy --model gpt-5-codex | codex(交互) | GPT 系列算法训练最充分 |
| 8 | 前端开发(React/TS/CSS) | codebuddy --model gpt-5-codex | codex(交互) | GPT-5.x 专门优化前端 |
| 9 | 快速原型 / MVP | codebuddy --model gemini-3-flash | gemini -m gemini-3-flash | 速度快,性价比高 |
| 10 | 超大上下文(百万 token) | codebuddy --model claude-sonnet-4-1m | gemini -m gemini-2.5-pro | 最高 1M 上下文 |
| 11 | 遗留系统维护 | claude(交互) | codebuddy --model claude-sonnet-4 | 理解老代码能力强 |
| 12 | CI / 自动化(非交互) | codebuddy -p -y --model <model> | gemini -p -m <model> | 非交互支持完善,CI 首选 |
| 13 | 敏感仓库 / 数据合规 | codebuddy --model <privacy-model> | — | 数据隐私要求,使用支持数据隐私的模型 |
| 14 | 文档生成 / README | claude(交互) | codebuddy --model claude-haiku-4 | 语言组织能力强 |
| 15 | 学习新技术 / 快速查阅 | gemini(交互) | codebuddy --model gemini-3-flash | 可联网获取最新文档 |
🧪 测试开发场景
| # | 场景 | 首选工具 + 模型 | 次选 | 核心理由 |
|---|------|----------------|------|---------|
| 16 | 单测生成 | claude(交互) | codebuddy --model claude-sonnet-4 | 测试边界分析最深 |
| 17 | TDD 驱动开发 | claude(交互) | — | CLAUDE.md + PostToolUse hooks 自动跑测试,Red-Green-Refactor 闭环 |
| 18 | 存量代码安全网 | claude(交互) | codebuddy --model claude-sonnet-4 | 能区分"预期内失败"和"意外破坏" |
| 19 | 复杂 Bug + 边界用例 | codex(交互) | codebuddy --model gpt-5-codex | 擅长模拟并发/竞态,生成复现 case |
| 20 | E2E 测试脚本生成 | gemini(交互) | codebuddy --model gemini-3-pro | 超长上下文一次读完整页面结构 |
| 21 | 自愈式 E2E 架构设计 | claude(交互) | — | 多轮 agentic loop,设计 ReAct 循环 + 分层定位策略 |
| 22 | CI 自动跑测试 + 报告 | codebuddy -p -y --model claude-haiku-4 | codebuddy -p -y --model gemini-3-flash | 省 credit 用 Haiku,或免费 Flash |
| 23 | 测试边界扩充(补漏 case) | claude(交互) | codebuddy --model claude-sonnet-4 | 找盲点:并发/幂等/货币精度 |
📐 SDD / Harness Engineering 场景
| # | 场景 | 首选工具 + 模型 | 次选 | 核心理由 |
|---|------|----------------|------|---------|
| 24 | SDD:写 Spec / proposal / design | claude(交互) | — | 多轮对话打磨,生成 WHEN/THEN 验收标准 |
| 25 | SDD:按 tasks.md 逐任务执行 | codebuddy -p -y --model <model> | gemini -p -m <model> | 每次一个原子任务,幻觉最低,可批量 |
| 26 | SDD:规格 vs 实现对齐验证 | codex(交互) | codebuddy --model gpt-5-codex | diff-patch 天然适合"按 spec 比对" |
| 27 | Harness:CLAUDE.md + hooks | claude(交互) | — | 最懂自己的 Harness 格式;60 行原则 |
| 28 | Harness:lint rules / 架构适应度函数 | codex(交互) | codebuddy --model gpt-5-codex | 精确代码生成,TS 架构测试、ESLint 规则 |
| 29 | Harness:子 Agent 编排 | codebuddy --model claude-opus-4(父)+ --model claude-sonnet-4(子) | — | Opus 编排,Sonnet 执行,防上下文污染 |
| 30 | TDAD:spec → tests → 执行全链路 | claude 写 spec → codebuddy 批量执行 | — | 交互设计 + 非交互批量,最大可控性 |
三、决策流程
Step 1:识别任务类型
用户输入 → 提取关键词:
重构/架构/依赖 → 场景 #1, #5
改一个地方/定点修改 → 场景 #2
bug/竞态/并发 → 场景 #3, #19
读大量文件/全库分析 → 场景 #4
PR review/代码审查 → 场景 #6
算法/数据结构 → 场景 #7
前端/React/TS/CSS → 场景 #8
原型/MVP/快速实现 → 场景 #9
百万 token/超大项目 → 场景 #10
单测/测试生成 → 场景 #16, #22, #23
TDD → 场景 #17
E2E → 场景 #20, #21
CI/非交互/脚本 → 场景 #12, #22, #25
SDD/spec/验收标准 → 场景 #24, #26, #30
Harness/hooks/规则 → 场景 #27, #28, #29
敏感仓库/数据合规 → 场景 #13
文档/README → 场景 #14
学习/查阅新技术 → 场景 #15
Step 2:确认 token 余量
联动
openclaw-ai-code-token-governorskill 进行额度检查(外网版本需适配为查询各平台 API quota)。 如 credit 不足,自动切降级模型(见 token-governor skill)。
Step 3:给出推荐
🎯 推荐:<工具> + <模型>
原因:<1句话>
▶ 即将执行:
<完整命令>
💰 预估 credit:<区间>
📦 备选(省 credit):<备选命令>
确认执行?[y/N]
Step 4:执行
exec(
command = "<完整命令>",
pty = true, # 所有工具必须
workdir = "<项目目录>",
timeout = 120~600, # 轻120s / 中300s / 重600s
)
各工具非交互命令模板
# codebuddy(最通用,非交互支持完善,CI 首选)
codebuddy -p "<任务>" -y --model <model-id>
# 需要环境变量: CODEBUDDY_API_KEY
# gemini(支持 -p 只读,-y 写文件)
gemini -p "<分析/问答任务>" -m <model-id> # 只读
gemini -y -m <model-id> "<修改文件任务>" # 写文件
# 需要环境变量: GEMINI_API_KEY
# claude 非交互
claude -p "<任务>"
# 需要环境变量: ANTHROPIC_API_KEY
# codex 非交互
codex exec "<任务>"
git diff | codex exec "<任务>"
# 需要环境变量: OPENAI_API_KEY
执行后处理
- ✅ 正常 → 展示摘要,询问后续
- ❌ 429 → 调用
openclaw-ai-code-token-governorskill 处理降级 - ❌ 配额不足 → 提示检查 API quota 或切换备选模型
- ❌ API Key 报错 → 提示检查
.env配置或环境变量 - ❌ 超时 → 建议切更大上下文工具
- ❌ 乱码/卡死 → 自动切备选模型重试
四、场景快速命令手册
| 场景关键词 | 推荐命令 | Credit |
|-----------|---------|--------|
| 重构/新功能/多轮交互 | claude(交互) | 最高 |
| 定点修改/算法/前端 | codex(交互) | 中等 |
| 全库分析/E2E/超长上下文 | gemini -m gemini-3-pro | 中等 |
| CI/非交互(写文件)| codebuddy -p "任务" -y --model claude-haiku-4 | x0.67 |
| CI/非交互(免费)| codebuddy -p "任务" -y --model gemini-3-flash | x0.00 |
| TDD(交互闭环)| claude(交互 + CLAUDE.md hooks) | 最高 |
| SDD 批量执行 | codebuddy -p "任务" -y --model claude-sonnet-4 | x2.00 |
| Harness 设计 | claude(交互) | 最高 |
| 敏感仓库 | codebuddy -p "任务" -y --model <privacy-model> | 取决于模型 |
| 百万 token | codebuddy -p "任务" -y --model claude-sonnet-4-1m | x2.00 |
| 学习/查阅新技术 | gemini(交互) | 中等 |
五、preflight 检查
执行前检查 CLI 工具安装状态和 API Key 配置:
# 检查工具是否已安装
which claude || npm install -g @anthropic-ai/claude-code
which codex || npm install -g @openai/codex-cli
which gemini || npm install -g @google/gemini-cli
which codebuddy || npm install -g codebuddy
# 检查 API Key 是否配置
source .env
echo "ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY:+已配置}"
echo "OPENAI_API_KEY: ${OPENAI_API_KEY:+已配置}"
echo "GEMINI_API_KEY: ${GEMINI_API_KEY:+已配置}"
echo "CODEBUDDY_API_KEY: ${CODEBUDDY_API_KEY:+已配置}"
工具未安装时自动安装;API Key 未配置时输出配置说明并中止。
Scan to join WeChat group