一个 JAR 装下代码评审全流程:接入、扫描、评分、门禁、治理、报告邮件、CI 联动、认证与多库支持 —— 九大功能组,逐条展开
JavaParser AST + 符号求解、ASM 字节码分析、调用图辅助降误报,19 个内置检查器完全离线运行,覆盖六大质量域。明细见下方检查器矩阵。
OpenAI 兼容 + Anthropic 双协议,内置 12 个厂商模板;逐问题三段式建议,一键批量评审。不配 AI 也能完整使用。详见下方 AI 评审一节。
对标 SonarQube 的五级严重度扣分制评分,门禁 = 阻断清零 + 评分达线;扣分值 / 通过线 / 评级分界全部页面自定义,即时生效。详见评分与门禁。
H2 内嵌默认零安装;MySQL / PostgreSQL / Oracle 与达梦 / 人大金仓 / openGauss 信创驱动随包内置;任意数据库可页面上传 JDBC 驱动接入。详见数据库支持。
本地引擎完全离线:不上传代码、不依赖外部扫描服务,内置 CVE 漏洞库随包发布
| 质量域 | 覆盖内容 |
|---|---|
| 缺陷 | 编译诊断、空指针风险、资源泄露、异常处理(空 catch 等) |
| 安全(SAST) | SQL 注入、命令注入、不安全反序列化、硬编码密钥、弱加密、弱随机数、XXE、SSRF、路径穿越 |
| 架构约束 | 控制器跨层直连 DAO、下层反向依赖上层、实体泄漏到接口层 |
| 并发 | 单例共享可变状态、静态 SimpleDateFormat、双重检查锁缺 volatile |
| 风格 / 冗余 | 命名规范、魔法数字、通配符导入、超长行、TODO 注释、未使用方法、重复代码块(CPD 式 Token 指纹,自动排除 getter/setter 与构造方法等样板,误报少) |
| 依赖漏洞 | 解析 pom.xml / build.gradle,与内置 CVE 漏洞库比对(可选 OSV 在线增强,默认关闭) |
| 质量 / 性能 / 框架 | 圈复杂度、方法 / 文件长度、性能问题、Spring 最佳实践 |
可选增强:不配置任何 AI,静态扫描、评分门禁、报告与 CI 集成一切照常
OpenAI 兼容协议与 Anthropic 协议双通道,内置 12 个厂商模板开箱即选,API Key AES 加密存储:
Ollama / vLLM / LocalAI 支持本地私有部署,内网环境零 token 成本。
对标 SonarQube 的评分体系,但每一处数值你都改得动
| 严重度 | 默认扣分 | 说明 |
|---|---|---|
| BLOCKER 阻断 | −25 | 一票否决级问题,门禁默认要求清零(上限可配) |
| CRITICAL 严重 | −15 | 高危缺陷与安全隐患 |
| MAJOR 主要 | −5 | 明显影响可维护性的问题 |
| MINOR 次要 | −1 | 风格与小瑕疵 |
| INFO 提示 | 0 | 仅展示,不扣分 |
# 评分公式(每级扣分权重页面可改) score = 100 − Σ(数量 × 扣分) # 门禁 = 两条线同时满足 gate = BLOCKER ≤ 上限(0) 且 score ≥ 通过线(80) # 评级分界(同样可改) 优秀 ≥ 90 良好 ≥ 75 一般 ≥ 60 较差 < 60
保存即时生效:每级扣分值、通过线、评级分界、阻断上限均可在「质量门禁」页自定义,无需重启、无需重扫,已有扫描结果立刻按新规则重算。
另附技术债估算:按规则目录把每个问题折算成修复分钟数,汇总成「8 小时 55 分」式的排期依据。
元数据库开箱即用,团队规模化时页面可视化切换外接库,自动建表 / 迁移,支持连通性测试
| 数据库 | 说明 |
|---|---|
| H2(内嵌) | 默认,开箱即用,零安装 |
| MySQL / PostgreSQL / Oracle | 内置驱动 |
| 达梦 DM / 人大金仓 / openGauss | 信创场景,驱动随包内置 |
| 自定义 JDBC | 页面上传驱动 JAR 即可接入任意数据库 |
Spring Boot 3.2.5 单体,无微服务拆分、无消息队列、无外部缓存 —— 复杂度都收在一个 JAR 里
| 层次 | 技术选型 |
|---|---|
| 后端框架 | Spring Boot 3.2.5 · Java 17(Web / AOP / Validation / Cache / Actuator) |
| 持久层 | MyBatis-Plus 3.5.5 · H2 2.2(内嵌默认)· MySQL / PostgreSQL / Oracle / 达梦 / 金仓 / openGauss 驱动 · 动态多数据源 |
| 静态分析 | JavaParser 3.25(AST + 符号求解)· ASM 9.6(字节码)· 自研 CPD 式重复代码指纹 |
| AI 接入 | Spring WebFlux HTTP 客户端 · OpenAI 兼容 / Anthropic 双协议适配层 |
| 报告与邮件 | OpenPDF 1.3(矢量中文 PDF)· Thymeleaf HTML 报告 · Spring Mail(SMTP / SSL / STARTTLS) |
| 版本控制 | JGit 6.8(仓库克隆) |
| 安全 | JWT · spring-security-crypto(BCrypt)· AES 配置加密 · OAuth2 远端认证 |
| 前端 | Thymeleaf SSR · 原生 JavaScript · CSS 变量设计令牌 · 内联 SVG 图标精灵 · 零 CDN |
| 部署 | 单 JAR · Docker 多阶段构建(内置中文字体、非 root 运行、HEALTHCHECK)· docker compose |
均取自真实运行页面,点击 Tab 切换;中英双语、明暗主题都有实图
任务统计、质量评分与技术债总览,登录后的第一屏。

深色 / 浅色主题一键切换,长时间评审不刺眼。

中 / 英双语一键切换,i18n 消息包随包内置。

ZIP 上传 / 代码粘贴 / Git 克隆,扫描选项与邮件通知,自动检测项目环境。

任务列表、状态流转与邮件送达状态,支持原地重扫。

评分环、五级问题分布与分类汇总、门禁结论,问题可展开源码上下文。

单条问题的修复建议、源码上下文与 AI 增强建议(问题分析、修复方案、修复代码)。

一键导出 HTML / PDF(内嵌中文字体),报告含评分、门禁结论、修复建议与 AI 增强建议。

19 个检查器逐个启停,参数与阈值界面可调。

规则默认等级与维护,改完对后续扫描即时生效。

行级与规则级忽略:按规则码 / 路径 / glob / 行号,原因留痕。

阈值配置与门禁判定:通过线、阻断上限、每级扣分、评级分界。

内置 12 个厂商模板与双协议接入,API Key AES 加密存储。

多 SMTP 发件邮箱,同一时间启用一个,支持一键测试发信,授权码 AES 加密。

通知收件人管理;扫描勾选「邮件通知」后自动推送 HTML 摘要 + PDF 附件。

触发器与访问令牌管理,Webhook 触发扫描。

平台、分支过滤、仓库范围、扫描行为与发信开关。

每次触发的状态流转追溯(PENDING → RUNNING → SUCCESS / FAILED),可按触发器筛选。

内嵌元数据库与动态外接数据源,可视化切换 + 连通性测试。

对接企业 OA / 统一登录(OAuth2 单点登录与角色映射)。

OAuth2 认证源配置:授权 / 令牌 / 用户信息端点与角色映射。

版本、仓库地址与联系方式。
