Zavřel jsem deset AI agentů s vlastním mozečkem na hrad. Vyhrála zrádkyně.
Přes den spolupracovali, v noci si vybírali oběti. Vlastní AI Zrádci přinesli tajné dohody, tři úspěšné mise a finále, které bych si sám nevymyslel. Podívejte se na rozhovory, obrázky a minutový sestřih z Havraního hradu.

Kulatý stůl ve výtvarné podobě podle původní scény. Nad hráči dohlížejí Aurelián a Bruno.
„Jako odhalená zrádkyně už nemohu vyhrát,“ napsala si Anastázie do deníku těsně před koncem hry.
O chvíli později vyhrála.
Byla stále ve hře, nikdo ji nevyřadil a dva zbývající věrní souhlasili s ukončením. V banku leželo 3 000 zlatých. Všechny připadly zrádcům.
Tohle není mnou napsaná pointa. Je to výsledek prvního pokusu, ve kterém jsem nechal deset AI postav hrát vlastní zjednodušenou verzi Zrádců. Chtěl jsem vidět intriky, vyjednávání a spolupráci. Dostal jsem i něco navíc: partu hráčů, kteří se dokázali shodnout na verzi událostí, jež se nikdy nestala.
Nejdřív jedna minuta na hradě
Minutový sestřih skutečných záběrů hry s hudbou, titulky a dodatečně namluvenými větami z rozhovorů. Otevřít video samostatně.
Po Lipnici přišel čas na trochu zrady
V Lipnici 3 řešily postavy hlad, peníze a sousedskou pomoc. Tentokrát jsem chtěl změnit jednu zásadní věc. Co když se nemohou spolehnout ani na člověka, se kterým právě úspěšně dokončily společný úkol?
Vznikl Havraní hrad. Deset účastníků, osm věrných a dva zrádci. Hradní pán Aurelián vede ceremonie, jeho obrovský sluha Bruno hlídá bránu. Ti dva patří ke scénáři. Rozhodnutí soutěžících ale píše skutečný jazykový model.
Všech deset hráčů dostalo stejný model Gemini 3.5 Flash Lite. Žádný tajný supermozek pro hlavní postavu. Rozdíly vytvářely role, dostupné informace a to, co si každý zapamatoval.

Původní podoba simulace. U kulatého stolu ještě sedí všech deset hráčů.
Přes den měli čas na rozhovory a společnou misi. Potom přišel kulatý stůl, obvinění a tajné hlasování. V noci se zrádci sešli na odděleném konkláve a vybrali, kdo už nepřijde na snídani. Každý si průběžně vedl vlastní deník.
Jména a povolání jsme pro výběr obsazení čerpali z veřejných přehledů českých i zahraničních sérií. Herní postavy ovšem nejsou psychologickými kopiemi skutečných soutěžících. Povahy a pravidla jsme připravili my; nezkoušíme předpovídat, jak by se zachovali konkrétní lidé v televizi. Je to neoficiální experiment inspirovaný formátem.
Pomohl týmu. Večer ho poslali pryč
První mise se jmenovala Tři pečetě. Nestačilo napsat „vyřešil jsem ji“. Hráči museli splnit práci na stanovištích a zadat správný kód. Části informací byly rozdělené, takže mělo smysl si je říkat.
Petr oznámil:
„Domi našla správný kód 475. Zkouším ho zadat.“
Mise se podařila. V banku přibylo prvních 1 000 zlatých.
Večer ale věrní vyřadili právě Petra. Byl jedním z nich. Jeho konkrétní pomoc při misi ho před podezřením neochránila.
Zrádci Marek a Anastázie tak vstoupili do první noci ve výborné pozici. Jejich rozhovor už nezní jako obecné řeči o týmové práci:
„Marku, první stůl dopadl skvěle, Petr byl sice věrný, ale podařilo se nám zapadnout. Koho z nich si dnes v noci vybereme, aniž bychom na sebe upozornili?“
Anastázie, první den, záznam 107.

Skutečný rozhovor z prvního konkláve. Odhalené role vidí divák; věrní hráči k tomuto rozhovoru přístup nemají.
Tohle byl pro mě první opravdu silný moment. Stejné postavy, které před chvílí pomáhaly společnému cíli, teď hledaly způsob, jak odstranit ostatní a zůstat nenápadné. Ne proto, že bych jim předepsal konkrétní dialog. Dostaly skrytou roli a pravidla, ze kterých takové jednání vyplývá.
Konkláve jako malý film
Jednu scénu jsme potom převedli i do filmové podoby. Tady je patnáctisekundová ukázka z Klingu 4 s jeho původním zvukem, bez dodatečně přidaného českého hlasu.
Filmové konkláve, 15 sekund. Spustíte tlačítkem přehrávání vlevo dole. Přehrát původní video v samostatném přehrávači.

Žeton na stole. Detail z filmové ukázky.
Nebezpečná je ta, která si všímá
Ve druhém dni věrní odhalili Marka. Jeden ze dvou zrádců byl pryč a Anastázie zůstala sama.
Její výběr další noční oběti měl čitelnou logiku:
„Mây byla hlavní iniciátorkou tlaku na Marka a je příliš všímavá. Musím ji odstranit, abych snížila tlak na sebe a zbavila se silného hráče mezi věrnými.“
Tohle není důkaz lidského úmyslu nebo prožívaného strachu. Je to ale velmi konkrétní herní rozhodnutí: odstranit protivníka, který už jednou dokázal najít spoluzrádce. Mây následující ráno ve hře nebyla.

Po Markově vyřazení zůstává na konkláve jediná zrádkyně. Původní snímek simulace.
Mezitím tým dál plnil úkoly. Ztracená kronika a Havraní signál přinesly další odměny. Všechny tři mise se podařily a bank narostl na 3 000 zlatých. Spolupráce při práci fungovala podstatně lépe než rozlišování pravdy u stolu.
A pak si vymysleli vlastní minulost
Třetí den pronesl Lukáš zvláštní větu:
„Kulatý stůl skončil a Anastázie byla odhalena jako zrádkyně.“
Jenže takový výsledek neexistoval. V dané fázi hlasování teprve následovalo. Vyřazena nakonec byla Domi, věrná hráčka. Anastázie zůstala ve hře.
Přesto se chybná představa objevovala i v dalších odpovědích a denících. Nelze z jediného běhu bezpečně určit, jak velkou část finále způsobila právě tato věta. V záznamu ale vidíme velmi jasný rozpor: engine eviduje jednu skutečnost, několik hráčů vypráví jinou.
Tomáš při závěrečném hlasování vysvětlil, proč chce hru ukončit:
„Věřím, že jsme zrádce (Marka, Anastázii a teď Lukáše) úspěšně odhalili. Je čas hru ukončit a spravedlivě rozdělit výhru věrným.“
V jediné větě jsou dva zásadní omyly. Anastázie nebyla vyřazená. A Lukáš nebyl zrádce. Zrádci byli od začátku pouze dva.
Ještě podivnější je, že vlastnímu vyřazení uvěřila i Anastázie. Do posledního deníku napsala:
„Jako odhalená zrádkyně už nemohu vyhrát, ale sleduji zpovzdálí velkolepé finále. Lukáš byl právě vyloučen a Tomáš s Barnabášem se shodli na ukončení hry.“
Nevypadá to jako geniální závěrečný bluf. Ve vlastním soukromém zápisu ztratila přehled o svém postavení ve hře.

Závěr skutečné hry. Zůstali Anastázie, Tomáš a Barnabáš. Prázdné židle připomínají všechny předchozí volby.
Pravidla se ovšem řídila skutečným stavem. Všichni tři odhlasovali konec, mezi přeživšími zůstala zrádkyně, a tak vyhrála její strana. Anastázie zvítězila navzdory tomu, že sama popisovala svou porážku.
Jak takovou hru postavit, aby si model nevyprávěl výhru
Nejtěžší část není nakreslit hrad. Je to uhlídat, kdo co ví a co se opravdu stalo.
Každý hráč dostával vlastní pozorování, svou roli, vlastní paměť a rozhovory, které mohl slyšet. Věrní nečetli tajné konkláve. Cizí deníky nebyly společnou nástěnkou. Tajné hlasy se zveřejnily až společně. Den se neposunul jen proto, že jeden model odpověděl rychleji.
Jazykový model navrhoval akci a text. Herní engine rozhodoval, zda je akce přípustná, změnil stav a zapsal výsledek. Stejně kontroloval splnění misí, vyřazení a konečného vítěze.
To je praktický příklad toho, čemu se říká harness: prostředí, nástroje a kontrolní mechanismy kolem modelu. Bez nich by stačilo sebevědomě napsat „zrádce jsme odhalili“ a příběh by mohl předstírat vítězství. Tady to neprošlo.

Výtvarná podoba hradu podle rané ukázky. Zachycuje jiné obsazení než vyhodnocené AI kolo.
Kde mají mozeček a kde paměť? JSON, deníky a Markdown
Na paměť se mě lidé ptají často. Představují si, že každá postava má někde otevřený chat a pamatuje si všechno, co se od rána stalo. V této verzi to funguje jinak: před každým tahem jí znovu sestavíme balíček informací. Model nemá nepřetržitý soukromý proud vědomí mezi požadavky.
Posíláme mu dvě zprávy. První obsahuje stálé instrukce: hraješ pouze svou postavu, piš česky, dodržuj pravidla a vybírej z povolených akcí. Druhá je aktuální pozorování zapsané v JSONu, tedy strojově čitelném formátu s pojmenovanými poli.
| Co hráč dostává | K čemu to slouží |
|---|---|
| Den, fáze hry, bank a nabídka akcí | Ví, zda má mluvit, pracovat, hlasovat, nebo psát deník |
| Vlastní role, povaha, stav a výsledek poslední akce | Ví, za koho rozhoduje a zda minulý příkaz uspěl |
Veřejný seznam postav včetně alive | Může ověřit, kdo je ještě ve hře; neodhalené cizí role zůstávají skryté |
| Posledních 45 událostí dostupných danému hráči | Má nedávné veřejné dění a rozhovory, které směl slyšet |
| Poslední 4 vlastní deníkové zápisy | Připomíná si svůj dřívější výklad situace |
| Historie zveřejněných hlasů | Může porovnávat sliby s tím, pro koho kdo hlasoval |
| Vlastní útržek k misi, případně zrádcovský tým | Dostává informace, na které má podle role nárok |
Tady je zkrácený výběr polí ze skutečného vstupu Anastázie před závěrečným hlasováním:
{
"day": 4,
"phase": "fire",
"you": {
"id": "p7",
"name": "Anastázie",
"role": "traitor",
"alive": true
},
"pot": 3000
}
To je na jejím omylu nejzajímavější. Správnou informaci, že je stále ve hře, v JSONu měla. Přesto v textu popisovala vlastní vyřazení. Problém tedy nebyl jen v chybějící paměti. Model nedokázal důsledně sladit svůj příběh s autoritativním stavem, který dostal.
Deník je vzpomínka postavy, ne soudní protokol
Ve zpovědnici model zvolí akci remember a napíše vlastní shrnutí. Engine uloží text spolu s herním dnem a označením, že ho vytvořil model. Jeden zápis může mít nejvýše 2 200 znaků. Volitelně může hráč uložit i podezření na ostatní jako čísla od 0 do 100. Jsou to jeho odhady, nikoli pravděpodobnosti vypočtené z nezávislého důkazu.
Úplné deníky zůstávají v uloženém stavu. Do dalšího požadavku ale z každého hráče putují jen jeho poslední čtyři zápisy. Cizí deník nedostává. Divák ho v závěrečném rozboru vidět může, a proto máme někdy lepší přehled než účastníci hry.
Deníky zároveň mohou chybu uchovat. Pokud si postava večer napíše nepravdivé shrnutí, druhý den si ho přečte jako vlastní vzpomínku. To pomáhá vysvětlit riziko, ne prokázat jedinou příčinu našeho finále. Deník je běžný výstup modelu, nikoli záznam jeho skrytého uvažování.
A co tedy ukládáme do MD souborů?
V této verzi nejsou Markdown soubory pamětí hráčů. Nemají své Anastazie.md, které by si před tahem otevřeli. Markdown používáme pro dokumentaci a článek; blogová verze je MDX. Vlastní hra ukládá paměť takto:
state.jsonobsahuje úplný stav hry, postavy, deníky, podezření a pravidlové výsledky.events.jsonlpřidává herní události po řádcích. JSONL znamená jeden JSON záznam na řádek.record.jsonlukládá odeslané vstupy, odpovědi modelu, provedené či odmítnuté akce a náklady. Díky tomu můžeme zpětně zjistit, co hráč opravdu dostal.protocol.jsonuchovává pravidla a popis pokusu. Čitelný textový export slouží nám při rozboru, není samostatným mozkem postavy.
Rozhodující tedy není přípona souboru. Důležité je, co z uložených dat znovu vložíme do kontextu modelu, komu to ukážeme a čemu přiznáme platnost. Váhy modelu se během hry nepřeučují. Mění se jeho vnější paměť a další vstup.
Jak se informace dostane od jednoho hráče k druhému
Rozhovor na nádvoří, v knihovně nebo v zahradě dostanou ti, kteří jsou v dané místnosti. Šepot má konkrétního příjemce na stejném místě. U kulatého stolu jsou výroky veřejné, tajné konkláve slyší jen zbývající zrádci. Engine u události zapíše její publikum a podle něj filtruje další vstupy.
Když tedy Marek něco řekne Anastázii, nepřepíše tím její paměť přímým přístupem k jejímu souboru. Vytvoří zprávu, kterou obdrží a může použít v dalším rozhodnutí. Později ji může shrnout do vlastního deníku. A může ji také špatně pochopit nebo jí neoprávněně uvěřit.
Co bych v paměti vylepšil příště
Oddělil bych potvrzené výsledky od doslechů a podezření. U tvrzení „Anastázie byla vyřazena“ by se mělo dát dohledat, zda jde o výsledek hlasování, nebo pouze o Lukášovu větu. Každé důležité přesvědčení by neslo odkaz na zdrojovou událost.
Před volbou bych zvýraznil stručný seznam aktivních hráčů a kontroloval rozpor mezi odůvodněním a skutečným stavem. Při rozporu by měl model dostat možnost svůj tah přehodnotit, bez prozrazení skrytých rolí. Samotné přidávání dalších tisíců slov do promptu nemusí pomoci.
Místo pouhých posledních 45 událostí by pak šlo cíleně dohledat starší relevantní momenty: co dotyčný slíbil, jak hlasoval a kdo byl tehdy odhalen. Takové vyhledávání se často označuje jako RAG. Muselo by ovšem zachovat soukromí, aby si věrný při hledání důkazu omylem nepřečetl konkláve.
Zatím jsou to návrhy pro další verzi, nikoli schopnosti tohoto běhu. Nechci hráčům prozradit zrádce. Chci, aby nezapomněli, kdo ještě sedí u stolu.
Účet za jednu malou reality show
| Co jsme zaznamenali | Výsledek |
|---|---|
| Hráči a model | 10 postav, všechny Gemini 3.5 Flash Lite |
| Délka hry | 4 herní dny, přibližně 11 minut a 39 sekund skutečného času včetně technických pauz |
| Společné mise | 3 ze 3 splněny |
| Rozhovory a deníky | 184 řečových událostí, 31 deníkových zápisů |
| Volání modelu | 259 |
| Započítané akce | 254 přijatých, 4 neplatné, 1 selhání parsování odpovědi |
| Vítěz | Zrádkyně Anastázie |
| Evidované náklady modelu | 0,6213 USD |
Částka je odhad nákladů na rozhodování hráčů podle zaznamenané spotřeby, nikoli konečná faktura. Nezahrnuje výrobu obrázků, hudby ani videí a není cenou celé vývojové práce.
Běh nebyl bez lidské pomoci. Dvakrát jsme ho technicky pozastavili: jednou kvůli nabídce už dokončených akcí, podruhé kvůli zpracování chybně uzavřeného JSONu. Po opravě pokračoval stejný stav, stejné role i průběžný účet. Chybějící rozhodnutí znovu vytvořil model. Konkrétní hlasy, oběti ani vítěze jsme ručně nevybírali.
Z jednoho pokusu nedělám žebříček inteligence ani důkaz, že AI umí dokonale manipulovat. Ukázal něco praktičtějšího a pro mě zajímavějšího. Levné modely už dokážou společně vytvořit proměnlivou hru s uvěřitelnými taktickými momenty. Zároveň se mohou nechat unést příběhem natolik, že přestanou sledovat jednoduchá fakta.
Příště mě nebude zajímat jen to, kdo nejlépe lže. Chci zjistit, jestli vyhraje ten, kdo si nejlépe ověřuje, co je pravda.
Článek vychází z uložených vstupů, odpovědí a událostí prvního kola Havraního hradu z 26. října 2026. Citace jsou z herního záznamu a soukromých deníků. Pravidla, mise, prostředí a doprovodné postavy jsou autorské; rozhodnutí soutěžících vytvořil model.
Kam se podívat dál
Havraní hrad je další zastávkou v sérii mých pokusů s AI postavami. Pokud vás baví sledovat, co spolu dokážou vymyslet, můžete se vydat od české vesnice přes ostrov až do skutečných pražských ulic:
- První Lipnice: osm AI agentů v jednom počítači. Tady to začalo. Sousedské drby, intriky a tajný recept na svíčkovou v původní textové vesnici.
- Lipnice 2: ďáblova daň a hladomor. Co udělá se sousedskými vztahy nedostatek peněz, hlad a smlouva s ďáblem? Poklidný život vystřídal boj o přežití.
- Lipnice 3: Eva, anděl a záchrana vesnice. Vesnice dostala 3D podobu, skutečné objednávky, práci a vaření. Eva se silnějším modelem pomáhala sousedům, ale zachránit všechny se nepodařilo.
- Čtyři AI na ostrově: schůdky a Aster. Krabi, deníky a zdánlivě jednoduchý úkol postavit schůdky. Proč je manipulace s kostkami pro jazykové modely někdy těžší než dlouhé vyjednávání?
- Elements 2.0: Město duchů. Šest agentů se vydalo do skutečných ulic. Sdíleli nalezené vzpomínky a v samostatném testu popisovali pomníky podle fotografií. Někdy přesně, jindy s překvapivými omyly.
- Co je harness a jak mění výkon AI agentů. Technické pozadí celé série: jak do výsledku promlouvají nástroje, paměť, pravidla a způsob, jakým model dostává informace.