dsh-todo-enhancer:将 LLM 返回的决策清单转化为可编辑复选框表格

在 DeepSeek Harness (DSH) 开发中,LLM 经常会返回一系列需要用户确认的方案、任务或选项。传统的做法是将这些列表复制粘贴到输入框中,这种方式不仅繁琐,而且在流式输出过程中极易产生误操作。

dsh-todo-enhancer 是一个 Host/Client 双半区插件,旨在解决这一问题。它通过标记识别,将 LLM 输出中需要用户决策的内容,直接渲染为输入框上方的可编辑复选框表格,支持勾选、编辑和发送,将决策流程标准化。

插件概况

  • 名称:dsh-todo-enhancer
  • 维护者:EmptyCollin
  • 许可证:MIT
  • 核心价值:让「需要用户决策的内容」以带复选框的表格形式呈现,支持勾选确认、行内编辑与直接发送。

核心功能

插件通过严格的标记识别和交互式界面,提供以下能力:

  1. 标记驱动识别:只解析 <!-- dsh-todo:start --> 和 <!-- dsh-todo:end --> 标记块。普通编号列表或项目符号不会触发增强,杜绝误报。每个标记块对应一个独立面板。
  2. 复选框表格:支持行内直接编辑文本、添加行、删除行、全选及全不选。
  3. 整体编辑:列表标题可实时修改,并在发送时追加「整体补充说明」。
  4. 三种操作模式:
    • 直接发送:填入输入框并立即提交。
    • 填入对话框:仅填入草稿,不立即提交。
    • 关闭:放弃当前修改,关闭面板。
  5. 时序保证:仅在对话全部输出完成后(session.running === false)才渲染,流式输出中不可见。
  6. 来源纯净:自动排除思维链(reasoning)与工具调用块,仅处理决策清单。

安装与启用

支持从 GitHub 直接安装或使用本地路径安装。

  1. 安装命令:
    dsh plugin --profile web add github:EmptyCollin/dsh-todo-enhancer
  1. 启用步骤:
    安装后必须重启 dsh 服务并刷新浏览器页面,才能加载 Host 和 Client 半区代码。

  2. 配置说明:

    • Profile:安装命令中的 web 可替换为其他配置文件名(如 cli, desktop)。
    • 离线安装:如果无法访问 github.com,可以使用本地路径:
        dsh plugin --profile web add D:\dsh-plugin\dsh-todo-enhancer
*   **依赖项**:插件依赖 `@deepseek-ai/cordis` (^4.0.1) 和 `react` (^18.2.0)。

典型用法

  1. 向 LLM 发送会产出需要决策内容的消息,例如「列出 3 个可选方案,让我选一个」。
  2. LLM 返回包含标记包裹的清单后,输入框上方会出现面板。
  3. 勾选、编辑或全选后,选择「直接发送」、「填入对话框」或「关闭」,面板随即关闭。

工作原理与注意事项

  • 双半区架构:
    • Host 半区:向系统提示词注入标记规则(order 120),要求 LLM 用成对标记包裹需要决策的内容。
    • Client 半区:注册 conversation.input.dock,将 LLM 返回的标记块渲染为表格 UI。
  • 纯前端实现:无持久化存储,样式随插件卸载自动回收。
  • 适用场景:适用于任何需要从 LLM 获取列表并需要用户筛选、确认的对话场景。

更多资源

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜