Repository navigation
dsh-task-dispatch: dispatch a task to a real DSH session by workspace, with a persistent task ledger #12904
vinson1101
started this conversation in
Show Your Plugins!
Replies: 1 comment
|
Update: 0.6.1 is out, and it closes a security gap an external reviewer found in 0.6.0. 0.6.0 allowed unauthenticated access when no token was configured, and validated neither 0.6.1 changes:
Release: https://github.com/vinson1101/dsh-task-dispatch/releases/tag/v0.6.1 If you are running 0.6.0, please upgrade — the old tarball is unchanged and still open. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
What it does
dsh-task-dispatchlets anything that can speak HTTP hand a task to a real DSH session, and read the result back later. It exists because moving work between two agent clients by copy-paste is the slowest part of the loop.taskId,requestId, session, workspace, status, result — stored as JSON under$DSH_HOME/relay/tasks/, so it survives a restart.GET /tasks/:idis read-only: no message is sent, the model is not invoked.POST /waitwaits for a terminal state. A timeout neither cancels the task nor resends it.requestIdin the session log, takes the turn that contains it, and treatsturn/endas the terminal evidence. When attribution fails, the task is surfaced asawaiting-userrather than reported as completed.Why it has zero dependencies
dependenciesandpeerDependenciesare both empty; it imports only Node builtins and calls services the host already runs. This is deliberate: a bridge that pinned old@deepseek-ai/*versions once installed a second copy of those packages, and the host then loaded the wrong one. Zero dependencies makes that failure mode structurally impossible.Install
An optional MCP adapter in
mcp/exposes it to Codex and other MCP clients as 7 tools.Limitation, stated plainly
There is no completion callback. The plugin never pushes a result to the caller; retrieval is pull-only (
dsh_result/dsh_wait). Thenotifyfield is a ledger for an optional webhook, not proof that a caller received anything.Repo: https://github.com/vinson1101/dsh-task-dispatch
中文
按工作空间或会话 id 给真实的 DSH 会话派发任务,结果写入持久任务台账,查询只读、不触发模型;超时不取消也不重发;零依赖。没有完成回传,取结果只能主动查。
All reactions