Error Guard — Control‑Plane Safety

一项系统安全与控制平面技能,旨在防止智能体死锁与冻结。提供非 LLM 控制命令,支持检查任务状态、清空消息队列、取消长时间运行的任务以及无需重启容器即可安全恢复。适用于实现或运行长时间任务、子智能体、基准测试、后台监控(如 Moltbook、PNR 检查),或当系统无响应且需要立即进行恢复控制时使用。

安装

概览

Error Guard 是 OpenClaw 框架中的一项系统级安全技能,专为高级用户设计,旨在为智能体运行控制平面提供关键的安全保障。该工具的核心目标是防止智能体在执行长时间任务或高风险工作时陷入死锁、冻结或不可恢复的状态。其设计理念强调极简、非阻塞和事件驱动,确保主智能体在任何时候都不会被阻塞,从而维持系统的响应能力。Error Guard 通过定义一组轻量级的控制命令,使运维人员能够在系统无响应时快速介入并恢复,而无需重启整个容器环境。 与其他侧重于业务逻辑或 LLM 推理路径的工具不同,Error Guard 明确排除了这些功能,专注于底层系统状态的监控与干预。它仅持久化任务的最小元数据(如任务 ID、时间戳和状态),绝不存储载荷、提示词、消息或模型输出,因此在隐私和安全方面具备高度可靠性。这使得 Error Guard 不仅适用于本地开发调试,也完全适合在需要共享或发布的公共环境中部署。作为系统的“最后一道防线”,Error Guard 的设计哲学是保持其小巧、快速且值得信赖。 目前,Error Guard 提供了三个基础但至关重要的控制命令:/status 用于实时报告系统健康状况和任务注册表状态;/flush 作为紧急停止指令,立即取消所有活跃任务、清理消息队列并重置内存中的任务记录;而 /recover 则执行一个安全的恢复序列,先调用 /flush,再重置控制平面状态,并可选择性地重新加载技能或状态,实现无需容器重启的平滑恢复。这些功能共同构成了一个高效、可靠的系统级故障应对机制。

核心功能特点

  1. 提供非 LLM 控制命令,支持检查任务状态、清空消息队列、取消长时间运行的任务以及无需重启容器即可安全恢复。
  2. 设计原则强调非阻塞、事件驱动和故障安全优先,确保主智能体永不阻塞且恢复命令始终响应。
  3. 仅持久化最小任务元数据,不存储任何载荷、提示词、消息或模型输出,保障隐私与安全。
  4. 支持紧急停止(/flush)和安全恢复(/recover)操作,有效防止智能体死锁与冻结。

适用场景

Error Guard 最典型的应用场景是在运行长时间任务、子智能体、基准测试或后台监控系统(例如 Moltbook、PNR 检查等)时,这些工作负载容易因各种原因导致系统挂起或无响应。在这些场景下,Error Guard 能够迅速介入,通过 /status 命令查看当前系统健康状态,识别出卡住或超时的任务,然后利用 /flush 命令立即终止所有活跃进程并清空消息队列,避免资源浪费和潜在的数据不一致问题。 当系统进入不可恢复状态且常规手段无法解决时,Error Guard 的 /recover 命令尤为关键。它可以先执行紧急停止,随后重置控制平面状态,并允许在不重启整个容器的情况下重新加载必要的技能或配置,从而实现快速恢复服务。这对于生产环境中对可用性要求极高的系统尤为重要,能够最大限度地减少停机时间和服务中断。此外,对于那些需要持续监控或定期执行复杂任务的后台服务,Error Guard 提供了一个可靠的兜底方案,确保即使出现异常也能被及时检测和修复。