Pular para o conteúdo principal
Este guia mostra como criar, usar e gerenciar Agent Skills no Claude Code. Skills são capacidades modulares que estendem a funcionalidade do Claude através de pastas organizadas contendo instruções, scripts e recursos.

Pré-requisitos

  • Claude Code versão 1.0 ou posterior
  • Familiaridade básica com Claude Code

O que são Agent Skills?

Agent Skills empacotam expertise em capacidades descobríveis. Cada Skill consiste em um arquivo SKILL.md com instruções que Claude lê quando relevante, além de arquivos de suporte opcionais como scripts e templates. Como Skills são invocadas: Skills são invocadas pelo modelo—Claude decide autonomamente quando usá-las com base em sua solicitação e na descrição da Skill. Isso é diferente de comandos de barra, que são invocados pelo usuário (você digita explicitamente /comando para acioná-los). Benefícios:
  • Estenda as capacidades do Claude para seus fluxos de trabalho específicos
  • Compartilhe expertise em sua equipe via git
  • Reduza prompts repetitivos
  • Componha múltiplas Skills para tarefas complexas
Saiba mais na visão geral de Agent Skills.
Para uma análise profunda da arquitetura e aplicações do mundo real de Agent Skills, leia nosso blog de engenharia: Equipping agents for the real world with Agent Skills.

Crie uma Skill

Skills são armazenadas como diretórios contendo um arquivo SKILL.md.

Personal Skills

Personal Skills estão disponíveis em todos os seus projetos. Armazene-as em ~/.claude/skills/:
mkdir -p ~/.claude/skills/my-skill-name
Use Personal Skills para:
  • Seus fluxos de trabalho e preferências individuais
  • Skills experimentais que você está desenvolvendo
  • Ferramentas de produtividade pessoal

Project Skills

Project Skills são compartilhadas com sua equipe. Armazene-as em .claude/skills/ dentro de seu projeto:
mkdir -p .claude/skills/my-skill-name
Use Project Skills para:
  • Fluxos de trabalho e convenções de equipe
  • Expertise específica do projeto
  • Utilitários e scripts compartilhados
Project Skills são verificadas no git e automaticamente disponíveis para membros da equipe.

Plugin Skills

Skills também podem vir de plugins do Claude Code. Plugins podem agrupar Skills que estão automaticamente disponíveis quando o plugin é instalado. Essas Skills funcionam da mesma forma que Personal e Project Skills.

Escreva SKILL.md

Crie um arquivo SKILL.md com frontmatter YAML e conteúdo Markdown:
---
name: your-skill-name
description: Brief description of what this Skill does and when to use it
---

# Your Skill Name

## Instructions
Provide clear, step-by-step guidance for Claude.

## Examples
Show concrete examples of using this Skill.
Requisitos de campo:
  • name: Deve usar apenas letras minúsculas, números e hífens (máximo 64 caracteres)
  • description: Breve descrição do que a Skill faz e quando usá-la (máximo 1024 caracteres)
O campo description é crítico para Claude descobrir quando usar sua Skill. Deve incluir tanto o que a Skill faz quanto quando Claude deve usá-la. Veja o guia de melhores práticas para orientação completa de autoria incluindo regras de validação.

Adicione arquivos de suporte

Crie arquivos adicionais ao lado de SKILL.md:
my-skill/
├── SKILL.md (required)
├── reference.md (optional documentation)
├── examples.md (optional examples)
├── scripts/
│   └── helper.py (optional utility)
└── templates/
    └── template.txt (optional template)
Referencie esses arquivos de SKILL.md:
For advanced usage, see [reference.md](reference.md).

Run the helper script:
```bash
python scripts/helper.py input.txt
```
Claude lê esses arquivos apenas quando necessário, usando divulgação progressiva para gerenciar o contexto de forma eficiente.

Restrinja o acesso a ferramentas com allowed-tools

Use o campo frontmatter allowed-tools para limitar quais ferramentas Claude pode usar quando uma Skill está ativa:
---
name: safe-file-reader
description: Read files without making changes. Use when you need read-only file access.
allowed-tools: Read, Grep, Glob
---

# Safe File Reader

This Skill provides read-only file access.

## Instructions
1. Use Read to view file contents
2. Use Grep to search within files
3. Use Glob to find files by pattern
Quando essa Skill está ativa, Claude pode usar apenas as ferramentas especificadas (Read, Grep, Glob) sem precisar pedir permissão. Isso é útil para:
  • Skills somente leitura que não devem modificar arquivos
  • Skills com escopo limitado (por exemplo, apenas análise de dados, sem escrita de arquivos)
  • Fluxos de trabalho sensíveis à segurança onde você quer restringir capacidades
Se allowed-tools não for especificado, Claude pedirá permissão para usar ferramentas normalmente, seguindo o modelo de permissão padrão.
allowed-tools é suportado apenas para Skills no Claude Code.

Visualize Skills disponíveis

Skills são automaticamente descobertas pelo Claude de três fontes:
  • Personal Skills: ~/.claude/skills/
  • Project Skills: .claude/skills/
  • Plugin Skills: agrupadas com plugins instalados
Para visualizar todas as Skills disponíveis, pergunte ao Claude diretamente:
What Skills are available?
ou
List all available Skills
Isso mostrará todas as Skills de todas as fontes, incluindo Plugin Skills. Para inspecionar uma Skill específica, você também pode verificar o sistema de arquivos:
# List personal Skills
ls ~/.claude/skills/

# List project Skills (if in a project directory)
ls .claude/skills/

# View a specific Skill's content
cat ~/.claude/skills/my-skill/SKILL.md

Teste uma Skill

Após criar uma Skill, teste-a fazendo perguntas que correspondam à sua descrição. Exemplo: Se sua descrição menciona “arquivos PDF”:
Can you help me extract text from this PDF?
Claude decide autonomamente usar sua Skill se corresponder à solicitação—você não precisa invocá-la explicitamente. A Skill é ativada automaticamente com base no contexto de sua pergunta.

Depure uma Skill

Se Claude não usar sua Skill, verifique esses problemas comuns:

Torne a descrição específica

Muito vaga:
description: Helps with documents
Específica:
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.
Inclua tanto o que a Skill faz quanto quando usá-la na descrição.

Verifique o caminho do arquivo

Personal Skills: ~/.claude/skills/skill-name/SKILL.md Project Skills: .claude/skills/skill-name/SKILL.md Verifique se o arquivo existe:
# Personal
ls ~/.claude/skills/my-skill/SKILL.md

# Project
ls .claude/skills/my-skill/SKILL.md

Verifique a sintaxe YAML

YAML inválido impede que a Skill seja carregada. Verifique o frontmatter:
cat SKILL.md | head -n 10
Certifique-se de:
  • Abertura --- na linha 1
  • Fechamento --- antes do conteúdo Markdown
  • Sintaxe YAML válida (sem abas, indentação correta)

Visualize erros

Execute Claude Code com modo de depuração para ver erros de carregamento de Skill:
claude --debug

Compartilhe Skills com sua equipe

Abordagem recomendada: Distribua Skills através de plugins. Para compartilhar Skills via plugin:
  1. Crie um plugin com Skills no diretório skills/
  2. Adicione o plugin a um marketplace
  3. Membros da equipe instalam o plugin
Para instruções completas, veja Adicione Skills ao seu plugin. Você também pode compartilhar Skills diretamente através de repositórios de projeto:

Passo 1: Adicione Skill ao seu projeto

Crie uma Project Skill:
mkdir -p .claude/skills/team-skill
# Create SKILL.md

Passo 2: Commit no git

git add .claude/skills/
git commit -m "Add team Skill for PDF processing"
git push

Passo 3: Membros da equipe obtêm Skills automaticamente

Quando membros da equipe puxam as últimas mudanças, Skills estão imediatamente disponíveis:
git pull
claude  # Skills are now available

Atualize uma Skill

Edite SKILL.md diretamente:
# Personal Skill
code ~/.claude/skills/my-skill/SKILL.md

# Project Skill
code .claude/skills/my-skill/SKILL.md
As mudanças entram em vigor na próxima vez que você inicia Claude Code. Se Claude Code já está em execução, reinicie-o para carregar as atualizações.

Remova uma Skill

Delete o diretório da Skill:
# Personal
rm -rf ~/.claude/skills/my-skill

# Project
rm -rf .claude/skills/my-skill
git commit -m "Remove unused Skill"

Melhores práticas

Mantenha Skills focadas

Uma Skill deve abordar uma capacidade: Focada:
  • “PDF form filling”
  • “Excel data analysis”
  • “Git commit messages”
Muito ampla:
  • “Document processing” (dividir em Skills separadas)
  • “Data tools” (dividir por tipo de dados ou operação)

Escreva descrições claras

Ajude Claude a descobrir quando usar Skills incluindo gatilhos específicos em sua descrição: Clara:
description: Analyze Excel spreadsheets, create pivot tables, and generate charts. Use when working with Excel files, spreadsheets, or analyzing tabular data in .xlsx format.
Vaga:
description: For files

Teste com sua equipe

Tenha colegas de equipe usarem Skills e forneçam feedback:
  • A Skill é ativada quando esperado?
  • As instruções são claras?
  • Há exemplos ou casos extremos faltando?

Documente versões de Skill

Você pode documentar versões de Skill em seu conteúdo SKILL.md para rastrear mudanças ao longo do tempo. Adicione uma seção de histórico de versão:
# My Skill

## Version History
- v2.0.0 (2025-10-01): Breaking changes to API
- v1.1.0 (2025-09-15): Added new features
- v1.0.0 (2025-09-01): Initial release
Isso ajuda membros da equipe a entender o que mudou entre versões.

Solução de problemas

Claude não usa minha Skill

Sintoma: Você faz uma pergunta relevante mas Claude não usa sua Skill. Verifique: A descrição é específica o suficiente? Descrições vagas dificultam a descoberta. Inclua tanto o que a Skill faz quanto quando usá-la, com termos-chave que usuários mencionariam. Muito genérica:
description: Helps with data
Específica:
description: Analyze Excel spreadsheets, generate pivot tables, create charts. Use when working with Excel files, spreadsheets, or .xlsx files.
Verifique: O YAML é válido? Execute validação para verificar erros de sintaxe:
# View frontmatter
cat .claude/skills/my-skill/SKILL.md | head -n 15

# Check for common issues
# - Missing opening or closing ---
# - Tabs instead of spaces
# - Unquoted strings with special characters
Verifique: A Skill está no local correto?
# Personal Skills
ls ~/.claude/skills/*/SKILL.md

# Project Skills
ls .claude/skills/*/SKILL.md

Skill tem erros

Sintoma: A Skill é carregada mas não funciona corretamente. Verifique: Dependências estão disponíveis? Claude instalará automaticamente dependências necessárias (ou pedirá permissão para instalá-las) quando precisar delas. Verifique: Scripts têm permissões de execução?
chmod +x .claude/skills/my-skill/scripts/*.py
Verifique: Caminhos de arquivo estão corretos? Use barras para frente (estilo Unix) em todos os caminhos: Correto: scripts/helper.py Errado: scripts\helper.py (estilo Windows)

Múltiplas Skills em conflito

Sintoma: Claude usa a Skill errada ou parece confuso entre Skills similares. Seja específico em descrições: Ajude Claude a escolher a Skill certa usando termos de gatilho distintos em suas descrições. Em vez de:
# Skill 1
description: For data analysis

# Skill 2
description: For analyzing data
Use:
# Skill 1
description: Analyze sales data in Excel files and CRM exports. Use for sales reports, pipeline analysis, and revenue tracking.

# Skill 2
description: Analyze log files and system metrics data. Use for performance monitoring, debugging, and system diagnostics.

Exemplos

Skill Simples (arquivo único)

commit-helper/
└── SKILL.md
---
name: generating-commit-messages
description: Generates clear commit messages from git diffs. Use when writing commit messages or reviewing staged changes.
---

# Generating Commit Messages

## Instructions

1. Run `git diff --staged` to see changes
2. I'll suggest a commit message with:
   - Summary under 50 characters
   - Detailed description
   - Affected components

## Best practices

- Use present tense
- Explain what and why, not how

Skill com permissões de ferramenta

code-reviewer/
└── SKILL.md
---
name: code-reviewer
description: Review code for best practices and potential issues. Use when reviewing code, checking PRs, or analyzing code quality.
allowed-tools: Read, Grep, Glob
---

# Code Reviewer

## Review checklist

1. Code organization and structure
2. Error handling
3. Performance considerations
4. Security concerns
5. Test coverage

## Instructions

1. Read the target files using Read tool
2. Search for patterns using Grep
3. Find related files using Glob
4. Provide detailed feedback on code quality

Skill com múltiplos arquivos

pdf-processing/
├── SKILL.md
├── FORMS.md
├── REFERENCE.md
└── scripts/
    ├── fill_form.py
    └── validate.py
SKILL.md:
---
name: pdf-processing
description: Extract text, fill forms, merge PDFs. Use when working with PDF files, forms, or document extraction. Requires pypdf and pdfplumber packages.
---

# PDF Processing

## Quick start

Extract text:
```python
import pdfplumber
with pdfplumber.open("doc.pdf") as pdf:
    text = pdf.pages[0].extract_text()
```

For form filling, see [FORMS.md](FORMS.md).
For detailed API reference, see [REFERENCE.md](REFERENCE.md).

## Requirements

Packages must be installed in your environment:
```bash
pip install pypdf pdfplumber
```
Liste pacotes necessários na descrição. Pacotes devem ser instalados em seu ambiente antes de Claude poder usá-los.
Claude carrega arquivos adicionais apenas quando necessário.

Próximos passos