@agent-native/core 0.148.0 → 0.149.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/corpus/README.md +1 -1
- package/corpus/templates/analytics/changelog/2026-08-10-wide-tables-in-analytics-chat-now-scroll-horizontally-within.md +6 -0
- package/corpus/templates/calendar/app/components/calendar/DayView.tsx +13 -53
- package/corpus/templates/calendar/app/components/calendar/WeekView.tsx +11 -70
- package/corpus/templates/calendar/app/lib/event-layout.ts +122 -0
- package/corpus/templates/calendar/app/routes/_app.availability.tsx +1 -1
- package/corpus/templates/calendar/changelog/2026-08-10-opening-availability-settings-from-the-agent-lands-on-the-av.md +6 -0
- package/corpus/templates/calendar/vitest.config.ts +6 -1
- package/corpus/templates/clips/actions/lib/audio-only-transcription.ts +3 -1
- package/corpus/templates/clips/app/components/player/video-player.tsx +44 -4
- package/corpus/templates/clips/changelog/2026-08-10-fixed-transcription-failures-for-recordings-without-captured.md +6 -0
- package/corpus/templates/clips/changelog/2026-08-10-mobile-clips-can-now-enter-fullscreen-on-iphone-safari.md +6 -0
- package/corpus/templates/content/actions/_property-utils.ts +11 -1
- package/corpus/templates/content/actions/view-screen.ts +62 -12
- package/corpus/templates/content/server/plugins/agent-chat.ts +2 -0
- package/corpus/templates/design/.agents/skills/design-templates/SKILL.md +22 -0
- package/corpus/templates/design/AGENTS.md +3 -0
- package/corpus/templates/design/actions/create-design-from-template.ts +19 -0
- package/corpus/templates/design/actions/get-design-snapshot.ts +18 -0
- package/corpus/templates/design/actions/get-design-template.ts +178 -0
- package/corpus/templates/design/actions/list-designs.ts +3 -1
- package/corpus/templates/design/actions/view-screen.ts +31 -0
- package/corpus/templates/design/app/components/design/MultiScreenCanvas.tsx +225 -214
- package/corpus/templates/design/app/components/design/multi-screen/types.ts +3 -0
- package/corpus/templates/design/app/i18n-data.ts +78 -0
- package/corpus/templates/design/app/lib/design-authors.ts +64 -0
- package/corpus/templates/design/app/pages/Index.tsx +114 -4
- package/corpus/templates/design/app/pages/design-editor/generation-prompt-directives.ts +1 -0
- package/corpus/templates/design/changelog/2026-08-07-alt-dragging-an-element-to-copy-it-now-keeps-the-copy-visibl.md +6 -0
- package/corpus/templates/design/changelog/2026-08-07-design-cards-now-show-who-created-each-design-with-a-filter-.md +6 -0
- package/corpus/templates/design/changelog/2026-08-07-drawing-a-shape-on-the-overview-canvas-now-keeps-the-shape-s.md +6 -0
- package/corpus/templates/design/changelog/2026-08-07-hold-option-alt-while-dragging-a-frame-on-the-overview-canva.md +6 -0
- package/corpus/templates/design/server/lib/design-template-data.ts +143 -0
- package/corpus/templates/design/server/plugins/agent-chat.ts +1 -0
- package/corpus/templates/forms/AGENTS.md +2 -2
- package/corpus/templates/forms/actions/create-form.ts +1 -1
- package/corpus/templates/forms/actions/update-form.ts +5 -5
- package/corpus/templates/forms/changelog/2026-08-10-forms-now-keep-agent-applied-field-changes-visible-after-an-.md +6 -0
- package/corpus/templates/forms/changelog/2026-08-10-published-form-links-always-use-the-working-public-form-url.md +6 -0
- package/corpus/templates/forms/server/plugins/agent-chat.ts +2 -2
- package/corpus/templates/slides/AGENTS.md +4 -3
- package/corpus/templates/slides/actions/import-google-slides-reference.ts +56 -10
- package/corpus/templates/slides/app/components/editor/EditorSidebar.tsx +12 -74
- package/corpus/templates/slides/app/components/editor/GeneratingSlidePreview.tsx +5 -1
- package/corpus/templates/slides/app/components/editor/GoogleDriveConnectionCta.tsx +15 -4
- package/corpus/templates/slides/app/components/editor/NewDeckReferenceStep.tsx +116 -55
- package/corpus/templates/slides/app/components/editor/SlideEditor.tsx +1 -0
- package/corpus/templates/slides/app/components/onboarding/FirstDeckOnboardingFlow.tsx +143 -18
- package/corpus/templates/slides/app/i18n/en-US.ts +6 -0
- package/corpus/templates/slides/app/lib/generation-state.ts +7 -1
- package/corpus/templates/slides/app/pages/DeckEditor.tsx +32 -14
- package/corpus/templates/slides/app/pages/Index.tsx +110 -128
- package/corpus/templates/slides/changelog/2026-08-10-imported-reference-decks-now-show-clear-success-and-stay-sel.md +6 -0
- package/corpus/templates/slides/changelog/2026-08-10-pasted-google-slides-links-import-after-reconnecting-google-.md +6 -0
- package/corpus/templates/slides/server/handlers/google-docs-auth.ts +4 -0
- package/corpus/templates/slides/server/lib/google-docs-oauth.ts +13 -0
- package/corpus/templates/slides/server/plugins/agent-chat.ts +1 -1
- package/dist/agent/engine/registry.d.ts +8 -2
- package/dist/agent/engine/registry.js +63 -29
- package/dist/agent/production-agent.js +7 -0
- package/dist/agent/run-manager.d.ts +5 -4
- package/dist/agent/run-manager.js +6 -5
- package/dist/cli/claude-code-participant.d.ts +2 -1
- package/dist/cli/claude-code-participant.js +19 -0
- package/dist/cli/code-agent-executor.js +223 -0
- package/dist/cli/create-workspace.js +3 -3
- package/dist/cli/create.d.ts +3 -2
- package/dist/cli/create.js +20 -24
- package/dist/client/AgentPanel.js +8 -4
- package/dist/client/AssistantChat.js +34 -1
- package/dist/client/agent-chat-adapter.d.ts +1 -0
- package/dist/client/agent-chat-adapter.js +10 -2
- package/dist/client/blocks/library/diagram.js +1 -1
- package/dist/client/blocks/library/sanitize-html.js +66 -2
- package/dist/client/blocks/library/wireframe-kit.js +69 -0
- package/dist/client/chat/markdown-renderer.d.ts +1 -0
- package/dist/client/chat/markdown-renderer.js +4 -0
- package/dist/client/chat/message-components.d.ts +1 -0
- package/dist/client/chat/message-components.js +9 -1
- package/dist/client/chat/tool-call-display.d.ts +8 -0
- package/dist/client/chat/tool-call-display.js +30 -21
- package/dist/client/chat-first/app-pane.js +1 -1
- package/dist/client/chat-first/apps-rail.d.ts +1 -1
- package/dist/client/chat-first/apps-rail.js +12 -12
- package/dist/client/chat-first/chat-history.d.ts +1 -1
- package/dist/client/chat-first/chat-history.js +2 -0
- package/dist/client/chat-first/copy.js +1 -0
- package/dist/client/chat-first/primary-nav.js +1 -1
- package/dist/client/chat-first/types.d.ts +1 -0
- package/dist/client/resources/McpConnectionSuggestion.js +2 -2
- package/dist/client/settings/SettingsTabsPage.d.ts +3 -1
- package/dist/client/settings/SettingsTabsPage.js +2 -2
- package/dist/client/sse-event-processor.d.ts +8 -0
- package/dist/client/sse-event-processor.js +13 -6
- package/dist/collab/struct-routes.d.ts +1 -1
- package/dist/deploy/build.d.ts +5 -7
- package/dist/deploy/build.js +19 -12
- package/dist/localization/default-messages.js +1 -1
- package/dist/observability/routes.d.ts +3 -3
- package/dist/provider-api/actions/provider-api.d.ts +2 -2
- package/dist/scripts/call-agent.js +3 -3
- package/dist/scripts/describe-workspace-apps.js +1 -1
- package/dist/secrets/routes.d.ts +6 -6
- package/dist/server/agent-capabilities.js +0 -0
- package/dist/server/agent-chat/context-tools.js +1 -1
- package/dist/server/agent-chat/prompt-resources.js +1 -1
- package/dist/server/agent-chat-plugin.js +1 -1
- package/dist/server/auth.js +190 -42
- package/dist/server/better-auth-migrations.js +53 -0
- package/dist/server/http-response-telemetry.js +7 -1
- package/dist/server/onboarding-html.js +119 -33
- package/dist/server/transcribe-voice.d.ts +1 -1
- package/dist/shared/password-policy.d.ts +2 -1
- package/dist/shared/password-policy.js +2 -1
- package/dist/styles/agent-conversation.css +20 -3
- package/dist/styles/agent-native.css +14 -2
- package/dist/styles/blocks.css +132 -0
- package/dist/templates/default/app/i18n/ar-SA.ts +1 -1
- package/dist/templates/default/app/i18n/de-DE.ts +1 -1
- package/dist/templates/default/app/i18n/en-US.ts +1 -1
- package/dist/templates/default/app/i18n/es-ES.ts +1 -1
- package/dist/templates/default/app/i18n/fr-FR.ts +1 -1
- package/dist/templates/default/app/i18n/hi-IN.ts +1 -1
- package/dist/templates/default/app/i18n/ja-JP.ts +1 -1
- package/dist/templates/default/app/i18n/ko-KR.ts +1 -1
- package/dist/templates/default/app/i18n/pt-BR.ts +1 -1
- package/dist/templates/default/app/i18n/zh-CN.ts +1 -1
- package/dist/templates/default/app/i18n/zh-TW.ts +1 -1
- package/dist/templates/default/pnpm-workspace.yaml +1 -0
- package/dist/templates/workspace-root/pnpm-workspace.yaml +2 -0
- package/docs/content/actions.mdx +4 -1
- package/docs/content/agent-surfaces.mdx +8 -6
- package/docs/content/automations.mdx +1 -1
- package/docs/content/cloneable-saas.mdx +6 -6
- package/docs/content/database.mdx +6 -1
- package/docs/content/deployment.mdx +10 -8
- package/docs/content/docs-components.mdx +22 -14
- package/docs/content/drop-in-agent.mdx +1 -1
- package/docs/content/environment-variables.mdx +4 -3
- package/docs/content/getting-started-actions.mdx +5 -4
- package/docs/content/getting-started-pages.mdx +7 -6
- package/docs/content/getting-started.mdx +4 -3
- package/docs/content/notifications.mdx +6 -6
- package/docs/content/progress.mdx +5 -5
- package/docs/content/routing.mdx +3 -1
- package/docs/content/server-database.mdx +13 -4
- package/docs/content/server-overview.mdx +9 -9
- package/docs/content/server-plugins.mdx +10 -4
- package/docs/content/server-routes.mdx +7 -2
- package/docs/content/tracking.mdx +4 -4
- package/docs/content/what-is-agent-native.mdx +4 -4
- package/package.json +2 -2
- package/src/templates/default/app/i18n/ar-SA.ts +1 -1
- package/src/templates/default/app/i18n/de-DE.ts +1 -1
- package/src/templates/default/app/i18n/en-US.ts +1 -1
- package/src/templates/default/app/i18n/es-ES.ts +1 -1
- package/src/templates/default/app/i18n/fr-FR.ts +1 -1
- package/src/templates/default/app/i18n/hi-IN.ts +1 -1
- package/src/templates/default/app/i18n/ja-JP.ts +1 -1
- package/src/templates/default/app/i18n/ko-KR.ts +1 -1
- package/src/templates/default/app/i18n/pt-BR.ts +1 -1
- package/src/templates/default/app/i18n/zh-CN.ts +1 -1
- package/src/templates/default/app/i18n/zh-TW.ts +1 -1
- package/src/templates/default/pnpm-workspace.yaml +1 -0
- package/src/templates/workspace-root/pnpm-workspace.yaml +2 -0
|
@@ -85,7 +85,7 @@ The `server/` directory is the infrastructure layer of an agent-native app. It h
|
|
|
85
85
|
|
|
86
86
|
## Where the Server Fits {#role}
|
|
87
87
|
|
|
88
|
-
In a traditional web app, the server is where most logic lives. Business rules, data access, and presentation all happen inside route handlers. Agent-native apps work differently. Logic lives in actions, which the agent and UI share as equal partners. The server's job is coordination:
|
|
88
|
+
In a traditional web app, the server is where most logic lives. Business rules, data access, and presentation all happen inside route handlers. Agent-native apps work differently. Logic lives in actions, which the agent and UI share as equal partners. The server's job is coordination: apply app-owned database migrations, configure authentication, mount the agent loop, and handle the narrow set of HTTP concerns that actions can't express on their own.
|
|
89
89
|
|
|
90
90
|
<Diagram id="doc-block-server-overview-2" title="Traditional server vs. Agent Native">
|
|
91
91
|
|
|
@@ -194,19 +194,19 @@ Browser requests, the agent loop, and external API clients all route through the
|
|
|
194
194
|
|
|
195
195
|
These are the directories and files inside `server/` that every agent-native app ships. Each corresponds to a specific piece of the server layer: what it does, when to reach for it, and how it connects to the rest of the framework.
|
|
196
196
|
|
|
197
|
-
| Page | What it covers
|
|
198
|
-
| ----------------------------------------- |
|
|
199
|
-
| **[Database](/docs/server-database)** | Schema definition with `table()` helpers, `getDb`, and ownable table patterns
|
|
200
|
-
| **[Middleware](/docs/server-middleware)** | Auth guards in `server/middleware/` and why they run there instead of in a plugin
|
|
201
|
-
| **[Plugins](/docs/server-plugins)** |
|
|
202
|
-
| **[Routes](/docs/server-routes)** | File-based routes, the SSR catch-all, and scoping custom routes to the request user
|
|
197
|
+
| Page | What it covers |
|
|
198
|
+
| ----------------------------------------- | ------------------------------------------------------------------------------------ |
|
|
199
|
+
| **[Database](/docs/server-database)** | Schema definition with `table()` helpers, `getDb`, and ownable table patterns |
|
|
200
|
+
| **[Middleware](/docs/server-middleware)** | Auth guards in `server/middleware/` and why they run there instead of in a plugin |
|
|
201
|
+
| **[Plugins](/docs/server-plugins)** | Startup plugins for auth and agent-chat, plus optional app-owned database migrations |
|
|
202
|
+
| **[Routes](/docs/server-routes)** | File-based routes, the SSR catch-all, and scoping custom routes to the request user |
|
|
203
203
|
|
|
204
204
|
## Nitro {#nitro}
|
|
205
205
|
|
|
206
206
|
[Nitro](https://nitro.build) is the server toolkit that powers the agent-native HTTP layer. Most of what you'll configure in `server/` is Nitro: file-based routes, startup plugins, and middleware.
|
|
207
207
|
|
|
208
208
|
- **File-based routing**: the filename maps directly to an HTTP method and URL path, with no registration needed. `server/routes/api/health.get.ts` becomes `GET /api/health` automatically. Visit [Routes](/docs/server-routes) for more details.
|
|
209
|
-
- **Plugins**: code
|
|
209
|
+
- **Plugins**: code registered at server startup and loaded once. Framework helpers initialize auth and the agent-chat mount; optional app-owned database migrations may still be running when the first request arrives. Visit [Plugins](/docs/server-plugins) for more details.
|
|
210
210
|
- **Middleware**: code that runs on every incoming request before it reaches a route. The auth guard lives in `server/middleware/`. Visit [Middleware](/docs/server-middleware) for more details.
|
|
211
211
|
|
|
212
212
|
Nitro is also deployment-agnostic. The same app deploys to Node.js, Cloudflare Workers, Netlify, Vercel, and other runtimes with no code changes. Just set a preset. See [Deployment](/docs/deployment).
|
|
@@ -230,5 +230,5 @@ Use custom `/api/*` routes only when you need a route-shaped protocol or binary/
|
|
|
230
230
|
- [**Actions**](/docs/actions): the default operation surface. Reach for a custom route only when it doesn't fit.
|
|
231
231
|
- [**Database**](/docs/server-database): the `getDb()`/schema pattern custom routes and actions both import
|
|
232
232
|
- [**Middleware**](/docs/server-middleware): auth guards and the `server/middleware/` directory
|
|
233
|
-
- [**Plugins**](/docs/server-plugins): startup plugins for
|
|
233
|
+
- [**Plugins**](/docs/server-plugins): startup plugins for auth, the agent, and optional app-owned migrations
|
|
234
234
|
- [**Routes**](/docs/server-routes): file-based routes, request context, and the SSR catch-all
|
|
@@ -5,7 +5,7 @@ description: "Startup plugins in server/plugins/ — what they are, the two plug
|
|
|
5
5
|
|
|
6
6
|
# Plugins
|
|
7
7
|
|
|
8
|
-
Plugins are startup hooks.
|
|
8
|
+
Plugins are startup hooks. Nitro loads each file in `server/plugins/` once when the server initializes. They are the right place for one-time setup: configuring auth, mounting the agent loop, running database migrations, or registering other initialization code. Framework helpers coordinate their async setup; custom plugin work may still be in flight when the first request arrives.
|
|
9
9
|
|
|
10
10
|
Nitro discovers plugins automatically from the filesystem. No registration or imports are required. Files run in alphabetical order, so execution order is controlled by filename prefix.
|
|
11
11
|
|
|
@@ -21,7 +21,7 @@ Apps that need custom database tables add a third:
|
|
|
21
21
|
|
|
22
22
|
```text
|
|
23
23
|
server/plugins/
|
|
24
|
-
db.ts ->
|
|
24
|
+
db.ts -> register app-owned migrations for local startup
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
## Auth Plugin {#auth-plugin}
|
|
@@ -80,7 +80,7 @@ screen when context matters.`,
|
|
|
80
80
|
|
|
81
81
|
## Database Plugin {#database-plugin}
|
|
82
82
|
|
|
83
|
-
If your app defines custom database tables, add `server/plugins/db.ts` to
|
|
83
|
+
If your app defines custom database tables, add `server/plugins/db.ts` to register schema migrations for local startup. It uses `runMigrations` from `@agent-native/core/db`:
|
|
84
84
|
|
|
85
85
|
```ts filename="server/plugins/db.ts"
|
|
86
86
|
import { runMigrations } from "@agent-native/core/db";
|
|
@@ -110,6 +110,12 @@ Each entry needs a `version` number and a `sql` string. Give it a stable `name`
|
|
|
110
110
|
TABLE ... DROP COLUMN`, `DELETE FROM`) in startup plugins.
|
|
111
111
|
</Callout>
|
|
112
112
|
|
|
113
|
+
<Callout tone="warning">
|
|
114
|
+
For production or serverless deployments, run migrations in a release or
|
|
115
|
+
deploy step instead of on the first request. The Chat template provides `pnpm
|
|
116
|
+
migrate:production` for this.
|
|
117
|
+
</Callout>
|
|
118
|
+
|
|
113
119
|
## Writing Custom Plugins {#custom-plugins}
|
|
114
120
|
|
|
115
121
|
The framework helpers (`createAuthPlugin`, `createAgentChatPlugin`, `runMigrations`) each return a Nitro plugin function. For anything outside those helpers, write a plugin using `defineNitroPlugin`:
|
|
@@ -142,6 +148,6 @@ If you add custom plugins, prefix their filenames to control invocation order, b
|
|
|
142
148
|
|
|
143
149
|
- [**Database**](/docs/server-database): schema helpers and the `getDb` pattern used inside plugins
|
|
144
150
|
- [**Middleware**](/docs/server-middleware): the auth guard that enforces what the auth plugin configures
|
|
145
|
-
- [**Routes**](/docs/server-routes): custom file routes
|
|
151
|
+
- [**Routes**](/docs/server-routes): custom file routes and when to use them
|
|
146
152
|
- [**Writing Agent Instructions**](/docs/writing-agent-instructions): how to craft the `systemPrompt` in the agent-chat plugin
|
|
147
153
|
- [**Nitro plugin docs**](https://nitro.build/guide/plugins): the full plugin API and lifecycle hooks
|
|
@@ -77,7 +77,12 @@ export default defineEventHandler(async (event) => {
|
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
const expected = createHmac("sha256", secret).update(rawBody).digest("hex");
|
|
80
|
-
|
|
80
|
+
const signatureBytes = Buffer.from(signature, "utf8");
|
|
81
|
+
const expectedBytes = Buffer.from(expected, "utf8");
|
|
82
|
+
if (
|
|
83
|
+
signatureBytes.length !== expectedBytes.length ||
|
|
84
|
+
!timingSafeEqual(signatureBytes, expectedBytes)
|
|
85
|
+
) {
|
|
81
86
|
throw createError({ statusCode: 401, statusMessage: "Invalid signature" });
|
|
82
87
|
}
|
|
83
88
|
|
|
@@ -189,6 +194,6 @@ Every SSR response is an impersonal, public shell cached at the CDN. Never read
|
|
|
189
194
|
## What's next {#whats-next}
|
|
190
195
|
|
|
191
196
|
- [**Actions**](/docs/actions): the preferred surface for app operations; reach for a route only when it doesn't fit
|
|
192
|
-
- [**Plugins**](/docs/server-plugins): startup plugins
|
|
197
|
+
- [**Plugins**](/docs/server-plugins): startup plugins and their initialization behavior
|
|
193
198
|
- [**Middleware**](/docs/server-middleware): auth guards that protect all routes including `/api/*`
|
|
194
199
|
- [**Security**](/docs/security#access-guards): `accessFilter`/`assertAccess` and the full data-scoping model
|
|
@@ -15,7 +15,7 @@ import { track } from "@agent-native/core/tracking";
|
|
|
15
15
|
track(
|
|
16
16
|
"order.completed",
|
|
17
17
|
{ total: 49.99, items: 3 },
|
|
18
|
-
{ userId: "
|
|
18
|
+
{ userId: "user@example.com" },
|
|
19
19
|
);
|
|
20
20
|
```
|
|
21
21
|
|
|
@@ -126,7 +126,7 @@ import { track } from "@agent-native/core/tracking";
|
|
|
126
126
|
track(
|
|
127
127
|
"meal.logged",
|
|
128
128
|
{ mealName: "Salad", calories: 350 },
|
|
129
|
-
{ userId: "
|
|
129
|
+
{ userId: "user@example.com" },
|
|
130
130
|
);
|
|
131
131
|
```
|
|
132
132
|
|
|
@@ -150,7 +150,7 @@ Identify a user with traits. Forwarded to providers that support it (PostHog, Mi
|
|
|
150
150
|
```ts
|
|
151
151
|
import { identify } from "@agent-native/core/tracking";
|
|
152
152
|
|
|
153
|
-
identify("
|
|
153
|
+
identify("user@example.com", { plan: "pro", company: "Builder.io" });
|
|
154
154
|
```
|
|
155
155
|
|
|
156
156
|
Need a custom backend, the provider-registry API, or the batching/singleton internals? See [Advanced: custom providers & internals](#advanced) at the end.
|
|
@@ -391,5 +391,5 @@ The framework also tracks `builder connect clicked` from Connect Builder CTAs, a
|
|
|
391
391
|
## What's next
|
|
392
392
|
|
|
393
393
|
- [**Actions**](/docs/actions) — where most tracking calls originate
|
|
394
|
-
- [**Server Plugins**](/docs/server
|
|
394
|
+
- [**Server Plugins**](/docs/server-plugins) — `registerBuiltinProviders()` runs in the core-routes plugin at startup
|
|
395
395
|
- [**Security — Secrets Management**](/docs/security#secrets) — manage API keys for tracking providers
|
|
@@ -39,7 +39,7 @@ The UI updates in real time as the agent opens views, edits drafts, and runs rep
|
|
|
39
39
|
|
|
40
40
|
### Steer it like a teammate
|
|
41
41
|
|
|
42
|
-
Give feedback, queue tasks, audit what it did, edit its instructions.
|
|
42
|
+
Give feedback, queue tasks, audit what it did, and edit its instructions.
|
|
43
43
|
|
|
44
44
|
</Cards>
|
|
45
45
|
|
|
@@ -93,7 +93,7 @@ graph TD
|
|
|
93
93
|
DB --> AG_OUT
|
|
94
94
|
```
|
|
95
95
|
|
|
96
|
-
The diagram above shows what this looks like at runtime: both the user and the agent submit actions to the same layer, which writes to the same database and
|
|
96
|
+
The diagram above shows what this looks like at runtime: both the user and the agent submit actions to the same layer, which writes to the same database and sends updates back to both surfaces. When the agent creates a draft email, it appears in your inbox immediately. When you click Send, the agent knows it was sent. See [Key Concepts](/docs/key-concepts) for the full architecture.
|
|
97
97
|
|
|
98
98
|
## Why agents need a UI — and apps need an agent {#why-both}
|
|
99
99
|
|
|
@@ -211,7 +211,7 @@ Browse [agent-native.com/templates](/templates) and pick the one closest to what
|
|
|
211
211
|
|
|
212
212
|
### Use it immediately
|
|
213
213
|
|
|
214
|
-
|
|
214
|
+
Many first-party templates are available as hosted apps (e.g. `mail.agent-native.com`). Try one before you touch any code.
|
|
215
215
|
|
|
216
216
|
### Clone and customize
|
|
217
217
|
|
|
@@ -235,7 +235,7 @@ Agent-native apps can talk to each other. From inside the mail app, you can tag
|
|
|
235
235
|
|
|
236
236
|
### [Getting Started](/docs/getting-started)
|
|
237
237
|
|
|
238
|
-
Build a working chat app in under five minutes, then add
|
|
238
|
+
Build a working chat app in under five minutes, then add an action and a page. Add your own database tables when you need to persist domain data.
|
|
239
239
|
|
|
240
240
|
### [Key Concepts](/docs/key-concepts)
|
|
241
241
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agent-native/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.149.0",
|
|
4
4
|
"description": "Framework for agent-native application development — where AI agents and UI share SQL state, actions, and context",
|
|
5
5
|
"homepage": "https://github.com/BuilderIO/agent-native#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -414,7 +414,7 @@
|
|
|
414
414
|
"yjs": "^13.6.31",
|
|
415
415
|
"zod": "^4.3.6",
|
|
416
416
|
"@agent-native/recap-cli": "0.5.4",
|
|
417
|
-
"@agent-native/toolkit": "^0.13.
|
|
417
|
+
"@agent-native/toolkit": "^0.13.8"
|
|
418
418
|
},
|
|
419
419
|
"devDependencies": {
|
|
420
420
|
"@ai-sdk/anthropic": "^3.0.71",
|
|
@@ -232,7 +232,7 @@ const messages = {
|
|
|
232
232
|
newTerminal: "محطة جديدة",
|
|
233
233
|
panelOptions: "خيارات لوحة الوكيل",
|
|
234
234
|
collapseSidebar: "طي الشريط الجانبي",
|
|
235
|
-
widenChat: "توسيع الدردشة
|
|
235
|
+
widenChat: "توسيع الدردشة",
|
|
236
236
|
returnChatToLayout: "إعادة الدردشة إلى تخطيط الصفحة",
|
|
237
237
|
hideChats: "إخفاء الدردشات",
|
|
238
238
|
allChats: "جميع الدردشات",
|
|
@@ -234,7 +234,7 @@ const messages = {
|
|
|
234
234
|
newTerminal: "Neues Terminal",
|
|
235
235
|
panelOptions: "Optionen im Agentenpanel",
|
|
236
236
|
collapseSidebar: "Seitenleiste einklappen",
|
|
237
|
-
widenChat: "Chat
|
|
237
|
+
widenChat: "Chat verbreitern",
|
|
238
238
|
returnChatToLayout: "Chat zurück ins Layout",
|
|
239
239
|
hideChats: "Chats ausblenden",
|
|
240
240
|
allChats: "Alle Chats",
|
|
@@ -229,7 +229,7 @@ const messages = {
|
|
|
229
229
|
newTerminal: "New terminal",
|
|
230
230
|
panelOptions: "Agent panel options",
|
|
231
231
|
collapseSidebar: "Collapse sidebar",
|
|
232
|
-
widenChat: "Widen chat
|
|
232
|
+
widenChat: "Widen chat",
|
|
233
233
|
returnChatToLayout: "Return chat to layout",
|
|
234
234
|
hideChats: "Hide chats",
|
|
235
235
|
allChats: "All chats",
|
|
@@ -235,7 +235,7 @@ const messages = {
|
|
|
235
235
|
newTerminal: "Nueva terminal",
|
|
236
236
|
panelOptions: "Opciones del panel de agentes",
|
|
237
237
|
collapseSidebar: "Contraer barra lateral",
|
|
238
|
-
widenChat: "Ampliar el chat
|
|
238
|
+
widenChat: "Ampliar el chat",
|
|
239
239
|
returnChatToLayout: "Devolver el chat al diseño",
|
|
240
240
|
hideChats: "Ocultar chats",
|
|
241
241
|
allChats: "Todos los chats",
|
|
@@ -236,7 +236,7 @@ const messages = {
|
|
|
236
236
|
newTerminal: "Nouvelle borne",
|
|
237
237
|
panelOptions: "Options du panneau d'agent",
|
|
238
238
|
collapseSidebar: "Réduire la barre latérale",
|
|
239
|
-
widenChat: "Élargir le chat
|
|
239
|
+
widenChat: "Élargir le chat",
|
|
240
240
|
returnChatToLayout: "Remettre le chat dans la mise en page",
|
|
241
241
|
hideChats: "Masquer les discussions",
|
|
242
242
|
allChats: "Toutes les discussions",
|
|
@@ -221,7 +221,7 @@ const messages = {
|
|
|
221
221
|
newTerminal: "नया टर्मिनल",
|
|
222
222
|
panelOptions: "एजेंट पैनल विकल्प",
|
|
223
223
|
collapseSidebar: "साइडबार समेटें",
|
|
224
|
-
widenChat: "चैट को
|
|
224
|
+
widenChat: "चैट को चौड़ा करें",
|
|
225
225
|
returnChatToLayout: "चैट को लेआउट में वापस लाएँ",
|
|
226
226
|
hideChats: "चैट छुपाएं",
|
|
227
227
|
allChats: "सभी चैट",
|
|
@@ -230,7 +230,7 @@ const messages = {
|
|
|
230
230
|
newTerminal: "新しいターミナル",
|
|
231
231
|
panelOptions: "エージェントパネルのオプション",
|
|
232
232
|
collapseSidebar: "サイドバーを折りたたむ",
|
|
233
|
-
widenChat: "
|
|
233
|
+
widenChat: "チャットを広げる",
|
|
234
234
|
returnChatToLayout: "チャットをレイアウトに戻す",
|
|
235
235
|
hideChats: "チャットを非表示にする",
|
|
236
236
|
allChats: "すべてのチャット",
|
|
@@ -225,7 +225,7 @@ const messages = {
|
|
|
225
225
|
newTerminal: "새로운 터미널",
|
|
226
226
|
panelOptions: "상담원 패널 옵션",
|
|
227
227
|
collapseSidebar: "사이드바 접기",
|
|
228
|
-
widenChat: "
|
|
228
|
+
widenChat: "채팅 넓히기",
|
|
229
229
|
returnChatToLayout: "채팅을 레이아웃으로 되돌리기",
|
|
230
230
|
hideChats: "채팅 숨기기",
|
|
231
231
|
allChats: "모든 채팅",
|
|
@@ -234,7 +234,7 @@ const messages = {
|
|
|
234
234
|
newTerminal: "Novo terminal",
|
|
235
235
|
panelOptions: "Opções do painel do agente",
|
|
236
236
|
collapseSidebar: "Recolher barra lateral",
|
|
237
|
-
widenChat: "Ampliar o chat
|
|
237
|
+
widenChat: "Ampliar o chat",
|
|
238
238
|
returnChatToLayout: "Retornar o chat ao layout",
|
|
239
239
|
hideChats: "Ocultar bate-papos",
|
|
240
240
|
allChats: "Todos os bate-papos",
|