// the find
BuilderIO/agent-native
A framework for building agentic apps
Agent-Native is Builder.io's TypeScript framework for apps where an LLM agent and a human UI share the same backend logic: you define a capability once with `defineAction`, and it's exposed as an agent tool, a React hook, an HTTP route, MCP, A2A, and a CLI command. It's aimed at teams building 'agent + UI' products (their own Clips, Mail, Slides, etc. apps are the reference implementations) rather than people who just want a chatbot.
One action definition backed by a Zod schema drives every surface (tool call, React `useActionQuery`, REST, MCP, A2A), so you're not hand-syncing validation and business logic between an API handler and a separate agent-tool wrapper. It ships with a real persistence story — Postgres in production, PGlite for local dev — on any Nitro-compatible host, instead of assuming you'll bolt on your own DB layer. The nine example apps (Mail, Calendar, Analytics, Design, etc.) are full working implementations, not toy demos, so you can see the action/UI/agent split applied to actual product surfaces.
The framework brings its own vocabulary and plugin system (agent-native-design, visual-plan, turn-into-app skills, custom CLI scaffolding) — adopting it means learning Builder's conventions on top of TypeScript/Nitro, not just importing a library. 'Bring your own LLM' is claimed but the README gives no detail on how model calls are actually abstracted or which providers are wired up by default. There's no testing guidance in the README despite actions fanning out across six different surfaces (HTTP, MCP, A2A, CLI, agent, UI) — verifying consistent behavior across all of them looks like it'd require framework-specific test tooling that isn't documented. Structuring an app around `defineAction` and Nitro is a meaningful commitment; there's no migration path mentioned if you outgrow it.