Skip to main content
测试版功能。 审计功能目前以测试版形式发布,我们正在收集早期反馈。 检测器目录和报告格式可能在下一个稳定版本发布前有所变动。 如发现任何异常,请提交 issue。
审计功能会将您过去的智能体 CLI 记录通过 failproofai 的策略引擎进行回放,并在 /audit 仪表板页面生成一份可分享的可视化报告——包括您的智能体原型、0 到 100 的评分,以及哪些策略会捕获哪些问题。

运行方式

有三种入口,最终都会进入同一份 /audit 报告。

无需安装

npx -y failproofai audit 会自动获取 failproofai、执行扫描并为您打开仪表板——无需提前安装任何东西。

通过 CLI

failproofai audit 在终端中运行扫描,完成后自动打开 localhost:8020/audit

通过仪表板

运行 failproofai,点击导航栏中的 Audit(位于 Policies 和 Projects 之间),或直接打开 /audit
运行 failproofai audit -h(或 --help)查看使用说明。审计完全离线运行——无需账号或网络——仪表板会持续运行,直到您按 Ctrl+C 停止。
仪表板会扫描本机上过去的智能体 CLI 记录(Claude Code、Codex、Copilot、Cursor、OpenCode、Pi),并报告智能体执行了哪些 failproofai 旨在阻止的操作——环境变量检查、强制推送、冗余的 cd <cwd> 前缀、轮询 sleep 循环、重复读取刚编辑的文件等。 对于每条记录,每个工具调用事件都会通过 39 条内置策略以及 8 个仅限审计的检测器进行回放——这些检测器可识别运行时策略尚未覆盖的模式。计数按策略/检测器维度在所有会话中汇总。

报告内容

/audit 页面是一张单屏可分享的海报,后跟四个折叠下方的区块:
  1. 海报 — 一目了然地展示您的智能体身份:其原型(共 8 种——optimistcowboyexplorergoldfishparanoid architectprecision builderhammerghost)、人物关键词、该原型的稀有程度,以及带有层级标识的 0 到 100 评分(从 Sbottom tier)。专为分享而设计——可发布到 X 或 LinkedIn,也可下载为 PNG。
  2. // strengths — 您的智能体已经表现良好的方面,来自扫描的真实数据(例如干净工具调用率、0 次推送到主分支的尝试),仅在相关策略记录完全干净时显示。
  3. // quirks — 漏掉了什么:按优先级排列的行为表格,列出 failproofai 本可捕获的操作——最近发生时间泄漏内容(以及会阻止它的内置规则)、严重程度,以及出现频率(new / recurring / N× seen)。
  4. // how to improve — 建议修复列表:每条策略对应一行可复制粘贴的 failproofai policy add <slug> 命令,以及一个一键安装全部按钮,可同时启用所有建议,并显示执行后的预期评分
  5. // come back better — 培养习惯:设置重新审计的邮件提醒3d / 7d / 14d / 30d)或立即重新审计,并邀请好友进行自己的审计(由 failproof.ai 发送,抄送给您)。提醒和邀请需要登录——请参阅 failproofai auth

仅限审计的检测器

这些检测器用于识别尚未在实时环境中强制执行的”低效行为”模式。它们仅在审计期间运行,不会阻止实时工具调用。

缓存机制

  • 逐记录缓存位于 ~/.failproofai/cache/audit/<sha1>.json,以 (mtime, size, engineVersion, detectorVersion) 为键——当记录或策略/检测器代码发生变化时自动失效。每个条目还存储 cachedAt 时间戳作为 TTL 元数据(不作为缓存键的一部分);超过 7 天的条目在读取时会被拒绝,以防止长期存在的结果与不断演进的检测器意图产生偏差。
  • 整体结果缓存位于 ~/.failproofai/audit-dashboard.json(权限 0600)。允许仪表板在导航时即时渲染,无需重新运行。同样超过 7 天 TTL 后在读取时被拒绝——/audit 随后进入空状态并提示重新运行。点击报告底部的 [ re-audit now ] 刷新——重新审计会发送 noCache: true,绕过逐记录缓存并重新扫描所有记录,而非返回缓存结果;运行进度通过顶部固定条目流式显示,成功后在原位替换结果(无需重载页面;若重新审计失败,则保留上一份报告)。

注意事项

  • 不做任何修改。 审计以只读模式回放。warn-repeated-tool-calls 会被跳过,因为其每个会话的附属文件否则会被修改。
  • 跳过工作流策略。 require-*-before-stop 策略仅在 Stop 事件时触发,并对实时 git 状态执行 execSync——它们在审计场景中没有有意义的”2025 年会发生什么”解读,因此不出现在审计计数中。
  • 跳过自定义策略。 用户提供的自定义钩子不会被回放(它们可能在原始会话之后发生了变化)。