會話管理
Claude Agent SDK 提供會話管理功能,用於處理對話狀態和恢復。會話允許您在多次互動中繼續對話,同時保持完整的上下文。會話如何運作
當您開始新的查詢時,SDK 會自動創建一個會話,並在初始系統消息中返回會話 ID。您可以捕獲此 ID 以便稍後恢復會話。獲取會話 ID
恢復會話
SDK 支援從先前的對話狀態恢復會話,實現連續的開發工作流程。使用resume
選項配合會話 ID 來繼續先前的對話。
分叉會話
當恢復會話時,您可以選擇繼續原始會話或將其分叉為新的分支。預設情況下,恢復會繼續原始會話。使用forkSession
選項(TypeScript)或 fork_session
選項(Python)來創建一個從恢復狀態開始的新會話 ID。
何時分叉會話
分叉在以下情況下很有用:- 從同一起點探索不同的方法
- 創建多個對話分支而不修改原始對話
- 測試更改而不影響原始會話歷史
- 為不同實驗維護獨立的對話路徑
分叉與繼續
行為 | forkSession: false (預設) | forkSession: true |
---|---|---|
會話 ID | 與原始相同 | 生成新的會話 ID |
歷史 | 附加到原始會話 | 從恢復點創建新分支 |
原始會話 | 被修改 | 保持不變 |
使用情況 | 繼續線性對話 | 分支探索替代方案 |