dsh-queue-director

by loklamlok

0 工作流与自动化github 检测到 manifest package.json#dsh收录于 08-17

DSH web 插件:在 agent 处理前重排消息队列(上移 / 下移 / 置顶 / 置底)

DSH web plugin: reorder queued messages (up / down / top / bottom) before the agent processes them.

安装

dsh plugin --profile web add github:loklamlok/dsh-queue-director

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗

安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。

README

目录

English | 中文

DeepSeek Harness(DSH)Web 插件:调整排队消息的顺序(上移 / 下移 / 置顶 / 置底),让 AI 按你想要的顺序处理排队中的指令——写长文、批量发指令时特别好用。

功能

  • 每条排队消息旁新增 ↑ / ↓ 按钮;展开队列后还会显示 置顶 / 置底 按钮。
  • 拖动排序:按住消息行(或行首 ⠿ 把手)直接拖到队列中的任意位置。
  • 全部置顶:一键把所有排队消息立即交给 AI 处理(任务运行中可用)。
  • 清空队列:一键移除全部待处理消息(两次点击确认,防误删)。
  • 保留 DSH 内置队列的全部能力:预览、行内编辑、删除、立即发送(steer)。
  • 更新插件后无需重启服务器:DSH 的客户端热更新(HMR)会自动推送新版本(页面强制刷新一次即可)。

工作原理

  • 宿主半(lib/index.js):注册一个受信任的 HTTP 端点 POST /queue-director/api/reorder,通过 agent.inbox.splice 重排待处理消息——与内置 session.updateQueue RPC 走同一条持久化通路,客户端快照自动刷新。路由使用与 dsh-better-sidebar 相同的浏览器信任围栏(回环地址 / 受信 Host + 同源校验)。
  • 客户端半(lib/client.js):以 priority: -1 影内置的 conversation.input.dock 条目(id 为 queue,低优先级渲染),重绘排队条并附加排序控制。
  • 不修改 DSH 任何源码,插件以组合包(bundle)形式通过 dsh.profile.bundles 挂载。

环境要求

  • DSH web profile(@deepseek-ai/dsh-web-app)与 dsh 启动器
  • Node.js ≥ 20

安装

插件尚未发布到 npm,请从源码安装:

# 1. 把仓库克隆到任意位置
git clone https://github.com/loklamlok/dsh-queue-director

# 2. 在 DSH web profile 目录($DSH_HOME/profiles/web)的 package.json
#    中添加依赖(路径换成你的克隆位置):
#    "dependencies": { "dsh-queue-director": "link:<仓库路径>" }

# 3. 注册 bundle:
#    "dsh": { "profile": { "bundles": [..., "dsh-queue-director"] } }

# 4. 安装并重启
pnpm install
# 重启 `dsh web`,然后强制刷新页面(Cmd/Ctrl+Shift+R)

卸载

cd "$DSH_HOME/profiles/web" && pnpm remove dsh-queue-director
# 并从 package.json 的 dsh.profile.bundles 中删除 "dsh-queue-director"

开发

  • lib/index.js — 宿主半(排序路由与重排逻辑;reorderInbox 已导出供测试使用)
  • lib/client.js — 客户端半(window.__ModuleLoader__.load 工厂,无需构建步骤)
  • cordis.patch.yml — bundle patch(把插件条目插入加载器)

协议

MIT

原始 README: https://github.com/loklamlok/dsh-queue-director/blob/main/README.zh.md ↗