✦ Sprievodca pre vývojárov

Nauč sa pracovať
s Claude Code

Kompletný sprievodca pre nastavenie a používanie Claude Code pri vibe coding — od prvej inštalácie až po prácu na veľkom projekte. Aktualizované podľa oficiálnej dokumentácie (september 2026).

ℹ️
Čo je Vibe Coding?

Vibe coding je spôsob vývoja, kde človek formuluje zámer a Claude generuje, upravuje a refaktoruje kód. Ty riadiš smer, Claude rieši implementáciu.

Čo je Claude Code?

Claude Code je agentný nástroj od Anthropic, ktorý ti umožňuje spolupracovať s AI priamo v termináli, v IDE alebo v desktop aplikácii. Nie je to len chatbot — je to plnohodnotný agent, ktorý:

  • číta a píše súbory priamo do tvojho projektu
  • spúšťa bash príkazy, testy a buildy
  • prehľadáva kód pomocou grep, find a iných nástrojov
  • spravuje git (commit, diff, branch, PR)
  • spúšťa subagentov pre paralelné úlohy
  • najprv plánuje (Plan mode) a každú zmenu vie vrátiť cez checkpointy (/rewind)
⚙️

Inštalácia

Nastavenie Claude Code od nuly za pár minút

Prerekvizity

  • OS: macOS 13+, Windows 10+ (natívne alebo WSL 2), Ubuntu 20.04+ / Debian 10+
  • Účet: Claude Pro, Max, Team alebo Enterprise predplatné, alebo Claude Console (API) účet — viď Prihlásenie. Bezplatný plán Claude Code neobsahuje.
  • Git (odporúčané; na Windows Git for Windows kvôli Bash nástroju)
  • Node.js — potrebný iba ak inštaluješ cez npm (Node 22+). Natívny inštalátor ho nepotrebuje.

Natívny inštalátor (odporúčané)

Stiahne samostatnú binárku, ktorá sa automaticky aktualizuje na pozadí.

bash – macOS, Linux, WSL
curl -fsSL https://claude.ai/install.sh | bash
powershell – Windows
irm https://claude.ai/install.ps1 | iex

Alternatívy

bash
# Homebrew (macOS) – neaktualizuje sa automaticky, použi brew upgrade
brew install --cask claude-code

# WinGet (Windows)
winget install Anthropic.ClaudeCode

# npm (vyžaduje Node.js 22+)
npm install -g @anthropic-ai/claude-code
💡

Nepoužívaš terminál? Existuje aj Claude Code Desktop app (macOS, Windows, Linux) s grafickým rozhraním — stiahneš na claude.com/download.

Prvé spustenie

bash
# Over inštaláciu
claude --version

# Prejdi do svojho projektu a spusti Claude Code
cd moj-projekt
claude

Pri prvom spustení sa otvorí prehliadač, kde sa prihlásiš svojím claude.ai účtom. Po správe Login successful stlačíš Enter a môžeš začať. Detaily v sekcii Prihlásenie.

Aktualizácia a diagnostika

bash
# Natívna inštalácia sa aktualizuje sama; manuálne:
claude update

# Kontrola inštalácie, nastavení a auto-update stavu
claude doctor

# npm inštalácia (NIE npm update -g – nemusí zobrať najnovšiu verziu)
npm install -g @anthropic-ai/claude-code@latest

Kde všade Claude Code beží

Terminál

Príkaz claude funguje v akomkoľvek termináli — iTerm2, Windows Terminal, tmux, WSL.

VS Code

Rozšírenie Claude Code v Marketplace. Sidebar panel priamo v editore, diff náhľady, výber kódu ako kontext.

JetBrains

Plugin pre IntelliJ IDEA, WebStorm, PyCharm a ďalšie JetBrains IDE.

Desktop app

Samostatná aplikácia bez terminálu — paralelné sessions, plugin browser, náhľad diffov.

Web (cloud sessions)

Na claude.ai/code beží Claude Code v cloude nad tvojím GitHub repom — bez lokálnej inštalácie. Session si vieš stiahnuť do terminálu cez /teleport.

Chrome

Rozšírenie Claude in Chrome — Claude ovláda prehliadač, testuje UI a číta stránky; nastavíš cez /chrome.

🔑

Prihlásenie & účet

Ako sa autentifikovať — predplatné, API kľúč alebo CI token

ℹ️
Dve cesty k Claude Code

Predplatné claude.ai (Pro / Max / Team / Enterprise) — platíš mesačne, spotreba je v rámci limitov plánu. Claude Console (API) — platíš za tokeny, potrebuješ API kľúč alebo Console prihlásenie. Pre jednotlivca pri vibe codingu je predplatné jednoduchšie a predvídateľnejšie.

Možnosť A: claude.ai predplatné (odporúčané)

  1. Zaobstaraj si Pro alebo Max plán na claude.com/pricing (bezplatný plán Claude Code neobsahuje)
  2. V termináli spusti claude — otvorí sa prehliadač s prihlásením
  3. Prihlás sa; terminál vypíše Login successful
  4. Ak sa prehliadač neotvorí (SSH, WSL2, kontajner), stlač c pre skopírovanie URL a prípadný kód vlož späť do terminálu
v Claude Code
# Prihlásiť / odhlásiť / prepnúť účet
/login
/logout

# Ktorý účet a metóda je aktívna
/status

Možnosť B: Claude Console (API)

Pre tímy s API fakturáciou alebo ak chceš platiť za spotrebu. Kľúč vytvoríš na platform.claude.comAPI Keys → Create Key (zobrazí sa iba raz).

bash – ~/.bashrc alebo ~/.zshrc
export ANTHROPIC_API_KEY="sk-ant-xxxxxxxxxxxxx"

Claude Code sa pri štarte raz opýta, či kľúč použiť. Alternatívne sa v /login prihlásiš Console účtom aj bez vytvárania kľúča.

⚠️
API kľúč má prednosť pred predplatným!

Ak máš predplatné a zároveň nastavený ANTHROPIC_API_KEY, Claude Code použije kľúč (a účtuje API). Ak chceš späť na predplatné: unset ANTHROPIC_API_KEY a over cez /status.

⚠️
Nikdy necommituj API kľúč do gitu!

Kľúč patrí do shell profilu alebo do secrets manažéra. Claude Code nečíta .env súbor v projekte kvôli autentifikácii — a kľúče v git histórii sú verejné.

Možnosť C: CI / skripty

Pre GitHub Actions a automatizáciu bez prehliadača vygeneruj dlhodobý token (platí rok, vyžaduje predplatné):

bash
claude setup-token
# → skopíruj token a nastav ho ako:
export CLAUDE_CODE_OAUTH_TOKEN="..."

Sledovanie spotreby

  • /usage (alias /cost) — spotreba tokenov a limity priamo v session
  • /context — vizualizácia, čo ti zaberá kontextové okno
  • API účet: na platform.claude.com nastav spending limit a vytvor samostatné kľúče pre projekty
📁

CLAUDE.md

Najdôležitejší súbor pre väčší projekt

ℹ️
Čo je CLAUDE.md?

Markdown súbor, ktorý Claude automaticky načíta na začiatku každej session. Slúži ako trvalý kontext a pravidlá pre projekt. Bez neho Claude vidí len kód — nevie, ako spúšťaš testy, aké máš konvencie ani čo nesmie robiť.

Prečo je to kľúčové?

Každá session začína s prázdnym kontextom. CLAUDE.md je miesto, kam napíšeš to, čo by si inak vysvetľoval znova a znova:

  • aký tech stack projekt používa
  • aké sú konvencie písania kódu
  • ako sa spúšťa projekt, testy, build
  • ktoré operácie sú zakázané (napr. nemazať produkčné dáta)
  • kde sú dôležité súbory a moduly

Kde môže CLAUDE.md byť

UmiestneniePlatí preZdieľané
~/.claude/CLAUDE.mdTvoje osobné preferencie vo všetkých projektochLen ty
./CLAUDE.md alebo ./.claude/CLAUDE.mdProjekt — konvencie, príkazy, architektúraTím cez git
./CLAUDE.local.mdTvoje osobné poznámky k projektu (sandbox URL, testovacie dáta)Len ty — daj do .gitignore
src/modul/CLAUDE.mdPodadresár — načíta sa až keď Claude pracuje so súbormi v ňomTím cez git

Všetky nájdené súbory sa spájajú (neprepisujú). Či sa načítali, overíš príkazom /context — hľadaj sekciu Memory files.

Príklad CLAUDE.md

markdown – CLAUDE.md
# Môj Projekt – Claude Kontext

## Tech Stack
- Next.js 15 (App Router)
- TypeScript strict mode
- Tailwind CSS
- PostgreSQL + Prisma ORM
- Vitest pre testy

## Štruktúra projektu
- `src/app/` – Next.js pages (App Router)
- `src/components/` – React komponenty
- `src/lib/` – helpers a utility funkcie
- `src/server/` – server-side logika
- `prisma/` – databázové schémy

## Príkazy
- `npm run dev` – development server
- `npm run test` – spusti testy
- `npm run build` – produkčný build
- `npx prisma migrate dev` – databázová migrácia

## Konvencie
- Komponenty: PascalCase, jeden súbor = jeden komponent
- API routes: REST, JSON responses, HTTP status kódy
- Error handling: vždy try/catch s logging
- Nepoužívaj `any` v TypeScript

## Zakázané operácie
- NIKDY nemaž súbory v `prisma/migrations/`
- NIKDY nemeň `.env.production`
- Pred zmazaním dát sa vždy opýtaj

## Dôležité poznámky
- Auth cez NextAuth.js – konfig v `src/lib/auth.ts`
- Všetky DB operácie cez Prisma Client, nie raw SQL

Tipy pre dobrý CLAUDE.md

  • Začni cez /init — Claude preskúma projekt a vygeneruje základ. Ak súbor už existuje, navrhne zlepšenia.
  • Buď konkrétny — „2 medzery odsadenie“ namiesto „formátuj pekne“; všeobecné veci Claude vie, projekt-špecifické nie
  • Drž ho pod 200 riadkov — dlhší súbor zaberá kontext a Claude sa ho drží horšie. /doctor ti navrhne, čo vyhodiť.
  • Pridaj príkazy a zakázané operácie — ako spustiť testy, čo nikdy nerobiť
  • Aktualizuj ho — keď Claude urobí tú istú chybu druhýkrát, patrí to do CLAUDE.md
  • Nepíš, čo je vidieť z kódu — stačí to, čo nie je evidentné
⚠️
CLAUDE.md je kontext, nie vynútenie

Claude sa inštrukcií drží, ale nie je to garancia. Ak niečo nikdy nesmie nastať (napr. úprava .env), zablokuj to PreToolUse hookom alebo permissions.deny — tie platia vždy.

Importy — @cesta

CLAUDE.md môže vložiť iné súbory syntaxou @cesta/k/suboru. Načítajú sa hneď pri štarte spolu s ním:

markdown – CLAUDE.md
Prehľad projektu: @README
Dostupné npm skripty: @package.json
Git workflow: @docs/git-instructions.md

# Ak repo už používa AGENTS.md pre iné AI nástroje:
@AGENTS.md

Modulárne pravidlá — .claude/rules/

Keď CLAUDE.md narastie, rozdeľ ho do tematických súborov v adresári .claude/rules/:

filesystem
.claude/
├── CLAUDE.md           # Stručný úvod
└── rules/
    ├── code-style.md   # Konvencie písania kódu (načíta sa vždy)
    ├── testing.md      # Pravidlá pre testy
    └── api.md          # Načíta sa len pri práci s src/api/ (paths:)

Pravidlo môže mať paths: frontmatter — potom sa načíta iba keď Claude pracuje so zodpovedajúcimi súbormi, čo šetrí kontext:

markdown – .claude/rules/api.md
---
paths:
  - "src/api/**/*.ts"
---

# Pravidlá pre API

- Každý endpoint musí validovať vstup
- Používaj štandardný formát chybovej odpovede
💡

Osobné pravidlá pre všetky projekty daj do ~/.claude/rules/. Pravidlá bez paths sa načítajú vždy — na jednorazové postupy (deploy checklist) radšej použi skill, ten sa načíta až keď ho zavoláš.

🗂️

Štruktúra projektu

Ako organizovať projekt pre efektívnu prácu s Claude

Odporúčaná štruktúra

filesystem
moj-projekt/
├── CLAUDE.md                  # Hlavný kontext pre Claude (git)
├── CLAUDE.local.md            # Tvoje osobné poznámky (gitignore)
├── .mcp.json                  # MCP servery zdieľané s tímom (git)
├── .claude/
│   ├── settings.json          # Povolenia, hooks, pluginy (git)
│   ├── settings.local.json    # Tvoje lokálne prepisy (gitignore)
│   ├── rules/                 # Modulárne pravidlá
│   │   ├── code-style.md
│   │   └── api.md
│   ├── skills/                # Vlastné /príkazy
│   │   ├── review/
│   │   │   └── SKILL.md
│   │   └── deploy/
│   │       └── SKILL.md
│   ├── agents/                # Vlastné subagenty
│   │   └── code-reviewer.md
│   └── hooks/                 # Hook skripty
│       └── protect-files.sh
├── src/
│   └── ...
├── .env                       # Tajomstvá aplikácie (v .gitignore!)
└── .gitignore
ℹ️
Osobné (globálne) nastavenia

Rovnaká štruktúra existuje v ~/.claude/ — platí pre všetky tvoje projekty: ~/.claude/CLAUDE.md, ~/.claude/settings.json, ~/.claude/skills/, ~/.claude/agents/, ~/.claude/rules/.

Súbor .claude/settings.json

Hlavný konfiguračný súbor pre Claude Code v projekte. Commitni ho do gitu — zdieľa sa s celým tímom. Priorita: managed → settings.local.jsonsettings.json~/.claude/settings.json.

json – .claude/settings.json
{
  "permissions": {
    "allow": [
      "Bash(npm run test)",
      "Bash(npm run build)",
      "Bash(git status)",
      "Bash(git diff *)"
    ],
    "ask": [
      "Bash(git push *)"
    ],
    "deny": [
      "Bash(rm -rf *)",
      "Bash(git push --force *)",
      "Bash(git push -f *)",
      "Read(./.env)",
      "Edit(./.env)"
    ],
    "defaultMode": "acceptEdits"
  },
  "hooks": {
    "Stop": [
      {
        "hooks": [{
          "type": "command",
          "command": "echo '✅ Claude dokončil prácu'"
        }]
      }
    ]
  }
}

Pravidlá pre Bash matchujú celý príkaz — * zastupuje ľubovoľný text. "Bash(git push --force)" bez hviezdičky by zachytilo iba príkaz bez ďalších argumentov. Viac v sekcii Plan mode & povolenia.

Git Worktrees pre paralelné úlohy

Keď chceš mať viac Claude sessions naraz na rôznych featurách, použi git worktrees — každá session pracuje vo vlastnej kópii projektu bez konfliktov.

bash
# Najjednoduchšie: Claude Code vytvorí worktree sám
claude --worktree nova-funkcia      # alebo skrátene: claude -w nova-funkcia

# Manuálne cez git
git worktree add ../projekt-feature feature/nova-funkcia
git worktree list
git worktree remove ../projekt-feature
💡

Subagenti môžu mať vo frontmatteri isolation: worktree — automaticky dostanú izolovaný worktree, ktorý sa po dokončení uprace, ak v ňom nič nezmenili.

💬

Slash príkazy

Rýchle príkazy dostupné priamo v chate

Slash príkazy zadávaš do chat inputu začínajúc /. Po napísaní / sa zobrazí autocomplete so všetkými dostupnými príkazmi a skillmi. Tu sú tie najužitočnejšie:

Session a kontext

PríkazČo robí
/clearNová konverzácia s prázdnym kontextom
/compact [inštrukcie]Zhrnie históriu a uvoľní kontext — voliteľne povieš, čo zachovať
/contextVizualizácia, čo zaberá kontextové okno (CLAUDE.md, MCP, história…)
/rewindVráti kód a/alebo konverzáciu na skorší checkpoint (aj Esc Esc)
/resumeOtvorí staršiu konverzáciu
/exportExportuje konverzáciu ako text
/usage (alias /cost)Spotreba tokenov a limity

Nastavenie

PríkazČo robí
/initVygeneruje CLAUDE.md pre aktuálny projekt (alebo navrhne zlepšenia)
/modelPrepne model (Opus 5, Sonnet 5, Haiku 4.5…) a uloží ako predvolený
/effortÚroveň uvažovania: low / medium / high / xhigh / max
/fastRýchly režim (Opus s rýchlejším výstupom)
/permissionsSpráva allow / ask / deny pravidiel
/configNastavenia (téma, auto-update kanál, notifikácie…)
/memoryOtvorí CLAUDE.md súbory a spravuje auto memory
/statusAktívny účet, model, verzia, pracovný adresár
/doctorDiagnostika inštalácie a nastavení, navrhne opravy

Rozšírenia a práca

PríkazČo robí
/planZapne Plan mode — Claude najprv naplánuje, potom (po schválení) implementuje
/code-review (alias /review)Code review aktuálneho diffu, branchu alebo PR
/security-reviewBezpečnostná kontrola zmien
/simplifyZjednoduší a vyčistí zmenený kód
/mcpStav MCP serverov, OAuth prihlásenie
/agentsSpráva subagentov
/pluginPrehliadanie a inštalácia pluginov
/hooksZobrazí nakonfigurované hooks
/loop [interval] promptOpakuje prompt v intervale
/helpZoznam všetkých príkazov
💡
Ďalšie prefixy v inpute

! na začiatku = spustí shell príkaz a výstup pridá do konverzácie (!npm test). @ = vloží súbor ako kontext s autocompletom (@src/app.ts). ? na prázdnom inpute = panel klávesových skratiek.

Vlastné slash príkazy (Skills)

Vlastné /príkazy sa vytvárajú ako skilly — adresár s SKILL.md v .claude/skills/. Pozri sekciu 🎯 Skilly pre detaily.

bash – vytvorenie skillu
mkdir -p .claude/skills/deploy
# Vytvor .claude/skills/deploy/SKILL.md s inštrukciami → /deploy
💡

Starý spôsob .claude/commands/nazov.md stále funguje, ale skills sú odporúčané — podporujú podporné súbory, hooks, auto-invokovanie a zmeny sa prejavia bez reštartu.

🛡️

Plan mode & povolenia

Najprv plán, potom kód — a čo smie Claude robiť bez pýtania

ℹ️
Čo je Plan mode?

Režim, v ktorom Claude iba číta a skúma — prehľadá kód, položí otázky a napíše plán zmien. Nič neupravuje. Až keď plán schváliš, prepne sa do normálneho režimu a implementuje. Pre vibe coding je to najdôležitejší návyk: väčšia zmena = najprv plán.

Ako používať Plan mode

  1. Zapni ho
    Stláčaj Shift+Tab, kým sa v prompte nezobrazí plan. Alebo napíš /plan popis úlohy, alebo spusti claude --permission-mode plan.
  2. Popíš úlohu
    Claude preskúma projekt, prípadne sa opýta na nejasnosti a predloží plán so zoznamom súborov a krokov.
  3. Uprav a schváľ
    Ak sa ti niečo nepáči, napíš to — plán sa prepracuje. Po schválení Claude implementuje presne podľa plánu.

Permission módy

Claude Code má odstupňované povolenia. Mód prepínaš cez Shift+Tab (cykluje), nastavíš pri štarte alebo v settings:

MódSprávanieKedy
default (Manual)Pýta sa pri prvom použití každého nástroja / príkazuNeznámy projekt, začiatok
acceptEditsAutomaticky prijíma úpravy súborov a bežné fs príkazy (mkdir, mv…); Bash sa stále pýtaBežný vibe coding
planLen čítanie a read-only príkazy, žiadne úpravyPlánovanie, skúmanie cudzieho kódu
autoAutomaticky schvaľuje, ale klasifikátor na pozadí kontroluje, či akcia zodpovedá zadaniuDlhšie autonómne úlohy
dontAskVšetko, čo by sa pýtalo, automaticky zamietneSkripty, CI
bypassPermissionsNepýta sa vôbec (--dangerously-skip-permissions)Len v sandboxe / kontajneri
bash / json
# Pri štarte
claude --permission-mode plan
claude --permission-mode acceptEdits

# Trvalo pre projekt – .claude/settings.json
{ "permissions": { "defaultMode": "acceptEdits" } }

Pravidlá allow / ask / deny

Okrem módu môžeš definovať presné pravidlá. Keď pri otázke zvolíš „Yes, and don't ask again“, pravidlo sa uloží samo. Spravuješ ich cez /permissions alebo v settings.json (príklad v sekcii Štruktúra projektu).

PravidloVýznam
Bash(npm run *)Všetky npm skripty
Bash(git push *)Push s ľubovoľnými argumentmi (do ask)
Edit(./.env), Read(./.env)Zákaz úprav / čítania konkrétneho súboru (do deny)
WebFetch(domain:github.com)Sťahovanie len z danej domény
mcp__github__*Všetky nástroje MCP servera github
⚠️
Pozor na --dangerously-skip-permissions

Vypína všetky otázky. Používaj ho iba v izolovanom prostredí (Docker, devcontainer, VM bez prístupu k produkčným účtom). Pre menej otázok pri bežnej práci stačí acceptEdits alebo auto mód plus pár allow pravidiel — vygeneruje ti ich aj skill /fewer-permission-prompts.

💡
Workspace trust

Pri prvom otvorení cudzieho repa sa Claude Code opýta, či adresáru dôveruješ. Kým nepovieš áno, ignoruje hooks a allow pravidlá z .claude/settings.json v repe — ochrana pred škodlivou konfiguráciou v cudzom projekte.

🪝

Hooks

Automatické akcie pred a po každom kroku Claude

ℹ️
Čo sú hooks?

Hooks sú akcie (najčastejšie shell skripty), ktoré sa vždy spustia v určitom momente životného cyklu — pred použitím nástroja, po ňom, pri štarte session, keď Claude skončí. Na rozdiel od CLAUDE.md nie sú „prosbou“ — sú vynútené. Konfigurujú sa v .claude/settings.json alebo cez /hooks.

Najužitočnejšie hook eventy

HookKedy sa spustí
SessionStartPri štarte / obnovení session — napr. načítanie env premenných, kontext z gitu
UserPromptSubmitPred spracovaním tvojho promptu — môže ho doplniť alebo zablokovať
PreToolUsePred každým použitím nástroja — môže blokovať akciu
PermissionRequestKeď by sa Claude pýtal na povolenie — hook môže rozhodnúť za teba
PostToolUsePo úspešnom použití nástroja (auto-formátovanie, lint)
PostToolUseFailureKeď nástroj zlyhal
StopKeď Claude dokončí odpoveď (notifikácia, spustenie testov)
SubagentStopKeď skončí subagent
PreCompactPred kompakciou kontextu
NotificationKeď Claude potrebuje tvoju pozornosť
SessionEndPri ukončení session (cleanup, log)

Celkovo je eventov vyše 30 (napr. InstructionsLoaded, WorktreeCreate, ConfigChange). Úplný zoznam: dokumentácia hooks.

Typy hook handlerov

TypČo robí
commandSpustí shell príkaz alebo skript. Najčastejší typ — vstup dostane ako JSON na stdin.
httpPošle HTTP POST s JSON na URL (lokálnu alebo vzdialenú).
promptPoloží jednorazovú otázku modelu (napr. „Je tento diff bezpečný? odpovedz áno/nie“).
agentSpustí subagenta s nástrojmi na overenie (napr. spustí testy a vyhodnotí).
mcp_toolZavolá nástroj pripojeného MCP servera.

Príklad: Notifikácia po dokončení

json – .claude/settings.json
{
  "hooks": {
    "Stop": [{
      "hooks": [{
        "type": "command",
        "command": "osascript -e 'display notification \"Claude dokončil prácu\" with title \"Claude Code\"'"
      }]
    }]
  }
}

Príklad: Auto-formátovanie po zápise súboru

Hook dostane na stdin JSON s tool_input.file_path — cestu vytiahneš cez jq:

bash – .claude/hooks/format.sh
#!/bin/bash
FILE_PATH=$(jq -r '.tool_input.file_path // empty')

case "$FILE_PATH" in
  *.js|*.ts|*.jsx|*.tsx|*.json|*.css)
    npx prettier --write "$FILE_PATH" 2>/dev/null ;;
esac
exit 0
json – .claude/settings.json
{
  "hooks": {
    "PostToolUse": [{
      "matcher": "Write|Edit",
      "hooks": [{
        "type": "command",
        "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/format.sh",
        "timeout": 30
      }]
    }]
  }
}

Príklad: Blokovanie nebezpečných operácií (PreToolUse)

Hook skript ulož do .claude/hooks/protect-files.sh, potom ho zaregistruj v settings:

bash – .claude/hooks/protect-files.sh
#!/bin/bash
INPUT=$(cat)
FILE_PATH=$(echo "$INPUT" | jq -r '.tool_input.file_path // empty')
PROTECTED=(".env" "package-lock.json" ".git/")

for pattern in "${PROTECTED[@]}"; do
  if [[ "$FILE_PATH" == *"$pattern"* ]]; then
    echo "Blokované: $FILE_PATH je chránený súbor" >&2
    exit 2
  fi
done
exit 0
json – .claude/settings.json
{
  "hooks": {
    "PreToolUse": [{
      "matcher": "Edit|Write",
      "hooks": [{
        "type": "command",
        "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/protect-files.sh"
      }]
    }]
  }
}

Príklad: HTTP hook (integrácia so službou)

json – .claude/settings.json
{
  "hooks": {
    "PreToolUse": [{
      "matcher": "Bash",
      "hooks": [{
        "type": "http",
        "url": "http://localhost:8080/hooks/validate",
        "timeout": 30,
        "headers": {
          "Authorization": "Bearer $MY_TOKEN"
        },
        "allowedEnvVars": ["MY_TOKEN"]
      }]
    }]
  }
}
💡
Ako hook komunikuje

Vstup: JSON na stdintool_name, tool_input (napr. .command, .file_path), session_id, cwd. Env: $CLAUDE_PROJECT_DIR (koreň projektu), $CLAUDE_ENV_FILE (v SessionStart — sem zapíšeš env premenné pre session). Exit kódy: 0 = OK, 2 = blokuj (dôvod zo stderr dostane Claude), 1 a iné = chyba, ale neblokuje.

ℹ️

Hooks sa dajú definovať aj vo frontmatteri skillu (platia od jeho zavolania) alebo subagenta (platia len počas jeho behu) — kľúč hooks: s rovnakou štruktúrou ako v settings.

🔌

MCP servery

Pripojenie externých služieb — GitHub, Sentry, databázy, prehliadač

ℹ️
Čo je MCP?

Model Context Protocol je otvorený štandard, ktorý umožňuje Claudovi komunikovať s externými službami — GitHub, databázy, Notion, Sentry a ďalšie. MCP server pridá Claudovi nové nástroje (napr. create_pull_request, list_issues).

Dva typy podľa transportu

http (remote)

Server beží na URL u poskytovateľa služby. Dnes štandard — GitHub, Sentry, Notion, Linear. Prihlásiš sa cez OAuth v /mcp, žiadne tokeny v konfigurácii. (Starší SSE transport je deprecated.)

stdio (lokálny)

Server beží ako lokálny proces (Node.js / Python). Vhodné pre lokálne veci — súborový systém, databáza, prehliadač.

Pridanie cez príkazový riadok

bash
# Remote HTTP server (prihlásenie potom cez /mcp)
claude mcp add --transport http github https://api.githubcopilot.com/mcp/
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp

# Remote server s tokenom v hlavičke
claude mcp add --transport http github https://api.githubcopilot.com/mcp/ \
  --header "Authorization: Bearer $GITHUB_PAT"

# Lokálny stdio server – všetko za "--" je príkaz servera
claude mcp add playwright -- npx @playwright/mcp@latest
claude mcp add -e DSN=postgresql://user:pass@localhost/db db -- npx -y @bytebase/dbhub

# Rozsah: local (default, len ty) | project (.mcp.json, tím) | user (všetky projekty)
claude mcp add --scope project --transport http notion https://mcp.notion.com/mcp

# Správa
claude mcp list              # zoznam + stav pripojenia
claude mcp get github
claude mcp remove github
claude mcp login sentry      # OAuth z terminálu (alebo /mcp v session)

Tímová konfigurácia — .mcp.json

Servery pre celý tím patria do súboru .mcp.json v koreni projektu (commitni do gitu). Pri prvom otvorení sa každý člen tímu musí potvrdiť, že serverom dôveruje.

json – .mcp.json
{
  "mcpServers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/"
    },
    "db": {
      "command": "npx",
      "args": ["-y", "@bytebase/dbhub", "--dsn", "${DATABASE_URL}"]
    },
    "playwright": {
      "command": "npx",
      "args": ["@playwright/mcp@latest"]
    }
  }
}
⚠️
Tokeny nikdy priamo do .mcp.json!

Použi ${PREMENNA} (alebo ${PREMENNA:-default}) — Claude Code ju nahradí z tvojho prostredia. Pre remote servery je najčistejšia cesta OAuth cez /mcp. Pozn.: kľúč mcpServers v .claude/settings.json sa nečíta — patrí iba do .mcp.json.

Populárne MCP servery

ServerAko pridaťČo pridá Claudovi
GitHub --transport http https://api.githubcopilot.com/mcp/ PR, issues, branches, code search
Sentry --transport http https://mcp.sentry.dev/mcp Chyby, issues, stack traces
Notion --transport http https://mcp.notion.com/mcp Stránky, databázy, dokumentácia
Linear --transport http https://mcp.linear.app/mcp Issues, projekty, cykly
Context7 --transport http https://mcp.context7.com/mcp Aktuálna dokumentácia knižníc (React, Next.js, Prisma…)
Playwright -- npx @playwright/mcp@latest Ovládanie prehliadača, screenshoty, testovanie UI
PostgreSQL / MySQL -- npx -y @bytebase/dbhub --dsn "..." SQL dotazy, prehľad schém
Filesystem -- npx -y @modelcontextprotocol/server-filesystem /cesta Prístup k súborom mimo pracovného adresára
Memory -- npx -y @modelcontextprotocol/server-memory Perzistentná knowledge-graph pamäť
Fetch -- uvx mcp-server-fetch Sťahovanie webových stránok ako markdown

Staršie balíky @modelcontextprotocol/server-github, server-postgres, server-slack, server-puppeteer a ďalšie sú archivované — nahradili ich oficiálne remote servery od poskytovateľov. Overené konektory nájdeš v Anthropic Directory.

Praktický príklad: GitHub MCP

  1. Pridaj remote server
    bash
    claude mcp add --transport http github https://api.githubcopilot.com/mcp/
  2. Prihlás sa cez OAuth
    V session napíš /mcp, vyber githubAuthenticate. Otvorí sa prehliadač, po prihlásení sa token uloží a automaticky obnovuje. Žiadny PAT netreba.
  3. Použi v Claude Code
    Teraz môžeš písať: "Vytvor PR z branchu feature/login do main s popisom zmien" alebo "Aké sú otvorené issues s labelom bug?"
💡

Ešte jednoduchšie: /plugin install github@claude-plugins-official — plugin má MCP server už prednastavený. Viď Pluginy. Pre git operácie v lokálnom repe (commit, push, gh pr create) MCP nepotrebuješ — Claude ich robí cez Bash.

Rozsah platnosti MCP serverov

RozsahPlatí preUložené v
local (default) Len ty, len tento projekt ~/.claude.json
project Všetci v tíme cez git .mcp.json v koreni projektu
user Ty, všetky projekty ~/.claude.json

Vytvorenie vlastného MCP servera

Ak potrebuješ pripojiť vlastnú internú službu, môžeš si napísať vlastný MCP server v TypeScripte alebo Pythone.

typescript – moj-server.ts
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";

const server = new McpServer({ name: "moj-server", version: "1.0.0" });

// Definuj nástroj
server.registerTool(
  "get_user",
  {
    description: "Vráti info o používateľovi z interného API",
    inputSchema: { userId: z.string() },
  },
  async ({ userId }) => {
    const data = await fetchFromInternalAPI(userId);
    return { content: [{ type: "text", text: JSON.stringify(data) }] };
  }
);

// Spusti server
await server.connect(new StdioServerTransport());
💡

Neboj sa pridať viac serverov — Claude Code načítava nástroje lenivo (tool search): pri štarte vidí len názvy, plné schémy až keď nástroj potrebuje. Koľko kontextu čo zaberá, ukáže /context all. Stav pripojení vidíš cez /mcp.

🧩

Pluginy

Hotové balíky skillov, agentov, hookov a MCP serverov

ℹ️
Čo je plugin?

Plugin je balík, ktorý môže obsahovať skilly, subagentov, hooks, MCP servery aj LSP servery — nainštaluješ ho jedným príkazom. Pluginy sa distribuujú cez marketplaces (katalógy). Oficiálny marketplace claude-plugins-official je pridaný automaticky.

Inštalácia

  1. Otvor plugin manažér
    V session napíš /plugin → záložka Discover. Pri každom plugine vidíš, čo obsahuje a koľko kontextu zaberie. Katalóg je aj na claude.com/plugins.
  2. Nainštaluj
    v Claude Code
    /plugin install github@claude-plugins-official
    /plugin install typescript-lsp@claude-plugins-official
  3. Vyber rozsah
    User = pre teba vo všetkých projektoch · Project = pre celý tím (zapíše sa do .claude/settings.json) · Local = pre teba len v tomto repe.

Odporúčané pluginy pre vibe coding

PluginČo pridá
typescript-lsp, pyright-lsp, gopls-lsp, rust-analyzer-lspCode intelligence — Claude vidí typové chyby hneď po každej úprave a vie skočiť na definíciu namiesto grepovania. Potrebuje nainštalovaný language server (napr. npm i -g typescript-language-server).
github, gitlabPrednastavený MCP server pre PR a issues
commit-commands/commit-commands:commit, push, vytvorenie PR
security-guidanceAutomaticky kontroluje každú zmenu na bežné zraniteľnosti
context7Aktuálna dokumentácia knižníc priamo v kontexte
sentry, linear, notion, supabase, vercel, figma, slackIntegrácie so službami cez MCP

Správa

v Claude Code
/plugin list
/plugin disable nazov@marketplace
/plugin enable nazov@marketplace
/plugin uninstall nazov@marketplace
/reload-plugins                    # po zmene mimo /plugin menu

# Ďalšie marketplaces (komunitný, vlastný)
/plugin marketplace add anthropics/claude-plugins-community
/plugin marketplace add moja-firma/claude-plugins
💡

Skilly z pluginu majú namespace: /nazov-pluginu:skill. Tímové pluginy zapíš do .claude/settings.json cez enabledPlugins — každý člen tímu ich pri otvorení repa dostane. Pluginy spúšťajú kód na tvojom počítači — inštaluj len z dôveryhodných zdrojov.

🎯

Skilly (Skills)

Znovupoužiteľné workflow kroky — volaj ich ako /nazov

ℹ️
Čo je skill?

Skill je adresár s SKILL.md obsahujúcim inštrukcie pre Claude. Zavolaj ho /nazov-skillu alebo ho Claude načíta sám, ak uzná, že je relevantný. Pri štarte session Claude vidí len description každého skillu — plný obsah sa načíta až keď sa použije. Šetrí tokeny.

⚠️
Starý spôsob (.claude/commands/) je deprecated!

Súbory v .claude/commands/nazov.md stále fungujú (spätná kompatibilita), ale odporúčaný spôsob je .claude/skills/nazov/SKILL.md. Skills podporujú podporné súbory, hooks, auto-invokovanie a ďalšie funkcie. Ak existujú oba s rovnakým názvom, skill má prednosť.

Štruktúra skillov

filesystem
# Projekt-level (commitni do gitu, zdieľaš s tímom)
.claude/skills/
├── review/
│   └── SKILL.md        # /review
├── deploy/
│   ├── SKILL.md        # /deploy
│   └── checklist.md    # podporný súbor
└── fix-issue/
    └── SKILL.md        # /fix-issue

# Personal-level (pre všetky projekty)
~/.claude/skills/
└── summarize-changes/
    └── SKILL.md        # /summarize-changes

Názov príkazu je názov adresára. Zmeny v SKILL.md sa prejavia okamžite — bez reštartu session.

Formát SKILL.md — frontmatter

Každý SKILL.md má YAML frontmatter na začiatku a potom inštrukcie:

markdown – .claude/skills/deploy/SKILL.md
---
name: deploy
description: Pripraví a otestuje aplikáciu pred releasom. Použi keď chceš vydať novú verziu.
disable-model-invocation: true
allowed-tools: Bash(npm *) Bash(git *)
---

Priprav release:

1. Spusti `npm run test` — ak niečo failuje, zastav a reportuj
2. Spusti `npm run build` — over že build prebehne čisto
3. Skontroluj `git status` — nesmú byť necommitnuté zmeny
4. Navrhni verziu podľa semver (patch/minor/major)
5. Opýtaj sa či môžem pokračovať s tagom a pushom

Kľúčové frontmatter polia

PoleČo robí
descriptionPopis pre Claude — podľa toho rozhoduje, či skill spustí automaticky. Odporúčané. Spolu s when_to_use max 1 536 znakov.
disable-model-invocation: trueLen ty môžeš zavolať skill (/deploy). Claude ho nespustí sám a jeho popis nezaberá kontext. Vhodné pre deploy, commit, push.
user-invocable: falseLen Claude spustí skill automaticky — nebude viditeľný v / menu.
allowed-toolsNástroje predschválené na ťah tohto skillu (do tvojej ďalšej správy). Napr. Bash(git add *) Bash(git commit *).
argument-hintHint pri autocomplete, napr. [issue-number].
model / effortModel (napr. haiku) a úroveň uvažovania len pre tento skill.
context: forkSpustí skill v izolovanom subagentovi (vlastný kontext, bez histórie).
agentTyp agenta keď context: fork — napr. Explore, Plan, alebo vlastný z .claude/agents/.
pathsGlob vzory — Claude skill automaticky zváži len pri práci s týmito súbormi (src/**/*.tsx).
hooksHooks, ktoré sa zaregistrujú pri zavolaní skillu (rovnaký formát ako v settings).

Príklad: skill /review

markdown – .claude/skills/review/SKILL.md
---
description: Code review aktuálnych zmien. Použi pred každým commitom alebo merge.
allowed-tools: Bash(git diff *) Bash(git status) Bash(npm run test)
---

Vykonaj kompletný code review aktuálnych zmien:

1. Spusti `git diff` a preskúmaj všetky zmenené súbory
2. Skontroluj:
   - Logické chyby a edge cases
   - Bezpečnostné problémy (SQL injection, XSS, citlivé dáta)
   - Výkon (N+1 dotazy, chýbajúce indexy)
   - Dodržanie konvencií z CLAUDE.md
3. Spusti `npm run test`
4. Zhrň nálezy:
   - ✅ Čo je dobré
   - ⚠️ Čo treba zlepšiť
   - ❌ Čo je kritické (blokuje merge)

Príklad: skill s argumentom

markdown – .claude/skills/fix-issue/SKILL.md
---
name: fix-issue
description: Opraví GitHub issue podľa čísla
argument-hint: "[issue-number]"
disable-model-invocation: true
---

Oprav GitHub issue #$ARGUMENTS:

1. Načítaj detaily issue pomocou GitHub MCP nástroja
2. Analyzuj ktoré súbory treba zmeniť
3. Implementuj fix
4. Napíš test pokrývajúci tento bug
5. Vytvor commit: "fix: resolve issue #$ARGUMENTS"

Zavolaj ho ako: /fix-issue 142. Pri viacerých argumentoch použi $0, $1… (napr. /fix-issue 142 hotfix$0 = 142, $1 = hotfix). Cestu k adresáru skillu dáva ${CLAUDE_SKILL_DIR} — hodí sa na odkazovanie podporných skriptov.

Dynamický kontext — !`príkaz`

Špeciálna syntax !`príkaz` spustí bash príkaz pred tým ako Claude skill dostane — výstup sa vloží priamo do promptu:

markdown – .claude/skills/summarize-changes/SKILL.md
---
description: Zhrnie necommitnuté zmeny a upozorní na riziká.
---

## Aktuálne zmeny

!`git diff HEAD`

## Inštrukcie

Zhrň zmeny v 2-3 bodoch. Vypíš riziká (chýbajúce error handling,
hardcoded hodnoty, testy ktoré treba aktualizovať).

Claude dostane skill s reálnym git diff už vloženým — nepotrebuje ho načítavať sám. Ak príkaz môže skončiť nenulovým kódom, pridaj || true, inak sa skill nespustí.

Kde skill uložiť — rozsah platnosti

UmiestnenieCestaPlatí pre
Projekt.claude/skills/<nazov>/SKILL.mdLen tento projekt (commitni do gitu)
Personal~/.claude/skills/<nazov>/SKILL.mdVšetky tvoje projekty
Monorepo podadresárapps/web/.claude/skills/<nazov>/SKILL.mdNačíta sa pri práci v tom podadresári; volanie /web:nazov
Plugin<plugin>/skills/<nazov>/SKILL.mdKde je plugin aktívny; volanie /plugin:nazov

Vstavané skilly (bundled)

Claude Code obsahuje hotové skilly dostupné vo všetkých projektoch:

SkillNa čo slúži
/code-reviewCode review diffu, branchu alebo PR — s úrovňou (lowmax), voliteľne --fix
/security-reviewBezpečnostná kontrola zmien
/simplifyZjednodušenie a vyčistenie zmeneného kódu
/debugDiagnostika a oprava bugov
/run a /verifySpustí aplikáciu a overí, že zmena naozaj funguje
/batchVeľké zmeny naprieč codebase paralelne
/loopOpakuje úlohu v intervale
/doctorKontrola inštalácie a nastavení
/claude-apiReferencia Claude API pri stavaní AI aplikácií
💡

Commitni .claude/skills/ do gitu — zdieľaš workflow s celým tímom. Každý člen volá /review a dostane konzistentný výsledok podľa tvojich pravidiel. Pravidlo palca: čo píšeš do chatu tretíkrát, patrí do skillu.

⚖️

Skills vs Agents vs MCP

Kedy použiť čo — jasné rozlíšenie troch konceptov

Toto je jedna z najčastejšie mätúcich vecí v Claude Code. Všetky tri rozširujú schopnosti Claudu, ale každé inak.

Prehľad rozdielov

🎯 Skill🤖 Agent/Subagent🔌 MCP server
Čo je to Markdown súbor s inštrukciami Samostatná AI inštancia Externý server s nástrojmi
Kto ho vykonáva Hlavný Claude Nový Claude proces Externý proces/API
Má vlastný kontext Nie — zdieľa hlavný Áno — izolovaný, vráti len zhrnutie Áno — vlastná služba
Náklady na kontext Nízke — popis vždy, obsah až pri použití Samostatné okno (vlastné tokeny) Nízke — názvy nástrojov, schémy až pri použití
Prístup k nástrojom Rovnaké ako hlavný Claude Podľa nastavenia agenta (tools:) Len vlastné nástroje
Paralelné spustenie Nie Áno Áno (volania)
Kde sa konfiguruje .claude/skills/<nazov>/SKILL.md .claude/agents/<nazov>.md .mcp.json alebo claude mcp add
Aktivácia /nazov v chate, alebo Claude sám Claude sám, alebo @agent-nazov Claude volá nástroje

Vizuálne vysvetlenie

🎯
Skill = recept

Skill je ako kuchársky recept. Claude ho prečíta a vykoná krok za krokom, sám, so svojimi nástrojmi. Rýchle, lacné, jednoduché. Vhodné pre opakujúce sa workflow (review, deploy, docs) alebo referenčné znalosti (štýlová príručka API).

🤖
Agent = zamestnanec

Agent je ako nový zamestnanec, ktorý dostane zadanie a pracuje samostatne. Má vlastný „mozog“ (kontext), môže robiť rozhodnutia, paralelne s ostatnými. Do hlavnej konverzácie vráti len zhrnutie — tvoj kontext ostane čistý.

🔌
MCP server = telefón

MCP je ako dať Claudovi telefón, cez ktorý môže volať externé služby — GitHub, databázu, Sentry. Bez MCP Claude nevidí nič mimo tvojho projektu (a webu). S MCP môže pracovať s celým svetom.

Rozhodovací strom — čo použiť?

rozhodovanie
Potrebujem rozšíriť schopnosti Claudu...

→ Claude opakovane robí tú istú chybu / nepozná konvenciu?
    ÁNO → napíš to do CLAUDE.md (alebo .claude/rules/)

→ Je to opakovateľný workflow alebo referenčný materiál?
    ÁNO → použi SKILL (/review, /deploy, /fix-tests)

→ Potrebujem prístup k externej službe (GitHub, DB, Sentry)?
    ÁNO → použi MCP SERVER (alebo plugin, ktorý ho obsahuje)

→ Úloha zahltí kontext veľa súbormi alebo chcem paralelizovať?
    ÁNO → použi SUBAGENT (Explore, Plan, vlastný)

→ Musí sa to stať VŽDY, bez výnimky (lint, blokovanie, notifikácia)?
    ÁNO → použi HOOK

→ Rovnaké nastavenie potrebujem aj v ďalšom repe?
    ÁNO → zabaľ to ako PLUGIN

Kombinovanie všetkých troch

V praxi ich kombinuješ. Príklad komplexného workflow:

markdown – .claude/skills/full-review/SKILL.md
---
description: Kompletný release review pred merge do main.
disable-model-invocation: true
---

Vykonaj kompletný release review:

1. Spusti EXPLORE SUBAGENTA, ktorý preskúma všetky
   zmenené súbory a identifikuje potenciálne problémy

2. Pomocou GitHub MCP nástrojov načítaj otvorené issues
   a over či zmeny riešia nejaký z nich

3. Spusti testy a build

4. Zhrň výsledky a navrhni či je kód pripravený na merge

Keď zavoláš /full-review, Claude: vykoná skill → spustí subagenta → použije MCP nástroj — všetko automaticky.

💡
Pravidlo palca:

Začni s CLAUDE.md a skillom — sú najjednoduchšie. Keď skill nestačí (príliš veľa súborov, paralelná práca), pridaj subagenta. Keď potrebuješ dáta zvonku, pridaj MCP. Keď niečo musí platiť vždy, urob z toho hook.

🤖

Subagenty

Paralelné AI agenty pre väčšie a komplexné úlohy

ℹ️
Čo sú subagenty?

Claude môže spustiť ďalších agentov na riešenie čiastkových úloh. Každý agent má vlastný kontext a nástroje, môže bežať paralelne s ostatnými. Hlavný Claude dostane len zhrnutie — desiatky prečítaných súborov nezahltia tvoju konverzáciu.

Vstavané typy agentov

TypNa čo sa hodí
Explore Rýchle read-only prehľadávanie kódu. Nenačítava CLAUDE.md ani git status → lacný. Jednorazový (nedá sa naň nadviazať).
Plan Prieskum a návrh implementácie v Plan mode. Nerobí zmeny v kóde.
general-purpose Výskum, multi-step úlohy vrátane úprav. Plný prístup k nástrojom.
claude Univerzálny agent — default keď žiaden iný nevyhovuje.
claude-code-guide Odpovedá na otázky o Claude Code samotnom (beží na Haiku — lacný).

Vlastné subagenty — .claude/agents/

Môžeš si definovať vlastných agentov ako Markdown súbory s YAML frontmatter. Claude ich použije automaticky podľa description, alebo ich explicitne zavoláš. Povinné sú len name a description.

markdown – .claude/agents/code-reviewer.md
---
name: code-reviewer
description: Expertný code reviewer pre kvalitu a bezpečnosť. Použi proaktívne po každej väčšej zmene.
tools: Read, Grep, Glob, Bash
model: sonnet
---

Si senior code reviewer. Fokusuj sa na:
- Kvalitu kódu a čitateľnosť
- Bezpečnostné zraniteľnosti
- Výkonnostné problémy
- Pokrytie testami

Vždy uveď konkrétny súbor a riadok pre každý nález.

Projekt-level: .claude/agents/ (commitni do gitu) · Personal: ~/.claude/agents/ (všetky projekty). Zmeny v súboroch sa prejavia bez reštartu; interaktívne ich vytvoríš aj cez /agents.

Ďalšie užitočné frontmatter polia

PoleČo robí
tools / disallowedToolsAllowlist alebo denylist nástrojov — string oddelený čiarkami, nie YAML zoznam
modelhaiku / sonnet / opus / inherit — lacné úlohy daj na Haiku
permissionModeplan (read-only), acceptEdits, default
skillsSkilly, ktoré sa agentovi prednačítajú do kontextu
memory: projectAgent si udržiava vlastnú pamäť medzi sessions (.claude/agent-memory/<name>/)
isolation: worktreeBeží v izolovanom git worktree
maxTurnsLimit kôl — ochrana pred nekonečným behom

Ako subagenta zavolať

v Claude Code
# Prirodzeným jazykom – Claude rozhodne
Použi code-reviewer subagenta na kontrolu zmien v auth module

# @-mention – garantuje, že agent pobeží
@agent-code-reviewer pozri sa na zmeny v auth

# Paralelne
Preskúmaj auth, databázu a API moduly paralelne v samostatných subagentoch
bash
# Použiť agenta ako hlavného pre celú session
claude --agent code-reviewer

# Jednorazový agent bez súboru (skripty, CI)
claude --agents '{
  "debugger": {
    "description": "Debugging specialist pre chyby a failing testy.",
    "prompt": "Si expert debugger. Analyzuj chyby a navrhni opravy.",
    "tools": ["Read", "Grep", "Glob", "Bash"],
    "model": "sonnet"
  }
}'

Kedy použiť subagentov?

  • Skenovanie kódu — Explore agent prehľadá 50 súborov, tebe vráti 10 riadkov zhrnutia
  • Hlučné úlohy — spustenie test suite, kde ťa zaujímajú len failujúce testy
  • Paralelné úlohy — napísanie testov + dokumentácia súčasne
  • Špecializované role — security reviewer, migration expert s vlastným promptom a lacnejším modelom
💡

Subagenti bežia štandardne na pozadí — môžeš medzitým pracovať ďalej. Bežiaci foreground task presunieš na pozadie cez Ctrl+B; prehľad všetkých dáva /tasks. Na dokončeného subagenta (okrem Explore/Plan) vieš nadviazať: „pokračuj v tej analýze a pozri sa aj na X“.

⚠️

Každý subagent spotrebúva tokeny samostatne. Pri komplexných úlohách sa spotreba rýchlo násobí — sleduj ju cez /usage. Lacné úlohy smeruj na Haiku (model: haiku vo frontmatteri).

🧠

Memory (Pamäť)

Ako si Claude pamätá kontext medzi sessions

Dva systémy pamäte

📁 CLAUDE.md

Ty píšeš inštrukcie a pravidlá — konvencie, príkazy, architektúra. Načíta sa každú session. Viď sekciu CLAUDE.md.

🤖 Auto memory

Claude píše sám — poznatky z tvojich opráv, preferencie, kontext, ktorý sa z kódu nedá vyčítať. Zapnuté predvolene.

Auto memory

Claude Code počas práce automaticky ukladá poznatky — keď ho opravíš, potvrdíš prístup alebo mu povieš niečo o projekte, čo nie je v kóde. Nemusíš nič robiť. Ukladá štyri typy poznámok:

  • user — tvoja rola, expertíza, pracovné preferencie
  • feedback — opravy, ktoré si mu dal, a potvrdené postupy
  • project — rozpracované veci, termíny, rozhodnutia mimo kódu
  • reference — kde nájsť veci mimo projektu (issue tracker, dashboard)

Preskakuje všetko, čo sa dá odvodiť z kódu, a všetko, čo už je v CLAUDE.md.

filesystem – auto memory
~/.claude/projects/<projekt>/memory/
├── MEMORY.md            # Index – jeden riadok na spomienku, načíta sa každú session
├── user_role.md         # Jedna spomienka (načíta sa až keď je potrebná)
├── feedback_testing.md
└── ...

Do session sa načíta iba prvých 200 riadkov / 25 KB súboru MEMORY.md. Detaily sú v samostatných súboroch, ktoré Claude číta podľa potreby. Všetky worktrees toho istého repa zdieľajú jednu pamäť; pamäť je lokálna na tomto počítači.

Vypnutie / presmerovanie auto memory

Najjednoduchšie cez /memory → prepínač auto memory. Alebo v settings:

json – .claude/settings.json
// Vypnúť auto memory (pre tento projekt)
{ "autoMemoryEnabled": false }

// Vlastná cesta pre ukladanie
{ "autoMemoryDirectory": "~/my-custom-memory-dir" }

// Alebo env premenná: CLAUDE_CODE_DISABLE_AUTO_MEMORY=1

Formát súboru spomienky

Spomienky sú obyčajný markdown — môžeš ich čítať, upravovať aj mazať:

markdown – memory/project_launch.md
---
name: project-launch
description: Cieľ a termín projektu
metadata:
  type: project
---

E-shop platforma, launch plánovaný na Q1 2027.
Prioritou je checkout flow, admin sa rieši až po launchi.

**Prečo:** Marketing má kampaň naviazanú na termín.
**Ako aplikovať:** Pri návrhoch preferuj rýchle riešenia pre checkout, admin nezdržuj.

MEMORY.md – index spomienok

markdown – MEMORY.md
- [Project launch](project_launch.md) — e-shop, launch Q1 2027, checkout má prioritu
- [User preferences](user_prefs.md) — preferuje krátke odpovede, slovenčina
- [Testing feedback](feedback_testing.md) — vždy spúšťať testy pred commitom, používať pnpm
💡
„Zapamätaj si“ vs „pridaj do CLAUDE.md“

Keď povieš „zapamätaj si, že používame pnpm“, Claude to uloží do auto memory (len pre teba). Keď povieš „pridaj do CLAUDE.md, že používame pnpm“, zapíše to do CLAUDE.md (pre celý tím cez git). Čo si zapamätal, skontroluješ cez /memory → auto memory folder.

Sessions & Checkpointy

Ako vrátiť zmeny, nadviazať na starú konverzáciu a spravovať kontext

ℹ️
Checkpointy

Claude Code si pred každou úpravou súboru uloží snímku stavu. Keď sa niečo pokazí, vrátiš sa na ľubovoľný bod — kód, konverzáciu alebo oboje. Bez commitov, bez git stash.

Vrátenie zmien — /rewind

  1. Stlač Esc dvakrát alebo napíš /rewind
    Zobrazí sa zoznam tvojich správ (checkpointov).
  2. Vyber bod, kam sa chceš vrátiť
    Napr. správu pred tým, ako Claude začal refaktor, ktorý sa nepodaril.
  3. Zvoľ, čo vrátiť
    Kód aj konverzáciu (typické), len kód (Claude si pamätá, čo skúsil) alebo len konverzáciu (zmeny ostanú, kontext sa vyčistí).
⚠️

Checkpointy pokrývajú úpravy, ktoré Claude urobil cez svoje nástroje na súbory. Nevracajú efekty bash príkazov (napr. rm, npm install, DB migrácie) ani tvoje ručné úpravy v editore. Na tie stále platí git.

Pokračovanie v konverzácii

bash
# Pokračuj v poslednej session v tomto adresári
claude --continue        # alebo: claude -c

# Vyber si zo starších sessions
claude --resume          # alebo: claude -r, alebo /resume v session

# Jednorazový prompt bez interaktívnej session (skripty, CI)
claude -p "Zhrň zmeny v poslednom commite"

V session: /resume otvorí zoznam konverzácií, /fork rozvetví aktuálnu do novej (paralelný experiment), /export uloží prepis do súboru.

Správa kontextu

PríkazKedy
/contextZisti, čo zaberá kontextové okno — CLAUDE.md, MCP nástroje, história, prečítané súbory
/compactKontext sa plní, ale chceš pokračovať v tej istej úlohe — Claude históriu zhrnie. Môžeš pridať inštrukciu: /compact zachovaj zoznam zmenených súborov
/clearZačínaš úplne novú úlohu — čistý štart je lacnejší a presnejší než dlhá história

Keď sa kontext blíži k limitu, Claude Code spustí kompakciu automaticky. CLAUDE.md sa po kompakcii znovu načíta z disku — inštrukcie zadané len v chate sa ale môžu stratiť, preto trvalé veci patria do CLAUDE.md.

Práca na pozadí

  • Ctrl+B — presunie bežiaci príkaz alebo subagenta na pozadie, ty pracuješ ďalej
  • /tasks — prehľad všetkého, čo beží na pozadí
  • /loop 10m /code-review — opakované spúšťanie v intervale
  • Správy môžeš písať aj kým Claude pracuje — zaradia sa do fronty
💡

Kombinácia pre bezpečný vibe coding: Plan mode na návrh → implementácia → /code-review → ak sa niečo pokazilo, Esc Esc a späť. Commituj po každom funkčnom kroku — checkpointy sú dočasné, git je trvalý.

💡

Vibe Coding tipy

Best practices pre efektívnu spoluprácu s Claudom

Ako formulovať úlohy

Zlý príklad:

"Oprav to" alebo "Urob to lepšie" — príliš vágne, Claude nevie čo chceš

Dobrý príklad:

"V súbore @src/components/UserCard.tsx pridaj loading skeleton stav — keď sa načítavajú dáta, zobraz 3 placeholder karty s Tailwind animáciou pulse."

Zlaté pravidlá vibe codingu

  1. Začni s Plan mode
    Pre každú väčšiu zmenu najprv nechaj Claudu naplánovať — až potom implementovať. Prepni Shift+Tab na plan alebo napíš /plan. Viď Plan mode & povolenia.
  2. Malé kroky, časté potvrdenia
    Nechaj Claudu robiť malé zmeny, nie celý refactor naraz. Po každom kroku over výsledok a commitni.
  3. /code-review pred každým commitom
    Príkaz /code-review spustí review aktuálnych zmien — Claude sám nájde problémy. Pre citlivý kód pridaj /security-review.
  4. Keď sa to pokazí — Esc Esc
    Nesnaž sa opravovať zlý refaktor ďalšími promptmi. Vráť sa cez /rewind na checkpoint pred ním a zadaj úlohu lepšie.
  5. Buď explicitný ohľadom kontextu
    Povedz mu čo si práve videl, aká je chyba, aký je cieľ. Súbory vkladaj cez @cesta, chybové výstupy cez !príkaz, screenshoty vlož zo schránky (Ctrl+V).
  6. Používaj CLAUDE.md
    Keď Claude urobí tú istú chybu druhýkrát, zapíš to do CLAUDE.md. Je to tvoj najvýkonnejší nástroj.
  7. Nech si Claude výsledok sám overí
    Pýtaj: „spusti testy“, „otvor stránku a over, že formulár funguje“ (/verify, Playwright MCP alebo Chrome). Claude s možnosťou overenia robí výrazne menej chýb.

Efektívne prompty — šablóny

Pridanie novej funkcie

prompt
Pridaj funkciu [POPIS] do [SÚBOR/MODUL].
Požiadavky:
- [Požiadavka 1]
- [Požiadavka 2]
Neupravuj iné súbory ako [zoznam povolených].
Na záver spusti testy.

Oprava bugu

prompt
V súbore @[SÚBOR] na riadku [ČÍSLO] sa vyskytuje chyba:
[CHYBOVÁ SPRÁVA]

Reprodukcia: [kroky na reprodukciu]
Očakávané správanie: [čo má robiť]
Aktuálne správanie: [čo robí]
Najprv napíš test, ktorý bug reprodukuje, potom ho oprav.

Refaktorovanie

prompt
Refaktoruj [SÚBOR/FUNKCIA] pre lepšiu [čitateľnosť/výkon/testovateľnosť].
Zachovaj rovnaké API a správanie.
Nepridávaj nové funkcie.
Over, že všetky existujúce testy prechádzajú.

Klávesové skratky v Claude Code

SkratkaAkcia
EnterOdošle správu
\ + Enter alebo Ctrl+JNový riadok (funguje všade); Shift+Enter natívne v iTerm2, Ghostty, Kitty, WezTerm, Warp, Windows Terminal
Shift+TabCykluje permission módy (Manual → acceptEdits → plan…)
EscPreruší Claudu / zavrie dialóg
Esc EscRewind — návrat na checkpoint (alebo vymaže rozpísaný draft)
Ctrl+CPreruší prácu / vyčistí input
Ctrl+DUkončí session
Ctrl+BPresunie bežiaci task na pozadie
Ctrl+OPrepne zobrazenie celého prepisu (verbose)
Ctrl+RVyhľadávanie v histórii príkazov
Ctrl+TZobrazí / skryje Claudov zoznam úloh
Ctrl+LVyčistí obrazovku
Ctrl+VVloží obrázok zo schránky (screenshot)
Alt+P / Option+PPrepne model
↑ / ↓Navigácia v histórii správ
?Na prázdnom inpute zobrazí panel skratiek

Skratky si vieš prispôsobiť cez /keybindings.

⚠️

Časté chyby

Čomu sa vyhnúť pre úsporu času a peňazí

Chyby pri nastavení

Chýbajúci alebo prázdny CLAUDE.md

Claude nevie, ako spúšťaš testy, aké máš konvencie ani čo nesmie robiť. Výsledok je generický kód, ktorý nezapadá do projektu. Začni cez /init.

Zabudnutý ANTHROPIC_API_KEY pri predplatnom

Ak máš v shelli nastavený API kľúč, Claude Code ho použije namiesto predplatného a účtuje ti API. Over cez /status, prípadne unset ANTHROPIC_API_KEY.

Tokeny v git repozitári

Nikdy nedávaj API kľúče ani MCP tokeny do settings.json alebo .mcp.json. Používaj ${PREMENNA} expanziu, OAuth cez /mcp, alebo settings.local.json v .gitignore.

Chyby pri používaní

Veľká zmena bez Plan mode

"Prepíš celú aplikáciu do nového frameworku" bez plánu = nekontrolovateľný výsledok. Najprv Shift+Tab → plan, prejdi si plán, rozdeľ na kroky, potom implementuj.

Neoverovanie výsledkov

Claude môže urobiť chyby. Vždy over čo zmenil — /diff alebo git diff pred každým commitom, /code-review pri väčších zmenách.

Opravovanie zlého výsledku ďalšími promptmi

Keď sa refaktor vyberie zlým smerom, každý ďalší prompt situáciu zhoršuje a plní kontext. Esc Esc → vráť sa na checkpoint → zadaj úlohu presnejšie.

Ignorovanie kontextového okna

Veľmi dlhé sessions zhoršujú presnosť a zvyšujú náklady. Sleduj /context, pri novej úlohe /clear, pri pokračovaní /compact.

--dangerously-skip-permissions na vlastnom počítači

Claude potom bez otázky spustí čokoľvek — vrátane rm -rf alebo git push --force. Používaj len v kontajneri/VM. Pre menej otázok stačí acceptEdits alebo auto mód + allow pravidlá.

Cost management

  • Sleduj spotrebu cez /usage, obsah kontextu cez /context
  • Používaj /compact pri dlhých sessionách a /clear pri novej úlohe
  • Pre skenovanie kódu používaj Explore subagentov — nezaťažujú tvoj kontext
  • Prepínaj model podľa úlohy: /model haiku pre jednoduché, sonnet na bežný vývoj, opus na náročné; /effort low pre triviálne úlohy
  • Subagentom daj lacný model cez model: haiku vo frontmatteri
  • Skilly so side-efektmi označ disable-model-invocation: true — ich popis potom nezaberá kontext
  • API účet: nastav spending limit na platform.claude.com
💡
Tip: Prompt caching

Claude automaticky cachuje opakujúce sa časti kontextu (CLAUDE.md, systémový prompt, história). Preto je lacnejšie pokračovať v session než ju stále reštartovať — a preto zmena pluginov či MCP serverov uprostred session cache zneplatní.

Keď niečo nefunguje

bash – diagnostika
# Verzia a stav inštalácie, auto-update, chyby v settings
claude --version
claude doctor

# Aktualizácia na najnovšiu verziu
claude update

# Spustenie s debug logom (log: ~/.claude/debug/<session-id>.txt)
claude --debug

V session: /status (účet, model, adresár), /doctor (diagnostika + návrhy opráv), /mcp (stav serverov), /context (či sa načítal CLAUDE.md), /bug (nahlásenie chyby Anthropicu).

Máš otázku? Pozri oficiálnu dokumentáciu, GitHub repozitár, alebo sa spýtaj priamo v Claude Code — na otázky o ňom samom odpovedá vstavaný agent claude-code-guide.