DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Simple Usage Info — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

dsh-simple-usage-info

Simple Usage Info

DeepSeek Harness 插件:在消息输入框下方显示您的 DeepSeek API 余额以及当前的高峰/非高峰计费时段。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add dsh-simple-usage-info@0.2.3
README兼容性版本

兼容性与来源证明

Simple Usage Info 以 dsh-simple-usage-info 发布,当前版本为 0.2.3。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
npm
Registry 更新时间
2026/10/16

版本

0.2.3stable
2026/10/16
0.2.2stable
2026/10/12
0.2.1stable
2026/10/7
查看其余 2 个版本收起版本
0.2.0stable
2026/10/2
0.1.0stable
2026/10/1

相关插件

正在加载相关插件…

最新版
0.2.3
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
88.5 kB
文件数
14
Surface
web
许可证
MIT
发布源
npm
GitHub
★ 0
周下载
596
安全扫描
✓ v0.2.3 扫描通过
最近提交
2026/10/16
查看源码 ↗项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 models-usage 分类下经过校验的插件。

Whale Widgetdsh-whale-widgetDSH Web 界面右下角的 DeepSeek 余额小鲸鱼挂件:余额/今日已用/峰谷定价、自定义泡泡点击序列(文本/余额/今日/峰谷/图片/随机语句与并列加权选择)、逐行样式与字体、悬浮快捷编辑、音效与每轮消耗、自定义角色/动图/音效、吸附与翻转自定义Client Ui Model Capabilities@linxin666/dsh-client-ui-model-capabilities为自定义 pi-ai 提供商声明每个模型的能力(图像输入和推理力度),可直接在 Models 设置卡片中编辑;写入官方 llm-pi-ai 设置命名空间,不更改 DSH 源代码。Codex Subscriptiondsh-codex-subscription通过 OAuth 在 DeepSeek Harness 中使用 ChatGPT 和 Codex 订阅,支持配额管理、安全重置、网页搜索、图像和快速模式Plugin Subscriptionsdsh-plugin-subscriptions将 ChatGPT (Codex)、Claude、Grok (X Premium)、GitHub Copilot 和 Google Antigravity 订阅用作 DeepSeek Harness LLM 提供商,并通过网页设置页面使用 OAuth 登录

README

dsh-simple-usage-info

A DeepSeek Harness plugin that puts your DeepSeek API balance, the current billing window, and the session estimated cost in the composer dock — the ambient row directly below the message input, after the context meter.

查看图片

Click the bar for the full breakdown:

查看图片

The pill reads Off-peak (green) or Peak (red). The balance is read with the same DEEPSEEK_API_KEY credential the deepseek-official model route resolves — no extra setup. The billing window is computed in your browser's timezone and drawn from the published rule: off-peak is half price, peak is 01:00–04:00 and 06:00–10:00 UTC, Monday–Friday, excluding Chinese public holidays. The holiday list is fetched from NateScarlet/holiday-cn, which scrapes the State Council announcements daily, so it keeps itself current.

The Estimated cost section shows the running session cost in both USD and CNY, calculated from the token usage (cached input, uncached input, and output) using the published peak and off-peak rates of the model selected for the session. Supported models are deepseek-flash (DeepSeek-V41-Flash) and deepseek-v4-pro (DeepSeek-V4-Pro-0813). The section appears only when the session has non-zero token usage.

Requirements

  • DeepSeek Harness 0.2.0-rc.2 or later
  • Node 20+
  • A DEEPSEEK_API_KEY credential (the Models page writes one, or export it before launching)

Install

Recommended — the DSH plugin manager

The plugin manager forwards to pnpm, so install that first if it is missing:

bun add -g pnpm        # or: corepack enable pnpm / npm i -g pnpm
dsh plugin --profile web add dsh-simple-usage-info

This installs the package, records it in the profile's dependencies, and appends it to dsh.profile.bundles. Because the package declares dsh.bundle.patch, its own cordis.patch.yml then supplies the loader row — there is nothing else to edit.

Restart the web server (dsh web) when it finishes.

Manual — a cordis.patch.yml row

Use this when the package is already somewhere the profile can resolve (a local checkout, a workspace link, a private registry). Append to $DSH_HOME/profiles/web/cordis.patch.yml:

- insert:
    - id: usage-info
      name: dsh-simple-usage-info

Restart the web server. Use either this row or the bundles entry from the recommended path, never both, or the plugin loads twice.

Manual without pnpm — add the dependency yourself

dsh plugin only knows how to shell out to pnpm. Without it, do the two halves by hand.

1. Make the package resolvable from the profile. Either install it with any package manager:

cd "$DSH_HOME/profiles/web"
bun add dsh-simple-usage-info     # or: npm install dsh-simple-usage-info

…or link a local checkout:

mkdir -p "$DSH_HOME/profiles/web/node_modules"
ln -sfn /absolute/path/to/dsh-simple-usage-info \
        "$DSH_HOME/profiles/web/node_modules/dsh-simple-usage-info"

and declare it in $DSH_HOME/profiles/web/package.json, because DSH treats a name as profile-local only when the manifest lists it:

{
  "name": "dsh-profile-web",
  "private": true,
  "dependencies": {
    "dsh-simple-usage-info": "link:/absolute/path/to/dsh-simple-usage-info"
  },
  "dsh": {
    "profile": {
      "bundles": [
         ////
      ]
    }
  }
}

2. Activate it with the cordis.patch.yml row above, or by adding "dsh-simple-usage-info" to the dsh.profile.bundles array.

Restart the web server.

Configure

Set these under the usage-info row, in the profile's cordis.patch.yml:

KeyDefaultMeaning
refreshMs60000how long one balance answer stays fresh
timeoutMs15000upstream request timeout
baseURLhttps://api.deepseek.comAPI origin
apiKeyEnvDEEPSEEK_API_KEYcredential name holding the key
peakWindows['01:00-04:00', '06:00-10:00']peak windows, HH:MM-HH:MM UTC
peakDays[1, 2, 3, 4, 5]peak weekdays, 0 = Sunday
holidayURLholiday-cn {year}.jsonmaintained holiday source; '' goes offline
holidayRefreshMs43200000how long a fetched holiday snapshot stays fresh
useBundledHolidaystruekeep the bundled table as an offline fallback
holidays[]extra YYYY-MM-DD dates, added on top of the fetched list
makeupWorkdaysArePeakfalsetreat 调休 makeup workdays as peak days
makeupWorkdays[]extra YYYY-MM-DD makeup workdays
offPeakDiscountPercent50reported as pricing.discountPercent

For example:

- id: usage-info
  config:
    peakWindows:
      - '01:00-04:00'
      - '06:00-10:00'
    holidays:
      - 2027-01-01

A malformed schedule (a bad clock, a window wrapping past midnight, a day outside 0–6) fails at plugin load, so the row is skipped with a clear error instead of answering requests with a broken window.

Verify

# the route, once the server is running:
curl -s -H 'Host: 127.0.0.1:3080' http://127.0.0.1:3080/usage/balance

# the plugin really composes into a profile (throwaway home, your profile untouched):
bun run verify:compose

pricing.holidayData in the response tells you where the holidays came from — remote (fetched), bundled (offline fallback), or none.

Development

bun install
bun run preflight          # host, pricing, holidays, client — 200+ assertions, no network
bun run preflight:live     # real balance + holiday fetch; prints the masked key only
bun run preview:panel      # prints the popover markup and stylesheet, no browser needed

There is no build step: lib/index.js is plain ESM, and lib/client.js is hand-authored in the web client's module-loader bundle format. Neither half needs a bundler.

License

MIT