前言¶
DeepSeek Harness(DSH)在 Web 里跑会话时,你常会切到别的窗口写代码或查资料。回来时很难一眼判断:模型是否还在生成、是否在等你批准或回答问题、上一轮输出是否已经结束。弹通知会打扰工作流,改页面布局又占空间;浏览器标签页背景色网页也改不了。社区维护者 xyzYaeMiko 的 DSH Tab Status Light(仓库 xyzYaeMiko/dsh_tab_status_light)走另一条路:只改标签页 favicon 里鲸鱼的填充色,把同一份会话状态折成「状态灯」,余光扫到标签即可。
下面介绍插件定位、颜色规则、安装方式,以及使用时需要知道的限制。
这是什么¶
DSH Tab Status Light 是 DSH Web 插件(v0.1.0,MIT),分类上属于社区目录里的「趣味换装」——实质是把默认白/黑鲸鱼换成与宿主 UI 语义一致的状态色。它不弹窗、不占侧栏,卸载或空闲时会恢复原版 favicon link。
维护者:xyzYaeMiko。目录页:SkillHub - dsh_tab_status_light。源码与说明:GitHub - xyzYaeMiko/dsh_tab_status_light。
核心功能¶
四种状态与颜色¶
颜色语义对齐 DSH 主题,而非自造一套;运行色刻意避开 DeepSeek logo 的蓝色,以免和品牌图标混淆。
| 状态 | 颜色 | 何时出现 |
|---|---|---|
idle |
原版图标(深/浅主题白鲸或黑鲸) | 无会话在跑、也无未读完成 |
running |
紫罗兰(如 #886BAE,随主题解析) |
任一会话正在生成或等待模型回复 |
reply |
琥珀(如 #F59E0B) |
有 ask_user_question 或审批在等你 |
done |
绿色(如 #22C55E) |
后台会话跑完或有未读完成 |
同一回合在等你回答时只计「询问」:宿主里该会话 running 仍为 true,但插件不会同时点亮「运行」,避免一次提问把鲸鱼刷成两色。
多状态并存:鲸鱼分段上色¶
多个状态同时活跃时,鲸鱼从左到右等分成色带,顺序固定为 询问 → 运行 → 结束(可在 client.js 的 STATE_PRIORITY 修改):
- 仅一种状态:整只鲸鱼为该色。
- 询问 + 运行:左琥珀、右紫罗兰。
- 询问 + 运行 + 结束:左琥珀、中紫罗兰、右绿。
- 运行 + 结束:左紫罗兰、右绿。
只换鲸鱼 path 的填充色,标签背景仍由浏览器决定。
绿色(done)何时消失¶
- 点开对应会话即视为已读,绿色立刻消失。
- 切回标签页或页面内点击、按键、聚焦,会清掉「离开时结束」的提醒。
- 其它一级会话的未读完成会保留,直到你点开它们。
- 只统计可点开的一级会话;subagent / Agent Teams 队友会话被过滤,避免无法打开的会话把标签永久钉在绿色。
工作原理(简要)¶
- 数据:通过
@deepseek-ai/dsh-client-ui-session的useSessionStatus(SessionStatusSnapshot)读取各会话的running/pendingInteraction/completionUnread,不轮询会话日志。 - 配色:用 DSH 主题 token 与隐藏探针解析
var()/color-mix();主题变更时重建图标。 - 绘制:鲸鱼轮廓来自
@deepseek-ai/dsh-web-frontend的 favicon 素材(仅改填充);Canvas 输出透明 PNG,不可用时退回 SVG data URI。 - 接管 favicon:在
shell.overlay注册不渲染内容的组件,用 effect 替换document.head的link[rel~="icon"],卸载或空闲时原样恢复。不修改document.title与theme-color。
安装与启用¶
环境要求:DSH >=0.2.1-rc.2 <0.3.0,Web profile。
方式一:从 GitHub 安装(推荐)
在 DSH 插件管理里执行 bundle 安装,目标为 GitHub 仓库:
plugin_manager → install_bundle → target: github:xyzYaeMiko/dsh-tab-status-light
或使用 DSH CLI:
dsh plugin --profile web add github:xyzYaeMiko/dsh-tab-status-light
装好后若未自动生效,刷新一次 DSH 页面。卸载:在插件列表禁用或移除「标签页状态灯」,图标立即恢复原版。
插件以当前 DSH 进程权限在浏览器侧运行;安装前建议阅读仓库源码、LICENSE 与 NOTICE.md,确认许可与素材归属符合你的要求。
典型用法¶
本插件无单独配置文件:启用后,侧栏 DSH 图标与标签页 favicon 会随会话状态实时变色。典型场景如下。
- 切到其它应用写代码,标签页鲸鱼变紫罗兰表示仍在生成。
- 模型发起提问或审批,鲸鱼变琥珀;回到 DSH 回答后该段颜色消失。
- 后台会话结束而你在别处,鲸鱼出现绿色段;点开该会话后绿色清除。
- 同时有提问、运行、未读完成时,可见左琥珀、中紫罗兰、右绿的三色鲸鱼(与 README 中
docs/colors.png示意一致)。
同一 DSH 开多个浏览器标签时,各页反映同一份会话状态,会一起变色。
适用场景与注意¶
适合谁:长时间多窗口使用 DSH Web、希望用标签余光判断会话状态、又不想被通知打断的开发者。
已知限制(来自 README):
- 不改标签标题文字、不画标签背景色块。
- 动态 favicon 在 Chromium 系最稳;Firefox / Safari 可能不刷新图标。
- 主题若删掉相关 token,会退回内置兜底色。
- 只统计一级会话;subagent / 队友会话不驱动标签颜色。
DSH 生态强调「一切皆插件」;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系,本文介绍的是社区插件而非官方应用商店条目。
结尾¶
DSH Tab Status Light 把浏览器标签上的鲸鱼当成轻量状态灯:生成紫罗兰、等你琥珀、结束绿色,多状态并存时分段显示,配色跟随宿主主题。若你需要这种「切走也能扫一眼标签」的体验,可从目录页了解分类信息,并按上文命令从 GitHub 安装 github:xyzYaeMiko/dsh-tab-status-light。
- 目录页:https://www.skillhub.cn/plugins/xyzYaeMiko/dsh_tab_status_light
- GitHub:https://github.com/xyzYaeMiko/dsh_tab_status_light