SuperAPI AI 工具集

codex-review

编程与开发

查看项目

更新于 10-15 14:35

技能介绍

用途

codex-review 用于通过 OpenAI Codex CLI(codex review)运行一次独立的代码审查。它的价值在于提供来自不同模型家族的第二意见——与编写代码的模型不同,Codex 能发现 Claude 因作者偏见而遗漏的问题。

该技能与 brains-trust(通用的多模型意见工具)互补,但更加专门化:它具备 git 感知能力,使用经过调优的审查提示词,并保存结构化输出。

何时使用

  • 在有意义的改动之后,提交或发布之前
  • 打开 PR 之前,用独立审查者进行自审
  • 当感觉某处有问题但无法说清是什么时
  • 对活跃开发中的项目进行周期性的全应用审查
  • 当用户明确要求“独立”或“第二意见”审查时

不适用场景

  • 琐碎改动(拼写错误、单行修复)
  • 研究性问题或架构讨论——应改用 brains-trust
  • 自动修复问题——本技能仅提供建议

预检

确认 Codex CLI 已安装:

which codex

如果缺失:告知用户安装它(macOS 上使用 brew install codex,或参见 https://github.com/openai/codex)并停止,不要继续。

确认认证:如果未登录,第一次 codex review 调用会明确失败。若发生这种情况,指示用户运行 codex login 并停止。

确定审查范围

根据用户的要求选择范围标志:

用户意图 标志
“codex review” / “review the app” / “full review” / 默认 无标志(审查当前 HEAD 的整个应用)
“review my changes” / “review what I just did” / “review uncommitted” --uncommitted
“review this branch vs main” / “review the PR” --base main(或用户指定的分支)
“review commit abc123” --commit abc123

默认是整应用审查。一个不带限定词的“codex review”意味着审查 HEAD 处的整个代码库——而不仅仅是未提交的改动。只有当用户明确指代其近期/未提交的工作时才使用 --uncommitted。

如果有歧义,询问一次。不要在提交或分支上猜测。

运行审查

规范的审查提示词位于本技能旁边的 prompt.md 中。通过 stdin 管道传入以避免 shell 转义问题:

mkdir -p .jez/reviews
TS=$(date +%Y-%m-%d-%H%M)
OUT=".jez/reviews/codex-${TS}.md"
SKILL_DIR="$(dirname "$0")"  # 或使用技能的绝对路径

# 示例:未提交的改动
cat "${SKILL_DIR}/prompt.md" | codex review --uncommitted - 2>&1 | tee "$OUT"

其他范围:

# 对比基础分支
cat prompt.md | codex review --base main - 2>&1 | tee "$OUT"

# 指定提交
cat prompt.md | codex review --commit abc123 - 2>&1 | tee "$OUT"

# 当前 HEAD(无范围标志)
cat prompt.md | codex review - 2>&1 | tee "$OUT"

在大型 diff 上,codex review 可能需要几分钟。让它运行。

向用户汇总

Codex 完成后:

  1. 打印输出路径:Report saved to .jez/reviews/codex-<timestamp>.md
  2. 读取保存的报告,提取最重要的发现(Critical 和 High 下的任何内容)
  3. 在聊天中内联展示它们,保留 file:line 引用
  4. 主动提出处理具体发现:“Want me to fix the SQL injection in auth.ts:42?”

规则

  • 仅提供建议。绝不自动应用 Codex 的建议。阅读发现,与用户讨论,经其批准后再修复。
  • 不要把 Claude 的推理泄漏到提示词中。prompt.md 文件刻意保持中立——Codex 审查的是代码,而不是 Claude 关于代码的叙述。独立性正是关键所在。
  • 保存到 .jez/reviews/,绝不保存到 .claude/(受保护目录)。
  • 每次运行一份报告。不要覆盖——时间戳使每次运行唯一,以便用户比较。
  • 如实报告 Codex 实际发现的内容。不要软化、编辑或跳过你不同意的发现。如果你认为 Codex 在某点上错了,在展示 Codex 所说内容之后,作为你自己的观点说出来。

验证

如果满足以下条件,说明该技能工作正常:

  • 预检正确检测到缺失的 codex 二进制文件
  • 根据用户意图选择了正确的范围标志
  • 报告文件出现在 .jez/reviews/ 中,且时间戳合理
  • 文件包含按严重程度排序的发现,并带有 file:line 引用
  • Claude 展示最重要的发现,而不自动修复它们