Slash Command Personalizzati
Uno slash command personalizzato impacchetta un prompt che continui a riscrivere in un singolo /word. Definiscilo una volta; riusalo per sempre (e condividilo con il tuo team).
- I comandi personalizzati sono confluiti nelle Skill. Un file in .claude/commands/deploy.md e una skill in .claude/skills/deploy/SKILL.md creano entrambi /deploy e funzionano allo stesso modo — i tuoi file .claude/commands/ esistenti continuano a funzionare. Le Skill aggiungono una directory per file di supporto, frontmatter per il controllo dell'invocazione e caricamento automatico quando pertinente. Per qualsiasi cosa oltre a un prompt in un singolo file, preferisci una Skill.
- Spiegare cos'è uno slash command personalizzato e perché batte il riscrivere un prompt
- Creare un comando inserendo un file Markdown nella directory giusta
- Distinguere i comandi di progetto da quelli personali in base alla loro posizione
- Usare i mattoni di base: $ARGUMENTS, output bash incorporato, riferimenti a file e frontmatter
- Scegliere tra uno slash command, una skill e un subagent per un dato task
Come funzionano
Un comando è semplicemente un file Markdown. Inseriscilo nella tua directory dei comandi e il suo nome di file diventa il comando. Il corpo del file è il prompt che Claude esegue quando lo invochi.
La posizione del file ne decide lo scope:
- Salvalo in .claude/commands/changelog.md → /changelog. Risiede nel repo, quindi l'intero team lo ottiene.
- Salvalo in ~/.claude/commands/changelog.md → /changelog. Ti segue in ogni progetto sulla tua macchina.
- Digita la /word in Claude Code. Il corpo del file diventa il prompt che Claude esegue.
- È il nome del file — non il frontmatter — a diventare il nome del comando. changelog.md è sempre /changelog.
Un esempio minimo
Ecco un file di comando completo. Il frontmatter contiene la description; tutto ciò che sta sotto è il prompt.
commit.md — redigi un Conventional Commit
--- description: Draft a Conventional Commit message from the staged diff --- Look at the staged changes with `git diff --cached` and write a single Conventional Commit message (feat/fix/docs/refactor/chore). Output only the message, no preamble.
Salvalo come commit.md e /commit lo fa ogni volta. (Chiamalo come preferisci che sia il file — lo stesso corpo salvato come changelog.md sarebbe /changelog.)
I mattoni di base utili
Quattro ingredienti trasformano un prompt statico in un comando flessibile:
| Mattone di base | Cosa fa |
|---|---|
$ARGUMENTS | Inietta ciò che l'utente ha digitato dopo il comando. /review src/auth.ts → il percorso finisce nel tuo prompt. |
| Esegui bash e incorpora l'output | I comandi possono includere l'output della shell (ad es. il diff corrente) così Claude agisce sullo stato attuale. |
| Riferisci file | Punta ai file per includerne i contenuti. |
| Frontmatter | description (mostrata nel menu) e altre opzioni. |
Consulta la documentazione ufficiale per la sintassi esatta di argomenti, bash e riferimenti ai file.
Comandi che vale la pena rubare
Un set di partenza si trova nella nostra Libreria di Slash Command: messaggio di commit, descrizione di PR, code review, changelog, scaffold-a-component.
Comando vs skill vs subagent
Tre modi per impacchettare il lavoro — la differenza è chi lo attiva e quanto isolato viene eseguito:
- Slash command — sei tu ad attivare un flusso di lavoro noto su richiesta.
- Skill — Claude carica competenza automaticamente quando è pertinente.
- Subagent — delega una porzione di lavoro a un agente isolato.