🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

订阅聚合路由 JoeeLiu/dsh-super-subscriptions

DeepSeek Harness
JoeeLiu68 天前有提交已提供中文文档扫描:含敏感能力

统一登录多家订阅账户,按配额智能路由模型并生成图像视频

28/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add JoeeLiu/dsh-super-subscriptions
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么[目录]—
dsh 原生插件 · ui
暂无时间戳·判据 →
装得上吗[实装验证]!
实装验证未通过(dependency_conflict),装前请到仓库确认最近更新与 issue
L4 · 真实安装等级说明 →
数据截至 2026/10/07·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/03·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 68 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

⚠︎ 实装验证未通过(dependency_conflict · 2026/10/7) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 48 处,展示前 48 条)
  • 执行外部命令固定命令
    src/auth/claude-code-creds.ts:78
    return execFileSync('/usr/bin/security', ['find-generic-password', '-s', PRIMARY_SERVICE, '-w'], {
  • 读取本地文件
    src/auth/claude-code-creds.ts:90
    return readFileSync(credentialsFilePath(), 'utf8')
  • 执行外部命令固定命令
    src/auth/claude-code-creds.ts:113
    const output = execFileSync('/usr/bin/security', ['find-generic-password', '-s', PRIMARY_SERVICE], {
  • 执行外部命令固定命令
    src/auth/claude-code-creds.ts:156
    execFileSync('/usr/bin/security', ['add-generic-password', '-s', PRIMARY_SERVICE, '-a', account, '-w', updated, '-U'], {
  • 读取本地文件
    src/auth/claude-code-creds.ts:168
    raw = readFileSync(path, 'utf8')
  • 读取本地文件
    src/auth/claude-code-creds.ts:177
    if (!existsSync(dir)) mkdirSync(dir, { recursive: true, mode: 0o700 })
  • 写入本地文件
    src/auth/claude-code-creds.ts:177
    if (!existsSync(dir)) mkdirSync(dir, { recursive: true, mode: 0o700 })
  • 写入本地文件
    src/auth/claude-code-creds.ts:178
    writeFileSync(path, updated, { encoding: 'utf8', mode: 0o600 })
  • 写入本地文件
    src/auth/claude-code-creds.ts:179
    chmodSync(path, 0o600)
  • 读取本地文件
    src/auth/store.ts:210
    const text = await readFile(path, 'utf8')
  • 读取本地文件
    src/auth/store.ts:231
    const legacyText = await readFile(legacyPath, 'utf8')
  • 写入本地文件
    src/auth/store.ts:311
    await mkdir(dirname(path), { recursive: true })
  • 写入本地文件
    src/auth/store.ts:314
    await writeFile(tmp, JSON.stringify(store, null, 2), { mode: 0o600 })
  • 写入本地文件
    src/auth/store.ts:316
    await chmod(tmp, 0o600)
  • 写入本地文件
    src/auth/store.ts:320
    await rename(tmp, path)
  • 删除本地文件
    src/auth/store.ts:322
    await rm(tmp, { force: true })
  • 发起网络请求
    src/client/connection.ts:194
    const response = await fetch('/plugins/agy-link/status')
  • 发起网络请求
    src/client/connection.ts:291
    const response = await fetch(path, {
  • 发起网络请求
    src/client/connection.ts:329
    const response = await fetch('/plugins/agy-link/status')
  • 读取本地文件
    src/core/auth-store.ts:31
    const content = await readFile(this.filePath, 'utf8')
  • 写入本地文件
    src/core/auth-store.ts:42
    await mkdir(dirname(this.filePath), { recursive: true })
  • 写入本地文件
    src/core/auth-store.ts:44
    await writeFile(tempPath, JSON.stringify(data, null, 2), 'utf8')
  • 写入本地文件
    src/core/auth-store.ts:45
    await rename(tempPath, this.filePath)
  • 发起网络请求
    src/http.ts:241
    return new ProxyAgent(url.toString())
  • 读取本地文件
    src/http.ts:266
    text = await readFile(path, 'utf8')
  • 读取本地文件
    src/http.ts:271
    text = await readFile(legacyProxyFilePath(), 'utf8')
  • 写入本地文件
    src/http.ts:324
    await mkdir(dirname(path), { recursive: true })
  • 写入本地文件
    src/http.ts:327
    await writeFile(tmp, JSON.stringify(cfg, null, 2), { mode: 0o600 })
  • 写入本地文件
    src/http.ts:329
    await chmod(tmp, 0o600)
  • 写入本地文件
    src/http.ts:333
    await rename(tmp, path)
  • 删除本地文件
    src/http.ts:335
    await rm(tmp, { force: true })
  • 发起网络请求
    src/http.ts:418
    if (dispatcher === undefined) return fetch(input, init)
  • 发起网络请求
    src/http.ts:472
    : await fetch(parsed.toString(), init)
  • 读取本地文件
    src/index.ts:278
    const data = await readFile(join(videosDirectory(), name), { signal })
  • 读取本地文件
    src/providers/catalog-store.ts:143
    text = await readFile(path, 'utf8')
  • 写入本地文件
    src/providers/catalog-store.ts:158
    await mkdir(dirname(path), { recursive: true })
  • 写入本地文件
    src/providers/catalog-store.ts:161
    await writeFile(tmp, JSON.stringify(store, null, 2))
  • 写入本地文件
    src/providers/catalog-store.ts:162
    await rename(tmp, path)
  • 删除本地文件
    src/providers/catalog-store.ts:164
    await rm(tmp, { force: true })
  • 执行外部命令固定命令
    src/providers/claude.ts:82
    const raw = execFileSync('claude', ['--version'], { timeout: 3000, encoding: 'utf8' })
  • 发起网络请求
    src/providers/claude.ts:589
    let response = await this.request(options, session, watchdog.signal)
  • 发起网络请求
    src/providers/claude.ts:592
    response = await this.request(options, session, watchdog.signal)
  • 发起网络请求
    src/providers/codex.ts:689
    let response = await this.request(options, session, watchdog.signal)
  • 发起网络请求
    src/providers/codex.ts:692
    response = await this.request(options, session, watchdog.signal)
  • 发起网络请求
    src/providers/copilot.ts:655
    let response = await this.request(options, session, watchdog.signal, wire, scope)
  • 发起网络请求
    src/providers/copilot.ts:659
    response = await this.request(options, session, watchdog.signal, wire, scope)
  • 发起网络请求
    src/providers/grok.ts:644
    let response = await this.request(options, session, watchdog.signal)
  • 发起网络请求
    src/providers/grok.ts:647
    response = await this.request(options, session, watchdog.signal)
扫描于 2026/11/3(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-attachment@deepseek-ai/dsh-commands@deepseek-ai/dsh-home-paths@deepseek-ai/dsh-llm@deepseek-ai/dsh-tools@deepseek-ai/dsh-web@deepseek-ai/schemastery
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 统一订阅服务商
  • 模型配额路由
  • 生成图像视频

统一订阅服务商、模型路由、配额界面和媒体工具,全给 DeepSeek Harness 用

README

由 DeepSeek 最新模型翻译生成
dsh-super-subscriptions CI License DSH Plugin Version 一个面向 DeepSeek Harness (DSH) 的统一订阅提供商捆绑包,将账户登录、模型路由、配额可见性、搜索和媒体能力整合到一个 Cordis 插件中。 功能简介 dsh-super-subscriptions 让 DSH Web 配置文件通过一个集成界面使用基于订阅的账户。它整合了原本需要作为独立且相互重叠的插件安装的提供商和 UI 职责。 该捆绑包提供: - 针对 ChatGPT/Codex、Grok 和 Google AntiGravity 的 OAuth 和本地账户管理。 - 从上游订阅插件保留的可选 Claude 和 GitHub Copilot 集成。 - 感知提供商的模型发现、默认账户选择、账户池、令牌刷新和故障转移。 - 按提供商分组的全宽侧边栏用量面板,包含五小时、每周及其他报告的窗口。 - 用于登录、账户状态、配额刷新、路由、代理和诊断的 Web 设置页面。 - 统一的 image_generate、video_generate、x_search 和 view_image 工具。 - 原生 Codex Connect 图像生成注册和持久化本地图像预览。 - 将旧版 openai-codex 路由迁移到统一的 codex 路由。
展开完整文档(README 剩余 1 节)
dsh-super-subscriptions

CI
License
DSH Plugin
Version

一个面向 DeepSeek Harness (DSH) 的统一订阅提供商捆绑包,将账户登录、模型路由、配额可见性、搜索和媒体能力整合到一个 Cordis 插件中。

功能简介

dsh-super-subscriptions 让 DSH Web 配置文件通过一个集成界面使用基于订阅的账户。它整合了原本需要作为独立且相互重叠的插件安装的提供商和 UI 职责。

该捆绑包提供:

- 针对 ChatGPT/Codex、Grok 和 Google AntiGravity 的 OAuth 和本地账户管理。
- 从上游订阅插件保留的可选 Claude 和 GitHub Copilot 集成。
- 感知提供商的模型发现、默认账户选择、账户池、令牌刷新和故障转移。
- 按提供商分组的全宽侧边栏用量面板,包含五小时、每周及其他报告的窗口。
- 用于登录、账户状态、配额刷新、路由、代理和诊断的 Web 设置页面。
- 统一的 image_generate、video_generate、x_search 和 view_image 工具。
- 原生 Codex Connect 图像生成注册和持久化本地图像预览。
- 将旧版 openai-codex 路由迁移到统一的 codex 路由。

这是一个面向 DSH 的独立社区项目。它与 DeepSeek AI、OpenAI、xAI、Google、Anthropic 或 GitHub 无关联,也未获得其认可。

提供商矩阵

| 提供商 | 默认 | 路由 | 认证 | 包含的能力 |
| ChatGPT / Codex | 开启 | codex | OAuth PKCE | Responses 流式传输、账户池、配额刷新、GPT 图像生成 |
| Grok | 开启 | grok | OAuth PKCE | Responses 流式传输、账户池、X 搜索、Grok 图像和视频生成 |
| Google AntiGravity | 开启 | antigravity / agy | Google OAuth 或现有 agy 凭据 | 模型发现、思考流、账户池、配额和 CLI 桥接 |
| Claude | 关闭 | claude | Claude Code 凭据或 OAuth | 从订阅集成保留的可选提供商 |
| GitHub Copilot | 关闭 | copilot | GitHub 设备流程 | 从订阅集成保留的可选提供商 |

提供商可用性、模型名称、配额窗口和媒体端点由相应服务控制。成功登录并不保证每个模型或能力在每个订阅层级上都可用。

要求和兼容性

- DeepSeek Harness 0.1.1-rc.2 或兼容的当前 0.1.x Web 配置文件。
- Node.js 20 或更高版本。
- 用于开发和本地安装的 pnpm 9 或更高版本。
- 为你启用的每个提供商准备一个受支持的订阅账户。
- 对于 AntiGravity,需要 agy 可执行文件或内置的 Google OAuth 流程。内置流程需要你自己的 AGY_CLIENT_ID 和 AGY_CLIENT_SECRET 环境变量。

版本 1.0.1 已在 Windows 上针对 DSH 0.1.1-rc.2、Node.js 24 和 pnpm 11 进行了类型检查、测试和构建。

安装

安装公共 GitHub 仓库

该仓库目前通过 GitHub 而非 npm 分发:

dsh plugin --profile web add github:JoeeLiu/dsh-super-subscriptions

安装后重启 Web 配置文件:

dsh web

当 npm 版本发布后,包形式的安装方式也将在此处记录。在此之前,请勿将 dsh plugin --profile web add dsh-super-subscriptions 用作 npm 安装命令。

对于固定的 v1.0.1 预构建包,请使用 GitHub Release tarball:

dsh plugin --profile web add https://github.com/JoeeLiu/dsh-super-subscriptions/releases/download/v1.0.1/dsh-super-subscriptions-1.0.1.tgz

本地开发安装

git clone https://github.com/JoeeLiu/dsh-super-subscriptions.git
cd dsh-super-subscriptions
pnpm install
pnpm run check

要将工作树挂载到本地 Web 配置文件中,请在该配置文件的 package.json 中使用 file: 依赖。当此 bundle 替代重叠的上游提供商 bundle 时,请仅启用此 bundle。

卸载和回滚

从目标配置文件中移除该包并重启 DSH:

dsh plugin --profile web remove dsh-super-subscriptions
dsh web

如果你正在替换较旧的重叠设置,请在重启前恢复配置文件的包和 Cordis 补丁备份。除非你明确希望同时移除账户,否则请勿删除本地凭据存储。

首次运行设置

1. 启动 DSH Web,并在普通浏览器标签页中打开 http://127.0.0.1:3080。
2. 打开 Settings → Plugins → Super Subscriptions。
3. 启用你想使用的提供商。
4. 为 ChatGPT/Codex、Grok 或 AntiGravity 选择 Sign in,并在浏览器中完成提供商的 OAuth 流程。对于 AntiGravity,请先配置 OAuth 环境变量,或使用现有的 agy CLI 登录。
5. 返回 DSH 并刷新提供商状态和模型列表。

当提供商登录依赖现有浏览器 cookie 时,请为启动器使用普通浏览器配置文件。隔离的嵌入式浏览器或临时配置文件不会自动共享这些 cookie。

登录后,从提供商路由中选择一个模型。路由由模型 id 选择;订阅流程不需要 API 密钥。基于 API 密钥的集成不在本插件的范围内。

配置

cordis.patch.yml 中的捆绑补丁启用了受支持的默认值:

- insert:
- id: llm-super-subscriptions
name: dsh-super-subscriptions
config:
providers:
chatgpt:
enabled: true
grok:
enabled: true
antigravity:
enabled: true
permissionMode: skip
claude:
enabled: false
copilot:
enabled: false
codexRoute: codex
migrateOpenAiCodex: true
enableSearch: true
enableImageTool: true
enableImageGeneration: true

配置模式如下: ts interface SuperSubscriptionsConfig {
providers?: {
chatgpt?: { enabled?: boolean; streamIdleTimeoutMs?: number }
grok?: { enabled?: boolean; streamIdleTimeoutMs?: number }
antigravity?: {
enabled?: boolean
agyBin?: string
permissionMode?: 'skip' | 'plan' | 'accept-edits'
workspaceRoot?: string
defaultModel?: string
defaultEffort?: string
}
claude?: { enabled?: boolean; streamIdleTimeoutMs?: number }
copilot?: { enabled?: boolean; streamIdleTimeoutMs?: number }
}
codexRoute?: string
migrateOpenAiCodex?: boolean
enableSearch?: boolean
enableImageTool?: boolean
enableImageGeneration?: boolean
}

AntiGravity 内置的 Google OAuth 流程会从 DSH 进程环境中读取 AGY_CLIENT_ID 和 AGY_CLIENT_SECRET。这些值有意未打包在公共仓库中。如果你不想注册 OAuth 客户端,可以使用 agy 登录,并让插件改用本地的 agy 凭据。

不要将此捆绑包与 dsh-plugin-subscriptions、dsh-agy-link 或 dsh-codex-connect 同时启用,除非你有意配置互不重叠的路由。这些插件会注册相关的提供程序、工具或 UI 槽位,可能导致重复注册或账户存储冲突。

工具与媒体

| 工具 | 提供程序 | 用途 |
| image_generate | ChatGPT/Codex 或 Grok | 统一的图像生成;需要时传入 provider: "gpt" 或 provider: "grok" |
| codex_connect_image_generate | ChatGPT/Codex | 原生 Codex Connect GPT Image 2 路由,带 DSH 附件预览 |
| view_image | 本地附件存储 | 解析并显示生成或附加的图像 |
| video_generate | Grok | 生成并保存简短的 Grok Imagine 视频输出 |
| x_search | Grok | 通过托管的 xAI 工具搜索 X 帖子及相关公开内容 |

订阅图像路径在提供程序账户和端点支持的情况下使用 gpt-image-2 和 grok-imagine-image-2.0。生成的图像字节存储在本地 DSH 附件区域;它们不会提交到此仓库。

账户存储、权限与隐私

- 提供程序令牌存储在本地 DSH 主目录下,通常为 ~/.dsh/plugins/super-subscriptions/。
- 导入的旧版订阅凭据以非破坏性方式读取;旧存储不会被删除。
- AntiGravity 也可能在用户主目录下使用其自己的本地凭据格式,以便 agy 二进制文件可以访问该账户。
- 可选的 AntiGravity OAuth 客户端凭据由环境变量提供,绝不会存储在此仓库中。
- 该插件会向已启用功能所需的提供商 OAuth、模型、配额、搜索和媒体端点发起出站 HTTPS 请求。
- Web 设置和回环回调服务器绑定到本地 DSH 端点。在适用的情况下,它们受回调 state/PKCE 校验和可信来源验证保护。
- 代理设置为可选项,存储在本地 DSH 配置文件中。
- 任何令牌、API 密钥、浏览器 cookie、私有账户数据或生成的媒体都不应进入 Git。仓库的 .gitignore 排除了本地凭据、环境文件、构建输出和上游参考树。

安装前请查看源代码和提供商条款。此插件以 DSH 进程的权限执行,并可访问已启用的订阅账户。

故障排除

登录完成但 DSH 仍显示已登出

保持 DSH 页面在同一回环来源上打开,在普通浏览器标签页中完成回调,并等待设置页面轮询回调结果。如果回调标签页显示登录成功但 UI 状态陈旧,请刷新提供商状态,而不是立即重新启动 OAuth 流程。

Grok 或 ChatGPT 返回流式/解析错误

确保只有此统一提供商包拥有 grok 和 codex 路由。版本 1.0.1 会发出 DSH 的 text-delta、reasoning-delta、tool-call-delta、reasoning 和 tool-call 分块变体,并在重试前刷新过期的访问令牌。

Grok 返回请求验证错误

当不存在工具时,Grok 适配器会省略仅用于工具的请求字段。请更新到 1.0.1,并确认配置文件中没有仍在运行的旧版重复 Grok 适配器。

AntiGravity 提示 payload.provider must be one of ...

该消息通常意味着未编译或重复的 AntiGravity 工具定义到达了宿主。请仅保留此包处于活动状态,重启 DSH,并刷新提供商状态和模型列表。

图像已生成但 UI 仅显示附件 ID

Web 客户端必须通过 DSH 附件 RPC 加载附件。请将宿主和客户端包都更新到相同的 1.0.1 构建,然后刷新 Web 页面。

配额不可用

配额 API 取决于提供商和账户层级。请从设置中刷新提供商,检查账户令牌是否为最新,并在将空窗口视为零使用量之前检查提供商状态。

开发 bash
pnpm install
pnpm run typecheck
pnpm test
pnpm run build

pnpm run check 会运行类型检查、完整的 Vitest 测试套件以及生产包构建。提供商变更应包含针对身份验证、请求结构、流转换、配额行为和错误恢复的专项测试。
.upstream/ 目录是开发集成期间使用的本地参考缓存。它被有意忽略,不属于已发布的仓库或包。

架构与项目布局 text src/ ├── index.ts Cordis 宿主入口与注册 ├── config.ts Schemastery 配置与默认值 ├── auth/ OAuth、回调、设备流程与令牌存储 ├── core/ 迁移、RPC、令牌生命周期、安全辅助工具 ├── providers/ │ ├── codex/ ChatGPT/Codex 适配器与认证 │ ├── grok/ Grok 适配器、认证、搜索与媒体支持 │ ├── antigravity/ Google AntiGravity 与 agy 桥接 │ ├── claude/ 可选的 Claude 集成 │ └── copilot/ 可选的 GitHub Copilot 集成 ├── features/ 搜索、图像传输、代理与诊断 ├── tools/ 模型可调用的搜索、图像与视频工具 └── client/ 设置、侧边栏用量、工具视图与本地化

有关设计决策,请参阅 docs/architecture-overview.md 以及 docs/architecture/ 下的 ADR。

DSH 市场元数据与提交

包清单在 dsh.market 下包含 DSH 市场元数据,包括双语显示名称、描述、类别、图标、功能标签以及默认提供程序行为。该仓库还声明了 dsh-plugin 关键字,并附带一个根级 dsh.bundle.patch 条目,这些是社区 DSH 目录所使用的信号。

公开列表文案与提交清单维护在 docs/DSH-MARKET.md 中。公开的 GitHub 仓库和 dsh-plugin 主题是前提条件;只有在市场注册表接受或发现该仓库后,才会声称已列入目录。

版本管理与发布

本项目遵循语义化版本和 Keep a Changelog。发布版本 1.0.1 是首个集成版本,包含 CHANGELOG.md 中记录的 ChatGPT/Codex、Grok、AntiGravity、配额 UI 以及图像能力修复。

许可证与署名

依据 Apache License 2.0 授权。本项目包含来自 NOTICE 和 THIRD_PARTY_NOTICES 中所列上游项目的源代码和架构模式。每个上游许可证仍适用于其原始材料。

安全报告应遵循 SECURITY.md,而非公开 issue。
预览分享卡片长什么样 ↓JoeeLiu/dsh-super-subscriptions
分享 · DeepSeek Harness Hub
JoeeLiu/dsh-super-subscriptions

统一登录多家订阅账户,按配额智能路由模型并生成图像视频

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部