SpyBara
Go Premium

Documentation 2026-05-09 04:57 UTC to 2026-05-10 23:03 UTC

4 files changed +70 −10. View all changes and history on the product overview
2026
Sun 31 06:39 Sat 30 06:23 Fri 29 06:38 Thu 28 06:37 Wed 27 06:42 Tue 26 06:33 Sun 24 06:25 Sat 23 06:18 Fri 22 06:33 Thu 21 06:36 Wed 20 06:35 Tue 19 06:34 Mon 18 23:59 Sun 17 01:01 Fri 15 22:58 Thu 14 17:02 Wed 13 23:01 Tue 12 22:57 Mon 11 23:00 Sun 10 23:03 Sat 9 04:57 Fri 8 22:00 Thu 7 22:59 Tue 5 23:00 Mon 4 22:58 Sat 2 18:14 Fri 1 18:19

errors.md +31 −3

Details

24| `API Error: Repeated 529 Overloaded errors` | [Erros de servidor](#api-error-repeated-529-overloaded-errors) |24| `API Error: Repeated 529 Overloaded errors` | [Erros de servidor](#api-error-repeated-529-overloaded-errors) |

25| `Request timed out` | [Erros de servidor](#request-timed-out), ou [Rede](#unable-to-connect-to-api) se a mensagem mencionar sua conexão com a internet |25| `Request timed out` | [Erros de servidor](#request-timed-out), ou [Rede](#unable-to-connect-to-api) se a mensagem mencionar sua conexão com a internet |

26| `<model> is temporarily unavailable, so auto mode cannot determine the safety of...` | [Erros de servidor](#auto-mode-cannot-determine-the-safety-of-an-action) |26| `<model> is temporarily unavailable, so auto mode cannot determine the safety of...` | [Erros de servidor](#auto-mode-cannot-determine-the-safety-of-an-action) |

27| `Auto mode could not evaluate this action and is blocking it for safety` | [Erros de servidor](#auto-mode-cannot-determine-the-safety-of-an-action) |

28| `Auto mode classifier transcript exceeded context window` | [Erros de servidor](#auto-mode-cannot-determine-the-safety-of-an-action) |

27| `You've hit your session limit` / `You've hit your weekly limit` | [Limites de uso](#youve-hit-your-session-limit) |29| `You've hit your session limit` / `You've hit your weekly limit` | [Limites de uso](#youve-hit-your-session-limit) |

28| `Server is temporarily limiting requests` | [Limites de uso](#server-is-temporarily-limiting-requests) |30| `Server is temporarily limiting requests` | [Limites de uso](#server-is-temporarily-limiting-requests) |

29| `Request rejected (429)` | [Limites de uso](#request-rejected-429) |31| `Request rejected (429)` | [Limites de uso](#request-rejected-429) |


116 118 

117### Auto mode cannot determine the safety of an action119### Auto mode cannot determine the safety of an action

118 120 

119O modelo que [modo automático](/pt/permission-modes#eliminate-prompts-with-auto-mode) usa para classificar ações está sobrecarregado, portanto, o modo automático bloqueou a ação em vez de aprová-la sem verificação.121O modelo que [modo automático](/pt/permission-modes#eliminate-prompts-with-auto-mode) usa para classificar ações não conseguiu produzir uma decisão, portanto, o modo automático não aprovou a ação automaticamente. A mensagem que você vê depende do motivo pelo qual o classificador falhou.

122 

123Leituras, buscas e edições dentro do seu diretório de trabalho ignoram o classificador, portanto, continuam funcionando em todos esses casos.

124 

125Quando o modelo classificador está sobrecarregado:

120 126 

121```text theme={null}127```text theme={null}

122<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait briefly and then try this action again.128<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait briefly and then try this action again.

123```129```

124 130 

125Leituras, buscas e edições dentro do seu diretório de trabalho ignoram o classificador, portanto, continuam funcionando durante a interrupção.

126 

127**O que fazer:**131**O que fazer:**

128 132 

129* Tente novamente após alguns segundos; Claude vê a mesma mensagem e geralmente tenta novamente por conta própria133* Tente novamente após alguns segundos; Claude vê a mesma mensagem e geralmente tenta novamente por conta própria

130* Se as tentativas continuarem falhando, continue com tarefas somente leitura e volte à ação bloqueada mais tarde134* Se as tentativas continuarem falhando, continue com tarefas somente leitura e volte à ação bloqueada mais tarde

131* Isso é transitório e não relacionado à [elegibilidade do modo automático](/pt/permission-modes#eliminate-prompts-with-auto-mode); você não precisa alterar as configurações135* Isso é transitório e não relacionado à [elegibilidade do modo automático](/pt/permission-modes#eliminate-prompts-with-auto-mode); você não precisa alterar as configurações

132 136 

137Quando o classificador retornou uma resposta não analisável:

138 

139```text theme={null}

140Auto mode could not evaluate this action and is blocking it for safety — run with --debug for details

141```

142 

143**O que fazer:**

144 

145* Tente novamente a ação; isso geralmente funciona na próxima tentativa

146* Execute `claude --debug` e repita a ação para ver a resposta do classificador subjacente no log de depuração

147 

148Quando a conversa cresceu além da janela de contexto do classificador:

149 

150```text theme={null}

151Auto mode classifier transcript exceeded context window — falling back to manual approval (try /compact to reduce conversation size)

152```

153 

154Em uma sessão interativa, o modo automático volta a um prompt de permissão normal para essa ação para que você possa aprová-la ou negá-la manualmente. Em [modo não interativo](/pt/headless) a execução é abortada porque a transcrição apenas cresce e tentar novamente não pode ter sucesso.

155 

156**O que fazer:**

157 

158* Aprove ou negue a ação no prompt que aparece

159* Execute `/compact` para reduzir o tamanho da conversa para que as ações subsequentes se encaixem novamente na janela do classificador

160 

133## Limites de uso161## Limites de uso

134 162 

135Esses erros significam que uma cota vinculada à sua conta ou plano foi atingida. Eles são distintos dos [erros de servidor](#server-errors), que afetam todos.163Esses erros significam que uma cota vinculada à sua conta ou plano foi atingida. Eles são distintos dos [erros de servidor](#server-errors), que afetam todos.

hooks-guide.md +35 −5

Details

470| `ElicitationResult` | After a user responds to an MCP elicitation, before the response is sent back to the server |470| `ElicitationResult` | After a user responds to an MCP elicitation, before the response is sent back to the server |

471| `SessionEnd` | When a session terminates |471| `SessionEnd` | When a session terminates |

472 472 

473Quando múltiplos hooks correspondem, cada um retorna seu próprio resultado. Para decisões, Claude Code escolhe a resposta mais restritiva. Um hook `PreToolUse` retornando `deny` cancela a chamada de ferramenta não importa o que os outros retornem. Um hook retornando `ask` força o prompt de permissão mesmo se o resto retornar `allow`. Texto de `additionalContext` é mantido de cada hook e passado ao Claude junto.

474 

475Cada hook tem um `type` que determina como ele executa. A maioria dos hooks usa `"type": "command"`, que executa um comando shell. Quatro outros tipos estão disponíveis:473Cada hook tem um `type` que determina como ele executa. A maioria dos hooks usa `"type": "command"`, que executa um comando shell. Quatro outros tipos estão disponíveis:

476 474 

477* `"type": "http"`: POST dados de evento para uma URL. Consulte [HTTP hooks](#http-hooks).475* `"type": "http"`: POST dados de evento para uma URL. Consulte [HTTP hooks](#http-hooks).


479* `"type": "prompt"`: avaliação LLM de turno único. Consulte [Prompt-based hooks](#prompt-based-hooks).477* `"type": "prompt"`: avaliação LLM de turno único. Consulte [Prompt-based hooks](#prompt-based-hooks).

480* `"type": "agent"`: verificação multi-turno com acesso a ferramentas. Agent hooks são experimentais e podem mudar. Consulte [Agent-based hooks](#agent-based-hooks).478* `"type": "agent"`: verificação multi-turno com acesso a ferramentas. Agent hooks são experimentais e podem mudar. Consulte [Agent-based hooks](#agent-based-hooks).

481 479 

480### Combinar resultados de múltiplos hooks

481 

482Quando múltiplos hooks correspondem ao mesmo evento, o comando de cada hook executa até a conclusão antes do Claude Code mesclar os resultados. Um hook retornando `deny` não impede que hooks irmãos executem. Não confie em um `deny` de um hook para suprimir efeitos colaterais em outro hook.

483 

484Após todos os hooks correspondentes terminarem, Claude Code combina suas saídas. Para decisões de permissão `PreToolUse`, a resposta mais restritiva vence: `deny` substitui `ask`, que substitui `allow`. Texto de `additionalContext` é mantido de cada hook e passado ao Claude junto.

485 

486O exemplo abaixo registra dois hooks `PreToolUse` em `Bash`. O primeiro anexa cada comando a um arquivo de log e sai com 0. O segundo executa um script que sai com 2 para negar quando o comando contém `rm -rf`:

487 

488```json theme={null}

489{

490 "hooks": {

491 "PreToolUse": [

492 {

493 "matcher": "Bash",

494 "hooks": [

495 {

496 "type": "command",

497 "command": "jq -r .tool_input.command >> ~/.claude/bash.log"

498 },

499 {

500 "type": "command",

501 "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/block-rm-rf.sh"

502 }

503 ]

504 }

505 ]

506 }

507}

508```

509 

510Quando Claude tenta executar `rm -rf /tmp/build`, ambos os hooks executam em paralelo. O hook de logging escreve o comando em `~/.claude/bash.log` e sai com 0, o que não relata nenhuma decisão. O hook de proteção sai com 2, o que nega a chamada de ferramenta. O deny vence, então Claude Code bloqueia o comando e mostra ao Claude o stderr da proteção. A entrada de log ainda é escrita porque o hook de logging já executou.

511 

482### Ler entrada e retornar saída512### Ler entrada e retornar saída

483 513 

484Hooks se comunicam com Claude Code através de stdin, stdout, stderr e códigos de saída. Quando um evento dispara, Claude Code passa dados específicos do evento como JSON para stdin do seu script. Seu script lê esses dados, faz seu trabalho e diz ao Claude Code o que fazer a seguir através do código de saída.514Hooks se comunicam com Claude Code através de stdin, stdout, stderr e códigos de saída. Quando um evento dispara, Claude Code passa dados específicos do evento como JSON para stdin do seu script. Seu script lê esses dados, faz seu trabalho e diz ao Claude Code o que fazer a seguir através do código de saída.


511COMMAND=$(echo "$INPUT" | jq -r '.tool_input.command')541COMMAND=$(echo "$INPUT" | jq -r '.tool_input.command')

512 542 

513if echo "$COMMAND" | grep -q "drop table"; then543if echo "$COMMAND" | grep -q "drop table"; then

514 echo "Blocked: dropping tables is not allowed" >&2 // stderr se torna feedback do Claude544 echo "Blocked: dropping tables is not allowed" >&2 # stderr se torna feedback do Claude

515 exit 2 // exit 2 = bloquear a ação545 exit 2 # exit 2 = bloquear a ação

516fi546fi

517 547 

518exit 0 // exit 0 = deixar prosseguir548exit 0 # exit 0 = deixar prosseguir

519```549```

520 550 

521O código de saída determina o que acontece a seguir:551O código de saída determina o que acontece a seguir:

settings.md +2 −0

Details

206| `includeCoAuthoredBy` | **Descontinuado**: Use `attribution` em vez disso. Se deve incluir a linha `co-authored-by Claude` em commits git e pull requests (padrão: `true`) | `false` |206| `includeCoAuthoredBy` | **Descontinuado**: Use `attribution` em vez disso. Se deve incluir a linha `co-authored-by Claude` em commits git e pull requests (padrão: `true`) | `false` |

207| `includeGitInstructions` | Incluir instruções de workflow de commit e PR integradas e o snapshot de status git no prompt do sistema do Claude (padrão: `true`). Defina como `false` para remover ambos, por exemplo ao usar suas próprias skills de workflow git. A variável de ambiente `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` tem precedência sobre esta configuração quando definida | `false` |207| `includeGitInstructions` | Incluir instruções de workflow de commit e PR integradas e o snapshot de status git no prompt do sistema do Claude (padrão: `true`). Defina como `false` para remover ambos, por exemplo ao usar suas próprias skills de workflow git. A variável de ambiente `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` tem precedência sobre esta configuração quando definida | `false` |

208| `language` | Configure o idioma de resposta preferido do Claude (por exemplo, `"japanese"`, `"spanish"`, `"french"`). Claude responderá neste idioma por padrão. Também define o idioma de [ditado por voz](/pt/voice-dictation#change-the-dictation-language) | `"japanese"` |208| `language` | Configure o idioma de resposta preferido do Claude (por exemplo, `"japanese"`, `"spanish"`, `"french"`). Claude responderá neste idioma por padrão. Também define o idioma de [ditado por voz](/pt/voice-dictation#change-the-dictation-language) | `"japanese"` |

209| `maxSkillDescriptionChars` | {/* min-version: 2.1.105 */}Limite de caracteres por skill no texto combinado `description` e `when_to_use` na [listagem de skills](/pt/skills#skill-descriptions-are-cut-short) que Claude vê a cada turno (padrão: `1536`). Texto mais longo que isto é truncado. Aumente para manter descrições longas intactas ao custo de mais contexto por turno; diminua para caber mais skills sob [`skillListingBudgetFraction`](#available-settings). `/doctor` mostra a contagem de truncamento atual e quais skills são afetadas. Requer Claude Code v2.1.105 ou posterior | `2048` |

209| `minimumVersion` | Piso que impede auto-atualizações em background e `claude update` de instalar uma versão abaixo desta. Mudar do canal `"latest"` para `"stable"` via `/config` solicita que você fique na versão atual ou permita o downgrade. Escolher ficar define este valor. Também útil em [configurações gerenciadas](/pt/permissions#managed-settings) para fixar um mínimo em toda a organização | `"2.1.100"` |210| `minimumVersion` | Piso que impede auto-atualizações em background e `claude update` de instalar uma versão abaixo desta. Mudar do canal `"latest"` para `"stable"` via `/config` solicita que você fique na versão atual ou permita o downgrade. Escolher ficar define este valor. Também útil em [configurações gerenciadas](/pt/permissions#managed-settings) para fixar um mínimo em toda a organização | `"2.1.100"` |

210| `model` | Substituir o modelo padrão a usar para Claude Code. `--model` e [`ANTHROPIC_MODEL`](/pt/model-config#environment-variables) substituem isto para uma sessão | `"claude-sonnet-4-6"` |211| `model` | Substituir o modelo padrão a usar para Claude Code. `--model` e [`ANTHROPIC_MODEL`](/pt/model-config#environment-variables) substituem isto para uma sessão | `"claude-sonnet-4-6"` |

211| `modelOverrides` | Mapear IDs de modelo Anthropic para IDs de modelo específicos do provedor, como ARNs de perfil de inferência Bedrock. Cada entrada do seletor de modelo usa seu valor mapeado ao chamar a API do provedor. Veja [Substituir IDs de modelo por versão](/pt/model-config#override-model-ids-per-version) | `{"claude-opus-4-6": "arn:aws:bedrock:..."}` |212| `modelOverrides` | Mapear IDs de modelo Anthropic para IDs de modelo específicos do provedor, como ARNs de perfil de inferência Bedrock. Cada entrada do seletor de modelo usa seu valor mapeado ao chamar a API do provedor. Veja [Substituir IDs de modelo por versão](/pt/model-config#override-model-ids-per-version) | `{"claude-opus-4-6": "arn:aws:bedrock:..."}` |


223| `showClearContextOnPlanAccept` | Mostrar a opção "limpar contexto" na tela de aceitação do plano. Padrão: `false`. Defina como `true` para restaurar a opção | `true` |224| `showClearContextOnPlanAccept` | Mostrar a opção "limpar contexto" na tela de aceitação do plano. Padrão: `false`. Defina como `true` para restaurar a opção | `true` |

224| `showThinkingSummaries` | Mostrar resumos de [pensamento estendido](/pt/model-config#extended-thinking) em sessões interativas. Quando indefinido ou `false` (padrão em modo interativo), blocos de pensamento são redatados pela API e mostrados como um stub recolhido. A redação apenas muda o que você vê, não o que o modelo gera: para reduzir gastos de pensamento, [reduza o orçamento ou desabilite o pensamento](/pt/model-config#extended-thinking) em vez disso. Modo não interativo (`-p`) e chamadores SDK sempre recebem resumos independentemente desta configuração | `true` |225| `showThinkingSummaries` | Mostrar resumos de [pensamento estendido](/pt/model-config#extended-thinking) em sessões interativas. Quando indefinido ou `false` (padrão em modo interativo), blocos de pensamento são redatados pela API e mostrados como um stub recolhido. A redação apenas muda o que você vê, não o que o modelo gera: para reduzir gastos de pensamento, [reduza o orçamento ou desabilite o pensamento](/pt/model-config#extended-thinking) em vez disso. Modo não interativo (`-p`) e chamadores SDK sempre recebem resumos independentemente desta configuração | `true` |

225| `showTurnDuration` | Mostrar mensagens de duração de turno após respostas, por exemplo "Cooked for 1m 6s". Padrão: `true`. Aparece em `/config` como **Show turn duration** | `false` |226| `showTurnDuration` | Mostrar mensagens de duração de turno após respostas, por exemplo "Cooked for 1m 6s". Padrão: `true`. Aparece em `/config` como **Show turn duration** | `false` |

227| `skillListingBudgetFraction` | {/* min-version: 2.1.105 */}Fração da janela de contexto do modelo reservada para a [listagem de skills](/pt/skills#skill-descriptions-are-cut-short) que Claude vê a cada turno (padrão: `0.01` = 1%). Quando a listagem excede o orçamento, descrições para as skills menos usadas são recolhidas para nomes simples para que Claude ainda possa invocá-las mas não verá por quê. Aumente para manter mais descrições visíveis ao custo de mais contexto por turno. `/doctor` mostra a contagem de truncamento atual e quais skills são afetadas. Requer Claude Code v2.1.105 ou posterior | `0.02` |

226| `skillOverrides` | {/* min-version: 2.1.129 */}Substituições de visibilidade por skill com chave de nome de skill. O valor é `"on"`, `"name-only"`, `"user-invocable-only"`, ou `"off"`. Permite ocultar ou recolher uma skill sem editar seu SKILL.md. Não se aplica a skills de plugin, que são gerenciadas através de `/plugin`. O menu `/skills` escreve estes em `.claude/settings.local.json`. Veja [Substituir visibilidade de skill a partir de configurações](/pt/skills#override-skill-visibility-from-settings). Requer Claude Code v2.1.129 ou posterior | `{"legacy-context": "name-only", "deploy": "off"}` |228| `skillOverrides` | {/* min-version: 2.1.129 */}Substituições de visibilidade por skill com chave de nome de skill. O valor é `"on"`, `"name-only"`, `"user-invocable-only"`, ou `"off"`. Permite ocultar ou recolher uma skill sem editar seu SKILL.md. Não se aplica a skills de plugin, que são gerenciadas através de `/plugin`. O menu `/skills` escreve estes em `.claude/settings.local.json`. Veja [Substituir visibilidade de skill a partir de configurações](/pt/skills#override-skill-visibility-from-settings). Requer Claude Code v2.1.129 ou posterior | `{"legacy-context": "name-only", "deploy": "off"}` |

227| `skipWebFetchPreflight` | Pular a [verificação de segurança de domínio WebFetch](/pt/data-usage#webfetch-domain-safety-check) que envia cada nome de host solicitado para `api.anthropic.com` antes de buscar. Defina como `true` em ambientes que bloqueiam tráfego para Anthropic, como implantações Bedrock, Vertex AI, ou Foundry com egresso restritivo. Quando pulado, WebFetch tenta qualquer URL sem consultar a lista de bloqueio | `true` |229| `skipWebFetchPreflight` | Pular a [verificação de segurança de domínio WebFetch](/pt/data-usage#webfetch-domain-safety-check) que envia cada nome de host solicitado para `api.anthropic.com` antes de buscar. Defina como `true` em ambientes que bloqueiam tráfego para Anthropic, como implantações Bedrock, Vertex AI, ou Foundry com egresso restritivo. Quando pulado, WebFetch tenta qualquer URL sem consultar a lista de bloqueio | `true` |

228| `spinnerTipsEnabled` | Mostrar dicas no spinner enquanto Claude está trabalhando. Defina como `false` para desabilitar dicas (padrão: `true`) | `false` |230| `spinnerTipsEnabled` | Mostrar dicas no spinner enquanto Claude está trabalhando. Defina como `false` para desabilitar dicas (padrão: `true`) | `false` |

skills.md +2 −2

Details

746 746 

747### Descrições de skills são cortadas747### Descrições de skills são cortadas

748 748 

749Descrições de skills são carregadas em contexto para que Claude saiba o que está disponível. Todos os nomes de skills são sempre incluídos, mas se você tem muitas skills, descrições são encurtadas para caber no orçamento de caracteres, o que pode remover as palavras-chave que Claude precisa para corresponder sua solicitação. O orçamento escala dinamicamente em 1% da janela de contexto, com fallback de 8.000 caracteres.749Descrições de skills são carregadas em contexto para que Claude saiba o que está disponível. Todos os nomes de skills são sempre incluídos, mas se você tem muitas skills, descrições são encurtadas para caber no orçamento de caracteres, o que pode remover as palavras-chave que Claude precisa para corresponder sua solicitação. O orçamento escala em 1% da janela de contexto do modelo. Quando transborda, descrições para as skills que você invoca menos são removidas primeiro, então as skills que você realmente usa mantêm seu texto completo. Execute `/doctor` para ver se o orçamento está transbordando e quais skills são afetadas.

750 750 

751Para aumentar o limite, defina a variável de ambiente `SLASH_COMMAND_TOOL_CHAR_BUDGET`. Para liberar orçamento para outras skills, defina entradas de baixa prioridade como `"name-only"` em [`skillOverrides`](#override-skill-visibility-from-settings) para que sejam listadas sem uma descrição. Você também pode aparar o texto de `description` e `when_to_use` na fonte: coloque o caso de uso principal na frente, já que o texto combinado de cada entrada é limitado a 1.536 caracteres independentemente do orçamento.751Para aumentar o orçamento, defina a configuração [`skillListingBudgetFraction`](/pt/settings#available-settings) (por exemplo, `0.02` = 2%) ou a variável de ambiente `SLASH_COMMAND_TOOL_CHAR_BUDGET` para uma contagem de caracteres fixa. Para liberar orçamento para outras skills, defina entradas de baixa prioridade como `"name-only"` em [`skillOverrides`](#override-skill-visibility-from-settings) para que sejam listadas sem uma descrição. Você também pode aparar o texto de `description` e `when_to_use` na fonte: coloque o caso de uso principal na frente, já que o texto combinado de cada entrada é limitado a 1.536 caracteres independentemente do orçamento. O limite é configurável com [`maxSkillDescriptionChars`](/pt/settings#available-settings).

752 752 

753## Recursos relacionados753## Recursos relacionados

754 754