Automaticky svůj Dev Workflow s Claude kód Hooks
Hooks vám umožní spustit vlastní shell příkazy, když Claude Code podnikne konkrétní akce. Automatický formát při ukládání, blokování nebezpečných úprav nebo automaticky aplikovat kontext.
Claude Code Háčky jsou shell příkazy, které se provádějí automaticky v reakci na události. Když Claude Code upraví soubor, spustí příkaz, nebo spustí relaci, vaše háky vystřelí. To vám umožní budovat zábradlí, vynucovat normy a automatizovat opakované nastavení bez ručního zásahu.
Jaké hákové události jsou k dispozici?
| Událost | Když vystřelí | Běžný případ použití |
|---|---|---|
| PreToolUse | Před Claude provede nástroj | Blokovat nebezpečné operace, validovat vstupy |
| PostTool Použití | Poté, co Claude provede nástroj | Automatické editované soubory ve formátu, spouštěcí lišty |
| Oznámení | Když Claude pošle oznámení | Přihlásit do souboru, odeslat do Slacku |
| SessionStart | Když začne nové sezení | Vstřikovat kontext, zkontrolovat prostředí |
| Nastavení | Při změně nastavení | Potvrdit konfiguraci |
Jak vytvoříte hák?
Použít interaktivní menu nebo upravit nastavení. Json přímo:
# Interactive hook setup
claude /hooks
# Or edit settings.json directly
# Project: .claude/settings.json
# Global: ~/.claude/settings.jsonTady je nastavení. json s nakonfigurovanými háky:
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"command": "npx prettier --write "$CLAUDE_FILE_PATH"",
"description": "Auto-format edited files with Prettier"
}
],
"PreToolUse": [
{
"matcher": "Edit|Write",
"command": "echo $CLAUDE_FILE_PATH | grep -q \.env && echo 'BLOCKED: Cannot edit .env files' && exit 1 || exit 0",
"description": "Block edits to .env files"
}
],
"SessionStart": [
{
"command": "cat .claude/context-injection.md",
"description": "Inject additional context at session start"
}
]
}
}Jaké jsou nejužitečnější háky?
1. Automatický formát při editaci
Spustit Prettier, Black, nebo gofmt pokaždé, když Claude Code edituje soubor:
// PostToolUse hook
{
"matcher": "Edit|Write",
"command": "npx prettier --write \"$CLAUDE_FILE_PATH\""
}2. Name
Prevent Claude Kód z modifikací souborů, tajemství nebo kritických konfigurací prostředí:
// PreToolUse hook
{
"matcher": "Edit|Write",
"command": "echo $CLAUDE_FILE_PATH | grep -qE \"\.env|\.secret|credentials\" && exit 1 || exit 0"
}3. Re- injikujte kontext po zhuštění
Když Claude Code zkomprimuje kontextové okno, mohou být ztraceny důležité detaily. Háček může znovu vložit kritické informace:
// PostToolUse hook for compaction
{
"matcher": "Compact",
"command": "cat .claude/critical-context.md"
}