dsh-orchestrator: Adding Multi-Agent Orchestration Mode to DeepSeek Harness

Foreword

DSH’s plugin mechanism allows tool capabilities to be attached to specific profiles. When working on multi-agent tasks, developers typically need to decompose requirements across multiple executors and have them exchange intermediate results. Existing approaches often rely on prompt conventions, file mailboxes, or external polling.

dsh-orchestrator provides an orchestration capability within DeepSeek Harness: a main agent handles task decomposition and dispatch, multiple workers handle actual execution, and any agent can natively send messages to any other. Messages go directly through the harness’s built-in agent inbox. The plugin is maintained by zibo2025 and is licensed under MIT.

Below, we cover its capabilities, installation methods, and available boundaries.

What This Is

dsh-orchestrator is an orchestration pattern plugin used to establish a “main agent + worker grid” workflow within a DSH session.

Its core value is:

  • A main agent handles task decomposition and dispatch.
  • Multiple workers handle actual execution.
  • Any agent can natively send messages to any other, including main-to-worker, worker-to-main, and worker-to-worker.
  • Supports specifying a model and thinking effort individually for each worker.
  • Messages go directly through the harness’s built-in agent inbox.

The verified package version is 0.1.3, and the tag in the GitHub source installation command is v0.1.3.

Tool Interface

dsh-orchestrator provides four grid tools.

agent_spawn

agent_spawn is used to spawn a persistent background worker capable of continuous conversation, with individual specifications for:

  • provider
  • model
  • maxTokens
  • effort

agent_send

agent_send is used to send messages to any online agent in the grid.

Note: agent_send does not return the other party’s reply. It only sends the message; the target agent will handle it in its subsequent turn.

agent_broadcast

agent_broadcast is used to send a single message to all online agents in the grid.

agent_list

agent_list is used to view the grid roster, including:

  • Labels
  • Parents
  • Main agent flags

effort supports three values:

  • off
  • high
  • max

Installation and Enablement

In the installation commands, <name> is the profile name.

The npm installation command is:

dsh plugin --profile <name> add dsh-orchestrator

If the domestic mirror hasn’t synced, retry with the official source:

dsh plugin --profile <name> add dsh-orchestrator --registry=https://registry.npmjs.org

The GitHub source installation command is:

dsh plugin --profile <name> add github:zibo2025/dsh-orchestrator#v0.1.3

If you choose the GitHub source method, a one-time allowBuilds authorization with pnpm ≥ 10 is required. If the first add fails, add the printed package key to the allowBuilds section of the profile’s pnpm-workspace.yaml, then rerun the installation command. The configuration looks like this:

allowBuilds:
  - <package key printed by the first add>

After installation, you need to restart dsh for it to take effect. Running processes will not hot-load newly installed packages.

Before installing, it is recommended to review the source code and license. The plugin runs with the current dsh process privileges and is licensed under MIT.

Scope of Effect

There are two options for the scope of dsh-orchestrator.

Combined Package

When opting for the combined package, all sessions under that profile gain the grid tools.

Preset Only

When opting for the preset-only approach, add the following to the preset’s agent.cordis.yml:

- id: orchestrator
  name: dsh-orchestrator

Then execute:

pnpm add dsh-orchestrator

After completing these steps, select that preset in a new session to use it.

Typical Usage

Open a session and directly state your requirements. For example, ask the main agent to create two workers: one with high thinking effort for research, and one with a low-cost model for review, then have them exchange messages and summarize conclusions.

A usable prompt is as follows:

Use agent_spawn to create two workers:
- One with label researcher, effort set to high, research "Topic A" and write conclusions;
- One with label checker, using a cheap model, independently review the researcher's conclusions;
Have them exchange opinions via agent_send, then summarize the conclusions for me.

The key points here are: agent_spawn creates workers capable of ongoing conversation, agent_send passes messages within the grid, and finally the main agent summarizes the results.

Suitable Scenarios and Notes

This is suitable for scenarios within a DSH session that require multi-worker collaboration and per-worker specification of provider, model, maxTokens, and effort.

The following boundaries should be noted:

  1. Turn-based: Messages become the target agent’s next turn and cannot interrupt an ongoing invocation.
  2. Online targets only: Workers leave the registry once they complete, so agent_send returning not online is normal; respawn as needed.
  3. The grid equals the current spawn tree: agents from other sessions are not visible to this grid.
  4. When tools don’t appear: With the combined package approach, restart dsh; with the preset-only approach, select that preset in a new session.

Conclusion

dsh-orchestrator provides a more direct multi-agent orchestration path for DSH: the main agent decomposes tasks, workers execute them, and agents within the grid communicate through the harness’s built-in inbox. It is suitable for session-based orchestration where roles need to be assigned by model and thinking effort.

GitHub: https://github.com/zibo2025/dsh-orchestrator

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye