Better Agent
Open-source TypeScript agent framework for composing durable multi-provider AI agents.
If your team lives in TypeScript and needs resumable runs, AG-UI streaming, and real auth context, Better Agent saves you from hand-rolling orchestration around your model provider. The composition model and the Drizzle/Prisma/Kysely/Redis storage adapters are the parts you'd otherwise write yourself. Just know it's a framework, not a product — and the API is still moving through beta.
Verified 4d ago · liveness 75/100 · cite: rightaichoice.com/tools/better-agent
- TypeScript developers building production agents with complex multi-step orchestration
- Teams needing durable, resumable runs and thread continuation across requests
- Developers who want end-to-end type safety and composable agent definitions
- Projects requiring multi-provider model flexibility and Vercel AI SDK integration
- Non-TypeScript developers working mainly in Python, Go, or other languages
- Simple single-turn chatbot use cases with no orchestration or durability needs
- Teams wanting a managed cloud platform instead of self-hosted infrastructure
We scan live Reddit threads, YouTube comments, X posts, G2 reviews and other communities — and hand you an honest verdict in under a minute.
- Honest verdict, not marketing
- Real pros & cons from real users
- Attributed quotes with receipts
3 free scans · no card needed
Skip Better Agent if your stack is not TypeScript, if you want a hosted platform to operate the runtime for you, or if you need a stable, non-beta API surface today.
You self-host everything the framework depends on — database, auth, provider SDKs, and the server runtime — so the operational cost sits with your team, not a vendor.
Better Agent is distributed as an open-source npm package, so there is no seat or subscription line item — your real cost is engineering time plus whatever you already pay for model providers, database, and hosting. That makes it cheaper than a managed agent platform on subscription spend and more expensive in setup effort, since you build and operate the stack yourself.
In short
Better Agent — Open-source TypeScript agent framework for composing durable multi-provider AI agents. Best for TypeScript developers building production agents with complex multi-step orchestration, Teams needing durable, resumable runs and thread continuation across requests, Developers who want end-to-end type safety and composable agent definitions. Free to use.
What's new in Better Agent
Checked 4 days agoAcross the latest 5 updates: 1 feature update, 1 launch and 3 changelog entries.
v0.2.0-beta.5
Preserves reasoning messages in prompt replay for the ai-sdk package, fixing a replay bug reported in issue #47.
v0.2.0-beta.4 adds agent-scoped run control
Adds agent-scoped run control and wraps ai-sdk stream errors as BetterAgentError, so stream failures surface as typed framework errors.
v0.2.0-beta.3 packages dotfile template on create
The create flow now packages the dotfile template, fixing scaffolding in the npm/bun create better-agent commands.
v0.2.0-beta.2 tightens database adapter peer dependencies
Fixes type inference for client tools and tightens database adapter peer dependencies for Drizzle, Prisma, Kysely, and Redis.
v0.2 beta adds AG-UI, AI SDK provider, memory and durable storage
v0.2 beta brings AG-UI support for messages, tools, state, events, and interrupts, Vercel AI SDK provider support, memory, auth context, durable storage, new provider packages, and database adapters — and changes several APIs from v0.1.
What people actually say about Better Agent — is it worth it?
We ran a structured research pass across product reviews, community discussions, and post-purchase forum threads to surface the patterns vendors won't publish themselves. Below: the recurring strengths, the hidden costs people mention most, and the cohort that consistently regrets adopting this tool.
71 mentions across 4 sources (Hacker News, YouTube, GitHub, Lemmy) · researched Aug 13, 2026.
Average across the 4 sources that answered — each source counts once, not each post.
- +End-to-end type safety across agent definitions and tools.
- +Composable agents built from smaller, reusable pieces.
- +Durable runs with resume, replay, and thread continuation.
- +Human-in-the-loop approvals for sensitive tool actions.
- +Multi-provider support: OpenAI, Anthropic, Gemini, Ollama, and more.
- −Steep learning curve for non-TypeScript developers.
- −Beta releases change APIs frequently, causing maintenance burden.
- −Requires manual setup of storage adapters and self-hosting infrastructure.
- −Little community documentation or tutorials beyond basic examples.
- −Not suitable for quick prototypes; time-to-first-agent is slow.
- • Self-hosting infrastructure costs (servers, storage, etc.)
- • Time investment for setup and maintenance is significant
Viability Score
How well maintained and how widely used is Better Agent? Built from what the vendor actually publishes (docs, changelog, tutorials, integrations, pricing), whether the site is live, and how much real users discuss it. How we calculate this
Last calculated: October 2026
How we score →Key Features
- Compose agents from smaller agents, tools, and shared runtime primitives
- Schema-validated agent context for end-to-end TypeScript type safety
- Swap models with one line across providers with the same API
- Multi-provider support: OpenAI, Anthropic, Google Gemini, xAI, Ollama, OpenRouter, Cloudflare Workers AI
- Vercel AI SDK provider support
- Stream standard AG-UI events for messages, tools, approvals, interrupts, and final results
- Durable runs: resume interrupted runs, replay streams, continue threads across requests
- Human-in-the-loop approvals: pause before a tool runs, then approve, reject, or resume
- First-class auth context resolved once and carried across access rules, memory, plugins, and tools
- Plugin system for guards, hooks, middleware, endpoints, and shared behavior
- Storage adapters for Drizzle, Prisma, Kysely, and Redis
- MCP support for connecting external tools
- Call server tools, pause for client tools, or pass through hosted provider tools
- Memory for persisted threads and conversation messages
About Better Agent
Better Agent is an open-source TypeScript agent framework for developers who want to compose production AI agents out of smaller parts instead of wiring orchestration by hand. You define an agent with a schema-validated context (the homepage example uses a Zod object with userId and a plan enum), attach tools and an instruction function, and the runtime drives the flow. Agents can be built from smaller agents, tools, shared runtime primitives, memory, MCP connections, and plugins behind one consistent API. It runs inside your existing stack rather than replacing it: Node.js, Bun, Deno, and Cloudflare on the server side, and Astro, Next.js, Nuxt, Preact, Remix, Solid, and Svelte on the app side. Runs are durable: resume interrupted runs, replay streams, and continue threads across requests, backed by storage adapters for Drizzle, Prisma, Kysely, and Redis. Multi-provider support lets you swap models with one line across OpenAI, Anthropic, Google Gemini, xAI, Ollama, OpenRouter, Cloudflare Workers AI, and the Vercel AI SDK. The AG-UI event standard streams messages, tool calls, approvals, interrupts, and final results to the client in one shape. Human-in-the-loop is a first-class pattern: pause before a sensitive tool executes, then approve, reject, or resume from the client. Auth resolves request identity once and carries it through access rules, memory, plugins, and tools, and a plugin system adds guards, hooks, middleware, and endpoints. Scaffold with `npm create better-agent` or `bun create better-agent`. It's self-hosted, so you own the infrastructure. Pick it when durability, type safety, and composability matter and you're comfortable running the stack. If you want a managed cloud or minimal setup, look at a hosted agent platform instead.
Behind the Verdict
Better Agent earns its place when orchestration is the hard part. If you're stitching agents, tools, memory, and approvals together across requests and your database, this hands you the primitives instead of a black box. Where it bites: the API is still churning. v0.2.0-beta.5 (Jun 1, 2026) fixed a reasoning-replay bug, beta.4 added agent-scoped run control and wrapped ai-sdk stream errors as BetterAgentError, and beta.2 tightened database adapter peer deps. v0.2 also changed several APIs from v0.1, so budget migration time if you shipped on the earlier line. We'd reach for it on multi-step agents that need to survive a request boundary — a support agent that pauses for a human before it creates a ticket, for example, or a workflow that resumes after an interrupt without losing the thread. The AG-UI event shape and the human-in-the-loop pattern are the concrete wins there. Pass on it for a single-turn chatbot, a weekend prototype, or if your team writes Python. And if you want someone else to run the servers, a hosted agent platform is the honest answer. The closest alternative is the Vercel AI SDK — and note Better Agent consumes it as a provider rather than competing with it. Where they differ is durability and composition: AI SDK gives you the model calls, Better Agent adds resumable threads, storage adapters, and auth context on top.
Researching Better Agent? Get your full AI stack in 60 seconds.
Free, no signup — tell us your goal and get tools matched to your budget & existing stack.
Real-world workflow fit
Concrete scenarios for the personas Better Agent actually fits — and what changes day-one when you adopt it.
Scaffold with `npm create better-agent`, define a support agent with a Zod context schema (userId, plan), attach searchDocs and createTicket tools, and point it at OpenAI via the provider package.
Outcome: A typed agent running inside the existing Next.js app, with AG-UI events streaming messages and tool calls to a React client.
Pause before a sensitive tool executes, surface the interrupt through the AG-UI stream, and let the client approve, reject, or resume the run — with the run state persisted in Redis or Postgres via Drizzle or Prisma.
Outcome: Runs survive across requests and can be replayed, so an interrupted approval doesn't lose thread history.
Add the plugin primitives for guards, hooks, middleware, and endpoints — the homepage lists rateLimit, logging, sandbox, and ipAllowlist — and resolve request identity once through the auth context.
Outcome: Access rules, memory scope, and tool calls all key off the same identity, without per-feature auth wiring.
Use Cases
- Build customer support agents that maintain context across sessions and escalate to humans when needed.
- Create code generation agents that stream results and let users approve before executing sensitive operations.
- Develop research agents that compose multiple sub-agents for web search, document analysis, and summarization.
- Implement durable chatbot experiences that can be paused and resumed across requests without losing state.
- Build multi-step workflow agents with conditional branching and tool calls, all with full type safety.
- Wire MCP-connected external tools into a typed agent that runs inside your existing Next.js or Hono app.
- Add plugin-based guards such as rate limiting, logging, sandboxing, and IP allowlisting around agent endpoints.
Models Under the Hood
as of 2026-10-18
Limitations
- Better Agent is an open-source TypeScript framework that sits inside your existing application stack, so it requires TypeScript and a server-side runtime such as Node.js, Bun, Deno, or Cloudflare.
- As of v0.2.0-beta.5 (Jun 1, 2026) it is still in beta, and the changelog states plainly that v0.2 changed several APIs from v0.1 — persistence now maps across memory, storage, runs, and streams, providers moved to new provider packages, and auth should use the new auth context and agent access docs.
- You self-host and bring your own framework, database, auth, and provider SDKs, and the scrape mentions no managed cloud offering.
as of 2026-10-04
Verification history
We have re-verified Better Agent 9 times since . Each pass re-reads the vendor's own pages and re-checks every listed field against that evidence; passes where nothing had changed are marked as such.
- — re-verified summary, description, our verdict, our analysis, pricing model, pricing tiers, features, integrations, who it suits, who should skip it
- — re-verified summary, description, our verdict, our analysis, pricing model, pricing tiers, features, integrations, who it suits, who should skip it
- — re-verified summary, description, our verdict, our analysis, pricing model, pricing tiers, features, integrations, who it suits, who should skip it
- — re-verified summary, description, our verdict, our analysis, pricing model, pricing tiers, features, integrations, who it suits, who should skip it
- — re-verified summary, description, our verdict, our analysis, pricing model, pricing tiers, features, integrations, who it suits, who should skip it
- — re-verified summary, description, our verdict, our analysis, pricing model, pricing tiers, features, integrations, who it suits, who should skip it
Showing the 6 most recent of 9 verification passes.
Free to cite with attribution — this page re-verifies continuously.
Where the pricing makes sense
The company stage and team size where Better Agent's pricing actually pencils out — and where peers do it cheaper.
Better Agent is distributed as an open-source npm package, so there is no seat or subscription line item — your real cost is engineering time plus whatever you already pay for model providers, database, and hosting. That makes it cheaper than a managed agent platform on subscription spend and more expensive in setup effort, since you build and operate the stack yourself.
Setup time & first value
How long it actually takes to get something useful out of Better Agent — broken out by persona, not the marketing-page minute.
TypeScript developer on a supported runtime: scaffold with `npm create better-agent` or `bun create better-agent`, then add a provider package and a storage adapter — first agent running in under an hour if your app and database already exist. Teams migrating from v0.1: budget days, not hours, since v0.2 changed provider, persistence, and auth APIs. Non-TypeScript teams: not applicable.
Switching to or from Better Agent
How to bring data in from common predecessors and how to get it back out — written for the switcher, not the buyer.
- →From v0.1 of Better Agent: follow the v0.2 migration docs for persistence (memory, storage, runs, streams), the new provider packages, and the new auth context and agent access docs.
- →From hand-rolled orchestration around a provider SDK: move your agent definitions onto defineAgent with a schema-validated context and keep your existing tools.
- →From a Vercel AI SDK-only setup: add the AI SDK provider so AI SDK-compatible models run through the same composable runtime.
- ↗To a managed agent platform: expect to rewrite orchestration, since your agents, plugins, and storage adapters are framework-specific.
- ↗To a bare provider SDK: you keep your tool functions but lose durable runs, AG-UI streaming, and the plugin system.
Integrations
Resources & Guides
Tutorials & Learning
YouTube returned 6 videos for “Better Agent”, and we withheld 6: 6 did not mention Better Agent. We are showing none, because we could not prove any of them are about Better Agent.
Official links
Tools that pair well with Better Agent
Common stack mates teams adopt alongside Better Agent, with the specific reason each pairing earns its keep.
Mastra
Mastra is an open-source TypeScript agent framework for durable agents, typed workflows, and built-in evals.
MetaGPT
Open-source multi-agent framework that assigns PM, architect, engineer and QA roles to LLMs for structured software tasks
Semantic Kernel
Microsoft's open-source SDK for building AI agents and copilots with plugins, memory, and multi-agent orchestration.
Featured Head-to-Head Comparisons
Better Agent vs Spider Cloud
Spider Cloud and Better Agent solve completely different problems. If you need fast, cost-effective web scraping for your AI agents, pick Spider Cloud. If you're building a production-grade TypeScript agent framework with durability and type safety, choose Better Agent. They can even be used together: Spider Cloud fetches the data, Better Agent orchestrates the logic.
Better Agent vs Temporal Ai
For TypeScript-focused teams wanting a lightweight, type-safe agent framework, Better Agent is the clear choice. But if you need multi-language support, battle-tested durability, and a managed cloud option for mission-critical workflows, Temporal AI is more robust. Smaller teams with simple needs may find Better Agent easier, while enterprise-scale reliability demands Temporal.
Better Agent vs Presto Voice
If you run a multi-location QSR drive-thru and want a turnkey voice AI with proven revenue lift, Presto Voice is the clear choice—but it requires a sales call. If you're a TypeScript developer building custom, durable AI agents with full control and zero licensing cost, Better Agent's open-source framework is unmatched. They address completely different problems: one is a vertical SaaS, the other a developer tool.
Alternatives to Better Agent
View allMastra
Mastra is an open-source TypeScript agent framework for durable agents, typed workflows, and built-in evals.
MetaGPT
Open-source multi-agent framework that assigns PM, architect, engineer and QA roles to LLMs for structured software tasks
Semantic Kernel
Microsoft's open-source SDK for building AI agents and copilots with plugins, memory, and multi-agent orchestration.
Frequently Asked Questions
Categories
Best-of guides
Used Better Agent? Help shape our editorial sentiment research.