runtime
This commit is contained in:
43
projects/ai/artifacts/agent-to-human-tools.md
Normal file
43
projects/ai/artifacts/agent-to-human-tools.md
Normal file
@@ -0,0 +1,43 @@
|
||||
# Převod agent-nástrojů na nástroje pro člověka
|
||||
|
||||
Ověřený postup. Když AI agent napsal nástroj (runbook, skripty) původně
|
||||
**pro sebe**, nejde ho přímočaře zjednodušit pro lidské použití.
|
||||
|
||||
## Proč opačný postup nefunguje
|
||||
|
||||
- Model nevidí hranici, kde končí pro člověka použitelná složitost —
|
||||
„zjednoduš to" produkuje kosmetické úpravy, ne redesign.
|
||||
- Existující podoba psaná pro agenta (hromada parametrů, dlouhé runbooky)
|
||||
model **ukotvuje** — upravuje, co vidí, místo aby navrhl jiné rozhraní.
|
||||
- Plan mode u designu rozhraní nestačí: plánuje implementaci, ne podobu
|
||||
rozhraní. Tu musí určit člověk.
|
||||
|
||||
## Princip
|
||||
|
||||
**Rozhraní navrhuje člověk, model implementuje.** LLM je nejsilnější v
|
||||
dokódování těla funkce se zadaným podpisem — přebírání designu je jeho slabá
|
||||
stránka.
|
||||
|
||||
## Postup
|
||||
|
||||
1. **Existující agent-runbook ani skripty nepoužívat jako základ** — jen jako
|
||||
zdroj doménových faktů (co nástroj umí, jaké scénáře existují, jak se čeká
|
||||
na konec testu). Strukturu ne. Začít v čistém adresáři.
|
||||
2. **Tabulka scénář → příkaz** — člověk ručně napíše, co kdy spouští.
|
||||
To je celý human-runbook; žádný postup kroků.
|
||||
3. **Kostry skriptů píše člověk** — param block, komentáře po sekcích,
|
||||
protokol čekání na dokončení (např. čekat na exit procesu, žádný polling).
|
||||
Složitost je tím rozhodnutá předem.
|
||||
4. **Model jen dokódovává těla** — zadání: „dokóduj těla, parametry
|
||||
a strukturu neměň, nic nepřidávej.“ Review pak kontroluje jen implementaci,
|
||||
ne design.
|
||||
|
||||
## Pravidla pro zadání
|
||||
|
||||
- Složitost zadávat **čísly, ne adjektivy**: max počet parametrů na skript,
|
||||
max počet kroků, jeden skript = jeden scénář. Model na numerické limity
|
||||
reaguje spolehlivě; na „simple" ne.
|
||||
- Negativní omezení („žádné extra parametry") prosadit **v kódu kostry,
|
||||
ne v promptu** — když param block má 3 parametry, model 15 nedoplní.
|
||||
- Agent-runbook pro sebe si nechat vedle — převod „agent-runbook →
|
||||
human-runbook" je cesta, kde se to pořád láme. Nejsou to stejný dokument.
|
||||
54
projects/ai/artifacts/file-based-agent-communication.md
Normal file
54
projects/ai/artifacts/file-based-agent-communication.md
Normal file
@@ -0,0 +1,54 @@
|
||||
# Anotace v souborech místo chatu („mob with AI")
|
||||
|
||||
Zdroj: článek „Don't Chat With Your AI. Mob With It." (David Rodenas, Medium,
|
||||
2026). Článek sám je slabý — argument o latenci (GPU sloty, uvolňování/
|
||||
načítání inference) je nedoložený a nesedí; reálná latence je round-trip
|
||||
klient↔server, sériovost kroků a opakovaný prefill. Analogie s mob
|
||||
programmingem taky ne — v mobu píše jeden driver a víc lidí řídí, tady je to
|
||||
obráceně. Jádro je ale použitelné.
|
||||
|
||||
## Co drží (jádro oddělené od balastu)
|
||||
|
||||
- **Instrukce patří tam, kde je předmět instrukce.** Tag na konkrétním řádku
|
||||
dá kontext pozicí — agent nepotřebuje popis „v tom souboru, u té funkce".
|
||||
Stejný princip jako TODO komentář / poznámka v code review.
|
||||
- **Trvalost:** anotace nesedí v chatu, který se zavře — je v souboru, vidět
|
||||
v diffu, přežije session.
|
||||
- Není to o latenci ani paralelizaci. „Zrychlení" je ve skutečnosti **fronta**:
|
||||
zadám a nejdu čekat. Round-trip se nezkrátil, jen u něj nestojím.
|
||||
- Článek si protiřečí vlastním východiskem (DORA/TDD = rychlý feedback):
|
||||
hromadné zadání a společný review na konci **prodlouží feedback loop pro
|
||||
člověka**, ne pro agenta. „Hotovo dřív, než si všimnu" je z tohoto pohledu
|
||||
špatná zpráva, ne dobrá.
|
||||
|
||||
## Mechanismus
|
||||
|
||||
Komunikace přes tagy přímo v souborech (autor: `[[CLAUDE: …]]` instrukce,
|
||||
`[[DAVID: …]]` dotaz agenta). Pravidlo v CLAUDE.md: agent tagy hledá, provádí,
|
||||
odpovídá. Autor tag po provedení maže — to je chyba.
|
||||
|
||||
## Úpravy oproti článku
|
||||
|
||||
- **Tag nemaže, jen připisuje odpověď pod něj** — vlákno zůstane v souboru
|
||||
a v diffu; mazání je jen člověk, před commitem (grep na prefix).
|
||||
- **Nespouštět agenta ve smyčce nad soubory** (autonomní reakce = ztráta
|
||||
kontrolního bodu). Místo toho explicitní příkaz „projdi tagy a vyjádři se".
|
||||
- **Max 1–2 tagy na kolo.** Deset tagů = deset změn ke společnému review =
|
||||
nejasné, co odkud přišlo.
|
||||
|
||||
## Varianty kam dát vlákno
|
||||
|
||||
1. **Anotace jako komentáře v kódu** — nulová infrastruktura, funguje všude,
|
||||
diff ukáže celou historii výměny. Nevýhoda: zaneřádí kód, hlídání ručně.
|
||||
Dobré na krátké výměny u konkrétního místa.
|
||||
2. **Vedlejší soubor** (`file.notes.md` vedle zdrojáku, odkaz na symbol,
|
||||
ne na číslo řádku) — kód čistý, vlákna libovolně dlouhá, .gitignore.
|
||||
Dobré na dlouho se vlečoucí věci.
|
||||
|
||||
## Otevřené otázky
|
||||
|
||||
- Korekce agentových odpovědí („odpověď chci přepsat") — chat to řeší tím,
|
||||
že je mimo kód; anotace v souboru to nemají kde. Varianta 1 to řeší
|
||||
nejlíp (přepis = nová verze vlákna na místě), ale je potřeba vyzkoušet.
|
||||
- Vazba na symboly místo řádků u varianty 2 — jinak se odkazy rozbijí
|
||||
při každém editu.
|
||||
Reference in New Issue
Block a user