Loading...
    • Руководство разработчика
    • Справочник API
    • MCP
    • Ресурсы
    • Примечания к выпуску
    Search...
    ⌘K
    Первые шаги
    Введение в ClaudeБыстрый старт
    Модели и цены
    Обзор моделейВыбор моделиЧто нового в Claude 4.5Миграция на Claude 4.5Устаревшие моделиЦены
    Разработка с Claude
    Обзор функцийИспользование Messages APIКонтекстные окнаЛучшие практики промптинга
    Возможности
    Кеширование промптовРедактирование контекстаРасширенное мышлениеУсилиеПотоковая передача сообщенийПакетная обработкаЦитированияМногоязычная поддержкаПодсчет токеновEmbeddingsЗрениеПоддержка PDFFiles APIРезультаты поискаСтруктурированные выходные данные
    Инструменты
    ОбзорКак реализовать использование инструментовПотоковая передача инструментов с детализациейИнструмент BashИнструмент выполнения кодаПрограммное вызывание инструментовИнструмент управления компьютеромИнструмент текстового редактораИнструмент веб-выборкиИнструмент веб-поискаИнструмент памятиИнструмент поиска инструментов
    Agent Skills
    ОбзорБыстрый стартЛучшие практикиИспользование Skills с API
    Agent SDK
    ОбзорБыстрый стартTypeScript SDKTypeScript V2 (предпросмотр)Python SDKРуководство по миграции
    MCP в API
    MCP коннекторУдаленные MCP серверы
    Claude на платформах третьих сторон
    Amazon BedrockMicrosoft FoundryVertex AI
    Инженерия промптов
    ОбзорГенератор промптовИспользование шаблонов промптовУлучшитель промптовБудьте ясны и прямолинейныИспользуйте примеры (многошаговый промптинг)Дайте Claude подумать (CoT)Используйте XML тегиДайте Claude роль (системные промпты)Предзаполните ответ ClaudeЦепочка сложных промптовСоветы по длинному контекстуСоветы по расширенному мышлению
    Тестирование и оценка
    Определение критериев успехаРазработка тестовых случаевИспользование инструмента оценкиСнижение задержки
    Усиление защиты
    Снижение галлюцинацийПовышение согласованности выходных данныхСмягчение взломовПотоковые отказыСнижение утечки промптовДержите Claude в образе
    Администрирование и мониторинг
    Обзор Admin APIAPI использования и затратClaude Code Analytics API
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    Agent SDK

    Быстрый старт

    Начните работу с Python или TypeScript Agent SDK для создания AI-агентов, которые работают автономно

    Используйте Agent SDK для создания AI-агента, который читает ваш код, находит ошибки и исправляет их, всё без ручного вмешательства.

    Что вы будете делать:

    1. Настроить проект с Agent SDK
    2. Создать файл с некорректным кодом
    3. Запустить агента, который автоматически находит и исправляет ошибки

    Предварительные требования

    • Node.js 18+ или Python 3.10+
    • Аккаунт Anthropic (зарегистрируйтесь здесь)

    Настройка

    1. 1

      Установить Claude Code

      Agent SDK использует Claude Code в качестве своей среды выполнения. Установите его для вашей платформы:

      После установки Claude Code на вашу машину запустите claude в терминале и следуйте подсказкам для аутентификации. SDK будет использовать эту аутентификацию автоматически.

      Для получения дополнительной информации об установке Claude Code см. Настройка Claude Code.

    2. 2

      Создать папку проекта

      Создайте новый каталог для этого быстрого старта:

      mkdir my-agent && cd my-agent

      Для ваших собственных проектов вы можете запустить SDK из любой папки; по умолчанию он будет иметь доступ к файлам в этом каталоге и его подкаталогах.

    3. 3

      Установить SDK

      Установите пакет Agent SDK для вашего языка программирования:

    4. 4

      Установить ваш API ключ

      Если вы уже аутентифицировали Claude Code (запустив claude в терминале), SDK будет использовать эту аутентификацию автоматически.

      В противном случае вам нужен API ключ, который вы можете получить из Anthropic Console.

      Создайте файл .env в каталоге вашего проекта и сохраните там API ключ:

      ANTHROPIC_API_KEY=your-api-key

      Используете Amazon Bedrock, Google Vertex AI или Microsoft Azure? Смотрите руководства по настройке для Bedrock, Vertex AI или Azure AI Foundry.

      Если не было предварительного одобрения, мы не разрешаем сторонним разработчикам предлагать вход Claude.ai или ограничения скорости для своих продуктов, включая агентов, созданных на основе Claude Agent SDK. Вместо этого используйте методы аутентификации через API ключ, описанные в этом документе.

    Создать файл с ошибками

    Этот быстрый старт проведёт вас через создание агента, который может находить и исправлять ошибки в коде. Сначала вам нужен файл с некоторыми намеренными ошибками для исправления агентом. Создайте utils.py в каталоге my-agent и вставьте следующий код:

    def calculate_average(numbers):
        total = 0
        for num in numbers:
            total += num
        return total / len(numbers)
    
    def get_user_name(user):
        return user["name"].upper()

    Этот код содержит две ошибки:

    1. calculate_average([]) падает с ошибкой деления на ноль
    2. get_user_name(None) падает с TypeError

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

    Создайте agent.py, если вы используете Python SDK, или agent.ts для TypeScript:

    import asyncio
    from claude_agent_sdk import query, ClaudeAgentOptions, AssistantMessage, ResultMessage
    
    async def main():
        # Agentic loop: streams messages as Claude works
        async for message in query(
            prompt="Review utils.py for bugs that would cause crashes. Fix any issues you find.",
            options=ClaudeAgentOptions(
                allowed_tools=["Read", "Edit", "Glob"],  # Tools Claude can use
                permission_mode="acceptEdits"            # Auto-approve file edits
            )
        ):
            # Print human-readable output
            if isinstance(message, AssistantMessage):
                for block in message.content:
                    if hasattr(block, "text"):
                        print(block.text)              # Claude's reasoning
                    elif hasattr(block, "name"):
                        print(f"Tool: {block.name}")   # Tool being called
            elif isinstance(message, ResultMessage):
                print(f"Done: {message.subtype}")      # Final result
    
    asyncio.run(main())

    Этот код состоит из трёх основных частей:

    1. query: основная точка входа, которая создаёт цикл агента. Она возвращает асинхронный итератор, поэтому вы используете async for для потоковой передачи сообщений по мере работы Claude. Полный API см. в справочнике Python или TypeScript SDK.

    2. prompt: то, что вы хотите, чтобы Claude сделал. Claude определяет, какие инструменты использовать на основе задачи.

    3. options: конфигурация для агента. В этом примере используется allowedTools для ограничения Claude инструментами Read, Edit и Glob, а также permissionMode: "acceptEdits" для автоматического одобрения изменений файлов. Другие опции включают systemPrompt, mcpServers и другие. Смотрите все опции для Python или TypeScript.

    Цикл async for продолжает работать, пока Claude думает, вызывает инструменты, наблюдает результаты и решает, что делать дальше. Каждая итерация выдаёт сообщение: рассуждение Claude, вызов инструмента, результат инструмента или окончательный результат. SDK обрабатывает оркестровку (выполнение инструментов, управление контекстом, повторные попытки), поэтому вы просто потребляете поток. Цикл заканчивается, когда Claude завершает задачу или возникает ошибка.

    Обработка сообщений внутри цикла фильтрует вывод, удобный для чтения человеком. Без фильтрации вы увидите необработанные объекты сообщений, включая инициализацию системы и внутреннее состояние, что полезно для отладки, но в остальном шумно.

    В этом примере используется потоковая передача для отображения прогресса в реальном времени. Если вам не нужен живой вывод (например, для фоновых заданий или конвейеров CI), вы можете собрать все сообщения сразу. Подробнее см. Потоковая передача в сравнении с однооборотным режимом.

    Запустить ваш агент

    Ваш агент готов. Запустите его с помощью следующей команды:

    python3 agent.py

    После запуска проверьте utils.py. Вы увидите защитный код, обрабатывающий пустые списки и нулевых пользователей. Ваш агент автономно:

    1. Прочитал utils.py для понимания кода
    2. Проанализировал логику и выявил граничные случаи, которые вызовут сбой
    3. Отредактировал файл, чтобы добавить надлежащую обработку ошибок

    Это то, что отличает Agent SDK: Claude выполняет инструменты напрямую вместо того, чтобы просить вас их реализовать.

    Если вы видите "Claude Code not found", установите Claude Code и перезагрузите терминал. Для "API key not found" установите ваш API ключ. Дополнительную помощь см. в полном руководстве по устранению неполадок.

    Попробуйте другие подсказки

    Теперь, когда ваш агент настроен, попробуйте некоторые другие подсказки:

    • "Add docstrings to all functions in utils.py"
    • "Add type hints to all functions in utils.py"
    • "Create a README.md documenting the functions in utils.py"

    Настроить ваш агент

    Вы можете изменить поведение вашего агента, изменив опции. Вот несколько примеров:

    Добавить возможность веб-поиска:

    options=ClaudeAgentOptions(
        allowed_tools=["Read", "Edit", "Glob", "WebSearch"],
        permission_mode="acceptEdits"
    )

    Дать Claude пользовательскую системную подсказку:

    options=ClaudeAgentOptions(
        allowed_tools=["Read", "Edit", "Glob"],
        permission_mode="acceptEdits",
        system_prompt="You are a senior Python developer. Always follow PEP 8 style guidelines."
    )

    Запустить команды в терминале:

    options=ClaudeAgentOptions(
        allowed_tools=["Read", "Edit", "Glob", "Bash"],
        permission_mode="acceptEdits"
    )

    С включённым Bash попробуйте: "Write unit tests for utils.py, run them, and fix any failures"

    Ключевые концепции

    Инструменты контролируют, что может делать ваш агент:

    ИнструментыЧто может делать агент
    Read, Glob, GrepАнализ только для чтения
    Read, Edit, GlobАнализ и изменение кода
    Read, Edit, Bash, Glob, GrepПолная автоматизация

    Режимы разрешений контролируют, сколько человеческого надзора вы хотите:

    РежимПоведениеВариант использования
    acceptEditsАвтоматически одобряет редактирование файлов, запрашивает другие действияНадёжные рабочие процессы разработки
    bypassPermissionsРаботает без подсказокКонвейеры CI/CD, автоматизация
    defaultТребует обратного вызова canUseTool для обработки одобренияПользовательские потоки одобрения

    Приведённый выше пример использует режим acceptEdits, который автоматически одобряет файловые операции, чтобы агент мог работать без интерактивных подсказок. Если вы хотите запрашивать у пользователей одобрение, используйте режим default и предоставьте обратный вызов canUseTool, который собирает пользовательский ввод. Для большего контроля см. Разрешения.

    Следующие шаги

    Теперь, когда вы создали своего первого агента, узнайте, как расширить его возможности и адаптировать его к вашему варианту использования:

    • Разрешения: контролируйте, что может делать ваш агент и когда ему нужно одобрение
    • Хуки: запускайте пользовательский код до или после вызовов инструментов
    • Сессии: создавайте многооборотных агентов, которые сохраняют контекст
    • MCP серверы: подключайтесь к базам данных, браузерам, API и другим внешним системам
    • Хостинг: развёртывайте агентов в Docker, облако и CI/CD
    • Примеры агентов: смотрите полные примеры: помощник по электронной почте, исследовательский агент и другие
    • Предварительные требования
    • Настройка
    • Создать файл с ошибками
    • Создать агента, который находит и исправляет ошибки
    • Запустить ваш агент
    • Попробуйте другие подсказки
    • Настроить ваш агент
    • Ключевые концепции
    • Следующие шаги