DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

akilonewbility /

akilonewbility/dsh-workspace-optimize

Verified

工作区浏览器增强插件,通过自定义的增强工作区视图对工作区文件夹和会话实现收藏、置顶、优先级、状态显示以及提醒等功能

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@f4642533

dsh-workspace-optimize

为 DeepSeek Harness(DSH) 的左侧工作区视图提供增强侧栏:收藏、颜色标签、工作区树、排序与置顶、跨工作区移动、正文搜索、会话状态灯与 Windows 通知。

支持版本:>= 0.2.0-rc.1


安装

npm i dsh-workspace-optimize

或

dsh plugin --profile desktop add dsh-workspace-optimize

特性

侧栏

  • 增强侧栏切换:默认开启插件自定义增强侧栏,可切换回原版侧栏
  • 收藏、优先级、更改颜色:同时为工作区文件夹和会话添加收藏、排序优先级和更改颜色功能
  • 增强侧栏已基本完全还原原版侧栏功能,保证操作习惯平滑过渡

会话状态

  • 为会话添加状态指示灯,在会话运行时/等待交互/完成时会分别亮起蓝色呼吸灯、黄色呼吸灯以及绿色灯,直观显示对话状态
  • 会话状态桌面提醒:在会话需要审批/等待回答/完成时会通过系统通道发送通知,随时掌控会话状态

会话操作(... 菜单)

增强侧栏现可直接右键会话与工作区打开菜单,鼠标悬停可显示会话信息

视图选项(侧栏头部 ☰)

  • 增强侧栏支持以最后更新顺序进行自动排序,最后更新的会话会排至最上面

使用

切换侧栏样式

「设置 → 工作区增强 → 侧栏样式」:

  • 增强侧栏:替换 sidebar.workspaces 的渲染
  • 官方侧栏:释放占用,官方侧栏原地位恢复(无需重载)

维护区块

桌面端窗口没有浏览器刷新入口,因此设置页提供:

控件 用途
刷新侧栏数据 只重新拉取侧栏数据,不重载页面
重新加载界面 重载页面以加载更新后的 client.js(会丢失未发送的输入)
界面版本 对比页面与 Host 的界面修订号,不一致时按钮高亮提示重载

Host 半(index.js、lib/)的更新仍然需要重启应用,页面重载无法加载。

空会话与僵尸会话

  • 没有任何消息的空白草稿默认隐藏(与官方一致)
  • 打开「显示空白会话」后,它们的标题显示为「新建会话」,便于识别
  • 官方不支持删除会话,只能归档;本插件不提供删除

设置项

设置页与 /state 中的 settings 字段一一对应:

字段 默认 说明
enabled true 插件总开关(通知与状态广播仍会工作,仅关闭通知)
sidebarMode optimized optimized 增强侧栏 / native 官方侧栏
showBlankSessions false 是否显示空白会话草稿
notify.complete true 会话完成时通知
notify.waiting true 等待你确认时通知
notify.error true 会话出错时通知
notify.started false 会话开始运行时通知
notifyWhenVisible false 窗口可见时也通知
dnd.enabled false 免打扰时段开关
dnd.start / dnd.end 23:00 / 08:00 免打扰时段(本地时间)

通知

  • 来源:Host 监听宿主会话事件(api-session/status、api-session/activity、api-session/error、session/event),把事实推给浏览器半
  • 通道:SSE(EventSource)为主,失败时回退为轮询
  • 展示:Notification API → Windows 通知中心;点击跳转到对应会话
  • 权限被拒时降级为页面内提示;桌面模式通常已授权
  • 页面关闭后不再收到通知(通知依赖页面进程)

数据与隐私

  • 本插件自己的数据是一个 JSON 文件:%USERPROFILE%\.dsh\workspace-optimize-state.json (Host 进程设置了 DSH_PROFILE_DIR 时落在该 profile 目录)
  • 内容:颜色、优先级、设置、工作区收藏、自建会话收藏
  • 纯本地、无遥测、无外部网络请求;HTTP 接口只监听本机 DSH 的 loopback 端口
  • 附件/会话日志始终由 DSH 自己管理,本插件不复制、不上传

兼容性

依赖 必需性 影响
DSH 0.2.x 必需 宿主版本
@michengai/dsh-archive-manager 可选 提供收藏共享(两处星标一致)与跨工作区移动;缺失时收藏由本插件保存、移动入口隐藏
官方 Schedule 内置 有活跃定时任务时在会话行显示时钟标记
通知权限 可选 被拒时降级为页面内提示

说明:本插件不声明 sidebar.workspaces 的子插槽(sidebar.workspaces.session.*),因此 Archive Manager 等第三方插件的行级菜单不会出现在增强侧栏中;它们的设置页入口不受影响。


已知限制

  1. 不支持删除会话:官方没有删除 API(只能归档),本插件同步该语义
  2. 行级子插槽不声明:Archive Manager / Schedule 的会话行菜单在增强侧栏中不显示(Schedule 的时钟标记由本插件用官方数据自绘代替)
  3. 排序模式:「手动」写入宿主会话顺序;「最近更新」严格按最近用户消息时间排,手动排序在该模式下不可见
  4. 状态灯与「完成未查看」是内存态:重启后绿点消失,「最近修改时间」回退到投影时间或创建时间
  5. 正文搜索最多展示 30 条结果,不做全文分页
  6. 跨工作区移动会搬迁会话日志并改写工作目录;运行中的会话、子代理会话、目标已存在同名日志会被拒绝
  7. 页面关闭后无通知
  8. 侧栏替换属于 shadows-shipped-ui 类型的扩展,DSH 大版本升级后可能需要适配

常见问题

切回官方侧栏后侧栏空白? 本插件注册时不声明子插槽,正常情况下撤销注册即可原地恢复官方侧栏。若遇到空白,用「设置 → 工作区增强 → 维护 → 重新加载界面」重载一次。

增强侧栏不显示? 检查设置里「侧栏样式」是否为「增强侧栏」;修改后如未生效,重载界面(或重启应用)。

归档后会话行没有立即消失? 归档采用乐观更新,行会立即按当前过滤隐藏/出现,随后后台静默校正。

运行状态灯反应慢? 状态由 Host 的 api-session/status 驱动,会随事件广播即时刷新;若网络/SSE 中断,回退轮询会有几秒延迟。

通知没有弹出? 依次检查:系统通知权限、设置里的通知类型开关、免打扰时段、窗口可见时也通知 是否开启。

会话显示「新建会话」? 这是没有任何消息的空白草稿;在设置里关闭「显示空白会话」即可隐藏。


开发

  • 纯 ESM,无构建步骤:index.js(Host)与 client.js(浏览器,Module Loader 格式)
  • 语法检查:
node --check index.js
node --check client.js
node --check lib/api.js
node --check lib/sidebar.js
node --check lib/state.js
node --check lib/adapters.js
node --check lib/events.js
  • 分支:main 为稳定版;实验性改造在独立分支进行
  • 说明文档:docs/SIDEBAR-REWRITE.md(侧栏替换的设计与实现)、docs/RESEARCH.md(宿主扩展点调研)

目录

index.js          Host 半入口(apply / inject / 诊断)
client.js         浏览器半(插槽、侧栏、弹层、通知、搜索)
lib/state.js      插件自有状态读写与校验
lib/adapters.js   收藏 / 移动 / 置顶 / 排序目标适配
lib/events.js     宿主会话事件采集(状态、活动、错误)
lib/sidebar.js    自绘侧栏数据源(工作区、会话、归档/置顶、定时任务)
lib/api.js        /api/workspace-optimize/* 路由与 SSE
locale/           插件显示名与描述
docs/             设计文档

License

MIT

本插件为社区项目,与 DeepSeek AI 官方无隶属关系。

—/ 5

No ratings yet

Verified DSH bundle

Commit f4642533e840

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout