Kiedy opanujesz już pracę z jednym agentem, zaczyna cię uwierać czekanie. Agent robi research, planuje albo koduje złożoną funkcję, a ty patrzysz na postęp w terminalu.
Czasem warto ten czas wykorzystać na zebranie myśli albo przerwę. Ale z tyłu głowy pojawia się myśl: a gdyby tak odpalić drugą sesję? Albo trzecią i czwartą? I to na agentach od różnych firm, z różnymi modelami pod spodem?
Brzmi kusząco, tylko od razu pojawiają się pytania. Jak to wszystko kontrolować? Skąd wiedzieć, co dzieje się w każdej sesji? Jak zareagować we właściwym momencie? I czy ci agenci mogą w ogóle wiedzieć o sobie nawzajem?
Na te pytania odpowiada Herdr - otwartoźródłowy menedżer przestrzeni roboczych dla agentów kodujących, dostępny na macOS, Linuksie i Windowsie. Jego repozytorium na GitHubie przekroczyło już 44 tysiące gwiazdek (stan na 15 października 2026).
Agenci z jednej stajni
Równoległe sesje da się uruchamiać w wielu narzędziach: w ChatGPT z Codexem, w desktopowym Claude Code czy w widoku agentów w Cursorze.
U mnie w ChatGPT jest skonfigurowany workspace, czyli przestrzeń robocza dla naszej platformy edukacyjnej. W pierwszym wątku zlecam analizę modułu CMS pod kątem refaktoryzacji, a w drugim - wyszukanie statycznych zasobów, które najbardziej obciążają frontend.
Każdy agent pracuje na osobnym worktree, czyli w oddzielnym katalogu roboczym tego samego repozytorium. Dzięki temu nie edytują sobie nawzajem tych samych plików. Wskaźniki postępu pokazują, kiedy agent się zatrzymuje - wszystko wygląda dobrze.
Problem pojawia się, kiedy chcesz dołożyć do tego agenta od innego dostawcy. W pokazanym układzie ChatGPT pracuję z Codexem. Nie mam w nim wspólnego widoku sesji Claude Code, OpenCode i Cursora, z których też korzystam.
To ograniczenie jednego ekosystemu, często określane jako vendor lock-in. Równoległe sesje są, ale do połączenia moich narzędzi potrzebuję wspólnego interfejsu.
Surowy terminal i chaos
Drugie podejście to terminal. Tu nie ma ograniczeń co do dostawcy: w jednej zakładce odpalam Codex CLI, w drugiej (albo w podzielonym panelu) Claude Code, i oba pracują nad tym samym projektem równolegle.
Tyle że same zakładki terminala nie dają mi wspólnego widoku statusów agentów. Bardzo szybko pojawia się chaos: mnóstwo paneli, mnóstwo zakładek, każda z inną konfiguracją.
Bez dodatkowej warstwy utrzymującej procesy ich praca jest związana z otwartym terminalem. Możesz mieć tych paneli 158, ale zamknięcie okna może przerwać wszystkie zadania.
Rozdzielenie sesji od interfejsu nie jest nowym pomysłem - od lat robi to choćby tmux. Herdr łączy tę właściwość z widokiem agentów i ich statusów.
Instalacja i pierwsze uruchomienie
Herdr instalujesz skryptem dla swojej platformy z oficjalnej instrukcji instalacji. W nagraniu, na którym opieram ten tekst, używam wersji 0.9.1. Opis dotyczy pokazanego tam interfejsu; przy instalacji nowszej wersji sprawdź aktualną dokumentację.
Po instalacji wpisujesz w terminalu herdr. Mimo że to narzędzie terminalowe, na start nie musisz uczyć się listy skrótów - Herdr od początku obsłużysz myszką. Panele są interaktywne i reagują na lewy oraz prawy przycisk myszy.
Jeśli wolisz klawiaturę, skróty zaczynają się od prefiksu Ctrl-B.
Przy pierwszym uruchomieniu Herdr rozpoznaje agentów zainstalowanych na twojej maszynie i proponuje integracje. U mnie były to Claude Code, Codex, Copilot, OpenCode i Cursor - wystarczyło je zaakceptować.
Workspace’y i statusy agentów
Po starcie dostajesz zwykły terminal wewnątrz workspace’u, który możesz nazwać. Wchodzisz do folderu projektu i widzisz go w lewym panelu. Każdy agent uruchomiony z tego workspace’u jest z nim powiązany, więc od razu widzisz, z którego projektu pochodzi agent, który potrzebuje uwagi.
W pokazanym przykładzie agenci analizują kod, więc mogą pracować w tym samym katalogu. Jeśli mają równolegle edytować pliki, samo utworzenie zakładek nie zapewni izolacji zmian - do tego przygotuj osobne worktree.
W praktyce wygląda to tak:
- W workspace’ie platformy odpalam Codexa i zlecam analizę okazji do refaktoryzacji.
- Przez pasek zakładek otwieram nową zakładkę w tym samym workspace’ie i uruchamiam Claude Code z innym zadaniem: znajdź okazje do refaktoryzacji statycznych zasobów, daj mi top 3 rekomendacje i zapytaj mnie, w którą stronę idziemy.
- Przyciskiem New tworzę drugi workspace dla zupełnie innego projektu i tam odpalam kolejnych agentów.
Na dole lewego panelu masz podsumowanie wszystkich uruchomionych agentów, a przy każdym ikonę statusu. Widzisz, czy agent pracuje, czy jest bezczynny, czy zakończył zadanie, czy potrzebuje twojej decyzji.
Powiadomienia zamiast przeklikiwania zakładek
Załóżmy, że pracujesz w drugim workspace’ie, a jeden z agentów w pierwszym czeka na twoją odpowiedź. Bez wspólnego widoku statusów łatwo odkryć to dopiero po przeklikaniu zakładek w poszukiwaniu zablokowanej sesji.
Tutaj wystarczy zerknąć na lewy panel. Agent czekający na decyzję ma czerwoną kropkę i od razu odróżnisz go od agenta, który po prostu skończył pracę i czeka na kolejne polecenie.
Herdr może też dać znać dźwiękiem, powiadomieniem systemowym albo powiadomieniem w terminalu. Dzięki temu nie musisz pilnować wszystkich sesji wzrokiem.
Sesje, które przeżywają zamknięcie terminala
To jest dla mnie największa przewaga nad pracą w samych zakładkach terminala. Herdr rozdziela warstwę serwerową, w której działają sesje agentów, od warstwy klienckiej, czyli interfejsu w terminalu.
Mogę więc zamknąć interfejs Herdr, a nawet całe okno terminala, pozostawiając serwer i agentów przy pracy. Po ponownym otwarciu terminala sprawdzam aktywne sesje:
herdr session list
Na liście widzę sesję default w statusie running. Wpisuję herdr i wracam do działających sesji agentów. Te, które miały zadanie do wykonania, mogły w tym czasie pracować dalej.
Jeśli kiedyś przez przypadek zamknąłeś okno w trakcie researchu, na który poszła masa tokenów, wiesz, ile to jest warte. Chodzi o ciągłość pracy procesu; zachowanie historii rozmowy przez samego agenta to osobna sprawa.
Ta sama właściwość przydaje się na zdalnym serwerze, np. VPS-ie (virtual private server), czyli wirtualnej maszynie u dostawcy hostingu. Zamykasz połączenie, a następnego dnia łączysz się, odpalasz herdr i kontynuujesz pracę. Warunkiem jest działający serwer Herdr - odłączenie interfejsu i zatrzymanie serwera to różne operacje, opisane w dokumentacji trwałych sesji.
Agenci, którzy widzą siebie nawzajem
Ostatni element zamienia zbiór niezależnych sesji w prawdziwe stado. Herdr udostępnia skill, czyli instrukcję obsługi narzędzia dla agenta. Dzięki niej agenci mogą zobaczyć inne sesje i się z nimi komunikować - niezależnie od tego, od którego dostawcy pochodzą.
Aktualna instrukcja instalacji skilla Herdr podaje polecenie:
npx skills add herdrdev/herdr --skill herdr
To instalacja w bieżącym projekcie; dodanie -g instaluje skill globalnie. Instalator pozwala wybrać, z którymi agentami go zintegrować. Do wyboru są Claude Code i inne narzędzia wspierające agent skills, w tym Codex i Cursor.
Po instalacji uruchom agenta wewnątrz Herdr. Jeśli sesja już działa, przeładuj w niej skille zgodnie z możliwościami danego narzędzia albo rozpocznij nową sesję.
Teraz w Claude Code mogę zapytać, ile workspace’ów jest uruchomionych i jacy agenci na nich działają. Dostaję podsumowanie: dwa aktywne workspace’y, trzy panele i dwóch rozpoznanych agentów. Zgadza się.
Idę krok dalej i proszę Claude Code, żeby przekazał agentowi Codexa informację o tym, nad czym pracuje. Do sąsiedniej sesji trafia krótki stan: to samo repozytorium, analiza statycznych zasobów, nie trzeba nic implementować. Codex odpisuje, że nie dublują pracy, bo jego analiza dotyczy struktury kodu.
Scenariuszy, które otwiera taka komunikacja, jest mnóstwo:
- orkiestrator, czyli model z dużym potencjałem rozumowania, który nadzoruje pozostałe sesje i informuje o postępach,
- agenci odblokowujący innych agentów, kiedy ci utkną,
- asynchroniczne review pracy jednego agenta przez drugiego, np. od innego dostawcy.
Od czego zacząć
Herdr to dobry fundament pod własne nakładki i workflow, ale na start wystarczy wersja podstawowa. Zainstaluj go i zleć dwóm agentom od różnych dostawców analizę jednego projektu. Zamknij samo okno terminala w trakcie ich pracy, a potem uruchom herdr i sprawdź, do czego doszli.
Potem dołóż skill i poproś jednego agenta, żeby opowiedział drugiemu, co robi.