To wersja do trzymania pod ręką: lista czynności, komend i wartości, do której wracasz przy każdym ekranie, zamiast szukać po pamięci. Ułożyłam ją w kolejności, w jakiej realnie stawiasz asystenta — od pustego serwera, przez instalację, model i czat, po klucze, pierwszą automatyzację i utrzymanie. Pięć filarów teorii (pamięć, umiejętności, osobowość, crony, pętla samodoskonalenia) streszczam na początku tylko po to, żeby kolejne komendy miały sens; reszta to już konkret krok po kroku.
Zanim zaczniesz: czego potrzebujesz
Zbierz to wcześniej, żeby nie przerywać instalacji w połowie:
- Serwer, na którym stanie asystent. Najwygodniej VPS — wynajęty komputer w chmurze, działający bez przerwy, którym zarządzasz zdalnie przez SSH (dostajesz adres IP i hasło). Hermes działa też na Mac Mini, laptopie albo na Androidzie przez Termux, ale tu prowadzę cię ścieżką VPS-a, bo jest najprostsza do powtórzenia.
- System operacyjny: Ubuntu 24.04 LTS.
- Konto u dostawcy modelu AI — czyli „mózgu”, z którego Hermes korzysta. Najtańszy sensowny wariant bez uruchamiania modelu lokalnie to podpięcie istniejącego abonamentu (np. ChatGPT/Codex w planie 20, 100 lub 200 USD miesięcznie) zamiast rozliczania osobno za każde zapytanie.
- Konto Telegram (prowadzę przykład na Telegramie; równie dobrze zadziała Discord, Slack, WhatsApp czy iMessage).
- Konto GitHub — na nim odłożysz kopię pamięci i umiejętności asystenta.
- Osobne konto e-mail dla asystenta (np. dedykowany Gmail), nie twoje prywatne — przyda się przy logowaniach do narzędzi.
Co Hermes ma już w środku po instalacji, więc nie musisz tego dokładać: 91 wbudowanych umiejętności, dostęp do biblioteki z ponad 520 umiejętnościami od społeczności (w tym 16 oficjalnych umiejętności Anthropic), rozpoznawanie obrazu, automatyzację przeglądarki, generowanie obrazów, syntezę mowy, komendy w terminalu, planowanie zadań oraz odpowiedzi głosowe (potrafi odpisać nagraniem audio, nie tylko tekstem).
Słownik pięciu filarów (przeczytaj raz, wróć w razie wątpliwości)
Bez tych pięciu pojęć dalsze komendy będą zlepkiem znaków. Z nimi wszystko się układa.
- Pamięć — mała, trwała wiedza, którą asystent niesie między sesjami. Każda sesja startuje bez pamięci (jak bohater filmu Memento), więc wczytuje dwa pliki:
user.md(kim jesteś, jaki masz styl, czego nie znosisz) orazmemory.md(środowiska, projekty, kontekst firmy). Hermes sam je aktualizuje, ale i tak go popychaj: „zapisz to w pamięci”, „nigdy więcej tego nie rób”. Stare rozmowy odzyskujesz przez wyszukiwanie sesji (Hermes trzyma je w bazie SQLite). Do pamięci nie wkładasz sekretów ani tymczasowego statusu zadań. - Umiejętności — pamięć proceduralna, czyli gotowe instrukcje „jak dobrze zrobić daną rzecz” (jak przepis kulinarny: z przepisu naleśniki wychodzą za każdym razem tak samo, z pamięci — raz tak, raz inaczej). Każda umiejętność to plik
skill.mdz nagłówkiem YAML na górze, który mówi asystentowi, co dana umiejętność robi i kiedy jej użyć. To tzw. progresywne ujawnianie: pełna treść wczytuje się dopiero, gdy jest potrzebna, więc nie zapycha kontekstu. Hermes potrafi sam wyłapać powtarzalne zadanie i zamienić je w umiejętność; umiejętności poprawiają się z twoją informacją zwrotną. - Osobowość — plik
soul.mdnadaje asystentowi ton: zwięzły, swobodny, formalny, sarkastyczny — jak chcesz. To zwykły markdown, bez nagłówka YAML. Ewoluuje z czasem na bazie korekt. - Crony — zaplanowane, powtarzalne zadania, które zmieniają asystenta z reaktywnego w działającego z wyprzedzeniem, przy zachowaniu pełnej pętli agentowej. Mówisz zwykłym zdaniem: „codziennie o 6 rano zrób X, Y, Z”. Hermes tworzy cron, o wyznaczonej porze budzi się w świeżej, odrębnej sesji, wykonuje zadanie i odsyła wynik do pierwotnego czatu.
- Pętla samodoskonalenia — spina pozostałe filary: robisz pracę, asystent się uczy, zapisujesz wnioski do pamięci, powtarzalne kroki stają się umiejętnościami, asystent przeszukuje dawne sesje, gdy kontekst ma znaczenie — i tak w kółko. Automatycznie nie znaczy magicznie: pętla działa najlepiej, gdy korygujesz Hermesa, każesz mu zapisywać rzeczy do pamięci i tworzyć oraz aktualizować umiejętności po trudniejszej robocie.
Pamiętaj prostą oś: pamięć = co zapamiętać, umiejętności = jak to zrobić ponownie.
Zaawansowane parametry crona (przydają się dopiero przy bardziej złożonych automatyzacjach):
CONTEXTFROM— przekazuje wynik jednego zadania do drugiego.WORKDIR— uruchamia narzędzia z konkretnego katalogu projektu.- flaga
NOAGENT— uruchamia sam skrypt bez pętli rozumowania agenta (tylko skrypt, bez warstwy agentowej). - Sesje cronów nie mogą rekurencyjnie tworzyć kolejnych cronów, więc polecenia muszą być samowystarczalne.
Plik kontekstu projektu — agents.md opisuje cel i strukturę całego projektu dla zamkniętego środowiska pracy (odpowiednik claude.md w Claude Code czy AGENTS.md w Codex). Istotny głównie wtedy, gdy używasz Hermesa w terminalu do pracy z kodem.
Krok 1 — Postaw VPS
- Wybierz plan mocy. Dostawcy zwykle oferują kilka poziomów (np. KVM 1/2/4/8 — różnią się procesorem, pamięcią i przepustowością). Na start wystarcza wariant średni (np. KVM 2); później powiększysz go jednym kliknięciem, więc nie przepłacaj z góry. Plan roczny bywa opłacalny (rząd ~100 USD/rok), a na jednym VPS-ie zmieści się kilku asystentów.
- Ustaw konfigurację:
- System: Ubuntu 24.04 LTS.
- Jeśli dostawca ma opcję automatycznego wdrożenia Hermesa „jednym kliknięciem” — skorzystaj.
- Dodaj darmowy skaner malware, jeśli jest dostępny.
- Nadaj zapamiętywalną nazwę hosta (np.
youtube-hermes.vps). - Włącz codzienne automatyczne kopie zapasowe.
- Zapisz dane dostępowe od razu w bezpiecznym miejscu: login i hasło administratora, adres IP, nazwa hosta.
Krok 2 — Wybierz metodę instalacji
Masz dwie drogi:
- Instalacja na roocie — Hermes siedzi wprost na VPS-ie, na głównym poziomie maszyny. Komendę instalacyjną uruchamiasz w terminalu dostawcy.
- Instalacja w kontenerze Docker — Hermes mieszka w odizolowanym „pudełku” wewnątrz VPS-a, zwykle stawiana jednym kliknięciem przez menedżer Dockera.
Polecam kontener. Jest najprostszy i pozwala później postawić obok kilku osobnych asystentów na jednym VPS-ie — każdy z własnymi kluczami, pamięcią i narzędziami. Analogia: VPS to biurowiec, każdy asystent to osobne biuro z własnym kluczem.
Krok 3 — Załóż projekt do zarządzania asystentami (zrób to równolegle)
Z pozoru nadgorliwość, w praktyce jedna z ważniejszych rzeczy w całym wdrożeniu. Załóż osobny projekt w Claude Code, który będzie pilnował twoich serwerów i asystentów.
Po co:
- jedno uporządkowane miejsce na wszystkie konfiguracje i dane dostępowe VPS-ów;
- jeśli asystent padnie, Claude Code potrafi wejść na serwer i pomóc go postawić z powrotem;
- nie musisz pamiętać komend ani składni terminala;
- gdy coś się psuje, opisujesz po prostu, co widzisz, i masz pomoc w komunikacji.
Co zapisywać dla każdego asystenta:
- login i hasło administratora (do pliku
.envw projekcie); - adres IP i nazwa hosta;
- czy to instalacja w Dockerze, czy na roocie;
- dostępne narzędzia, umiejętności, ścieżki plików;
- notatki o bezpieczeństwie i integracjach.
Krok 4 — Wdrożenie asystenta (onboarding)
Po wdrożeniu Hermesa wejdź do czatu (u dostawcy zwykle przycisk „Open”) i zaloguj się loginem oraz hasłem administratora, które zapisałeś wcześniej.
4.1 Wybierz dostawcę modelu
Dostawców jest wielu; najtańszy wariant nieoparty na open source to zwykle podpięcie istniejącego abonamentu (np. ChatGPT/Codex) zamiast płacenia za każde zapytanie. Zaloguj się przez link, który poda Hermes, autoryzuj dostęp, skopiuj 9-cyfrowy kod i wklej go do terminala.
4.2 Wybierz model
Wskaż model dający najlepszy balans możliwości i kosztu (przy podpięciu abonamentu Codex sensownym wyborem bywa GPT-5.5).
4.3 Podłącz Telegram
- W kreatorze zaznacz Telegram (spacją), zatwierdź (enter).
- W Telegramie otwórz BotFathera i wyślij
/newbot. - Nadaj botowi nazwę oraz unikalną nazwę użytkownika.
- Skopiuj token bota (ciąg znaków potwierdzający, że program ma prawo działać w twoim imieniu — coś jak hasło aplikacji) i wklej go do terminala VPS-a.
4.4 Autoryzuj swoje konto Telegram
- W Telegramie znajdź bota USERINFO i napisz do niego, żeby dostać swój identyfikator użytkownika (user ID).
- Wklej user ID do terminala jako użytkownika kanału domowego.
- Na pytanie, czy to kanał domowy, potwierdź „tak”. Dzięki temu na start z asystentem rozmawiasz tylko ty.
4.5 Zapisz dane konfiguracyjne
Hermes pokaże ci dostępność narzędzi, ścieżki ustawień, miejsce kluczy API i ścieżki konfiguracji. Skopiuj to wszystko i wklej do swojego projektu w Claude Code — przyda się przy późniejszym rozwiązywaniu problemów.
Najważniejszy odruch tego etapu. Po podpięciu Telegramu wyślesz pierwsze „cześć” i czasem nic nie wraca. Nie zaglądaj w kod i nie panikuj. Wróć do Hermesa w terminalu i opisz problem zwykłym zdaniem: „wysłałem wiadomość na Telegramie i nic nie dostaję z powrotem”. Asystent sam zajrzy pod spód, znajdzie zatrzymaną usługę, uruchomi ją i zamelduje gotowość. Spróbuj ponownie. Zasada: nie musisz rozumieć, jak działa wszystko pod spodem — musisz umieć jasno opisać, co widzisz i co nie działa.
Gdy połączenie działa, poświęć asystentowi pięć–dziesięć minut i opowiedz mu o sobie: cele, nad czym pracujesz, kto jest w zespole, jakie procesy chcesz mu z czasem oddać. On w tle buduje swoje pliki pamięci.
Krok 5 — Podłącz prywatne repozytorium GitHub
To pierwsza rzecz, którą robi każdy nowy asystent. Jeśli VPS się popsuje, pamięć, umiejętności i konfiguracja leżą bezpiecznie poza nim — stawiasz nowego Hermesa, podpinasz repozytorium i nic nie przepada.
5.1 Uruchom konfigurację
Powiedz Hermesowi: „Skonfiguruj to jako prywatne repozytorium GitHub. Zrób rozeznanie i ustal, jak to działa.” Hermes ma wbudowane umiejętności zarządzania repozytorium i autoryzacji GitHub. Zapyta cię o nazwę użytkownika GitHub, nazwę repozytorium, tożsamość commitów i osobisty token dostępu. Sam utworzy .gitignore, żeby sekrety nie trafiły do repozytorium nawet przy ustawieniu prywatnym.
5.2 Wygeneruj osobisty token dostępu (PAT)
- W GitHubie: Settings → Developer settings → Personal access tokens.
- Najpierw spróbuj tokena fine-grained z uprawnieniem contents: read/write.
- Jeśli to nie wystarczy (brak prawa do tworzenia repozytoriów), wygeneruj token classic z pełnym zakresem repo.
- Ustaw ważność tokena pod zastosowanie: 30 dni do testów, dłużej dla stałych wdrożeń.
5.3 Zapisz klucz bezpiecznie (kluczowa zasada)
Tokenu nie wklejasz w treść rozmowy — zostałby w historii czatu na zawsze. Użyj komendy konfiguracyjnej Hermesa:
- Na VPS-ie wejdź do czatu (przycisk „Open”), potem
Ctrl+C, żeby wyjść z czatu Hermesa do powłoki Dockera. - Uruchom:
hermes config set GITHUB_TOKEN <wklej-token-tutaj>
- To zapisuje token do pliku
/opt/data/.envwewnątrz kontenera Docker — nigdy do logu rozmowy. - Powiedz Hermesowi: „Nowy token jest w pliku
.envjakoGITHUB_TOKEN.” Asystent go odczyta.
Ta sama zasada dotyczy wszystkich kluczy, bez wyjątku.
5.4 Edycja lub usunięcie klucza
Jeśli musisz usunąć albo zaktualizować klucz, poproś Hermesa o komendę nano otwierającą plik .env. Upewnij się, że edytujesz .env wewnątrz kontenera Docker, a nie .env roota VPS-a. W nano zapisujesz przez Ctrl+O i Enter, wychodzisz przez Ctrl+X. Jeśli nano nie jest zainstalowany, poproś Hermesa o instalację lub alternatywną komendę edycji.
Krok 6 — Pierwsza umiejętność i pierwszy cron (nocna kopia na GitHubie)
Gdy GitHub jest podpięty, ustaw cron codziennej kopii. Powiedz po prostu: „Co noc o północy czasu mojej strefy wyślij zmiany do tego repozytorium. Zbuduj wokół tego umiejętność.”
Co Hermes robi pod spodem:
- przegląda istniejące, powiązane umiejętności;
- uruchamia komendy w terminalu, żeby ustawić cron;
- tworzy nową umiejętność (np.
nightly-github-sync); - aktualizuje
memory.mdo nowy kontekst; - sam obsługuje różnicę stref czasowych (kontener chodzi w UTC, ale Hermes sprawdza twoją strefę, żeby zmiana czasu nie rozjechała zadania).
Poziomy uprawnień w Telegramie. Gdy Hermes chce uruchomić komendę, pyta: pozwól raz, pozwól na czas sesji, albo pozwalaj zawsze. Dla powtarzalnych, zaufanych akcji — jak commit do repozytorium — wybierz „pozwalaj zawsze”, żeby cron działał bez pytań.
Dwie drogi do zbudowania umiejętności:
- Opisz oczekiwany efekt zwykłym językiem i pozwól Hermesowi ją zbudować.
- Zainstaluj gotową z biblioteki: skopiuj URL umiejętności, wklej Hermesowi i powiedz: „Zainstaluj tę umiejętność i ją uruchom.”
Krok 7 — Wiedz, kiedy używać terminala, a kiedy Telegramu
W obu interfejsach to ten sam agent — Telegram nie uruchamia słabszej wersji. Różnica leży w widoczności i kontroli.
Terminal (CLI) to kokpit:
- najlepszy do głębokiej pracy, budowania, kodowania, „mieszkania” w agencie;
- lepszy wgląd w okno kontekstu;
- dostępne wszystkie komendy ze slashem;
- używaj go, siedząc przy komputerze przy zadaniach wysokiego ryzyka.
Telegram to pilot:
- najlepszy do zadań zaplanowanych, szybkich sprawdzeń, pracy w drodze;
- mniejszy wgląd w okno kontekstu i stan sesji;
- automatyczne kompaktowanie kontekstu dzieje się pod spodem, gdy zbliżasz się do limitu tokenów;
- nie pisz z Telegramu poważnych aplikacji na żywioł — trzymaj go do zadań niskiego ryzyka.
Kontekst liczy się w tokenach, nie w wiadomościach. Model zawsze widzi system prompt,
user.md, osobowość itd. Przy zbliżaniu się do limitu okna Hermes uruchamia automatyczne kompaktowanie. W Telegramie nie widzisz dokładnie, kiedy to następuje, więc praca wysokiej stawki jest tam bardziej ryzykowna.
Krok 8 — Bezpieczeństwo i higiena kluczy
Traktuj Hermesa jak nowego pracownika albo stażystę. Nowo zatrudnionej osobie nie dajesz swojej karty kredytowej — tu jest tak samo.
Konta i klucze:
- daj każdemu asystentowi własne konto e-mail (Gmail lub AgentMail), nie swoje prywatne;
- jeśli musisz współdzielić klucz, użyj takiego z bardzo wąskim zakresem uprawnień;
- używaj nazwanych kluczy API per asystent (osobne klucze np. OpenRouter czy Perplexity), żeby śledzić wydatki na każdego z osobna;
- stosuj zasadę najmniejszych uprawnień: tylko dane dostępowe i narzędzia potrzebne do danej roli.
Hartowanie VPS-a:
- ustaw zaporę sieciową u dostawcy;
- ogranicz dostęp do swojego IP i zablokuj nieużywane porty;
- poproś Hermesa lub Claude Code o rozeznanie środowiska i rekomendację konfiguracji zapory;
- zbuduj umiejętność nocnego lub cotygodniowego audytu bezpieczeństwa, która sprawdza podatności.
Krok 9 — Utrzymanie w czasie
Hermesa się nie „kończy konfigurować” — to współpracownik, którego się prowadzi i doucza.
- Gdy asystent pomyli się dwa razy w tym samym — popraw go na miejscu i każ zaktualizować odpowiednią umiejętność lub pamięć.
- Gdy wydajesz to samo polecenie dwa razy — poproś Hermesa, żeby napisał z tego umiejętność.
- Gdy gada za dużo albo nie tym tonem — popraw
soul.md. - Gdy chcesz nowe zadanie cykliczne — zbuduj umiejętność i poproś o ustawienie crona.
- Gdy coś się psuje — najpierw sprawdź
memory.md. Nieaktualna pamięć to najczęstsza przyczyna dziwnych zachowań. - W każdej chwili możesz poprosić: „Przeczytaj mi swój plik pamięci” albo „Przeczytaj mi swój plik osobowości”, żeby zobaczyć, co tam naprawdę jest.
Krok 10 — Skalowanie: jeden asystent czy kilku
W miarę rozwoju możesz chcieć osobnych asystentów do różnych ról. Nie wymuszaj tego — używaj jednego, aż naturalnie trafisz na poniższe kryteria.
Jak rozdzielić asystentów na jednym VPS-ie:
- każdy asystent działa we własnym kontenerze Docker;
- każdy kontener ma własną pamięć, narzędzia i prywatne klucze API;
- kontenery nie współdzielą plików
.env, więc klucze się nie mieszają.
Drzewko decyzyjne dla nowego asystenta — twórz nowego, jeśli choć raz odpowiadasz „tak”:
- Czy potrzebuje innych uprawnień, sekretów lub narzędzi?
- Czy potrzebuje osobnej pamięci długoterminowej?
- Czy to praca stała lub powtarzalna (nie jednorazowa)?
Jeśli wszędzie „nie” — zostaw to w głównym, osobistym Hermesie.
Zły wzorzec kontra dobry:
- Źle: jeden megaagent ze wszystkimi kluczami, wszystkimi umiejętnościami i każdym cronem — duże zamieszanie i wysokie ryzyko, gdy się popsuje.
- Dobrze: podział na wertykały (marketing, finanse, operacje) albo po platformie/roli — czystsza pamięć, łatwiejsze diagnozowanie, niższe ryzyko.
- Migracja jest prosta, bo umiejętności, pamięć i crony to zwykłe pliki markdown — przenosisz je między asystentami według potrzeby.
Dodatek — Panel Hermesa (opcjonalnie)
Hermes ma wbudowany panel: ostatnie sesje, podłączone platformy, tablica Kanban, klucze, konfiguracje, umiejętności i wtyczki.
Jak go otworzyć: powiedz Hermesowi, że chcesz otworzyć panel, i podaj informacje o trasie VPS-a oraz konfiguracji kontenera Docker. Hermes otworzy bramę i tunel, żebyś dostał się do lokalnego panelu. Pierwsze podejście bywa toporne; gdy zadziała, zapisz to jako umiejętność, żeby kolejne otwarcie sprowadzało się do „otwórz panel” i trzech komend.
Kiedy się przydaje: przy kilku asystentach pracujących nad różnymi projektami (widok Kanban), do wizualizacji zadań między asystentami, jako szybki sposób na zarządzanie cronami, wtyczkami i konfiguracjami. Przy pracy głównie w drodze przez Telegram zaglądasz tu rzadko.
Ściąga końcowa
- Hermes sprawdza się najlepiej do automatyzacji w drodze przez Telegram. Do pracy umysłowej przy biurku Claude Code zostaje narzędziem pierwszego wyboru.
- Pięć filarów (pamięć, umiejętności, osobowość, crony, pętla samodoskonalenia) to model myślowy na wszystko, co Hermes robi.
- Stawiaj instalację w kontenerze Docker na Ubuntu 24.04 LTS.
- Zawsze załóż projekt w Claude Code do zarządzania serwerami (hasła, IP, konfiguracje). Zwraca się przy pierwszej awarii.
- Pierwsza rzecz po wdrożeniu: podłącz prywatne repozytorium GitHub i ustaw cron codziennej kopii.
- Nigdy nie wklejaj kluczy API w czat — używaj
hermes config set NAZWA_KLUCZA <wartość>z wnętrza kontenera Docker. - Traktuj każdego Hermesa jak nowego pracownika: najmniejsze uprawnienia, nazwane klucze per asystent, osobne konta tam, gdzie to możliwe.
- Nieaktualny
memory.mdto najczęstsza przyczyna dziwnych zachowań — sprawdź go najpierw, gdy coś idzie nie tak.
I jedno na koniec, bo to ono decyduje o powodzeniu: cudzy sposób użycia to nie twój. Zanim ruszysz, odpowiedz sobie, którą konkretnie powtarzalną robotę chcesz z siebie zdjąć — i pierwszego crona ustaw właśnie pod nią.