hermes agent可通过配置空闲休眠机制实现低功耗运行:第一步执行hermes config set runtime.idle_timeout 1800设置30分钟无交互自动休眠;第二步启用systemd用户级服务hermes-sleep.service并配置loginctl enable-linger确保登出后持续运行;第三步修改/etc/systemd/logind.conf禁用系统级空闲挂起,最后通过ps aux | grep hermes验证主进程退出、仅保留watchdog。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

让Hermes Agent在无任务时自动休眠,可将VPS待机功耗压至接近零,避免整月为闲置状态持续付费。
配置空闲休眠阈值
第一步:打开终端,执行命令设置30分钟无交互即休眠:
hermes config set runtime.idle_timeout 1800
这一步必须在用户主目录下运行,否则配置将写入错误路径。若提示“Config not found”,先执行hermes init初始化配置文件。
第二步:确认配置已生效,运行以下命令查看当前值:
hermes config get runtime.idle_timeout
输出应为1800。若返回null或报错,说明~/.hermes/config.yaml未生成,需重跑hermes init。
启用systemd看门狗服务
方法一:注册为用户级systemd服务
执行hermes service install --user,该命令会生成hermes-sleep.service并放入~/.config/systemd/user/目录。
方法二:手动启用linger(关键前提)
执行loginctl enable-linger $USER,【否则systemd用户服务无法在登出后持续运行】
方法三:启动并设为开机自启
systemctl --user daemon-reload → systemctl --user enable hermes-sleep.service → systemctl --user start hermes-sleep.service
关闭系统级干扰休眠
编辑/etc/systemd/logind.conf,将以下两行改为:
IdleAction=ignore
IdleActionSec=0
改完必须重启logind服务:sudo systemctl restart systemd-logind。不执行这步,Linux系统会在10分钟无操作后强制挂起整个会话,导致Agent假死——此时watchdog进程还在,但监听端口已不可达。
验证是否生效:运行loginctl show-session $(loginctl | grep -o 'session-[0-9]*' | head -1) -p IdleAction,输出必须是IdleAction=ignore。
验证休眠是否真实生效
发送一条测试消息触发Agent唤醒,等待1800秒(30分钟)后执行:
ps aux | grep hermes | grep -v grep
正常情况应只看到watchdog进程(如hermes-watchdog),主进程hermes-agent不应出现。若仍有主进程残留,说明idle-suspend机制未触发,需检查日志:journalctl --user-unit hermes-sleep.service -n 50 -f。
日志中出现“Suspending main process due to idle timeout”即表示成功挂起。











