diff --git a/docs/content/docs/agent/getting-started/quickstart.mdx b/docs/content/docs/agent/getting-started/quickstart.mdx index 751b6ee4b..fb91cf8ae 100644 --- a/docs/content/docs/agent/getting-started/quickstart.mdx +++ b/docs/content/docs/agent/getting-started/quickstart.mdx @@ -47,8 +47,31 @@ npm run dev Open [http://localhost:3000](http://localhost:3000) and request an interface such as a comparison table or interactive form. +## 4. Share a preview + +Deploy a Vercel preview from the project directory: + +```bash tab="pnpm" tab-group="pkg" +pnpx @openuidev/cli@latest deploy +``` + +```bash tab="bun" tab-group="pkg" +bunx @openuidev/cli@latest deploy +``` + +```bash tab="yarn" tab-group="pkg" +yarn dlx @openuidev/cli@latest deploy +``` + +```bash tab="npm" tab-group="pkg" +npx @openuidev/cli@latest deploy +``` + +Allowlisted keys from `.env`, such as `OPENAI_API_KEY`, are passed to the deployment. + ## What to read next +- [Deploy with the CLI](/docs/api-reference/cli#deploy) - [Adapters and formats](/docs/agent/reference/adapters-and-formats) - [Generative UI](/docs/agent/core-concepts/generative-ui) - [Customize Agent Interface](/docs/agent/customize/welcome-and-starters) diff --git a/docs/content/docs/getting-started.mdx b/docs/content/docs/getting-started.mdx index 71369a477..084e63b75 100644 --- a/docs/content/docs/getting-started.mdx +++ b/docs/content/docs/getting-started.mdx @@ -63,6 +63,16 @@ npx @openuidev/cli@latest create \ The generated application includes [Agent Interface](/docs/agent/getting-started/introduction) and an OpenUI Lang component library. Follow the [Agent Interface Quickstart](/docs/agent/getting-started/quickstart) to understand the generated project. +### Share a preview + +From the project directory, deploy a Vercel preview without installing the Vercel CLI: + +```bash +npx @openuidev/cli@latest deploy +``` + +See the [CLI reference](/docs/api-reference/cli#deploy) for `--prod`, `--yes`, and `--skip-env`. + ## Add OpenUI to an existing application diff --git a/packages/openui-cli/src/commands/create-app.ts b/packages/openui-cli/src/commands/create-app.ts index e42a6c026..06f668c73 100644 --- a/packages/openui-cli/src/commands/create-app.ts +++ b/packages/openui-cli/src/commands/create-app.ts @@ -811,9 +811,11 @@ function getStartedMessage(o: { `> ${o.devCmd} run dev`, ].join("\n"); + const deployHint = "Share a preview:\n> npx @openuidev/cli@latest deploy"; + const frameworkNote = o.backendGettingStarted?.replaceAll("{{packageManager}}", o.devCmd) ?? ""; - return `\n${[skillMessage.trim(), "Done!", envNote, frameworkNote, nextStep] + return `\n${[skillMessage.trim(), "Done!", envNote, frameworkNote, nextStep, deployHint] .filter(Boolean) .join("\n\n")}\n`; } diff --git a/templates/openui-cloud/overlays/langgraph/manifest.json b/templates/openui-cloud/overlays/langgraph/manifest.json index eb26640ce..0b8a99d66 100644 --- a/templates/openui-cloud/overlays/langgraph/manifest.json +++ b/templates/openui-cloud/overlays/langgraph/manifest.json @@ -13,5 +13,5 @@ "files": { "remove": ["src/lib/tool-loop.ts"] }, - "gettingStarted": "The generated LangGraph agent runs in-process inside the Next.js `/api/chat` route and uses OpenUI Cloud as its Responses provider. `{{packageManager}} run dev` starts the app; deploy it to Vercel as-is.\nAsk \"What's the weather in Berlin?\" to exercise the included LangGraph tool." + "gettingStarted": "The generated LangGraph agent runs in-process inside the Next.js `/api/chat` route and uses OpenUI Cloud as its Responses provider. `{{packageManager}} run dev` starts the app. Share a preview with `npx @openuidev/cli@latest deploy`.\nAsk \"What's the weather in Berlin?\" to exercise the included LangGraph tool." } diff --git a/templates/openui-cloud/overlays/vercel-ai-sdk/manifest.json b/templates/openui-cloud/overlays/vercel-ai-sdk/manifest.json index 700ae3743..a4b1b7b8b 100644 --- a/templates/openui-cloud/overlays/vercel-ai-sdk/manifest.json +++ b/templates/openui-cloud/overlays/vercel-ai-sdk/manifest.json @@ -12,5 +12,5 @@ "files": { "remove": ["src/lib/tool-loop.ts"] }, - "gettingStarted": "The generated Vercel AI SDK route calls OpenUI Cloud Chat Completions and is deployable as a normal Next.js app on Vercel.\nAsk \"What's the weather in Berlin?\" to exercise the included AI SDK tool." + "gettingStarted": "The generated Vercel AI SDK route calls OpenUI Cloud Chat Completions. Share a preview with `npx @openuidev/cli@latest deploy`.\nAsk \"What's the weather in Berlin?\" to exercise the included AI SDK tool." } diff --git a/templates/openui-self-hosted/overlays/langgraph/manifest.json b/templates/openui-self-hosted/overlays/langgraph/manifest.json index cb337a5cd..f293b6dbf 100644 --- a/templates/openui-self-hosted/overlays/langgraph/manifest.json +++ b/templates/openui-self-hosted/overlays/langgraph/manifest.json @@ -11,5 +11,5 @@ }, "removeDependencies": ["openai"] }, - "gettingStarted": "The generated LangGraph agent runs in-process inside the Next.js `/api/chat` route, with your OpenAI-compatible provider as its model. `{{packageManager}} run dev` starts the app; deploy it to Vercel as-is.\nAsk \"What's the weather in Berlin?\" to exercise its native tool loop." + "gettingStarted": "The generated LangGraph agent runs in-process inside the Next.js `/api/chat` route, with your OpenAI-compatible provider as its model. `{{packageManager}} run dev` starts the app. Share a preview with `npx @openuidev/cli@latest deploy`.\nAsk \"What's the weather in Berlin?\" to exercise its native tool loop." }