compare
Which agent SDK should you pick?
agentlib next to the four SDKs you're most likely evaluating. The matrix below is factual — pick the column whose constraints fit yours.
| Capability | agentlib | Claude SDK | OpenAI Agents | Mastra | LangChain |
|---|---|---|---|---|---|
| Native iOS + Android | ● Dart, no subprocess | ○ Python/TS, Node subprocess | ○ Node/JS only | ○ Node/TS backend | ◐ via wrappers |
| On-device model providers | ● Foundation Models · Gemini Nano · llama.cpp · MediaPipe | ○ Anthropic cloud only | ○ OpenAI cloud | ○ cloud only | ◐ via separate libs |
| Subagents | ● sync · parallel · background | ◐ sync only | ◐ via handoffs | ● agent-as-tool | ◐ via LCEL |
| Progressive-disclosure skills | ● name+desc only until invoked | ● same shape | ○ — | ○ — | ○ — |
| Snapshots (fork / revert) | ● public API, SQLite-backed | ◐ internal checkpoints | ○ — | ◐ suspend/resume | ○ — |
| Hooks (interception points) | ● 21 hooks | ◐ ~10 hooks | ◐ guardrails only | ◐ lifecycle | ○ — |
| Unix-shell-shaped CLI surface | ● Sh mini-shell · /bin/* CLIs | ◐ real bash via Node | ○ JSON-RPC only | ○ JSON-RPC only | ○ JSON-RPC only |
| MCP transports | ● HTTP · WebSocket | ◐ HTTP/stdio | ○ — | ● HTTP | ○ — |
| Suspend / resume + push-resume | ● serialisable RunState · APNs/FCM | ○ — | ○ — | ◐ suspend/resume | ○ — |
| License | ● MIT | ● MIT | ● Apache-2.0 | ● MIT | ● MIT |
vs Claude Agent SDK
Anthropic's official SDK — Python/TS, cloud-only, mature.
Read the comparison → vs OpenAI Agents SDK
OpenAI's handoff-first SDK — Node/JS, cloud-only.
Read the comparison → vs Mastra
TypeScript backend agent framework — server-side, cloud.
Read the comparison → vs LangChain
Python/JS chains + RAG — pipeline-first.
Read the comparison →