A reusable blueprint for a multi-step automated or semi-automated workflow involving agents, tools, and review gates.
A workflow template is the reusable definition of an automated multi-step process: its steps, the triggers that start it, the order they run in, and the gates that can pause it. It is the recipe, written once, that a system follows every time the conditions are met. The interesting tension is that a template has to be specific enough to execute without a human in the loop, yet general enough that it stays correct across the many situations it will run in.
The idea descends from business process modelling. Business Process Model and Notation, first released by the Business Process Management InitiativeInitiativeStrategyA large coordinated effort to achieve a strategic goalView reference → in 2004 and adopted by the Object Management Group in 2006, gave organisations a shared way to draw a process once and run it many times. BPMN 2.0 (January 2011) added execution semantics, so the same diagram a business analyst drew could be handed to an engine and run.
The data-engineering world arrived at a parallel idea through code. When Maxime Beauchemin built Apache Airflow at Airbnb in 2014, the central move was to express a pipeline as a directed acyclic graph: nodes are steps, edges are dependenciesDependencyTeam & OrganisationA cross-team or system dependencyView reference →, and the graph is defined once then scheduled repeatedly. A workflow template inherits both lineages. It carries the structure of a BPMN process and the as-code, version-controlled shape of an Airflow DAG.
A team defines a template called release-changelog. Its trigger is "a releaseReleaseProduct SpecificationA shipped version of the productView reference → branch is tagged". Step one drafts release notes from merged pull requests. Step two routes the draft to a review gateReview GateWorkflows & AgentsA human review checkpoint in a workflowView reference → for a human to approve wording. Step three publishes to the docs site and posts to the announcements channel. The template names three steps, one trigger, and one gate. None of those mention a specific release.
In March the team ships v2.4; in April, v2.5. Both runs follow the identical template. The April run differs only in its inputs and its log, not in its definition. When the team later decides every release also needsNeedUserA user need, pain, desire, or constraintView reference → a social postSocial PostMarketingA social media postView reference →, they edit the template once, and the change applies to all future runs.
In the Unified Product Graph, a workflow template lives in the automation region, where it acts as the durable definition that the product's automated work refers back to. A product connects to it through Productautomated viaWorkflow Templatehierarchy; each execution is recorded by product_automated_via_workflow_templateWorkflow Templateexecuted asWorkflow Runhierarchy; any human checkpoint it contains is held by workflow_template_executed_as_workflow_runWorkflow Templategated byReview Gatehierarchy; and an autonomous actor that drives it is linked by workflow_template_gated_by_review_gateAgent DefinitionorchestratesWorkflow Templatehierarchy. Keeping the template separate from its runs means the definition can be audited, versioned, and reasoned about on its own, while the history of what actually happened accumulates against the runs.agent_definition_orchestrates_workflow_template
Type-specific fields on BaseNode
template_typestringExecution pattern for the workflow steps
step_countnumberNumber of steps in the workflow
agent_countnumberNumber of agents involved in the workflow
estimated_durationstringEstimated wall-clock duration of a full run
state_schemastringSchema describing the workflow's state object
checkpoint_enabledbooleanWhether the workflow supports checkpointing for recovery
human_in_loopbooleanWhether a human approval step is required
versionstringVersion label for this workflow template (e.g. "2.1")
idstringrequiredUnique identifier (UUID)
typeNodeTyperequiredDiscriminator for the entity type
titlestringrequiredDisplay name
descriptionstringOptional detailed description
statusstringLifecycle status
tagsstring[]Freeform tags for filtering
4 phases — initial: draft · template: PUBLISHING
5 edge types connected to this entity.
product_automated_via_workflow_templateagent_definition_orchestrates_workflow_templateworkflow_template_executed_as_workflow_runworkflow_template_gated_by_review_gateworkflow_template_defines_agent_task