核心功能一览

一个 JAR 装下代码评审全流程:接入、扫描、评分、门禁、治理、报告邮件、CI 联动、认证与多库支持 —— 九大功能组,逐条展开

📥
GROUP 01 · INPUT

多种代码接入方式

  • 上传 ZIP 压缩包、直接粘贴代码片段
  • CI 场景自动 Git 克隆(GitHub / GitLab / Gitee / 自建,支持私有仓库凭据)
  • 自动环境检测:JDK 版本、构建工具、框架、依赖树、根包结构,可选执行单元测试
  • 代码快照留存,问题可回溯到源码上下文(带行号与问题行高亮)
🔬
GROUP 02 · STATIC ENGINE

本地静态分析引擎

JavaParser AST + 符号求解、ASM 字节码分析、调用图辅助降误报,19 个内置检查器完全离线运行,覆盖六大质量域。明细见下方检查器矩阵。

🤖
GROUP 03 · AI REVIEW

AI 深度评审(可选)

OpenAI 兼容 + Anthropic 双协议,内置 12 个厂商模板;逐问题三段式建议,一键批量评审。不配 AI 也能完整使用。详见下方 AI 评审一节。

🚦
GROUP 04 · SCORING & GATE

五级评分与质量门禁

对标 SonarQube 的五级严重度扣分制评分,门禁 = 阻断清零 + 评分达线;扣分值 / 通过线 / 评级分界全部页面自定义,即时生效。详见评分与门禁。

🧰
GROUP 05 · GOVERNANCE

问题治理

  • 同文件同规则问题自动聚合为一条(多处位置合并展示),不刷屏
  • 行级忽略 + 规则级忽略(按规则码 / 文件路径 / glob / 行号),忽略原因留痕
  • 检查器与规则阈值均可在页面配置启停
📤
GROUP 06 · REPORT · MAIL · CI/CD

报告、邮件推送与 CI/CD

  • HTML / PDF 报告一键导出,内嵌中文字体,含评分、门禁结论、分类统计、逐条问题与建议
  • 多 SMTP 发件配置(SSL / STARTTLS、一键测试发信、授权码 AES 加密)与收件人管理;扫描或 CI 触发器勾选「邮件通知」后,扫描完成自动推送 HTML 摘要正文 + PDF 报告附件,失败也发通知,扫描历史显示送达状态
  • Webhook 触发扫描(GitHub / GitLab / Gitee / 通用),完成自动回写 commit status、MR/PR 评论(评分 + 门禁 + Top 问题),流水线按门禁结论阻断
  • CI 访问令牌管理、扫描记录追溯
🔐
GROUP 07 · AUTH

认证与权限

  • JWT 本地账号 + 远端 OAuth2 单点登录(对接企业 OA)
  • 管理员 / 只读双角色
  • 数据库密码、API Key、仓库令牌、SMTP 授权码等敏感配置全部 AES 加密落库;SQL 全参数化,ZIP 解压含 Zip Slip 防护
🌗
GROUP 08 · UI & I18N

界面与国际化

  • Thymeleaf 服务端渲染,无 Vue / npm / Node 构建链,零 CDN 全本地化资源(内网可用)
  • 中英文双语切换
  • 深色 / 浅色主题、响应式布局(PC / 平板 / 手机)
🗄️
GROUP 09 · DATABASE

多数据库支持

H2 内嵌默认零安装;MySQL / PostgreSQL / Oracle 与达梦 / 人大金仓 / openGauss 信创驱动随包内置;任意数据库可页面上传 JDBC 驱动接入。详见数据库支持。

19 个检查器 · 覆盖明细

本地引擎完全离线:不上传代码、不依赖外部扫描服务,内置 CVE 漏洞库随包发布

质量域覆盖内容
缺陷 编译诊断、空指针风险、资源泄露、异常处理(空 catch 等)
安全(SAST) SQL 注入、命令注入、不安全反序列化、硬编码密钥、弱加密、弱随机数、XXE、SSRF、路径穿越
架构约束 控制器跨层直连 DAO、下层反向依赖上层、实体泄漏到接口层
并发 单例共享可变状态、静态 SimpleDateFormat、双重检查锁缺 volatile
风格 / 冗余 命名规范、魔法数字、通配符导入、超长行、TODO 注释、未使用方法、重复代码块(CPD 式 Token 指纹,自动排除 getter/setter 与构造方法等样板,误报少)
依赖漏洞 解析 pom.xml / build.gradle,与内置 CVE 漏洞库比对(可选 OSV 在线增强,默认关闭)
质量 / 性能 / 框架 圈复杂度、方法 / 文件长度、性能问题、Spring 最佳实践

AI 深度评审

可选增强:不配置任何 AI,静态扫描、评分门禁、报告与 CI 集成一切照常

双协议 · 12 个厂商模板

OpenAI 兼容协议与 Anthropic 协议双通道,内置 12 个厂商模板开箱即选,API Key AES 加密存储:

阿里百炼 火山方舟 DeepSeek Kimi 智谱 百度千帆 Gemini Claude OpenAI Ollama vLLM LocalAI

Ollama / vLLM / LocalAI 支持本地私有部署,内网环境零 token 成本。

逐问题三段式建议

  • 单条问题「AI 增强建议」:问题分析 / 修复方案 / 修复代码三段式,严格限定在问题行范围内,不发散、不空谈
  • 一键「AI 深度评审」批量补齐全部未增强问题,进度实时可视
  • 评审规则页面可维护提示词与规则默认等级

五级评分与质量门禁

对标 SonarQube 的评分体系,但每一处数值你都改得动

严重度默认扣分说明
BLOCKER 阻断−25一票否决级问题,门禁默认要求清零(上限可配)
CRITICAL 严重−15高危缺陷与安全隐患
MAJOR 主要−5明显影响可维护性的问题
MINOR 次要−1风格与小瑕疵
INFO 提示0仅展示,不扣分
scoring.rule
# 评分公式(每级扣分权重页面可改)
score = 100 − Σ(数量 × 扣分)

# 门禁 = 两条线同时满足
gate  = BLOCKER ≤ 上限(0) 且 score ≥ 通过线(80)

# 评级分界(同样可改)
优秀 ≥ 90   良好 ≥ 75   一般 ≥ 60   较差 < 60

保存即时生效:每级扣分值、通过线、评级分界、阻断上限均可在「质量门禁」页自定义,无需重启、无需重扫,已有扫描结果立刻按新规则重算。

另附技术债估算:按规则目录把每个问题折算成修复分钟数,汇总成「8 小时 55 分」式的排期依据。

多数据库支持

元数据库开箱即用,团队规模化时页面可视化切换外接库,自动建表 / 迁移,支持连通性测试

数据库说明
H2(内嵌)默认,开箱即用,零安装
MySQL / PostgreSQL / Oracle内置驱动
达梦 DM / 人大金仓 / openGauss信创场景,驱动随包内置
自定义 JDBC页面上传驱动 JAR 即可接入任意数据库
H2 内嵌默认 MySQL 内置驱动 PostgreSQL 内置驱动 Oracle 内置驱动 达梦 DM 人大金仓 openGauss 自定义 JDBC 页面上传驱动

技术栈

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

效果预览 · 22 张界面截图

均取自真实运行页面,点击 Tab 切换;中英双语、明暗主题都有实图

仪表盘

任务统计、质量评分与技术债总览,登录后的第一屏。

仪表盘:任务统计、质量评分与技术债总览

暗色模式

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

暗色模式:深色主题切换

英文界面

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

英文界面:中 / 英双语切换

新建扫描

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

新建扫描:ZIP 上传 / 代码粘贴与扫描选项

扫描历史

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

扫描历史:任务列表、状态流转与邮件送达状态

扫描结果

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

扫描结果:五级问题分布、门禁结论与源码上下文

问题详情与 AI 增强建议

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

问题详情与 AI 增强建议:问题分析、修复方案、修复代码

导出报表

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

导出报表:评分、门禁结论、修复建议与 AI 增强建议

检查器配置

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

检查器配置:检查器启停与参数调整

评审规则

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

评审规则:规则默认等级与维护

忽略规则

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

忽略规则:路径与规则级忽略配置

质量门禁

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

质量门禁:阈值配置与门禁判定

AI 厂商配置

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

AI 厂商配置:内置厂商模板与双协议接入

发件配置

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

发件配置:多 SMTP 发件邮箱与测试发信

邮件收件人

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

邮件收件人:通知收件人管理

CI/CD 触发器

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

CI/CD 触发器:触发器与访问令牌管理

新建触发器

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

新建触发器:平台、分支过滤、扫描行为与发信开关

触发扫描记录

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

触发扫描记录:每次触发的状态流转追溯

数据库配置

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

数据库配置:内嵌元数据与动态外接数据源

远端认证

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

远端认证:对接企业 OA / 统一登录

新增远端认证

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

新增远端认证:OAuth2 认证源配置

系统信息

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

系统信息:版本、仓库地址与联系方式