
Describe a flow as connected steps
A flow describes a sequence through triggers, steps and connections. It is a separate model from an assistant that chooses tools during a conversation.
Use the distinction to explain the intended behavior: a conversation responds to a person; a flow describes an authored path through work. The current flow model provides the structure; its step runner is not implemented. Conversational execution belongs to actor systems.
Example — Distinguish a discussion from a process
“Help me update this record” is a conversational request to an assistant. “When this event occurs, run these steps in this order” describes a flow. Similar diagrams do not make their execution contracts interchangeable.
For engineers
FlowActorSystem separates ActorSystem and FlowSystem using kind. An actor system contains actors; a flow system contains its graph. Do not parse either through the shared base shape and assume the kind-specific fields are retained.
function describeSystem(system: FlowActorSystem) {
if (system.kind === FlowActorSystem_Kind.ACTOR) {
return {
ref: system.ref,
actorCount: system.actors.length,
};
}
return { ref: system.ref, kind: system.kind };
}
This is a type-narrowing example, not a flow runner. The shared union is currently type-only because the flow trigger and step unions do not have a complete runtime validation schema.
Keep modeling and execution distinct
| Contract | Current meaning |
|---|---|
| Actor system with agentic actor | The conversational runtime can resolve and invoke its agent. |
| Flow system | A declaration of an authored step graph. |
| Kind-agnostic frontend projection | A way to represent nodes and edges, not evidence those steps ran. |
| Flow execution request | Refused before advancing execution status; no step execution is provided by this path. |
The flow service reports a configuration error rather than marking unexecuted work complete. Do not wire a production process to this entry point on the strength of the graph types alone. For an in-app assistant, declare an actor system and use the conversational path described alongside this capability.