The claude-api skill is an open-source Agent Skill that provides Claude with detailed, up-to-date reference material for building applications on two Anthropic surfaces:
It covers 8 programming languages for the Messages API (Python, TypeScript, Java, Go, Ruby, C#, PHP, and cURL) and 7 languages for Managed Agents (Python, TypeScript, Java, Go, Ruby, PHP, and cURL — C# is not currently supported).
The skill comes bundled with Claude Code and is also available in the open-source Anthropic skills repository, where you can install it in any environment that supports Agent Skills.
The skill uses progressive disclosure to keep context efficient: Claude loads only the documentation relevant to your project's language, surface (Messages API or Managed Agents), and the specific task at hand (tool use, streaming, batches, and so on), rather than loading everything at once.
When triggered, the skill equips Claude with:
For the Messages API:
For Managed Agents (beta):
/claude-api managed-agents-onboard subcommandprocessed_at queued/processed gate, interrupt handling, file-mount gotchas, and credential handlingThe skill activates in two ways:
Automatic activation occurs when:
anthropic for Python, @anthropic-ai/sdk for TypeScript/JavaScript)Manual invocation by typing /claude-api (with optional subcommand or prose) in any environment where the skill is installed.
The skill does not activate for general programming tasks, ML/data-science work, or code that imports other AI SDKs (such as OpenAI).
The skill detects your project's language automatically by examining project files (for example, requirements.txt for Python, tsconfig.json for TypeScript, go.mod for Go) and loads the appropriate documentation.
| Language | Messages API SDK | Tool runner | Managed Agents |
|---|---|---|---|
| Python | Yes | Yes (beta) | Yes (beta) |
| TypeScript | Yes | Yes (beta) | Yes (beta) |
| Java | Yes | No | Yes (beta) |
| Go | Yes | No | Yes (beta) |
| Ruby | Yes | Yes (beta) | Yes (beta) |
| C# | Yes | No | No |
| PHP | Yes | No | Yes (beta) |
| cURL | Yes | N/A | Yes (beta) |
If your project uses multiple languages, Claude asks which one applies. For unsupported languages (Rust, Swift, C++), the skill provides cURL/raw HTTP examples.
The skill ships with Claude Code and requires no installation. When you ask Claude to help build something with the Claude API, or when your project already imports an Anthropic SDK, the skill activates automatically.
You can also invoke it directly:
/claude-apiFor more about how bundled skills work in Claude Code, see the Claude Code skills documentation.
The skill source is available in the Anthropic skills repository. You can install it using the npx command:
npx skills add https://github.com/anthropics/skills --skill claude-apiOr install it as a Claude Code plugin:
/plugin marketplace add anthropics/skills
/plugin install claude-api@anthropic-agent-skillsThe Claude API skill can perform Claude model migrations across a codebase. Invoke it directly with /claude-api migrate:
/claude-api migrate this project to claude-opus-4-7You can also pass a specific scope up front to skip the scope-confirmation question:
/claude-api migrate everything under src/ to claude-opus-4-7
/claude-api migrate apps/api.py and apps/worker.py to claude-opus-4-7When the scope is ambiguous (for example, a bare /claude-api migrate to claude-opus-4-7), the skill asks you to choose between the entire working directory, a specific subdirectory, or an explicit file list before editing any files. This applies to both Messages API and Managed Agents callers.
The skill handles:
Model.CLAUDE_OPUS_4_6 → Model.CLAUDE_OPUS_4_7) across all supported languages, and classifies each file as a caller, a model definer, or an opaque string reference before editingtemperature, top_p, and top_k for Claude Opus 4.7, and converting thinking: {type: "enabled", budget_tokens: N} to thinking: {type: "adaptive"}effort-2025-11-24, fine-grained-tool-streaming-2025-05-14, interleaved-thinking-2025-05-14) and switching back from client.beta.messages.create to client.messages.createoutput_config.effort starting point for the target model (for example, xhigh for coding and agentic use cases on Claude Opus 4.7)thinking.display: "summarized") when reasoning is surfaced to users on Claude Opus 4.7As it edits, the skill explains each change and its motivation inline. On completion, it produces a checklist of items that require manual verification (typically integration tests, length-control prompt tuning, and cost/rate-limit re-baselining).
For the full list of model-specific changes the skill applies, see Migrating to Claude Opus 4.7.
To scaffold a new Managed Agent from scratch, invoke the managed-agents-onboard subcommand:
/claude-api managed-agents-onboardThe skill runs an interview that walks you through the Managed Agents mental model (Agent configs versus Sessions), templates an agent config, configures environments and tools, sets up the session loop, and emits runnable code for your language. The skill also covers the mandatory Agent (once) → Session (every run) flow — model, system, and tools live on the agent, never on the session, and agents should be created once and referenced by ID.
Managed Agents requires the managed-agents-2026-04-01 beta header, which the SDK sets automatically for all client.beta.agents.*, client.beta.environments.*, client.beta.sessions.*, and client.beta.vaults.* calls.
Here are examples of tasks the skill helps Claude handle:
Building a chat application:
Build a streaming chat UI with the Claude API in TypeScriptMigrating an existing project:
/claude-api migrate this codebase to claude-opus-4-7 and re-tune effortOnboarding a new Managed Agent:
/claude-api managed-agents-onboardIn each case, the skill loads the relevant language-specific documentation and guides Claude through the implementation using current API patterns and best practices.
Learn about how Agent Skills work and the progressive disclosure model
Browse the official Anthropic SDKs for all supported languages
Explore the public Anthropic skills repository on GitHub
Was this page helpful?