核心用法
openclaw-watchdog 是一款专为 OpenClaw 网关设计的后台自愈监控服务。它以 15 秒为周期向 localhost:3117/health 发送健康检查请求,当连续 3 次检测失败后,自动尝试重启网关服务,并通过 Telegram 向用户推送实时告警。整个部署流程高度自动化:用户仅需提供 Telegram Bot Token 和 Chat ID,系统即完成凭证验证、服务安装、配对测试和状态确认的全流程配置。
该服务深度集成操作系统原生机制——macOS 采用 LaunchAgent、Linux 使用 systemd user 服务——确保低资源占用和稳定的后台运行。诊断分析完全在本地执行,通过模式匹配识别日志异常,无需将任何数据传输至外部服务器。
显著优点
安全架构严谨:敏感凭证采用 AES-256-CBC 加密存储,密钥由机器硬件 UUID、主机名和用户名派生,实现设备绑定保护。关键操作如重新安装(npm install -g)需用户主动创建批准文件,杜绝未授权破坏性操作。
自愈能力完整:从故障检测、自动重启到用户通知形成闭环,最多 2 次重启尝试后转为纯通知模式,避免无限循环。用户可通过 Telegram 实时掌握网关状态,实现"无人值守但可控"的运维体验。
部署体验友好:提供一键式安装脚本,自动适配 macOS 和 Linux 双平台,卸载命令完整清晰,无残留配置困扰。
潜在缺点与局限性
平台绑定性强:加密密钥与机器硬件强关联,更换设备或重装系统后需重新配置全部凭证,不适合频繁迁移的灵活场景。
依赖外部生态:核心功能依赖 Telegram 作为通知通道,在网络受限或无法访问 Telegram 的环境中完全失效。同时依赖 ioreg、、journalctl、、tail 等系统命令的可用性,精简容器环境可能需额外安装工具。
功能边界明确:仅针对 OpenClaw 网关设计,无法扩展为通用服务监控工具;自动修复能力限于重启操作,复杂故障仍需人工介入。
适合的目标群体
- 个人开发者或小型团队运维 OpenClaw 网关,追求"部署后省心"的轻量级监控方案
- 已深度使用 Telegram 作为工作通知渠道的技术用户
- 需要基础自愈能力但不愿投入重量级监控基础设施(如 Prometheus + Alertmanager)的场景
- 重视数据隐私、希望诊断分析完全本地化的敏感环境用户
使用风险
subprocess 执行风险:虽然所有命令参数均为硬编码或已验证输入,但服务本质仍通过 subprocess.run()() 调用系统命令,极端情况下若 OpenClaw 二进制文件被恶意替换,可能引发连锁执行风险。
凭证泄露隐患:Telegram Bot Token 一旦泄露,攻击者可向用户发送伪造告警或尝试社会工程攻击。建议单独创建专用 Bot 而非复用已有高权限 Bot。
服务权限边界:以用户级别运行虽降低了系统级风险,但也意味着若网关故障由系统级资源耗尽(如端口被占用、系统文件损坏)引起,自动重启可能无法奏效。
日志膨胀风险:持续运行的监控服务会产生日志累积,长期未清理可能占用磁盘空间,建议配合日志轮转策略使用。