Agent-Native is a TypeScript framework for building applications that expose the same functionality to people and to AI agents. Its central construct is the Action: you declare a piece of work once with defineAction, giving it a Zod schema and a run function, and the framework makes that action callable from the app's UI, from the built-in agent, over HTTP, through MCP, via A2A, and from the command line.
The framework ships an agent runtime alongside the app layer, so chat, tool calling, skills, memory, background jobs, observability, and handoffs are part of the same project rather than a separate service. It is backend agnostic: persistence goes through any Drizzle-supported SQL database, and the app deploys to any Nitro-compatible host.
You start a project with npx @agent-native/core@latest create my-app, either from scratch or from one of the template apps, and then let the agent extend it. Templates include Clips (screen recordings an AI can watch), Plans (a visual plan mode for Codex, Claude Code, and other coding agents), Design (an HTML prototyping studio producing Alpine and Tailwind designs), Content (a local Markdown/MDX editor with agent drafting and publishing), Slides (branded decks generated by an agent), Analytics (an open-source product-analytics app), and Chat (a minimal chat front end for your own agent). Flags such as --template chat, --headless, and --standalone skip the interactive prompt.
Features
- Actions: one schema-validated definition serves the UI, agent, HTTP, MCP, A2A, and CLI surfaces
- Agent runtime: chat, tools, skills, memory, jobs, observability, and handoffs are included in the framework
- Database choice: any SQL database supported by Drizzle
- Hosting choice: any Nitro-compatible host
- Toolkits: reusable building blocks for collaboration, sharing, settings, teams, and observability
- Template apps: Clips, Plans, Design, Content, Slides, Analytics, and Chat as customisable starting points
- Scaffolding CLI: create command with template, headless, and standalone modes
