mcpField
D
DiffSense

DiffSense

本地服务
github.com/GoldenSupremeSaltedFish版本控制302 天前更新

关于 DiffSense

DiffSense 是一个用于 MR/PR 阶段的变更风险审计工具,通过语义 diff 与规则引擎评估当前变更引入的回归风险。它提供 MCP 服务形式,只读运行,适合 CI 流水线与 AI Agent 集成。

主要功能

  1. 01针对 diff 的语义风险审计,不做全库扫描
  2. 02输出 review_level 与建议操作
  3. 03版本化 JSON 契约与 SARIF 2.1.0 输出
  4. 04只读 MCP 服务,提供审计与规则查询工具
  5. 05支持 GitHub 与 GitLab 集成

适用场景

  1. 01在 GitHub 或 GitLab 的 PR 中自动执行变更风险审计
  2. 02在本地对变更进行回放审计
  3. 03为 AI Agent 或 CI 门禁提供机器可读的审计结果

MCP 相关

该项目提供只读 MCP 服务,向 MCP 客户端暴露 audit_diff、audit_replay、list_rules 和 explain_rule 工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"goldensupremesaltedfish-diffsense": {
"command": "uvx",
"args": [
"diffsense"
]
}
}
}
启动命令uvx diffsense

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypidiffsense2.3.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

DiffSense

DiffSense 是 PR 阶段的变更风险关卡:它评估当前差异是否引入回归风险,不执行完整代码库扫描或风格检查。专为减少告警、提高精确度、降低延迟和提供可解释结果而设计。

Version License VSCode Marketplace DeepWiki Agent


快速开始

场景操作
GitHub Pull Request将 diffsense/docs/quickstart.md 中的工作流(方法 1)复制到目标仓库的 .github/workflows/diffsense.yml。使用默认的 GITHUB_TOKEN,无需额外配置。提交并创建或更新 PR 后,工作流会自动执行审计并在 PR 下发布结果。
本地审计在仓库根目录运行 pip install -e diffsense,或运行 pip install "git+https://github.com/GoldenSupremeSaltedFish/DiffSense.git@main#subdirectory=diffsense",然后执行 diffsense replay <path-to-diff>。
Agent / 大模型集成使用 pip install "diffsense[mcp]" 安装 MCP 服务并运行 diffsense-mcp,或直接使用 JSON 契约 / SARIF。请参阅 Agent 集成指南。

完整步骤请参阅 diffsense/docs/quickstart.md。

可选:将 .diffsense.yaml 添加到仓库根目录,以使用官方推荐配置,适用于大多数团队。


功能

  • CI / 本地:对 MR/PR 差异执行语义风险审计,输出 review_level 和建议操作。仅分析变更内容,不会拖慢流水线。低质量规则会自动降级。不会自动修改 CI 状态;是否拦截由人工或下游流程决定。
  • Agent / 大模型集成:为 Agent 和 CI 关卡提供确定性、机器可读的接口——带版本的 JSON 契约(schema_version)、SARIF 2.1.0 输出,以及只读 MCP 服务(audit_diff / audit_replay / list_rules / explain_rule)。请参阅 Agent 集成指南和 CLI 契约。
  • VSCode 扩展:在本仓库的 vscode-extension 目录中维护(双产物布局)。可从 Marketplace 安装,或从 Releases 下载 VSIX。

快速开始(详细说明)

GitHub Actions

将 diffsense/docs/quickstart.md 中的完整 YAML(方法 1)复制到仓库的 .github/workflows/diffsense.yml,即可启用 PR 审计。

GitLab CI
  1. 在项目中前往 Settings → CI/CD → Variables,添加变量 DIFFSENSE_TOKEN(具有 api 权限的 Personal Access Token;建议勾选 Mask variable)。
  2. 在 .gitlab-ci.yml 中添加相应的作业。示例请参阅 diffsense/gitlab-ci-example.yml。
VSCode 扩展

在本仓库的 vscode-extension 目录中维护。可从 Marketplace 安装,或从 Releases 下载 VSIX。


Project Structure (This Branch)

DiffSense/
├── diffsense/          # CLI, rule engine, GitHub/GitLab adapters, MCP server; see docs/quickstart.md for quick start
├── vscode-extension/   # VS Code extension (dual-artifact line)
├── AGENTS.md           # repository guide for AI coding agents
└── technical_documentation/

Development

git clone https://github.com/GoldenSupremeSaltedFish/DiffSense.git
cd DiffSense/diffsense
pip install -e ".[dev]"
pytest tests/ -v

See diffsense/CONTRIBUTING.md for details.


License & Links

English | 中文版(存档)

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。