@kenz1117/dsh-ui-usage-billing 1.8.1 → 1.8.2-alpha.2
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.en.md +94 -88
- package/README.md +94 -89
- package/lib/client.js +5 -5
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -1,33 +1,21 @@
|
|
|
1
1
|
<div align="center">
|
|
2
|
+
<img src="screenshots/demo.png" alt="dsh-ui-usage-billing — 把每一分模型开销,看得清清楚楚" width="100%">
|
|
2
3
|
|
|
3
|
-
|
|
4
|
+
<p><strong>真实用量 · 历史账本 · 峰谷计价 · 订阅额度</strong></p>
|
|
4
5
|
|
|
5
|
-
<p
|
|
6
|
-
|
|
7
|
-
<
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
<a href="https://github.com/kenz1117/dsh-ui-usage-billing/blob/main/COMPATIBILITY.md"><img alt="DSH 兼容" src="https://img.shields.io/badge/DSH-0.1.2_%7E_0.2.1--rc.4-blue"></a>
|
|
13
|
-
<a href="https://github.com/kenz1117/dsh-ui-usage-billing/blob/main/LICENSE"><img alt="License MIT" src="https://img.shields.io/github/license/kenz1117/dsh-ui-usage-billing"></a>
|
|
14
|
-
<a href="https://github.com/kenz1117/dsh-ui-usage-billing/pulls"><img alt="PRs welcome" src="https://img.shields.io/badge/PRs-welcome-brightgreen"></a>
|
|
15
|
-
<a href="https://github.com/kenz1117/dsh-ui-usage-billing"><img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/kenz1117/dsh-ui-usage-billing?logo=github"></a>
|
|
16
|
-
<a href="https://github.com/kenz1117/dsh-ui-usage-billing/graphs/contributors"><img alt="GitHub contributors" src="https://img.shields.io/github/contributors/kenz1117/dsh-ui-usage-billing"></a>
|
|
17
|
-
<a href="https://awesome-dsh-plugin.com"><img alt="Awesome DSH Plugin" src="https://awesome-dsh-plugin.com/badge.svg"></a>
|
|
18
|
-
<a href="https://dshfind.com/zh/plugins/kenz1117/dsh-ui-usage-billing"><img alt="dshfind" src="https://dshfind.com/api/badge/kenz1117/dsh-ui-usage-billing"></a>
|
|
19
|
-
</p>
|
|
20
|
-
|
|
21
|
-
[中文](README.md) · [English](README.en.md)
|
|
6
|
+
<p>
|
|
7
|
+
<a href="https://github.com/kenz1117/dsh-ui-usage-billing/actions/workflows/ci.yml"><img alt="CI" src="https://github.com/kenz1117/dsh-ui-usage-billing/actions/workflows/ci.yml/badge.svg"></a>
|
|
8
|
+
<a href="https://www.npmjs.com/package/@kenz1117/dsh-ui-usage-billing"><img alt="npm version" src="https://img.shields.io/npm/v/@kenz1117/dsh-ui-usage-billing?logo=npm"></a>
|
|
9
|
+
<a href="https://www.npmjs.com/package/@kenz1117/dsh-ui-usage-billing"><img alt="npm downloads" src="https://img.shields.io/npm/dm/@kenz1117/dsh-ui-usage-billing?logo=npm"></a>
|
|
10
|
+
<a href="https://github.com/kenz1117/dsh-ui-usage-billing/blob/main/COMPATIBILITY.md"><img alt="DSH 兼容" src="https://img.shields.io/badge/DSH-0.1.2_%7E_0.2.1--rc.4-blue"></a>
|
|
11
|
+
<a href="https://github.com/kenz1117/dsh-ui-usage-billing/blob/main/LICENSE"><img alt="License MIT" src="https://img.shields.io/github/license/kenz1117/dsh-ui-usage-billing"></a>
|
|
12
|
+
</p>
|
|
22
13
|
|
|
14
|
+
[中文](README.md) · [English](README.en.md) · [快速开始](#-快速开始) · [兼容矩阵](COMPATIBILITY.md)
|
|
23
15
|
</div>
|
|
24
16
|
|
|
25
17
|
---
|
|
26
18
|
|
|
27
|
-
<div align="center">
|
|
28
|
-
<img src="screenshots/overview.png" alt="dsh-ui-usage-billing — 计费仪表盘总览" width="80%">
|
|
29
|
-
</div>
|
|
30
|
-
|
|
31
19
|
### 演示动图
|
|
32
20
|
|
|
33
21
|
新版仪表盘八个分区逐个切换(概览 / 队列 / 账单 / 用量 / 趋势 / 智能体 / 费率 / 设置):
|
|
@@ -38,100 +26,99 @@
|
|
|
38
26
|
|
|
39
27
|
市面计费插件大多停在「token 数 × 单价」。dsh-ui-usage-billing 把计费做成一条**可对账的账本链路**——用量是真的、价格是活的、峰谷跟着模型走。
|
|
40
28
|
|
|
41
|
-
|
|
42
|
-
|
|
29
|
+
<table>
|
|
30
|
+
<tr>
|
|
31
|
+
<td width="50%" valign="top">
|
|
32
|
+
<h3>账是真的,还能对账</h3>
|
|
33
|
+
<p>用量从持久化会话日志实时聚合,绝不伪造样本(数据到达前显示空快照);官方余额当日变动与本地账本交叉对账,偏差超阈值主动提示核对——账单经得起质疑。</p>
|
|
34
|
+
</td>
|
|
35
|
+
<td width="50%" valign="top">
|
|
36
|
+
<h3>价格是活的,历史不重算</h3>
|
|
37
|
+
<p>models.dev 实时目录 + 内置 25 厂商 241 款模型 + 设置面板自定义单价(可按中转站绑定同模型不同价),新模型无需等发版;DeepSeek 分时价按官方变更节点<strong>分段计价</strong>(8-17 前基础价、8-17~8-23 周末计峰、8-23 起周末全谷),价格调整永不回写旧账。</p>
|
|
38
|
+
</td>
|
|
39
|
+
</tr>
|
|
40
|
+
<tr>
|
|
41
|
+
<td width="50%" valign="top">
|
|
42
|
+
<h3>峰谷全感知,提醒跟着模型走</h3>
|
|
43
|
+
<p>计费通道按当前会话使用的模型自动识别:DeepSeek 按量走分时价(工作日 9-12 / 14-18 高峰 ×2、周末全天低谷),智谱 Coding Plan 走积分峰谷(工作日 14-18 高峰全额、非高峰<strong>积分 5 折</strong>),通道层可扩展、更多厂商逐步接入;切档前弹窗 / 系统通知自动提醒,且只有当前模型真正涉及峰谷才会提醒、费用条才显示档位——不用你盯时间表。</p>
|
|
44
|
+
</td>
|
|
45
|
+
<td width="50%" valign="top">
|
|
46
|
+
<h3>订阅、余额、额度一屏闭环</h3>
|
|
47
|
+
<p>DeepSeek / Kimi / 智谱 GLM / 腾讯云 TokenHub 等 7 家官方余额、Coding Plan 额度、中转站滚动额度窗口、自声明端点,再加余额差对账——订阅扣的和余额扣的同屏可查、交叉验证。</p>
|
|
48
|
+
</td>
|
|
49
|
+
</tr>
|
|
50
|
+
</table>
|
|
51
|
+
|
|
52
|
+
### 更多能力,一处收口
|
|
53
|
+
|
|
54
|
+
| 费用归因 | 自动化与入口 |
|
|
55
|
+
| --- | --- |
|
|
56
|
+
| 缓存命中、官方 / 三方、工作区 / 会话 / 中转站逐级下钻;子智能体按委派链合并,TTFT、生成速度与费用突增都有据可查。 | 低谷任务队列支持草稿与 JSON 批量入队;会话行可跳回宿主对话,`/usage` 直接打开仪表盘。 |
|
|
57
|
+
| **计价与模型** | **体验与隐私** |
|
|
58
|
+
| 未收录模型明确标注,可用别名和自定义单价补全;可选 `usage_stats` 只读工具默认关闭。 | 中文 / English、¥ / $ / € 独立切换;无图表库、无外部 CDN,默认不注入系统提示。 |
|
|
43
59
|
|
|
44
|
-
|
|
45
|
-
models.dev 实时目录 + 内置 25 厂商 241 款模型 + 设置面板自定义单价(可按中转站绑定同模型不同价),新模型无需等发版;DeepSeek 分时价按官方变更节点**分段计价**(8-17 前基础价、8-17~8-23 周末计峰、8-23 起周末全谷),价格调整永不回写旧账。
|
|
46
|
-
|
|
47
|
-
### 峰谷全感知,提醒跟着模型走
|
|
48
|
-
计费通道按当前会话使用的模型自动识别:DeepSeek 按量走分时价(工作日 9-12 / 14-18 高峰 ×2、周末全天低谷),智谱 Coding Plan 走积分峰谷(工作日 14-18 高峰全额、非高峰**积分 5 折**),通道层可扩展、更多厂商逐步接入;切档前弹窗 / 系统通知自动提醒,且只有当前模型真正涉及峰谷才会提醒、费用条才显示档位——不用你盯时间表。
|
|
60
|
+
## 📊 仪表盘
|
|
49
61
|
|
|
50
|
-
###
|
|
51
|
-
DeepSeek / Kimi / 智谱 GLM / 腾讯云 TokenHub 等 7 家官方余额、Coding Plan 额度、中转站滚动额度窗口、自声明端点,再加余额差对账——订阅扣的和余额扣的同屏可查、交叉验证。
|
|
62
|
+
### 侧栏与即时反馈
|
|
52
63
|
|
|
53
|
-
|
|
64
|
+
- **触发卡**:今日 / 本周 / 本月主数字、近 7 天趋势与当日水位;支持完整卡片、紧凑图标、完全隐藏,悬停可看速览。
|
|
65
|
+
- **费用条与提醒**:常驻本轮 / 会话费用,按当前模型显示峰谷和订阅额度预警;切档与会话完成可发系统通知。
|
|
54
66
|
|
|
55
|
-
|
|
56
|
-
- 子智能体费用并入对话口径:宿主把子智能体落成独立会话,账本按父链把后代消耗归并到委派它的对话(多级委派整链递归),父行「含子智能体」徽标明示合计、展开可见逐个子会话——胶囊上的会话总额与账单对本体+子会话对得上账。
|
|
57
|
-
- 性能面板:各模型首字延时(TTFT)均值 / P50 / P90 与生成速度,同类少有。
|
|
58
|
-
- 未收录模型显著标注「未收录」、绝不静默计 0;目录外模型配一条别名即完成识别与计价。
|
|
59
|
-
- 可选的 `usage_stats` 工具让模型直接回答「今天花了多少」「哪个站点用得最多」。
|
|
60
|
-
- **低谷任务队列(预览)**:用户显式选择工作区、内置 DeepSeek 官方模型并提交 Prompt 后,任务才持久化入队;也可在对话页开启默认关闭的「低谷队列」开关,将当前草稿按原文一键入队,沿用当前 cwd 与模型,不发送当前会话、不跳转,默认保留草稿并可选入队后清稿。支持 JSON 文件批量导入,整批校验后一次原子入队,任一无效则零写入。FIFO 串行、每任务独立会话,只在官方低谷启动,已提交任务跨峰继续,失败或结果未知标「需核对」且绝不自动重放。中转站同名模型不参与;宿主缺少会话控制能力时只读降级,不创建假任务。
|
|
61
|
-
- 默认零工具注入:**仅**当用户在设置里显式开启「注入用量查询」后,才向模型注册 `usage_stats` 这一个只读工具(默认关闭);不注入系统提示。
|
|
62
|
-
- 中文 / English 语言切换,¥ / ≈$ / ≈€ 币种切换(二者独立);无图表库、无外部 CDN、离线自包含。
|
|
63
|
-
- **会话行可跳转**:面板里的会话标题点一下直接打开宿主对话(双代会话选择通道自动探测;宿主不支持时给出可读提示,不静默无反应)。
|
|
64
|
-
- **对话内入口**:`/usage` 命令直接拉起计费仪表盘(宿主无该能力时静默降级,不影响面板)。
|
|
67
|
+

|
|
65
68
|
|
|
66
|
-
|
|
69
|
+
### 八个分区,共享统一口径
|
|
67
70
|
|
|
68
|
-
|
|
71
|
+
概览 / 队列 / 账单 / 用量 / 趋势 / 智能体 / 费率 / 设置。Hero 与 KPI 支持今天、近 7 天、本周、本月、累计和自定义日期;趋势、热力图、预算、费率与全文搜索设置都使用同一份真实账本。
|
|
69
72
|
|
|
70
|
-
|
|
73
|
+

|
|
71
74
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
- **智能体分区**:按委派关系还原的智能体网络——父对话 → 子智能体的层级树,每行给调用数、自身费用与**链合计**(自身 + 全部后代),直接回答「哪次委派最贵」。
|
|
75
|
+
<details>
|
|
76
|
+
<summary><strong>队列、智能体与设置细节</strong></summary>
|
|
75
77
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
-
|
|
79
|
-
- **峰 / 谷切换提醒**:切档前弹窗 + 可选系统通知,提前量 / 位置 / 模式 / 预览均可配;文案按计费通道区分(DeepSeek 价格减半、智谱积分 5 折)。有待执行任务时补充队列说明:排队任务等待下一低谷、低谷按顺序启动、已开始任务跨峰继续;不自动暂停或重放任务。
|
|
80
|
-
- **会话完成提醒**:会话 running → completed 时弹系统通知(默认关闭,面板设置开启);多窗口 / 多实例按认领端点去重,同一会话只提醒一次。
|
|
81
|
-
- **插件信息卡**:设置 Tab 常驻「关于」卡——版本号服务端读自包 `package.json`(单一来源,发布自动正确),作者 / 仓库 / npm / 许可证一键可达。
|
|
78
|
+
- **队列**:显示峰谷倒计时和待执行 / 执行中 / 需核对 / 已完成任务;JSON 单批最多 50 条,任一无效则整批不写入。文件锁与租约避免同一 `DSH_HOME` 多实例重复提交。
|
|
79
|
+
- **智能体**:按委派关系还原父对话 → 子智能体树,每行同时给出自身费用与包含全部后代的链合计。
|
|
80
|
+
- **设置**:全文搜索、全局与按模型预算、峰谷提醒、自定义单价、原生设置页和插件信息卡;侧栏隐藏后可从宿主设置恢复。
|
|
82
81
|
|
|
83
|
-
|
|
82
|
+
</details>
|
|
84
83
|
|
|
85
84
|
## 💰 计费引擎
|
|
86
85
|
|
|
87
|
-
-
|
|
88
|
-
-
|
|
89
|
-
-
|
|
86
|
+
- **按通道归账**:官方、直连、中转与未知路由分开统计;路由别名和模型别名可修复历史归属。
|
|
87
|
+
- **按发生时刻计价**:models.dev 实时目录、内置 25 厂商 241 款模型、分段峰谷价与实时汇率;调价不回写旧账。
|
|
88
|
+
- **按实际支出修正**:同模型可按中转站设置不同单价,未收录模型也能明确补价。
|
|
89
|
+
- **按预算提醒**:全局与按模型预算、50 / 80 / 100% 分档提醒、余额预警和最近 40 轮费用突增归因。
|
|
90
90
|
|
|
91
|
-
|
|
92
|
-
- **官方 vs 三方分桶**:账单 Tab 的模型明细费用列按官方直连 / 第三方中转分解(混合时「官 x / 三 y」);联网搜索辅助请求计入官方。
|
|
93
|
-
- **月度预算 + 分档提醒**:预算条 ≥80% 琥珀、超支红脉;跨 50 / 80 / 100% 各提醒一次;余额折算 CNY 低于阈值每天提醒一次。**按模型预算**:为本月消耗 Top 模型逐个设人民币上限(与全局预算相互独立),单模型跨 80% / 100% 各提醒一次。
|
|
94
|
-
- **成本突增归因**:最近 40 轮费用柱状图,金额贴柱顶、峰谷背景分带、超 2 倍红标归因。
|
|
91
|
+

|
|
95
92
|
|
|
96
93
|
## 🔌 订阅与余额
|
|
97
94
|
|
|
98
|
-
-
|
|
99
|
-
-
|
|
100
|
-
-
|
|
101
|
-
- **声明端点 + 余额对账**:内置表没有的供应商用 `declaredEndpoints` 自声明余额接口——只写「数字在哪里」的点路径、无表达式;安全边界(单斜杠绝对路径、仅 GET、拒跨源重定向、响应体 / 超时上限、凭据只取本 provider)由 `src/declarative.ts` 强制执行,取错路径在界面标 `declared` 与 reason。**余额差对账**(`reconcilePath`)用官方余额当日变动与本地账本交叉校验,偏差超阈值(0.3 元且 >15%)提示核对;充值 / 授信 / 币种变化重置基准而非告警,余额未减少(走订阅扣费)静默。
|
|
102
|
-
- **中转站归组与额度**:按 `baseURL` 归一化 origin 归组,同站多把 key 合并一行、站名即域名;自动识别 New API 系(`/api/status`)与 Sub2API(`/v1/usage`)的余额与滚动额度窗口,读不出标「未读出额度」、剩余 <20% 标红;识别结果 5 分钟指纹缓存(同站多 key 独立熔断),`relay-quotas` 端点附 `diagnostics` 供「为什么不显示」自查;项目归属优先用工作区标题命名。
|
|
95
|
+
- **订阅额度**:自动识别 Kimi、Z.ai、OpenCode Go、MiniMax、Claude、CommandCode 等通道,展示剩余额度与重置时间;订阅模型费用记 0。
|
|
96
|
+
- **官方余额**:覆盖 DeepSeek、Kimi、阶跃星辰、硅基流动、xAI、智谱 GLM、腾讯云 TokenHub,并按近 7 天消耗估算可用天数。
|
|
97
|
+
- **中转与对账**:同站多 key 合并,识别 New API / Sub2API 滚动额度;自定义端点与官方余额差可和本地账本交叉验证。
|
|
103
98
|
|
|
104
|
-
|
|
99
|
+

|
|
105
100
|
|
|
106
|
-
>
|
|
101
|
+
> 各渠道的识别方式、端点、凭据要求与排查顺序见 [适配矩阵](docs/adapters.md)。
|
|
107
102
|
|
|
108
103
|
## 📈 用量可视化
|
|
109
104
|
|
|
110
|
-
-
|
|
111
|
-
-
|
|
112
|
-
-
|
|
113
|
-
-
|
|
114
|
-
- **费用构成(用量 Tab)**:输出成本按实测计价、输入成本按 user / tool 消息文本长度占比摊分(日志无角色级 token 实测,界面标注估算口径)。
|
|
115
|
-
- **性能指标(用量 Tab)**:每模型 TTFT 均值 / P50 / P90、生成速度(tokens/s)、总延迟均值;按小时 × 模型对比曲线——指标 tab 切换、模型 chip 点击开关曲线(默认点亮样本数前 5)、悬停吸附最近小时显示十字线与逐模型数值,缺失样本小时断线不造假;视图偏好本地持久化。
|
|
116
|
-
- **趋势(趋势 Tab)**:每日费用与调用趋势(7 / 30 天可切,费用 / Token 双口径)、最近 40 轮费用柱状图(金额贴柱顶、超 2 倍红标归因)、峰谷时段占比与低谷省下的金额。
|
|
105
|
+
- **下钻**:会话、项目、工作区与站点逐级查看;月 / 半年 / 年热力图展示费用或 Token 强度。
|
|
106
|
+
- **分析**:每日 Token 按结构或模型拆解,工具调用排行、TTFT / P50 / P90、生成速度和成本构成同屏可查。
|
|
107
|
+
- **趋势**:7 / 30 天费用与调用趋势、最近 40 轮费用、峰谷占比与低谷节省金额。
|
|
108
|
+
- **导出**:按日 / 会话 / 站点 CSV、每日 Token CSV 与全量 JSON;无图表库、无外部 CDN。
|
|
117
109
|
|
|
118
|
-
|
|
119
|
-

|
|
120
|
-
- **数据导出 + 下钻**:账单 Tab 导出按日 / 按会话 / 按站点 CSV 与全量 JSON,用量 Tab 导出按日 Token CSV;会话明细可下钻(点项目行展开该项目的会话);无图表库、无外部 CDN、纯设计令牌。
|
|
110
|
+

|
|
121
111
|
|
|
122
112
|
## 🛡️ 健壮性与隐私
|
|
123
113
|
|
|
124
|
-
-
|
|
125
|
-
-
|
|
126
|
-
-
|
|
127
|
-
-
|
|
128
|
-
- **安全加固**:全部 HTTP 端点强制回环访问——peer socket 地址 + Host 头精确匹配双重校验,拒绝 `127.0.0.1.evil.com` 形式的 DNS rebinding(反向代理部署可用 `trustedHosts` 显式放行特定主机名,peer socket 校验仍为强制);写操作额外校验 Origin 回环与 Content-Type 并限制 body 上限,杜绝跨站改写;余额 / 订阅 / 定价拉取带有限重试与按上游维度熔断(鉴权失败属配置问题、不计入熔断)。
|
|
129
|
-
- **导出防注入**:CSV 对 `=` / `+` / `-` / `@` 开头单元格前置单引号并完整转义,防止在 Excel / WPS 中被当作公式执行。
|
|
130
|
-
- **隐私底线**:默认只读、零工具注入——不注入系统提示、不创建会话、不提交 Prompt,只从既有会话日志聚合。用户显式开启的 `usage_stats` 仍只读聚合结果。**唯一会主动创建会话并写入用户 Prompt 的路径是显式入队**:队列文件以 0600 保存,执行后 Prompt 也会按宿主规则进入对应会话日志;Agent 可用工具及权限完全由宿主控制,插件不额外提权。请勿在 Prompt 中填写密码或密钥。
|
|
114
|
+
- **真实聚合**:增量读取持久会话日志,单会话损坏容错,快照与独立账本可回退;未收录和估算价明确标注。
|
|
115
|
+
- **默认只读**:不注入系统提示、不创建会话、不提交 Prompt;只有用户显式入队才会写入新会话,权限仍由宿主控制。
|
|
116
|
+
- **回环安全**:HTTP 同时校验 peer socket 与 Host,写操作再校验 Origin、Content-Type 和 body 上限;CSV 防公式注入。
|
|
117
|
+
- **体验完整**:中英文与三种币种独立持久化,统一键盘焦点,厂商健康状态同时使用形状、颜色与文字。
|
|
131
118
|
|
|
132
119
|
## 🚀 快速开始
|
|
133
120
|
|
|
134
|
-
当前维护 DSH `0.1.2-alpha.1` ~ `0.2.2-alpha.2` 的一份代码。正式版与预览版共享同一兼容矩阵:正式版使用 npm `latest`,预览版使用 `alpha`。当前 `latest` 指向 `1.8.1` 正式版,`alpha` 指向 `1.8.
|
|
121
|
+
当前维护 DSH `0.1.2-alpha.1` ~ `0.2.2-alpha.2` 的一份代码。正式版与预览版共享同一兼容矩阵:正式版使用 npm `latest`,预览版使用 `alpha`。当前 `latest` 指向 `1.8.1` 正式版,`alpha` 指向 `1.8.2-alpha.2` 预览版。
|
|
135
122
|
|
|
136
123
|
`dsh plugin add` 需要显式 `--profile`,且建议钉具体版本号,避免包管理器的发布冷静期解析到其他版本。当前正式版安装命令:
|
|
137
124
|
|
|
@@ -165,6 +152,11 @@ https://kenz1117.github.io/dsh-ui-usage-billing/catalog-source.json
|
|
|
165
152
|
目录里列出的版本仅用于展示)。目录文件在本仓 `catalog/` 下,改动由 CI 校验后随
|
|
166
153
|
GitHub Pages 发布。
|
|
167
154
|
|
|
155
|
+
## 📚 进阶参考
|
|
156
|
+
|
|
157
|
+
<details>
|
|
158
|
+
<summary><strong>工作原理、计费细节、模型目录、HTTP API、配置、开发、发布、权限与已知限制</strong></summary>
|
|
159
|
+
|
|
168
160
|
## ⚙️ 工作原理
|
|
169
161
|
|
|
170
162
|
插件由服务端与浏览器端两部分组成:
|
|
@@ -277,7 +269,7 @@ pnpm run build # tsc -b && tsdown,产出 lib/index.js 与 lib/client.js
|
|
|
277
269
|
|
|
278
270
|
## 📦 发布
|
|
279
271
|
|
|
280
|
-
本包为独立 npm 包,只维护一份 `main` 代码。正式版使用非预发布版本号并切 `latest`,预览版使用预发布版本号并切 `alpha`;当前 `latest` 指向 `1.8.1` 正式版,`alpha` 指向 `1.8.
|
|
272
|
+
本包为独立 npm 包,只维护一份 `main` 代码。正式版使用非预发布版本号并切 `latest`,预览版使用预发布版本号并切 `alpha`;当前 `latest` 指向 `1.8.1` 正式版,`alpha` 指向 `1.8.2-alpha.2`,详见 [COMPATIBILITY.md](COMPATIBILITY.md)。
|
|
281
273
|
|
|
282
274
|
```sh
|
|
283
275
|
pnpm test && pnpm run build # 发版前全量测试 + 构建
|
|
@@ -292,7 +284,7 @@ npm dist-tag add @kenz1117/dsh-ui-usage-billing@<版本> latest # 正式版
|
|
|
292
284
|
|
|
293
285
|
- **权限等级:high**:读取持久会话日志(文件)、访问多厂商官方 / 订阅 / 余额 / 定价 API(网络)、经凭据 seam 读取 `apiKeyEnv`(凭据)、写入 harness home 下的账本、快照与任务队列(持久状态)。插件自身**不含**命令执行 / Shell;仅用户显式入队时才经宿主创建会话并提交 Prompt,Agent 的工具调用仍由宿主原有权限与审批控制。
|
|
294
286
|
- **更新通道:`user-reviewed`**:本插件具备文件 / 网络 / 凭据能力,DSH STORE 采用每次安装需本机人工确认的通道;安装前请复核仓库、固定 Commit、生命周期脚本与影响范围。
|
|
295
|
-
- **兼容范围**:当前 `main` 的正式版与预览版共享同一兼容矩阵,适配 DSH `0.1.2-alpha.1` ~ `0.2.2-alpha.2`,共
|
|
287
|
+
- **兼容范围**:当前 `main` 的正式版与预览版共享同一兼容矩阵,适配 DSH `0.1.2-alpha.1` ~ `0.2.2-alpha.2`,共 32 项逐版本声明。当前正式版为 `1.8.1`(npm `latest`),预览版为 `1.8.2-alpha.2`(npm `alpha`)。发行通道与监控机制见 [COMPATIBILITY.md](COMPATIBILITY.md)。Node.js `^22.19.0 || >=24.0.0`。
|
|
296
288
|
- **生命周期**:无 `preinstall` / `install` / `postinstall` / `prepare`(安装即用)。
|
|
297
289
|
- **不冒用官方**:仅新增自有 entry id `ui-usage-billing`;对 `@deepseek-ai/dsh-*` 仅为 `peerDependencies` 依赖(不重复安装 / 不替换 / 不遮蔽官方组件),包名使用第三方命名空间 `@kenz1117/*`。
|
|
298
290
|
- **打包产物**:运行文件 `lib/*` 与 `cordis.patch.yml` 已随固定 Commit 提交并声明在 `files`。
|
|
@@ -321,8 +313,19 @@ npm dist-tag add @kenz1117/dsh-ui-usage-billing@<版本> latest # 正式版
|
|
|
321
313
|
- **账本从首次成功聚合开始生效**:升级前已经永久删除且不在旧快照中的会话无法恢复;手动删除 `.dsh-usage-ledger.json` 及其 `.bak` 会清空独立保留的历史。账本只保留本插件已经成功观测过的调用。
|
|
322
314
|
- **历史回放预热**:插件加载 3 秒后台自动全量折叠宿主全部历史会话日志(账本幂等,重复折叠不重复计数),首次打开面板即可看到完整历史统计,无需等一遍首次折叠。历史会话按「首次折叠时的模型单价」计价;厂商改价前的历史消耗不会按新价重算(价格目录无历史时点价,属估算口径)。
|
|
323
315
|
|
|
316
|
+
</details>
|
|
317
|
+
|
|
324
318
|
## ❤️ Contributors
|
|
325
319
|
|
|
320
|
+
<p align="center">
|
|
321
|
+
<a href="https://github.com/kenz1117/dsh-ui-usage-billing/graphs/contributors">
|
|
322
|
+
<img src="https://contrib.rocks/image?repo=kenz1117/dsh-ui-usage-billing" alt="DSH Usage Billing contributors" />
|
|
323
|
+
</a>
|
|
324
|
+
</p>
|
|
325
|
+
|
|
326
|
+
<details>
|
|
327
|
+
<summary>查看具体贡献记录</summary>
|
|
328
|
+
|
|
326
329
|
- [@lucagiftzek](https://github.com/lucagiftzek) — 费率表 CSS 修整(PR #59)、`trustedHosts` 反代支持(PR #60)、币种偏好持久化(PR #58)、费率表搜索(PR #67)、峰谷指示点与固定到输入框(PR #68)、EUR 展示币种与界面语言解耦(PR #70)、首次价目表拉取前置到预热回放(PR #55)、models.dev 收录按证据取舍(PR #56)、硬编码 UI 文案入词典(PR #61)
|
|
327
330
|
- [@hwangjunjie](https://github.com/hwangjunjie) — 腾讯云 TokenHub / Token Plan 订阅额度适配(`src/tc3.ts`)、提供商优先通道分组与网关徽标、`routeAliases` / `modelKeyAliases` 配置(PR #35)、订阅徽标按三维格逐通道判定(PR #83)
|
|
328
331
|
- [@ciphoo](https://github.com/ciphoo) — MiniMax 国内域 Token Plan 订阅额度支持(PR #5)、`minimax-cn` 订阅凭据接线(PR #12)、Windows 下账本并发写入 `MoveFileExW EPERM` 修复(PR #11)
|
|
@@ -334,6 +337,8 @@ npm dist-tag add @kenz1117/dsh-ui-usage-billing@<版本> latest # 正式版
|
|
|
334
337
|
- [@JinruiWang](https://github.com/JinruiWang) — workbuddy adapter 通道计价与「折叠早于实时价目表」双口径修复:已知通道名单、惰性补折三门(账本 / cache 命中 / 增量游标)与 stable-stamp 复现测试(issue #90)
|
|
335
338
|
- [@gitfangj](https://github.com/gitfangj) — `sync.sh` 在 macOS 缺省 bash 3.2 下的花括号变量兼容修复
|
|
336
339
|
|
|
340
|
+
</details>
|
|
341
|
+
|
|
337
342
|
## 📄 许可证
|
|
338
343
|
|
|
339
344
|
[MIT](LICENSE) © 2026 KenZ (kenz1117)
|