Řízení dlouhých agentních workflow pomocí živého kontextu

Analyzováno: 1 dokument / 942 slov

Executive Summary

  • Progressive Context Shaping pracuje s kontextem jako s průběžně upravovaným systémem, ne jako s jednorázovým promptem na začátku běhu.
  • Pro dlouhotrvající práci je vhodné oddělit stabilní pravidla, aktuální stav projektu, mapu zdrojů a historii. Každá část má jinou funkci a nemá soutěžit o stejný prostor v kontextu.
  • Zvětšení kontextového okna samo nevyřeší zastaralé instrukce, ztracený plán ani opakované smyčky. Rozhodující je viditelnost a aktualita aktivních direktiv.

Core Knowledge

Progressive Context Shaping znamená aktivní správu kontextu v průběhu workflow. Počáteční instrukce nejsou neměnné: s novými zjištěními, závislostmi a změnami požadavků se aktualizují tak, aby agent sledoval aktuální cíl.

Statický, rozsáhlý instrukční manuál může zahltit kontext a vytlačit aktivní úkoly i relevantní dokumentaci. Zdroj proto popisuje přechod od manuálu k dynamické mapě. Ta je kompaktní a odkazuje na aktuální plány, návrhy, architekturu, rozhodnutí a hodnocení kvality. Agent načítá konkrétní zdroje podle potřeby místo toho, aby vše dostával v jednom bloku. U OpenAI zdroj uvádí nahrazení přibližně 1 000 řádků statických instrukcí zhruba 100řádkovou dynamickou mapou.

Kontext je vhodné rozdělit do čtyř vrstev:

  1. Stabilní instrukce: dlouhodobá pravidla, protokoly, standardy a hranice schvalování. Zdroj uvádí soubory CLAUDE.md nebo AGENTS.md.
  2. Aktuální projektový stav: živý plán, checkpointy, otevřené otázky, omezení a stop podmínky. Zdroj pro tuto roli uvádí CURRENT.md.
  3. Mapa zdrojů: navigační vrstva k návrhovým dokumentům, výzkumu a repozitářům. Uvedenou šablonou je CONTEXT-MAP.md.
  4. Historie: append-only záznam rozhodnutí, pull requestů a dřívějších kroků pro lidské review. Zdroj uvádí například DECISIONS.md.

Historie má zachovat dohledatelnost, nemá však nahrazovat živé instrukce. Pokud se promíchá s aktuálním plánem a stabilními pravidly, historický šum může agenta odvádět od nynějšího úkolu.

Pro předávání práce mezi samostatnými sezeními slouží persistentní progress file. Obsahuje aktuální stav, dokončenou práci, známá omezení a neúspěšné postupy včetně důvodů selhání. Nové sezení pak nenavazuje jen na útržky historie, ale na přenositelnou pracovní paměť. Zdroj tento přístup spojuje s používáním aktuálního stavového souboru mezi samostatnými Claude sessions.

Aktuální plán musí zůstat výrazně viditelný i po mnoha voláních nástrojů a mezivýstupech. Popsané řešení spočívá v uložení plánu na disk a jeho vložení před historii při každém dalším volání. Zdroj jej uvádí jako postup Arize, který tím omezil opakované přepisování to-do listu.

Workflow pro dlouhý běh:

  1. Začni jasným počátečním zadáním.
  2. Veď živý stav a plán v samostatném souboru.
  3. Při změně podmínek aktualizuj stav i aktivní instrukce.
  4. Odkazuj agenta na potřebné materiály přes kompaktní mapu.
  5. Historické logy ukládej odděleně od prostoru pro aktuální řízení.

Při rozdělení rolí zůstávají lidé hlavními vlastníky plánovacích rozhodnutí: určují cíle, požadavky a stop podmínky. Agent provádí konkrétní exekuční rozhodnutí, například příkazy, úpravy kódu a zápisy. Zdroj uvádí orientačně přibližně 70 % plánovacích rozhodnutí na straně lidí a přibližně 80 % exekučních rozhodnutí na straně agentů.

Mezi popsané anti-patterny patří vkládání tisíců řádků statických instrukcí do každého běhu, spoléhání na větší kontextové okno, neviditelný aktuální plán, pokračování v neproduktivní retry smyčce a míchání historie s živými instrukcemi.

Decision Rules

  • Pokud dlouhý instrukční manuál vytlačuje aktivní úkoly nebo dokumentaci z kontextu, pak jej nahraď kompaktní mapou odkazující na aktuální modulární soubory.
  • Pokud se objeví nové závislosti, zjištění nebo změněné požadavky, pak aktualizuj živé instrukce a aktuální stav projektu.
  • Pokud nové agentní sezení přebírá rozpracovanou dlouhotrvající práci, pak nejprve načti persistentní progress file se stavem, omezeními a neúspěšnými cestami.
  • Pokud agent opakuje neproduktivní smyčku nebo sleduje již nevhodný cíl, pak běh zastav, zapiš checkpoint, explicitně zakaž smyčku a stanov užší aktuální cíl.
  • Pokud potřebuješ zachovat dohledatelnost bez zahlcení aktivního kontextu, pak historii drž jako samostatný append-only záznam určený pro review.
  • Pokud výstupy nástrojů a historie překryjí aktivní plán, pak ukládej plán na disk a vkládej jej před historii každého dalšího volání.

Quality Criteria

Checklist

  • Aktuální stav, otevřené otázky, další checkpointy a stop podmínky jsou oddělené od stabilních pravidel.
  • Agent získává přístup k aktuálním relevantním dokumentům přes mapu zdrojů, nikoli přes jeden přetížený prompt.
  • Handoff mezi sezeními zachovává dokončenou práci, omezení i důvody dříve neúspěšných postupů.
  • Historie je dostupná pro lidské review, ale nezasahuje do prostoru živých instrukcí.
  • Workflow má mechanismus, kterým lze při změně podmínek upravit cíl a aktivní instrukce.
  • Aktuální plán je pro model nadále viditelný i po opakovaných voláních nástrojů.

Red flags

  • Tisíce řádků statických instrukcí se zastaralými pravidly.
  • Agent si opakovaně přepisuje plán nebo se vrací ke stejné neproduktivní smyčce.
  • Nové sezení neví, co bylo dokončeno, co selhalo a z jakého důvodu.
  • Historie, živý plán a dlouhodobá pravidla jsou sloučeny v jediném kontextu.

Benchmarky

  • Funkční workflow má uložený aktuální plán, pravidelně jej zviditelňuje, upravuje jej podle stavu a používá mapu zdrojů.
  • Nefunkční workflow pokračuje podle původních instrukcí i tehdy, když se cíl změnil nebo se opakuje známá chyba.
  • Po detekci smyčky funkční workflow zaznamená stav, zakáže pokračování smyčky a zúží práci na prioritní podúkol.
  • Nefunkční workflow pokračuje v neomezeném testování nebo retry chování bez užitečného pokroku.

Edge Cases

  • Instrukce užitečné na začátku mohou být v pozdější fázi kontraproduktivní. Statické zadání nereaguje na změnu fáze projektu; workaroundem je aktualizace CURRENT.md, cíle nebo stop podmínky.
  • Větší kontextové okno nemusí zabránit následování zastaralých instrukcí. Kapacita sama neřeší směrování, proto je nutné průběžně aktualizovat a zdůrazňovat aktuální direktivy.
  • Novější a schopnější model nemusí vyžadovat velmi fragmentované sprinty. Zdroj uvádí možnost odstranit složité sprintové členění, ale zachovat strukturovaný handoff proces.

Metadata