Crea Skills e Comandi Personalizzati per Claude Code
Gli Skills trasformano prompt ripetitivi in comandi riutilizzabili. Scrivi un SKILL.md una volta, invocalo con /nome-skill, e Claude Code esegue l'intero workflow ogni volta.
Gli Skills sono file markdown che definiscono workflow riutilizzabili per Claude Code. Invece di digitare lo stesso prompt complesso ogni volta che vuoi fare il deploy, una code review o generare documentazione, scrivi un SKILL.md una volta e lo invochi con un comando slash.
Cos'e' uno Skill di Claude Code?
Uno Skill e' un file markdown (SKILL.md) che contiene istruzioni che Claude Code segue quando lo invochi. Puo' includere una descrizione, restrizioni sugli strumenti, impostazioni di contesto e istruzioni passo-passo. Pensalo come un prompt salvato con superpoteri.
Come si crea uno Skill?
Crea un file SKILL.md nella directory .claude/skills/ del tuo progetto (condiviso con il team) o in ~/.claude/skills/ (personale):
# .claude/skills/deploy.md
---
name: deploy
description: Deploy del branch corrente in staging
allowed-tools: Bash, Read
---
## Passaggi
1. Esegui la suite di test: `npm run test`
2. Se i test passano, builda il progetto: `npm run build`
3. Deploy in staging: `npm run deploy:staging`
4. Verifica il deploy controllando l'endpoint di salute
5. Pubblica un riepilogo di cosa e' stato deployatoOra puoi invocarlo:
# In Claude Code
> /deployQuali opzioni di frontmatter sono disponibili?
| Opzione | Cosa fa | Esempio |
|---|---|---|
| name | Nome del comando slash | deploy |
| description | Mostrato nell'elenco degli skill | Deploy in staging |
| allowed-tools | Limita quali strumenti lo skill puo' usare | Bash, Read, Edit |
| disable-model-invocation | Impedisce chiamate IA annidate | true |
| context | Gestione della sessione | fork (esegue in contesto isolato) |
Quali sono i buoni casi d'uso per gli Skills?
- +Workflow di deployment (test → build → deploy → verifica)
- +Checklist per code review (sicurezza, performance, stile)
- +Generazione documentazione (doc API, changelog, README)
- +Operazioni database (migrazione, seeding, backup)
- +Onboarding nuovi membri del team (tour del progetto, verifica setup)
- +Gestione release (bump versione, changelog, tag, pubblicazione)
Come si usano le variabili negli Skills?
Gli Skills supportano argomenti tramite $ARGUMENTS (testo completo) e variabili posizionali ($0, $1, ecc.):
# .claude/skills/create-component.md
---
name: create-component
description: Crea un nuovo componente React
---
Crea un nuovo componente React chiamato $0 nella directory components.
Requisiti:
- TypeScript con interfaccia props appropriata
- Tailwind CSS per lo styling
- Esporta come default
- Includi test unitario base in __tests__/
Utilizzo: /create-component UserProfileInvocazione con argomenti
# Argomento singolo
> /create-component UserProfile
# Argomenti multipli
> /create-component UserProfile --with-tests --with-storyCome condividere gli Skills con il tuo team?
Metti gli Skills nella directory .claude/skills/ del progetto e committali su git. Ogni sviluppatore che clona il repo ottiene gli stessi skill. Gli skill personali vanno in ~/.claude/skills/ e non vengono condivisi.
Gli Skills si compongono bene con gli Hooks. Ad esempio, uno skill "deploy" puo' attivare un hook PostToolUse che invia una notifica Slack dopo il deployment. Costruisci la tua automazione a livelli.