@zephyrdeng/pi-review0.19.0
Isolated AI-powered code and plan reviews from the command line
Untested on omp
This is a pi package. No one has reported whether it works on omp yet. If you try it, add your result below.
Reports 0
No reports yet.
Readme
pi-review
隔离、多评审员的 AI 代码审查 —— 既是 CLI,也是 CI 门禁,也是 agent skill。
pi-review 把审查交给一个全新的、只读的 Pi 子会话,返回结构化结论:带严重度、证据、位置的 findings,以及稳定的退出码。可以跑单个评审员,也可以跑一个互相隔离的评审员面板,多人达成共识的 finding 才会卡门禁。你的 agent(Claude Code、Codex、Cursor、Pi)始终是唯一的编辑者。
npm install -g @zephyrdeng/pi-review
pi-review -- @src/foo.ts # 单评审员
pi-review --panel code-experts --consensus majority -- @src # 三个视角,一个门禁
为什么选 pi-review
| 隔离、只读的评审员 | 每次审查都是独立子进程,工具硬白名单 read,grep,find,ls。不会改文件、不会提交、不会带走主会话上下文。 |
| 面板共识,而非一家之言 | 2–8 个互不可见的独立评审员。只有足够多人同意(any / quorum / majority / unanimous)的 finding 才卡门禁;孤证保留为 advisory。 |
| 每个评审员可用不同模型 | --reviewer-model r1=openai/gpt-5.6:high --reviewer-model r2=anthropic/claude-opus-4.8:xhigh,跨厂商面板互补盲区。 |
| 机器可读、宿主无关 | 一行带版本号的 PI_REVIEW_META_JSON、退出码 0/1/3/4、events-jsonl 事件流。直接接 CI、hook 或自研渲染器。 |
| 给 agent 收尾用的 loop 门禁 | pi-review loop --until clean 每轮修复后重审、跨轮对比 findings、收敛即停,永不无限循环。 |
| 约 1 秒的筛查 | pi-review screen 完全不跑 LLM 生成:确定性切片 + Jev 类型化判断对照缺陷目录。实测 1.2s,完整审查一轮需 30–50s。 |
| 处处可见进度 | Pi 内原生实时行;Claude Code / Codex 用本地网页看板;纯终端用 stderr 里程碑。 |
| 三种审查模式 | code(正确性、安全、测试)、plan(六个专家视角)、challenge(对抗式压测)。JSON 预设可扩展。 |
效果一览
![]() |
![]() |
| 任意终端里的面板页脚:门禁、共识、费用、逐评审员状态 | --ui web:给会缓冲 stdout 的宿主看的网页看板 |
每次审查以结构化报告和一眼可读的页脚收尾:
── pi-review ────────────────────────────
Verdict ! REQUEST CHANGES
Status HAS FINDINGS
Mode code
Findings 1 actionable / 1 total
Model provider/model
Tokens in 17.6K · out 512 · cache 2.0K · total 18.2K
Cost $0.05
Duration 42.3s
──────────────────────────────────────────
脚本从 stderr 读 PI_REVIEW_META_JSON:,每条 finding 带 severity、path、location、details、recommendation,无需解析 Markdown。→ 输出与集成
快速开始
前置条件: 已安装 Pi CLI 并配置至少一个模型 provider。
# CLI
npm install -g @zephyrdeng/pi-review
# 或一键:Pi 包 + Claude Code / Codex / Cursor / Antigravity 的 skill
npx @zephyrdeng/pi-review install
Claude Code 插件(skill + 实时面板 Pane):PATH 上有 claude 时 pi-review install / pi-review update 会自动装好,也可以在 Claude Code 输入框里输入:
/plugin install pi-review --marketplace ZephyrDeng/pi-review
pi-review -- @src/foo.ts # 单次审查
pi-review --mode plan -- @docs/architecture.md # 多视角方案审查
pi-review --reviewers 3 --consensus quorum -- @src # 面板
pi-review loop --until clean --max-rounds 5 -- @src # 有上限的修复/重审门禁
pi-review screen src/order-service.ts # 约 1s 目录筛查
pi-review models # 我能用哪些模型?
在 Pi 里:/rv @src、/rv-loop fix until clean @src、/rv-models。在其它 agent 宿主里装一次 skill,之后用自然语言要求审查即可。
面板如何裁决
评审员(隔离、只读)──► findings ──► 确定性匹配(路径 + 摘要)
│
歧义配对 ────┴─► Jev 类型化裁决(约 100 ms)
│ 0.3–0.7 边界区 → Pi 复判一次
▼
共识阈值 ──► confirmed(卡门禁)/ advisory
评审员运行失败 → blocked;输出无法解析 → needs_human;绝不静默放行。裁决器只能聚类,不能新增、删除或改写 finding。→ Panel 审查详解 · Loop 审查
合作伙伴
OrcaRouter一把 key 用遍前沿模型。 → 接入指南 |
TypeSafe Jev约 100 ms 返回概率的 System One 模型。驱动共识裁决、跨轮 finding 记忆、范围 设置 |
项目规则
评审子进程同样会读取 .claude/rules/,语义与 Claude Code 一致:从子进程工作目录逐级向上发现用户级 ~/.claude/rules/ 与项目级 <dir>/.claude/rules/。没有 paths frontmatter 的规则追加到子进程 system prompt;带 paths 的规则只在 read 命中对应 glob 时注入到该次 tool result。write、edit 不会触发。
评审子进程仍然隔离运行(--no-extensions,issue #8);rules loader 是我们自己的扩展,用显式 --extension 加载。单次关闭用 --no-rules 或 PI_REVIEW_RULES=0(也接受 false / off / no)。共识裁决器、screen、classify 都不加载规则——裁决器只做聚类。
文档
| 指南 | 内容 |
|---|---|
| 安装 | CLI、Pi 包、agent skill(Claude Code / Codex / Cursor / agy)、更新、源码安装 |
| CLI 参考 | 全部参数、审查模式、各命令使用时机 |
| 筛查流程 | screen 的中文流程图、门禁结果、退出码与流水线位置 |
| Panel 审查 | 共识策略、聚合、Jev、classify、screen、实时 UI、网页看板 |
| Loop 审查 | 有限轮次、--until clean、跨轮对比、收敛停止 |
| 输出与集成 | Markdown 结构、PI_REVIEW_META_JSON schema、退出码、会话、进度日志 |
| 配置 | 配置文件、环境变量、安全模型 |
| Provider | OrcaRouter 等 provider 接入 |
| 研究 | Jev 架构、筛查测量、裁决案例 |
参与贡献
欢迎 issue 与 PR。源码仅用英文;文档可双语。提交经 Husky 走 ai-commit(npm install 会装好 hook)。见 安装 → 语言约定。
Star
如果 pi-review 抢在人工评审前抓到过 bug,点个 ⭐ 能让更多人发现它。
致谢
系统提示词结构参考 Codex-5.5-codex-instruct-5.5(MIT)。
许可
MIT © ZephyrDeng

