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:
- Run the installation command:
dsh plugin --profile <profile> add github:polohot/dsh-adrian-agents-group-work
-
Restart the profile configuration to load the plugin.
-
Confirm that the plugin has been added to the bundle. Check the profile’s
package.jsonand ensure thatdsh.bundle.patchhas been added to thebundleslist.
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
webprofile; 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});chairis 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.