为什么需要第二意见?
用 Claude Code 做日常开发确实高效,但用久了会发现几个痛点:
只修表面,不挖根因。 在多步骤修复和重构场景中,Claude Code 倾向于"让报错消失",而不是深入分析为什么会出错。比如一个类型错误,它可能直接加个 as any 或者一个条件判断绕过去,而不是追溯到上游数据流的问题。表面上修好了,实际上埋了雷。
计划执行力差。 即使你给了详细的实现计划,Claude Code 也经常在复杂任务中走偏 —— 跳过步骤、遗漏边界条件、或者擅自"优化"你的方案。你以为它在按计划推进,回头一看发现偏了。
Prompt 遵从度不稳定。 明确写在指令里的要求,它有时会选择性忽略。尤其是多步骤复杂任务,越到后面遵从度越低。
这些问题的根源在于:单一模型容易陷入自己的思维惯性。它不会质疑自己的修复是否真的到位。
解决方案:让另一个模型来查漏补缺。
GPT 系列模型有不同的训练数据和推理风格,对同一段代码变更往往能发现不同的问题。如果能在 Claude Code 的工作流中一键获取 GPT 的审查意见,就能有效弥补单一模型的盲区。
Codex CLI 是 OpenAI 的命令行工具,支持非交互式执行(codex exec),天然适合被集成。
5 分钟安装
方式一:复制给你的 AI
把下面这段话复制粘贴给 Claude Code(或任何 AI 编程助手),它会自动帮你完成安装:
请阅读 https://github.com/lldxflwb/claude-code-skills 帮我安装里面的 codex skill
方式二:手动安装
# 1. 安装 Codex CLI
npm install -g @openai/codex
# 2. 登录
codex login
# 3. 安装 skill
git clone https://github.com/lldxflwb/claude-code-skills.git /tmp/claude-code-skills
cp -r /tmp/claude-code-skills/skills/codex ~/.claude/skills/codex
rm -rf /tmp/claude-code-skills
安装完成后,在 Claude Code 中输入 /codex 你好 验证是否正常工作。
使用示例
在 Claude Code 中直接输入:
/codex review 一下当前的代码变更
/codex 分析这个架构方案的优缺点
/codex 给这段代码写单元测试 @src/utils.ts
/codex 这个 bug 可能的原因是什么 @error.log
Claude Code 会自动收集相关上下文(git diff、文件内容等),发送给 Codex CLI,然后呈现 GPT 的审查意见。
下面是一次真实的调用过程。我让 Codex 审查这篇博客文章本身:
❯ /codex 审查一下我们这篇博客文章的质量
⏺ Skill(codex)
⎿ Successfully loaded skill
⏺ 检测到已有 session ID: a1b2c3d4-...,需要收集博客文章内容作为上下文。
⏺ Read 1 file
⏺ Codex 任务:
- 指令: 审查博客文章,评估内容质量、结构、SEO/GEO 友好度
- 上下文: codex-with-claude-code.md (111行)
- 模式: 恢复会话 a1b2c3d4
⏺ Bash(codex exec resume a1b2c3d4-... --skip-git-repo-check --json ...)
⎿ Running in the background
⏺ Codex 后台执行中,等待结果...
⏺ session id: a1b2c3d4-...
[Codex 结果]
- 内容质量与深度:6.5/10
- 文章结构:6/10
- SEO 友好度:5.5/10
- GEO 友好度:6/10
- 对读者的实用价值:6/10
优先级最高的问题:
1. 痛点描述偏绝对,缺少案例支撑
2. "核心实现"还是概述,读者看完不知道怎么搭
3. 缺少 FAQ、限制说明、排错指南
...
Claude Code 自动完成了全部流程:加载 Skill → 检测到已有 session → 读取文章内容 → 后台调用 Codex → 呈现审查结果。整个过程无需手动干预。
实现原理
Claude Code Skill 是什么
Claude Code Skill 是一个用 Markdown 定义的可调用能力,放在 ~/.claude/skills/<skill-name>/SKILL.md。它告诉 Claude 在特定场景下该怎么做。
这个 codex skill 的结构:
~/.claude/skills/codex/
├── SKILL.md # 主文件:定义调用流程
└── setup.md # 环境检测与安装引导
SKILL.md 的 frontmatter 定义基本信息:
---
name: codex
description: "调用 Codex CLI 执行任务,获取来自 GPT 模型的独立意见。"
user-invocable: true
argument-hint: "<要让 Codex 做的事情>"
---
调用流程
当你输入 /codex review 代码 时,Skill 指导 Claude Code 按这个流程执行:
- 环境检测 — 检查
codexCLI 是否可用,不可用则提示安装 - 理解意图 — 解析你的指令
- 收集上下文 — 根据任务自动收集 git diff、文件内容等
- 后台执行 — 调用
codex exec将任务发送给 GPT 模型 - 呈现结果 — 解析 Codex 输出并展示
核心命令:
# 新建会话
cat <<'EOF' | codex exec --sandbox read-only --skip-git-repo-check --json -o output.jsonl -
请审查以下代码变更...
EOF
# 恢复会话(多轮对话)
codex exec resume <SESSION_ID> --skip-git-repo-check --json -o output.jsonl "继续追问..."
Session 恢复
Codex CLI 支持 codex exec resume <SESSION_ID> 恢复之前的对话。Skill 利用了这个特性:
- 首次调用时,从 Codex 的 JSONL 输出中提取
thread_id(session ID) - 将 session ID 保留在 Claude Code 的对话上下文中
- 后续调用自动检测到已有 session,走
resume路径
这意味着你可以和 Codex 进行多轮对话:
> /codex 0.11 和 0.9 哪个大?
→ Codex: 0.9 更大。
> /codex 你刚才说了啥?
→ Codex: 你刚才问的是 0.11 和 0.9 哪个更大。
关键设计决策
后台执行:Codex CLI 任务可能耗时较长(5-30 分钟),Skill 使用后台模式避免阻塞 Claude Code 的主流程。
敏感信息过滤:自动排除 .env、密钥文件,diff 中的 token 替换为 [REDACTED]。这不只是安全考虑 —— GPT 模型对敏感信息的审查策略比较严格,如果上下文中携带了 API key、密钥等内容,GPT 可能会直接拒绝执行整个任务。提前过滤掉这些信息,才能保证 Codex CLI 正常工作。
只读沙箱:Codex CLI 以 read-only 沙箱运行,不会修改你的任何文件。它只负责审查和建议。
限制与适用场景
适合:
- 代码变更的二次审查
- 方案评估和第二意见
- 补充测试建议
- 多角度分析问题
不适合:
- 高频低延迟的交互(Codex CLI 有启动开销)
- 超大上下文的任务(受 GPT 上下文窗口限制)
- 需要写入本地文件的操作(只读沙箱)
FAQ
Codex CLI 会不会修改我的文件?
不会。Skill 强制使用 --sandbox read-only 模式,Codex CLI 无法写入任何文件。
需要付费吗? Codex CLI 使用 OpenAI 的订阅额度,免费用户也有一定额度可用,不需要额外购买 API credits。如果你有 ChatGPT Plus 等付费订阅,额度会更充裕。
Session 丢了怎么办?
Claude Code 对话上下文被压缩时,session ID 可能丢失。丢失后下次 /codex 会自动创建新 session,不影响使用,只是失去之前的对话记忆。
为什么要过滤敏感信息? GPT 模型遵循严格的安全审查策略。如果发送的上下文中包含 API key、密钥等敏感信息,GPT 可能直接拒绝执行整个任务。
开源
这个 skill 已开源在 claude-code-skills,欢迎贡献更多 skill。