Skills: Ligação e Invocação de Ferramentas
Última atualização: 2026-08-31
As ferramentas são as mãos do Skill — quais ferramentas você liga determina o que o Skill pode e não pode fazer.
1. Visão geral do sistema de ferramentas
(1) Categorias de ferramentas integradas
| Categoria | Ferramenta | Capacidade | Nível de risco |
|---|---|---|---|
| Leitura | Read | Ler conteúdo de arquivos | 🟢 Baixo |
| Busca | Grep, Glob | Buscar padrões de código | 🟢 Baixo |
| Escrita | Write | Criar/sobrescrever arquivos | 🟡 Médio |
| Edição | Edit | Modificação precisa de arquivos | 🟡 Médio |
| Execução | Bash | Executar comandos Shell | 🔴 Alto |
| Web | WebFetch | Obter conteúdo de páginas | 🟡 Médio |
(2) Ferramentas MCP
Ferramentas do Model Context Protocol (MCP) expandem os limites de capacidade da IA:
// Exemplo de configuração de servidor MCP
{
"mcpServers": {
"database": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres"],
"env": {
"DATABASE_URL": "postgresql://..."
}
},
"browser": {
"command": "npx",
"args": ["-y", "@anthropic/mcp-browser"]
}
}
}
2. Estratégia de seleção de ferramentas
(1) Princípio do menor privilégio
Análise de requisitos da tarefa → Determinar ferramentas necessárias → Ligar apenas as ferramentas necessárias
Exemplo:
┌──────────────────────┬──────────────────────────────┐
│ Tarefa │ Ferramentas ligadas │
├──────────────────────┼──────────────────────────────┤
│ Revisão somente leitura│ Read, Grep, Glob │
│ Correção de código │ Read, Edit, Bash │
│ Refatoração de projeto│ Read, Write, Edit, Bash, Grep│
│ Deploy automático total│ Todas as ferramentas + MCP │
└──────────────────────┴──────────────────────────────┘
(2) Edit vs Write
| Dimensão | Edit | Write |
|---|---|---|
| Granularidade | Preciso por linha | Arquivo inteiro |
| Segurança | Altera apenas partes especificadas | Pode sobrescrever outros conteúdos |
| Caso de uso | Correção de bug, ajustes pequenos | Criar novos arquivos, reescrita completa |
| Recomendação | ✅ Preferir | ⚠️ Usar com cautela |
(3) Uso seguro do Bash
## Regras de uso do Bash
Comandos permitidos:
- git status, git diff, git log
- npm test, pytest, go test
- ruff check, eslint, prettier
- docker ps, kubectl get
Comandos proibidos:
- rm -rf / (exclusão perigosa)
- curl | bash (execução de script remoto)
- Exportação de variáveis de ambiente contendo segredos
- Comandos que modificam configuração do sistema
3. Otimização de chamadas de ferramentas
(1) Leitura em lote
# Ineficiente: ler um por um
1. Read src/main.py
2. Read src/utils.py
3. Read src/config.py
# Eficiente: usar Glob para determinar o escopo primeiro, depois leitura direcionada
1. Glob "src/**/*.py" → Obter lista de arquivos
2. Read arquivos-chave (entrada principal, configuração, funções utilitárias)
(2) Buscar primeiro
# Ineficiente: ler todos os arquivos às cegas
1. Read todos os arquivos .py (50+ arquivos)
# Eficiente: buscar para localizar primeiro
1. Grep "class.*View" → Encontrar todas as classes view
2. Grep "TODO|FIXME|HACK" → Encontrar dívida técnica
3. Read apenas arquivos que precisam de inspeção mais profunda a partir dos resultados da busca
(3) Cadeia de chamadas de ferramentas
graph TD
A[Glob: Determinar escopo de arquivos] --> B[Grep: Buscar padrões-chave]
B --> C[Read: Leitura profunda dos arquivos alvo]
C --> D{Precisa modificar?}
D -->|Sim| E[Edit: Modificação precisa]
D -->|Não| F[Exibir relatório de análise]
E --> G[Bash: Verificar resultado da modificação]
4. Prática de tool binding
▶ Exemplo 1: Skill de análise somente leitura
---
name: tech-debt-scanner
description: "Scanner de dívida técnica, detectando TODO/FIXME/HACK e code smells"
triggers:
- keyword: "tech-debt"
tools:
- Grep
- Glob
- Read
---
# Skill de Scanner de Dívida Técnica
## Fluxo de execução
1. Use Grep para buscar comentários TODO, FIXME, HACK
2. Use Grep para buscar padrões de code smell (funções longas demais, aninhamento profundo)
3. Use Read para inspecionar detalhadamente problemas de alta prioridade
4. Exiba a lista de dívida técnica ordenada por prioridade
▶ Exemplo 2: Skill de correção automática
---
name: lint-fix
description: "Corrigir automaticamente problemas de estilo de código"
triggers:
- keyword: "lint-fix|corrigir estilo"
tools:
- Read
- Bash
- Edit
---
# Skill de Correção de Estilo de Código
## Fluxo de execução
1. Use Bash para executar o linter (seleção automática com base no tipo de projeto)
2. Analise a saída do linter
3. Para problemas com correção automática, execute linter --fix
4. Para problemas que exigem correção manual, use Edit para corrigir um a um
5. Use Bash para executar o linter novamente para verificação
5. Gerenciamento de permissões de ferramentas
(1) Permissões por projeto
// .claude/settings.json
{
"permissions": {
"allow": [
"Read(*)",
"Grep(*)",
"Glob(*)",
"Edit(src/**)",
"Bash(npm test,pytest,git *)"
],
"deny": [
"Write(.env*)",
"Bash(rm *)",
"Bash(curl *)"
]
}
}
(2) Permissões por Skill
# Limitar o escopo de uso de ferramentas no frontmatter do Skill
tools:
- Read
- Edit:
paths: ["src/**", "tests/**"]
- Bash:
commands: ["pytest", "ruff check"]
Depois que Alice configurou permissões de ferramentas para a equipe, nunca mais houve problemas com Skills excluindo arquivos acidentalmente. Bob disse: "Gerenciamento de permissões não é sobre limitar capacidades — é sobre definir limites seguros para que os Skills operem livremente dentro da zona de segurança."
❓ Perguntas Frequentes
P: O que fazer se a IA não chamar uma ferramenta que foi ligada? R: Solicite explicitamente o uso da ferramenta no prompt e forneça os passos de chamada. Se a IA ainda não chamar, o prompt pode não ser específico o suficiente ou a descrição da ferramenta pode não estar clara. P: Como evitar que Skills executem operações perigosas? R: Três camadas de proteção — menor privilégio (ligar apenas ferramentas necessárias), restrição de caminhos (Edit limitado a diretórios), lista de comandos permitidos (Bash só permite comandos seguros). P: Qual a diferença entre ferramentas MCP e ferramentas integradas? R: Ferramentas integradas vêm com a plataforma de IA; ferramentas MCP são fornecidas por serviços externos. Ferramentas MCP são mais capazes mas mais complexas de configurar, adequadas para cenários que exigem capacidades externas como bancos de dados/navegadores.
📖 Resumo
- Seis categorias de ferramentas: leitura, busca, escrita, edição, execução, web
- Princípio do menor privilégio: ligar apenas as ferramentas exigidas pela tarefa
- Preferir Edit em vez de Write; preferir buscar-para-localizar em vez de ler às cegas
- Três níveis de gerenciamento de permissões: por projeto, por Skill, por parâmetro de ferramenta
📝 Exercícios
- Básico (dificuldade⭐): Analise os tool bindings do seu Skill existente, verificando se há permissões excessivas ou insuficientes.
- Intermediário (dificuldade⭐⭐): Crie um Skill de correção automática de lint com seleção adequada de ferramentas e configuração de permissões.
- Avançado (dificuldade⭐⭐⭐): Projete um plano de otimização de cadeia de chamadas de ferramentas e compare o número e o tempo de chamadas antes e depois da otimização.