学习指南

Hermes-Agent 源码解析

从初学者到专家 — 一本由浅入深的实战指南

🎯 这本书适合谁?

  • 有编程基础,想理解 AI Agent 内部原理的开发者
  • 对 LLM 应用开发感兴趣,想从源码级别理解的人
  • 想基于 Hermes-Agent 做二次开发或定制的工程师
  • 希望学习如何设计一个生产级 AI Agent 系统的人

📚 前置知识

  • Python 编程基础(类、函数、异步编程)
  • 了解什么是 LLM(大语言模型)
  • 会使用命令行和 Git
  • 不需要 AI/ML 背景 — 我们会从零开始解释

项目概述

Hermes-Agent 是由 Nous Research 开发的自进化 AI Agent。它是目前唯一内置学习循环的 Agent 系统。

40+
内置工具
10+
消息平台
v0.8
当前版本
MIT
开源协议

学习路线图

按照以下顺序学习,你将系统掌握整个项目:

阶段 章节 内容 预计时间
入门 第一章 - 第二章 概念认知 + 跑通项目 25 分钟
架构理解 第三章 - 第五章 架构 + 启动 + 核心循环 80 分钟
核心机制 第六章 - 第九章 工具 + 记忆 + Prompt + 上下文 100 分钟
扩展实战 第十章 - 第十二章 委托 + 网关 + 二次开发 85 分钟

项目架构总览

Hermes-Agent 采用分层架构,每一层有明确的职责:

用户交互层 User Interface
⌨️ CLI 终端
交互式命令行界面,TUI 界面
📱 Gateway 消息网关
统一消息入口,支持多平台
💻 ACP 协议
VSCode / Zed 集成
🎯 Skills 技能
可扩展技能系统
核心编排层 Orchestration
🎛️ HermesCLI
命令解析、用户输入处理
cli.py
🧠 AIAgent
核心决策引擎,Agent 循环
run_agent.py
工具编排层 Tool Orchestration
🔧 model_tools.py
工具发现、调度、结果处理
工具实现层 Tool Implementation
📁 File Tools
文件读写搜索
🖥️ Terminal
命令执行
🌐 Web Tools
搜索和抓取
🌐 Browser
浏览器自动化
📤 Delegate
子代理委托
Cronjob
定时任务
支撑系统 Support Systems
💾 hermes_state
SQLite 会话存储、FTS5 搜索
📝 agent/
Prompt、Context、Memory
📚 skills/
可扩展技能系统

模块依赖关系

理解模块之间的依赖,对于你阅读源码至关重要:

L1
tools/registry.py
无依赖 — 最底层基础设施
L2
tools/*.py
各工具实现,导入 registry
L3
model_tools.py
工具编排层,导入所有工具
L4
run_agent.py
核心引擎,使用 model_tools
L5
cli.py / gateway/
入口层,使用 run_agent

为什么选择 Hermes-Agent?

🎯 真实生产级
已在数千用户中使用,经历过真实场景检验
🏗️ 模块化设计
代码质量高,注释完善,易于学习
🧬 自进化能力
唯一内置自我进化能力的 Agent 系统
📱 多平台支持
一个代码库支持 10+ 消息平台

如何阅读这本书?

1
建立认知
阅读前五章
2
结合源码
对照关键代码片段
3
动手实践
实际运行项目
4
完成作业
延伸思考练习

开始学习

准备好了吗?让我们从第一章开始:

📝 说明:这本书是根据 Hermes-Agent v0.8.0 版本的源码编写的。如果项目有新版本更新,某些细节可能略有不同。建议阅读时对照最新版本的源码。