核心概念:工作流、节点、连线与上下文

适用版本:ChengOS v0.1.0+ | 最后核对:2026-08-12 | 来源:crates/cheng-core/src/domaincrates/cheng-core/src/types.rs

九个术语几乎覆盖了 ChengOS 的全部概念。建议按顺序通读一遍,因为后面的概念建立在前面的之上,而且文档和 API 使用它们时的含义与此处完全一致。

工作流(workflow)

工作流是由节点和连线构成的有向无环图。它是你保存、做版本控制、运行、发布和导出的单位。工作流存储在 PostgreSQL 中,用 WorkflowId(一个 UUID)标识。

每个工作流都带有一个状态,用来区分你还在搭建的东西和别人已经依赖的东西:

状态 含义
draft 正在搭建。新建工作流的默认状态。
active 可以被执行,也可以被其他东西引用。
archived 已停用,保留备查。

节点(node)

节点是其中一步。每个节点声明带类型的输入和输出,并以 分类/名称 形式的组件 id 标识——io/input_textai/llmutils/previewagent/react_agent。这些 id 是稳定的,在编辑器、API 和本文档中完全一致。

节点的配置表单不是手写的。后端输出带 x-* 界面扩展的 JSON Schema,编辑器据此渲染控件——参见节点配置

节点自身不持有持久状态。节点是从输入到输出的纯粹一步;所有持久状态都归属于运行它的那次执行。

连线(edge)

连线把一个节点的输出端口连到另一个节点的输入端口。连线同时做两件事:承载数据,以及定义执行顺序。编辑器会对连接做类型检查,因此不兼容的搭配在设计阶段就被拒绝,而不是等到运行中途才失败。

执行(execution)

执行是某个工作流的一次运行,拥有自己的 ExecutionId 和持久记录。执行共有八种状态——比常见的三种多,因为人工评审和超时在这里是一等公民:

状态 含义
pending 已创建,尚未开始
running 进行中
paused 已暂停,可恢复
waiting_for_review 已暂停,等待人工决策——当某个工具返回 requires_review: true 时进入
completed 成功结束
failed 以错误结束
cancelled 被用户停止
timeout 超出时间预算

后四种是终态,前四种是活跃态。这个区分在轮询时很重要:/executions/active 返回活跃集合,而终态永远不会再变化。

执行内部的单个节点有各自更简单的生命周期:waiting(等待依赖)→ readyrunningcompletedfailedskipped

值(value)

在连线上流动的数据是 NodeValue——一个带标签的联合类型,包含字符串、数字、布尔、数组、对象、文件和流。正因为有 filestream 这两种情况,大体积负载和逐 token 的模型输出才能在不把全部内容缓存在内存里的前提下工作。

工作区(workspace)

工作区是租户与隔离的边界。工作流、凭证、文档、表格、知识库、渠道和文件都归属于某一个工作区。已认证的 API 请求通过 X-Workspace-Id 请求头指明工作区,而这个头会针对调用方做授权校验,不只是被读取。

每个工作区还有一个沙箱:文件和 shell 工具被限制在其中的目录树内,节点无法读取沙箱之外的内容。

凭证(credential)

凭证是凭证库中的加密密钥——API 密钥、令牌、密码或 OAuth 授权。节点通过 id 引用凭证,本身绝不包含密钥。解析发生在服务端使用的那一刻,因此密钥永远不会进入模型的提示词上下文。

智能体、工具与技能

智能体agent/react_agent)是一个自行决定步骤的节点:它推理、调用工具、观察结果,如此循环直到任务完成或达到某个限制。与普通节点不同,它的控制流并不画在画布上。

工具是智能体可以调用的能力——暴露给模型的节点、外部 MCP 服务的工具,或一个技能。工具通过智能体的 tools 端口以及 Tool Hub 抵达智能体。

技能是打包好的可复用能力,包含清单、说明和可选代码,安装到工作区后可被智能体发现。

会话与渠道

会话(conversation)是带有自身历史的持久多轮对话,独立于任何单次执行——一个会话通常横跨多次执行,每轮一次。

渠道把外部应用映射到工作流。它带有 channelId(工作区内唯一的 slug,标识消息从哪来)和 boundWorkflowId运行哪个工作流)。把这两者分开是刻意设计:消息的来源和运行什么是两个不同的决策——参见网关模型

下一步

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容