Passa al contenuto principale

Slash Command Personalizzati

Intermedio

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).

What you'll learn
  • 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.
What you'll learn
  • 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:

Guided walkthrough1 of 3
  1. Salvalo in .claude/commands/changelog.md → /changelog. Risiede nel repo, quindi l'intero team lo ottiene.
Pro tip
  • È 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 baseCosa fa
$ARGUMENTSInietta ciò che l'utente ha digitato dopo il comando. /review src/auth.ts → il percorso finisce nel tuo prompt.
Esegui bash e incorpora l'outputI comandi possono includere l'output della shell (ad es. il diff corrente) così Claude agisce sullo stato attuale.
Riferisci filePunta ai file per includerne i contenuti.
Frontmatterdescription (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.
Premi Invio o Spazio per girare la carta. Usa le frecce sinistra e destra per spostarti tra le carte.Termine mostrato.
1 / 6

Mettiti alla prova

0/4
  1. Dove salvi uno slash command in modo che l'intero team lo ottenga nel repo?
  2. Cosa determina il nome di uno slash command?
  3. Cosa fa $ARGUMENTS in un comando?
  4. Quale opzione di impacchettamento Claude carica automaticamente quando è pertinente, invece di essere attivata da te?

Avanti