Lekce 04.5: Dovednost /teach (The /teach Skill)
🧠 Mentální model & teoretický rozbor
Jak poznáte, že agent skutečně porozuměl vašemu repozitáři a pouze mechanicky nehalucinuje náhodný kód? Matt Pocock v kurzu představuje techniku Obráceného mentora (The /teach Skill):
TRADIČNÍ PŘÍSTUP:Vývojář se ptá ──> Model generuje kód ──> Vývojář doufá, že to model pochopil správně
METODA /TEACH:Vývojář vyzve model: "Vysvětli mi architekturu a vyzkoušej mě!" │ ▼Model zanalyzuje kód a položí vývojáři 3 záludné kontrolní otázky │ ▼Vývojář odpoví ➔ Odhalí se okamžitě, zda model i člověk vidí systém stejně!Tato technika funguje jako obousměrná kalibrace mentálního modelu před zahájením rizikových úprav.
🏢 Realistický scénář z praxe
Tým potřebuje upravit způsob, jakým aplikace počítá provize prodejců:
- Vývojář před implementací zadá příkaz
/teachnad provizním modulem. - Model modul prozkoumá a napíše:
„Provize se počítá v
calculateCommission.ts. Mám pro tebe kontrolní otázku: Co se stane s DPH, když je prodejce plátcem v jiném státě EU? Podle řádku 56 se provize počítá z částky bez DPH, ale pro neplátce z částky s DPH. Je to záměr?“ - Vývojář je ohromen: narazil na skrytý edge-case ještě dříve, než sáhl do kódu!
💻 Konkrétní ukázky kódu & promptů
Implementace dovednosti teach (.agents/skills/teach/SKILL.md nebo .claude/skills/teach/SKILL.md):
Oba moderní harnessy (Antigravity i Claude Code) podporují standardizovaný formát dovedností s YAML hlavičkou. V Antigravity se projektové skills umisťují do .agents/skills/<nazev>/SKILL.md (případně globálně v ~/.gemini/config/skills/), zatímco v Claude Code do .claude/skills/<nazev>/SKILL.md:
---name: teachdescription: Režim mentora - agent prozkoumá modul a vysvětlí jeho architekturu s kontrolními otázkami pro vývojáře---
# Instrukce pro dovednost /teach
Kdykoliv uživatel vyvolá dovednost `/teach <cesta_k_modulu>`:1. Prozkoumej zadaný adresář nebo soubor pomocí čtecích nástrojů.2. Sepiš strukturované vysvětlení architektury: - Jaká je hlavní zodpovědnost tohoto modulu? - Jaké jsou vstupní a výstupní datové toky (včetně TypeScript typů)? - Které externí závislosti a databázové entity modul využívá?3. Zformuluj **3 záludné inženýrské otázky** týkající se hraničních stavů (chybové stavy, konkurence, datová integrita, migrace).4. Zastav se, předej slovo vývojáři a zhodnoť jeho odpovědi.[!TIP] Progresivní odkrývání (Progressive Disclosure): Všimněte si, že dokud dovednost nevyvoláte, harness drží v systémovém kontextu pouze pole
nameadescription(cca 30 tokenů). Celé tělo instrukce se do kontextu načte až ve chvíli, kdy dovednost skutečně aktivujete. Šetříte tak drahocennou Smart Zone.
⚠️ Analýza selhání & Anti-patterns
Chyba: Používání /teach uprostřed implementačního sezení
Dovednost /teach načte do kontextu poměrně velké množství vysvětlujícího textu a analýzy.
- Pravidlo: Výukový režim provozujte v separátním sezení. Jakmile architekturu a edge-cases pochopíte, zadejte
/cleara teprve poté začněte implementovat v čistém kontextu!
🛠️ Inženýrský postup krok za krokem (Playbook)
- Vytvořte soubor
.agents/skills/teach/SKILL.md(pro Antigravity) nebo.claude/skills/teach/SKILL.md(pro Claude Code). - Spusťte CLI (
agyneboclaude) a vyvolejte dovednost nad nejsložitějším modulem vašeho projektu (např./teach src/server/billing). - Zodpovězte kontrolní otázky, které vám agent položí.
- Ověřte, že agent odhalil skutečné závislosti a nehalucinuje.
- Po vyjasnění mentálního modelu proveďte
/cleara pusťte se do psaní kódu s jasným zadáním.
🧪 Praktické cvičení (Hands-on Lab)
Úkol:
Vyzkoušejte si dovednost /teach na existujícím kódu vašeho webu.
Kroky:
- Spusťte
agy(neboclaude). - Zadejte prompt:
Aktivuj dovednost /teach pro modul autentizace nebo routování (např. src/app/api/auth).Vysvětli mi jeho logiku a polož mi 2 záludné otázky na hraniční případy.
- Odpovězte na kontrolní otázky a sledujte reakci agenta.
- Zadejte
/clearpro návrat na nulový kontext před dalším úkolem.