Project / Agent 与工程
Agent Guard
删除前隔离、快照与恢复记录。
面向编码 Agent 的可靠性基础设施:删除前隔离、Git 覆盖前快照、文本外泄检查,以及可复现的对照实验。
0.2.9 稳定版 · npm latest
Overview 项目概述
Agent Guard 面向编码 Agent 的破坏性操作,提供删除前隔离、受支持 Git 覆盖前快照、文本外泄检查,以及一个用于对照实验的 guard-lab。它更像恢复与审计基础设施,而不是另一个沙箱。
Motivation 为什么创建
Agent 一旦执行 rm、git reset,或把带有凭据的文本写入文件,后果往往不可逆。Agent Guard 的思路是把「先造成后果、再补救」改成「先建立恢复点、再允许动作」,并在不确定时升级为 ASK 或 BLOCK。
Architecture 关键架构
- 共享 Python Core 通过显式 CLI 与可选的宿主适配器工作;Skill 提供协议说明,本身不拦截工具调用。
- 决策协议为 ALLOW · SANITIZE · RELOCATE · SNAPSHOT · ASK · BLOCK,并按 BLOCK > ASK > RELOCATE/SNAPSHOT > SANITIZE > ALLOW 聚合。
- delete-guard 负责隔离与恢复,exfil-guard 负责凭据与路径检查,guard-lab 负责零模型对照和受控实验,recovery-audit 负责事后证据整理。
Capabilities 已实现能力
- 删除前把有价值目标迁移到隔离区,并在 manifest 中记录精确恢复路径;可恢复的 Git 覆盖会先快照已跟踪状态。
- 对受支持的凭据形状与主机路径做检查,按计划脱敏或扣留载荷;检查器只给出决策,不自行改写文本。
- guard-lab 提供 clean、mock-positive、mock-injection、snapshot-positive 四类零模型对照,并把观察、暴露与保护比较分开。
- 覆盖 Claude Code、Kimi Code、DSH 等宿主的历史适配观察,并写明每项覆盖对应的版本与工具范围。
- 0.2.7 增加 Cleanup Copilot、带保护路径与预算的共享删除准入,以及可选的本地 stdio MCP 工具;Cleanup 执行需要未变更的已审阅计划和显式终端确认,并仍走 safe_delete。
- 0.2.8 增加本地 MCP doctor:检查解释器/SDK 握手、工具清单、workspace/quarantine 绑定与响应丢失后的恢复;它仍是协作式 MCP 接口,不拦截宿主层。
- 0.2.9 增加有界 Cleanup 盘点(--discover / --measure --scope)与只读 MCP cleanup_discover / cleanup_measure;计划扫描复用文件元数据与批量 Git 查询。
Limitations 已知限制
- 不是操作系统沙箱,不能阻止拥有同等权限的恶意进程。
- 自动保护依赖宿主提供兼容的阻断式 hook;Skill 本身不能拦截工具调用。
- 文本 CLI 不会自动写入出站审计事件,审计存储由可信集成负责。
- 检测覆盖的是文档化规则,不是通用仓库扫描,也不针对刻意混淆。
- Stop hook 反馈是 opt-in,模型是否收到仍标记为 UNVERIFIED;在已抽样宿主里,hook 缺失或超时仍可能放行工具。
- 新增删除预算与保护路径规则会拒绝此前可执行的操作;本地 MCP 是协作式工具接口,不拦截 shell、会话或宿主层行为。
- doctor 的 PASS 只覆盖选定的服务;宿主连接、模型投递与宿主拦截仍是 UNVERIFIED。它不会安装依赖或改写客户端配置。
- Cleanup 盘点不能授权删除;缓存标签只是提示,受保护或未计量的大小仍未知,扫描也不协调应用缓存锁。0.2.9 期望 7 个 MCP 工具,doctor 与服务端需一起升级。
Validation 测试与验证
- 仓库包含 CI,以及按宿主和版本限定的测试报告;Kimi 与 DSH 的报告保留失败与不确定结果。
- guard-lab 的 PASS 只表示仪器校准,不表示模型安全;没有有效基线时结果为 INCONCLUSIVE。
- 0.2.9 已作为 stable 发布到 GitHub 与 npm latest;本地候选验证通过 1197 项 Python 测试与两组 Node 测试,16 个真实 MCP 协议、doctor 与中断用例全部执行。
- CI 与发布工作流在发布前执行更新后的 1198 项测试套件;这是有界维护版本,不是新的功能线。
- 可选本地 MCP 工具已完成实际 stdio 删除、恢复、持久预算、保护与批量门检查;MCP SDK 仍需单独安装。
- Kimi 2.3.0 验收覆盖 8 条 prompt-CLI 与 8 条 ACP 固定回环路径,未调用外部模型;Stop 投递不构成普遍保证。
- 版本与覆盖范围以仓库的能力矩阵和发布说明为准。