Zdjęcie dodane przez betül nur akyürek: Pexels
W poprzednim wpisie zakończyłam zdaniem: "Stay tuned, coś czuje, że to jeszcze nie koniec historii..."
Miałam rację.
Po kilku miesiącach okazało się, że skończyły się książki, które Babcia lubi. Kryminały — za ponure. Romanse — za płytkie. Saga rodzinna, polska, kilka pokoleń, epoka historyczna — to jej klimat.
I wtedy przyszła myśl, która dla inżyniera brzmi zupełnie normalnie, ale każdemu innemu wydałaby się absurdalna: skoro pipeline TTS już działa... to może zamiast zamieniać gotowe książki na audiobooki, AI po prostu napisze nowe?
Tak powstał „Ród Dębickich" — saga rodzinna w sześciu tomach. Polska, XIX i XX wiek, kilka pokoleń, ponad sto lat historii. Wygenerowana przez AI, przeczytana moim sklonowanym głosem, dostarczona Babci jako audiobooki.
Dlaczego jeden model nie wystarczy
Możecie pomyśleć, że to było proste. Intuicja podpowiada: daj Claude'owi prompt „napisz sagę rodzinną, 6 tomów", i gotowe.
Tak to nie działa. Fabuła książki to coś więcej niż tekst. Tutaj motywy się przeplatają a bohaterowie nie "zmartchwywstają" nagle bo model zapomniał, że już byli uśmierceni. Dla modelu napisać list czy mini wypracowanie to pestka - ale napisać 6 tomową sagę to już inny kaliber.
Okno kontekstowe ma swoje limity, ale to nie jedyny problem. Nawet gdyby model „widział" całą książkę naraz — jakość tekstu generowanego przez jeden, wielogodzinny prompt jest nierówna. Pierwsze rozdziały są zazwyczaj świetne. Potem model zaczyna gubić wątki, powtarzać frazy, tracić spójność postaci. A przy sześciu tomach — to przepis na chaos.
Dlatego podeszłam do tego po inżyniersku. Rozwiązanie: kilka wyspecjalizowanych agentów, każdy z jednym wyraźnie określonym zadaniem.
Cała praca nad książką zaczyna się od pomysłu. Fabułę i zarys tematu muszę wymyślić ja (teraz to już robi cała rodzina). To jest surowy zarys historii. Kilka akapitów: o co chodzi, kto jest głównym bohaterem, jaka epoka, jaki klimat. Coś, co można by napisać na serwetce podczas lunchu.
Oprócz fabuły (outline.md), w osobnym pliku mam zdefiniowany styl książki (style.md). W przypadku książek dla babci, nie zmieniam tego pliku. Ale jeśli przyjdzie Ciocia, miłośniczka kryminałów - łatwo mogę zmienić styl pisania agenta.
rules.md i style.md — to pliki współdzielone, które piszę raz i używam dla wszystkich sag. Zasady narracyjne i przewodnik po stylu są wspólne, ustalam tu zasady generowania książki (np: zróżnicuj długość zdań, daty pisz słownie). Dzięki temu książka, niezależnie od stylu "brzmi" naturalnie.
AI tworzy fabułę
Następnie uruchamiam /new-series — komendę Claude Code, która bierze ten zarys i generuje komplet plików dla całej sagi. Dla każdego tomu osobno:
-
book.md— pełna specyfikacja: tytuł, autor, gatunek, epoka, miejsca akcji, opisy bohaterów z wiekiem na początku i końcu tomu, szczegółowe streszczenie fabuły, notatki o stylu i tonie. I osobna sekcja:Nawiązania do poprzednich tomów— lista motywów, postaci i symboli, które mają powrócić. To agent planujący, nie piszący, celowo wstawia te mostki między tomami. -
outline.md— zarys każdego rozdziału: kiedy, gdzie, co się dzieje, jaki jest emocjonalny łuk sceny, jak się łączy z łukiem całego tomu.
Ten agent — nazwijmy go Architektem — myśli o sadze jako całości. Nie pisze prozy, nie recenzuje. Tylko planuje arc narracyjny, rozdziela historię na tomy, projektuje postacie i mosty między nimi.
I zwykły Claude robi to dobrze. Lepiej niż ja bym to ręcznie zrobiła w rozsądnym czasie. Nie trzeba tu drogich modeli ani skomplikowanych rozwiązań. Choć przyznam się szczerze, myślę aby zaprząc do tego Bielika.
To jest faza planowania.
Trzy agenty w pętli, rozdział po rozdziale
Cały pipeline od pomysłu do audiobooka wygląda tak:
Zarys historii (plik z pomysłem)
↓
[Architekt] — generuje book.md + outline.md dla każdego tomu
Kontekst: rules.md + book.md + style.md + outline.md + streszczenie poprzedniego rozdziału + ciągłość z poprzedniego tomu
1️⃣ [Pisarz] — generuje rozdział N
2️⃣ [Recenzent] — weryfikuje: PASS ✓ lub FAIL ✗
→ jeśli FAIL: Pisarz pisze ponownie (max 2 próby)
3️⃣ [Podsumowujący] — streszcza rozdział w ~200 słowach
→ streszczenie = kontekst dla rozdziału N+1
⏰ Pętla powtarza się dla każdego rozdziału
Po zakończeniu tomu:
[Archiwista] — tworzy tome_summary_tN.md (pełne podsumowanie tomu dla kontekstu w tomie N+1)
Markdown → EPUB → TTS (Text-to-Speech) → Audiobook
💡 Kluczowa idea: Każdy agent ma jedno zadanie. Rekurentne streszczenia łączą rozdziały. Pipeline nigdy się nie zawiesza — jeśli coś się nie powiedzie, logujemy warning i idziemy dalej.
Agent-Archiwista to strażnik ciągłości między tomami. Po wygenerowaniu wszystkich rozdziałów w tomie, czyta całą treść i tworzy dokument tome_summary_tN.md. W tym pliku zapisuje: kto żyje, kto umarł, stan relacji między postaciami, kluczowe zwroty akcji, otwarte wątki fabularne, ważne przedmioty i miejsca. To nie streszczenie dla czytelnika — to dokument techniczny dla AI. Precyzyjny, bez ozdobników. Gdy Pisarz rozpoczyna tom N+1, dostaje ten plik jako część kontekstu. Dzięki temu postacie nie "zmartwychwstają", imiona pozostają spójne, a wątki się domykają.
Agent-Pisarz dostaje kompletny kontekst: zasady narracyjne, specyfikację książki, przewodnik po stylu, zarys danego rozdziału z outline'u i streszczenie poprzedniego rozdziału. Jego jedyne zadanie: napisać jeden rozdział. Nic więcej.
Agent-Recenzent nie widzi promptów ani zasad. Widzi tylko gotowy tekst i jedno pytanie: czy rozdział ma halucynacje, problemy z ciągłością narracji, placeholdery, nieakceptowalną jakość? Odpowiada PASS lub FAIL z krótkim uzasadnieniem.
Jeśli FAIL — tekst wraca do Pisarza razem z feedbackiem. Maksymalnie dwie próby. Jeśli po trzech podejściach nadal FAIL — zapisujemy ostatnią wersję z ostrzeżeniem i idziemy dalej. Pipeline nie blokuje się w nieskończoność.
Agent-Podsumowujący streszcza właśnie wygenerowany rozdział. To streszczenie trafia jako kontekst do kolejnego wywołania Pisarza. Dzięki temu każdy rozdział „wie", co się wcześniej wydarzyło — bez ładowania całej treści do okna kontekstowego.
Czemu recenzent to osobny agent?
Bo Pisarz i Recenzent mają różne zadania — i różne tendencje.
Model, który właśnie wygenerował tekst, będzie miał naturalną skłonność do oceniania go pozytywnie. Osobny agent z innym promptem, nastawionym wyłącznie na weryfikację, wyłapuje rzeczy, które Pisarz przemilcza: brakujące nagłówki, za krótkie rozdziały, placeholdery w stylu [wstaw imię], meta-komentarze w treści (Rozdział napisany — 1247 słów).
Poza tym — oddzielenie tych ról to klasyczna inżynierska zasada: jeden komponent, jeden zakres odpowiedzialności. Łatwiej debugować, łatwiej ulepszać.
Ciągłość między tomami
Sześć tomów to sześć oddzielnych procesów generowania. Bez dodatkowego mechanizmu — tom II nie wiedziałby nic o wydarzeniach z tomu I. Postacie, które zginęły, mogłyby nagle zmartwychwstać. Imiona zmieniałyby się między tomami. Otwarte wątki nigdy nie wracałyby.
Rozwiązanie: streszczenie tomu.
Po wygenerowaniu każdego tomu, osobny agent czyta całą treść i tworzy plik tome_summary_tN.md — szczegółowe podsumowanie: kto żyje, kto umarł, stan relacji głównych postaci, kluczowe zwroty akcji, otwarte wątki, ważne przedmioty i miejsca. Ten plik trafia do Pisarza jako kontekst podczas generowania kolejnego tomu.
Prompt do tworzenia tego streszczenia jest bardzo konkretny: „to jest dokument roboczy dla AI generującej kolejny tom, nie streszczenie dla czytelnika". Różnica jest istotna. Agent ma pisać precyzyjnie i technicznie — nie literacko.
Prompt engineering, który naprawdę robi różnicę
Nie wystarczy powiedzieć modelowi „napisz rozdział". Jakość drastycznie wzrasta, gdy Pisarz dostaje cztery pliki kontekstowe:
rules.md — meta-zasady narracyjne. Co może, czego nie może, jak pisać dialogi, jak długie mają być akapity, czego unikać — klisze, anachronizmy, anglicyzmy. Dla każdej sagi ten plik jest inny.
book.md — specyfikacja konkretnej książki: tytuł, autor, główne postacie, epoka historyczna, ton, liczba rozdziałów, kluczowe wątki fabularne.
style.md — przewodnik po stylu: tempo narracji, stosunek dialogu do opisu, charakterystyczne cechy języka poszczególnych postaci.
outline.md — zarys każdego rozdziału: co ma się wydarzyć, jakie postacie pojawiają się, jaki jest emocjonalny łuk sceny.
Bez rules.md model pisał dialogi w stylu współczesnym dla XIX-wiecznych postaci. Bez outline.md rozdziały miały losową strukturę i ginęły ważne wątki. Każdy plik eliminuje inną klasę błędów.
Od tekstu do audiobooka i... ebooka
Kiedy wszystkie rozdziały przejdą walidację — reszta dzieje się automatycznie:
- Rozdziały Markdown →
chapters.json chapters.json→ EPUB z okładką generowaną programowo dla każdego tomu- EPUB → pipeline TTS z poprzednich wpisów
Każdy tom ma unikalną kolorystykę okładki dopasowaną do nastroju danej części sagi. Tom I „Wicher od Wschodu" — głęboki granat ze złotem. Tom VI „Świt" — błękit z jasną akcentacją. Szczegół, który Babcia prawdopodobnie nigdy nie zobaczy w formie ebooka — ale zrobiłam to porządnie.
Pipeline działa bez nadzoru. Odpalam wieczorem, rano mam kolejny tom. A że ma wbudowane checkpointy — mogę przerwać w dowolnym momencie i wznowić dokładnie od miejsca, w którym skończyłam.
Dodatkowo, dostaję i ebooka i audiobooka - 2w1.
Co mówi Babcia
Słucha.
Tom I był testem, nie przyznałam się, że cała książka jest napisana przez kilku agentów, wyłącznie dla niej. Zadzwoniła i zapytała, czy jest już Tom II.
Był.
Powiedziałam jej, prawdę kto pisze jej książki. Nie widziała róznicy między Sienkiewiczem a Henrykiem ModrzAIjewskim. To był dowód, że algorytm działa.
Teraz wgrywam jej całe serie, a rodzina i przyjaciele mają zabawę w wymyślanie nowych fabuł.
Wnioski
- Jeden agent nie wystarczy. Pisarz, recenzent, podsumowujący — każdy z wyraźnie oddzielonym zadaniem robi robotę lepiej niż jeden agent próbujący robić wszystko.
- Ciągłość narracyjna wymaga inżynierii. Streszczenia rozdziałów i tomów to nie miły dodatek — to konieczność przy każdej wieloczęściowej historii.
- Walidacja przed recenzją. Pusty plik, brak nagłówka, placeholder — wyłap je strukturalnie, zanim uruchomisz droższego agenta.
- Prompt engineering to połowa sukcesu.
rules.md+book.md+style.md+outline.mdrobią ogromną różnicę w jakości tekstu.
I to otworzyło mi drogę do zbudowania własnego systemu pisania i czytania audiobooków dla Babci.



