Hermes的默认配置够用了,但调一调能让你用得更爽。这一讲我把最值得改的配置给你列出来。
配置文件在哪
Hermes的配置分两个文件:
| 文件 | 路径 | 存什么 |
|---|---|---|
| config.yaml | ~/.hermes/config.yaml |
普通设置(模型、显示、工具等) |
| .env | ~/.hermes/.env |
API key和密码 |
为什么分开?因为 .env 存的是敏感信息,而 config.yaml 可以随便分享。
用命令改配置
不用手动编辑文件,Hermes提供了命令行工具:
hermes config # 查看当前配置
hermes config set KEY VAL # 修改某个值
hermes config edit # 用编辑器打开config.yaml
比如:
hermes config set model deepseek/deepseek-chat
hermes config set terminal.backend docker
hermes config set display.tool_progress verbose
API key用 hermes config set 也会自动存到 .env,不用担心放错地方。
值得改的显示设置
输出详细程度
display:
tool_progress: all # off / new / all / verbose
-
•
off:静默,只显示最终结果 -
•
new:只在换工具时显示 -
•
all:显示每个工具调用(默认,推荐) -
•
verbose:显示完整参数和调试信息
我日常用 all,出了问题调 verbose。
流式输出
display:
streaming: true
开启后,Hermes的回复会一个字一个字实时显示,不用等它全部生成完。体验好很多。
显示花费
display:
show_cost: true
在状态栏显示当前会话花了多少钱。用了贵的模型时看着数字涨,能帮你养成节约的习惯。
终端响铃
display:
bell_on_complete: true
Hermes干完活后终端响一声。适合启动长任务后去干别的,听到铃声就知道完了。
上下文压缩设置
聊久了上下文会满,Hermes会自动压缩。可以调触发阈值:
compression:
enabled: true
threshold: 0.50 # 上下文用到50%时触发压缩
如果你用的大模型(200K+上下文),可以调高点:
compression:
threshold: 0.70 # 用到70%再压缩
审批模式
Hermes执行危险命令前会问你。三个模式:
approvals:
mode: manual # 手动审批(默认,推荐)
# mode: smart # 智能审批,安全的自动过,危险的问你
# mode: off # 关闭审批,危险!
新手建议 manual,熟悉后切 smart,省事很多。
终端后端
默认命令在你本地执行。可以换到其他环境:
terminal:
backend: local # 本地(默认)
# backend: docker # Docker容器(隔离安全)
# backend: ssh # 远程服务器
Docker后端:命令在Docker容器里执行,不会影响你的主机。适合测试不熟悉的命令。
hermes config set terminal.backend docker
SSH后端:命令在远程服务器上执行。适合Hermes跑在云服务器上,你本地只是发指令。
terminal:
backend: ssh
环境变量:
TERMINAL_SSH_HOST=你的服务器IP
TERMINAL_SSH_USER=用户名
语音设置
文字转语音(TTS)
Hermes说话给你听:
tts:
provider: edge # edge(免费)/ elevenlabs / openai / gemini
Edge TTS完全免费,支持中文,音质够用。
语音转文字(STT)
你说,Hermes听:
stt:
provider: local # 本地(需装faster-whisper)
# provider: groq # Groq API(快,需key)
# provider: openai # OpenAI Whisper
本地转文字完全免费,隐私也好,但需要装依赖。
时区设置
默认用服务器本地时区。如果你服务器在国外,想按北京时间跑定时任务:
timezone: "Asia/Shanghai"
人格自定义
系统默认的人格是标准助手。你可以完全自定义:
编辑 ~/.hermes/SOUL.md:
# 身份
你是一个经验丰富但脾气有点暴躁的全栈开发者。说话直接,不爱废话,但技术能力很强。
# 风格
- 回复简短,直击要点
- 代码注释很少,认为好代码应该自解释
- 遇到蠢问题会吐槽,但还是会帮忙解决
这个文件的内容会替换掉Hermes的默认身份设定。每次启动都会加载,比 /personality 命令更持久。
项目上下文文件
在你的项目目录下放这些文件,Hermes会自动加载:
| 文件 | 优先级 | 用途 |
|---|---|---|
.hermes.md |
最高 | 项目专属指令 |
AGENTS.md |
高 | 项目规范(递归查找) |
CLAUDE.md |
中 | Claude Code兼容 |
.cursorrules |
低 | Cursor兼容 |
比如你在项目根目录放 AGENTS.md:
# 项目规范
- 使用TypeScript,严格模式
- 缩进用2个空格
- 测试用Vitest
- 提交前必须跑过lint和test
Hermes在这个项目里操作时,会自动知道这些规范。
检查配置是否正确
hermes config check
这条命令会检查配置是否有缺失或错误,并给出修复建议。