查看余额、官网消费与按模型花费,估算实时费用
29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/28 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add wwu328763-netizen/dsh-billing-compass该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · model
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 5 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件发起外部网络请求
查看扫描证据(共 7 处,展示前 7 条)
- 发起网络请求lib/index.js:130
req = https.request(url, { method: 'GET', headers, timeout: timeoutMs, agent: keepAliveAgent }, (res) => { - 读取本地文件lib/index.js:271
return readYamlScalar(await readFile(join(home, '.credentials.yaml'), 'utf8'), key) - 读取本地文件lib/index.js:574
try { dirs = await readdir(root, { withFileTypes: true }) } catch (e) { return null } - 读取本地文件lib/index.js:579
try { files = await readdir(dir) } catch (e) { continue } - 读取本地文件lib/index.js:603
const info = await stat(path) - 读取本地文件lib/index.js:613
const buf = await readFile(path) - 发起网络请求lib/client.js:189
const res = await fetch('/api/dsh-billing?sessionId=' + encodeURIComponent(sessionId || ''), { cache: 'no-store' });
扫描于 2026/10/31(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
DeepSeek Harness 计费罗盘:余额 / 官网用量与消费 / 按模型花费 / 实时费用估算
README
由 DeepSeek 最新模型翻译生成计费罗盘 · Billing Compass
DeepSeek Harness 的账单面板 —— 余额、官网用量与消费、按模型花费、实时费用估算,一屏看清。
计费罗盘界面预览
预览图按插件真实 CSS + 宿主真实主题令牌渲染,数据为示例值。
它显示什么
统计条常驻在输入框下方,点一下弹出面板:
| 区域 | 内容 | 数据来源 |
| 账户余额 | 充值 / 赠送 / 是否可用 | api.deepseek.com/user/balance |
| 官网消费 | 最近两个月消费合计,按模型拆分 | platform.deepseek.com/api/v0/usage/export(zip 内 cost-*.csv) |
| 综合每亿 token | 官网消费 ÷ tokens | 由上面两项推导 |
| 按模型 | tokens、缓存命中率、消费、每亿 token 单价、消费占比条 | platform.deepseek.com/api/v0/usage/amount |
| 本对话消费(整段) | 整个会话从开始到现在的估算费用 | 只读解析本地会话日志 |
| 本次运行 | 本次进程启动以来的调用次数 / tokens / 估算费用 | 本地拦截 llm/stream 的 usage |
展开完整文档(README 剩余 1 节)
计费罗盘 · Billing Compass
DeepSeek Harness 的账单面板 —— 余额、官网用量与消费、按模型花费、实时费用估算,一屏看清。
计费罗盘界面预览
预览图按插件真实 CSS + 宿主真实主题令牌渲染,数据为示例值。
它显示什么
统计条常驻在输入框下方,点一下弹出面板:
| 区域 | 内容 | 数据来源 |
| 账户余额 | 充值 / 赠送 / 是否可用 | api.deepseek.com/user/balance |
| 官网消费 | 最近两个月消费合计,按模型拆分 | platform.deepseek.com/api/v0/usage/export(zip 内 cost-*.csv) |
| 综合每亿 token | 官网消费 ÷ tokens | 由上面两项推导 |
| 按模型 | tokens、缓存命中率、消费、每亿 token 单价、消费占比条 | platform.deepseek.com/api/v0/usage/amount |
| 本对话消费(整段) | 整个会话从开始到现在的估算费用 | 只读解析本地会话日志 |
| 本次运行 | 本次进程启动以来的调用次数 / tokens / 估算费用 | 本地拦截 llm/stream 的 usage |
- 触发行:● 余额 ¥9.56 · 官网消费 ¥252.48 · 本对话 $8.47 · 263.8M tokens ▼
- 面板宽度与位置与输入框卡片完全一致,不是浮在中间的窄条
- 当前正在使用的模型会在列表里高亮(D 品牌蓝)
数据流
数据流示意图
关键点:
- 零依赖:HTTP 用 node:https,ZIP 解压与 zstd 解码用 node:zlib;不需要 curl、pwsh、unzip 或任何 npm 包
- 不落盘:实时调用记录只存在内存(最近 3000 条),进程重启即清零;会话日志只读
- 凭据三级回退:环境变量 → Harness credentials 服务 → <DSH_HOME>/.credentials.yaml
- 失败自愈:官网接口偶发失败或凭据后补时,30 秒一次自动重试,不用等 5 分钟
环境要求
| 项目 | 要求 | 不满足时会怎样 |
| DeepSeek Harness | 0.2.x(需要 conversation.composer.dock 槽位与 useProjection) | 面板不出现 |
| Node | ≥ 20 | — |
| Node | ≥ 22.15(内置 zlib.zstdDecompressSync) | “本对话消费(整段)”退化为“本次运行” |
| 平台 | Windows / macOS / Linux 均可 | — |
| 凭据 | DEEPSEEK_API_KEY 必需;DEEPSEEK_USER_TOKEN 可选 | 逐项显示“未配置”,其它数据照常 |
安装
方式一:npm(推荐)
dsh plugin add dsh-billing-compass
或在 Harness 里:
plugin_manager action=install_bundle target=dsh-billing-compass
国内网络会自动走已同步的 registry.npmmirror.com。装完重启 Harness。
方式二:预构建包(无需 npm)
从 Releases 下载 dsh-billing-compass.tgz,然后:
plugin_manager action=install_bundle target=<下载后的 tgz 绝对路径>
或直接给它 URL:
plugin_manager action=install_bundle target=https://github.com/wwu328763-netizen/dsh-billing-compass/releases/latest/download/dsh-billing-compass.tgz
方式三:从源码目录装
git clone https://github.com/wwu328763-netizen/dsh-billing-compass.git
plugin_manager action=install_bundle target=<克隆下来的绝对路径>
方式四:手工放置
1. 复制整个目录到 <DSH_HOME>/profiles/node_modules/dsh-billing-compass/
2. 在当前生效 profile 的 cordis.patch.yml 追加:
- insert:
- id: dsh-billing-compass
name: dsh-billing-compass
config: {}
3. 把 dsh-billing-compass 写进同目录 package.json 的 dependencies
4. 重启 Harness,再刷新页面(Ctrl+F5)
宿主的 JS 模块在进程内被缓存,改代码或首次安装都必须重启;客户端改动刷新页面即可。
方式五:通过「插件市场 / Discover」添加
本仓库自带一份 format 1 市场索引,加进任何人的插件市场即可看到并安装本插件:
https://raw.githubusercontent.com/wwu328763-netizen/dsh-billing-compass/main/market/index.json
1. 启用实验性市场 bundle @deepseek-ai/dsh-experimental-plugin-market-bundle(默认关闭)
2. 设置 → 插件 → Discover → 添加索引,粘贴上面的地址
3. 在本插件条目上点安装(底层是 git+https://github.com/wwu328763-netizen/dsh-billing-compass.git#<commit>)
4. 重启 Harness
DSH 目前没有集中托管的官方市场:market 只是一个「读索引」的客户端,索引谁托管都行。
本仓库的 market/index.json 就是一份现成索引,你可以 fork 后维护自己的索引。
配置凭据
两个键写在 <DSH_HOME>/.credentials.yaml,或用同名环境变量。
DEEPSEEK_API_KEY —— 余额
到 platform.deepseek.com/api_keys 创建,sk- 开头。
DEEPSEEK_USER_TOKEN —— 官网用量与消费(可选)
这是登录态 token,不是 API key,需要自己从浏览器取:
1. 浏览器登录 <https://platform.deepseek.com>
2. F12 → Application / 应用 → Local Storage → https://platform.deepseek.com
3. 找 userToken,复制其值(通常 64 位)
version: 1
refs:
DEEPSEEK_API_KEY: sk-xxxxxxxxxxxxxxxx
DEEPSEEK_USER_TOKEN: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
这是官网内部接口,可能随官网改版失效。失效时只会影响「官网用量/消费」两块,余额与本地统计不受影响。
可选配置
- insert:
- id: dsh-billing-compass
name: dsh-billing-compass
config:
balanceKeyRef: DEEPSEEK_API_KEY # 换成自己的凭据名 platformTokenRef: DEEPSEEK_USER_TOKEN balanceIntervalMs: 30000 # 余额刷新 officialIntervalMs: 120000 # 官网用量/消费刷新(并行拉取) retryIntervalMs: 30000 # 失败/未配置时的重试 sessionLog: true # 关掉则不解析本地会话日志 pricing: # 单价覆盖,USD / 1M tokens
deepseek-v4-flash: { input: 0.28, cacheHit: 0.028, output: 0.42 }
deepseek-v4-pro: { input: 0.55, cacheHit: 0.14, output: 2.19 }
性能设计
面板打开到出数是毫秒级,靠三条约束:
| 措施 | 效果(本机实测) |
| 官方接口并行,不再串行 | 4 个请求(用量×2 + 消费×2):1282ms → 904ms(冷 TLS;热连接更低) |
| HTTPS keep-alive 连接池 | 余额每 30s 一次,跳过重复 TLS 握手 |
| 会话日志移出请求路径 | 路由响应 0–1ms;日志由后台间隔增量刷新 |
会话日志是只追加的多帧 zstd 流,因此:
- 首次全量解析(约 4MB → 20MB 文本,~175ms),之后只解码新增的帧,长会话不会越跑越慢
- 路由只读缓存值,缓存过期时丢到后台刷新,永不阻塞响应
- 文件被轮转/缩短时自动重新全量解析
计算口径
单次/整段费用 ≈ (未缓存输入 + 缓存写) × input
+ 缓存读 × cacheHit
+ 输出 × output (单位:USD / 1M tokens)
每亿 token 消费 = 消费金额 ÷ (tokens ÷ 100,000,000) 综合每亿 token = 官网消费合计 ÷ (官网 tokens ÷ 100,000,000)
- 官网数据以官网为准,但可能有数小时延迟,且只覆盖最近约两个月
- 本次运行 / 整段对话是按内置单价表的估算,与官网账单会有偏差(缓存计费口径、重试请求、单价变动等)
- 模型名匹配不到单价表时:含 flash 按 flash 价、含 pro/reasoner 按 pro 价,其余用默认价
隐私
- 不写任何文件;不采集、不上传任何内容
- 实时统计只在内存,重启清零
- 会话日志只读(汇总 token 用量),不修改
- 唯一外部请求是 DeepSeek 官方三个接口
常见问题
| 现象 | 处理 |
| 统计条里没有「余额 …」 | 未装成功或未重启;检查 profile 的 cordis.patch.yml 与 profiles/node_modules |
| 显示「余额 未配置」 | 缺 DEEPSEEK_API_KEY |
| 「官网消费/用量 未配置」 | 缺 DEEPSEEK_USER_TOKEN(可选功能) |
| 官网数据「获取失败 HTTP 401」 | token 过期,重新取一次 |
| 「本对话消费(整段)」与「本次运行」相同 | Node < 22.15 不支持 zstd,或 sessionLog: false |
| 面板位置/宽度不对 | 该 Harness 版本的输入框 DOM 变了,欢迎提 issue 并附版本号 |
| 改了代码不生效 | 宿主模块被缓存,重启 Harness;客户端改动刷新页面 |
目录结构
lib/index.js 宿主:HTTPS 抓取、ZIP/CSV、zstd 会话日志、/api/dsh-billing 路由 lib/client.js 客户端:统计条 + 点击弹出面板(React.createElement,无构建) cordis.patch.yml bundle 注册行(含可选项说明)
locale/{en,zh}.json 插件管理里显示的标题与描述
icon.svg 应用图标 docs/ README 用图
调试图中数据:GET http://127.0.0.1:<port>/api/dsh-billing?sessionId=<id> 直接返回完整快照。
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
wwu328763-netizen/dsh-billing-compass
查看余额、官网消费与按模型花费,估算实时费用
相关插件 · 模型接入
API 中继安全审计toby-bridges/api-relay-audit
面向 AI API 中转与 LLM 代理的本地安全审计。
★ 897已汉化DSH
69.4
免费搜索插件DDDMUC/dsh-free-search
DeepSeek Harness 免费搜索插件 —— 无需 API key,零成本,多引擎可切换。 一个给…
★ 761已汉化DSH
68.7
免费联网搜索liustack/modsearch
在官方 App 里模型能联网,切到 API 就不能了。ModSearch 把联网补回来:网页搜索、X…
★ 863已汉化DSH
68.5
OpenCode 免费模型FishBottle7/opencode2dsh
在 DSHDeepSeek Harness里原生使用 OpenCode Zen 的免费匿名模型。
★ 379已汉化DSH
67.8
AI 模型网关tingly-dev/tingly-box
Tingly Box Web UI 演示
★ 373已汉化DSH
67.4
WorkBuddy 账号池XDTrees/dsh-xdpool
把你能白嫖的模型额度接进 DSH 同一个池:WorkBuddy 多账号自动容错、十三家扫码登录、76…
★ 359已汉化DSH
67.1