Dynamic model routing for DSH subagents
XMoon/dsh-subagent-router · productivity
Dynamic model routing for DSH subagents, with continuable spawn sessions and one-shot fork support.
★ 4GitHub stars
0Forks
2026-08-28Last updated
TypeScriptLanguage
—License
Key features
- The model selects only the LLM route: provider must name a registered DSH LLM adapter route and model a model id on it.
- A continuable child is a durable conversation: send_message (official control tool) delivers later FIFO turns, list_agents lists it, interrupt_agent interrupts it — all through ctx.subagents authority paths.
- Each loaded router instance needs a unique toolName.
- allowedProviders is executor-level enforcement, not a prompt hint.
- provider/model validity is ultimately resolved by the DSH LLM/Agent resolution at the child's first request (no listModels() hard whitelist, preserving dynamic model routes).
Requirements
- No mid-session model switching — provider/model are fixed at creation
- the durable descriptor persists them, so a resumed Activation still uses the creation-time route.
Install command
dsh plugin --profile web add github:XMoon/dsh-subagent-router