← Z warsztatu

bialybrzeg · 24 października 2026

Jak rozmawiały ze sobą sesje, które pisały tę książkę

W części książki o tym, jak powstała, napisaliśmy: „Sesje nie rozmawiają ze sobą bezpośrednio”. To było uproszczenie. Rozmawiały — krótkimi wiadomościami. Tyle że wiadomość nigdy nie niosła pracy, a po kilku obrotach przestawała dochodzić.

Na czym to stało

Książkę „Powiedz mi «tak»” pisał zespół dziesięciu ról AI: dyspozytor, redaktor prowadzący, dwóch piszących (Claude i GPT), krytyk, kontroler zgodności z faktami, sufler szukający cytatów w zapisach rozmów, redaktor wydania angielskiego, skład i paratekst. Każda rola to osobna sesja modelu językowego z własnym plikiem instrukcji. Wszystkie pracowały na jednym repozytorium git — wspólnym katalogu z pełną historią zmian. Ja jestem autorem: dyktuję fakty i decyzje, do plików nie piszę.

Dwa kanały

Repozytorium niosło całą pracę. Rozdziały, kanon faktów, raporty, kontrole. Do tego trzy pliki, które robiły za system nerwowy: STAN.md z jedną linią „Klawiatura” — czyja teraz kolej; SKRZYNKA.md — polecenia, które przychodzą w trakcie tury, czytane po każdym etapie pracy; katalog Czat/ — kopie zleceń.

Wiadomości między sesjami niosły tylko sygnał. Dyspozytor pisał do sesji roli: „już — krytyk: przeczytaj rozdziały 1–10”. Rola po turze odpisywała meldunkiem: „gotowe, commit 3f2a…”. Bez treści — treść była w repozytorium. Nocą, kiedy mnie nie było, role przekazywały sobie „już” same, łańcuchem: redaktor → piszący → tłumacz → krytyk.

Dlaczego praca nigdy nie szła wiadomością: bo wiadomość może nie dojść. Plik zostaje.

Jedna tura

Diagram „Jedna tura w zespole agentów”: autor daje dyspozytorowi „już”; dyspozytor zapisuje w repozytorium, czyja kolej, i wysyła roli zlecenie z kopią w Czat/; rola pobiera repozytorium, pracuje, zapisuje commit z kontrolami i odsyła meldunek bez treści; dyspozytor pobiera i daje „już” następnej roli. Ramka: po 10 wiadomościach bez wpisu człowieka aplikacja je wstrzymywała.

1. Ja → dyspozytor: „już”.

2. Dyspozytor → repozytorium: commit z linią „Klawiatura: krytyk”. Zanim wyśle wiadomość — inaczej rola odmówi pracy, bo w repozytorium nie jej kolej.

3. Dyspozytor → krytyk: wiadomość „już — krytyk: …” z listą plików do przeczytania i tym, co ma oddać. Kopia w Czat/.

4. Krytyk pobiera repozytorium i czyta.

5. Praca: raport krytyka.

6. Krytyk → repozytorium: commit oznaczony skrótem roli, a przed nim skrypty kontrolne (imiona, cytaty, uprawnienia).

7. Krytyk → dyspozytor: meldunek „gotowe, commit …”.

8. Dyspozytor pobiera, sprawdza, daje „już” następnej roli.

Gdzie się sypało

2 października, 01:08. Kontroler skończył turę i nikomu tego nie powiedział. Wszystko stało szesnaście minut. Od tej nocy każde „już” kończy się prośbą o meldunek do dyspozytora.

4 października, 03:06–03:17. Dwie sesje dyspozytora naraz — jedna w chmurze, jedna na laptopie — drugą noc z rzędu. Dogadały się przez skrzynkę: chmura ustąpiła.

4 października, noc. Redaktor zapisał w repozytorium: jego meldunki „od Nocy 3 nie dochodzą (blokada wiadomości między sesjami do odpowiedzi autora)”.

8 października. Sesja dyspozytora została zastąpiona nową. Meldunki szły jeszcze do starej, której nikt już nie czytał.

9 października, 07:30 i 09:05. Sesji tłumacza i kontrolera nie było na liście sesji. Piszący nie miał komu wysłać „już” — zostawił je w skrzynce.

9 października, 08:14. Redaktor: „aplikacja wstrzymała moje wiadomości do innych sesji do następnego wpisu autora w mojej sesji”.

9 października, 18:32. Tłumacz wysłał gotowy przekład do składu. Wiadomość nie doszła: limit.

Mechanizm, który z tego wychodzi: aplikacja przepuszczała 10 wiadomości między sesjami pomiędzy dwoma wpisami człowieka. Potem wiadomości danej sesji czekały na następny wpis człowieka w tej sesji. Dlatego po kilku obrotach komunikacja stawała i każdą sesję trzeba było obudzić z osobna — wejść do niej i coś wpisać.

Obejścia

Każde zlecenie ma kopię w Czat/. Jeśli wiadomość nie doszła, rola i tak znajdzie zlecenie w repozytorium.

Skrzynka czytana po każdym etapie, nie tylko na początku tury.

Zamiast czekać na meldunek: pobrać repozytorium i spojrzeć na linię „Klawiatura”. Jeśli przeszła dalej — tura się skończyła, nawet jeśli nikt tego nie powiedział.

Nocą jedno zlecenie na rolę, z pełnym mandatem, i łańcuch bez dyspozytora — żeby nie wyczerpać limitu.

Dyspozytor w chmurze i dyspozytor na laptopie piszą do siebie wyłącznie przez repozytorium: wiersz w skrzynce i plik w Czat/. Sesja w chmurze nie widzi sesji na laptopie.

Tekst przygotował Claude na podstawie mojego projektu. Słowa układa maszyna, ja daję wsad.