前言¶
在 DeepSeek Harness(DSH)里同时跑多个会话时,很难一眼知道哪个会话还在执行、哪个已经失败、哪个正等你审批。通常得逐个点开窗口确认,状态越多越乱。Taskball 的思路是做一个常驻悬浮球,把每个会话的状态用颜色画在球上,扫一眼就知道全局。
它是由社区开发者 ef-umbra 维护的第三方插件(GitHub 项目 ef-umbra/dsh-useful-taskball,MIT 许可),属于「客户端」类插件。DSH 的理念是「一切皆插件」,Taskball 就是挂在客户端侧的一个界面扩展。下文按功能、安装、用法的顺序介绍。
定位与状态颜色¶
Taskball 把会话状态映射成五种颜色:
| 颜色 | 含义 |
|---|---|
| 红 | 任务中断或失败 |
| 黄 | 有任务等你审批或决策 |
| 蓝 | 有任务正在执行 |
| 绿 | 任务已完成 |
| 灰 | 暂无任何状态 |
球按有状态的会话数等分扇区,每个扇区显示对应会话的颜色。一个会话同时命中多种状态时取优先级最高的:红 > 黄 > 蓝 > 绿。没有任务时球是灰色。
核心功能¶
一眼看全局。 每个扇区对应一个会话,颜色即状态。会话增减时扇区平滑滑开或收拢。
点开就是任务面板。 按工作区分组列出待处理会话,点标题直接跳过去。面板里勾了「已处理」,球上对应扇区同时消失,球和面板保持一致。
状态突变提醒。 状态从「执行中」变成失败或待审批时,球旁边弹出气泡通知。完成态是否提醒可以自己设。
完成的任务自动收纳。 已完成会话收进面板底部,可展开、可撤销,超过保留时长后自动消失。失败、待审批、执行中的任务不会自动消失,必须手动处理。
草稿也可见。 写了半句还没发出的会话排在面板最上方,点一下回去接着写。行首图标区分:文件夹表示还没写过内容的新会话,气泡表示聊过且留着半句话的老会话。
可以收起。 右键选择收起后,球变成一条细竖条贴在输入框左边,竖条按任务状态分段着色,一个任务一段;点一下变回球,位置仍是收起前的位置。
安装¶
要求 DSH 0.2.1-rc.3 或更高版本。社区目录页的插件版本为 0.10.2。
从 npm 安装(推荐):
dsh plugin add dsh-useful-taskball
也可以从 GitHub 直接装:
dsh plugin add github:ef-umbra/dsh-useful-taskball
用 GitHub 方式时,DSH 会询问是否允许运行构建脚本,选允许即可,包需要现场编译出产物。
典型用法¶
球本身的操作:
- 拖动到顺手的位置,位置会记住。拖到侧栏分界线或屏幕边缘附近松手,球自动吸附;之后侧栏展开、右栏开关、窗口缩放,吸附的球会跟着移动。
- 单击展开任务面板,再点一次收起。
- 右键打开快捷设置,含球大小、磨砂、面板不透明度、状态突变提醒、是否显示已处理区、面板字号等常用项。键盘可用
Shift+F10调出,或点面板首行的齿轮。
处理任务:
- 每行右侧勾选框即「已处理」,勾上后该行移到下方折叠区,可随时撤销。
- 失败任务直接勾选时会先确认:整行滑走,原位出现「取消 / 确认已处理」,点确认才真正折叠,按
Esc可取消。 - 按住
Shift再勾选失败,会列出当前所有待处理的失败会话,一次确认全部处理。 - 按住
Shift再勾选已完成,直接收纳全部已完成会话,无需逐个确认。
让红色退场的三种方式:勾选「已处理」、归档该会话,或回到对应会话发一条消息。
设置¶
入口在 DSH 的「插件 → 已安装插件 → Taskball · 任务状态悬浮球」,也可在快捷面板里点「打开全部设置」。分三个标签:
外观:悬浮球大小(小 / 中 / 大)、面板质感(不透明度滑块 + 磨砂玻璃开关,默认半透明磨砂)、色盲友好配色(把失败与完成的红绿换成紫红和青绿)、状态表示(矩形或圆点)、面板字号、是否显示已处理区、是否显示已处理计数。
动效:勾选动画(向外淡出 / 向下移入)、吸附距离(设为 0 则完全不吸附)、气泡显示时长、点击面板外是否关闭。
通知:状态突变提醒(默认开启,关闭后任何气泡都不弹,包括失败提醒)、完成态保留时长。
适用场景与注意事项¶
适合同时维护多个 DSH 会话、需要频繁切换并快速判断哪些任务已失败或待审批的开发者,尤其适合值班或多人协作时盯任务池的场景。
需要注意几点:
- 这是第三方社区插件,不是 DSH 官方项目,与 DeepSeek 官方没有隶属或背书关系;社区目录是独立站点,也不是官方应用商店。
- 插件以当前 dsh 进程的权限运行,安装前应检查源码与许可证(本项目为 MIT 许可),再决定是否引入。
- 作者自述这是「vibe coding」项目,由人与 AI 协作写成,可用性优先于工程完备;属于个人项目,没有团队维护,Issues 不一定能及时响应。
- GitHub 安装方式会执行构建脚本,属于较敏感操作,确认脚本内容后再选择允许。
结尾¶
Taskball 的价值在于把分散在多个会话里的任务状态收敛到一个常驻的视觉焦点上,减少逐个翻面板确认的动作。如果你已经在用 DSH 0.2.1-rc.3 或更高版本,且管理着不止一个会话,值得装一个试试。
目录页:https://www.skillhub.cn/plugins/ef-umbra/dsh-useful-taskball
GitHub:https://github.com/ef-umbra/dsh-useful-taskball