前言¶
在 DeepSeek Harness(DSH)里同时跑多个智能体任务时,左侧会话列表往往把不同工作区的对话混在一起:看不出某条会话属于哪个目录,也很难在「只开一个主会话视图」的前提下对比进度。mwge22629/dsh-task-board(包名 @local/dsh-task-board)是社区维护的客户端插件,在侧边栏挂一块任务看板:会话以卡片停在板上,点开则在独立浮动窗口里继续对话,多开互不抢焦点。下面介绍它做什么、怎么装、怎么上手。
这是什么¶
| 项目 | 说明 |
|---|---|
| 名称 | dsh-task-board / @local/dsh-task-board |
| 维护者 | MWGE22629 |
| 分类 | 客户端(web profile) |
| 许可证 | MIT |
| 当前版本 | 0.3.0(README 更新日志) |
| 目录页 | https://www.skillhub.cn/plugins/MWGE22629/dsh-task-board |
| 源码 | https://github.com/MWGE22629/dsh-task-board |
插件定位一句话:钉在 DSH 侧边栏的任务看板——把工作区排成分区,会话变成卡片;卡面展示运行状态与最近输出,单击打开与主界面一致的浮动会话窗口。
核心能力¶
工作区分区¶
点「关注工作区」后,一个工作区一列,其下会话卡片各归其位。分区可拖拽排序并记住顺序;工作区多时可切换 1 / 2 / 3 行布局。分区里仍有任务时不能取消关注,避免卡片凭空消失。工作区被删后,相关卡片进入「未绑定工作区」兜底列。
卡片上的实时进度¶
卡片显示当前在做什么(例如工具调用 Bash · npm test、书写、思考及计时)。非运行状态会附带「上次更新距今」文案(与侧栏会话列表同一口径)。底部预览最近一条输出,悬停可看全文。运行中超过 60 秒无事件会显示静默时长,超过 5 分钟标红。失败或已停止的卡片可在卡面上点「▶ 继续」,直接向该会话补发「继续」而无需先开窗。
浮动多会话窗口¶
点卡片弹出浮动窗口,内含完整会话(消息流、输入框、待确认提问)。可同时开多个窗口,支持拖拽与八向缩放(最小约 340×240)。− 或 Esc 收回当前浮窗并释放会话引用。任务运行中时,Esc 仍遵循 DSH 的双击中止规则,停下后再按可收窗。窗口会避开标题栏,拖出屏幕会自动拉回。
按关注度排序¶
同一分区内卡片按处理优先级排序:故障停止 → 需决策 → 运行中 → 已停止 → 已完成 → 空闲 → 草稿。钉住(📌)的卡片不受该排序影响,始终置顶。
板内搜索与定位¶
「关注工作区」左侧的搜索框只在板上已有卡片对应会话正文里做字面匹配(不区分大小写,空白宽松),可按已关注工作区收窄范围;草稿卡不参与。点结果会打开浮窗,并尽力向前翻页、滚动到命中消息并高亮。实现依赖只读 ctx.sessionQuery.filterEvents,默认配置即可用;有输入防抖与 15 秒结果缓存。极早的命中可能无法自动滚到具体消息,此时仅打开会话。
其它适配¶
- Turn 结局持久化:完成 / 失败 / 中止随卡片落盘,DSH 重启后不会把失败误读为已完成。
- dsh-rewind 联动:浮窗内
/rewind、/undo照常可用。 - 蓝色文件标签:点击可在系统文件管理器中打开所在目录(Windows 会选中文件)。
- 峰谷时钟:看板顶部显示 DeepSeek 计费峰/谷时段(北京时间工作日 9:00–12:00、14:00–18:00 为峰,其余半价),谷时显示距下一峰时倒计时。
- 中英双语与基础键盘无障碍(Tab 聚焦卡片,
Enter/ 空格打开等)。
Host 与 Client 通过 POST /api/dsh-task-board 通信;看板上的卡片不订阅会话流,运行中摘要由 Host 侧轮询合并,只有打开浮窗才持有会话引用。
安装与启用¶
前置:已安装 DSH,并至少配置一个 profile(如 web、desktop)。
# 从 GitHub 安装(推荐)
dsh plugin --profile web add git+https://github.com/MWGE22629/dsh-task-board.git
# 或从 GitLink 安装
dsh plugin --profile web add git+https://www.gitlink.org.cn/GeDaamn/dsh-task-board.git
# 或从本地目录安装(开发时)
dsh plugin --profile web add link:D:/path/to/dsh-task-board
把包名加入该 profile 的 package.json 里 dsh.profile.bundles 数组:
{
"dsh": {
"profile": {
"bundles": ["…", "@local/dsh-task-board"]
}
}
}
重启 DSH 后,侧边栏出现「任务看板」图标即表示启用成功。包名因历史原因固定为 @local/dsh-task-board,安装命令与 bundles 均按此引用。
典型用法¶
- 点击侧边栏「任务看板」图标。
- 点右上角「关注工作区」,选择一个或多个工作区排到板上。
- 在分区右上角点「+」新建任务卡,在浮窗里发送第一条指令(
Enter发送,Shift+Enter换行)——DSH 会在该工作区创建会话并执行。 - 也可把侧栏已有会话拖到看板,或点会话行「加入看板」。
- 需要续跑时,在失败或已停止的卡片上点「▶ 继续」。
- 找历史表述时,用顶部搜索框输入关键词,点结果打开浮窗并定位。
看板数据写在 ~/.dsh/storages/dsh-task-board/board.json(卡片数变少时会生成 board.json.bak)。会话正文仍在 DSH 自有日志中,看板只保存分区、卡片与会话的映射等无法推导的信息。插件 README 明确说明不发起外部网络请求。
适用场景与注意¶
适合谁:经常在 DSH 里并行多个工作区任务、需要一眼扫状态、又希望多会话分窗对照的开发者。与「单会话主界面」相比,看板侧重编排与巡视,详细编辑仍可在浮窗或主会话完成。
运行与信任边界:插件以当前 DSH 进程权限运行,能读写本机 DSH_HOME 下看板存储并调用官方会话查询 API。安装前建议浏览 GitHub 仓库 源码与 MIT 许可证。SkillHub 等为社区目录站点,与 DeepSeek / 幻方无官方从属关系,不宜当作官方应用商店。
兼容性:浮窗依赖 shell.overlay 与 taskboard.window 等客户端槽位;若窗口空白,可先收起再打开,并查看 DSH 日志中 [dsh-task-board] 报错。Host RPC 未就绪时看板可能短暂显示「存储不可用」,一般会数秒内重试。
结尾¶
dsh-task-board 把「多工作区、多会话」从侧栏长列表里抽出来,用分区卡片 + 浮窗多开 + 结局持久化 + 板内搜索,降低并行任务时的导航成本。若要进一步了解说明或提交 issue,可看社区目录页与仓库 README。
- 目录页:https://www.skillhub.cn/plugins/MWGE22629/dsh-task-board
- GitHub:https://github.com/MWGE22629/dsh-task-board