今天发点适合双剑合璧的东西。在Claude Code 和 Codex 之间一直存在谁更好用的争议但是都成年人了还做什么选择我都要。这个 GitHub 的 codex-plugin-cc 项目就是为了解决这个争议而生的装上可以在 Claude Code 内部运行 Codex 了。01项目简介codex-plugin-cc 可以理解成把 OpenAI Codex 接进 Claude Code 的桥接插件。项目地址https://github.com/openai/codex-plugin-cc使用过程中 Claude Code 还是主窗口Codex 作为第二个编码代理被 Claude 调用用来做代码审查、挑战式审查、任务委托、会话迁移。插件调用的是你机器上的全局 codex 命令也就是本机 Codex CLI 和 Codex app-server。核心功能/codex:review让 Codex 做代码审查最常用的审查流程是三步/codex:review --background/codex:status/codex:result第一条命令会启动 Codex 代码审查并放到后台运行。/codex:status 用来查看审查进度。任务完成后再用 /codex:result 查看结果。如果要审查当前分支相对 main 的全部改动可以输入/codex:review --base main --background/codex:adversarial-review让 Codex 挑战方案适合检查方案是否站得住。Codex 会重点检查设计取舍、隐藏假设、边界条件和失败模式。/codex:rescue把任务交给 Codex 调查或修复把一个具体问题交给 Codex 接手。适合处理排查类任务构建失败、测试失败、复杂 bug、旧任务继续推进。/codex:transfer把 Claude 会话转到 Codex 继续适合已经在 Claude Code 里聊了很多上下文后面想切到 Codex App 或 Codex CLI 继续。02项目实测安装起来很简单大家先在 Claude Code 输入框输入/plugin marketplace add出现 Add Marketplace 弹窗后然后填openai/codex-plugin-cc添加成功后再回到 Claude Code 输入框输入/reload-plugins最后输入/codex:setupcase 1 代码审查先让 Claude Code 做一个新功能提示词给当前登录页增加功能连续认证失败 3 次后禁用登录按钮 30 秒并显示剩余秒数。只有用户名或密码错误才计入失败次数网络错误和服务器错误不能计入。要求补测试。只修改必要文件先不要提交。然后我们运行/codex:review --backgroundCodex审查出两条问题1 .claude/settings.local.json 权限问题.claude/settings.local.json:11Bash(node *) 授予了任意 Node 脚本的无审批执行权限2. 登录锁定倒计时问题src/components/LoginForm.tsx:14第三次认证失败前页面已打开一段时间now 仍保持挂载时的值第一次锁定渲染可能显示虚高倒计时。我们可以让 Claude Code 继续改提示词根据 Codex review 修复下面的问题。只改必要文件补充或调整测试修完后运行 npm test 和 npm run build不要提交。1. 不要把 .claude/settings.local.json 作为本次功能改动提交。如果只是本地权限设置请恢复该文件到本次任务前状态。2. 修复 src/components/LoginForm.tsx 的锁定倒计时问题触发第三次认证失败并设置 lockoutUntil 时要同步刷新 now确保锁定开始后的首次渲染倒计时从 30 秒开始而不是使用页面挂载时的旧 now 值。然后再 review 一次改完又审查出代码可能会把最后一次认证失败算成第 3 次连续认证失败。继续再让 Claude Code 改提示词根据 Codex review 修复下面的问题。只改必要文件补充或调整测试修完后运行 npm test 和 npm run build不要提交。[P2] 非认证错误后应重置计数器 — src/components/LoginForm.tsx:55当前 network 或 server 错误分支不会重置 failCount。序列 auth → auth → network → auth 会错误触发锁定尽管这四次认证失败并非连续。如果需求是“连续认证失败 3 次”则应在非认证错误时重置计数器打断连续链条。再 review 一次好的代码审查过关case 2 挑战方案我们先让Claude Code做个给登录页增加记住用户名功能提示词给当前登录页增加“记住用户名”功能用户勾选后下次打开页面自动填充上次成功登录的用户名取消勾选后清除已保存用户名。要求考虑 localStorage 不可用的情况补测试。只修改必要文件先不要提交。然后让 Codex 挑战方案看方案是否靠谱/codex:adversarial-reviewCodex 对于Claude Code 的方案挑战性审查出了这些问题safeRemoveStorage 吞掉删除失败用户名长期保存在 localStorageclaude/settings.local.json 混进功能改动初始化时读取 localStorage 两次safeSetStorage 的保存失败被忽略纯空格用户名会通过校验saved_username 这个 key 太通用没测 removeItem 抛异常时的行为没测 setItem 保存失败时是否给用户反馈没测“勾选记住用户名 登录失败”时不应保存用户名没测存储值是纯空格时不应初始化为已记住用户名vi.stubGlobal(localStorage, ...) 没有在 afterEach 清理可能污染其他测试我们可以就这些问题继续让 Claude Code 改进提示词根据 Codex 挑战式审查结果修复明确问题。只改必要文件补充或调整测试修完后运行 npm test 和 npm run build不要提交。需要修复1. 不要把 .claude/settings.local.json 混入本次 feature diff。如果只是本地权限变化请恢复该文件到本次任务前状态。2. 修复取消“记住用户名”时的隐私问题safeRemoveStorage 不要吞掉 removeItem 失败。removeItem 失败时界面不能假装已经清除成功需要向用户展示明确错误状态或保持记住用户名勾选状态。3. 修复保存失败的问题safeSetStorage 不要被忽略。用户勾选“记住用户名”并成功登录但 localStorage.setItem 失败时要有用户可见反馈。4. 初始化读取 localStorage 时只读一次让 username 初始值和 rememberUsername 状态都从同一个读取结果派生避免不一致。5. 存储里的用户名需要 trim 后校验。纯空格不应该初始化为已记住用户名。6. 把 localStorage key 从 saved_username 改成应用内命名空间例如 codex_login_lab.saved_username。7. 给“记住用户名”增加过期时间例如 7 天 TTL。保存时写入 { value, expiresAt }读取时过期就清除并视为无保存值。8. 补测试覆盖- removeItem 抛异常时的行为- setItem 失败时的用户可见反馈- 勾选记住用户名但登录失败时不应保存尝试的用户名- localStorage 存储纯空格时不应初始化为已记住用户名- localStorage mock/stub 需要 afterEach 清理避免污染其他测试完美解决12个问题全修复了。case 3 问题交付当 Claude Code 写的代码有问题时也可以交给 Codex来修复。我们让 Claude Code 制作一个小 bug 来体现这个功能提示词为了测试 Codex rescue 流程请在当前登录页里故意制造一个小 bug让登录成功后不再清空密码输入框。只改业务代码不改测试不要提交。bug已经制造好了我们补个测试给他测出来为“登录成功后清空密码输入框”补一个测试。只加测试不改业务代码不要提交。接下来让 Codex 来修复/codex:rescue --background fix the failing test with the smallest safe patchCodex 做了正确的最小修复很不错const result await login(username.trim(), password);setPassword();setSuccessMessage(欢迎回来${result.displayName});case 4 会话转移我们刚才在 Claude Code 里做了很多事正好适合 transfer在 Claude Code 里输入/codex:transfer会给我们一个会话 ID 我们可以直接在 Codex 里继续这个对话在PowerShell 里输入codex resume 019f402e-3ff0-7d42-975d-c88c8bf1e45f可以看到我们与 Claude Code 的对话全都传过来了接下来就可以用 Codex 来继续这个项目了。03挖一挖AI 编程不会收敛成一个 all-in-one 工具。因为真实开发更像一条业务流审查、修复、上线每一步都可能适合不同 AI。GitLab 2026 AI Accountability Report91% 组织已经同时使用 2 个以上 AI 编码工具54% 使用 3 个以上。说明使用痛点已经从有没有 AI 工具用变成能不能串起来用。Claude Code 和 Codex 串起来用不是为了炫技而是为了 AI 写完再由另一个 AI 审一遍。codex-plugin-cc让Claude Code 负责主对话和实现Codex 负责第二视角审查、方案挑战、问题接手和会话延续。这个组合能减少很多真实开发里的隐性成本反复切工具、重复交代上下文、人工补审查、测试失败后重新定位问题。对我们来说codex-plugin-cc可以当成一个随叫随到的代码 reviewer。写完功能后让 Codex 看一遍边界条件、测试缺口和隐藏风险比自己盯着 diff 硬看更容易发现问题。codex-plugin-cc不是让开发者再多装一个工具而是把两个 AI 编程助手接进同一个工作现场。未来 AI 写代码会越来越常见真正拉开差距的会是怎么组织这些 AI 助手让代码更稳、审查更早、交付更快。