# ClawFlow：专为AI代理设计的声明式工作流格式，让智能体自己编写和运行流程

> ClawFlow是一个AI原生工作流格式，让LLM能够直接生成、读取和执行工作流。它解决了传统工作流工具要么太复杂让AI难以生成，要么太简单无法表达真实业务逻辑的矛盾。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-03-31T20:45:20.000Z
- 最近活动: 2026-03-31T20:50:09.502Z
- 热度: 150.9
- 关键词: AI工作流, ClawFlow, OpenClaw, 代理编排, 声明式工作流, Cloudflare Workflows, AI原生工具, LLM生成
- 页面链接: https://www.zingnex.cn/forum/thread/clawflow-ai
- Canonical: https://www.zingnex.cn/forum/thread/clawflow-ai
- Markdown 来源: ingested_event

---

# ClawFlow：专为AI代理设计的声明式工作流格式

## 背景：工作流工具的困境

当前的工作流工具市场存在明显的两极分化。一方面，像n8n这样的可视化画布工具需要人类手动点击配置节点，AI代理无法直接参与创建。另一方面，纯代码编排框架如Temporal或Airflow虽然功能强大，但表面复杂度太高，LLM难以可靠生成正确的工作流定义。

这种困境催生了一个核心问题：如果AI代理要真正成为自动化工作的主力，它们需要一种既简洁又强大的工作流格式——一种LLM能在单次对话中生成、人类能读懂、且能在多种运行时环境中执行的格式。

## ClawFlow的核心设计理念

ClawFlow从三个基本原则出发进行设计：

**第一，LLM必须能一次性写出有效的工作流。** 如果格式过于复杂，代理会产生幻觉；如果过于简单，又无法表达真实的工作流需求。ClawFlow通过约束节点类型（仅11种）来平衡表达能力和生成可靠性。

**第二，格式本身就是资产，而非运行时。** 工作流定义应该一次编写，随处运行——今天作为OpenClaw插件运行，明天部署到Cloudflare Workers，下个月在自托管服务器上执行。

**第三，AI节点是一等公民。** `do: ai`和`do: agent`是核心原语，支持结构化输出、模型选择和模式验证，而不是通过HTTP调用拼凑出来的功能。

## 节点类型详解

ClawFlow仅定义11种节点类型，这种约束本身就是特性：

### AI与代理节点

**`do: ai`** 执行单次LLM调用，返回结构化或自由格式输出。关键字段包括`prompt`（支持模板）、`input`（状态中的值路径）、`schema`（输出形状定义）、`model`（fast/smart/best或任意模型字符串）。schema的存在确保下游节点可以可靠地引用`classification.category`这样的字段。

**`do: agent`** 将任务委托给具有完整工具访问权限的真实OpenClaw代理。代理可以自行决定完成路径，使用浏览器、执行shell命令、访问内存或MCP工具。这与`do: ai`形成明确分工：前者用于确定性、单次、结构化输出；后者用于开放式、多步骤、需要工具使用的任务。

### 控制流节点

**`do: branch`** 基于状态值进行多路路由，每个路径是独立的节点数组，执行后自动汇聚回主流程。支持`default`路径处理未匹配值。

**`do: condition`** 布尔if/else逻辑，支持完整子流程，自动汇聚。

**`do: loop`** 遍历数组，为每个元素运行子节点序列。

**`do: parallel`** 并发执行多个节点，支持`all`（等待全部完成）或`race`（首个完成即返回）模式。

### 集成与状态节点

**`do: http`** 发起HTTP请求，支持模板化的URL、方法和请求体，内置重试机制。

**`do: memory`** 读写持久化键值，支持跨流程运行保持状态。

**`do: wait`** 两种模式：审批门（暂停等待人工审核）或外部事件（等待系统推送的特定事件）。

**`do: sleep`** 简单延迟，支持30s、5m、2h、1d等时长语法。

**`do: code`** 执行JavaScript表达式，用于数据转换和计算。

## 持久化与恢复机制

每个工作流运行获得唯一的instanceId，运行器在每个节点完成后将状态持久化到`~/.openclaw/flow-state/<instanceId>.json`。这意味着：

- 网关中途中断？已完成的节点不会重新运行，流程从最后一个检查点恢复。
- 耗时30秒的节点不会在恢复时重复执行——其记忆化输出从磁盘加载。
- 带审批门的流程可以暂停数天，状态无限期保留。

这是Cloudflare Durable Objects记忆化机制的轻量级本地实现。

## 运行时移植性

ClawFlow格式与运行时解耦，目前支持：

**OpenClaw插件**：通过`flow_run`、`flow_resume`、`flow_send_event`、`flow_status`、`flow_transpile`等工具直接运行。

**Cloudflare转译器**：将.flow定义转换为完整的WorkflowEntrypoint TypeScript类，利用Cloudflare的全球基础设施实现持久执行。

**独立运行器**（即将推出）：自托管Node.js服务器，通过REST API暴露流程端点。

## 实际应用场景

考虑这个典型场景：用户说"当有新GitHub PR打开时，让AI审查diff，检查所有测试是否通过，如果审查结果是正面的就发布批准，否则请求修改并给出具体反馈"。

代理可以调用`flow_run`并传入它刚生成的内联流程定义：AI审查diff（`do: ai`）→ 检查CI状态（`do: http`）→ 根据审查结果分支（`do: branch`）→ 发布评论（`do: http`）。

代理不需要可视化画布，不需要学习DSL，只需读取工具定义中的节点类型描述，就能在一次对话中生成有效的JSON。

## 与现有工具的比较

| 特性 | 可视化工具 | 代码优先框架 | ClawFlow |
|------|----------|------------|---------|
| AI节点一等公民 | ✗ | 部分 | ✓ |
| 代理委托 | ✗ | 部分 | ✓ |
| LLM可编写 | ✗ | ✗ | ✓ |
| 人类可读 | ✓ | ✗ | ✓ |
| 持久执行 | ✗ | ✓ | ✓ |
| 运行时可移植 | ✗ | ✗ | ✓ |
| 自托管 | ✓ | ✗ | ✓ |

## 结语

ClawFlow代表了工作流工具向AI原生范式转变的尝试。它不是让AI适应现有工具，而是从头设计一种AI能够理解和生成的格式。这种"约束即特性"的设计理念——通过限制节点类型数量来保证生成可靠性——可能是未来AI原生工具设计的重要参考范式。
