SuperAPI AI 工具集

install-watchdog

部署与运维

查看项目

更新于 10-15 18:46

技能介绍

用途:安装 Watchdog 用于在 macOS 或 Linux 上为 egregore 部署持久化守护进程,监控 egregore 进程并在需要时自动重新启动会话。守护进程使用操作系统原生调度器(macOS 的 launchd、Linux 的 systemd),每 5 分钟运行一次 watchdog 脚本。

主要能力:watchdog 脚本会检查是否已有 egregore 会话在运行、预算是否处于冷却期、manifest 中是否存在活动工作项;当全部条件满足时,它会启动一个新的 egregore 会话。

使用方式:先用 OS=$(uname -s) 检测操作系统;macOS 运行 bash plugins/egregore/scripts/install_launchd.sh,该脚本创建 ~/Library/LaunchAgents/com.egregore.watchdog.plist,每 300 秒(5 分钟)运行 watchdog 脚本;Linux 运行 bash plugins/egregore/scripts/install_systemd.sh,在 ~/.config/systemd/user/ 创建每 5 分钟触发的 systemd timer 与 service 单元。验证:macOS 执行 launchctl list | grep egregore,应看到含 com.egregore.watchdog 的行;Linux 执行 systemctl --user status egregore-watchdog.timer,应显示 active (waiting)。随后向用户报告安装结果、调度间隔与日志位置:macOS 为 ~/.egregore/watchdog.log,Linux 用 journalctl --user -u egregore-watchdog 查看。卸载可运行 Skill(egregore:uninstall-watchdog) 或 /egregore:uninstall-watchdog 命令。

适用场景:在 egregore init 初始化项目后希望自动驾驶式重新启动时;在新机器上设置 egregore 时。限制:不要在 CI/CD runner 上使用(应直接使用 orchestrator);当你希望手动控制会话启动时也不适用。

故障排查:plist 报 permission denied 时,确保脚本以当前用户而非 root 运行;systemd 用户会话不可用时,运行 loginctl enable-linger $USER 以在没有活动登录会话的情况下启用用户服务;watchdog 未触发时,检查日志输出并用 launchctl list 或 systemctl --user list-timers 确认调度器已加载。

本技能的具体收费、价格、平台兼容范围等资料暂未提供。