Skip to content

术语表

核心概念

Agent(智能体)

能够自主执行任务、调用工具、与用户交互的 AI 系统。在 Hermes 中,AIAgent 类(run_agent.py)是核心实现。

Tool(工具)

Agent 可以调用的原子能力。每个工具通过 registry.register() 注册,拥有 JSON Schema 定义和 handler 函数。例如:terminal(执行命令)、file_read(读取文件)、web_search(网络搜索)。

Toolset(工具集)

工具的逻辑分组。支持组合和递归包含。例如 web 工具集包含 web_searchweb_extract。通过 toolsets.py 定义。

Skill(技能)

以 Markdown 形式表达的指令集,指导 Agent 如何完成特定任务。与工具不同,技能不需要自定义 Python 代码,通过现有的工具组合实现。存储在 ~/.hermes/skills/skills/ 目录。

Session(会话)

一次完整的对话上下文,包含所有消息历史。通过 SessionDB(SQLite)持久化,支持 FTS5 全文搜索。

Profile(配置档案)

完全隔离的 Agent 实例。每个 Profile 有独立的配置、API 密钥、记忆、会话、技能等。通过 HERMES_HOME 环境变量实现隔离。

架构组件

Prompt Builder(提示词构建器)

agent/prompt_builder.py 中的系统提示词组装引擎。将身份、上下文文件、技能索引、模型指令等多个来源组合成最终的 system prompt。

Context Compressor(上下文压缩器)

agent/context_compressor.py 中的上下文管理组件。当对话超出模型上下文窗口时,通过三区策略(保护头部 → 保护尾部 → LLM 压缩中间)自动压缩。

Memory Provider(记忆提供者)

持久化记忆的后端实现。支持内置(MEMORY.md/USER.md)和外部(Honcho、Mem0)Provider。

Gateway(网关)

gateway/run.py 中的消息路由服务。连接多个消息平台(Telegram、Discord 等),将消息转发给 Agent 处理。

Platform Adapter(平台适配器)

gateway/platforms/ 中实现特定消息平台接口的类。继承 BasePlatformAdapter,实现 connect()disconnect()send() 等方法。

TUI(终端用户界面)

基于 Ink (React) 的富终端界面。采用双进程架构:Node.js 渲染 UI,Python 处理 Agent 逻辑,通过 JSON-RPC over stdio 通信。

MCP(Model Context Protocol)

Anthropic 提出的标准协议,允许外部工具服务器与 AI 模型集成。Hermes 通过 tools/mcp_tool.py 实现 MCP 客户端。

Delegate(委托)

通过 tools/delegate_tool.py 创建隔离的子 Agent 执行子任务。子 Agent 拥有独立的上下文、工具集和预算。

技术术语

FTS5

SQLite 的全文搜索引擎。用于会话消息的全文搜索。

WAL Mode

Write-Ahead Logging。SQLite 的并发访问模式,允许多个读者和一个写者同时操作。

Prompt Caching

Anthropic 的提示缓存机制。通过在特定位置设置 cache breakpoint,避免重复传输相同的上下文,最高降低 75% 成本。

NormalizedResponse

Hermes 定义的统一响应格式。所有模型适配器将各自格式转换为 NormalizedResponse,使核心循环与具体 Provider 解耦。

AST Scanning

抽象语法树扫描。tools/registry.py 使用 AST 分析工具文件中的 registry.register() 调用,无需 import 模块即可发现工具。

Progressive Disclosure(渐进式披露)

按需加载策略。技能系统采用三层披露:Tier 1 只返回元数据(省 token),Tier 2/3 按需返回完整内容。

Iteration Budget(迭代预算)

限制 Agent 在一次对话中最多执行多少轮工具调用。默认 90 轮,防止无限循环。

Grace Call(宽限调用)

迭代预算用尽后的最后一次 API 调用机会。允许 Agent 在预算耗尽时生成最终回复。

SOUL.md

~/.hermes/SOUL.md 文件,定义 Agent 的个性化身份。会被注入到系统提示词中。

KawaiiSpinner

CLI 中的动画提示组件。在等待 API 响应时显示可爱的表情动画。

Skin(皮肤)

CLI 的视觉主题。通过 hermes_cli/skin_engine.py 管理,支持自定义颜色、spinner 动画、品牌文字等。

HERMES_HOME

Agent 的主目录。默认为 ~/.hermes,Profile 模式下为 ~/.hermes/profiles/<name>。所有状态文件(配置、会话、记忆、技能)都存储在此目录下。

COMMAND_REGISTRY

hermes_cli/commands.py 中定义的斜杠命令注册表。所有 CLI 和 Gateway 的命令处理都从这个单一数据源派生。

基于 MIT 许可发布