dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
在 DSH 对话底部统计行实时显示 DeepSeek 用量费用(人民币/美元双币,含缓存命中与峰谷定价)
在 DSH Web 的对话底部,把本次对话的费用(人民币 + 美元双币)以官方 Token 用量二级菜单里的追加区段呈现,按 DeepSeek 官方表价逐请求计价。
costLedger 会话投影(带 wire 客户端视图),把每条请求的「提供方上报用量 + 请求发出时刻 + 调用模型」折叠进「档位 × 模型」token 桶。O(1) 状态、O(1) 每事件开销,不做聚合估算、不重放日志。¥0.7500 / $0.1125 —— ¥ 取官方中文页人民币表价、$ 取官方英文页美元表价,两套表各自独立,不做汇率折算。deepseek-v4-flash 更名为 deepseek-flash(旧名仍可调用、按 Flash 价计费),插件以「模型族」计价,新旧名与历史会话日志都能正确计价;未知模型不计价并明确标注。从 GitHub 安装:
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Ayaka157/dsh-conversation-cost
dsh web
或先 clone 到本地,再从本地目录安装:
git clone https://github.com/Ayaka157/dsh-conversation-cost.git
cd dsh-conversation-cost
dsh plugin --profile web add .
卸载:
dsh plugin --profile web remove dsh-conversation-cost
2026-09-11 抓取官方中/英文定价页。每格为 ¥ / $(每百万 tokens)。
| 模型 | 档位 | 命中 | 未命中 | 输出 |
|---|---|---|---|---|
| deepseek-flash | 高峰 | 0.04 / 0.006 | 2.0 / 0.30 | 8.0 / 1.20 |
| deepseek-flash | 空闲 | 0.02 / 0.003 | 1.0 / 0.15 | 4.0 / 0.60 |
| deepseek-v4-pro | 高峰 | 0.30 / 0.044 | 9.0 / 1.32 | 27.0 / 3.96 |
| deepseek-v4-pro | 空闲 | 0.15 / 0.022 | 4.5 / 0.66 | 13.5 / 1.98 |
已下线的历史价(2026-08-17 前生效,仅用于给更早的会话计价):
| 模型 | 命中 | 未命中 | 输出 |
|---|---|---|---|
| deepseek-v4-flash(→ flash 族) | 0.02 / 0.0028 | 1.0 / 0.14 | 2.0 / 0.28 |
| deepseek-v4-pro | 0.025 / 0.003625 | 3.0 / 0.435 | 6.0 / 0.87 |
计费公式(¥ 与 $ 各自套同一式):
费用 = 未命中输入 / 1e6 × 未命中价
+ 命中输入 / 1e6 × 命中价
+ 缓存写入 / 1e6 × 0 ← 缓存写入免费
+ 输出 / 1e6 × 输出价
| 项目 | 范围 |
|---|---|
| DSH | >=0.1.5-alpha.2 <0.2.0;0.1.5-rc.1 与 0.1.5-rc.2 声明 compatible |
| Node.js | >=20(宿主半部为 ESM) |
| 平台 | Web(dsh.client.platform = "web") |
| 外部依赖 | zod(peer,宿主半部用于投影 schema 校验;DSH 安装自带) |
| 权限 | 只读会话投影 + 本机 Host RPC(sessions.models 取模型名)+ 纯本地查表:不读文件、不发起外部网络请求、不执行命令、不接触凭据 |
package.json 的 dsh.compatibility.dshReleases 为逐版本声明,证据强度如下:
0.1.5-rc.1 = compatible:在本机一次性 Profile 中完成真实安装、启动与运行验收(宿主半部成功挂载 costLedger,浏览器半部进入 boot manifest 并成功构建/投递),单元测试全绿。0.1.5-rc.2 = compatible:通过官方发行包逐项核对该版本插件所依赖的契约面 —— dsh-client-ui-conversation / dsh-client-locale / dsh-client-connection 的 . 与 ./client 导出、dsh.client 的 web 声明、conversation.composer.dock slot 与官方 id: "stats" 格、data-session-stats-usage 弹层锚点、locale 命名空间注册。属来源兼容声明,未在该版本做真实 Profile 运行验收。0.1.5-alpha.2 = unknown:未验证,不冒充已验证。换版本时插件按契约面自适应:弹层锚点缺失只会退化为底部独立一行,不会报错或影响官方界面。
costLedger 折叠 assistant/message(提供方上报用量 + 自带模型源)与 assistant/chunk(失败请求的用量),计价时间取 step/start(请求发出时刻)。wire:投影单元只有声明了 wire(viewSchema + view)才会进入客户端快照。少了它该 key 就是 host-only,浏览器 useProjection("costLedger") 恒为 undefined,插件会静默退化成聚合近似值(带 ≈)。测试里有专门的注册契约用例守这条。wire.view 按 state 引用记忆化,保证注册表的 Object.is 比较能抑制重复发布。costLedger 未就绪(刚安装、或本会话早于插件加载)时回退为「聚合用量 × 当前档位」的粗略近似,并在金额后加 ≈ 标注。该标注只表示走了近似分支,不代表逐请求精确值。[data-session-stats-usage] 之后的弹层节点上。该锚点缺失(官方结构调整)时自动并回统计行显示为同一行的一格——只降级显示位置,不报错、不影响官方界面。conversation-cost,官方 stats 格及其详情弹层始终由官方组件渲染。dsh plugin --profile web add github:Ayaka157/dsh-conversation-cost 覆盖安装,然后重启 DSH Web 生效。npm test # node --test test/*.test.mjs
test/ledger.test.mjs:投影折叠、模型族解析、峰谷档位边界、双币金额、checkpoint 往返。test/client.test.mjs:以最小 React/DOM 仿真驱动 lib/client.js,验证 slot 注册、locale 字典、弹层锚定与降级路径。lib/index.js 的单价表与档位判定必须与 lib/client.js 的同名副本保持一致(客户端降级近似用)。