← 返回列表
未验证
一个用于 DeepSeek Harness 的动态 Cordis 插件:在 Web 界面右下角悬浮展示你的…
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/6 · 已提供中文文档
DeepSeek Harness Web UI 中作为右下角浮动徽章的 DeepSeek API 账户余额(动态 Cordis 插件)
综合分
28.8
GitHub 分
28.8
用户评分
—
★ Stars
0
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add CaoQiNeng/dsh-deepseek-balance该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/18(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
dsh-deepseek-balance
中文 · English
一个用于 DeepSeek Harness 的动态 Cordis 插件:在 Web 界面右下角悬浮展示你的 DeepSeek API 账户余额,并定时刷新。
一个用于 DeepSeek Harness 的动态 Cordis 插件:在 Web 界面右下角悬浮展示你的 DeepSeek API 账户余额,并定时刷新。
中文
这是什么
在 DeepSeek Harness 的 Web 界面(浏览器页面)右下角显示一个余额徽章,查询的是 DeepSeek API Get User Balance 接口。它由 Host 与 Client 两个半边组成:
- Host 半边 负责真正请求 https://api.deepseek.com/user/balance。出于安全考虑,它通过本机子进程直接执行 curl(argv 数组形式,无 shell 注入;不可用时回退到 shell 服务),因此 API Key 始终留在 Host 进程内存中,不会发送给浏览器、不写入磁盘。
- Client 半边 在 shell.overlay 槽注册一个右下角悬浮卡片:未配置时提示输入 sk-… Key;配置后胶囊直接显示总余额,展开卡片可见赠送余额 / 充值余额 / 账户可用状态与更新时间,支持「立即刷新」与「清除 Key」,并每 60 秒自动刷新。
功能
- 右下角悬浮胶囊,不遮挡主界面,不替换任何自带 UI(与现有 toast 并存)
- 首次点击后输入 DeepSeek API Key 即自动查询
- 支持 CNY / USD(优先展示 CNY,其余币种分行展示)
- 绿色/黄色/红色圆点分别表示账户可用、余额不足或不可用、出错或未配置
- 每 60 秒自动刷新;也可手动「立即刷新」
- Key 仅存于本次运行的内存;「清除 Key」立即遗忘
安装(在 DeepSeek Harness 会话内)
这是一个动态 Cordis 插件,通过会话内工具装载,无需改任何部署配置、无需重启:
1. 在 DeepSeek Harness 的对话中,让助手执行动态插件装载流程(cordis_define):
- code.host = src/host.js 中的函数体
- code.client = src/client.js 中的函数体
- 新的 Plugin 建议使用语义前缀 dsbal(Host 会自动分配最终 ID)
2. 对返回的 pluginId/packageId 执行 cordis_run 激活,并在 Web 界面批准 Client 授权。
3. 回到 Web 页面,右下角出现「DeepSeek · 未配置」胶囊 → 点击 → 粘贴你的 DeepSeek API Key(sk-…)→「保存并查询」。
也可以把 src/host.js / src/client.js 交给任何带动态 Cordis 插件能力的助手,要求它原样装载这两个函数体。
使用与安全
- API Key 只保留在本次运行的内存中;停止插件或重启进程后需要重新输入。
- Host 发出的 HTTP 请求使用 Authorization: Bearer ,密钥通过受控子进程(argv)传递,不经过 shell 字符串拼接。
- 不会把 Key 回传 UI;Client 只拿到 configured / balances / isAvailable / error / at 等展示字段。
- 如果你的环境没有可用出站通道(无 subprocess/shell 或子进程 TLS 被沙箱拦截),卡片会显示错误信息,不会静默失败。
手动验证
curl -sS -f https://api.deepseek.com/user/balance -H "Authorization: Bearer "
返回示例(展示字段:币种、总余额、赠送余额、充值余额):
{
"is_available": true,
"balance_infos": [
{
"currency": "CNY",
"total_balance": "110.00",
"granted_balance": "10.00",
"topped_up_balance": "100.00"
}
]
}
目录结构
dsh-deepseek-balance/
├── plugin.json # 插件清单:名称、用途、入口、安装提示
├── src/
│ ├── host.js # Host 半边函数体(直接粘贴到 code.host)
│ └── client.js # Client 半边函数体(直接粘贴到 code.client)
├── docs/
│ └── ARCHITECTURE.md # 实现说明与选型
├── package.json
├── LICENSE # MIT
└── README.md
许可证
MIT © 2026 dsh-deepseek-balance contributors
English
这是什么
一个位于 DeepSeek Harness Web 界面右下角的悬浮徽章,用于显示你的 DeepSeek API 账户余额,由官方 Get User Balance 端点提供支持。该插件由两个半边组成:
- Host 半部分通过子进程(argv 数组——无 shell 注入;回退到 shell 服务)启动本地 curl,向 https://api.deepseek.com/user/balance 发起真实请求。API 密钥永远不会离开 Host 内存,永远不会发送到浏览器,也永远不会写入磁盘。
- Client 半部分在 shell.overlay 插槽中注册一个右下角卡片:配置前它会要求输入 sk-… 密钥;配置后,胶囊直接显示总余额,展开的卡片显示赠金 / 充值余额、可用性和最后更新时间,并带有手动刷新和“清除密钥”操作。它每 60 秒自动刷新一次。
功能特性
- 右下角浮动胶囊;不会遮挡内置 UI(与现有 toast 共存)
- 输入一次 DeepSeek API 密钥即可立即查询
- 支持 CNY / USD(优先 CNY;其他货币单独列出)
- 圆点颜色:绿色 = 账户可用,黄色 = 余额低/不可用,红色 = 错误或未配置
- 每 60 秒自动刷新,另有手动刷新按钮
- 密钥仅保存在内存中;“清除密钥”会立即将其遗忘
安装(在 DeepSeek Harness 会话内)
这是一个动态 Cordis 插件,通过会话内工具加载——无需更改部署配置,无需重启:
1. 在 DeepSeek Harness 对话中,让助手运行动态插件流程(cordis_define):
- code.host = src/host.js 中的函数体
- code.client = src/client.js 中的函数体
- 为新 Plugin 使用语义前缀 dsbal(Host 会分配最终 ID)
2. 对返回的 pluginId/packageId 执行 cordis_run,并在 Web UI 中批准 Client 授权。
3. 回到页面:点击右下角的“DeepSeek · 未配置”胶囊 → 粘贴你的 DeepSeek API 密钥(sk-…)→“保存并查询”。
或者,将 src/host.js / src/client.js 交给任何具备动态 Cordis 插件能力的助手,让它逐字加载这两个函数体。
使用与安全
- 密钥仅存在于本次运行的 Host 内存中;停止插件或重启进程后,你需要重新输入。
- 请求携带 Authorization: Bearer ;密钥通过受控的子进程 argv 传递,绝不经过 shell 字符串插值。
- 密钥永远不会回传到 UI——Client 只接收展示字段(configured / balances / isAvailable / error / at)。
- 如果你的环境中不存在出站通道(没有 subprocess/shell,或子进程 TLS 被沙箱阻止),卡片会显示错误,而不是静默失败。
手动检查
curl -sS -f https://api.deepseek.com/user/balance -H "Authorization: Bearer "
布局
dsh-deepseek-balance/
├── plugin.json # manifest: name, purpose, entrypoints, install hint
├── src/
│ ├── host.js # Host function body (paste into code.host)
│ └── client.js # 客户端函数主体(粘贴到 code.client)
├── docs/
│ └── ARCHITECTURE.md # 设计说明与权衡
├── package.json
├── LICENSE # MIT
└── README.md
许可证
MIT © 2026 dsh-deepseek-balance 贡献者扫码进群