The agent SDK landscape has matured fast. In early 2025, building an AI agent meant stitching together prompt loops, tool parsers, and retry logic by hand. By May 2026, three production grade SDKs from the major labs have taken over: Claude Agent SDK (v0.2.132), OpenAI Agents SDK (v0.15.1), and Google Agent Development Kit (ADK 2.0). Each ships with built in tool execution, guardrails, tracing, and multi agent support.
This guide covers what each SDK does, how they differ, and how to connect all three to a single AI gateway so you get unified cost tracking, automatic failover, and observability across every agent you ship.
Why agent SDKs matter now
A year ago, most teams rolled their own agent loops. The pattern was always the same: call the model, parse tool calls from the response, execute tools, append results, call the model again. Every team reimplemented the same retry logic, the same streaming parsers, the same error handling.
The 2026 SDKs eliminate that boilerplate. They give you:
- A managed agent loop that handles tool invocation, result injection, and continuation automatically
- Built in tool catalogs for file I/O, shell execution, web search, and code editing
- Guardrails that validate inputs and outputs in parallel with agent execution
- Tracing and observability so you can debug multi step agent runs
- Multi agent coordination through handoffs, subagents, and delegation protocols
The question is no longer whether to use an SDK. It is which one fits your stack and how to avoid getting locked into a single provider.
The three SDKs at a glance
| Feature | Claude Agent SDK | OpenAI Agents SDK | Google ADK |
|---|---|---|---|
| Languages | Python, TypeScript | Python, TypeScript | Python, TypeScript, Go, Java |
| Latest version | v0.2.132 | v0.15.1 | 2.0 Alpha |
| Built in tools | File read/write, bash, code edit, web search | Sandbox execution, file tools, code interpreter | Google Search, code execution, retrieval |
| Multi agent | MCP servers as sub agents | Handoffs, agents as tools, subagents | Sub agents, A2A protocol, graph workflows |
| Sandbox execution | Integrated (Claude Code runtime) | Native (E2B, Modal, Daytona, local) | Daytona, custom containers |
| MCP support | Native (built in) | First class (v0.12+) | Via MCP tool wrapper |
| Tracing | Built in | Built in | Built in |
| Model lock in | Anthropic models by default | OpenAI models by default | Gemini models by default |
Claude Agent SDK
The Claude Agent SDK grew out of Claude Code, Anthropic's coding agent. It ships the same tool catalog that powers Claude Code: file reading, code editing, bash execution, and web search are all built in. You do not need to implement tool execution yourself.
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions
async def main():
async for message in query(
prompt="Find all TODO comments in the codebase and create a summary",
options=ClaudeAgentOptions(
allowed_tools=["Read", "Bash", "Edit"],
system_prompt="You are a senior engineer performing a code audit.",
),
):
print(message)
asyncio.run(main())When to pick it: You want a batteries included agent runtime with strong code editing and file manipulation. Your primary use case involves coding agents, code review, or repository automation.
Routing Claude Agent SDK through Requesty
By default, the Claude Agent SDK talks directly to Anthropic. To route it through Requesty, set two environment variables:
export ANTHROPIC_BASE_URL="https://router.requesty.ai"
export ANTHROPIC_AUTH_TOKEN="your_requesty_api_key"This gives you immediate access to 300+ models, fallback routing, cost tracking, and usage analytics without changing a single line of agent code. You can even swap the underlying model to a non Anthropic provider:
export ANTHROPIC_MODEL="openai/gpt-5"See the full Anthropic Agent SDKs integration guide for details.
OpenAI Agents SDK
The OpenAI Agents SDK (v0.15.1) received its biggest update in April 2026: native sandbox execution, subagents, and first class MCP support. The SDK is provider agnostic and supports 100+ LLMs through its model interface.
The headline feature is SandboxAgent, which gives your agent a controlled filesystem, shell access, and manifest defined file mounts without you wiring up containers:
import asyncio
from agents import Runner
from agents.sandbox import Manifest, SandboxAgent, SandboxRunConfig
from agents.sandbox.entries import LocalDir
from agents.sandbox.sandboxes import UnixLocalSandboxClient
async def main():
agent = SandboxAgent(
name="Analyst",
model="openai/gpt-5",
instructions="Analyze the data files and produce a summary report.",
default_manifest=Manifest(
entries={"data": LocalDir(src="./reports")}
),
)
result = await Runner.run(
agent,
"Compare Q1 and Q2 revenue figures from the reports.",
run_config=SandboxRunConfig(
sandbox_client=UnixLocalSandboxClient()
),
)
print(result.final_output)
asyncio.run(main())When to pick it: You need sandbox execution for long running tasks, want strong multi agent handoff patterns, or are already deep in the OpenAI ecosystem.
Routing OpenAI Agents SDK through Requesty
The OpenAI Agents SDK uses the standard OpenAI client interface. Point it at Requesty with one configuration change:
from openai import OpenAI
client = OpenAI(
api_key="your_requesty_api_key",
base_url="https://router.requesty.ai/v1",
)Now every agent call flows through Requesty. Use a routing policy to add automatic failover:
agent = SandboxAgent(
name="Analyst",
model="policy/gpt5-with-fallback", # Falls back to Claude if GPT-5 errors
instructions="Analyze the data.",
)See the OpenAI SDK framework guide for the full setup.
Google Agent Development Kit (ADK)
Google's ADK reached 2.0 Alpha in March 2026, introducing graph based workflows and the Agent2Agent (A2A) protocol for cross framework agent communication. ADK is available in Python, TypeScript, Go, and Java, making it the most polyglot option.
from google.adk import Agent
from google.adk.tools import google_search
agent = Agent(
name="researcher",
model="gemini-2.5-flash",
instruction="Research the topic thoroughly and cite your sources.",
tools=[google_search],
)ADK 2.0's graph workflows let you define deterministic execution paths where specific steps must happen in order, while still allowing the LLM to reason within each step:
from google.adk.workflows import Graph, Node
graph = Graph()
graph.add_node(Node("research", agent=research_agent))
graph.add_node(Node("draft", agent=writing_agent))
graph.add_node(Node("review", agent=review_agent))
graph.add_edge("research", "draft")
graph.add_edge("draft", "review")When to pick it: You need multi language support (Go, Java), want graph based deterministic workflows, or plan to use the A2A protocol for cross framework agent communication.
Routing Google ADK through Requesty
ADK supports custom model backends. Point it at Requesty's OpenAI compatible endpoint to access any model through ADK:
from openai import OpenAI
client = OpenAI(
api_key="your_requesty_api_key",
base_url="https://router.requesty.ai/v1",
)
# Use the client with ADK's OpenAI-compatible model interface
agent = Agent(
name="researcher",
model="google/gemini-2.5-pro", # Or any of 300+ models
instruction="Research the topic thoroughly.",
tools=[google_search],
)With Requesty, you can mix models across providers within the same ADK workflow. Your research agent can use google/gemini-2.5-pro for broad reasoning while your code agent uses anthropic/claude-sonnet-4-5 for precise edits, all tracked in a single analytics dashboard.
The provider lock in problem
Every SDK defaults to its own provider's models. Claude Agent SDK defaults to Claude. OpenAI Agents SDK defaults to GPT. Google ADK defaults to Gemini. In production, this creates three problems:
- Single point of failure. If Anthropic has an outage, every Claude Agent SDK agent stops working.
- No cost comparison. You cannot easily A/B test whether GPT-5 or Claude Sonnet gives better results for a given task without changing your infrastructure.
- Fragmented observability. Each provider has its own dashboard. You end up checking three consoles to understand your total AI spend.
How a unified gateway solves this
Routing all three SDKs through Requesty gives you:
Automatic failover — If your primary model errors, Requesty tries the next one in your fallback chain. Your agent never sees the failure.
Unified cost tracking — See spend across Claude, GPT, and Gemini in one dashboard. Break down costs by agent, user, or project.
Latency routing — Automatically route to the fastest available model based on real time performance data.
Centralized analytics — Track requests, tokens, latency, and errors across all three SDKs in a single view.
The setup is the same for every SDK: change the base URL and API key. No new dependencies, no SDK modifications.
Choosing the right SDK
Use this decision tree:
- Building coding agents or code automation? Start with Claude Agent SDK. Its built in file and bash tools are the most mature.
- Need sandboxed execution for untrusted workloads? OpenAI Agents SDK's native sandbox support is the strongest option.
- Running a polyglot stack (Go, Java, TypeScript)? Google ADK is the only SDK with first class support for all four languages.
- Want cross framework agent communication? Google ADK's A2A protocol lets agents built in different frameworks talk to each other.
- Need maximum model flexibility? Route any SDK through Requesty and swap models without code changes.
In practice, many teams use more than one SDK. A Claude Agent SDK coding agent handles pull request reviews. An OpenAI Agents SDK sandbox agent runs data analysis. A Google ADK orchestrator coordinates them via A2A. All three route through Requesty for unified billing, failover, and observability.
Getting started
-
Sign up for Requesty. Create an account at app.requesty.ai and grab your API key from the API Keys page.
-
Set up your SDK. Point your preferred SDK at Requesty by changing the base URL. See the examples above for each SDK.
-
Create a routing policy. Go to Routing Policies and create a fallback chain. For example: Claude Sonnet as primary, GPT-5 as fallback.
-
Monitor your agents. Open the Analytics dashboard to see real time cost, latency, and error rates across all your agents.
Further reading
- Quickstart — Route your first request through Requesty in under 2 minutes.
- Anthropic Agent SDKs — Full integration guide for the Claude Agent SDK with Requesty.
- Fallback Policies — Set up automatic model failover for production reliability.
- Cost Tracking — Monitor and optimize your AI spending across all providers.
- Agent Harness — Why your LLM gateway is the backbone of production agents.
- Agentic Coding Tools Compared — How Claude Code, Cursor, Codex, and Aider compare in 2026.
Frequently asked questions
- What are the three major agent SDKs in 2026?
- The three major agent SDKs are Claude Agent SDK (v0.2.132) from Anthropic with built-in coding tools, OpenAI Agents SDK (v0.15.1) with native sandbox execution and MCP support, and Google Agent Development Kit (ADK 2.0 Alpha) with graph-based workflows and the A2A protocol for cross-framework agent communication.
- How do I avoid provider lock-in with agent SDKs?
- Route all three SDKs through a unified AI gateway like Requesty by changing only the base URL and API key. This gives you automatic failover between providers, unified cost tracking, and the ability to swap models without changing agent code.
- Which agent SDK should I use for coding agents?
- Claude Agent SDK is the strongest choice for coding agents. Its built-in file read/write, bash execution, and code editing tools come from the Claude Code runtime and are the most mature in the market.
- Can I use different models from different providers in the same agent workflow?
- Yes. With Requesty as your gateway, you can use Claude for code editing, GPT-5 for reasoning, and Gemini for research within the same workflow. One API key, one base URL, 300+ models across all providers.
- What is the A2A protocol in Google ADK?
- Agent2Agent (A2A) is Google's protocol for cross-framework agent communication. It lets agents built in different SDKs (Claude Agent SDK, OpenAI Agents SDK, ADK) discover each other and delegate tasks, enabling multi-framework orchestration.
- MAY '26
Agent Harness: Why Your LLM Gateway Is the Backbone of Production Agents
The model is the brain. The harness is the body. In 2026 the agent harness has become the critical infrastructure layer for production AI. This post breaks down the stack and shows how an LLM gateway like Requesty fits in with real code examples.
- MAY '26
Agentic Coding Tools Compared (2026): Claude Code, Cursor, Codex, Aider, and the Gateway That Connects Them
Claude Code, Cursor 3, OpenAI Codex, Aider, Roo Code, and Cline are all shipping autonomous agents in 2026. Here is how they compare on architecture, pricing, benchmarks, and which LLM gateway they support.
- JAN '26
Routing policies 101: fallback, load balancing, and latency in production
The three routing-policy primitives every LLM gateway needs — fallback chains, weighted load balancing, and latency-based selection — and when to use each. Written for teams deploying multi-model production setups.
- APR '26
Agentic routing, benchmarked: Requesty adds 16ms of overhead, OpenRouter adds 55ms
Agentic routing is the decision layer inside a multi-agent LLM system that picks which model or sub-agent handles an incoming request. Here's what it does, what it costs, and how the gateways compare.

