deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
In-process cross-session communication and workspace shared blackboard for DeepSeek Harness (DSH)
English | 简体中文
DeepSeek Harness sessions are isolated by default, and child tasks exit upon completion.
dsh-call-session adds in-process cross-session communication, peer session creation, and shared blackboard capabilities:
# Add to target profile web
dsh plugin --profile web add dsh-call-session
# List installed plugins
dsh plugin --profile web list
# Remove plugin
dsh plugin --profile web remove dsh-call-session
Note: The
--profileoption must follow thepluginsubcommand, e.g.dsh plugin --profile web ....
Instruct the agent using plain natural language in the chat; the agent invokes the tools automatically:
User prompt:
Hand off this task summary to the "audit-session" session.
The agent calls session_call to dispatch a unicast message. If the target session is running, it steers execution; if idle, it wakes a new turn.
User prompt:
Publish the review conclusions to the board and notify relevant sessions to pick up tasks.
The agent calls board_post to store the detailed report on the blackboard and obtain a postId. Other sessions retrieve the content on demand via board_list, preventing context window explosion.
User prompt:
Create a new session and hand off tasks.
The agent calls session_create to spawn a long-running peer session in the current workspace, automatically inheriting model specifications and presets.
The DSH Web session view exposes a Canvas tab to observe multi-agent collaboration across workspaces:
| Tool | Type | Mode | Common Use Case |
|---|---|---|---|
session_call |
Tool | Push | 1:1 unicast call for task dispatch, progress reporting, and handoffs |
session_create |
Tool | Native | Create long-running peer sessions for parallel multi-role collaboration |
session_query |
Tool | Read-only | List sessions and check active/idle statuses in or across workspaces |
board_post |
Tool | Pull | Publish blackboard entries for large artifacts and shared milestones |
board_list |
Tool | Pull | Query blackboard records by ID, topic, or digest mode |
board_clear |
Tool | Manage | Dismiss or purge completed and expired blackboard entries |
| Mechanism | Type | Model | When to Use |
|---|---|---|---|
subagent |
Built-in | Hierarchical delegation, ephemeral child task, exits on completion | Scoped exploration, code search, one-off script execution. |
dsh-call-session |
Plugin | Peer-to-peer collaboration, in-process unicast messaging and shared board | Directives and status sync between independent top-level sessions, or sharing large outputs. |
Selection guidelines:
subagent directly.dsh-call-session.The plugin runs with built-in defaults out of the box.
To customize, add property overrides to ~/.dsh/profiles/web/cordis.patch.yml:
- id: dsh-call-session
config:
debounceMs: 500
maxCapacity: 500
Options:
enabled: boolean, default true. Enable or disable plugin tools.debounceMs: number, default 300. Atomic disk write debounce delay in milliseconds.maxCapacity: number, default 200. Maximum board entries.telemetryCapacity: number, default 200. Maximum call traces retained in canvas data buffer.locale: string, default 'auto'. Interaction language preference ('auto', 'zh', 'en').Technical decisions are recorded as Architecture Decision Records (ADRs):
| Environment | Supported | Verified |
|---|---|---|
| DeepSeek Harness | >=0.1.1-rc.1 |
0.1.2-rc.1, 0.1.5-rc.1, 0.1.5-rc.2 |
| Cordis | ^4.0.2 |
4.0.2+ |
| Node.js | >=20.0.0 |
20.x, 22.x |
This project is licensed under the MIT License.
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。