dsh-subscriptions:使用 Claude 和 ChatGPT/Codex 訂閱作爲模型提供者

前言

DeepSeek Harness(DSH)採用插件化架構,允許社區擴展其功能。當開發者希望複用已有的 Claude Code 或 Codex CLI 訂閱,而無需通過 API Key 方式接入時,dsh-subscriptions 插件提供了直接的解決方案。它通過 OAuth 登錄流程,將用戶本地的訂閱轉化爲 DSH 可識別的模型提供者。

插件介紹

名稱:dsh-subscriptions
作者:DevViking-Persike
類別:模型推理
許可證:MIT

該插件解決的核心問題是:在 DSH 生態中直接調用用戶已購買的 Claude 和 ChatGPT/Codex 訂閱服務,實現免 API Key 的模型推理。

核心功能

  • OAuth 登錄:通過 OAuth 流程獲取憑證,無需手動配置 API Key。
  • 雙路由支持:提供 /claude 和 /codex 兩條路由,分別對應不同的模型提供商。
  • 安全存儲:憑證原子寫入本地文件,文件權限設置爲 0600,並通過跨進程寫鎖防止衝突。
  • 模型支持:內置支持 GPT-6 Astra 和 Claude Fable 5.1 模型。
  • 安全設計:Token 不會出現在錯誤信息、日誌或狀態接口中,上游錯誤體在返回前會被脫敏。

安裝與啓用

首先執行安裝命令,安裝過程會自動處理依賴和補丁應用:

dsh plugin --profile web add github:DevViking-Persike/dsh-subscriptions

安裝完成後,重啓 dsh 進程以加載插件。

訪問以下地址進行 OAuth 登錄:
* Claude 路由:http://127.0.0.1:1458/claude/start
* Codex 路由:http://127.0.0.1:1458/codex/start

瀏覽器會跳轉至各廠商的官方登錄頁,登錄成功後,憑證會自動存儲在 ~/.dsh/ 目錄下。

配置與使用

安裝並重啓後,插件會默認監聽 127.0.0.1:1458。你可以在 DSH 的配置文件中調整以下參數:

基本配置項:

字段 默認值 說明
routes ['claude', 'codex'] 需要啓用的路由列表
controlPort 1458 本地監聽端口
streamIdleTimeoutMs 300000 傳輸層空閒超時時間

YAML 配置示例:

- id: dsh-subscriptions
  name: 'dsh-subscriptions'
  config:
    routes: ['claude']
    controlPort: 1458

接口使用:

  • 查看狀態:GET /<route>/status(返回連接狀態及 Token 過期時間)
  • 登出:POST /<route>/logout(清除本地憑證)

注意事項與限制

  1. 版本兼容性:插件對 Harness 版本敏感,需確保與當前 DSH 版本兼容。加載時會校驗分塊詞彙表,不匹配時拒絕掛載。
  2. 回調地址綁定:OAuth 回調地址固定綁定 127.0.0.1。如果你的主機將 localhost 解析爲 ::1(IPv6),瀏覽器回調將無法到達,導致登錄失敗。
  3. 靜態模型目錄:模型列表爲靜態配置,不支持自動發現。如果你的訂閱包含未在目錄中列出的模型,需在配置中顯式指定名稱。
  4. 圖片輸入依賴:圖片輸入功能依賴於 Harness 的附件服務(ctx.attachments)。未啓動該服務時,圖片請求會被拒絕。
  5. Codex 限制:通過 /codex 路由不支持設置 stop sequences。
  6. 憑證管理:若憑證刷新失敗,插件不會刪除本地存儲的憑證,需手動通過 POST /logout 清理。

總結

dsh-subscriptions 插件爲 DeepSeek Harness 用戶提供了直接複用現有 Claude 和 ChatGPT/Codex 訂閱的能力。通過 OAuth 方式,它簡化了 API Key 的管理流程,並注重憑證存儲的安全性。

  • GitHub 倉庫:https://github.com/DevViking-Persike/dsh-subscriptions
  • 插件目錄:https://www.skillhub.cn/plugins/DevViking-Persike/dsh-subscriptions
羽毛球分组比赛记分
小程序二维码

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

小夜