send()/stream() 週期。API 表面縮減為三個概念:
createSession()/resumeSession():開始或繼續對話session.send():發送訊息session.stream():取得回應
安裝
Agent SDK 0.2.x 是包含 V2 介面的最後一個版本。套件版本從 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 介面
功能可用性
V2 會話 API 不支援每個 V1 功能。以下功能需要使用 V1 SDK:- 會話分叉(
forkSession選項) - 某些進階串流輸入模式
另請參閱
- TypeScript SDK 參考(V1) - 完整的 V1 SDK 文件
- SDK 概述 - 一般 SDK 概念
- GitHub 上的 V2 範例 - 工作程式碼範例