balance-dsh 1.2.3 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +29 -6
- package/lib/client.js +616 -195
- package/lib/index.js +298 -39
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -2,22 +2,29 @@
|
|
|
2
2
|
|
|
3
3
|
DSH 插件:在 Web UI 中直接显示 DeepSeek 账户余额和当前会话 token/金额消耗。
|
|
4
4
|
|
|
5
|
+
> **仅支持 DeepSeek,暂不支持其他大模型。**
|
|
6
|
+
> 余额读的是 DeepSeek 官方账号(未登录时回退 DeepSeek API Key),费用按 DeepSeek 官方价表估算,模型识别也只认 DeepSeek 的模型名。如果你通过其他厂商或自建服务用 DSH(OpenAI、Claude、本地模型等),本插件**不会**给出正确的余额和费用:余额会显示为不可用,模型会回落按 Flash 价估算,数字仅供参考。
|
|
7
|
+
|
|
5
8
|
## 功能
|
|
6
9
|
|
|
7
10
|
- **侧边栏余额行**:侧边栏展开时显示在底部(紧贴"设置"按钮上方),格式:钱包图标 + `余额` + 金额(带货币单位)+ 时段标签(高峰红 / 空闲绿)。金额按余额状态变色:充足绿色、偏低(<10)琥珀黄、为 0 显示红色"去充值"。
|
|
8
|
-
-
|
|
9
|
-
- **自动刷新**:每 60
|
|
11
|
+
- **收起态圆钮**:侧边栏收起时,余额显示为左下角 **60px 圆形**悬浮按钮(liquid glass 质感,圆内显示 `¥金额`;大小和水平位置可在配置界面调整)。
|
|
12
|
+
- **自动刷新**:每 60 秒自动刷新一次(间隔可配置);每次对话完成(新回复落库)也会立即刷新;右键余额任意区域可手动刷新。
|
|
10
13
|
- **余额与使用统计**:单击余额打开**居中弹窗**(带半透明模糊遮罩),展示账户余额、近 90 天计费 Token、估算费用、活跃天数、按模型与高峰/空闲拆分、今日/近 7 天/近 30 天、日均与峰值日,以及按日使用热力图;点遮罩 / 按 `Esc` / 点关闭按钮均可关闭,双击余额在**应用内**打开 DeepSeek 官方用量页(官方版自带内嵌浏览器,不再弹出系统浏览器;旧版环境自动回退到浏览器)。
|
|
11
14
|
- **高峰/空闲计费**:官方高峰窗口为**工作日 09:00-12:00、14:00-18:00(北京时间)**;周末、**中国法定节假日全天**都按空闲计费,**调休上班的周末按工作日**计峰谷。节假日安排会自动从公开数据源补录(内置 2026 年表作离线兜底,无需手动更新)。消耗金额**跨时段精确计费**:高峰时段的 token 按高峰价 ×2、空闲时段按目录价,按事件时间分桶计算。
|
|
12
|
-
-
|
|
15
|
+
- **会话消耗行**:对话框下方实时显示当前会话消耗(`数据库图标 + 本会话消耗 + ≈¥金额`),**点击**展开明细浮层(Token 用量、缓存命中率、模型、高峰/空闲拆分、子代理消耗)。
|
|
13
16
|
- **应用内查看官方用量**:双击余额、或点统计面板里的「查看官方用量」,都会在应用内嵌浏览器里打开官方用量页(余额、消费金额、请求次数、Tokens);「去充值」同理。旧版 DSH 缺少内嵌浏览器时自动回退系统浏览器。
|
|
14
17
|
- **`/balance` 命令**:命令行查询余额明细和当前会话消耗。
|
|
15
18
|
|
|
16
19
|
### 使用统计口径
|
|
17
20
|
|
|
21
|
+
**插件显示的所有金额都是本地估算,不是 DeepSeek 官方账单。** 想要准确数字请用「查看官方用量」打开官方用量页(双击余额、或点统计面板里的按钮)。
|
|
22
|
+
|
|
18
23
|
- 热力图按北京时间聚合最近 90 天持久化会话中的 `assistant/message` Token usage。
|
|
19
|
-
-
|
|
20
|
-
-
|
|
24
|
+
- 费用按每条消息的**实际模型**和**峰谷时段**估算:高峰时段的 token 按高峰价、空闲时段按目录价,按事件分桶计算。
|
|
25
|
+
- **峰谷归属按「请求发起时刻」判定**(取 `step/start` 事件的 `time`;拿不到时回退消息完成时刻)。**官方并未公开跨时段请求到底按发起还是按完成计费**,所以这是一个合理猜测而非官方口径;如果官方实际按响应生成时间逐段计费,一次横跨边界的请求真实费用会介于「全高峰」和「全空闲」之间,本插件两种口径都算不出这个中间值。(实测影响很小:请求平均耗时约 6 秒,长请求也只到分钟级,撞上窗口边界的概率极低。)
|
|
26
|
+
- 其他已知误差来源:本地 token 数与官方计费口径可能不同(系统提示、工具调用的内部算法未公开);缓存命中与否按 usage 字段判断,官方口径可能不同;官方调价后需等插件更新价表;模型靠事件里的切换点推断,同名不同版本分不清。
|
|
27
|
+
- 为避免历史会话过多拖慢 DSH,默认最多扫描最近 200 个会话;服务端统计和客户端展示结果均缓存 5 分钟,重复打开菜单不会重复请求。**这两个值、以及刷新间隔、各类显示开关,都能在下面的配置界面里改。**
|
|
21
28
|
- 账户余额优先读取 **DSH 官方账号**(官方版登录后即可用,无需 API Key);未登录官方账号时回退到 API Key。两者都不可用时仍可查看本地 Token 与费用统计,只是余额会显示为不可用。
|
|
22
29
|
|
|
23
30
|
## 安装
|
|
@@ -70,7 +77,23 @@ dsh plugin --profile desktop add github:Rannist/balance-dsh
|
|
|
70
77
|
|
|
71
78
|
## 配置
|
|
72
79
|
|
|
73
|
-
|
|
80
|
+
### 可视化配置(推荐)
|
|
81
|
+
|
|
82
|
+
DSH 主界面**左上角「插件」** → 点 `balance-dsh` → 详情页里的 **「余额与用量」** 卡片即可调整:
|
|
83
|
+
|
|
84
|
+
| 分组 | 可调项 |
|
|
85
|
+
|---|---|
|
|
86
|
+
| 余额 | 刷新间隔、低余额警示阈值、API Key |
|
|
87
|
+
| 界面显示 | 侧边栏余额行 / 会话消耗行 / 高峰空闲标签 的显隐开关 |
|
|
88
|
+
| 收起态圆钮 | 显示开关、直径、距左缘 |
|
|
89
|
+
| 用量统计 | 扫描会话数上限、统计缓存时长 |
|
|
90
|
+
| 计费 | 高峰时段倍率、自定义 Flash / V4-Pro 价格(留空 = 用官方默认价,只填一部分也行) |
|
|
91
|
+
|
|
92
|
+
改完点「保存设置」(想还原就点「恢复默认」再保存)。设置存放在你的 `.dsh` 目录下的 `balance-dsh.json`。**客户端项保存后刷新即生效;服务端项(刷新间隔、价格、统计范围、API Key)需重启 DSH Desktop。**
|
|
93
|
+
|
|
94
|
+
### 配置文件 / 注册项覆盖
|
|
95
|
+
|
|
96
|
+
也可以在插件注册项(或 `cordis.patch.yml`)中覆盖:
|
|
74
97
|
|
|
75
98
|
```yaml
|
|
76
99
|
- id: balance
|