Přeskočit na obsah

Lekce 03.1: Úvod do CLI harnessů: Antigravity & Claude Code (Intro to CLI Harnesses)

⏱️ 3 min čtení Lekce 03.1

🧠 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 (agy nebo claude): 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):

Terminál
# Přechod do kořene projektu
cd ~/projects/ecommerce-api
# Spuštění interaktivního agenta
agy

B) Spuštění Anthropic Claude Code (claude):

Terminál
# Spuštění interaktivního sezení Claude Code
claude
# Jednorázové spuštění úkolu přímo z bash skriptu bez interaktivního chatu
claude -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)

  1. Mějte nainstalovaný harness (Antigravity nebo Claude Code) a ověřte funkčnost (agy --version nebo claude --version).
  2. Spouštějte ho VŽDY v kořenovém adresáři konkrétního Git repozitáře.
  3. 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:

  1. Otevřete terminál ve svém webovém projektu.
  2. Spusťte agy (nebo claude).
  3. 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ů?
  4. 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).