[{"data":1,"prerenderedAt":813},["ShallowReactive",2],{"docs:\u002Fdocs\u002Freference\u002Fcomposables":3,"docs:navigation":690,"docs:surround:\u002Fdocs\u002Freference\u002Fcomposables":808},{"id":4,"title":5,"body":6,"description":682,"extension":683,"meta":684,"navigation":321,"navigationTitle":685,"path":686,"seo":687,"stem":688,"__hash__":689},"docs\u002Fdocs\u002F6.reference\u002F2.composables.md","Composables",{"type":7,"value":8,"toc":674},"minimark",[9,18,23,129,139,146,264,268,371,391,395,462,476,480,505,512,589,593,639,650,654,670],[10,11,12,13,17],"p",{},"Use these in Nuxt ",[14,15,16],"code",{},"app\u002F"," code; the layer auto-imports them. They are typed from your agents and\nmodels and act in the current workspace.",[19,20,22],"h2",{"id":21},"usedurableagent","useDurableAgent",[24,25,30],"pre",{"className":26,"code":27,"language":28,"meta":29,"style":29},"language-ts shiki shiki-themes github-dark-default","const { agent, run, status, output, error, start, cancel, refresh } = useDurableAgent('support')\nawait start({ question: 'Where is my invoice?' }, { instructions: 'Answer in German.' })\n","ts","",[14,31,32,105],{"__ignoreMap":29},[33,34,37,41,45,49,52,55,57,60,62,65,67,70,72,75,77,80,82,85,88,91,95,98,102],"span",{"class":35,"line":36},"line",1,[33,38,40],{"class":39},"suJrU","const",[33,42,44],{"class":43},"sZEs4"," { ",[33,46,48],{"class":47},"sFSAA","agent",[33,50,51],{"class":43},", ",[33,53,54],{"class":47},"run",[33,56,51],{"class":43},[33,58,59],{"class":47},"status",[33,61,51],{"class":43},[33,63,64],{"class":47},"output",[33,66,51],{"class":43},[33,68,69],{"class":47},"error",[33,71,51],{"class":43},[33,73,74],{"class":47},"start",[33,76,51],{"class":43},[33,78,79],{"class":47},"cancel",[33,81,51],{"class":43},[33,83,84],{"class":47},"refresh",[33,86,87],{"class":43}," } ",[33,89,90],{"class":39},"=",[33,92,94],{"class":93},"sc3cj"," useDurableAgent",[33,96,97],{"class":43},"(",[33,99,101],{"class":100},"s9uIt","'support'",[33,103,104],{"class":43},")\n",[33,106,108,111,114,117,120,123,126],{"class":35,"line":107},2,[33,109,110],{"class":39},"await",[33,112,113],{"class":93}," start",[33,115,116],{"class":43},"({ question: ",[33,118,119],{"class":100},"'Where is my invoice?'",[33,121,122],{"class":43}," }, { instructions: ",[33,124,125],{"class":100},"'Answer in German.'",[33,127,128],{"class":43}," })\n",[10,130,131,132,134,135,138],{},"Use ",[14,133,22],{}," to load an agent and follow its latest run. Pass an ID or a slug from\n",[14,136,137],{},"server\u002Fagents\u002F\u003Cslug>.md",". Runs continue after the tab closes and pause for tool approvals.",[10,140,141,142,145],{},"When the selected agent or workspace changes, call ",[14,143,144],{},"refresh()"," from that event handler. Pass refs\nor getters when you need the composable to read the current selection.",[147,148,149,162],"table",{},[150,151,152],"thead",{},[153,154,155,159],"tr",{},[156,157,158],"th",{},"Returns",[156,160,161],{},"Description",[163,164,165,175,184,214,223,235,245,255],"tbody",{},[153,166,167,172],{},[168,169,170],"td",{},[14,171,48],{},[168,173,174],{},"The agent record",[153,176,177,181],{},[168,178,179],{},[14,180,54],{},[168,182,183],{},"The latest run, updated live",[153,185,186,190],{},[168,187,188],{},[14,189,59],{},[168,191,192,51,195,51,198,51,201,51,204,51,207,210,211],{},[14,193,194],{},"idle",[14,196,197],{},"queued",[14,199,200],{},"running",[14,202,203],{},"waiting",[14,205,206],{},"succeeded",[14,208,209],{},"failed"," or ",[14,212,213],{},"cancelled",[153,215,216,220],{},[168,217,218],{},[14,219,64],{},[168,221,222],{},"The run's text output so far",[153,224,225,229],{},[168,226,227],{},[14,228,69],{},[168,230,231,232],{},"A load or run error, or ",[14,233,234],{},"null",[153,236,237,242],{},[168,238,239],{},[14,240,241],{},"start(payload, { instructions? })",[168,243,244],{},"Starts a run; resolves once it is accepted",[153,246,247,252],{},[168,248,249],{},[14,250,251],{},"cancel()",[168,253,254],{},"Cancels the current run",[153,256,257,261],{},[168,258,259],{},[14,260,144],{},[168,262,263],{},"Reloads the agent",[19,265,267],{"id":266},"useagentrun","useAgentRun",[24,269,271],{"className":26,"code":270,"language":28,"meta":29,"style":29},"const { run, status, output, error, follow, cancel, stop } = useAgentRun(agentId, runId)\n\nfunction selectRun(runId: string) {\n  void follow({ agentId: 42, runId })\n}\n",[14,272,273,317,323,347,365],{"__ignoreMap":29},[33,274,275,277,279,281,283,285,287,289,291,293,295,298,300,302,304,307,309,311,314],{"class":35,"line":36},[33,276,40],{"class":39},[33,278,44],{"class":43},[33,280,54],{"class":47},[33,282,51],{"class":43},[33,284,59],{"class":47},[33,286,51],{"class":43},[33,288,64],{"class":47},[33,290,51],{"class":43},[33,292,69],{"class":47},[33,294,51],{"class":43},[33,296,297],{"class":47},"follow",[33,299,51],{"class":43},[33,301,79],{"class":47},[33,303,51],{"class":43},[33,305,306],{"class":47},"stop",[33,308,87],{"class":43},[33,310,90],{"class":39},[33,312,313],{"class":93}," useAgentRun",[33,315,316],{"class":43},"(agentId, runId)\n",[33,318,319],{"class":35,"line":107},[33,320,322],{"emptyLinePlaceholder":321},true,"\n",[33,324,326,329,332,334,338,341,344],{"class":35,"line":325},3,[33,327,328],{"class":39},"function",[33,330,331],{"class":93}," selectRun",[33,333,97],{"class":43},[33,335,337],{"class":336},"sQhOw","runId",[33,339,340],{"class":39},":",[33,342,343],{"class":47}," string",[33,345,346],{"class":43},") {\n",[33,348,350,353,356,359,362],{"class":35,"line":349},4,[33,351,352],{"class":39},"  void",[33,354,355],{"class":93}," follow",[33,357,358],{"class":43},"({ agentId: ",[33,360,361],{"class":47},"42",[33,363,364],{"class":43},", runId })\n",[33,366,368],{"class":35,"line":367},5,[33,369,370],{"class":43},"}\n",[10,372,131,373,375,376,379,380,383,384,387,388,390],{},[14,374,267],{}," to follow a run by ID, including one opened from ",[14,377,378],{},"?run=\u003Cid>",". Call\n",[14,381,382],{},"follow({ agentId, runId })"," when a user selects another run. ",[14,385,386],{},"stop()"," closes the event stream\nwithout cancelling the run; ",[14,389,251],{}," requests cancellation. Unmounting also closes the stream.",[19,392,394],{"id":393},"useautomation","useAutomation",[24,396,398],{"className":26,"code":397,"language":28,"meta":29,"style":29},"const { automation, runs, error, run, refresh, refreshRuns } = useAutomation(automationId)\nawait run({ record: { model: 'customer', id: 42 } })\n",[14,399,400,441],{"__ignoreMap":29},[33,401,402,404,406,409,411,414,416,418,420,422,424,426,428,431,433,435,438],{"class":35,"line":36},[33,403,40],{"class":39},[33,405,44],{"class":43},[33,407,408],{"class":47},"automation",[33,410,51],{"class":43},[33,412,413],{"class":47},"runs",[33,415,51],{"class":43},[33,417,69],{"class":47},[33,419,51],{"class":43},[33,421,54],{"class":47},[33,423,51],{"class":43},[33,425,84],{"class":47},[33,427,51],{"class":43},[33,429,430],{"class":47},"refreshRuns",[33,432,87],{"class":43},[33,434,90],{"class":39},[33,436,437],{"class":93}," useAutomation",[33,439,440],{"class":43},"(automationId)\n",[33,442,443,445,448,451,454,457,459],{"class":35,"line":107},[33,444,110],{"class":39},[33,446,447],{"class":93}," run",[33,449,450],{"class":43},"({ record: { model: ",[33,452,453],{"class":100},"'customer'",[33,455,456],{"class":43},", id: ",[33,458,361],{"class":47},[33,460,461],{"class":43}," } })\n",[10,463,464,465,468,469,471,472,475],{},"Loads an automation and its 20 most recent runs. ",[14,466,467],{},"run(payload)"," starts it now.\nCall ",[14,470,144],{}," after changing the selected automation or workspace in an event handler; it\nreloads both the automation and its recent runs. ",[14,473,474],{},"refreshRuns()"," reloads only its history.",[19,477,479],{"id":478},"useworkspace","useWorkspace",[24,481,483],{"className":26,"code":482,"language":28,"meta":29,"style":29},"const workspace = useWorkspace() \u002F\u002F Ref\u003Cstring>, default 'personal'\n",[14,484,485],{"__ignoreMap":29},[33,486,487,489,492,495,498,501],{"class":35,"line":36},[33,488,40],{"class":39},[33,490,491],{"class":47}," workspace",[33,493,494],{"class":39}," =",[33,496,497],{"class":93}," useWorkspace",[33,499,500],{"class":43},"() ",[33,502,504],{"class":503},"sH3jZ","\u002F\u002F Ref\u003Cstring>, default 'personal'\n",[10,506,507,508,511],{},"The workspace your own pages act in, stored in the ",[14,509,510],{},"agentic-workspace"," cookie. Set it to a team\nworkspace ID in your selection handler, then explicitly refresh the data your page uses:",[24,513,515],{"className":26,"code":514,"language":28,"meta":29,"style":29},"const { refresh } = useDurableAgent('support')\n\nasync function selectWorkspace(id: string) {\n  workspace.value = id\n  await refresh()\n}\n",[14,516,517,537,541,563,573,584],{"__ignoreMap":29},[33,518,519,521,523,525,527,529,531,533,535],{"class":35,"line":36},[33,520,40],{"class":39},[33,522,44],{"class":43},[33,524,84],{"class":47},[33,526,87],{"class":43},[33,528,90],{"class":39},[33,530,94],{"class":93},[33,532,97],{"class":43},[33,534,101],{"class":100},[33,536,104],{"class":43},[33,538,539],{"class":35,"line":107},[33,540,322],{"emptyLinePlaceholder":321},[33,542,543,546,549,552,554,557,559,561],{"class":35,"line":325},[33,544,545],{"class":39},"async",[33,547,548],{"class":39}," function",[33,550,551],{"class":93}," selectWorkspace",[33,553,97],{"class":43},[33,555,556],{"class":336},"id",[33,558,340],{"class":39},[33,560,343],{"class":47},[33,562,346],{"class":43},[33,564,565,568,570],{"class":35,"line":349},[33,566,567],{"class":43},"  workspace.value ",[33,569,90],{"class":39},[33,571,572],{"class":43}," id\n",[33,574,575,578,581],{"class":35,"line":367},[33,576,577],{"class":39},"  await",[33,579,580],{"class":93}," refresh",[33,582,583],{"class":43},"()\n",[33,585,587],{"class":35,"line":586},6,[33,588,370],{"class":43},[19,590,592],{"id":591},"useagenticclient","useAgenticClient",[24,594,596],{"className":26,"code":595,"language":28,"meta":29,"style":29},"const client = useAgenticClient()\nconst customers = await client('\u002Fapi\u002Fagentic\u002Fmodels\u002Fcustomer', { query: { search: 'acme' } })\n",[14,597,598,612],{"__ignoreMap":29},[33,599,600,602,605,607,610],{"class":35,"line":36},[33,601,40],{"class":39},[33,603,604],{"class":47}," client",[33,606,494],{"class":39},[33,608,609],{"class":93}," useAgenticClient",[33,611,583],{"class":43},[33,613,614,616,619,621,624,626,628,631,634,637],{"class":35,"line":107},[33,615,40],{"class":39},[33,617,618],{"class":47}," customers",[33,620,494],{"class":39},[33,622,623],{"class":39}," await",[33,625,604],{"class":93},[33,627,97],{"class":43},[33,629,630],{"class":100},"'\u002Fapi\u002Fagentic\u002Fmodels\u002Fcustomer'",[33,632,633],{"class":43},", { query: { search: ",[33,635,636],{"class":100},"'acme'",[33,638,461],{"class":43},[10,640,641,642,645,646,649],{},"A typed ",[14,643,644],{},"$fetch"," for the Agentic API. It sends the ",[14,647,648],{},"X-Agentic-Workspace"," header and forwards the\nsession cookie during SSR.",[19,651,653],{"id":652},"useagent-free-module","useAgent (free module)",[10,655,656,659,660,663,664,669],{},[14,657,658],{},"useAgent(name)"," from ",[14,661,662],{},"@nuxtagentic\u002Fnuxt"," runs an agent inside one request and streams its steps.\nUnder Pro it requires a signed-in user. See ",[665,666,668],"a",{"href":667},"\u002Fdocs\u002Fgetting-started\u002Ffree","Free module",".",[671,672,673],"style",{},"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 .sc3cj, html code.shiki .sc3cj{--shiki-default:#D2A8FF}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 .sQhOw, html code.shiki .sQhOw{--shiki-default:#FFA657}html pre.shiki code .sH3jZ, html code.shiki .sH3jZ{--shiki-default:#8B949E}",{"title":29,"searchDepth":107,"depth":107,"links":675},[676,677,678,679,680,681],{"id":21,"depth":107,"text":22},{"id":266,"depth":107,"text":267},{"id":393,"depth":107,"text":394},{"id":478,"depth":107,"text":479},{"id":591,"depth":107,"text":592},{"id":652,"depth":107,"text":653},"Nuxt composables for durable agents, runs, automations, the workspace and the API client.","md",{},null,"\u002Fdocs\u002Freference\u002Fcomposables",{"title":5,"description":682},"docs\u002F6.reference\u002F2.composables","b164Zmo44xaPb8-ay0G8SNI9CL3OJ_thYFe8ZUuXurw",[691],{"title":692,"path":693,"stem":694,"children":695,"navigationTitle":685},"Introduction","\u002Fdocs","docs\u002F0.index",[696,697,713,717,770,774,778,804],{"title":692,"path":693,"stem":694,"navigationTitle":685},{"title":698,"path":699,"stem":700,"children":701,"page":712},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started",[702,704,708],{"title":668,"path":667,"stem":703,"navigationTitle":685},"docs\u002F1.getting-started\u002F1.free",{"title":705,"path":706,"stem":707,"navigationTitle":685},"Pro on Nuxt","\u002Fdocs\u002Fgetting-started\u002Fnuxt","docs\u002F1.getting-started\u002F2.nuxt",{"title":709,"path":710,"stem":711,"navigationTitle":685},"Pro on Void","\u002Fdocs\u002Fgetting-started\u002Fvoid","docs\u002F1.getting-started\u002F3.void",false,{"title":714,"path":715,"stem":716,"navigationTitle":685},"Concepts","\u002Fdocs\u002Fconcepts","docs\u002F2.concepts",{"title":718,"path":719,"stem":720,"children":721,"page":712},"Guides","\u002Fdocs\u002Fguides","docs\u002F3.guides",[722,726,730,734,738,742,746,750,754,758,762,766],{"title":723,"path":724,"stem":725,"navigationTitle":685},"Agents","\u002Fdocs\u002Fguides\u002Fagents","docs\u002F3.guides\u002F1.agents",{"title":727,"path":728,"stem":729,"navigationTitle":685},"Events","\u002Fdocs\u002Fguides\u002Fevents","docs\u002F3.guides\u002F10.events",{"title":731,"path":732,"stem":733,"navigationTitle":685},"Features","\u002Fdocs\u002Fguides\u002Ffeatures","docs\u002F3.guides\u002F11.features",{"title":735,"path":736,"stem":737,"navigationTitle":685},"Coding agents","\u002Fdocs\u002Fguides\u002Fcoding-agents","docs\u002F3.guides\u002F12.coding-agents",{"title":739,"path":740,"stem":741,"navigationTitle":685},"Tools","\u002Fdocs\u002Fguides\u002Ftools","docs\u002F3.guides\u002F2.tools",{"title":743,"path":744,"stem":745,"navigationTitle":685},"Automations","\u002Fdocs\u002Fguides\u002Fautomations","docs\u002F3.guides\u002F3.automations",{"title":747,"path":748,"stem":749,"navigationTitle":685},"Agentic Models","\u002Fdocs\u002Fguides\u002Fagentic-models","docs\u002F3.guides\u002F4.agentic-models",{"title":751,"path":752,"stem":753,"navigationTitle":685},"Outcomes","\u002Fdocs\u002Fguides\u002Foutcomes","docs\u002F3.guides\u002F5.outcomes",{"title":755,"path":756,"stem":757,"navigationTitle":685},"Integrations","\u002Fdocs\u002Fguides\u002Fintegrations","docs\u002F3.guides\u002F6.integrations",{"title":759,"path":760,"stem":761,"navigationTitle":685},"Prompt","\u002Fdocs\u002Fguides\u002Fprompt","docs\u002F3.guides\u002F7.prompt",{"title":763,"path":764,"stem":765,"navigationTitle":685},"Server logic","\u002Fdocs\u002Fguides\u002Fserver-logic","docs\u002F3.guides\u002F8.server-logic",{"title":767,"path":768,"stem":769,"navigationTitle":685},"Dashboard UI","\u002Fdocs\u002Fguides\u002Fui","docs\u002F3.guides\u002F9.ui",{"title":771,"path":772,"stem":773,"navigationTitle":685},"Deploy to Cloudflare","\u002Fdocs\u002Fdeploy","docs\u002F4.deploy",{"title":775,"path":776,"stem":777,"navigationTitle":685},"Upgrading","\u002Fdocs\u002Fupgrade","docs\u002F5.upgrade",{"title":779,"path":780,"stem":781,"children":782,"page":712},"Reference","\u002Fdocs\u002Freference","docs\u002F6.reference",[783,787,788,792,796,800],{"title":784,"path":785,"stem":786,"navigationTitle":685},"Configuration","\u002Fdocs\u002Freference\u002Fconfiguration","docs\u002F6.reference\u002F1.configuration",{"title":5,"path":686,"stem":688,"navigationTitle":685},{"title":789,"path":790,"stem":791,"navigationTitle":685},"Server utilities","\u002Fdocs\u002Freference\u002Fserver-utils","docs\u002F6.reference\u002F3.server-utils",{"title":793,"path":794,"stem":795,"navigationTitle":685},"Services","\u002Fdocs\u002Freference\u002Fservices","docs\u002F6.reference\u002F4.services",{"title":797,"path":798,"stem":799,"navigationTitle":685},"REST API","\u002Fdocs\u002Freference\u002Frest-api","docs\u002F6.reference\u002F5.rest-api",{"title":801,"path":802,"stem":803,"navigationTitle":685},"CLI","\u002Fdocs\u002Freference\u002Fcli","docs\u002F6.reference\u002F6.cli",{"title":805,"path":806,"stem":807,"navigationTitle":685},"Licensing & FAQ","\u002Fdocs\u002Flicensing","docs\u002F8.licensing",[809,811],{"title":784,"path":785,"stem":786,"description":810,"children":-1},"Nuxt module options, defineNuxtAgentic, the Void plugin, defineVoidAgentic and environment variables.",{"title":789,"path":790,"stem":791,"description":812,"children":-1},"Nuxt server utilities and helpers for agents, tools, automations, integrations and models.",1792672479676]