claude plugin do seu shell ou script, ou como /plugin e /reload-plugins dentro de uma sessão Claude Code. Esta referência fornece as flags, padrões, saída e códigos de saída de cada comando, junto com as duas flags que carregam um plugin para uma sessão.
As tabelas abaixo listam as opções comumente usadas de cada subcomando, não todas as opções. Execute claude plugin --help no seu shell para ver quais subcomandos sua versão possui, e claude plugin <subcommand> --help para a lista completa de opções de um subcomando.
Estes casos são cobertos em outras páginas:
- Instalar e gerenciar etapas, e onde
/pluginé executado: veja Instalar e gerenciar plugins - O que um comando muda no disco e qual escopo tem precedência: veja Referência de carregamento de plugin
- O que uma mensagem de erro significa: veja Solucionar problemas de plugins
Comandos claude plugin
Executeclaude plugin <subcommand> do seu shell ou script, fora de uma sessão Claude Code. Estes subcomandos instalam e gerenciam plugins sem abrir o painel /plugin.
claude plugins é um alias para claude plugin.
Cada subcomando compartilha estes códigos de saída, argumentos de plugin e valores de escopo:
- Códigos de saída:
0em caso de sucesso e1em caso de falha.validateadiciona saída2para um erro inesperado, eevaladiciona os códigos listados em sua seção. - Argumentos de plugin: um argumento
<plugin>é umnamede plugin ouname@marketplace. Quando dois marketplaces oferecem o mesmo nome, use a forma qualificada.configureaceita apenas a forma qualificada. - Escopos:
--scopeaceitauser,projectoulocal, e nomeia o arquivo de configurações que o comando escreve.updatetambém aceitamanaged.
plugin init
Crie um novo plugin em~/.claude/skills/<name>/. Ele carrega em sua próxima sessão como <name>@skills-dir sem etapa de instalação.
new é um alias para init.
Para o fluxo de trabalho criar, testar e editar que começa com este comando, veja Criar um plugin.
<name> se torna o nome do diretório sob ~/.claude/skills/ e o name do plugin em seu manifesto.
O comando não possui flag para outro local. Para criar um scaffold dentro de um projeto, veja Criar um plugin.
Criar um plugin com arquivos de skill e hook iniciais:
Created plugin "my-helper" at ~/.claude/skills/my-helper, seguido pelo id que ele carrega como e o comando claude plugin disable que o desativa.
Claude Code sai com 1 sem escrever quando não consegue criar um scaffold com segurança, e a mensagem nomeia o motivo. Estes são motivos comuns:
- Um valor desconhecido em
--with - Um scaffold existente no destino sem
--force - Uma configuração gerenciada que bloqueia plugins de diretório de skills
plugin install
Instale um plugin de um dos seus marketplaces.i é um alias para install.
headersHelper para seu download, Claude Code primeiro imprime o comando e pergunta Run this command now? [y/N].
Execute
claude plugin install --help em seu shell para ver todas as opções que sua versão suporta.
Passe -y do seu próprio terminal para aceitar o comando exibido sem o prompt. Aqui está o que acontece sem um TTY e quando Claude executa o comando:
- stdin ou stdout não é um TTY, e você não passa
-ynem--accept-command: a instalação é recusada. A saída diz que o comando foi apenas exibido, e o código de saída é1 - Claude executa o comando através de sua ferramenta Bash:
-yé ignorado. Execute o comando do seu próprio terminal
Successfully installed plugin: formatter@my-marketplace (scope: project). Quando nada novo é instalado, a saída diz por quê:
- Já instalado nesse escopo: a saída é
Plugin "formatter@my-marketplace" is already installed (scope: project)e o código de saída é0 - Você recusa um prompt de origem de comando: a saída é
Aborted.e o código de saída é1 - Você recusa um prompt
headersHelper, ou não pode ser confirmado sem um TTY: a saída éAborted — the command was not run.e o código de saída é1
Formato de resultado JSON
Quando você passa--json para plugin install, a última linha de stdout é um objeto JSON. Analise apenas essa linha, porque Claude Code imprime qualquer comando que o marketplace declara antes dela.
Três campos estão sempre presentes:
command: o subcomando que foi executado, comoinstalloutcome:okoufailedmessage: uma descrição legível por humanos do resultado
pluginId, scope e failureCode, aparecem apenas quando se aplicam.
A opção --json em plugin uninstall, plugin update, plugin enable e plugin disable imprime o mesmo objeto com os próprios campos desse subcomando.
Um erro de uso, como um --scope inválido, não imprime nenhuma linha de resultado e sai com 1 com o motivo em stderr.
Resultado JSON para comandos de marketplace
Emplugin marketplace add, plugin marketplace remove e plugin marketplace update, --json imprime um objeto JSON na última linha de stdout com os campos command, outcome e message. O seguinte é o resultado de claude plugin marketplace remove your-marketplace --json:
command é marketplace-add, marketplace-remove ou marketplace-update. Os campos abaixo aparecem apenas quando se aplicam:
marketplace: o nome do marketplace sobre o qual o comando atuoufailureCode: um código para o motivo pelo qual o comando falhou, comoinvalid_source
plugin marketplace add e plugin marketplace remove podem não imprimir nenhuma linha de resultado quando o argumento é o nome reservado anthropic-plugin-directory, então verifique o código de saída para esse nome.
Aceitar um comando de instalação exibido
Quando uma execução--json exibe um comando declarado pelo marketplace e não o executa, o resultado failed também carrega um objeto shownCommand. Seus campos incluem o comando conforme exibido, o plugin ao qual pertence e o sha256 do comando.
Para aceitar exatamente esse comando, execute novamente com esse sha256 como --accept-command do seu próprio terminal, porque a flag não tem efeito dentro de uma sessão Claude Code. Requer Claude Code v2.1.271 ou posterior.
O sha256 conta como aceitação para exatamente esse comando, plugin e catálogo de marketplace. Se qualquer um deles mudou desde que o comando foi exibido, Claude Code não aceita o sha256 e mostra o comando novamente. Uma mudança que a atualização do marketplace da própria execução busca também conta como tal mudança.
Se shownCommand.acceptCommandMatched for false, o sha256 que você passou não corresponde ao comando agora exibido. Revise esse comando antes de executar novamente com seu sha256.
plugin uninstall
Remova um plugin instalado de um escopo.remove e rm são aliases para uninstall.
Desinstale um plugin do escopo do projeto:
Successfully uninstalled plugin: formatter (scope: project). Quando o plugin não está instalado nesse escopo, o comando imprime uma linha que começa com Failed to uninstall plugin "formatter@my-marketplace": e sai com 1.
Se a linha de falha continuar com "formatter" was not uninstalled: e nomear um arquivo de configurações, Claude Code não conseguiu confirmar que as configurações do escopo não ativam mais o plugin, então o plugin permanece instalado com tudo que salvou. Com --json, o resultado carrega failureCode: "settings_still_on". Esta verificação de configurações requer Claude Code v2.1.282 ou posterior.
O que uma desinstalação deleta e mantém
Quando você desinstala um plugin do último escopo em que está instalado, Claude Code também deleta as opções e segredos armazenados do plugin e seu diretório de dados,~/.claude/plugins/data/<id>/. Há três exceções:
- Com
--keep-data, o diretório de dados permanece - Quando outro plugin instalado usa a mesma pasta, como um cujo ID difere deste apenas em maiúsculas/minúsculas, o diretório de dados permanece
- Quando Claude Code não consegue ler a lista de plugins instalados novamente após removê-lo desse escopo, as opções, segredos e diretório de dados todos permanecem, porque o plugin pode ainda estar instalado em outro escopo. A desinstalação ainda é bem-sucedida. A mensagem lista o que permaneceu e como deletá-lo, e com
--jsono resultado carregasavedKept: "install_records_unreadable"
--json, keptData relata se o diretório permaneceu, e /plugin mostra · data preserved quando fez. Para um diretório que permanece sem --keep-data, este relatório requer Claude Code v2.1.281 ou posterior. O campo savedKept requer Claude Code v2.1.282 ou posterior.
plugin enable
Ative um plugin desativado. Para um plugin sincronizado de claude.ai, passe<name>@synced como o plugin.
Sem
--scope, o comando verifica seus arquivos de configurações na ordem local, projeto, usuário, e usa o primeiro escopo que menciona o plugin.
Se você passar um --scope onde o plugin não está declarado, o comando escreve uma substituição ou falha:
- Um escopo que tem precedência sobre o que o declara: Claude Code escreve uma substituição no escopo que você passou. Por exemplo,
claude plugin disable formatter --scope localdesativa um plugin ativado no projeto apenas para você - Qualquer outro escopo: o comando falha com
Plugin "formatter" is installed at project scope, not user. Use --scope project or omit --scope to auto-detect.
Plugin "formatter" is already enabled e sai com 1. Com --json, o resultado tem "failureCode": "already_in_goal_state" e "alreadyInGoalState": true, então um script pode tratar esse caso como sucesso.
Quando o plugin declara dependências, Claude Code as ativa também. O comando falha nestes casos:
- Uma dependência não está instalada: a ativação falha e imprime o comando
claude plugin installpara cada dependência ausente - Uma dependência é bloqueada pela política de plugin da sua organização: a ativação falha e nomeia a dependência bloqueada
- Uma dependência é definida como
falseem um escopo com precedência maior que o escopo de destino: a ativação falha. Ative a dependência nesse escopo, ou passe--scopepara escrever lá
Successfully enabled plugin: formatter (scope: project), nomeando o escopo que detectou.
plugin disable
Desative um plugin sem desinstalá-lo. Para um plugin sincronizado de claude.ai, passe<name>@synced como o plugin.
Sem
--scope, o escopo é auto-detectado na mesma ordem local, projeto, usuário que plugin enable.
Se você não passar nem um nome de plugin nem --all, Claude Code imprime Please specify a plugin name or use --all to disable all plugins e sai com 1. Desativar um plugin que já está desativado imprime Plugin "formatter" is already disabled e sai com 1, como plugin enable faz para um plugin já ativado.
O comando falha para um plugin que ainda é necessário:
- Outro plugin ativado depende dele: o comando falha e nomeia os dependentes para desativar primeiro
- Sua organização o requer como um plugin sincronizado: o comando falha e não salva nada
Successfully disabled plugin: formatter (scope: project).
plugin update
Atualize um plugin para a versão mais recente que seu marketplace oferece. A nova versão carrega em sua próxima sessão, ou depois que você executa/reload-plugins em uma em execução.
Atualize um plugin:
Checking for updates for plugin "formatter@my-marketplace"…, depois o resultado. Quando nada é mais recente, imprime formatter is already at the latest version (1.0.0). e sai com 0, a menos que tente novamente a instalação de dependências do plugin e essa instalação falhe.
Qual escopo o comando atualiza
Se você omitir--scope, o comando atualiza o plugin no escopo mais específico em que está instalado para seu projeto atual, verificando local, projeto, usuário, depois gerenciado.
Antes de v2.1.281, o comando usava user quando você omitia --scope, então atualizar um plugin instalado apenas em escopo de projeto ou local falhava com Plugin "<name>" is not installed at scope user. Nessas versões, passe --scope.
managed é o único escopo que você pode atualizar mas não instalar. Para plugins instalados por admin, veja Gerenciar plugins para sua organização.
Atualizar por nome simples
Você pode passar um nome de plugin simples, que o comando corresponde contra seus plugins instalados. Quando plugins instalados de diferentes marketplaces compartilham o nome, o comando recusa a atualização e lista os comandosplugin-name@marketplace-name qualificados para executar. Atualizar por nome simples requer Claude Code v2.1.246 ou posterior.
Tentar novamente uma instalação de dependências inacabada
Quando o plugin já está em sua versão mais recente, o comando também pode tentar novamente uma instalação de dependências inacabada em sua cópia em cache. Para os casos em que essa nova tentativa é executada ou ignorada, veja Os pacotes que ele lista não estão instalados. Se a nova tentativa falhar, a saída éFailed to update plugin "formatter@my-marketplace" com o motivo e o código de saída é 1. Antes de v2.1.287, o comando relatava o plugin em sua versão mais recente sem tentar novamente a instalação.
plugin list
Liste plugins instalados com sua versão, escopo e status.
Claude Code agrupa a saída legível por humanos por como cada plugin carrega:
Installed plugins:: plugins que você instalou de um marketplaceSession-only plugins (--plugin-dir / --plugin-url):: plugins carregados por essas flags no mesmo comando, como emclaude --plugin-dir ./my-plugin plugin listSkills-directory plugins (.claude/skills/*):: plugins que Claude Code encontrou em um diretório de skillsSynced from claude.ai: plugins sincronizados de sua conta claude.ai
No plugins installed. Use `claude plugin install` to install a plugin.
Saída JSON
Com--json, Claude Code imprime um array com um objeto por instalação. Cada objeto carrega os campos abaixo. id, version, scope, enabled e installPath estão sempre presentes, e os outros aparecem apenas quando se aplicam.
Com
--json --available, Claude Code imprime um objeto em vez de um array. Seu campo installed contém o array de objetos de plugin instalado, e seu campo available contém um objeto por plugin de marketplace não instalado com os campos abaixo.
plugin details
Mostre o inventário de componentes de um plugin e seu custo de token projetado. O plugin deve estar carregado: instalado, encontrado em um diretório de skills, ou passado com--plugin-dir ou --plugin-url no mesmo comando. O <name> é um name de plugin ou name@marketplace.
--help.
Mostre o que um plugin instalado contribui:
Component inventory: os skills, agents, hooks, servidores MCP e servidores LSP do pluginProjected token cost: os tokens sempre ativados que o plugin adiciona a cada sessãoPer-component (rounded): estimativas sempre ativadas e sob invocação para cada skill, agent e comando. Omitido quando o plugin não tem nenhum
Plugin "formatter" not found. Run `claude plugin list` to see installed plugins, or pass --plugin-dir <path> to load one from disk. e sai com 1.
plugin configure
Mostre as opçõesuserConfig de um plugin instalado e quais estão definidas, ou salve valores canalizados em stdin. Requer Claude Code v2.1.285 ou posterior.
Sem flags, o comando lista cada opção com até três rótulos:
required ou optional, depois sensitive para uma opção que o manifesto declara sensível, depois set ou not set. Não imprime valores salvos. Com --json, a saída inclui os valores salvos de opções que não são sensíveis, e nunca o texto de uma sensível.
Para salvar valores, escreva-os em um arquivo como um objeto JSON que mapeia chaves de opção para valores de string, depois passe o arquivo em stdin. Substitua formatter@my-marketplace pelo id do seu próprio plugin conforme claude plugin list o mostra. Este exemplo define uma opção nomeada api_url de um arquivo values.json que contém {"api_url": "https://example.com"}:
Configuration saved. Restart Claude Code to apply it. Se você passar uma chave que o manifesto não declara, ou um valor que falha na validação, o comando não salva nada, imprime Failed to save configuration: com o motivo, e sai com 1. Com --json, um valor recusado também imprime um objeto em stdout cujo campo refused carrega a message e, quando uma opção é culpada, sua chave option.
Passe o id completo name@marketplace do plugin, conforme claude plugin list o mostra. configure não aceita um name simples. Quando nenhum plugin carregado tem esse id, o comando imprime No installed plugin has the id "<plugin>". e sai com 1.
Para as configurações de um servidor MCP empacotado, veja plugin install --config ou o item Configure em /plugin.
plugin prune
Remova dependências auto-instaladas que nenhum plugin instalado precisa mais. O comando nunca remove um plugin que você instalou você mesmo.autoremove é um alias para prune.
Visualize o que um prune removeria:
(dry run — nothing removed). Sem nada para remover, imprime uma linha que começa com Nothing to prune.
Sem --dry-run, o comando remove as dependências órfãs apenas depois que você confirma no prompt ou passa -y.
O código de saída é 0 qualquer que seja sua resposta no prompt.
O que prune faz depende se um terminal está anexado e se você passa -y:
plugin eval
Execute casos de eval de um plugin e relate resultados pontuados. Requer Claude Code v2.1.269 ou posterior. Cada caso é um prompt mais avaliadores. Claude Code o executa várias vezes em uma sessão isolada com apenas o plugin de destino carregado, e por padrão também sem o plugin para que o relatório mostre a diferença. Veja Testar plugins com evals para o formato de caso, avaliadores, resultados e uso de CI.target opcional padrão é o diretório atual e toma qualquer uma destas formas:
- Um diretório de plugin
- Um único arquivo
prompt.mdoucase.yaml - Um plugin instalado como
nameouname@marketplace name@skills-dir
--tag, --allow-tools e --json. Cada uma dessas opções toma as palavras que a seguem como seu valor, então um target escrito após uma delas é lido como uma tag, um nome de ferramenta ou o caminho de saída JSON em vez de como o target.
Esta tabela lista as opções que a maioria das execuções usa. Execute claude plugin eval --help para o conjunto completo, incluindo --case, --tag, --output-dir, --report, --allow-real-servers, --keep-temp e --verbose.
O código de saída relata como a execução terminou. Para agir sobre ele em um pipeline, veja Executar evals em CI.
plugin eval init
Crie um conjunto de eval para o plugin no diretório atual. Requer Claude Code v2.1.269 ou posterior. Veja Criar seu primeiro conjunto de eval..claude-plugin/plugin.json ou o SKILL.md do skill. Para criar o conjunto em outro diretório propositalmente, passe --eval-dir.
Em um terminal, o comando abre uma sessão Claude Code interativa para uma entrevista de autoria. Na entrevista, Claude faz o seguinte:
- Lê o plugin
- Pergunta o que ele deveria fazer bem
- Propõe casos e avaliadores
- Escreve os arquivos de caso
- Executa os casos e revisa as notas com você para verificar que os avaliadores pontuam da forma que você faria
--bare, ou sem um terminal, o comando escreve um modelo de caso único em branco. Quando Claude executa o comando de dentro de uma sessão Claude Code, o comando imprime as instruções da entrevista para essa sessão seguir em vez de escrever um modelo.
O name opcional é um nome de caso. É necessário com --bare ou sem um terminal, porque o comando escreve o modelo em branco para esse caso. Um nome de caso começa com uma letra ou dígito e contém apenas letras, dígitos, ., _ e -. Em todas as plataformas, o comando também recusa nomes que Windows não consegue armazenar, como con ou um nome terminando em ..
O comando aceita estas opções:
plugin tag
Crie uma tag git anotada nomeada<name>--v<version> para uma versão de plugin. Antes de marcar, o comando verifica se o plugin.json do plugin e qualquer entrada de marketplace que o liste concordam sobre a versão.
Para quando marcar uma versão, veja Publicar um plugin.
[path] é o diretório do plugin, padronizando para o diretório atual. O comando encontra a entrada do marketplace caminhando para cima a partir desse diretório para um .claude-plugin/marketplace.json que lista o plugin.
Visualize a tag para um plugin em um checkout de marketplace:
- O nome do plugin
- A versão e qual arquivo ela veio
- A entrada de marketplace correspondente, quando há uma
- O nome da tag
- Os comandos
git tagegit pushque executaria
--dry-run, Claude Code imprime Created tag formatter--v1.0.0 e Pushed to origin ou o comando push para você executar você mesmo. Se o push falhar, a tag ainda é criada localmente e o comando sai com um erro.
O comando sai com 1 e imprime o motivo quando não consegue marcar com segurança. Motivos comuns são:
- Sem
versionemplugin.jsonou na entrada do marketplace - A tag já existe
- A árvore de trabalho está suja
plugin test
Execute os testes de um mod, um plugin cujo código registra manipuladores de eventos. O comando não precisa de sessão, login ou rede. Para saber como escrever um teste, veja Testar um mod.[directory] é o diretório do mod, padronizando para o diretório atual. O comando executa todos os arquivos sob ele cujo nome termina em .test.ts ou .test.tsx, e sai com status 1 quando um teste falha.
Execute os testes de um mod em ./first-mod:
plugin validate
Valide um manifesto de plugin, um manifesto de marketplace, ou os skills, agents e comandos em um diretório, e saia com um código que um trabalho de CI pode agir. Para o fluxo de trabalho criar, testar e editar, veja Criar um plugin. Para o que o validador verifica em cada manifesto, veja a referência de manifesto de plugin e a referência de marketplace.
Valide um plugin antes de fazer commit:
Validar um diretório
O<path> é um arquivo de manifesto ou um diretório. Dado um diretório, Claude Code escolhe o que validar pelo que encontra lá:
.claude-plugin/marketplace.json, quando existe- Caso contrário
.claude-plugin/plugin.json - Caso contrário os arquivos de componente, escolhidos pelo nome do diretório. Validar arquivos de componente sem um manifesto requer Claude Code v2.1.233 ou posterior:
- Um diretório nomeado
skills,agentsoucommands: os arquivos dentro dele - Um diretório nomeado
.claude: os diretóriosskills,agentsecommandsdentro dele - Qualquer outro diretório: esses três diretórios sob seu
.claude
- Um diretório nomeado
.claude-plugin/marketplace.json quanto um .claude-plugin/plugin.json, Claude Code valida o marketplace e também o manifesto e os arquivos de componente do plugin. Isso requer Claude Code v2.1.289 ou posterior.
Claude Code não segue symlinks dentro do diretório que você nomeia. O que faz depende de onde o link está:
- Um diretório
skills,agentsoucommandsvinculado sob a raiz do plugin ou.claude: Claude Code avisa que nada nele foi lido. - Uma entrada vinculada dentro de um diretório
skills,agentsoucommands: Claude Code a pula e avisa, por diretório, quantas entradas pulou que uma sessão carregaria. - O diretório
skills,agentsoucommandsque você nomeia é ele mesmo um symlink, ou seu diretório pai.claudeé: Claude Code relata um erro e não verifica nada nele. Nomeie o diretório real.
- Um
SKILL.mdna raiz do plugin: quando você executaclaude plugin validatecontra um diretório de plugin, Claude Code não verifica umSKILL.mdna raiz do plugin - Um
CLAUDE.mdna raiz do plugin: em uma execução de plugin, Claude Code também avisa sobre umCLAUDE.mdna raiz do plugin - Arquivos de plugin em uma execução de marketplace: de um diretório de marketplace, Claude Code não abre os arquivos de skill, agent, comando ou hook dos plugins que o marketplace lista em outros diretórios, nem os arquivos de servidor MCP que eles incluem. Para encontrar erros nesses arquivos, valide cada diretório de plugin
Saída e códigos de saída
Claude Code imprime o arquivo que validou, quaisquer erros e avisos com seus caminhos, e uma linha de veredicto. O código de saída segue o veredicto:
Com
--json, Claude Code escreve o relatório para stdout como um objeto JSON com estes campos de nível superior:
success: o mesmo veredicto que o código de saída fornecestrict: se a execução tratou avisos como errostarget: o caminho resolvido que Claude Code validoumanifest: o resultado do próprio manifesto, ounullpara uma execução sem manifestocontents: resultados por arquivo, cada um nomeando seufilee carregando arrayserrors,warningsenotesgatingHooks: se cada hook de mod que pode recusar uma ação, como um hooktool.call, tem um manipulador.catch. Cada item fornecemodule,pattern,hookehasCatch. Requer Claude Code v2.1.290 ou posterior
2, o comando não escreve nada para stdout. A mensagem de erro vai para stderr.
Comandos claude plugin marketplace
Executeclaude plugin marketplace <subcommand> do seu shell para adicionar, listar, atualizar e remover os marketplaces dos quais você instala plugins.
- Códigos de saída: estes subcomandos seguem a convenção de código de saída dos comandos de plugin
- Escopos: sua flag
--scopenão tem forma curta-s
plugin marketplace add
Adicione um marketplace de um repositório GitHub, uma URL git, ummarketplace.json hospedado ou um caminho local, e declare-o em um arquivo de configurações.
Depois de adicioná-lo, Claude Code instala quaisquer dependências que seus plugins instalados estavam perdendo.
<source> toma qualquer uma das formas na tabela abaixo, e sua forma decide o tipo de fonte e como Claude Code busca o marketplace. Para o objeto de fonte resultante, veja a referência de marketplace.
Para um host cujas URLs de clone não carregam o sufixo
.git, como AWS CodeCommit, adicione o marketplace como uma entrada git em extraKnownMarketplaces. Claude Code clona uma entrada git independentemente de sua URL terminar em .git.
Claude Code também clona uma URL gitlab.com com subgrupos aninhados, como https://gitlab.com/group/subgroup/project.
Adicione um marketplace e compartilhe-o com o projeto:
Successfully added marketplace: your-marketplace (declared in project settings), usando o name do próprio manifesto do marketplace. Uma adição repetida ou uma fonte inválida imprime um destes resultados:
- Marketplace já no disco: a saída é
Marketplace 'your-marketplace' already on disk — declared in project settingse o código de saída é0 - Fonte não reconhecida: a saída é
Invalid marketplace source format. Try: owner/repo, https://..., or ./pathe o código de saída é1 - Host simples como
gitlab.example.com/team/plugins: a adição falha como um atalhoowner/repoinválido, e a mensagem diz para adicionarhttps://ou usar um caminho local
From claude.ai: de claude plugin marketplace list:
--claudeai, o comando recusa --scope e --sparse. O marketplace é hospedado para sua conta, não declarado em um arquivo de configurações, então você não pode compartilhá-lo através do .claude/settings.json de um projeto.
plugin marketplace list
Liste cada marketplace que você adicionou, com sua fonte.
Claude Code imprime
Configured marketplaces: e uma linha Source: por marketplace, ou No marketplaces configured.
Com --json, Claude Code imprime um array com um objeto por marketplace, carregando os campos abaixo. Cada campo é uma string.
Um marketplace claude.ai adicionado não tem clone local, então sua entrada carrega seus identificadores claude.ai,
marketplaceId e organizationUuid, no lugar de installLocation. Também carrega scope quando um é registrado, e status.
Se suas sessões de terminal sincronizam plugins de sua conta claude.ai, a listagem de texto termina com uma seção From claude.ai:. Essa seção nomeia os marketplaces que claude.ai lista para sua conta que você não adicionou, tanto baseados em git quanto hospedados. Requer Claude Code v2.1.273 ou posterior.
Para adicionar um marketplace dessa seção, veja Adicionar um marketplace de claude.ai.
A saída --json cobre apenas marketplaces configurados e deixa a seção de fora.
plugin marketplace remove
Remova a declaração de um marketplace de suas configurações.rm é um alias para remove.
<name> é o nome do marketplace que plugin marketplace list mostra, não a fonte que você passou para add.
Remova um marketplace de cada escopo:
Successfully removed marketplace: your-marketplace. Quando o comando desinstala plugins, a saída os lista sob uma linha como Also uninstalled 2 plugins from this marketplace:. Para usar um deles novamente, adicione o marketplace de volta e reinstale o plugin.
Se você restringir o escopo a um arquivo de configurações que não declara o marketplace, o comando falha com Marketplace 'your-marketplace' is not declared in project settings. Omit --scope to remove it from all scopes.
plugin marketplace update
Atualize um marketplace, ou cada marketplace, de sua fonte para buscar novos plugins e versões. Um marketplace adicionado com um branch ou tagref atualiza para o commit mais recente desse ref, não o branch padrão do repositório.
Atualize um marketplace:
Successfully updated marketplace: your-marketplace. Quando você omite o nome, imprime uma contagem como Successfully updated 2 marketplaces.
/plugin em uma sessão
Dentro de uma sessão interativa,/plugin abre o painel de plugin. Cada subcomando abre o painel em uma aba, executa uma ação lá ou imprime um resultado inline. /plugins e /marketplace são aliases para /plugin.
Você pode executar estes comandos apenas em uma sessão de terminal interativa. Em uma execução não interativa como claude -p, Claude Code responde que /plugin não está disponível neste ambiente.
Para quais superfícies têm /plugin, como instalar sem ele e o que cada aba do painel mostra, veja Instalar e gerenciar plugins.
Um <plugin> é um name de plugin ou name@marketplace.
A tabela abaixo lista cada forma de sessão. Os subcomandos de shell init, update, details, prune, eval, eval init e test não têm forma de sessão.
Se você nomear um plugin que não está instalado no projeto atual em
/plugin enable, disable, uninstall ou configure, Claude Code imprime Plugin "<plugin>" is not installed in this project em vez de agir.
/reload-plugins
Aplique mudanças de plugin pendentes à sessão em execução sem reiniciá-la. Mudanças pendentes são plugins que você instalou, atualizou, ativou, desativou ou editou no disco desde que a sessão começou. Quando você fecha o painel/plugin com mudanças pendentes que você fez nele, Claude Code executa /reload-plugins para você. Execute-o você mesmo após mudanças de plugin que acontecem fora do painel, como um comando claude plugin que você executou em outro terminal.
Resumo de recarregamento
Claude Code recarrega cada plugin ativo e imprime uma linha de resumo,Reloaded: N plugins · N skills · N agents · N hooks · N plugin MCP servers · N plugin LSP servers, omitindo a contagem de servidor MCP de plugin em uma sessão sem terminal interativo. Quando qualquer plugin falhou, o resumo adiciona N errors during load. Run /plugin for details.
A contagem de skills cobre cada skill que um plugin fornece, tanto suas entradas commands/ quanto suas skills SKILL.md. A contagem de agents é o número de agents carregados na sessão, incluindo aqueles que não vêm de plugins.
Quando as dependências de um plugin recarregado estão faltando, Claude Code as instala, recarrega novamente e anexa (+ N dependencies: <names>) resolved ao resumo.
Recarregamentos que mudam ferramentas MCP
Quando o recarregamento adicionaria ou removeria um servidor MCP de plugin ou a ferramentaLSP, e essa mudança invalidaria o cache de prompt, Claude Code não aplica o recarregamento. Imprime uma linha como This reload changes MCP tools (<server>) — your next message will re-read the whole conversation instead of using the cache. Run /reload-plugins --force to apply. Passe --force para aplicá-lo mesmo assim.
Sessões sem terminal interativo
/reload-plugins também é executado em sessões sem terminal interativo, como o aplicativo desktop, o Agent SDK e modo não interativo com -p. Requer Claude Code v2.1.260 ou posterior.
Nessas sessões, o comando é executado apenas quando você o digita na sessão você mesmo, como no prompt -p ou na caixa de prompt do aplicativo desktop. Quando chega de outra forma, como através de Remote Control ou uma mensagem retransmitida do Slack, o comando responde /reload-plugins isn't available over a remote connection in this session. e não recarrega nada.
O recarregamento nessas sessões não conecta ou desconecta servidores MCP de plugin. Essas mudanças entram em vigor em sua próxima sessão.
Flags que carregam um plugin para uma sessão
Duas flagsclaude carregam um plugin para uma sessão apenas, sem instalá-lo. Ambas são repetíveis.
Autores de plugin as usam para testar um plugin antes de publicar. Para o fluxo de trabalho carregar-editar-recarregar, veja Desenvolver sem um marketplace.
Um plugin que qualquer uma dessas flags carrega é um plugin de sessão única.
claude plugin list o mostra apenas quando a mesma flag precede o subcomando, como em claude --plugin-dir ./my-plugin plugin list. O plugin aparece como <name>@inline sob um cabeçalho que começa com Session-only plugins, e --json relata seu scope como session.
Quando um plugin de sessão única compartilha um nome com um plugin instalado, Claude Code carrega a cópia de sessão única para essa sessão e pula a instalada. A cópia instalada carrega em vez disso se você desativou a cópia de sessão única com claude plugin disable <name>@inline, ou se configurações gerenciadas bloqueiam esse nome de plugin. Para a precedência, veja Referência de carregamento de plugin.
Um administrador pode rejeitar ambas as flags e pastas nomeadas na variável CLAUDE_CODE_PLUGIN_DIRS, com a configuração gerenciada disableSideloadFlags. Claude Code então imprime que a flag é desativada pelas configurações gerenciadas de sua organização e sai com 1 sem iniciar.
Do Agent SDK, a opção plugins é o equivalente de --plugin-dir.
Próximos passos
- Instalar e gerenciar plugins: as mesmas operações que etapas, com o que você vê em cada uma
- Referência de carregamento de plugin: o que cada comando muda no disco e qual escopo entra em vigor
- Solucionar problemas de plugins: mensagens de erro de instalação, marketplace, carregamento e validação com suas correções
- Referência de manifesto de plugin: os campos que
claude plugin validateverifica