dsh-cursor:在 DeepSeek Harness 裏選用 Cursor 賬號下的模型

前言

DeepSeek Harness(DSH)把智能體循環、工具權限和沙箱放在同一套運行時裏,模型側通常對接各家 chat-completions 或兼容接口。Cursor 對外提供的是本地 Agent 運行時(prompt、工具面、模型選擇),而不是標準的「整段對話 → 一條流式 assistant 消息」形態。若你已經在 Cursor 賬號裏開通了可用模型,又希望在 DSH Web 的模型選擇器裏與 OpenAI、DeepSeek 等 provider 並列使用,就需要一層適配:dsh-cursor 在 Harness 裏註冊名爲 cursor 的 LLM provider,用 Cursor agent SDK 產出流式回覆,並把 Harness 的工具面橋接爲進程內 custom tools。下面介紹該插件的定位、安裝方式與使用注意。

這是什麼

dsh-cursor(GitHub:atticuswx/dsh-cursor)由社區維護者 atticuswx 發佈,分類屬於 模型推理。簡介爲:Cursor model provider for DeepSeek Harness — model catalog, multi-key management in Settings, browser login。

插件聲明與 Cursor / Anysphere 無官方從屬關係,屬於非官方集成;僅應在你有權使用的賬號上、並符合 Cursor 服務條款的前提下使用。當前 package 版本爲 0.2.0,許可證 MIT;兼容 DSH ^0.2.1-rc.2,運行環境要求 Node.js >= 22.13。

核心功能

安裝後,Cursor 賬號可選的模型會出現在 Harness 模型選擇器中;流式輸出由 Cursor agent SDK 產生,與 Harness 其它 provider 並列可選。

橋接方式(與 README 一致):

  • 每次請求把 Harness 會話(system、多輪對話、工具調用及結果)渲染成 一條 prompt,交給短生命週期的 Cursor agent;對 Harness 而言,單次請求仍是會話日誌的純函數。
  • 創建 agent 時使用 tools: ['mcp'],不註冊 Cursor 自帶的文件、shell、搜索、子 agent 等工具;模型能調用的只有本次請求裏 Harness 暴露、並經插件橋接的工具。
  • 模型發起工具調用時,插件 取消當前 Cursor run,把 tool call 交回 Harness;由 Harness 按自身權限、沙箱與審批 UI 執行,結果在下一輪請求帶回。
  • 文本與 thinking 經 onDelta 逐 token 流式返回;每輪上報 token usage。
  • Settings > Models 中提供 Cursor 行:多 API key 管理、單選 active key、模型目錄隨 active 賬號刷新(緩存約 10 分鐘);支持瀏覽器登錄 CLI 作爲無託管 key 時的兜底憑證鏈。

可用能力: 模型選擇、流式文本與 reasoning、token 用量;Harness 完整工具面(bash、文件編輯、grep、todos、子 agent、MCP 等)仍由 Harness 權限與沙箱負責;會話標題、compaction 等輔助模型調用也可走該 provider。

已知限制: 每輪重放完整 transcript(輸入 token 統計高於原生 provider);工具調用會結束 Cursor run;無圖片輸入(附件改爲文本佔位);輔助調用各佔用一次 Cursor agent run。

安裝與啓用

從 GitHub 安裝(資料原文命令):

dsh plugin --profile web add github:atticuswx/dsh-cursor

包內聲明 DSH bundle patch,安裝後會自動掛載 provider。刷新頁面或重啓 dsh web 後,打開 Settings > Models,會出現 Cursor 行及 API key 卡片。該包未發佈到 npm,需從 GitHub 或本地 checkout 安裝。

本地目錄安裝(README 亦給出,供已有源碼時使用):

git clone https://github.com/atticuswx/dsh-cursor
dsh plugin --profile web add ./dsh-cursor
# 或: dsh plugin --profile web add ./dist/dsh-cursor-0.2.0.tgz

插件以當前 DSH 進程權限運行;安裝前請自行查看倉庫源碼與 MIT 許可證,確認符合你的合規要求。

API Key 與瀏覽器登錄

在 Settings > Models > Cursor 中:

  • Add key:粘貼 key 並設標籤;首個 key 自動成爲 active。
  • 單選按鈕切換 active key;請求以該賬號鑑權,模型目錄隨 active key 變化(切換後重新打開模型選擇器以加載新賬號模型)。
  • Replace key / Delete 管理密鑰;標籤可改而不動 secret。密鑰經 Harness credentials 服務存爲 CURSOR_KEY_* 引用,頁面僅顯示引用與末四位;列表與選中狀態在插件 settings 中持久化,secret 在 $DSH_HOME/.credentials.yaml。

無託管 key 時,按順序回退:CURSOR_API_KEY(Models 頁字段)→ 環境變量 CURSOR_API_KEY → npx dsh-cursor login 寫入的 ~/.cursor/sdk/auth.json。

Key 在 https://cursor.com/dashboard/api 創建;Team admin API key 不受 Cursor SDK 支持,需用戶 key 或服務賬號 key。

瀏覽器登錄(單 key、不改 settings 卡片時):

npx dsh-cursor login     # 打開 Cursor,在用戶目錄存 API key
npx dsh-cursor status    # 是否已登錄
npx dsh-cursor models    # 當前賬號可選 model id
npx dsh-cursor logout    # 清除本地登錄

README 說明:npx dsh-cursor login 僅在本倉庫 checkout 或全局 git 安裝後可靠;直接向 Settings 卡片粘貼 key 無需 CLI。

模型目錄與離線配置

目錄來自 active 賬號的 Cursor.models.list(),按憑證緩存 10 分鐘。Cursor 側 thinking 類參數會映射到 Harness reasoning 選擇器。

若無法自動發現(例如隔離環境),可在插件配置中顯式列出 model id:

- id: dsh-cursor
  name: dsh-cursor
  config:
    apiKeyEnv: CURSOR_API_KEY
    models:
      - composer-2
      - gpt-5

故障排查(節選)

現象 處理
模型選擇器無 Cursor 模型 無 active key:在 Settings 添加、粘貼 key,或 npx dsh-cursor status / login
會話 AUTH 失敗 active key 或回退憑證過期/撤銷:Replace key 或重新登錄
CURSOR_UNAVAILABLE @cursor/sdk 未加載;重裝包;主機需 Node.js 22.13+
INVALID_REQUEST 指名模型 該 id 不在賬號可用列表;運行 npx dsh-cursor models
QUOTA Cursor 計劃對該模型無剩餘用量

適用場景與注意

適合:已在 Cursor 開通模型、希望在 DSH Web 統一編排智能體與工具,且接受「Cursor 只作推理後端、工具執行仍在 Harness」這一分工的開發者。

注意:非官方集成;每輪全量 transcript;無多模態圖片;插件與 DSH 同進程權限。社區目錄頁 skillhub.cn/plugins/atticuswx/dsh-cursor 與 GitHub 倉庫相互獨立索引,並非 DeepSeek / 幻方官方應用商店。

結尾

dsh-cursor 把 Cursor 賬號下的模型目錄與 agent SDK 流式能力接入 DSH 的 cursor provider,並在 Settings 中集中管理多 key 與 active 賬號。安裝命令以 README 爲準;細節與開發說明見 GitHub:atticuswx/dsh-cursor,目錄介紹見 skillhub.cn/plugins/atticuswx/dsh-cursor。

羽毛球分组比赛记分
小程序二维码

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

小夜