Loading...
    • 开发者指南
    • API 参考
    • MCP
    • 资源
    • 发布说明
    Search...
    ⌘K

    第一步

    Claude 简介快速开始

    模型与定价

    模型概览选择模型Claude 4.5 的新功能迁移到 Claude 4.5模型弃用定价

    使用 Claude 构建

    功能概览使用 Messages API上下文窗口提示词最佳实践

    功能

    提示词缓存上下文编辑扩展思考流式消息批处理引用多语言支持Token 计数嵌入向量视觉PDF 支持Files API搜索结果Google Sheets 插件

    工具

    概述如何实现工具使用令牌高效的工具使用细粒度工具流式传输Bash 工具代码执行工具计算机使用工具文本编辑器工具Web fetch 工具网络搜索工具记忆工具

    代理技能

    概述在 API 中开始使用 Agent Skills技能创作最佳实践通过 API 使用 Agent Skills

    Agent SDK

    概览TypeScript SDKPython SDK

    指南

    流式输入处理权限会话管理托管 Agent SDK修改系统提示词SDK 中的 MCP自定义工具SDK 中的子代理SDK 中的斜杠命令SDK 中的代理技能跟踪成本和使用情况待办事项列表SDK 中的插件

    API 中的 MCP

    MCP 连接器远程 MCP 服务器

    Claude 在第三方平台上

    Amazon BedrockVertex AI

    提示词工程

    概述提示词生成器使用提示模板提示词改进器保持清晰和直接使用示例(多示例提示)让 Claude 思考(思维链)使用XML标签给Claude分配角色(系统提示)预填充 Claude 的响应链式复杂提示长文本技巧扩展思考技巧

    测试与评估

    定义成功标准开发测试用例使用评估工具减少延迟

    加强防护措施

    减少幻觉提高输出一致性缓解越狱handle-streaming-refusals减少提示词泄露保持Claude的角色特征

    管理和监控

    Admin API 概述使用量和成本 APIClaude Code 分析 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: "帮我构建一个 Web 应用程序",
      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="帮我构建一个 Web 应用程序",
        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