17. 8. 2026

Coding agenti bez halucinácií: kratšie inštrukcie, grounding a kontrola výsledku

Vývojář ověřující výstup AI coding agenta proti projektu a testům

Coding agent nezačne „halucinovať“ iba preto, že je model slabý. Často mu sami vytvoríme prostredie s príliš veľkým množstvom starého kontextu, rozpornými pravidlami, nejasným zdrojom pravdy a bez povinnosti výsledok overiť.

Praktický dôsledok je nepríjemný: dlhý AGENTS.md alebo CLAUDE.md nemusí byť výhoda. Môže zvýšiť cenu každého kroku a pridať šum bez toho, aby agent dokončil viac úloh. Lepší pattern je menšia sada trvalých inštrukcií, kontext načítaný podľa potreby, grounding na skutočné dáta a kontrola hotového výsledku.

Veľké kontextové okno nie je spoľahlivá pamäť

Kontextové okno hovorí, koľko tokenov model technicky prijme. Nehovorí, že ich všetky využije rovnako dobre. Štúdia Lost in the Middle ukázala typický U-profil: modely využívali informáciu lepšie na začiatku alebo na konci kontextu a horšie uprostred. Išlo o staršie modely a konkrétne experimenty, preto z toho nemožno robiť univerzálne percento pre dnešných coding agentov. Prevádzkový záver však zostáva užitočný: viac kontextu automaticky neznamená presnejší výsledok.

Pri dlhom agentnom behu sa navyše hromadia plány, výstupy nástrojov, chyby, opravy a slepé uličky. Keď sa história kompaktuje, vzniká stratové zhrnutie. Claude Code po /compact znovu načíta projektový CLAUDE.md, no inštrukcie, ktoré existovali iba v konverzácii, sa môžu zo zhrnutia stratiť. Trvalé dohody preto nepatria iba do chatu.

AGENTS.md a CLAUDE.md sú kontext, nie firewall

Codex pred začiatkom práce skladá inštrukcie zo súborov AGENTS.md od koreňa projektu smerom k aktuálnemu adresáru. Claude Code používa CLAUDE.md; ak chcete jednu sadu pravidiel pre oba nástroje, CLAUDE.md môže importovať @AGENTS.md.

Oba mechanizmy sú užitočné, ale nie sú tvrdým vynútením. Anthropic výslovne opisuje CLAUDE.md ako kontext ovplyvňujúci správanie, nie ako bezpečnostnú konfiguráciu. Deštruktívny príkaz preto patrí do permissions, sandboxu alebo hooku. Do inštrukčného súboru patrí najmä to, čo má agent vedieť a ako má pracovať.

Dobrá trvalá inštrukcia vyzerá napríklad takto:

## Overenie zmeny

- Po zmene fakturačnej logiky spusti integračné testy pre invoices.
- Za zdroj pravdy pre sadzby DPH považuj `src/tax/rates.ts`.
- Ak údaj nemožno overiť v repozitári alebo dokumentácii, označ ho ako neoverený.

Slabšia verzia je dlhý zoznam všeobecných zákazov typu „nerob chyby“, „nevymýšľaj si“ a „vždy píš kvalitný kód“. Agent z nich nezistí, kde hľadať dôkaz ani ako overiť, že je hotovo.

Štúdia o AGENTS.md: menej istoty, vyššie náklady

Preprint Evaluating AGENTS.md skúmal repository-level context files pri SWE-bench úlohách aj v repozitároch s inštrukciami od vývojárov. Výsledok nie je argument na zrušenie AGENTS.md. Je to argument na jeho dôslednú redakciu.

Autori zistili, že context files vo všeobecnosti nezvyšovali úspešnosť dokončenia úloh a v priemere zvyšovali inference cost o viac než 20 %. Inštrukcie napísané vývojármi v niektorých nastaveniach mierne pomohli, kým automaticky generované súbory často viedli agentov k ďalšiemu prieskumu a vyššej spotrebe.

Dôležitá presnosť: údaj 20 % sa týka priemerného rastu nákladov, nie univerzálneho dvadsaťpercentného poklesu kvality.

Preto by som /init alebo iný generátor bral ako návrh na úpravu, nie ako hotovú konfiguráciu. Automatický súpis adresárov, závislostí a zrejmých príkazov agent často dokáže zistiť zo samotného projektu. V trvalom súbore majú väčšiu hodnotu výnimky, skryté väzby, netypické testovacie kroky a dôvody rozhodnutí.

Grounding: agent musí dostať cestu k dôkazu

Grounding znamená, že odpoveď nevzniká iba z pravdepodobného pokračovania textu. Agent si má siahnuť na konkrétny zdroj pravdy.

V coding workflow to môže byť:

  • prečítanie aktuálnej implementácie a databázovej schémy,
  • spustenie testu alebo typechecku,
  • otvorenie oficiálnej dokumentácie používaného API,
  • porovnanie výsledku s logom, screenshotom alebo reálnou HTTP odpoveďou,
  • uvedenie súboru, testu alebo odkazu, o ktorý sa tvrdenie opiera.

Rovnaký princíp funguje aj mimo vývoja. Agent pre faktúry má čítať účtovné pravidlá a dáta objednávky, nie tipovať sadzbu. Lead triage má používať polia z CRM a definované kritériá. Support classification má vrátiť nielen štítok, ale aj evidenciu zo správy, ktorá rozhodnutie odôvodňuje.

V n8n alebo Make by som oddelil tri kroky: načítanie relevantných dát, rozhodnutie modelu a deterministickú validáciu výstupu. Keď model vráti štruktúrovaný JSON, ďalší node môže skontrolovať povinné polia, povolené hodnoty, dátumy, súčty alebo existenciu citovaného záznamu.

Osem pravidiel pre spoľahlivejšieho coding agenta

  1. Oddeľte všeobecné znalosti od projektovej reality. Verziu API, architektúru a firemné pravidlá nechajte agenta overiť v aktuálnych zdrojoch.
  2. Udržujte trvalé inštrukcie krátke. V súbore nechajte iba informácie, ktoré agent bežne nezistí sám.
  3. Píšte pravidlá ako konkrétne akcie. „Po zmene spusti test X“ je lepšie než „nikdy nerozbi testy“.
  4. Automaticky generované inštrukcie skráťte. /init je dobrý začiatok, nie hotová pravda.
  5. Kompaktujte v prirodzenom bode. Pred skrátením histórie uložte rozhodnutia, otvorené body a dôkazy do projektu alebo task memory.
  6. Vyžadujte grounding. Agent má čítať súbor, databázu, log alebo oficiálnu dokumentáciu a uviesť, z čoho vychádzal.
  7. Dajte mu únikovú cestu. Ak informáciu nemožno overiť, správny výstup je „neoverené“, nie sebavedomý odhad.
  8. Overujte dokončený výsledok. Test, lint, render, HTTP kontrola alebo ľudské schválenie musí zodpovedať riziku zmeny.

Čo by som meral vo firme

Úspešnosť agenta neposudzujte podľa pekného vysvetlenia. Pre každé workflow sledujte dokončenú úlohu, počet opakovaní, tokeny, cenu, čas behu, zásahy človeka a typy zlyhaní.

Pri coding agentovi pridajte, či prešli cielené testy a či diff neobsahuje zmeny mimo zadania. Pri extrakcii dokumentov merajte presnosť proti kontrolnej vzorke. Pri CRM enrichment kontrolujte zdroj a vek údaja. Pri supporte sledujte chybné eskalácie, nie iba percento vyplnených štítkov.

Až A/B test ukáže, či nový AGENTS.md pomáha. Vezmite napríklad 30 reálnych úloh, spustite ich so súčasnými inštrukciami a s kratšou verziou a porovnajte úspešnosť aj cenu. Ak agent pracuje rovnako úspešne s polovičným súborom, odstránili ste kontextovú daň bez straty kvality.

Môj záver

Najspoľahlivejší agent nie je ten, ktorému pošlete najviac textu. Je to ten, ktorý dostane krátke trvalé inštrukcie, dokáže si načítať aktuálne fakty, môže priznať neistotu a musí výsledok overiť.

AGENTS.md a CLAUDE.md majú veľkú hodnotu ako mapa neobvyklých pravidiel projektu. Keď sa z nich stane automaticky generovaná encyklopédia repozitára, platíte za ďalšie tokeny a pridávate šum. Pre firmy je preto údržba agentného kontextu rovnaká prevádzková disciplína ako testy, logovanie alebo permissions.

Zdroje: Jirka Herník: Halucinuje vám AI? Mě ne!, OpenAI Docs: Custom instructions with AGENTS.md, Claude Code Docs: How Claude remembers your project, Gloaguen et al.: Evaluating AGENTS.md a Liu et al.: Lost in the Middle.