DeepSeek open-sourced a Router-and-Worker coding agent, and the docs warn you first 🤖

Most coding agents still feel like one chat window with tools bolted on. You start a task, the context fills up, and when you want two jobs at once you open a second session and hope you remember which is which. This week DeepSeek published something different: a research prototype that splits the work into one resident coordinator and many isolated workers. The repo is deepseek-ai/dsh-superagent-prototype, it's MIT-licensed, and the README is refreshingly honest about what it is and what it isn't.

What shipped

The package is a bundle for DeepSeek Harness, DeepSeek's open agent runtime. It watches one GitHub repository and, optionally, Feishu chat. When someone on an allowlist asks for work, it opens a work item, runs that job in its own agent session and directory, and answers back in the original conversation, for example with a pull request. A small web panel shows only what still needs a person.

DeepSeek calls it a research prototype for reference only, not an official product. The code grew out of the team's day-to-day work, much of it written by coding agents, and the published version is not identical to their internal one. Some ideas in the design article are future directions, not features in this release. I like that framing a lot more than a splashy "agent 2.0" launch.

The design idea I care about

In the accompanying design write-up, DeepSeek frames the system as a Super-agent with two layers. One resident session talks to people and decides who does what. Separate worker sessions get isolated context and full tools, do one job each, and report back instead of chatting with humans directly. In the published code that maps onto a main session that evaluates triggers and an executor that runs assignments.

A few choices stand out for anyone building agents:

  • Events, not endless prompts. GitHub notifications, CI results and chat messages arrive as triggers. Code filters most of them first, for example with sender allowlists, before a model judges what remains.
  • Subscriptions. Once a worker owns a thread such as a pull request, later events on that thread go straight to that worker.
  • Attention as a scarce resource. The philosophy doc puts it cleanly: take as little human attention as possible, and give as much value as possible. The agent acts only when asked, or when a written team rule allows it. Unsolicited work starts in a mode that only records what it would have done.

Why this is useful, with eyes open

For builders, the useful part is the written reasoning. It names problems many of us hit in practice: mixed context, noisy event streams, and agents that burn a whole team's attention. The docs also warn hard. By default the presets run with full operator access, so a worker can run programs and read the operator's home directory. The deployment guide says to use a dedicated OS account and the agent's own GitHub user, not a GitHub App. That honesty is a feature.

As of writing, the repo has tens of thousands of stars, which tells you the community was hungry for an open harness design, not only another model. If you build agents for real repos, read the philosophy and execution docs before you clone anything into a machine you care about.

Sources

Would you rather one resident coordinator, or keep juggling separate agent chats yourself?

Reacties

Populaire posts van deze blog

Meta just shared the full recipe for a 30B agent model you can run at home 🧠

AI that can actually "see" a crystal 🔬

A 35B model on a Mac mini, using just 2.9 GiB of memory 🚀