Hermes 实例重建手册
版本: 1.3 | 更新日期: 2026-05-18 | 基准实例: Oracle H02
⚠️ 重要:当前实例运行在 Docker 容器内部(无 Docker socket),docker compose 命令不可直接使用。本手册的 Docker 命令适用于在宿主机上重建一个全新容器的场景,而非在容器内操作。
📑 两种重建路径
重建当前 Hermes 实例有两种方法:
| 方法一:配置法 | 方法二:目录映射法 | |
|---|---|---|
| 核心 | 只用 ./data:/opt/data,其余 Hermes 默认 | 复制整份 ./data 和 ./www,完全一致 |
| 恢复方式 | 上线后聊天逐项恢复组件 | 上线即完全恢复 |
| 适用场景 | 迁移新环境、标准化重建 | 原地恢复、快速克隆 |
| 耗时 | 约 45~60 分钟 | 约 5 分钟 |
方法一:配置法(纯默认路径)
步骤 1:docker-compose.yml
services:
hermes:
image: nousresearch/hermes-agent:v2026.5.7
volumes:
- ./data:/opt/data
environment:
- TELEGRAM_BOT_TOKEN=${TELEGRAM_BOT_TOKEN}
restart: unless-stopped步骤 2:首次启动
docker compose up -d步骤 3:修改 config.yaml
agent:
disabled_toolsets: [browser, web]
max_turns: 90
gateway_timeout: 1800
model:
default: deepseek-v4-flash
provider: opencode-go
approvals:
mode: smart
timeout: 60
cron_mode: allow
mcp_reload_confirm: false
# 修改后自动 restart步骤 3.1:.env 环境变量
TELEGRAM_BOT_TOKEN=...
OPENCODE_GO_API_KEY=...
TRILIUM_ETAPI_TOKEN=...
TRILIUM_ETAPI_URL=https://trilium.atibm.com/etapi
GOOGLE_API_KEY=...
V100_API_BASE=https://v1008080.atibm.com/v1
V100_API_KEY=...步骤 4:第二次启动
docker compose up -d步骤 5:聊天逐项恢复组件
5.1 注册 MCP 服务器
Trilium MCP:
[at c] 安装 Trilium MCPPinchTab MCP(v2.4 最佳实践):
用户发给 Agent 的对话:
[at c] 安装 pinchtab 到默认路径,注册 MCP,放行所有域名,
禁用原生浏览器,使用已有的 Chromium 引擎Agent 收到后实际执行:
# Step 1: npm install → $HOME/pinchtab/
# Step 2: pinchtab config set security.allowedDomains '["*"]'
# pinchtab config set browser.binary /opt/hermes/.../headless_shell
# Step 3: 改 config.yaml → mcp_servers.pinchtab (args: ["mcp"])
# disabled_toolsets: [browser, web]
# Step 4: CLI 验证 → pinchtab nav https://example.com --json
# Step 5: 重启 Gateway(需用户确认)
# Step 6: 最终验证 → "打开 example.com"红线(违反就出问题):
| 红线 | 正确 | 错误后果 |
|---|---|---|
| 路径 | $HOME/pinchtab/(volume 内) | 换环境丢失 |
| 安全策略 | pinchtab config set(持久) | 无法上网 |
| MCP 参数 | args: ["mcp"] | stdout 污染,断开 |
| 运行模式 | MCP stdio,不用 daemon | 实例卡死 |
| 浏览器 | 复用已有 Chromium | 多下载 300MB |
当前实例路径(参考):/www/kc-ai-hermes/pinchtab/ — 历史原因手动迁移。新环境用 $HOME/pinchtab/。
官方资源:GitHub pinchtab/pinchtab → docs/guides/mcp-agents.md + skills/pinchtab/SKILL.md
5.2 恢复 gbrain 知识库
[at c] 验证 gbrain学习安装 github的financial-services 增强金融分析能力5.3 恢复 cron 定时任务
cron job 定义在 /opt/data/cron/jobs.json 中自动恢复。脚本路径在 ~/.hermes/scripts/ 下(当前实例 symlink 指向 /www/kc-ai-hermes/cron/run.sh)。
[at c] 重建 cron 脚本(Method 1):
# 创建 ~/.hermes/scripts/hermes-cron-master.sh → symlink → 实际脚本
# 包含 tasks.conf + 各任务 run.sh + lib/report.sh5.4~5.6 验证
[at c] 列出目前所有 cron
[at c] 测试手动触发 cron
[at c] 测试 MCP 工具
[at c] 检查 gbrain 状态方法一恢复清单
| 组件 | 自动恢复 | 需聊天重建 |
|---|---|---|
| config.yaml / .env | volume 中 | — |
| Skills / Sessions / Memories | volume 中 | — |
| Cron 定义 | jobs.json 自动恢复 | 脚本需放在 ~/.hermes/scripts/ |
| Trilium MCP | node_modules 在 volume 中 | 加 mcp_servers.trilium |
| PinchTab | — | 发对话让 Agent 安装($HOME/pinchtab/) |
| gbrain | 二进制+数据库在 volume 中 | — |
方法二:目录映射法(完全一致克隆)
步骤 1:docker-compose.yml
services:
hermes:
image: nousresearch/hermes-agent:v2026.5.7
volumes:
- ./data:/opt/data
- ./www:/www
environment:
- TELEGRAM_BOT_TOKEN=${TELEGRAM_BOT_TOKEN}
- HERMES_WORKSPACE_DIR=/www
restart: unless-stopped步骤 2:复制数据目录
tar备份
--exclude=data/www \ --exclude=data/home/miniconda3 \ --exclude=data/data/home/.* \ --exclude=data/data/.npm \ --exclude=data/data/.cache \tar恢复
tar -xzf ~/at.tar.gz -C /www/hermes tar -xzvf ~/x99_20260519132010.tar.gz -C / www/hermes/at
步骤 3:启动
docker compose up -d方法二自动恢复的组件
| 组件 | 路径 | 状态 |
|---|---|---|
| config.yaml / .env / Skills | /opt/data/... | ✅ 完全一致 |
| Cron 定义+脚本 | /www/kc-ai-hermes/cron/ | ✅ 完全一致 |
| Trilium MCP | /opt/data/home/trilium-mcp/ | ✅ 完全一致 |
| PinchTab | /www/kc-ai-hermes/pinchtab/ | ✅ 完全一致(新环境推荐 $HOME/) |
| gbrain | /opt/data/home/... | ✅ 完全一致 |
| Cron symlink | /opt/data/home/.hermes/scripts/ | ✅ volume 内自动恢复 |
组件层级对照
| 层级 | 包含 | 方法一 | 方法二 |
|---|---|---|---|
| L0 配置 | config.yaml .env | volume 恢复 | volume 恢复 |
| L1 核心数据 | sessions/ memories/ skills/ state.db | volume 恢复 | volume 恢复 |
| L2 附加工具 | gbrain / trilium-mcp / pinchtab | gbrain+trilium volume 恢复 pinchtab 聊天安装 | 全部 volume+/www 恢复 |
| L3 定时任务 | cron jobs.json + 脚本 | 定义恢复,脚本重建 | 完全恢复 |
Oracle H02 实例快照
| 组件 | 状态 |
|---|---|
| Hermes | v2026.5.7 @ deepseek-v4-flash |
| Telegram | Oracle H02 Group (topic 143) |
| 禁用工具 | browser, web |
| gbrain | 0.30.2, 1240 pages |
| Trilium MCP | /opt/data/home/trilium-mcp/ |
| PinchTab | 0.12.0 at /www/kc-ai-hermes/pinchtab/(历史路径) 新环境用对话让 Agent 装到 $HOME/ |
| Cron Master | 01:00 daily, no_agent |
— 本文档由 Hermes Agent 维护于 Trilium | v1.3 同步 PinchTab 安装最佳实践 v2.4