AI
AI Agents
Default to no agent until model-directed tool use beats a simpler call or deterministic workflow and the team can operate its actions, state, approvals, evaluation, and recovery.
Recommendation
Start without an agent.
Use a single model call, retrieval step, AI SDK tool loop, or deterministic job until the model must choose and revise actions from tool feedback and that autonomy wins on representative evaluations.12
For: Application teams considering model-directed multi-step tool use after a simpler model call, retrieval step, or deterministic workflow fails measured requirements
Agents can adapt through uncertain multi-step work while adding nondeterministic paths, repeated model and tool calls, persistent state, a larger action surface, harder evaluation, higher cost, and recovery obligations.12345
Why there is no single default: Most generation, retrieval, classification, and fixed automation do not need autonomous control. After the no-agent gate passes, runtime choice changes with language, state graph, provider commitment, durability, tools, approvals, and operating ownership.
Define the workload and operating boundary
Use representative inputs, explicit acceptance criteria, current first-party facts, and a migration boundary before selecting a product.
Control model
Choose a compact provider loop, explicit state graph, role-based collaboration, or integrated TypeScript runtime from the workflow rather than branding.1
Actions and operations
Bound tool authorization, validation, idempotency, sandboxing, approvals, traces, evaluations, turn limits, latency, retry, and spend.1
Bounded routes
Each route belongs in the evaluation only when its model, integration, policy, and operating boundary fits the named workload.
OpenAI agent runtime
Evaluate OpenAI agent runtime
Choose OpenAI Agents SDK when OpenAI is deliberate and a compact provider-aligned runtime for tools, handoffs, sessions, approvals, guardrails, and tracing fits.
Verify: Verify provider coupling, durable session and run recovery, tool authorization, sandboxing, approval lifecycle, trace data, limits, and model or tool cost.1
Stateful agent graph
Evaluate Stateful agent graph
Choose LangGraph when long-running work needs explicit state transitions, durable checkpoints, mixed deterministic and agentic nodes, and fine-grained interruption.
Verify: The team must own graph design, persistence, idempotent side effects, state schema migration, deployment, observability, and framework complexity.2
Multi-agent Python
Evaluate Multi-agent Python
Choose CrewAI when a Python team has measured evidence that specialized role collaboration improves an otherwise bounded workflow.
Verify: Verify whether multiple roles beat a simpler agent, plus checkpointing, tools, approvals, tracing, hosted or self-managed ownership, latency, and token cost.3
TypeScript agent framework
Evaluate TypeScript agent framework
Choose Mastra when a TypeScript team intentionally wants agents, workflows, memory, storage, and observability in one application framework.
Verify: Verify stable versus changing surfaces, persistence, memory tenancy, snapshot lifecycle, tracing, provider fidelity, deployment, and hosted-service cost.4
Official resources
Verify current model, API, SDK, product, pricing, policy, data, region, lifecycle, and operating boundaries in first-party material.
Related tools
Starter stacks
Sources
Official documentation supports current product boundaries and verification points; route selection remains a bounded editorial judgment.
- 1OpenAI Agents SDK official documentation
OpenAI Agents · Accessed Official
- 2LangGraph official documentation
LangGraph · Accessed Official
- 3CrewAI official documentation
CrewAI · Accessed Official
- 4Mastra official documentation
Mastra · Accessed Official
- 5AI SDK official documentation
AI · Accessed Official
- 6Building effective agents
Anthropic · Accessed Official
- 7OpenAI Agents SDK tracing
OpenAI · Accessed Official