lovstudio/dsh-account-balance ↗★ 0
@lovstudio/dsh-account-balance
DeepSeek Harness global account-balance card: live session/job status plus GLM / KIMI quota windows and OpenRouter / DeepSeek balances, pinned to the shell overlay bottom-right
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:lovstudio/dsh-account-balance说明文档
阅读完整 README ↗@lovstudio/dsh-account-balance
English | 中文
A persistent bottom-right status card for the DeepSeek Harness web surface. It
pins into the root shell.overlay seat and shows, across the whole process:
- a status dot plus 「空闲 / N 会话 · M 任务」 (idle, or live session and running background-job counts), polled every 3 seconds;
- GLM / KIMI rows with two 5px quota bars — the 5-hour window and the weekly allowance — colored green (>`
Live process status: { sessions, tasks } — distinct live session ids and
background jobs currently in the running state.
accountBalance.quotas(): Promise>
Four-provider snapshot: { at, rows: { glm, kimi, or, ds } }. Window rows
(glm, kimi) carry mode: 'windows' with windows.w5 and windows.week;
balance rows (or, ds) carry mode: 'balance' with balance and detail.
Every row carries a status of ok | no-key | no-data | error.
Config
No configuration. The four provider credentials are read from the credential service by reference; a missing key renders the row as 「—」 with a tooltip reason.
Extension points
None — the card is a leaf surface. Consumers may read the same two Remote faces for their own status/quota displays.
Model Experience
What the model sees
Nothing. The card is browser-only UI; both Remote calls run outside model turns and their results never enter a prompt.
Token effect
Zero — the plugin performs no model calls.
KV Cache effect
None — no prompt prefix is contributed.
Known Limitations and Deferred Work
jobs.list()visibility — the Host status handler lists jobs without a caller, so jobs owned by another session may not be counted astasks; unowned and visible jobs are counted.- Quota shape drift — GLM and KIMI wire formats are extracted
defensively; an API shape change surfaces as
no-datarows rather than a crash. - Page reload / restart — the plugin is a composition row, so it survives both once installed; before install it behaves like any other plugin package in this workspace.