欢迎回来

登录 EAKE AI,继续您的智能之旅

忘记密码?
还没有账号?立即注册

Honcho 记忆管理

2026-05-21 · Skills中心

Honcho 记忆管理

配置和使用 Honcho 记忆系统与 Hermes 集成

Hermes 的 Honcho 记忆

Honcho 提供 AI 原生的跨会话用户建模。它跨对话学习用户是谁,为每个 Hermes 配置文件(profile)提供独立的对等体(peer)身份,同时共享对用户的统一视图。

使用场景

  • 设置 Honcho(云端或自托管)
  • 排查记忆不工作/对等体不同步的问题
  • 创建多配置文件设置,让每个智能体拥有自己的 Honcho 对等体
  • 调整观察(observation)、召回(recall)、辩证深度(dialectic depth)或写入频率设置
  • 理解 5 个 Honcho 工具的用途及使用时机
  • 配置上下文预算和会话摘要注入
  • 安装配置

    云端 (app.honcho.dev)

    
    hermes honcho setup
    # select "cloud", paste API key from https://app.honcho.dev
    

    自托管

    
    hermes honcho setup
    # select "local", enter base URL (e.g. http://localhost:8000)
    

    参见:https://docs.honcho.dev/v3/guides/integrations/hermes#running-honcho-locally-with-hermes

    验证

    
    hermes honcho status    # shows resolved config, connection test, peer info
    

    架构说明

    基础上下文注入

    当 Honcho 向系统提示词注入上下文时(在 hybridcontext 召回模式下),它按以下顺序组装基础上下文块:

  • 会话摘要 —— 当前会话到目前为止的简短摘要(放在最前面,让模型立即获得对话连续性)
  • 用户表征 —— Honcho 累积的关于用户的模型(偏好、事实、行为模式)
  • AI 对等体名片 —— 此 Hermes 配置文件的 AI 对等体的身份卡
  • 会话摘要由 Honcho 在每轮对话开始时自动生成(当存在先前会话时)。它让模型无需回放完整历史即可获得热启动。

    冷/热提示选择

    Honcho 会在两种提示策略之间自动选择:

    条件策略发生什么
    无先前会话或表征为空**冷启动**轻量级介绍提示;跳过摘要注入;鼓励模型去了解用户

    无需配置此项——它基于会话状态自动完成。

    对等体

    Honcho 将对话建模为对等体之间的交互。Hermes 每个会话创建两个对等体:

  • 用户对等体peerName):代表人类。Honcho 从观察到的消息构建用户表征。
  • AI 对等体aiPeer):代表此 Hermes 实例。每个配置文件拥有自己的 AI 对等体,使各智能体发展出独立的观点。
  • 观察

    每个对等体有两个观察开关,控制 Honcho 从什么内容中学习:

    已有表征和/或会话历史**热启动**完整基础上下文注入(摘要 → 表征 → 名片);更丰富的系统提示词
    开关作用
    `observeMe`观察该对等体自己的消息(构建自我表征)

    默认:全部四个开关开启(完整的双向观察)。

    honcho.json 中按对等体配置:

    
    {
      "observation": {
        "user": { "observeMe": true, "observeOthers": true },
        "ai":   { "observeMe": true, "observeOthers": true }
      }
    }
    

    或使用简写预设:

    `observeOthers`观察其他对等体的消息(构建跨对等体理解)
    预设用户AI适用场景
    `"directional"`(默认)me:on, others:onme:on, others:on多智能体,完整记忆

    Honcho 仪表盘中更改的设置会在会话初始化时同步回来——服务端配置优先于本地默认值。

    会话

    Honcho 会话限定消息和观察的归属范围。策略选项:

    `"unified"`me:on, others:offme:off, others:on单一智能体,仅对用户建模
    策略行为
    `per-directory`(默认)每个工作目录一个会话
    `per-repo`每个 git 仓库根目录一个会话
    `per-session`每次 Hermes 运行新建一个 Honcho 会话

    手动覆盖:hermes honcho map my-project-name

    召回模式

    智能体访问 Honcho 记忆的方式:

    `global`所有目录共用单个会话
    模式自动注入上下文?工具可用?适用场景
    `hybrid`(默认)智能体自行决定使用工具还是自动上下文
    `context`否(隐藏)最小 token 成本,无工具调用

    三个正交旋钮

    Honcho 的辩证行为由三个相互独立的维度控制。每个维度都可以在不影响其他维度的情况下调整:

    节奏(何时)

    控制辩证调用和上下文调用的频率

    `tools`智能体显式控制所有记忆访问
    默认值说明
    `contextCadence``1`上下文 API 调用之间的最小轮数
    `dialecticCadence``2`辩证 API 调用之间的最小轮数。推荐 1–5

    节奏值越高,辩证 LLM 触发得越少。dialecticCadence: 2 表示引擎每隔一轮触发一次。设为 1 则每轮都触发。

    深度(多少轮)

    控制 Honcho 每次查询执行的辩证推理轮数

    `injectionFrequency``every-turn`基础上下文注入使用 `every-turn` 或 `first-turn`
    默认值范围说明
    `dialecticDepth``1`1-3每次查询的辩证推理轮数

    dialecticDepth: 2 表示 Honcho 运行两轮辩证综合。第一轮产生初步答案;第二轮对其进行精炼。

    dialecticDepthLevels 允许你为每一轮独立设置推理级别:

    
    {
      "dialecticDepth": 3,
      "dialecticDepthLevels": ["low", "medium", "high"]
    }
    

    如果省略 dialecticDepthLevels,各轮将使用从 dialecticReasoningLevel(基准值)派生的按比例级别

    `dialecticDepthLevels`--数组可选的逐轮级别覆盖(见下文)
    深度各轮级别
    1[base]
    2[minimal, base]

    这样既能保持前几轮的开销低廉,又能在最终综合时使用完整深度。

    会话开始时的深度。会话启动预热(prewarm)会在第 1 轮之前在后台运行完整的已配置 dialecticDepth。对冷对等体进行单轮预热往往输出单薄——多轮深度会在用户开口之前运行审计/调和循环。第 1 轮直接消费预热结果;如果预热未及时完成,第 1 轮会回退到带超时上限的同步调用。

    级别(强度)

    控制每轮辩证推理的强度

    3[minimal, base, low]
    默认值说明
    `dialecticReasoningLevel``low``minimal`、`low`、`medium`、`high`、`max`

    级别越高,综合结果越丰富,但在 Honcho 后端消耗的 token 也越多。

    多配置文件设置

    每个 Hermes 配置文件都拥有自己的 Honcho AI 对等体,同时共享同一个工作区(用户上下文)。这意味着:

  • 所有配置文件看到相同的用户表征
  • 每个配置文件构建自己的 AI 身份和观察
  • 一个配置文件写入的结论通过共享工作区对其他配置文件可见
  • 创建带 Honcho 对等体的配置文件

    
    hermes profile create coder --clone
    # creates host block hermes.coder, AI peer "coder", inherits config from default
    

    --clone 对 Honcho 的作用:

  • honcho.json 中创建 hermes.coder 宿主块
  • 设置 aiPeer: "coder"(即配置文件名)
  • 从默认配置继承 workspacepeerNamewriteFrequencyrecallMode
  • 在 Honcho 中立即创建该对等体,使其在首条消息之前就已存在
  • 回填现有配置文件

    
    hermes honcho sync    # creates host blocks for all profiles that don't have one yet
    

    按配置文件配置

    在宿主块中覆盖任意设置:

    
    {
      "hosts": {
        "hermes.coder": {
          "aiPeer": "coder",
          "recallMode": "tools",
          "dialecticDepth": 2,
          "observation": {
            "user": { "observeMe": true, "observeOthers": false },
            "ai": { "observeMe": true, "observeOthers": true }
          }
        }
      }
    }
    

    工具

    智能体拥有 5 个双向 Honcho 工具(在 context 召回模式下隐藏):

    `dialecticDynamic``true`为 `true` 时,模型可以在调用 `honcho_reasoning` 时传入 `reasoning_level` 按次覆盖默认值。`false` = 始终使用 `dialecticReasoningLevel`,忽略模型覆盖
    工具LLM 调用?成本使用时机
    `honcho_profile`极低对话开始时快速获取事实快照,或快速查询姓名/角色/偏好
    `honcho_search`获取特定的历史事实并自行推理——原始摘录,无综合
    `honcho_context`完整会话上下文快照:摘要、表征、名片、近期消息
    `honcho_reasoning`中–高由 Honcho 辩证引擎综合回答自然语言问题

    `honcho_profile`

    读取或更新对等体名片——精选的关键事实(姓名、角色、偏好、沟通风格)。传入 card: [...] 进行更新;省略则为读取。无 LLM 调用。

    `honcho_search`

    针对特定对等体的已存储上下文进行语义搜索。返回按相关性排序的原始摘录,不做综合。默认 800 token,上限 2000。当你需要特定的历史事实自行推理,而不是一个综合答案时适用。

    `honcho_context`

    从 Honcho 获取完整会话上下文快照——会话摘要、对等体表征、对等体名片以及近期消息。无 LLM 调用。当你想一次性查看 Honcho 对当前会话和对等体所知的一切时使用。

    `honcho_reasoning`

    由 Honcho 的辩证推理引擎回答自然语言问题(在 Honcho 后端进行 LLM 调用)。成本更高,质量更高。传入 reasoning_level 控制深度:minimal(快速/廉价)→ lowmediumhighmax(彻底)。省略则使用已配置的默认值(low)。用于对用户的行为模式、目标或当前状态进行综合理解。

    `honcho_conclude`

    写入或删除关于某个对等体的持久结论。传入 conclusion: "..." 进行创建。传入 delete_id: "..." 删除某条结论(用于移除 PII——Honcho 会随时间自我修正错误结论,因此删除仅在进行 PII 移除时需要)。两者必须恰好传入其一。

    双向对等体定向

    全部 5 个工具都接受可选的 peer 参数:

  • peer: "user"(默认)—— 操作用户对等体
  • peer: "ai" —— 操作此配置文件的 AI 对等体
  • peer: "" —— 工作区中的任意对等体 ID
  • 示例:

    
    honcho_profile                        # read user's card
    honcho_profile peer="ai"              # read AI peer's card
    honcho_reasoning query="What does this user care about most?"
    honcho_reasoning query="What are my interaction patterns?" peer="ai" reasoning_level="medium"
    honcho_conclude conclusion="Prefers terse answers"
    honcho_conclude conclusion="I tend to over-explain code" peer="ai"
    honcho_conclude delete_id="abc123"    # PII removal
    

    智能体使用模式

    Honcho 记忆启用时对 Hermes 的指导原则。

    对话开始时

    
    1. honcho_profile                  → fast warmup, no LLM cost
    2. If context looks thin → honcho_context  (full snapshot, still no LLM)
    3. If deep synthesis needed → honcho_reasoning  (LLM call, use sparingly)
    

    不要每轮都调用 honcho_reasoning。自动注入已经负责持续的上下文刷新。仅当你确实需要基础上下文无法提供的综合洞见时,才使用推理工具。

    当用户分享需要记住的内容时

    
    honcho_conclude conclusion=""
    

    好的结论:「偏好代码示例而非文字解释」「在做一个 Rust 异步项目,持续到 2026 年 4 月」

    坏的结论:「用户说了些关于 Rust 的事」(太模糊)、「用户看起来懂技术」(已在表征中)

    当用户询问过去的上下文/你需要回忆细节时

    
    honcho_search query=""       → fast, no LLM, good for specific facts
    honcho_context                       → full snapshot with summary + messages
    honcho_reasoning query=""  → synthesized answer, use when search isn't enough
    

    使用场景 `peer: "ai"`

    使用 AI 对等体定向来构建和查询智能体自身的自我认知:

  • honcho_conclude conclusion="I tend to be verbose when explaining architecture" peer="ai" —— 自我修正
  • honcho_reasoning query="How do I typically handle ambiguous requests?" peer="ai" —— 自我审计
  • honcho_profile peer="ai" —— 查看自己的身份名片
  • 何时不调用工具

    hybridcontext 模式下,基础上下文(用户表征 + 名片 + 会话摘要)会在每轮之前自动注入。不要重复获取已注入的内容。仅在以下情况调用工具:

  • 你需要已注入上下文中没有的内容
  • 用户明确要求你回忆或检查记忆
  • 你正在就新内容写入结论
  • 节奏感知

    工具端的 honcho_reasoning 与自动注入辩证共享相同的成本。在一次显式工具调用之后,自动注入节奏会重置——避免同一轮被重复计费。

    配置参考

    配置文件:$HERMES_HOME/honcho.json(配置文件本地)或 ~/.honcho/config.json(全局)。

    关键设置

    `honcho_conclude`极低写入或删除持久事实;传入 `peer: "ai"` 用于 AI 自我认知
    默认值说明
    `apiKey`--API 密钥([获取一个](https://app.honcho.dev))
    `baseUrl`--自托管 Honcho 的基础 URL
    `peerName`--用户对等体身份
    `aiPeer`宿主键AI 对等体身份
    `workspace`宿主键共享工作区 ID
    `recallMode``hybrid``hybrid`、`context` 或 `tools`
    `observation`全部开启逐对等体的 `observeMe`/`observeOthers` 布尔值
    `writeFrequency``async``async`、`turn`、`session` 或整数 N
    `sessionStrategy``per-directory``per-directory`、`per-repo`、`per-session`、`global`

    辩证设置

    `messageMaxChars``25000`每条消息的最大字符数(超出则分块)
    默认值说明
    `dialecticReasoningLevel``low``minimal`、`low`、`medium`、`high`、`max`
    `dialecticDynamic``true`按查询复杂度自动提升推理级别。`false` = 固定级别
    `dialecticDepth``1`每次查询的辩证轮数 (1-3)
    `dialecticDepthLevels`--可选的逐轮级别数组,例如 `["low", "high"]`

    上下文预算与注入

    `dialecticMaxInputChars``10000`辩证查询输入的最大字符数
    默认值说明
    `contextTokens`无上限基础上下文合并注入(摘要 + 表征 + 名片)的最大 token 数。可选上限——省略则不设上限,设为整数则限制注入大小。
    `injectionFrequency``every-turn``every-turn` 或 `first-turn`
    `contextCadence``1`上下文 API 调用之间的最小轮数

    contextTokens 预算在注入时强制执行。如果会话摘要 + 表征 + 名片超出预算,Honcho 会先裁剪摘要,再裁剪表征,并保留名片。这可以防止长会话中的上下文膨胀。

    记忆上下文净化

    Honcho 在注入前对 memory-context 块进行净化,以防止提示词注入和格式错误的内容:

  • 从用户撰写的结论中剥离 XML/HTML 标签
  • 规范化空白字符和控制字符
  • 截断超过 messageMaxChars 的单条结论
  • 转义可能破坏系统提示词结构的分隔符序列
  • 此修复解决了原始用户结论中包含标记或特殊字符时可能损坏注入上下文块的边界情况。

    常见问题

    "Honcho not configured"

    运行 hermes honcho setup。确保 ~/.hermes/config.yaml 中包含 memory.provider: honcho

    记忆未跨会话持久化

    检查 hermes honcho status —— 确认 saveMessages: truewriteFrequency 不是 session(该值仅在退出时写入)。

    配置文件未获得自己的对等体

    创建时使用 --clonehermes profile create --clone。对于现有配置文件:hermes honcho sync

    仪表盘中的观察设置未生效

    观察配置在每次会话初始化时从服务器同步。在 Honcho UI 中更改设置后,请启动新会话。

    消息被截断

    超过 messageMaxChars(默认 25k)的消息会自动分块并带 [continued] 标记。如果频繁遇到,请检查是否是工具结果或技能内容导致消息过大。

    上下文注入过大

    如果看到上下文预算超限的警告,请降低 contextTokens 或减小 dialecticDepth。预算紧张时会先裁剪会话摘要。

    会话摘要缺失

    会话摘要要求当前 Honcho 会话中至少存在一轮先前的对话。在冷启动时(新会话、无历史),摘要会被省略,Honcho 会改用冷启动提示策略。

    CLI 命令

    `dialecticCadence``2`辩证 LLM 调用之间的最小轮数(推荐 1–5)
    命令说明
    `hermes honcho setup`交互式设置向导(云端/本地、身份、观察、召回、会话)
    `hermes honcho status`显示已解析配置、连接测试、当前配置文件的对等体信息
    `hermes honcho enable`为当前配置文件启用 Honcho(必要时创建宿主块)
    `hermes honcho disable`为当前配置文件禁用 Honcho
    `hermes honcho peer`显示或更新对等体名称(`--user `、`--ai `、`--reasoning `)
    `hermes honcho peers`显示所有配置文件的对等体身份
    `hermes honcho mode`显示或设置召回模式(`hybrid`、`context`、`tools`)
    `hermes honcho tokens`显示或设置 token 预算(`--context `、`--dialectic `)
    `hermes honcho sessions`列出已知的目录到会话名称的映射
    `hermes honcho map `将当前工作目录映射到某个 Honcho 会话名称
    `hermes honcho identity`初始化 AI 对等体身份或显示两个对等体的表征
    `hermes honcho sync`为所有尚无宿主块的 Hermes 配置文件创建宿主块
    `hermes honcho migrate`从 OpenClaw 原生记忆逐步迁移到 Hermes + Honcho 的指南
    `hermes memory setup`通用记忆提供程序选择器(选择 "honcho" 会运行同样的向导)
    `hermes memory status`显示当前活跃的记忆提供程序及配置

    评论区

    发表评论

    
    `hermes memory off`禁用外部记忆提供程序