Agent frameworks
The libraries and SDKs for building AI agents, ranked. Licence, model freedom, lock-in and how much setup you're signing up for — at a glance.
- LangGraph tops the list for control and production-readiness — if your team can absorb a steeper learning curve.
- CrewAI is the fastest route to a working multi-agent setup; the OpenAI and Claude SDKs are lowest-friction inside their own ecosystems.
- Almost all are open source (MIT or Apache) and model-agnostic — the Claude Agent SDK is the main lock-in.
- Scores are RunAgentRun's editorial view; the factual fields are re-checked daily.
Every vendor now ships an "agent framework". Underneath the noise, the choice comes down to how much control you need versus how much setup you'll tolerate — and whether you want to stay free to switch models, or accept lock-in for a smoother ride. Here's how the main options stack up for a small team, side by side.
The ranking
Graph-based orchestration for stateful, branching agents — the most control, once you're past the learning curve.
Role-based "crews" — the fastest path from idea to a working multi-agent workflow.
Lightest lift if you already live in the OpenAI stack; clean primitives, fewer moving parts.
Strong tool-use and long context out of the box; tied to Claude models.
Enterprise governance and .NET-first tooling; most at home on Azure.
Research-grade multi-agent conversations — powerful, but heavier to wrangle in production.
Built around long-term memory (the MemGPT lineage) — agents that remember across sessions.
The open agent framework we run RunAgentRun on — model-agnostic, self-hostable, more DIY.
Side by side
| Tool | Score | Licence | Models | Lock-in | Setup | Languages |
|---|---|---|---|---|---|---|
| LangGraph ↗ | 4.5 | MIT | Any | None (any model) | High | Python · JS |
| CrewAI ↗ | 4.3 | MIT | Any | None (any model) | Medium | Python |
| OpenAI Agents SDK ↗ | 4.1 | Apache-2.0 | OpenAI-first | OpenAI-tuned | Low | Python · JS |
| Claude Agent SDK ↗ | 4.0 | Proprietary | Claude only | Claude only | Low | Python · TS |
| Microsoft Agent Framework ↗ | 3.6 | MIT | Any (Azure-leaning) | Azure-leaning | Medium | .NET · Python |
| AutoGen ↗ | 3.5 | MIT | Any | None (any model) | High | Python |
| Letta ↗ | 3.4 | Apache-2.0 | Any | None (any model) | Medium | Python |
| NousResearch Hermes ↗ | 3.2 | Apache-2.0 | Any (open-weight) | None (any model) | High | Python |
In detail
LangGraph · 4.5/5
Models your agent as an explicit graph of steps, which is what makes it reliable for long, branching tool use — at the cost of a steeper learning curve. It's model-agnostic and MIT-licensed, so there's no lock-in, and it's the closest thing to a production standard for serious agent work.
Licence: MIT · Models: Any · Lock-in: None (any model) · Setup: High · Languages: Python · JS · visit ↗
CrewAI · 4.3/5
You describe agents as roles in a "crew" and it handles the coordination between them — the quickest route from idea to a running multi-agent workflow. Open source and works with any model, so it's a low-risk place to start.
Licence: MIT · Models: Any · Lock-in: None (any model) · Setup: Medium · Languages: Python · visit ↗
OpenAI Agents SDK · 4.1/5
Clean, minimal primitives for building agents and handing tasks between them; the least friction if your stack is already OpenAI. Apache-2.0 licensed, though it's tuned first for OpenAI models.
Licence: Apache-2.0 · Models: OpenAI-first · Lock-in: OpenAI-tuned · Setup: Low · Languages: Python · JS · visit ↗
Claude Agent SDK · 4.0/5
The same tool use and long context window that power Claude Code, exposed as an SDK — excellent out of the box. The trade-off is lock-in: it's tied to Claude models rather than being model-agnostic.
Licence: Proprietary · Models: Claude only · Lock-in: Claude only · Setup: Low · Languages: Python · TS · visit ↗
Microsoft Agent Framework · 3.6/5
Aimed at enterprises — governance, observability and .NET-first tooling, most at home on Azure. Open source with broad model support, but heavier than you need for a small project.
Licence: MIT · Models: Any (Azure-leaning) · Lock-in: Azure-leaning · Setup: Medium · Languages: .NET · Python · visit ↗
AutoGen · 3.5/5
A research-grade framework for multi-agent conversations — very capable, and the pattern many newer tools borrowed from. It's heavier to take to production than the newer options, but MIT-licensed and model-agnostic.
Licence: MIT · Models: Any · Lock-in: None (any model) · Setup: High · Languages: Python · visit ↗
Letta · 3.4/5
Built around long-term memory (the MemGPT lineage), so agents recall context across sessions rather than starting fresh each time — handy for assistants that need continuity. Apache-2.0 and model-agnostic.
Licence: Apache-2.0 · Models: Any · Lock-in: None (any model) · Setup: Medium · Languages: Python · visit ↗
NousResearch Hermes · 3.2/5
The open, self-hostable framework we run RunAgentRun on — model-agnostic and built for open weights, so you keep full control of your stack. The trade-off is that it's more DIY than the managed options.
Licence: Apache-2.0 · Models: Any (open-weight) · Lock-in: None (any model) · Setup: High · Languages: Python · visit ↗