model-balance-flyout
其他 活跃维护

model-balance-flyout

julygotostudy/model-balance-flyout

轻量级浏览器悬浮插件,无需跳转管理页面即可实时查看DeepSeek API账户余额与上下文token占用率,数据自动同步更新,体积小巧无冗余功能,安装后即刻生效。

0
Stars 标星
0
Forks 分支
0
Watchers 关注
0
Open Issues
JavaScript
主要语言
MIT
开源协议
8 KB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:julygotostudy/model-balance-flyout
git clone https://github.com/julygotostudy/model-balance-flyout.git
git clone git@github.com:julygotostudy/model-balance-flyout.git
README.md main

dsh-balance-flyout 模型余额悬浮层

DeepSeek Harness 开发的动态 Cordis 插件:在页面右下角显示一个可拖动悬浮层,实时展示 DeepSeek API 账户余额当前会话上下文占用率

![状态灯说明:绿=正常,黄=账户不可用,红=查询出错]

功能

  • 账户余额:通过 DeepSeek 官方 GET https://api.deepseek.com/user/balance 查询
    • 账户总余额(total_balance
    • 赠送余额(granted_balance
    • 充值余额(topped_up_balance
  • 上下文占用率:与输入框 StatsLine 同源contextPressure projection),显示 15% · 153.3K / 1M 格式
  • 可拖动:鼠标/触摸拖到任意位置,右下角默认停靠
  • 自动刷新:每 30 秒自动刷新,另有手动「刷新」按钮
  • 主题适配:使用 --dsw-alias-* 主题变量,自动适配亮/暗色

安全设计

  • API 密钥不进入浏览器:密钥只在 Host 进程内通过 DSH credentials 服务解析(DEEPSEEK_API_KEY 环境变量引用),Client 端永远拿不到原始密钥
  • 密钥不硬编码:本仓库不包含任何真实凭据,运行时的密钥来自你的本地 ~/.dsh/.credentials.yaml(或环境变量)
  • Host 端通过 subprocess 调用 Node 发起带 Authorization 头的 HTTPS 请求(动态插件 Host 无全局 fetch,且 web.fetch 不支持自定义请求头)

安装与运行

本插件按 DSH 动态 Cordis 插件(cordis_define / cordis_run)设计,可直接在 DSH 会话中加载:

前置条件

  • DeepSeek API Key 已配置:
    # ~/.dsh/.credentials.yaml
    DEEPSEEK_API_KEY: sk-xxxxxxxx
  • 本机可访问 https://api.deepseek.com,且 node 在 PATH 中

定义并运行

  1. 使用 DSH 的 cordis_define 工具,以 host 提供 host.js 内容、client 提供 client.js 内容
  2. cordis_run 激活(Client 端首次运行需在页面中批准)
  3. 页面右下角出现悬浮层即成功

文件说明

文件 说明
src/host.js Host 端插件:余额查询 RPC、上下文占用率 RPC
src/client.js Client 端插件:可拖动悬浮层 UI

技术细节

Host 端 RPC

方法 入参 返回
balance/query { ok, isAvailable, currency, totalBalance, grantedBalance, toppedUpBalance }
session/context { sessionId } { ok, projectedTokens, contextWindow }

数据口径

  • 账户余额:DeepSeek 官方 /user/balance 接口,三个字段均为字符串金额
  • 上下文占用率:读取 sessionProjections.snapshot(session).values.contextPressureprojectedTokens / contextWindow 计算百分比——与输入框 StatsLine 完全同源,避免 token-meter 纯启发式估算(surfaceTokens)与 provider 实测(totalTokens)的口径差异

许可证

MIT