Passer au contenu principal
C

dsh-session-board

curiouslv/dsh-session-board

Session board orb: live thinking and tool progress per session, task duration, context usage and 12h/30d usage stats; click through to any session.

Installer

dsh plugin --profile web add github:curiouslv/dsh-session-board

README

dsh-session-board

DSH Desktop(DeepSeek Harness)的会话看板插件:右下角一颗可拖拽的悬浮球,展开后一览所有工作区的活跃会话——谁在运行、在想什么、后台还挂着什么、等谁审批、上下文烧了多少,实时显示每个任务的思考与执行进展,点击直达会话。

用量为本地统计估算,仅供个人参考;不构成任何投资或消费建议。

最近更新(v1.16.15):实时进展预览(思考 / 回答 / 工具结果的尾部窗口,可拉高)、任务耗时 ⏱️、面板可拖动与调宽高、🕒 12h / 📅 30 天用量徽标、按最近活动排序、当前会话高亮。

功能

  • 实时看板:跨工作区列出所有会话,五种状态——运行中(蓝)/ 后台进行中(黄)/ 等待审批(黄)/ 失败(红)/ 空闲(灰),运行中/等待审批置顶且按任务开始时间稳定排序(并行任务不因进度刷新而互换名次),其余按最近活动(含任务完成时间与实时进展)排序,状态点与悬浮球带波纹呼吸
  • 实时进展预览:直接监听 DSH 原生 agent/assistant-stream;尾部窗口始终跟随最新进展——思考与回答流式滚动,工具调用及其结果(✅/❌)实时上屏,新内容即使旧内容未显示完也立即替换,无需切进会话查看;默认 3 行,可拖拽预览右下角拉高查看更多行
  • 任务耗时:每行显示最近一次任务的用时 ⏱️ mm:ss(超 1 小时为 hh:mm:ss),运行中实时计时,结束后保留定格
  • 后台任务可见:对话轮次结束但后台作业还在跑时,会话变黄并列出作业内容,不会误以为已结束
  • 点击直达会话:点任意一行跳进该会话,面板保持打开,可连续切换对比
  • 当前会话高亮:面板用蓝色左条标记主界面正在查看的会话,切换实时跟随
  • 上下文用量:每行灰色圆环 + 上下文占比 + 累计 token 消耗(含缓存读写)
  • 近 12 小时 / 30 天用量统计:🕒 近12h调用次数 · 📅 近30天调用次数(火山方舟 Coding Plan)
  • DeepSeek 余额(可选):安装 dsh-usage 插件并加入 profile bundles 后自动显示 API 余额(由 dsh-usage 每 60s 自动刷新快照)
  • 主题自定义:⚙ 面板自定义五种状态颜色、悬浮球待机色与直径,即改即生效
  • 可拖拽悬浮球:位置持久化;🧹 一键清理空闲与失败状态
  • 面板可调大小:拖拽面板左下角手柄调整宽高,自动记忆
  • 面板可拖动:按住面板标题栏拖到任意位置,自动记忆

安装

前提:已安装 DSH Desktop。插件零 npm 依赖,只需挂进 profile。

git clone https://github.com/Curiouslv/dsh-session-board.git

编辑 %USERPROFILE%\.dsh\profiles\desktop\package.json:

{
  "dependencies": {
    // 新增:link 指向 clone 出来的目录
    "dsh-session-board": "link:C:/path/to/dsh-session-board"
  },
  "dsh": {
    "profile": {
      "bundles": [
        // 新增:
        "dsh-session-board"
      ]
    }
  }
}

创建 junction 并重启 DSH:

mklink /J "%USERPROFILE%\.dsh\profiles\desktop\node_modules\dsh-session-board" "C:\path\to\dsh-session-board"

(或在 profile 目录里跑 pnpm install 代替手动 mklink。)重启后在桌面端右下角即可看到悬浮球。

用 DSH CLI 安装(更简单)

本插件声明了 dsh.bundle 清单,可用官方 CLI 直接安装(具体参数以 dsh plugin add --help 为准):

dsh plugin --profile desktop add https://github.com/Curiouslv/dsh-session-board

使用

操作说明
点击悬浮球展开 / 收起看板
拖拽悬浮球任意位置,自动记忆
拖拽面板左下角调整面板宽度与高度,释放后自动记忆
拖拽面板标题栏移动面板位置,释放后自动记忆
拖拽预览右下角拉高该会话的实时预览窗口,查看更多行
点击行跳转到对应会话,面板保持打开
行右侧 ×隐藏该行;失败行同时清除该错误。会话再次活动或被打开时自动恢复显示
🧹隐藏空闲行并清除失败状态,悬浮球恢复常色;会话再次活动或被打开时自动回来
⚙自定义五种状态颜色、悬浮球待机色与球径;「颜色深浅」开关控制呼吸时颜色是否明暗变化;「清零统计」重置用量
行末 ⏱️该会话最近一次任务的耗时;运行中实时走秒,结束后定格

用量统计(近 12 小时 / 近 30 天)

面板头部徽标显示本地滚动窗口的用量:

  • 🕒 N · 📅 M —— 🕒 近 12 小时、📅 近 30 天的模型调用次数
  • 悬停提示含各切片的 token 消耗(输入 + 输出 + 缓存读写)

数据按「每次模型调用」本地统计,窗口持久化到 ~/.dsh/dsh-usage/session-board-window.json,重启不清零;⚙ 里的「清零统计」可随时归零。

无需任何其他插件:用量从安装后开始自动累积(仅统计 provider id 含 volc 的会话)。

可选依赖

  • @linxin666/dsh-usage —— 提供DeepSeek API 余额数据(~/.dsh/dsh-usage/provider-snapshots.json);未安装时余额徽标自动隐藏,其余功能不受影响。需在 profile bundles 中加载 "@linxin666/dsh-usage",其宿主端每 60s 自动刷新快照

已知限制

  • 上下文窗口表:index.js 中的 MODEL_CONTEXT 按模型名列出上下文大小(默认覆盖常见模型)。你的模型不在表里时,圆环百分比不显示、token 数照常——欢迎按需补充
  • 用量口径:按「每次模型调用」本地统计。与厂商控制台的统计口径如有差异,以控制台为准
  • 流式粒度:思考预览来自 Host 原生 agent/assistant-stream 流;面板打开且有会话活动时以 0.3s 轮询刷新(空闲时 1.2s,面板收起 2.5s),无法做到与主界面逐帧同步;新的模型尝试开始会清除上一段思考
  • 火山用量徽标匹配 provider id 含 volc 的会话,其他厂商不受影响
  • 排序时间戳:实时活动 / 任务完成时间保存在插件内存中;DSH 重启后,重启前刚完成的任务会回退为会话创建时间参与排序

License

MIT

Plugins associés