4. Skills¶
4.1 Skillin konsepti¶
Määritelmä
Skill on Markdown-pohjainen, uudelleenkäytettävä tieto- tai työprosessimoduuli.
Nykyisessä Claude Codessa custom commands on yhdistetty Skills-järjestelmään:
.claude/commands/deploy.mdja.claude/skills/deploy/SKILL.md
voivat tuottaa saman /deploy-komennon. Skill voi kuitenkin sisältää:
- tukitiedostoja
- frontmatter-ohjausta
- argumenttien käsittelyä
4.2 Rakenne¶
.claude/
skills/
├── deploy/
│ ├── SKILL.md
│ ├── checklist.md
│ ├── scripts/
│ └── verify.sh
├── release-notes/
│ └── SKILL.md
└── incident-triage/
└── SKILL.md
4.3 Frontmatter¶
---
name: deploy
description: Deploy the current release using the project deployment checklist.
argument-hint: [environment]
arguments: [environment]
disable-model-invocation: true
user-invocable: true
allowed-tools:
- Bash(git status *)
- Bash(git diff *)
model: sonnet
---
Käytettävät kentät¶
| Kenttä | Selitys | Pakollinen |
|---|---|---|
name |
Skillin nimi (esim. /deploy) |
✅ |
description |
Lyhyt kuvaus | ✅ |
when_to_use |
Kun tätä tulee käyttää | Ei |
argument-hint |
Argumenttien vihje | Ei |
arguments |
Vastaanotetut argumentit | Ei |
disable-model-invocation |
Estää Claude-kutsun | Ei |
user-invocable |
Näkyy /-valikossa |
Ei |
allowed-tools |
Sallitut työkalut | Ei |
model |
Mallin valinta | Ei |
4.4 disable-model-invocation / disable-model-invocation¶
Taulukko
| Asetus | Claude voi kutsua | Käyttäjä voi /-kutsun? | Tyypillinen käyttö |
|---|---|---|---|
disable-model-invocation: false |
✅ Kyllä | ✅ Kyllä | Debug, review, dokumentointi |
disable-model-invocation: true |
❌ Ei | ✅ Kyllä | Deploy, rollback, julkaisuprosessi |
user-invocable: false |
✅ Oletus | ❌ Ei valikosta | Taustatieto / legacy-context |
Esimerkki 08: Manuaalinen deploy¶
Deploy voi olla aina ihmisen laukaisema:
---
name: deploy
description: Manual deploy gate — human approval required.
disable-model-invocation: true
user-invocable: true
---
Esimerkki 09: Argumentin välitys¶
---
name: deploy
arguments: [environment]
---
Deploy to $ARGUMENTS[0]...
/deploy staging
Esimerkki 10: Incident triage -skill¶
---
name: incident-triage
description: Triage an application incident from a log file.
argument-hint: [logfile]
arguments: logfile
---
Analyze $logfile:
- classify symptom
- extract first failure
- identify probable root cause
- list evidence
- propose next three checks
- never claim certainty without evidence
ADVANCED-VINKKI 04
Pidä skillin description lyhyenä mutta osuvana — description + when_to_use
on rajoittu 1 536 merkiin.
ADVANCED-VINKKI 05
Käytä allowed-tools-kenttää vähentämään approval-kitkaa — mutta älä siekota sitä
työkalujen varsinaiseen deny-pinnan. Varsinaiset kiellot tehdään permission-säännöillä.
VAROITUS 04
Älä laita deploy-Skilliin laajaa bypassPermissions-ajatusta. Sivuvaikutteinen workflow
pitää suunnitella eksplisiittisen kynnistystä, minimioikeuksia ja ympäristörajausta vastaan.