dsh-queue-director
其他 活跃维护

dsh-queue-director

loklamlok/dsh-queue-director

作为Web插件,可在代理处理排队消息前,支持上下移动、置顶、置底调整消息顺序,操作直观便捷,无需复杂配置即可灵活管控消息处理优先级。

0
Stars 标星
0
Forks 分支
0
Watchers 关注
0
Open Issues
JavaScript
主要语言
MIT
开源协议
20 KB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:loklamlok/dsh-queue-director
git clone https://github.com/loklamlok/dsh-queue-director.git
git clone git@github.com:loklamlok/dsh-queue-director.git
README.md main

dsh-queue-director

English | 中文

A DeepSeek Harness web plugin that lets you reorder queued messages (up / down / top / bottom) before the agent processes them — handy when writing long articles or running a batch of prompts in your own preferred order.

Features

  • Each queued message gains ↑ / ↓ buttons; when the queue is expanded, Move to top / Move to bottom chips appear as well.
  • Drag to reorder: grab a message row (or its ⠿ handle) and drop it anywhere in the queue.
  • Send all now: promote every queued message to the AI at once (works while the task is running).
  • Clear queue: remove all pending messages in one click (with a two-step confirm to prevent accidents).
  • Built-in queue behaviors are preserved: preview, inline edit, remove, and send-now (steer).
  • No server restart needed after an update: DSH's client HMR pushes the new bundle automatically (a hard refresh of the page is enough).

How it works

  • Host half (lib/index.js): registers one trusted HTTP endpoint POST /queue-director/api/reorder, which reorders pending inbox items via agent.inbox.splice — the same durable path the built-in session.updateQueue RPC uses, so the client snapshot refreshes automatically. The route uses the same browser-trust fence as dsh-better-sidebar (loopback / trusted hosts + same-origin checks).
  • Client half (lib/client.js): shadows the built-in conversation.input.dock entry (id: "queue", priority: -1 — lowest renders), redrawing the queue strip with the extra reorder controls.
  • No DSH source is modified; the plugin mounts as a bundle via dsh.profile.bundles.

Requirements

  • DeepSeek Harness web profile (@deepseek-ai/dsh-web-app), dsh launcher
  • Node.js ≥ 20

Install

The plugin is not published to npm yet, so install it from source:

# 1. Clone the repository anywhere you like
git clone https://github.com/loklamlok/dsh-queue-director

# 2. In your DSH web profile directory ($DSH_HOME/profiles/web),
#    add the dependency (adjust the path to your clone):
#    "dependencies": { "dsh-queue-director": "link:<path-to-repo>" }

# 3. Register the bundle in package.json:
#    "dsh": { "profile": { "bundles": [..., "dsh-queue-director"] } }

# 4. Install and restart
pnpm install
# restart `dsh web`, then hard-refresh the page (Cmd/Ctrl+Shift+R)

Uninstall

cd "$DSH_HOME/profiles/web" && pnpm remove dsh-queue-director
# and remove "dsh-queue-director" from dsh.profile.bundles in package.json

Development

  • lib/index.js — host half (route + reorder logic; reorderInbox is exported for tests)
  • lib/client.js — client half (window.__ModuleLoader__.load factory, no build step)
  • cordis.patch.yml — bundle patch (inserts the plugin entry into the loader)

License

MIT