openloops
Compare

openloops compared with LangGraph and CrewAI

Where each framework gives you the work done and where it leaves it to you, from persistence to MCP.

01 / Side by side

Feature by feature

An honest comparison against the self-hosted, open-source versions of LangGraph and CrewAI
 openloopsLangGraph (OSS)CrewAI (OSS)
PersistenceBuilt in, zero config (MongoDB)You choose and configure a checkpointer: in-memory, SQLite or Postgres, the last two in separate packagesMemory is opt-in and stored as local files (ChromaDB and SQLite, or LanceDB in newer versions), tied to the machine
Multi-user scopingBuilt in: chats, tasks, context, and MCP servers are per-user from the startConversations are scoped by a thread_id. Mapping them to users, and scoping memory and tools per user, is up to youNot a concept of the framework, you build it
Tool execution and retriesValidation, confirmation of destructive tools, duplicate and invented-id protection, and LLM and MCP retries are built into the harnessPer-node RetryPolicy and error handling that you configureRetry limits are configured per agent or task
MCP supportNative: servers are a per-user record, tools load on demand, and every server goes through an approval flowA separate package (langchain-mcp-adapters) with a client that you wire into the graphNative mcps field on agents, or MCPServerAdapter. Servers are declared in code, not loaded per user
User managementIncluded (openloops/users, openloops/authentication)Not included, you build your ownNot included, you build your own
LLM usage and cost trackingIncluded (openloops/llmcalls): per answer, per chat, and per-user statisticsNot included in OSS, available via paid LangSmithThird-party integrations such as OpenLIT report token usage and cost
ObservabilitySentry and Langfuse via env vars, plus traces stored per chatYour own tracing setup, or paid LangSmithThird-party integrations (Langfuse, OpenLIT, Arize Phoenix, Opik, Weave) that you set up
Pre-built agentsGrowing marketplace of ready-to-use loopsYou build every agent from primitivesNo built-in agent marketplace
What you writeNode functions (plain async functions)Nodes and the graph's edges, explicitlyAgents, tasks, and crew orchestration, declared per role
Mental modelA state machine your loop drives itselfA graph you declare and compile ahead of timeA crew of role-based agents coordinated for you

Ready to build your first agent?

Install openloops and have a working, persisted, multi-user agent running in minutes.

npm install openloops
Apache 2.0, free for commercial use
TypeScript, works with any LLM provider