open-code-review 快速上手:从安装 CLI 到跑通第一次 AI 代码评审
2026/9/13 4:42:25 网站建设 项目流程

open-code-review 快速上手:从安装 CLI 到跑通第一次 AI 代码评审

【免费下载链接】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(CLI 命令ocr)的官方快速入门文档为主线,带你用几分钟时间完成一次真实的 AI 代码评审:先安装 CLI、再配置 LLM 提供方与模型、验证连通性,最后以工作区、分支区间、单个提交三种模式跑通ocr review,并掌握--preview预览与--format json机器可读输出等关键实操技能。读完你即可在本地仓库、CI 脚本乃至 Agent 工作流中直接复用这些命令。

前置要求

在开始之前,请确认环境满足以下条件:

依赖要求说明
Git≥ 2.41ocr review依赖 Git 解析 diff、计算 merge-base、读取工作区改动
Node.js≥ 18使用推荐的 NPM 方式安装 CLI 时需要
LLM API Key视模式而定使用普通模式评审时必须;若使用委派模式(例如在 Claude Code 内部运行),模型由宿主 Agent 提供,无需配置 API Key,可直接跳到第四步

快速验证 Git 与 Node 版本:

git --version node --version

第一步:安装 CLI

最推荐的方式是通过 NPM 全局安装:

npm install -g @alibaba-group/open-code-review

安装完成后,用version子命令确认可执行文件已就位:

ocr version

该命令会打印构建时写入的版本号、Git 短提交、平台(<GOOS>/<GOARCH>)与构建日期。若输出command not found,请检查安装目录是否在$PATH中(which ocrecho $PATH)。

除 NPM 外,项目还支持 Homebrew(brew install open-code-review)、MacPorts、curl | sh安装脚本、GitHub Release 静态二进制以及make build源码构建等多种安装方式;通过 NPM 安装时ocr默认还会在后台自动检查并升级(可用OCR_NO_UPDATE关闭、OCR_UPDATE_INTERVAL调整检查间隔)。完整清单与状态目录说明见安装指南。

数据存储位置:OCR 的配置与评审记录统一存放在~/.opencodereview/目录下,其中:

  • ~/.opencodereview/config.json—— LLM 端点、语言等全局配置(由ocr config set管理);
  • ~/.opencodereview/sessions/<编码后的仓库路径>/<session-id>.jsonl—— 每次评审的流式 JSONL 会话记录,供ocr viewer回放;
  • <仓库>/.opencodereview/rule.json—— 可提交进仓库的项目级评审规则。

第二步:配置 LLM

如果你使用委派模式(例如运行在 Claude Code、Codex 等订阅制 AI 编码 Agent 内),宿主 Agent 自带模型额度,OCR 侧不会发起任何 LLM 调用,无需执行本节,直接跳到第四步。

交互式配置(推荐)

运行:

ocr config provider

该命令会启动交互式 TUI:你可以从内置提供方列表或自定义提供方中选择一个,输入 API Key、选定模型;命令随后将全部配置写入~/.opencodereview/config.json,并自动执行一次ocr llm test验证端点可用。

之后想更换模型,无需重走整个流程:

ocr config model

非交互式配置(CI / 无 TUI 环境)

在 CI 流水线或没有终端交互界面的环境中,用ocr config set直接写入同样的配置键:

ocr config set provider anthropic ocr config set model claude-opus-4-6 ocr config set providers.anthropic.api_key sk-ant-xxxxxxxxxx

从源码实现看(cmd/opencodereview/config_cmd.go),config set支持providermodelmax_tokenseffortproviders.<name>.<field>custom_providers.<name>.<field>mcp_servers.<name>.<field>llm.*languagetelemetry.*等键;其中api_key/auth_token类密钥在回显时会被自动脱敏(shouldMaskConfigValue),避免密钥泄露到终端日志。

OCR 内置了anthropicopenaiopenai-responsesgeminidashscopedeepseekkimiminimaxbaidu-qianfansiliconflowxaibedrock等二十余个提供方,Base URL 与协议均已预置,选中后只需补 API Key;若providers.<name>.api_key未设置,OCR 会回退读取对应的环境变量(如ANTHROPIC_API_KEYOPENAI_API_KEY)。完整提供方表格、自定义提供方(custom_providers.*,需至少提供urlprotocol)、AWS Bedrock 签名认证、api_key_cmd密钥命令等进阶配置,见配置指南。

第三步:验证 LLM 连通性

ocr llm test

该命令与ocr review使用完全相同的端点解析逻辑(cmd/opencodereview/llm_cmd.go):加载配置 → 解析端点 → 发送一次固定的短对话请求,然后打印解析来源、URL、生效模型与模型回复,最后输出✓ Connection test successful

常见报错排查:

  • no valid LLM endpoint configured—— 端点未解析成功,请回头检查第二步的配置是否完整(provider / model / api_key 是否齐全);
  • HTTP401 / 403—— API Key 错误或已过期,请更换密钥后重试。

第四步:运行第一次代码评审

进入任意 Git 仓库目录,即可开始评审:

cd path/to/your-repo # 工作区模式(默认):评审暂存 + 未暂存 + 未跟踪的全部本地改动 ocr review # 分支区间:评审 feature-branch 相对 main 引入的改动(基于 merge-base 计算) ocr review --from main --to feature-branch # 单个提交:评审 abc123 这个提交引入的 diff ocr review --commit abc123

三种模式的语义在源码中有明确对应(cmd/opencodereview/review_cmd.go 的reviewModeFromOptions):

模式判定条件底层行为
工作区(默认)不带--from/--to/--commitgit diff HEAD汇总已跟踪文件的改动(若为空则回退git diff --staged),用git ls-files --others --exclude-standard收集未跟踪新文件并当作整文件新增读取
分支区间同时指定--from--to计算merge-base(from, to)..to,只评审该分支自身引入的改动,不掺入main上后来新增的无关变更
单个提交指定--commit(别名-c评审git show <commit>产生的 diff

模式互斥:--from/--to--commit混用属于硬错误。此外,出于安全考虑(issue #112),所有 ref 参数都会先经过校验(validateReviewRefs):ref 不能以-开头、必须是真实的 commit ref(git rev-parse --verify <ref>^{commit}),防止在 git 子进程调用中注入任意选项。

完整评审流程是:解析 Git diff → 用一次轻量元数据调用把改动文件按语义分组成文件组(如 handler + service + test 归入同一组)→ 为每个组派发一个子 Agent(按--concurrency默认 8 并行)→ 收集评论并按--format输出。--concurrency--timeout--effort--max-tokens--background(需求上下文)等全部ocr review旗标与其余子命令,见CLI 参考手册。

先预览:哪些文件会进入评审?

评审真正调用 LLM 之前,可以先跑过滤管线预览文件清单与排除原因:

ocr review --preview # 工作区改动预览 ocr review -c abc123 --preview # 单个提交预览(-c 是 --commit 的短别名)

--preview只执行过滤管线、跳过 LLM(源码路径为 runPreviewContext →agent.Preview),支持--format json;由于没有完成的评审结论,不支持--format sarif

面向系统的 JSON 输出

--audience agent会隐藏面向人类的进度界面,让标准输出(stdout)上只剩 JSON 文档与最终摘要——这正是上游 Agent 或 CI 脚本想要的纯净格式:

ocr review --format json --audience agent > review.json

JSON 文档顶层字段包括:

  • statussuccess/completed_with_warnings/completed_with_errors/skipped
  • llm:实际解析到的提供方与模型;
  • summaryfiles_reviewedcommentstotal_tokensinput_tokensoutput_tokenselapsed等运行聚合;
  • comments:按文件路径、行号区间(start_line/end_line)、原始代码与建议代码(suggestion_code)结构化的评论数组;
  • warnings(可选):部分子 Agent 失败时的逐文件错误说明;
  • session_id(可选):持久化会话 ID,可用于--resume断点续跑。

细节提示:--format json单独使用时,[ocr]进度行会走stderr,因此你仍可以ocr review --format json | jq .summary边观察进度边解析标准输出;只有再加上--audience agent(或 shell 层2>/dev/null)才会彻底静音进度。

常见问题速查

  • 评审前如何确认改动范围?ocr review --preview(或-c <sha> -p)先看文件清单与排除原因,确认无误再正式评审。
  • 如何把评审交给 Agent / CI 消费?ocr review --format json --audience agent > review.json,标准输出只含 JSON,且已包含session_id便于追溯。
  • 想要更严格或更省成本的评审?--effort low|medium|high调节每组的评审轮数(默认medium= 2 轮),或用ocr config set effort high持久化;--background "需求描述"是提升评审质量性价比最高的旗标之一。
  • 评审中途被打断?区间与提交模式可用ocr session list找到会话,再用ocr review --from main --to feature-branch --resume <session-id>断点续跑(工作区模式不支持 resume,且 resume 会严格校验输入一致性)。
  • 不想给 OCR 配模型?走委派模式:OCR 只做文件筛选与规则解析等确定性工程,评审推理由宿主 Agent 完成,OCR 侧零 LLM 配置。

进一步阅读

  • 安装指南:全部安装方式与 OCR 数据目录说明。
  • 配置指南:全部环境变量、配置键与内置提供方。
  • CLI 参考手册:全部子命令、旗标与输出模式。
  • 评审规则:自定义评审什么内容进入评审范围。
  • 集成指南:把 OCR 嵌入 Claude Code、Agent Skill 或 CI。
  • FAQ:已知错误与解决办法。

【免费下载链接】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),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询