When using DeepSeek Harness (DSH), if multiple models are configured, manually deciding which model should execute each task incurs a high decision cost. The dsh-model-orchestrator plugin solves this pain point by automatically discovering models, analyzing capabilities, and routing tasks. It is not bound to a specific model or provider, and focuses on scheduling model capabilities.
Plugin Introduction¶
dsh-model-orchestrator is a general-purpose model orchestrator. It is maintained by Meaple-SFKY. Its core function is to read the live LLM registry to discover the models actually available in the running Harness, infer each model’s capabilities based on evidence, and route each work unit to the best available model.
Core Features¶
The plugin includes the following core capabilities:
- Model discovery: Reads the LLM registry on activation, on topology changes, at most 5 minutes after the last read, or on demand. The pool is not persisted.
- Capability analysis: Builds profiles from host facts (input modality, context window, exposed reasoning effort) and provider descriptions. It does not fabricate capabilities.
- Task matching: Converts tasks into requirement sets and deterministically scores each live model. Models are rejected when hard requirements cannot be proven.
- Open capability system: Generic descriptors with an extensible taxonomy.
- Two modes: Auto infers requirements; Guided seeds matching.
- Orchestration: Simple work runs directly, focused work is delegated to subagents, and complex work is orchestrated across domains.
- Captain role: A role, not a binding. Decompose, distribute, aggregate, verify, close.
- UI: Settings page and orchestration board.
- Persistence: Preferences, descriptors, and calibration are persisted. The model pool is not persisted.
- Compatibility check: Refuses unsupported hosts.
Installation and Enablement¶
Installing the plugin requires using the specified command. Before installation, it is recommended to check DSH version compatibility.
dsh plugin --profile <name> add github:Meaple-SFKY/dsh-model-orchestrator
After installation, restart the profile to activate the host. The plugin declares engines.dsh = "0.1.5-rc.1" and does not support other versions.
Typical Usage¶
After installation, the plugin works automatically without complex configuration. You can intervene through commands or the UI.
- Command line: Invoke the orchestrator directly to handle a specific task.
/model-orchestrator <task>
- UI configuration: Go to the settings page and adjust the mode, capability domains, cost preferences, etc.
- Path: Settings → Model Orchestrator
Example:
If you have a complex task, such as: “Refactor the parser, then run the benchmarks, then write up what changed.”, the plugin automatically decomposes and routes it.
Notes¶
- Role positioning: This is a dispatcher, not a task manager. It does not replace DSH’s native task handling (such as
todo_write, progress display, etc.); instead, it integrates through thectx.subagents.startseam. - Permission requirements: The
isolatedomain is not required. It only consumes host capabilities (llm,subagents,tools,systemPrompt). - Error handling: Refuses to activate on unsupported hosts and provides precise reasons. There is no silent degradation.
Summary¶
dsh-model-orchestrator is designed to solve routing decision problems in multi-model environments. By discovering models, analyzing capabilities, and using the Captain role for orchestration, it enables DeepSeek Harness to handle complex tasks more intelligently.
- Plugin catalog: dsh-model-orchestrator
- Source code: github.com/Meaple-SFKY/dsh-model-orchestrator