lsxblh/dsh-todo-dock
lsxblh★ 1JavaScriptLast synced: 2026-08-16
DeepSeek Harness Web GUI 插件:把 todo 面板停靠到右上角并跨轮常驻(CSS 注入 + 机制级重放),可热调样式,零依赖。原名 dsh-ui-todo-fix。
README excerpt
dsh-todo-dock DeepSeek Harness Web GUI 插件:把 todo 面板从聊天输入框上方 停靠到界面右上角 ( position: fixed ),不占文档流、不挡输入,并让任务列表 跨轮常驻 不消失。纯 CSS 注入 + host 侧机制级重放,不碰任何组件逻辑。 改名说明 :v0.3.0 起由 dsh-ui-todo-fix 更名为 dsh-todo-dock (v0.2.x 及更早均为原名)。 特性 - 零依赖、纯 Host 插件,核心代码 50 行 - 走官方注入钩子 webServer.tapIndex (与内置主题插件同构) - CSS 内容由 config.css 驱动: 热调样式无需重启 (改 profile 的 cordis.patch.yml → HMR 生效 → 刷新页面) - 跨轮常驻 :todo 列表在发消息(新 turn)后不消失——机制级实现,不依赖任何 agent 行为习惯(v0.2 新增) - 健壮性加固 (v0.2.1):非数组 junk 不重放 / Map 随会话销毁清理 / 重放错误隔离,附 8 用例回归测试 - 内置默认样式,装完即有默认效果 - 标准 dsh.bundle 形态: dsh plugin add 自动登记进 profile bundles 跨轮常驻 dsh 原生机制: turn/start (用户发消息开启新一轮)会把 todos 投影清空,todo 面板随之整体消失,直到 agent 本轮重新调用 todo write 。 本插件在 host 侧监听 session/event :按会话记录最近一次 todo/write 的列表, turn/start 后立即重放一条 todo/write ——任务列表跨轮保持可见,任何 agent 都无需额外动作。 - 默认开启; config.keepAcrossTurns: false 可关闭(恢复原生行为) - agent 主动清空(写入空列表)后不会复活 - 每次 turn 会在会话事件流多追加一条 todo/write (合法事件,仅用于恢复) 机制 todo 面板( section[data-testid="todo-panel"] )由内置组件挂载在 conversation.input.dock 槽( order: 0 ),因此默认出现在输入框上方。本插件向 index.html 注入一段 ,把该面板 position: fixed 钉到右上角并加阴影/圆角/滚动。 注意:TodoPanel 是条件渲染的——当前会话没有 todo 任务时不显示面板,这是产品行为,与插件无关。 安装 依赖 DSH Web profile( dsh plugin 基于 pnpm,需本机有 pnpm): 安装后 重启一次 dsh web 服…
View full README on GitHub →