Skip to content
Pyrana
Compare

Side by side · Frameworks and runtimes

AI agent frameworks compared

LangGraph, CrewAI, OpenAI Agents SDK, Microsoft Agent Framework, Google ADK, Strands, Pydantic AI, and Mastra compared: what each is for and leaves to you.

Eric Tarnowski · Co-founder and President, Pyrana · Last reviewed October 12, 2026

The short answer

There is no single best AI agent framework; the right one depends on language, cloud, and how much control you want. LangGraph and Microsoft Agent Framework suit explicit, checkpointed workflows; the OpenAI Agents SDK, Strands, and Pydantic AI suit lean agent loops; CrewAI suits role-based multi-agent work; Google ADK and Strands align with Google Cloud and AWS. Every one of them produces agents, and every one leaves the enterprise application around those agents (per-user authorization, approval routing, audit of business actions, and the UI) to your team.

Agent frameworks build agents. Runtimes host them. Application platforms such as Pyrana build the governed application the agents work inside.

Choose LangGraph when

  • You want an explicit graph over shared state, with checkpointers and interrupts, in Python or TypeScript.
  • You want LangSmith tracing and evaluation, and optional managed hosting on LangSmith Deployment.

Choose OpenAI Agents SDK when

  • You want a small set of primitives (agents, handoffs, guardrails) closely aligned with OpenAI models.
  • You are migrating from Agent Builder, which shuts down on November 30, 2026.

Choose CrewAI when

  • Your team thinks in roles and tasks and wants agents that collaborate and delegate.
  • You want each crew deployed as a REST endpoint on CrewAI AMP.

Choose Microsoft Agent Framework when

  • You build in .NET or Python on Azure and want the successor to Semantic Kernel and AutoGen.
  • You want graph workflows with checkpoints stored in Azure Cosmos DB.

Choose Google ADK when

  • You build on Google Cloud and want to deploy to Agent Runtime, Cloud Run, or GKE.
  • You need Python, TypeScript, Go, Java, or Kotlin.

Choose Strands Agents when

  • You build on AWS and want a model-driven loop that deploys to Bedrock AgentCore, Lambda, Fargate, or EKS.

Choose Pydantic AI when

  • You want typed Python agents and to run durably on an engine you already operate, such as Temporal or DBOS.

Choose Mastra when

  • Your team is TypeScript-first and wants agents and suspendable workflows in the same codebase as its web backend.

At a glance

Core abstraction
LangGraph
Graph of nodes and edges over shared state
OpenAI Agents SDK
Agents, handoffs, guardrails, run loop
CrewAI
Flows that call Crews of role-playing agents
Microsoft Agent Framework
Agents, a Harness Agent, and graph workflows
Languages
LangGraph
Python, TypeScript
OpenAI Agents SDK
Python, TypeScript
CrewAI
Python
Microsoft Agent Framework
.NET, Python; Go in preview
Durable state
LangGraph
Checkpointers (Postgres recommended in production)
OpenAI Agents SDK
Sessions; serialized run state; Temporal integration
CrewAI
@persist flow state (SQLite default)
Microsoft Agent Framework
Workflow checkpoints (in-memory, file, Cosmos DB)
Human approval
LangGraph
interrupt() and Command(resume)
OpenAI Agents SDK
needs_approval on tools; resume from run state
CrewAI
@human_feedback; webhook resume on Enterprise
Microsoft Agent Framework
Request and response in workflows; tool approval in Harness Agent
Managed option from the maker
LangGraph
LangSmith Deployment
OpenAI Agents SDK
Agents API (managed harness) is a separate product
CrewAI
CrewAI AMP
Microsoft Agent Framework
Microsoft Foundry integration
License
LangGraph
MIT
OpenAI Agents SDK
MIT
CrewAI
MIT
Microsoft Agent Framework
Open source
Left to your team
LangGraph
End-user app, permission model, approval routing, business audit
OpenAI Agents SDK
End-user app, permission model, approval routing, business audit
CrewAI
End-user app, permission model, approval routing, business audit
Microsoft Agent Framework
End-user app, permission model, approval routing, business audit
Latest milestone
LangGraph
1.0 on Oct 22, 2025; 1.2.x in Oct 2026
OpenAI Agents SDK
Recommended path after Agent Builder shutdown (Nov 30, 2026)
CrewAI
1.15.27 on Oct 9, 2026
Microsoft Agent Framework
1.0 on Apr 3, 2026

What an agent framework does

An AI agent framework is a library for building software in which a language model decides which tools to call, in what order, until a task is done. It supplies the agent loop, tool definitions, multi-agent patterns, state, and increasingly human approval and durable resume. It does not supply the business application: users, permissions, approval routing, the record of what was decided, or the pages people work in.

By late 2026 the leading frameworks have converged on a common feature set. Most support MCP tools, multiple model providers, multi-agent patterns, persistent state, and a way to pause for a person. The real differences are the core abstraction (graph, agent loop, roles, typed functions), the language, the cloud each aligns with, and what managed hosting its maker sells.

The frameworks at a glance

FrameworkMakerLanguagesCore abstractionDurable state and resumeHuman approvalManaged hosting from the maker
LangGraphLangChainPython, TypeScriptGraph of nodes and edges over shared stateCheckpointers per thread; Postgres recommended in productioninterrupt() and Command(resume)LangSmith Deployment (cloud, hybrid, self-hosted)
OpenAI Agents SDKOpenAIPython, TypeScriptAgents, handoffs, guardrailsSessions (SQLite, Redis, SQLAlchemy, others); serialized run state; Temporal integrationneeds_approval on toolsNone for the SDK; the Agents API is a separate managed harness
CrewAICrewAIPythonFlows calling Crews of role-playing agents@persist flow state, SQLite by default@human_feedback; webhook resume on EnterpriseCrewAI AMP (Cloud, Factory, hybrid)
Microsoft Agent FrameworkMicrosoft.NET, Python; Go in previewAgents, Harness Agent, graph workflowsWorkflow checkpoints per superstep (in-memory, file, Cosmos DB)Human-in-the-loop workflows; tool approval in Harness AgentIntegrates with Microsoft Foundry
Google ADKGooglePython, TypeScript, Go, Java, KotlinAgents plus sequential, loop, parallel, and graph workflowsSession services; resumable apps (Python 1.16.0+)Tool confirmation (experimental, Python 1.14.0+)Agent Runtime, Cloud Run, GKE
Strands AgentsAWSPython, TypeScriptModel-driven agent loop; swarm, graph, workflow patternsFile and S3 session managersInterrupts from hooks or tools; HumanInTheLoop handlerBedrock AgentCore, Lambda, Fargate, EKS
Pydantic AIPydanticPythonTyped agents; Pydantic Graph for control flowDurable execution on Temporal, DBOS, Prefect, Restate, and othersrequires_approval; deferred tool requestsNone; runs on the engine you operate
MastraMastraTypeScriptAgents and workflowsWorkflow snapshots in your storage providersuspend() and resume() on workflow stepsSelf-deployed; integration guides for Next.js, Express, Hono
LlamaIndexLlamaIndexPythonPrebuilt agents and event-driven WorkflowsSerialize workflow context to resumeInputRequiredEvent and HumanResponseEventSelf-deployed
smolagentsHugging FacePythonCodeAgent (actions written as code), ToolCallingAgentNot a focusNot a focusNone; sandboxes via Modal, Blaxel, E2B, Docker
DSPyStanford NLPPythonSignatures, modules, optimizersNot a focusNot a focusNone

Graph and workflow frameworks

These frameworks make control flow explicit. You define steps and transitions, and the framework checkpoints state between them. They suit processes where the order of operations matters and must be inspectable.

LangGraph describes itself as a low-level orchestration framework and runtime for long-running, stateful agents. You define a graph over shared state; checkpointers save it per thread, and interrupt() pauses for a person. LangGraph 1.0 shipped on October 22, 2025, with a commitment to no breaking changes until 2.0. LangSmith adds tracing and evaluation, and LangSmith Deployment (formerly LangGraph Platform) hosts agents from LangGraph and other frameworks.

Microsoft Agent Framework is the direct successor to Semantic Kernel and AutoGen, built by the same teams. It combines agents, an opinionated Harness Agent for long multi-step tasks (planning, context compaction, file access, tool approval), and functional and graph-based workflows. Workflows checkpoint at the end of each superstep, with built-in storage in memory, on disk, or in Azure Cosmos DB. Version 1.0 shipped on April 3, 2026, for .NET and Python.

Google ADK (Agent Development Kit) is open source and available in five languages. It offers sequential, loop, and parallel workflow agents plus graph workflows, works with almost any model, and deploys to containers on your own infrastructure or to Agent Runtime on Gemini Enterprise Agent Platform, Cloud Run, and GKE. Resumable apps replay completed events after an interruption.

LlamaIndex offers prebuilt agents and Workflows, an event-driven, step-based model where each step consumes an event and emits the next. It suits teams already using LlamaIndex for retrieval over their documents.

Which agent frameworks support durable execution?

LangGraph, Microsoft Agent Framework, CrewAI, Mastra, and Google ADK persist state and resume. Pydantic AI integrates with durable engines directly, and the OpenAI Agents SDK has an official Temporal integration, generally available since March 23, 2026. Resuming a run is not the same as running a business action exactly once. Google ADK's docs say plainly that on resume, tools run at least once and may run more than once, so tools with side effects such as purchases must check for duplicates. LangGraph's docs give similar advice for code before an interrupt.

Agent-loop SDKs

These frameworks center on one capable agent loop and keep orchestration light. They suit teams that want minimal abstraction and plan to add structure in their own code.

OpenAI Agents SDK provides agents, handoffs (agents delegating to agents), guardrails, sessions, tracing, MCP tools, realtime voice agents, and sandbox agents that work in an isolated filesystem. It supports non-OpenAI models through adapters. It is OpenAI's recommended path for Agent Builder users: OpenAI notified developers on June 3, 2026 that Agent Builder and the Evals platform are deprecated, and both shut down on November 30, 2026.

Strands Agents is an Apache 2.0 open-source SDK from AWS for Python and TypeScript, described as a model-driven approach to building agents in a few lines of code. It supports Amazon Bedrock, Anthropic, OpenAI, Gemini, and other providers, with built-in MCP and multi-agent patterns (agents as tools, swarm, graph, workflow, A2A). It deploys to Bedrock AgentCore, Lambda, Fargate, EKS, and containers.

Pydantic AI brings typed outputs, dependencies, and tools to Python agents, with human approval of tool calls built in. Its durable execution story is distinctive: rather than its own runtime, it integrates with eight engines, including Temporal and DBOS as first-party integrations, so agents survive restarts on infrastructure you already operate.

smolagents from Hugging Face keeps its agent logic to about a thousand lines and favors CodeAgent, which writes its actions as code, executed in sandboxes such as Modal, E2B, or Docker. It suits research and code-heavy tasks.

Role-based multi-agent: CrewAI

CrewAI organizes work around roles. Each agent has a required role, goal, and backstory, and agents in a crew collaborate and delegate tasks. Flows wrap crews with state, events, and routing, and CrewAI's docs recommend starting production applications with a Flow. CrewAI AMP (Agent Management Platform) deploys each crew as a REST endpoint with tracing, a tool repository, and a no-code Crew Studio; a free Basic tier includes 50 workflow executions per month.

TypeScript-first: Mastra

Mastra is a TypeScript framework for agents and applications. Agents take instructions, a model string such as a provider and model name, and tools. Workflows can suspend() at a step and resume() from anywhere in your application, such as an HTTP endpoint, with snapshots stored in your configured storage provider so they survive restarts and deployments. LangGraph, the OpenAI Agents SDK, Google ADK, and Strands also offer TypeScript.

Optimizing programs: DSPy

DSPy, maintained by Stanford NLP under the MIT license, is less an agent framework than a way to program language models. You declare tasks as typed signatures, compose modules, and let optimizers tune prompts against a metric you define. It can sit alongside an agent framework to improve individual steps.

Which agent framework is best for enterprise?

Pyrana's view: choose by language, cloud, and the control model your engineers prefer, because capability gaps between the leaders are narrow and close quickly. Azure shops tend toward Microsoft Agent Framework, Google Cloud toward ADK, AWS toward Strands, and teams wanting explicit graphs toward LangGraph. Then plan for what none of them provides.

What every framework leaves you to build

Every framework above produces agents. None produces the enterprise application those agents work inside. That boundary is the subject of the pillar on agent framework vs runtime vs platform. In practice, a team shipping a governed application on any framework builds the following.

LayerWhat the framework providesWhat the team builds
End-user applicationDeveloper tools (studios, debuggers, playgrounds)Pages, inbox, copilot surface, API
IdentityHooks to accept a user or tokenSSO, agent identity, on-behalf-of identity, service principals
AuthorizationLittle or none on the agent's callsWho may read, run, or approve, per entity, enforced on every tool call
Approval routingA pause on a tool call and a way to resumeThreshold policy, named approver groups, eligibility at decision time, protection against replayed resumes
Exactly-once actionsDurable resume of the runIdempotent effects, so an approved posting happens once
System of recordRun state and tracesVersioned, attributed outputs and an audit record of business decisions
Governed knowledgeRetrieval and memory primitivesCuration, classification, change control, and provable citations
Release managementCode and configuration you deployImmutable versions, audited activation, rollback

The OpenAI Agents SDK's own docs make one of these boundaries explicit: its run-state loaders do not authenticate the snapshot or the person submitting it, so the application must authorize the reviewer and prevent duplicate or replayed resumes. LangChain's docs note that self-hosted Agent Server has no default authentication. These are not shortcomings of the frameworks. They are a different layer.

Managed runtimes (LangSmith Deployment, CrewAI AMP, AWS Bedrock AgentCore, Agent Runtime on Google Cloud) close part of the gap: hosting, scaling, session state, and in some cases identity and policy for agents. The business application, its permission model, and its record of decisions remain yours.

Where Pyrana fits

Pyrana is not an agent framework. It is an agentic application platform: identity, authorization, storage, orchestration, approvals, audit, and context are built once, and each application is one App configuration plus a frontend experience. Agents are a mechanism inside the application, running on the Pyrana Harness with durable workflows on Temporal workers.

The rows in the table above are what Pyrana provides. Every call passes one fail-closed gate with an authorization check on the entity and an audit record written before dispatch. Tool approval policies freeze the exact invocation under a hash, route it to a named lane, check eligibility at decision time, and dispatch idempotently. Outputs are versioned, attributed resources. cortIQ holds company knowledge as classified Context Units with per-run citation accounting.

Frameworks and Pyrana connect through open interfaces. An agent built on any framework can work with a Pyrana App through the App MCP server, as the user, through the same gate. A framework agent exposed as an MCP server or REST endpoint can be a Pyrana tool source, and existing framework code can live in a client-owned extension. For head-to-head detail, see Pyrana vs LangGraph, Pyrana vs OpenAI Agents SDK, and Pyrana vs CrewAI.

Questions buyers ask

What is the best AI agent framework for enterprise?
It depends on your language and cloud more than on features, because the leading frameworks have converged: tools, MCP, multi-agent patterns, state, and human approval are common. Teams on Azure often choose Microsoft Agent Framework, Google Cloud teams ADK, AWS teams Strands, and teams wanting explicit graphs LangGraph. None of them provides per-user authorization, approval routing, or a business audit record; those come from your application or a platform.
Which agent frameworks support human in the loop?
All the major ones now do. LangGraph uses interrupt() and resume on a thread. The OpenAI Agents SDK, Pydantic AI, Strands, and Google ADK let a tool require approval before it runs. CrewAI has @human_feedback in Flows. Microsoft Agent Framework supports human-in-the-loop workflows, and Mastra suspends a workflow step until resumed. In each, deciding who may approve and recording the decision is your application's job.
Which agent frameworks support durable execution?
LangGraph persists through checkpointers, Microsoft Agent Framework through workflow checkpoints, CrewAI through @persist, Mastra through workflow snapshots, and Google ADK through resumable apps (Python 1.16.0 and later). Pydantic AI integrates with eight durable engines, including Temporal and DBOS, and the OpenAI Agents SDK has an official Temporal integration. Durability of the agent run is not the same as exactly-once business actions; ADK's docs note tools may run more than once on resume.
What is the difference between an agent framework and an agent platform?
A framework is a library you write agents with. A runtime hosts and scales them (LangSmith Deployment, CrewAI AMP, AWS Bedrock AgentCore). An application platform provides the business application the agents work inside: identity, authorization on every call, approvals, versioned outputs, context, and audit. Pyrana is an application platform. The pillar on framework vs runtime vs platform covers the distinction in detail.
Is Semantic Kernel or AutoGen still the right choice?
Microsoft describes Microsoft Agent Framework as the direct successor to both, built by the same teams. It combines AutoGen's agent abstractions with Semantic Kernel's session state, type safety, middleware, and telemetry, and adds graph-based workflows. Version 1.0 shipped on April 3, 2026 for .NET and Python, and Microsoft publishes migration guides from both earlier frameworks.

Sources and review

Facts about other products come from their own documentation, checked on the dates shown. Product names are trademarks of their owners and are used only to identify those products; no affiliation or endorsement is implied. Statements about fit are Pyrana's view. Last reviewed October 12, 2026. Spot something out of date? Tell us and we will correct it.

  1. LangGraph documentation: Overview · checked October 12, 2026
  2. LangGraph documentation: Interrupts · checked October 12, 2026
  3. LangGraph documentation: Persistence · checked October 12, 2026
  4. LangChain blog: LangChain and LangGraph 1.0 · checked October 12, 2026
  5. LangSmith documentation: Deployment · checked October 12, 2026
  6. OpenAI Agents SDK documentation · checked October 12, 2026
  7. OpenAI Agents SDK: Human in the loop · checked October 12, 2026
  8. OpenAI API docs: Agents guide · checked October 12, 2026
  9. OpenAI API docs: Deprecations · checked October 12, 2026
  10. Temporal: OpenAI Agents SDK integration · checked October 12, 2026
  11. CrewAI documentation: Introduction · checked October 12, 2026
  12. CrewAI documentation: Flows · checked October 12, 2026
  13. CrewAI changelog · checked October 12, 2026
  14. CrewAI AMP documentation · checked October 12, 2026
  15. Microsoft Learn: Microsoft Agent Framework overview · checked October 12, 2026
  16. Microsoft Learn: Agent Framework workflow checkpoints · checked October 12, 2026
  17. Microsoft Agent Framework blog: Version 1.0 · checked October 12, 2026
  18. Google ADK documentation · checked October 12, 2026
  19. Google ADK: Tool confirmation · checked October 12, 2026
  20. Google ADK: Resume agents · checked October 12, 2026
  21. Strands Agents repository · checked October 12, 2026
  22. Strands Agents documentation: Interrupts · checked October 12, 2026
  23. Strands Agents documentation: Session management · checked October 12, 2026
  24. AWS: What is Amazon Bedrock AgentCore · checked October 12, 2026
  25. Pydantic AI documentation: Overview · checked October 12, 2026
  26. Pydantic AI documentation: Deferred tools · checked October 12, 2026
  27. Mastra documentation · checked October 12, 2026
  28. Mastra documentation: Suspend and resume · checked October 12, 2026
  29. LlamaIndex documentation: Workflows · checked October 12, 2026
  30. LlamaIndex documentation: Human in the loop · checked October 12, 2026
  31. Hugging Face smolagents documentation · checked October 12, 2026
  32. DSPy documentation · checked October 12, 2026

Changes

  • October 12, 2026 · Published.

Bring your hardest process.

We will show you the governed application it becomes, on your stack.