AI 代码审查
从一次 MR开始
把团队经验变成可执行、可证明、可迭代的审查标准。
从三类真实问题
看见审查盲区
规范、结构与业务语义,为什么不能只依赖人工记忆或模型猜测?
禁止的 import,
必须在 MR 里被指出。
团队规范很明确:不能使用阿里云 StringUtils。真正的问题是,它能否稳定、自动、逐行地落到开发现场?
规则卡片固化规范,规则检测器用正则 / 代码模式匹配检测,MR(合并请求)创建后自动评论违规 import 与替代建议。


循环体内禁止调用 IO
检测器沿 代码结构追踪“循环体 → IO 调用”的关系,在规则层直接确认风险,保证同样的代码得到同样的结论。
“拼接摘要”
不能精确找人。
bdc_xm.qlr / qlrzjh 是项目上多名权利人的拼接摘要,用于列表展示和候选筛选;真正可定位到人员的记录在 bdc_qlr 明细表中。
一个项目可能有张三、李四两名权利人。项目表保存的是“张三、李四”这样的汇总文本,不代表其中任何一个人。应以 xmid 关联,查出该项目的全部权利人明细。
// qlr / qlrzjh 是多值拼接摘要,不是人员唯一标识
BdcQlrDO bdcQlrDO = new BdcQlrDO();
bdcQlrDO.setQlrmc(bdcXmDO.getQlr());
bdcQlrDO.setZjh(bdcXmDO.getQlrzjh());
entityMapper.selectByObj(bdcQlrDO);// xmid 关联明细,结果可准确对应项目下的每位权利人
BdcQlrDO bdcQlrDO = new BdcQlrDO();
bdcQlrDO.setXmid(xmid);
List<BdcQlrDO> qlrList =
entityMapper.selectByObj(bdcQlrDO);禁止使用什么?
例:禁用引用、危险 API、固定写法。
正则表达式 / 代码模式匹配代码关系是否危险?
例:循环体与 IO、调用链与资源释放。
代码结构与数据流分析业务上什么才正确?
例:A 表摘要字段、状态边界、服务职责。
知识库与智能体分析平台的关键,不是让一个模型回答所有问题,而是让每类问题进入最适合的判断路径。
人工审查和传统 AI
为什么仍会漏问题?
接入模型可以很快,但没有确定性规则、正式知识与证据链,就难以成为稳定门禁。
大部分团队的代码审查停留在文档纸面上,成员之间口口相传。
疲劳、无时间、主观偏见、认知局限,让审查质量随人和时段波动。
只看代码表面,难以识别业务背景、状态边界和服务职责。
评论停在当前 MR(合并请求),误报、漏报和修复经验没有回到下一次审查。

从 webhook 到评论区,
一条直线。
它能快速生成意见,但判断路径通常是自由的:规则、业务知识与证据没有被拆开管理。

同一个问题可能因上下文、提示词和模型状态不同而给出不同结论。
评论里有观点,却缺少规则版本、知识来源和可复核的检测证据。
一次 MR(合并请求)解决了一个问题,但下一次仍要重新提问、重新解释。
从评论机器人到
质量治理平台
把确定性规则、业务知识与 Agent 方法组织成一条可追踪的审查链路。



GitLab MR(合并请求)、Webhook、状态与评论。
规则检测器、项目模型与智能体。
规则、知识库、Skill 与版本证据。
仪表盘、模型配置与审查详情。
线上意见回流为质量资产。
结论能回到代码、知识与过程。
一次 MR 如何成为
可追溯的审查链路?
规则检测始终先行;需要时,再增加模型或智能体审查,结论给回到开发人员。


只运行规则卡片检测器,无需配置 LLM。适合禁用 API、引用方式、结构性约束,稳定、快速、可门禁。
无需 LLM / 正则 / 代码模式 / 结构分析先做规则检测;已有知识库作为上下文,又希望以较低延迟得到评审结果时使用。
规则检测 + 知识库 + LLM先做规则检测;有业务知识库、业务语义复杂,并需要配合审查 Skill 推理时使用。
规则检测 + 知识库 + Skill + 智能体状态先给结论,
评论再给证据。
- 01Commit Status 提供门禁信号
- 02汇总评论 帮助快速浏览
- 03行级评论 把问题定位到具体代码与替代方案
规则、知识库 审查Skill
共同构成质量资产
代码规则定义什么不能做,知识库辅助代码修改方向,审查 Skill 规定 Agent 如何分析。
把一句“应该避免”,
编译成一张规则卡。
规则卡片记录规则意图、适用范围、正反例、严重级别、修复建议与确定性规则检测器。
规则描述 → 正反例 → 规则检测器 → 行级证据 → 版本迭代

规则层不接入任何模型。
能用正则表达式解决的,不用猜;能用代码模式匹配解决的,不交给生成式判断;需要关系分析时,用代码结构与数据流分析。
精确捕捉禁用类、包名与固定模式。
匹配调用、条件、返回值等代码形状。
识别循环体与 IO 调用关系。
直接产出可定位、可复核的代码证据。


规则与业务知识,
分开管理。
规则卡片约束代码写法;知识库沉淀业务边界、背景和正式事实,帮助审查判断 MR(合并请求)的修改方向有没有走偏。当前主要以 Git 仓库中的 Markdown 资产接入,审查使用知识快照,保证依据固定、可追溯、可复现。
Skill 不是提示词装饰,
而是审查方法。
它规定上下文读取顺序、关注的风险维度、证据引用方式、结论格式与停止条件,让 Codex / Qoder Agent 的深度审查可复用。

为什么审查结论
可信、可复核?
每条审查结论都有规则版本、检测位置、知识证据与审查过程,才值得进入团队质量闭环。
从规则加载、命中结果、知识引用,到完整审查详情,每个结论都有对应的过程记录。
知道哪一版规则卡片触发了结论。

知道哪一行、哪一种规则检测器发现了问题。

业务判断能回到正式知识与快照。

审查详情保留模式、模型、Skill 与结果。

让经验
可执行,让结论
可复核。
下一次代码审查,不从“谁记得这条规范”开始,
而从平台已经沉淀的质量资产开始。