aka-danielZhang/dsh-provider-balance
DSH 网页插件:在编辑器上下文计量表旁显示提供方配额标签(GLM Coding / Kimi Code / OpenCode Go)
catalog 简介:DSH web plugin: provider quota chip beside the composer context meter (GLM Coding / Kimi Code / OpenCode Go)
安装
mkdir -p ~/.dsh/profiles/web/node_modules
ln -sfn /Users/danielwei_zhang/workspace/dsh-provider-balance \
~/.dsh/profiles/web/node_modules/dsh-provider-balance
```
> ⚠️ 用 `pnpm install` 的 `file:` 依赖装出来的是**硬链接副本**:编辑器原子替换写文件后
> 副本与仓库脱钩,进程会一直跑旧代码。开发时务必用上面的软链方式;若已用 `file:` 安装,
> 删掉 `node_modules/dsh-provider-balance` 目录再建软链即可。
2. 从 harness checkout 启动(`--patch` 必须放在 web 应用自有 flag 如 `--port` 之前):
```sh
cd ~/workspace/coding-study/deepseek-harness
pnpm dsh web --patch ~/workspace/dsh-provider-balance/cordis.yml
```
3. 刷新 `http://127.0.0.1:3080`,输入框工具行右侧(模型选择器左边)会出现余量胶囊。
**胶囊跟随当前会话选中的模型**:切到 GLM 显示 `94% · 73% · 4000`(GLM 5h / 周 / 工具),
切到 Kimi 显示 `100% · 100%`(Kimi 5h / 周);切到没有适配器的供应商(如 openai)时胶囊消失。
点击展开该供应商的详情面板:进度条(蓝 5h / 绿周 / 紫工具)、重置倒计时、套餐档位、手动刷新。
同时,设置 → 模型 页每个已配置供应商的行上会出现同数据的紧凑徽标(需 harness 侧
`settings.models.provider` 行级槽位,本仓库配套的 harness 分支已提供)。
### 持久挂载(可选)
把 overlay 内容并入 `~/.dsh/profiles/web/cordis.patch.yml`(同样的 insert 行),之后裸
`pnpm dsh web` 即生效,无需 `--patch`。
## 凭据解析顺序
1. DSH `credentials` 服务(`ctx.get('credentials').resolve(apiKeyEnv)`);
2. 进程环境变量(默认 `ZAI_CODING_CN_API_KEY`);
3. `$DSH_HOME/.credentials.yaml` 文件直读(credentials-local 的托管层)。
Key 只在 Host 侧使用,浏览器只收到聚合后的百分比/次数 JSON,永远不会看到密钥。
**换 key 即时生效**:服务句柄按次解析(不在 apply 时捕获,本插件可能先于 credentials
服务激活),文件层每次重读不缓存;同时插件监听 `credentials/updated` 事件,一旦某个
ref 被改写,对应供应商的快照立即作废,下一次轮询(≤5 分钟)或点面板的刷新按钮即用新 key
重新拉取,无需重启进程。
## 配置(cordis.yml `config`,全部可选)
把 aka-danielZhang/dsh-provider-balance 加入你的 DSH 配置(web profile)即可启用。
README
展开完整 README 收起
README 内容为空。
tt-a1i/archify
zhu1090093659/dsh-web-ui
strukto-ai/mirage
liustack/modlens
omdsh-dev/DSH-better-sidebar
ccch1mneyyy/dsh-TUI
alvinunreal/openpets
agentrq/agentrq