DeepSeek Harness 输入框旁的实时 DeepSeek API 余额环——悬停看实时余额,点击看今日花费 / 请求数 / token,按模型计价(flash 和 pro,区分高峰与非高峰)。
34.8/100
综合分
7
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/15 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查未通过:缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add EdwinZDZ/dsh-api-balance-ring该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · ui
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 21 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包dsh-api-balance-ring(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/11/1 02:41:07
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
发起外部网络请求
查看扫描证据(共 2 处,展示前 2 条)
- 发起网络请求bundle/client.js:100
const response = await fetch(path, { cache: 'no-store' }) - 发起网络请求bundle/index.js:173
const response = await fetch(CONFIG.balanceEndpoint, {
扫描于 2026/11/4(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
界面预览
3 张 · 点击查看大图功能亮点
- 悬停查看实时余额
- 点击展开今日消费明细
- 按模型计价区分峰谷
README
由 DeepSeek 最新模型翻译生成API Balance Ring · API 余额圆环
一个住在 DeepSeek Harness 输入框里的实时小仪表,紧挨内置上下文圆环的右侧。 它会识别你当前实际在用的付费方式 —— DSH 账号登录、DeepSeek API Key,或第三方 provider —— 并据此显示余额,呈现为 ◯6% ◯8%。悬停看数字,点击看明细。
🇬🇧 English README
Demo
✨ 亮点
- 🎯 就在上下文圆环右侧 —— 渲染在输入框下方的统计行里,与内置的上下文占用圆环并排,读作 ◯6% ◯8%。几何完全一致(14px viewBox、r=5.5、2px 描边),主题 token 同款。
- 🔍 跟随你正在用的 provider —— 自动识别当前生效的付费来源并适配。切换模型,圆环跟着切。
- 🖱 悬停即见 —— 按模式显示 API余额¥1.90 或 今日已消费¥5.02 / 预算¥50。
- 📊 点击展开 —— 明细面板:识别到的付款方式、余额或消费、请求次数、Token 消耗与更新时间。每 60 秒自动刷新,点击时立即刷新。
展开完整文档(README 剩余 1 节)
API Balance Ring · API 余额圆环
一个住在 DeepSeek Harness 输入框里的实时小仪表,紧挨内置上下文圆环的右侧。 它会识别你当前实际在用的付费方式 —— DSH 账号登录、DeepSeek API Key,或第三方 provider —— 并据此显示余额,呈现为 ◯6% ◯8%。悬停看数字,点击看明细。
🇬🇧 English README
Demo
✨ 亮点
- 🎯 就在上下文圆环右侧 —— 渲染在输入框下方的统计行里,与内置的上下文占用圆环并排,读作 ◯6% ◯8%。几何完全一致(14px viewBox、r=5.5、2px 描边),主题 token 同款。
- 🔍 跟随你正在用的 provider —— 自动识别当前生效的付费来源并适配。切换模型,圆环跟着切。
- 🖱 悬停即见 —— 按模式显示 API余额¥1.90 或 今日已消费¥5.02 / 预算¥50。
- 📊 点击展开 —— 明细面板:识别到的付款方式、余额或消费、请求次数、Token 消耗与更新时间。每 60 秒自动刷新,点击时立即刷新。
- 🧮 按模型用官方价计价 —— mimo-v2.6-flash / mimo-v2.6-pro / mimo-v2.6-pro-ultraspeed,元 / 百万 tokens,取自每条请求自己的 request/header 事件,会话中途切换模型前后都算得准。
- 💴 原生人民币 —— 官方国内价卡就是「元 / 百万 tokens」,直接按 ¥ 计算,没有 USD→CNY 换算,不存在汇率漂移。
- ⚡ 缓存命中分开算 —— 命中缓存的输入按其更低的费率计价,长 agent 会话因此不会被按输入价高估。
- 🎨 原生观感 —— 与产品内置圆环同槽位、同几何、同主题 token。零依赖、纯 JavaScript、无需构建。
🖼 预览
下图是三种模式的渲染示意图,不是屏幕截图。真实录屏正在采集,届时替换。
圆环会识别并适配的三种付费方式 —— 账号登录(余额)、API Key(余额)、第三方(今日消费与预算):
账号登录 · API Key · 第三方
明细面板特写 —— 注意首行 付款方式,它标出圆环正在跟随哪个 provider:
余额面板 · 消费面板
🧩 工作原理
┌───────────────────────────── 浏览器(bundle Client 半区)────────────────────────┐ │ conversation.composer.dock 槽(统计行,上下文圆环右侧) │ │ ┌───────────────────────────────────────────────────────────────────────────┐ │ │ │ BalanceRing 组件 │ │ │ │ ┌──────────────────────────────────┐ fetch('/__dsh-api-…/balance') │ │ │ │ │ ◯10% + 提示 + 面板 ◀──────────┼──────────────────────┐ │ │ │ └───┴──────────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────────┼─────────────┘ │ HTTP ┌─────────────────────────────── 宿主进程 ────────────────────────┼─────────────┐ │ ▼ │ │ GET /__dsh-api-balance-ring/balance → 识别付费方式: │ │ · 由 agentDefaultModel.currentSelection().provider 判定 │ │ · deepseek-account* → deepseekAccount.getBalance() (充值余额) │ │ · deepseek* → GET https://api.deepseek.com/user/balance │ │ · 其他 → 第三方,余额取不到 │ │ │ │ GET /__dsh-api-balance-ring/stats → 今日用量,来自会话日志: │ │ · 统计当前 provider 的 assistant/message 事件 │ │ · 累加 input + output + cache tokens │ │ · 按各请求自身模型的官方人民币价计价 │ └────────────────────────────────────────────────────────────────────────────────┘
📦 安装
前置条件
- 本地运行的 DeepSeek Harness(Web GUI)。
- 你要用的付费方式已在 harness 中配好。插件只读取 harness 已有的东西,不自带任何凭据。
步骤
本插件是可安装的 bundle,因而是真正的 profile 插件,而非会话级临时插件:
1. 克隆本仓库(或把 bundle/ 目录复制到 harness 可读的任意位置)。
2. 让你的 agent 安装:用插件管理器安装 <绝对路径>/bundle 这个 bundle
3. agent 会以该绝对包目录为 target 执行 plugin_manager install_bundle。这一次调用就完成了包安装与 bundle 选择 —— 不要手工改 profile 的 package.json 或 cordis.patch.yml。
圆环会在一秒内出现在输入框下方的统计行里,紧挨内置上下文圆环右侧(◯6% ◯8%)。
它会出现在「全局插件」里,默认启用
bundle/cordis.patch.yml 只在根作用域插入一行插件,且从不写 disabled,所以安装后它会出现在 设置 → 内置插件 → 全局插件,并且每次启动默认启用 —— 不用重贴、不用重新勾选,重启后依然在。
| 设置页 | 设置 → 内置插件 → 全局插件 |
| 行 id | api-balance-ring |
| 默认状态 | 启用(没有任何地方设置 disabled) |
| 重启后保留 | 是 |
🎯 使用
| 操作 | 结果 |
| 悬停圆环 | 提示余额,或今日消费与预算 |
| 点击圆环 | 面板:付款方式、金额、请求数、Tokens、更新时间 |
| 点击别处 / Esc | 关闭面板 |
| 自动 | 每 60 秒刷新;点击圆环也会立即刷新 |
颜色阈值按模式区分。余额模式:≥ ¥5 绿、≥ ¥1 黄、< ¥1 红。消费模式:< 60% 预算绿、< 90% 黄、≥ 90% 红。
🧮 数据与准确性
| 数据 | 来源 |
| 余额(账号模式) | deepseekAccount.getBalance() —— harness 自己持有的登录钱包,不发外部请求 |
| 余额(API Key 模式) | 官方 https://api.deepseek.com/user/balance,用已存的 DEEPSEEK_API_KEY 鉴权 |
| 请求 / Tokens | 你自己的会话日志 —— 每条 assistant/message 事件都带真实用量(inputTokens、outputTokens、cacheReadTokens) |
| 金额 | 官方按模型人民币价,逐请求、逐 token 类型计算 |
圆环如何选择主题 —— 跟随 provider,而非登录状态
输入框指向某个 provider,那才决定谁在付钱。「DSH 账号是否登录」是另一个问题,用它判定会出错:你完全可能已登录 DSH 账号,而输入框用的是小米 MiMo 自己的 API Key —— 这时圆环会去报别人的钱包。
所以识别读取的是输入框当前指向的 provider 并据此分类:
| 正在使用的 provider | 识别为 | 圆环显示 | 面板标注 |
| deepseek-account | 账号登录 | deepseekAccount.getBalance() 的充值余额 | 账户余额 |
| deepseek | API Key | 官方 /user/balance 数值 | API余额 |
| 其他(如 xiaomi) | 第三方 | 今日消费 ÷ 日预算 | 今日用量 |
识别结果显示为面板里的付款方式一栏,并具体标出 provider(xiaomi API Key),所以你能看出圆环在跟随什么。
账号读取的是充值余额(balance.value)。赠送余额(bonusWallets)在设置里是独立一行,刻意不并入圆环。
第三方 provider 若没有余额接口 —— 小米 MiMo 就是如此 —— 就无法读取余额(定价只给了网页控制台;GET /v1/models 返回 200,而 /v1/balance 等五个候选端点全部 404)。遇到这类 provider,圆环落到上表第三行,改为衡量今日消费与日预算。
费率表(元 / 百万 tokens —— 官方国内价)
| 模型 | 输入(命中缓存) | 输入(未命中) | 输出 |
| mimo-v2.6-flash · mimo-v2.5 | ¥0.02 | ¥1.00 | ¥2.00 |
| mimo-v2.6-pro · mimo-v2.5-pro | ¥0.025 | ¥3.00 | ¥6.00 |
| mimo-v2.6-pro-ultraspeed | ¥0.25 | ¥30.00 | ¥60.00 |
来源:MiMo API 定价。缓存写入目前免费(缓存写入:限时免费),因此不计价。批量推理半价,但会话日志没有批量标记,故一律按实时价计。
费率表与 provider 绑定。 pricingFor(provider, model) 只在 provider 属于 MIMO_PROVIDERS 时才返回费率;其他 provider 的请求照常计数、tokens 照常累加,但绝不用 MiMo 的价格去算 —— 而是标为 unpriced。把 DeepSeek 账号的调用按 MiMo 价格计费会悄悄给出错误金额,宁可留个诚实的缺口,也不要一个错数。
统计口径
- ✅ 按当前 provider 统计 —— 也就是输入框指向的那个。
- ✅ 每条请求用它自己 request/header 事件里的费率,会话中途切换模型前后都算得准。
- ✅「今日」指你本地自然日(00:00 → 此刻)。
- ⚠️ 模型不在费率表内的请求,金额前会加 ~ 前缀 —— 该数字是低估,绝不会静默给错。
- ⚠️ 批量推理半价,但日志无批量标记,批量流量会被按实时价高估。
⚙️ 配置
所有配置都在各文件顶部的 CONFIG 块里。
| 常量 | 文件 | 默认 | 含义 |
| referenceBalance | bundle/client.js | 50 | 余额模式下填满圆环的 ¥ 数 |
| warnBelow / dangerBelow | bundle/client.js | 5 / 1 | 余额模式的颜色阈值(¥) |
| dailyBudgetCny | bundle/index.js | 50 | 消费模式下填满圆环的日预算 ¥ |
| warnRatio / dangerRatio | bundle/client.js | 0.6 / 0.9 | 消费模式的颜色阈值 |
| refreshMs | bundle/client.js | 60000 | 后台刷新间隔 |
| tooltipDelayMs | bundle/client.js | 200 | 悬停提示延迟 |
| MIMO_PROVIDERS | bundle/index.js | ['xiaomi'] | 费率表对其权威的 provider |
| PRICING | bundle/index.js | — | 按模型费率表,元/百万 tokens(新模型加在这里) |
| accountClientVersion | bundle/index.js | harness 版本 | 余额请求附带的客户端版本 |
| balancePath / statsPath | 两者 | /__dsh-api-balance-ring/… | 两条宿主路由,两半必须一致 |
❓ 常见问题
为什么金额前有 ~? 该请求用的模型不在费率表内(比如刚发布的新模型),或其 provider 没有价目。请求数和 tokens 仍会计入,金额标为近似。
为什么「今日」比平台看板少? 插件读的是你的 harness 的会话日志。其他工具或直接调 API 的用量不在其中,日界线的细微差别也会让计数差几条请求。
为什么圆环显示的是消费而不是余额? 因为你当前所在的 provider 没有余额接口 —— 见上文说明。切到 deepseek provider,圆环就会显示余额。
会动到我的凭据吗? 账号路径调用 harness 自己的 deepseekAccount 服务,接触不到 token。API Key 路径只把已存的 DEEPSEEK_API_KEY 放进余额请求的 Authorization 头。消费路径完全不发外部请求。
支持 mimo-v2.6-pro 吗? 支持 —— 这正是按请求计价且与 provider 绑定的原因。在输入框切换模型,圆环随之变化。
🖥 兼容性 —— macOS 与 Windows
同一份文件在两个平台通用,不依赖 harness 解析出了哪个 shell。
| 关注点 | 处理方式 |
| HTTP 请求 | 宿主半区是普通 Node 模块,直接用平台全局 fetch —— macOS 与 Windows 完全一致 |
| 调 shell | 从不。没有 curl、没有 curl.exe,也没有 sh -c vs powershell -Command 的分支要选对 |
| Client → Host | 两条命名空间隔离的 webServer 路由,页面内 fetch,与内置 HMR 客户端同通道 |
| 会话日志聚合 | 纯 JavaScript 走 sessionQuery —— 两平台一致 |
| 插件安装 | plugin_manager install_bundle —— 一次调用,profile 级,重启保留 |
早期的动态插件形态要 shelling out 到 curl,还必须按平台分支。转成 bundle 之后这一整层就没了:bundle 的宿主半区是普通 Node 模块,可移植性是结构性的,而非一张特例表。
🚧 已知限制
- 没有余额接口的第三方 provider(目前是 MiMo)只能提供消费计量,无法提供余额。
- 更新已安装的副本需要重启 harness:替换已安装的包才会加载新一代 JavaScript 模块,原地改动会把旧模块留在内存里。
- 用量来自会话日志 —— 反映的是 harness,不是你整个 API 账户(直接调 API 与其他工具不计)。
🤝 贡献
欢迎 PR!我们想要的:
- 配置界面(日预算、阈值、参考余额),替代代码常量。
- 更多 provider 的费率表,让 ~ 标记对它们也消失。
请保持两半零依赖 —— bundle/index.js 不得 import 任何东西,bundle/client.js 必须是只用 require 种子词的普通脚本。
📄 许可证
MIT © EdwinZDZ
视觉语言(圆环几何、面板表面、提示气泡)借鉴自 DeepSeek Harness 内置的上下文占用圆环,MIT 许可。*预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
EdwinZDZ/dsh-api-balance-ring
DeepSeek Harness 输入框旁的实时 DeepSeek API 余额环——悬停看实时余额,点击看今日花费 / 请求数 / token,按模型计价(flash 和 pro,区分高峰与非高峰)。
相关插件 · UI / 主题
破甲增强版JeffKeeping/dsh-purge-plus
dsh-purge 的非官方分支fork:适配 DeepSeek Harness 0.2.1-rc.2、破甲内核…
★ 387已汉化DeepSeek 客户端
71.9
无代码业务系统平台nocobase/nocobase
NocoBase 是什么
★ 24,804已汉化DSH
71.8
1Panel 服务器面板1Panel-dev/1Panel
全球 250 万+ 自托管用户共同喜爱。
★ 37,350已汉化DSH
71.5
工作状态行动态ccch1mneyyy/working-activity
作者:chimney@ccch1mneyyy。社区项目,非 DeepSeek 官方项目。
★ 664已汉化DSH
71.2
多模型配置管家farion1231/cc-switch
跨平台桌面一体化助手,支持 Claude Code、Codex、OpenCode、DeepSeek Harness 等工具,唯一官网 ccswitch.io
★ 151,506已汉化DSH
71.1
AI 矢量设计工具ZSeven-W/openpencil
全球首个 AI 原生开源矢量设计工具。
★ 7,027已汉化DSH
71.1
这是你的仓库?认领条目