代码自动审查工具

Cursor Auto-Review MCP Server 是一个自动化代码审查、测试、代码检查及提交/PR生成的开发效率工具。

  • by dev-prajwal
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 dev-prajwal/Cursor-auto-review-mcp

使用说明

光标自动查看MCP服务器

MCP服务器,用于自动代码审查、测试、linting和commit/PR生成。

特性

可用工具

  1. get_diff -获取git diff(暂存或工作)
  2. get_recent_commits -获取最近的提交消息
  3. run_tests -运行测试套件
  4. run_lint -运行门楣
  5. generate_commit-and_pr -生成提交消息和PR描述✨ 新

新功能:提交和公关生成

这 generate_commit_and_pr 该工具分析您更改的文件并自动生成:

  • 详细提交消息 与:

    • 常规提交格式(feat/fix/re重构/corrote)
    • 更改摘要
    • 文件统计
    • 受灾地区
    • 文件类型细分
  • PR描述 与:

    • 总结:变更概述
    • 为什么:变更原因
    • 如何:实施细节
    • 风险/倒退:风险评估和回滚计划
    • 测试建议:测试检查表

用法

命令: /auto-review-commit

当你打字时 /auto-review-commit 在Cursor中,AI将:

  1. 分析所有更改的文件(默认为工作目录)
  2. 生成详细的提交消息
  3. 生成全面的公关描述
  4. 提供分析统计

例子:

/auto-review-commit

命令: /auto-review

这 /auto-review 命令现在在末尾包括commit和PR生成:

  1. 获取git diff
  2. 检查棉绒错误
  3. 运行测试(如果可用)
  4. 分析代码质量
  5. 生成提交消息和PR描述 ✨ 新

刀具参数

generate_commit_and_pr

{
  mode?: "staged" | "working"  // Default: "working"
}
  • staged:仅分析阶段性更改
  • working:分析所有工作目录更改

输出格式

该工具返回一个JSON对象,其中包含:

{
  "commitMessage": "feat(search): improve type safety, add documentation\n\n...",
  "prDescription": "## Summary\n\n...",
  "analysis": {
    "changedFiles": 2,
    "totalAdditions": 150,
    "totalDeletions": 50,
    "affectedAreas": ["app/composables", "app/components"],
    "fileTypes": { "ts": 1, "vue": 1 }
  }
}

安装

  1. 构建项目:
npm run build
  1. MCP服务器配置在 ~/.cursor/mcp.json:
{
  "mcpServers": {
    "cursor-auto-review": {
      "command": "node",
      "args": ["/path/to/cursor-autoreview-mcp/dist/index.js"]
    }
  }
}
  1. 重新启动Cursor以加载更新的MCP服务器。

运作原理

提交消息生成

该工具分析:

  • 文件更改(添加、删除、修改)
  • 代码模式(类型改进、文档、常量)
  • 受影响的区域和文件类型
  • 更改幅度(重构vs功能vs修复)

PR描述生成

该工具创建部分:

  • 总结:高级别统计概述
  • 为什么:摘自代码模式和变更分析
  • 如何:所做更改的详细分类
  • 风险/倒退:基于变更范围和受影响区域的风险评估
  • 测试建议:情境感知测试清单

例子

示例1:类型安全改进

输入:更改了文件 FilterItem 类型导入

输出:

  • 承诺: refactor(search): improve type safety, extract constants
  • PR Why:“提高类型安全性并减少潜在的运行时错误”
  • PR如何:“替换 any[] 类型正确 FilterItem[] 类型”

示例2:文档更新

输入:添加了JSDoc注释的文件

输出:

  • 承诺: docs(search): add documentation, improve error handling
  • PR Why:“增强代码文档和可维护性”
  • PR How:“在复杂功能中添加JSDoc注释”

发展

# Build TypeScript
npm run build

# Run in development (if ts-node is available)
npm start

许可证

国际学生委员会

光标自动审查mcp