AI技术·2026年6月7日·8 分钟

大多数用户从未发现的 10 个 Hermes Agent 设置:把聊天 Agent 变成 24/7 自动化系统

这篇文章整理了 Hermes Agent 从聊天界面升级为全天候自主运行系统所需的十个关键配置,包括持久化记忆、调度时区、skill 自动发现、上下文预加载、输出路由、通知、skill 链路、记忆整合和故障恢复。

大多数用户从未发现的 10 个 Hermes Agent 设置:把聊天 Agent 变成 24/7 自动化系统

大多数安装 Hermes Agent 的人,只用到了它能力的 20%。

不是因为他们技术不够。

而是因为那些能把 Hermes 从一个高级聊天工具变成真正自主运行的 24/7 系统的设置,并不在 README 里。不在快速入门指南里。也不在那些只讲安装和基础用法的 YouTube 教程里。

这些设置,是你真实使用几周之后才会发现的。是在撞上默认配置的限制、深入配置文件寻找缺失项之后才会找到的。

本文会把这 10 个设置全部记录下来。

如果你已经安装了 Hermes,但只是把它当作聊天界面来用,那你错过了它真正值得运行的全部价值。

真正拉开差距的,就是这些设置。

设置 1:持久化记忆后端

默认状态:Hermes 默认启用记忆,但很多用户从未确认它是否真的能在不同会话之间持久保存。

在哪里找到:

MEMORY_BACKEND=sqlite
MEMORY_PATH=./data/memory.db

为什么大多数用户会错过:

默认配置看起来是正确的,但记忆数据库经常会落在一个进程重启或安装目录变化后被清掉的路径里。用户以为记忆在工作,因为 Hermes 没有报错。其实它没有正常工作,因为数据库路径被解析到了一个临时位置。

如何修复:

使用绝对路径,而不是相对路径:

MEMORY_PATH=/Users/yourname/hermes-data/memory.db

绝对路径可以确保无论你从哪里启动 Hermes,读写的都是同一个数据库。

如何验证它是否生效:

你存储的最早一条记忆是什么?

你现在一共有多少条记忆?

如果 Hermes 报告有 0 条,或者无法回答这个问题,说明记忆后端没有正确持久化。

会带来什么变化:

这个单一修复,比任何其他设置都更能解锁 Hermes 的能力。每一次 skill 执行都会开始利用累积上下文。每天早上的简报都会引用之前简报中的模式。每一份内容草稿都会受益于从之前草稿中保存下来的效果数据。

没有这个修复,Hermes 只是一个高级的单会话工具。

有了它,复利才真正开始。

设置 2:调度器时区配置

默认状态:调度器已启用,但时区默认设置为 UTC。

在哪里找到:

ENABLE_SCHEDULER=true
SCHEDULER_TIMEZONE=UTC

为什么大多数用户会错过:

Hermes 安装后使用 UTC 时区。纽约、伦敦或东京的用户把晨间简报配置为早上 6 点,然后困惑它为什么会在凌晨 1 点、早上 6 点或下午 3 点触发,具体取决于他们所在的位置。他们会以为调度器坏了,然后把它关掉。

调度器没有坏。错的是时区。

如何修复:

SCHEDULER_TIMEZONE=America/New_York
# 或
SCHEDULER_TIMEZONE=Europe/London
# 或
SCHEDULER_TIMEZONE=Asia/Tokyo

使用完整的 IANA 时区名称。不要用 EST。不要用 GMT+5 这类写法。要使用 IANA 时区数据库里的完整名称。

会带来什么变化:

定时 skill 会在你真正想要的时间触发。晨间简报会在你打开笔记本电脑之前送达,而不是半夜冒出来。内容雷达会在工作时间运行。记忆整合会在你所在时区的午夜运行,而不是 UTC 午夜。

这个设置会让调度器变得可信,而不是令人沮丧。

设置 3:Skill 自动发现路径

默认状态:Hermes 从默认 skills 目录加载 skill,并且需要重启才能识别新的 skill。

在哪里找到:

SKILLS_PATH=./skills

为什么大多数用户会错过:

大多数用户会创建 skill 文件,并把它们保存到默认 skills 目录。这可以工作,但他们错过的是:Hermes 可以配置为同时监控多个 skills 目录,并且无需重启进程就能自动发现新的 skill。

如何配置:

SKILLS_PATH=/Users/yourname/hermes-skills
SKILLS_WATCH=true
SKILLS_AUTO_RELOAD=true

启用 SKILLS_WATCH 后,Hermes 会监控 skills 目录中的新文件或修改过的文件。当你保存一个新 skill,或更新已有 skill 时,它会立刻可用,不需要重启。

高级用法:

把 skill 文件存进你的 Obsidian vault,然后让 Hermes 指向 vault 中的 skills 文件夹:

SKILLS_PATH=/Users/yourname/ObsidianVault/06-SYSTEM/skills

这样,你的 skill 就保存在 vault 里。它们是人类可读的,也是你知识系统的一部分。你可以从其他笔记链接到它们,在 Obsidian 里编辑它们,它们会自动同步到 Hermes。

会带来什么变化:

skill 开发会变得更快,因为测试新 skill 时你再也不用重启 Hermes。skill 会成为你知识系统的一部分,而不是被埋在没人阅读的配置目录里。

设置 4:上下文窗口预加载配置

默认状态:Hermes 会在会话开始时加载 CLAUDE.md,但不会预加载相关上下文文件。

为什么大多数用户会错过:

大多数用户会写一个 CLAUDE.md,然后就觉得完成了。他们错过的是:Hermes 可以在每次会话开始时预加载多个上下文文件,让 Claude 获得更丰富、更具体的操作上下文,而不需要维护一个越来越臃肿、难以管理的巨型 CLAUDE.md

如何组织:

把你的上下文拆分到多个聚焦的文件中:

CLAUDE.md                  → 身份与运行规则
context/projects.md        → 详细项目状态
context/priorities.md      → 本周当前优先级
context/standards.md       → 质量标准与表达风格
context/memory-rules.md    → 应该存储什么以及如何存储

配置 Hermes 加载所有这些文件:

CONTEXT_PRELOAD=true
CONTEXT_FILES=./CLAUDE.md,./context/projects.md,./context/priorities.md,./context/standards.md,./context/memory-rules.md

会带来什么变化:

Claude 在每次会话开始时获得的上下文,会比单个 CLAUDE.md 能提供的更丰富。项目状态会保持最新,因为你更新的是项目文件,而不是整个 CLAUDE.md。优先级变化也会很快,因为你只需要编辑一个小文件。

这种模块化意味着每个上下文文件都能保持聚焦和及时更新,而不是让 CLAUDE.md 膨胀到难以管理的长度,最后因为编辑起来太费劲而没人再维护。

设置 5:记忆检索深度

默认状态:Hermes 每次执行 skill 时,会检索最近的五条相关记忆。

在哪里找到它:

MEMORY_RETRIEVAL_DEPTH=5
MEMORY_RETRIEVAL_STRATEGY=recency

为什么大多数用户会忽略它:

默认检索深度为五条,比较保守。对于受益于更长历史上下文的 skill,比如周度回顾、模式分析和决策支持,默认检索会漏掉重要上下文。这些上下文存在于记忆数据库中,但由于检索限制被截断,所以不会浮现出来。

如何配置:

MEMORY_RETRIEVAL_DEPTH=20
MEMORY_RETRIEVAL_STRATEGY=relevance

MEMORY_RETRIEVAL_STRATEGY=relevance 会检索语义上最相关的条目,而不只是最近的条目。对于决策支持 skill 来说,这意味着三个月前的相关决策会和近期决策一起浮现出来。

针对特定 skill 的覆盖配置:

有些 skill 适合深度历史检索,另一些则更适合按时间近远检索。可以在 skill 文件中为每个 skill 配置检索方式:

## Memory Configuration
retrieval_depth: 30
retrieval_strategy: relevance
retrieval_tags: [decision, project-name]

会发生什么变化:

周度回顾会变得真正全面,因为它会参考前十二次回顾,而不是只有五次。决策支持 skill 会浮现几个月前但和当前问题直接相关的历史决策。模式分析也能基于完整历史工作,而不是被截断的近期样本。

设置 6:输出路由配置

默认状态:所有 skill 输出都会保存到默认输出目录。

在哪里找到它:

OUTPUT_PATH=./data/outputs

为什么大多数用户会忽略它:

把所有内容都保存到单一输出目录,意味着 Hermes 输出和你的工作文件是分开的。Hermes 生成的简报在 Hermes 文件夹里。你的 Obsidian 笔记在另一个 vault 里。你必须手动移动或引用这些输出,才能把它们纳入自己的知识系统。

如何配置:

把输出路径直接指向你的 Obsidian vault:

OUTPUT_PATH=/Users/yourname/ObsidianVault/04-HERMES-OUTPUTS

现在,每个 skill 输出都会作为笔记直接落到你的 vault 里。不需要手动转移。不需要检查单独文件夹。早间简报一生成,就会出现在你的 vault 中。

针对特定 skill 的路由:

对于会产生不同类型输出的 skill,可以在 skill 文件中配置路由:

## Output Configuration
base_path: /Users/yourname/ObsidianVault
briefings: 04-HERMES-OUTPUTS/briefings
analyses: 04-HERMES-OUTPUTS/analyses
drafts: 04-HERMES-OUTPUTS/drafts
reviews: 04-HERMES-OUTPUTS/reviews

会发生什么变化:

Hermes 输出会自动变成 vault 笔记。它们可以链接到其他笔记。它们会出现在你的 vault 图谱视图中。它们也会和知识系统里的其他内容一起被搜索到。

你的 AI 运行体系和知识系统之间的隔离消失了。

设置 7:通知网关

默认状态:未配置通知系统。

在哪里找到它:

NOTIFICATION_GATEWAY=none

为什么大多数用户会忽略它:

没有通知时,你必须打开 Hermes 或检查输出文件夹,才能知道某个计划执行的 skill 是否已经完成。这意味着你搭好的自动化,仍然需要你主动开始消费它的输出。

如何配置 Telegram 通知:

NOTIFICATION_GATEWAY=telegram
TELEGRAM_BOT_TOKEN=your-bot-token
TELEGRAM_CHAT_ID=your-chat-id

通过 BotFather 创建一个 Telegram bot,获取 bot token,给你的 bot 发送一条消息以获取 chat ID,然后在 .env 中配置这两个值。

在 skill 文件中配置通知触发器:

## Notifications
on_complete: telegram
on_failure: telegram
message: "Morning brief ready: {output_path}"

会发生什么变化:

早间简报落到 vault 的那一刻,你的手机就会收到通知。你不需要检查任何东西,也能知道计划执行的 skill 什么时候完成。执行失败会立即提醒你,而不是等到几个小时后你检查输出文件夹时才发现。

自主运行真正融入后台工作流。它在后台运行。结果准备好时,你会收到它们。

设置 8:Skill 链式配置

默认状态:Skills 独立运行,彼此之间没有自动交接。

为什么大多数用户会忽略它:

大多数用户会配置单个 skill,并分别运行它们。他们错过的是,Hermes 可以把 skill 串起来,让一个 skill 的输出自动触发另一个 skill 执行,不需要任何手动启动。

如何在 skill 文件中配置:

## Chaining Configuration
on_complete:
  - trigger: draft-engine
    condition: "output contains TIER 1"
    pass_output: true
    
  - trigger: quality-filter
    condition: always
    pass_output: true

有了这项配置,当内容雷达 skill 识别出一个 TIER 1 机会时,它会自动触发草稿引擎。草稿引擎产出草稿后,会自动触发质量过滤器。

一个完整流水线示例:

source-monitor (every 2 hours)
    → content-radar (triggered by new items)
        → draft-engine (triggered by TIER 1 items)
            → quality-filter (triggered by new drafts)
                → notification (triggered on approval)

一个计划执行的 skill 会触发一整条流水线,最后在你的队列中生成一篇已通过审核的草稿,并向你的手机发送一条 Telegram 通知。

会发生什么变化:

单个 skill 变成一条流水线。过去需要在各阶段之间手动切换的内容运营流程,现在可以端到端自动运行。

设置 9:记忆整合计划

默认状态:记忆整合只有手动触发时才会运行,或者根本不运行。

为什么大多数用户会漏掉它:

记忆数据库会随着每次 skill 执行不断累积条目。没有整合,数据库会逐渐充满重复条目、重叠观察和过时信息,随着时间推移降低检索质量。

原本越来越好用的 Agent,会因为记忆变得更嘈杂,开始产出略差的结果。

如何配置自动整合:

添加到你的 schedule 配置:

{
  "skill": "memory-consolidator",
  "cron": "0 23 * * *",
  "description": "Nightly memory consolidation at 11PM"
}

记忆整合 skill:

# memory-consolidator

## Purpose
Review and optimize all memory entries from 
the current day to maintain retrieval quality.

## Process
1. Retrieve all memory entries created today

2. Identify duplicate or near-duplicate entries 
   and merge them into single entries

3. Update relevance scores based on retrieval 
   frequency from today's skill executions

4. Archive any entries tagged as outdated

5. Identify patterns across today's entries 
   and store pattern observations tagged: 
   daily-pattern

6. Generate consolidation summary and save 
   to outputs/consolidations/[DATE].md

会发生什么变化:

记忆质量会随着时间改善,而不是退化。检索结果会保持相关,而不是变得嘈杂。第三个月的 Agent 会比第一个月的 Agent 检索到更好的上下文,因为整合维护了一个干净、最新的记忆数据库。

设置 10:失败恢复配置

默认状态:skill 执行失败时记录错误并停止。

为什么大多数用户会漏掉它:

在 24/7 自主运行中,失败并不例外。数据源会离线。API 会触发速率限制。文件可能不在 skill 预期的位置。

如果 skill 被配置成失败即停止,你的自主运行就会出现无声空档。晨报没有生成。内容雷达漏掉了一轮。你并不知道,因为失败被记录在某个你不会查看的地方。

如何配置重试逻辑:

SKILL_RETRY_ENABLED=true
SKILL_RETRY_MAX=3
SKILL_RETRY_DELAY=300
SKILL_RETRY_NOTIFICATION=telegram

使用这套配置后,失败的 skill 会自动重试三次,每次间隔五分钟。如果三次重试全部失败,会立即发送 Telegram 通知。

把恢复行为添加到 skill 文件中:

## Failure Recovery

ON SOURCE UNAVAILABLE:
Skip the unavailable source. Continue with 
available sources. Note the skip in the output.
Do not fail the entire skill because one 
source is unavailable.

ON API RATE LIMIT:
Wait 60 seconds and retry. Maximum 3 retries.
If still rate limited after 3 retries: complete
with available data and flag as partial.

ON FILE NOT FOUND:
Check if the file exists at an alternative path.
If not found: create a placeholder and note 
the missing input. Continue with available context.

ON MODEL ERROR:
Retry with reduced context if the error suggests 
context length issues. Retry with the same prompt 
if the error appears transient.

会发生什么变化:

你的自主运行会变得健壮,而不是脆弱。临时故障会自动恢复。持续故障会立即提醒你,而不是几个小时后才被发现。

24/7 运行里的 24/7 需要这项设置。没有失败恢复,自主运行的可靠性只等于它最不可靠的依赖项。

完整配置

单独应用时,每一项设置都会带来有意义的改进。一起应用时,它们会把系统变成一个和默认 Hermes 安装有本质区别的东西。

下面是应用全部十项设置的完整 .env

# Setting 1: Persistent memory with absolute path
MEMORY_BACKEND=sqlite
MEMORY_PATH=/Users/yourname/hermes-data/memory.db

# Setting 2: Correct timezone
ENABLE_SCHEDULER=true
SCHEDULER_TIMEZONE=America/New_York

# Setting 3: Skill auto-discovery with vault integration
SKILLS_PATH=/Users/yourname/ObsidianVault/06-SYSTEM/skills
SKILLS_WATCH=true
SKILLS_AUTO_RELOAD=true

# Setting 4: Context pre-loading
CONTEXT_PRELOAD=true
CONTEXT_FILES=./CLAUDE.md,./context/projects.md,./context/priorities.md,./context/standards.md

# Setting 5: Deep memory retrieval
MEMORY_RETRIEVAL_DEPTH=20
MEMORY_RETRIEVAL_STRATEGY=relevance

# Setting 6: Output routing to vault
OUTPUT_PATH=/Users/yourname/ObsidianVault/04-HERMES-OUTPUTS

# Setting 7: Telegram notifications
NOTIFICATION_GATEWAY=telegram
TELEGRAM_BOT_TOKEN=your-bot-token
TELEGRAM_CHAT_ID=your-chat-id

# Setting 10: Failure recovery
SKILL_RETRY_ENABLED=true
SKILL_RETRY_MAX=3
SKILL_RETRY_DELAY=300
SKILL_RETRY_NOTIFICATION=telegram

设置 8 和设置 9 分别在单个 skill 文件和 schedule.json 中配置。

应用前后

应用这些设置之前:

Hermes 是一个高级聊天工具。你想起来的时候才会打开它。你想要输出时才会手动运行 skill。记忆可能会持久化,也可能不会。计划任务可能在错误的时间触发。失败的 skill 会静默失败。输出会落在一个与你工作文件分离的文件夹里。

你安装了一个强大的工具,却把它当成聊天窗口在用。

应用这些设置之后:

Hermes 是一个 24/7 自主运行系统。记忆会跨越每次会话持续存在,并随着时间积累智能。计划 skill 会按你所在时区的正确时间触发。skill 会串成流水线,在没有手动切换的情况下端到端完成。输出会作为笔记直接进入你的 vault。Telegram 通知会在结果准备好的那一刻把它们送到你的手机上。失败的 skill 会自动重试,并在无法恢复时提醒你。

你把一个强大的工具配置成了一个能持续运转的系统。

这两种状态之间的差距,就是十项设置。

大多数用户永远找不到它们。

现在你已经拿到了全部十项。

这个周末把它们应用上,下周看看变化。

24/7 运行会在调度器第一次按正确时间触发 skill 的那一刻开始。

原作者:cyrilXBT

原文链接:https://x.com/cyrilXBT/status/2062720923942228205