antonio leandro

claude, na prática

Equipping agents for the real world with Agent Skills

post · 04 · agentes · Anthropic ·

a tese

conhecimento de domínio para agente cabe numa pasta: só nome e descrição ficam no system prompt, e o resto o próprio agente lê do disco quando decide que precisa

o que fica

  1. Uma skill é só um diretório com um arquivo SKILL.md cujo frontmatter YAML exige dois campos: name e description.
  2. No startup o agente carrega apenas o name e a description de cada skill instalada; o corpo do arquivo só entra no contexto se ele decidir que a skill é relevante.
  3. Como os arquivos ficam em disco e o agente os lê com uma ferramenta de shell, a quantidade de contexto empacotada numa skill é praticamente ilimitada — o que limita é o que ele lê, não o que existe.
  4. Ordenar uma lista gerando tokens custa mais do que rodar um algoritmo de ordenação: skills incluem scripts justamente para o que precisa ser determinístico e barato.
  5. O gatilho da skill depende da qualidade do name e da description — descrição ruim significa skill que nunca dispara, e é onde os autores mandam gastar atenção.
  6. Uma skill instalada é código e instrução executando no seu ambiente, então a recomendação é instalar só de fonte confiável e auditar arquivo por arquivo o resto.

o problema

Modelos ficaram bons o bastante para operar um ambiente computacional inteiro. Claude Code roda comandos, lê e escreve arquivos, executa código. O que ele não tem é o que a Anthropic chama de conhecimento procedural e contexto organizacional: como a sua empresa nomeia branches, qual o passo a passo do seu fechamento contábil, que biblioteca você usa para mexer em PDF. Isso não está nos pesos e não vai estar.

A saída até então era construir um agente sob medida para cada caso de uso, ou empurrar tudo para o system prompt. O primeiro caminho produz coisas fragmentadas, que ninguém reaproveita nem compartilha. O segundo esbarra na janela de contexto: você paga token por todo conhecimento que carregou, inclusive o que a tarefa da vez não usa. E você tem que adivinhar antes o que o agente vai precisar depois.

a ideia

Uma skill é uma pasta. Dentro dela, um arquivo SKILL.md com instruções, e opcionalmente outros arquivos e scripts. O agente descobre essas pastas e carrega o conteúdo delas quando julga necessário.

A analogia dos autores é guia de onboarding de funcionário novo — não um manual que ele decora antes de começar, mas um material organizado que ele consulta na parte certa quando cai a tarefa. O princípio que sustenta isso tem nome no texto: progressive disclosure. Como um manual bem feito, que começa no sumário, passa pelos capítulos e termina no apêndice, a skill entrega informação em camadas, e o agente escolhe até onde descer.

como funciona

São três níveis, e vale entender a separação.

O primeiro é o frontmatter. Todo SKILL.md começa com YAML contendo name e description, ambos obrigatórios. No startup, o agente pré-carrega esses dois campos de cada skill instalada no system prompt — nada além disso. É o suficiente para ele saber que a skill existe e quando ela serve.

---
name: pdf
description: extrai texto, preenche formulários e manipula arquivos PDF
---

O segundo nível é o corpo do SKILL.md. Se a tarefa parece pedir a skill, o agente lê o arquivo inteiro para o contexto. No exemplo do post, ele faz isso invocando a ferramenta Bash sobre pdf/SKILL.md — não há mecanismo especial de carregamento, é leitura de arquivo.

O terceiro nível são os arquivos vizinhos, referenciados por nome a partir do SKILL.md. A skill de PDF do exemplo tem reference.md e forms.md. Quem escreveu tirou as instruções de preenchimento de formulário do arquivo principal e as pôs em forms.md, confiando que o Claude só vai abrir esse arquivo quando de fato for preencher um formulário. O núcleo fica enxuto; o detalhe fica a um passo de distância.

Skills também carregam código executável. A mesma skill de PDF traz um script Python que lê o arquivo e extrai os campos do formulário. O agente roda o script sem carregar nem o script nem o PDF no contexto — e o resultado é determinístico, o que a geração de token não garante.

Para escrever as suas, o post dá quatro orientações: comece pela avaliação, rodando o agente em tarefas representativas para achar onde ele trava; quebre o SKILL.md em arquivos separados quando ele crescer, principalmente se os caminhos forem mutuamente exclusivos; observe as trajetórias reais em vez de antecipar o que o agente precisa; e peça ao próprio Claude para registrar na skill o que deu certo e o que deu errado.

o que isso custou

O post é honesto sobre segurança e não tem como não ser: uma skill é instrução e código rodando no seu ambiente. Uma skill maliciosa pode abrir vulnerabilidade, exfiltrar dado ou levar o agente a agir onde não devia. A recomendação é instalar apenas de fonte confiável e, fora disso, auditar arquivo por arquivo, com atenção a dependências, recursos empacotados e qualquer trecho que mande o agente falar com rede externa.

Há um custo de projeto também. A skill só dispara se o name e a description fizerem o agente reconhecer a situação — o acerto do gatilho é responsabilidade de quem escreve, e o texto pede vigilância contra trajetórias inesperadas e contra dependência excessiva de certos contextos. Descobrir o que o agente realmente precisa é iterativo, não se especifica na primeira tentativa.

E o modelo inteiro pressupõe agente com filesystem e execução de código. Sem isso, a divulgação progressiva não existe: sobra empurrar texto para o contexto, que era o problema original. O post também não mede nada — não há benchmark, não há comparação, não há número de economia de token. É uma proposta de convenção, e deve ser lida assim.

onde isso aparece hoje

Skills funcionam hoje no Claude.ai, no Claude Code, no Agent SDK e na Claude Developer Platform. Em dezembro de 2025 a Anthropic publicou o formato como padrão aberto, com portabilidade entre plataformas como objetivo declarado. Os próprios autores apontam a relação com MCP: os dois se complementam, com skills ensinando workflows mais complexos que envolvem ferramentas externas. E deixam registrado o passo seguinte que pretendem dar — agentes criando, editando e avaliando as próprias skills, codificando os padrões de comportamento que já funcionaram.

lido na íntegra por pipeline de llm, revisado por antonio leandro antes de publicar ·