DEV Community

Henry Lin
Henry Lin

Posted on

Hermes Agent 01. 概览与架构

01. 概览与架构

这一章帮助你先建立整体认知:Hermes Agent 到底是什么、适合做什么、和普通聊天助手有什么区别,以及仓库里最重要的几个系统是如何配合工作的。

本章目标

  • 理解 Hermes Agent 的产品定位
  • 了解 CLI、Gateway、Tools、Skills、Memory、MCP、Cron 的关系
  • 判断 Hermes 是否适合你的使用场景
  • 建立后续阅读所需的整体地图

适用读者

  • 第一次接触 Hermes Agent 的用户
  • 准备长期使用 Hermes 的进阶用户
  • 希望参与仓库开发的贡献者

前置条件

  • 不需要任何安装经验
  • 建议对命令行、API key、配置文件有基本概念

核心概念

Hermes Agent 不是“只能聊天”的助手

Hermes 的核心价值在于“会调用工具、会保留长期上下文、能跨平台持续运行”。它不是单纯把一个模型包进聊天窗口,而是把模型、工具、记忆、技能、会话存储、多平台入口和自动化机制组合成一个可持续工作的 agent。

Hermes 的几块核心系统

  • CLI:终端里的交互式主入口,适合开发、调试、重度使用
  • Gateway:把同一个 agent 能力接到 Telegram、Discord、Slack、WhatsApp、Signal 等平台
  • Tools:模型真正执行动作的能力边界,例如终端执行、文件读写、网页搜索、浏览器控制
  • Toolsets:对工具做分组和开关控制,决定某个平台或某次会话能用哪些工具
  • Skills:按需加载的流程知识,适合保存“怎么做”
  • Memory:跨会话保留的事实性信息,适合保存“是什么”
  • Context Files:如 AGENTS.mdSOUL.md 等长期注入的上下文文件
  • MCP:把外部系统通过统一协议暴露成 Hermes 可调用的工具
  • Cron:让 Hermes 按计划自动运行任务,而不是等你每次手动发消息

一个典型的数据流

当你在 CLI 或消息平台中发出请求时,大致会发生这些步骤:

  1. 入口层接收消息
  2. AIAgent 构造系统提示词和上下文
  3. 模型决定直接回答,或者调用一个或多个工具
  4. 工具结果回到 agent 循环中
  5. 生成最终回复并保存到会话存储

这意味着 Hermes 的“智能”不只是模型本身,还来自整个执行回路。

操作步骤

第一步:记住 Hermes 的两个主入口

  • 想在终端里工作,用 hermes
  • 想在聊天平台里工作,用 hermes gateway ...

CLI 更适合:

  • 写代码
  • 看工具输出
  • 调试配置
  • 处理复杂任务

Gateway 更适合:

  • 长期在线
  • 远程使用
  • 定时推送
  • 团队或多设备访问

第二步:理解“能力来自工具”

Hermes 不会凭空浏览网页、修改文件或运行命令。它必须通过工具完成这些操作。你应当从一开始就建立这个判断标准:

  • 只是回答知识问题:可能不需要工具
  • 需要访问项目、网页、终端、外部系统:通常一定会用工具
  • 需要长期复用的流程:通常还会涉及 skill

第三步:理解“长期表现来自技能、记忆和上下文文件”

同一个模型在 Hermes 里表现更稳定,往往不是因为模型突然变强,而是因为:

  • 你给了它合适的 AGENTS.md
  • 你把重复流程做成了 skill
  • 你让它把长期事实写进了 memory
  • 你没有频繁打断 prompt cache

常见场景

场景 1:本地开发助手

你在项目根目录启动 hermes,让它读 AGENTS.md、搜索代码、跑测试、改文件。这个场景最依赖 CLI、terminal、file、toolset 和上下文文件。

场景 2:消息平台上的远程代理

你把 Hermes 部署在一台服务器上,用 Telegram 或 Discord 与它对话,让它代你查信息、执行脚本、推送定时报告。这个场景最依赖 Gateway、allowlist、home channel 和 cron。

场景 3:连接企业内部系统

你希望 Hermes 能访问公司文档、数据库、内部 API 或 GitHub 工作流,但不想给 Hermes core 写一堆新工具。这时通常应该优先考虑 MCP。

常见问题与排错

为什么说 Hermes 不等于 IDE copilot

IDE copilot 更像“对当前编辑环境的增强”;Hermes 更像“拥有多种入口和工具的独立 agent 运行时”。它可以不在 IDE 里,不在你的本机上,甚至不在你当前打开的项目里。

为什么有时候 Hermes 看起来“不会做事”

最常见的原因不是模型不够强,而是:

  • 对应工具没启用
  • 需要的 API key 没配置
  • toolset 不包含该能力
  • 上下文不够清楚

这些问题在后续章节都会展开。

本章总结

Hermes Agent 的核心不是某一个模型,而是一整套围绕 agent 循环组织起来的运行系统。后面所有章节,本质上都在回答三个问题:Hermes 能做什么、怎么让它做对、以及怎么让它长期稳定地做。

下一步建议

继续看 安装与初始化,把 Hermes 真正跑起来。

Top comments (0)