Jev Review:基于 TypeSafe Jev 的分阶段代码审查工作流与本地仪表盘
Jev Review 是一个用 TypeSafe Jev 构建的小型代码审查工作流:既能审查 Git diff,也能扫描完整代码库,通过聚焦的模型调用串起结构化判断链路,并在仅本地可访问的安静仪表盘中展示结果。项目采用分层架构,编排逻辑保留在代码中,模型只负责有边界的判断;许可证为 MIT。
社区作者 · zZz
它解决什么问题
用途
Jev Review 是一个小型代码审查工作流,用 TypeSafe Jev 构建。它可以审查一段 Git diff,也可以扫描整个代码库;通过一系列聚焦的模型调用沿最强的结构化信号推进,并把结果呈现在一个安静的本地仪表盘中。
工作方式
The reviewer keeps orchestration in code and uses Jev for bounded judgments(编排保留在代码中,模型仅做有边界判断),分阶段判断链路为:
Noul risk matrix -> Choice + Score file profiles -> Choice evidence selection -> Choice mechanism classification -> Score severity -> conditional Choice reviewer routing
具体特性:
- 暴露相互独立的“变更审查”和“完整代码库扫描”两个入口。
- 在判断测试缺口时,会使用被改动或相关的测试作为上下文。
- 筛查正确性、安全性、可靠性、兼容性和测试覆盖率。
- 在评估影响之前,先选定具体的 diff hunk 或源码区域。
- 使用结构化提示、反例和明确的决策边界。
- 阈值与工作流策略在代码中施加。
- 大型报告在仪表盘中以可折叠区块展示。
- 仪表盘绑定到 127.0.0.1,且从不提供环境文件。
配图 1(Jev Review dashboard)展示了本地仪表盘的界面形态。
命令
| 命令 | 用途 | | --- | --- | | npm run review:changes -- <path> | 以 JSON 打印当前 diff 的审查结果 | | npm run review:changes:save -- <path> | 保存当前 diff 的审查结果供仪表盘使用 | | npm run review:codebase -- <path> | 以 JSON 打印完整代码库扫描结果 | | npm run review:codebase:save -- <path> | 保存完整代码库扫描结果供仪表盘使用 | | npm run dashboard | 启动本地仪表盘 | | npm run check | 类型检查、校验依赖流向、对仪表盘客户端做语法检查 |
架构
所有代码位于 src/ 下,按只能向下依赖的分层组织:
src/
domain/ config.ts、types.ts、patch.ts 共享策略、报告结构、diff 解析
adapters/ git.ts、repository-files.ts 变更与完整源码的发现
report-store.ts 原子化的报告保存/加载
review/ changes.ts、codebase.ts 按模式划分的工作流
*-judgments.ts、workflow.ts Jev 调用与共享的分阶段编排
cli/ review-*.ts、save-*.ts 显式的模式入口
dashboard/ server.ts、public/ 仅本地的 HTTP 服务与纯客户端导入方向只能指向更底层:
{ cli, dashboard } -> review -> adapters -> domain
scripts/check-dependencies.ts 会让 npm run check 在任何向上导入、任何 cli 与 dashboard 之间的导入,或任何循环依赖出现时失败。
当前范围
这是把快速、带类型的判断组合成审查工作流的一次实验。目前尚未集成编译器诊断、静态分析器、仓库索引或生成的解释说明。给出的发现是审查提示,而不是缺陷的证明。
许可证
MIT
适用对象
希望在本地、以 Git diff 或代码库扫描为单位获得结构化审查提示的开发者与代码审查流程搭建者;需要自行提供 TypeSafe API key,并具备 Node.js 24+ 与 Git 环境。
— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。
安装 / 开始使用
准备环境
- Node.js 24+(必填)
Git(必填)
- 一个 TypeSafe API key(必填)
安装与首次运行
- 安装依赖:
npm install- 复制环境变量模板:
cp .env.example .env- 在
.env中添加你的密钥(原注释为# Add TYPESAFE_API_KEY to .env):
TYPESAFE_API_KEY=<你的 TypeSafe API key>- 审查当前 Git diff:
npm run review:changes:save -- /path/to/git/repository- 或者扫描某个 scope 下所有非忽略的源文件:
npm run review:codebase:save -- /path/to/git/repository-or-package- 启动本地仪表盘:
npm run dashboard- 在浏览器打开:
http://127.0.0.1:4317其他可用命令
npm run review:changes -- <path>:以 JSON 打印当前 diff 的审查结果(不保存)。npm run review:codebase -- <path>:以 JSON 打印完整代码库扫描结果(不保存)。npm run check:类型检查、校验依赖流向、对仪表盘客户端做语法检查。
常见问题
- 仪表盘只绑定 127.0.0.1,且从不提供(serve)环境文件,因此不要期望从局域网或外部地址访问。
- 报告内容较大时会以可折叠区块展示在仪表盘中。
npm run check会在出现任何向上导入、cli与dashboard之间的导入,或循环依赖时报错(由scripts/check-dependencies.ts检查),修改目录分层后请先跑该命令。- 该项目尚未集成编译器诊断、静态分析器、仓库索引或生成式解释;输出是审查提示,不是缺陷证明。