AI代码审查工具

一个轻量级、本地优先的代码审查工具,使用AI对代码变更提供快速反馈,适用于个人开发者和学习项目。

  • by Visko93
  • TypeScript
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 visko93/mcp-server-workshop

使用说明

本地AI代码审查员🔍

一个轻量级的、本地优先的代码审查工具,使用人工智能对代码更改提供快速反馈。它使用TypeScript构建,由Ollama提供支持,分析git差异,并提供可操作的建议来改进您的代码。

特性✨

  • 🚀 本地优先:完全在您的机器上运行-不需要API密钥或互联网
  • 📝 Git集成:自动分析您未提交的更改
  • 🤖 AI驱动:使用deepseek编码器模型进行智能代码审查
  • 🎨 丰富的输出:清晰、彩色的终端输出,带有可操作的建议
  • ⚡ 快速:快速设置和即时反馈
  • 🔒 私人:你的代码永远不会离开你的机器

先决条件📋

在开始之前,请确保您已经:

  • Windows 11
  • Node.js v22.0.0或更高版本
  • npm v11.0.0或更高版本
  • 没有 安装

安装🛠️

  1. 克隆存储库:

    git clone <repository-url>
    cd code-reviewer
    
  2. 安装依赖项:

    npm install
    
  3. 拉动所需的模型:

    ollama pull deepseek-coder:latest
    
  4. 验证安装:

    ollama list   # Should show deepseek-coder
    

用法💻

  1. 对项目进行一些更改

  2. 运行审查工具:

    npx tsx src/index.ts /path/to/your/project
    
  3. 查看终端中的建议

输出示例:

🔍 Code Review Assistant
─────────────────────
Reviewing project: /path/to/your/project

📋 Summary
Found 3 issues in your changes...

🎯 Detailed Analysis
[app.ts]
❌ ERROR (line 15)
   Unused variable 'config'
   → Impact: Increases code size and reduces maintainability
   → Fix: Remove unused variable or implement intended usage

...

项目结构🏗️

src/
  ├── index.ts      # CLI entry point
  ├── reviewer.ts   # Core review logic
  ├── git.ts        # Git operations
  ├── ollama.ts     # Model interface
  └── types.ts      # TypeScript types

配置🔧

您可以通过添加 .reviewconfig 项目中的文件夹:

your-project/
  ├── .reviewconfig/
  │   ├── standards.md    # Project coding standards
  │   └── patterns.md     # Preferred patterns
  └── ...

故障排除🔍

常见问题和解决方案:

  1. Ollama没有回应

    • 检查Ollama是否在您的系统托盘中运行
    • 证实 ollama list
    • 如果需要,重新启动Olama
  2. 模型问题

    • 确保安装了deepseek编码器: ollama pull deepseek-coder:latest
    • 检查可用内存(建议最小8GB)
    • 关闭不必要的应用程序
  3. 节点版本错误

    • 将Node.js更新到v22+: node -v
    • 将npm更新到v11+: npm -v

局限性🚧

虽然快速代码审查功能强大,但请注意:

  • 与云替代方案相比,本地模型的功能有限
  • 资源使用取决于您的硬件
  • 复杂的分析可能需要基于云的解决方案
  • 模型响应的质量可能不同

最佳实践🌟

  1. 用途:

    • 对代码更改的快速反馈
    • 个人项目
    • 学习和实验
  2. 考虑以下云替代方案:

    • 全团队代码审查
    • 生产部署
    • 复杂的分析需求

许可证📄

MIT许可证