Open Code Review Codex 插件使用指南:在本地 Codex 中接入ocr代码审查 CLI
【免费下载链接】open-code-reviewFast, efficient, battle-tested at Alibaba's scale. Hybrid architecture code review tool: deterministic pipelines + LLM Agent, precise line-level comments, built-in multi-language ruleset (NPE, thread-safety, XSS, SQL injection), OpenAI & Anthropic compatible.项目地址: https://gitcode.com/GitHub_Trending/op/open-code-review
Open Code Review(OCR)是阿里开源的一款混合架构代码审查工具,将确定性流水线与 LLM Agent 结合,产出逐行级别的审查评论。本指南讲解其 Codex 官方插件(仓库内位于 plugins/open-code-review/)的安装、使用与内部机制:插件并不会把 OCR 变成 Codex 的 LLM backend,而是以 skill 的形式让 Codex 直接调用本地ocrCLI。读完本文,你将掌握从前置准备、marketplace 安装、常用对话式调用,到--audience agent等底层命令参数与源码级原理的完整链路。
架构定位:Skill 集成而非 LLM backend 替换
这是理解整个插件的前提。根据 CODEX.ko-KR.md 的明确说明,该插件不会将 Open Code Review 替换为 Codex 内部的 LLM 后端,而是为 Codex 提供可调用的 review skill,由 skill 背后的 Agent 在本地执行ocrCLI:
Codex └─ Open Code Review plugin └─ ocr review --audience agent也就是说:Codex 负责理解用户意图("review my changes"),OCR 负责真正读取 Git diff、调用已配置的 LLM 并生成结构化逐行评论,两者职责分离。这一点在 plugins/open-code-review/README.md 中也有对应说明——所有 coding agent 集成(Claude Code、Codex、Cursor、QCA Forward)都要求先安装ocrCLI 并完成 OCR 自身的 LLM 配置。
从源码结构看,该插件的 skill 定义刻意与仓库根级规范 skill(skills/open-code-review/SKILL.md)保持同步(参见 SKILL.md 中"mirrors the canonical skill"的注释),因为插件安装时可能只会物化插件子树,所以两份文件需手工保持同步而非使用符号链接。
前置准备:安装并验证ocrCLI
任何插件用法都依赖本地ocr命令,Codex 插件本身不负责安装它。按文档要求依次完成:
- 全局安装 CLI:
npm install -g @alibaba-group/open-code-review- 确认安装结果:
command -v ocr ocr version- 验证 OCR 自身的 LLM 连通性:
ocr llm test注意:ocr llm test失败意味着 OCR 的 LLM 尚未配置好,这与 Codex 插件的安装相互独立,必须先把 OCR 的 LLM 配置完成,否则后续 review 会因无法连接 LLM 而失败。配置方式为交互式向导ocr config provider、ocr config model,或手工设置:
ocr config set llm.url https://api.anthropic.com/v1/messages ocr config set llm.auth_token <api-key> ocr config set llm.model claude-opus-4-6 ocr config set llm.use_anthropic true这与 SKILL.md 故障排查章节的建议一致:ocr review在没有可达 LLM 时会"loudly"失败,必须先配置再使用。所有集成(包括 Codex)还要求 Git 2.41 及以上版本。
在 Codex 中安装插件
将该仓库作为 Codex marketplace 添加,然后启动 Codex:
codex plugin marketplace add alibaba/open-code-review codex进入 Codex 后,打开/plugins,找到Open Code Review并安装、启用。之后新建一个 task 即可使用。
如果是本地 checkout 或 fork 做测试,可用本地路径替代远程 marketplace:
codex plugin marketplace add . codex安装启用后,插件对外暴露的是可调用的 review skill(本地ocrCLI 的封装),而不是新的 slash command 或 OpenAI Responses API endpoint。
使用示例:通过对话触发代码审查
在新建的 Codex thread 中直接以自然语言发起请求,插件 skill 会把意图映射为ocr命令。文档给出的典型用法:
审查当前工作区改动:
@Open Code Review review my current changes分支对比:
@Open Code Review review this branch against main审查后只修复高置信度问题:
@Open Code Review review and fix high-confidence issues关于"review and fix"需要特别说明:文档明确要求,文件修改与 commit 生成只在用户显式请求时执行。这与底层 skill 的 Step 4(SKILL.md)一致——若用户只要求 review 而无修复意图,Agent 必须先征得许可再改动任何文件;即便执行修复,也应聚焦 critical/high/medium 级别的评论,并在提交前与用户确认。
插件内部实际执行的命令
无论用户在对话中如何措辞,落到终端上最终都是ocr review系列命令,且统一带有--audience agent以保证输出干净、无进度 UI 干扰。
审查当前工作区改动
ocr review --audience agent这是默认模式。从 review_cmd.go 的命令示例与 SKILL.md 的说明可以确认:不带参数时,OCR 审查的是暂存、未暂存以及未跟踪(untracked)的全部改动;如果只想收窄范围,应选择性git add或使用--exclude排除。
审查特定 commit
ocr review --audience agent --commit <sha>--commit(短选项-c)将单个 commit 与其父提交对比审查。参数校验逻辑位于 shared_flags.go 与validateDiffMode:--from/--to与--commit两种模式互斥,同一命令只能选一种。
分支对比审查
ocr review --audience agent --from <base-ref> --to <head-ref>--from指定 diff 起点 ref(如main),--to指定终点 ref(如特性分支)。校验要求两者必须成对出现:只给其一会直接报错(shared_flags.go)。同时 review_cmd.go 中的validateReviewRefs还会对--from/--to/--commit做安全校验,拒绝以-开头或无法通过git rev-parse --verify的非法 ref,防止选项注入。
预演模式
ocr review --preview--preview(短选项-p)只列出将被审查的文件,不调用任何 LLM,是确认审查范围、估算成本的高性价比手段(标志定义见 shared_flags.go,执行路径见runPreviewContext,review_cmd.go)。注意--preview与--resume互斥(shared_flags.go)。
关键参数与底层机制
--audience agent是整套集成的核心标志。其定义位于 shared_flags.go:
cmd.Flags().StringVar(audience, "audience", "human", "output audience: human (show progress; on stderr for json/sarif) or agent (summary only)")agent模式只输出最终摘要,不输出进度行;human模式会流式展示进度(json/sarif 格式下进度走 stderr)。对 Codex 这类 Agent 调用方,必须用--audience agent避免污染输出流。取值仅限human与agent两种,非法值会在validateAudience中被拒绝。
以下是 skill 文档与源码中提到的其他关键参数(完整标志注册见registerReviewFlags,shared_flags.go):
| 参数 | 默认值 | 说明 |
|---|---|---|
--audience agent | human | 仅输出最终摘要,Agent 调用必选 |
--format text/json/sarif | text | 输出格式;JSON 便于程序化消费评论结构 |
--commit/-c <sha> | — | 审查单个 commit(与父提交对比) |
--from/--to <ref> | — | 分支/范围对比,须成对出现 |
--background/-b "context" | — | 传入需求/业务上下文提升审查质量 |
--background-file/-B <md> | — | 从 Markdown 文件加载上下文(清洗后限 8000 字符,优先级高于--background) |
--exclude <patterns> | — | 逗号分隔的 gitignore 风格排除模式 |
--concurrency <n> | 8 | 最大并发文件分组审查数;遇到限流可调低 |
--timeout <min> | 15 | 单组并发任务超时(分钟);配合 effort 轮数决定整体耗时 |
--effort low/medium/high | medium | 审查努力级别;medium 默认 2 轮,low/high 对应 1/3 轮 |
--preview/-p | false | 只列文件、不调用 LLM |
--resume <session-id> | — | 从之前的 session 恢复(需--from/--to或--commit,工作区模式不支持恢复) |
--max-tools <n> | 模板默认 | 每个子任务最大工具调用轮数,下限 50 |
--max-git-procs <n> | 16 | 最大并发 Git 子进程数 |
--max-tokens-budget <n> | 不限 | 本次审查总 token 上限;超限即停止分发 |
--provider/--model | 配置值 | 本次运行临时覆盖 LLM 提供方/模型 |
Agent 侧的完整工作流
参照 SKILL.md,Codex 中的 skill 在调用ocr前后还有标准流程:
- 收集业务上下文:分析审查目标(commit/分支/改动),用
--background传入精简的业务上下文; - 运行审查:按上表参数组装命令,总是携带
--audience agent,输出重定向到临时文件后整体读取,避免tail/head截断丢失前面的评论; - 报告:OCR 输出中每条评论带结构化
severity(critical/high/medium/low)与category(bug/security/performance/maintainability/test/style/documentation/other),按严重级别分组呈现,丢弃 low 级别的疑似误报;定位失败时start_line/end_line均为 0,此时需读取评论内容并结合目标文件人工定位; - 修复:仅当用户明确要求时才自动修改;未明确要求时先请求许可。
大型 diff 与超时行为
skill 文档还提示了几个易踩的坑:超时按"单组超时 × 审查轮数"计算(默认--timeout 15配合 medium 两轮约 30 分钟);默认并发 8 个文件 worker;单请求 token 上限默认 58888,超大 diff 可能被截断;diff 超过 50 行时会先进入额外的风险分析(plan)阶段再进入主审查——这对应 review_cmd.go 中agent.New构造的 Agent 管线(plan 工具定义与 main 工具定义合并了 MCP 工具)。此外,审查失败(如 LLM 连接错误)时不要盲目重试,应回到ocr llm test检查 LLM 配置。
注意事项汇总
- 本插件不设置OpenAI Responses API endpoint;
- 本插件不要求
OPENAI_API_KEY或gpt-5.1-codex-max配置; - OCR 自身需要独立的 LLM 配置(Anthropic 或任意 OpenAI 兼容 endpoint,通过
ocr config provider等完成); - 文件修改仅在用户显式请求时执行;
- commit 生成仅在用户显式请求时执行;
- 工作目录即 Git 仓库根目录,
ocr review以当前目录为审查对象,需要时可使用--repo指定其他仓库目录。
与其他平台集成的对照
Codex 插件只是 plugins/open-code-review/README.md 中列出的集成之一。同类集成还包括:Claude Code(/plugin marketplace add alibaba/open-code-review+/plugin install open-code-review@open-code-review,安装/open-code-review:review与/open-code-review:delegate-review两个 slash 命令,对应命令定义见 review.md 与 delegate-review.md)、Cursor(将plugins/open-code-review/目录复制到~/.cursor/plugins/local/open-code-review/)、以及 QCA Forward(通过 OCR 委托模式复用宿主模型)。它们共享同一套ocrCLI 与 skill 工作流,只是接入入口不同。需要说明的是,Codex 集成场景中--audience agent同时意味着摘要输出面向 Agent 消费,配合--format json(open-code-review.ts 中的 OpenCode 插件实现会为 review 附加--format json)可让评论结果以结构化数据回流给 Agent 做分级汇报与修复决策。
【免费下载链接】open-code-reviewFast, efficient, battle-tested at Alibaba's scale. Hybrid architecture code review tool: deterministic pipelines + LLM Agent, precise line-level comments, built-in multi-language ruleset (NPE, thread-safety, XSS, SQL injection), OpenAI & Anthropic compatible.项目地址: https://gitcode.com/GitHub_Trending/op/open-code-review
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考