sunmh207 / AI-Codereview-Gitlab
基于大模型(DeepSeek,OpenAI等)的 GitLab 自动代码审查工具;支持钉钉/企业微信/飞书推送消息和生成日报;支持Docker部署;可视化 Dashboard。
View on GitHubAI Architecture Analysis
This repository is indexed by RepoMind. By analyzing sunmh207/AI-Codereview-Gitlab in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.
Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.
Repository Overview (README excerpt)
Crawler view开源版 | Pro版 项目简介 本项目是一个基于大模型的自动化代码审查工具,帮助开发团队在代码合并或提交时,快速进行智能化的审查(Code Review),提升代码质量和开发效率。 功能 • 🚀 多模型支持 • 兼容 DeepSeek、ZhipuAI、OpenAI、Anthropic、通义千问 和 Ollama,想用哪个就用哪个。 • 📢 消息即时推送 • 审查结果一键直达 钉钉、企业微信 或 飞书,代码问题无处可藏! • 📅 自动化日报生成 • 基于 GitLab & GitHub & Gitea Commit 记录,自动整理每日开发进展,谁在摸鱼、谁在卷,一目了然 😼。 • 📊 可视化 Dashboard • 集中展示所有 Code Review 记录,项目统计、开发者统计,数据说话,甩锅无门! • 🎭 Review Style 任你选 • 专业型 🤵:严谨细致,正式专业。 • 讽刺型 😈:毒舌吐槽,专治不服("这代码是用脚写的吗?") • 绅士型 🌸:温柔建议,如沐春风("或许这里可以再优化一下呢~") • 幽默型 🤪:搞笑点评,快乐改码("这段 if-else 比我的相亲经历还曲折!") **效果图:** 原理 当用户在 GitLab 上提交代码(如 Merge Request 或 Push 操作)时,GitLab 将自动触发 webhook 事件,调用本系统的接口。系统随后通过第三方大模型对代码进行审查,并将审查结果直接反馈到对应的 Merge Request 或 Commit 的 Note 中,便于团队查看和处理。 部署 方案一:Docker 部署 **1. 准备环境文件** • 克隆项目仓库: • 创建配置文件: • 编辑 conf/.env 文件,配置以下关键参数: **2. 启动服务** **3. 验证部署** • 主服务验证: • 访问 http://your-server-ip:5001 • 显示 "The code review server is running." 说明服务启动成功。 • Dashboard 验证: • 访问 http://your-server-ip:5002 • 看到一个审查日志页面,说明 Dashboard 启动成功。 方案二:本地Python环境部署 **1. 获取源码** **2. 安装依赖** 使用 Python 环境(建议使用虚拟环境 venv)安装项目依赖(Python 版本:3.10+): **3. 配置环境变量** 同 Docker 部署方案中的.env 文件配置。 **4. 启动服务** • 启动API服务: • 启动Dashboard服务: 配置 GitLab Webhook • 创建Access Token 方法一:在 GitLab 个人设置中,创建一个 Personal Access Token。 方法二:在 GitLab 项目设置中,创建Project Access Token • 配置 Webhook 在 GitLab 项目设置中,配置 Webhook: • URL:http://your-server-ip:5001/review/webhook • Trigger Events:勾选 Push Events 和 Merge Request Events (不要勾选其它Event) • Secret Token:上面配置的 Access Token(可选) **备注** • Token使用优先级 • 系统优先使用 .env 文件中的 GITLAB_ACCESS_TOKEN。 • 如果 .env 文件中没有配置 GITLAB_ACCESS_TOKEN,则使用 Webhook 传递的Secret Token。 • 网络访问要求 • 请确保 GitLab 能够访问本系统。 • 若内网环境受限,建议将系统部署在外网服务器上。 配置消息推送 1.配置钉钉推送 • 在钉钉群中添加一个自定义机器人,获取 Webhook URL。 • 更新 .env 中的配置: 企业微信和飞书推送配置类似,具体参见 常见问题 常见问题 **1.如何对整个代码库进行Review?** 可以通过命令行工具对整个代码库进行审查。当前功能仍在不断完善中,欢迎试用并反馈宝贵意见!具体操作如下: 运行后,请按照命令行中的提示进行操作即可。 **2.其它常见问题** 参见 常见问题 🏆 Code Review Pro 版 功能更丰富的 AI Code Review 版本 体验站: https://demo.mzfuture.com 项目介绍与使用说明 Code Review Pro 版 快速启动命令 **多种统计图** **成员提交分析** **Deep Review** **项目哨兵** 相关项目 如果你正在使用 AI Agent 开发工具 (如: Cursor、Cloude Code ...),并希望对人机交互过程进行全面的记录与回溯分析,推荐使用 Entire Dashboard。该项目提供了完整的人机交互记录与可视化分析功能,可帮助你深入理解 AI Agent 的使用模式,优化交互体验,提升开发效率。 交流 若本项目对您有帮助,欢迎 Star ⭐️ 或 Fork。 有任何问题或建议,欢迎提交 Issue 或 PR。 也欢迎加微信/微信群,一起交流学习。 Star History