@bananiceee/dsh-status-bar

usagetested: passnpmMIT

A configurable 17-segment session status bar for the dsh composer dock with live TPS, per-model cost estimation, and a usage & cost dialog.

下载量 / Downloads
1,354
依赖体积 / node_modules
6.72 MB
测试时间 / Tested
2026-11-06
DSH 版本 / Version
0.2.2-rc.1

Install

dsh plugin --profile web add @bananiceee/dsh-status-bar

Sandbox test results

StageResult
1 install✓
2 list✓
3 mount✓
4 boot—

Four stages run in an isolated sandbox: install (network on) → list → mount → boot (last three with no network).

README

dsh-status-bar · 一眼看清你的 agent 正在做什么

✅ 已适配 DSH 桌面版 —— DSH 0.2.1-rc.2。
0.2.x 版本线面向桌面版运行时:请把它安装到 desktop profile(应用内「插件」页,或 dsh plugin --profile desktop add …)。
已停止维护的 0.1.x 版本线面向旧的 0.1.x 运行时,无法在 0.2.x 桌面版上加载。

![DSH](https://github.com/deepseek-ai/deepseek-harness) ![version](https://github.com/Starlight-bananice/dsh-status-bar/releases) ![npm](https://www.npmjs.com/package/@bananiceee/dsh-status-bar) ![license](LICENSE) ![topic](https://github.com/topics/dsh-plugin) ![Awesome DSH Plugin](https://awesome-dsh-plugin.com)

[English](README.md) · [中文](README.zh.md)


Overview(概览)

问题所在: DSH 原生底部状态栏是一条超长的固定统计行——内容一多就会溢出,窗口一窄还会有部分内容被截断。你看不到当前模型、上下文窗口占用多少、Token 流式生成有多快、这个会话花了多少钱,也没法按自己的工作习惯排列这些信息。

适合谁: 每天使用 DSH 桌面版的用户——希望不离开输入栏就能掌握会话实时状态,又不想额外开一个监视器的重度用户与团队。

核心能力:

  • 桌面版原生,而非外挂 —— 针对 DSH 0.2 桌面版运行时重建(@deepseek-ai/dsh-*@0.2.0-rc.2):会话事实来自桌面版自身的 Chat / 会话 / 输入框服务,后台任务来自其任务服务,实时吞吐数字来自其自身的流式事件窗口。没有兼容垫片,也不保留旧版兼容路径。
  • 接近原生体验,且完全由你掌控 —— 16 个可开关的信息段(上下文圆环固定在底栏右侧,其余 15 个可排序):状态点、模型、标题、工作区、轮次与步数、模型/工具耗时、TTFT 与解码速度、缓存命中率、Token、上下文占用、实时 TPS、会话时长、费用估算、任务、队列、错误
  • 实时吞吐(TPS) —— 底栏在浏览器内直接折叠本会话自己的实时流,流式生成期间速度随分块逐块刷新,无论流以多细的粒度送达都能反映真实生成速率;无需轮询、无需 host 往返,也无需外部 live-stats 插件
  • 费用估算 + 用户维护的模型价格手册 —— 每个模型独立的价格与峰/谷时段,每条消息/每一步都按实际产出它的模型计价(输入、缓存命中、缓存写入、输出四类分别按该步发生时刻取价);「用量与费用」弹窗内置堆叠费用趋势图(日 / 周 / 月)、分页的逐步用量历史(含独立的缓存命中列)与总成本展示
  • 跟得上 DeepSeek 反复调整的峰谷规则 —— 不再是把时段写死成一组 HH:MM:改为「工作日 / 周末 / 法定节假日」三类日判定,节假日与调休日历一键拉取并缓存在本地、可手动增删例外日期;DeepSeek 之后无论是改时段、改周末规则、还是新增节假日与调休安排,你只需刷新一次日历或改一个时段,不必重配整个价格表
  • 零配置开箱即用 —— 13 个信息段默认开启,其余勾选即得
  • 多项实用选项 —— 多行换行显示(内容再多也不会被截断省略)、逐模型费用估算(支持峰谷计价)、币种切换(CNY / USD)、齿轮快捷开关菜单,以及带一键重置的专属设置页
  • 官方上下文圆环内置 —— 把输入框原生的上下文圆环做进底栏:由 contextPressure 驱动的右侧圆环 + 百分比,以及原生的点击展开面板(系统提示词 / 工具 / 对话构成,来自 contextBreakdown)。关闭上下文段即可把圆环交还给 DSH 原生组件
  • 24 小时制时段输入 —— 峰谷时段用 24 小时制文本框(09:00),不再受浏览器区域设置影响显示成 AM/PM
  • 干净的接管机制,可随时切回原生 —— 插件底栏以低优先级接管内置的两个输入框统计条目(activity 与 usage):加载期间由其渲染,卸载后两个内置控件原样恢复。设置页与齿轮菜单里的使用原生底栏开关会立即释放两个接管,无需重启即可恢复 DSH 自带底栏与上下文圆环。插件内置的圆环会替代原生圆环;关闭上下文段或切回原生模式时,原生圆环保留
  • 双语界面 —— 客户端文案内置英文与中文,遵循 DSH locale 体系

Screenshots(界面预览)

以接近原生的底栏替换内置统计行,实时呈现会话状态(状态 · 模型 · 轮次 · 上下文 · 缓存 · TPS · 会话时长 · 任务 · 队列 · 错误),并由专属设置页统一管理——含逐模型价格手册与节假日日历(支持峰谷计价):

随时开关与排序(信息段列表) · 用量与费用弹窗(趋势图 · 统计卡 · 历史)

![信息段列表](assets/screenshot-settings-segments.png) · ![用量与费用弹窗](assets/screenshot-usage-cost-dialog.png)

Compatibility(兼容性)

项目 · 说明

DSH 桌面版 · 0.2.1-rc.2——本版本线适配的目标;最后验证于 2026-10-19

插件版本线 · 0.2.x 面向桌面版运行时。0.1.x 面向已停止维护的 0.1.x 运行时,无法在 0.2.x 桌面版上加载。

DSH profile · 打包桌面应用使用 desktop · 自建 dsh web 使用 web · CLI 运行时使用 headless

运行环境 · Node ≥ 22(host)+ 现代浏览器(client);无外部服务依赖

共存关系 · 与任何其他状态栏/TPS 插件互不干扰:实时速率在客户端折叠本会话自己的事件窗口,因此本插件不注册任何共享投影键——任何对等插件的键名、stateVersion 或注册先后都无法顶掉底栏的 TPS

桌面版移植改了什么(0.2.0)

DSH 0.2.0 移除了 @deepseek-ai/dsh-client-runtime,并把旧 Conversation 快照承载的数据拆到了不同位置。本版本线即针对该结构完成移植:

  • 会话数据搬家。 消息节点、轮次时间、流式 partial 与运行中的工具调用现在来自 Chat 目标(useChat),生命周期事实(running、lastAgentError)来自会话快照(useSession),排队消息数来自输入框收件箱(useInput)。
  • 后台任务来自一个已被移除的字段。 SessionListState.jobsBySession 已不存在;任务段现在读取客户端任务花名册(ctx.jobs),与桌面版自身的会话头部任务列表同源。
  • 实时 TPS 移入浏览器。 0.2.0 不再有持久化的 assistant/chunk 事件,原先提供速率的 host 投影不再收到输入。底栏改为在客户端折叠本会话自己的实时流——估算器不变,测速改用滑动窗口,不再依赖流的送达粒度。
  • agent preset 段已下线(SessionSummary.agentPreset 不再存在;0.2.0 仅把预设暴露给新会话的 Hero 芯片)。该段本来就是默认关闭;已保存的配置中若仍列有它,会在加载时被过滤掉。
  • 构建不再需要 DSH 源码检出。 插件编译所依赖的 DSH 包以 0.2.0-rc.2 精确钉为 devDependencies;pnpm install && pnpm run build 就是全部。

0.2.1 改了什么

DSH 0.2.1 把输入框统计拆成了两个 conversation.composer.dock 条目——activity(order 0)与 usage(order 1)。原来单一的 stats id 不再能替换任何内置条目,于是底栏与内置胶囊并排重复渲染。本版本同时接管两个 id,并把原生风格的上下文圆环直接渲染在底栏右侧;圆环显示期间隐藏原生组件。

Install(安装)

下面每条安装路径都作用于一个 DSH profile。打包的桌面版应用运行名为 desktop 的 profile;自建的 dsh web 通常运行 web。

桌面版应用 —— 应用内安装(最简单)

1. 打开左侧边栏的 「插件」 页面。

2. 点击 「添加插件」,填入包名 @bananiceee/dsh-status-bar,然后点 「安装」 确认。

3. 安装完成后点击 「立即启用」。

4. 若对话框提示「更改将在下次启动生效」,重启应用即可。

在应用内安装与用终端命令安装写入的是同一个 profile,因此下面两条路径可以互换。

桌面版应用 —— 终端安装

# 桌面版线的最新发布版
dsh plugin --profile desktop add @bananiceee/dsh-status-bar

# 或钉住确切版本
dsh plugin --profile desktop add @bananiceee/dsh-status-bar@0.3.1

自建 Web / CLI

dsh plugin --profile web add @bananiceee/dsh-status-bar@0.3.1

其他来源

# 从本地目录装配(profile 级)
dsh plugin --profile desktop add ../dsh-status-bar

# 从 GitHub 仓库安装
dsh plugin --profile desktop add github:Starlight-bananice/dsh-status-bar

# 或安装固定版本的 release tgz —— 不可变且带版本号(随每个 GitHub
# release 附带;适合不便直连 git 仓库的场景)
dsh plugin --profile desktop add https://github.com/Starlight-bananice/dsh-status-bar/releases/download/v0.3.1/bananiceee-dsh-status-bar-0.3.1.tgz
提示: pnpm 11 对刚发布的包强制 24 小时 minimumReleaseAge——若某个当天发布的版本被拒绝,在 dsh plugin add 命令后追加 --config.minimumReleaseAge=0。
提示: pnpm 从 codeload.github.com 获取 GitHub 上的包,且不读取你的 git 代理配置。若安装卡住或因网络错误失败(如 error (23)),请先导出 HTTP(S) 代理再重试:export HTTPS_PROXY=http://127.0.0.1:7890 HTTP_PROXY=http://127.0.0.1:7890。
自 v0.1.5 起: 构建产物 lib/ 已随仓库提交——git 安装后开箱即用,无需任何构建步骤。添加插件、重启应用,即可使用。

升级

# npm 安装:直接更新到 registry 上的最新版本
dsh plugin --profile desktop update @bananiceee/dsh-status-bar

# 或重新 add 钉住的版本(应用内页面暂不支持自动更新:
# 请先卸载,再安装新版本)
dsh plugin --profile desktop add @bananiceee/dsh-status-bar@0.3.1



…(truncated)

Rendered from the README published on npm. Formatted only, not edited.

Versions

Published on npm::8,最后更新 2026-10-19

Links

GitHub · Homepage · npm

Same category