codex-advisor

cuipengfei's avatarfrom cuipengfei

调用 OpenAI Codex 获取第二意见,批判性评估后三分类展示给用户

⭐4stars🔀1forks📁View on GitHub🕐Updated Dec 30, 2025

When & Why to Use This Skill

The Codex Advisor skill integrates OpenAI Codex to provide an intelligent 'second opinion' on your programming tasks. It goes beyond simple code generation by critically evaluating suggestions and categorizing them into actionable tiers—Adopt, Discuss, Style, or Over-engineered. This ensures developers receive high-quality, filtered feedback that prioritizes actual logic and security over minor stylistic preferences, facilitating better decision-making in the development workflow.

Use Cases

  • Automated Pull Request Review: Analyze git diffs to identify potential bugs, security vulnerabilities, or logic errors before code is merged into the main branch.
  • Refactoring and Optimization: Get a critical evaluation of existing code files to find more efficient implementations or to remove unnecessary complexity and 'over-engineering'.
  • Security and Performance Auditing: Use the skill to scan specific modules for hidden performance bottlenecks or security risks that might be missed during manual reviews.
  • Architectural Decision Support: Leverage the 'Discuss' and 'Over-engineered' labels to evaluate whether a new implementation aligns with project goals or introduces unnecessary abstraction layers.
namecodex-advisor
description调用 OpenAI Codex 获取第二意见,批判性评估后三分类展示给用户

Codex 顾问技能

调用 OpenAI Codex MCP 获取代码审查或第二意见,对结果进行批判性评估并加注标签(不静默过滤),然后结构化展示给用户做最终决策。

执行步骤

第一步:推断用户意图

根据上下文自动推断场景:

上下文特征 推断场景 处理方式
有文件引用 (@file) 代码审查 让 Codex 审查指定文件
有 git diff 上下文 变更审查 将 diff 嵌入请求
问句形式 第二意见 构建开放性咨询请求
无明确目标 整体评估 评估最近的工作

第二步:收集上下文

  1. 获取项目目录:当前工作目录
  2. 提取项目规则:读取 CLAUDE.md 中的关键规则(如有)
  3. 准备基础内容:
    • 如有文件引用:读取文件内容
    • 如有 git diff:执行 git diff 获取变更
    • 如有代码片段:从用户参数提取

注意:不需要预收集所有上下文。Codex 可以自己调用命令获取更多信息(见第三步)。

第三步:构建 Codex 请求

调用 Codex MCP:

mcp__codex-mcp__codex
- prompt: [构建的请求,包含上下文和具体问题]
- cwd: [当前项目目录]
- sandbox: read-only
- base-instructions: [从 CLAUDE.md 提取的项目规则,如有]

Prompt 模板:

请审查以下内容并提供反馈:

[上下文:文件内容/git diff/代码片段]

你可以使用以下只读命令收集更多上下文(按需使用):
- `git log --oneline -10` - 查看最近提交历史
- `git blame <file>` - 查看代码行的修改历史
- `git diff` - 查看未提交的变更
- `cat <file>` - 读取文件内容
- `rg <pattern>` - 搜索代码模式
- `find . -name "*.ts"` - 查找文件

请关注:
1. 潜在的 bug 或逻辑问题
2. 性能问题
3. 安全隐患
4. 可改进的设计

注意:请聚焦于有实际价值的建议,避免纯风格偏好的 nitpick。

第四步:处理 Codex 结果

⚠️ 核心原则:

  • 完整展示:必须向用户展示 Codex 的所有反馈,不得自行过滤或决策
  • 可读性改写:若 Codex 表述晦涩难懂,改写为易读版本但保持原意
  • 加注标签:为每条建议添加评估标签,供用户参考(非决策)

评估标签

对每条建议添加以下标签之一:

标签 适用情况
✅ 采纳 发现实际 bug、安全隐患、性能问题;提供更简洁实现;与项目模式一致
💬 讨论 有价值但需权衡;涉及架构决策;改动影响范围大
🎨 风格 仅涉及风格偏好(命名、格式);与项目现有风格不一致
🔧 过度 引入不必要抽象层;为未来需求预设设计(YAGNI);复杂度增加但收益不明

加注原则

  • 不自行决策:Claude 只加标签和理由,用户做最终决定
  • 不静默过滤:所有建议都展示给用户
  • 标签仅供参考:Claude 的评估可能有误,用户有最终决定权

第五步:结构化展示

按四分类格式展示结果(所有建议都展示,不过滤):

## Codex 反馈评估

### ✅ 建议采纳

- **[建议标题]**: [建议内容]
  - 📌 理由:[为什么这个建议有价值]

### 💬 建议讨论

- **[建议标题]**: [建议内容]
  - 🤔 讨论点:[为什么需要用户决定]

### 🎨 风格建议

- **[建议标题]**: [建议内容]
  - 💡 说明:[与项目风格的差异,供参考]

### 🔧 可能过度

- **[建议标题]**: [建议内容]
  - ⚠️ 疑虑:[为什么认为可能过度工程化]

---

**你想要采纳哪些建议?**
(注:以上标签仅供参考,你可以采纳任何建议)

第六步:使用 AskUserQuestion 让用户选择

使用 AskUserQuestion 工具呈现建议选项:

  • multiSelect: true
  • 按相关性排序,最相关的放第一位并标记 "(Recommended)"
  • 最多 4 个选项,超出的可通过 "Other" 引用

第七步:执行用户选择

根据用户选择:

  • 如果用户选择采纳某些建议:帮助实现这些建议
  • 如果用户想讨论某些建议:提供更多分析
  • 如果用户不采纳任何建议:确认并结束

Codex MCP 工具参考

# 启动新 Codex 会话
mcp__codex-mcp__codex
- prompt: string (必需) - 初始请求
- cwd: string (可选) - 工作目录
- sandbox: "read-only" | "workspace-write" | "danger-full-access"
- base-instructions: string (可选) - 覆盖默认指令

边界情况

Codex 无响应或报错

⚠️ Codex 调用失败

错误信息:[具体错误]

可能原因:

- Codex MCP 服务器未启动
- 网络问题
- API 配额用尽

建议:检查 Codex MCP 配置后重试,或直接描述你想获取的反馈。

Codex 返回空结果

Codex 审查完成,未发现需要改进的地方。

这可能意味着:

- 代码质量良好
- 或者需要更具体的审查方向

你想让我针对特定方面再次咨询 Codex 吗?

所有建议都标记为风格/过度

## Codex 反馈评估

Codex 提供了 [X] 条建议,经评估后均标记为风格建议或可能过度:

### 🎨 风格建议

[列出风格建议]

### 🔧 可能过度

[列出可能过度的建议]

---

**结论**:Claude 认为这些建议可能价值有限,但你可以查看后自行决定是否采纳。