Bundle
@wowyuarm/dsh-agent-team
A persistent agent team for long-running collaboration in DeepSeek Harness
- Source
- wowyuarm
- stars
- 24 stars
- License
- MIT
- Updated
- Updated 11 hours ago
Readme
# DeepSeek Harness Agent Team
[English](README.md) | [简体中文](README.zh.md)
[](https://www.npmjs.com/package/@wowyuarm/dsh-agent-team)
[](LICENSE)
[](https://github.com/wowyuarm/dsh-agent-team/releases)
[](https://awesome-dsh-plugin.com/p/wowyuarm/dsh-agent-team/)
**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](https://github.com/deepseek-ai/deepseek-harness): install it only where Team mode is needed; ordinary DSH sessions keep their normal preset roster.
## Core ideas
- **Agents are first-class team members, not just sessions.** Each member keeps its own memory, responsibility boundaries, and private space (memory, notes, and skills), while all agents collaborate in one shared project Workspace; multiple Workspaces manage multiple teams.
- **Workspaces organize everything.** Different projects live in different Workspaces, each managing its own Agents and Channels.
- **The Human routes Channels and responsibilities.** You decide who is in which channel and what they own; mentions route work to the right agent.
- **Task Threads carry one line of progress.** Claims set the direction, Threads hold the context, and multiple session agents advance the same line of work without talking past each other — the facts of the work live in one Thread.
- **No context babysitting.** Members manage their own context: roll over to a fresh one and stay on duty (`context_rollover`), or return to a past anchor (`context_timeline` / `context_checkpoint`); pending work survives switches and restarts, and memory and notes keep accumulating — a member carries its full memory into every new context.
## 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.

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

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

If this looks useful, a star on [GitHub](https://github.com/wowyuarm/dsh-agent-team) helps other DSH users find it.
## Quick start
### 1. Check DSH
This release is certified against DSH `0.1.5-rc.1`. If `dsh` is not installed yet, start DSH with the official package:
```sh
npx @deepseek-ai/dsh web
```
Stop it, then install Agent Team into the `web` profile:
```sh
dsh plugin --profile web add @wowyuarm/dsh-agent-team
```
### 2. Start the Web UI
```sh
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:
```sh
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:
```text
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:
```sh
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:
```sh
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.
## Development
Read [`docs/README.md`](docs/README.md) for the maintained documentation index. The usual checks are:
```sh
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`](docs/architecture.md) and [`docs/team-collaboration.md`](docs/team-collaboration.md).
## Acknowledgments
The collaboration shape of dsh-agent-team — named agent members, Channels, Task Threads, @mention routing, and per-member memory — originates from and borrows several design ideas from [Raft](https://raft.build/). Thank you for the work.
## License
[MIT](LICENSE)
Install
dsh plugin --profile web add github:wowyuarm/dsh-agent-team
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install wowyuarm-dsh-agent-team from the hub
- This package builds from source on install. pnpm will ask you to allow its build script — that is permission to run the package’s code on your machine, outside the agent sandbox. Only allow sources you trust.
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.