Back to MCP directory
publicPublicdnsLocal runtime

rigour

Rigour是一个AI代码代理治理平台,提供实时安全扫描、质量门禁和内存治理,防止敏感信息泄露并确保AI生成代码的质量。

article

README

🚀 Rigour

AI 智能体治理。一键搞定,适用于所有智能体。

Rigour 是位于 AI 编码智能体和你的代码库之间的安全与质量保障层。你可以将其视为 AI 生成代码的杀毒软件,具备本地智能和云端深度分析能力。

它能管控其他工具无法处理的三件事:

  1. 输入内容 —— 数据丢失防护(DLP)在敏感信息到达任何智能体之前将其拦截。
  2. 输出内容 —— 质量关卡可捕捉虚构的导入、不安全的模式和偏差。
  3. 持久化内容 —— 内存治理可防止机密信息泄露到智能体内存中。

Rigour 可与 Claude Code、Cursor、Cline、Windsurf 和 GitHub Copilot 等工具配合使用。只需运行一次 rigour init 命令,即可完成所有设置,包括钩子、MCP 工具、规则、DLP 和模式索引。

🚀 快速开始

npx @rigour-labs/cli init

此命令将完成以下操作:

  • 根据自动检测到的项目设置创建 rigour.yml 文件。
  • 为每个检测到的智能体安装实时钩子(阻塞模式)。
  • 配置 MCP 服务器以实现智能体协作治理。
  • 启用 DLP,在敏感信息到达智能体之前将其拦截。
  • 构建模式索引,实现即时重复检测。
  • 一切以本地优先,代码不会离开你的设备。

✨ 主要特性

工作原理

Rigour 使用 两层监督模型

  • 第一层 —— 钩子(自动,<100ms):每次文件写入时都会触发内联检查,智能体无法绕过这些检查。可实时捕捉机密信息、虚构的导入、文件大小违规和命令注入等问题。
  • 第二层 —— MCP 工具(智能体协作):指示智能体在关键时间点调用 Rigour 工具,如在开始前调用 rigour_recall,在创建代码前调用 rigour_check_pattern,在完成任务前调用 rigour_check。规则文件(.cursor/rules/rigour.mdcCLAUDE.md.clinerules)强制执行此工作流程。

AI 智能体 DLP(数据丢失防护)

每个 AI 智能体都有一个预输入钩子,可实时(<50ms)扫描 29 种敏感信息模式,包括云密钥(AWS、GCP、Azure)、API 令牌(OpenAI、GitHub、Stripe 等)、私钥(RSA、EC、ED25519)、数据库 URL、JWT 等。还包括反规避强化措施,如 Unicode 规范化、熵检测和 JSON 反序列化扫描。

质量关卡(27 种以上确定性检查)

这些确定性的通过/失败关卡可捕捉 AI 智能体可能出现的错误:

  • 虚构的导入 —— 支持 8 种语言的语言感知解析。
  • 幻影 API —— 检测大语言模型虚构的不存在的标准库或框架方法。
  • 重复偏差 —— 采用三阶段检测:MD5 精确匹配 → AST Jaccard(tree-sitter) → 语义嵌入(all-MiniLM-L6-v2)。
  • 风格偏差 —— 根据项目基线检查命名约定。
  • 逻辑偏差 —— 跟踪比较运算符、分支数量和返回语句。
  • 安全模式 —— 检测硬编码的机密信息、命令注入、SQL 注入和 XSS 等问题。
  • 依赖膨胀 —— 检测未使用的依赖项和重型替代方案(如 moment→dayjs)。
  • 测试质量 —— 检测空测试、重言式断言和模拟滥用等问题。

深度分析(本地强化学习 + 云端学习)

Rigour 的深度分析并非简单地让大语言模型审查代码,而是运行一个 三阶段管道,模型受事实约束:

  1. 事实提取(确定性) —— 进行 AST 解析、语义嵌入、风格指纹、逻辑基线和依赖图分析,不涉及大语言模型。
  2. 大语言模型解释 —— 模型接收结构化事实(而非原始代码),专注于 SOLID 原则、设计模式和架构。
  3. 验证(确定性) —— 对大语言模型的每个发现进行交叉引用,丢弃虚构的发现。

本地模式 配备了一个 GGUF 边车模型(Qwen2.5-Coder),可在任何 CPU 上运行,无需 GPU、API 密钥,代码也不会离开你的设备。Rigour Brain(SQLite)会从每次扫描中学习:模式在多次出现时得到强化,长时间未出现则会衰减,强度足够时会提升为硬规则。这就是“本地强化学习”,是你项目的专属学习免疫系统。

云端模式 通过自带密钥(BYOK)将结构化事实发送到你选择的提供商(Claude、OpenAI、Gemini 等)进行更深入的分析。同样采用三阶段管道,使用更强大的模型。

rigour check --deep              # 本地边车(轻量级,适用于任何 CPU)
rigour check --deep --pro        # 本地边车(完整版,代码专用)
rigour check --deep --provider claude -k sk-ant-xxx  # 云端 BYOK

模式索引

预构建的代码库中所有函数、类和组件的索引(.rigour/patterns.json)。通过 rigour_check_pattern MCP 工具实现 O(1) 重复检测,避免智能体扫描每个文件并浪费令牌。

rigour index                     # 构建/更新模式索引
rigour index --semantic          # 包含语义嵌入

内存与技能治理

智能体会将数据写入原生内存文件(.cursorrulesCLAUDE.md.windsurf/memories/)。Rigour 会拦截这些写入操作,并强制智能体使用 rigour_remember,在数据持久化之前对每个值进行 DLP 扫描。读取操作也会受到限制,在 DLP 安装之前存储的机密信息在读取时会被阻止。

📦 安装指南

# npx(最快)
npx @rigour-labs/cli --version

# Homebrew
brew tap rigour-labs/tap && brew install rigour

# 全局 npm
npm install -g @rigour-labs/cli

💻 使用示例

核心命令

rigour init                          # 完整设置:配置、钩子、MCP、DLP、模式索引
rigour check                         # 运行所有质量关卡
rigour check --deep                  # + 本地大语言模型深度分析
rigour check --deep --pro            # + 完整深度模型
rigour scan                          # 零配置扫描(无需 rigour.yml)
rigour hooks init --tool cursor      # 为特定工具安装钩子
rigour hooks check --files src/a.ts  # 快速文件检查(<100ms)
rigour index                         # 构建模式索引
rigour brain                         # 显示本地内存状态
rigour brain --compact               # 清理旧数据,回收磁盘空间
rigour studio                        # 可视化仪表盘
rigour doctor                        # 诊断安装和准备情况

MCP 集成

将 Rigour 作为 MCP 服务器添加,智能体可以通过工具调用获得质量关卡、内存治理和模式检查功能:

{
  "mcpServers": {
    "rigour": {
      "command": "npx",
      "args": ["-y", "@rigour-labs/mcp"]
    }
  }
}

主要 MCP 工具: | 工具 | 用途 | | ---- | ---- | | rigour_check | 运行所有质量关卡 —— 在任务完成前必须调用 | | rigour_check_pattern | 检查函数/组件是否已存在 —— 在创建代码前必须调用 | | rigour_recall | 加载项目内存和约定 —— 在任务开始时必须调用 | | rigour_remember | 受 DLP 保护的持久化内存 | | rigour_review | PR 差异分析 | | rigour_security_audit | 对依赖项进行 CVE 扫描 |

CI 配置

- run: npx @rigour-labs/cli check --ci

演示

rigour demo                                              # 快速演示,包含钩子和关卡
rigour demo --cinematic                                  # 完整演示:钩子、修复、缓存命中
rigour demo --repo https://github.com/fastapi/fastapi    # 在任何公共仓库上运行

📚 详细文档

📄 许可证

MIT © Rigour Labs

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client