Подписывайтесь:

Блог AST-SoftPro

Anthropic Agent SDK: обзор, история и сравнение с аналогами

28.08.2026 21 мин чтения
Anthropic Agent SDK: обзор, история и сравнение с аналогами

Введение

Если вы строите ИИ-агентов и каждый раз вручную пишете цикл «модель → вызов инструмента → результат в контекст → снова модель», то Anthropic Agent SDK создан именно для вас. Это библиотека на Python и TypeScript, которая упаковывает тот самый агентный движок, что работает внутри Claude Code: встроенные инструменты (чтение и запись файлов, выполнение команд, поиск в вебе), управление контекстом, сессии, хуки жизненного цикла и поддержка MCP — протокола подключения внешних инструментов.

Статья ответит на вопросы: что именно даёт SDK, как он появился и как менялся, чем отличается от «голого» API Claude, и как он смотрится рядом с OpenAI Agents SDK, LangGraph и другими фреймворками. В конце — практические рекомендации по выбору стека для продакшн-проектов.

История: от Claude Code SDK к Agent SDK

История продукта короткая, но показательная для всей отрасли агентных разработок.

Май–июнь 2025. Anthropic выпускает Claude Code SDK — программный доступ к движку, на котором работает терминальный ассистент Claude Code. Python-пакет claude-code-sdk появляется на PyPI в июне 2025; акцент сделан на автоматизации кодинг-задач: ревью кода, исправление багов, работа с репозиториями. По сути, команда «вытащила» из интерактивного CLI то, что раньше было доступно только человеку за терминалом.

29 сентября 2025. Одновременно с анонсом модели Claude Sonnet 4.5 SDK переименовывают в Claude Agent SDK: Python-пакет становится claude-agent-sdk, TypeScript — @anthropic-ai/claude-agent-sdk. Официальная формулировка миграционного гайда: «Claude Code SDK изначально проектировался для кодинг-задач, но вырос во фреймворк для построения агентов любого профиля». Это не косметическое изменение: позиционирование смещается с «ассистент разработчика» на «универсальный агентный рантайм». Электронные помощники, исследовательские агенты, боты поддержки, аналитики финансов — всё это заявленные сценарии.

2026. Имя закрепляется в документации и релизах: старый Python-пакет claude-code-sdk (остановился на версии 0.0.25) официально помечен как deprecated, TypeScript-SDK внутри пакета @anthropic-ai/claude-code заморожен; вся новая функциональность — только в claude-agent-sdk.

Май–июнь 2026. Важное изменение модели монетизации. В мае 2026 Anthropic объявила, что с 15 июня программное использование (Agent SDK и headless-режим claude -p) перестанет «сгорать» из лимитов подписок Pro/Max/Team/Enterprise и перейдёт на отдельный ежемесячный кредит в долларах, тарифицируемый по стандартным API-ставкам. Кредиты: $20/мес для Pro, $100 для Max 5x, $200 для Max 20x; перенос неиспользованного остатка не предусмотрен. На фоне обратной реакции разработчиков компания в день вступления изменений в силу объявила о приостановке части планов — ситуация к моменту написания статьи остаётся подвижной, поэтому перед запуском продакшн-нагрузки стоит проверить актуальные условия на платформе Anthropic.

⚠️ Практический вывод: если ваш агент работает по подписке разработчика (OAuth claude.ai), учтите: для сторонних продуктов Anthropic не разрешает использовать логин claude.ai и его лимиты — требуется API-ключ с pay-as-you-go тарификацией.

Что такое Claude Agent SDK: возможности

Ключевая идея SDK — вы не пишете агентный цикл сами. Вы задаёте системный промпт, права доступа и набор инструментов, а библиотека ведёт диалог модели с инструментами до завершения задачи. Разберём основные возможности по блокам.

Встроенные инструменты

Из коробки доступны те же инструменты, что в Claude Code: чтение файлов (Read), запись (Write), точечное редактирование (Edit), выполнение команд (Bash), поиск по файлам и содержимому (Glob, Grep), веб-поиск и веб-запросы. Для типовых задач «агент должен разобраться в кодовой базе» это означает ноль работы с glue-кодом: модель сама решает, какой инструмент вызвать и когда остановиться.

Хуки жизненного цикла

Хуки — механизм запуска вашего кода в ключевых точках агентного цикла: PreToolUse, PostToolUse, Stop, SessionStart, SessionEnd, UserPromptSubmit. Это основной рычаг контроля: логирование аудита, блокировка опасных команд, валидация аргументов инструментов до их выполнения. В продакшн-системах хуки часто важнее самой модели — именно они заставляют агента работать в рамках политик безопасности.

Субагенты

Субагенты позволяют выделенным «специалистам» с собственными промптами и инструментами выполнять подзадачи параллельно или последовательно, возвращая результат главному агенту. Это решает проблему раздувания контекста: вместо того чтобы держать всю историю исследования в одном окне, исследовательский субагент работает отдельно и передаёт обратно только выжимку.

MCP — Model Context Protocol

Поддержка MCP — одно из главных конкурентных преимуществ SDK. Вы подключаете внешние источники данных и инструментов (базы данных, GitHub, Slack, браузерные инструменты) через стандартный протокол без написания адаптеров под каждый сервис. Экосистема MCP-серверов к 2026 году достаточно зрелая: для большинства популярных систем уже есть готовые серверы.

Сессии и память

SDK поддерживает сессии с сохранением контекста между обращениями, возможностью возобновления (resume) и ветвления (fork). Навыки (skills), команды и память подхватываются из каталогов .claude/ проекта и ~/.claude/ пользователя — так же, как в Claude Code. Это значит, что знания, накопленные командой в виде markdown-файлов памяти, автоматически доступны агенту.

Права доступа

Механизм permissions позволяет задать, какие инструменты выполняются автоматически, а какие требуют подтверждения человека. Для продакшн-агентов это базовая защита: чтение файлов — свободно, запись и команды — только после подтверждения человека.

Ограничения

Честно оговорим границы. SDK доступен только на Python и TypeScript; для других языков официальный путь — запуск CLI как subprocess с флагом -p и JSON-выводом. SDK работает исключительно с моделями Anthropic (Claude) — это не модель-агностичный фреймворк. И, что важно для планирования бюджета: стоимость использования — это стоимость токенов API плюс инфраструктура вашего процесса; «бесплатного» режима нет.

Как устроен агентный цикл

Понимание внутреннего устройства помогает правильно проектировать агента и не удивляться поведению. Цикл выглядит так:

  1. Ваше приложение передаёт SDK промпт, системные инструкции и конфигурацию (модель, инструменты, хуки, MCP-серверы).

  2. Модель планирует действия и формирует вызовы инструментов.

  3. SDK исполняет вызовы в вашем процессе — с применением правил permissions и хуков PreToolUse/PostToolUse.

  4. Результаты возвращаются модели; цикл повторяется, пока модель не решит, что задача завершена (срабатывает хук Stop).

  5. Итоговый ответ и состояние сессии доступны вашему приложению.

💡 Совет по внедрению: проектируйте агента как «узкую функцию» — одна сессия = одна чётко ограниченная задача («найти баг в модуле X», «составить отчёт по репозиторию Y»). Длинные многоцелевые диалоги деградируют: модель теряет фокус, а контекст раздувается. Для сложных пайплайнов используйте субагентов.

Сравнение с аналогами

Рассмотрим три основных альтернативы: OpenAI Agents SDK, LangGraph и «голый» API (Messages API) с ручным циклом инструментов.

OpenAI Agents SDK

Вышел в марте 2025 как развитие экспериментального проекта Swarm. Философия — минимализм: несколько примитивов (агенты, инструменты, handoffs, guardrails) и встроенный трейсинг. Handoffs — передача управления между агентами-специалистами; guardrails — проверки входа/выхода с возможностью прервать выполнение.

Ключевое отличие от Claude Agent SDK: OpenAI Agents SDK не даёт «тела» агенту в виде встроенных инструментов файловой системы и shell'а. Вы сами пишете инструменты под свои сервисы. Зато фреймворк тесно интегрирован с модельным рядом OpenAI (включая realtime/voice) и работает на любой модели, доступной через их API.

LangGraph

Путь оркестрации: вы строите граф состояний — узлы (вызовы моделей, инструменты, логика) и рёбра (условные переходы). Это максимальный контроль над маршрутизацией, параллельными ветками и длительными пайплайнами с сохранением состояния. Цена — крутая кривая обучения: вы проектируете агентную логику явно, а не «делегировали» её рантайму.

LangGraph модель-агностичен (OpenAI, Anthropic, локальные модели) и лучше всего подходит там, где процесс агента — это детерминированный workflow с ветвлениями, а не свободное планирование модели.

Messages API с ручным циклом

Самый низкоуровневый вариант: вы сами пишете цикл «запрос → tool_use → выполнение → tool_result → запрос». Полный контроль и минимальные абстракции, но весь glue-код — ваш: обработка прерванных вызовов, лимиты контекста, повторные попытки. Разумно только для специфических случаев или при глубокой кастомизации цикла.

Сводная таблица

Критерий Claude Agent SDK OpenAI Agents SDK LangGraph
Языки Python, TypeScript Python, TypeScript Python, JavaScript/TypeScript
Встроенные инструменты (FS, shell, веб) Да, из коробки Нет — свои Нет — свои
MCP-поддержка Глубокая, in-process серверы Через адаптеры Через адаптеры
Хуки жизненного цикла Да (6+ точек) Guardrails (вход/выход) Явная логика в узлах графа
Субагенты / handoffs Субагенты с изолированным контекстом Handoffs между агентами Узлы-подграфы
Сессии, resume/fork Встроенные Встроенные (sessions) Чекпоинты состояния графа
Модельная привязка Только Claude Ориентир на OpenAI, но не только Любая поддерживаемая модель
Контроль над маршрутизацией Через промпт и хуки Handoffs + guardrails Полный (граф состояний)
Порог входа Низкий — цикл уже написан за вас Средний — свой glue-код инструментов Высокий — проектируете граф
Типичный сценарий Код-агенты, research, инфраструктура Мультиагентные диалоги, voice Долгие workflow с ветвлениями и состоянием

⚠️ Типичная ошибка выбора: брать LangGraph «на всякий случай» для задачи, где агенту достаточно свободно планировать действия. Граф состояния — это инструмент для детерминированных пайплайнов; для свободных агентов он добавляет сложность без пользы. И наоборот: пытаться в Claude Agent SDK выстроить строгий workflow с ветвлениями — хуки и субагенты позволяют, но это борьба с архитектурой рантайма.

Практика: минимальный агент на Python

Покажем скелет агента, который разбирается в кодовой базе и пишет отчёт о найденных проблемах. Это не учебник по API — только ключевые точки конфигурации; полный референс есть в официальной документации.

import anyio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

async def main():
    options = ClaudeAgentOptions(
        system_prompt="Ты — инженер по качеству кода. "
                      "Используй инструменты для анализа и не выдумывай файлы.",
        allowed_tools=["Read", "Glob", "Grep"],  # только чтение: безопасно
    )
    async with ClaudeSDKClient(options) as client:
        await client.query(
            "Найди в каталоге src/ потенциальные SQL-инъекции и "
             "напиши отчёт findings.md с перечнем мест и рекомендаций."
        )
        # SDK сам ведёт цикл: модель читает файлы, ищет паттерны, пишет отчёт

anyio.run(main)

Что здесь важно для продакшна:

  • allowed_tools — явное ограничение инструментов. Агент не сможет выполнить команду или записать файл вне разрешённого списка. Это первый рубеж безопасности; второй — хуки PreToolUse, где можно валидировать аргументы каждого вызова.

  • Системный промпт задаёт роль и ограничения, но не заменяет контроль: модель может ошибаться, поэтому критичные действия (запись в БД, отправка сообщений) выносите за пределы инструментов агента — пусть агент только формирует данные для внешнего слоя.

  • Сессия через ClaudeSDKClient сохраняет контекст; при необходимости её можно возобновить или разветвить, не теряя накопленный анализ.

💡 Безопасность: даже с ограниченным набором инструментов агент имеет доступ к файловой системе процесса. Запускайте агентов в изолированной среде (контейнер, sandbox) — особенно если они работают с пользовательским вводом. Поверхностное копирование примеров из интернета без проверки на соответствие OWASP Top 10 может привести к скрытым уязвимостям: инъекции через имена файлов, обход ограничений через shell-интерпретацию и т.п. Для продакшн-решений рекомендуется привлечение специалистов с опытом — это снижает риски ошибок безопасности и архитектурных просчётов, которые обнаружатся только под нагрузкой.

Рекомендации по выбору

Ситуация Разумный выбор Почему
Агент работает с кодом/репозиториями, нужен быстрый старт Claude Agent SDK Встроенные FS/shell-инструменты и MCP экономят недели glue-кода
Мультиагентный диалог с передачей ролей, voice OpenAI Agents SDK Handoffs и guardrails — ядро фреймворка; интеграция с realtime
Долгий workflow: ветвления, параллельные ветки, чекпоинты, несколько моделей LangGraph Явный граф состояний даёт контроль над маршрутизацией и восстановлением
Максимальный контроль цикла, нестандартная логика Messages API + свой цикл Ноль абстракций — но весь glue-код на вас
Бюджет ограничен, нужна модель-агностичность LangGraph или OpenAI SDK (с локальными моделями) Claude Agent SDK привязан к тарифам Anthropic

Ещё несколько практических выводов:

  1. Не выбирайте фреймворк «на вырост». Начните с самого простого решения под текущую задачу; миграция между стеками — дорогая операция, и её легче избежать, если архитектура не разрослась раньше времени.

  2. Хуки и права доступа проектируйте до первого запуска, а не после инцидента. Агент с широкими правами доступа — готовый вектор атаки, особенно при работе с внешним вводом.

  3. Считайте токены. Агентные циклы многократны: одна задача может стоить в десятки раз дороже одного запроса-ответа. Профилируйте стоимость на типичных задачах до масштабирования — это экономит бюджет раньше, чем любой оптимизатор производительности.

  4. Экспертиза решает. Выбор SDK — лишь половина задачи; вторая половина — корректная реализация с учётом edge-кейсов, безопасности и масштабируемости. Команды, которые доверяют критичные агентные системы опытным разработчикам, экономят время на исправлении ошибок, которые могли быть предотвращены на этапе проектирования.

Заключение

Claude Agent SDK — это «тело» для Claude: готовый агентный рантайм с инструментами, хуками, субагентами и MCP, доступный в двух языках. Его сильные стороны — скорость старта для задач, связанных с файловой системой и командной строкой, и глубина интеграции с экосистемой MCP. Слабые стороны — привязка к моделям Anthropic и ограниченная языковая поддержка.

OpenAI Agents SDK выигрывает в мультиагентных диалогах и voice-сценариях, LangGraph — там, где нужен детерминированный workflow с полным контролем маршрутизации. Ни один из фреймворков не является универсальным: правильный выбор определяется формой задачи (свободное планирование против жёсткого пайплайна), модельной стратегией и требованиями к контролю.

Перед внедрением в продакшен проверьте три вещи: актуальные условия тарификации Anthropic (они менялись в мае–июне 2026), модель изоляции для агента с доступом к файлам, и бюджет токенов на типовые задачи. Инструмент мощный — но, как и любой мощный инструмент, он требует системного подхода: без опыта проектирования агентных систем высок риск уязвимостей безопасности и архитектурных просчётов, которые проявятся только после выхода на реальных пользователей.

Источники

AI-Помощник