@agent-native/core 0.48.2 → 0.48.3

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.
Files changed (55) hide show
  1. package/README.md +4 -4
  2. package/dist/cli/skills.js +14 -14
  3. package/dist/cli/skills.js.map +1 -1
  4. package/dist/client/index.d.ts +1 -0
  5. package/dist/client/index.d.ts.map +1 -1
  6. package/dist/client/index.js +1 -0
  7. package/dist/client/index.js.map +1 -1
  8. package/dist/client/require-session.d.ts +61 -0
  9. package/dist/client/require-session.d.ts.map +1 -0
  10. package/dist/client/require-session.js +75 -0
  11. package/dist/client/require-session.js.map +1 -0
  12. package/dist/mcp/actions/service-token-access.d.ts.map +1 -1
  13. package/dist/mcp/actions/service-token-access.js +30 -2
  14. package/dist/mcp/actions/service-token-access.js.map +1 -1
  15. package/dist/server/auth.d.ts.map +1 -1
  16. package/dist/server/auth.js +5 -5
  17. package/dist/server/auth.js.map +1 -1
  18. package/dist/templates/workspace-core/.agents/skills/authentication/SKILL.md +36 -1
  19. package/docs/content/agent-web-surfaces.md +2 -2
  20. package/docs/content/authentication.md +1 -1
  21. package/docs/content/cloneable-saas.md +2 -2
  22. package/docs/content/code-agents-ui.md +16 -17
  23. package/docs/content/creating-templates.md +3 -3
  24. package/docs/content/deployment.md +18 -18
  25. package/docs/content/dispatch.md +2 -2
  26. package/docs/content/external-agents.md +21 -28
  27. package/docs/content/faq.md +1 -1
  28. package/docs/content/frames.md +1 -1
  29. package/docs/content/getting-started.md +7 -7
  30. package/docs/content/mcp-apps.md +1 -1
  31. package/docs/content/mcp-protocol.md +2 -2
  32. package/docs/content/migration-workbench.md +2 -2
  33. package/docs/content/multi-app-workspace.md +8 -8
  34. package/docs/content/multi-tenancy.md +1 -1
  35. package/docs/content/plan-plugin.md +6 -8
  36. package/docs/content/pr-visual-recap.md +23 -23
  37. package/docs/content/pure-agent-apps.md +1 -1
  38. package/docs/content/skills-guide.md +3 -3
  39. package/docs/content/template-analytics.md +1 -1
  40. package/docs/content/template-assets.md +4 -4
  41. package/docs/content/template-brain.md +1 -1
  42. package/docs/content/template-calendar.md +1 -1
  43. package/docs/content/template-clips.md +1 -1
  44. package/docs/content/template-content.md +1 -1
  45. package/docs/content/template-design.md +1 -1
  46. package/docs/content/template-dispatch.md +1 -1
  47. package/docs/content/template-forms.md +2 -2
  48. package/docs/content/template-mail.md +2 -2
  49. package/docs/content/template-plan.md +6 -12
  50. package/docs/content/template-slides.md +1 -1
  51. package/docs/content/template-starter.md +2 -2
  52. package/docs/content/template-videos.md +1 -1
  53. package/docs/content/workspace-management.md +1 -1
  54. package/package.json +1 -1
  55. package/src/templates/workspace-core/.agents/skills/authentication/SKILL.md +36 -1
@@ -38,7 +38,7 @@ That same boundary applies when your app wants to use another first-party app. A
38
38
  Workspace is the default shape of an agent-native project. Scaffold one with:
39
39
 
40
40
  ```bash
41
- pnpm dlx @agent-native/core create my-company-platform
41
+ npx @agent-native/core@latest create my-company-platform
42
42
  ```
43
43
 
44
44
  The CLI shows a multi-select picker of every first-party template. Pick as many as you want — Mail + Calendar + Forms, for example — and they all get scaffolded into the same workspace sharing auth and database defaults.
@@ -88,13 +88,13 @@ Every app already knows how to log in, share the same database, and load the wor
88
88
  From anywhere inside the workspace:
89
89
 
90
90
  ```bash
91
- npx @agent-native/core add-app
91
+ npx @agent-native/core@latest add-app
92
92
  ```
93
93
 
94
94
  The CLI shows the template picker again with apps you've already installed filtered out. Pick one or more and they get scaffolded under `apps/`. Non-interactive variant:
95
95
 
96
96
  ```bash
97
- npx @agent-native/core add-app crm --template content
97
+ npx @agent-native/core@latest add-app crm --template content
98
98
  ```
99
99
 
100
100
  Any first-party template works as a workspace app — the CLI runs a small **workspacify** transform on the template that adds the shared package as a dep and resolves `workspace:*` references. No parallel "workspace-app" scaffold to maintain.
@@ -211,13 +211,13 @@ You have two options: **unified deploy** (the default for workspaces) or per-app
211
211
  One command builds every app in the workspace and ships them behind a single origin, one path per app:
212
212
 
213
213
  ```bash
214
- agent-native deploy
214
+ npx @agent-native/core@latest deploy
215
215
  # https://your-agents.com/mail/* → apps/mail
216
216
  # https://your-agents.com/calendar/* → apps/calendar
217
217
  # https://your-agents.com/forms/* → apps/forms
218
218
  ```
219
219
 
220
- Each app is built with `APP_BASE_PATH=/<name>` and `VITE_APP_BASE_PATH=/<name>` and emitted through the selected Nitro preset. Cloudflare Pages is the default preset and uses a dispatcher worker at `dist/_worker.js` plus `_routes.json`. Netlify is supported with `agent-native deploy --preset netlify`; it emits app functions under `.netlify/functions-internal/<app>-server` and generated redirects that leave static assets unforced so the CDN serves files first. Vercel is supported with `agent-native deploy --preset vercel`; it writes a root `.vercel/output` bundle using Vercel's Build Output API.
220
+ Each app is built with `APP_BASE_PATH=/<name>` and `VITE_APP_BASE_PATH=/<name>` and emitted through the selected Nitro preset. Cloudflare Pages is the default preset and uses a dispatcher worker at `dist/_worker.js` plus `_routes.json`. Netlify is supported with `npx @agent-native/core@latest deploy --preset netlify`; it emits app functions under `.netlify/functions-internal/<app>-server` and generated redirects that leave static assets unforced so the CDN serves files first. Vercel is supported with `npx @agent-native/core@latest deploy --preset vercel`; it writes a root `.vercel/output` bundle using Vercel's Build Output API.
221
221
 
222
222
  Being on the **same origin** is where the real payoff lives:
223
223
 
@@ -234,13 +234,13 @@ wrangler pages deploy dist
234
234
  For Netlify:
235
235
 
236
236
  ```bash
237
- agent-native deploy --preset netlify --build-only
237
+ npx @agent-native/core@latest deploy --preset netlify --build-only
238
238
  ```
239
239
 
240
240
  For Vercel Git deployments, set the build command to:
241
241
 
242
242
  ```bash
243
- pnpm exec agent-native deploy --preset vercel --build-only
243
+ npx @agent-native/core@latest deploy --preset vercel --build-only
244
244
  ```
245
245
 
246
246
  ### Public app routes
@@ -274,7 +274,7 @@ These settings only affect read-only page navigation. Framework tools, agent cha
274
274
 
275
275
  ### Per-app independent deploy
276
276
 
277
- Prefer each app on its own domain (`mail.company.com`, `calendar.company.com`)? Every app in the workspace is still an independent deployable — `cd apps/mail && agent-native build` behaves exactly like a standalone scaffold. Cross-app A2A then goes through the standard JWT-signed path with a shared `A2A_SECRET`. Cross-domain SSO between separately-deployed apps is handled by identity federation with Dispatch as the hub — see [Cross-App SSO](/docs/cross-app-sso); the unified single-origin deploy avoids needing it.
277
+ Prefer each app on its own domain (`mail.company.com`, `calendar.company.com`)? Every app in the workspace is still an independent deployable — `cd apps/mail && npx @agent-native/core@latest build` behaves exactly like a standalone scaffold. Cross-app A2A then goes through the standard JWT-signed path with a shared `A2A_SECRET`. Cross-domain SSO between separately-deployed apps is handled by identity federation with Dispatch as the hub — see [Cross-App SSO](/docs/cross-app-sso); the unified single-origin deploy avoids needing it.
278
278
 
279
279
  ### Shared database, shared credentials
280
280
 
@@ -50,7 +50,7 @@ This is the same pipeline used for per-user scoping. For the SQL-level mechanics
50
50
 
51
51
  ## No configuration needed {#zero-config}
52
52
 
53
- Multi-tenancy is not a feature you enable — it's the default architecture. A fresh `agent-native create` scaffold already has:
53
+ Multi-tenancy is not a feature you enable — it's the default architecture. A fresh `npx @agent-native/core@latest create` scaffold already has:
54
54
 
55
55
  - User registration and login
56
56
  - Organization creation and management
@@ -26,7 +26,7 @@ the Plan MCP connector. They write `plans/<slug>/plan.mdx` plus optional
26
26
  `canvas.mdx`, `prototype.mdx`, and `.plan-state.json`, then preview locally with:
27
27
 
28
28
  ```bash
29
- agent-native plan local preview --dir plans/<slug> --kind plan
29
+ npx @agent-native/core@latest plan local preview --dir plans/<slug> --kind plan
30
30
  ```
31
31
 
32
32
  This keeps plan content out of the Agent-Native Plan database. Hosted sharing,
@@ -45,14 +45,12 @@ Works for any host — Claude Code, Codex, Cursor, Cline, Goose, ChatGPT custom
45
45
 
46
46
  ```bash
47
47
  npx @agent-native/core@latest skills add visual-plan
48
- # or, if the CLI is already on PATH:
49
- agent-native skills add visual-plan
50
48
  ```
51
49
 
52
50
  This installs `visual-plan` plus the companion `visual-recap` skill, then registers the `plan` connector and its legacy `agent-native-plans` alias, then runs auth (OAuth prompt for hosted/account-backed sharing). Useful flags:
53
51
 
54
52
  - `--client codex|claude-code|claude-code-cli|cowork|all` — which local agents to write the MCP config for (default `codex`).
55
- - `--no-connect` — register the connector without authenticating; run `agent-native connect https://plan.agent-native.com` later.
53
+ - `--no-connect` — register the connector without authenticating; run `npx @agent-native/core@latest connect https://plan.agent-native.com` later.
56
54
  - `--mcp-url <url>` — point the connector at a custom origin (an ngrok tunnel, a local dev server, or a self-hosted deployment) instead of the hosted default.
57
55
  - `--with-github-action` — also write the PR Visual Recap GitHub Action (see [PR Visual Recap](/docs/pr-visual-recap)).
58
56
 
@@ -61,8 +59,8 @@ present. Say yes to add it during skill setup, or run the command above later
61
59
  with `--with-github-action`. After the workflow is written, run:
62
60
 
63
61
  ```bash
64
- agent-native recap setup
65
- agent-native recap doctor
62
+ npx @agent-native/core@latest recap setup
63
+ npx @agent-native/core@latest recap doctor
66
64
  ```
67
65
 
68
66
  `recap setup` configures the GitHub Action secrets and variables where possible,
@@ -100,7 +98,7 @@ codex mcp login plan # OAuth in the browser
100
98
  codex mcp login agent-native-plans
101
99
  ```
102
100
 
103
- After install, **start a new Codex thread** so the skills and MCP tools load into the session. The plugin ships URL-only connectors (`[mcp_servers.plan]` and legacy `[mcp_servers.agent-native-plans]` → `https://plan.agent-native.com/_agent-native/mcp`); `codex mcp login` runs the OAuth flow. The universal CLI route above also works for Codex (`agent-native skills add visual-plan --client codex`) if you prefer one command that installs and authenticates together.
101
+ After install, **start a new Codex thread** so the skills and MCP tools load into the session. The plugin ships URL-only connectors (`[mcp_servers.plan]` and legacy `[mcp_servers.agent-native-plans]` → `https://plan.agent-native.com/_agent-native/mcp`); `codex mcp login` runs the OAuth flow. The universal CLI route above also works for Codex (`npx @agent-native/core@latest skills add visual-plan --client codex`) if you prefer one command that installs and authenticates together.
104
102
 
105
103
  ## Updates {#updates}
106
104
 
@@ -129,7 +127,7 @@ In short: ship it as a self-hosted/public git marketplace and users install dire
129
127
 
130
128
  A **skill** is a single `SKILL.md` instruction file the agent reads when a task matches. A **plugin** (Claude Code marketplace plugin or Codex plugin) is a package that bundles one or more skills **plus** an MCP connector and metadata, so a host can install everything in one step.
131
129
 
132
- Under the hood, all three routes are produced from the same source by the `agent-native app-skill` CLI: `app-skill pack` builds the marketplace/plugin adapters, and `skills add` is the friendly one-step installer that also registers and authenticates the MCP connector. See [Skills Guide](/docs/skills-guide) for the app-skill manifest format, and [External Agents](/docs/external-agents) for connecting any MCP host and the `agent-native connect` flow.
130
+ Under the hood, all three routes are produced from the same source by the `npx @agent-native/core@latest app-skill` CLI: `app-skill pack` builds the marketplace/plugin adapters, and `skills add` is the friendly one-step installer that also registers and authenticates the MCP connector. See [Skills Guide](/docs/skills-guide) for the app-skill manifest format, and [External Agents](/docs/external-agents) for connecting any MCP host and the `npx @agent-native/core@latest connect` flow.
133
131
 
134
132
  ## What's next {#whats-next}
135
133
 
@@ -33,16 +33,16 @@ automatic PR Visual Recaps. Say yes to write the GitHub Action, or add it
33
33
  explicitly at any time:
34
34
 
35
35
  ```bash
36
- agent-native skills add visual-plan --with-github-action
36
+ npx @agent-native/core@latest skills add visual-plan --with-github-action
37
37
  ```
38
38
 
39
- This installs the `visual-plan` skill (which includes the `visual-recap` skill the action runs) and writes `.github/workflows/pr-visual-recap.yml` into your repo. The workflow calls **published CLI subcommands** `agent-native recap gate|collect-diff|mcp-config|scan|build-prompt|shot|comment|check|usage` — so nothing is copied into your repo as helper scripts. `setup` and `doctor` are the interactive helpers you run locally; `gate` is the security-gate step the workflow runs before every recap.
39
+ This installs the `visual-plan` skill (which includes the `visual-recap` skill the action runs) and writes `.github/workflows/pr-visual-recap.yml` into your repo. The workflow calls **published CLI subcommands** through `npx @agent-native/core@latest recap <subcommand>` — including `gate`, `collect-diff`, `mcp-config`, `scan`, `build-prompt`, `shot`, `comment`, `check`, and `usage` — so nothing is copied into your repo as helper scripts. `setup` and `doctor` are the interactive helpers you run locally; `gate` is the security-gate step the workflow runs before every recap.
40
40
 
41
41
  Then run the guided setup helper:
42
42
 
43
43
  ```bash
44
- agent-native recap setup
45
- agent-native recap doctor
44
+ npx @agent-native/core@latest recap setup
45
+ npx @agent-native/core@latest recap doctor
46
46
  ```
47
47
 
48
48
  `recap setup` refreshes the workflow, uses `gh` to set GitHub Actions
@@ -84,10 +84,10 @@ Set these in your repository's **Settings → Secrets and variables → Actions*
84
84
 
85
85
  ### Secrets (only two required)
86
86
 
87
- | Secret | Purpose |
88
- | ------------------- | ----------------------------------------------------------------------------------------------------------------- |
89
- | `PLAN_RECAP_TOKEN` | Revocable token minted by `agent-native connect`. Authorizes publishing the recap plan and the screenshot upload. |
90
- | `ANTHROPIC_API_KEY` | The LLM key for the default Claude Code backend. |
87
+ | Secret | Purpose |
88
+ | ------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
89
+ | `PLAN_RECAP_TOKEN` | Revocable token minted by `npx @agent-native/core@latest connect`. Authorizes publishing the recap plan and the screenshot upload. |
90
+ | `ANTHROPIC_API_KEY` | The LLM key for the default Claude Code backend. |
91
91
 
92
92
  **Teams: use an org service token.** A personal token is bound to the person
93
93
  who minted it — if they leave the org or revoke their tokens, every repo using
@@ -98,7 +98,7 @@ survives any individual leaving, the recaps it publishes are org-visible, and
98
98
  any org owner or admin can list or revoke it. Mint one (org owner/admin only):
99
99
 
100
100
  ```bash
101
- agent-native connect https://plan.agent-native.com --service-token pr-recap
101
+ npx @agent-native/core@latest connect https://plan.agent-native.com --service-token pr-recap
102
102
  ```
103
103
 
104
104
  The command authenticates you in the browser, then prints the service token
@@ -106,13 +106,13 @@ exactly once — store it as the `PLAN_RECAP_TOKEN` secret. Manage it later with
106
106
  the `list-org-service-tokens` and `revoke-org-service-token` actions on the
107
107
  Plans app.
108
108
 
109
- **Solo: a personal token still works.** Mint it with `agent-native connect`
109
+ **Solo: a personal token still works.** Mint it with `npx @agent-native/core@latest connect`
110
110
  against your Plans app. For the hosted app, this also writes a local
111
- publish-token file that `agent-native recap setup` can read:
111
+ publish-token file that `npx @agent-native/core@latest recap setup` can read:
112
112
 
113
113
  ```bash
114
- agent-native connect https://plan.agent-native.com --client codex
115
- agent-native recap setup
114
+ npx @agent-native/core@latest connect https://plan.agent-native.com --client codex
115
+ npx @agent-native/core@latest recap setup
116
116
  ```
117
117
 
118
118
  If you prefer manual setup, paste the token into the GitHub secret. Use a
@@ -207,9 +207,9 @@ recap without sending recap content to the Agent-Native Plan database, run the
207
207
  same helper flow locally in local-files mode instead:
208
208
 
209
209
  ```bash
210
- agent-native recap collect-diff --base main --head HEAD --out recap.diff --stat recap.stat
211
- agent-native recap scan --diff recap.diff
212
- agent-native recap build-prompt --pr 123 --diff recap.diff --stat recap.stat --local-files --local-dir plans/pr-123-visual-recap
210
+ npx @agent-native/core@latest recap collect-diff --base main --head HEAD --out recap.diff --stat recap.stat
211
+ npx @agent-native/core@latest recap scan --diff recap.diff
212
+ npx @agent-native/core@latest recap build-prompt --pr 123 --diff recap.diff --stat recap.stat --local-files --local-dir plans/pr-123-visual-recap
213
213
  ```
214
214
 
215
215
  Give the generated `recap-prompt.md` to your coding agent. In local-files mode
@@ -217,7 +217,7 @@ the prompt instructs the agent to write `plans/pr-123-visual-recap/plan.mdx`
217
217
  plus optional visual files and then run:
218
218
 
219
219
  ```bash
220
- agent-native plan local preview --dir plans/pr-123-visual-recap --kind recap
220
+ npx @agent-native/core@latest plan local preview --dir plans/pr-123-visual-recap --kind recap
221
221
  ```
222
222
 
223
223
  The returned `file://` preview, or `/local-plans/pr-123-visual-recap` in a local
@@ -246,7 +246,7 @@ For the reusable-caller variant, use the `cli-version` input instead (see [Versi
246
246
 
247
247
  ## Secret-scan allowlist
248
248
 
249
- Before publishing a recap the workflow runs `agent-native recap scan` to detect likely secrets in the diff. Any PR whose diff matches a known-secret pattern is blocked with an explanatory comment — the recap is not published, and no diff content is sent to the coding agent.
249
+ Before publishing a recap the workflow runs `npx @agent-native/core@latest recap scan` to detect likely secrets in the diff. Any PR whose diff matches a known-secret pattern is blocked with an explanatory comment — the recap is not published, and no diff content is sent to the coding agent.
250
250
 
251
251
  In rare cases a repo has intentional test fixtures or non-secret strings that superficially resemble secret patterns (e.g., a fixture key in a test file). To suppress a false positive, create `.github/recap-scan-allowlist` in the root of your repository.
252
252
 
@@ -280,7 +280,7 @@ The allowlist is only consulted by the secret-scan gate. It does not affect what
280
280
 
281
281
  ### Why use the reusable variant?
282
282
 
283
- The default installer copies the full ~360-line workflow YAML into your repo (the **copy** option). This is the right choice for air-gapped repos or repos that need to audit every line of what runs. The downside is that bug fixes and improvements never reach you — you need to re-run `agent-native recap setup` manually after each release.
283
+ The default installer copies the full ~360-line workflow YAML into your repo (the **copy** option). This is the right choice for air-gapped repos or repos that need to audit every line of what runs. The downside is that bug fixes and improvements never reach you — you need to re-run `npx @agent-native/core@latest recap setup` manually after each release.
284
284
 
285
285
  The **reusable** option writes a thin ~20-line caller instead. It delegates to `BuilderIO/agent-native/.github/workflows/pr-visual-recap-reusable.yml` via `uses:`. Every caller automatically picks up the latest logic when the workflow runs, with no local update needed.
286
286
 
@@ -293,7 +293,7 @@ The **reusable** option writes a thin ~20-line caller instead. It delegates to `
293
293
 
294
294
  ### Caller snippet
295
295
 
296
- This is what `agent-native recap setup --reusable` writes (or you can paste it manually):
296
+ This is what `npx @agent-native/core@latest recap setup --reusable` writes (or you can paste it manually):
297
297
 
298
298
  ```yaml
299
299
  name: PR Visual Recap
@@ -327,15 +327,15 @@ The same secrets and variables described in [Secrets and variables](#secrets-and
327
327
 
328
328
  ```bash
329
329
  # Write the thin caller instead of the full copy:
330
- agent-native recap setup --reusable
330
+ npx @agent-native/core@latest recap setup --reusable
331
331
 
332
332
  # Or with a pinned ref for reproducibility:
333
- agent-native recap setup --reusable --ref v1.2.3
333
+ npx @agent-native/core@latest recap setup --reusable --ref v1.2.3
334
334
  ```
335
335
 
336
336
  Both variants write the workflow to `.github/workflows/pr-visual-recap.yml`. If an existing workflow is already there and differs, the command refuses and tells you to pass `--force` to overwrite.
337
337
 
338
- After writing, run `agent-native recap doctor` as usual to confirm secrets are configured.
338
+ After writing, run `npx @agent-native/core@latest recap doctor` as usual to confirm secrets are configured.
339
339
 
340
340
  ### Version pinning
341
341
 
@@ -65,7 +65,7 @@ If you're not a developer, you can usually start with the [Dispatch template](/d
65
65
  For developers who want the absolute minimum, start from the **Starter** template:
66
66
 
67
67
  ```bash
68
- npx @agent-native/core create my-agent --template starter
68
+ npx @agent-native/core@latest create my-agent --template starter
69
69
  ```
70
70
 
71
71
  Starter gives you the architecture, the agent panel, the workspace, auth, polling, and one example action — and nothing else. Add your own actions in `actions/`, connect any MCP servers you need, write the relevant skills into the workspace, and you're done.
@@ -219,14 +219,14 @@ npx @agent-native/core@latest skills add assets
219
219
  npx skills add BuilderIO/agent-native --skill assets
220
220
 
221
221
  # Register a hosted MCP connector for local agent clients.
222
- agent-native app-skill ensure --manifest templates/assets/agent-native.app-skill.json
222
+ npx @agent-native/core@latest app-skill ensure --manifest templates/assets/agent-native.app-skill.json
223
223
 
224
224
  # Materialize and run editable local source.
225
- agent-native app-skill launch --manifest templates/assets/agent-native.app-skill.json --local --into ./assets-local
225
+ npx @agent-native/core@latest app-skill launch --manifest templates/assets/agent-native.app-skill.json --local --into ./assets-local
226
226
 
227
227
  # Build marketplace adapters: Codex plugin, Claude marketplace, Vercel skills,
228
228
  # plain/Claude skills, and MCP configs.
229
- agent-native app-skill pack --manifest templates/assets/agent-native.app-skill.json --out ./dist/assets-skill
229
+ npx @agent-native/core@latest app-skill pack --manifest templates/assets/agent-native.app-skill.json --out ./dist/assets-skill
230
230
 
231
231
  # Install a local exported bundle with the Vercel/open Skills CLI.
232
232
  npx skills add ./dist/assets-skill --skill assets -a codex -y
@@ -84,7 +84,7 @@ The rest of this doc is for anyone forking the Analytics template or extending i
84
84
  Create a new Analytics app from the CLI:
85
85
 
86
86
  ```bash
87
- npx @agent-native/core create my-analytics --standalone --template analytics
87
+ npx @agent-native/core@latest create my-analytics --standalone --template analytics
88
88
  ```
89
89
 
90
90
  Local dev:
@@ -96,7 +96,7 @@ The rest of this doc is for anyone forking the Assets template or extending it.
96
96
  ### Scaffolding
97
97
 
98
98
  ```bash
99
- npx @agent-native/core create my-assets --standalone --template assets
99
+ npx @agent-native/core@latest create my-assets --standalone --template assets
100
100
  ```
101
101
 
102
102
  ### Data model
@@ -184,13 +184,13 @@ npx @agent-native/core@latest skills add assets
184
184
  npx skills add BuilderIO/agent-native --skill assets
185
185
 
186
186
  # Hosted install: URL-only MCP connector, no shared secrets in skill files.
187
- agent-native app-skill ensure --manifest templates/assets/agent-native.app-skill.json
187
+ npx @agent-native/core@latest app-skill ensure --manifest templates/assets/agent-native.app-skill.json
188
188
 
189
189
  # Local editable launch.
190
- agent-native app-skill launch --manifest templates/assets/agent-native.app-skill.json --local --into ./assets-local
190
+ npx @agent-native/core@latest app-skill launch --manifest templates/assets/agent-native.app-skill.json --local --into ./assets-local
191
191
 
192
192
  # Marketplace package, including Claude Code marketplace and Vercel Labs skills adapters.
193
- agent-native app-skill pack --manifest templates/assets/agent-native.app-skill.json --out ./dist/assets-skill
193
+ npx @agent-native/core@latest app-skill pack --manifest templates/assets/agent-native.app-skill.json --out ./dist/assets-skill
194
194
 
195
195
  # Install a local exported Assets bundle with the open skills CLI.
196
196
  npx skills add ./dist/assets-skill --skill assets -a codex -y
@@ -94,7 +94,7 @@ The rest of this section is for anyone forking or extending the Brain template.
94
94
  ### Quick start
95
95
 
96
96
  ```bash
97
- npx @agent-native/core create my-brain --standalone --template brain
97
+ npx @agent-native/core@latest create my-brain --standalone --template brain
98
98
  cd my-brain
99
99
  pnpm install
100
100
  pnpm dev
@@ -78,7 +78,7 @@ The rest of this doc is for anyone forking the Calendar template or extending it
78
78
  Create a new workspace with the Calendar template:
79
79
 
80
80
  ```bash
81
- npx @agent-native/core create my-app --standalone --template calendar
81
+ npx @agent-native/core@latest create my-app --standalone --template calendar
82
82
  cd my-app
83
83
  pnpm install
84
84
  pnpm dev
@@ -66,7 +66,7 @@ The rest of this doc is for anyone forking the Clips template or extending it.
66
66
  ### Scaffolding
67
67
 
68
68
  ```bash
69
- npx @agent-native/core create my-clips --standalone --template clips
69
+ npx @agent-native/core@latest create my-clips --standalone --template clips
70
70
  cd my-clips
71
71
  pnpm install
72
72
  pnpm dev
@@ -60,7 +60,7 @@ The rest of this doc is for anyone forking the Content template or extending it.
60
60
  Scaffold a new workspace with the Content template:
61
61
 
62
62
  ```bash
63
- npx @agent-native/core create my-workspace --standalone --template content
63
+ npx @agent-native/core@latest create my-workspace --standalone --template content
64
64
  cd my-workspace
65
65
  pnpm install
66
66
  pnpm dev
@@ -54,7 +54,7 @@ The rest of this doc is for anyone forking the Design template or extending it.
54
54
  ### Scaffolding
55
55
 
56
56
  ```bash
57
- npx @agent-native/core create my-design --standalone --template design
57
+ npx @agent-native/core@latest create my-design --standalone --template design
58
58
  ```
59
59
 
60
60
  ### Data model
@@ -119,7 +119,7 @@ pnpm action create-dream-report --allSources true --sourceTimeoutMs 30000 --limi
119
119
  ## Scaffolding {#scaffolding}
120
120
 
121
121
  ```bash
122
- npx @agent-native/core create my-platform
122
+ npx @agent-native/core@latest create my-platform
123
123
  # pick "Dispatch" in the multi-select picker, plus whichever domain apps you want
124
124
  ```
125
125
 
@@ -64,13 +64,13 @@ See [What is agent-native?](/docs/what-is-agent-native) for the broader framewor
64
64
  ### Scaffolding
65
65
 
66
66
  ```bash
67
- npx @agent-native/core create my-forms --standalone --template forms
67
+ npx @agent-native/core@latest create my-forms --standalone --template forms
68
68
  ```
69
69
 
70
70
  For a workspace with Forms alongside other apps:
71
71
 
72
72
  ```bash
73
- npx @agent-native/core create my-platform
73
+ npx @agent-native/core@latest create my-platform
74
74
  ```
75
75
 
76
76
  Pick Forms and any other templates you want during the workspace setup.
@@ -99,7 +99,7 @@ The rest of this doc is for anyone forking the Mail template or extending it.
99
99
  Create a new workspace with the Mail template:
100
100
 
101
101
  ```bash
102
- npx @agent-native/core create my-mail --standalone --template mail
102
+ npx @agent-native/core@latest create my-mail --standalone --template mail
103
103
  cd my-mail
104
104
  pnpm install
105
105
  pnpm dev
@@ -108,7 +108,7 @@ pnpm dev
108
108
  Or add Mail to an existing agent-native workspace:
109
109
 
110
110
  ```bash
111
- npx @agent-native/core add-app
111
+ npx @agent-native/core@latest add-app
112
112
  ```
113
113
 
114
114
  To connect Gmail in dev, you need a Google OAuth client:
@@ -37,12 +37,6 @@ hit an OAuth wall:
37
37
  npx @agent-native/core@latest skills add visual-plan
38
38
  ```
39
39
 
40
- If you already have the CLI installed, the shorter command is equivalent:
41
-
42
- ```bash
43
- agent-native skills add visual-plan
44
- ```
45
-
46
40
  The command installs both commands: `/visual-plan` and `/visual-recap`.
47
41
 
48
42
  If you are using a chat-based host that accepts MCP connector URLs directly
@@ -68,7 +62,7 @@ npx @agent-native/core@latest skills add visual-plan --client all
68
62
  ```
69
63
 
70
64
  Pass `--no-connect` to register the connector without authenticating, then run
71
- `agent-native connect https://plan.agent-native.com` whenever you are ready:
65
+ `npx @agent-native/core@latest connect https://plan.agent-native.com` whenever you are ready:
72
66
 
73
67
  ```bash
74
68
  npx @agent-native/core@latest skills add visual-plan --no-connect
@@ -83,8 +77,8 @@ see [PR Visual Recap](/docs/pr-visual-recap).
83
77
  npx @agent-native/core@latest skills add visual-plan --with-github-action
84
78
  ```
85
79
 
86
- After the workflow is written, run `agent-native recap setup` to configure
87
- GitHub Actions secrets/variables where possible and `agent-native recap doctor`
80
+ After the workflow is written, run `npx @agent-native/core@latest recap setup` to configure
81
+ GitHub Actions secrets/variables where possible and `npx @agent-native/core@latest recap doctor`
88
82
  to verify the repo is ready.
89
83
 
90
84
  If you only want the portable instruction file through the open Skills CLI, use:
@@ -195,7 +189,7 @@ not call the hosted Plan MCP tools. The durable files are:
195
189
  After writing the folder, the agent validates and previews it locally:
196
190
 
197
191
  ```bash
198
- agent-native plan local preview --dir plans/<slug> --kind plan
192
+ npx @agent-native/core@latest plan local preview --dir plans/<slug> --kind plan
199
193
  ```
200
194
 
201
195
  If you run the Plan app locally with the same `PLAN_LOCAL_DIR`, you can open the
@@ -227,7 +221,7 @@ model if that privacy boundary matters too.
227
221
 
228
222
  If a Plans tool ever returns `needs auth`, `Unauthorized`, or `Session
229
223
  terminated`, do not keep retrying it. Authenticate the connector with
230
- `agent-native connect https://plan.agent-native.com` (or re-run `/mcp` →
224
+ `npx @agent-native/core@latest connect https://plan.agent-native.com` (or re-run `/mcp` →
231
225
  **Authenticate** in an OAuth-capable host), then continue once the connector is
232
226
  available.
233
227
 
@@ -239,7 +233,7 @@ Most users should install the skill with the CLI instead of scaffolding the app.
239
233
  ### Quick start
240
234
 
241
235
  ```bash
242
- npx @agent-native/core create my-plans --standalone --template plan
236
+ npx @agent-native/core@latest create my-plans --standalone --template plan
243
237
  cd my-plans
244
238
  pnpm install
245
239
  pnpm dev
@@ -71,7 +71,7 @@ The rest of this doc is for anyone forking the Slides template or extending it.
71
71
  Create a new Slides app from the CLI:
72
72
 
73
73
  ```bash
74
- npx @agent-native/core create my-slides --standalone --template slides
74
+ npx @agent-native/core@latest create my-slides --standalone --template slides
75
75
  cd my-slides
76
76
  pnpm install
77
77
  pnpm dev
@@ -51,13 +51,13 @@ Pick a domain template ([Mail](/docs/template-mail), [Calendar](/docs/template-c
51
51
  ## Scaffolding {#scaffolding}
52
52
 
53
53
  ```bash
54
- npx @agent-native/core create my-app --standalone --template starter
54
+ npx @agent-native/core@latest create my-app --standalone --template starter
55
55
  ```
56
56
 
57
57
  Or, in a workspace:
58
58
 
59
59
  ```bash
60
- npx @agent-native/core create my-platform # pick "Starter" (pre-selected by default) plus any others
60
+ npx @agent-native/core@latest create my-platform # pick "Starter" (pre-selected by default) plus any others
61
61
  ```
62
62
 
63
63
  ## First edits {#first-edits}
@@ -75,7 +75,7 @@ The studio runs on Remotion's `<Player>` for preview and the Remotion CLI for fi
75
75
  Scaffold a new Video app from the CLI:
76
76
 
77
77
  ```bash
78
- npx @agent-native/core create my-video-app --standalone --template videos
78
+ npx @agent-native/core@latest create my-video-app --standalone --template videos
79
79
  cd my-video-app
80
80
  pnpm install
81
81
  pnpm dev
@@ -127,7 +127,7 @@ For the resource model and canonical paths, see [Workspace — Global resources]
127
127
 
128
128
  ## Setup Checklist
129
129
 
130
- For a new workspace, after running `agent-native create`:
130
+ For a new workspace, after running `npx @agent-native/core@latest create`:
131
131
 
132
132
  **Git & GitHub:**
133
133
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-native/core",
3
- "version": "0.48.2",
3
+ "version": "0.48.3",
4
4
  "type": "module",
5
5
  "engines": {
6
6
  "node": ">=22"
@@ -119,7 +119,42 @@ window.location.href =
119
119
 
120
120
  After successful sign-in (token / email-password / Google OAuth), the framework 302s to `return`. The path is validated as same-origin via the URL parser — open-redirect / header-injection inputs fall back to `/`.
121
121
 
122
- Bookmarked private paths already work without any plumbing — the framework's login page is served at the requested URL, and post-login reload returns the user there.
122
+ Bookmarked private paths already work _when the request reaches the server_ — the auth guard serves the login page at the requested URL and post-login reload returns the user there.
123
+
124
+ ## Gating the App Shell (avoid the logged-out infinite spinner)
125
+
126
+ The server auth guard only protects requests that actually reach the Nitro
127
+ function. A statically-served / CDN-cached SPA shell, or a client-side (React
128
+ Router) navigation made after the session expired, never re-hits the guard — so
129
+ the app boots with **no session**, every data query 401s, and the UI sticks on
130
+ its loading state forever. Server-side protection alone is not enough; gate on
131
+ the client too.
132
+
133
+ For a fully private app (every page requires auth, like mail), wrap the routed
134
+ shell with the framework's `RequireSession`. It resolves the session on the
135
+ client and redirects signed-out visitors to `/_agent-native/sign-in?return=…`
136
+ instead of spinning:
137
+
138
+ ```tsx
139
+ import { AppProviders, RequireSession } from "@agent-native/core/client";
140
+
141
+ <AppProviders queryClient={queryClient}>
142
+ <RequireSession bypass={isMcpEmbedSurface()}>
143
+ <AppLayout>
144
+ <Outlet />
145
+ </AppLayout>
146
+ </RequireSession>
147
+ </AppProviders>;
148
+ ```
149
+
150
+ - Place it **inside** `AppProviders` (so the loading fallback is themed) and
151
+ **around** the layout/outlet — also around any always-mounted effects (poll,
152
+ automation trigger) so they don't fire 401s for logged-out visitors.
153
+ - Pass `bypass` for surfaces that authenticate by another mechanism (embed /
154
+ popout iframes carrying their own token) so they are never bounced to sign-in.
155
+ - Apps with public/anonymous routes (share pages) must **not** wrap the whole
156
+ app — gate only the private subtree, or use the `redirect={false}` +
157
+ `signedOut` props to render an inline call-to-action instead of redirecting.
123
158
 
124
159
  ## Related Skills
125
160