吴恩达Hermes-Agent保姆级教程
1 章 · 约 26 千字
第一章:初识 Hermes Agent
1.1 核心理念
Hermes Agent 是由 Nous Research 开发的开源自主 AI 智能体项目,核心定位是—— 越用越聪明、会自我进化的个人 AI 搭档 。
核心技术架构
四层内存设计
┌─────────────────────────────────────┐
│ 📦 技能层 (Skills) │ ← 完成任务后自动沉淀可复用技能
├─────────────────────────────────────┤
│ 🧠 知识层 (Knowledge) │ ← 持久化存储项目背景、专业知识
├─────────────────────────────────────┤
│ 💬 对话层 (Conversations) │ ← 完整会话历史,支持上下文召回
├─────────────────────────────────────┤
│ 👤 偏好层 (Preferences) │ ← 用户工作习惯、风格偏好
└─────────────────────────────────────┘
KEPA 自进化系统
K nowledge(知识):持续积累项目知识
E xperience(经验):从交互中提取模式
P reference(偏好):学习用户习惯
A daptation(适应):基于 KEPA 反馈持续优化
Hermes Agent vs OpenClaw
维度
Hermes Agent
OpenClaw
技术路线
引擎模式(自我进化)
网关模式(插件生态)
核心特色
越用越聪明
多渠道接入、MCP 扩展
记忆能力
四层架构,永久存储
上下文窗口制
部署方式
一行命令安装
Gateway 守护进程
多智能体
单体自进化
多 Agent 协同调度
第二章:安装与环境配置
2.1 系统要求
项目
最低配置
推荐配置
操作系统
Linux/macOS/WSL2
Linux/macOS/WSL2
Python
3.10+
3.11+
内存(API 模式)
1GB
2GB
⚠️ Windows 用户注意 :Hermes Agent 不支持原生 Windows ,需通过 WSL2 运行。
2.2 快速安装(一键安装)
macOS / Linux / WSL2(国际网络):
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
国内加速:
curl -fsSL https://ghfast.top/https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
Windows PowerShell:
irm https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.ps1 | iex
2.3 安装后验证
验证安装
hermes --version
预期输出: hermes v0.8.0 (v2026.4.8)
运行诊断检查
hermes doctor
启动交互式终端
hermes
2.4 Docker 部署
Dockerfile
FROM python:3.11-slim
WORKDIR /app
RUN apt-get update && apt-get install -y git curl ripgrep ffmpeg && rm -rf /var/lib/apt/lists/*
RUN curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
COPY config /root/.hermes/
CMD ["hermes"]
docker-compose.yml
version: '3.8'
services:
hermes:
image: nousresearch/hermes-agent:latest
container_name: hermes-agent
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- hermes-data:/root/.hermes
environment:
- HERMES_MODEL=anthropic/claude-sonnet-4
- OPENAI_API_KEY=${OPENAI_API_KEY}
volumes:
hermes-data:
driver: local
第三章:基础配置指南
3.1 启动配置向导
方式一:首次启动自动进入
hermes
方式二:手动进入配置向导
hermes setup
3.2 模型提供商配置
OpenRouter(推荐新手)
hermes config set OPENROUTER_API_KEY your_key_here
hermes config set model.default "nvidia/nemotron-3-super-120b-a12b:free"
hermes config set model.base_url "https://openrouter.ai/api/v1"
免费模型推荐 :
排名
模型
特点
🥇
nvidia/nemotron-3-super-120b-a12b:free
免费效果好
🥈
google/gemini-2.0-flash-thinking-exp:free
推理能力强
🥉
deepseek/deepseek-chat-v3-0324:free
国产优质免费
DeepSeek(高性价比)
hermes config set DEEPSEEK_API_KEY your_deepseek_key
hermes config set model.provider deepseek
hermes config set model.default "deepseek-chat"
hermes config set model.base_url "https://api.deepseek.com/v1/"
DeepSeek 模型价格对比 :
模型
输入价格
输出价格
DeepSeek V3
¥1/百万Token
¥2/百万Token
DeepSeek R1
¥4/百万Token
¥16/百万Token
3.3 完整 .env 配置文件
~/.hermes/.env
==================== 模型配置 ====================
OPENAI_API_KEY=sk-your-openai-key
OPENROUTER_API_KEY=sk-or-your-openrouter-key
DEEPSEEK_API_KEY=your-deepseek-key
默认模型设置
HERMES_MODEL_PROVIDER=openrouter
HERMES_MODEL=google/gemini-2.0-flash-thinking-exp:free
==================== 对话设置 ====================
HERMES_MAX_TURNS=50
HERMES_TEMPERATURE=0.7
HERMES_MAX_TOKENS=8192
==================== 记忆设置 ====================
HERMES_MEMORY_RETENTION_DAYS=365
HERMES_KNOWLEDGE_DIR=/root/.hermes/memory/knowledge
==================== Telegram 配置 ====================
TELEGRAM_ENABLED=false
TELEGRAM_BOT_TOKEN=your-telegram-bot-token
TELEGRAM_ALLOWED_USERS=123456789
==================== 日志配置 ====================
LOG_LEVEL=info
HERMES_LOG_FILE=/root/.hermes/logs/hermes.log
==================== 安全设置 ====================
HERMES_API_KEY=your-api-access-key
HERMES_ENCRYPT_KEYS=true
==================== 性能设置 ====================
HERMES_CONCURRENT_REQUESTS=3
HERMES_REQUEST_TIMEOUT=120
HERMES_CACHE_ENABLED=true
第四章:交互式终端与斜杠命令
4.1 启动与退出
启动交互式终端
hermes
带参数启动
hermes --model anthropic/claude-sonnet-4 # 指定模型
hermes --system "你是一个Python专家" # 指定系统提示词
hermes --no-stream # 禁用流式输出
hermes --verbose # 详细日志
退出终端
/exit
或按 Ctrl+C
4.2 完整斜杠命令参考
/skills —— 自进化能力可视化窗口
/skills # 查看所有技能
/skill show <skill-name> # 查看特定技能详情
/skill create # 创建技能
/skill edit <skill-name> # 编辑技能
/skill delete <skill-name> # 删除技能
/skill export <skill-name> # 导出技能
/skill import ./my-skill.md # 导入技能
/skill use <skill-name> <task> # 使用指定技能执行任务
/review —— 成长复盘
/review # 基本用法
/review --period week # 本周成长
/review --period month # 本月成长
/review --export ./growth-report.md # 导出成长报告
/model —— 模型切换
/model list # 查看可用模型
/model # 查看当前模型
/model set google/gemini-2.0-flash-thinking-exp:free # 切换模型
/model temp anthropic/claude-sonnet-4 # 临时单次切换
/model search code # 搜索模型
/config —— 配置管控
/config # 查看所有配置
/config get model.default # 查看特定配置
/config set model.default deepseek-chat # 设置配置
/config reset --all # 重置所有配置
/config export --path ./config.json # 导出配置
/memory —— 记忆管理
/memory # 查看当前记忆状态
/memory stats # 查看记忆统计
/memory add "我叫张三" # 添加记忆
/memory search <keyword> # 搜索记忆
/memory clear conversations # 清除对话记忆
/search —— 网络搜索
/search 最新 AI 新闻 # 基本搜索
/search <query> --count 10 # 带数量限制
/search <query> --type academic # 学术论文
/search <query> --save results.md # 搜索并保存
/file —— 文件操作
/file read ./README.md # 读取文件
/file ls ./src # 列出目录
/file write ./hello.py --content "print('Hello')" # 写入文件
/file find --pattern "*.py" ./src # 搜索文件
/file rm ./temp.txt # 删除文件
/file mkdir ./new-dir # 创建目录
/git —— Git 操作
/git status # 查看状态
/git commit -m "提交信息" # 提交
/git branch # 分支列表
/git push # 推送
/git pr list # 查看 PR
/code —— 代码执行
/code python ./script.py # 执行 Python
/code bash ./deploy.sh # 执行 Bash
/code node ./app.js # 执行 JavaScript
/code history # 查看执行历史
/task —— 任务管理
/task create "完成文档编写" # 创建任务
/task list # 列出任务
/task complete <task-id> # 完成任务
/task priority <task-id> high # 设置优先级
/task due <task-id> 2026-04-20 # 设置截止日期
/timer —— 定时提醒
/timer 10m "喝水时间到!" # 10分钟后提醒
/timer 1h "站起来活动一下" # 1小时后提醒
/timer at 18:00 "下班提醒" # 指定时间提醒
/timer list # 列出所有定时任务
/timer cancel <timer-id> # 取消定时任务
4.3 高效提问模板
任务类型:[编程/写作/分析/搜索/其他]
具体需求:
[详细描述你要完成的任务]
背景信息:
[相关的上下文、已有的代码、参考文档等]
约束条件:
- 技术栈:XXX
- 时间复杂度:XXX
- 代码风格:XXX
预期输出:
[期望的输出格式或结果]
第五章:技能(Skills)自进化系统
5.1 技能系统原理
用户请求任务
↓
Hermes 分析任务
↓
找到相似技能? ──是──→ 直接调用技能执行
↓ 否
自主完成任务
↓
判断有价值?
↓ 是
自动生成技能(SKILL.md)
↓
保存到 ~/.hermes/skills/
↓
下次遇到类似任务 → 直接调用
5.2 技能分类
类别
示例
🔧 编程开发
Python 数据分析、Web 开发
📝 文档处理
Markdown 格式化、PDF 生成
🔍 研究搜索
多源搜索、文献整理
📊 数据分析
Excel 报表、统计可视化
🌐 自动化
流程自动化、定时任务
5.3 技能文件格式
Skill: 每日站会总结
元信息
name: daily-standup-summary
version: 1.0.0
author: User
created: 2026-04-10
category: productivity
tags: [standup, meeting, report]
触发条件
trigger:
- "总结今天的站会"
- "生成站会报告"
keywords:
- 站会
- 每日
输入要求
required_inputs:
- standup_directory: "站会数据目录路径"
optional_inputs:
- team_name: "团队名称"
- sprint_name: "Sprint 名称"
执行步骤
steps:
1. 读取 {standup_directory} 目录下的今日文件
2. 提取每个成员的更新内容
3. 按标准格式整理输出:
- 🎯 昨日完成
- 📋 今日计划
- 🚧 阻碍问题
4. 添加项目整体进度概览
5. 生成行动项清单
输出格式
format: markdown
template: |
📊 {team_name} 站会报告 - {date}
👥 个人更新
{member_name}
- ✅ 昨日完成: ...
- 📅 今日计划: ...
- ⚠️ 阻碍: ...
5.4 技能共享与导入
导出技能
/skill export 代码审查 --path ~/Desktop/my-code-review-skill.md
导入他人技能
/skill import ~/Desktop/friend-s-skill.md
从 URL 导入
/skill import https://example.com/skills/my-skill.md
第六章:记忆系统详解
6.1 四层记忆架构
┌─────────────────────────────────────────────┐
│ Layer 4: 🧬 基因记忆 (Genetic Memory) │
│ 核心人格、价值观、工作风格 │
│ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │
│ Layer 3: 📚 知识记忆 (Knowledge Memory) │
│ 项目背景、专业知识、行业经验 │
│ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │
│ Layer 2: 💬 对话记忆 (Conversation Memory) │
│ 会话历史、任务上下文、交互模式 │
│ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │
│ Layer 1: 🌊 短期记忆 (Working Memory) │
│ 当前会话的实时上下文 │
└─────────────────────────────────────────────┘
6.2 记忆文件存储结构
~/.hermes/memory/
├── preferences.md # 用户偏好(Layer 4)
│ ├── user_info.md # 基本信息
│ ├── work_style.md # 工作风格
│ ├── communication.md # 沟通偏好
│ └── technical.md # 技术偏好
│
├── knowledge/ # 知识库(Layer 3)
│ ├── projects/ # 项目知识
│ │ ├── my-app/
│ │ │ ├── architecture.md
│ │ │ ├── codebase.md
│ │ │ └── decisions.md
│ │ └── other-project/
│ └── domain/ # 领域知识
│
├── conversations/ # 对话历史(Layer 2)
│ ├── 2026/
│ │ ├── 04/
│ │ │ ├── 2026-04-10.json
│ │ │ └── 2026-04-11.json
│ └── 2025/
│
├── skills/ # 技能元数据(关联)
│ └── usage_history.json
│
├── memory.db # SQLite 数据库(索引)
└── .index/ # 搜索索引
6.3 记忆文件格式示例
用户偏好记忆
基本信息
- 姓名:张三
- 职业:后端开发工程师
- 技术栈:Python, Go, PostgreSQL, Redis, Docker
- 工作年限:5 年
工作习惯
- 偏好中文注释
- 代码风格:PEP 8(Python)、Effective Go(Go)
- 喜欢在代码中添加类型注解
- 响应语言:中文
- 输出格式:Markdown
项目经验
- 电商系统(订单、支付、库存)
- 微服务架构
- 分布式系统设计
- 数据库优化
第七章:多平台消息接入
7.1 Telegram 接入配置
步骤 1:创建 Telegram Bot
在 Telegram 搜索 @BotFather
发送 /newbot
按提示输入 Bot 名称和用户名
获得 Bot Token
步骤 2:配置 Hermes Agent
hermes config set TELEGRAM_BOT_TOKEN "123456789:ABCdefGhIJKlmNoPQRstuVWxyZ"
hermes config set TELEGRAM_ALLOWED_USERS "123456789,987654321"
hermes config set TELEGRAM_ENABLED "true"
7.2 Discord 接入配置
hermes config set DISCORD_BOT_TOKEN "your-discord-bot-token"
hermes config set DISCORD_GUILD_ID "your-guild-id"
hermes config set DISCORD_CHANNEL_IDS "channel-id-1,channel-id-2"
hermes config set DISCORD_COMMAND_PREFIX "!"
hermes config set DISCORD_ENABLED "true"
7.3 飞书接入配置
hermes config set FEISHU_APP_ID "your-feishu-app-id"
hermes config set FEISHU_APP_SECRET "your-feishu-app-secret"
hermes config set FEISHU_VERIFICATION_TOKEN "your-verification-token"
hermes config set FEISHU_ENCRYPT_KEY "your-encrypt-key"
hermes config set FEISHU_ENABLED "true"
7.4 企业微信接入配置
hermes config set WECOM_CORP_ID "your-corp-id"
hermes config set WECOM_AGENT_ID "your-agent-id"
hermes config set WECOM_SECRET "your-secret"
hermes config set WECOM_TOKEN "your-token"
hermes config set WECOM_AES_KEY "your-aes-key"
hermes config set WECOM_ENABLED "true"
第八章:模型配置与切换
8.1 按用途选择
用途
推荐模型
说明
日常对话
Gemini 2.0 Flash
免费,速度快
代码开发
Claude Sonnet 4
编程能力强
复杂推理
GPT-4.1 / o4-mini
推理能力最强
中文任务
智谱 GLM-5 / DeepSeek V3
国产优质模型
成本敏感
DeepSeek V3 / Gemini Flash
性价比高
8.2 模型对比表(2026年4月)
模型
发布商
上下文
优势
劣势
GPT-4.1
OpenAI
200K
全面能力强
较贵
GPT-4o
OpenAI
128K
速度快,多模态
略贵
Claude Sonnet 4
Anthropic
200K
编程强,长上下文
稍慢
Claude Opus 4
Anthropic
200K
顶级推理
最贵
Gemini 2.0 Flash
1M
超长上下文,免费
中文稍弱
DeepSeek V3
DeepSeek
64K
性价比最高
品牌认知低
DeepSeek R1
DeepSeek
64K
推理能力强
输出较长
GLM-5
智谱
128K
中文优质
英文弱
8.3 模型切换命令
/model list # 查看可用模型列表
/model # 查看当前模型
/model set <model-name> # 切换默认模型
/model temp <model-name> # 临时切换(仅本次对话)
/model search code # 搜索特定类型模型
/model compare model-a model-b # 比较两个模型
8.4 自动模型选择
配置自动模型选择
hermes config set MODEL_AUTO_SELECT "true"
配置任务-模型映射
hermes config set MODEL_TASK_MAP '{
"coding": "anthropic/claude-sonnet-4-20250514",
"writing": "openai/gpt-4.1",
"simple": "google/gemini-2.0-flash-thinking-exp:free",
"chinese": "zhipu/glm-5"
}'
第九章:云端部署方案
9.1 腾讯云 Lighthouse 部署
腾讯云已上线 Hermes Agent 专属应用镜像 ,一键部署。
优势 :
优势
说明
🚀 一键部署
选择镜像即可,无需手动安装
💰 按需付费
用多少付多少
🔒 企业级安全
腾讯云安全防护
🌐 随时访问
有网就能用
💾 数据持久化
云端存储,自动备份
部署步骤 :
登录 腾讯云 Lighthouse 控制台
点击「新建实例」→「应用模板」→「Hermes Agent」
选择地域(就近选择)
选择配置(建议 2 核 4G+)
创建实例
9.2 SSH 远程部署
SSH 登录服务器
ssh user@your-server-ip
执行安装命令
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
配置
hermes setup
后台运行
nohup hermes > hermes.log 2>&1 &
9.3 systemd 服务配置
创建服务文件
sudo nano /etc/systemd/system/hermes.service
[Unit]
Description=Hermes Agent
After=network.target
[Service]
Type=simple
User=ubuntu
WorkingDirectory=/home/ubuntu
ExecStart=/home/ubuntu/.local/bin/hermes
Restart=always
RestartSec=10
StandardOutput=append:/var/log/hermes.log
StandardError=append:/var/log/hermes.error.log
[Install]
WantedBy=multi-user.target
启用服务
sudo systemctl daemon-reload
sudo systemctl enable hermes
sudo systemctl start hermes
管理命令
sudo systemctl restart hermes # 重启
sudo systemctl stop hermes # 停止
sudo systemctl status hermes # 状态
9.4 远程访问配置
使用 ngrok 暴露本地服务
安装 ngrok
ngrok config add-authtoken your-token
暴露 Hermes Agent(假设运行在 8080 端口)
ngrok http 8080
获得公网地址
Forwarding: https://xxxx.ngrok.io -> http://localhost:8080
使用 Cloudflare Tunnel
安装 cloudflared
curl -L https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64 -o cloudflared
chmod +x cloudflared
sudo mv cloudflared /usr/local/bin/
创建隧道
cloudflared tunnel --url http://localhost:8080
获得公网地址
Your Quick Tunnel has arrived: https://xxxx.trycloudflare.com
第十章:从 OpenClaw 迁移指南
10.1 迁移工具使用
启动迁移向导
hermes migrate
指定 OpenClaw 配置目录
hermes migrate --from /path/to/openclaw/config
查看迁移预览(不执行)
hermes migrate --preview
强制覆盖(谨慎使用)
hermes migrate --force
10.2 迁移内容对照
OpenClaw
Hermes Agent
说明
~/.openclaw/config/
~/.hermes/
配置目录
~/.openclaw/memory/
~/.hermes/memory/
记忆目录
Skills(技能)
Skills(技能)
格式兼容
API Keys
.env
需要重新配置
10.3 迁移步骤
步骤 1:备份 OpenClaw 数据
cp -r ~/.openclaw ~/.openclaw.backup.$(date +%Y%m%d)
步骤 2:执行迁移
hermes
> 帮我从 OpenClaw 迁移所有数据
步骤 3:验证迁移结果
> 检查迁移后的配置是否正确
> 检查记忆是否完整
10.4 同时使用两个系统
场景
推荐系统
日常对话 + 任务处理
Hermes Agent
多渠道消息收发
OpenClaw
MCP 工具调用
OpenClaw
自我进化 + 技能积累
Hermes Agent
第十一章:常见问题与故障排除
11.1 安装问题
Q1:安装脚本执行失败
解决方案 :
使用国内镜像
curl -fsSL https://ghfast.top/https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
或使用官方国内镜像
curl -fsSL https://res1.hermesagent.org.cn/install.sh | bash
或手动安装依赖
sudo apt update
sudo apt install git curl python3 python3-pip
git clone https://github.com/NousResearch/hermes-agent.git
cd hermes-agent
pip install -e .
Q2:Python 版本不兼容
解决方案 :
安装 Python 3.11(Ubuntu/Debian)
sudo apt update && sudo apt install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update && sudo apt install python3.11 python3.11-venv python3.11-dev
安装 Python 3.11(macOS)
brew install python@3.11
Q3:Windows 原生运行报错
解决方案 :
安装 WSL2
wsl --install -d Ubuntu
进入 WSL 后重新执行安装
wsl
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
11.2 配置问题
Q5:API Key 无效
解决方案 :
检查 API Key 是否正确
hermes config get OPENAI_API_KEY
重新设置
hermes config set OPENAI_API_KEY your-correct-key
验证连接
hermes doctor
Q6:模型连接超时
解决方案 :
检查网络
ping api.openai.com
ping api.deepseek.com
增加超时时间
hermes config set HERMES_REQUEST_TIMEOUT 180
Q7:Base URL 配置错误
常见正确 Base URL :
提供商
正确 Base URL
OpenAI
https://api.openai.com/v1
OpenRouter
https://openrouter.ai/api/v1
DeepSeek
https://api.deepseek.com/v1
智谱 GLM
https://open.bigmodel.cn/api/paas/v4/
Z.AI
https://api.z-ai.cloud/v1
11.3 运行问题
Q8:终端中文显示乱码
解决方案 :
设置 UTF-8 编码
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
永久生效(添加到 ~/.bashrc)
echo 'export LANG=en_US.UTF-8' >> ~/.bashrc
echo 'export LC_ALL=en_US.UTF-8' >> ~/.bashrc
Q9:记忆不生效
解决方案 :
查看记忆状态
/memory
手动添加记忆
> 请记住我之前说的内容:...
清除并重建记忆
/memory clear all
> 请重新学习我的项目知识
Q10:技能无法调用
解决方案 :
查看所有技能
/skills
重新创建技能
/skill create
导入技能
/skill import ./my-skill.md
11.4 诊断命令汇总
完整诊断
hermes doctor
检查版本
hermes --version
查看运行日志
hermes logs --level error
导出诊断信息
hermes doctor --export diagnostics.json
系统信息
/system info
网络连通性
/system check-network
第十二章:高级配置与性能优化
12.1 环境变量高级配置
模型请求优化
温度参数(0.0-2.0)
越低越确定性,越高越有创造性
HERMES_TEMPERATURE=0.7
最大 Token 数
HERMES_MAX_TOKENS=8192
Top-p 采样(影响输出多样性)
HERMES_TOP_P=0.9
重复惩罚
HERMES_FREQUENCY_PENALTY=0.0
HERMES_PRESENCE_PENALTY=0.0
上下文窗口管理
最大对话轮次
HERMES_MAX_TURNS=50
上下文摘要阈值
HERMES_CONTEXT_SUMMARY_THRESHOLD=20
自动摘要(开启后自动压缩长对话)
HERMES_AUTO_SUMMARY=true
HERMES_SUMMARY_PROMPT="请简洁地总结以上对话的核心内容:"
上下文窗口大小(按 Token 计)
HERMES_CONTEXT_WINDOW=16000
缓存配置
启用响应缓存
HERMES_CACHE_ENABLED=true
HERMES_CACHE_DIR=/root/.hermes/cache
缓存过期时间(秒)
HERMES_CACHE_TTL=3600
缓存大小限制(MB)
HERMES_CACHE_MAX_SIZE=500
12.2 性能优化技巧
并发控制
最大并发请求数
HERMES_CONCURRENT_REQUESTS=3
请求队列大小
HERMES_QUEUE_SIZE=100
单用户并发限制
HERMES_USER_CONCURRENT_LIMIT=1
12.3 日志配置
日志级别:debug / info / warning / error
LOG_LEVEL=info
调试模式(最详细日志)
hermes --debug
日志文件路径
HERMES_LOG_FILE=/root/.hermes/logs/hermes.log
日志保留天数
HERMES_LOG_RETENTION_DAYS=30
日志分析命令 :
实时查看日志
hermes logs --follow
只看错误
hermes logs --level error
搜索关键词
hermes logs --grep "API Error"
按时间过滤
hermes logs --from "2026-04-10 10:00" --to "2026-04-10 12:00"
12.4 API 服务配置
API 服务配置
HERMES_API_ENABLED=true
HERMES_API_PORT=8081
HERMES_API_KEY=your-api-access-key
API 速率限制
HERMES_API_RATE_LIMIT=100 # 每分钟请求数
HERMES_API_RATE_LIMIT_USER=10 # 每用户每分钟
API 使用示例 :
curl -X POST http://localhost:8081/v1/chat/completions \
-H "Authorization: Bearer your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-sonnet-4",
"messages": [{"role": "user", "content": "Hello"}]
}'
第十三章:API 参考与二次开发
13.1 REST API 参考
项目
值
Base URL
http://localhost:8081/v1
认证方式
Bearer Token
Content-Type
application/json
13.2 核心 API 端点
对话接口
POST /chat/completions
Authorization: Bearer <API_KEY>
Content-Type: application/json
{
"model": "anthropic/claude-sonnet-4",
"messages": [
{"role": "system", "content": "你是我的助手"},
{"role": "user", "content": "你好"}
],
"temperature": 0.7,
"max_tokens": 2048,
"stream": false
}
响应示例 :
{
"id": "chatcmpl-xxx",
"object": "chat.completion",
"created": 1712650000,
"model": "anthropic/claude-sonnet-4",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "你好!有什么我可以帮助你的吗?"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 20,
"completion_tokens": 30,
"total_tokens": 50
}
}
模型列表
GET /models
Authorization: Bearer <API_KEY>
技能管理
获取所有技能
GET /skills
Authorization: Bearer <API_KEY>
获取特定技能
GET /skills/{skill_name}
Authorization: Bearer <API_KEY>
创建技能
POST /skills
Authorization: Bearer <API_KEY>
Content-Type: application/json
{
"name": "my-skill",
"description": "My custom skill",
"trigger": ["keyword1", "keyword2"],
"steps": [...]
}
执行技能
POST /skills/{skill_name}/execute
Authorization: Bearer <API_KEY>
Content-Type: application/json
{
"input": "Task description"
}
记忆管理
获取记忆
GET /memory
Authorization: Bearer <API_KEY>
添加记忆
POST /memory
Authorization: Bearer <API_KEY>
Content-Type: application/json
{
"content": "这是要记住的内容",
"category": "preferences"
}
搜索记忆
GET /memory/search?q=keyword
Authorization: Bearer <API_KEY>
清除记忆
DELETE /memory/{memory_id}
Authorization: Bearer <API_KEY>
13.3 Python SDK
安装
pip install hermes-agent
使用
from hermes import Hermes
初始化
client = Hermes(
api_key="your-api-key",
base_url="http://localhost:8081"
)
对话
response = client.chat.completions.create(
model="claude-sonnet-4",
messages=[
{"role": "user", "content": "Hello!"}
]
)
print(response.choices[0].message.content)
使用技能
result = client.skills.execute(
name="代码审查",
input="审查这个 Python 文件:..."
)
管理记忆
client.memory.add(
content="我叫张三",
category="preferences"
)
第十四章:安全配置与最佳实践
14.1 API Key 安全存储
基础保护
确保配置文件权限正确
chmod 600 ~/.hermes/.env
禁止其他用户读取
chmod 700 ~/.hermes/
检查文件权限
ls -la ~/.hermes/.env
应显示:-rw------- 1 user user ... .env
加密存储
启用 API Key 加密
hermes config set HERMES_ENCRYPT_KEYS true
设置加密密钥(32 字符随机字符串)
hermes config set HERMES_ENCRYPTION_KEY "your-32-character-encryption-key"
14.2 访问控制
只允许特定 Telegram 用户
hermes config set TELEGRAM_ALLOWED_USERS "123456789,987654321"
设置允许的 IP(逗号分隔)
hermes config set HERMES_ALLOWED_IPS "1.2.3.4,5.6.7.8/24"
API 密钥认证
hermes config set HERMES_API_KEY "your-strong-api-key"
API 速率限制
hermes config set HERMES_API_RATE_LIMIT 100
14.3 数据备份策略
自动备份脚本
!/bin/bash
backup-hermes.sh
BACKUP_DIR="/path/to/backups"
DATE=$(date +%Y%m%d_%H%M%S)
HERMES_DIR="$HOME/.hermes"
创建备份目录
mkdir -p "$BACKUP_DIR"
备份配置和记忆
tar -czf "$BACKUP_DIR/hermes-backup-$DATE.tar.gz" \
"$HERMES_DIR/.env" \
"$HERMES_DIR/memory/" \
"$HERMES_DIR/skills/"
删除 30 天前的备份
find "$BACKUP_DIR" -name "hermes-backup-*.tar.gz" -mtime +30 -delete
echo "Backup completed: hermes-backup-$DATE.tar.gz"
定时备份
添加 cron 任务
crontab -e
每天凌晨 3 点自动备份
0 3 * * * /path/to/backup-hermes.sh >> /var/log/hermes-backup.log 2>&1
14.4 安全检查清单
✅ .env 文件权限设置为 600
✅ ~/.hermes/ 目录权限设置为 700
✅ API Key 不直接写在命令中
✅ 配置 Telegram 用户白名单
✅ 配置 API 访问 IP 白名单
✅ 定期备份数据
✅ 启用 HTTPS
✅ 定期更新 Hermes Agent
✅ 监控异常访问日志
第十五章:高级实战案例
15.1 案例一:构建个人代码知识库
hermes
> 请分析当前目录 ~/my-project 的代码结构
> 记住这个项目的技术栈:Python + FastAPI + PostgreSQL
> 记住这个项目的架构:前后端分离,微服务架构
> 请阅读并记住 src/models/ 下的所有模型定义
> 请阅读并记住 src/api/ 下的所有 API 路由
测试知识库效果 :
> 在这个项目中,用户表的字段有哪些?
> 如何添加一个新的 API 端点?
> 数据库中有哪些索引?
15.2 案例二:自动化代码审查工作流
/skill create
→ 进入交互式创建向导
技能配置:
name: auto-code-review
trigger:
- "审查代码"
- "代码审查"
steps:
1. 读取待审查的代码文件
2. 检查代码风格(PEP 8)
3. 检查潜在 Bug
4. 检查安全漏洞
5. 检查性能问题
6. 生成审查报告
15.3 案例三:多语言翻译助手
Skill: 专业文档翻译
支持语言
- 中文 (zh)、英文 (en)、日文 (ja)
- 韩文 (ko)、法文 (fr)、德文 (de)
翻译原则
1. 保持原文格式(Markdown、HTML 等)
2. 保留专业术语的一致性
3. 保持语气和风格一致
4. 适当本地化(日期、货币等)
15.4 案例四:会议纪要自动化
从文字记录生成
> 根据以下会议记录生成规范的会议纪要:
[粘贴会议记录]
识别行动项
> 识别以下会议中的所有行动项,并生成任务列表:
[粘贴会议记录]
15.5 案例五:智能数据报告生成
导入数据
> 请读取 ./data/sales-2026-Q1.csv
> 请记住数据格式:日期,产品,销量,金额,地区
生成报告
> 根据这些销售数据,生成一份季度分析报告,包含:
> 1. 整体销售概况
> 2. 各地区销售对比
> 3. 热销产品排行
> 4. 环比/同比分析
> 5. 问题发现与建议
> 输出为 Markdown 格式
第十六章:与外部工具集成
16.1 GitHub 集成
配置 GitHub Token
hermes config set GITHUB_TOKEN "ghp_xxxxxxxxxxxxx"
可用操作 :
操作
命令
说明
列出仓库
/github repos
查看所有仓库
查看 Issue
/github issues
查看仓库 Issues
创建 Issue
/github issue create
创建新 Issue
查看 PR
/github pr list
查看 Pull Requests
代码搜索
/github search
搜索代码
16.2 Notion 集成
配置 Notion API
hermes config set NOTION_TOKEN "secret_xxxxxxxxxxxxx"
hermes config set NOTION_ENABLED "true"
可用操作 :
操作
命令
说明
搜索页面
/notion search
搜索 Notion 页面
读取页面
/notion read
读取页面内容
创建页面
/notion create
创建新页面
更新页面
/notion update
更新页面内容
16.3 Obsidian 集成(LLM Wiki)
配置 Obsidian 路径
hermes config set OBSIDIAN_VAULT_PATH "/path/to/your-vault"
hermes config set OBSIDIAN_ENABLED "true"
16.4 数据库连接
配置 PostgreSQL
hermes config set DB_TYPE "postgresql"
hermes config set DB_HOST "localhost"
hermes config set DB_PORT "5432"
hermes config set DB_NAME "mydb"
hermes config set DB_USER "myuser"
hermes config set DB_PASSWORD "mypassword"
16.5 邮件集成
配置 SMTP
hermes config set SMTP_HOST "smtp.gmail.com"
hermes config set SMTP_PORT "587"
hermes config set SMTP_USER "your-email@gmail.com"
hermes config set SMTP_PASSWORD "your-app-password"
hermes config set EMAIL_ENABLED "true"
使用示例 :
发送邮件
> 发送一封邮件给 xxx@example.com,主题是"项目周报",内容是...
自动发送报告
> 每周五下午 5 点自动发送本周工作报告到我的邮箱
附录
A. 常用命令速查表
=== 基础命令 ===
hermes # 启动交互式终端
hermes --version # 查看版本
hermes --help # 显示帮助
=== 配置命令 ===
hermes setup # 启动配置向导
hermes config list # 查看所有配置
hermes config set <k> <v> # 设置配置
hermes config get <k> # 获取配置
=== 诊断命令 ===
hermes doctor # 运行诊断检查
hermes logs # 查看日志
=== 斜杠命令 ===
/skills # 查看技能
/skill create # 创建技能
/model list # 查看模型
/model set <model> # 切换模型
/memory # 查看记忆
/review # 成长复盘
/config # 配置管控
/search # 网络搜索
/file # 文件操作
/git # Git 操作
/code # 代码执行
/task # 任务管理
/timer # 定时提醒
/exit # 退出
B. 配置文件路径
类型
路径
主配置
~/.hermes/.env
记忆
~/.hermes/memory/
技能
~/.hermes/skills/
日志
~/.hermes/logs/
对话历史
~/.hermes/conversations/
缓存
~/.hermes/cache/
C. 资源链接
资源
链接
GitHub 仓库
https://github.com/NousResearch/hermes-agent
官方文档
https://hermesagent.org.cn/
中文社区
https://hermesagent.org.cn/community
D. 版本更新日志
版本
日期
更新内容
v0.8.0
2026-04-08
新增多智能体协作能力、Web UI 改进
v0.7.0
2026-03-20
技能系统大升级、记忆增强
v0.6.0
2026-03-01
支持飞书、企业微信接入
v0.5.0
2026-02-25
首个公开版本发布
E. 性能基准测试
任务类型
Gemini Flash
Claude Sonnet
GPT-4o
DeepSeek V3
简单对话
⚡ 0.8s
1.2s
1.0s
0.9s
代码生成
2.5s
2.0s
2.2s
2.3s
长文写作
5.0s
4.5s
5.2s
4.8s
复杂推理
8.0s
5.5s
7.0s
6.5s
代码审查
4.0s
3.0s
3.5s
3.8s
F. 常见错误代码
错误码
说明
解决方案
E1001
API Key 无效
检查并重新配置 API Key
E1002
API 配额用尽
升级账户或等待刷新
E1003
网络超时
检查网络或增加超时时间
E2001
模型不支持
检查模型名称是否正确
E2002
Token 超限
减少上下文或使用更长上下文模型
E3001
技能不存在
检查技能名称或创建新技能
E4001
记忆写入失败
检查目录权限
E5001
消息平台连接失败
检查配置或网络
E5002
消息平台认证失败
检查 Token 和用户 ID