在官方队列 dock 内直接重排忙碌时排队的消息:每一行带拖拽手柄与上下移动按钮,移动在宿主端以一次带并发校验的 inbox splice 完成。只装饰官方 dock 而不替换它,因此预览、行内编辑、插话、删除与附件保持原样。队列已变化、该行不是用户消息(例如目标轮次提示)、或队列属于子代理会话时,移动会被拒绝。
安装
# npm 包(预构建)
dsh plugin --profile web add dsh-queue-reorder
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:damlys99/dsh-queue-reorder
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
该插件的 README 只有英文版本。
Reorder the messages you queued while a DSH agent was busy — inside the official queue dock, not in a panel beside it.

What you get
- A grip handle on every queued row: drag a message where you want it.
- ↑ / ↓ per row, wearing the dock's own action-button class, for precision instead of a drag. The last row's ↓ is disabled, because there is nothing after it.
- The dock is decorated, never replaced. Previews, inline editing, steering, removal, attachments and collapse stay exactly as the conversation plugin ships them; uninstall and the dock is untouched.
Install
dsh plugin --profile web add -w dsh-queue-reorder
# restart dsh web, then reload the page
Requires DSH >=0.1.2-alpha.1 <0.2.0-0 (earlier client-plugin contracts have no
conversation.input.dock slot). From a checkout instead:
dsh plugin --profile web add -w link:/absolute/path/to/dsh-queue-reorder
Uninstall:
dsh plugin --profile web remove dsh-queue-reorder
Design
Two small halves, no build step, no runtime dependencies:
- Host (
lib/index.js) registers one same-origin route,POST /queue-reorder, and performs a single concurrency-checkedagent/inbox.splice('next-turn', …)over the smallest span containing both ends of the move. - Browser (
lib/client.js) is a hand-authored module-loader bundle. A hiddenconversation.input.dockentry (which rendersnull) reads the session snapshot for the queued ids and their order — the dock's DOM carries no ids — and aMutationObserverdecorates the official rows. It re-reads each row's position at click and drag time, because the dock reorders those very elements in place.
What it refuses, and why
| Refusal | Reason |
|---|---|
QUEUE_CHANGED |
Your view of the queue no longer matches the live queue; retry rather than scramble it. |
NON_USER_MESSAGE |
The move would discard and reinsert a row whose source the harness still tracks (a goal round prompt, for example), cancelling that work. |
SUBAGENT_UNSUPPORTED |
A subagent session's queue is owned by its parent session. |
| Steering rows | Only next-turn (placement: "queued") rows move; next-step stays put. |
A refused move changes nothing: every guard runs before the splice.
Caveats
- The decorator attaches to the official dock's markup (
[data-queue-dock], its row list, the trailing action container). Those are implementation details of@deepseek-ai/dsh-client-ui-conversation, not a published contract: if the dock is restructured, the controls may stop appearing. It fails soft — the dock keeps working, you just lose the grip until this plugin catches up. - Verified on DSH 0.1.5-rc.1, in a browser and through
selftest.mjs. - The route answers on the loopback interface without the GUI's session cookie, like other plugin HTTP routes. A cross-site browser request is still blocked: the JSON content type forces a CORS preflight that the route answers with 405.
Tests
node selftest.mjs
No network, no browser, no build. 32 assertions covering the move transaction, every refusal, the request decoder, the HTTP surface, and the dock decoration (injection idempotence, live index reads, drop marking, notice reporting).
License
MIT
链接
同类插件
zhu1090093659/dsh-web#packages/dsh-task-board★ 8567
侧边栏多列任务看板:卡片交给真实 DSH 智能体会话执行,支持 cron 定时(Host 侧到点执行,关浏览器也生效)。
zhu1090093659/dsh-web#packages/dsh-web-all★ 8567
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。
MeteorNOX/DeepSeek-Balance-Whale-Widget★ 4363
右下角常驻的小鲸鱼挂件:余额、今日已用与每轮对话消耗(含峰谷价),余额预警与今日预算的泡泡内容都可编辑;泡泡点击序列模块化自定义,支持并列加权 A/B、随机台词与随机图片;内置 30+ 厂商模板(OpenAI / OpenRouter / Kimi / 硅基流动 / 方舟 / 智谱 / MiniMax 等),按模型查余额与订阅额度;另有任务结束音效、导入音频、自定义角色与资源管理。数据全在本机,无遥测。
ccch1mneyyy/dsh-TUI★ 4235
Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。
omdsh-dev/DSH-better-sidebar★ 4081
侧边栏完整工作台:内置文件渲染编辑、终端、Git 与子代理,支持三方插件注册新 Tab。
Devin-AXIS/deepseek-design#deepseek-idesign★ 1441
可视化设计工作室,支持网站、App 原型、海报、信息卡、报告和杂志的模板创建、元素编辑、选区级 AI 草稿衔接与导出。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。