前言¶
DSH(DeepSeek Harness)采用插件化架构,任何开发者都可以通过扩展来增强功能。对于自建 New API 或 One API 兼容网关的用户,在 Web Composer 中查看当前对话的模型调用成本是一个常见需求。现有的网关计费看板通常位于独立页面,缺乏与对话上下文的联动。
dsh-gateway-billing 插件将这一功能集成到了 DSH Web Composer 的 Dock 区域,无需离开对话界面即可实时查看费用。
插件简介¶
本插件由维护者 LeslieWylie 开发,基于内部网关计费看板脱敏泛化而来。它是一个独立的 Skill,适用于任何自建的、暴露 New API / One API 格式 /pricing 接口的网关。
核心功能¶
-
价格表拉取
自动从配置的网关地址拉取价格表,服务端每 10 分钟刷新一次并缓存。 -
双计费模式支持
兼容两种计费方式:
- 按 token 计价(quota_type=0)
- 固定单价计费(quota_type=1) -
逐对话折算
遍历当前对话的所有模型调用节点,根据usage(输入/输出/cache token)与价格表折算总费用。 -
Composer Dock 展示
在输入栏下方展示一行信息:
- 总费用
- 最近调用模型及次数
- 输入/输出/cache token 数量
支持多模型对话时自动分行。 -
状态区分
区分「未配置」与「拉取失败」两种状态,并高亮显示价格表中未找到条目的模型调用。
安装与启用¶
方式一:手动安装(当前推荐)¶
- 克隆仓库到本地:
git clone https://github.com/LeslieWylie/dsh-gateway-billing.git ~/Desktop/01-Projects/dsh-gateway-billing
- 进入你的 DSH profile 目录,编辑
package.json,添加依赖:
"dsh-gateway-billing": "link:~/Desktop/01-Projects/dsh-gateway-billing"
- 编辑
cordis.patch.yml,添加插件配置并指定价格表地址:
- id: gateway-billing
name: 'dsh-gateway-billing'
config:
pricingUrl: 'https://your-gateway.example.com/api/pricing'
- 运行
pnpm install并重启 DSH 进程。
方式二:插件命令(待发布)¶
dsh plugin add dsh-gateway-billing
配置说明¶
插件需要在 cordis.patch.yml 的 config 字段中提供 pricingUrl。
| 配置项 | 说明 | 示例 |
|---|---|---|
pricingUrl |
网关价格表接口地址,需返回 New API / One API 格式的数据 | https://your-gateway.example.com/api/pricing |
设计原则与注意¶
- 网关无关:插件不内置网关地址,价格表来源完全由用户配置。
- 失败可见:未配置与拉取失败会展示不同提示,不静默处理。
- 单次刷新:价格表在服务端每 10 分钟刷新一次,Composer Dock 通过 RPC 读取快照,不重复拉取。
结语¶
dsh-gateway-billing 为 DSH 用户提供了无需额外跳转即可掌握对话成本的方案。它从内部脱敏而来,去除了敏感信息,同时保留了实用的计费功能。
- GitHub: https://github.com/LeslieWylie/dsh-gateway-billing
- 目录页: https://www.skillhub.cn/plugins/LeslieWylie/dsh-gateway-billing