Ferramentas (Tools)
Conheça as ferramentas nativas que o Claude Code usa automaticamente para ler, escrever, buscar e executar — e entenda como ele decide qual usar.
O Claude Code não age no escuro. Ele possui um conjunto de ferramentas integradas que usa de forma autônoma para realizar tarefas. Entender essas ferramentas é fundamental para saber o que o Claude pode e não pode fazer.
Catálogo de ferramentas
O Claude Code possui 12 ferramentas built-in. Cada uma tem um propósito específico e o Claude decide autonomamente qual usar com base no contexto da sua solicitação.
Read
Lê arquivos do sistema. Claude decide quando usar com base no contexto da conversa.
Write
Cria ou sobrescreve arquivos. Usado quando o arquivo ainda não existe ou precisa de reescrita total.
Edit
Edições precisas: recebe old_string → new_string. Preserva formatação e indentação. Preferível ao Write para modificações parciais.
Bash
Executa comandos shell e exibe o output. É a ferramenta mais poderosa — e que requer mais cuidado com permissões.
Grep
Busca conteúdo dentro de arquivos. Funciona como ripgrep internamente. Ideal para encontrar onde uma função ou variável é usada.
Glob
Encontra arquivos por padrão de nome. Suporta padrões como **/*.ts e src/**/*.jsx.
LS
Lista o conteúdo de um diretório. Usado para entender a estrutura do projeto.
Agent
Spawna subagentes para tarefas complexas e independentes. Cada subagente tem seu próprio contexto.
WebFetch
Busca o conteúdo de uma URL. Permite ao Claude ler documentação, APIs públicas e páginas web.
WebSearch
Realiza buscas na web. Útil para pesquisar soluções, documentação e informações atualizadas.
TodoWrite / TodoRead
Gerencia uma lista interna de tarefas dentro da sessão. Ajuda o Claude a organizar trabalho em múltiplos passos.
NotebookEdit
Edita células de Jupyter Notebooks (.ipynb). Para projetos de data science e ML.
Permissões por ferramenta — settings.json
Você pode controlar quais ferramentas o Claude pode usar, e com quais parâmetros, através do arquivo .claude/settings.json.
// .claude/settings.json — controle granular de permissões
{
"permissions": {
"allow": [
"Bash(git status)",
"Bash(npm run *)",
"Read(*)",
"Write(src/**)"
],
"deny": [
"Bash(rm -rf *)",
"Bash(curl *)"
]
}
}Como Claude escolhe a ferramenta certa
O Claude analisa o contexto da solicitação e seleciona a ferramenta mais adequada. Veja a lógica de decisão:
Exercício: observe o Claude em ação
Prompt para testar
"liste todos os arquivos TypeScript no projeto e me diga quantas linhas cada um tem"
O que observar
Observe como o Claude usa Glob para encontrar os .ts files e Bash (wc -l) para contar as linhas — tudo automaticamente, sem você precisar especificar as ferramentas.
Isso demonstra a orquestração autônoma de ferramentas: o Claude decide a sequência ideal sem instrução explícita.