Failproof AI
为编码代理在本地拦截危险操作、循环与密钥泄漏。
按维度查看评分与理由
证据显示有策略机制(如deny/allow)和本地运行,但未明确最小权限原则;用户确认仅提及首次运行提示,未覆盖所有危险操作;数据流透明度有本地日志和仪表盘,但未说明数据流向;敏感数据处理有sanitize-api-keys策略,但未说明存储和加密;依赖安全有OSV-Scanner和Socket,但未提供扫描结果;外部影响有阻止危险git操作,但未说明网络访问;回滚机制未提及;来源归属有作者信息,但发布者未验证。
自一致性:README声称零延迟,但未提供性能数据;依赖可用性:有CI和构建流程,但未提供依赖可用性保证;失败消息:有deny消息返回给agent,但未说明错误处理。
受众和场景:面向开发者和多种agent CLI,场景明确;能力边界:有30个内置策略,但未说明自定义策略的限制;触发精度:有事件匹配,但未说明误报率;环境适配:支持多种CLI和本地运行,但未说明系统要求。
信息架构:有文档链接和目录,结构清晰;安装说明:有npm安装命令,但未提供详细步骤;命名稳定性:版本为beta,可能不稳定;示例和FAQ:有自定义策略示例,但无FAQ;已知限制:未明确列出;许可证:MIT+Commons Clause,但元数据为NOASSERTION;版本和变更日志:有版本号,但无变更日志;维护责任:有作者和联系方式,但未说明维护计划。
输出可用性:有仪表盘和日志,但未说明输出格式;边际价值:提供失败预防功能,有独特价值;成本效益:本地运行,但未提供性能数据。
声明可追溯:README有文档链接,但未提供具体证据;跨来源验证:有CI和扫描,但未提供结果;事实与推断分离:未明确区分。
- 发布者未验证,身份未知。
- 许可证元数据为NOASSERTION,实际为MIT+Commons Clause,需确认合规性。
- 版本为beta,可能不稳定。
- 未提供回滚机制。
- 未提供性能数据,零延迟声明未验证。
这个 Agent 能做什么,适合哪些场景?
Failproof AI 是面向编码代理 CLI 的本地运行时策略工具,通过钩子处理代理的工具调用。它明确支持 Claude Code、OpenAI Codex、GitHub Copilot CLI、Cursor Agent CLI、OpenCode、Pi 等命令行代理。安装后会立即启用 30 条内置策略,并在 localhost:8020 提供本地仪表盘。策略可阻止直接推送到 main/master、强制推送、在主分支提交或变基、递归删除文件,以及 API 密钥进入代理上下文。团队也可以将 JavaScript 自定义策略放入 `.failproofai/policies/` 并提交到仓库,以便其他成员拉取后加载。
运行 failproofai 后,它接入受支持代理 CLI 的钩子并处理工具调用。内置策略检查诸如 git push --force、直接推送 main/master、在 main/master 上提交/合并/变基、递归删除以及 API 密钥暴露到代理上下文等行为;策略可返回 allow()、deny(message) 或 instruct(message)。自定义策略使用 customPolicies.add() 注册,可匹配 PreToolUse 等事件,并从 ctx.toolInput 读取工具输入,例如检查 file_path。每次代理工具调用都会被本地记录,仪表盘展示执行内容、被拦截的操作和返回给代理的策略信息。
- 使用 Claude Code 或 Codex 管理生产仓库的开发者,希望在代理尝试直接推送 main/master 前自动拦截。
- 允许编码代理执行 Git 操作的团队,需要禁止
git push --force及在主分支上提交、合并或变基。 - 让代理处理代码库清理任务的工程师,需要在递归删除文件发生前进行策略拦截。
- 担心凭据被带入代理上下文的团队,希望启用
sanitize-api-keys策略。 - 需要限制 production 路径写入的仓库维护者,可在
.failproofai/policies/中提交no-production-writes自定义策略。
这个 Agent 有哪些优点和局限?
- 在代理工具调用阶段执行策略,可直接阻止危险 Git 操作和递归删除,而非只在事后审计。
- 内置 30 条策略,并明确覆盖主分支保护、强制推送和 API 密钥上下文泄漏等常见风险。
- 支持以 JavaScript 编写仓库级自定义策略,放入
.failproofai/policies/即可自动加载。 - 所有工具调用均记录在本地,localhost:8020 仪表盘可查看执行、拦截与策略反馈。
- 明确支持的是特定代理 CLI;未提供通用 API 协议或任意代理运行时的接入说明。
- 安装和运行依赖 shell、npm 以及本地文件系统访问,不是托管式 Web 服务。
- 商业转售 Failproof AI 本身需要另行协议;许可证为 MIT 加 Commons Clause。
- README 对内置策略完整行为、误报处理和性能测量的细节仅链接到外部文档,所给材料未展开说明。
如何安装或部署这个 Agent?
无需文档中说明的凭据。使用 npm 全局安装并安装策略:
npm install -g failproofai
failproofai policies --install然后运行:
failproofai首次运行会出现提示;如需关闭,设置 FAILPROOFAI_NO_FIRST_RUN=1。
如何使用这个 Agent?
完成安装后运行 failproofai,30 条内置策略会立即启用。打开 localhost:8020 查看本地会话和策略活动。要加入团队策略,在仓库创建 .failproofai/policies/ 下的 JavaScript 文件,使用 customPolicies.add({ name, match: { events: ["PreToolUse"] }, fn }) 注册;fn 返回 allow()、deny(message) 或 instruct(message)。提交该文件后,团队成员下次拉取时可加载它。
这个 Agent 与同类方案有什么区别?
它不是 Claude Code 或 Codex 的替代品,而是通过钩子为这些编码代理及其他受支持 CLI 增加运行时策略层;仓库还列出 GitHub Copilot CLI、Cursor Agent CLI、OpenCode、Pi、Hermes、OpenClaw、Factory Droid、Devin CLI、Antigravity CLI 和 Goose。
常见问题
它会替代我的编码代理吗?
策略能做什么决定?
allow() 放行、deny(message) 阻止并向代理返回消息,或使用 instruct(message) 放行并为代理下一次提示补充上下文。是否需要把日志上传到外部服务?
localhost:8020;未说明必须上传日志。团队如何共享自定义限制?
.failproofai/policies/ 并提交;材料说明其他成员下次拉取后会获得该策略。