Skip to content

Znalosti z vlákien agentov ​

Veľa uvažovania tímu sa odohrá vo vláknach agentov: kolega s Claude Code alebo Codexom zvažuje dva prístupy, narazí na úskalie, dohodne pravidlo a potom vlákno skončí. kontext distill také vlákna prečíta a to, čo ich má prežiť, premení na kandidátov znalostí. Pristanú v lokálnom inboxe a zdieľajú sa až vtedy, keď sa povýšia s commitom a prejdú review, ako všetko ostatné zachytené.

Vlákna sa čítajú z tohto počítača: každý kolega spracúva tie svoje. Surové prepisy sa nikdy nedostanú do repozitára, len záznamy, ktoré z nich vzniknú.

Z príkazového riadka ​

sh
kontext distill                       # vypíše vlákna tohto repozitára na tomto počítači
kontext distill --claude last         # najnovšie vlákno Claude Code v tomto repozitári
kontext distill --codex 01a0e6c1      # vlákno Codexu podľa id (alebo prefixu)
kontext distill --superset            # všetky vlákna aktuálneho workspace v Supersete
kontext distill --superset calm-river # workspace podľa id, názvu worktree, cesty alebo vetvy
kontext distill slack-vlakno.md       # akýkoľvek text: skopírované vlákno zo Slacku, diskusia v PR, poznámky
pbpaste | kontext distill -           # to isté zo stdin
text
Superset workspace 7c41e0d2 · Fix rounding in the cart · fix/rounding · 1 thread(s) here
Distilling 1 thread(s)…
  superset:7c41e0d2/claude:4f1c2a9b · 1 part(s), 42s · 2 entries

[decision] Round prices half-even  (libs/pricing/src/round.ts)
→ inbox:2026-09-29-round-prices-half-even

Čo sa deje:

  1. Vlákno sa prečíta do kompaktného prepisu: čo sa vývojár pýtal, čo agent odpovedal, čo upravil a spustil (→ edit src/cache.ts, → $ git commit …). Výstupy nástrojov, uvažovanie, vložené inštrukcie (AGENTS.md, prostredie, hooky), výstupy bash režimu v Claude Code (príkazy ! a to, čo vypísali) a zhrnutia kompaktácie sa vynechajú. Notifikácia prostredia, napríklad <task-notification> v Claude Code o dokončenom agentovi na pozadí, sa zmení na jeden riadok (→ Agent "…" finished: <začiatok jeho výsledku>). Cesty sa prepíšu relatívne k repozitáru, dočasné adresáre relácie agenta sa skrátia na <tmp>/ a tajné údaje sa zamaskujú.
  2. Prepis sa rozdelí na časti po zhruba 45 000 znakoch (--max-parts, predvolene 12, pri dlhšom vlákne rovnomerne rozložené) a pošle sa tvojmu LLM adaptéru, viacero naraz (--jobs).
  3. Model pomenuje rozhodnutia, konvencie, úskalia a incidenty, ktoré má tím vedieť aj neskôr, najviac --max na vlákno (5). Vidí, čo už je zapísané, takže to neopakuje. Zistenia podobné existujúcemu záznamu alebo kandidátovi v inboxe sa vyradia.
  4. Každé zistenie sa stane kandidátom v inboxe s cestami, commitmi, v ktorých ho vlákno urobilo, origin: thread a zdrojom (claude:4f1c2a9b, ukáže ho kontext inbox, pri povýšení sa zahodí).

Prejdi ich cez kontext inbox, každý povýš so zmenou, ku ktorej patrí (kontext prepare-commit --promote <id>, alebo ctx_prepare_commit z agenta), zvyšok zahoď (kontext inbox drop <id>). --dry-run zistenia len vypíše a nezachytí ich (funguje aj tam, kde kontext ešte nie je zavedený).

VoľbaPredvolene
--llminit.llmadaptér s operáciou llm (llm-codex, llm-claude, …); treba ho, keď je ich nastavených viac
--max5najviac záznamov na vlákno
--max-parts12najviac častí prepisu na vlákno
--jobs3súbežné volania modelu
--listvlákna len vypíše, nespracuje ich
--dry-runvypíše, nezachytí

Citlivé vlákna ​

Pracovné vlákna nesú to, z čoho je projekt: mená a adresy ľudí, vložené e-maily a logy, hosty, zákaznícke dáta. Namerané na skutočnom klientskom vlákne: z 52 MB prepisu sa k modelu dostane 240 KB (0,5 %), výstupy nástrojov a obsah súborov nikdy. To, čo zostane, sa ďalej maskuje:

  • tajné údaje, ako všade v kontexte: súkromný kľúč sa zamaskuje ako celý PEM blok od BEGIN po END, nie len prvý riadok;

  • e-mailové adresy; telefónne čísla s + aj národné čísla písané s oddeľovačmi (aspoň deväť číslic); IBAN; čísla kariet; adresy IPv4 aj IPv6 (127.0.0.1 a ::1 zostanú);

  • každý výskyt na riadku, nie len prvý;

  • tvoje vlastné vzory, napr. id integrácií klienta alebo mená zákazníkov, spojené so vzormi, ktoré deklaruje repozitár:

    toml
    # .git/kontext/config.toml (len tento klon) alebo ~/.config/kontext/repos/<slug>.toml
    [secrets]
    redact = ["\\bINT-\\d+\\b", "\\bAcme Corp\\b"]

Vzor, ktorý sa nedá skompilovať, zastaví distill, ctx_threads aj autopilota skôr, než sa čokoľvek odošle; kontext status ho pomenuje. Chybný vzor sa nikdy ticho nezahodí.

Čo sa nemaskuje: mená ľudí a firiem, ktorým nezodpovedá žiadny vzor, adresy ulíc, identifikátory vo voľnom texte a význam toho, čo zaznelo. Pridaj vzory pre to, čo tvoj klient považuje za citlivé, a pri pochybnosti si prompt najprv pozri cez --dry-run.

Čo prompt pošle: zamaskovanú časť prepisu, názov repozitára, zoznam už zaznamenaných záznamov (názvy a id, aby ich model neopakoval) a inštrukcie. URL remote repozitára, host ani organizácia sa neposielajú.

Model má pokyn písať pre tím (roly namiesto mien ľudí, žiadne kontakty, záznamy, prístupové údaje ani hosty) a to, čo napíše, sa znova zamaskuje. Nič sa nezdieľa, kým to neprejdeš v inboxe.

Pri repozitári klienta ešte rozhodni:

  • kam ide prepis: číta ho model LLM adaptéra. Použi poskytovateľa, ku ktorému už dáta klienta idú (pri vlákne z Claude Code --llm llm-claude), alebo ho pre repozitár zafixuj cez [init] llm = "llm-claude" v ~/.config/kontext/repos/<slug>.toml;
  • kde znalosti žijú: .ai/ v repozitári klienta je rozhodnutie klienta. Kým nesúhlasí, drž úložisko súkromne, v lokálne vylúčenom adresári (repozitáre, ktoré nevlastníš).

Z agenta ​

Prompt kontext-distill (/mcp__kontext__kontext-distill v Claude Code), alebo len prosba („vytiahni trvalé znalosti z vlákna claude:4f1c2a9b“), nechá prácu na pripojenom agentovi a jeho vlastnom modeli, bez LLM adaptéra:

  1. ctx_threads bez argumentov vypíše posledné vlákna tohto repozitára a aktuálny workspace v Supersete;
  2. ctx_threads thread="claude:4f1c2a9b" vráti prepis po častiach (part=2, … keď ohlási, že je ich viac). Číta len claude:, codex:, superset:, last a súbory pod známymi koreňmi prepisov;
  3. agent overí ctx_search a každé zistenie zapíše cez ctx_capture (so source a commits).

Superset ​

Superset spúšťa agentov vo workspaces (vo worktree alebo v adresári session) a každému dá id ($SUPERSET_WORKSPACE_ID v jeho termináloch). kontext číta vlastné záznamy Supersetu (~/.superset/host/<organizácia>/host.db, príkazom sqlite3): cestu a vetvu workspace a sedenia agentov, ktoré jeho terminály spustili. Ich prepisy nájde vo všetkých účtoch Claude Code (~/.claude, ~/.claude-*, $CLAUDE_CONFIG_DIR) a v sedeniach Codexu ($CODEX_HOME, ~/.codex), plus každé vlákno spustené v adresári workspace.

  • Samotné --superset znamená workspace terminálu, v ktorom si; názov môže byť adresár worktree (calm-river), cesta, vetva alebo prefix id.
  • Superset viaže agentov na terminály, nie na adresáre: vlákno, ktoré niektorý z jeho terminálov spustil v inom repozitári, sa preskočí („ran outside this repository“). Spracuj ho z toho repozitára.
  • Behy, ktoré si prepis nenechávajú (napríklad codex exec --ephemeral), sa zarátajú ako „without a transcript“.

Odkiaľ prepisy pochádzajú ​

AgentSúbory
Claude Code<config>/projects/<cesta ako slug>/<session>.jsonl pre každý konfiguračný adresár
Codex<CODEX_HOME>/sessions/RRRR/MM/DD/rollout-<čas>-<id>.jsonl a archived_sessions/
čokoľvek inésúbor alebo stdin, čítaný ako obyčajný text

Vydané pod licenciou MIT alebo Apache-2.0.