Знакома ситуация: ты настраиваешь автономного агента, полчаса разжевываешь ему структуру своего проекта, объясняешь привычки клиентов и правила форматирования отчетов, а на следующий день запускаешь новую сессию — и перед тобой снова абсолютно чистый лист? Агент хлопает виртуальными глазами и демонстрирует классическую «память золотой рыбки».
Попытки решить это в лоб — например, запихнуть всю историю переписки и контекст компании в гигантский системный промпт — быстро упираются в потолок. Контекстное окно забивается мусором, стоимость каждого запроса к API улетает в космос, а сама модель начинает «плыть» и путать факты. Ранее мы уже разбирали, как устроена архитектура самообучающихся агентов Hermes, но сегодня команда Nous Research вместе с сообществом предложила куда более изящный трюк: подключить открытого агента Hermes Agent к локальному хранилищу заметок Obsidian.
Давай разберем эту связку по винтикам и посмотрим, как превратить обычные текстовые заметки в вечный внешний мозг для твоих цифровых помощников.
Почему именно связка с Obsidian
Obsidian в этой схеме выбран не ради моды на персональные базы знаний. Главное преимущество вольта (Vault) — это обычная локальная папка с файлами Markdown, двусторонними ссылками [[wikilinks]] и строгими заголовками YAML. Никаких закрытых проприетарных форматов, никаких облачных блокировок.
Я посмотрел на замеры в тестах: разница в поведении агента поражает. Когда неподготовленному терминальному агенту задают простой рабочий вопрос («Что мы согласовали с клиентом в прошлом месяце?»), он тратит более 2.5 минут (около 150 секунд) на судорожное сканирование случайных папок или вовсе начинает сочинять небылицы на ходу. С подключенным Obsidian Vault агент мгновенно находит индексную заметку и вытягивает точный таймлайн задач за пару секунд.
Инженеры формализовали эту архитектуру как пятиуровневый стек памяти (5-Layer Memory Stack):
- Слой хранилища (Vault): чистые атомарные Markdown-файлы с досье клиентов, регламентами и логами встреч.
- Контекстный мост (Bridge): интерфейс, через который Hermes считывает структуру базы, парсит теги и ориентируется в ссылках между документами.
- Единый мозг (Shared Brain): общая база фактов для всех твоих инструментов. Один и тот же вольт могут одновременно читать Hermes, Claude Code и локальные скрипты.
- Быстрое извлечение (Recall): связка полнотекстового поиска (ripgrep / SQLite FTS5) и навигации по графу ссылок без раздувания контекстного окна.
- Обучающая петля (Loop): агент не просто читает, но и сам документирует результаты работы, обновляя базу после каждого выполненного задания.
Ранее мы уже исследовали создание постоянной памяти для агентов на базе Obsidian, но в текущей реализации Hermes все настраивается буквально в пару команд через протокол Model Context Protocol (MCP) или прямое указание локального пути.
Настройка подключения и конфигурационный файл
Подключить Hermes к хранилищу можно двумя путями: дать ему прямой доступ к файловой системе через локальный путь либо поднять легковесный MCP-сервер. Второй вариант безопаснее, так как позволяет жестко ограничить доступные папки.
Вот рабочий пример файла конфигурации config.yaml для Hermes Agent:
agent:
name: "hermes-analyst"
provider: "anthropic"
model: "claude-3-7-sonnet"
system_prompt_append: |
Ты подключен к базе знаний Obsidian Vault.
Перед выполнением сложных задач проверяй папку /projects и файл 00_Index.md.
Все промежуточные результаты и решения фиксируй в /logs/YYYY-MM-DD.md с YAML-заголовком.
memory:
backend: "obsidian_vault"
vault_path: "/home/user/Obsidian/BusinessBrain"
index_file: "00_Index.md"
auto_commit: true
allowed_directories:
- "clients/"
- "projects/"
- "logs/"
- "templates/"
mcp_servers:
obsidian:
command: "npx"
args:
- "-y"
- "@modelcontextprotocol/server-obsidian"
env:
OBSIDIAN_VAULT_PATH: "/home/user/Obsidian/BusinessBrain"
Анатомия клиентской заметки
Чтобы модель не терялась в сплошном тексте, каждой заметке нужен четкий структурированный заголовок YAML frontmatter. Агент ориентируется по полям id, type, tags и таймстемпам создания.
Вот как выглядит эталонная заметка клиента в папке clients/acme-corp.md:
---
id: "client-acme-corp"
type: "client_dossier"
status: "active"
tags:
- "b2b"
- "enterprise"
- "crm-integration"
created: "2026-09-15T10:00:00Z"
updated: "2026-10-14T05:30:00Z"
assigned_agent: "hermes-01"
---
# Клиент: Acme Corporation
## Ключевой контекст и ограничения
- **Стек**: PostgreSQL, FastAPI, React, Docker.
- **Главная цель**: Перевод ручной модерации на агентный конвейер.
- **Ограничения безопасности**: Сырые PII-данные клиентов запрещено отправлять во внешние API без анонимизации.
## Лог взаимодействия агента
- `2026-10-10`: Завершен аудит API эндпоинтов. Выявлены задержки до 450 мс на вебхуках.
- `2026-10-13`: Сгенерирован рабочий прототип микросервиса маршрутизации тикетов.
Если у тебя в одном вольте одновременно шуршат несколько агентов (например, фоновый Hermes и кодинг-ассистент Claude Code), никогда не позволяй им одновременно дописывать один общий файл вроде Daily Notes.md. Используй стратегию атомарных логов: пусть каждый агент создает отдельный файл в директории logs/ с уникальным префиксом сессии.
Границы применимости и трезвый взгляд
Звучит как магия, но давай снимем розовые очки. Когда твоя база разрастется до десятков тысяч заметок, простой поиск по файлам начнет ощутимо проседать по скорости. Поэтому критически важно раз в пару недель проводить ревизию и поддерживать индексные страницы (MOC — Maps of Content).
Кроме того, помни о цифровой гигиене: текстовые заметки в Obsidian читаются агентом напрямую. Если ты случайно положишь в вольт приватный SSH-ключ или пароль от рабочей базы данных, агент вполне может отправить его в контекст модели при выполнении очередной задачи. Держи секреты в защищенных хранилищах переменных среды, а вольт оставь для чистых фактов и смыслов.
