Este tutorial mostra como usar Agent Skills para criar uma apresentação do PowerPoint. Você aprenderá como habilitar Skills, fazer uma requisição simples e acessar o arquivo gerado.
Agent Skills pré-construídas estendem as capacidades do Claude com expertise especializada para tarefas como criar documentos, analisar dados e processar arquivos. A Anthropic fornece as seguintes Agent Skills pré-construídas na API:
Quer criar Skills personalizadas? Consulte o Agent Skills Cookbook para exemplos de como construir suas próprias Skills com expertise específica de domínio.
Primeiro, verifique quais Skills estão disponíveis. Use a Skills API para listar todas as Skills gerenciadas pela Anthropic:
# Listar Skills gerenciadas pela Anthropic
ant beta:skills list --source anthropicVocê verá as seguintes Skills: pptx, xlsx, docx e pdf.
Esta API retorna os metadados de cada Skill: seu nome e descrição. O Claude carrega esses metadados na inicialização para saber quais Skills estão disponíveis. Este é o primeiro nível de "progressive disclosure" (divulgação progressiva), em que o Claude descobre as Skills sem ainda carregar suas instruções completas.
Agora use a Skill do PowerPoint para criar uma apresentação sobre energia renovável. Especifique as Skills usando o parâmetro container na Messages API:
# Criar uma mensagem com a Skill de PowerPoint
response = client.beta.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
betas=["code-execution-2025-08-25", "skills-2025-10-02"],
container={
"skills": [{"type": "anthropic", "skill_id": "pptx", "version": "latest"}]
},
messages=[
{
"role": "user",
"content": "Create a presentation about renewable energy with 5 slides",
}
],
tools=[{"type": "code_execution_20250825", "name": "code_execution"}],
)
print(f"stop_reason={response.stop_reason}, blocks={len(response.content)}")Vamos detalhar o que cada parte faz:
container.skills: Especifica quais Skills o Claude pode usartype: "anthropic": Indica que esta é uma Skill gerenciada pela Anthropicskill_id: "pptx": O identificador da Skill do PowerPointversion: "latest": A versão da Skill definida como a mais recentemente publicadatools: Habilita a execução de código (obrigatório para Skills)code-execution-2025-08-25 e skills-2025-10-02Os exemplos aqui usam a versão da ferramenta code_execution_20250825 com seu cabeçalho beta correspondente code-execution-2025-08-25. As Skills também funcionam com as revisões mais recentes da ferramenta de execução de código (code_execution_20260120 e posteriores); qualquer versão da ferramenta de execução de código satisfaz o requisito das Skills. Seja qual for a versão que você usar, mantenha o type da ferramenta e o cabeçalho beta consistentes com a página da ferramenta de execução de código, e sempre inclua skills-2025-10-02.
Quando você faz essa requisição, o Claude automaticamente associa sua tarefa à Skill relevante. Como você pediu uma apresentação, o Claude determina que a Skill do PowerPoint é relevante e carrega suas instruções completas: o segundo nível de divulgação progressiva. Em seguida, o Claude executa o código da Skill para criar sua apresentação.
A apresentação foi criada no container de execução de código e salva como um arquivo. A resposta inclui uma referência de arquivo com um ID de arquivo. Extraia o ID do arquivo e faça o download usando a Files API:
# Extrair o ID do arquivo do resultado da ferramenta de execução de código. A Skill pode executar
# seu trabalho por meio da ferramenta de execução de código Python ou bash, então verifique
# ambos os tipos de resultado.
file_id = None
for block in response.content:
if block.type == "code_execution_tool_result":
if block.content.type == "code_execution_result":
for output in block.content.content:
file_id = output.file_id
elif block.type == "bash_code_execution_tool_result":
if block.content.type == "bash_code_execution_result":
for output in block.content.content:
file_id = output.file_id
if file_id:
# Baixar o arquivo e salvá-lo
output_path = Path(tempfile.gettempdir()) / "renewable_energy.pptx"
file_content = client.beta.files.download(file_id=file_id)
file_content.write_to_file(output_path)
print(f"Presentation saved to {output_path}")Para detalhes completos sobre como trabalhar com arquivos gerados, consulte a documentação da ferramenta de execução de código.
Agora que você criou seu primeiro documento com Skills, experimente estas variações:
response = client.beta.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
betas=["code-execution-2025-08-25", "skills-2025-10-02"],
container={
"skills": [{"type": "anthropic", "skill_id": "xlsx", "version": "latest"}]
},
messages=[
{
"role": "user",
"content": "Create a quarterly sales tracking spreadsheet with sample data",
}
],
tools=[{"type": "code_execution_20250825", "name": "code_execution"}],
)response = client.beta.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
betas=["code-execution-2025-08-25", "skills-2025-10-02"],
container={
"skills": [{"type": "anthropic", "skill_id": "docx", "version": "latest"}]
},
messages=[
{
"role": "user",
"content": "Write a 2-page report on the benefits of renewable energy",
}
],
tools=[{"type": "code_execution_20250825", "name": "code_execution"}],
)response = client.beta.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
betas=["code-execution-2025-08-25", "skills-2025-10-02"],
container={
"skills": [{"type": "anthropic", "skill_id": "pdf", "version": "latest"}]
},
messages=[
{
"role": "user",
"content": "Generate a PDF invoice template",
}
],
tools=[{"type": "code_execution_20250825", "name": "code_execution"}],
)Agora que você usou Agent Skills pré-construídas, você pode:
Use Skills com a API do Claude
Faça upload de suas próprias Skills para tarefas especializadas
Aprenda as melhores práticas para escrever Skills eficazes
Saiba mais sobre Skills no Claude Code
Explore exemplos de Skills e padrões de implementação
Was this page helpful?