Model w LM Studio odpowiada na pytania. Agent działa: uruchamia polecenia, czyta i zapisuje pliki, pamięta ustalenia z poprzednich rozmów i wykonuje zadania według harmonogramu. Hermes Agent od Nous Research to otwartoźródłowy agent, który robi to wszystko z dowolnym modelem zgodnym z API OpenAI — także z Twoją lokalną Gemmą.
W tej części zainstalujesz Hermesa na Windowsie, połączysz go z LM Studio, ustawisz sensowne granice bezpieczeństwa i udostępnisz go sobie przez Telegram.
Zanim zaczniesz: agent to nie czat
Agent z dostępem do terminala może wykonać każde polecenie, które możesz wpisać samodzielnie. Model językowy się myli — czasem źle zrozumie polecenie, czasem da się zmanipulować treścią przeczytanego pliku lub strony (prompt injection). Dlatego w tej serii obowiązują trzy zasady:
- Zatwierdzanie niebezpiecznych poleceń zostaje włączone. Wyłączasz je tylko świadomie i tylko dla konkretnych, sprawdzonych wzorców.
- Dostęp do homelabu wyłącznie do odczytu, przez klucz SSH, który pozwala uruchomić dokładnie jeden skrypt (szczegóły w części 4).
- Bramka Telegram odpowiada tylko Tobie — lista dozwolonych użytkowników, domyślnie odmowa dla wszystkich innych.
Instalacja
Hermes działa natywnie na Windowsie: CLI, bramka komunikatorów i narzędzia bez WSL. Oficjalny instalator to skrypt PowerShella. Zanim uruchomisz skrypt z internetu, pobierz go i przejrzyj:
irm https://hermes-agent.nousresearch.com/install.ps1 -OutFile "$env:TEMP\hermes-install.ps1"notepad "$env:TEMP\hermes-install.ps1" # przejrzyj, co robi skrypt
& "$env:TEMP\hermes-install.ps1"Po instalacji otwórz nowe okno PowerShella i sprawdź:
hermes --helphermes doctorKonfiguracja i dane Hermesa (plik config.yaml, sekrety w .env, pamięć i historia sesji) leżą w %LOCALAPPDATA%\hermes\. Ten katalog warto objąć kopią zapasową — to tam agent przechowuje wszystko, czego się o Tobie nauczył.
Połączenie z LM Studio
Upewnij się, że serwer LM Studio działa (lms server start, patrz część 2), i uruchom kreator modelu:
hermes model- Jako dostawcę wybierz LM Studio.
- Adres zatwierdź Enterem — domyślny to
http://localhost:1234/v1. - Z listy wykrytych modeli wybierz google/gemma-4-12b.
Kreator zapisze w config.yaml:
model: provider: lmstudio default: google/gemma-4-12bHermes wymaga od modelu co najmniej 64K tokenów kontekstu i sprawdza to przy starcie. Jeśli model jest już załadowany w LM Studio, Hermes zachowuje jego ustawienia — dlatego w części 2 zapisaliśmy kontekst 65 536 jako domyślny dla modelu.
Pierwsza rozmowa:
hermesZacznij od zadania, które wymaga narzędzia, np. „Sprawdź, ile wolnego miejsca jest na dysku D: i jaka wersja PowerShella jest zainstalowana”. Agent powinien uruchomić odpowiednie polecenia i odpowiedzieć na podstawie ich wyniku, a nie z pamięci modelu.
Zatwierdzanie poleceń
Hermes rozpoznaje niebezpieczne polecenia (usuwanie plików, zmiany w systemie, instalacje) i przed ich uruchomieniem pyta o zgodę. Masz trzy odpowiedzi: raz, na tę sesję albo zawsze — ta ostatnia dopisuje wzorzec do stałej listy dozwolonych poleceń w konfiguracji.
Domyślne ustawienia są rozsądne. Warto jednak wiedzieć, co oznaczają, i mieć je zapisane jawnie:
approvals: # smart: pomocniczy model ocenia ryzyko — bezpieczne polecenia przechodzą, # niebezpieczne wymagają zgody lub są blokowane mode: smart # sekundy oczekiwania na Twoją odpowiedź timeout: 300 # zadania z harmonogramu nie mają kogo zapytać — niebezpieczne polecenia są odrzucane cron_mode: denyNie włączaj trybu /yolo (wszystko bez pytania) w sesjach, w których agent czyta treści z zewnątrz: strony WWW, e-maile, pobrane dokumenty. To właśnie tam czai się prompt injection.
Bramka Telegram
Bramka (gateway) to proces Hermesa, który odbiera wiadomości z komunikatorów i odsyła odpowiedzi. Rozmawiasz z tym samym agentem, z tą samą pamięcią — tylko z telefonu.
Osobny bot
Utwórz nowego bota u @BotFather (/newbot), niezależnego od bota z alertami Uptime Kumy. Bramka Hermesa stale odbiera wiadomości wysłane do bota, więc jeden token nie powinien obsługiwać dwóch usług. Poza tym osobny bot to osobny, łatwy do unieważnienia sekret.
Potrzebujesz też swojego numerycznego ID użytkownika Telegrama — napisz do bota @userinfobot, a odpowie liczbą w stylu 123456789.
Konfiguracja
hermes gateway setupKreator zapyta o platformę (Telegram), token bota i dozwolonych użytkowników. Sekrety trafiają do pliku .env w katalogu danych Hermesa:
TELEGRAM_BOT_TOKEN=8123456789:AAH...token-od-BotFatheraTELEGRAM_ALLOWED_USERS=123456789TELEGRAM_ALLOWED_USERS to lista ID oddzielonych przecinkami. Bramka domyślnie odmawia każdemu, kto nie jest na liście — nawet jeśli ktoś znajdzie nazwę Twojego bota, agent mu nie odpowie.
Uruchomienie
Najpierw na próbę, na pierwszym planie:
hermes gatewayNapisz do swojego bota z telefonu, np. „Ile mam wolnego miejsca na dysku D:?”. Gdy działa, zainstaluj bramkę jako zadanie startujące przy logowaniu (Harmonogram zadań Windows):
hermes gateway installhermes gateway startCo dalej
Masz lokalnego agenta, który odpowiada w terminalu i na Telegramie, pyta o zgodę przed ryzykownymi poleceniami i nikogo poza Tobą nie wpuszcza. W ostatniej części dasz mu realne zadania: codzienny raport z homelabu, pomoc przy kodzie i porządkowanie dokumentów.