# Hermes Agent: Kompletny przewodnik po konfiguracji i uruchomieniu na VPS

> Krok po kroku: wdrożenie samouczącego się agenta AI Hermes na serwerze VPS. Porównanie z OpenClaw i Paperclip, konfiguracja Docker, optymalizacja kosztów przez OpenRouter oraz tworzenie autonomicznych umiejętności (skills).

## 1. Architektura i wybór agenta: Hermes, OpenClaw czy Paperclip

W ekosystemie autonomicznych agentów roku 2026 nie istnieje uniwersalne narzędzie, które równie skutecznie rozwiązuje wszystkie zadania. Trzy wiodące systemy open-source — **Hermes**, **OpenClaw** oraz **Paperclip** — reprezentują fundamentalnie różne paradygmaty architektoniczne. Nie konkurują one ze sobą bezpośrednio; w środowiskach produkcyjnych często są wdrażane równolegle na tym samym serwerze.

```mermaid
flowchart TD
    subgraph Ecosystem ["Три архітектурні парадигми агентів"]
        H["<b>Hermes Agent</b><br>Агент-фахівець, що навчається<br><i>(Накопичує досвід у MEMORY.md та створює власні скіли)</i>"]
        O["<b>OpenClaw</b><br>Шлюз та автономний співробітник<br><i>(50+ месенджерів, статичні SOUL.md інструкції)</i>"]
        P["<b>Paperclip</b><br>Оркестратор цифрової компанії<br><i>(Ієрархія CEO + ролі, ліміти бюджету, координація)</i>"]
    end

    VPS[("Один VPS-сервер (Ubuntu + Docker)")] --> H
    VPS --> O
    VPS --> P
```

### Macierz porównawcza platform agentowych

| Cecha | Agent Hermes | OpenClaw | Paperclip |
| :--- | :--- | :--- | :--- |
| **Główna rola** | Badacz i specjalista samouczący się | Wielokanałowy autonomiczny współpracownik | Orkiestrator zespołu składającego się z 5+ agentów |
| **Zarządzanie pamięcią** | Dynamiczne: aktualizuje `MEMORY.md`, `USER.md` oraz skille co 10 kroków | Statyczne: reguły są sztywno określone w pliku `SOUL.md` | Projektowe: wspólny stan zadań i hierarchia |
| **Kanały komunikacji** | 6 kluczowych (CLI, Telegram, Discord, WhatsApp itp.) | 50+ integracji (Teams, Slack, iMessage, Signal) | Zarządza innymi agentami za pośrednictwem adapterów |
| **Zdolność do uczenia się** | **Wysoka**: automatycznie kompiluje procesy robocze do postaci skilli | **Brak**: wymaga ręcznej aktualizacji reguł | **Pośrednia**: deleguje wykonanie do zewnętrznych agentów |
| **Próg opłacalności** | Efektywny od 1 autonomicznego zadania | Efektywny dla omnichannelowej komunikacji | Rozwija pełny potencjał przy 5 jednoczesnych agentach |

> [!NOTE]
> Wszystkie trzy frameworki wykorzystują izolowane porty sieciowe i runtime'y. Możesz bez żadnych konfliktów uruchomić Hermes jako badacza danych, OpenClaw jako bramę wsparcia klienta, a Paperclip jako koordynatora na jednej maszynie.

---

## 2. Wymagania systemowe i przygotowanie infrastruktury

Hermes może działać jako lekki narzędzie CLI, jednak do pełnej pracy autonomicznej (z automatyzacją przeglądarki, bramkami działającymi w tle oraz przechowywaniem pamięci wektorowej) niezbędna jest stabilna baza serwerowa.

### Wymagania sprzętowe dla VPS

- **Procesor:** Minimum 2 vCPU (zalecane do równoległego parsowania i generowania embeddingów).
- **Pamięć RAM:** 8 GB (zapewnia zapas podczas pracy przeglądarki Playwright oraz demona Docker).
- **Przestrzeń dyskowa:** 100 GB NVMe SSD (buforowanie modeli, logów oraz migawek stron internetowych).
- **System operacyjny:** Ubuntu 24.04 LTS lub Debian 12 z preinstalowanym Docker Engine.

### Wymagane usługi zewnętrzne

1. **Hosting z obsługą Dockera:** Hetzner, DigitalOcean, Vultr lub dowolny VPS KVM.
2. **Jednolita brama API (OpenRouter):** Zamiast osobnych kluczy dla Anthropic, OpenAI i Moonshot, użyj OpenRouter. Daje to dostęp do ponad 200 modeli przez jedno saldo i pozwala natychmiast zmieniać role agentów bez restartu usługi.

---

## 3. Krok po kroku: wdrożenie Hermes na VPS przez Docker

Najbardziej niezawodną metodą wdrożenia Hermes jest użycie oficjalnego obrazu Docker od Nous Research. Eliminuje to konflikty wersji Pythona i bibliotek systemowych.

```mermaid
flowchart LR
    A["1. Створення VPS<br>(Ubuntu + Docker)"] --> B["2. SSH-підключення<br>до сервера"]
    B --> C["3. Перевірка контейнера<br>(docker ps)"]
    C --> D["4. Запуск майстра<br>(hermes setup)"]
    D --> E["5. Тестовий прогін<br>(hermes CLI)"]
```

### Krok 1. Połączenie z serwerem przez SSH

Po utworzeniu serwera przejdź do terminala i zaloguj się jako superuser:

```bash
ssh root@YOUR_VPS_IP
```

### Krok 2. Weryfikacja działania kontenera Docker

Upewnij się, że kontener Hermes został pomyślnie zainicjowany:

```bash
docker ps
```

Na liście aktywnych procesów powinien widnieć obraz `nousresearch/hermes-agent:latest`. Przejdź do katalogu konfiguracji i połącz się z powłoką kontenera:

```bash
cd /docker/hermes-agent-*
docker compose exec -it hermes-agent /bin/bash
```

### Krok 3. Interaktywna inicjalizacja przez kreatora konfiguracji

Wewnątrz kontenera uruchom kreatora początkowej konfiguracji:

```bash
hermes setup
```

Kreator przeprowadzi Cię przez cztery kolejne etapy:
1. **Wybór dostawcy LLM:** Wybierz `OpenRouter`.
2. **Autoryzacja:** Wprowadź swój klucz API OpenRouter (`sk-or-v1-...`).
3. **Wybór modelu bazowego:** Wybierz tymczasowy model startowy (w następnym rozdziale skonfigurujemy zoptymalizowaną wielomodelową ścieżkę).
4. **Kanały komunikacji:** Opcjonalne podłączenie Telegrama lub Discorda (na pierwszym etapie można pominąć).

### Krok 4. Pierwsze testowe uruchomienie CLI

Sprawdź sprawność środowiska agentowego:

```bash
hermes
```

Po wyświetleniu baneru powitalnego wyślij komendę testową, aby zweryfikować dostęp do systemu plików:

```text
What files are in my current directory?
```

Jeśli Hermes zwraca listę plików katalogu, warstwa narzędziowa (Tool Calling) działa poprawnie. Jeśli występuje błąd, przeprowadź diagnostykę systemową:

```bash
hermes doctor
```

---

## 4. Konfiguracja modeli i optymalizacja budżetu przez OpenRouter

Domyślnie Hermes jest skonfigurowany do wysyłania zapytań do premium flagowych modeli (np. Claude Opus). Tworzy to nadmierne obciążenie finansowe:

> [!WARNING]
> **Pułapka monomodelowej konfiguracji:** Użycie jednego modelu klasy Opus do wszystkich faz sesji (planowanie, wywołania utility, parsowanie wyjścia) generuje koszty rzędu $0.50–$2.00 za pojedynczą sesję. Przy 90 sesjach miesięcznie daje to **$45–$180** wyłącznie za API.

### Architektura rozdzielonych ról

Aby zredukować koszty do poziomu **$12–$22 miesięcznie** bez utraty jakości, dzielimy obowiązki między wąsko wyspecjalizowane modele.

![Porównanie cen i charakterystyk modeli dla Agenta Hermes](/api/guides-media/ai_agents/hermes-agent-initial-setup-guide/images/hermes-agent-initial-setup-guide-extra-02.webp)

![Szybkie modele do masowych wywołań narzędzi](/api/guides-media/ai_agents/hermes-agent-initial-setup-guide/images/hermes-agent-initial-setup-guide-extra-03.webp)

### Macierz rekomendowanych modeli

| Rola w agencie | Rekomendowany model | Identyfikator OpenRouter | Cena wejścia ($/1M) | Główne zastosowanie |
| :--- | :--- | :--- | :--- | :--- |
| **Planner & Backbone** | MiniMax M2.7 | `minimax/minimax-m2.7` | $0.30 | Orkiestracja, planowanie dzienne, logika sesji |
| **Reviewer & Reasoning** | Kimi K2.6 | `moonshotai/kimi-k2.6` | $0.60 | Głębokie rozumowanie, code review, weryfikacja |
| **Fast Executor** | DeepSeek V4 Flash | `deepseek/deepseek-v4-flash` | $0.14 | Masowe wywołania bash/narzędzia, zbieranie surowych danych |
| **Vision Subsystem** | Gemma 4 26B IT | `google/gemma-4-26b-a4b-it:free` | Bezpłatnie | Analiza zrzutów ekranu i elementów wizualnych |

### Plik konfiguracyjny routera wielomodelowego

Otwórz plik konfiguracyjny do edycji:

```bash
hermes config edit
```

Zamień blok definicji modeli na poniższą strukturalną konfigurację YAML:

```yaml
model:
  provider: openrouter
  default: minimax/minimax-m2.7
  roles:
    planner: minimax/minimax-m2.7
    executor: deepseek/deepseek-v4-flash
    reviewer: moonshotai/kimi-k2.6
    vision: google/gemma-4-26b-a4b-it:free
  fallback:
    - deepseek/deepseek-v4-flash
    - google/gemma-3-12b-it:free
  compression:
    enabled: true
    threshold: 0.50
```

Jeśli klucz OpenRouter nie został wcześniej wprowadzony, ustaw go za pomocą komendy:

```bash
hermes config set OPENROUTER_API_KEY sk-or-v1-your-key-here
```

> [!TIP]
> **Kontrola kosztów:** Koniecznie ustaw sztywny limit miesięczny w panelu OpenRouter (`Settings` → `Credits` → `Monthly limit`). Na start zaleca się ustawienie progu na poziomie **$15/miesiąc**, co zabezpieczy przed nieskończonymi pętlami w przypadku błędów w skryptach automatyzacji.

---

## 5. Bezpieczeństwo i podłączanie bramek wiadomości

Hermes umożliwia zarządzanie procesami przez komunikatory, przekształcając serwer w osobistego asystenta w Telegramie lub Discordzie.

> [!IMPORTANT]
> **Krytyczny wymóg bezpieczeństwa:** Każdy użytkownik, który wysyła komendę do bota w komunikatorze, uzyskuje **pełny dostęp do terminala serwera** z uprawnieniami uruchomionego procesu. Nigdy nie uruchamiaj publicznego bota bez białej listy ID!

### Konfiguracja Bramki Telegram

:::tabs
@tab 1. Tworzenie bota
1. Otwórz `@BotFather` w Telegramie.
2. Utwórz nowego bota za pomocą komendy `/newbot`.
3. Zapisz otrzymany token (format `123456789:ABCdef...`).
@tab 2. Uzyskanie User ID
1. Napisz do bota `@userinfobot` w Telegramie.
2. Skopiuj swój numeryczny identyfikator (np. `987654321`).
@tab 3. Konfiguracja środowiska
Dodaj zmienne do pliku konfiguracyjnego `.env`:
```bash
TELEGRAM_BOT_TOKEN="123456789:ABCdef..."
TELEGRAM_ALLOWED_USERS="987654321"
```
:::

Uruchom i sprawdź status bramki działającej w tle:

```bash
# Перевірка статусу шлюзу
hermes gateway status

# Перегляд логів взаємодії в реальному часі
tail -f ~/.hermes/logs/gateway.log
```

---

## 6. Praktyczny workflow: samouczenie się i generowanie powtarzalnych skilli

Kluczową przewagą Hermes nad zwykłymi wywołaniami LLM jest **kompounding wiedzy**. Agent automatycznie analizuje udane wieloetapowe działania i zapisuje je w katalogu skilli `~/.hermes/skills/`.

```mermaid
sequenceDiagram
    autonumber
    actor User as Інженер
    participant H as Hermes Agent
    participant Web as Reddit API / Веб
    participant Disk as ~/.hermes/skills/

    User->>H: Надіслати промпт дослідження
    H->>Web: Пошук трендових фреймворків у r/LocalLLaMA
    Web-->>H: Сирі обговорення та посилання
    H->>H: Аналіз та форматування (голос автора)
    H->>Disk: Збереження алгоритму в reddit-trending-frameworks.md
    H-->>User: Готовий стислий звіт
    Note over User,Disk: Наступний запуск
    User->>H: "Run reddit-trending-frameworks on r/aiagents"
    H->>Disk: Читання скомпільованого скіла
    H->>Web: Пряме виконання без зайвих роздумів
    H-->>User: Миттєвий структурований звіт
```

### Demonstracja tworzenia autonomicznego skilla

Wyślij do agenta następujący prompt roboczy:

```text
Research the top 3 trending AI agent frameworks on r/LocalLLaMA this week. Use my voice — punchy, no jargon, no AI-speak. Three bullets per framework. Save this whole workflow as a reusable skill called reddit-trending-frameworks.
```

### Krokowa fiksacja wyniku

1. **Wykonanie:** Hermes samodzielnie przeprowadza wyszukiwanie, agreguje opinie społeczności i filtruje spam.
2. **Formatowanie:** Wyświetla 9 jasnych tez (po 3 dla każdego frameworka) w zadanym tonie.
3. **Zapis skilla:** Tworzy plik `~/.hermes/skills/reddit-trending-frameworks.md`.

Sprawdź obecność zapisanego skilla w systemie:

```bash
ls -la ~/.hermes/skills/
```

### Ponowne uruchomienie na nowym źródle danych

Teraz, aby przeprowadzić analogiczne badanie na innej platformie, nie musisz ponownie pisać szczegółowych promptów ani konfigurować głosu. Wystarczy jedna komenda:

```text
Run my reddit-trending-frameworks skill on r/aiagents instead
```

Hermes natychmiast odczyta zapisany algorytm i wykona zadanie w mniejszej liczbie kroków i zużywając mniej tokenów niż podczas pierwszego uruchomienia.

---

## 7. Diagnostyka i usuwanie usterek

Podczas pierwszego wdrożenia agenta na czystym serwerze mogą pojawić się typowe błędy konfiguracji środowiska.

![Tabela referencyjna usuwania typowych błędów Hermes](/api/guides-media/ai_agents/hermes-agent-initial-setup-guide/images/hermes-agent-initial-setup-guide-extra-01.webp)

### Macierz rozwiązywania problemów

| Objaw | Przyczyna źródłowa | Zweryfikowane rozwiązanie |
| :--- | :--- | :--- |
| `command not found: hermes` | Powłoka systemowa nie zaktualizowała zmiennych `PATH` po instalacji. | Wykonaj `source ~/.bashrc` (lub `source ~/.zshrc`). |
| Kontener kończy pracę zaraz po uruchomieniu | Brakujący lub składniowo niepoprawny klucz API w pliku `.env`. | Sprawdź logi: `docker logs hermes`. Upewnij się, że wokół znaku `=` nie ma spacji. |
| Błąd `HTTP 400` przy pierwszej wiadomości | Niepoprawny identyfikator modelu dla dostawcy. | Dla OpenRouter użyj formatu `dostawca/model` (np. `minimax/minimax-m2.7`). |
| Bot na Telegramie milczy i nie odpowiada | Wiadomości pochodzą od nieautoryzowanego użytkownika. | Sprawdź logi: `tail -f ~/.hermes/logs/gateway.log`. Dodaj swoje ID do `TELEGRAM_ALLOWED_USERS`. |

---

## 8. Podsumowująca checklista gotowości do eksploatacji

Przed przejściem Hermes w tryb codziennego asystenta upewnij się, że każdy punkt został wykonany:

- [ ] Przydzielono VPS
- [ ] Zainstalowano Docker Engine
- [ ] Skonfigurowano klucz API OpenRouter
- [ ] Ustawiono limity kosztów w panelu OpenRouter
- [ ] Uruchomiono kontener Hermes
- [ ] Przeprowadzono testowe wywołanie CLI
- [ ] Skonfigurowano bramkę Telegram/Discord (opcjonalnie)
- [ ] Dodano ID użytkowników do białej listy