CodeGuardian AI 是一个基于 Spring Boot 3.x 和 Java 21 的智能代码审查系统。它能够自动化地对代码进行深度审查,识别潜在的bug、安全漏洞、性能问题和代码异味,并生成详细的审查报告。
- Java: 21
- Spring Boot: 3.2.0
- 数据库: PostgreSQL
- 构建工具: Maven
- 其他: Lombok, Jackson, OkHttp, JavaParser, Thymeleaf
- ✅ 代码片段审查
- ✅ 单个文件审查
- ✅ 目录审查
- ✅ 项目审查
- ✅ Git项目审查
- ✅ AI模型集成
- ✅ 审查报告生成(HTML/Markdown)
- ✅ 审查历史查询
- JDK 21+
- Maven 3.6+
如果需要使用AI功能,需要配置AI服务:
# application.yml
ai:
base-url: https://api.openai.com
api-key: your-api-key
model: gpt-3.5-turbo或者通过环境变量:
export AI_BASE_URL=https://api.openai.com
export AI_API_KEY=your-api-key
export AI_MODEL=gpt-3.5-turbo如果不配置AI服务,系统会返回模拟数据用于测试。
确保 PostgreSQL 已安装并运行,然后配置数据库连接:
# 使用环境变量(推荐)
export DB_HOST=localhost
export DB_PORT=5432
export DB_NAME=codeguardian
export DB_USERNAME=postgres
export DB_PASSWORD=your_password或者修改 src/main/resources/application.yml 中的数据库配置。
详细设置步骤请参考 数据库设置指南
# 编译项目
mvn clean compile
# 运行项目
mvn spring-boot:run- 登录页面: http://localhost:8080/login
- 应用首页: http://localhost:8080
- Actuator健康检查: http://localhost:8080/actuator/health
默认账号: admin / admin123
POST /api/review/snippet
Content-Type: application/json
{
"codeSnippet": "public class Test { ... }",
"language": "java",
"taskName": "测试代码片段"
}POST /api/review/file
Content-Type: application/json
{
"filePath": "/path/to/file.java",
"taskName": "文件审查"
}POST /api/review/directory
Content-Type: application/json
{
"directoryPath": "/path/to/directory",
"taskName": "目录审查"
}POST /api/review/project
Content-Type: application/json
{
"projectPath": "/path/to/project",
"taskName": "项目审查"
}GET /api/review/task/{taskId}GET /api/review/task/{taskId}/findingsGET /api/review/history?name=关键词&reviewType=FILE&page=0&size=20POST /api/report/{taskId}GET /api/report/{taskId}/htmlGET /api/report/{taskId}/markdown数据库脚本位于 database/ 目录:
# 1. 创建数据库
createdb -U postgres codeguardian
# 2. 执行建表脚本
psql -U postgres -d codeguardian -f database/schema.sql
# 3. (可选)插入示例数据
psql -U postgres -d codeguardian -f database/init_data.sql详细说明请参考 database/README.md
code-review-ai-agent/
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/codeguardian/
│ │ │ ├── CodeReviewApplication.java # 主启动类
│ │ │ ├── config/ # 配置类
│ │ │ ├── constants/ # 常量类
│ │ │ ├── controller/ # 控制器
│ │ │ ├── dto/ # 数据传输对象
│ │ │ ├── entity/ # 实体类
│ │ │ ├── exception/ # 异常处理
│ │ │ ├── repository/ # 数据访问层
│ │ │ └── service/ # 服务层
│ │ └── resources/
│ │ ├── application.yml # 主配置文件
│ │ ├── application-dev.yml # 开发环境配置
│ │ └── application-prod.yml # 生产环境配置
│ └── test/ # 测试代码
├── docs/ # 项目文档
│ ├── 系统设计文档.md # 系统设计文档
│ └── 架构设计图.md # 架构设计图
├── pom.xml # Maven配置
└── README.md # 项目说明
- 项目骨架搭建
- 基础实体和DTO
- 核心服务实现
- REST API接口
- 报告生成功能
- Git集成
- 异步任务处理
- 规则引擎集成
- RAG增强
- Function Calling
MIT License