面向 AI 编码代理的持续后台代码审查数据库,通过 git hook 自动触发审查,支持 TUI 展示与代理自动修复闭环。
roborev 是由 Wes McKinney(Apache Arrow / Pandas 创始人)主导开发的跨平台 CLI 工具,定位为 AI 编码代理的持续后台代码审查数据库。通过 roborev init 安装 git post-commit hook 后,每次 commit 自动触发后台审查,在终端 TUI 中实时呈现发现的问题。
核心能力#
自动审查与触发
- Git post-commit hook 集成,每次 commit 自动将审查任务送入后台队列,无需改变现有工作流
- 支持按指定 SHA(
roborev review <sha>)、分支全量(--branch)、未提交更改(--dirty)手动触发 roborev compact对已打开的审查发现进行验证,过滤误报并合并相关问题
Agentic 修复闭环
roborev fix将审查发现发送给 AI 代理,自动应用修复并提交roborev refine执行"修复 → 再审查"迭代,直到所有审查通过或达到最大迭代次数(--max-iterations,默认值待确认)- 修复在隔离的 git worktree 中执行,不污染当前工作区
内置代码分析
支持 7 种分析类型,均可选择自动修复:
| 类型 | 说明 |
|---|---|
duplication | 重复代码检测 |
complexity | 复杂度分析 |
refactor | 重构建议 |
test-fixtures | 测试夹具问题 |
dead-code | 死代码检测 |
api-design | API 设计审查 |
architecture | 架构层面审查 |
多代理兼容
自动检测并支持 10+ 种 AI 编码代理:Codex、Claude Code、Gemini CLI、Copilot、OpenCode、Cursor、Kiro、Kilo、Droid、Pi 等。支持将 Claude Code 等代理路由到本地模型端点(Ollama、LiteLLM),可分别指定审查模型和修复模型。
交互式终端 UI
实时审查队列展示,vim 风格键盘导航,Markdown 富文本渲染(语法高亮代码块、标题、列表),颜色主题可配置(auto / dark / light / none)。
架构要点#
- 守护进程:本地 HTTP 服务器,默认端口 7373,端口被占用时自动查找可用端口
- Worker 池:4 个并行审查 worker(可配置)
- 本地存储:SQLite(WAL 模式),路径
~/.roborev/reviews.db - 多机同步:通过 PostgreSQL 双向同步,本地 SQLite 作为快速缓存
- 配置体系:全局
~/.roborev/config.toml+ 仓库级.roborev.toml - 代码结构:
cmd/roborev(CLI 入口)、internal(核心逻辑)、skills(代理技能)、packaging/systemd(系统服务打包)
审查触发流程:
git commit → post-commit hook → 调用守护进程 HTTP API → worker 池排队处理 → 结果写入 SQLite
修复执行流程:
roborev fix/refine → 创建隔离 git worktree → 调用本地 AI 代理 CLI → 代理在 worktree 中修改代码 → 审查验证 → 合并回主分支
安装与快速开始#
# Shell Script(macOS / Linux)
curl -fsSL https://roborev.io/install.sh | bash
# Homebrew(macOS / Linux)
brew install roborev-dev/tap/roborev
# Windows(PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://roborev.io/install.ps1 | iex"
# Go install
go install github.com/roborev-dev/roborev/cmd/roborev@latest
cd your-repo
roborev init # 安装 post-commit hook
git commit -m "..." # 审查自动触发
roborev tui # 查看交互式审查界面
CLI 命令一览#
| 命令 | 说明 |
|---|---|
roborev init | 在当前仓库初始化 |
roborev tui | 打开交互式终端 UI |
roborev status | 显示守护进程和队列状态 |
roborev review <sha> | 将指定 commit 加入审查队列 |
roborev review --branch | 审查当前分支所有 commit |
roborev review --dirty | 审查未提交的更改 |
roborev fix | 修复打开的审查(可指定 job ID) |
roborev refine | 自动修复循环 |
roborev analyze <type> | 运行指定类型代码分析 |
roborev compact | 验证并合并审查发现 |
roborev show [sha] | 显示某次 commit 的审查结果 |
roborev run "<task>" | 用 AI 代理执行自定义任务 |
roborev close <id> | 关闭指定审查 |
roborev skills install | 安装 Claude/Codex 代理技能 |
其他特性#
- 可扩展 Hooks:在审查事件上运行自定义 shell 命令,内置 beads 集成可从审查失败自动创建可追踪 issue
- 完全本地运行:无需托管服务或额外基础设施,所有审查编排均在本地完成
- 关键环境变量:
ROBOREV_DATA_DIR(覆盖默认数据目录)、ROBOREV_COLOR_MODE(TUI 颜色主题)、NO_COLOR(禁用颜色)、ROBOREV_CLAUDE_PROXY_TOKEN(转发 bearer token 到代理端点)
使用 Go 编写(98.9%),采用 MIT 许可证,当前版本 v0.54.1(94 个 release,571 commits)。