I hooks esistenti di Claude Code vengono eseguiti anche su eventi, come comando shell, richiesta HTTP o prompt che configuri in un file di impostazioni. I gestori di un mod sono funzioni che vengono eseguite all’interno di Claude Code. Claude Code chiama entrambi i tipi di hook: su queste pagine, “hook” significa il gestore di un mod, e il tipo di file di impostazioni è un “settings hook”.
Cosa può fare un mod
Gli settings hook, le skills, le righe di stato e i server MCP funzionano dall’esterno di Claude Code: ognuno esegue uno script o fornisce a Claude testo o strumenti. Un mod viene eseguito all’interno di Claude Code, quindi può fare cose che gli altri non possono:- Disegnare un’interfaccia che puoi usare: un riquadro accanto alla trascrizione o una banda sopra il prompt, con schede, pulsanti e campi di testo. Vedi Disegnare nell’interfaccia.
- Ridisegnare l’interfaccia di Claude Code: sostituire o modificare lo stile di parti che Claude Code disegna stesso, come la riga di una chiamata di strumento, lo spinner o la finestra di dialogo in cui Claude pone domande. Vedi Cambiare quello che Claude Code disegna già.
- Intervenire in una chiamata di strumento o una richiesta: ad esempio, trattenere una chiamata di strumento mentre chiedi all’utente una domanda, rispondere senza eseguire lo strumento o inviare una richiesta a un modello diverso. Vedi Proteggere o modificare una chiamata di strumento e Seguire un turno.
- Eseguire il tuo codice su un comando: un
/commandche esegue la tua funzione immediatamente, senza un turno di Claude, anche mentre Claude sta lavorando. Vedi Aggiungere un comando o uno strumento. - Condividere dati tra hook: gli hook di un mod condividono le variabili nel suo file, quindi quello che un hook registra, un altro può mostrare. Ad esempio, un hook può contare le chiamate di strumento mentre un altro mostra il conteggio accanto allo spinner, oppure uno può leggere l’utilizzo dei token di ogni richiesta mentre un altro lo rappresenta graficamente in un riquadro. Vedi Reagire agli eventi.
claude -p e le sessioni cloud. Se un settings hook, una skill o un server MCP fa già quello che ti serve, confrontali prima di scrivere un mod. Per gestire i mod per un’organizzazione, vedi Gestire i mod per la tua organizzazione.
Ottenere un mod
Puoi iniziare con un mod in uno di tre modi:- Usarne uno che hai già: alcune funzioni di Claude Code sono mod, come
/diff. Vedi Mod integrati in Claude Code. - Crearne uno: descrivi quello che vuoi in una sessione di Claude Code e Claude scrive il mod. Vedi Chiedere a Claude un mod. Per imparare come funziona il codice di un mod, scrivi uno tu stesso.
- Installarne uno: vedi Installare o aggiornare un mod
Installare o aggiornare un mod
Un mod si installa come plugin, da un marketplace. Fornisci il nome del plugin, un@ e il nome del marketplace. Questi esempi installano un plugin denominato token-chart da un marketplace denominato your-org:
- In una sessione di Claude Code, esegui
/plugin install token-chart@your-org. - Nella tua shell, esegui
claude plugin install token-chart@your-org.
/reload-plugins in quella sessione per caricarlo. Altrimenti si carica la prossima volta che avvii Claude Code.
Decidere se fidarsi di un mod
Un mod è codice che viene eseguito con le tue autorizzazioni, all’interno di Claude Code. Installa i mod solo da autori e marketplace di cui ti fidi.Cosa può raggiungere un mod
Un mod viene eseguito con le tue autorizzazioni, quindi prima di installarne uno, sappi a cosa ha accesso. Una volta caricato, un mod può:- Agire sulla tua macchina come te: leggere e scrivere file ovunque il tuo account utente possa, avviare programmi e fare richieste di rete
- Leggere i tuoi segreti: variabili di ambiente e file di impostazioni, inclusa una chiave API che mantieni in uno di essi
- Vedere la tua sessione: ogni prompt che invii e ogni chiamata di strumento che Claude fa
- Modificare la tua sessione: riscrivere un prompt o una chiamata di strumento, inviare un prompt come se l’avessi digitato, o inviare un messaggio a un’altra delle tue sessioni
- Agire senza chiederti: approvare una chiamata di strumento prima che ti venga chiesto
- Spendere il tuo utilizzo: chiamare un modello sul tuo piano o sulla tua chiave API
ask richiederebbe, o che uno dei tuoi hook PreToolUse ha bloccato. Estendere le autorizzazioni con hook elenca cosa un tale mod può approvare, incluso quando può approvare una chiamata che una regola deny rifiuta.
Un mod può modificare lo stile di gran parte dell’interfaccia di Claude Code, ma non il prompt di autorizzazione. Non può cambiare quello che un prompt ti mostra.
Elencare cosa fa un mod prima di installarlo
Prima di installare un mod, puoi elencare quali eventi aggancia e cosa chiede a Claude Code di fare, come leggere un file o fare una richiesta di rete, senza eseguirlo. Ottieni prima i file del plugin, ad esempio clonando il suo repository. Quindi, nella tua shell, eseguiclaude plugin validate sulla directory del plugin:
hooks: e calls: nell’output elencano gli eventi che il mod gestisce e cosa chiede a Claude Code di fare. Rivedere cosa può fare un mod mostra l’output e quali chiamate cercare.
Attivare o disattivare i mod
I mod richiedono Claude Code v2.1.287 o successivo e sono attivati per impostazione predefinita. Nella tua shell, eseguiclaude --version per verificare e aggiorna Claude Code se il tuo è più vecchio.
Per disattivare i mod, scegli quanti fermarne e per quanto tempo. Per riattivarli, annulla la stessa modifica:
- Un mod: disabilita o disinstalla il suo plugin dalla scheda Installed in
/plugin - Ogni mod installato, per una sessione: avvia Claude Code con
--safe-mode, che lascia fuori anche le tue altre personalizzazioni - Ogni mod che hai installato, in ogni sessione: imposta
"disableAllHooks": truein~/.claude/settings.json. I tuoi settings hook e la riga di stato personalizzata si fermano anche. Quello che la tua organizzazione gestisce continua a funzionare.
Se hai impostato
CLAUDE_CODE_ENABLE_FUNCTION_HOOKS durante l’accesso anticipato, rimuovilo. Claude Code v2.1.287 e successivo lo ignora, quindi impostarlo a 0 non mantiene i mod disattivati.Vedere quali mod una sessione ha caricato
Per vedere quali mod una sessione di terminale ha caricato, esegui/plugin al prompt di Claude Code. Una riga attenuata sotto le schede fornisce il conteggio e i nomi, come 1 mod active · first-mod. Se un mod che hai installato non è nominato lì, vedi Scoprire perché un mod non fa nulla.
Come funziona un mod
Un mod è un plugin il cui codice registra gestori di eventi, chiamati hooks. Claude Code esegue un hook quando si verifica il suo evento, come quando Claude chiama uno strumento o quando lo spinner viene disegnato. Un piccolo mod ha tre file:plugin.json: il manifest del pluginhooks.json: punta al tuo file di codiceregister.js: il tuo codice, chiamato il modulo hooks. Dice a Claude Code su quali eventi eseguire le tue funzioni.
register.js completo. Conta le chiamate di strumento che Claude fa e mostra il conteggio accanto allo spinner mentre Claude lavora, come in Thinking · tool calls: 3….
hooks/register.js
calls in alto:
- L’hook
tool.callviene eseguito ogni volta che Claude sta per usare uno strumento. Aggiunge uno acalls, chiede a Claude Code di disegnare di nuovo l’interfaccia e lascia che lo strumento funzioni come al solito. - L’hook
ui.renderviene eseguito ogni volta che Claude Code disegna lo spinner. Mantiene lo spinner di Claude Code e aggiunge il conteggio dopo la parola.
Thinking · tool calls: 1…, poi 2…, poi 3….
Cosa può fare un hook con un evento
Claude Code esegue il tuo hook prima di agire sull’evento, quindi il hook decide cosa succede dopo. Ha tre scelte:- Osservare: notare cosa sta succedendo e lasciarlo continuare invariato, come fa l’hook
tool.callnell’esempio - Riscrivere: cambiare l’evento prima che continui, come fa l’hook
ui.renderquando aggiunge il conteggio allo spinner - Rispondere: gestire l’evento stesso, quindi il comportamento usuale non viene eseguito, come rifiutare un comando
Dove vengono eseguiti i mod
Gli hook di un mod vengono eseguiti in ogni tipo di sessione che carica il plugin. Il disegno è più ristretto: solo il terminale e l’app Desktop mostrano i riquadri, le bande e le righe sostituite di un mod. Questa tabella elenca ogni posto in cui potresti eseguire Claude Code:
Un mod che disegna può verificare in quale app è in esecuzione e tornare a una riga nella trascrizione o a una risposta di testo del comando dove nulla viene disegnato.
Controllare i mod per la tua organizzazione
Gli amministratori decidono se i mod vengono eseguiti e quali, attraverso impostazioni gestite. Gestire i mod per la tua organizzazione copre quello che accade per impostazione predefinita, come rivedere un mod e come applicare una politica con un mod proprio.Confrontare mod, settings hook, skills e server MCP
I mod, gli settings hook, le skills e i server MCP si sovrappongono. Questa tabella mostra cosa è ognuno e quando sceglierlo.
Ognuno degli altri ha la sua pagina: Hooks, Skills e MCP. Un plugin può contenere tutti e quattro, quindi un mod può essere spedito nello stesso plugin di una skill e di un server MCP.
Mod integrati in Claude Code
Alcune funzioni di Claude Code sono mod. Per vedere quelli che la tua sessione ha, esegui/plugin al prompt di Claude Code e vai alla scheda Installed, che li elenca sotto Built-in. Non puoi aggiornare o disinstallare un mod integrato e l’ultima colonna della tabella dice come disattivare ognuno. La riga mods active esclude i mod integrati.
Questa tabella elenca ogni voce per il nome che /plugin mostra:
Le impostazioni e i flag che fermano i mod installati, come
disableAllHooks, --bare e --safe-mode, non fermano i mod integrati.
Leggere il codice sorgente dei mod integrati
Il codice sorgente di quattro di questi mod è pubblico nella directorymods del repository Claude Code. Ognuno è un plugin completo con il suo modulo hooks e test:
diff: il riquadro/diff, con pulsanti associati ad azioni da tastiera e scorrimento che il mod gestisce da soloagents-md: caricaAGENTS.mdcome istruzioni di progetto, con un’opzioneuserConfigsec-default: il guard descritto in Sapere cosa accade per impostazione predefinita, un modello per un mod che applica la politicatelemetry: aggiunge metodi che altri mod possono chiamare e spedisce i loro tipi
Passaggi successivi
- Creare un mod: costruisci uno che conta le chiamate di strumento, mostra il conteggio accanto allo spinner e aggiunge un comando, e impara il ciclo di modifica e ricaricamento
- Disegnare nell’interfaccia: riquadri, la banda sopra il prompt, pulsanti, campi di testo e stato
- Reagire agli eventi: chiamate di strumento, prompt, turni e l’ordine in cui i mod vengono eseguiti
- Usare l’API dei mod: comandi, strumenti, chiamate di modello, timer e file
- Testare un mod: test automatizzati che vengono eseguiti senza una sessione
- Risolvere i problemi di un mod: i motivi per cui un mod non fa nulla e il log di debug
- Gestire i mod per la tua organizzazione: impostazioni predefinite, impostazioni gestite, revisione di un mod e mod di politica
- Riferimento dei mod: ogni evento, metodo, elemento e limite