支持 Claude、Codex、Grok、Antigravity、OpenRouter、Agnes AI、Qwen、星火、文心一言共 9 个订阅账号的 OAuth 登录,零配置直连,内置用量看板。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:randomix777/dsh-plugin-subs
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
DeepSeek Harness 的 AI LLM 插件,通过 OAuth 登录订阅制 LLM 提供商并将其作为 LLM 提供商暴露。
功能
- 所有提供商的 OAuth 认证 — 无需 API key
- 直接从订阅解析 Composer 模型
- 支持流式、工具调用和图片输入(取决于提供商)
- 订阅用量状态显示在订阅设置中
- 每个提供商内置模型目录,可在配置中覆盖
提供商一览
已上线
| 路由 | 订阅 | 说明 |
|---|---|---|
claude |
Claude Pro/Max | 从 Claude Code 自动导入凭据;先运行 claude 登录 |
codex |
ChatGPT Plus/Pro | 实时获取模型列表(chatgpt.com/backend-api/codex/models) |
grok |
X Premium/Premium+ | 实时获取模型列表;含 x_search、image_generate、video_generate 工具 |
antigravity |
Google One AI Premium / Antigravity | 静态目录(Gemini 3 Pro / 3.1 Pro / 3 Flash、Claude 4.6 Sonnet / Opus);直接 OAuth,无需环境变量 |
openrouter |
OpenRouter (OAuth PKCE) | 登录换取永久 API key;静态目录(GPT-4o / GPT-4o Mini / Claude Sonnet & Haiku 4.5 / Gemini 2.5 Flash) |
agnes |
Agnes AI (OAuth) | OAuth PKCE 换取 access token(逆向自 AgnesCode);静态目录(Agnes 2.5/2.0 Flash、GPT-4o、Claude Sonnet 4.5 via AgnesCode) |
qwen |
通义千问 Qwen Coding Plan | Device-flow OAuth via chat.qwen.ai;无需 API Key,点击连接即完成授权 |
spark |
讯飞星火 | OAuth PKCE via spark-api.xf-yun.com;需设置 SPARK_CLIENT_ID / SPARK_CLIENT_SECRET |
ernie |
百度文心一言 | OAuth PKCE via openapi.baidu.com;需设置 ERNIE_CLIENT_ID / ERNIE_CLIENT_SECRET |
即将推出
Gemini、Perplexity AI、GitHub Copilot、Mistral AI、Cursor、Hugging Face、Windsurf、Replicate、fal.ai、Cohere、Voyage AI、Lepton AI、OctoAI。
安装
# 从 npm 安装(预构建,无需编译)
dsh plugin --profile web add dsh-plugin-subs
# 或从 GitHub 源码安装
dsh plugin --profile web add github:randomix777/dsh-plugin-subs
使用步骤
dsh web,打开打印的 URL。- 设置 → 订阅:点击对应 provider 的「连接」。
- Claude:自动从 Claude Code 导入凭据(需先运行
claude并登录)。 - Codex / Grok / OpenRouter:在新标签页中完成 OAuth 授权。
- Antigravity:无需环境变量,直接在标签页中完成授权;可选通过
ANTIGRAVITY_CLIENT_ID/ANTIGRAVITY_CLIENT_SECRET覆盖凭据。 - Qwen Code:通过
chat.qwen.aiDevice-flow OAuth 授权;无需 API Key 或环境变量,点击「连接」即完成登录。 - Spark / ERNIE:先设置环境变量,再在标签页中完成授权。
- Agnes AI:浏览器授权后,手动粘贴回调 URL 或授权码(DSH 无法自动捕获
agnes://协议)。
- Claude:自动从 Claude Code 导入凭据(需先运行
- 在任意会话中打开模型选择器(
/model),选择对应 provider 下的模型。
未登录时:该 provider 不出现在选择器里;直接请求会报 MISSING_CREDENTIAL,不影响其他功能。
环境变量
Antigravity 和 Qwen 使用插件内嵌的公开客户凭据,无需手动配置。仅星火和文心一言需要环境变量:
# 可选:覆盖内置的 Antigravity OAuth 客户端凭据
export ANTIGRAVITY_CLIENT_ID="your-custom-oauth-client-id"
export ANTIGRAVITY_CLIENT_SECRET="your-custom-oauth-client-secret"
# 讯飞星火(在 https://console.xfyun.cn 注册应用)
export SPARK_CLIENT_ID="your-spark-client-id"
export SPARK_CLIENT_SECRET="your-spark-client-secret"
# 百度文心一言(在 https://console.bce.baidu.com/ai/ 注册应用)
export ERNIE_CLIENT_ID="your-ernie-client-id"
export ERNIE_CLIENT_SECRET="your-ernie-client-secret"
星火、ERNIE 需要在对应平台注册 OAuth 应用并设置环境变量。Qwen 和 Antigravity 点击连接即可直接登录。
配置
providers:
- id: llm-subscriptions
name: dsh-plugin-subs
config:
providers: [codex, claude, grok, antigravity, openrouter, agnes, qwen, spark, ernie] # 子集;默认九个全启用
streamIdleTimeoutMs: 300000
models: # 覆盖实时发现/内置目录
codex:
- { id: gpt-5.6-sol, name: GPT-5.6 Sol, contextWindow: 272000, inputModalities: [text, image] }
工具
随 provider 启用自动注册:
x_search(Grok)—— xAI 托管的 X 搜索,返回{ answer, citations }。image_generate(ChatGPT 或 Grok)—— 经 Codex 后端调用gpt-image-2,或经 Grok 调用grok-imagine-image-2.0。provider参数指定首选提供方(默认gpt,可选grok);首选方未登录时自动回退到另一方。图片保存到~/.dsh/plugins/subscriptions/images/。video_generate(Grok)—— 调用grok-imagine-video-1.5(异步提交 + 轮询);MP4 保存到~/.dsh/plugins/subscriptions/videos/,视频在对话中内联播放。
限制与已知问题
- 各 provider 的可用性取决于你的订阅状态;未登录时该 provider 不可用
- 图片生成依赖
image_generate工具,需要 Codex 或 Grok 已登录 - X 搜索依赖
x_search工具,需要 Grok 已登录且订阅包含 API 访问权限 - Antigravity 的 Google OAuth 凭据通过环境变量提供(安全考虑,未硬编码)
- OpenRouter 登录后获得永久 API key,无需刷新
- Agnes AI 的回调协议
agnes://无法被 DSH 自动捕获,需手动粘贴回调 URL 或授权码 - 国内提供商(Spark / ERNIE)需在各自开放平台注册 OAuth 应用并设置环境变量
- Qwen Code 使用 Device-flow OAuth:在任何浏览器中打开验证 URL 并输入验证码;流程可取消,过期时间为
expires_in秒
项目结构
lib/index.js— 主 bundle(编译产物),所有后端逻辑lib/client.js— 浏览器 bundle,UI 组件lib/client/*.js— 拆分客户端源码(国际化、UI 组件)
License
MIT
链接
同类插件
Ebony-Vinyl/dsh-our-free-model★ 64128
为 dsh 接入免费模型车道(含 DeepSeek V4.1 Flash、Kimi K3 等),无需登录、注册或填写 API Key,并提供本地 OpenAI 兼容网关、降级路由与用量看板。
dingminhua/dsh-connect-workbuddy★ 1244
将本机登录的 WorkBuddy 模型(国内版与国际版)接入 DSH,每次刷新按上游目录读取每个模型的积分倍率,支持逐模型图片输入开关、带自动换号的账号池、手动每日签到,以及卡片与输入框里的只读积分胶囊读数。
Alice-Marx/dsh-model-router★ 859
为 DeepSeek Harness 规划有依赖的工作包,将其分配给已配置的模型 API 或支持的厂商 CLI,并提供费用预览。
V1ki/dsh-plugin-subscriptions★ 568
把 ChatGPT(Codex)、Claude、Grok 订阅当作 DeepSeek Harness 的 LLM 提供方:设置页登录、模型目录、用量展示,以及 image_generate、video_generate 与 x_search 工具。
Mars-Sea/dsh-commandcode-provider★ 460
非官方 Command Code 模型接入插件:注册 `commandcode` 路由,带实时模型目录与推理强度支持。
XDTrees/dsh-workbuddy-xdpool★ 447
把本机 WorkBuddy 桌面 App 登录过的所有账号自动并入 DSH 模型池:多账号轮换自动容错、实时积分,模型目录按模型标注积分倍率与限时免费 / 夜间折扣。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。