ganfne123
dsh-plugin-api-quota
DSH Web UI plugin: check your DeepSeek API key balance from the sidebar
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 15, 2026
- Updated
- Aug 15, 2026
Introduction
dsh-plugin-api-quota
DSH Web UI plugin — check your DeepSeek API key balance from the sidebar.
What It Does
Adds an API Quota entry to the Web sidebar footer (next to Settings). Clicking it opens a panel that queries the DeepSeek official balance endpoint (GET /user/balance) and shows:
- Total balance, granted balance, topped-up balance
- Currency and availability
- Query time, with a refresh button
The API key never crosses into the browser: the browser half fetches a same-origin route (/api-quota/balance) served by the plugin's host half, which resolves the key through the credential seam (ctx.credentials) and talks to DeepSeek server-side.
How It Works
| Half | Responsibility |
|---|---|
Host (src/index.ts) | Registers GET /api-quota/balance on the web server; resolves DEEPSEEK_API_KEY via ctx.credentials, calls https://api.deepseek.com/user/balance |
Browser (src/client/) | Registers the sidebar.footer.action slot entry; fetches the route and renders the balance panel (Modal) |
The credential reference and endpoint are configurable via the plugin config (apiKeyEnv, baseURL, balancePath), defaulting to DEEPSEEK_API_KEY / https://api.deepseek.com / /user/balance.
Quick Start
DSH plugins install into a profile (dsh web → web profile). Install, restart dsh web, done.
# from the plugin repo root
npm install && npm run build
# register in the profile patch layer (~/.dsh/profiles/web/cordis.patch.yml):
# - insert:
# - id: plugin-api-quota
# name: dsh-plugin-api-quota
# symlink into the profile's node_modules:
# ln -s "$PWD" ~/.dsh/profiles/web/node_modules/dsh-plugin-api-quota
Configuration
| Field | Default | Meaning |
|---|---|---|
apiKeyEnv | DEEPSEEK_API_KEY | Credential reference (environment-variable-shaped) holding the API key |
baseURL | https://api.deepseek.com | DeepSeek API base URL |
balancePath | /user/balance | Balance endpoint path appended to baseURL |
License
MIT