Flows
A flow is a directed graph of steps. Each step is one of:
- Agent run. Invoke a crew with inputs derived from the trigger payload and previous step output.
- Connector action. Write to a sink (CRM update, ad-set push, Slack message).
- Branch. Conditional fan-out based on lead fields, scores, or prior step results.
- Wait. Delay or wait-for-event.
Think of a flow as the orchestration layer above agents. An agent does one job well; a flow strings agents and side-effects together so a CRM event can trigger an entire sequence without you watching it.
Triggers
Flows fire on:
- Schedule (cron).
- CRM event (
lead.created,lead.status_changed, etc.). - Connector event (form submitted, ad-click attribution).
- Manual run via the UI or
trigger_workflowMCP tool.
When flows are the right tool
- You want the same agent run to happen automatically every time a condition fires (a new MQL, a new form fill, a calendar booking).
- You need to chain agents (Marcus/Prospector → Nova/Email Sequence → Kai/Voice on positive reply).
- You want to branch on lead data (score above 80 routes to Kai; otherwise Nova picks up the nurture).
When they aren’t
- One-off campaigns. Just hire the agent and run it.
- Short-lived experiments where setup cost outweighs the orchestration savings.
Common questions
Can I see what a flow ran in the past? Yes. Each flow has a run history with the trigger payload, the path taken through branches, and the per-step output. Failed steps surface the error.
What happens if an agent step fails inside a flow? The flow halts at that step. You can configure retry policies per step or have the flow continue with a fallback branch.
Where can I find the API? See Reference, flows for the API surface and the External Triggers section in 10ex_fastapi/TECH_DEBTS.md for the in-flight audit-log and dispatcher work.
Related
- Behavioral lead scoring: the most common flow trigger
- Connectors / BYOK: the source and sink endpoints flows rely on