Honcho — это AI-native бэкенд памяти, который добавляет диалектическое рассуждение и глубокое профилирование пользователя поверх встроенной системы памяти Hermes. Вместо простого хранения ключ-значение Honcho ведет живую модель того, кто такой пользователь — его предпочтения, стиль общения, цели и паттерны — путем анализа разговоров после их завершения.
info Honcho — это плагин провайдера памяти (Memory Provider Plugin)
Honcho интегрирован в систему Memory Providers. Все функции ниже доступны через единый интерфейс провайдера памяти.
Что добавляет Honcho
Возможность
Встроенная память
Honcho
Сохранение между сессиями
✔ Файловые MEMORY.md/USER.md
✔ Серверная часть с API
Профиль пользователя
✔ Ручная курация агентом
✔ Автоматическое диалектическое рассуждение
Сводка сессии
—
✔ Контекстная вставка в рамках сессии
Изоляция нескольких агентов
—
✔ Разделение профилей по пирам
Режимы наблюдения
—
✔ Единое или направленное наблюдение
Выводы (производные инсайты)
—
✔ Серверное рассуждение о паттернах
Поиск по истории
✔ Поиск FTS5 по сессиям
✔ Семантический поиск по выводам
Диалектическое рассуждение: После каждого оборота разговора (с регулировкой через dialecticCadence), Honcho анализирует обмен и извлекает инсайты о предпочтениях, привычках и целях пользователя. Они накапливаются со временем, давая агенту всё более глубокое понимание, выходящее за рамки того, что пользователь явно сказал. Диалектика поддерживает многопроходную глубину (1–3 прохода) с автоматическим выбором холодного/теплого промпта — холодные начальные запросы фокусируются на общих фактах о пользователе, а теплые запросы отдают приоритет контексту текущей сессии.
Контекст в рамках сессии: Базовый контекст теперь включает сводку сессии вместе с представлением пользователя и карточкой пира. Это дает агенту осведомленность о том, что уже обсуждалось в текущей сессии, уменьшая повторения и обеспечивая непрерывность.
Мультиагентные профили: Когда несколько экземпляров Hermes общаются с одним пользователем (например, ассистент по коду и личный ассистент), Honcho поддерживает отдельные профили «пиров». Каждый пир видит только свои собственные наблюдения и выводы, предотвращая перекрестное загрязнение контекста.
Настройка
hermesmemorysetup# выберите "honcho" из списка провайдеров
На каждом обороте (в режиме hybrid или context) Honcho собирает два уровня контекста, вставляемых в системный промпт:
Базовый контекст — сводка сессии, представление пользователя, карточка пира пользователя, самопредставление AI и идентификационная карточка AI. Обновляется с периодичностью contextCadence. Это слой «кто этот пользователь».
Диалектическое дополнение — сгенерированные LLM рассуждения о текущем состоянии и потребностях пользователя. Обновляется с периодичностью dialecticCadence. Это слой «что важно прямо сейчас».
Оба уровня объединяются и усекаются до лимита contextTokens (если задан).
Выбор холодного/теплого промпта
Диалектика автоматически выбирает между двумя стратегиями промптов:
Холодный старт (базового контекста еще нет): Общий запрос — «Кто этот человек? Каковы его предпочтения, цели и стиль работы?»
Теплая сессия (базовый контекст существует): Запрос в рамках сессии — «Учитывая то, что обсуждалось в этой сессии до сих пор, какой контекст об этом пользователе наиболее актуален?»
Это происходит автоматически на основе того, заполнен ли базовый контекст.
Три независимых параметра конфигурации
Стоимость и глубина контролируются тремя независимыми регуляторами:
Регулятор
Управляет
По умолчанию
contextCadence
Обороты между вызовами context() API (обновление базового слоя)
1
dialecticCadence
Обороты между вызовами peer.chat() LLM (обновление диалектического слоя)
2 (рекомендуется 1–5)
dialecticDepth
Количество проходов .chat() на один вызов диалектики (1–3)
1
Эти параметры независимы — вы можете иметь частые обновления контекста с редкой диалектикой, или глубокую многопроходную диалектику с низкой частотой. Пример: contextCadence: 1, dialecticCadence: 5, dialecticDepth: 2 обновляет базовый контекст каждый оборот, запускает диалектику каждые 5 оборотов, и каждый запуск диалектики делает 2 прохода.
Глубина диалектики (многопроходная)
Когда dialecticDepth > 1, каждый вызов диалектики выполняет несколько проходов .chat():
Проход 0: Холодный или теплый промпт (см. выше)
Проход 1: Самоаудит — выявляет пробелы в первоначальной оценке и синтезирует свидетельства из недавних сессий
Проход 2: Согласование — проверяет на противоречия между предыдущими проходами и формирует итоговый синтез
Каждый проход использует пропорциональный уровень рассуждения (легкие ранние проходы, базовый уровень для основного прохода). Переопределите уровни на проход с помощью dialecticDepthLevels — например, ["minimal", "medium", "high"] для глубины 3.
Проходы завершаются досрочно, если предыдущий проход вернул сильный сигнал (длинный, структурированный вывод), так что глубина 3 не всегда означает 3 вызова LLM.
Предварительный прогрев при старте сессии
При инициализации сессии Honcho запускает фоновый вызов диалектики с полной настроенной dialecticDepth и передает результат непосредственно в сборку контекста первого оборота. Однопроходный предварительный прогрев на холодном пире часто возвращает тонкий вывод — многопроходная глубина выполняет цикл аудита/согласования до того, как пользователь успеет что-то сказать. Если предварительный прогрев не завершился к первому обороту, первый оборот переключается на синхронный вызов с ограниченным таймаутом.
Адаптивный уровень рассуждения к запросу
Автоматически вставляемая диалектика масштабирует dialecticReasoningLevel в зависимости от длины запроса: +1 уровень при ≥120 символах, +2 при ≥400, с ограничением на reasoningLevelCap (по умолчанию "high"). Отключите с помощью reasoningHeuristic: false, чтобы зафиксировать каждый автоматический вызов на уровне dialecticReasoningLevel. Доступные уровни: minimal, low, medium, high, max.
Параметры конфигурации
Honcho настраивается в ~/.honcho/config.json (глобально) или $HERMES_HOME/honcho.json (локально для профиля). Мастер настройки сделает это за вас.
Полный справочник конфигурации
Ключ
По умолчанию
Описание
contextTokens
null (без ограничения)
Лимит токенов для автоматически вставляемого контекста на оборот. Установите целое число (например, 1200) для ограничения. Усекается по границам слов
contextCadence
1
Минимальное количество оборотов между вызовами context() API (обновление базового слоя)
dialecticCadence
2
Минимальное количество оборотов между вызовами peer.chat() LLM (диалектический слой). Рекомендуется 1–5. В режиме tools неактуально — модель вызывает явно
dialecticDepth
1
Количество проходов .chat() на один вызов диалектики. Ограничено диапазоном 1–3
dialecticDepthLevels
null
Опциональный массив уровней рассуждения на проход, например ["minimal", "low", "medium"]. Переопределяет пропорциональные defaults
dialecticReasoningLevel
'low'
Базовый уровень рассуждения: minimal, low, medium, high, max
dialecticDynamic
true
Когда true, модель может переопределить уровень рассуждения через параметр инструмента
dialecticMaxChars
600
Максимальное количество символов результата диалектики, вставляемого в системный промпт
Когда сбрасывать сообщения: async (фоновый поток), turn (синхронно), session (пакетно при завершении), или целое число N
saveMessages
true
Сохранять ли сообщения в Honcho API
observationMode
'directional'
directional (все включено) или unified (общий пул). Переопределите через объект observation для детального контроля
messageMaxChars
25000
Максимальное количество символов на сообщение, отправляемое через add_messages(). Разбивается на части при превышении
dialecticMaxInputChars
10000
Максимальное количество символов для диалектического входного запроса в peer.chat()
sessionStrategy
'per-directory'
per-directory, per-repo, per-session или global
Стратегия сессии определяет, как сессии Honcho соотносятся с вашей работой:
per-session — каждый запуск hermes получает новую сессию. Чистый старт, память через инструменты. Рекомендуется для новых пользователей.
per-directory — одна сессия Honcho на рабочую директорию. Контекст накапливается между запусками.
per-repo — одна сессия на git-репозиторий.
global — одна сессия для всех директорий.
Режим извлечения (recall mode) управляет тем, как память поступает в разговоры:
hybrid — контекст автоматически вставляется в системный промпт И инструменты доступны (модель решает, когда запрашивать).
context — только автоматическая вставка, инструменты скрыты.
tools — только инструменты, без автовставки. Агент должен явно вызывать honcho_reasoning, honcho_search и т.д.
Настройки по режиму извлечения:
Настройка
hybrid
context
tools
writeFrequency
сбрасывает сообщения
сбрасывает сообщения
сбрасывает сообщения
contextCadence
регулирует обновление базового контекста
регулирует обновление базового контекста
неактуально — нет вставки
dialecticCadence
регулирует автоматические вызовы LLM
регулирует автоматические вызовы LLM
неактуально — модель вызывает явно
dialecticDepth
многопроходная на один вызов
многопроходная на один вызов
неактуально — модель вызывает явно
contextTokens
ограничивает вставку
ограничивает вставку
неактуально — нет вставки
dialecticDynamic
регулирует переопределение моделью
Н/Д (нет инструментов)
регулирует переопределение моделью
В режиме tools модель полностью управляет процессом — она вызывает honcho_reasoning когда хочет, с любым выбранным reasoning_level. Настройки каденса и бюджета применяются только к режимам с автовставкой (hybrid и context).
Наблюдение (направленное vs. единое)
Honcho моделирует разговор как обмен сообщениями между пирами. У каждого пира есть два переключателя наблюдения, которые соотносятся 1:1 с SessionPeerConfig от Honcho:
Переключатель
Эффект
observeMe
Honcho строит представление этого пира из его собственных сообщений
observeOthers
Этот пир наблюдает сообщения другого пира (питает межпировое рассуждение)
Два пира × два переключателя = четыре флага. observationMode — это сокращенный пресет:
Пресет
Флаги пользователя
Флаги AI
Семантика
"directional" (по умолчанию)
me: вкл, others: вкл
me: вкл, others: вкл
Полное взаимное наблюдение. Включает межпировую диалектику — «что AI знает о пользователе, исходя из того, что пользователь сказал и что AI ответил».
"unified"
me: вкл, others: выкл
me: выкл, others: вкл
Семантика общего пула — AI наблюдает только сообщения пользователя, пир пользователя моделирует только себя. Пул с одним наблюдателем.
Переопределите пресет с помощью явного блока observation для контроля на уровне пира:
AI не должен перестраивать модель пользователя из своих собственных ответов
"ai": {"observeMe": true, "observeOthers": false}
Сильная персона — пир AI не должен обновляться от самонаблюдения
"ai": {"observeMe": false, "observeOthers": true}
Переключатели на стороне сервера, установленные через панель управления Honcho, имеют приоритет над локальными настройками — Hermes синхронизирует их обратно при инициализации сессии.
Инструменты
Когда Honcho активен как провайдер памяти, становятся доступны пять инструментов:
Инструмент
Назначение
honcho_profile
Чтение или обновление карточки пира — передайте card (список фактов) для обновления, опустите для чтения
honcho_search
Семантический поиск по контексту — сырые выдержки, без синтеза LLM
honcho_context
Полный контекст сессии — сводка, представление, карточка, последние сообщения
honcho_reasoning
Синтезированный ответ от LLM Honcho — передайте reasoning_level (minimal/low/medium/high/max) для управления глубиной
honcho_conclude
Создание или удаление выводов — передайте conclusion для создания, delete_id для удаления (только PII)
Команды CLI
Подкоманда hermes honchoрегистрируется только когда Honcho является активным провайдером памяти (memory.provider: honcho в config.yaml). Запустите hermes memory setup и выберите Honcho; подкоманда появится при следующем запуске.
hermeshonchostatus# Статус подключения, конфигурация и ключевые настройки
hermeshonchosetup# Перенаправляет на `hermes memory setup`
hermeshonchostrategy# Показать или установить стратегию сессии (per-session/per-directory/per-repo/global)
hermeshonchopeer# Показать или обновить имена пиров + уровень диалектического рассуждения
hermeshonchomode# Показать или установить режим извлечения (hybrid/context/tools)
hermeshonchotokens# Показать или установить лимит токенов для контекста и диалектики
hermeshonchoidentity# Заполнить или показать идентичность AI-пира в Honcho
hermeshonchosync# Синхронизировать конфигурацию Honcho во все существующие профили
hermeshonchopeers# Показать идентичности пиров во всех профилях
hermeshonchosessions# Список известных сопоставлений сессий Honcho
hermeshonchomap# Сопоставить текущую директорию с именем сессии Honcho
hermeshonchoenable# Включить Honcho для активного профиля
hermeshonchodisable# Отключить Honcho для активного профиля
hermeshonchomigrate# Пошаговое руководство по миграции с openclaw-honcho
Миграция с hermes honcho
Если вы ранее использовали отдельную команду hermes honcho setup:
Ваша существующая конфигурация (honcho.json или ~/.honcho/config.json) сохраняется
Ваши данные на сервере (воспоминания, выводы, профили пользователей) нетронуты
Установите memory.provider: honcho в config.yaml для реактивации
Повторный вход или настройка не требуются. Запустите hermes memory setup и выберите «honcho» — мастер обнаружит вашу существующую конфигурацию.