Chat Template
Chat is the plainest agent-native starting point: a ChatGPT-style shell with chat at the center, a thread list, auth, and one example action — nothing domain-specific. It's for developers who want a real, deployable app to build their own agent and screens on top of, not a finished product for a specific job.
If you want a finished domain product shape, start from Calendar, Mail, Content, Forms, Analytics, or another domain template. If you truly do not need a browser UI yet, see Automation-First Apps.
How can I help?
Chat about anything. Add actions, components, pages, jobs, or your own backend.
What's in it
- Full-page chat on
/using the framework chat surface and durable chat threads. - Thread list in the app sidebar so users can create, reopen, rename, pin, and archive chats.
- Agent chat plugin pre-configured so the chat talks to the built-in app-agent loop once your agent credentials are set.
- Auth via Better Auth — login, signup, sessions, organizations. See Chat — runtime and admin surfaces for how sessions, orgs, and dev-mode email verification are configured.
- Actions directory with one example (
actions/hello.ts) plus the standardview-screenandnavigateactions. - The framework's core tables for chat threads, application state, settings, sessions, resources, and run history — plus a Database admin page and an Observability dashboard mounted by default, whether or not you ever open them. See Chat — runtime and admin surfaces.
- Live sync (
useDbSync) already wired so UI auto-refreshes when the agent writes to SQL. - Extensions routes mounted by default too, for sandboxed mini-apps your users build inside the chat later. See Extensions.
- AGENTS.md with chat-first guidance for adding actions, routes, skills, and application state.
What's not in it
- No domain tables or seed data.
- No dashboards, lists, charts, forms, or provider integrations.
- No domain-specific actions beyond the example stub.
That's the point. Chat is a thin, useful default shell for your own agent, not a domain product pretending to be generic.
create · reopen · pin · archive
framework chat surface on /
threads · application_state · settings · sessions · runs
login · orgs · sessions
A thin chat surface over the framework's standard runtime — actions, durable threads, live sync, and auth — with room to add your own UI.
When to pick it
- You want a basic app users can talk to immediately and then extend with actions and UI.
- You want the default Agent-Native on-ramp: chat first, then actions, native results, and app pages.
- You want to plug your own agent backend into a familiar chat UI while keeping Agent-Native's actions, state, auth, and deployment shape.
- You are prototyping a custom internal tool that does not match a domain template.
Scaffolding
npx @agent-native/core@latest create my-chat-app --standalone --template chatSee Getting started for cd, install, first run, and what the generated app looks like.
For automation-first work with no browser UI at all:
npx @agent-native/core@latest create my-agent --headlessUse it for scheduled jobs, queues, CLI loops, or external-agent workflows where chat and app pages are not useful yet. The key invariant stays the same: actions are the shared surface for chat, UI, HTTP, MCP, A2A, and CLI. See Automation-First Apps for that path in depth.
What's next
- Your first feature in Chat — the starter chat route, annotated, plus a full walkthrough of adding a real feature
- Chat — runtime and admin surfaces — core tables, auth, and the Database/Observability/Extensions pages that ship by default
- Getting Started — build the chat-first path from action to inline result to app page
- Templates — the Cloneable SaaS model, and every domain template to start from instead
- Agent Surfaces — chat, inline UI, app pages, embedded, automation, and external-agent patterns
- Actions — the action system chat and UI both call
- Native Chat UI — chat surface primitives and runtime options
- Automation-First Apps — no-browser workflows for jobs, queues, scripts, and external agents