这是什么
MakerChecker 是开源 AI Agent 安全网关——在 Agent 每次操作前进行安全检查,实现可编程的安全门控。类似「Agent 防火墙」:Agent 只能执行被授予权限的操作,高危操作强制人工审批,所有决策记录到加密签名的不可篡改审计日志。
适合人群:在生产环境中运行 AI Agent 的团队,需要 Agent 安全审计、权限控制、合规监管的 DevOps/SRE/安全工程师。前提是熟悉 Node.js 和 Docker。
快速上手
1. 准备工作
- Node.js 18+
- Docker(可选,用于自托管服务端)
- 了解 AI Agent 框架(LangChain / Claude SDK / CrewAI)
2. 一键扫描你的 Agent 代码
无需安装,一行命令扫描你的 Agent 代码,找出所有危险操作:
npx @makerchecker/scan .
它会标记所有高风险操作——删除数据、转账、执行 shell 命令、泄露密钥——并对标真实安全事故命名,还可以用 --fix 自动生成治理代码。
3. 嵌入 Agent 代码
npm i @makerchecker/embedded
import { createGovernor, GovernanceDeniedError } from "@makerchecker/embedded";
const gov = createGovernor()
.defineSkill("place-order@1", { riskTier: "high" })
.defineRole("agent")
.defineRole("risk-desk")
.grant("risk-desk", "place-order@1") // Agent 未被授权——默认拒绝
.defineAgent("trader", "agent");
// 包装工具。Agent 结构化地无法执行它。
const placeOrder = gov.governedTool("trader", "place-order@1", (order) => broker.submit(order));
try {
await placeOrder({ symbol: "BTC", qty: 10 });
} catch (err) {
if (err instanceof GovernanceDeniedError) console.log(err.code); // "skill_not_granted"
}
4. 启动自托管服务端(可选)
需要集中管理多 Agent 权限、人工审批收件箱和审计控制台时:
docker compose up
启动后 localhost:3000 提供 API,Postgres 存储审计日志。每条决策 Ed25519 签名 + 哈希链——修改任何一行验证即失败。导出 bundle 可离线验证。
核心功能
- 默认拒绝(Deny-by-Default):Agent 只能执行被明确授予的操作
- 角色权限控制(RBAC):定义角色、技能、授权关系
- 人工审批(Human-in-the-Loop):高危操作需独立审批人签字,Agent 不能自己批准自己
- 加密审计日志:Ed25519 签名 + SHA-256 哈希链,离线可验证
- 多框架集成:LangChain / Claude Agent SDK / CrewAI / TypeScript SDK / Python SDK
- 代码扫描:npx 一行命令扫描所有 Agent 危险操作
常见踩坑
-
审批人分离:Agent 和审批人必须使用不同角色。如果 Agent 尝试批准自己的操作,服务端返回 403。配置时确保
grant()给独立角色。 -
扫描不修改代码:
npx @makerchecker/scan默认只扫描不修改。需要--fix才会自动生成治理代码。 -
Docker 依赖:服务端需要 Docker 运行 Postgres。如果已有 Postgres 实例,可以修改
docker-compose.yml连接外部数据库。 -
许可证分层:客户端库(embedded、SDK、connectors)Apache-2.0 可闭源商用。服务端 AGPL-3.0,商业闭源需联系 hello@makerchecker.ai。
-
性能开销:每次工具调用经过治理检查增加约 10-50ms 延迟。高吞吐场景建议使用嵌入式模式而非服务端代理模式。
常见问题 FAQ
Q1: MakerChecker 和 AgentOps 有什么区别?
A: AgentOps 侧重监控和可观测性(观察 Agent 做了什么)。MakerChecker 是主动拦截——在操作执行前检查权限,拒绝未授权操作。两者互补:AgentOps 观察 + MakerChecker 拦截。
Q2: 需要改现有 Agent 代码吗?
A: 需要少量集成代码(包装工具调用),但不需要重写 Agent 逻辑。嵌入式模式只需 governedTool() 包装现有工具函数。
Q3: 支持哪些 Agent 框架?
A: LangChain、Claude Agent SDK、CrewAI 有官方 connector。其他框架可用 TypeScript SDK 或 Python SDK 直接集成。
Q4: 审计日志离线验证怎么用?
A: 导出审计 bundle 后,用 npx @makerchecker/proof-verifier verify bundle.json 离线验证。不需要数据库,不需要信任生成过程。
Q5: 适合什么规模的团队?
A: 小团队用嵌入式模式(npm install 即可)。多 Agent 多团队场景用自托管服务端(Docker compose up)。Kubernetes 部署有 Helm chart。
参考链接
📊 评分与标签
核验口径:已按现行口径通过,待按新证据契约复核
评分说明
总分 8.2/10 · P_优选
📊 可观测社区指标(数据核验日期:2026-10-02)
- GitHub: makerchecker/MakerChecker ★54,🔱2,12 tags / 8 releases(创建 2026-06-11,默认分支最近提交 2026-07-06,仓库推送 2026-09-28)
- npm: @makerchecker/scan v1.2.0(发布 2026-07-06)· 近一周下载 8 次
- npm: @makerchecker/embedded v1.2.0 · 近一周下载 1 次
- npm: @makerchecker/sdk v1.2.0 · 近一周下载 0 次
- npm: @makerchecker/proof-verifier v1.2.0 · 近一周下载 2 次
- 事故样例库: examples/ 下 53 个目录,其中 41 个为真实 Agent 事故案例(Amazon Q 删库、Cursor 清空 PocketOS 数据库、Replit 删生产库、ShadowLeak 邮件外泄等)
- 许可证: AGPL-3.0(server / web / shared)+ Apache-2.0(scan / embedded / SDK / 连接器),另有商业许可替代
⚠️ 维度集说明:本条目归属 tools.json(tool 类型)。原文件误用 agent 六维度,2026-10-02 就地改为 tool 规范六维度(满分 2.5 / 2.5 / 1.5 / 1.5 / 1.0 / 1.0),条目未跨目录搬动。原文件的「稳定性」一项按 agent 满分给到 1.4,超出 tool 满分上限(1.0),已按 tool 标准结合本次证据重新定分,而非比例换算。
⚙️ 功能完整度 2.2/2.5
- 三层安全治理:静态扫描(mc scan)+ 运行时拦截(@makerchecker/embedded)+ 自托管网关服务器(Fastify + Postgres,含审批收件箱与复核控制台),覆盖 Agent 安全全链路
- deny-by-default:未被角色明示授权的操作在执行前被拒(GovernanceDeniedError / HTTP 403),而非事后标记
- 职责分离设计:Agent 可提议操作但结构上无法批准自己的工作,高风险技能需独立角色(officer)签字
- 仓库含 10 个包(scan / embedded / proof-verifier / sdk / sdk-python / connector-langchain / connector-claude-agent / server / web / shared),三层 enforced 同一套审计格式
- 对比 AgentOps:AgentOps 是事后监控可观测性,MakerChecker 是事前拦截,治理维度不同
- 对比 Iron Gorilla:闭源商业运行时拦截,MakerChecker 开源可自托管,透明度更高
- 扣分:本实现不做操作系统级沙箱隔离,治理粒度依赖用户自行定义 role / skill / riskTier
✨ 输出质量 1.9/2.5
- 审计链可独立验证:每条事件以 SHA-256(RFC 8785 规范 JSON)链接 prev_hash 并 Ed25519 签名,导出 bundle 后任何人可离线验证,无需信任产出进程
- 来源:README 审计链 · audit-spec.md
- 扫描发现映射到 41 个真实 Agent 事故案例(本次实测 examples/ 下确为 41 个事故目录),并提供 4 个可运行的受治理用例(药械警戒、MDR 报告、肿瘤患者准入、现金对账)
- 证据不足(限制说明):未公布扫描器检出率/误报率基准,本次未在样本仓库上实跑 mc scan,「映射真实事故」仍以官方自述为准,故该维度不按上限给分
- 对比通用 SAST:只报问题不阻断;MakerChecker 的发现可落到执行前拦截
🖐️ 易用性 1.2/1.5
npx @makerchecker/scan .零安装、离线运行,默认不上传任何数据,最低门槛体验docker compose up一行命令启动完整服务器,自动种子演示数据与两类 API Key(admin / officer)- 三个独立包可单独采用,从扫描到嵌入式再到完整服务器渐进式集成
- 但完整治理集成需理解角色(roles)、技能(skills)、风险层级(riskTier)等概念,学习曲线存在;自托管网关增加运维成本
- 对比 AgentOps:AgentOps 三行代码集成(agentops.init()),MakerChecker 需定义治理策略,上手更复杂
💰 性价比 1.3/1.5
- scan / embedded / proof-verifier / SDK / 连接器均为 Apache-2.0,可自由嵌入闭源 Agent;仅 server / web / shared 为 AGPL-3.0,并提供商业许可替代
- 来源:LICENSING.md
- 自托管无订阅费,核心能力对预算敏感团队零成本
- 扣分:完整网关需自备 Postgres 与运维;AGPL 部分对闭源分发仍有合规成本
- 对比商业 Agent 治理平台:订阅制且不可自托管
🔒 稳定性 0.7/1.0
- 工程实践规范:CI 流水线集成 gitleaks 密钥扫描、镜像 CVE 扫描、SBOM 生成;提供加固 Docker 配置与非 root 容器运行
- 来源:Trust 页面
- 12 个 tag / 8 个 release,v1.2.0 为当前版本,版本管理规范
- 扣分:项目 2026-06-11 创建,默认分支最近提交停留在 2026-07-06(约三个月无主线提交),npm 包自 2026-07-06 后未再发布;周下载个位数(scan 8 / embedded 1 / sdk 0 / proof-verifier 2)、GitHub ★54,缺乏长期生产验证与外部采用证据
- 对比 AgentOps:811 commits、111 tags 的长期维护记录,社区规模远超
🛡️ 隐私安全 0.9/1.0
- 离线优先:mc scan 零安装本地运行,官方声明「nothing leaves your machine」;治理与审计在自托管环境内闭环
- 来源:README
- 审计日志可完全离线验证:导出 bundle 即可复验,审计员无需访问你的系统或运行 MakerChecker 代码
- deny-by-default 与职责分离结构性降低 Agent 越权触碰敏感数据的概率
- 扣分:密钥与部署安全由使用方自管;服务器备份与传输策略属部署责任
评分依据可追溯至公开来源,每项分数均有明确理由和数据支撑。
🏷️ 标签说明
- 开源免费:核心引擎 AGPL-3.0 开源,SDK Apache-2.0,提供商业许可替代。来源:Trust 页面
- 安全:核心定位是 Agent 安全防火墙,deny-by-default 拦截 + 签名审计链。来源:GitHub README
- Agent:面向 AI Agent 安全治理,集成 LangChain/Claude Agent SDK 等框架。来源:GitHub README
- CLI:mc scan 通过 npx 命令行运行,嵌入式包通过 npm 安装。来源:npm @makerchecker/scan
📋 来源与核验记录
- ✅ 已核验(2026-10-02): GitHub makerchecker/MakerChecker — Stars 54 / Forks 2 / 创建 2026-06-11 / 默认分支最近提交 2026-07-06 / 12 tags / 8 releases / AGPL-3.0
- ✅ 已核验(2026-10-02): README — 三层治理架构、10 个包清单、deny-by-default 与职责分离机制、审计链规格
- ✅ 已核验(2026-10-02): examples/ 目录 53 个条目,其中 41 个为真实事故案例目录;docs/ 含 quickstart、concepts、audit-spec、security-model 等 8 项
- ✅ 已核验(2026-10-02): npm registry API — 四个包均为 v1.2.0(发布 2026-07-06)、Apache-2.0;api.npmjs.org 近一周下载量 scan 8 / embedded 1 / sdk 0 / proof-verifier 2
- ✅ 已核验(2026-10-02): makerchecker.ai 与 Trust 页面 均可访问
- ⚠️ 未验证(Cloudflare 拦截): npmjs.com 页面 被安全验证拦截,改用 npm registry API 取证
- ⚠️ 未复现: README 声明的扫描检出能力未在样本仓库实测;2026-07-09 记录的 HN Show HN(43 points / 19 comments)本次未复核
⚠️ 局限与未实测声明
- 本文基于 GitHub API、README、仓库目录与 npm registry 于 2026-10-02 采集;原 2026-07-09 指标(★45 / 🔱1 / npm 周下载 67-292)已被本次读数替换
- 未实测:未在样本仓库运行 mc scan,未部署完整网关,检出率与误报率无独立数据
- 格式修正说明:本条原按 agent 六维度给分(总分 8.3),2026-10-02 就地改为 tool 规范六维度;「稳定性」按 tool 满分 1.0 重新定分(原为 1.4/1.5),其余维度按本次核验证据定分;维度和 2.2+1.9+1.2+1.3+0.7+0.9 = 8.2,总分随之 8.3 → 8.2,标签维持 P_优选(8.2 ≥ 8.0)
同分类推荐
AI开发平台 分类下的其他工具