Lekce 03.1: Úvod do CLI harnessů: Antigravity & Claude Code (Intro to CLI Harnesses)
🧠 Mentální model & teoretický rozbor
Trh s AI kódovacími asistenty se dělí na dvě fundamentálně odlišné kategorie:
┌─────────────────────────────────────────────────────────────────────────┐│ 1. GRAFICKÉ DOPLŇKY DO IDE (Inline Copiloti a Chat panely) ││ Filozofie: "Sedím v editoru a našeptávám řádky." ││ Omezení: Pasivní přístup, vývojář musí manuálně potvrzovat změny, ││ spouštět testy a přepínat mezi okny. │├─────────────────────────────────────────────────────────────────────────┤│ 2. AGENTICKÉ TERMINÁLOVÉ HARNESSY (Antigravity CLI & Claude Code) ││ Filozofie: "Jsem autonomní inženýr pracující přímo ve vašem shellu." ││ Síla: Má přímý přístup k nástrojům systému (Unix utility, Git, ││ kompilátory, test runnery, Docker). Může sám provést editaci, sám ││ spustit test, diagnostikovat pád a samostatně chybu opravit. │└─────────────────────────────────────────────────────────────────────────┘Moderní CLI harnessy (Google Antigravity agy a Claude Code claude) jsou navrženy podle Unixové filozofie:
- Pracují s textovými proudy (stdin / stdout).
- Lze je řetězit s běžnými nástroji (
grep,jq,git,find). - Běží v prostředí, kde vzniká produkční software – v příkazové řádce vašeho projektu.
🏢 Realistický scénář z praxe
Vývojář potřebuje hromadně zmigrovat 40 React komponent ze starých Class komponent na funkcionální komponenty s hooky:
- V grafickém editoru: Musel by otevřít každý soubor, vyvolat chat, zkopírovat kód, vložit ho, uložit a spustit linter (práce na celé odpoledne).
- V CLI harnessu (
agyneboclaude): Zadá strukturovanou úlohu. Agent v terminálové smyčce sám otevře komponentu, provede refaktor, spustí testy pro danou komponentu (pnpm vitest run <komponenta>), a pokud projdou, commitne změnu a pokračuje na další.
💻 Konkrétní ukázky kódu & promptů
A) Spuštění Google Antigravity CLI (agy):
# Přechod do kořene projektucd ~/projects/ecommerce-api
# Spuštění interaktivního agentaagyB) Spuštění Anthropic Claude Code (claude):
# Spuštění interaktivního sezení Claude Codeclaude
# Jednorázové spuštění úkolu přímo z bash skriptu bez interaktivního chatuclaude -p "Zkontroluj všechny package.json a vypiš balíčky závislé na react verze 17"⚠️ Analýza selhání & Anti-patterns
Chyba: Používání CLI harnessu jako pouhého vyhledávače informací
Někteří vývojáři používají CLI harness na otázky typu: „Co je to polymorfismus v TypeScriptu?“
- Tím zbytečně pálí tokeny lokálního kontextu a riskují znečištění výchozího stavu sezení.
- Pravidlo: Obecné teoretické dotazy řešte ve webovém rozhraní (Google AI Studio / Claude.ai). Do CLI harnessu posílejte konkrétní inženýrské úkoly nad reálným kódem vašeho repozitáře.
🛠️ Inženýrský postup krok za krokem (Playbook)
- Mějte nainstalovaný harness (Antigravity nebo Claude Code) a ověřte funkčnost (
agy --versionneboclaude --version). - Spouštějte ho VŽDY v kořenovém adresáři konkrétního Git repozitáře.
- Po spuštění ověřte, že harness správně detekoval váš projektový stack a instrukce (
AGENTS.md/GEMINI.md/CLAUDE.md).
🧪 Praktické cvičení (Hands-on Lab)
Úkol:
Ověřte si základní spuštění a detekci prostředí v CLI harnessu.
Kroky:
- Otevřete terminál ve svém webovém projektu.
- Spusťte
agy(neboclaude). - Zeptejte se:
V jakém adresáři se právě nacházíš a jaké nástroje máš k dispozici pro práci s kódem a spouštění testů?
- Prozkoumejte odpověď – všimněte si, jak harness popíše své vestavěné nástroje (čtení souborů, zápis, spouštění příkazů v shellu).