Руководство разработчика Claude Agent SDK
Claude Code SDK официально переименован в Claude Agent SDK с расширенными возможностями для создания AI-агентов. Руководство охватывает быстрый старт Python/TypeScript, основные концепции и корпоративные практики.
Обновлено 2026-09-21
Что такое Claude Agent SDK
Официальное переименование
В официальном руководстве по миграции также реорганизована документация; оба имени — об одном SDK (проверено 2026-09-21).
Смысл переименования
Официальная причина — шире охват: библиотека для создания AI-агентов, а не только для кода (проверено 2026-09-21).
Единый интерфейс инструментов
Использует ту же систему инструментов и цикл агента, что и Claude Code. Бесшовное переключение между локальным и облачным деплоем.
Готов к продакшену
Встроенный retry, управление сессиями, потоковый вывод и другие корпоративные функции работают «из коробки».
Многоязычная поддержка
Официальные SDK для Python и TypeScript с симметричным API и исчерпывающей документацией.
Основные концепции
Инструменты (Tools)
Функции, вызываемые агентом. Объявляются декораторами с автогенерацией JSON Schema для понимания и вызова Клодом.
Цикл агента
Claude думает → выбирает инструмент → выполняет → наблюдает результат → продолжает думать. Цикл до завершения задачи.
Память / Контекст
Единое управление кратковременной (история диалога) и долговременной (файлы/БД) памятью.
Разрешения
Тонкое управление правами: файловая система, сеть, выполнение кода, внешние API — каждый аспект настраивается отдельно.
Быстрый старт на Python
Первый Claude Agent за три шага, полностью совместимо с прокси QCode.cc.
Шаг 1: Установка SDK
python3 -m venv .venv && source .venv/bin/activate
pip install claude-agent-sdk
Шаг 2: Создание агента
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions
async def main():
options = ClaudeAgentOptions(
system_prompt="You are an expert Python developer",
permission_mode="acceptEdits",
)
async for message in query(
prompt="Create a Python web server", options=options
):
print(message)
asyncio.run(main())
Шаг 3: Пользовательские инструменты
import asyncio
from typing import Any
from claude_agent_sdk import (
ClaudeAgentOptions, create_sdk_mcp_server, query, tool
)
@tool("get_weather", "Get current weather for a city", {"city": str})
async def get_weather(args: dict[str, Any]) -> dict[str, Any]:
return {
"content": [
{"type": "text",
"text": f"Weather in {args['city']}: 22 C, sunny"}
]
}
weather_server = create_sdk_mcp_server(
name="weather",
version="1.0.0",
tools=[get_weather],
)
options = ClaudeAgentOptions(
mcp_servers={"weather": weather_server},
allowed_tools=["mcp__weather__get_weather"],
)
async def main():
async for message in query(
prompt="What's the weather in Beijing and Shanghai?",
options=options,
):
print(message)
asyncio.run(main())
Быстрый старт на TypeScript
Разработка Claude Agent в Node.js / Bun с полной поддержкой типов.
Шаг 1: Установка SDK
npm install @anthropic-ai/claude-agent-sdk
Шаг 2: Создание агента
import { query } from "@anthropic-ai/claude-agent-sdk";
for await (const message of query({
prompt: "Create a Python web server",
options: { systemPrompt: "You are an expert Python developer" },
})) {
console.log(message);
}
Шаг 3: Полный пример
import { tool, createSdkMcpServer, query } from "@anthropic-ai/claude-agent-sdk";
import { z } from "zod";
const getTemperature = tool(
"get_temperature",
"Get the current temperature at a location",
{
latitude: z.number().describe("Latitude coordinate"),
longitude: z.number().describe("Longitude coordinate")
},
async (args) => {
return {
content: [{ type: "text", text: `Temperature at ${args.latitude}` }]
};
}
);
const weatherServer = createSdkMcpServer({
name: "weather",
version: "1.0.0",
tools: [getTemperature]
});
for await (const message of query({
prompt: "What's the temperature in Beijing?",
options: {
mcpServers: { weather: weatherServer },
allowedTools: ["mcp__weather__get_temperature"]
}
})) {
console.log(message);
}
Agent SDK vs Managed Agents
| Аспект |
Agent SDK
|
Managed Agents
|
|---|---|---|
| Среда выполнения | Самостоятельный хостинг (локально/свой сервер) | Облако Anthropic |
| Масштабирование | Ручное управление инстансами | Автоматическое эластичное масштабирование |
| Сценарий | Прототипирование, нестандартные сценарии | Корпоративный продакшен-деплой |
Использование через QCode.cc
Укажите в ANTHROPIC_BASE_URL эндпоинт QCode.cc — и Agent SDK работает напрямую, без VPN; доступные модели см. на /models. В Managed Agents агента хостит Anthropic (официальная документация, загружена 2026-09-22); этот путь мы не проверяли и ничего о нём не обещаем.
# Python SDK
ANTHROPIC_BASE_URL=https://api.qcode.cc/api
ANTHROPIC_API_KEY=your-qcode-api-key
# TypeScript SDK
ANTHROPIC_BASE_URL=https://api.qcode.cc/api
ANTHROPIC_API_KEY=your-qcode-api-key
# Point the endpoint at your own gateway: the SDK reads it from env
from claude_agent_sdk import ClaudeAgentOptions
options = ClaudeAgentOptions(
env={
"ANTHROPIC_BASE_URL": "https://api.qcode.cc/api",
},
)
Все модели Claude (Fable 5/Opus 4.8/Sonnet 4.6/Haiku 4.5) доступны
Полная поддержка вызовов инструментов (Function Calling)
Поддержка потокового вывода (Streaming)
Та же форма, что у официального Messages API — Agent SDK нужен лишь ANTHROPIC_BASE_URL
Начните создавать AI-агентов прямо сейчас
Зарегистрируйтесь на QCode.cc для стабильного доступа к Claude API с поддержкой всех функций Agent SDK.