《Cursor文檔》-SDK 更新日誌

Cursor SDK 的最新功能、改進和修復,涵蓋 npm 上的 @cursor/sdk 和 PyPI 上的 cursor-sdk

1.0.27

  • 限制智能體的工具集。 tools 可將模型可用的內置工具限定在允許列表中 ([] 表示僅文本) ,disallowedTools 則會移除指定工具,同時保留其餘工具。兩者都接受 "read" 等公開名稱,以及 "shell""mcp" 等能力組;TypeScript 中使用 toolsdisallowedTools,Python 中使用 toolsdisallowed_tools。目前僅支持本地智能體,且不會在 resume 後保留。
  • 在 TypeScript 中通過瀏覽器登錄。 Cursor.auth.login() 會打開瀏覽器登錄流程、生成 API 密鑰,並將其存儲在 ~/.cursor/sdk/auth.json 中;Cursor.auth.status()Cursor.auth.logout() 則提供其餘相關功能。登錄後,Agent.create()Cursor.* 的讀取操作無需 apiKeyCURSOR_API_KEY
  • 本地智能體的用量和成本。 TypeScript 中的 agent.getUsage() 和 Python 中的 agent.get_usage() 現也支持本地智能體,並返回按輪次細分的數據。傳入先前結果中的 runId 可將範圍縮小到單個輪次。
  • 以 Cursor GitHub App 身份創建 PR。 TypeScript 中的 cloud.openAsCursorGithubApp 和 Python 中的 open_as_cursor_github_app 用於控制 PR 的作者身份。服務賬戶密鑰默認使用該 App 身份;用戶密鑰默認使用密鑰所有者身份。
  • 多根本地工作區。 傳入 local.dirs 可從多個文件夾加載規則、技能和項目上下文;cwd 仍是唯一的主工作目錄。這替代了 cwd 的數組形式,後者始終只使用第一項。
  • 更清晰的 Python 錯誤。 先前僅顯示爲“內部錯誤”的失敗現在會包含底層消息和代碼。
  • 管理員命令拒絕列表適用於本地運行。 與團隊管理員拒絕列表匹配的 shell 命令會在執行前被策略消息拒絕,包括會跳過批准提示的路徑。

1.0.26

  • 首次發送前預熱本地工作區。 platform.prewarmLocalWorkspace(options) 會預先解析規則、技能、MCP 服務器和忽略文件,因此首次對該工作區調用 send() 時可立即開始。它會返回一個可在關閉時調用的 release 函數。
  • 控制工作區掃描的緩存時長。 configureCursorSdk({ local: { workspaceScanCacheTtlMs } }) 可設置工作區掃描的緩存時長,CURSOR_RIPWALK_CACHE_TTL_MS 環境變量可爲託管部署設置相同的值。長期運行且使用穩定 checkout 的服務器現在可跳過重複掃描。
  • 自定義工具無需批准提示即可運行。 通過 customTools 傳入的主機定義工具,在沙盒化或 Auto-review 模式的本地運行中不再因交互式批准錯誤而失敗。拒絕規則和沙盒限額仍然適用。
  • 已簽名的 macOS 二進制文件。 @cursor/sdk 的 macOS 平臺包現在提供經過代碼簽名的二進制文件,因此不再被 Gatekeeper 和端點安全工具攔截。
  • 更清晰的 Python 異常層級。 PermissionDeniedErrorBadRequestErrorInternalServerError 現在直接繼承自 CursorSDKError,而非 AuthenticationErrorConfigurationErrorNetworkError,因此 except 塊會捕獲名稱所對應的異常。
  • 修復 Python 中偶發的啓動失敗。 大約每 64 次智能體啓動中就有 1 次會在首次發送前失敗。現在啓動已更加可靠。

1.0.25

  • 按需獲取已計費用量和費用。 TypeScript 中的 agent.getUsage() 和 Python 中的 agent.get_usage() 可返回雲端代理的 token 用量、已計費用及按每次運行劃分的明細,Agent.getUsage(agentId) 無需 handle 即可使用。費用由服務器計算,包含折扣,並會在運行結束後不久結算。目前僅支持雲端;本地運行會拋出帶類型的配置錯誤。

1.0.24

  • TypeScript 和 Python 現已同步發佈。 從 1.0.24 起,npm 上的 @cursor/sdk 與 PyPI 上的 cursor-sdk 均從同一版本發佈,並使用相同的版本號。Python 版本不再落後於 TypeScript。
  • 長時間運行的流更可靠。 高負載運行中的流式響應不再會在中途斷開;此前,這在長輪次中會表現爲 Python 客戶端的網絡錯誤。

1.0.23

  • Cloud 運行中每次發送的環境變量。 傳入 send(prompt, { cloud: { envVars } }) 可將環境變量限定於單次運行,包括創建智能體時的首次發送。Agent.create({ cloud: { envVars } }) 仍會設置智能體級別的默認值。
  • 失敗運行的錯誤詳情。 失敗的本地和 Cloud 運行現在會提供包含 messagecode 字段的結構化錯誤,無需解析日誌即可瞭解具體問題。run.wait() 的行爲保持不變。
  • Python 中的 token 用量。 運行流會發出包含每輪 token 計數的類型化 usage 消息,累積總量可通過 run.usageRunResult.usage 獲取,與 1.0.22 的 TypeScript 保持一致。
  • 更可靠的本地運行歷史記錄。 磁盤上的運行歷史記錄現在可在寫入中斷後保持完整,修復了進程崩潰後導致運行無法恢復的一類問題。
  • 修復 Bun 中的流式傳輸停滯問題。 Bun 下的運行流在長響應時不再停滯。

1.0.22

  • 每次運行的 Token 用量。 本地運行會通過 run.stream() 爲每輪發出 usage 事件,並通過 run.wait() 返回累計總量。雲端運行也會在其流和 wait() 結果中提供相同的用量;對於已分離的本地句柄,累計總量會持久保存,因此重新連接的進程仍可獲取這些數據。

1.0.21

  • 支持在 Bun 下運行智能體。 agent.send() 現可在 Bun 下運行,行爲與 Node 中一致。此更新還修復了新安裝的 Node 可能缺少必需依賴的問題。
  • Python 中更易用的運行時名稱。 List API 和 get_run 現支持 runtime="cloud""local""auto",與文檔中列出的值一致。

1.0.20

  • SDK 現已可在 Bun 中正常導入。 在 Bun 中導入 @cursor/sdk 不再會崩潰。Bun 中運行智能體將於 1.0.21 支持。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜