Preface

DeepSeek Harness (DSH) adopts a plugin-based architecture. When coordinating multiple agents in a single session to complete a task, directly managing multiple subagents can make it difficult to track state and communication. The polohot/dsh-adrian-agents-group-work plugin provides a solution by converting a session into a room containing a chair and member agents.

Core Concepts

This plugin converts a session into a room containing a chair and member agents. The chair is the main session agent, while member agents are continuable sub-sessions. Members can collaborate through message passing and a shared task list.

Installation and Enablement

The plugin runs standalone and does not depend on other plugins. Installation steps are as follows:

  1. Run the installation command:
dsh plugin --profile <profile> add github:polohot/dsh-adrian-agents-group-work
  1. Restart the profile configuration to load the plugin.

  2. Confirm that the plugin has been added to the bundle. Check the profile’s package.json and ensure that dsh.bundle.patch has been added to the bundles list.

Core Features

The plugin provides the following core capabilities:

  • Room mechanism: Converts a session into a room containing a chair and member agents.
  • Collaboration tools:
    • Member tools: Members share 5 room tools for sending messages, viewing the member list, and managing tasks.
    • Chair tools: The chair has all member tools, plus 4 additional control tools for opening, pausing, resuming, closing, and debugging room state.
  • Communication protocol: Supports initiation via plain text and slash commands, and supports JSON-based protocol messaging.
  • Persistent storage: All state (room configuration, task list, inbox) is persisted to disk.

Typical Usage

Starting a Room

Enter the following command in the session. The chair will open the room based on the briefing and assign members:

Spawn 3 agents to build the site. One builder, one critic.

Or use the slash command:

/agents-group-work Spawn 3 agents to discuss the pricing question until consensus.

Chair Workflow

After receiving the briefing, the chair performs the following steps:
1. Parse the briefing to identify tasks, members, and stopping conditions.
2. Call room_open to write the member roster and spawn members.
3. Monitor the room state.
4. Determine whether the stopping conditions are met.
5. Call room_close to close the room and archive it.
6. Output the status line and results.

Configuration Items

The plugin supports the following configuration items (located in the profile configuration):

Configuration Item Default Value Description
progressLines true Whether to push member progress lines to the console
progressIntervalMs 30000 Progress check interval (milliseconds)
shutdownWaitMs 20000 Timeout for room_close to wait for members to shut down (milliseconds)
verbose false Whether to print detailed inbox writes, task changes, and progress line information to the console

Use Cases and Considerations

  • Environment requirements: Requires DeepSeek Harness 0.1.2-rc.1 or higher; must use the web profile; requires host services (tools, commands, subagents, systemPrompt, agents, sessions).
  • Architecture limitations: Only a single room is supported; nesting is not supported (i.e., a member cannot simultaneously be the chair of another room).
  • Security: Member names must match the secure path pattern ([A-Za-z0-9][A-Za-z0-9_-]{0,31}); chair is a reserved name.

Conclusion

This plugin provides DeepSeek Harness with lightweight multi-agent collaboration capabilities. Through persistent task lists and message passing, it is suitable for scenarios where multiple agents need to divide work and collaborate.