import { SequentialWorkflow } from "@arcgis/ai-components/agent-utils/workflows/SequentialWorkflow.js";- Inheritance
- SequentialWorkflow→
BaseWorkflow<TState>→ Accessor.js
- Since
- ArcGIS Maps SDK for JavaScript 5.1
SequentialWorkflow executes agents in strict linear order.
Use in the following scenarios:
- Later steps depend on values produced by earlier steps,
- You want a simple linear pipeline.
How it works:
- First agent runs and passes shared state forward,
- Each subsequent agent receives the updated shared state from the previous agent,
- Run agent 2, then agent 3, and so on,
- Stop after the final agent in the sequence runs.
Constructors
Properties
| Property | Type | Class |
|---|---|---|
| |
Methods
| Method | Signature | Class |
|---|---|---|
| protected | buildEdges(agents: BaseAgentLike<TState>[]): GraphEdge<AgentGraphState<TState>>[] | |
| inherited protected | buildNodes(agents: BaseAgentLike<TState>[]): GraphNodes<AgentGraphState<TState>> | |
| inherited | generate(): WorkflowGenerateResult<TState> | |
| getAgents(): BaseAgentLike<TState>[] | | |
| protected | getEntryNode(agents: BaseAgentLike<TState>[]): string | undefined | |
| protected | isTerminalAgent(agents: BaseAgentLike<TState>[], index: number): boolean | |
| protected | validateAgents(agents: BaseAgentLike<TState>[]): void | |
buildEdges
- Signature
-
buildEdges (agents: BaseAgentLike<TState>[]): GraphEdge<AgentGraphState<TState>>[]
Builds the workflow-specific edges.
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| agents | | |
- Returns
- GraphEdge<AgentGraphState
>[]
buildNodes
- Signature
-
buildNodes (agents: BaseAgentLike<TState>[]): GraphNodes<AgentGraphState<TState>>
Builds the workflow's graph nodes.
Node ids use the agent id plus its position (agent.id_index) instead of only the raw
agent id. That prevents collisions when the same agent instance is used multiple times.
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| agents | | |
- Returns
- GraphNodes<AgentGraphState
>
generate
- Signature
-
generate (): WorkflowGenerateResult<TState>
Generates the workflow's graph and shared workspace based on the defined agents and their schemas. This method is called by the WorkflowAgent when it generates its graph, and it orchestrates the creation of the workflow's structure, including validating the agents, deriving shared state from their schemas, and building the nodes and edges of the graph.
- Returns
- WorkflowGenerateResult
getAgents
- Signature
-
getAgents (): BaseAgentLike<TState>[]
A list of agents that are part of this workflow.
- Returns
- BaseAgentLike
[]
isTerminalAgent
- Signature
-
isTerminalAgent (agents: BaseAgentLike<TState>[], index: number): boolean
Returns whether the agent at this position should expose terminal runtime fields.
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| agents | | | |
| index | | |
- Returns
- boolean
validateAgents
- Signature
-
validateAgents (agents: BaseAgentLike<TState>[]): void
Validates the workflow configuration and throws if invalid.
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| agents | | |
- Returns
- void
Type definitions
SequentialWorkflowConstructProperties
- Type parameters
- <TState extends AgentData>
- Supertypes
- Pick<SequentialWorkflow
‚ "agents">