前言¶
DeepSeek Harness(命令名 dsh)是 DeepSeek AI 开源的智能体运行时,目前仍是开发者预览。它的核心理念是「一切皆插件」:模型、工具、技能、会话、沙箱和界面都可以用插件替换或组合。社区里还有一份独立的插件目录站点 deepseek-harness-plugin.com,它和 DeepSeek / 幻方没有官方从属关系,收录的是带 dsh-plugin 话题的社区仓库。
日常用网页界面跑 DeepSeek 模型时,余额往往要另开平台页面才能看到。2026-08-17 起,官方 API 又按北京时间引入峰谷定价:高峰时段(9:00–12:00、14:00–18:00)价格是空闲时段的两倍。会话还在进行,计费档位已经切过去了,如果界面上没有任何提示,只能事后对账单。
crazywoola 维护的 dsh-balance 把这件事收进 Harness 自己的设置页和聊天框下方:用本机已经保存的 API Key,查询官方余额和当前可用模型。密钥只在 Host 侧使用,不会发到浏览器。
本文按插件目录页、GitHub 仓库 README / package.json / 源码、npm 包页,以及 DeepSeek 官方余额接口与定价文档交叉核对后整理。GitHub 上还有 deepforce/dsh-balance、LemCAE/dsh-balance 等近名仓库,功能和安装命令都不相同;本文只写 crazywoola/dsh-balance。
这是什么¶
dsh-balance 是一款面向 DeepSeek Harness Web UI 的「工具与能力」插件,由 crazywoola 维护,仓库地址是 crazywoola/dsh-balance。npm 包名是 @pinkbanana/dsh-balance,当前版本 0.4.1(2026-08-17 发布)。许可证 MIT,主要语言 TypeScript,要求 Node.js ≥ 20。GitHub 仓库创建于 2026-08-14。截至 2026-08-17,GitHub 显示 19 颗星;目录页当时仍标注 14 颗,星标以仓库页面为准。
目录页的短简介是「设置页的 DeepSeek 余额插件」。仓库 README 写得更完整:查询 API 余额和当前可用模型;API Key 仅由本机 Host 使用,不会发送到浏览器。package.json 里的 dsh.client.platform 为 web,客户端会注入设置页和会话输入框下方的槽位。
它解决的问题很具体:不必离开 Harness 去打开 DeepSeek 平台,就能看到总余额、充值余额、赠送余额,以及当前密钥能调哪些模型;聊天框下方再挂一条摘要,高峰时段用橙色指示灯提醒。
核心功能¶
设置页里的余额和模型¶
安装后,设置侧栏会出现「DeepSeek 余额」入口,源码里把它挂在 settings.section 槽位,order 为 21,README 说明该入口位于「Agent 预设」下方。页面分两块:
- DeepSeek API 余额:按币种展示总余额、充值余额、赠送余额,以及账户是否还有可用余额。数据来自官方
GET /user/balance。DeepSeek 文档里该接口会返回is_available,以及balance_infos中的currency(CNY/USD)、total_balance、granted_balance、topped_up_balance。 - DeepSeek 可用模型:列出当前 API Key 能访问的模型 id 与提供方。数据来自官方
GET /models。
两块都有手动刷新按钮。Host 默认把结果缓存 30 秒;刷新时客户端会带上 ?refresh=1,跳过缓存再查一次。页面会标明更新时间,缓存命中时附带「缓存」字样。
聊天框下方的余额摘要¶
客户端还往 conversation.composer.dock 注入一条紧凑摘要,显示在已有会话的输入框下方。摘要按币种拼接总余额,例如 CNY … · USD …。源码里这条摘要每 60 秒 自动再查一次(走缓存,不会每次都打到 DeepSeek)。
2026-08-17 北京时间 00:00 起,官方峰谷定价生效。插件在高峰时段把这条摘要的指示灯改成橙色,并标出「高峰时段」或「低谷时段」。源码把高峰窗口写成左闭右开:北京时间 [09:00, 12:00) 与 [14:00, 18:00),其余为空闲;每 30 秒重算一次当前时段,并提示下一次切换时间。官方定价页写的是「高峰时段为北京时间 9:00 - 12:00、14:00 - 18:00,空闲时段价格为高峰时段的一半」,和插件采用的窗口一致。
这项能力只做档位提示,不估算本会话已经花了多少钱,也不改模型路由。
密钥留在 Host,浏览器只拿结果¶
插件分成 Host 和 Web 客户端两半:
- Host 注入
webServer和credentials,注册两条本机路由:/dsh-balance/api/balance、/dsh-balance/api/models。查询时通过凭证服务解析DEEPSEEK_API_KEY(可改配置项apiKeyRef),用 Bearer 调用https://api.deepseek.com。默认超时 10 秒。 - 浏览器只请求上述同源路由,拿到已经去掉密钥的 JSON。README 和设置页文案都写明:密钥不会发送到浏览器。
默认配置里 allowRemote 为 false:非本机回环地址访问这两条路由会得到 403。baseUrl 必须是 HTTPS;只有指向 localhost / 127.0.0.1 / ::1 的 HTTP 才被接受,方便本地测试。
未配置密钥时,Host 返回 401,界面提示先到「设置 → 模型」保存 DeepSeek API 密钥。密钥无效、限流、超时、上游不可用,都会映射成界面上的对应错误文案,响应里不带回上游原文或凭证。
中英文跟随系统语言¶
界面文案内置简体中文和英文,并注册到 Harness 的 locale 命名空间 dsh-balance,跟随系统语言切换。导航名在中文环境下是「DeepSeek 余额」,英文是 “DeepSeek Balance”。
安装与启用¶
目录页给出的安装命令是:
dsh plugin add github:crazywoola/dsh-balance
如需可复现安装,目录页要求固定 commit 哈希:
dsh plugin add github:crazywoola/dsh-balance#commit
把 commit 换成仓库里实际的提交哈希。插件以当前 dsh 进程的权限运行,安装时可能执行代码;安装前请检查源代码仓库和许可证。
这个插件声明了 Web 客户端,仓库 README 推荐写到 web profile,并从 npm 安装当前版本:
dsh plugin --profile web add @pinkbanana/dsh-balance@latest
dsh --profile web
dsh --profile web 会启动网页界面,官方仓库说明默认地址是 http://127.0.0.1:3080。装完后打开 Web UI,进入「设置 → DeepSeek 余额」。API Key 可在「设置 → 模型」中保存,或通过环境变量 DEEPSEEK_API_KEY 提供。
两条安装路径指向同一份仓库:GitHub 源是 crazywoola/dsh-balance,发布到 npm 时包名是 @pinkbanana/dsh-balance。不要把目录里的 github:crazywoola/dsh-balance 改成其他同名仓库。
典型用法¶
- 确认本机已经能打开 DeepSeek Harness 的 Web UI,并且在「设置 → 模型」里保存了可用的 DeepSeek API Key,或导出了
DEEPSEEK_API_KEY。 - 按上一节安装插件,并用 web profile 启动。
- 打开「设置 → DeepSeek 余额」。第一次进入会看到「查询中…」,随后出现总余额、充值余额、赠送余额,以及当前密钥可用的模型列表。
- 需要最新数字时点「刷新余额」或「刷新模型」。默认 30 秒内的重复查询会命中 Host 缓存。
- 回到已有会话,输入框下方应出现「DeepSeek 余额」摘要。高峰时段指示灯为橙色,并提示何时回到低谷价;空闲时段则提示下一次进入高峰的时间。
Host 侧还可以改这些配置(均来自仓库 src/index.ts 的 Config,不是文档里的口头约定):
| 配置项 | 默认值 | 含义 |
|---|---|---|
apiKeyRef |
DEEPSEEK_API_KEY |
凭证服务里的密钥引用名 |
baseUrl |
https://api.deepseek.com |
DeepSeek API 根地址 |
timeoutMs |
10000 |
上游请求超时,范围 1–60000 |
cacheMs |
30000 |
余额和模型列表的缓存时间,范围 0–300000 |
allowRemote |
false |
是否允许非本机访问查询路由 |
没有特殊需求时保持默认即可。尤其不要在不了解暴露面的情况下把 allowRemote 打开。
适用场景与注意事项¶
适合已经在 DeepSeek Harness Web UI 里使用官方 DeepSeek API、希望把余额和模型列表留在本机界面上的开发者。高峰 / 空闲切换频繁的白天,聊天框下方的橙色指示灯比事后对账单更及时。
下面这些边界需要事先清楚:
- 只覆盖 Web UI。
package.json把客户端平台标成web,终端 TUI 或其他 profile 不会出现设置页和输入框摘要。 - 不是账单或会话成本面板。 它查询账户余额和
/models列表,不统计本次会话的 token,也不按单价估算花费。社区里其他近名插件可能带/balance斜杠命令或会话费用,那不是这一份。 - 依赖已保存的官方密钥。 没有
DEEPSEEK_API_KEY,或密钥无效,界面只会提示去「模型」设置里保存,不会替你登录 DeepSeek 平台。 - 默认只服务本机。 Host 路由拒绝非回环请求。把 Harness 暴露到局域网或公网时,不要指望浏览器隔着另一台机器直接查余额。
- 峰谷提示跟官方窗口走。 官方保留改价权利。插件把生效起点写死为 2026-08-17 00:00(北京时间);若官方以后调整时段,需要看仓库是否同步更新
src/client/pricing.ts。 - 插件以当前 dsh 进程权限运行。 安装时可能执行代码。安装前检查 GitHub 源码和 MIT 许可证;生产环境用目录页写的
#commit固定版本。DeepSeek Harness 仍是开发者预览,官方 README 标明会有破坏性变更。
小结¶
dsh-balance 把官方 GET /user/balance 和 GET /models 接到 DeepSeek Harness 的设置页,并在聊天框下方留一条余额摘要。密钥只在本机 Host 使用;2026-08-17 起的峰谷时段会把摘要指示灯打成橙色。它不替代平台账单,也不估算单次会话花费,但能减少「开着 Harness 却不知道还剩多少余额、现在是不是高峰价」这类往返。
目录页:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-balance/
GitHub:https://github.com/crazywoola/dsh-balance