在侧边栏实时查看 Sub2API 余额与用量详情
30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/2 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/aming1029/dsh-sub2api-usage.git状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 侧边栏显示余额用量
- 查询接口可自定义
DeepSeek Harness 插件:在左侧边栏显示 Sub2API 的余额与用量详情,查询接口(服务地址/模式/路径/字段指针)全部可自定义。
README
由 DeepSeek 最新模型翻译生成dsh-sub2api-usage
把 Sub2API 的余额 / 用量搬进 DeepSeek Harness 的左侧边栏:
| 位置 | 内容 |
| 侧边栏底部(设置旁边) | 实时余额小条($12.34 用量),点击直接打开面板 |
| 侧边栏图标区 | 一个「Sub2API 用量」图标,和「插件 / 自动化任务」并列 |
| 主内容区 | 完整用量详情:余额、额度、订阅日/周/月、按天用量、模型用量、限流窗口、原始响应 |
| 面板「设置」页 | 查询接口全部可自定义:服务地址、模式、凭证、路径、字段指针、刷新间隔 |
侧边栏底部小条与用量面板
许可证:MIT(见 LICENSE)。
安装
从 GitHub 安装:
dsh plugin --profile desktop add github:aming1029/dsh-sub2api-usage
或者先 git clone 到本地,再按路径安装:
dsh plugin --profile desktop add file:<克隆下来的目录>
装好后不用重启:宿主的插件管理器会把它加进加载器树并即时生效,已经打开的页面通过 HMR 自动挂载。
若页面没变化,按 F5 刷新一次。
展开完整文档(README 剩余 1 节)
dsh-sub2api-usage
把 Sub2API 的余额 / 用量搬进 DeepSeek Harness 的左侧边栏:
| 位置 | 内容 |
| 侧边栏底部(设置旁边) | 实时余额小条($12.34 用量),点击直接打开面板 |
| 侧边栏图标区 | 一个「Sub2API 用量」图标,和「插件 / 自动化任务」并列 |
| 主内容区 | 完整用量详情:余额、额度、订阅日/周/月、按天用量、模型用量、限流窗口、原始响应 |
| 面板「设置」页 | 查询接口全部可自定义:服务地址、模式、凭证、路径、字段指针、刷新间隔 |
侧边栏底部小条与用量面板
许可证:MIT(见 LICENSE)。
安装
从 GitHub 安装:
dsh plugin --profile desktop add github:aming1029/dsh-sub2api-usage
或者先 git clone 到本地,再按路径安装:
dsh plugin --profile desktop add file:<克隆下来的目录>
装好后不用重启:宿主的插件管理器会把它加进加载器树并即时生效,已经打开的页面通过 HMR 自动挂载。
若页面没变化,按 F5 刷新一次。
首次使用
点侧边栏的「Sub2API 用量」→「设置」,三种凭证任选一种:
| 模式 | 填什么 | 能查到 |
| 站点 Key | sk-… | 该 Key 的钱包余额、订阅日/周/月用量、限流窗口、区间内模型与按天用量 |
| 管理员 | 后台「系统设置 → 管理员 API Key」生成的 admin-…;填「用户 ID」查单个用户,留空或勾选「拉取用户列表」查列表 | 任意用户的 balance / frozen_balance / total_recharged |
| 账号密码 | 邮箱 + 密码(或直接填一个已登录的访问令牌) | 当前登录账号 |
| 自定义请求 | 方法 / 路径 / 请求头 / 请求体 + JSON 指针 | 任何返回余额的接口 |
「自动识别」会在不指定模式时按凭证形状判断:admin-… → 管理员,sk-… → 站点 Key,JWT 或账号密码 → 用户。
填完点「保存并查询」;想先验证再保存就点「测试连接(不保存)」。
它打的是哪些接口
| 模式 | 请求 | 认证 |
| key | GET /v1/usage?start_date=&end_date=&timezone= | Authorization: Bearer sk-… |
| admin(单用户) | GET /api/v1/admin/users/:id | x-api-key: admin-… 或管理员 Bearer <JWT> |
| admin(列表) | GET /api/v1/admin/users?search=&page=&page_size=&sort_by=&sort_order= | 同上 |
| user(账号) | POST /api/v1/auth/login → GET /api/v1/auth/me | 登录返回的 access_token |
| custom | 你自己写的方法 / 路径 / 请求头 / 请求体 | 你自己写 |
响应既支持标准包封 {code, message, data}(code != 0 会带着站点原文和修复建议报错),也支持裸对象。
所有上游请求都由宿主(Node 侧)发出:站点不需要开 CORS,凭证也不会出现在页面里。
自定义查询接口
「设置」里可以改的东西:
- 服务地址:任何 sub2api 部署,http(s)://…,结尾斜杠无所谓。
- 路径:用量路径 /v1/usage、当前用户 /api/v1/auth/me、管理员单用户 /api/v1/admin/users/{id}、管理员列表 /api/v1/admin/users。
- 字段指针:余额 / 剩余额度 / 已用 / 额度上限,JSON Pointer 写法(/data/quota/remaining、data.balance、/data/items[0]/balance 都认)。留空则自动识别常见位置。
- 自定义请求(模式选「自定义请求」时):
- 路径占位符:{start} {end} {timezone} {id}(未填的占位符会原样保留,便于发现配置遗漏)
- 请求头写成 JSON 对象,例如 {"x-api-key":"admin-…"}、{"Authorization":"Bearer sk-…"}
- 请求体写 JSON,GET 可留空
- 刷新与显示:自动刷新间隔(0 = 只手动刷新)、统计区间天数、低余额提醒阈值(低于它时侧边栏图标出现小黄点)、货币符号、超时、时区。
设置页长这样:
设置页
「明细」页会把识别到的字段、每个上游请求的状态码、以及原始响应都列出来,遇到没见过的返回格式可以直接照着填指针:
明细页
配置文件
| 文件 | 内容 |
| %DSH_HOME%\sub2api-usage.json | 服务地址、模式、路径、指针、刷新间隔等(可安全分享) |
| %DSH_HOME%\sub2api-usage.secrets.json | 仅凭证与密码,权限 0600 |
DSH_HOME 默认是 D:\dsh-home(或 ~/.dsh),也可用环境变量 DSH_SUB2API_DIR 指定目录。
页面的「设置」页底部会显示这两个文件的实际路径。
安全边界
- 上游接口只在回环地址上提供服务(/sub2api-usage/api/ 对非本机来源返回 403):它持有凭证、且能被指向任意地址,不能暴露给局域网。
- 凭证只存在宿主侧;浏览器拿到的是 sk-t…7890 这样的掩码提示。
- 凭证以明文保存在 sub2api-usage.secrets.json(本机用户可读)。要更严格的隔离,请用系统凭据管理或限制该目录权限。
- 「测试连接」会在保存前用候选配置真发一次请求。
开发
cd <克隆下来的 dsh-sub2api-usage 目录>bash
node --test "test/.test.mjs" # 64 项:纯逻辑 18 + 上游端到端 14 + 宿主路由 11 + 配置存储 10 + 客户端 11
node scripts/deploy.mjs # 把改动同步到已安装它的 profile
test/mock-sub2api.mjs 是一个本地假站点(admin / key / user / custom / 超时 / 非 JSON 全覆盖),既能被测试直接引用,也能单独跑起来供手工验证: powershell
node test/mock-sub2api.mjs 8799
再把插件指向 http://127.0.0.1:8799,凭证填 sk-testkey1234567890
结构:
dsh-sub2api-usage/
├── package.json # dsh.bundle.patch + dsh.client(platform:web)
├── cordis.patch.yml # 往 profile 加载器树里插一条 entry ├── lib/ │ ├── core.js # 纯逻辑:配置、指针、请求计划、快照归一化(零依赖) │ ├── query.js # 执行计划 + 错误分类 │ ├── store.js # 配置持久化(配置与凭证分开、原子写、单飞加载) │ ├── index.js # 宿主半区:/sub2api-usage/api/{state,config,query,test} │ └── client.js # 浏览器半区:侧边栏小条 + 面板图标 + 主面板 ├── scripts/deploy.mjs # 同步到 profile ├── assets/ # README 截图 └── test/ # node:test 测试 + mock 站点
lib/client.js 是手写的 window.__ModuleLoader__.load({ id, factory }) 浏览器模块(无构建步骤、无 JSX),只 require("react") 这一个平台模块。
卸载 powershell
dsh plugin --profile desktop remove dsh-sub2api-usage
或在上面的「插件」页里关掉它(会同时撤掉侧边栏小条、面板图标与主面板,路由也会下线)。
配置文件不会自动删除,需要的话手动删掉那两个 json。
排错
| 现象 | 处理 |
| 侧边栏显示「未配置」 | 还没填凭证,点开面板 → 设置 → 填一种凭证。 |
| 显示「查询失败」+ 面板里有红条 | 红条里有错误码、站点原文和修复建议;401/403 基本是凭证类型不对。 |
| 面板提示「宿主路由未加载」 | 插件被停用了,或者安装后没生效:dsh plugin --profile desktop add file:… 再试。 |
| 改了源码没反应 | 跑 node scripts/deploy.mjs(pnpm 装的是硬链接副本),必要时按 F5。 |
| 余额一直在但数字不动 | 「自动刷新间隔」是 0;改成 60 之类,或点「刷新」。 |
反馈
问题、需求、想加新的响应格式适配,都欢迎开 issue: <https://github.com/aming1029/dsh-sub2api-usage/issues>预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
aming1029/dsh-sub2api-usage
在侧边栏实时查看 Sub2API 余额与用量详情
相关插件 · 其他
模型破甲清洗HunYiSage/dsh-purge
⚔️ DeepSeek Harness 网络安全红队工具dsh-purge
★ 16,993已汉化DeepSeek 客户端
73
女娲蒸馏alchaincyf/nuwa-skill
输入名人名字,提炼其思维模型与决策方式供你调用
★ 37,308已汉化DSH
72
逆向分析桥接Fanqi89/dsh-rea
REA(Reverse Engineer Anything)MCP 桥接,用来把 REA 逆向工具接入 DSH 插件
★ 51已汉化DSH
72
语音女友beiyege-01/dsh-voice-ai-girlfriend
语音 AI 女友Voice AI girlfriend for DeepSeek Harness:Whisper…
★ 888已汉化DSH
71.6
红队越狱测试套件Minglink/dsh-infinite-gen-5
DeepSeek v4.1 flash 逆向工具无限五代 求 Star 收藏 ⭐欢迎大家提交项目的改进
★ 3,759已汉化DSH
71.4
协同办公空间dream-num/univer-workspace
一个让人类与 AI Agent 共同创作、协作和审阅的开源 Office 工作空间。
★ 2,269已汉化DSH
70.8
这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。