Claude Code skills: co to je a jak napsat vlastní skill
SKILL.md krok za krokem: hlavička, kam skilly ukládat, argumenty, dynamický kontext a pomocné skripty. S ukázkami, které můžete rovnou použít.
Kdo s Claude Code pracuje déle než pár dní, začne opakovat ty samé pokyny: „nejdřív napiš testy“, „commit zprávy piš takhle“, „před nasazením pusť tohle“. Přesně na to jsou skilly — balíčky instrukcí, které si agent načte sám, když je potřebuje, nebo je spustíte lomítkem. Ukážeme, jak fungují a jak napsat vlastní.
1. Co je skill v Claude Code
Skill je složka se souborem SKILL.md. Na začátku
souboru je krátká hlavička v YAML (frontmatter), pod ní obyčejný Markdown s pokyny.
Vedle můžou ležet další soubory — šablony, ukázky, skripty.
Podstatné je, kdy se skill načte. Claude Code na začátku vidí jen
jméno a popis každého skillu. Celý obsah si přečte, až když váš požadavek odpovídá
popisu, nebo když skill zavoláte sami jako /jmeno-skillu. Díky tomu
můžete mít skillů desítky a kontext se jimi nezahltí.
2. Skill, CLAUDE.md, nebo vlastní příkaz?
- CLAUDE.md se načte vždycky. Patří do něj to, co má agent vědět pořád: jak se projekt spouští, jaké jsou konvence, kde co leží.
- Skill se načte, jen když je potřeba. Patří do něj postup na konkrétní druh práce: psaní testů, revize, vydání verze, migrace databáze.
- Vlastní příkazy (
.claude/commands/deploy.md) se se skilly sloučily: soubor příkazu i.claude/skills/deploy/SKILL.mdvytvoří stejný/deploy. Staré příkazy fungují dál, na nové věci je lepší skill — umí víc.
Dobré pravidlo: pokud něco v CLAUDE.md platí jen pro jeden druh úkolu,
přesuňte to do skillu. CLAUDE.md zůstane krátký a agent nebude číst
pokyny k vydání verze, když opravuje překlep.
3. První skill za dvě minuty
Uděláme skill, který shrne neodevzdané změny a upozorní na rizika. Založte složku v projektu:
mkdir -p .claude/skills/shrn-zmeny
.claude/skills/shrn-zmeny/SKILL.md
---
name: shrn-zmeny
description: Shrne neodevzdané změny a upozorní na rizika. Použij, když se uživatel ptá, co změnil, chce commit zprávu nebo revizi diffu.
---
## Aktuální změny
!`git diff HEAD`
## Pokyny
Shrň změny výše do dvou až tří odrážek. Pak vypiš rizika:
chybějící ošetření chyb, natvrdo zapsané hodnoty, testy, které
je potřeba upravit. Když je diff prázdný, napiš, že žádné změny nejsou.
Hotovo. Zavoláte ho jako /shrn-zmeny, nebo se prostě zeptáte „co jsem
změnil?“ a Claude si ho načte sám. Řádek !`git diff HEAD` se spustí
dřív, než Claude skill uvidí, a na jeho místo se dosadí výstup —
agent tak dostane aktuální diff, aniž by si o něj musel říkat.
4. Hlavička SKILL.md: pole, která se vyplatí znát
Hlavička musí začínat hned na prvním řádku mezi dvěma ---. Žádné pole
není povinné, ale bez dobrého description Claude neví, kdy skill použít.
| Pole | K čemu je |
|---|---|
name | jméno v nabídce /; bez něj se použije název složky |
description | co skill dělá a kdy ho použít — podle toho se Claude rozhoduje |
when_to_use | další spouštěcí fráze, připojí se k popisu |
disable-model-invocation | true = spustíte jen vy, Claude sám ne |
user-invocable | false = skryje skill z nabídky, použije ho jen Claude |
allowed-tools | nástroje, které smí během skillu použít bez ptaní |
argument-hint | nápověda k argumentům, třeba [číslo-issue] |
model, effort | model a úroveň přemýšlení po dobu skillu |
context: fork | spustí skill v samostatném subagentovi |
paths | automaticky jen u souborů odpovídajících vzoru |
Na skilly s vedlejšími účinky — nasazení, mazání, odeslání čehokoliv
ven — dávejte disable-model-invocation: true. Nechcete, aby se agent
rozhodl nasadit do produkce jen proto, že jste v konverzaci zmínili slovo „deploy“.
5. Kam skilly ukládat
.claude/skills/<jméno>/SKILL.mdv repozitáři — skill projektu. Commitněte ho a má ho celý tým.~/.claude/skills/<jméno>/SKILL.md— osobní skill pro všechny vaše projekty na tomhle počítači.<podsložka>/.claude/skills/— skill jen pro část monorepa; načte se, když se pracuje v ní.- Pluginy a firemní spravované nastavení mají vlastní umístění.
Když se jména potkají, osobní skill má přednost před projektovým. Claude Code složky hlídá, takže úpravy se většinou projeví bez restartu.
6. Argumenty a dynamický kontext
Co napíšete za jméno skillu, dostane skill v proměnné $ARGUMENTS.
Jednotlivé argumenty jsou $0, $1 a dál:
.claude/skills/oprav-issue/SKILL.md
---
name: oprav-issue
description: Opraví issue z GitHubu podle čísla
argument-hint: [číslo-issue]
disable-model-invocation: true
---
## Zadání
!`gh issue view $0`
## Postup
1. Najdi příčinu a napiš test, který chybu zachytí.
2. Oprav ji a ověř, že test prochází.
3. Shrň, co jsi změnil a proč.
/oprav-issue 123 pak před spuštěním stáhne zadání issue 123 a Claude
ho dostane rovnou v kontextu. Delší blok příkazů zapíšete do ohrazeného bloku
otevřeného ```!. Pozor: když dosazovaný příkaz selže, skill se
nespustí — u příkazů, které selhat můžou, připište || true.
7. Pomocné soubory a skripty
SKILL.md držte pod 500 řádky. Podrobnosti dejte do vedlejších souborů
a odkažte na ně — Claude si je přečte, až když je potřebuje:
vydani/
├── SKILL.md postup a odkazy
├── checklist.md načte se, když je potřeba
└── scripts/
└── over-verzi.sh spustí se, nečte se
Skript ve skillu se spouští přes ${CLAUDE_SKILL_DIR}, takže funguje,
ať je skill uložený kdekoliv. Když ho chcete pouštět bez ptaní, povolte přesně ten
skript v allowed-tools, ne celý Bash.
8. Jak psát skilly, které agent opravdu použije
- Popis je spouštěč. Napište do něj, kdy se má skill použít, slovy, kterými o tom mluvíte: „Použij, když uživatel chce vydat novou verzi nebo zmíní changelog.“
- Jeden skill, jeden druh práce. Skill „všechno o backendu“ se načte pokaždé, nebo nikdy.
- Pište postup, ne přání. Číslované kroky a konkrétní příkazy fungují líp než „buď pečlivý“.
- Řekněte, co skill dělat nemá. Hranice („jen spusť testy, nic neopravuj“) agenta drží líp než seznam toho, co dělat má.
- Obsah zůstává v kontextu. Načtený skill tam zůstane i v dalších krocích, takže každý řádek něco stojí. Stručnost se vyplatí.
9. Skilly mimo Claude Code
Skilly v Claude Code vycházejí z otevřeného standardu Agent Skills
(agentskills.io). Skilly podporuje i Codex od OpenAI a OpenCode, takže dobře napsaný
skill nezůstane zamčený u jednoho nástroje. Claude Code standard rozšiřuje —
pole jako argument-hint nebo context: fork jiné nástroje
znát nemusí, a při nahrání na claude.ai nebo přes Skills API se přijímá jen
základní sada polí.
10. Jak skilly používáme v codenu
V codenu stojí na skillech zobrazení testů v telefonu. Skill
coden-test-docs agentovi říká, kam a v jakém tvaru psát dokumentaci
testovacích případů, a coden-test-results, jak zapisovat výsledky
běhů. Aplikace pak tyhle soubory čte a ukáže historii běhů, porovnání mezi nimi
a proklik z neúspěšného testu na jeho popis. Agent přitom nemusí nic vědět
o aplikaci — stačí mu skill.
Další praktický skill, ten, který agenta nutí nejdřív vysvětlit návrh a až pak psát kód, najdete v článku Jak přistupovat k vývoji s AI agenty.
Máte na to jiný názor? Napište na support@coden-app.com.