dsh-anthropic-membership: 無需 API Key 登錄 Claude Pro/Max

前言

DeepSeek Harness (DSH) 的插件機制允許擴展其功能。在集成 Anthropic 模型時,開發者常遇到兩個具體問題:一是缺乏 Anthropic API Key 時無法使用 Pro/Max 訂閱權限;二是 DSH 在處理 100 萬上下文窗口時,因圖片尺寸過大(超過 2000px)或 /compact 壓縮調用失敗而導致會話凍結。dsh-anthropic-membership 旨在解決這兩個限制。

核心功能

該插件提供以下能力:

  1. OAuth 登錄:利用 Anthropic 的 membership OAuth grant 登錄 Pro/Max,無需輸入 API Key。
  2. 圖片尺寸限制:將請求圖片的長邊下采樣至 2000px,避免因尺寸過大被拒絕。
  3. 上下文壓縮優化:精簡 /compact 調用,丟棄圖片和推理內容,截斷過長的工具文本,使 100 萬上下文窗口的壓縮操作能夠成功執行。
  4. 配置與憑證管理:將登錄憑證和模型設置寫入 DSH 的配置文件中。
  5. 本地控制 API:提供本地控制接口(127.0.0.1:8185)用於管理登錄狀態和查看計劃使用情況。

安裝

該插件依賴 DSH CLI。安裝命令如下:

dsh plugin --profile web add github:antonio-mastropaolo/dsh-anthropic-membership

安裝完成後,需要重啓 dsh web 以加載插件。

使用方法

UI 操作

  1. 啓動 dsh web 並訪問設置界面。
  2. 進入 Settings → Models。
  3. 在 Anthropic 模型卡片上點擊 Sign in with Claude Pro/Max。
  4. 選擇一個 anthropic 或 claude-* 模型進行使用。

命令行操作

如果 UI 不可用,可以使用命令行腳本:

node login.mjs    # 登錄
node logout.mjs   # 登出
node usage.mjs    # 查看使用情況

配置與控制 API

存儲位置

插件會將配置和憑證寫入 DSH 的配置目錄:

  • 設置:寫入 llm-pi-ai.providers.anthropic(不包含 apiKeyEnv)到 ~/.dsh/settings.yaml 或 $DSH_SETTINGS 環境變量指向的路徑。
  • 憑證:寫入 llm-pi-ai/anthropic 到 ~/.dsh/.credentials.yaml(文件權限爲 0600)。

本地控制接口

插件啓動一個本地控制服務,默認監聽 127.0.0.1:8185(可通過 DSH_MEMBERSHIP_PORT 修改,但設置按鈕期望默認端口)。

請求要求:
* 必須包含 Origin 請求頭。
* 必須包含 x-dsh-membership: 1 請求頭。
* CORS 不支持任意 Origin,通常由 DSH UI 發起請求。

可用接口:

方法 路徑 說明
GET /healthz 返回 { ok: true }
GET /status 返回 { signedIn, expiresAt, imageCap, compactionSlim }。若發送了 Origin 頭,需爲 DSH UI 的 Origin
POST /login 登錄。需要 Origin 頭和 x-dsh-membership 頭
POST /logout 登出

注意事項

  1. 依賴環境:需要安裝並運行 DSH CLI。
  2. UI 信息限制:UI 上顯示的消息計數僅針對 DSH 本身,不顯示剩餘消息、令牌或美元數。
  3. 併發登錄:/login 接口在已有登錄請求進行中時,會返回 409 錯誤。
  4. 權限模式:控制 API 需要 Origin 頭驗證,不支持任意的 CORS Origin。
羽毛球分组比赛记分
小程序二维码

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

小夜