# Prolifera Engineering（增殖式工程）

> The One 如何在工作中长出多 Agent 团队：谁能创建和克隆 Agent，宿主自己做什么，你又如何设边界或全部停下。

**Prolifera Engineering（增殖式工程）** 是对 The One 在工作中“长出”多 Agent 系统这一方式的命名。不是运行一支预先连好的固定团队，而是由 Agent 按需开工作组、克隆和创建成员、把整套模板拉起为子 Graph；做完的部分就睡下。

这个名字借自生物学的*细胞增殖*，作为描述这些机制的朴素词汇。它描述的是工作的形态，并非声称 Agent 像活细胞那样行事。

增殖不是无中生有：开出来的每一个工作组、创建的每一个 Agent，表达的都是定义空间里已经写好的定义——那份可复用、可编辑的基因。基因如何被写下、编辑与传承，见 [A-Genetic Engineering（Agent 基因工程）](../a-genetic-engineering)：那一页描述基因，本页描述表达。

## 四阶段类比 [#四阶段类比]

每一项都对应本节其他页面里记录的机制：

* **复制（Replication）**——`clone_agent_node` 把一个正在运行的 Agent（配置、上下文和工具）复制成一个新身份；`clone_graph` 把整张图连同所有子 Graph 一起复制。复制出的 Agent 生来没有连边、未激活，复制出的图也先处于休眠。见 [Dynamic Graph](../more-possibilities/dynamic-graph)。
* **分裂（Division）**——一个 Agent 变成多个，并行处理有界的几部分：克隆出来的 worker，或者一个 TaskBoard——任务分层进行，每个任务配一个 worker 和一个 reviewer。上下文过载的 Agent **不会**分裂，它会就地压缩自己的历史，那是另一套机制：[Meditation](../more-possibilities/meditation)。
* **分化（Differentiation）**——新 Agent 之所以是专才，是因为创建时由它的角色定下了指令、提示词、技能、工具、插件和模型。工作中它还能通过 Capability Manager 给自己加工具。
* **凋亡（Apoptosis）**——做完自己那部分，Agent 交回结果并睡下。它没有被释放：上下文仍然可以查看，新的输入还能把它叫醒。父级可以用 `delete_agent` 或 `delete_subgraph` 把它彻底删掉。

## 权柄在谁手里 [#权柄在谁手里]

0.5.0 起，长出系统的权柄分成了两半。

**主助手握着你的事。** 每个空间一个，你交代的事都到它这里。它开**事项**，把每个事项的活交给一个**工作组**——模板的一次新运行，立刻开工。工作组不是主助手自己的子 Graph，所以工作组的提问和结果不会占住它的回合。它转达你后续的话，回答工作组的提问或留给你，能暂停、恢复、重试工作组，能结束事项，而设事项的边界、恢复停在边界上的活，只按你的话做。它对你的事有全部权限，没有哪一步要等批准；取消、打断和急停只有你能做。

**团队负责人握着组内的增殖。** 内置团队的负责人（软件团队的 lead、调研的 orchestrator、各个工作室的 showrunner 和 producer）带着 TaskBoard 和 Graph 工具，有的还能拉起子 Graph。工作组可以把一部分活开成有自己看板的子事项。

![事项的剧场：各个工作组的 Agent，一个 Agent 一条泳道](https://the-zeroth.com/docs-assets/images/0.5/zh/working-groups-theater.png)

**大多数成员不带这些工具**，所以只做完自己那部分，不再增殖。这是按角色的配置，不是硬规则：任何角色都可以在编辑页里加上这些工具；通用的 `chat` 工作组的助手就全都有。

## 宿主自己做什么 [#宿主自己做什么]

上面这些，都是某个 Agent 决定调用工具才发生的。宿主——The One 的运行时，而不是哪个 Agent——自己只做这些事：

* 让每个 Agent 一直活着：睡着的 Agent 有新输入就醒；出错的 Agent 按越来越长的间隔重试，间隔最长 10 分钟，只有服务商要它多等时才更久，从不放弃。
* Agent 的上下文用到模型工作窗口的 85% 时，替它压缩历史（[Meditation](../more-possibilities/meditation)）。
* 为每个空间建好主助手；那次运行结束了，就再建一个。
* 运行触发器：定时、Webhook 和盯着看的来源到点或有了新情况，就把活交给主助手、开一次新运行，或交给事项的工作组。见[触发器和后台常驻](../../the-one-app/triggers)。
* 每天夜里 03:30 检查有没有新的摩擦，只有出现新摩擦或有以前的改动要复查时，才开始夜间复盘。
* 工作组提问、交付或停住时叫醒主助手：停住指歇了两分钟既没交回也没提问，或者十分钟里只在重试错误。
* Agent 的这段工作花得多、同一个失败反复出现或一直没有产出时，在它的历史末尾加一条提示，怎么办由它自己决定。
* 用量到了你设的边界、或你结束了事项时，暂停相应的工作。暂停是协作式的：每个 Agent 先做完手上这一步。

它不会放弃一个出错的 Agent，也从不拦下、询问或拒绝任何一次工具调用。

## 边界与急停 [#边界与急停]

增殖仍是 Agent 自己的决定，也没有什么会自动给它封顶：默认不限一个 Agent 跑多少轮，也不限花费。一个持有开创工具、又不断决定去增殖的 Agent 是可能失控的。你手上有这些：

* **事项的边界**：在事项页按**设边界**，限定它的工作组（连同子事项）在你没介入时最多花多少 token，最少 1 万。到了边界，工作停在下一个检查点（正在做的那一步先做完），等你按**恢复**；恢复以后重新算起。用到 80% 时，干活的 Agent 会先收到提示。
* **运行的用量边界**：在**所有运行**（设置 › 开发者里的**打开所有运行**）里，可以给某个 Graph 的每次运行、或者所有 Graph 设用量边界。
* 应用菜单或托盘菜单里的**急停所有 Agent**：立刻中断所有 Agent，结束它们启动的命令，并暂停所有运行和触发器，直到你恢复。

一切都看得见（事项的**剧场**、所有运行），都记在**行动记录**里，Agent 改动过的文件可以放回。设计的取向是可审计、可回退，而不是“保证安全”。见[行动记录、撤回和急停](../../the-one-app/action-log)。

## 关于名字 [#关于名字]

**The Zeroth（第零）** 取自阿西莫夫小说中的**第零法则**——那条凌驾于机器人三大法则之上、允许机器人依自己的判断为人类的整体福祉行事、而非事事等候指令的法则。名字点出的意图是：一个**自主地**为你把有用的事做掉、而不事事征求许可的助理。

**The One** 有三重读法，产品三重都占：**一生万物**——一枚开创性的 Agent 生出一整套系统，这正是 Prolifera 本身；**统御万物**——它正是统筹自己所长出之系统的那个 Agent；以及**唯一**——你对话的 Agent 只有一个，0.5.0 起就是每个空间里那一个主助手。*Prolifera* 一词源自拉丁语 *proles*（后代）+ *ferre*（孕育）。

Source: https://the-zeroth.com/zh/docs/multi-agent-architecture/prolifera-engineering
