6 6
7> Adicione painéis, comandos e regras de chamada de ferramenta ao Claude Code com um mod. Veja o que um mod pode fazer, como criar ou instalar um, e onde os mods são executados.7> Adicione painéis, comandos e regras de chamada de ferramenta ao Claude Code com um mod. Veja o que um mod pode fazer, como criar ou instalar um, e onde os mods são executados.
8 8
9Um mod é um [plugin](/docs/pt/plugins/overview.md) que muda como o Claude Code se parece e se comporta. É feito de manipuladores de eventos em JavaScript ou TypeScript: Claude Code chama um quando um evento acontece, como uma chamada de ferramenta, um prompt enviado, ou uma parte da interface sendo desenhada, e o manipulador pode observar o evento, alterá-lo ou assumir o controle dele. Use um mod para adicionar um recurso próprio ao Claude Code, como um painel que mostra graficamente o quão cheio seu contexto está após cada solicitação. Para os arquivos em um mod e um exemplo completo, veja [Como um mod funciona](#how-a-mod-works).9Um mod é um [plugin](https://code.claude.com/docs/pt/plugins/overview.md) que muda como o Claude Code se parece e se comporta. É feito de manipuladores de eventos em JavaScript ou TypeScript: Claude Code chama um quando um evento acontece, como uma chamada de ferramenta, um prompt enviado, ou uma parte da interface sendo desenhada, e o manipulador pode observar o evento, alterá-lo ou assumir o controle dele. Use um mod para adicionar um recurso próprio ao Claude Code, como um painel que mostra graficamente o quão cheio seu contexto está após cada solicitação. Para os arquivos em um mod e um exemplo completo, veja [Como um mod funciona](#how-a-mod-works).
10 10
11> [!NOTE]11> [!NOTE]
12>12>
13> Os [hooks](/docs/pt/hooks.md) existentes do Claude Code também são executados em eventos, como um comando shell, uma solicitação HTTP ou um prompt que você configura em um arquivo de configurações. Os manipuladores de um mod são funções que são executadas dentro do Claude Code em vez disso. Claude Code chama ambos os tipos de hooks: nessas páginas, "hook" significa um manipulador de um mod, e o tipo de arquivo de configurações é um "settings hook".13> Os [hooks](https://code.claude.com/docs/pt/hooks.md) existentes do Claude Code também são executados em eventos, como um comando shell, uma solicitação HTTP ou um prompt que você configura em um arquivo de configurações. Os manipuladores de um mod são funções que são executadas dentro do Claude Code em vez disso. Claude Code chama ambos os tipos de hooks: nessas páginas, "hook" significa um manipulador de um mod, e o tipo de arquivo de configurações é um "settings hook".
14 14
15## O que um mod pode fazer15## O que um mod pode fazer
16 16
17Settings hooks, skills, linhas de status e servidores MCP funcionam de fora do Claude Code: cada um executa um script ou fornece ao Claude texto ou ferramentas. Um mod é executado dentro do Claude Code, então pode fazer coisas que eles não conseguem:17Settings hooks, skills, linhas de status e servidores MCP funcionam de fora do Claude Code: cada um executa um script ou fornece ao Claude texto ou ferramentas. Um mod é executado dentro do Claude Code, então pode fazer coisas que eles não conseguem:
18 18
19* **Desenhar uma interface que você pode usar**: um painel ao lado da transcrição ou uma faixa acima do prompt, com abas, botões e campos de texto. Veja [Desenhar na interface](/docs/pt/plugins/mods/interface.md).19* **Desenhar uma interface que você pode usar**: um painel ao lado da transcrição ou uma faixa acima do prompt, com abas, botões e campos de texto. Veja [Desenhar na interface](https://code.claude.com/docs/pt/plugins/mods/interface.md).
20* **Redesenhar a própria interface do Claude Code**: substituir ou reformatar partes que o Claude Code desenha, como a linha de uma chamada de ferramenta, o spinner ou o diálogo que o Claude faz perguntas. Veja [Alterar o que o Claude Code já desenha](/docs/pt/plugins/mods/interface.md#change-what-claude-code-already-draws).20* **Redesenhar a própria interface do Claude Code**: substituir ou reformatar partes que o Claude Code desenha, como a linha de uma chamada de ferramenta, o spinner ou o diálogo que o Claude faz perguntas. Veja [Alterar o que o Claude Code já desenha](https://code.claude.com/docs/pt/plugins/mods/interface.md#change-what-claude-code-already-draws).
21* **Intervir em uma chamada de ferramenta ou uma solicitação**: por exemplo, manter uma chamada de ferramenta enquanto você faz uma pergunta ao usuário, responder sem executar a ferramenta ou enviar uma solicitação para um modelo diferente. Veja [Guardar ou alterar uma chamada de ferramenta](/docs/pt/plugins/mods/events.md#guard-or-change-a-tool-call) e [Seguir um turno](/docs/pt/plugins/mods/events.md#follow-a-turn).21* **Intervir em uma chamada de ferramenta ou uma solicitação**: por exemplo, manter uma chamada de ferramenta enquanto você faz uma pergunta ao usuário, responder sem executar a ferramenta ou enviar uma solicitação para um modelo diferente. Veja [Guardar ou alterar uma chamada de ferramenta](https://code.claude.com/docs/pt/plugins/mods/events.md#guard-or-change-a-tool-call) e [Seguir um turno](https://code.claude.com/docs/pt/plugins/mods/events.md#follow-a-turn).
22* **Executar seu próprio código em um comando**: um `/command` que executa sua função imediatamente, sem nenhum turno do Claude, mesmo enquanto o Claude está trabalhando. Veja [Adicionar um comando ou uma ferramenta](/docs/pt/plugins/mods/api.md#add-a-command-or-a-tool).22* **Executar seu próprio código em um comando**: um `/command` que executa sua função imediatamente, sem nenhum turno do Claude, mesmo enquanto o Claude está trabalhando. Veja [Adicionar um comando ou uma ferramenta](https://code.claude.com/docs/pt/plugins/mods/api.md#add-a-command-or-a-tool).
23* **Compartilhar dados entre hooks**: os hooks de um mod compartilham as variáveis em seu arquivo, então o que um hook registra, outro pode mostrar. Por exemplo, um hook pode contar chamadas de ferramenta enquanto outro mostra a contagem ao lado do spinner, ou um pode ler o uso de tokens de cada solicitação enquanto outro o mostra em gráfico em um painel. Veja [Reagir a eventos](/docs/pt/plugins/mods/events.md).23* **Compartilhar dados entre hooks**: os hooks de um mod compartilham as variáveis em seu arquivo, então o que um hook registra, outro pode mostrar. Por exemplo, um hook pode contar chamadas de ferramenta enquanto outro mostra a contagem ao lado do spinner, ou um pode ler o uso de tokens de cada solicitação enquanto outro o mostra em gráfico em um painel. Veja [Reagir a eventos](https://code.claude.com/docs/pt/plugins/mods/events.md).
24 24
25Os mods funcionam no CLI do Claude Code, na aba Code do aplicativo Claude Desktop e na extensão do VS Code. Veja [Onde os mods são executados](#where-mods-run) para entender como eles se comportam em outros lugares, como em `claude -p` e em sessões na nuvem. Se um hook de configuração, uma skill ou um servidor MCP já faz o que você precisa, [compare-os](#compare-mods-settings-hooks-skills-and-mcp-servers) antes de escrever um mod. Para gerenciar mods para uma organização, veja [Gerenciar mods para sua organização](/docs/pt/plugins/mods/admin.md).25Os mods funcionam no CLI do Claude Code, na aba Code do aplicativo Claude Desktop e na extensão do VS Code. Veja [Onde os mods são executados](#where-mods-run) para entender como eles se comportam em outros lugares, como em `claude -p` e em sessões na nuvem. Se um hook de configuração, uma skill ou um servidor MCP já faz o que você precisa, [compare-os](#compare-mods-settings-hooks-skills-and-mcp-servers) antes de escrever um mod. Para gerenciar mods para uma organização, veja [Gerenciar mods para sua organização](https://code.claude.com/docs/pt/plugins/mods/admin.md).
26 26
27## Obter um mod27## Obter um mod
28 28
29Para começar com um mod:29Para começar com um mod:
30 30
31* **Use um que você já tem**: alguns dos próprios recursos do Claude Code são mods, como `/diff`. Veja [Mods integrados ao Claude Code](#mods-built-into-claude-code).31* **Use um que você já tem**: alguns dos próprios recursos do Claude Code são mods, como `/diff`. Veja [Mods integrados ao Claude Code](#mods-built-into-claude-code).
32* **Crie um**: descreva o que você quer em uma sessão do Claude Code, e o Claude escreve o mod. Veja [Peça ao Claude por um mod](/docs/pt/plugins/mods/create.md#ask-claude-for-a-mod). Para aprender como o código de um mod funciona, [escreva um você mesmo](/docs/pt/plugins/mods/create.md#write-a-mod-yourself).32* **Crie um**: descreva o que você quer em uma sessão do Claude Code, e o Claude escreve o mod. Veja [Peça ao Claude por um mod](https://code.claude.com/docs/pt/plugins/mods/create.md#ask-claude-for-a-mod). Para aprender como o código de um mod funciona, [escreva um você mesmo](https://code.claude.com/docs/pt/plugins/mods/create.md#write-a-mod-yourself).
33* **Instale um**: veja [Instalar ou atualizar um mod](#install-or-update-a-mod), ou [experimente um mod de exemplo](#try-a-sample-mod)33* **Instale um**: veja [Instalar ou atualizar um mod](#install-or-update-a-mod), ou [experimente um mod de exemplo](#try-a-sample-mod)
34 34
35### Instalar ou atualizar um mod35### Instalar ou atualizar um mod
43* Em uma sessão do Claude Code, execute `/plugin install token-chart@your-org`.43* Em uma sessão do Claude Code, execute `/plugin install token-chart@your-org`.
44* No seu shell, execute `claude plugin install token-chart@your-org`.44* No seu shell, execute `claude plugin install token-chart@your-org`.
45 45
46[Instalar plugins](/docs/pt/plugins/install.md) cobre marketplaces, escopos, a extensão VS Code e o aplicativo Desktop, e [manter plugins atualizados](/docs/pt/plugins/install.md#keep-plugins-updated), tudo isso se aplica a um plugin que contém um mod sem alterações.46[Instalar plugins](https://code.claude.com/docs/pt/plugins/install.md) cobre marketplaces, escopos, a extensão VS Code e o aplicativo Desktop, e [manter plugins atualizados](https://code.claude.com/docs/pt/plugins/install.md#keep-plugins-updated), tudo isso se aplica a um plugin que contém um mod sem alterações.
47 47
48Se você instalar ou atualizar um mod do seu shell enquanto uma sessão está aberta, execute `/reload-plugins` nessa sessão para carregá-lo. Caso contrário, ele carrega na próxima vez que você iniciar o Claude Code.48Se você instalar ou atualizar um mod do seu shell enquanto uma sessão está aberta, execute `/reload-plugins` nessa sessão para carregá-lo. Caso contrário, ele carrega na próxima vez que você iniciar o Claude Code.
49 49
57 57
58Um mod de exemplo é executado com suas permissões. Para ver o que um deles faz antes de carregá-lo, [liste seus hooks e chamadas](#list-what-a-mod-does-before-you-install-one).58Um mod de exemplo é executado com suas permissões. Para ver o que um deles faz antes de carregá-lo, [liste seus hooks e chamadas](#list-what-a-mod-does-before-you-install-one).
59 59
60Para experimentar um, clone o repositório e [carregue o diretório do mod para uma sessão](/docs/pt/plugins/create.md#load-a-directory-or-archive-for-one-session) com `--plugin-dir`. Para confirmar que o mod foi carregado, [verifique quais mods a sessão carregou](#see-which-mods-a-session-loaded).60Para experimentar um, clone o repositório e [carregue o diretório do mod para uma sessão](https://code.claude.com/docs/pt/plugins/create.md#load-a-directory-or-archive-for-one-session) com `--plugin-dir`. Para confirmar que o mod foi carregado, [verifique quais mods a sessão carregou](#see-which-mods-a-session-loaded).
61 61
62Para mantê-lo, [adicione o diretório `claude-code/mods` do clone como um marketplace](/docs/pt/plugins/install#add-a-marketplace) e, em seguida, instale o mod a partir de `claude-code-playground-mods`. O marketplace aponta para o seu clone, então o mod deixa de ser carregado se você movê-lo ou excluí-lo.62Para mantê-lo, [adicione o diretório `claude-code/mods` do clone como um marketplace](https://code.claude.com/docs/pt/plugins/install#add-a-marketplace) e, em seguida, instale o mod a partir de `claude-code-playground-mods`. O marketplace aponta para o seu clone, então o mod deixa de ser carregado se você movê-lo ou excluí-lo.
63 63
64## Decidir se confia em um mod64## Decidir se confia em um mod
65 65
66Um mod é código que é executado com suas permissões, dentro do Claude Code. Instale mods apenas de autores e [marketplaces em que você confia](/docs/pt/plugins/security.md).66Um mod é código que é executado com suas permissões, dentro do Claude Code. Instale mods apenas de autores e [marketplaces em que você confia](https://code.claude.com/docs/pt/plugins/security.md).
67 67
68### O que um mod pode alcançar68### O que um mod pode alcançar
69 69
76* **Agir sem pedir a você**: aprovar uma chamada de ferramenta antes de você ser perguntado76* **Agir sem pedir a você**: aprovar uma chamada de ferramenta antes de você ser perguntado
77* **Gastar seu uso**: chamar um modelo em seu plano ou chave de API77* **Gastar seu uso**: chamar um modelo em seu plano ou chave de API
78 78
79Os mods não são executados em sandbox. Se você ativar o [sandboxing](/docs/pt/sandboxing.md), o sandbox isola os comandos Bash que o Claude executa, e um processo que um mod inicia é executado fora dele.79Os mods não são executados em sandbox. Se você ativar o [sandboxing](https://code.claude.com/docs/pt/sandboxing.md), o sandbox isola os comandos Bash que o Claude executa, e um processo que um mod inicia é executado fora dele.
80 80
81Com [configurações gerenciadas](/docs/pt/settings.md#check-what-your-organization-enforces) ou um [`/login`](/docs/pt/authentication#authentication-precedence) de Team ou Enterprise como credencial da sessão, por padrão a aprovação de um mod não faz uma chamada passar por suas regras `ask` ou hooks `PreToolUse`. Sem nenhum dos dois, um mod pode aprovar uma chamada que uma regra `ask` solicitaria, ou que seu hook `PreToolUse` bloqueou. Para verificar quando um mod também pode aprovar uma chamada que uma regra `deny` recusa, consulte [Estender permissões com hooks](/docs/pt/permissions.md#precedence-among-rules-hooks-and-mods).81Com [configurações gerenciadas](https://code.claude.com/docs/pt/settings.md#check-what-your-organization-enforces) ou um [`/login`](https://code.claude.com/docs/pt/authentication#authentication-precedence) de Team ou Enterprise como credencial da sessão, por padrão a aprovação de um mod não faz uma chamada passar por suas regras `ask` ou hooks `PreToolUse`. Sem nenhum dos dois, um mod pode aprovar uma chamada que uma regra `ask` solicitaria, ou que seu hook `PreToolUse` bloqueou. Para verificar quando um mod também pode aprovar uma chamada que uma regra `deny` recusa, consulte [Estender permissões com hooks](https://code.claude.com/docs/pt/permissions.md#precedence-among-rules-hooks-and-mods).
82 82
83Um mod pode reformatar grande parte da interface do Claude Code, mas não o prompt de permissão. Não pode alterar o que um prompt mostra a você.83Um mod pode reformatar grande parte da interface do Claude Code, mas não o prompt de permissão. Não pode alterar o que um prompt mostra a você.
84 84
90claude plugin validate ./some-mod90claude plugin validate ./some-mod
91```91```
92 92
93As linhas `hooks:` e `calls:` na saída listam os eventos que o mod manipula e o que pede ao Claude Code para fazer. [Revisar o que um mod pode fazer](/docs/pt/plugins/mods/admin.md#review-what-a-mod-can-do) mostra a saída e quais chamadas procurar.93As linhas `hooks:` e `calls:` na saída listam os eventos que o mod manipula e o que pede ao Claude Code para fazer. [Revisar o que um mod pode fazer](https://code.claude.com/docs/pt/plugins/mods/admin.md#review-what-a-mod-can-do) mostra a saída e quais chamadas procurar.
94 94
95## Ativar ou desativar mods95## Ativar ou desativar mods
96 96
97Os mods estão ativados por padrão. No terminal, use o Claude Code v2.1.287 ou posterior. O aplicativo Desktop inclui sua própria cópia do Claude Code, e os mods funcionam nele a partir da v2.1.286. Verifique a versão no local onde você usa mods:97Os mods estão ativados por padrão. No terminal, use o Claude Code v2.1.287 ou posterior. O aplicativo Desktop inclui sua própria cópia do Claude Code, e os mods funcionam nele a partir da v2.1.286. Verifique a versão no local onde você usa mods:
98 98
99* **Terminal**: no seu shell, execute `claude --version`. Se a sua for mais antiga, [atualize o Claude Code](/docs/pt/setup.md#update-claude-code).99* **Terminal**: no seu shell, execute `claude --version`. Se a sua for mais antiga, [atualize o Claude Code](https://code.claude.com/docs/pt/setup.md#update-claude-code).
100* **Aplicativo Desktop**: em uma sessão local na aba Code, digite `/status` e leia a linha **Claude Code**, que mostra uma versão como `2.1.286`. Se a sua for mais antiga, [atualize o aplicativo Desktop](/docs/pt/desktop.md#claude-code-version-in-the-code-tab).100* **Aplicativo Desktop**: em uma sessão local na aba Code, digite `/status` e leia a linha **Claude Code**, que mostra uma versão como `2.1.286`. Se a sua for mais antiga, [atualize o aplicativo Desktop](https://code.claude.com/docs/pt/desktop.md#claude-code-version-in-the-code-tab).
101 101
102Para desativar mods, escolha quantos parar e por quanto tempo. Para ativá-los novamente, desfaça a mesma alteração:102Para desativar mods, escolha quantos parar e por quanto tempo. Para ativá-los novamente, desfaça a mesma alteração:
103 103
104* **Um mod**: desabilite ou desinstale seu plugin da [aba **Installed** em `/plugin`](/docs/pt/plugins/install#manage-installed-plugins)104* **Um mod**: desabilite ou desinstale seu plugin da [aba **Installed** em `/plugin`](https://code.claude.com/docs/pt/plugins/install#manage-installed-plugins)
105* **Cada mod instalado, para uma sessão**: inicie o Claude Code com [`--safe-mode`](/docs/pt/cli-reference#cli-flags), que também desativa suas outras personalizações105* **Cada mod instalado, para uma sessão**: inicie o Claude Code com [`--safe-mode`](https://code.claude.com/docs/pt/cli-reference#cli-flags), que também desativa suas outras personalizações
106* **Cada mod que você instalou, em cada sessão**: defina [`"disableAllHooks": true`](/docs/pt/settings-reference#disableallhooks) em `~/.claude/settings.json`. Seus settings hooks e linha de status personalizada também param. O que sua organização gerencia continua funcionando.106* **Cada mod que você instalou, em cada sessão**: defina [`"disableAllHooks": true`](https://code.claude.com/docs/pt/settings-reference#disableallhooks) em `~/.claude/settings.json`. Seus settings hooks e linha de status personalizada também param. O que sua organização gerencia continua funcionando.
107 107
108Se você usar o Claude Code através de uma organização, um administrador também pode limitar quais mods carregam. Os administradores começam em [Impedir que mods instalados pelo usuário sejam carregados](/docs/pt/plugins/mods/admin.md#stop-user-installed-mods-from-loading).108Se você usar o Claude Code através de uma organização, um administrador também pode limitar quais mods carregam. Os administradores começam em [Impedir que mods instalados pelo usuário sejam carregados](https://code.claude.com/docs/pt/plugins/mods/admin.md#stop-user-installed-mods-from-loading).
109 109
110`disableAllHooks` e o `allowManagedModsOnly` da sua organização param um mod e mantêm o restante do seu plugin no lugar: o plugin permanece instalado, e suas skills, comandos, agentes e servidores MCP são carregados. Outras configurações e flags têm um alcance maior. [`disableAllHooks`](/docs/pt/settings-reference#disableallhooks) e [O que é executado sob `allowManagedHooksOnly`](/docs/pt/settings-reference#what-runs-under-allowmanagedhooksonly) listam o que cada uma faz com um plugin e com seus settings hooks.110`disableAllHooks` e o `allowManagedModsOnly` da sua organização param um mod e mantêm o restante do seu plugin no lugar: o plugin permanece instalado, e suas skills, comandos, agentes e servidores MCP são carregados. Outras configurações e flags têm um alcance maior. [`disableAllHooks`](https://code.claude.com/docs/pt/settings-reference#disableallhooks) e [O que é executado sob `allowManagedHooksOnly`](https://code.claude.com/docs/pt/settings-reference#what-runs-under-allowmanagedhooksonly) listam o que cada uma faz com um plugin e com seus settings hooks.
111 111
112Para descobrir se mods podem carregar para você, veja [Verificar se mods podem carregar](/docs/pt/plugins/mods/troubleshoot.md#check-whether-mods-can-load).112Para descobrir se mods podem carregar para você, veja [Verificar se mods podem carregar](https://code.claude.com/docs/pt/plugins/mods/troubleshoot.md#check-whether-mods-can-load).
113 113
114> [!NOTE]114> [!NOTE]
115>115>
117 117
118### Ver quais mods uma sessão carregou118### Ver quais mods uma sessão carregou
119 119
120Para ver quais mods uma sessão de terminal carregou, execute `/plugin` no prompt do Claude Code. Uma linha atenuada sob as abas fornece a contagem e os nomes, como `1 mod active · first-mod`. Se um mod que você instalou não estiver nomeado lá, veja [Descobrir por que um mod não faz nada](/docs/pt/plugins/mods/troubleshoot.md#find-out-why-a-mod-does-nothing).120Para ver quais mods uma sessão de terminal carregou, execute `/plugin` no prompt do Claude Code. Uma linha atenuada sob as abas fornece a contagem e os nomes, como `1 mod active · first-mod`. Se um mod que você instalou não estiver nomeado lá, veja [Descobrir por que um mod não faz nada](https://code.claude.com/docs/pt/plugins/mods/troubleshoot.md#find-out-why-a-mod-does-nothing).
121 121
122## Como um mod funciona122## Como um mod funciona
123 123
124Um mod é um [plugin](/docs/pt/plugins/overview.md) cujo código registra manipuladores de eventos, chamados hooks. O Claude Code executa um hook quando seu evento acontece, como quando o Claude chama uma ferramenta ou quando o spinner é desenhado. Um mod pequeno tem três arquivos:124Um mod é um [plugin](https://code.claude.com/docs/pt/plugins/overview.md) cujo código registra manipuladores de eventos, chamados hooks. O Claude Code executa um hook quando seu evento acontece, como quando o Claude chama uma ferramenta ou quando o spinner é desenhado. Um mod pequeno tem três arquivos:
125 125
126```text theme={null}126```text theme={null}
127first-mod/127first-mod/
132 └── register.js132 └── register.js
133```133```
134 134
135* **`plugin.json`**: o [manifesto](/docs/pt/plugins/manifest-reference.md) do plugin135* **`plugin.json`**: o [manifesto](https://code.claude.com/docs/pt/plugins/manifest-reference.md) do plugin
136* **`hooks.json`**: [aponta para seu arquivo de código](/docs/pt/plugins/mods/reference.md#files)136* **`hooks.json`**: [aponta para seu arquivo de código](https://code.claude.com/docs/pt/plugins/mods/reference.md#files)
137* **`register.js`**: [seu código](/docs/pt/plugins/mods/create.md#write-a-mod-yourself), chamado de módulo hooks. Ele diz ao Claude Code em quais eventos executar suas funções.137* **`register.js`**: [seu código](https://code.claude.com/docs/pt/plugins/mods/create.md#write-a-mod-yourself), chamado de módulo hooks. Ele diz ao Claude Code em quais eventos executar suas funções.
138 138
139Este é um `register.js` completo. Ele conta as chamadas de ferramenta que o Claude faz e mostra a contagem ao lado do spinner enquanto o Claude trabalha, como em `Thinking · tool calls: 3…`.139Este é um `register.js` completo. Ele conta as chamadas de ferramenta que o Claude faz e mostra a contagem ao lado do spinner enquanto o Claude trabalha, como em `Thinking · tool calls: 3…`.
140 140
163 163
164O arquivo registra dois hooks, e ambos usam a variável `calls` no topo:164O arquivo registra dois hooks, e ambos usam a variável `calls` no topo:
165 165
166* **O hook [`tool.call`](/docs/pt/plugins/mods/reference#tools)** é executado cada vez que o Claude está prestes a usar uma ferramenta. Adiciona um a `calls`, pede ao Claude Code para desenhar a interface novamente e deixa a ferramenta ser executada normalmente.166* **O hook [`tool.call`](https://code.claude.com/docs/pt/plugins/mods/reference#tools)** é executado cada vez que o Claude está prestes a usar uma ferramenta. Adiciona um a `calls`, pede ao Claude Code para desenhar a interface novamente e deixa a ferramenta ser executada normalmente.
167* **O hook [`ui.render`](/docs/pt/plugins/mods/reference#interface)** é executado cada vez que o Claude Code desenha o spinner. Mantém o próprio spinner do Claude Code e adiciona a contagem após a palavra.167* **O hook [`ui.render`](https://code.claude.com/docs/pt/plugins/mods/reference#interface)** é executado cada vez que o Claude Code desenha o spinner. Mantém o próprio spinner do Claude Code e adiciona a contagem após a palavra.
168 168
169Esta gravação mostra o mod em ação. Observe a linha do spinner acima da caixa de prompt: enquanto o Claude lista um diretório e lê dois arquivos, ele lê `Thinking · tool calls: 1…`, depois `2…`, depois `3…`.169Esta gravação mostra o mod em ação. Observe a linha do spinner acima da caixa de prompt: enquanto o Claude lista um diretório e lê dois arquivos, ele lê `Thinking · tool calls: 1…`, depois `2…`, depois `3…`.
170 170
180 180
181Para fazer qualquer coisa fora de seu próprio código, como desenhar, adicionar um comando, chamar um modelo, ler um arquivo, iniciar um processo ou fazer uma requisição de rede, um hook chama a API de mods. Um hook não tem outra maneira de fazer essas coisas, é por isso que o Claude Code pode [listar o que um mod faz](#list-what-a-mod-does-before-you-install-one) antes de você instalá-lo.181Para fazer qualquer coisa fora de seu próprio código, como desenhar, adicionar um comando, chamar um modelo, ler um arquivo, iniciar um processo ou fazer uma requisição de rede, um hook chama a API de mods. Um hook não tem outra maneira de fazer essas coisas, é por isso que o Claude Code pode [listar o que um mod faz](#list-what-a-mod-does-before-you-install-one) antes de você instalá-lo.
182 182
183Para o código por trás de cada opção, veja [Reagir a eventos](/docs/pt/plugins/mods/events.md#how-a-hook-handles-an-event). Para o que um hook pode chamar, veja [Usar a API de mods](/docs/pt/plugins/mods/api.md).183Para o código por trás de cada opção, veja [Reagir a eventos](https://code.claude.com/docs/pt/plugins/mods/events.md#how-a-hook-handles-an-event). Para o que um hook pode chamar, veja [Usar a API de mods](https://code.claude.com/docs/pt/plugins/mods/api.md).
184 184
185### Onde os mods são executados185### Onde os mods são executados
186 186
189| Onde você executa o Claude Code | Hooks são executados | O que o mod desenha aparece |189| Onde você executa o Claude Code | Hooks são executados | O que o mod desenha aparece |
190| :- | :- | :- |190| :- | :- | :- |
191| `claude` em um terminal, incluindo o terminal integrado de um editor e o plugin JetBrains | Sim | Sim |191| `claude` em um terminal, incluindo o terminal integrado de um editor e o plugin JetBrains | Sim | Sim |
192| A aba Code do aplicativo Desktop, exceto em uma sessão WSL | Sim | Sim, exceto elementos que a [tabela de elementos](/docs/pt/plugins/mods/reference.md#elements) marca como apenas terminal |192| A aba Code do aplicativo Desktop, exceto em uma sessão WSL | Sim | Sim, exceto elementos que a [tabela de elementos](https://code.claude.com/docs/pt/plugins/mods/reference.md#elements) marca como apenas terminal |
193| Uma [sessão WSL](/docs/pt/desktop-wsl.md) no aplicativo Desktop | Não, porque plugins não estão disponíveis em sessões WSL | Não |193| Uma [sessão WSL](https://code.claude.com/docs/pt/desktop-wsl.md) no aplicativo Desktop | Não, porque plugins não estão disponíveis em sessões WSL | Não |
194| O painel de chat da extensão VS Code | Sim | Sim, com a versão 2.1.299 ou posterior da extensão. Uma sessão que [não busca feature flags](/docs/pt/env-vars.md#features-that-need-feature-flag-fetching), como uma no Amazon Bedrock, precisa da versão 2.1.304 ou posterior. As tabelas de [pontos de renderização](/docs/pt/plugins/mods/reference.md#render-sites) e de [elementos](/docs/pt/plugins/mods/reference.md#elements) marcam o que o painel desenha. |194| O painel de chat da extensão VS Code | Sim | Sim, com a versão 2.1.299 ou posterior da extensão. Uma sessão que [não busca feature flags](https://code.claude.com/docs/pt/env-vars.md#features-that-need-feature-flag-fetching), como uma no Amazon Bedrock, precisa da versão 2.1.304 ou posterior. As tabelas de [pontos de renderização](https://code.claude.com/docs/pt/plugins/mods/reference.md#render-sites) e de [elementos](https://code.claude.com/docs/pt/plugins/mods/reference.md#elements) marcam o que o painel desenha. |
195| `claude -p` e o [Agent SDK](/docs/pt/agent-sdk/overview.md) | Sim | Não |195| `claude -p` e o [Agent SDK](https://code.claude.com/docs/pt/agent-sdk/overview.md) | Sim | Não |
196| [Remote Control](/docs/pt/remote-control.md) de claude.ai ou do aplicativo móvel | Sim, na sessão em sua máquina | No terminal em sua máquina |196| [Remote Control](https://code.claude.com/docs/pt/remote-control.md) de claude.ai ou do aplicativo móvel | Sim, na sessão em sua máquina | No terminal em sua máquina |
197| Uma [sessão na nuvem](/docs/pt/claude-code-on-the-web.md) | Sim, para um plugin que [alcança a sessão na nuvem](/docs/pt/cloud-environments.md#what-carries-over-from-your-setup) | Não |197| Uma [sessão na nuvem](https://code.claude.com/docs/pt/claude-code-on-the-web.md) | Sim, para um plugin que [alcança a sessão na nuvem](https://code.claude.com/docs/pt/cloud-environments.md#what-carries-over-from-your-setup) | Não |
198 198
199Um mod que desenha pode verificar em qual aplicativo está sendo executado e voltar para uma linha na transcrição ou uma resposta de texto de comando onde nada desenha.199Um mod que desenha pode verificar em qual aplicativo está sendo executado e voltar para uma linha na transcrição ou uma resposta de texto de comando onde nada desenha.
200 200
201## Controlar mods para sua organização201## Controlar mods para sua organização
202 202
203Os administradores decidem se mods são executados e quais, através de [configurações gerenciadas](/docs/pt/managed-settings.md). [Gerenciar mods para sua organização](/docs/pt/plugins/mods/admin.md) cobre o que acontece por padrão, como revisar um mod e como aplicar uma política com um mod próprio.203Os administradores decidem se mods são executados e quais, através de [configurações gerenciadas](https://code.claude.com/docs/pt/managed-settings.md). [Gerenciar mods para sua organização](https://code.claude.com/docs/pt/plugins/mods/admin.md) cobre o que acontece por padrão, como revisar um mod e como aplicar uma política com um mod próprio.
204 204
205## Comparar mods, settings hooks, skills e servidores MCP205## Comparar mods, settings hooks, skills e servidores MCP
206 206
214| O que você escreve | JavaScript ou TypeScript | Um script e uma entrada `settings.json` | Markdown | Um servidor em qualquer linguagem |214| O que você escreve | JavaScript ou TypeScript | Um script e uma entrada `settings.json` | Markdown | Um servidor em qualquer linguagem |
215| Escolha quando | Você quer um painel, uma faixa acima do prompt, um comando personalizado ou reescrever um evento | Você quer bloquear, permitir ou registrar um evento com um script que você já tem | Você fica colando as mesmas instruções no chat | O Claude precisa alcançar um sistema externo |215| Escolha quando | Você quer um painel, uma faixa acima do prompt, um comando personalizado ou reescrever um evento | Você quer bloquear, permitir ou registrar um evento com um script que você já tem | Você fica colando as mesmas instruções no chat | O Claude precisa alcançar um sistema externo |
216 216
217Cada um dos outros tem sua própria página: [Hooks](/docs/pt/hooks.md), [Skills](/docs/pt/skills.md) e [MCP](/docs/pt/mcp.md). Um plugin pode conter todos eles, então um mod pode ser enviado no mesmo plugin que uma skill e um servidor MCP.217Cada um dos outros tem sua própria página: [Hooks](https://code.claude.com/docs/pt/hooks.md), [Skills](https://code.claude.com/docs/pt/skills.md) e [MCP](https://code.claude.com/docs/pt/mcp.md). Um plugin pode conter todos eles, então um mod pode ser enviado no mesmo plugin que uma skill e um servidor MCP.
218 218
219## Mods integrados ao Claude Code219## Mods integrados ao Claude Code
220 220
224 224
225| Nome em `/plugin` | O que faz | Onde está ativado | Como desativar |225| Nome em `/plugin` | O que faz | Onde está ativado | Como desativar |
226| :- | :- | :- | :- |226| :- | :- | :- | :- |
227| `cc-plugin-agents-md` | Carrega `AGENTS.md` como instruções do projeto | Cada sessão, exceto [as que não conseguem ler `AGENTS.md`](/docs/pt/memory#when-agents-md-support-is-unavailable) | Desabilite em `/plugin` ou [escolha quais arquivos de instruções carregam](/docs/pt/memory.md#choose-which-instruction-files-load) |227| `cc-plugin-agents-md` | Carrega `AGENTS.md` como instruções do projeto | Cada sessão, exceto [as que não conseguem ler `AGENTS.md`](https://code.claude.com/docs/pt/memory#when-agents-md-support-is-unavailable) | Desabilite em `/plugin` ou [escolha quais arquivos de instruções carregam](https://code.claude.com/docs/pt/memory.md#choose-which-instruction-files-load) |
228| `cc-plugin-diff` | Assume o controle de [`/diff`](/docs/pt/interactive-mode#review-changes-with-%2Fdiff) e desenha seu painel | Sessões de terminal interativas | Desabilite em `/plugin`. `/diff` permanece, e a versão integrada do Claude Code do comando responde. |228| `cc-plugin-diff` | Assume o controle de [`/diff`](https://code.claude.com/docs/pt/interactive-mode#review-changes-with-%2Fdiff) e desenha seu painel | Sessões de terminal interativas | Desabilite em `/plugin`. `/diff` permanece, e a versão integrada do Claude Code do comando responde. |
229| `cc-plugin-plugin-authoring` | Dá ao Claude a [skill `plugin-authoring`](/docs/pt/plugins/mods/create#ask-claude-for-a-mod) para escrever mods. Contém uma skill e nenhum código de mod. | A menos que a Anthropic tenha desativado mods instalados remotamente | Desabilite em `/plugin` |229| `cc-plugin-plugin-authoring` | Dá ao Claude a [skill `plugin-authoring`](https://code.claude.com/docs/pt/plugins/mods/create#ask-claude-for-a-mod) para escrever mods. Contém uma skill e nenhum código de mod. | A menos que a Anthropic tenha desativado mods instalados remotamente | Desabilite em `/plugin` |
230| `cc-plugin-sec-default` | Guarda o que sua organização gerencia dos mods que um usuário instala | [Onde o guarda carrega](/docs/pt/plugins/mods/admin.md#know-what-happens-by-default) | Você não consegue. Um administrador [define a ordem](/docs/pt/plugins/mods/admin.md#install-your-organizations-mods) em configurações gerenciadas |230| `cc-plugin-sec-default` | Guarda o que sua organização gerencia dos mods que um usuário instala | [Onde o guarda carrega](https://code.claude.com/docs/pt/plugins/mods/admin.md#know-what-happens-by-default) | Você não consegue. Um administrador [define a ordem](https://code.claude.com/docs/pt/plugins/mods/admin.md#install-your-organizations-mods) em configurações gerenciadas |
231| `cc-plugin-telemetry` | Envia os registros de análise que o Claude Code e seus mods integrados registram | Onde a análise própria do Claude Code está ativada | Desabilite em `/plugin` ou desative a análise, por exemplo com [`DISABLE_TELEMETRY`](/docs/pt/env-vars) |231| `cc-plugin-telemetry` | Envia os registros de análise que o Claude Code e seus mods integrados registram | Onde a análise própria do Claude Code está ativada | Desabilite em `/plugin` ou desative a análise, por exemplo com [`DISABLE_TELEMETRY`](https://code.claude.com/docs/pt/env-vars) |
232| `cc-plugin-you-should-know` | [You should know](/docs/pt/interactive-mode.md#you-should-know-suggestions): um agente lateral mostra uma nota acima do prompt quando encontra algo que você pode ter deixado passar | Desativado até que você [o ative](/docs/pt/interactive-mode.md#you-should-know-suggestions) | Desabilite em `/plugin` |232| `cc-plugin-you-should-know` | [You should know](https://code.claude.com/docs/pt/interactive-mode.md#you-should-know-suggestions): um agente lateral mostra uma nota acima do prompt quando encontra algo que você pode ter deixado passar | Desativado até que você [o ative](https://code.claude.com/docs/pt/interactive-mode.md#you-should-know-suggestions) | Desabilite em `/plugin` |
233 233
234As configurações e flags que param mods instalados, como `disableAllHooks`, `--bare` e `--safe-mode`, não param mods integrados.234As configurações e flags que param mods instalados, como `disableAllHooks`, `--bare` e `--safe-mode`, não param mods integrados.
235 235
238A fonte de alguns desses mods é pública no [diretório `mods` do repositório Claude Code](https://github.com/anthropics/claude-code/tree/main/mods). Cada um é um plugin completo com seu módulo hooks e testes:238A fonte de alguns desses mods é pública no [diretório `mods` do repositório Claude Code](https://github.com/anthropics/claude-code/tree/main/mods). Cada um é um plugin completo com seu módulo hooks e testes:
239 239
240* [`diff`](https://github.com/anthropics/claude-code/tree/main/mods/diff): o painel `/diff`, com botões vinculados a ações de teclado e rolagem que o próprio mod manipula240* [`diff`](https://github.com/anthropics/claude-code/tree/main/mods/diff): o painel `/diff`, com botões vinculados a ações de teclado e rolagem que o próprio mod manipula
241* [`agents-md`](https://github.com/anthropics/claude-code/tree/main/mods/agents-md): carrega `AGENTS.md` como instruções do projeto, com uma opção [`userConfig`](/docs/pt/plugins/components#user-configuration)241* [`agents-md`](https://github.com/anthropics/claude-code/tree/main/mods/agents-md): carrega `AGENTS.md` como instruções do projeto, com uma opção [`userConfig`](https://code.claude.com/docs/pt/plugins/components#user-configuration)
242* [`sec-default`](https://github.com/anthropics/claude-code/tree/main/mods/sec-default): o guarda descrito em [Saber o que acontece por padrão](/docs/pt/plugins/mods/admin.md#know-what-happens-by-default), um modelo para um mod que aplica política242* [`sec-default`](https://github.com/anthropics/claude-code/tree/main/mods/sec-default): o guarda descrito em [Saber o que acontece por padrão](https://code.claude.com/docs/pt/plugins/mods/admin.md#know-what-happens-by-default), um modelo para um mod que aplica política
243* [`telemetry`](https://github.com/anthropics/claude-code/tree/main/mods/telemetry): adiciona métodos que outros mods podem chamar e envia seus tipos243* [`telemetry`](https://github.com/anthropics/claude-code/tree/main/mods/telemetry): adiciona métodos que outros mods podem chamar e envia seus tipos
244 244
245## Próximos passos245## Próximos passos
246 246
247* [Criar um mod](/docs/pt/plugins/mods/create.md): crie um que conte chamadas de ferramenta, mostre a contagem ao lado do spinner e adicione um comando, e aprenda o loop de edição e recarga247* [Criar um mod](https://code.claude.com/docs/pt/plugins/mods/create.md): crie um que conte chamadas de ferramenta, mostre a contagem ao lado do spinner e adicione um comando, e aprenda o loop de edição e recarga
248* [Desenhar na interface](/docs/pt/plugins/mods/interface.md): painéis, a faixa acima do prompt, botões, campos de texto e estado248* [Desenhar na interface](https://code.claude.com/docs/pt/plugins/mods/interface.md): painéis, a faixa acima do prompt, botões, campos de texto e estado
249* [Reagir a eventos](/docs/pt/plugins/mods/events.md): chamadas de ferramenta, prompts, turnos e a ordem em que mods são executados249* [Reagir a eventos](https://code.claude.com/docs/pt/plugins/mods/events.md): chamadas de ferramenta, prompts, turnos e a ordem em que mods são executados
250* [Usar a API de mods](/docs/pt/plugins/mods/api.md): comandos, ferramentas, chamadas de modelo, temporizadores e arquivos250* [Usar a API de mods](https://code.claude.com/docs/pt/plugins/mods/api.md): comandos, ferramentas, chamadas de modelo, temporizadores e arquivos
251* [Testar um mod](/docs/pt/plugins/mods/test.md): testes automatizados que são executados sem uma sessão251* [Testar um mod](https://code.claude.com/docs/pt/plugins/mods/test.md): testes automatizados que são executados sem uma sessão
252* [Solucionar problemas de um mod](/docs/pt/plugins/mods/troubleshoot.md): as razões pelas quais um mod não faz nada e o log de depuração252* [Solucionar problemas de um mod](https://code.claude.com/docs/pt/plugins/mods/troubleshoot.md): as razões pelas quais um mod não faz nada e o log de depuração
253* [Gerenciar mods para sua organização](/docs/pt/plugins/mods/admin.md): padrões, configurações gerenciadas, revisão de um mod e mods de política253* [Gerenciar mods para sua organização](https://code.claude.com/docs/pt/plugins/mods/admin.md): padrões, configurações gerenciadas, revisão de um mod e mods de política
254* [Referência de mods](/docs/pt/plugins/mods/reference.md): eventos, métodos, elementos e limites254* [Referência de mods](https://code.claude.com/docs/pt/plugins/mods/reference.md): eventos, métodos, elementos e limites