Миграция с OpenClaw на Hermes Agent: пошаговый гайд 2026 | AiManual
AiManual Logo Ai / Manual.
07 Июн 2026 Гайд

Как переехать с OpenClaw на Hermes Agent: пошаговый гайд с граблями и решениями

Подробный гайд по миграции с OpenClaw на Hermes Agent: бэкап, установка, перенос скиллов, настройка памяти и Telegram-бота. Реальные грабли и решения.

Реклама
hor_partv1

OpenClaw умер, да здравствует Hermes Agent?

Ты еще держишься за OpenClaw? Ну-ну. Я тоже держался. Пока не заметил, что мой агент начал сам себе апрувить транзакции (привет, уязвимость с /pair approve). А потом прочитал, как китайские хабровцы зарабатывают на установке OpenClaw — и понял: пора валить. Выбор пал на Hermes Agent. Open source, своя память, любые модели — и никаких «закрытых ключей». Но переезд — это всегда боль. Расскажу, как я это делал, где спотыкался и что в итоге получилось.

Если ты еще не определился, какой агент тебе нужен — сначала прочитай сравнение Hermes и OpenClaw. А здесь — чистая практика.

Что ты теряешь при переезде? (и что приобретаешь)

OpenClaw — это монолит. Ты просто настраиваешь config.yaml и используешь готовые коннекторы к GitHub, почте, календарю. Hermes Agent — конструктор. Ты сам решаешь, какие скиллы (skills) дать агенту, какую модель подключить, где хранить память. Потеря: готовые коннекторы (их надо переписывать). Приобретение: тотальный контроль и персистентная память, которая помнит контекст через недели.

АспектOpenClawHermes Agent (v2.5)
МоделиТолько закрытые (Claude/GPT)Любые через API: Ollama, Hugging Face, vLLM
ПамятьТолько история диалогаПерсистентная векторная (ChromaDB/Weaviate)
Каналы связиTelegram / Slack / WebTelegram + любые кастомные (через плагины)
БезопасностьЗакрытый код, уязвимостиOpen source, audit, sandboxing

Перед переездом: собираем чемоданы (бэкап OpenClaw)

Первое правило миграции — не сломать то, что работает. У тебя есть агенты в OpenClaw? Экспортируй их конфиги и историю. OpenClaw хранит всё в ~/.openclaw/config.yaml и базе SQLite в ~/.openclaw/data.db. Просто скопируй эти файлы. Потом они пригодятся для восстановления сценариев.

mkdir -p ~/backup-openclaw
cp ~/.openclaw/config.yaml ~/backup-openclaw/
cp ~/.openclaw/data.db ~/backup-openclaw/
echo "Бэкап готов, но это не всё"

Не забудь заскринить список твоих «скиллов» (в терминах OpenClaw — actions). Команда openclaw list-actions покажет всё. Запиши, какие действия ты использовал чаще всего: работа с GitHub, парсинг сайтов, отправка писем. В Hermes Agent это придется реализовывать как skills — либо писать на Python, либо брать готовые из маркетплейса.

Ставим Hermes Agent: не повторяйте моих ошибок

Hermes Agent ставится через pip или Docker. Официальная документация рекомендует pip install hermes-agent. Я так и сделал — и получил версию 1.9. А на дворе июнь 2026, актуальная — 2.5 с нормальной памятью. Как не ошибиться: ставьте прямо из репозитория с тегом:

pip install git+https://github.com/AgileVentures/HermesAgent.git@v2.5.0

Или используйте Docker — docker pull ghcr.io/agileventures/hermes-agent:2.5.0. Я предпочитаю Docker, потому что изоляция. Но если ты хочешь кастомный GUI — тогда тебе на Hermes Agent Desktop.

Грабли #1: Если ставишь через pip, убедись, что Python >= 3.11 и установлены все системные зависимости — особенно libsqlite3-dev для векторной памяти. Иначе ChromaDB упадет с сегфолтом.

Проверяем установку:

hermes --version
# Версия 2.5.0

Переносим скиллы и агентов: конвертация сценариев

В OpenClaw ты описывал действия в config.yaml:

actions:
  - name: "search_google"
    command: "python search.py"

В Hermes Agent скилл — это папка со структурой skill.yaml и исполняемым файлом (Python/Shell/JavaScript). Переносим:

  • Создай папку ~/.hermes/skills/my_skills
  • Для каждого action из OpenClaw напиши skill.yaml и обертку. Пример для поиска в Google:
# ~/.hermes/skills/my_search/skill.yaml
name: google_search
description: Поиск в Google и возврат первых 5 результатов
command: python search.py
inputs:
  - name: query
    type: string
    required: true
# search.py
import sys, json, requests
def search(query):
    resp = requests.get('https://www.googleapis.com/customsearch/v1', params={'q': query, 'key': '...', 'cx': '...'})
    return [item['snippet'] for item in resp.json().get('items', [])[:5]]
if __name__ == '__main__':
    print(json.dumps(search(sys.argv[1])))

Подключаем скилл в config.yaml Hermes:

skills:
  - path: ~/.hermes/skills/my_search

И так — для каждого действия. Да, это боль. Но зато теперь ты сам управляешь логикой. Никаких скрытых «фич» OpenClaw.

Настройка персистентной памяти: та ещё головная боль

OpenClaw не умел хранить контекст между сессиями. Hermes Agent (начиная с v2.0) имеет модуль Memora. Под капотом — ChromaDB. Настройка простая:

memory:
  provider: chroma
  persist_directory: ~/.hermes/memory
  embedding_model: BAAI/bge-small-en-v1.5

Грабли #2: Если используешь эмбеддинги через Hugging Face — убедись, что модель загружена локально. Иначе при каждой перезагрузке агент будет качать гигабайты. Закешируй в ~/.cache/huggingface. Или используй ollama для эмбеддингов.

Переносим историю из OpenClaw: в data.db лежат старые сообщения. Я написал простой скрипт, который читает SQLite и добавляет записи в векторную базу через API Hermes. Но проще — начать с чистого листа. Честно, старые диалоги чаще всего бесполезны, потому что модель OpenClaw говорила совсем на другом языке.

Telegram Bot: как заставить агента отвечать в чате

В OpenClaw ты просто указывал токен бота. В Hermes Agent — поднимается отдельный сервис-адаптер. Я использую встроенный модуль hermes-telegram-adapter. Установка:

pip install hermes-telegram-adapter

Настройка в конфиге:

adapters:
  telegram:
    token: "YOUR_BOT_TOKEN"
    allowed_users: ["your_telegram_id"]

Запускаем:

hermes run adapter telegram --config config.yaml

Грабли #3: Webhook не поддерживается из коробки — только long polling. Если хочешь webhook — придется ставить nginx и использовать отдельный endpoint. И не забудь ставить webhook_domain переменную.

Протестируй: напиши боту /start. Должен ответить приветствием. Если молчит — смотри логи ~/.hermes/logs/adapter.log.

Боевые грабли: что пошло не так у меня

Вот список реальных проблем, с которыми я столкнулся за неделю миграции:

  1. Модель не держит контекст. Оказывается, при использовании Ollama через Hermes нужно явно указывать context_length в конфиге модели. По умолчанию 2048 токенов — мало. Я поставил 8192. Статья про настройку агента на VPS помогла разобраться.
  2. Memory module съедает всю RAM. ChromaDB при большом количестве эмбеддингов жрет память. Решение — использовать Weaviate вместо Chroma, если у тебя > 100 000 векторов. Или поставить лимит на размер коллекции.
  3. Skills не видят внешние переменные окружения. В Hermes Agent skills запускаются в изолированном subprocess. Пришлось передавать env через skill.yaml:
environment:
  GITHUB_TOKEN: "${GITHUB_TOKEN}"

Или использовать глобальный env файл.

  1. Старые скрипты на Python 3.10 не работают. В контейнере Hermes стоит Python 3.12 — пришлось обновить несколько библиотек. Да, обратная совместимость хромает.

Вместо выводов: несколько неочевидных советов

Миграция с OpenClaw на Hermes Agent — это как переезд из хрущевки в элитную студию: много работы, но потом кайфуешь. Вот три совета, которые я вынес:

  • Не пытайся перенести всё. Оставь позади 50 исторических сообщений из OpenClaw. Новая модель (например, Hermes 2.5 с Mistral 7B) будет лучше решать задачи.
  • Сначала разверни на минималках. Подними Hermes Agent на дешевой VPS (Hetzner Cloud CX21 — 2 vCPU, 4 GB RAM) без памяти, просто чтобы проверить связку с Telegram. Потом добавляй память и сложные скиллы.
  • Логи — твой лучший друг. Включай debug-level логи на старте: hermes --log-level DEBUG. Ты увидишь каждый запрос к модели, каждый вызов скилла — это спасло меня от кучи недоразумений.

Hermes Agent — не панацея. Но если OpenClaw уже начал тормозить, «забывать» команды или тебя пугает желание OpenClaw заполучить твои пароли, то переезд оправдан на 200%. Удачи и пиши в комменты, если найдешь новые грабли!

Подписаться на канал