Overview
The single agent pattern routes all user requests directly to one agent without multi-agent coordination. This agent independently manages:- Intent understanding
- Knowledge retrieval
- Tool invocation
- Response generation
When to Use
Single agent is the right choice when:- Your app has one primary capability or domain.
- Tasks are straightforward and don’t require specialists.
- Tasks involve closely related actions within one scope.
- Low latency is critical.
- You want minimal complexity.
Good Fit Examples
| Use Case | Why Single Agent Works |
|---|---|
| Leave management | All requests (check balance, apply, cancel) fall within one domain |
| FAQ bot | Questions map to a single knowledge base |
| Order lookup | All actions relate to order data |
| Appointment scheduling | Booking, rescheduling, cancellation are related tasks |
Architecture
Execution Flow
- User submits request to the application.
- Request routes directly to the single agent (no orchestrator selection).
- Agent processes the request:
- Parses user intent
- Determines required actions
- Retrieves relevant knowledge
- Selects and invokes tools
- Generates contextual response
- Response returns to user.
Example Conversation
Configuration
Benefits
| Benefit | Description |
|---|---|
| Simplicity | No orchestration complexity. One agent, direct execution. |
| Low Latency | No agent selection overhead. Requests process immediately. |
| Easy Maintenance | Single point of configuration and debugging. |
| Predictable Behavior | Clear scope boundaries make testing straightforward. |
Limitations
| Limitation | Mitigation |
|---|---|
| Single Point of Failure | Add fallback handling or upgrade to a multi-agent pattern |
| Scope Creep | Define clear boundaries; upgrade pattern when scope expands |
| No Specialization | Use multi-agent pattern for complex, multi-domain tasks |
When to Upgrade
Consider moving to multi-agent patterns when:- Requests frequently fall outside the agent’s scope.
- Response quality suffers from broad responsibilities.
- You need parallel execution for complex tasks.
- Different tasks require different model capabilities.
- You want specialized agents for specific domains.