DSH 工作区层级与时间视图插件

前言

DeepSeek Harness (DSH) 原生侧边栏仅支持单层工作区列表。当工作区数量增多或需要按项目结构(如 web/前端、backend/api)归类时,原生视图容易显得杂乱。dsh-workspace-plus 是一个 DSH Web 插件,它在侧边栏引入了层级树视图、时间桶排序以及会话全局置顶功能。它作为 dsh-better-workspace 的分支,主要解决工作区多层级管理与会话跨项目聚合查看的需求。

核心功能

层级树与虚拟分组

插件通过解析工作区名称中的 / 字符构建虚拟分组树。例如,工作区名称 github/dsh-plan-plus 会自动归入 github 虚拟分组。这种分组是纯逻辑投影,不依赖文件系统目录结构。层级支持多级,单层工作区(如根目录下的普通工作区)照常显示。

添加工作区与分区交互

在添加工作区时,插件提供交互式对话框,允许直接点选分区与分组,而非仅输入文本。对话框支持即时预览最终标题,并在空间不足时自动调整下拉框方向。新增时支持直接创建空分区或空分组。

分组管理

所有分组操作均通过右键菜单完成。在分组行右键可执行:新增子分组(自动带上父级前缀)、新增子工作区(自动预填分组路径)、重命名分组、删除空分组。分组状态与工作区数据分离,由名称自然派生。

独立分区

除了层级分组,插件支持独立分区。右键工作区或会话可选择“分区”,将其移动到独立分区或“未分区(项目)”。会话可选择“跟随所属工作区”来撤销独立分区。分区为单层结构,支持拖拽放置与折叠。

视图切换与时间桶

侧边栏提供多种视图模式:
* 层级树:默认视图,显示虚拟分组。
* 工作区:平铺独立分组与项目区域。
* 单列表:跨工作区平铺会话。
* 时间桶:聚合所有会话,按“今天/昨天/近7天/近30天/更早”分桶显示。
视图切换支持排序(手动/最近更新)与筛选(归档/全部)。

会话置顶与拖拽

任意会话可右键置顶,置顶内容固定在列表顶部,显示所属工作区角标。置顶会话在原工作区隐藏,取消置顶后回归。支持拖拽调整顺序,工作区可拖入分组,会话可在工作区内重排。

外观自定义

右键任意层级(工作区、分组、会话)可自定义外观,包括颜色(预设色板+取色器)、发光强度、字体粗细、阴影与图标。设置实时生效并持久化在浏览器本地。

安装与启用

安装前请确保已安装 DSH。插件支持桌面端与 Web 端。安装命令如下:

# DSH 桌面端
dsh plugin --profile desktop add https://github.com/lsdt45/dsh-workspace-plus.git

# DSH Web
dsh plugin --profile web add https://github.com/lsdt45/dsh-workspace-plus.git

安装完成后需重启 DSH 使插件生效。

典型用法

  1. 整理工作区:创建工作区时,在“所属分组”中输入 web 或 backend,即可自动归入虚拟分组。
  2. 管理分区:右键工作区选择“分区”,将其移入独立的“开发”分区,以便与“学习”分区区分。
  3. 时间视图:点击侧边栏视图按钮切换至“按时间”,查看所有项目在过去 7 天的会话活动。
  4. 外观定制:右键“前端”分组,选择“自定义外观”,设置品牌色以便快速识别。

注意事项

  • 数据存储:插件偏好设置与数据存储在浏览器本地,切换浏览器会丢失配置。
  • 删除机制:DSH 宿主仅提供归档接口,本插件通过 POST /dsh-workspace-plus/delete-session 实现永久删除,宿主需支持该接口。
  • 标题解析:插件遵循“URL/斜杠标题不拆层”原则,除非是新会话且命名稳定,否则不会因标题中的 / 强行拆分层级。引号内的斜杠视为普通字符。
  • 许可证:资料未明确说明具体协议,使用前请查阅源码。

生态背景

DSH 插件生态通过 Git 仓库分发。本插件可在 SkillHub 插件目录 查看详情,源码托管在 GitHub。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜