| Style | How It Works | Best For |
|---|---|---|
Default (default) | Uses LLM prompts to decide tools and actions dynamically. | Simple, linear tasks needing flexibility. |
ReAct (react) | Iterative loop: Think → Act → Observe. Adjusts based on outcomes. | Complex, evolving tasks needing reasoning. |
ReAct Intrinsic (react_intrinsic) | Like ReAct, but uses native chain-of-thought reasoning without external tool calls for thinking. | Complex tasks with models supporting intrinsic reasoning. |
Plan-Act (planner) | Creates a structured plan first, then executes step by step. | Multi-step workflows needing transparency. |
Note:
If you use
If you use
groq/openai/gpt-oss-120b as your agent’s model, the agent ignores all styles, except for the Customer Care style. Choose a different model to use the other styles.Default style
Choose Default (default) for simple tasks. This style uses a streamlined, tool-centric reasoning mode. The LLM decides which tool to use, how to use it, and when to respond. It works best for linear logic, such as retrieving a report or checking a ticket, because the agent orchestrates tool calls dynamically.
Use this style for:
- Single-step or lightly sequential tasks
- Scenarios that need flexibility
- Tasks that involve multiple tools without strict sequencing
| Behavior | Tool Compatibility | Example use cases |
|---|---|---|
|
|
|
ReAct style
Choose ReAct (react) for complex or ambiguous problems where each outcome influences the next step. This style uses an iterative loop: Think → Act → Observe. It supports reasoning, validation, and interactive confirmation. Inspired by the ReAct methodology, it surfaces the agent’s chain of thought.
A ReAct agent breaks tasks into smaller steps, reasons through each, takes action, and adjusts based on what it learns. It might ask you for confirmation before continuing.
Use this style for:
- Exploratory or research-intensive tasks
- Scenarios requiring iterative validation
- Tasks with unclear or evolving requirements
- Situations where transparent reasoning matters
| Behavior | Tool Compatibility | Example use cases |
|---|---|---|
|
|
|
ReAct Intrinsic style
Choose ReAct Intrinsic (react_intrinsic) for complex tasks when using LLM models that support native chain-of-thought reasoning. This style is similar to ReAct but uses intrinsic reasoning capabilities built into the model itself. The agent leverages the model’s internal reasoning without additional prompting overhead.
This style is optimized for models with advanced reasoning capabilities that can perform chain-of-thought processing natively. It follows the same Think → Act → Observe pattern as ReAct, but the thinking phase happens within the model’s internal processing.
Use this style for:
- Complex reasoning tasks with compatible LLM models
- Scenarios requiring efficient reasoning without external thinking tool calls
- Tasks where the model’s native chain-of-thought capabilities are sufficient
- Situations where reduced latency in the reasoning phase is beneficial
| Behavior | Tool Compatibility | Example use cases |
|---|---|---|
|
|
|
Note:
The
react_intrinsic style requires LLM models that support native chain-of-thought reasoning. Verify your model’s compatibility before using this style.Plan-Act style
Choose Plan-Act (planner) for structured workflows. The agent creates a plan first, listing tasks and tools, then executes each step in order. It can replan if conditions change. This style works well for multi-step processes and gives you transparency.
By default, the planner style summarizes tasks planned and executed unless you define a custom output.
Use this style for:
- Multi-step workflows
- Business processes needing transparency and traceability
- Automations involving multiple domains or collaborator agents
| Behavior | Tool Compatibility | Example use cases |
|---|---|---|
|
|
|
Customize the Response Output for Plan-Act
To customize the output, define eitherstructured_output or custom_join_tool:
Note:
structured_output and custom_join_tool are mutually exclusive. Use one, not both.structured_output defines the schema for the agent’s response.
The custom_join_tool is a Python tool that formats the output. For example:
custom_join_tool.py

