01Virex/dsh-status-rotator ↗★ 7
dsh-status-rotator
Rotates the DSH chat turn-status label ("Deep diving...") through user-defined phrases every few seconds.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:01Virex/dsh-status-rotator说明文档
阅读完整 README ↗dsh-status-rotator
把 DeepSeek Harness(dsh)Web 界面底部回合运行时那行 Deep diving... 状态文字,替换成自定义文案:按回合阶段切换、打字机逐字输出、流动炫彩渐变(可关)、定时轮换。运行时长时钟(15 秒后出现)不受影响。
特性
- 阶段感知:
thinking(刚启动)/running(15s 后)/long(超过阈值)三组文案,时钟出现或超时立即切换,不用等轮换间隔; - 打字机效果:文案逐字"打"出,速度可调,设 0 即关闭;
- 炫彩渐变:文字以流动渐变显示,颜色序列与流速可配,可一键关闭;
- 文案与代码分离:文案全在
config.json里,改文案零代码、免重启; - 自动加载:node half 注册 HTTP 路由 serve
config.json,开箱即用,无需 localStorage 或部署; - 多语言:中英文文案跟随「设置 → 语言」实时切换,未知语言回退中文;
- 零侵入定位:按
role="status"+aria-live="polite"精确定位 TurnStatus,不误伤聊天记录代码片段与其它 aria-live 区域,不碰时钟。
阶段感知
文案按回合进展分三组(判定依据是 TurnStatus 元素里是否出现时钟及其读数):
| 阶段 | 触发条件 | 默认时长 |
|---|---|---|
thinking | 回合刚启动,无时钟 | 0 ~ 15s |
running | 时钟出现,未超时 | 15s ~ longAfterMs |
long | 时钟超过 longAfterMs | ≥ 60s |
阶段切换会立即触发换文案,无需等轮换间隔。某阶段缺文案组时自动回退(running → thinking → 任意非空组)。
炫彩渐变
状态文字默认以流动的七彩渐变显示(仅作用于文案,不影响时钟)。可在配置里关闭或自定义配色:
"gradient": {
"enabled": false, // false 关闭;true 用默认配色
"colors": ["#ff5f6d", "#00ff88", "#4da6ff"], // 渐变颜色序列(至少 2 个,循环首尾)
"speed": 4 // 流动速度(秒/圈)
}
安装
-
把本项目目录放到 profile 的 node_modules 下(默认
C:\Users\\.dsh\profiles\node_modules\dsh-status-rotator\); -
在 profile 的
cordis.patch.yml里插入:- insert: - id: status-rotator name: dsh-status-rotator -
运行
node gen-config.cjs初始化本地config.json(从config.example.json复制); -
重启
dsh web,浏览器 Ctrl+F5 硬刷新。
配置
文案已从源码分离,全部放在 JSON 配置文件里。项目根有两个配置文件:
config.example.json— 入库的完整模板:(中英双语,分三阶段);