专业的代码智能分析工具,基于大语言模型(LLM)为您的代码库提供深度分析和专业建议。
- 🔍 智能代码分析:基于LLM的深度代码架构分析,自动识别技术栈、架构模式和设计缺陷
- 📊 项目架构报告:生成详细的Markdown格式分析报告,包含架构图、流程图、目录结构分析
- 🌿 分支对比分析:支持Git分支间的差异对比,生成详细的变更分析报告
- 💬 交互式分析:支持持续对话模式,可对设计想法进行评估和建议
- ⚡ 流式输出:实时流式输出分析结果,提升用户体验
- 🚀 性能优化:内置多级缓存机制、批处理优化、内存池管理
- 🎯 多语言支持:支持Go、JavaScript、TypeScript、Python、Java等多种编程语言
- 🔄 增量分析:支持增量更新和依赖追踪,提高分析效率
- 🛡️ 健壮性保障:goroutine泄漏检测、优雅关闭、资源管理
- Go 1.24.5:主要编程语言
- Cloudwego Eino:LLM集成框架
- OpenAI兼容API:支持多种LLM服务提供商(OpenAI、Deepseek等)
- Git:代码变更分析和分支对比
在使用前,请先配置环境变量或创建 .env 文件:
API_KEY=your_api_key_here
API_SERVER=https://api.deepseek.com/v1 # 或其他兼容OpenAI的API服务器
MODEL=deepseek-chat # 或其他支持的模型在指定项目目录执行:
方式1:非交互模式(直接分析)
codeguard.exe analyze方式2:交互模式
codeguard.exe然后在交互界面中:
- 输入
analyze进行项目架构分析 - 直接输入设计想法获取专业评估
- 输入
help查看帮助 - 输入
quit或exit退出
方式3:分支对比模式
自动模式:
codeguard.exe branch- 如果有多个分支:自动获取最近访问的两个不同分支进行对比
- 如果只有单个分支:自动对比最近的两次提交,查看最新变更
手动指定模式:
codeguard.exe branch <旧版本> <新版本>参数说明:
- 第一个参数是基准版本(旧版本)
- 第二个参数是目标版本(新版本)
- 报告会分析目标版本相对于基准版本的代码质量和变更
示例:
# 查看 feature 分支相对于 main 的变更
codeguard.exe branch main feature
# 查看最新提交的代码质量
codeguard.exe branch HEAD~1 HEAD
# 使用提交哈希对比
codeguard.exe branch abc1234 def5678首先授权:
chmod +x codeguard-mac然后在指定项目目录执行:
方式1:非交互模式(直接分析)
./codeguard-mac analyze方式2:交互模式
./codeguard-mac然后在交互界面中:
- 输入
analyze进行项目架构分析 - 直接输入设计想法获取专业评估
- 输入
help查看帮助 - 输入
quit或exit退出
方式3:分支对比模式
自动模式:
./codeguard-mac branch- 如果有多个分支:自动获取最近访问的两个不同分支进行对比
- 如果只有单个分支:自动对比最近的两次提交,查看最新变更
手动指定模式:
./codeguard-mac branch <旧版本> <新版本>参数顺序: <基准版本(旧)> <目标版本(新)>
首先授权:
chmod +x codeguard-linux然后在指定项目目录执行:
方式1:非交互模式(直接分析)
./codeguard-linux analyze方式2:交互模式
./codeguard-linux然后在交互界面中:
- 输入
analyze进行项目架构分析 - 直接输入设计想法获取专业评估
- 输入
help查看帮助 - 输入
quit或exit退出
方式3:分支对比模式
自动模式:
./codeguard-linux branch- 如果有多个分支:自动获取最近访问的两个不同分支进行对比
- 如果只有单个分支:自动对比最近的两次提交,查看最新变更
手动指定模式:
./codeguard-linux branch <旧版本> <新版本>参数顺序: <基准版本(旧)> <目标版本(新)>
分析完成后,会在项目根目录生成 codeguard_analysis 文件夹,其中:
analysis_report.md- 完整的项目智能分析报告,包含:- 项目功能和技术栈概览
- 系统架构分析(整体+子模块)
- 业务流程分析(3-5个核心场景)
- 业务逻辑深度分析
- 目录结构和职责分析
- 架构缺陷和改进建议
执行分支对比后,会生成:
branch_compare_[base]_vs_[compare].md- 详细的分支差异分析报告,包含:- 提交历史统计
- 文件变更统计
- 代码变更详细分析
- 影响评估和建议
CodeGuard 采用模块化设计,主要包含:
- analyzer: 代码分析核心模块
- 技术栈检测
- 目录结构分析
- Git差异分析
- 多阶段分析流程
- 分支对比分析
- cache: 多级缓存系统
- L1内存缓存
- L2磁盘缓存
- 并发安全保证
- llm: LLM客户端
- 批处理优化
- 流式输出支持
- 请求重试机制
- formatter: 报告生成
- Markdown格式化
- JSON格式化
- lifecycle: 生命周期管理
- 资源管理
- 优雅关闭
- goroutine泄漏检测
- 智能分析:基于LLM的深度理解,不仅分析代码结构,还能识别架构模式、业务逻辑和潜在问题
- 流式体验:实时流式输出分析结果,无需等待全部完成即可查看进度
- 分支对比:Git集成的分支差异分析,快速了解版本间的变化和影响
- 交互式对话:支持对设计想法进行评估,提供专业的架构建议
- 高性能:多级缓存、批处理、内存池等优化,确保大型项目的分析效率
MIT License
欢迎提交 Issue 和 Pull Request!