零运行时依赖

taskflow

声明式智能体编排。

把多步骤编程智能体工作描述成 DAG,在花费 token 之前验证它,并且只把最终结果返回到你的上下文窗口。

review-changes.json
1{
2 "name": "review-changes",
3 "concurrency": 4,
4 "phases": [
5 {
6 "id": "discover",
7 "type": "agent",
8 "agent": "scout",
9 "output": "json",
10 "task": "List changed source files under src/. Output ONLY a JSON array of {path} objects."
11 },
12 {
13 "id": "review-each",
14 "type": "map",
15 "over": "{steps.discover.json}",
16 "as": "file",
17 "agent": "security-reviewer",
18 "dependsOn": ["discover"],
19 "task": "Review {file.path} for security risks. Return one paragraph."
20 },
21 {
22 "id": "summarize",
23 "type": "reduce",
24 "from": ["review-each"],
25 "agent": "writer",
26 "dependsOn": ["review-each"],
27 "final": true,
28 "task": "Combine these reviews into one prioritized risk summary."
29 }
30 ]
31}

一个完整的审查工作流:发现文件、并行审查、然后汇总。

从 JSON 文件到隔离子代理

描述、验证、执行、返回——全部在一个流水线中完成。

编写 DAG

单个 JSON 文件声明阶段与依赖。

先验证

在任何 token 花费前,静态检查捕获循环与预算问题。

扇出执行

map、parallel 和 tournament 阶段运行隔离子代理。

门控与归约

质量门与 reduce 阶段聚合结果。

最终输出

只有最后阶段返回到宿主上下文。

数据一览

4 个宿主

Pi、Codex、Claude Code、OpenCode

10 种阶段类型

agent、map、gate、reduce 等

0 个运行时依赖

零生产依赖

跨会话续跑

从断点继续运行

为真实智能体工作流而建

声明式 DAG

将阶段、依赖和 fan-out 定义为数据。运行时把你的图变成隔离的子代理调用。

上下文隔离

中间记录留在运行时内部。只有最终阶段的结果会进入你的对话。

跨会话续跑

暂停或失败的运行从断点继续。重新运行时自动跳过已缓存阶段。

声明式 vs 命令式

为什么把智能体工作流声明为数据,而不是写成脚本?

维度声明式命令式
花费 token 前可验证
在任何模型调用前检查 DAG 的循环、死路和预算。
bug 在运行时才暴露,此时已经花了钱。
上下文成本
只有最终结果返回上下文。
每次子代理的完整记录都会涌入宿主对话。
失败后续跑
重新运行时自动跳过已缓存阶段。
从头开始重新运行。
可复用性
保存、版本化并按名称调用。
每次运行之间复制粘贴脚本。

早期用户反馈

我们把一份 50 个文件的安全审查,从上下文窗口灾难变成了 10 分钟的 taskflow。

平台工程师,B 轮初创公司

光是跨会话续跑就帮我们省了几个小时。运行死在汇总阶段时,我们只需继续它。

资深工程师,AI 基础设施

锦标赛阶段生成的标题和发布说明草稿,始终优于我们的单轮生成。

开发者布道师,开源工具

准备好声明你的第一个 DAG 了吗?

在 Pi 或 Codex 上安装,几分钟内运行多阶段工作流。