edges array is a WorkflowEdge. It represents a connection between an output port on one node and an input port on another.
Schema
Handle IDs
Port handles follow a deterministic naming pattern:content_loader.1-output-items— the “items” output port on nodecontent_loader.1analyzer.1-input-content— the “content” input port on nodeanalyzer.1router.1-output-high— the “high” branch output on a gateway node
Edge Categories
TheedgeType field controls the visual style of the edge on the canvas:
The editor sets
edgeType automatically based on the source port’s data type. You generally don’t need to set it manually in JSON.
Examples
Data Edge
A simple data connection between two ports:Trigger Edge
A control-flow connection that triggers execution:Tool Edge
A dashed connection linking an agent to a tool:Gateway Branch Edge
A conditional edge from a gateway branch:Connection Validation
The editor validates connections automatically before creating edges:- Type compatibility — only compatible port data types can connect
- Cycle detection — prevents circular dependencies (O(V+E) algorithm)
- Loopback prevention — nodes cannot connect to themselves
Next Steps
- Node Structure — the nodes that edges connect
- Port System & Data Types — port definitions and compatibility rules
- Workflow Structure — the top-level document containing edges