DeepSeek 开源 · 研究原型 · 中文站

Super-agent 设计探索
迈向更自主的 Agent 系统

当一个由 LLM 驱动的系统能够自我拆解任务、调度多个 agent 并自主完成工作,它应当如何设计?本文探讨 super-agent 的设计原则、核心概念与基础设施,其部分设计已在开源原型 dsh-superagent-prototype 中实现。

原文:DeepSeek 产品部 原型:DeepSeek Harness 插件 MIT License TypeScript / Node.js
Article

Super-agent 设计探索:迈向更自主的 Agent 系统

DeepSeek 产品部 · 原文发布于微信公众号

编者按 — 本文是一篇面向工程实践的架构思路探讨,并非对 DeepSeek Harness 现有产品功能的介绍。本站收录全文并重新排版; 文中部分设计已在开源原型 dsh-superagent-prototype 中实现, 内容以微信公众号原文与 GitHub 仓库为准。

01Super-agent

回顾过去两年基于 LLM 的应用形态的演变,chatbot 是其中的主流。它在封闭场景中解决问题,并在部分行业中实现了生产级别的落地。

当然,agent 的概念在早期产品中已初见雏形,例如内置在网络检索场景中的 tool use。随着模型能力的增强,以 Coding Agent 为代表的 agent 产品逐步成型:它们依托外部环境、执行多步任务、自行修正错误,已能稳定交付复杂产出,成为任务执行的可靠主体。此后,多 agent 系统开始受到关注,通过 agent 间的协作处理更复杂的任务。

我们相信,基于 agent 的软件形态会越来越多,并逐渐成为主流。在此背景下,我们尝试探讨 super-agent 这一概念,即未来软件系统的一种可能形态。

一个 super-agent,是一个由 LLM 驱动、能够自我拆解任务并自主完成工作的系统。它负责任务的分发与进度管理,处于系统调度的核心,并通过与多个 agent 的协作来完成复杂的项目。

对于 super-agent 的最终形态,我们没有答案;目前我们正在一些小的场景中逐步迭代,打磨设计。

02常见问题

在讨论如何设计一个 super-agent 之前,先讨论我们在实践 super-agent 时遇到的常见问题。这些问题并非在所有场景中都会出现,但一旦出现,其代价往往远超收益。

注意力浪费

attention 是这个系统中最昂贵、最不可再生的资源。组成系统的每个部分只应在必要时占用 attention。

最常见的失败模式是:用户被无关的失败消息和修复消息不断打扰。这些消息本身对系统而言可能是必要信息,但对用户而言是噪音。用户从噪音中筛选出真正需要关注的信息需要成本;当失败与修复消息的量级超过用户承受能力时,用户将对系统的所有消息免疫——包括那些真正重要的。

从用户的角度看,整个系统应当是一个漏斗模型:尽可能多的信息经过尽可能多层的收敛,最终到达用户时已经是高度浓缩、必须由人来处理的信号。用户的注意力应当只被用在漏斗的末端。

如果系统不可避免地需要用户的注意力,我们称之为注意力义务。注意力义务应当被追踪、被记录,并作为系统设计的第一约束。

过度任务拆分

在围绕 agent 搭建的工作流中,一个非常大的 PR 往往难以被一次性处理。团队会倾向于将一个巨大的 PR 拆分成更小的任务,然后分配给多个 agent 并行推进;这本质上是团队先人肉拆解了一个巨大的任务。但拆分会产生一系列的连锁影响:

  • 多个 agent 并行处理任务时,每一个都竭尽全力抢占一个 work item,它不断在自己的 session 中疯狂输出,刷新自己对问题的定义。
  • 随着截止日期的逼近,agent 开始疯狂开启新的 session 处理新的 work item,并丢失早期 session 中的上下文。
  • 修复 A 时破坏了 B;对修复 A 的修复又破坏了 C。

最终,在最关键的收尾阶段,团队却需要重新人工理解任务的前因后果。

模型对齐不等于操作者意图

模型的出厂对齐针对公司层面的整体意图(例如一个 OKR);而对齐到操作者的具体动机在技术上仍具挑战:操作者的意图难以观测,与其有关的判断却往往依赖一些廉价的信号,例如一个任务的截止日期、一段工作记录、一次审批记录的时长。这类信号既廉价又不可靠,但它们往往会被系统放大。

work item 难以评估

一个任务的完成方式是组合爆炸的:如何拆分、如何排序优先级、如何决定 agent 数量与 work item 数量的比例、如何组织 context。这些决策不仅难以定义,其评估更是难上加难。

03设计原则

基于以上问题,我们总结出六条设计原则。它们相互支撑,共同指向一个目标:让系统在最小心智负担下交付最大价值。

P1注意力义务最小化

系统的存在价值由其节省的注意力是否大于其消耗的注意力来衡量。一切设计都应围绕减少人的注意力义务展开。

P2默认无状态

系统的默认形态应当是无状态的。有状态意味着恢复成本、不一致风险与更高的注意力义务。

P3单一事实来源

默认情况下,状态的权威存储应当只有一个,例如 git branch。任何镜像或缓存都应能从权威存储完整重建。

P4复用一切

在新任务开始时,系统首先穷尽一切手段复用现有资源;session 与 workspace 都应被视为可复用的工具,而非一次性消耗品。

P5所有变更皆有踪迹

重构不改变行为,但留下踪迹。任何变更都应可追溯、可审计、可回滚。

P6先立边界后放权力

先确立权限边界与审计机制,再逐步放开模型的权力。能力(capability)的增长不应先于约束。

04核心概念

在这些原则之下,系统由一组精简的核心概念构成。每个概念都有明确的职责边界,它们组合起来即可描述 super-agent 的完整运作。

概念说明
work item信息的基本单位,是系统与外部交互的核心;一个 work item 应当是一个符合 SMART 原则的、可交付的目标。
attention一种约束,也是信号。谁的注意力、被什么占用、占用多久,都应被系统显式建模。
source任务请求的来源,例如 GitHub、飞书。source 决定事件如何进入系统。
backlog任务队列,是核心的共享数据结构;所有待处理的 work item 都在 backlog 中排队。
goal描述任务的终态:完成时世界应该是什么样子,而不是逐步的操作指令。
priority为 work item 设置预算(budget)与截止时间(deadline),约束系统愿意为其投入多少资源。
plan描述「下一步做什么」的短期、可修正的计划,随执行不断被重写。
capability权限契约:一个 agent 被允许做什么、以谁的身份、在哪些边界内。
session任务的执行体,拥有独立的上下文与工作目录;仅操作者可重启。
sharingtask 与 work item 可以与团队共享;共享使协作成为可能,也使注意力义务可分摊。

05基础设施

概念之下的底座是一组工程化的基础设施约定,用于消除 agent 工作流中最脆弱的环节。

设施约定
agent workspace每个 agent 拥有独立的、单仓库单目录的工作空间,彼此隔离、可随时回收重建。
commit 幂等对系统状态的修改应当幂等:重复执行同一操作不产生额外影响,这是自动化可靠性的前提。
有限信任的执行agent 在受控的权限与资源边界内执行;信任是按 capability 授予的,而非默认全给。
所有操作返回 JSON操作结果必须是机器可读的结构化输出,供上层 agent 消费与决策。
环境内检测对环境状态的判断(如构建是否通过)应尽量在环境内部完成,而非依赖外部推断。
跨边界的数据流动跨系统边界传递信息时,机器可读的工件(artifact)先行,人类可读的摘要随后。
session 生命周期session 的创建、复用、回收有明确的生命周期管理,避免上下文无限膨胀。

06组合起来

principles、concepts 与 infra 的组合,构成了系统完成任务时心智负担最小的路径:

  • 外部请求经 source 进入系统,成为一个 work item,进入 backlog;
  • super-agent 依据 goal、priority 与 plan 决定处理顺序与方式,在 capability 允许的边界内派发给 session 执行;
  • 执行过程中的所有变更落在单一事实来源上,且皆有踪迹;
  • 只有当必须由人来决策或确认时,系统才经由漏斗末端占用人的 attention。

在这些设计之下,操作者的角色从「提示者」逐渐转变为「审计者」:不再逐步指示 agent 做什么,而是审视系统产出的计划与结果,并在边界处把关。

07总结

本文探讨了 super-agent 的设计。随着模型能力的增强,agent 会在越来越多的软件系统中承担更自主的角色,操作者也将从提示者转变为审计者。

本文的部分设计已在 dsh-superagent-prototype 中实现。该插件只是一种为了验证技术路线而提供的原型,并非 DeepSeek 的正式产品。
Prototype

关于原型:dsh-superagent

deepseek-ai/dsh-superagent-prototype · 研究原型,MIT 协议

面向单仓库的主动式编码 agent

dsh-superagent 是一个面向单个 GitHub 仓库的主动式编码 agent(proactive coding agent),以 DeepSeek Harness bundle 的形式打包运行。

监听 GitHub 与飞书

监听 GitHub(可选飞书)事件。当被授权的用户向 agent 请求工作时,它开启一个 work item,在自己的 agent session 与目录中独立工作,并回到原对话中回复——例如提交一个 Pull Request。

Web 面板

内置 web 面板,集中展示需要人工处理的事项——这是「注意力漏斗」的可视化末端。

一种与 agent 协作的方式

Take as little human attention as possible, and give as much value as possible.
尽可能少地占用人的注意力,尽可能多地交付价值。它只在被请求或团队规则允许时行动;只在必须有人处理或有人能用上结果时开口。

工作方式
  1. 事件进入 — 用户在 GitHub issue / 评论 / 飞书中 @agent 发起请求(仅被授权用户生效)
  2. 建立 work item — agent 将请求整理为一个有明确终态(goal)的工作项,进入 backlog
  3. 独立执行 — 在专属 session 与目录中读取仓库、制定 plan、修改代码、运行检查
  4. 回到对话 — 以 Pull Request 或消息回复的形式,在原始对话中交付结果
  5. 面板兜底 — 需要人工决策的事项出现在 web 面板,等待处理
研究原型声明 — dsh-superagent-prototype 是为验证技术路线而发布的参考原型,并非 DeepSeek 正式产品。 代码源自团队日常开发、大量工程由 coding agent 完成,可能包含 bug 与不一致的工程实践;采用 MIT 协议开源,使用前请自行审查与适配。 运行需要 DeepSeek Harness 宿主环境与 GitHub 集成。

安装步骤较多,官方推荐把安装也交给编码 agent——在你的编码工具中打开仓库后对 agent 说:

# 官方推荐的安装引导方式
> Read SETUP.md in this repository and
  set up dsh-superagent with me.

# agent 会逐个提问、展示完整计划,然后自动完成安装配置
# 开发验证:pnpm check(类型检查 + 测试 + 构建)
Docs

文档导航

按编号顺序阅读,每篇只依赖此前的内容 · 中文为本站译注,原文以 GitHub 为准