Visão Geral
Skills são diretórios autocontidos que fornecem aos agentes instruções, diretrizes e material de referência específicos de domínio. Cada skill é definida por um arquivoSKILL.md com frontmatter YAML e um corpo em markdown.
Quando ativada, as instruções de uma skill são injetadas diretamente no prompt da tarefa do agente — dando ao agente expertise sem exigir alterações de código.
Skills NÃO são ferramentas. Este é o ponto de confusão mais comum.
- Skills injetam instruções e contexto no prompt do agente. Elas dizem ao agente como pensar sobre um problema.
- Ferramentas dão ao agente funções chamáveis para tomar ações (buscar, ler arquivos, chamar APIs).
Início Rápido
1. Crie uma Skill com a CLI
A CLI é a forma suportada de criar uma skill — ela gera a estrutura de diretórios e umSKILL.md válido para você:
Terminal
pyproject.toml está) isso cria ./skills/code-review/; fora de um projeto, cria ./code-review/ no diretório atual (você pode forçar esse comportamento com --no-project):
2. Escreva seu SKILL.md
3. Anexe a um Agente
Skills + Ferramentas: Trabalhando Juntos
Aqui estão padrões comuns mostrando como skills e ferramentas se complementam:Padrão 1: Apenas Skills (Expertise de Domínio, Sem Ações Necessárias)
Use quando o agente precisa de instruções específicas mas não precisa chamar serviços externos:Padrão 2: Apenas Ferramentas (Ações, Sem Expertise Especial)
Use quando o agente precisa tomar ações mas não precisa de instruções específicas de domínio:Padrão 3: Skills + Ferramentas (Expertise E Ações)
O padrão mais comum no mundo real. A skill fornece como abordar o trabalho; ferramentas fornecem o que o agente pode fazer:Padrão 4: Skills + MCPs
Skills funcionam junto com servidores MCP da mesma forma que com ferramentas:Padrão 5: Skills + Apps
Skills podem guiar como um agente usa integrações de plataforma:Criando, Publicando e Instalando Skills
Skills têm um ciclo de vida completo gerenciado pela CLI: crie-as comcrewai skill create, publique-as com crewai skill publish — criar diretórios à mão funciona para experimentos locais, mas a CLI é o fluxo de trabalho pretendido e mantém a estrutura e o frontmatter da sua skill válidos.
Criar
Terminal
./skills/ dentro de um projeto de crew) com um SKILL.md de template, além dos diretórios vazios scripts/, references/ e assets/. Edite o SKILL.md para definir as instruções.
Publicar
Execute de dentro do diretório da skill (onde oSKILL.md está):
Terminal
name, description e metadata.version do frontmatter do SKILL.md e envia a skill para o registro da CrewAI. Skills publicadas são sempre escopadas à sua organização — assim como ferramentas, apenas membros da organização que publicou podem vê-las e instalá-las; não há visibilidade pública. Flags úteis:
Instalar
Instale uma skill publicada pela sua referência@org/name:
Terminal
./skills/{name}/; fora de um projeto, vai para o cache compartilhado em ~/.crewai/skills/{org}/{name}/.
Agentes também podem referenciar skills do registro diretamente — elas são resolvidas a partir do cache local (ou do diretório skills/ do projeto) em tempo de execução:
Listar
Terminal
./skills/ do projeto quanto do cache global, com suas versões e caminhos.
Skills no Nível do Crew
Skills podem ser definidas no crew para aplicar a todos os agentes:Formato do SKILL.md
Campos do Frontmatter
Estrutura de Diretório
name no SKILL.md. Os diretórios scripts/, references/ e assets/ estão disponíveis no path da skill para agentes que precisam referenciar arquivos diretamente.
Skills Pré-carregadas
Para mais controle, você pode descobrir e ativar skills programaticamente:Como as Skills São Carregadas
Skills usam divulgação progressiva — carregando apenas o necessário em cada estágio:
Durante a execução normal do agente (passando caminhos de diretório via
skills=["./skills"]), skills são automaticamente descobertas e ativadas. O carregamento progressivo só importa quando usando a API programática.
Skills vs Knowledge
Tanto skills quanto knowledge modificam o prompt do agente, mas servem propósitos diferentes:
Regra prática: Se o agente precisa seguir um processo, use uma skill. Se o agente precisa consultar dados, use knowledge.
Perguntas Frequentes
Preciso definir skills E ferramentas?
Preciso definir skills E ferramentas?
Depende do seu caso de uso. Skills e ferramentas são independentes — você pode usar qualquer um, ambos ou nenhum.
- Apenas skills: Quando o agente precisa de expertise mas não de ações externas (ex: escrever com diretrizes de estilo)
- Apenas ferramentas: Quando o agente precisa de ações mas não de metodologia especial (ex: busca simples na web)
- Ambos: Quando o agente precisa de expertise E ações (ex: auditoria de segurança com checklists específicas E capacidade de escanear código)
Skills fornecem ferramentas automaticamente?
Skills fornecem ferramentas automaticamente?
Não. O campo
allowed-tools no SKILL.md é apenas metadado experimental — ele não provisiona nem injeta nenhuma ferramenta. Você deve sempre definir ferramentas separadamente via tools=[], mcps=[] ou apps=[].O que acontece se eu definir a mesma skill tanto no agente quanto no crew?
O que acontece se eu definir a mesma skill tanto no agente quanto no crew?
A skill no nível do agente tem prioridade. Skills são deduplicadas por nome — as skills do agente são processadas primeiro, então se o mesmo nome de skill aparece em ambos os níveis, a versão do agente é usada.
Qual o tamanho máximo do corpo do SKILL.md?
Qual o tamanho máximo do corpo do SKILL.md?
Há um aviso suave em 50.000 caracteres, mas sem limite rígido. Mantenha skills focadas e concisas para melhores resultados — injeções de prompt muito grandes podem diluir a atenção do agente.
