Files
obsidian-vault/wiki/comparisons/hermes-native-vs-docker.md
T
2026-05-22 03:01:44 +06:00

3.7 KiB

title, created, updated, last_synced, type, namespace, tags, confidence, sources
title created updated last_synced type namespace tags confidence sources
Hermes — Native (Eagle) vs Docker (Kraken) Deployment 2026-05-22 2026-05-22 2026-05-22 comparison work
hermes
deployment
mac
kraken
comparison
0.9
wiki/tech/hermes-eagle-mac.md
wiki/tech/hermes-docker-kraken.md

Hermes — Native (Eagle) vs Docker (Kraken)

Два способа запуска Hermes Agent: нативно на Mac M4 Max и в Docker на Raspberry Pi 5.

Сравнение

Eagle (Mac M4 Max) Kraken (RPi5)
Запуск hermes gateway (нативно) docker run (не compose)
Транспорт Zulip (в Docker) Zulip (тот же)
Модель openclaw-claude-proxy (localhost:3456) openclaw-claude-proxy (аналогично)
Процесс-менеджер launchd (ai.claude-proxy) Docker --restart=unless-stopped
PATH в launchd нужен явный export PATH=... нет проблемы (Docker env)
Токен source ~/.hermes/.env в wrapper передаётся через -e флаг docker run
MCP mcpvault (/Users/admin/obsidian) mcpvault (/vault — mount)
Логи Claude-proxy ~/.hermes/logs/claude-proxy.log Docker logs
Навыки все Hermes skillsets ограниченный набор (нет macOS tools)
HERMES_SKIP_CHOWN не нужно нужно (-e HERMES_SKIP_CHOWN=1)

Pitfalls Eagle (Mac M4 Max)

openclaw-claude-proxy через launchd:

  1. launchd не наследует login-сессию → CLAUDE_CODE_OAUTH_TOKEN не виден → "Not logged in"
    • Фикс: явный source ~/.hermes/.env в wrapper-скрипте
  2. PATH не содержит /opt/homebrew/bin → Claude CLI не найден
    • Фикс: явный export PATH="/opt/homebrew/bin:..." в wrapper-скрипте
  3. Порт 3456 занят после перезагрузки:
    • lsof -ti :3456 | xargs kill -9 && launchctl unload && launchctl load ...
  4. provider: openai не существует в Hermes — нужно custom
  5. base_url должен включать /v1 (Hermes дописывает /chat/completions)

Zulip Docker:

  • RabbitMQ 4.x Khepri WAL crash при переполнении диска → пользователи исчезают
    • Фикс: docker system prune (освободить место) + пересоздать volume если повреждён
  • Без log rotation логи заполняют Docker VM (~6 ГБ за несколько месяцев)
  • Mac Docker Desktop sparse disk — docker system prune запускает compaction

Pitfalls Kraken (Docker)

  • HERMES_SKIP_CHOWN=1 обязателен (RPi5 не имеет прав chown в контейнере)
  • --init флаг обязателен (zombie reaping)
  • --network=host для доступа к Zulip на том же хосте
  • Vault монтируется через -v /home/kraken/obsidian:/vault
  • Полный набор правил → tech/hermes-docker-kraken

Общее для обоих

  • Модель: claude-sonnet-4-6 через openclaw-claude-proxy
  • MCP: mcpvault (vault path разный, но tool API одинаковый)
  • Zulip transport: организация zulip.mallexxx.duckdns.org
  • Obsidian vault синхронизируется через git

Связанные страницы