Menu
Přihlásit
Domů / Obsah / Claude Code / Jak použít Claude Code hooks p...
Claude Code 13.07.2026 Tutorial

Jak použít Claude Code hooks pro automatizaci workflow v roce 2026

Claude Code hooks ti umožní automatizovat opakující se úkoly přímo v terminálu. Nauč se je nastavit a zrychli svůj vývojářský workflow.

Kompletní návod

Jak použít Claude Code hooks pro automatizaci workflow v roce 2026

Představ si, že pokaždé, když Claude Code dokončí úkol, automaticky se spustí formátování kódu, vytvoří se commit nebo odešle notifikace do Slacku. Bez tvého zásahu. To není sci-fi — to jsou Claude Code hooks, událostmi řízená automatizace přímo v terminálu. V tomto návodu si ukážeme, jak použít Claude Code hooks k tomu, abys ušetřil hodiny práce týdně a zároveň udržel svůj workflow bezpečný.

Co jsou Claude Code hooks a proč je potřebuješ

Claude Code hooks jsou skripty nebo příkazy, které se spouštějí v reakci na konkrétní události během seance s Claude. Můžeš je přirovnat k Git hooks — malé automatizace, které se spustí ve správný okamžik.

Podporované události zahrnují:

  • PreToolUse — spustí se před tím, než Claude použije nástroj (může zablokovat nebezpečný příkaz).
  • PostToolUse — spustí se po použití nástroje (vhodné pro formátování nebo logování).
  • UserPromptSubmit — ověří uživatelský dotaz před odesláním.
  • SessionStart / SessionEnd — připraví prostředí nebo pošle shrnutí po skončení seance.
  • Stop / SubagentStop — spustí se po dokončení hlavního agenta nebo subagenta.

Proč to není jen další zbytečná funkce? Protože hooks přesouvají opakující se ruční práci z tvé hlavy do konfigurace. Nemusíš už pamatovat, že po každém editu máš spustit Prettier. Nemusíš kontrolovat, jestli se náhodou nedostaly tajné klíče do výstupu. Prostě nastavíš pravidla jednou a Claude je dodržuje za tebe.

Pokud Claude Code používáš společně s MCP servery pro propojení s externími nástroji, hooks jsou logickým dalším krokem. Zatímco MCP rozšiřují, co Claude umí, hooks definují, jak se má chovat v klíčových okamžicích.

Kde a jak Claude Code hooks nastavit

Konfigurace hooks probíhá přes soubory settings.json. Můžeš je umístit na třech úrovních:

  1. ~/.claude/settings.json — globální nastavení pro celý tvůj stroj.
  2. .claude/settings.json — projektové nastavení, které můžeš commitnout do repozitáře.
  3. .claude/settings.local.json — lokální projektové nastavení, které se do gitu nedostane.

Díky tomu můžeš mít globální bezpečnostní guardrails, projektové formátování a lokální experimenty zcela oddělené.

Základní struktura vypadá takto:

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "npx prettier --write $(jq -r '.tool_input.file_path')"
          }
        ]
      }
    ]
  }
}

Klíčové pojmy:

  • matcher — říká, pro který nástroj se hook spustí (Bash, Edit, Write, Read, mcp__*, *).
  • type — může být command, prompt, agent nebo http.
  • command — shell příkaz, který se vykoná.
  • async — pokud je true, hook neblokuje další práci.

Od ledna 2026 Claude Code podporuje také Setup hooks — speciální hooky, které se spustí před začátkem seance pomocí příkazu claude --init. Hodí se pro instalaci závislostí, inicializaci databáze nebo stažení potřebných assetů. Po inicializaci můžeš rovnou předat prompt, například claude --init "/install", a nechat Claude připravit celé prostředí bez dalšího klikání.

Oficiální dokumentaci k hooks najdeš v přehledu od Anthropic (Hooks guide, aktualizováno 2026). Doporučuji ji mít po ruce, protože formát se rychle vyvíjí.

Jak funguje životní cyklus hooku krok za krokem

Aby ses v hooks neztratil, pomůže pochopit, jakým způsobem Claude jednotlivé události zpracovává. Celý proces probíhá ve třech fázích:

  1. Příprava — před spuštěním seance se provedou Setup hooks a načtou se všechny konfigurační soubory. Claude nejprve vezme globální ~/.claude/settings.json, poté projektové .claude/settings.json a nakonec lokální .claude/settings.local.json. Pokud se stejná událost definuje na více úrovních, hooky se obvykle slučují, nikoli přepisují.

  2. Běh seance — při každém nástroji nebo interakci se vyhodnotí PreToolUse a PostToolUse hooky. Pokud PreToolUse vrátí nenulový exit kód, akce se neprovede a Claude dostane vysvětlení, proč byla zablokována. To je klíčové pro bezpečnostní guardrails.

  3. Ukončení — po dokončení tasku se spustí Stop nebo SessionEnd hooky. Ty jsou ideální pro finalizaci: spuštění testů, vytvoření commitu, odeslání notifikace nebo vygenerování reportu.

Díky tomuto modelu můžeš automatizovat nejen jednotlivé akce, ale celé workflow od přípravy prostředí až po finální kontrolu. A právě proto jsou hooks tak mocným doplňkem k Claude Code Routines, kde necháváš AI pracovat déle bez dohledu.

Jak napsat svůj první hook od nuly

Než se pustíme do pokročilejších příkladů, projdeme si jednoduchý hook krok za krokem. Cílem bude automaticky zkontrolovat, že soubor uložený Claude obsahuje validní JSON.

Krok 1: Vytvoř adresář a skript.

mkdir -p .claude/hooks
cat > .claude/hooks/validate-json.sh << 'EOF'
#!/bin/bash
FILE=$(jq -r '.tool_input.file_path')
if [[ "$FILE" == *.json ]]; then
  python3 -m json.tool "$FILE" > /dev/null || exit 1
fi
EOF
chmod +x .claude/hooks/validate-json.sh

Krok 2: Přidej hook do projektového nastavení.

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Write|Edit",
        "hooks": [
          {
            "type": "command",
            "command": "bash .claude/hooks/validate-json.sh"
          }
        ]
      }
    ]
  }
}

Krok 3: Otestuj. Nech Claude upravit libovolný JSON soubor. Pokud výstup nebude validní, hook vrátí chybu a ty zjistíš problém okamžitě, místo abys na něj narazil později v produkci.

Tento přístup funguje pro jakýkoliv typ kontroly: formátování, linting, bezpečnostní scan nebo audit. Důležité je, že hook dostane kontext události přes standardní vstup, takže můžeš číst metadata o nástroji, který byl právě použit.

5 praktických Claude Code hooků, které okamžitě využiješ

Teorie je pěkná, ale nejužitečnější je vidět konkrétní příklady. Vybral jsem pět hooků, které reálně zrychlují práci a zároveň jsou bezpečné nasadit.

1. Auto-formátování kódu po každém editu

Nejčastější použití hooks. Jakmile Claude upraví nebo vytvoří soubor, okamžitě se spustí Prettier, Black, gofmt nebo jiný formátovač.

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "jq -r '.tool_input.file_path' | xargs npx prettier --write"
          }
        ]
      }
    ]
  }
}

Výsledek? Ušetříš desítky minut denně, které bys jinak trávil ručním formátováním nebo řešením CI chyb.

2. Blokování nebezpečných příkazů

PreToolUse může fungovat jako bezpečnostní brána. Můžeš například zablokovat rm -rf /, force-push do mainu nebo spuštění neznámých skriptů z internetu.

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "bash .claude/hooks/safety-check.sh"
          }
        ]
      }
    ]
  }
}

Skript safety-check.sh může obsahovat jednoduché deny-listy nebo pokročilejší detekci citlivých dat. Komunitní projekt cc-safe-setup nabízí přes 890 příkladů bezpečnostních hooků (GitHub, 2026).

3. Automatické lintování a typové kontroly

Místo toho, abys čekal na CI zpětnou vazbu, můžeš spustit lint a testy lokálně hned po dokončení změn. To je obzvlášť užitečné, když používáš Claude Code společně s Cursorem a chceš udržet konzistentní kvalitu napříč nástroji.

{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "npm run lint && npm run typecheck"
          }
        ]
      }
    ]
  }
}

4. Logování a audit všech změn

Pro týmy je důležité vědět, co AI agent udělal. Hook může po každém nástroji zapsat záznam do lokálního logu nebo poslat zprávu do centrálního systému.

{
  "hooks": {
    "PostToolUse": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "bash .claude/hooks/log-tool-use.sh"
          }
        ]
      }
    ]
  }
}

Případová studie — tým pěti vývojářů: Jeden z týmů, se kterým jsem konzultoval, nastavil tři základní hooky: formátování po editu, bezpečnostní kontrola Bash příkazů a automatický lint po Stop. Během prvních dvou týdnů klesl počet neúspěšných CI buildů o 40 % a vývojáři ušetřili v průměru 30 minut denně na ručních kontrolách. Žádný z hooků nebyl složitý — šlo o jednoduché shell skripty, které se spouštěly ve správný okamžik.

Tento přístup se skvěle doplňuje s MCP servery pro enterprise governance, kde potřebuješ mít přehled o všech krocích agenta.

5. Notifikace a shrnutí po skončení seance

Když Claude dokončí dlouhý task, může tě hook upozornit zvukem, desktopovou notifikací nebo zprávou ve Slacku. To oceníš zejména při Claude Code Routines, kdy necháváš AI pracovat na pozadí.

{
  "hooks": {
    "SessionEnd": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "bash .claude/hooks/notify-done.sh"
          }
        ]
      }
    ]
  }
}

Jak bezpečně nasadit hooks v týmu

Hooks jsou mocný nástroj, ale s mocí přichází odpovědnost. Tady je pár pravidel, která pomohou vyhnout se bolestem:

  1. Začni malý. Nepřidávej desítky hooků najednou. Začni s jedním — typicky formátováním — a postupně přidávej další.
  2. Testuj lokálně. Vždycky si hook ověř v izolovaném prostředí, než ho nasadíš do týmového repozitáře.
  3. Rozděl osobní a týmové nastavení. Osobní preference dej do settings.local.json, sdílená pravidla do .claude/settings.json.
  4. Nastav timeouty. Dlouho běžící hook může znepříjemnit práci. Používej rozumné timeouty, ideálně pod 30 sekund.
  5. Měj fail-safe. Kritické bezpečnostní hooky by měly být synchronní a blokující. Kosmetické hooky mohou běžet asynchronně.

Pokud řešíš bezpečnost na vyšší úrovni, mrkni na náš článek Jak bezpečně nasadit Claude agenty: Sandboxy a MCP tunely. Kombinace sandboxů, MCP tunelů a hooks tvoří solidní obrannou linii.

Kdy hooks nepoužívat

Ne každý problém se hodí řešit hookem. Vyhni se těmto situacím:

  • Dlouhé operace — pokud hook běží déle než pár sekund, zdržuješ interaktivní práci. Takové věci raději přesuň do claude -p v CI/CD.
  • Komplexní rozhodování — hooks nejsou náhradou za promyšlený agentic workflow. Pokud potřebuješ větvit se podle více podmínek, zvaž raději n8n workflow nebo vlastní skript.
  • Tajné hodnoty — nikdy neukládej API klíče přímo do settings.json. Používej proměnné prostředí nebo bezpečné úložiště.
  • Přehnaná autonomie — než hooku dovolíš commitnout, pushnout nebo deploynout, ujisti se, že máš rollback plán.

Časté otázky

Co když hook selže?

Záleží na typu. PreToolUse hook může zablokovat akci, pokud vrátí nenulový exit kód. PostToolUse a SessionEnd hooky obvykle selhání jen zalogují a nezastaví práci. Vždycky si nastavení otestuj v bezpečném prostředí.

Mohou být hooks použité i v CI/CD?

Ano. Claude Code podporuje headless režim pomocí příkazu claude -p, takže ho můžeš použít v CI pipelinech, pre-commit hooks nebo v nočních build skriptech. V kombinaci s hooks tak můžeš automatizovat i složitější workflow.

Jaký je rozdíl mezi hooks a MCP servery?

MCP servery rozšiřují, k čemu má Claude přístup — například k databázi, Jiru nebo prohlížeči. Hooks naopak řídí, jak se Claude chová v určitých okamžicích. Doplňují se: MCP dává schopnosti, hooks dávají pravidla.

Potřebuji k hooks placený plán?

Ne. Hooks jsou součástí Claude Code CLI, která je dostupná zdarma i v placených tarifech. Některé pokročilé hooky mohou volat placené služby (například API notifikací), ale samotná funkce je bezplatná.

Existují hotové knihovny hooků?

Ano. Kromě oficiální dokumentace stojí za zmínku komunitní projekty jako cc-safe-setup nebo claude-sdlc-wizard, které nabízejí předpřipravené sady hooků pro bezpečnost a vývojářský životní cyklus (GitHub, 2026).

Závěr

Claude Code hooks představují posun od pasivního AI asistenta k aktivnímu členu tvého workflow. Umožňují ti automatizovat opakující se úkoly, vynucovat bezpečnostní pravidla a udržovat kvalitu kódu bez ručního dohledu.

Nejlepší cesta, jak začít, je dnes: otevři svůj projekt, vytvoř .claude/settings.json a přidej první hook pro formátování. Uvidíš okamžitý rozdíl. A až budeš připravený na víc, propoj hooks s MCP servery a postav si opravdu autonomní vývojářský workflow.

Pokud chceš hlubší srovnání s dalšími AI coding nástroji, podívej se na náš článek Claude Code vs Cursor vs Windsurf. Pomůže ti vybrat nástroj, který se k tvému novému hook-based workflow nejvíc hodí.

Bezplatný kurz

Nauč se Claude Code za 10 dní

Bezplatný e-mailový kurz s praktickými tipy. Žádná teorie, jen to, co funguje.

Začínáte s AI?

Navštivte zacinamsai.cz — průvodce světem AI pro úplné začátečníky.

Přejít na Začínáme s AI →

// Další články, které by tě mohly zajímat

Potřebujete pomoct s AI automatizací?

Domluvte si nezávaznou konzultaci →