AI 编程工具
ocra(Open-CR-Agent):开源多智能体代码审查引擎,审查本地改动与 GitHub/GitLab 拉取请求
jma49/Open-CR-Agent · ocra: open-source multi-agent code review for local changes and GitHub pull requests. Deterministic engineering selects, bundles and anchors; specialised LLM reviewers find issues, then Verify and a judge filter them. CLI and GitHub Action.
ELI5:它是什么,解决什么问题
ocra 是一个开源代码审查引擎,采用「确定性工程 + 隔离 LLM 智能体」的流水线:先由代码决定审查范围、风险分级、分捆、规则匹配与评论锚点,再由隔离的 LLM 审查员(correctness、security、performance、docs、agents-md)发现问题,随后经验证器与评审模型事实核查、去重和定级后再发布。支持本地改动、GitHub PR 与 GitLab MR,可运行在自有 CI 中使用自己的模型密钥,输出带版本的 JSON 报告与 SARIF 2.1.0,并提供成本上限、失败回退链、增量复审、记忆、指标与评估工具(ocra-eval、AACR-Bench)。项目以不可信 PR 为设计前提,智能体仅具只读工具、无 shell 与网络。
核心能力与快速开始
★ 1 · TypeScript
- 能做什么
- 确定性阶段负责文件选择、风险分级、分捆、规则匹配与审查员矩阵;LLM 审查员以隔离任务形式运行并通过类型化工具提交发现;发现内容经锚定(按引文匹配而非模型给出的行号)、验证、去重与严重度校准后再发布。提供 CLI(review、--plan、--max-cost-usd、--format sarif、--import-sarif、--pr/--mr --publish)、GitHub Action、GitLab CI 用法与容器镜像;配置来自仓库 .ocra/config.json(模型 top/standard/light、并发、超时、include/exclude、runtime、插件),规则来自 .ocra/rules.json,仓库指引来自 AGENTS.md;支持插件契约(VcsAdapter、AgentRuntime、Reviewer、规则与工具、分析器)、作为库调用的 review() API、内存(ocra memory)、指标(ocra metrics)与登录 ocra Cloud 的命令。输出为每次运行的 events.jsonl 与 report.json,退出码区分完成、确认的严重发现、使用错误、审查不完整与中断。
- 适用场景
- 在本地审查未提交改动、单个提交或与主分支的差异;在 CI 中对 GitHub 拉取请求或 GitLab 合并请求自动评论并增量复审;导入 Semgrep、CodeQL 等分析器的 SARIF 结果与模型发现合并;把 SARIF 上传到代码扫描看板;团队共享规则、记忆已接受的发现并统计运行成本与发现处置;作为库嵌入自有程序或服务中构建自己的审查流程。
- 项目形态
- 可直接使用的工具
- 部署方式
- 可全局安装 npm 包 @open-cr-agent/cli 或使用 npx 运行,也可通过 GitHub Action、GitLab CI 任务或容器镜像 ghcr.io/jma49/ocra:<version>(amd64/arm64)在自有 CI 中运行;另有作为库嵌入的方式。提交来源适配器支持本地 git、GitHub、GitLab。
- 主要依赖
- 需要 Node.js 22.19 或更高版本与 Git;需要自备模型提供方的 API 密钥(示例使用 GEMINI_API_KEY,支持 OpenCode 所支持的提供方及自建 OpenAI 兼容端点);默认运行时 OpenCode 为可选依赖,使用 direct 运行时可不安装(体积 11MB 对比 175MB)。模型调用产生费用,需自行配置模型与价格。
- 使用限制
- 项目处于早期 0.x 阶段,CLI 参数、配置键、退出码与报告格式被视为契约,提示词与审查质量仍在变动。作者公布的实测质量基于 16 个黄金用例的单次运行、单一模型家族,召回率为弱项;两个相同运行在十个基准 PR 上精度相差 20 个百分点,样本尚不足以支撑提示词改动。判定结果由读过改动的模型给出,可能被改动中的文本影响,不应作为安全门禁。插件仅在受信任的代码树中加载,拉取请求与 --no-repo-config 下不加载。
- 许可证
- Apache-2.0
- 最近推送
- 2026-10-05 07:00
资料检查:2026-10-05 07:00 · 卡片整理:2026-10-05 07:00
卡片由 AI 根据仓库资料整理,未进行安装或运行验证 · 本次更新未完成,保留上次成功内容
职业应用
程序员
在本地改动、GitHub PR 或 GitLab MR 上运行多智能体代码审查,由 correctness、security、performance、docs、agents-md 等审查员发现问题,并经事实核查、去重和定级后输出带版本的 JSON 报告与 SARIF 2.1.0,用于代码审查与排错。
查看内容依据
ocra 是一个开源代码审查引擎,采用「确定性工程 + 隔离 LLM 智能体」的流水线:先由代码决定审查范围、风险分级、分捆、规则匹配与评论锚点,再由隔离的 LLM 审查员(correctness、security、performance、docs、agents-md)发现问题,随后经验证器与评审模型事实核查、去重和定级后再发布。
由 AI 根据来源材料整理,未进行安装或运行验证
讨论 0
登录后参与讨论,阅读资讯无需注册。
还没有评论,来分享第一个看法。