使用场景 · Codex

用 Codex 做安全审查:pull request、本地扫描和 CI

Codex Security 审查代码里的漏洞,并给出你调查所需的证据。在 GitHub 上,@codex security review 检查一个 pull request,Auto security review 可以和代码审查一起运行。在本地,Codex Security 插件扫描仓库,@openai/codex-security CLI 则从终端或 CI 运行同样的扫描。本页讲每一种方式,以及值得写下来的规则。

安全审查:Codex 能做什么

  • 在合并前检查每个改动有没有注入、缺失的授权、数据泄露和写在代码里的密钥。
  • 定时扫描整个仓库,报告发现时附上证据,而不是只丢出一条警告。
  • 把确认的发现变成补丁或 issue,最严重的先处理。
  • 修复后再检查一遍,确认漏洞已经堵上。

安全审查:Codex 的相关功能

功能作用怎么开始
@codex security review在 pull request 上发布安全发现,完整报告在 Codex 任务里在 pull request 上评论
Auto security review不用叫就会审查 pull request 里的漏洞Codex 设置里的 Review security vulnerabilities
Codex Security 插件扫描本地仓库,发现保存在 Security workbench 里在 Codex 里运行 /plugins,然后安装 Codex Security
Codex Security CLI从终端或 CI 做可重复的扫描npx @openai/codex-security scan

安全审查:怎么设置 Codex

  1. 连接工具

    第一次本地扫描用插件,脚本和 CI 用 CLI。使用 OpenAI 模型的扫描需要 Codex Security 访问权限;用你的 ChatGPT 账号登录,并把结果放在仓库之外。

    # 先登录,再扫描一个仓库;结果放在仓库之外
    npx @openai/codex-security login
    npx @openai/codex-security scan /path/to/repo \
      --auth chatgpt --output-dir /path/outside/repo/results
  2. 把规则写进 AGENTS.md

    Codex 在开始任何工作前都会读取 AGENTS.md:先是 ~/.codex/AGENTS.md,再从仓库根目录一路读到它正在工作的文件夹。把这项工作的规则写在这里;规则很长的话,放进 .agents/skills/ 下的一个 skill。见 AGENTS.md 指南。

    ## 安全审查规则
    - 审查每个涉及 auth/、billing/ 或 SQL 的 pull request。
      查找注入、缺失的授权检查、写在代码里的密钥,
      以及返回给错误用户的数据。
    - 每个发现都标上 Critical、High、Medium 或 Low,
      附上文件、行号和可能的利用方式。
    - 绝不对生产环境或任何不属于我们的东西运行漏洞利用。
      读代码,在本地测试。
    - 修复一律开 pull request;绝不直接推送到 main。
  3. 不打开交互界面运行

    codex exec 运行一个任务后就退出。进度输出到 stderr,最终消息输出到 stdout;-o 还会把它写进文件,--json 则以事件流输出。沙箱默认只读,除非传入 --sandbox workspace-write。

    # 按 AGENTS.md 里的规则,对这个分支做一次安全检查
    codex exec "对比 main 审查这个分支的安全问题,遵循 AGENTS.md"
    
    # 从 CI 扫描仓库,不显示实时面板
    npx @openai/codex-security scan "$REPOSITORY" --auth chatgpt \
      --output-dir "$SCAN_DIR" --headless
  4. 设成定时运行

    在 ChatGPT 桌面应用或网页版里创建定时任务(CLI 不管理定时任务),或者从 cron 运行 codex exec。见如何让 Codex 主动工作。

来源:Codex 文档

局限与安全

  • 它读的是你本地仓库里的代码,而不是正在运行的网站,所以发现不了配置错误的服务器。
  • 扫描结果不确定:两次运行可能发现不同的问题。要定期跑,而不是跑一次就完。
  • 它是对扫描器和依赖告警的补充,不能取代它们,也不能取代渗透测试。
  • Codex 默认在沙箱里运行命令:写入只限于工作区,网络关闭。danger-full-access 只留给隔离的 runner 或容器。

安全审查,用 Claude Code 还是 Codex?

规则可以通用。只在 AGENTS.md 里写一次,再在 CLAUDE.md 里放一行 @AGENTS.md,两个 agent 读的就是同一个文件。

另一个 agent 的分步做法:Claude Code 安全审查。

Claude CodeCodex
规则文件CLAUDE.mdAGENTS.md
连接工具claude mcp addcodex mcp add 或 config.toml
无人值守运行claude -pcodex exec
定时/schedule、桌面定时任务、/loopChatGPT 应用里的定时任务、cron
内置功能(安全审查)/security-review、两个安全插件@codex security review、Codex Security
用 Crewmark

安全审查,交给专人负责

命令只在有人记得时才会运行。Crewmark 把你自己的 Codex 变成一个 AI 员工,有岗位、量化目标、工作时间和心跳,工作就会按时完成,并出现在看板上。

  1. 从岗位开始

    AI 软件工程师,岗位说明里写上这些规则。

  2. 把工作放到它的看板上

    把这项工作加成周期 issue。员工按心跳醒来,做完后在评论里汇报。

  3. 相关内容

    不属于安全问题的 bug,见代码审查。

常见问题

怎么在 pull request 上让 Codex 做安全审查?

在 pull request 上评论 @codex security review。Codex 会把发现发在那里;完整报告在 Codex 任务的 Security Report 标签页下。

Codex 的代码审查和安全审查有什么区别?

代码审查标出各种严重的 bug。安全审查在漏洞上挖得更深,并生成一份安全报告。两者可以在同一个 pull request 上运行。

能在 CI 里运行 Codex 安全扫描吗?

能,用 @openai/codex-security 包里的 Codex Security CLI;OpenAI 的文档里有 GitHub 和 GitLab 的配置示例。

已于 2026 年 11 月 13 日对照 Claude Code 和 OpenAI Codex 的官方文档核对。

安全审查,交给跑在 Codex 上的 AI 员工。

Crewmark 把 Claude Code 和 Codex 会话变成有岗位、目标、工作时间和心跳的 AI 员工。