ROMA: Recursive Open Meta-Agents
ROMA is an open-source meta-agent framework that uses recursive hierarchical structures to build high-performance multi-agent systems by decomposing complex tasks into parallelizable components.
At a Glance
About ROMA: Recursive Open Meta-Agents
ROMA (Recursive Open Meta-Agents) is an open-source Python framework from Sentient AGI for building hierarchical multi-agent systems. It uses a recursive plan–execute loop to decompose complex tasks into parallelizable subtasks, enabling agents to tackle sophisticated reasoning challenges while maintaining transparency for context-engineering and iteration. The project is currently in beta and is available on GitHub under the Apache 2.0 license.
What It Is
ROMA is a meta-agent framework built on top of DSPy (Stanford's declarative framework for prompting and tool integration). Rather than treating a task as a single monolithic prompt, ROMA recursively breaks goals into subtasks, executes them in parallel or in dependency order, and aggregates results back into a coherent answer. The framework is designed to be open-source and extensible, inviting community-driven development for domain-specific agent customization.
How the Recursive Architecture Works
ROMA's core loop follows a five-module pipeline:
- Atomizer — Decides whether a goal is directly executable or requires further decomposition.
- Planner — Breaks non-atomic goals into an ordered graph of subtasks with explicit dependency tracking.
- Executor — Resolves individual atomic subtasks, optionally routing through tool calls (ReAct, CodeAct, etc.).
- Aggregator — Synthesizes subtask outputs into a coherent answer for the parent task.
- Verifier (optional) — Validates the synthesized output against the original goal before delivery.
Information flows top-down during decomposition and bottom-up during aggregation. Subtasks that depend on prior outputs wait for their dependencies; independent subtasks can run in parallel. This makes the system dependency-aware and capable of handling long-horizon, multi-step problems.
Toolkits and Integrations
ROMA ships with nine built-in toolkits that extend agent capabilities beyond pure language reasoning:
- Core: FileToolkit, CalculatorToolkit, E2BToolkit (sandboxed code execution)
- Crypto: CoinGeckoToolkit, BinanceToolkit, DefiLlamaToolkit, ArkhamToolkit
- Search: SerperToolkit (web search)
- Universal: MCPToolkit (connects to any MCP server)
The framework supports any LLM provider accessible via DSPy, including OpenRouter, OpenAI, Anthropic, and Fireworks AI. Different modules in the same pipeline can use different models and temperatures simultaneously.
Deployment Model
ROMA offers two installation paths:
- Minimal (
pip install roma-dspy) — No infrastructure required; installs in under 30 seconds; includes the full core framework with file-based storage. Suitable for evaluation, development, and quick prototyping. - Full Docker setup (
just setup) — Adds PostgreSQL persistence, MLflow observability, a FastAPI REST server, MinIO S3-compatible storage, E2B code execution sandboxes, and an interactive TUI visualization. Designed for production teams.
Optional extras ([persistence], [observability], [api], [e2b], [s3], [all]) allow incremental adoption of production features without the full Docker stack.
Benchmarks and Research Lineage
The ROMA team evaluated a search agent built on the framework across three benchmarks: SEAL-0 (search-augmented QA with noisy results), FRAMES (RAG factuality and reasoning), and SimpleQA (short fact-seeking questions). Benchmark result images are published in the repository.
ROMA's architecture is directly grounded in two research contributions from the WriteHERE paper (arXiv:2503.08275): heterogeneous recursive planning and type specification in decomposition. The framework generalizes these into three universal cognitive operations — THINK, WRITE, and SEARCH — and makes them accessible to builders across domains. A companion paper (arXiv:2602.01848) describes the full ROMA framework.
Update: v0.2.0-beta — ROMA v2 with DSPy
The latest release, v0.2.0-beta ("ROMA v2 with DSPy"), was published in October 2025. This version rebuilt the framework on top of DSPy, introducing the roma-dspy PyPI package, the full five-module pipeline with standardized BaseModule ergonomics, OmegaConf/Pydantic layered configuration, execution-scoped storage with automatic Parquet handling, and the expanded toolkit ecosystem. The repository was created in May 2025 and has accumulated over 5,000 GitHub stars, signaling strong early community interest.
Community Discussions
Be the first to start a conversation about ROMA: Recursive Open Meta-Agents
Share your experience with ROMA: Recursive Open Meta-Agents, ask questions, or help others learn from your insights.
Pricing
Open Source
Fully open-source framework available via pip or GitHub. No cost to use, modify, or distribute under Apache 2.0.
- Core agent framework (Atomizer, Planner, Executor, Aggregator, Verifier)
- All DSPy prediction strategies
- File-based storage (no database required)
- Built-in toolkits (Calculator, File operations)
- Works with any LLM provider
Capabilities
Key Features
- Recursive hierarchical task decomposition
- Five-module pipeline: Atomizer, Planner, Executor, Aggregator, Verifier
- Parallel and dependency-aware subtask execution
- DSPy-based prediction strategies (CoT, ReAct, CodeAct, BestOfN, etc.)
- 9 built-in toolkits including crypto, search, file, and code execution
- MCPToolkit for connecting to any MCP server
- Minimal pip install with no infrastructure required
- Full Docker production setup with PostgreSQL, MLflow, MinIO, and FastAPI
- Execution-scoped storage with automatic Parquet handling
- OmegaConf/Pydantic layered configuration with profiles
- REST API and CLI for production use
- Async execution support via aforward()
- Multi-provider LLM support (OpenRouter, OpenAI, Anthropic, Fireworks AI)
- Interactive TUI visualization
- Benchmarked on SEAL-0, FRAMES, and SimpleQA
