Files
dsh-llm-workbuddy/README.CUSTOM.md
T
dsh-custom a44227b69a feat: 个人定制版 —— API Key 模式显示剩余积分 + 悬浮卡片
基于 @axiaohungry/dsh-llm-workbuddy 1.3.21 (MIT)。
详见 README.CUSTOM.md。
2026-10-10 13:59:09 +08:00

4.1 KiB
Raw Blame History

dsh-llm-workbuddy(个人定制版)

本仓库是 @axiaohungry/dsh-llm-workbuddy v1.3.21 的个人自用修改版。 原项目采用 MIT 许可,版权归原作者 Axiaohungry 所有;本定制版的改动见下。 与腾讯、WorkBuddy、CodeBuddy、DeepSeek、DSH 官方均无关联,未获其背书。

原始 README.md 为原作者文档,未做改动,保留作为参考。


安装(换新机器时)

DSH 桌面版(本机安装于 E:\DeepSeekHarness,路径按实际调整):

& "<DSH 安装目录>\resources\runtime\cli\bin\dsh.cmd" plugin --profile desktop add git+<本仓库地址>

装完完全退出 DSH 再启动(客户端与 host 两侧的模块在启动时组装)。

若本机此前装过 npm 上的同名包,建议先 ... plugin --profile desktop remove @axiaohungry/dsh-llm-workbuddy, 否则同一个 provider(workbuddy-cn)会注册两次而冲突。


相对原版的改动

# 位置 改动
1 client.js WorkBuddyCreditsDock 移除凭证绑定控件、认证模式选择、多 Key 下拉与「当前会话 API Key」文案,只保留一行「剩余积分 xxx」
2 client.js :408 一带 原版在 API Key 模式下提前 return 不查积分;本版改为继续查询
3 workbuddy-web.js credits 路由 非令牌模式不再直接返回「积分查询仅支持令牌登录」,改为读当前 API Key 查账单接口
4 workbuddy-credits.js queryPersonalCredits 新增返回 planName / planCycleEnd(取账单中 CapacityType=2 且名字含「高级版/标准版/旗舰版/专业版」的条目)
5 client.js 积分项改为可点击的「药丸」,hover 高亮 + 点击弹出卡片:WorkBuddy / 剩余积分 / 套餐 / 下次重置时间;点外部或按 Esc 关闭
6 client.js CSS dock 的 overflow: hidden → visible(否则弹出的卡片会被父容器裁掉)
7 client.js mountPendingSelector 移除新建会话时的「新会话默认凭证」选择器
8 client.js apply() 注释掉 plugins.detail.section 注册(移除插件详情页面板)。保留 settings.models.provider-card(改 Key / 拉模型列表的唯一 UI 入口)
9 client.js applyMode 隐藏「当前 API Key」多 Key 来源下拉,且不再回显 Key 内容
10 index.js DISPLAY_NAME 由 WorkBuddy 中国区 改为 WorkBuddy(不显示区服)

代码内均以 [自用定制 2026-10-10] 注释标记,便于日后与上游 diff。


为什么积分能查到(原理)

WorkBuddy 的账单接口 POST https://www.codebuddy.cn/v2/billing/meter/get-user-resource 接受 API Key 作为 Authorization: Bearer 令牌(原版插件只是没这么做,它认为只有网页登录令牌可用)。

请求体:

{
  "PageNumber": 1,
  "PageSize": 100,
  "ProductCode": "p_tcaca",
  "Status": [0, 3],
  "PackageEndTimeRangeBegin": "当前时间",
  "PackageEndTimeRangeEnd": "当前时间 + 101 年"
}

返回的 data.Response.Data.Accounts[] 中:

  • CapacityType = 2 → 套餐 / 会员类(本条用来取 PackageName 与 CycleEndTime)
  • CapacityType = 1 → 积分包(签到、活动、兑换码赠送)

注:GET /console/accounts 对 API Key 返回 401,只认网页登录令牌,所以套餐类信息只能从上面这个接口筛。


⚠️ 注意事项

  1. 本版移除了配置 UI,只适合已经配好 Key 的自用场景。若要分享给别人,请让对方用上游原版。
  2. 依赖 WorkBuddy 未公开的接口,上游随时可能改动或收紧风控,可用性无任何保证。
  3. 仅限本机、仅供自用:请勿用于多账号池化、代他人调用或任何形式的转售 / 托管。
  4. 使用前请自行确认是否符合 WorkBuddy 的服务条款。
  5. 按 MIT「按现状」提供,作者不对账号风控、额度异常或任何损失负责。

许可

MIT —— 见 LICENSE(原作者的版权声明必须保留)。