AI Agent Frameworks and Platforms in 2026: How to Choose for Production
Quick Answer / TL;DR
There is no single best AI agent framework. Choose the execution model first: a managed cloud platform when identity, networking, scaling, and operations are the priority; a provider SDK when you want a small, direct programming model; or an orchestration framework when your application needs explicit state, branching, retries, and human approvals. For most production teams, start with a narrow workflow, keep policy outside the model loop, and choose a framework that makes state and tool calls observable.
Modern agent projects fail less often because of the model choice than because of an unclear execution boundary. A prototype can call a tool, produce a useful answer, and look finished. A production system also has to resume after failure, limit authority, explain what happened, protect sensitive data, and give engineers a controlled way to change its behavior.
That is why comparisons based only on GitHub stars or a short list of popular libraries are not enough. The right choice depends on where you want the system to run, how much of the agent loop you want to own, how much workflow logic must be deterministic, and which controls your organization already operates.
This guide compares 20 relevant AI agent frameworks and cloud-native platforms. It uses current product documentation, public framework directories, and a review of CodeCrux’s 20 newest AI engineering articles. The goal is not to declare one winner. It is to help an engineering leader narrow the decision to two or three credible options and know what to test next.
What You Are Actually Choosing
The phrase “agent framework” hides several different product categories.
| Category | What it owns | Best fit |
|---|---|---|
| Managed agent platform | Runtime, scaling, sessions, identity, observability, and often tools | Teams that want a cloud operating model rather than infrastructure work |
| Provider SDK | Agent loop, tools, handoffs, guardrails, and model integration | Teams committed to a model provider or wanting a small code-first surface |
| Orchestration framework | State, graph execution, routing, persistence, and workflow composition | Stateful systems where execution logic matters as much as prompting |
| Application framework | Higher-level agents, retrieval, typed outputs, or TypeScript application integration | Teams optimizing for a specific application pattern or language |
These layers can be combined. An organization can use LangGraph for orchestration and deploy it on Amazon Bedrock AgentCore, Google Cloud’s Agent Platform, Microsoft Foundry Agent Service, or its own Kubernetes environment. Similarly, a provider SDK can be wrapped in an internal policy gateway and deployed on a managed runtime.
Do not compare products from different layers as if they were identical. A runtime may be the correct answer even when its built-in agent authoring experience is not. A low-level framework may be the correct answer even when it requires more platform engineering.
How This Comparison Was Built
The shortlist favors decision relevance over a precise popularity ranking. Each option was assessed against the questions that tend to matter after a proof of concept:
- Execution control: Can the team make the workflow deterministic where it needs to be?
- State and recovery: Are sessions, memory, checkpoints, retries, and resumability explicit?
- Tool and identity boundaries: Can the system constrain what an agent may call and on whose behalf?
- Operational path: Is there a credible route to tracing, evaluation, deployment, scaling, and incident response?
- Model and cloud flexibility: How expensive is it to change providers or run across environments?
- Team fit: Does the programming language, abstraction level, and ecosystem match the team?
The labels in the table below are recommendations, not vendor claims. Features and product names change quickly, so verify current service limits, supported models, pricing, regions, and preview status before committing.
At-a-Glance Comparison of 20 Options
| Option | Category | Strongest fit | Main trade-off |
|---|---|---|---|
| Amazon Bedrock AgentCore | Managed AWS platform | AWS production runtime for agents built with several frameworks | AWS-specific operating model and service surface |
| Amazon Bedrock Agents Classic | Managed AWS service | Existing customers with established Bedrock agent configurations | Closed to new customers; use AgentCore for new work |
| Strands Agents | AWS-aligned SDK | Code-first agents with an AWS path and provider flexibility | Younger ecosystem than the broadest open-source frameworks |
| Google ADK | Provider SDK | Google-oriented or multi-model agent development with graph workflows | Google deployment path is the most direct |
| Gemini Enterprise Agent Platform | Managed Google Cloud platform | Managed runtime, sessions, memory, evaluation, and governance | Google Cloud platform coupling |
| Microsoft Foundry Agent Service | Managed Azure platform | Managed agents with Microsoft identity, tools, and publishing | Azure and Foundry resource model |
| Microsoft Agent Framework | Provider and workflow SDK | .NET, Python, and Go teams building agents and explicit workflows | Newer successor path for AutoGen and Semantic Kernel users |
| OpenAI Agents SDK | Provider SDK | Small Python-first agent loops with handoffs, guardrails, and tracing | Strongest fit when OpenAI’s model and API path are acceptable |
| Anthropic Agent SDK | Provider SDK | Tool-using coding and computer-use agents with a managed-style harness | Claude Code-derived execution model and commercial terms |
| LangGraph | Orchestration runtime | Stateful, long-running, branching workflows with explicit control | Low-level; teams must design more of the application |
| LangChain | Agent framework | Faster starts with model, tool, and agent abstractions | More abstraction than a hand-built loop; runtime choices remain separate |
| LlamaIndex | Data and agent framework | Retrieval-heavy agents, document workflows, and knowledge applications | Broad surface area can require careful architecture boundaries |
| CrewAI | Workflow and multi-agent framework | Role-based teams inside structured Flows | Role-based autonomy can be excessive for simple workflows |
| AutoGen | Multi-agent framework | Conversational and distributed multi-agent experimentation | Microsoft identifies Agent Framework as the direct successor |
| Semantic Kernel | Enterprise SDK | Existing C#, Python, or Java applications using plugins and middleware | New Microsoft projects should evaluate Agent Framework as well |
| Pydantic AI | Typed Python framework | Type-safe tools, dependencies, and structured outputs | Python-first and intentionally closer to application code than a full platform |
| Haystack | Modular AI framework | Search, RAG, pipelines, and production agent applications | Pipeline design adds more concepts than a minimal SDK |
| Hugging Face smolagents | Lightweight Python framework | Small, model-agnostic agents and code agents | Production isolation and operations remain the team’s responsibility |
| DSPy | Programming and optimization framework | Systems where prompts and modules need evaluation-driven optimization | Not a complete managed runtime or authorization layer |
| Mastra | TypeScript framework | JavaScript and TypeScript teams building agents in web applications | TypeScript ecosystem and runtime choices shape the architecture |
Managed Cloud Platforms
1. Amazon Bedrock AgentCore
Amazon Bedrock AgentCore is the strongest AWS option when the main problem is operating agents safely rather than inventing an agent loop. Its current getting-started path supports both a managed harness and code-based agents. The code-based path can deploy agents built with Strands, LangGraph, Google ADK, or the OpenAI Agents SDK to AgentCore Runtime.
Choose AgentCore when your team already operates on AWS and needs a managed path for runtime, memory, gateway access to tools, identity, observability, or VPC deployment. It is also useful when you want to preserve framework choice while standardizing how agents are deployed.
Do not treat it as a replacement for workflow design. AgentCore can provide a runtime boundary, but the application still needs explicit authorization, idempotent tools, failure handling, evaluation, and a policy model. A managed runtime reduces platform work; it does not make an unsafe agent safe by default.
2. Amazon Bedrock Agents Classic
Amazon Bedrock Agents Classic remains relevant for teams that already use it, but AWS states that it is no longer open to new customers and points new projects toward AgentCore. Existing customers can continue using it.
That distinction matters in architecture reviews. A system already built around Agents Classic may have a reasonable maintenance path, but it should not be the default recommendation for a new platform. If you need managed orchestration around foundation models, knowledge bases, and action groups on AWS, evaluate AgentCore first and document any migration implications.
3. Strands Agents
Strands Agents is a code-first SDK closely associated with AWS’s agent ecosystem. It is a good fit when developers want to define an agent in application code, use tools and model providers directly, and retain a straightforward path to AgentCore.
Use it when the team values a small programming surface, Python is a natural choice, and AWS is likely to be part of the operating environment. It is less compelling when the key requirement is a highly explicit state graph, broad language support, or a mature multi-provider abstraction owned independently of one cloud.
4. Google Agent Development Kit
Google ADK is Google’s open-source agent development framework. Its current documentation covers Python, TypeScript, Go, Java, and Kotlin, along with tools, graph workflows, multi-agent patterns, evaluation, deployment, and observability.
ADK is a strong option for teams that want a Google-supported development framework without giving up local development or model-provider flexibility. Its graph workflows are especially relevant when an application needs deterministic routing around model-driven steps. The main decision is whether the team wants to align closely with Google’s SDK and deployment path or keep the orchestration layer more cloud-neutral.
5. Gemini Enterprise Agent Platform
Gemini Enterprise Agent Platform is the Google Cloud operating layer for agents. The current platform documentation describes managed runtime, sessions, memory, evaluation, secure sandbox execution, tracing, logging, monitoring, identity, and governance features. It also documents deployment paths for ADK, LangChain, LangGraph, LlamaIndex, AG2, and custom agents.
Choose it when your production requirement includes a managed operating environment on Google Cloud, not just a library for calling a model. It is a particularly good fit when agent state, evaluation, sandboxing, private connectivity, or central governance should be part of the platform. Teams that need portability should keep their business workflow and authorization policy separate from Google-specific adapters.
6. Microsoft Foundry Agent Service
Microsoft Foundry Agent Service is a managed Azure platform with prompt agents, voice-based prompt agents, and hosted agents. The hosted path lets teams bring code built with Agent Framework, LangGraph, the OpenAI Agents SDK, the Anthropic Agent SDK, or custom code. Foundry provides a managed endpoint, scaling, identity, tools, tracing, evaluation, publishing, and Azure networking options.
Foundry is the natural choice when Microsoft Entra identity, Azure RBAC, private networking, Microsoft tools, or distribution through Microsoft products are part of the requirements. It is less attractive as a neutral orchestration layer if the organization is intentionally minimizing cloud coupling. In either case, distinguish the Foundry-managed agent types from an agent application that simply calls the Responses API.
Provider SDKs and Agent Harnesses
7. Microsoft Agent Framework
Microsoft Agent Framework combines agent abstractions, sessions, middleware, integrations, and explicit functional or graph-based workflows. It supports .NET, Python, and Go. Microsoft’s documentation describes it as the direct successor to AutoGen and Semantic Kernel, combining their simpler agent abstractions and enterprise features with new workflow capabilities.
Use it for a Microsoft-aligned codebase that needs more than a prompt-and-tool loop. It makes sense for teams that need typed application integration, middleware, state, telemetry, and explicit workflows in one Microsoft-supported framework. Teams migrating from AutoGen or Semantic Kernel should evaluate the migration path rather than assuming the older library will remain the strategic default.
8. OpenAI Agents SDK
The OpenAI Agents SDK uses a deliberately small set of primitives: agents, tools, handoffs, and guardrails. The current SDK also documents sessions, MCP tool calling, human-in-the-loop behavior, sandbox agents, and built-in tracing.
Choose it when the team wants a compact Python-first runtime and is comfortable with the OpenAI Responses API as the default model path. It is well suited to assistants, delegated specialists, coding workflows, and applications where the agent loop should be easy to read. If provider portability or graph-level workflow control is the central requirement, use it as one component behind an internal interface or compare it directly with LangGraph and ADK.
OpenAI’s documentation positions the Agents SDK as the production-oriented successor to its earlier Swarm experiment. That is an important reason to evaluate the SDK rather than use old Swarm examples in a new project.
9. Anthropic Agent SDK
The Anthropic Agent SDK exposes the agent loop, tools, permissions, hooks, subagents, MCP, sessions, and skills used by Claude Code as a programmable Python or TypeScript library. It is a strong fit for coding, repository, document, and computer-use agents that benefit from a tool-rich harness and explicit approval boundaries.
The trade-off is architectural. The SDK brings a distinctive execution model and Anthropic terms into the application. Use it when those capabilities are the reason you are choosing the stack, not as a generic abstraction layer that you expect to behave like every other agent framework.
Orchestration Frameworks
10. LangGraph
LangGraph is a low-level orchestration framework and runtime for long-running, stateful agents. Its core value is control: teams can combine deterministic functions with LLM-driven nodes, persist state, resume after failure, stream progress, add human-in-the-loop interrupts, and model branching or cycles explicitly.
LangGraph is the default shortlist candidate when the workflow itself is the product. It fits approval workflows, research loops, coding agents, customer support escalation, and any process where the team needs to inspect or resume an intermediate state. It also works without LangChain, which lets an architecture use the graph runtime without taking every higher-level abstraction.
The cost is design responsibility. LangGraph does not decide your authorization policy, data retention, tool idempotency, or deployment model. Those boundaries must be engineered around the graph.
11. LangChain
LangChain is the higher-level framework in the LangChain ecosystem. Its agents provide prebuilt abstractions for common tool-calling loops, while LangGraph supplies the lower-level orchestration runtime. LangSmith adds tracing, evaluation, and deployment capabilities across the stack.
Choose LangChain for a faster start when the team needs broad model and tool integrations and does not yet need to model every state transition manually. Move down to LangGraph when the workflow becomes long-running, stateful, cyclic, or approval-heavy. This is not an either-or decision: a common path is LangChain for agent construction and LangGraph for durable orchestration.
12. LlamaIndex
LlamaIndex is particularly strong for agents that work over enterprise data. Its documentation covers tools, memory, structured output, RAG, multi-agent workflows, instrumentation, and a range of data connectors and model integrations.
Use it when retrieval, document ingestion, data connectors, and knowledge workflows are central to the product. It is a good choice for research assistants, document operations, and domain-specific information systems. Keep retrieval concerns separate from authorization: a document being retrievable does not mean an agent is authorized to disclose or act on its contents.
13. CrewAI
CrewAI separates structured Flows from autonomous Crews. Flows manage state, events, and control flow; Crews provide role-based agent collaboration inside a Flow. That makes the framework appealing for research, content, analysis, and other tasks that naturally decompose into specialist roles.
Choose CrewAI when a team understands the roles and collaboration pattern it wants to model and wants a higher-level abstraction than a raw graph. Start with a Flow, then add a Crew only where autonomy or collaboration creates real value. A single deterministic workflow should not be turned into a group of agents merely because the framework makes it easy.
14. AutoGen
AutoGen provides AgentChat for conversational multi-agent applications, Core for event-driven and distributed multi-agent systems, Extensions for integrations, and Studio for visual prototyping. It remains useful when the team is exploring multi-agent collaboration or distributed agent patterns.
For new Microsoft-aligned production work, compare it with Agent Framework. Microsoft’s Agent Framework documentation calls itself the direct successor to AutoGen and Semantic Kernel. That does not make existing AutoGen applications invalid; it does mean a new project should document why it is choosing AutoGen rather than the successor path.
15. Semantic Kernel
Semantic Kernel is a lightweight open-source development kit for integrating AI models and plugins into C#, Python, or Java applications. It fits teams that already have a Microsoft-oriented application architecture and want middleware between model calls and existing APIs.
Its plugin and connector model can be useful when AI capabilities must fit into a larger enterprise codebase. However, new projects should also evaluate Microsoft Agent Framework, which Microsoft describes as combining Semantic Kernel’s enterprise features with AutoGen’s agent abstractions and graph workflows.
Focused Application Frameworks
16. Pydantic AI
Pydantic AI is a Python framework built around typed dependencies, function tools, structured outputs, model configuration, and agent runs. It is a strong fit when the application’s correctness depends on validating inputs and outputs at the application boundary.
Use it for typed business workflows, extraction, decision support, and services where Python types should remain visible in the agent design. It is not a replacement for a managed runtime or a complete authorization service. Pair it with durable execution, policy enforcement, tracing, and deployment infrastructure that match the application’s risk.
17. Haystack
Haystack is a modular open-source framework for agents, RAG applications, search systems, pipelines, tools, document stores, and integrations. Its component and pipeline model is a good match for teams that need to compose retrieval and generation steps deliberately.
Choose Haystack when search or RAG is the center of gravity and you want the same modular vocabulary for pipelines and agents. It is less likely to be the simplest option for a small assistant with two tools. Its ecosystem also includes a separate enterprise platform for hosted tracing, deployment, testing, and analytics, so clarify which parts you will operate yourself.
18. Hugging Face smolagents
smolagents is a lightweight Python library designed to make agents easy to build. It supports code agents, traditional tool-calling agents, model-agnostic providers, MCP tools, and sandboxed execution through providers such as Docker, E2B, Modal, and Blaxel.
It is a good fit for small experiments, local or open-model workflows, and teams that want minimal abstractions. It becomes an incomplete production solution when the system needs durable state, centralized policy, tenancy isolation, detailed evaluation, or a managed operational plane. Those capabilities must be added deliberately.
19. DSPy
DSPy is best understood as a programming and optimization framework for language model systems rather than a complete agent runtime. It is useful when the team wants to define modules, signatures, and evaluation behavior programmatically and optimize prompts or model calls against a metric.
Choose DSPy when repeatable evaluation and optimization are more important than adopting a prebuilt agent loop. It can sit inside a broader workflow or agent architecture. Do not expect it alone to provide identity, tool authorization, durable execution, or production operations.
20. Mastra
Mastra is a TypeScript framework for AI agents and applications. It fits product teams building in Node.js, Next.js, React, or another TypeScript-centered stack and wanting agents, tools, workflows, memory, evaluation, and application integration in one ecosystem.
Choose Mastra when the rest of the product is already TypeScript and keeping agent code close to the web application reduces coordination cost. Confirm the runtime, deployment, persistence, and observability design early. A convenient application framework does not remove the need for a separate security and operations boundary around high-impact tools.
How to Choose by Architecture
If you are committed to one cloud
Start with the cloud’s managed runtime and provider SDK, then test whether the framework gives you enough workflow control.
- AWS: Compare AgentCore with Strands and a portable framework such as LangGraph. Use Agents Classic only when maintaining an existing deployment.
- Google Cloud: Compare ADK with Gemini Enterprise Agent Platform. Evaluate LangGraph or LlamaIndex on Agent Platform if the team already has those skills.
- Azure: Compare Foundry Agent Service with Microsoft Agent Framework. Use the hosted-agent path when you want custom code with Foundry-managed identity and scaling.
Cloud alignment is valuable when it reduces identity, networking, deployment, and audit work. It is a liability when application logic becomes inseparable from provider-specific APIs and a future move would require rewriting the workflow.
If you need multi-cloud or model portability
Keep the business workflow, tool contracts, policy decisions, and evidence schema provider-neutral. Put model adapters and deployment integrations at the edge. LangGraph, LlamaIndex, Haystack, Pydantic AI, and carefully bounded provider SDKs are reasonable candidates for this shape.
Portability does not mean every provider must be supported on day one. It means the decision to change a model or runtime should not require rebuilding authorization, state transitions, or business rules.
If the workflow is long-running or approval-heavy
Shortlist LangGraph, Google ADK graph workflows, Microsoft Agent Framework workflows, CrewAI Flows, or a cloud runtime that supports resumable execution. The key test is not whether the framework can call a tool. It is whether a run can pause, wait for an approval, resume after a worker restart, and produce an explainable record of what happened.
If retrieval and enterprise data are the center
Shortlist LlamaIndex and Haystack, then compare them with the retrieval features in the target cloud platform. Evaluate ingestion, metadata filters, tenant isolation, source citations, deletion behavior, and access checks. A high-quality answer from the wrong document is still a security and correctness failure.
If you are building a coding or computer-use agent
Shortlist the Anthropic Agent SDK, OpenAI Agents SDK, AgentCore, Foundry hosted agents, and a framework that supports isolated execution. Require workspace isolation, explicit file and network permissions, approval checkpoints for writes or external actions, and traces that distinguish model intent from tool results. Code execution should be treated as a privileged capability, not another ordinary function call.
A Production Architecture That Survives Framework Changes
The safest way to choose a framework is to define the architecture that must remain stable when the framework changes.
User or event
|
v
Identity and request context
|
v
Policy decision point ---> approval or denial
|
v
Agent workflow and state machine
|
+--> model provider
+--> retrieval and memory
+--> governed tool gateway
|
v
Evidence, traces, evaluation, and cost controls
The framework belongs in the workflow and model layers. Identity, authorization, tool policy, evidence, and resource limits should not depend entirely on a prompt or on the model’s willingness to follow instructions.
This separation matches the engineering themes in CodeCrux’s recent AI agent work: identity and least privilege, policy before tool calls, human approval for consequential actions, durable execution, observability, rate and budget controls, prompt-injection defense, and evidence for audits. These are not features you should assume a library supplies automatically.
For more detail, see the CodeCrux guides on AI agent architecture, tool calling and idempotency, failure recovery, AI agent observability, and AI agent security frameworks.
CodeCrux Default Recommendation
There is no universal CodeCrux default. There is a default decision sequence:
- Define the workflow before selecting the framework. Write the states, tools, approvals, failure modes, data boundaries, and success metrics.
- Use a managed runtime when the cloud boundary solves real operational work. AgentCore, Gemini Enterprise Agent Platform, and Foundry Agent Service can reduce deployment and identity effort when the organization already operates in that cloud.
- Use LangGraph or an equivalent explicit workflow layer when state and recovery are central. Do not hide a business process inside a large prompt or an uninspectable multi-agent conversation.
- Use LlamaIndex or Haystack when retrieval and enterprise data are the dominant problem. Keep data access and disclosure policy separate from retrieval quality.
- Use a provider SDK when a small, focused agent loop is enough. OpenAI Agents SDK, Anthropic Agent SDK, Strands, and ADK can be effective when their provider and deployment assumptions fit the system.
- Add policy, identity, observability, evaluation, and budget controls around the framework. These are architecture concerns, not optional polish.
For a new enterprise workflow, the first comparison I would run is usually one managed cloud path against one explicit orchestration path. For example, compare AgentCore with LangGraph on AWS, Foundry Agent Service with Agent Framework on Azure, or Gemini Enterprise Agent Platform with ADK on Google Cloud. The test should use the same workflow, tools, approval rules, failure injection, and evaluation set.
A Practical Evaluation Plan
Do not run a framework bake-off with a toy chatbot. Use one representative workflow and measure the properties that matter in production.
1. Model the workflow
Pick a process with at least one branch, one external tool, one sensitive output, and one action that requires approval. Document the expected states and the transitions that must be deterministic.
2. Define the tool contract
Give every tool a narrow schema, an owner, an authorization requirement, an idempotency strategy, a timeout, and a failure response. Test malformed arguments and replayed requests. The agent should never receive credentials that it does not need to complete the current step.
3. Build the same slice in two candidates
Keep the model, prompt, retrieval corpus, tool contracts, and evaluation set as similar as possible. Otherwise, the comparison measures implementation effort instead of framework behavior.
4. Inject failures
Stop workers, delay tool responses, return invalid structured output, revoke credentials, interrupt an approval, and replay an event. Measure whether the run fails closed, resumes safely, duplicates an action, or loses the evidence needed to understand the failure.
5. Test security boundaries
Use prompt injection in user input and retrieved documents. Try to call an out-of-scope tool, access another tenant’s data, exceed a budget, and bypass an approval. Verify the policy boundary independently of the model’s response.
6. Measure operations
Track task success, groundedness, tool error rate, latency, token and provider cost, approval wait time, recovery rate, and operator effort. Also record how quickly an engineer can answer: What did the agent try to do? Which identity did it use? Which policy decision allowed it? What data did the tool return?
7. Make the exit criteria explicit
Choose the framework only after the team can state why it won, what it does not provide, how it will be upgraded, and which parts of the architecture remain portable.
Frequently Asked Questions
What is the best AI agent framework in 2026?
The best framework depends on the workflow and operating environment. LangGraph is a strong candidate for explicit, stateful orchestration; LlamaIndex and Haystack fit retrieval-centered systems; provider SDKs fit focused model-aligned agents; and managed cloud platforms fit teams prioritizing deployment, identity, scaling, and operations.
Is LangGraph better than CrewAI?
They optimize for different levels of control. LangGraph is lower-level and makes state transitions, persistence, cycles, and human-in-the-loop behavior explicit. CrewAI provides a higher-level Flow and Crew model for structured workflows and role-based collaboration. Choose based on whether graph-level control or role-based abstraction better matches the system.
Should I use a managed cloud platform or an open-source framework?
Use a managed platform when it removes meaningful operational work around runtime, identity, networking, observability, or scaling. Use an open-source framework when workflow control, model portability, self-hosting, or application-specific behavior matters more. Many production architectures use both.
Are multi-agent systems always better?
No. Multiple agents add coordination, state, latency, cost, and security boundaries. Start with one agent and deterministic functions. Add specialist agents only when the decomposition improves quality, isolation, or maintainability enough to justify the additional complexity.
Can I switch frameworks later?
You can reduce migration cost by keeping tool contracts, domain state, policy decisions, evaluation datasets, and evidence schemas outside provider-specific code. A workflow built entirely around a proprietary agent resource or prompt format is harder to move than one with explicit application-level boundaries.
What should I secure first?
Secure identity and tool access first. Bind every run to a user or service identity, grant only the minimum scope, put policy evaluation before high-impact tool calls, require approval for consequential actions, isolate code execution, and record enough evidence to reconstruct each decision. Prompt defenses matter, but they should not be the only control.
Sources and Further Reading
Official documentation
- Amazon Bedrock AgentCore
- Amazon Bedrock Agents Classic
- Google ADK
- Gemini Enterprise Agent Platform
- Microsoft Foundry Agent Service
- Microsoft Agent Framework
- OpenAI Agents SDK
- Anthropic Agent SDK
- LangGraph
- LlamaIndex agents
- CrewAI
- AutoGen
- Pydantic AI
- Haystack
- Hugging Face smolagents
- Mastra
Discovery sources
These public lists helped identify candidates and recurring comparison criteria. They were used for discovery, not as proof of production readiness or a definitive popularity ranking:
- IBM: Top AI agent frameworks
- Chatbot.com: AI agent frameworks
- Awesome AI Agents
- Awesome workflow automation
- Awesome AI agents 2026
- GitHub AI agent framework topic
Conclusion
The framework decision is really a decision about control. Managed platforms give you an operating model. Provider SDKs give you a focused agent loop. Orchestration frameworks give you explicit state and execution logic. Application frameworks optimize for a language, data pattern, or product workflow.
Choose the smallest layer that solves the real problem, then keep identity, authorization, evidence, and failure handling outside the model’s discretion. That approach lets you change models and frameworks without rebuilding the controls that make the system trustworthy.
If you are evaluating an agent platform for a real workflow, contact CodeCrux to map the architecture, test the operational boundaries, and define a production path before committing to a framework.