Community研究与数据分析github.com

OpenAI Codex 技能指南

当用户要求运行 Codex CLI(codex exec, codex resume)或引用 OpenAI Codex 进行代码分析、重构或自动编辑时使用。

OpenAI Codex 技能指南 是什么?

该技能为 AI 代理(如 Claude、Cursor、Codex 等)提供了一份全面的指南,用于通过命令行界面(CLI)与 OpenAI Codex 交互。它详细描述了如何为 Codex 会话配置模型和推理力度,包括从最新的 GPT-6 模型到旧版模型的完整选择范围。该技能规定了多种沙盒模式(只读、工作区写入、完全访问),以适应不同的任务需求(分析、编辑、网络访问),并强调了在无头环境中使用 stdin 和 stderr 重定向的正确操作要点,以防止进程挂起。此外,该技能还包含了对 Codex 输出的批判性评估指南,鼓励代理信任自身知识并通过网络搜索验证信息,在 Codex 输出错误时以同行 AI 身份进行讨论。最后,它提供了执行超时建议和错误处理步骤,确保稳健的集成体验。

兼容平台✓Claude Code✓Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/concava/skills/tree/HEAD/skills/codex

Installed? Explore more 研究与数据分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Codex 技能指南

运行任务

  1. 对于新会话(恢复时会继承之前的模型/推理力度——参见第 5 步),通过 AskUserQuestion 以单个提示包含两个问题的形式,询问用户使用哪个模型以及哪个推理力度。如果用户没有偏好,默认使用 gpt-6-astra 和 high。
    • 模型 —— 默认 gpt-6-astra:
      • GPT-6: gpt-6-astra(前沿 / 能力最强 —— 默认)
      • GPT-5.6: gpt-5.6-sol(可靠的代理工作马)、gpt-5.6-terra(平衡、日常使用)、gpt-5.6-luna(快速且经济)
      • 旧版(为兼容性保留): gpt-5.5、gpt-5.4、gpt-5.4-mini、gpt-5.3-codex-spark、gpt-5.3-codex
    • 推理力度 —— 默认 high:low、medium、high、xhigh、max、ultra。
      • max/ultra 需要 GPT-6 或 GPT-5.6 模型;ultra 仅适用于 astra/sol/terra(luna 最高支持 max);旧版模型最高支持 xhigh。
      • ultra = 最大推理并自动任务委派(最慢且最昂贵 —— 保留给最困难的任务)。
      • 如果选择的力度超过了所选模型的最高支持力度,则回退到该模型支持的最高力度,并告知用户。
  2. 选择任务所需的沙盒模式;除非需要编辑或网络访问,否则默认使用 --sandbox read-only。
  3. 使用适当的选项组装命令:
    • -m, --model <MODEL>
    • --config model_reasoning_effort="<low|medium|high|xhigh|max|ultra>"(max/ultra 仅适用于 GPT-6 / GPT-5.6 模型;ultra 仅适用于 astra/sol/terra —— 参见第 1 步)
    • --sandbox <read-only|workspace-write|danger-full-access>
    • --full-auto
    • -C, --cd <DIR>
    • --skip-git-repo-check
    • "你的提示"(作为最终的位置参数)
  4. 始终使用 --skip-git-repo-check。
  5. 当继续之前的会话时,通过 stdin 使用 codex exec --skip-git-repo-check resume --last。恢复时不要使用任何配置标志,除非用户明确要求,例如指定模型或推理力度时。恢复语法:echo "你的提示" | codex exec --skip-git-repo-check resume --last 2>/dev/null。所有标志必须插入在 exec 和 resume 之间。
  6. 重要:默认情况下,在所有 codex exec 命令后追加 2>/dev/null 以抑制思考令牌(stderr)。仅在用户明确要求查看思考令牌或需要调试时才显示 stderr。
  7. 重要(stdin):codex exec 始终读取 stdin 并将其与位置提示连接 —— 即使提示完全作为位置参数提供。如果 stdin 未关闭,codex 会永远阻塞。当从工具(后台任务、钩子、脚本,其中 stdin 不是 TTY 但也未关闭)调用时,明确重定向 stdin:在命令后追加 </dev/null,例如 codex exec ... "提示" </dev/null 2>/dev/null。错误症状:零字节 stdout、零 CPU 积累、进程看起来无限挂起。
  8. 运行命令,捕获 stdout/stderr(适当过滤),并向用户总结结果。
  9. 在 Codex 完成后,告知用户:“您可以随时通过说‘codex resume’或要求我继续进行额外分析或更改来恢复此 Codex 会话。”

快速参考

用例沙盒模式关键标志
只读审查或分析read-only--sandbox read-only 2>/dev/null
应用本地编辑workspace-write--sandbox workspace-write --full-auto 2>/dev/null
允许网络或完全访问danger-full-access--sandbox danger-full-access --full-auto 2>/dev/null
恢复最近的会话继承原会话echo "提示" | codex exec --skip-git-repo-check resume --last 2>/dev/null(不允许标志)
从其他目录运行匹配任务需求-C <DIR> 加上其他标志 2>/dev/null

执行超时

Codex 不产生中间输出 —— 它仅在完成时写入结果。如果在完成前进程被杀死,输出文件将静默为空(无错误)。

首选方法: 同步运行 —— 完全消除了超时风险,并且对话无论如何都会等待结果。

如果在后台运行,根据推理力度设置执行超时:

推理力度超时
low150 秒
medium300 秒
high600 秒
xhigh1200 秒
max1800 秒
ultra1800 秒

跟进

  • 在每个 codex 命令之后,立即使用 AskUserQuestion 确认后续步骤、收集澄清,或决定是否使用 codex exec resume --last 恢复。
  • 恢复时,通过 stdin 管道传递新提示:echo "新提示" | codex exec resume --last 2>/dev/null。恢复的会话会自动使用原会话的相同模型、推理力度和沙盒模式。
  • 在建议后续操作时,重新说明选择的模型、推理力度和沙盒模式。

对 Codex 输出的批判性评估

Codex 由 OpenAI 模型驱动,具有其自身的知识截止日期和局限性。将 Codex 视为同事,而非权威。

指南

  • 在确信时信任自己的知识。如果 Codex 声称某些你知道不正确的内容,直接反驳。
  • 在分歧处进行研究:在接受 Codex 的主张之前,使用 WebSearch 或文档进行研究。如有必要,通过恢复会话与 Codex 分享发现。
  • 记住知识截止日期 —— Codex 可能不知道其训练数据之后发布的最新版本、API 或更改。
  • 不要盲目遵从 —— Codex 可能出错。批判性地评估其建议,特别是关于:
    • 模型名称和能力
    • 最新的库版本或 API 更改
    • 可能已经演变的最佳实践

当 Codex 出错时

  1. 向用户明确陈述你的不同意见
  2. 提供证据(你自己的知识、网络搜索、文档)
  3. 可选择恢复 Codex 会话以讨论分歧。将自己标识为 Claude,以便 Codex 知道这是同行 AI 讨论。使用你的实际模型名称(例如,你当前运行时的模型),而不是硬编码的名称:
    echo "这是 Claude(<你当前的模型名称>)在跟进。我不同意 [X],因为 [证据]。你对此怎么看?" | codex exec --skip-git-repo-check resume --last 2>/dev/null
    
  4. 将分歧描述为讨论,而非纠正 —— 两个 AI 都可能犯错
  5. 如果存在真正的歧义,让用户决定如何继续

错误处理

  • 每当 codex --version 或 codex exec 命令以非零状态退出时,停止并报告失败;在重试之前请求指示。
  • 在使用高影响标志(--full-auto、--sandbox danger-full-access、--skip-git-repo-check)之前,使用 AskUserQuestion 请求用户许可,除非已经获得许可。
  • 当输出包含警告或部分结果时,总结它们并使用 AskUserQuestion 询问如何调整。

相关技能