DeepSeek Harness Agent Team

August 31, 2026 · View on GitHub

English | 简体中文

npm License Release Listed on Awesome DSH Plugin

dsh-agent-team gives DeepSeek Harness a persistent agent team for long-running collaboration: agents are durable identities for their sessions, keeping memory and responsibilities across them; Workspaces organize agents and sessions per project; Channels carry responsibilities; Task Threads chain session agents into one line of progress.

An opt-in plugin for DeepSeek Harness: install it only where Team mode is needed; ordinary DSH sessions keep their normal preset roster.

Preview

Agent Team is opt-in: after installation the ordinary DSH page stays as-is, and Team mode is one additional entry in the sidebar footer.

Ordinary DSH Web UI with the Team entry highlighted in the sidebar footer

Entering Team mode shows Channels, managed Agents, and the collaboration timeline:

Team mode in the DSH Web UI: Channels and seven online Agents in the sidebar; the Main Channel shows Task references and the composer’s task switch

Task Threads

A Task Thread keeps Claims, Agent handoffs, Human acceptance, and follow-up replies in one durable context.

Completed Task Thread in the DSH Web UI: a Claim, Agent handoffs, Human acceptance activity, and the reply composer

No context babysitting

Member sessions compact automatically once token usage passes the threshold, and each member gets a pre-compaction hint to persist its key conclusions first. Every member keeps its own memory and notes across sessions, so identity and knowledge survive session renewal.

Quick start

1. Check DSH

This release is certified against DSH 0.1.1-rc.2. If dsh is not installed yet, start DSH with the official package:

npx @deepseek-ai/dsh web

Stop it, then install Agent Team into the web profile:

dsh plugin --profile web add @wowyuarm/dsh-agent-team

2. Start the Web UI

dsh web

Agent Team is opt-in. Installing it adds the bundle to the web profile; it does not modify the Harness installation or shipped defaults.

3. Verify and try it

Before starting the UI, you can inspect the composed profile:

dsh --profile web --dump-config

The output should include Team rows such as wowyuarm-agent-team-scope and wowyuarm-agent-team-client. In the browser, enter Team mode from the DSH navigation. The first useful path is:

Team mode
└── select a Workspace
    ├── Channels -> New Channel -> send the first message
    └── Agents   -> Add Agent -> choose its initial Channels

Create an Agent only in a trusted Workspace. The Team Member preset intentionally grants managed Agent Sessions danger-full-access.

Uninstall

Remove the bundle from the profile; this also removes its composed layers:

dsh plugin --profile web remove @wowyuarm/dsh-agent-team

What it adds

  • A durable single-host Team with Channels, Messages, Tasks, Threads, Claims, and Agent membership.
  • A Web Client for Human control: create Channels and Agents, manage membership, send Messages, open Threads, and handle Tasks.
  • An isolated team-member preset with five model-facing tools: team_inbox, team_thread, team_message, team_claim, and team_view.
  • A pull-based collaboration protocol. Agent Inbox admission is durable, but it does not claim that the model has already processed the update.

The Team is one collaboration domain per DSH home. Its append-only operation ledger is the authority; UI, Remote responses, tools, Inbox, and other projections derive from committed operations. Ordinary DSH Sessions keep the profile's normal preset roster and do not receive Team tools or guidance.

Install from a local checkout

For development, install the local bundle into the same profile:

dsh plugin --profile web add /absolute/path/to/dsh-agent-team
dsh web

Published packages include built artifacts. A local checkout needs the adjacent Harness repository only for development checks, not for end-user installation.

Compatibility and limits

  • This release is certified against DSH 0.1.1-rc.2.
  • The bundle is single-host. It does not provide distributed consensus, Team direct messages, nested Threads, or semantic Direction deduplication.
  • The current DSH SQLite Session schema rejects databases from older DSH versions. Delete the old Session database and start fresh when upgrading across that boundary; this bundle does not migrate it.
  • Team-managed Agent Sessions use danger-full-access. Use them only in trusted Workspaces.

Development

Read docs/README.md for the maintained documentation index. The usual checks are:

corepack pnpm install
npm run typecheck
npm test
npm run build
npm run lint
npm run test:browser
npm pack --dry-run

npm run test:browser uses the adjacent ../deepseek-harness checkout, an isolated temporary profile, and /usr/bin/google-chrome (override with CHROME_PATH). It does not need provider credentials. For manual checks, npm run preview:ui loads Team fixtures without model streaming; DEEPSEEK_API_KEY=... npm run preview starts the real provider preview. Both preview commands clean up their temporary state on Ctrl+C.

Architecture and the collaboration contract are documented in docs/architecture.md and docs/team-collaboration.md.

License

MIT