DeepSeek Harness · Usage Overview
An in-app panel for DeepSeek Harness (DSH) desktop that replaces the embedded
platform.deepseek.com/usage page behind 设置 → 账号与余额 → 查询用量 with a
readable overview of the whole account:
- account balance, lifetime spend, lifetime tokens and requests;
- a calendar heat map of one month: every day shows its spend and tokens, shaded by how expensive that day was;
- clicking a day opens a small detail popover (spend, tokens, API requests);
- month picker plus a grid of month tiles (click one to jump the calendar to it);
- filter by API key, export the selected month as CSV.
Not an official DeepSeek product. It is a community plugin that lives inside the DSH desktop profile and uses DSH's extension points.
Dark theme

Light theme

Screenshots use synthetic data.
Requirements
| App | DeepSeek Harness desktop (tested with 0.2.1-rc.5, Windows x64) |
| Node.js | 20+ for the installer (DSH ships its own runtime as a fallback) |
| Account | A DSH account that is signed in (the panel reads the existing session) |
| OS | Windows currently tested; the installer uses only Node APIs, other platforms untested |
This is not a standalone web app. It is a DSH profile bundle: the Host half adds one route, the Client half adds one panel to the settings dialog.
Install
git clone https://github.com/nTillMeetu/Neko_02.git
cd Neko_02
node install.mjs
The installer:
- finds your DSH profile (
~/.dsh/profiles/desktop, override with--profile <dir>); - backs up
package.jsonandpnpm-lock.yaml; - adds
"dsh-usage-overview": "link:<repo path>"to the profile dependencies; - adds
dsh-usage-overviewtodsh.profile.bundles; - runs
pnpm installwith the pnpm bundled in your DSH runtime; - prints the restart step.
Then restart DeepSeek Harness and open 设置 → 账号与余额 → 查询用量.
Useful flags:
node install.mjs --dry-run # show the planned changes only
node install.mjs --profile "C:/Users/you/.dsh/profiles/desktop"
node install.mjs --uninstall # remove it again
Manual install
If you prefer to edit the profile yourself, add the link dependency and the bundle
entry to ~/.dsh/profiles/desktop/package.json, then run pnpm install from that
directory and restart DSH:
{
"dependencies": {
"dsh-usage-overview": "link:D:/path/to/Neko_02"
},
"dsh": {
"profile": {
"bundles": [
// ... your existing bundles
"dsh-usage-overview"
]
}
}
}
How it works
- Host (
lib/index.js) registers/usage-overview/summary. It uses the account grant that DSH already holds, calls the Platform/api/v0/usage/by_api_key/*endpoints (31-day aligned windows, cached), and returns numbers only. - Client (
lib/client.js) renders the panel in a DSH overlay slot and fetches that route. It never talks toplatform.deepseek.comdirectly.
Security: the account token never leaves the Host process and is never sent to the client; the route returns aggregated totals and daily/monthly buckets. The plugin has no telemetry and no third-party dependencies at runtime — React and the DSH UI primitives are provided by DSH itself.
Caveats
- DSH's plugin APIs (
shell.overlayslot, profile web server routes, UI primitives) are not a stable public contract. A future DSH update can break this plugin; check the issue tracker before upgrading DSH. - The Platform API truncates a single usage query to 31 day-aligned days, so all-time and monthly totals are summed from consecutive windows. A monthly total can differ from the platform's own lifetime total by a few cents due to rounding.
- The month table starts at the month of the account's first API key; months before that are disabled in the picker.
Uninstall
node install.mjs --uninstall
Then restart DSH. If you installed manually, remove the dependency and the bundle
entry and run pnpm install again.
Troubleshooting
git clone fails with Failed to connect to github.com:443
Some networks block GitHub's HTTPS edge. Clone over SSH instead (GitHub serves
SSH on port 443): add ~/.ssh/config entries
Host github.com
HostName ssh.github.com
Port 443
User git
and use git clone git@github.com:nTillMeetu/Neko_02.git. After cloning, the
installer works offline.
Panel does not appear after restarting DSH
Check that dsh.profile.bundles in the profile's package.json contains
dsh-usage-overview, then run pnpm install from the profile directory again.
The plugin needs a DSH build that provides the shell.overlay slot.
Monthly totals are missing
The Host half needs a DSH restart to register its route (already part of the install step). If only the client was reloaded, the panel falls back to the current month and the month picker is disabled.
Balance or usage returns an error
The panel uses the signed-in account's session; sign in again in DSH, then reopen the panel and press 刷新.
The panel disappeared after moving the repository
The profile links to the repository path. Move the folder, then run
node install.mjs again to refresh the link.
Documentation
- CHANGELOG.md — release history
- CONTRIBUTING.md — development loop, guidelines
- SECURITY.md — how credentials are handled and how to report issues
- docs/DESIGN.md — the design iterations behind the panel
License
MIT © 2026 nTillMeetu
中文说明
这是给 DeepSeek Harness 桌面版用的社区插件,把设置里「账号与余额 → 查询用量」 从内嵌网页换成应用内面板:余额、累计消费/Token/请求、整月日历热力图 (每天显示金额和 Tokens,颜色越深花得越多)、点某天看当天明细、按月份切换、 按 API Key 过滤、导出当月 CSV。
安装:
git clone https://github.com/nTillMeetu/Neko_02.git
cd Neko_02
node install.mjs
脚本会找到你的 DSH profile(默认 ~/.dsh/profiles/desktop),备份后写入
link: 依赖和 dsh.profile.bundles,再用 DSH 自带的 pnpm 安装。
装完重启 DSH,打开「设置 → 账号与余额 → 查询用量」即可。
注意:
- 只支持 DSH 桌面版,依赖它的内部扩展点,DSH 升级后可能失效;
- 账号 token 只在 Host 进程内使用,接口只返回数字,不会下发到客户端;
- 用
node install.mjs --uninstall可卸载; - 许可证 MIT。
No comments yet. Be the first to write one.