SSD Nodes Learn 🎉 VPS da $5.50/mese
Guide Matt ConnorDi Matt Connor · Aggiornato 2026-08-13

Plugin Claude Code: cosa sono e quanto costano

Scopri dove vive un plugin Claude Code, come installarlo e il costo reale: il meccanismo è gratuito, ma ogni componente caricato consuma token.

Che cos’è un plugin di Claude Code

Un plugin di Claude Code è una directory che contiene componenti che Claude Code carica e gestisce come un’unica unità. I componenti possono essere skill, agenti, hook, server MCP, server LSP e monitor in background. L’installazione di un plugin aggiunge contemporaneamente tutte le sue parti con un unico nome; la sua disabilitazione le rimuove allo stesso modo.

Un plugin non fornisce all’agente funzionalità che non possedeva già. Ogni componente incluso in un plugin può essere scritto manualmente in una directory .claude/. Il plugin è il livello di pacchettizzazione: consente di assegnare una versione a questi componenti, distribuirli a quindici persone e aggiornarli in seguito senza chiedere a tutti di copiare i file. Questa è l’intera idea. La maggior parte della confusione sui plugin nasce dall’aspettativa che introducano un nuovo tipo di funzionalità.

Il manifest facoltativo in .claude-plugin/plugin.json assegna un nome al plugin, che diventa uno spazio dei nomi. Una skill in un plugin chiamato commit-commands viene richiamata come /commit-commands:commit. In questo modo, due plugin possono includere entrambi una skill chiamata commit senza che una nasconda l’altra. Gli agenti dei plugin seguono lo stesso criterio nell’elenco delle menzioni con @, come plugin-name:agent-name.

Plugin, skill, server MCP o file di regole

Questi quattro termini vengono usati come se fossero alternative. Non lo sono, e vale la pena chiarire una volta per tutte il confine tra loro.

  • Una skill è una singola unità di istruzioni che Claude carica quando l'attività lo richiede. Vedere che cos'è realmente una Agent Skill.
  • Un server MCP è un processo separato che espone strumenti all'agent tramite un protocollo, spesso come servizio di rete gestito direttamente.
  • Un file di regole come CLAUDE.md è il contesto del progetto, letto all'avvio della sessione e applicato a tutto.
  • Un plugin è un contenitore che può riunire skill, agent, hook e definizioni di server MCP, oltre a un numero di versione e a un canale di distribuzione.

Quindi la domanda a cui risponde un plugin non è "che cosa può fare l'agent". È "come distribuisco questo al mio team e come lo aggiorno il mese prossimo". Se devi scegliere tra i primi tre elementi, il confronto tra skill, server MCP e file di regole analizza la decisione in dettaglio. Se ti interessa soprattutto la parte MCP, eseguire i propri server MCP su un VPS descrive gli aspetti relativi all'hosting.

Dove risiedono i plugin e cosa contiene un plugin

Un plugin installato da un marketplace viene copiato in una cache locale in ~/.claude/plugins/cache, invece di essere eseguito dalla directory in cui è stato clonato. Ogni versione installata ha una directory dedicata. Quando aggiorni o disinstalli un plugin, la directory della versione precedente viene contrassegnata come orfana ed eliminata circa due settimane dopo. In questo modo, una sessione che ha già caricato la versione precedente continua a funzionare invece di interrompersi durante un'attività.

Poiché il percorso cambia a ogni aggiornamento, un plugin non deve mai codificare in modo statico la propria posizione. Gli hook e le configurazioni MCP all'interno di un plugin usano ${CLAUDE_PLUGIN_ROOT}, che viene risolto nella directory di installazione corrente. Lo stato che deve sopravvivere a un aggiornamento va inserito in ${CLAUDE_PLUGIN_DATA}, che viene risolto in una directory stabile sotto ~/.claude/plugins/data/.

Nella cache viene copiata solo la directory del plugin. Questo comporta un problema che spesso emerge solo in un secondo momento. Un percorso che punta al di fuori della radice del plugin, ad esempio ../shared-utils, funziona durante lo sviluppo con un percorso locale, ma smette di funzionare dopo l'installazione perché quei file non sono mai stati copiati.

La struttura è la seguente.

my-plugin/
├── .claude-plugin/
│   └── plugin.json
├── skills/
│   └── code-review/
│       └── SKILL.md
├── agents/
├── hooks/
│   └── hooks.json
├── .mcp.json
└── bin/

Solo plugin.json va all'interno di .claude-plugin/. Tutto il resto si trova nella radice del plugin. Inserire skills/ o hooks/ all'interno di .claude-plugin/ è il motivo più comune per cui un plugin viene installato correttamente, ma poi non esegue alcuna operazione: Claude Code cerca quelle directory nella radice, non le trova e carica un plugin privo di componenti.

Il manifest è essenziale.

{
  "name": "my-first-plugin",
  "description": "A greeting plugin to learn the basics",
  "version": "1.0.0"
}

Come installare un plugin di Claude Code

L'installazione prevede due passaggi, e il primo non installa nulla. Si aggiunge un marketplace, cioè un catalogo di plugin, quindi si installano i singoli plugin dal marketplace. Il marketplace ufficiale di Anthropic, claude-plugins-official, viene registrato automaticamente al primo avvio interattivo di Claude Code. Gli altri marketplace devono essere aggiunti manualmente.

/plugin marketplace add anthropics/claude-code
/plugin install commit-commands@claude-code-plugins

Il repository è anthropics/claude-code, mentre il marketplace si chiama claude-code-plugins. Il nome proviene dal file di catalogo all'interno del repository, non dal percorso del repository. Prima di digitare un comando di installazione, ricava quindi il nome del marketplace dalla scheda Marketplaces di /plugin.

Al termine dell'installazione, leggi la riga di riepilogo. Plugin is now active. indica che i componenti sono stati caricati nella sessione corrente. Run /reload-plugins to activate. indica che non sono stati caricati e che devi eseguire quel comando. Se /reload-plugins avvisa che il comando rileggerebbe la conversazione, eseguilo nuovamente come /reload-plugins --force. Verifica quindi che il plugin sia effettivamente presente: /plugin lo mostra nella scheda Installed, /help elenca le relative skill nella scheda Custom commands, mentre i componenti che non sono stati caricati vengono mostrati nella scheda Errors insieme al motivo.

L'installazione richiede un ambito, che determina chi può usare il plugin. L'ambito User riguarda te e si applica a ogni progetto. L'ambito Project salva il plugin nel repository, in .claude/settings.json, sotto enabledPlugins, quindi viene proposto a chiunque cloni il repository. L'ambito Local riguarda te e soltanto il repository corrente.

Per uno script, un Dockerfile o qualsiasi sessione in cui non sia disponibile un pannello interattivo, usa invece la sintassi shell. Per impostazione predefinita, il plugin viene installato nell'ambito User, salvo quando passi --scope.

claude plugin install commit-commands@claude-code-plugins --scope project
claude plugin list

claude plugin install viene eseguito al di fuori di una sessione. Una sessione già aperta non vedrà quindi il nuovo plugin finché non esegui /reload-plugins o non avvii una nuova sessione.

La gestione dei plugin installati segue lo stesso schema in entrambi i contesti. /plugin list mostra i plugin installati e accetta --enabled o --disabled. /plugin disable name@marketplace disattiva un plugin senza rimuoverlo, /plugin enable lo riattiva e /plugin uninstall lo rimuove. Le forme slash command aprono il pannello dei plugin per applicare la modifica. Per questo, negli script devi usare gli equivalenti shell claude plugin ....

Per rendere disponibile un marketplace a un intero team, inseriscilo in .claude/settings.json del progetto. I membri ricevono la richiesta di installarlo dopo aver considerato attendibile la directory del repository.

{
  "extraKnownMarketplaces": {
    "my-team-tools": {
      "source": {
        "source": "github",
        "repo": "your-org/claude-plugins"
      }
    }
  }
}

Mentre sviluppi un plugin, puoi evitare completamente il marketplace. claude --plugin-dir ./my-plugin carica una directory nella sessione corrente, /reload-plugins rileva le modifiche senza riavviare la sessione e claude plugin validate ./my-plugin verifica il manifest, il frontmatter di skill e agent e hooks/hooks.json prima che il plugin venga usato da altri.

Quanto costa un plugin di Claude Code?

Il meccanismo è gratuito. Ad agosto 2026 non viene addebitato alcun costo per aggiungere un marketplace, installare un plugin o mantenerlo abilitato. I marketplace ufficiali e quelli della community sono repository Git pubblici e un plugin è una directory di file di testo.

Il costo di un plugin si misura in token, che sono l’unità effettivamente conteggiata dall’utilizzo dell’abbonamento o dalla fattura API. Questo costo si presenta in tre modi diversi, che si comportano in modo differente.

Costo del contesto permanente. Il contenuto aggiunto da un plugin entra nel contesto e viene riletto a ogni turno della sessione. Prima dell’installazione, la vista dettagliata /plugin mostra una stima Context cost in token e una sezione Will install che elenca i comandi, le skill, gli agenti, gli hook e i server MCP e LSP che stanno per essere aggiunti. Leggi entrambe. I plugin provenienti da marketplace locali o personalizzati potrebbero non fornire questi dati; in tal caso devi fare una stima manuale. Un plugin che include un server MCP è generalmente il più pesante, perché le definizioni degli strumenti sono voluminose. Tuttavia, nei modelli che supportano la ricerca degli strumenti MCP, tali definizioni vengono caricate solo quando serve uno strumento.

Costo dell’invocazione. L’esecuzione della skill di un plugin aggiunge le relative istruzioni alla conversazione, quindi il corpo della skill viene conteggiato solo quando la skill viene utilizzata. Un agente funziona diversamente. Un subagent esegue una propria conversazione con un proprio prompt di sistema e una propria cache, iniziando senza cache hit. Di conseguenza, un plugin il cui flusso di lavoro avvia agenti può costare molto più di quanto suggerisca la stima del contesto.

Costo della cache. L’abilitazione o la disabilitazione di un plugin durante una sessione può obbligare la richiesta successiva a rielaborare l’intera conversazione. Skill, comandi, agenti, hook, server LSP, monitor e temi non hanno questo effetto: il loro contenuto viene aggiunto dopo la cronologia esistente, quindi la richiesta successiva paga per il nuovo contenuto, mentre continua a leggere dalla cache tutto ciò che lo precede. Fa eccezione un plugin che fornisce un server MCP. Se i suoi strumenti vengono posticipati tramite la ricerca degli strumenti, la cache rimane valida. Se invece vengono caricati nel prefisso del prompt, la richiesta successiva rilegge l’intera conversazione come input non presente nella cache. Per questo /reload-plugins mostra un avviso e rifiuta l’operazione in questo caso finché non passi --force.

Puoi monitorare questo comportamento invece di stimarlo. Ogni risposta API riporta cache_read_input_tokens e cache_creation_input_tokens, mentre una statusline personalizzata che mostra l’utilizzo dei token in tempo reale rende entrambi visibili. In una sessione correttamente configurata, i token letti sono molti più di quelli generati. Se la generazione rimane elevata a ogni turno, significa che qualcosa nel prefisso cambia a ogni turno. Per una panoramica più ampia di ciò che occupa la finestra di contesto, consulta come gestire la finestra di contesto di Claude Code e che cosa significano realmente quei conteggi dei token.

Una semplice attività di manutenzione ripaga il tempo necessario. La scheda Installed raggruppa sotto l’intestazione Not used recently i plugin che non hai utilizzato da almeno due settimane e mostra una riga Last used nella vista dettagliata. Questi plugin continuano a consumare tempo di avvio e contesto in ogni sessione. Disabilitali o disinstallali.

Un plugin viene eseguito con i tuoi permessi

La documentazione ufficiale di Anthropic è chiara: plugin e marketplace sono componenti altamente attendibili che possono eseguire codice arbitrario sul computer con i privilegi dell'utente. Non è un rischio ipotetico. Gli hook di un plugin eseguono comandi shell in risposta agli eventi della sessione, inclusi quelli prima e dopo le chiamate agli strumenti. La directory bin/ del plugin viene aggiunta a PATH dello strumento Bash mentre il plugin è abilitato. I server MCP sono processi avviati dal plugin. Nulla di tutto questo è isolato dall'account utente tramite una sandbox.

Su un laptop il rischio è limitato alle risorse raggiungibili dall'utente desktop. Su un server, in genere, non lo è. L'account che esegue l'agente dispone spesso di chiavi SSH, token di deploy, una sessione della CLI cloud e accesso al socket Docker. Perciò «codice arbitrario eseguito con i tuoi privilegi» può significare il controllo della macchina. Se Claude Code viene eseguito su un VPS, leggi come eseguire Claude Code in sicurezza su un VPS prima di installare qualsiasi componente. Leggi anche come impedire a un agente di accedere alle credenziali prima di installare un plugin che comunica con un servizio esterno.

Esistono alcune misure di protezione ed è utile sapere come funzionano. Un plugin con ambito di progetto proviene dal repository, non dall'utente, quindi viene caricato solo dopo che hai considerato attendibile lo spazio di lavoro. I relativi server MCP richiedono comunque l'approvazione individuale per ogni server. I server LSP attendono l'approvazione dello spazio di lavoro e i monitor in background non vengono caricati. Agli agenti forniti dal plugin non è consentito dichiarare hook, server MCP o una modalità di autorizzazione. I plugin del marketplace vengono copiati nella cache, saltando i collegamenti simbolici che puntano all'esterno del marketplace. In questo modo un plugin non può includere file arbitrari dell'host.

Niente di tutto questo sostituisce la lettura del contenuto che installi. Controlla l'elenco Will install, preferisci i plugin di cui puoi aprire e leggere il codice sorgente, mantieni i plugin del team in un repository marketplace sotto il tuo controllo ed esegui claude plugin validate su tutto ciò che scrivi personalmente.

FAQ

I plugin di Claude Code hanno costi aggiuntivi?

No. Il sistema dei plugin, l'aggiunta di un marketplace e l'installazione di un plugin non prevedono costi. Il costo dipende dall'uso dei token, addebitato al tuo piano o alla spesa API come per qualsiasi altro contesto. Un plugin aggiunge contesto permanente a ogni turno, ne aggiunge altro quando viene invocata una delle sue skill o dei suoi agenti e può forzare un turno costoso non memorizzato nella cache se fornisce un server MCP i cui strumenti vengono caricati nel prefisso del prompt. La vista dettagliata /plugin mostra una stima Context cost prima dell'installazione.

Qual è la differenza tra un plugin e una skill?

Una skill è una singola unità di istruzioni. Un plugin è un pacchetto che può contenere skill, agenti, hook, server MCP, server LSP e monitor, con un nome, una versione e un marketplace da cui installarlo. Scrivi una skill autonoma in .claude/ quando è destinata a te e a questo progetto. Una skill con uno scopo specifico, come Ponytail, che indirizza l'agente verso la modifica minima funzionante, ne è l'esempio più chiaro: un file con una sola regola, fino al momento in cui il team vuole usarla. Trasformala in un plugin quando deve essere usata da altre persone e aggiornata nel tempo. Le skill dei plugin usano uno spazio dei nomi, quindi una skill contenuta in un plugin viene invocata come /plugin-name:skill-name anziché come /skill-name.

Il mio plugin è stato installato, ma le sue skill non compaiono. Qual è il problema?

Controlla prima il riepilogo dell'installazione. Se indica Run /reload-plugins to activate., i componenti non sono ancora caricati; se il reload avvisa che rileggerà la conversazione, eseguilo nuovamente come /reload-plugins --force. Se il caricamento è riuscito ma non viene visualizzato nulla, apri /plugin e leggi la scheda Errors. L'errore strutturale più comune consiste nell'inserire skills/, agents/ o hooks/ all'interno di .claude-plugin/, dove Claude Code non li cerca. Ricorda che le skill dei plugin usano uno spazio dei nomi: devi cercare /plugin-name:skill-name nella scheda Custom commands di /help. Come ultima soluzione, esegui rm -rf ~/.claude/plugins/cache, riavvia e reinstalla.

Posso installare plugin senza il pannello interattivo?

Sì. Usa il comando shell claude plugin install name@marketplace, che installa nell'ambito dell'utente, a meno che tu non passi --scope project o --scope local. Funziona negli script, nelle immagini e negli ambienti non interattivi in cui il pannello /plugin non è disponibile. Poiché viene eseguito al di fuori di una sessione, una sessione già aperta richiede /reload-plugins prima che il plugin diventi effettivo.

È sicuro installare un plugin da un marketplace trovato su GitHub?

Consideralo come l'esecuzione con il tuo account dello script di installazione di quel repository, perché la situazione è molto simile. Un plugin può eseguire comandi shell tramite gli hook, aggiungere eseguibili al PATH dello strumento Bash e avviare server MCP, il tutto con i privilegi del tuo utente. Anthropic non controlla né verifica i contenuti dei plugin di terze parti. Installa da fonti di cui puoi leggere il codice, esamina l'elenco Will install prima di confermare e adotta criteri più restrittivi su un server rispetto a un laptop, perché su un server l'account contiene in genere chiavi e token che vale la pena sottrarre.