Loading...
    • Руководство разработчика
    • Справочник API
    • MCP
    • Ресурсы
    • Примечания к выпуску
    Search...
    ⌘K

    Первые шаги

    Введение в ClaudeБыстрый старт

    Модели и цены

    Обзор моделейВыбор моделиЧто нового в Claude 4.5Миграция на Claude 4.5Снятие моделей с поддержкиЦены

    Создавайте с Claude

    Обзор функцийРабота с API MessagesКонтекстные окнаЛучшие практики создания промптов

    Возможности

    Кэширование подсказокРедактирование контекстаРасширенное мышлениеПотоковые сообщенияПакетная обработкаЦитированиеМногоязычная поддержкаПодсчет токеновЭмбеддингиЗрениеПоддержка PDFFiles APIРезультаты поискаДополнение для Google Sheets

    Инструменты

    ОбзорКак реализовать использование инструментовЭкономное использование инструментов по токенамДетализированная потоковая передача инструментовИнструмент BashИнструмент выполнения кодаИнструмент компьютерного управленияИнструмент текстового редактораИнструмент веб-выборкиИнструмент веб-поискаИнструмент памяти

    Навыки агента

    Навыки агентаНачало работы с Agent Skills в APIЛучшие практики создания SkillsИспользование Agent Skills с API

    SDK для агентов

    ОбзорСправочник Agent SDK - TypeScriptСправочник Agent SDK - Python

    Руководства

    Потоковый вводУправление разрешениямиУправление сессиямиРазмещение Agent SDKИзменение системных промптовMCP в SDKПользовательские инструментыСубагенты в SDKСлэш-команды в SDKНавыки агента в SDKОтслеживание затрат и использованияСписки задачПлагины в SDK

    MCP в API

    MCP коннекторУдаленные MCP серверы

    Claude на сторонних платформах

    Amazon BedrockVertex AI

    Инженерия подсказок

    ОбзорГенератор промптовИспользование шаблонов промптовУлучшитель промптовБудьте ясными и прямымиИспользуйте примеры (мультишотовый промптинг)Позвольте Claude думать (CoT)Используйте XML-тегиНазначьте роль Claude (системные промпты)Предварительное заполнение ответа ClaudeЦепочки сложных промптовСоветы по длинному контекстуСоветы по расширенному мышлению

    Тестирование и оценка

    Определите критерии успехаРазработка тестовых случаевИспользование инструмента оценкиСнижение задержки

    Усилить защиту

    Уменьшение галлюцинацийПовышение согласованности выводаПредотвращение взломаhandle-streaming-refusalsУменьшение утечки промптаПоддержание характера Claude

    Администрирование и мониторинг

    Обзор Admin APIAPI использования и стоимостиClaude Code Analytics API
    Console
    Руководства

    Управление сессиями

    Понимание того, как Claude Agent SDK обрабатывает сессии и возобновление сессий

    Управление сессиями

    Claude Agent SDK предоставляет возможности управления сессиями для обработки состояния разговора и возобновления. Сессии позволяют вам продолжать разговоры через множественные взаимодействия, сохраняя полный контекст.

    Как работают сессии

    Когда вы начинаете новый запрос, SDK автоматически создает сессию и возвращает ID сессии в начальном системном сообщении. Вы можете захватить этот ID для возобновления сессии позже.

    Получение ID сессии

    TypeScript
    import { query } from "@anthropic-ai/claude-agent-sdk"
    
    let sessionId: string | undefined
    
    const response = query({
      prompt: "Помоги мне создать веб-приложение",
      options: {
        model: "claude-sonnet-4-5"
      }
    })
    
    for await (const message of response) {
      // Первое сообщение - это системное сообщение инициализации с ID сессии
      if (message.type === 'system' && message.subtype === 'init') {
        sessionId = message.session_id
        console.log(`Сессия начата с ID: ${sessionId}`)
        // Вы можете сохранить этот ID для последующего возобновления
      }
    
      // Обработка других сообщений...
      console.log(message)
    }
    
    // Позже вы можете использовать сохраненный sessionId для возобновления
    if (sessionId) {
      const resumedResponse = query({
        prompt: "Продолжи с того места, где мы остановились",
        options: {
          resume: sessionId
        }
      })
    }
    Python
    from claude_agent_sdk import query, ClaudeAgentOptions
    
    session_id = None
    
    async for message in query(
        prompt="Помоги мне создать веб-приложение",
        options=ClaudeAgentOptions(
            model="claude-sonnet-4-5"
        )
    ):
        # Первое сообщение - это системное сообщение инициализации с ID сессии
        if hasattr(message, 'subtype') and message.subtype == 'init':
            session_id = message.data.get('session_id')
            print(f"Сессия начата с ID: {session_id}")
            # Вы можете сохранить этот ID для последующего возобновления
    
        # Обработка других сообщений...
        print(message)
    
    # Позже вы можете использовать сохраненный session_id для возобновления
    if session_id:
        async for message in query(
            prompt="Продолжи с того места, где мы остановились",
            options=ClaudeAgentOptions(
                resume=session_id
            )
        ):
            print(message)

    Возобновление сессий

    SDK поддерживает возобновление сессий из предыдущих состояний разговора, обеспечивая непрерывные рабочие процессы разработки. Используйте опцию resume с ID сессии для продолжения предыдущего разговора.

    import { query } from "@anthropic-ai/claude-agent-sdk"
    
    // Возобновление предыдущей сессии, используя ее ID
    const response = query({
      prompt: "Продолжи реализацию системы аутентификации с того места, где мы остановились",
      options: {
        resume: "session-xyz", // ID сессии из предыдущего разговора
        model: "claude-sonnet-4-5",
        allowedTools: ["Read", "Edit", "Write", "Glob", "Grep", "Bash"]
      }
    })
    
    // Разговор продолжается с полным контекстом из предыдущей сессии
    for await (const message of response) {
      console.log(message)
    }

    SDK автоматически обрабатывает загрузку истории разговора и контекста при возобновлении сессии, позволяя Claude продолжить точно с того места, где он остановился.

    Разветвление сессий

    При возобновлении сессии вы можете выбрать либо продолжить оригинальную сессию, либо разветвить ее в новую ветку. По умолчанию возобновление продолжает оригинальную сессию. Используйте опцию forkSession (TypeScript) или fork_session (Python) для создания нового ID сессии, который начинается с возобновленного состояния.

    Когда разветвлять сессию

    Разветвление полезно, когда вы хотите:

    • Исследовать различные подходы с одной и той же отправной точки
    • Создать множественные ветки разговора без изменения оригинала
    • Тестировать изменения без влияния на историю оригинальной сессии
    • Поддерживать отдельные пути разговора для различных экспериментов

    Разветвление против продолжения

    ПоведениеforkSession: false (по умолчанию)forkSession: true
    ID сессииТот же, что и оригинальныйГенерируется новый ID сессии
    ИсторияДобавляется к оригинальной сессииСоздает новую ветку с точки возобновления
    Оригинальная сессияИзмененаСохранена без изменений
    Случай использованияПродолжить линейный разговорРазветвиться для исследования альтернатив

    Пример: Разветвление сессии

    import { query } from "@anthropic-ai/claude-agent-sdk"
    
    // Сначала захватите ID сессии
    let sessionId: string | undefined
    
    const response = query({
      prompt: "Помоги мне спроектировать REST API",
      options: { model: "claude-sonnet-4-5" }
    })
    
    for await (const message of response) {
      if (message.type === 'system' && message.subtype === 'init') {
        sessionId = message.session_id
        console.log(`Оригинальная сессия: ${sessionId}`)
      }
    }
    
    // Разветвите сессию, чтобы попробовать другой подход
    const forkedResponse = query({
      prompt: "Теперь давайте перепроектируем это как GraphQL API вместо этого",
      options: {
        resume: sessionId,
        forkSession: true,  // Создает новый ID сессии
        model: "claude-sonnet-4-5"
      }
    })
    
    for await (const message of forkedResponse) {
      if (message.type === 'system' && message.subtype === 'init') {
        console.log(`Разветвленная сессия: ${message.session_id}`)
        // Это будет другой ID сессии
      }
    }
    
    // Оригинальная сессия остается неизменной и все еще может быть возобновлена
    const originalContinued = query({
      prompt: "Добавь аутентификацию к REST API",
      options: {
        resume: sessionId,
        forkSession: false,  // Продолжить оригинальную сессию (по умолчанию)
        model: "claude-sonnet-4-5"
      }
    })
    • Как работают сессии
    • Получение ID сессии
    • Возобновление сессий
    • Разветвление сессий
    • Когда разветвлять сессию
    • Разветвление против продолжения
    • Пример: Разветвление сессии
    © 2025 ANTHROPIC PBC

    Products

    • Claude
    • Claude Code
    • Max plan
    • Team plan
    • Enterprise plan
    • Download app
    • Pricing
    • Log in

    Features

    • Claude and Slack
    • Claude in Excel

    Models

    • Opus
    • Sonnet
    • Haiku

    Solutions

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

    Claude Developer Platform

    • Overview
    • Developer docs
    • Pricing
    • Amazon Bedrock
    • Google Cloud’s Vertex AI
    • Console login

    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

    Help and security

    • Availability
    • Status
    • Support center

    Terms and policies

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

    Products

    • Claude
    • Claude Code
    • Max plan
    • Team plan
    • Enterprise plan
    • Download app
    • Pricing
    • Log in

    Features

    • Claude and Slack
    • Claude in Excel

    Models

    • Opus
    • Sonnet
    • Haiku

    Solutions

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

    Claude Developer Platform

    • Overview
    • Developer docs
    • Pricing
    • Amazon Bedrock
    • Google Cloud’s Vertex AI
    • Console login

    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

    Help and security

    • Availability
    • Status
    • Support center

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    © 2025 ANTHROPIC PBC