安装 Codex Security 插件并配置 CI 扫描
安装 codex-security@openai-curated,通过 security-diff-scan 审查代码变更。CI 使用独立 CODEX_HOME,扫描密钥仅传入扫描进程。
安装 codex-security@openai-curated,通过 security-diff-scan 审查代码变更。CI 使用独立 CODEX_HOME,扫描密钥仅传入扫描进程。
这是 Learn 上 Codex Security plugin 给编码 CLI 的插件路径,不是 npx @openai/codex-security scan 那套独立扫描产品。插件会在桌面打开 Security 侧栏,并提供 $codex-security:security-diff-scan、$codex-security:fix-finding 这类技能。只扫你有权评估的代码。
桌面:Plugins 搜 Codex Security,装完启用,再打开 Security。CLI 交互:
codex
# /plugins 搜 Codex Security,选 Install plugin
# 0.154 起先看当前会话;当前会话没有再 /new
无头 / CI 才写 marketplace id:
npm install --global @openai/codex
codex plugin add codex-security@openai-curated
codex plugin list
id 就是 codex-security@openai-curated。不要写成 plugin install codex-security@openai-curated。IDE 扩展没有 /plugins,用 CLI 这条。装完先看当前会话;没有再新开。桌面改 marketplace 仍要重启应用。
手动审 diff:在会话里让它 Use $codex-security:security-diff-scan to review my current uncommitted changes for security regressions. 指定提交或分支时,本地要有 base / head;Codex 不会给你切分支。
CI 用 codex exec 调同一条技能,不要把扫描密钥铺到整个 job。官方例子隔离 CODEX_HOME,把密钥映射成 CODEX_API_KEY:
export CODEX_HOME="$RUNNER_TEMP/codex-home"
export TMPDIR="$RUNNER_TEMP/codex-security"
npm install --global @openai/codex
codex plugin add codex-security@openai-curated
CODEX_API_KEY="$CODEX_SECURITY_API_KEY" codex exec \
--sandbox workspace-write \
"Use \$codex-security:security-diff-scan to review changes from $BASE_REVISION to $HEAD_REVISION for security regressions. Do not modify the checkout."
workspace-write 只是让扫描写临时产物;提示仍要求不要改 checkout。产物在 $TMPDIR/codex-security-scans/,入口是 report.md,另有 findings.json、scan-manifest.json、coverage.json。fork PR 不要带密钥。依赖具体插件能力前先看 plugin changelog。组织允许 openai/codex-action 时,仍要先装插件,并把 Action 的 codex-home 指到同一 CODEX_HOME。
结构化 JSON、严重级别门禁、SARIF 上传走已收录的 codex-security-cli-scan(npx @openai/codex-security),那是另一套二进制,密钥映射成 OPENAI_API_KEY,不是这条插件。
- 不要一上来
--yolo:扫描产物含漏洞细节,保持工具批准。 - 不要把密钥写进
config.toml的env表。
网页 Cloud 不读你这台 runner 的 CODEX_HOME。改完用 codex plugin list 看 codex-security@openai-curated。