---
title: "Claude Code Skills e Slash Commands"
description: "Come funzionano le Claude Code Skills e gli Slash Commands nel 2026: creare un /command riutilizzabile, scrivere un SKILL.md, usare argomenti e quando scegliere cosa."
type: "guide"
locale: "it"
category: "Claude Code"
canonical: "https://agenticschool.dev/it/guide/claude-code-skills-and-commands"
datePublished: "2026-06-13"
dateModified: "2026-06-13"
---

# Claude Code Skills e Slash Commands

- Category: Claude Code
- Keywords: claude code skills, claude code slash commands, reusable claude commands, claude skills tutorial, skill.md claude code
- Canonical URL: https://agenticschool.dev/it/guide/claude-code-skills-and-commands
- Locale: it

> Come funzionano le Claude Code Skills e gli Slash Commands nel 2026: creare un /command riutilizzabile, scrivere un SKILL.md, usare argomenti e quando scegliere cosa.

Le Claude Code Skills e gli Slash Commands sono workflow nominati e riutilizzabili: invece di ridigitare le stesse istruzioni multi-step, ne invochi uno, e l'agente esegue i tuoi passi collaudati con il giusto contesto gia caricato. Nel 2026, i custom slash command sono confluiti nelle skill: un file sotto .claude/commands/deploy.md e una skill sotto .claude/skills/deploy/SKILL.md creano entrambi il comando /deploy e funzionano allo stesso modo. Questa guida ti mostra come creare uno slash command e un SKILL.md, come funzionano gli argomenti e il contesto dinamico, dove vivono, e quando Claude carica una skill automaticamente rispetto a quando la attivi tu stesso.

## Skill e command sono ora la stessa cosa

Per anni, Claude Code ha avuto due funzionalita separate: gli slash command (un file Markdown attivato con /nome) e le skill (una capacita piu ricca e autonoma). Nel 2026, sono state unificate. I custom command sono confluiti nelle skill, cosicche entrambi creano uno slash command e funzionano allo stesso modo. I tuoi file .claude/commands/ esistenti funzionano ancora, e le skill aggiungono semplicemente funzionalita opzionali sopra: una directory per i file compagni, frontmatter per controllare chi le invoca, e la capacita per Claude di caricarle automaticamente quando sono pertinenti. Le Claude Code Skills seguono lo standard aperto Agent Skills, cosicche la stessa skill puo funzionare da un tool all'altro.

- Un file sotto .claude/commands/deploy.md crea /deploy.
- Una skill sotto .claude/skills/deploy/SKILL.md crea anch'essa /deploy.
- Le skill aggiungono: file compagni, controllo di invocazione e caricamento automatico via la descrizione.
- I file .claude/commands/ esistenti funzionano ancora; le skill sono la via consigliata per il futuro.

## Creare uno slash command

Il workflow riutilizzabile piu semplice e un file Markdown il cui nome diventa il comando. Deposita un file in .claude/commands/ (progetto) o ~/.claude/commands/ (personale), e Claude Code lo rende disponibile come slash command. Usa il placeholder $ARGUMENTS per catturare tutto cio che digiti dopo il comando, oppure $1, $2 posizionali per argomenti individuali. Una descrizione nel frontmatter YAML appare come testo di aiuto. E perfetto per un'azione unica e ben definita che attivi spesso.

```markdown
<!-- .claude/commands/fix-issue.md -->
---
description: Investigate and fix a GitHub issue by number.
argument-hint: [issue-number]
---

Fix GitHub issue #$ARGUMENTS. First read the issue with the gh CLI, then
find the relevant code, propose a fix in plan mode, and only implement
after I approve. Run the test suite before you say it is done.
```
Uno slash command sotto .claude/commands/fix-issue.md, chiamato via "/fix-issue 123". $ARGUMENTS cattura il 123.

## Scrivere un SKILL.md

Una skill e una directory con un file SKILL.md alla radice: frontmatter YAML piu istruzioni Markdown e, opzionalmente, script, template o file di riferimento raggruppati. Il nome della directory diventa il comando che digiti, e la descrizione e cio che Claude legge per decidere quando caricare la skill automaticamente, quindi una descrizione affilata fa meta del lavoro. Solo la descrizione e consigliata; tutto il resto e opzionale. Le skill brillano quando un workflow e multi-step, ha i propri asset, o vuoi che Claude lo invochi da solo quando il momento e giusto.

```markdown
<!-- .claude/skills/summarize-changes/SKILL.md -->
---
description: Summarise uncommitted changes and flag risks. Use when the user asks what changed or wants a commit message.
allowed-tools: Read, Grep
---

## Current changes

!`git diff HEAD`

## Instructions

Summarise the changes above in two or three bullet points, then list any
risks such as missing error handling, hardcoded values, or tests that need
updating. If the diff is empty, say there are no uncommitted changes.
```
Un SKILL.md sotto .claude/skills/summarize-changes/SKILL.md, chiamato via /summarize-changes o caricato automaticamente via la sua descrizione.

La riga con !`git diff HEAD` e iniezione di contesto dinamico: Claude Code esegue il comando e sostituisce la riga con il suo output prima che il modello veda la skill, cosicche le istruzioni arrivano con il tuo vero diff gia iniettato. Tieni il corpo corto, perche una volta che una skill e caricata, il suo contenuto resta nel contesto lungo i turni successivi.

## Dove vivono e chi le invoca

Le skill di progetto vivono in .claude/skills/<nome>/SKILL.md e si applicano a quel repo; le skill personali vivono in ~/.claude/skills/<nome>/SKILL.md e ti seguono ovunque. Claude puo invocare una skill automaticamente quando la tua richiesta corrisponde alla sua descrizione, oppure la attivi direttamente con /nome. Se un workflow deve girare solo su richiesta (come un deploy), metti disable-model-invocation: true perche Claude non lo attivi mai da solo. Per nascondere una skill puramente documentale dal menu slash, metti user-invocable: false.

- Progetto: .claude/skills/<nome>/SKILL.md, condivisa con il repo.
- Personale: ~/.claude/skills/<nome>/SKILL.md, tutti i tuoi progetti.
- Invocata automaticamente via la descrizione oppure attivata direttamente con /nome.
- disable-model-invocation: true rende una skill solo manuale; user-invocable: false la nasconde dal menu /.

## Quando scegliere cosa

Il segnale per impacchettare qualsiasi cosa e la ripetizione: la seconda volta che briefi l'agente sulla stessa sequenza, fissala. Poi scegli la forma secondo la sua ricchezza. Un'azione unica e chiara senza asset e un semplice file command. Un processo multi-step con propri template, script o documenti di riferimento, o uno che Claude deve caricare automaticamente, e una skill. Puoi cominciare con un command e farlo evolvere in skill piu tardi. Tieni la tua libreria piccola e mirata: due o tre a cui ricorri davvero battono venti che dimentichi.

## Steps

### 1. Scegliere un workflow che ripeti

Scegli l'istruzione multi-step che ridigiti di continuo, come un deploy, una sequenza commit-e-PR o una routine scaffold-e-test.

### 2. Cominciare con un file command

Crea .claude/commands/<nome>.md con il tuo prompt e una descrizione nel frontmatter. Usa $ARGUMENTS per accettare un input. Chiamalo via /<nome>.

### 3. Promuoverlo a SKILL.md quando cresce

Quando il workflow ha bisogno di file raggruppati o vuoi che Claude lo carichi automaticamente, crea .claude/skills/<nome>/SKILL.md con una descrizione affilata. Il nome della directory diventa il comando.

### 4. Aggiungere contesto dinamico se utile

Inserisci dati live con una riga !`command` (per esempio !`git diff HEAD`), cosi la skill arriva gia riempita di vero contesto.

### 5. Regolare il controllo di invocazione

Per i workflow che devono girare solo su richiesta, aggiungi disable-model-invocation: true cosi Claude non li attiva mai da solo. Tieni il corpo corto per limitare il costo in contesto.

## FAQ

### Qual e la differenza tra una Claude Code Skill e uno slash command?

Nel 2026 sono unificati: i custom command sono confluiti nelle skill, ed entrambi creano uno slash command che funziona allo stesso modo. Un command puro e un unico file Markdown; una skill e una directory (SKILL.md piu file compagni opzionali) che aggiunge il controllo di invocazione e il caricamento automatico via la descrizione.

### Dove metto una Claude Code Skill?

Le skill di progetto vanno in .claude/skills/<nome>/SKILL.md nel tuo repo e si applicano a quel progetto. Le skill personali vanno in ~/.claude/skills/<nome>/SKILL.md e sono disponibili su tutti i tuoi progetti. Il nome della directory diventa il comando che digiti.

### Come creo uno slash command personalizzato in Claude Code?

Crea un file Markdown in .claude/commands/ (o ~/.claude/commands/ per il personale). Il nome del file diventa il comando, quindi deploy.md crea /deploy. Usa $ARGUMENTS per catturare il testo digitato dopo il comando, e aggiungi una descrizione nel frontmatter YAML per il testo di aiuto.

### Come sa Claude quando usare automaticamente una skill?

Claude legge la descrizione di ogni skill e carica la skill quando la tua richiesta vi corrisponde. Per questo una descrizione chiara e specifica e la parte piu importante di una skill. Per impedire il caricamento automatico e rendere una skill solo manuale, metti disable-model-invocation: true.

### Cos'e l'iniezione di contesto dinamico in una skill?

Una riga come !`git diff HEAD` in un SKILL.md dice a Claude Code di eseguire quel comando e sostituire la riga con il suo output prima che il modello legga la skill. La skill arriva quindi con dati live (il tuo diff, il tuo branch, una lista di file) gia iniettati, cosicche la risposta e ancorata allo stato reale.

### I miei vecchi file .claude/commands funzionano ancora?

Si. Dopo la fusione nelle skill, i file esistenti in .claude/commands/ funzionano ancora e supportano lo stesso frontmatter. Le skill sono la via consigliata per il futuro, perche supportano file compagni e invocazione automatica, e se una skill e un command condividono un nome, la skill vince.
