[{"data":1,"prerenderedAt":638},["ShallowReactive",2],{"docs:\u002Fdocs\u002Fgetting-started\u002Fnuxt":3,"docs:navigation":521,"docs:surround:\u002Fdocs\u002Fgetting-started\u002Fnuxt":633},{"id":4,"title":5,"body":6,"description":512,"extension":513,"meta":514,"navigation":515,"navigationTitle":516,"path":517,"seo":518,"stem":519,"__hash__":520},"docs\u002Fdocs\u002F1.getting-started\u002F2.nuxt.md","Pro on Nuxt",{"type":7,"value":8,"toc":503},"minimark",[9,18,23,40,44,55,58,86,105,126,130,133,180,199,203,206,238,261,265,268,293,311,315,433,469,473,499],[10,11,12,13,17],"p",{},"Use this guide to run the Nuxt starter locally. It includes sign-in, a dashboard, example agents\nand tools, automation templates, and a ",[14,15,16],"code",{},"customers"," Agentic Model. Local development uses real\nCloudflare bindings, so the same app can run after deployment.",[19,20,22],"h2",{"id":21},"requirements","Requirements",[24,25,26,30,33],"ul",{},[27,28,29],"li",{},"Node.js 22.22.3+ or 24.15+, and pnpm 10.33+.",[27,31,32],{},"A Nuxt Agentic Pro license key, from your purchase email.",[27,34,35,36,39],{},"Access to the private ",[14,37,38],{},"nuxt-agentic-starter"," repository on GitHub, granted with your purchase.",[19,41,43],{"id":42},"_1-connect-the-private-registry","1. Connect the Private Registry",[10,45,46,47,50,51,54],{},"Pro packages install from ",[14,48,49],{},"registry.nuxtagentic.com","; your license key grants access to the\nreleases in your update window. Other dependencies, including ",[14,52,53],{},"@nuxtagentic\u002Fnuxt",", install from\nthe public npm registry.",[10,56,57],{},"Run the public setup CLI once per machine, then paste your license key at the masked prompt:",[59,60,65],"pre",{"className":61,"code":62,"language":63,"meta":64,"style":64},"language-bash shiki shiki-themes github-dark-default","pnpm dlx @nuxtagentic\u002Fcli@latest login\n","bash","",[14,66,67],{"__ignoreMap":64},[68,69,72,76,80,83],"span",{"class":70,"line":71},"line",1,[68,73,75],{"class":74},"sQhOw","pnpm",[68,77,79],{"class":78},"s9uIt"," dlx",[68,81,82],{"class":78}," @nuxtagentic\u002Fcli@latest",[68,84,85],{"class":78}," login\n",[10,87,88,89,92,93,96,97,100,101,104],{},"With npm, use ",[14,90,91],{},"npx @nuxtagentic\u002Fcli@latest login",". Use ",[14,94,95],{},"@next"," for release candidates.\nThe public CLI installs from npm, validates the key, and saves the scope and credentials in\nyour user ",[14,98,99],{},"~\u002F.npmrc",". The starter's ",[14,102,103],{},".npmrc.example"," contains only the scope line.",[10,106,107,108,111,112,115,116,119,120,125],{},"After installing the starter, use ",[14,109,110],{},"pnpm exec agentic login"," to replace a renewed key. Check\naccess with ",[14,113,114],{},"pnpm exec agentic status","; remove the saved token with ",[14,117,118],{},"pnpm exec agentic logout",".\nSee ",[121,122,124],"a",{"href":123},"\u002Fdocs\u002Flicensing","Licensing"," for update windows and CI access.",[19,127,129],{"id":128},"_2-create-your-project","2. Create Your Project",[10,131,132],{},"Use the starter repository as a template, or clone it:",[59,134,136],{"className":61,"code":135,"language":63,"meta":64,"style":64},"git clone \u003Cyour-starter-repository-url> my-app\ncd my-app\npnpm install\n",[14,137,138,163,172],{"__ignoreMap":64},[68,139,140,143,146,150,153,157,160],{"class":70,"line":71},[68,141,142],{"class":74},"git",[68,144,145],{"class":78}," clone",[68,147,149],{"class":148},"suJrU"," \u003C",[68,151,152],{"class":78},"your-starter-repository-ur",[68,154,156],{"class":155},"sZEs4","l",[68,158,159],{"class":148},">",[68,161,162],{"class":78}," my-app\n",[68,164,166,170],{"class":70,"line":165},2,[68,167,169],{"class":168},"sFSAA","cd",[68,171,162],{"class":78},[68,173,175,177],{"class":70,"line":174},3,[68,176,75],{"class":74},[68,178,179],{"class":78}," install\n",[10,181,182,183,186,187,190,191,194,195,198],{},"If ",[14,184,185],{},"pnpm install"," fails on a ",[14,188,189],{},"@nuxtagentic-pro"," package with ",[14,192,193],{},"404",", the scope does not point at\nthe registry yet. A ",[14,196,197],{},"401"," means the registry did not accept the key: check it against your\npurchase email.",[19,200,202],{"id":201},"_3-configure-and-migrate","3. Configure and Migrate",[10,204,205],{},"Create the secrets and the local database:",[59,207,209],{"className":61,"code":208,"language":63,"meta":64,"style":64},"pnpm exec agentic keygen   # creates .env with BETTER_AUTH_SECRET and AGENTIC_ENCRYPTION_KEY\npnpm db:migrate            # applies server\u002Fdatabase\u002Fmigrations to the local D1 database\n",[14,210,211,228],{"__ignoreMap":64},[68,212,213,215,218,221,224],{"class":70,"line":71},[68,214,75],{"class":74},[68,216,217],{"class":78}," exec",[68,219,220],{"class":78}," agentic",[68,222,223],{"class":78}," keygen",[68,225,227],{"class":226},"sH3jZ","   # creates .env with BETTER_AUTH_SECRET and AGENTIC_ENCRYPTION_KEY\n",[68,229,230,232,235],{"class":70,"line":165},[68,231,75],{"class":74},[68,233,234],{"class":78}," db:migrate",[68,236,237],{"class":226},"            # applies server\u002Fdatabase\u002Fmigrations to the local D1 database\n",[10,239,240,241,244,245,248,249,252,253,256,257,260],{},"Add a provider key (",[14,242,243],{},"OPENAI_API_KEY",", ",[14,246,247],{},"ANTHROPIC_API_KEY",", or ",[14,250,251],{},"GOOGLE_AI_API_KEY",") to ",[14,254,255],{},".env",". To\ntry runs without a key, switch an agent to the built-in ",[14,258,259],{},"mock"," provider.",[19,262,264],{"id":263},"_4-run-it","4. Run It",[10,266,267],{},"Start the app, then seed it from a second terminal:",[59,269,271],{"className":61,"code":270,"language":63,"meta":64,"style":64},"pnpm dev       # http:\u002F\u002Flocalhost:3000\u002Fdashboard\npnpm db:seed   # in a second terminal: demo account and example customers\n",[14,272,273,283],{"__ignoreMap":64},[68,274,275,277,280],{"class":70,"line":71},[68,276,75],{"class":74},[68,278,279],{"class":78}," dev",[68,281,282],{"class":226},"       # http:\u002F\u002Flocalhost:3000\u002Fdashboard\n",[68,284,285,287,290],{"class":70,"line":165},[68,286,75],{"class":74},[68,288,289],{"class":78}," db:seed",[68,291,292],{"class":226},"   # in a second terminal: demo account and example customers\n",[10,294,295,296,299,300,303,304,307,308,310],{},"Sign in with ",[14,297,298],{},"demo@example.com"," and ",[14,301,302],{},"demo-password-123",". When something is off,\n",[14,305,306],{},"pnpm exec agentic doctor"," checks Node, pnpm, ",[14,309,255],{},", bindings, migrations, package versions, and\nyour license.",[19,312,314],{"id":313},"where-things-live","Where Things Live",[316,317,318,331],"table",{},[319,320,321],"thead",{},[322,323,324,328],"tr",{},[325,326,327],"th",{},"Path",[325,329,330],{},"What",[332,333,334,348,358,371,384,397,410,420],"tbody",{},[322,335,336,342],{},[337,338,339],"td",{},[14,340,341],{},"server\u002Fmodels\u002F*.ts",[337,343,344,345],{},"Agentic Models: a Drizzle table plus ",[14,346,347],{},"defineAgenticModel",[322,349,350,355],{},[337,351,352],{},[14,353,354],{},"server\u002Fagents\u002F*.md",[337,356,357],{},"Code agents: frontmatter and instructions, read-only in the UI",[322,359,360,365],{},[337,361,362],{},[14,363,364],{},"server\u002Ftools\u002F*.ts",[337,366,367,368],{},"Agent tools with ",[14,369,370],{},"defineAgentTool",[322,372,373,378],{},[337,374,375],{},[14,376,377],{},"server\u002Fautomations\u002F*.ts",[337,379,380,381],{},"Automation templates with ",[14,382,383],{},"defineAutomation",[322,385,386,391],{},[337,387,388],{},[14,389,390],{},"server\u002Fintegrations\u002F*.ts",[337,392,393,394],{},"Your own integrations with ",[14,395,396],{},"defineIntegration",[322,398,399,404],{},[337,400,401],{},[14,402,403],{},"server\u002Fagentic.ts",[337,405,406,407],{},"Optional: auth options, extra features, ",[14,408,409],{},"updateRecord",[322,411,412,417],{},[337,413,414],{},[14,415,416],{},"server\u002Fdatabase\u002Fschema.ts",[337,418,419],{},"Schema for migrations: package tables plus your models",[322,421,422,427],{},[337,423,424],{},[14,425,426],{},"app\u002F",[337,428,429,430],{},"Your pages; override any dashboard page, component, or ",[14,431,432],{},"app.config.ts",[10,434,435,436,438,439,244,441,244,443,445,446,449,450,244,452,244,455,244,458,244,461,464,465,468],{},"Files in these folders are discovered automatically. On the server, ",[14,437,370],{},",\n",[14,440,347],{},[14,442,383],{},[14,444,396],{},", and ",[14,447,448],{},"useAgentic(event)"," are\nauto-imported. In ",[14,451,426],{},[14,453,454],{},"useDurableAgent",[14,456,457],{},"useAgentRun",[14,459,460],{},"useAutomation",[14,462,463],{},"useAgenticClient",",\nand ",[14,466,467],{},"useWorkspace"," are.",[19,470,472],{"id":471},"next-steps","Next Steps",[24,474,475,486,493],{},[27,476,477,299,481,485],{},[121,478,480],{"href":479},"\u002Fdocs\u002Fguides\u002Fagents","Agents",[121,482,484],{"href":483},"\u002Fdocs\u002Fguides\u002Ftools","tools",".",[27,487,488,492],{},[121,489,491],{"href":490},"\u002Fdocs\u002Fguides\u002Fagentic-models","Agentic Models",": your tables as agent tools.",[27,494,495,485],{},[121,496,498],{"href":497},"\u002Fdocs\u002Fdeploy","Deploy to Cloudflare",[500,501,502],"style",{},"html pre.shiki code .sQhOw, html code.shiki .sQhOw{--shiki-default:#FFA657}html pre.shiki code .s9uIt, html code.shiki .s9uIt{--shiki-default:#A5D6FF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .suJrU, html code.shiki .suJrU{--shiki-default:#FF7B72}html pre.shiki code .sZEs4, html code.shiki .sZEs4{--shiki-default:#E6EDF3}html pre.shiki code .sFSAA, html code.shiki .sFSAA{--shiki-default:#79C0FF}html pre.shiki code .sH3jZ, html code.shiki .sH3jZ{--shiki-default:#8B949E}",{"title":64,"searchDepth":165,"depth":165,"links":504},[505,506,507,508,509,510,511],{"id":21,"depth":165,"text":22},{"id":42,"depth":165,"text":43},{"id":128,"depth":165,"text":129},{"id":201,"depth":165,"text":202},{"id":263,"depth":165,"text":264},{"id":313,"depth":165,"text":314},{"id":471,"depth":165,"text":472},"Install the Nuxt starter from the private registry and open your dashboard locally.","md",{},{"title":5},null,"\u002Fdocs\u002Fgetting-started\u002Fnuxt",{"title":5,"description":512},"docs\u002F1.getting-started\u002F2.nuxt","uyFHJ69pOMK7JswWz9DXf5qNfP7M1jzym-tR9CYmp50",[522],{"title":523,"path":524,"stem":525,"children":526,"navigationTitle":516},"Introduction","\u002Fdocs","docs\u002F0.index",[527,528,543,547,595,597,601,630],{"title":523,"path":524,"stem":525,"navigationTitle":516},{"title":529,"path":530,"stem":531,"children":532,"page":542},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started",[533,537,538],{"title":534,"path":535,"stem":536,"navigationTitle":516},"Free module","\u002Fdocs\u002Fgetting-started\u002Ffree","docs\u002F1.getting-started\u002F1.free",{"title":5,"path":517,"stem":519,"navigationTitle":516},{"title":539,"path":540,"stem":541,"navigationTitle":516},"Pro on Void","\u002Fdocs\u002Fgetting-started\u002Fvoid","docs\u002F1.getting-started\u002F3.void",false,{"title":544,"path":545,"stem":546,"navigationTitle":516},"Concepts","\u002Fdocs\u002Fconcepts","docs\u002F2.concepts",{"title":548,"path":549,"stem":550,"children":551,"page":542},"Guides","\u002Fdocs\u002Fguides","docs\u002F3.guides",[552,554,558,562,566,569,573,575,579,583,587,591],{"title":480,"path":479,"stem":553,"navigationTitle":516},"docs\u002F3.guides\u002F1.agents",{"title":555,"path":556,"stem":557,"navigationTitle":516},"Events","\u002Fdocs\u002Fguides\u002Fevents","docs\u002F3.guides\u002F10.events",{"title":559,"path":560,"stem":561,"navigationTitle":516},"Features","\u002Fdocs\u002Fguides\u002Ffeatures","docs\u002F3.guides\u002F11.features",{"title":563,"path":564,"stem":565,"navigationTitle":516},"Coding agents","\u002Fdocs\u002Fguides\u002Fcoding-agents","docs\u002F3.guides\u002F12.coding-agents",{"title":567,"path":483,"stem":568,"navigationTitle":516},"Tools","docs\u002F3.guides\u002F2.tools",{"title":570,"path":571,"stem":572,"navigationTitle":516},"Automations","\u002Fdocs\u002Fguides\u002Fautomations","docs\u002F3.guides\u002F3.automations",{"title":491,"path":490,"stem":574,"navigationTitle":516},"docs\u002F3.guides\u002F4.agentic-models",{"title":576,"path":577,"stem":578,"navigationTitle":516},"Outcomes","\u002Fdocs\u002Fguides\u002Foutcomes","docs\u002F3.guides\u002F5.outcomes",{"title":580,"path":581,"stem":582,"navigationTitle":516},"Integrations","\u002Fdocs\u002Fguides\u002Fintegrations","docs\u002F3.guides\u002F6.integrations",{"title":584,"path":585,"stem":586,"navigationTitle":516},"Prompt","\u002Fdocs\u002Fguides\u002Fprompt","docs\u002F3.guides\u002F7.prompt",{"title":588,"path":589,"stem":590,"navigationTitle":516},"Server logic","\u002Fdocs\u002Fguides\u002Fserver-logic","docs\u002F3.guides\u002F8.server-logic",{"title":592,"path":593,"stem":594,"navigationTitle":516},"Dashboard UI","\u002Fdocs\u002Fguides\u002Fui","docs\u002F3.guides\u002F9.ui",{"title":498,"path":497,"stem":596,"navigationTitle":516},"docs\u002F4.deploy",{"title":598,"path":599,"stem":600,"navigationTitle":516},"Upgrading","\u002Fdocs\u002Fupgrade","docs\u002F5.upgrade",{"title":602,"path":603,"stem":604,"children":605,"page":542},"Reference","\u002Fdocs\u002Freference","docs\u002F6.reference",[606,610,614,618,622,626],{"title":607,"path":608,"stem":609,"navigationTitle":516},"Configuration","\u002Fdocs\u002Freference\u002Fconfiguration","docs\u002F6.reference\u002F1.configuration",{"title":611,"path":612,"stem":613,"navigationTitle":516},"Composables","\u002Fdocs\u002Freference\u002Fcomposables","docs\u002F6.reference\u002F2.composables",{"title":615,"path":616,"stem":617,"navigationTitle":516},"Server utilities","\u002Fdocs\u002Freference\u002Fserver-utils","docs\u002F6.reference\u002F3.server-utils",{"title":619,"path":620,"stem":621,"navigationTitle":516},"Services","\u002Fdocs\u002Freference\u002Fservices","docs\u002F6.reference\u002F4.services",{"title":623,"path":624,"stem":625,"navigationTitle":516},"REST API","\u002Fdocs\u002Freference\u002Frest-api","docs\u002F6.reference\u002F5.rest-api",{"title":627,"path":628,"stem":629,"navigationTitle":516},"CLI","\u002Fdocs\u002Freference\u002Fcli","docs\u002F6.reference\u002F6.cli",{"title":631,"path":123,"stem":632,"navigationTitle":516},"Licensing & FAQ","docs\u002F8.licensing",[634,636],{"title":534,"path":535,"stem":536,"description":635,"children":-1},"Add Markdown agents and typed tools to any Nuxt app with the MIT module.",{"title":539,"path":540,"stem":541,"description":637,"children":-1},"Install the Void starter, a Vue and Vite app on Cloudflare Workers.",1792672479668]