send()/stream() 周期。API 表面简化为三个概念:
createSession()/resumeSession():启动或继续对话session.send():发送消息session.stream():获取响应
安装
Agent SDK 0.2.x 是包含 V2 interface 的最后一个版本。包版本从 0.2.x 直接跳到 0.3.142,因此上面的移除版本和下面的安装固定版本描述的是同一个边界。要安装最后一个 V2 兼容版本,请固定主版本号和次版本号:SDK 为您的平台捆绑了一个本地 Claude Code 二进制文件作为可选依赖项,因此您无需单独安装 Claude Code。
快速开始
单次提示
对于不需要维护会话的简单单轮查询,使用unstable_v2_prompt()。此示例发送一个数学问题并记录答案:
基本会话
对于超出单个提示的交互,创建一个会话。V2 将发送和流式传输分为不同的步骤:send()分派您的消息stream()流式传输响应
await using(TypeScript 5.2+)在块退出时自动关闭会话。您也可以手动调用 session.close()。
多轮对话
会话在多个交换中保持上下文。要继续对话,请在同一会话上再次调用send()。Claude 会记住之前的轮次。
此示例提出一个数学问题,然后提出一个引用前一个答案的后续问题:
会话恢复
如果您有来自之前交互的会话 ID,您可以稍后恢复它。这对于长时间运行的工作流或当您需要在应用程序重新启动时保持对话时很有用。 此示例创建一个会话,存储其 ID,关闭它,然后恢复对话:清理
会话可以手动关闭或使用await using(TypeScript 5.2+ 功能用于自动资源清理)自动关闭。如果您使用的是较旧的 TypeScript 版本或遇到兼容性问题,请改用手动清理。
自动清理(TypeScript 5.2+):
API 参考
unstable_v2_createSession()
为多轮对话创建新会话。
unstable_v2_resumeSession()
按 ID 恢复现有会话。
unstable_v2_prompt()
用于单轮查询的单次便利函数。
SDKSession interface
功能可用性
V2 session API 不支持所有 V1 功能。以下功能需要使用 V1 SDK:- 会话分叉(
forkSession选项) - 某些高级流式输入模式
另请参阅
- TypeScript SDK 参考(V1) - 完整的 V1 SDK 文档
- SDK 概述 - 常规 SDK 概念
- GitHub 上的 V2 示例 - 工作代码示例