CypherNaught-0x/DSH-Subagent-Model-Router
dsh-subagent-model-router
Deepseek Harness plugin that allows automatic delegation of subtasks to different models based on user preferences
Install
npx @deepseek-ai/dsh plugin --profile web add dsh-subagent-model-routerRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-subagent-model-router)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from CypherNaught-0x/DSH-Subagent-Model-Router, cleaned of badges and images.
dsh-subagent-model-router
A DeepSeek Harness Cordis plugin for delegating subagent work to a configured model route that can differ from the parent agent's current model.
What it adds
subagent_model: a delegation tool whosemodelargument is restricted to user-configured aliases.wait-for-subagents: a join tool that waits for this agent's outstanding continuable background children, including standard and model-routed delegations, and returns their terminal results.- Per-model tags and routing descriptions embedded in the tool schema and system prompt.
model_subagent_catalog: a read-only view of models advertised by registered LLM providers.configure_subagent_models: a namespace-scoped model-facing tool for reading or updating this plugin's settings without filesystem access.model-subagent-setup: a guided skill for selecting routes, generating routing guidance, obtaining confirmation, and saving through the constrained configuration tool.- Settings → Subagent Models: a Web settings page for manually adding, editing, and removing routes.
- A hot-reloaded
subagent-model-routernamespace in~/.dsh/settings.yaml. - Foreground execution and durable continuable background subagents.
- An active-model chip in an opened subagent header.
- Active-model chips in healthy rows of the parent session's subagent catalog.
With an empty models list, the catalog, configuration, and wait tools remain available alongside the settings page and setup skill, but subagent_model is not registered. This provides a bootstrap state for initial setup.
Orchestrator behavior
When model-selectable delegation is available, the system prompt tells the orchestrator not to duplicate work it delegated. After issuing all intended background delegations, it must call wait-for-subagents before synthesizing the child results or giving a final answer. The wait tool joins every continuable background child started by that parent, whether through a standard delegation tool or subagent_model; it remains useful when no model routes are configured. It preserves every terminal content block and drops retained records when the parent is disposed, while foreground calls already return their result directly. If another plugin already owns or scope-shadows the wait-for-subagents name, this plugin leaves it untouched and suppresses its wait-specific guidance and tracking for the affected agents.
Model identity chips
The opened subagent header and every healthy row in its parent's subagent catalog show the model id from the latest adapter-resolved request. Hover and accessible text expose the complete provider/model route. The plugin resets the route at the child's own descriptor so a fork cannot inherit its ancestor's model, and it omits the chip until the child records an authoritative request route.
Requirements
- DeepSeek Harness
0.1.0-rc.6or compatible - The Web profile and built-in subagent conversation UI
- A preset exposing the normal skill loader/tool
- The Host
spawnsubagent provider, included by standard DSH profiles
Install
# From npm once published
dsh plugin --profile web add dsh-subagent-model-router
# Or from inside this checkout
dsh plugin --profile web add .
Restart dsh web after installation and refresh the page. Open Settings → Subagent Models, or invoke:
/model-subagent-setup
Configure through the Web UI
…
