READMESource: main@04b32a24
dsh-workspace-badge · 会话行工作区标签
DSH 侧边栏会话列表在「单列 / 最新在上」(flat + updated)模式下不显示每条会话属于哪个 工作区(项目文件夹)——项目一多就无法分辨。本插件在每行标题旁注入工作区标签, 排序逻辑完全不动,最新依然在最上。
Shows the workspace (project folder) badge on each session row in the flat, recency-sorted sidebar list of DeepSeek Harness. Sorting is untouched.
效果
- flat 模式:
标题 [工作区] 3分钟前—— 每行常显工作区名(cwd basename) - 分组模式(按工作区 / 工作区树):自动不注入(行上已有分组头)
- 运行中的工作区自动置顶:分组顺序官方只跟随手动拖拽的注册表顺序(「最近更新」只排
组内会话);本插件监听会话运行状态,把含运行中会话的工作区通过官方
insertBefore命令浮到最前(多个时按其运行中会话的最新活动时间排序)。会话停止后不自动复位, 可随时拖拽调整。 - 悬停卡片兜底:通过官方
sidebar.session.row.hover槽位显示完整工作区路径
安装
dsh plugin add github:ChrisLou-bioinfo/dsh-workspace-badge
适配 DSH 0.2.0-rc.2+(依赖行上的 data-row-key="session:<id>" 锚点,0.2 起官方渲染自带)。
实现说明
- 纯客户端 DOM patch:
data-row-key取 sessionId →ctx.sessions.list快照查cwd→ basename 注入行内 badge;MutationObserver + microtask 合帧,已标记行跳过。 - flat 模式判定读 localStorage
dsh.workspace.view.v5(官方视图 store 的持久化键)。 - 搜索结果行自带工作区名,插件检测到后跳过,不重复显示。
- 宿主 DOM 结构若随版本变化,badge 静默失效,不影响列表本身。
No comments yet. Be the first to write one.