repomri
v0.1.0
Published
A zero-dependency MRI scan for your AI coding agent attack surface.
Maintainers
Readme
一条命令开始
npx repomri@latest .生成可分享的单文件 HTML 报告:
npx repomri@latest . --format html --output repomri-report.html无需账号、无需 API Key、不上传代码、运行时零依赖。
npm 首次发布前,可克隆仓库后执行
node bin/repomri.mjs .。
为什么需要它
AI 编程代理会主动读取许多容易被忽视的文件:AGENTS.md、CLAUDE.md、Cursor Rules、Skills、MCP 配置、包安装脚本和 GitHub 工作流。这些入口可能悄悄扩大权限、泄漏密钥、绕过确认,或者执行未锁定版本的远程代码。
RepoMRI 只扫描这些真正的“代理攻击面”,并生成:
- 0–100 风险分与 A+–F 等级
- 精确到文件和行号的风险证据
- 每条风险的可执行修复建议
- 终端、JSON、独立 HTML 三种格式
- 可嵌入 README 的 SVG 分数徽章
- PR 中可直接拦截高风险变更的 GitHub Action
当前检测能力
内置 18 条确定性规则,覆盖六类风险:
| 类别 | 典型风险 |
|---|---|
| 指令完整性 | 覆盖上级指令、隐藏行为、绕过授权 |
| 执行安全 | 破坏性命令、通用 Shell 包装 |
| 密钥安全 | 明文 Token、凭证外传指令 |
| 供应链 | 未锁版本的 MCP 包、远程脚本直接执行 |
| 权限边界 | 通配工具权限、GitHub Token write-all |
| 网络边界 | 非加密的远程 MCP 地址 |
RepoMRI 是 AI 代理配置的专项体检工具,适合与 Secret Scanner、SAST 一起使用。
在 GitHub PR 中使用
name: RepoMRI
on: [pull_request]
permissions:
contents: read
jobs:
scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: LiaoQi98/repomri@v1
with:
fail-on: high隐私
RepoMRI 不发起网络请求、没有遥测,只读取支持的代理表面文件。扫描结果始终留在本机。疑似密钥会在输出前自动脱敏。
参与贡献
最简单的贡献方式是提交“一条应该命中的危险示例 + 一条不应命中的安全示例”。详细说明见 CONTRIBUTING.md。
如果 RepoMRI 帮你发现了意外风险,欢迎 Star,并把脱敏后的案例分享给社区。
