在侧边栏实时查看账户剩余余额与赠送额度
30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/25 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add jeremytenjo/dsh-plugin-balance-indicator该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · ui
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 7 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
发起外部网络请求
查看扫描证据(共 3 处,展示前 3 条)
- 请求外部主机platform.deepseek.comclient.js:7
var Xe=Object.create;var L=Object.defineProperty;var et=Object.getOwnPropertyDescriptor;var tt=Object.getOwnPropertyNames;var rt=Object.getPrototypeOf - 发起网络请求client.js:7
var Xe=Object.create;var L=Object.defineProperty;var et=Object.getOwnPropertyDescriptor;var tt=Object.getOwnPropertyNames;var rt=Object.getPrototypeOf - 发起网络请求client.js:107
`)}async function It(e,t,r){let s=new URL(St,window.location.origin);s.searchParams.set("locale",Ye(r)),s.searchParams.set("tz",String(Je()));let i=Ft
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
涉及外部主机:platform.deepseek.com
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
在 DeepSeek Harness 的输入框状态栏显示 DeepSeek Platform 剩余余额。
README
由 DeepSeek 最新模型翻译生成DeepSeek Harness 的 DeepSeek 余额
在左侧边栏底部、账户那一行上方,显示 DeepSeek Platform 还剩多少余额。
徽标从你登录的 DeepSeek 账户读取余额,显示为 ¥12.34 / $12.34,每 60 秒刷新一次,窗口重新获得焦点时也会刷新;点击徽标会打开 platform.deepseek.com/usage。金额旁边的刷新按钮可以立即强制读取一次。鼠标悬停时显示赠送额度、按币种拆分的明细和上次刷新时间。
功能
- 一眼看到剩余余额:位于左侧边栏底部,紧挨账户和 Plugins 控件。
- 赠送额度与付费余额分开显示:赠送额度列在提示框里,不会悄悄加到余额上。
- 刷新足够及时:一个 TanStack Query 缓存条目会在挂载时、每 60 秒、窗口重新获得焦点或网络重连时刷新;Host 侧用 20 秒缓存合并请求。
- 手动刷新:金额旁的刷新按钮绕过 Host 缓存,读取期间按钮旋转,绝不会误打开用量页面。
- 点击直达用量页:用账户自带的 usageUrl 打开 Platform 用量页面。
- 状态如实显示:没有连接 DeepSeek 账户时显示 Sign in,查询失败时显示 Unavailable(点击重试),不会伪造零余额。
- 英文和中文界面,跟随 Harness 的语言设置。
展开完整文档(README 剩余 1 节)
DeepSeek Harness 的 DeepSeek 余额
在左侧边栏底部、账户那一行上方,显示 DeepSeek Platform 还剩多少余额。
徽标从你登录的 DeepSeek 账户读取余额,显示为 ¥12.34 / $12.34,每 60 秒刷新一次,窗口重新获得焦点时也会刷新;点击徽标会打开 platform.deepseek.com/usage。金额旁边的刷新按钮可以立即强制读取一次。鼠标悬停时显示赠送额度、按币种拆分的明细和上次刷新时间。
功能
- 一眼看到剩余余额:位于左侧边栏底部,紧挨账户和 Plugins 控件。
- 赠送额度与付费余额分开显示:赠送额度列在提示框里,不会悄悄加到余额上。
- 刷新足够及时:一个 TanStack Query 缓存条目会在挂载时、每 60 秒、窗口重新获得焦点或网络重连时刷新;Host 侧用 20 秒缓存合并请求。
- 手动刷新:金额旁的刷新按钮绕过 Host 缓存,读取期间按钮旋转,绝不会误打开用量页面。
- 点击直达用量页:用账户自带的 usageUrl 打开 Platform 用量页面。
- 状态如实显示:没有连接 DeepSeek 账户时显示 Sign in,查询失败时显示 Unavailable(点击重试),不会伪造零余额。
- 英文和中文界面,跟随 Harness 的语言设置。
- 浏览器里不碰密钥:路由只返回钱包金额和链接。
要求
- DeepSeek Harness 0.2.1-rc.2(本插件就是针对这个版本构建的)。
- 通过 Harness Settings → Account 登录的 DeepSeek 账户。余额来自 Platform 账户会话;只用 API key 的配置没有余额可读。
- Harness Host 能访问 platform.deepseek.com。
安装
git clone https://github.com/jeremytenjo/dsh-plugin-balance-indicator.git
dsh plugin --profile desktop add ./dsh-plugin-balance-indicator
重启 Host 或重新加载页面,然后启动或打开一个会话。徽标会出现在左侧边栏底部、账户那一行上方。把 desktop 换成 dsh --profile <name> --dump-config 显示的配置档名称。
也可以手动安装:把包目录以 link: 形式加到配置档的 dependencies,再加到 dsh.profile.bundles,然后运行该配置档的包安装。优先用插件命令,这些文件由它管理。
用法
| 状态 | 底部徽标 | 点击徽标 |
| 已登录,余额已加载 | ¥12.34 | 打开 Platform 用量页面 |
| 余额含赠送额度 | ¥12.34(悬停查看赠送明细) | 打开 Platform 用量页面 |
| 未登录 | Sign in | — |
| 查询失败 | Unavailable | 重试 |
| 首次加载 | Balance… | — |
刷新按钮就在金额旁边,任何状态下都能用。它会向 Host 发起一次强制读取(refresh=1,绕过 20 秒缓存),读取期间按钮转圈,并把屏幕阅读器读到的标签从「Refresh balance」改成「Refreshing balance…」。如果已有轮询正在进行,点击刷新会取消它,改用强制读取重新开始,所以按钮绝不会返回过期的缓存金额。
鼠标悬停在徽章上,会显示每个钱包币种、余额为正的赠送钱包、上次成功刷新的时间,以及点击提示。
徽章沿用侧边栏页脚自己的 42px 操作行、圆角和主题 token,因此无需配置就能自动适配浅色和深色主题。侧边栏页脚只有一行,与内置的 Plugins 启动器共用:余额和刷新按钮只占内容宽度,排在最前面;侧边栏折叠成 56px 窄栏时它们隐藏(展开后缓存余额立刻重新出现)。
工作原理
client.js ── GET /__dsh/deepseek-balance ──▶ index.js
│
├─ ctx.deepseekAccount.getState()
└─ ctx.deepseekAccount.getBalance(client)
│
▼
platform.deepseek.com
index.js 是 Host 那一半。它注册一条精确的 loopback 路由,调用 Harness 账户服务,该服务已经持有 Platform 凭据和 /api/v0/users/get_user_summary 查询。插件从不读取凭据存储,从不记录 token,只返回:
{
"ok": true,
"status": "ready",
"wallets": [{ "currency": "CNY", "balance": "12.34" }],
"bonusWallets": [{ "currency": "CNY", "balance": "2.00" }],
"links": {
"usageUrl": "https://platform.deepseek.com/usage",
"topUpUrl": "https://platform.deepseek.com/top_up"
},
"fetchedAt": 1790000000000
}
这条路由只接受 loopback 请求,拒绝外部 Origin 和跨站 fetch,发送 cache-control: no-store,并限制钱包列表长度和字符串长度。账户查询失败不缓存,重试或下一次轮询就能恢复;成功读取缓存 20 秒,用来合并多个窗口的请求。
client.js 是浏览器那一半。它用包名注册一个懒加载工厂,添加一条 sidebar.footer.action 条目,order 为 -1(排在内置 Plugins 启动器之前),并通过客户端 locale 服务注册英文和中文文案。插槽会传入侧边栏的 wide 标志:徽章只在侧边栏展开时渲染,因为折叠后的 56px 窄栏已经放了 Plugins 启动器。
徽章的状态存在一个 TanStack Query 条目里,以语言和时区为键,数据就是路由响应:
- staleTime: 20s 与 Host 缓存一致,因此只有在该缓存可能已变动后,聚焦触发的重新获取才会再次请求。
- refetchInterval: 60s 在窗口可见时轮询;refetchOnWindowFocus 和 refetchOnReconnect 覆盖间隙时段。
- 点击失败状态会带上路由的 refresh=1 标志调用 refetch();查询自身的重试循环已禁用,因此失败会立即上报,而不是等到退避之后。
- 刷新按钮设置同样的强制标志并调用 refetch()。它在获取期间不会禁用,因此键盘焦点永远不会丢失;取而代之的是图标旋转、无障碍标签变化,并且读取完成后 60 秒间隔重新开始。
- Host 查询失败(status: "failed")的响应会作为数据缓存,而不是作为错误缓存,因此失败状态会立即出现,60 秒轮询会自行恢复。成功加载后的网络错误会保留最后已知的金额可见,而不是替换它。
- QueryClient 按每个启用的插件实例创建,提供给徽章子树,并在插件禁用时于 effect 清理中清除。缓存条目在侧边栏折叠后仍然存在,因此再次展开时会显示最后的金额,同时任何过期的获取仍在运行。
src/client.js 是可编辑的源文件。scripts/build-client.mjs 用 esbuild 将其打包进 client.js,保持 React 为外部依赖,以便页面的共享模块表提供它,并将 TanStack Query 打包进去,因为该表不提供它。不要直接编辑 client.js。
配置
无。Platform 源属于 Harness 账户服务商;此插件跟随它,而不是硬编码 API 主机。用量回退地址是 https://platform.deepseek.com/usage,仅在账户未提供链接时使用。
开发
pnpm install
pnpm run build
node --check index.js
node --check client.js
pnpm install 会带来构建工具链。esbuild 仅用于构建;TanStack Query 被编译进 client.js,而不是作为单独的页面模块加载。pnpm run build 将 src/client.js 打包成模块加载器产物 client.js。编辑 Host 部分或 src/client.js 后,重新加载插件(设置 → 插件 → 禁用/启用)或重启 Host 即可,无需其他操作。locale/*.json 中的语言元数据提供插件管理器的标题、描述和图标。
文件:
- index.js — Host 路由、缓存、账户调用、源检查。
- src/client.js — 侧边栏页脚徽章源文件:查询定义、格式化、刷新控件、工具提示、语言字典。
- scripts/build-client.mjs — 用 __ModuleLoader__ 工厂包装的 esbuild 打包。
- client.js — 生成的浏览器打包文件;不要编辑。
- cordis.patch.yml — 插入 deepseek-balance-indicator 行。
- locale/en.json、locale/zh.json — 插件管理器元数据。
- icon.svg — 原始钱包图标。
安全与隐私
余额通过现有的 Harness 账户会话读取。这个插件不保存凭据,不写 cookie,不做分析,也不发起第三方请求;浏览器只与它自己的回环 Harness 源通信。金额和货币代码会离开 Host,但账户身份、配置档、token 和脱敏后的联系方式不会。
限制
- 必须要有账户会话;只有 API key 的会话会显示 Sign in。
- 只显示 Platform 钱包汇总。按模型的花费和请求历史在用量页面上。
- 有多种货币时,徽标显示与界面语言匹配的货币(中文为 CNY,其他语言为 USD),其余货币列在工具提示里。
- 后台轮询刻意放慢,以免给 Platform API 造成压力;需要精确的当前读数时,用刷新按钮(或用量页面)。
- 徽标位于侧边栏页脚,侧边栏折叠成窄条时隐藏;它需要展开的侧边栏,而不是活跃会话。
- 页脚是与 Plugins 启动器共用的一行,所以侧边栏较窄时,启动器右对齐的运行计数可能被徽标的宽度裁掉。
许可证
MIT © 2026 Jeremy Tenjo预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
jeremytenjo/dsh-plugin-balance-indicator
在侧边栏实时查看账户剩余余额与赠送额度
相关插件 · UI / 主题
破甲增强版JeffKeeping/dsh-purge-plus
dsh-purge 的非官方分支fork:适配 DeepSeek Harness 0.2.1-rc.2、破甲内核…
★ 387已汉化DeepSeek 客户端
71.9
无代码业务系统平台nocobase/nocobase
NocoBase 是什么
★ 24,798已汉化DSH
71.8
1Panel 服务器面板1Panel-dev/1Panel
全球 250 万+ 自托管用户共同喜爱。
★ 37,327已汉化DSH
71.5
终端编码代理esengine/DeepSeek-Reasonix
· 指南 · ACP · 扩展开发 · 规格 · 官方网站 · Discord · QQ
★ 36,021已汉化DSH
71.2
工作状态行动态ccch1mneyyy/working-activity
作者:chimney@ccch1mneyyy。社区项目,非 DeepSeek 官方项目。
★ 664已汉化DSH
71.2
多模型配置管家farion1231/cc-switch
跨平台桌面一体化助手,支持 Claude Code、Codex、OpenCode、DeepSeek Harness 等工具,唯一官网 ccswitch.io
★ 150,724已汉化DSH
71.1