Agent Architectures
Foundational Agent Types
AI agent architectures can be categorized based on their decision-making capabilities [5]:
| Agent Type | Description | Environment |
|---|---|---|
| Simple Reflex | Acts based on current percept using condition-action rules | Fully observable |
| Model-Based Reflex | Maintains internal state to track aspects not evident in current percept | Partially observable |
| Goal-Based | Uses goal information to choose among possibilities | Complex decision-making |
| Utility-Based | Uses utility function to map states to satisfaction levels | Conflicting goals |
| Learning | Learns from experiences to improve performance over time | Unknown environments |
The ReAct Pattern
The ReAct (Reasoning and Acting) framework combines chain-of-thought reasoning with external tool use [6]. This iterative process enables agents to:
- Think: Reason about the current task
- Act: Decide on and execute an action (e.g., query a search engine)
- Observe: Process the outcome to inform the next step
Multi-Agent Architectures
Multi-agent systems (MAS) consist of multiple interacting agents that can be cooperative, competitive, or hybrid [7].
Common Orchestration Patterns
[8]:
| Pattern | Description |
|---|---|
| Sequential | Agents executed in linear sequence |
| Parallel | Agents executed concurrently |
| Loop | Agent output fed back for iterative refinement |
| Review and Critique | One agent reviews another's work |
| Coordinator | Central agent orchestrates others |
| Hierarchical Task Decomposition | High-level agent breaks down tasks for lower-level agents |
| Swarm | Large number of agents work in parallel with minimal coordination |
Deep Agents and Sub-Agents
Deep Agents (deepagents) is an open-source library from LangChain built on LangGraph that implements advanced agent patterns using filesystem-based context engineering [9]. The official repository is langchain-ai/deepagents.
Key concepts include:
- Using the filesystem as a "scratch pad" to store and retrieve information
- Storing long-term plans and findings of sub-agents
- Enabling agents to "learn" by writing feedback and knowledge to files
Sub-agents are specialized agents that handle specific subtasks within a larger workflow, enabling:
- Division of labor and specialization
- Hierarchical task decomposition
- Improved scalability and maintainability
Deep Agents Architecture
Deep Agents is described as "an agent harness built on langchain and langgraph. Deep Agents are equipped with a planning tool, a filesystem backend, and the ability to spawn subagents - making them well-equipped to handle complex agentic tasks."
Key features from the official repository:
- Planning: Prior to task execution
- Computer access: Giving the agent access to a shell and a filesystem
- Sub-agent delegation: Isolated task execution
Available backends include:
| Backend | Description |
|---|---|
| StateBackend | Ephemeral files stored in agent state (default) |
| FilesystemBackend | Real disk operations under a root directory |
| StoreBackend | Persistent storage using LangGraph Store |
| CompositeBackend | Route different paths to different backends |