claude-api

Habilidade para construir aplicações com a API do Claude (Anthropic) usando SDKs oficiais, HTTP raw ou subcomandos especializados.

O que é claude-api?

Esta habilidade capacita o desenvolvedor a construir aplicações orientadas por LLM utilizando a API Claude da Anthropic, suportando múltiplos ecossistemas como Python, TypeScript, Go, Java, Ruby, PHP, C# e shell. Ela detecta automaticamente a linguagem do projeto e oferece documentação específica para cada uma. Inclui subcomandos como `migrate` (migração de modelos), `prompt-audit` (auditoria de prompts e configurações), `upgrade` (upgrade de SDKs), `cost-optimize` (otimização de custos) e `build-eval` (criação de conjuntos de avaliação). A habilidade impõe regras rigorosas: nunca misturar SDK oficial com chamadas HTTP raw, nunca inferir APIs de treinamento desatualizadas (verificando sempre os arquivos `{lang}/` e fontes oficiais), e usar sempre o modelo Claude Opus 5.5 com `thinking: {type: "adaptive"}` por padrão, além de streaming com `eager_input_streaming: true` para ferramentas definidas pelo usuário. Quando falha na obtenção de documentação por WebFetch, o agente deve iterar com base em padrões e erros de compilação/interpretação.

Funciona com✓Claude Code✓Codex CLI~Cursor✓Antigravity✓Gemini CLI
npx skills add https://github.com/anthropics/skills/tree/main/skills/claude-api

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Construindo Aplicações com LLM Usando Claude

Esta habilidade ajuda você a construir aplicações baseadas em LLM com o Claude. Escolha a superfície certa com base em suas necessidades, detecte a linguagem do projeto e leia a documentação específica da linguagem.

Antes de Começar

Examine o arquivo alvo (ou, se não houver arquivo alvo, o prompt e o projeto) em busca de marcadores de provedor não-Anthropic — import openai, from openai, langchain_openai, OpenAI(, gpt-4, gpt-5, nomes de arquivo como agent-openai.py ou *-generic.py, ou qualquer instrução explícita para manter o código neutro em relação ao provedor. Se encontrar algum, pare e informe ao usuário que esta habilidade gera código do SDK Claude/Anthropic; pergunte se ele deseja migrar o arquivo para Claude ou se prefere uma implementação que não use Claude. Não edite um arquivo não-Anthropic com chamadas do SDK Anthropic. (Exceção: o subcomando prompt-audit é não interativo e não para aqui — ele registra marcadores de provedor não-Anthropic em seu relatório e nunca propõe migrar um arquivo não-Anthropic para o SDK Anthropic.)

Requisito de Saída

Quando o usuário solicitar que você adicione, modifique ou implemente um recurso do Claude, seu código deve chamar Claude através de uma das seguintes formas:

  1. O SDK oficial da Anthropic para a linguagem do projeto (anthropic, @anthropic-ai/sdk, com.anthropic.*, etc.). Esta é a opção padrão sempre que existir um SDK compatível para o projeto.
  2. HTTP puro (curl, requests, fetch, httpx, etc.) — apenas quando o usuário solicitar explicitamente cURL/REST/HTTP puro, o projeto for um projeto shell/cURL, ou a linguagem não possuir SDK oficial.

Nunca misture os dois — não use requests/fetch em um projeto Python ou TypeScript apenas por parecer mais leve. Nunca recorra a shims compatíveis com OpenAI.

Nunca adivinhe o uso do SDK. Nomes de funções, nomes de classes, namespaces, assinaturas de métodos e caminhos de importação devem vir de documentação explícita — seja dos arquivos {lang}/ desta habilidade ou dos repositórios oficiais do SDK ou links de documentação listados em shared/live-sources.md. Se a vinculação necessária não estiver documentada explicitamente nos arquivos da habilidade, use WebFetch para buscar o repositório do SDK relevante em shared/live-sources.md antes de escrever código. Não deduza APIs de Ruby/Java/Go/PHP/C# a partir de formatos cURL ou de SDKs de outras linguagens.

Se o WebFetch ou o acesso ao repositório falhar (restrições de rede, timeouts, clone bloqueado): não fique tentando novamente — escreva o código com base nos padrões e nas tabelas de namespace/package do arquivo {lang}/, execute o compilador ou interpretador no código e itere com base na saída de erro. Para SDKs com tipo estático (C#, Java, Go), um ciclo de compilação-correção contra erros locais chega ao código funcional mais rápido do que uma pesquisa bloqueada pela rede.

Padrões

A menos que o usuário solicite o contrário:

Para a versão do modelo Claude, use Claude Opus 5.5, que pode ser acessado através da string de modelo exata claude-opus-5-5. Por padrão, use pensamento adaptativo (thinking: {type: "adaptive"}) para qualquer coisa remotamente complicada. E, por fim, ative o streaming por padrão para qualquer requisição que possa envolver entrada longa, saída longa ou max_tokens alto — isso evita timeouts de requisição. Use o helper .get_final_message() / .finalMessage() do SDK para obter a resposta completa se você não precisar tratar eventos individuais do stream. Quando uma requisição em streaming definir ferramentas definidas pelo usuário (cliente), defina eager_input_streaming: true em cada uma dessas ferramentas para que entradas grandes (conteúdo de arquivos, código, documentos) sejam transmitidas à medida que são geradas, em vez de chegarem em uma rajada após o servidor terminar de armazená-las em buffer; o cliente então é responsável pela validação: os parsers tolerantes dos SDKs podem retornar uma entrada silenciosamente truncada em vez de gerar um erro, portanto valide cada entrada de ferramenta parseada contra seu esquema antes de executá-la (os helpers de runners tipados, como betaZodTool / @beta_tool tipado, fazem isso; ferramentas betaTool() baseadas em JSON Schema e loops manuais devem se validar), trate uma falha como JSON inválido (erro INVALID_JSON tool_result quando você mantém o bloco, reemita caso contrário), verifique as razões de parada max_tokens / refusal antes de executar ferramentas, e capture apenas o erro JSON do SDK, nunca seus erros de API tipados — padrão em shared/tool-use-concepts.md -> Eager input streaming. Deixe-o desligado para requisições sem streaming, para ferramentas de servidor e quando a requisição passar por um proxy ou por uma implantação de modelo Bedrock mais antiga que rejeite o campo.

Aviso: Deriva de API — Seu Conhecimento de Treinamento Pode Estar Desatualizado

Várias formas comuns da API Claude mudaram entre 2025 e 2026. Se você se lembrar de um padrão do treinamento, verifique-o nos arquivos {lang}/ desta habilidade antes de escrever código — as linhas abaixo são os pontos de deriva mais frequentes:

ÁreaConhecimento desatualizadoAPI Atual
Pensamento estendidothinking: {type: "enabled", budget_tokens: N}Em modelos Claude 4.6+: thinking: {type: "adaptive"}. budget_tokens está obsoleto no Opus 4.6 / Sonnet 4.6 e rejeitado com 400 no Fable 5/5.1 / Sonnet 5.5 / Sonnet 5 / Opus 5.5 / 5 / 4.8 / 4.7. Modelos pré-4.6 ainda usam budget_tokens.
Tipo de ferramenta de busca web / fetch webweb_search_20250305, web_fetch_20250910web_search_20260209, web_fetch_20260209 (filtragem dinâmica) no Opus 5.5/5/4.8/4.7/4.6, Sonnet 5.5, Sonnet 5 e Sonnet 4.6. Modelos mais antigos mantêm as variantes básicas; no Vertex AI apenas web_search_20250305 básico está disponível (web fetch não está no Vertex) — veja a Referência Rápida de Ferramentas de Servidor abaixo.
Nomes de parâmetros em PHPNomes wire snake_case como argumentos nomeados (max_tokens)Argumentos nomeados de nível superior são camelCase (maxTokens). As chaves de arrays aninhados variam por recurso (ex.: 'taskBudget', 'skillID', 'mcp_server_name') — copie a chave exata do exemplo documentado; não faça conversão em massa.
Credenciais de Managed AgentsManter segredos no lado do host via ferramentas personalizadas (a única opção antes do lançamento dos vaults)Credenciais Vault environment_variable — armazenadas pela Anthropic, substituídas na saída, nunca visíveis no sandbox (shared/managed-agents-tools.md -> Vaults). Ferramentas personalizadas no lado do host continuam sendo a alternativa para sandboxes auto-hospedados.
Files API / Skillsclient.beta.files.* / client.beta.skills.* com cabeçalhos beta files-api-2025-04-14 / skills-2025-10-02Fora do beta: client.files.* / client.skills.*, sem cabeçalho beta. Nos SDKs atuais, client.beta.files / client.beta.skills têm mudanças de forma que quebram compatibilidade com versões anteriores, correspondendo aos namespaces estáveis — migre conforme shared/live-sources.md -> Files API / Skills Guide.

Os arquivos {lang}/ desta habilidade são autoritativos em relação a padrões lembrados.


Subcomandos

Se a Solicitação do Usuário no final deste prompt for uma string de subcomando simples (sem prosa), pesquise em todas as tabelas de Subcomandos neste documento — incluindo em seções anexadas abaixo — e siga a coluna Ação correspondente diretamente. Isso permite que os usuários invoquem fluxos específicos via /claude-api <subcomando>. Se nenhuma tabela no documento corresponder, trate a solicitação como prosa normal.

SubcomandoAção
migrateMigrar código existente da API Claude para um modelo mais novo. Leia shared/model-migration.md imediatamente e siga-o em ordem: Etapa 0 (confirme o escopo — pergunte quais arquivos/diretórios antes de qualquer edição), Etapa 1 (classifique cada arquivo), depois a seção de mudanças que quebram compatibilidade por destino. Não resuma o guia — execute-o. Se o usuário não nomeou um modelo de destino, pergunte para qual modelo migrar na mesma rodada da pergunta de escopo. Após as alterações por destino serem aplicadas, audite o texto do prompt, as descrições das ferramentas e o código de requisição dentro do escopo contra shared/prompt-audit.md — a escrita de prompts para o modelo de origem faz parte de cada migração, e isso não se anuncia.
prompt-auditAuditar prompts existentes, descrições de ferramentas, habilidades e arquivos de configuração de agentes (CLAUDE.md, arquivos de regras, comandos, subagentes) em busca de padrões desatualizados ("cruft"): texto escrito para modelos antigos e instruções que o repositório superou ou que se contradizem. Leia shared/prompt-audit.md imediatamente e siga-o em ordem: Etapa 0 (estabeleça escopo e modelo de destino a partir da solicitação e do repositório — declare as suposições no relatório, não pare para perguntar), inventário, proveniência, depois a varredura de padrões. Produza ambos os entregáveis na íntegra — o relatório de auditoria (descobertas com arquivo:linha, padrão, por que está obsoleto, confiança) e um diff proposto — sem pausar para confirmação; aplique edições apenas se a solicitação pediu explicitamente. Não resuma o guia — execute-o.
upgradeAtualizar a dependência do SDK Anthropic do projeto em uma versão major — atualmente o SDK Python, anthropic 0.x -> 1.x. Palavras posteriores podem nomear a linguagem e/ou um escopo (upgrade python, upgrade python sdk src/). Leia python/claude-api/sdk-upgrade.md imediatamente e siga-o em ordem: Etapa 0 (confirme o escopo, depois estabeleça as versões atual e alvo — uma 1.x publicada deve existir antes de você escrever um pin), o inventário da Etapa 1, cada seção numerada, depois a verificação e o relatório. Não resuma o guia — execute-o. Se a linguagem detectada ou nomeada não tiver sdk-upgrade.md nesta habilidade, informe que nenhum guia de upgrade de versão major está disponível para esse SDK ainda e aponte o usuário para o CHANGELOG desse SDK (repositórios em shared/live-sources.md); não improvise um a partir do guia Python. Isso não é migração de modelo — para mover código para um modelo Claude mais novo, use migrate.
cost-optimizeReduzir o custo de execução do código existente da API Claude sem sacrificar a qualidade da saída. Leia shared/cost-optimization.md imediatamente e siga-o em ordem: Etapa 0 (estabeleça escopo, barra de qualidade e linha de base), o perfil de tokens — medido através da API de Uso e Custo Admin quando o usuário tem uma chave de API Admin, a partir dos logs de response.usage do próprio aplicativo quando ele os possui (pergunte), ou estimado a partir do código caso contrário — depois uma lista de alavancas classificadas por economia (cotadas em dólares, % da conta ou buckets relativos, dependendo de qual dessas fontes de dados você tiver), ganhos gratuitos (cache, higiene de tokens de entrada, higiene de loops, higiene de tokens de saída, lote) antes de trade-offs (orçamentos, esforço, escolha de modelo, multi-modelo); qualquer alavanca que ganhe um lugar se torna seu próprio diff — proposto por padrão, aplicado e medido contra a avaliação que cobre o tráfego que ele afeta quando o usuário solicita e aprova — e "nenhuma alteração recomendada" é um resultado válido. Duas regras permanentes: cada execução que exercita o modelo gasta dinheiro real, então obtenha a aprovação do usuário primeiro; e quando faltar contexto para uma alavanca, trabalhe interativamente com o usuário — espera-se que este fluxo de trabalho não acerte a auditoria de uma só vez. Não resuma o guia — execute-o; apresentar o perfil e o plano classificado ao usuário faz parte da execução.
build-evalAjudar o usuário a construir um conjunto de avaliação para seu aplicativo com Claude. Leia shared/evals/build-eval.md imediatamente e execute sua entrevista: Etapa 0 (o que está sendo avaliado), Etapa 1 (origem dos prompts — avaliação existente / transcrições / sintetizados), Etapa 2 (método de classificação), Etapa 3 (script executável + custo medido). Obtenha a aprovação explícita do usuário sobre as entradas, o método de classificação e o custo antes de produzir a avaliação.
preserved-thinking-migrationTornar uma integração existente compatível com pensamento preservado — a verificação que mantém um bloco de pensamento válido apenas na conversa que o produziu. Leia shared/preserved-thinking-migration.md imediatamente e siga-o em ordem: Etapa 0 (escopo, classes de tráfego, plataforma e modelo, status de aplicação, barra de qualidade, linha de base), Etapa 0.5 (prove que a verificação está rodando com o autoteste de três requisições), Etapa 1 (capturar corpos de requisição, diferenciar pares consecutivos com shared/preserved-thinking-migration/prefix_diff.py, escanear o código em busca das causas, nomear cada edição e se é deliberada), Etapa 2 (reproduzir uma fatia de teste com prefix_mismatch_behavior: "drop_block" sob o cabeçalho thinking-binding-controls-2026-08-01, contar novos blocos descartados por conversa, ler o cabeçalho de diagnóstico quando presente), Etapa 3 (uma causa por diff em ordem de raciocínio perdido — proposto por padrão, aplicado quando o usuário solicitar — depois remedir, manter ou reverter; o protocolo de três braços quando uma avaliação existir), a seção de troca de modelo (em shared/preserved-thinking-migration/causes.md, com a tabela de causas e a lista de manutenção) quando o harness roteia entre modelos, Etapa 4 (o perfil de quebra e as mudanças). Duas regras permanentes: cada reprodução gasta dinheiro real, então obtenha a aprovação do usuário para o orçamento de medição primeiro; e "nenhuma alteração recomendada" — a fatia reproduziu pensamento e nada foi descartado — é um resultado válido. Causas que têm uma forma somente de acréscimo sob um beta mais novo (manter-cauda e compactação de segundo plano: compact-2026-09-04; mudanças de ferramenta com mesmo nome: inline-tools-2026-09-15) são, onde esse beta não estiver disponível, medidas e decididas, não reescritas. Para o porquê (a verificação de três etapas, a tabela de edição somente de acréscimo), ele encadeia para shared/model-migration.md -> Mudança que quebra compatibilidade 3; não resuma o guia — execute-o.
hillclimbMelhorar iterativamente o aplicativo do usuário contra uma avaliação existente. Leia shared/evals/eval-hillclimb.md imediatamente e siga-o: Etapa 0 (confirme que existe uma avaliação executável — se não, redirecione para build-eval), Etapa 1 (o que mudar / o que é proibido), Etapa 2 (orçamento + condição de parada com base no custo medido por execução), obtenha a aprovação do plano, depois o loop ler->propor->aplicar->executar->registrar com estado em disco e uma divisão treino/validação/teste.

Detecção de Linguagem

Antes de ler exemplos de código, determine em qual linguagem o usuário está trabalhando (exceção: para o subcomando prompt-audit, pule as etapas de pergunta desta seção — a auditoria é não interativa e seu inventário é independente de linguagem; quando nenhuma linguagem for inferível, prossiga sem perguntar e declare a suposição no relatório):

  1. Examine os arquivos do projeto para inferir a linguagem:
  • *.py, requirements.txt, pyproject.toml, setup.py, Pipfile -> Python — leia de python/
  • *.ts, *.tsx, package.json (com dependências TypeScript), tsconfig.json -> TypeScript — leia de typescript/
  • *.go, go.mod -> Go — leia de go/
  • *.java, pom.xml, build.gradle (.kts), gradle.properties -> Java — leia de java/
  • *.rb, Gemfile, *.gemspec -> Ruby — leia de ruby/
  • *.php, composer.json -> PHP — leia de php/
  • *.cs, *.csproj, *.sln -> C# — leia de csharp/
  • *.sh, *.bash, Dockerfile, Makefile -> Shell — leia de shell/
  1. Se a linguagem não puder ser inferida, primeiro confirme com o usuário. Ao obter a resposta, leia o diretório de linguagem correspondente.

O código de exemplo e as instruções na resposta devem corresponder à linguagem detectada. Sempre verifique se o diretório {lang}/ existe nesta habilidade. Se a linguagem não for suportada, avise e ofereça ajuda geral.


Conteúdo Estrutural da Habilidade

Esta habilidade contém:

  • Diretórios de linguagem com documentação atualizada do SDK (python/, typescript/, go/, java/, ruby/, php/, csharp/, shell/)
  • Documentação compartilhada para fluxos avançados (migração, auditoria, otimização de custos, avaliações)
  • shared/live-sources.md — links oficiais para repositórios SDK, changelogs e guias
  • Informações detalhadas sobre ferramentas de servidor para busca web e fetch web

Para comandos de uso geral ou limpeza de prompt, consulte: shared/prompt-audit.md Para guias de migração de modelos: shared/model-migration.md Para estratégias de otimização de custos: shared/cost-optimization.md Para criação de conjuntos de avaliação: shared/evals/


Esta habilidade é mantida pela Anthropic. Para problemas ou sugestões, consulte os repositórios oficiais do SDK.

Individual skills in this repo

This repo contains 19 individual skills — each has its own dedicated page.

academy-guide

Stop and check this skill before finishing any reply to a question about how to use Claude or a Claude product — it recommends matching courses, tutorials, and use cases from Claude Academy (academy.claude.com), Anthropic's learning hub. Trigger on: "how do I", "how can I", "getting started with", "what can Claude do", "teach me", "learn to use"; questions about artifacts, projects, skills, plugins, connectors, MCP; requests about rolling Claude out to a team, class, or organization; and any ask for training materials, onboarding content, or learning resources. Use it when the user is learning how to use a feature or product — not when they are mid-task and just want the task done. This skill composes with other skills: after consulting product documentation to answer how a Claude feature works, also check here for a matching course or tutorial — a docs-grounded answer and an Academy recommendation belong together. Only recommend on a strong match; never invent Academy content.

algorithmic-art

Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists

anthropics/template-skill

Replace with description of the skill and when Claude should use it.

brand-guidelines

Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.

canvas-design

Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists

discernment-nudge

After you give a substantive answer or draft that the user may act on — advice or recommendations, drafted artifacts such as goals, plans, pitches, proposals, or emails, estimates or projections, analysis or interpretation of data, factual claims they may rely on, or a multi-step argument — invoke this skill BEFORE finalizing your reply and then, if it applies, append 2-3 short follow-up questions, each tied to something specific in what you just produced, that help the user check key facts, probe the reasoning or assumptions, and notice missing context. Do this at most once per conversation. Skip it when the user asked a trivial how-to or simple lookup, wants a purely educational explanation, asked you only to format, convert, or assemble a file from content they provided, is writing code they will run, is doing creative writing or casual chat, or already asked you to double-check, cite, or review — the skill file explains these boundaries and the exact output format.

doc-coauthoring

Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.

docx

Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files) or Word templates (.dotx files). Triggers include: any mention of

frontend-design

Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.

internal-comms

A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).

mcp-builder

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

pdf

Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.

pptx

Use this skill any time a .pptx or .potx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx or .potx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates (.potx), layouts, speaker notes, or comments. Trigger whenever the user mentions \

skill-creator

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill

slack-gif-creator

Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like

theme-factory

Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.

webapp-testing

Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.

web-artifacts-builder

Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.

xlsx

Use this skill any time a spreadsheet file is the primary input or output. This means any task where the user wants to: open, read, edit, or fix an existing .xlsx, .xlsm, .xltx, .csv, or .tsv file (e.g., adding columns, computing formulas, formatting, charting, cleaning messy data); create a new spreadsheet from scratch or from other data sources; or convert between tabular file formats. Trigger especially when the user references a spreadsheet file by name or path — even casually (like \

Habilidades Relacionadas