Yinxe/deepseek-harness-plugins--plugins-token-meter3

@dshp/token-meter

DeepSeek Harness (DSH) TokenMeter: unified quota + usage statistics — multi-vendor rolling/payg quota with sidebar card and provider ops, plus session-log token aggregation with trends, heatmap and per-model breakdown. 额度与用量统计统一视图:多供应商 rolling/payg 额度(侧边栏卡片 + 供应商运维操作),外加会话日志 token 聚合(趋势、热力图、按模型拆分)。

包名
@dshp/token-meter
版本
0.2.0
许可证
MIT
最近更新
2026年9月12日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Yinxe/deepseek-harness-plugins#d92df41b570b800ce4b52b8fb83515c8eb76c41b&path:plugins/token-meter

配置项

字段类型默认说明
versionnumber1配置版本号(保留字段)。
activeVendorstring''当前供应商 ID;'' = 极简模式(不显示任何额度)。
refreshSecnumber60自动刷新秒数;Host 按此间隔拉取已启用的供应商,0=关闭,其余钳制 10–3600
enabledbooleantrue遗留字段(旧左栏开关,已无界面消费,仅保留做存储兼容)。
vendorsVendor[][]供应商列表({ id, name, type, params, enabled? }id 主键 2–31 位小写/数字/横线)。
showTodaybooleanfalse遗留字段(旧左栏开关,已无界面消费,仅保留做存储兼容)。
defaultRange'7' | '30' | '90' | 'all''30'用量统计默认时间范围。

供应商 typeproviderTypes 下发,设置页下拉据此渲染):

type说明凭据
opencodeOpencode Go+Zen 合并(/go 三窗口+订阅、/billing 余额,同 workspace 一次拉双页)workspaceId + cookie
deepseekDeepSeek 单入口自动选路:sk- 开头走官方余额接口,会话票据走网页账单(余额+累计消费+趋势),一路 401/403 自动换路apiKey 和/或 token(+可选 cookie
commandcodeCommand Code 额度:5 小时/每周滚动窗口 + 剩余额度 + 本计费周期用量/请求数/成功率/tokensapiKeyuser_ 开头,缺省回退 $COMMAND_CODE_API_KEY
manual本地账本,billing: rolling 填 total/used,payg 填 balance/granted/lowWarn

opencode-go / opencode-zen / deepseek-api / deepseek-web 均为别名:读路径自动归一,新写入只落主 type,不会改写你已有的配置文件。

供应商级 enabled(余额查询开关):缺省 = 启用,只有显式 enabled: false 才是禁用。禁用后该供应商不参与 Host 的主动定时拉取(含启动后的首拉),但手动「拉取」、已有快照展示、「设为当前」都不受影响;设置页与右栏额度卡上的「禁用 / 启用」按钮即写这个字段(走 POST /set-vendor-enabled)。启用时字段会被删掉而不是写成 true,因此旧配置零迁移、YAML 也不会冒出冗余字段。

配置(settings.yaml

$DSH_HOME/settings.yamldshp-token-meter 分节(标准 settings 存储,直接改分节即热重载生效):

dshp-token-meter:
  activeVendor: oc-main
  refreshSec: 60
  enabled: true
  showToday: false
  defaultRange: '30'
  vendors:
    - id: oc-main
      name: Opencode 官方
      type: opencode
      params: { workspaceId: wrk_xxx, cookie: $OPENCODE_COOKIE }
    - id: ds-main
      name: DeepSeek 官方
      type: deepseek
      params: { token: $DS_TOKEN, apiKey: $DEEPSEEK_API_KEY, lowWarn: 5 }
    - id: m1
      name: 手动账本
      type: manual
      params: { billing: payg, balance: 50, granted: 100 }
    - id: cc-main
      name: Command Code
      type: commandcode
      params: { apiKey: $COMMAND_CODE_API_KEY, lowWarn: 10 }
      # apiKey 留空即自动回退读 $COMMAND_CODE_API_KEY(与 CLI 同一约定)
    - id: old-main
      name: 不常看的旧账号
      type: opencode
      enabled: false # 禁用余额查询:退出定时拉取,需要时仍可在卡片上手动「拉取」
      params: { workspaceId: wrk_old, cookie: $OPENCODE_COOKIE_OLD }

activeVendor: "" = 极简模式(不显示任何额度)。

cookie 即浏览器登录态:开发者工具 → Application → Cookies → 复制 auth 的值, 整段 Cookie(含 oc_locale 等)原样粘贴亦可;各参数的含义与获取方式见设置页表单 每个字段下方的说明(由 provider 的 fields[].hint 下发)。 旧写法兼容:opencode-go/opencode-zendeepseek-api/deepseek-web 均为别名, 读时自动归一到主 type(不落库、不改写你的文件);params.auth(opencode 系)→ cookie 值不变; {cred:}/{env:}$NAME