dsh-corner-gauge: Floating Balance Panel for DSH Corners with Interchangeable Skins

前言

在 DeepSeek Harness(DSH)里长时间跑任务时,账户余额或 Token 用量往往藏在设置或远端接口里,需要切界面才能确认。社区插件 dsh-corner-gauge 在客户端 Web 界面角落挂一块可拖动的悬浮面板,默认展示 DSH 账户余额;边框(skin)与面板内容(elements)分开配置,换外观或增减显示项不必改另一层。维护者为 kkppshuai-svg,仓库 kkppshuai-svg/dsh-corner-gauge 在 SkillHub 目录中归类为「趣味换装」,GitHub 星标为 3。本文介绍其定位、能力与安装方式,事实以仓库 README 与 package.json 为准。

这是什么

dsh-corner-gauge 是给 DSH 用的角落悬浮徽章:外形为斜切底板,右侧为金属质感数字区。README 将其概括为「边框是模板(skin),面板里显示什么由元素(elements)决定」——换壳、加减元素互不牵连。插件通过 Cordis patch 挂载,客户端平台为 web,不注入额外 UI 包,余额默认走 ctx.remote.account。

当前 package 版本为 2.1.0;代码许可为 MIT,assets/ 下第三方素材另见仓库 NOTICE.md。

核心功能

边框与元素

  • 边框可换:内置 mclaren(斜切 + 品牌标志)与 minimal(极简圆角)。
  • 元素可插:货币符号、金额、进度条等按 config.elements 顺序装配;默认 ['currency','amount','progress']。
  • 车辆 ↔ 品牌联动:例如 M4 对应宝马 M 标志与红色饰条,迈凯伦对应 speedmark 与 papaya 橙 #ff8000(详见 README「车辆 ↔ 品牌」)。

数据与稳定性

  • 零外部请求(面板本体):字体与标志 base64 内嵌,离线可用;CI 会校验。
  • 可拖动:位置写入 localStorage,窗口缩放时钳制回视口。
  • 取数失败:指数退避重试;未登录或不可用时显示 --,不会静默消失。
  • 轮询:默认 pollMs: 60000。

多数据源(需本地桥接)

除 DSH 余额(provider: 'dsh',默认)外,README 说明可通过 本地桥接 读取 Codex / Claude Code 会话 JSONL、豆包用量等;浏览器内面板无法直接读本机文件,需运行:

npm run bridge

桥接默认监听 http://127.0.0.1:7317;面板按 pollMs 请求 /usage?provider=...&period=...。period 可选 today / week / month / all。桥接未启动时显示 --。

provider 数据来源(README 摘要)
dsh(默认) ctx.remote.account.getBalance → ¥ 余额
codex ~/.codex/sessions/**/*.jsonl 中 token 用量
claude ~/.claude/projects/**/*.jsonl 中 assistant usage
doubao ~/.doubao/usage.json 或火山引擎 API 等(见 README「豆包怎么接」)

彩蛋

单击面板可触发跑车从右向左穿过动画(期间仅显示跑车);配 M4 直六声浪(内嵌录音,WebAudio 合成兜底)。可通过配置关闭或调整(drive.* 字段,见下节)。

安装与启用

官方 README 未提供 dsh plugin add 一类命令;安装分三步:复制包进 profile、登记依赖与 bundle、重启 App。

1. 放进 profile

将仓库内容复制到 profile 的 node_modules(Windows 示例来自 README):

# 把仓库复制进 profile 的 node_modules
# Windows 示例
xcopy /E /I dsh-corner-gauge "%USERPROFILE%\.dsh\profiles\desktop\node_modules\dsh-corner-gauge"

Linux/macOS 用户需自行用等价方式把插件目录放到 ~/.dsh/profiles/<profile>/node_modules/dsh-corner-gauge。

2. 登记到 profile

编辑 ~/.dsh/profiles/<profile>/package.json:

{
  "dependencies": {
    "dsh-corner-gauge": "^2.0.0"
  },
  "dsh": {
    "profile": {
      "bundles": [
        "...",
        "dsh-corner-gauge"
      ]
    }
  }
}

3. 重启 App

客户端 bundle 在启动时构建,改完必须重启 App;仅刷新页面不够。若启动后插件未出现,先检查 dsh.profile.bundles 是否仍包含该插件——README 提到 profile 组合失败时 DSH 可能重置配置。

兼容性(package.json)

项 值
Node >=18
DSH >=0.2.1-rc.2 <0.3
客户端平台 web
peerDependencies @deepseek-ai/cordis ^4.0.5

仓库提供 npm run verify:install 在临时目录验证安装/挂载流程;细节见 docs/dsh-store-evidence.md。

典型用法

运行时配置

在插件加载前设置全局对象(README 示例):

window.__DSH_BADGE_CONFIG__ = {
  skin: 'mclaren',
  elements: ['currency', 'amount', 'progress'],
  position: { right: 22, bottom: 96 },
  size: { width: 322, height: 70 },
  currency: 'auto',          // 'auto' | 'CNY' | 'USD'
  pollMs: 60000,
};

常用键说明(摘自 README 配置表):

键 默认 说明
skin 'mclaren' 边框模板名
elements ['currency','amount','progress'] 面板元素顺序
position { right: 22, bottom: 96 } 默认停靠位置
size { width: 322, height: 70 } 面板尺寸(px)
currency 'auto' 币种
pollMs 60000 轮询间隔(毫秒)
drive.enabled true 是否启用点击跑车彩蛋
drive.sound true 声浪默认开关
drive.durationMs 1500 跑车穿过时长
drive.fx false 速度线与拖尾特效
drive.car 'auto' 固定车辆 id 或每次点击换下一辆

Codex 周用量示例

{
  "provider": "codex",
  "period": "week",
  "bridgePort": 7317,
  "pollMs": 120000
}

先在本机项目目录执行 npm run bridge,再在浏览器中使用 DSH;面板 ⚙ 菜单在 README 中说明只负责换车,数据源仅在配置里选 provider。

自定义素材(开发者)

车辆与声浪在 assets/manifest.json 声明,构建时内嵌。入库流程:assets/incoming/ 放图后 npm run import,再 npm run build。侧视图、白/透明背景等要求见 README「素材库」——偏离要求会在横向跑动动画里明显错位。

适用场景与注意

适合谁:希望在 DSH Web 客户端一眼看到余额或(配合桥接)本机 Codex/Claude/豆包用量,并愿意手动维护 profile 里 node_modules 与 bundles 的用户;喜欢换 skin、跑车彩蛋的也可当作「趣味换装」类插件玩。

务必注意:

  1. 插件随 当前 DSH 进程与用户 profile 加载;安装前应自行审阅 源码与 MIT 许可证,以及 NOTICE.md 中的素材授权。
  2. 仅支持 DSH 0.2.x 候选段(<0.3);升级 DSH 大版本前需核对 engines.dsh。
  3. Codex/Claude/豆包等数据涉及读本机路径或密钥(如火山 VOLC_ACCESSKEY),桥接进程权限与你在终端里的环境变量一致,勿在不可信环境暴露 AK/SK。
  4. SkillHub 目录(plugins/kkppshuai-svg/dsh-corner-gauge)为社区索引,与 DeepSeek / 幻方无官方从属关系;DSH 生态理念是「一切皆插件」,本文不将其描述为官方应用商店条目。

结尾

dsh-corner-gauge 把账户余额(及可选的多源用量)做成可换壳、可组合的角落 HUD,并内嵌字体与标志以减少运行时外连。安装依赖 profile 手工拷贝与 bundle 登记,改配置后需重启 App;扩展 Codex 等数据源时需另起本地 bridge。

  • 目录页:https://www.skillhub.cn/plugins/kkppshuai-svg/dsh-corner-gauge
  • GitHub:https://github.com/kkppshuai-svg/dsh-corner-gauge
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye