Concept
An Agent Business Language (ABL) agent can run without aFLOW: block or with one.
A reasoning agent has an AGENT, a GOAL, optional persona or limitations, optional tools, optional gathered fields, and completion rules. Without a FLOW: block, the reasoning layer chooses the next best action within the defined boundaries.
A flow-based agent adds a FLOW: block and named steps. The flow controls the conversation path. Each step declares whether it is deterministic with REASONING: false or allows a bounded reasoning area with REASONING: true.
Use a reasoning agent when the work can be expressed as a business goal and the conversation can adapt. Use a flow when the order of operations, checkpoints, or troubleshooting path must be explicit. Use a workflow tool, not a flow, for long waits, polling, scheduled work, or multi-hour orchestration.
Decision guide
Minimal working example: reasoning agent
This example is a single agent file. It leaves the conversation flexible but gives the agent a required topic and a safe completion condition.WHEN: true as a normal completion rule because it can make the example appear complete even when the customer outcome is not reached.
Working example: deterministic FLOW for required intake
This example is a single agent file. It collects warranty information in a fixed order, then completes only after the required fields are present.Verification
- Validate the agent file.
- Run a sample utterance for the reasoning-agent example: “Can you explain the parental leave policy?”
- Run the warranty flow with a serial number and issue description. Confirm the prompts happen in order and completion waits until both fields are present.
- Run the bounded-reasoning flow with a broad request such as “I need help with a billing issue and my account.” Confirm the reasoning step clarifies the path before collecting
account_id. - Inspect trace/debug output for the active step name, gathered fields, and final completion response.
Production readiness checklist
- Use a reasoning agent only when
GOAL,LIMITATIONS, tools, and completion rules are enough to bound behavior. - Use flow steps for required collection, compliance prompts, or processes support teams must inspect.
- Keep
REASONING: truesteps bounded with a clearGOAL, exit condition, and max-turn limit. - Ensure every required gathered field feeds into completion, memory, a tool call, handoff, delegate, or another known consumer.
- Move long waits, polling, scheduled callbacks, and multi-hour orchestration into a workflow tool.