AI News HubLIVE
站内改写2 分钟阅读

Show HN:AI 智能体行动前核查的“公司大脑”

gnt 是一个为 AI 智能体设计的开源治理层,把公司规则以 Markdown 文件存入代码仓库,并通过普通 PR 合并来批准规则。智能体通过 MCP 调用 check_action 等工具,在退款、删除等高风险操作前获得允许、阻止或需要人工审批的结论,且有完整的来源追踪。支持自托管或使用托管版 gntai.dev。

来源Hacker News AI作者: lukaadzic

gnt 是一个面向 AI 智能体的治理层,目标是让团队用管理代码的方式来管理 AI 的行为边界。核心思路是把规则直接写进代码仓库,以 Markdown 文件形式存放,并通过普通的 PR 流程审批;合并 PR 即代表规则生效,不需要额外控制面板。这样一来,每条规则都能追溯到对应的 Git 文件和审批 PR,回答“智能体为什么这么做”时始终有据可查。

gnt 以 MCP 服务器形式提供五个工具:check_action 会在智能体执行退款、删除、给客户发消息等高风险操作前检查规则,返回 allowed、blocked 或 needs_human 三种结论,并附带引用的规则和一句话原因;needs_human 是默认的失败闭锁结果,表示没有已批准规则覆盖此操作、检索失败或检查未完成,系统不会猜测。search_rules 提供可选按标签过滤的语义搜索;get_rule 用来获取单条规则的来源和审批信息;list_skill_packs 与 get_skill_pack 则用于查看编译后的技能包。团队只需要运行一次 setup,此后所有智能体在行动前就会通过 MCP 对照这份 git 原生规则手册。

快速上手流程是:用 npm 安装 CLI,执行 gnt login 登录、gnt connect github 连接仓库,再运行 gnt prebrain 扫描来源并打开 PR;在 GitHub 上合并该 PR 就是批准。日常命令还包括 gnt review 查看待审批规则、gnt status 查看状态、gnt pull 下载最新技能包,以及 gnt gaps 列出没有规则覆盖的查询。规则文件是带 YAML frontmatter 的 Markdown,元数据包含 title、status、confidence、owner_id、source_citations、approved_by、pr_number 等,正文则用纯 Markdown 写规则内容。

隐私方面,CLI 和 Web 应用没有分析或遥测依赖。prebrain 默认使用云端提取,源文本会直接发送给 Anthropic API,或发送给启用了零数据保留的 Vercel AI Gateway,不会经过 gnt 自己的服务器;不过提取出的候选规则仍会发给 gnt API 来打开 PR。如果希望完全本地处理,可以加 --mode local 连接本地 Ollama。规则存放在已连接的 GitHub 仓库和 gnt 数据库中,MCP 工具读取 gnt 的存储,而不是每次调用都克隆仓库。自托管时,只有你自己设置 SENTRY_DSN,错误数据才会发送到 Sentry。

团队协作上,任何能访问已连接仓库的人都可以写规则,既可以通过 gnt prebrain 从真实来源批量提取,也可以通过 gnt review 手工提议。合并 PR 就是批准,没有单独的发布步骤;提交到仓库的是 rules/*.md 文件。项目使用 Apache-2.0 许可证,作者解释“为何免费”:自托管永远免费,收费部分包括 gntai.dev 托管、GitHub、Slack、Linear、Notion、Zendesk 等托管 OAuth 连接器,以及按用量计费的 AI 功能。

自托管目前有一个真实缺口:gnt login 的浏览器登录步骤需要一个 /cli-login 页面,而该页面由托管版 Web 应用提供,并不包含在本仓库中,所以现在还没有纯 CLI 登录流程,也没有手动写入密钥的命令;需要自行搭建一个简单前端来完成这个路由。此外,部署时要正确填写 apps/api/.env 和 apps/store/.env 中的配置,尤其是 store 与 api 之间的内部密钥必须逐字节一致,否则按设计会失败关闭。若规则保存时出现 embedding 或 rerank 错误,通常是在 apps/store/.env 中缺少或留空了 ZEROENTROPY_API_KEY。完整命令参考、自托管指南和安全策略都可以在仓库 README 中找到。

Show HN:AI 智能体行动前核查的“公司大脑” | AI News Hub