reflex-agent 0.8.0 → 0.9.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/.next/BUILD_ID +1 -1
- package/.next/app-build-manifest.json +104 -104
- package/.next/app-path-routes-manifest.json +11 -11
- package/.next/build-manifest.json +5 -5
- package/.next/prerender-manifest.json +7 -7
- package/.next/react-loadable-manifest.json +1 -1
- package/.next/server/app/_not-found/page.js +1 -1
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/agents/[agentId]/page.js +3 -3
- package/.next/server/app/agents/[agentId]/page.js.nft.json +1 -1
- package/.next/server/app/agents/[agentId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/[agentId]/respond/route.js +2 -2
- package/.next/server/app/api/agents/[agentId]/respond/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/[agentId]/respond/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/images/[rootId]/[file]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/callback/route.js +2 -2
- package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/oauth/start/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/attachments/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route.js +2 -2
- package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route.js.nft.json +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/send/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route.js +2 -2
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route.js.nft.json +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stop/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route.js +3 -3
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route.js.nft.json +1 -1
- package/.next/server/app/api/roots/[id]/chat/[topicId]/stream/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/dashboard/route.js +1 -1
- package/.next/server/app/api/roots/[id]/dashboard/route.js.nft.json +1 -1
- package/.next/server/app/api/roots/[id]/dashboard/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/roots/[id]/suggestions/route.js +1 -1
- package/.next/server/app/api/roots/[id]/suggestions/route.js.nft.json +1 -1
- package/.next/server/app/api/roots/[id]/suggestions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/bundle.js/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/host/route.js +2 -2
- package/.next/server/app/api/utilities/[scope]/[id]/host/route.js.nft.json +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/host/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/host-api.mjs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/host-ui.mjs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/iframe/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/utilities/[scope]/[id]/style.css/route_client-reference-manifest.js +1 -1
- package/.next/server/app/audit/page.js +1 -1
- package/.next/server/app/audit/page.js.nft.json +1 -1
- package/.next/server/app/audit/page_client-reference-manifest.js +1 -1
- package/.next/server/app/onboarding/page.js +3 -3
- package/.next/server/app/onboarding/page.js.nft.json +1 -1
- package/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page.js +3 -2
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/[id]/chat/[topicId]/page.js +2 -2
- package/.next/server/app/roots/[id]/chat/[topicId]/page.js.nft.json +1 -1
- package/.next/server/app/roots/[id]/chat/[topicId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/[id]/kb/[...slug]/page.js +2 -2
- package/.next/server/app/roots/[id]/kb/[...slug]/page.js.nft.json +1 -1
- package/.next/server/app/roots/[id]/kb/[...slug]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/[id]/page.js +4 -4
- package/.next/server/app/roots/[id]/page.js.nft.json +1 -1
- package/.next/server/app/roots/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/[id]/workflows/[wfId]/page.js +2 -2
- package/.next/server/app/roots/[id]/workflows/[wfId]/page.js.nft.json +1 -1
- package/.next/server/app/roots/[id]/workflows/[wfId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/[id]/workflows/page.js +1 -1
- package/.next/server/app/roots/[id]/workflows/page.js.nft.json +1 -1
- package/.next/server/app/roots/[id]/workflows/page_client-reference-manifest.js +1 -1
- package/.next/server/app/roots/new/page.js +3 -3
- package/.next/server/app/roots/new/page.js.nft.json +1 -1
- package/.next/server/app/roots/new/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/page.js +4 -4
- package/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/share/[id]/file/page.js +1 -1
- package/.next/server/app/share/[id]/file/page.js.nft.json +1 -1
- package/.next/server/app/share/[id]/file/page_client-reference-manifest.js +1 -1
- package/.next/server/app/share/[id]/page.js +2 -2
- package/.next/server/app/share/[id]/page.js.nft.json +1 -1
- package/.next/server/app/share/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/utilities/[scope]/[id]/page.js +2 -2
- package/.next/server/app/utilities/[scope]/[id]/page.js.nft.json +1 -1
- package/.next/server/app/utilities/[scope]/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/utilities/page.js +2 -2
- package/.next/server/app/utilities/page.js.nft.json +1 -1
- package/.next/server/app/utilities/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +11 -11
- package/.next/server/chunks/1105.js +1 -1
- package/.next/server/chunks/126.js +4 -0
- package/.next/server/chunks/{3152.js → 1358.js} +1 -1
- package/.next/server/chunks/1769.js +4 -0
- package/.next/server/chunks/2485.js +2 -2
- package/.next/server/chunks/2787.js +1 -0
- package/.next/server/chunks/285.js +52 -19
- package/.next/server/chunks/3325.js +1 -0
- package/.next/server/chunks/3332.js +1 -1
- package/.next/server/chunks/3662.js +1 -0
- package/.next/server/chunks/3834.js +1 -0
- package/.next/server/chunks/4031.js +2 -2
- package/.next/server/chunks/4315.js +3 -0
- package/.next/server/chunks/4334.js +1 -0
- package/.next/server/chunks/4812.js +1 -1
- package/.next/server/chunks/4863.js +1 -1
- package/.next/server/chunks/4925.js +1 -1
- package/.next/server/chunks/539.js +1 -1
- package/.next/server/chunks/6038.js +1 -1
- package/.next/server/chunks/{6822.js → 6060.js} +1 -1
- package/.next/server/chunks/6483.js +2 -2
- package/.next/server/chunks/6796.js +1 -0
- package/.next/server/chunks/7220.js +1 -0
- package/.next/server/chunks/7358.js +52 -19
- package/.next/server/chunks/8576.js +7 -0
- package/.next/server/chunks/9098.js +1 -1
- package/.next/server/chunks/9179.js +7 -0
- package/.next/server/chunks/9897.js +4 -0
- package/.next/server/functions-config-manifest.json +3 -3
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-manifest.json +5 -5
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/1160-65b58f7f28665195.js +1 -0
- package/.next/static/chunks/2658-cc99fd9ba2a00562.js +1 -0
- package/.next/static/chunks/4108.9f8cc28a75365b81.js +1 -0
- package/.next/static/chunks/5009-9a5e431b79b6d31a.js +1 -0
- package/.next/static/chunks/6525-6a879c1bae21d76b.js +1 -0
- package/.next/static/chunks/9129-2656848b2540e05d.js +1 -0
- package/.next/static/chunks/app/layout-ad875f9d0eb94653.js +1 -0
- package/.next/static/chunks/app/onboarding/page-9dd30a7cc94ad562.js +1 -0
- package/.next/static/chunks/app/page-28756fb2874347a0.js +1 -0
- package/.next/static/chunks/app/roots/[id]/chat/[topicId]/page-5cbee36c42e841cd.js +1 -0
- package/.next/static/chunks/app/roots/[id]/kb/[...slug]/page-4ef320e1d42925da.js +1 -0
- package/.next/static/chunks/app/roots/[id]/{page-6a9df2bb923bb1d3.js → page-130496cce12e4d65.js} +1 -1
- package/.next/static/chunks/app/roots/[id]/workflows/[wfId]/page-a7985128904fb885.js +1 -0
- package/.next/static/chunks/app/roots/new/page-ab8f40cf85744a4f.js +1 -0
- package/.next/static/chunks/app/settings/page-0e912af785eefc49.js +1 -0
- package/.next/static/chunks/app/share/[id]/page-aaabf42daed89c53.js +1 -0
- package/.next/static/chunks/app/utilities/[scope]/[id]/page-fc19e1ed2c5b6d91.js +1 -0
- package/.next/static/chunks/app/utilities/page-6d361b43b2b8997c.js +1 -0
- package/.next/static/chunks/{webpack-6f08731be9714ee4.js → webpack-0eaa6fc269024b97.js} +1 -1
- package/.next/trace +89 -89
- package/dist/lib/reflex/agents/prompts.js +45 -0
- package/dist/lib/reflex/agents/prompts.js.map +1 -1
- package/package.json +1 -1
- package/.next/server/chunks/2920.js +0 -1
- package/.next/server/chunks/3151.js +0 -3
- package/.next/server/chunks/4197.js +0 -4
- package/.next/server/chunks/8872.js +0 -1
- package/.next/server/chunks/9637.js +0 -1
- package/.next/static/chunks/4108.aca4cb07ce9b3ed2.js +0 -1
- package/.next/static/chunks/4138-d787eac2eac9c9a8.js +0 -1
- package/.next/static/chunks/4847-a85e8d18ea0da09e.js +0 -1
- package/.next/static/chunks/527-c86224761908776e.js +0 -1
- package/.next/static/chunks/70-61c97afa667d1efe.js +0 -1
- package/.next/static/chunks/8270-8e72f6c35eb03ad2.js +0 -1
- package/.next/static/chunks/app/layout-c712136be28f3127.js +0 -1
- package/.next/static/chunks/app/onboarding/page-a4145c3e505dfe74.js +0 -1
- package/.next/static/chunks/app/page-6096902532dd6ec8.js +0 -1
- package/.next/static/chunks/app/roots/[id]/chat/[topicId]/page-b3d8e79a61db4bdc.js +0 -1
- package/.next/static/chunks/app/roots/[id]/kb/[...slug]/page-75d2a17f6f78a45d.js +0 -1
- package/.next/static/chunks/app/roots/[id]/workflows/[wfId]/page-8a3c2c81fce5b020.js +0 -1
- package/.next/static/chunks/app/roots/new/page-dc4edb7f4cbc2441.js +0 -1
- package/.next/static/chunks/app/settings/page-df5f4911b7f3a2df.js +0 -1
- package/.next/static/chunks/app/share/[id]/page-050853f9974f0915.js +0 -1
- package/.next/static/chunks/app/utilities/[scope]/[id]/page-d5494af2daf1c38d.js +0 -1
- package/.next/static/chunks/app/utilities/page-3ee2dc6d66ad4154.js +0 -1
- /package/.next/static/{F56etct0NPc8KXiqqJQvx → MBVnqa0-K_3N0C89I_I5d}/_buildManifest.js +0 -0
- /package/.next/static/{F56etct0NPc8KXiqqJQvx → MBVnqa0-K_3N0C89I_I5d}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=6796,exports.ids=[6796],exports.modules={879:(a,b,c)=>{c.d(b,{G:()=>k});var d=c(73024),e=c(76760),f=c.n(e),g=c(55136),h=c.n(g),i=c(54287);class j{constructor(a,b){this.root=a,this.layers=b}static async create(a){return new j(a,[]).enter(a)}async enter(a){let b,c=f().join(a,i.KZ);try{b=await d.promises.readFile(c,"utf8")}catch{return this}let e=h()().add(b);return new j(this.root,[...this.layers,{dir:a,ig:e}])}ignores(a){let b=f().basename(a);if(i.Lj.has(b))return!0;for(let{dir:b,ig:c}of this.layers){let d=f().relative(b,a);if(!(!d||d.startsWith(".."))&&c.ignores(d))return!0}return!1}}async function*k(a,b={}){let{maxDepth:c=1/0,followSymlinks:d=!1}=b,e=f().resolve(a),g=await j.create(e);yield{abs:e,rel:".",isDir:!0},yield*l(e,e,g,0,c,d)}async function*l(a,b,c,e,g,h){let i;if(!(e>=g)){try{i=await d.promises.readdir(b,{withFileTypes:!0})}catch{return}for(let d of(i.sort((a,b)=>a.name.localeCompare(b.name)),i)){var j,k;let i=f().join(b,d.name);if(c.ignores(i))continue;let n=d.isSymbolicLink();if(n&&!h)continue;let o=d.isDirectory()||n&&await m(i),p=(j=a,k=i,f().relative(j,k).split(f().sep).join("/"));if(yield{abs:i,rel:p,isDir:o},o){let b=await c.enter(i);yield*l(a,i,b,e+1,g,h)}}}}async function m(a){try{return(await d.promises.stat(a)).isDirectory()}catch{return!1}}},4168:(a,b,c)=>{c.d(b,{S:()=>j});var d=c(73745);c(66493);var e=c(76760),f=c.n(e),g=c(53905),h=c(54287),i=c(879);async function j(a,b){try{let d=await (0,g.Zn)(a);if(!d)return{ok:!1,error:"Root not found"};let e=(b??"").toLowerCase().trim(),j=[];try{let{listUtilities:b}=await Promise.resolve().then(c.bind(c,8118));for(let c of(await b({rootId:a})))j.push({kind:"utility",relPath:`util:${c.scope}/${c.manifest.id}`,absPath:"",label:`${c.manifest.name} (${c.scope})`,parent:"utilities"})}catch{}for await(let a of(0,i.G)((0,h.FF)(d.path))){if(a.isDir||!a.rel.toLowerCase().endsWith(".md")||a.rel.startsWith("topics/")||a.rel.startsWith("attachments/"))continue;let b=`${h.fW}/${a.rel}`;j.push({kind:"kb",relPath:b,absPath:a.abs,label:a.rel,parent:"."===f().dirname(a.rel)?h.fW:`${h.fW}/${f().dirname(a.rel)}`})}for await(let a of(0,i.G)(d.path))a.isDir||j.push({kind:"file",relPath:a.rel,absPath:a.abs,label:a.rel,parent:"."===f().dirname(a.rel)?"":f().dirname(a.rel)});let k=e?j.filter(a=>{let b=a.relPath.toLowerCase();return f().basename(a.relPath).toLowerCase().includes(e)||b.includes(e)}):j,l={utility:0,kb:1,file:2};return k.sort((a,b)=>{if(a.kind!==b.kind)return l[a.kind]-l[b.kind];if(e){let c=f().basename(a.label).toLowerCase(),d=f().basename(b.label).toLowerCase(),g=+!c.startsWith(e),h=+!d.startsWith(e);if(g!==h)return g-h}return a.relPath.localeCompare(b.relPath)}),{ok:!0,items:k.slice(0,30)}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}(0,c(63781).D)([j]),(0,d.A)(j,"60b1847c870abffcabeb17ab7a3ff3da9473d9f335",null)},8836:(a,b,c)=>{c.d(b,{E:()=>g});var d=c(64173),e=c(71813),f=c(69552);function g({label:a,headerRight:b,children:c}){let g=(0,e.c)("roots"),h=a??g("commandBarFrame.label");return(0,d.jsx)("div",{className:"border-t bg-background",children:(0,d.jsx)("div",{className:"mx-auto max-w-3xl px-6 py-5",children:(0,d.jsx)("div",{className:"reflex-gradient rounded-2xl p-[2px] shadow-[0_8px_40px_-12px_oklch(0.55_0.2_290/0.45)]",children:(0,d.jsxs)("div",{className:"rounded-[14px] bg-background/85 backdrop-blur-xl px-5 py-4",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,d.jsx)("span",{className:"reflex-gradient inline-flex h-6 w-6 items-center justify-center rounded-full text-white shadow-sm",children:(0,d.jsx)(f.A,{className:"h-3.5 w-3.5"})}),(0,d.jsx)("span",{className:"text-[11px] uppercase tracking-[0.18em] text-muted-foreground",children:h}),b&&(0,d.jsx)("span",{className:"ml-auto flex items-center gap-1",children:b})]}),c]})})})})}},9533:(a,b,c)=>{c.d(b,{L:()=>O});var d=c(64173),e=c(17240),f=c(71813),g=c(54249),h=c(75430),i=c(34719),j=c(56189),k=c(41856),l=c(33120),m=c(69552),n=c(97338),o=c(25299),p=c(63387),q=c(53834),r=c(97162),s=c(62261),t=c(77311),u=c(25436),v=c(24555),w=c(68669),x=c(79145),y=c(66979),z=c(87671),A=c(44052),B=c(20583),C=c(45477),D=c(91344),E=c(3265);let F=(0,E.createServerReference)("60b1847c870abffcabeb17ab7a3ff3da9473d9f335",E.callServer,void 0,E.findSourceMapURL,"searchMentionsAction"),G=[{id:"plan",trigger:"plan",label:"/plan",description:"Show the plan first — Reflex lays out the steps and waits for approval.",kind:"agent-mode",usage:"/plan <task>",icon:"ListChecks"},{id:"goal",trigger:"goal",label:"/goal",description:"Set a goal — Reflex will work toward it on its own, without reminders.",kind:"agent-mode",usage:"/goal <what to achieve>",icon:"Target"},{id:"research",trigger:"research",label:"/research",description:"Deep research on a topic — web search + summary with sources.",kind:"agent-mode",usage:"/research <topic>",icon:"Telescope"},{id:"widget",trigger:"widget",label:"/widget",description:"Create a card on the space dashboard.",kind:"agent-mode",usage:"/widget <what to show>",icon:"LayoutGrid"},{id:"workflow",trigger:"workflow",label:"/workflow",description:"Build a recipe — linear step-based automation for the task.",kind:"agent-mode",usage:"/workflow <what to automate>",icon:"Workflow"},{id:"distill",trigger:"distill",label:"/distill",description:"Pull a URL into the KB — extract key facts, action items, and links to related notes.",kind:"agent-mode",usage:"/distill <url> [focus]",icon:"BookOpenCheck"},{id:"practice",trigger:"practice",label:"/practice",description:"Roleplay a tough conversation — Reflex plays the counterpart and coaches you between turns.",kind:"agent-mode",usage:"/practice <scenario>",icon:"MessagesSquare"},{id:"reflect",trigger:"reflect",label:"/reflect",description:"Daily check-in — three questions adapted to your recent entries, saved as a journal note.",kind:"agent-mode",usage:"/reflect",allowEmpty:!0,icon:"Sunrise"},{id:"remember",trigger:"remember",label:"/remember",description:"Save a note — straight into memory, no AI involved.",kind:"direct",usage:"/remember <what to remember>",icon:"BookmarkPlus"},{id:"mcp",trigger:"mcp",label:"/mcp",description:"Connect an external service (setup wizard opens in chat).",kind:"agent-mode",usage:"/mcp <what you need>",icon:"PackagePlus"},{id:"skill",trigger:"skill",label:"/skill",description:"Attach a role — a ready-made instruction set for this conversation.",kind:"agent-mode",usage:"/skill <role-id> [prompt]",icon:"Sparkles"},{id:"delete-topic",trigger:"delete-topic",label:"/delete-topic",description:"Delete this conversation (with confirmation).",kind:"direct",usage:"/delete-topic",requiresConfirm:!0,allowEmpty:!0,icon:"Trash2"},{id:"clear-project",trigger:"clear-project",label:"/clear-project",description:"DANGER: clear the space — all conversations, cards, memory. Double confirmation.",kind:"direct",usage:"/clear-project",requiresConfirm:!0,allowEmpty:!0,icon:"AlertOctagon"},{id:"util",trigger:"util",label:"/util",description:"Open a mini-app (by partial name or from the list).",kind:"direct",usage:"/util <partial name or id>",allowEmpty:!0,icon:"Boxes"},{id:"help",trigger:"help",label:"/help",description:"List available commands.",kind:"direct",usage:"/help",allowEmpty:!0,icon:"HelpCircle"}],H=(0,E.createServerReference)("40ad471593afb21c8d415a8d697a417b7558165bd3",E.callServer,void 0,E.findSourceMapURL,"listCommandArgsAction"),I=(0,E.createServerReference)("60dbb5b19ee1a9125f22594f5397ed52c8c95154c4",E.callServer,void 0,E.findSourceMapURL,"rememberAction"),J=(0,E.createServerReference)("6000f6981bd353d5c5ea0bcb4933eb92b2aecdcfcb",E.callServer,void 0,E.findSourceMapURL,"deleteCurrentTopicCommand"),K=(0,E.createServerReference)("603075a118afad624e019e22c81f59743cf5416e57",E.callServer,void 0,E.findSourceMapURL,"openUtilityAction"),L=(0,E.createServerReference)("40e67d9ee1d0aa666210337c0311259abbbdda5a0a",E.callServer,void 0,E.findSourceMapURL,"clearProjectAction");var M=c(88724);let N={ListChecks:g.A,Target:h.A,Telescope:i.A,LayoutGrid:j.A,BookmarkPlus:k.A,PackagePlus:l.A,Sparkles:m.A,Trash2:n.A,AlertOctagon:o.A,HelpCircle:p.A,Workflow:q.A,Boxes:r.A};function O({rootId:a,topicId:b,placeholder:c,submitLabel:g,pendingLabel:h,SubmitIcon:i,disabled:j,onSubmit:k,active:l,onStop:m,clarifyLabel:n,stopLabel:o}){let p=(0,f.c)("roots"),q=n??p("chatInputForm.clarifyLabel"),r=o??p("chatInputForm.stopLabel"),v=(0,z.useRouter)(),[w,x]=(0,e.useState)(""),[y,E]=(0,e.useState)([]),[I,J]=(0,e.useState)(!1),[K,L]=(0,e.useState)(!1),[M,N]=(0,e.useState)(!1),O=(0,e.useRef)(null),U=(0,e.useRef)(null),[V,W]=(0,e.useState)(null),[X,Y]=(0,e.useState)([]),[Z,$]=(0,e.useState)(0),[_,aa]=(0,e.useState)(!1),ab=(0,e.useRef)(0),[ac,ad]=(0,e.useState)(null),[ae,af]=(0,e.useState)(null),ag=(0,e.useRef)(0);(0,e.useCallback)(()=>{let a=O.current;a&&(a.style.height="auto",a.style.height=Math.min(a.scrollHeight,240)+"px")},[]);let ah=(0,e.useCallback)((b,c)=>{let d=c;for(;d>0;){let a=b[d-1];if("@"===a){d-=1;break}if(/\s/.test(a)){d=-1;break}d-=1}if(d<0||"@"!==b[d]||d>0&&!/\s/.test(b[d-1])){W(null),Y([]);return}let e=b.slice(d+1,c);W({start:d,end:c}),$(0),aa(!0);let f=++ab.current;(async()=>{let b=await F(a,e);ab.current===f&&(aa(!1),Y(b.ok?b.items:[]))})()},[a]),ai=(0,e.useCallback)(()=>{W(null),Y([]),ab.current++},[]),aj=(0,e.useCallback)((b,c)=>{if(!b.startsWith("/")){ad(null),af(null);return}let d=b.indexOf(" ");if(d<0){af(null);let a=b.slice(1).toLowerCase(),c=G.filter(b=>b.trigger.startsWith(a)||b.label.toLowerCase().includes(a)||b.description.toLowerCase().includes(a));ad(c.length?{items:c,index:0}:null);return}ad(null);let e=b.slice(1,d),f=G.find(a=>a.trigger===e);if(!f)return void af(null);let g=d+1,h=c>=g?c:b.length;if(b.slice(h).indexOf(" ")>=0)return void af(null);let i=b.slice(g,h),j=++ag.current;af(a=>({cmd:f,items:a?.cmd.id===f.id?a.items:[],index:0,start:g,end:h,loading:!0})),(async()=>{let b=await H({commandId:f.id,query:i,rootId:a});if(ag.current===j){if(!b.ok||!b.supported||0===b.items.length)return af(null);af({cmd:f,items:b.items,index:0,start:g,end:h,loading:!1})}})()},[a]),ak=(0,e.useCallback)(()=>{ad(null),af(null)},[]),al=(0,e.useCallback)(a=>{let b=O.current;af(c=>{if(!c)return null;let d=w.slice(0,c.start),e=w.slice(c.end),f=`${a.value} `;x(d+f+e);let g=d.length+f.length;return requestAnimationFrame(()=>{b&&(b.focus(),b.setSelectionRange(g,g))}),null})},[w]),am=(0,e.useCallback)(a=>{let b=O.current,c=`/${a.trigger}${a.allowEmpty&&"direct"===a.kind?"":" "}`;x(c),ad(null),requestAnimationFrame(()=>{b&&(b.focus(),b.setSelectionRange(c.length,c.length))})},[]),an=(0,e.useCallback)(a=>{let b=O.current;if(!b||!V)return;let c=w.slice(0,V.start),d=w.slice(V.end),e=`@${a.relPath} `;x(c+e+d),ai();let f=c.length+e.length;requestAnimationFrame(()=>{b.focus(),b.setSelectionRange(f,f)})},[w,V,ai]),ao=(0,e.useCallback)(async b=>{if(0!==b.length){J(!0);try{let c=new FormData;for(let a of b)c.append("files",a);let d=await fetch(`/api/roots/${a}/attachments`,{method:"POST",body:c});if(!d.ok){let a=await d.json().catch(()=>({}));A.oR.error(a.error??p("chatInputForm.uploadFailed",{status:d.status}));return}let e=await d.json();E(a=>[...a,...e.files])}catch(a){A.oR.error(a instanceof Error?a.message:String(a))}finally{J(!1)}}},[a]),ap=w.trim().length>0||y.length>0,aq=l&&m?ap?"clarify":"stop":"send",ar=(0,e.useCallback)(async()=>{if(K)return;if("stop"===aq){if(!m)return;L(!0);try{await m()}finally{L(!1)}return}let c=w.trim();if(!c&&0===y.length||j&&"send"===aq)return;let d=function(a,b=[]){let c=a.trim();if(!c.startsWith("/"))return null;let d=/^\/([a-z][a-z0-9-]*)(?:\s+([\s\S]*))?$/.exec(c);if(!d)return null;let e=d[1],f=G.find(a=>a.trigger===e)??null??b.find(a=>a.trigger===e);return f?{def:f,payload:(d[2]??"").trim()}:null}(c);if(d&&"direct"===d.def.kind){L(!0);try{await P({cmd:d.def,payload:d.payload,rootId:a,topicId:b,router:v,t:p}),x("")}finally{L(!1)}return}L(!0);try{"clarify"===aq&&m&&await m(),await k({message:c,attachments:y})&&(x(""),E([]))}finally{L(!1)}},[w,y,K,j,aq,m,k,a,b,v,p]),as=!K&&!I&&("stop"===aq||ap&&(!j||"clarify"===aq));return(0,d.jsxs)("form",{onSubmit:a=>{a.preventDefault(),ar()},onDragEnter:a=>{Array.from(a.dataTransfer.types).includes("Files")&&(a.preventDefault(),N(!0))},onDragOver:a=>{Array.from(a.dataTransfer.types).includes("Files")&&(a.preventDefault(),N(!0))},onDragLeave:a=>{a.currentTarget.contains(a.relatedTarget)||N(!1)},onDrop:a=>{a.preventDefault(),N(!1);let b=Array.from(a.dataTransfer.files);b.length>0&&ao(b)},className:(0,D.cn)("space-y-2 rounded-md transition-colors",M&&"ring-2 ring-ring/60 bg-accent/40"),children:[y.length>0&&(0,d.jsx)("div",{className:"flex flex-wrap gap-1.5",children:y.map((a,b)=>(0,d.jsx)(S,{attachment:a,onRemove:()=>E(b=>b.filter(b=>b!==a))},a.absPath+b))}),(0,d.jsxs)("div",{className:"flex items-end gap-2",children:[(0,d.jsxs)("div",{className:"relative flex-1",children:[(0,d.jsx)(C.T,{ref:O,value:w,onChange:a=>{x(a.target.value),ah(a.target.value,a.target.selectionStart),aj(a.target.value,a.target.selectionStart)},onKeyUp:a=>{let b=a.currentTarget;ah(b.value,b.selectionStart),aj(b.value,b.selectionStart)},onClick:a=>{let b=a.currentTarget;ah(b.value,b.selectionStart),aj(b.value,b.selectionStart)},onBlur:()=>{setTimeout(()=>{ai(),ak()},150)},onKeyDown:a=>{if(ac){if("ArrowDown"===a.key){a.preventDefault(),ad(a=>a?{...a,index:Math.min(a.items.length-1,a.index+1)}:null);return}if("ArrowUp"===a.key){a.preventDefault(),ad(a=>a?{...a,index:Math.max(0,a.index-1)}:null);return}if("Tab"===a.key){a.preventDefault();let b=ac.items[ac.index];b&&am(b);return}if("Escape"===a.key){a.preventDefault(),ak();return}}if(ae&&ae.items.length>0){if("ArrowDown"===a.key){a.preventDefault(),af(a=>a?{...a,index:Math.min(a.items.length-1,a.index+1)}:null);return}if("ArrowUp"===a.key){a.preventDefault(),af(a=>a?{...a,index:Math.max(0,a.index-1)}:null);return}if("Tab"===a.key){a.preventDefault();let b=ae.items[ae.index];b&&al(b);return}if("Escape"===a.key){a.preventDefault(),af(null);return}}if(V&&X.length>0){if("ArrowDown"===a.key){a.preventDefault(),$(a=>Math.min(X.length-1,a+1));return}if("ArrowUp"===a.key){a.preventDefault(),$(a=>Math.max(0,a-1));return}if("Enter"===a.key||"Tab"===a.key){a.preventDefault();let b=X[Z];b&&an(b);return}if("Escape"===a.key){a.preventDefault(),ai();return}}"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),ar())},onPaste:a=>{let b=Array.from(a.clipboardData.files);b.length>0&&(a.preventDefault(),ao(b))},placeholder:c,rows:1,disabled:j||K,className:"resize-none min-h-[44px] max-h-60 text-base bg-background/70 border-transparent focus-visible:border-ring py-2.5 w-full"}),V&&(0,d.jsx)(R,{items:X,index:Z,loading:_,onPick:an,onHover:a=>$(a)}),ac&&!V&&(0,d.jsx)(Q,{items:ac.items,index:ac.index,onPick:am,onHover:a=>ad(b=>b?{...b,index:a}:null),topicAvailable:!!b}),ae&&!V&&!ac&&(0,d.jsx)(T,{cmd:ae.cmd,items:ae.items,index:ae.index,onPick:al,onHover:a=>af(b=>b?{...b,index:a}:null)})]}),(0,d.jsx)("input",{ref:U,type:"file",multiple:!0,className:"hidden",onChange:a=>{let b=Array.from(a.target.files??[]);b.length>0&&ao(b),a.target.value=""}}),(0,d.jsx)(B.$,{type:"button",size:"icon",variant:"ghost",onClick:()=>U.current?.click(),disabled:I||K||j,title:p("chatInputForm.attachTitle"),className:"h-11 w-11 shrink-0",children:I?(0,d.jsx)(s.A,{className:"h-4 w-4 animate-spin"}):(0,d.jsx)(t.A,{className:"h-4 w-4"})}),(0,d.jsx)(B.$,{type:"submit",size:"lg",disabled:!as,variant:"stop"===aq?"destructive":"default",className:"h-11 px-6 shadow-md shrink-0",children:K?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(s.A,{className:"mr-2 h-4 w-4 animate-spin"}),h]}):"stop"===aq?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(u.A,{className:"mr-2 h-4 w-4",fill:"currentColor"}),r]}):"clarify"===aq?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(i,{className:"mr-2 h-4 w-4"}),q]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(i,{className:"mr-2 h-4 w-4"}),g]})})]}),(0,d.jsx)("div",{className:"text-[10px] text-muted-foreground",children:p("chatInputForm.helperRow")})]})}async function P({cmd:a,payload:b,rootId:c,topicId:d,router:e,t:f}){if("help"===a.id){let a=G.map(a=>`• ${a.label} — ${a.description}`);A.oR.info(f("chatInputForm.availableCommands",{list:a.join("\n")}),{duration:12e3});return}if("remember"===a.id){if(!b)return void A.oR.error(f("chatInputForm.rememberEmpty"));let a=await I(c,b);return void(a.ok?(A.oR.success(a.message??f("chatInputForm.savedToKb")),(0,M.$d)(M.Zi.kbChanged(c))):A.oR.error(a.error))}if("delete-topic"===a.id){if(!d)return void A.oR.error(f("chatInputForm.topicOnlyCommand"));if(!confirm(f("chatInputForm.deleteTopicConfirm")))return;let a=await J(c,d);return void(a.ok?(A.oR.success(a.message??f("chatInputForm.deleted")),(0,M.$d)(M.Zi.topicsChanged(c)),a.redirectTo&&e.push(a.redirectTo)):A.oR.error(a.error))}if("util"===a.id){let a=await K(c,b);if(!a.ok)return void A.oR.error(a.error);if("redirect"===a.kind)return void e.push(a.url);let d=a.items.slice(0,8).map(a=>`• ${a.name} (${a.scope}/${a.id})`).join("\n");return void A.oR.message(f("chatInputForm.multipleMatches",{list:d}),{duration:12e3})}if("clear-project"===a.id){if(!confirm(f("chatInputForm.clearProjectConfirm")))return;let a=prompt(f("chatInputForm.clearProjectPrompt"));if(a?.trim().toLowerCase()!==f("chatInputForm.clearProjectPhrase"))return void A.oR.message(f("chatInputForm.confirmFailed"));let b=await L(c);return void(b.ok?(A.oR.success(b.message??f("chatInputForm.projectCleared")),(0,M.$d)(M.Zi.topicsChanged(c)),(0,M.$d)(M.Zi.kbChanged(c)),b.redirectTo&&e.push(b.redirectTo)):A.oR.error(b.error))}A.oR.error(f("chatInputForm.unknownCommand",{label:a.label}))}function Q({items:a,index:b,onPick:c,onHover:e,topicAvailable:g}){let h=(0,f.c)("roots");return(0,d.jsxs)("div",{className:"absolute bottom-full left-0 right-0 mb-2 z-50 max-h-80 overflow-y-auto rounded-md border bg-popover text-popover-foreground shadow-lg",children:[(0,d.jsx)("div",{className:"px-3 py-1.5 text-[10px] uppercase tracking-wider text-muted-foreground border-b",children:h("chatInputForm.commandsPaletteHeader")}),(0,d.jsx)("ul",{children:a.map((a,f)=>{let i=N[a.icon]??m.A,j="delete-topic"===a.id&&!g;return(0,d.jsx)("li",{children:(0,d.jsxs)("button",{type:"button",onMouseDown:b=>{b.preventDefault(),j||c(a)},onMouseEnter:()=>e(f),disabled:j,className:(0,D.cn)("w-full flex items-start gap-2 px-3 py-2 text-left",f===b?"bg-accent":"hover:bg-accent/60",j&&"opacity-40 cursor-not-allowed"),children:[(0,d.jsx)(i,{className:(0,D.cn)("h-3.5 w-3.5 mt-0.5 shrink-0","direct"===a.kind?"text-amber-600":"text-violet-600")}),(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsxs)("div",{className:"flex items-baseline gap-2 flex-wrap",children:[(0,d.jsx)("span",{className:"font-mono text-xs font-medium",children:a.label}),"direct"===a.kind&&(0,d.jsx)("span",{className:"text-[9px] uppercase tracking-wider text-amber-700",children:h("chatInputForm.directAction")}),a.requiresConfirm&&(0,d.jsx)("span",{className:"text-[9px] uppercase tracking-wider text-destructive",children:h("chatInputForm.withConfirm")})]}),(0,d.jsx)("p",{className:"text-[11px] text-muted-foreground leading-snug mt-0.5",children:a.description}),(0,d.jsx)("p",{className:"text-[10px] text-muted-foreground/80 font-mono mt-0.5",children:a.usage})]})]})},a.id)})})]})}function R({items:a,index:b,loading:c,onPick:e,onHover:g}){let h=(0,f.c)("roots");return(0,d.jsx)("div",{className:"absolute bottom-full left-0 right-0 mb-2 z-50 max-h-72 overflow-y-auto rounded-md border bg-popover text-popover-foreground shadow-lg",children:c&&0===a.length?(0,d.jsxs)("div",{className:"px-3 py-2 text-xs text-muted-foreground flex items-center gap-2",children:[(0,d.jsx)(s.A,{className:"h-3 w-3 animate-spin"})," ",h("chatInputForm.mentionSearching")]}):0===a.length?(0,d.jsx)("div",{className:"px-3 py-2 text-xs text-muted-foreground italic",children:h("chatInputForm.mentionNothing")}):(0,d.jsx)("ul",{children:a.map((a,c)=>{let f="kb"===a.kind?v.A:w.A;return(0,d.jsx)("li",{children:(0,d.jsxs)("button",{type:"button",onMouseDown:b=>{b.preventDefault(),e(a)},onMouseEnter:()=>g(c),className:(0,D.cn)("w-full flex items-center gap-2 px-3 py-1.5 text-sm text-left",c===b?"bg-accent":"hover:bg-accent/60"),children:[(0,d.jsx)(f,{className:(0,D.cn)("h-3.5 w-3.5 shrink-0","kb"===a.kind?"text-primary":"text-muted-foreground")}),(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsx)("div",{className:"truncate font-mono text-xs",children:a.relPath}),a.parent&&(0,d.jsx)("div",{className:"truncate text-[10px] text-muted-foreground",children:a.parent})]}),(0,d.jsx)("span",{className:(0,D.cn)("text-[10px] uppercase tracking-wider shrink-0","kb"===a.kind?"text-primary":"text-muted-foreground"),children:a.kind})]})},a.absPath)})})})}function S({attachment:a,onRemove:b}){var c;let e=a.mime.startsWith("image/")?x.A:w.A;return(0,d.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-muted px-2 py-1 text-[11px] max-w-[18rem]",children:[(0,d.jsx)(e,{className:"h-3 w-3 text-muted-foreground shrink-0"}),(0,d.jsx)("span",{className:"truncate",title:a.name,children:a.name}),(0,d.jsx)("span",{className:"text-muted-foreground",children:(c=a.size)<1024?`${c} B`:c<1048576?`${(c/1024).toFixed(1)} KB`:`${(c/1048576).toFixed(1)} MB`}),(0,d.jsx)("button",{type:"button",onClick:b,className:"ml-0.5 text-muted-foreground hover:text-foreground",children:(0,d.jsx)(y.A,{className:"h-3 w-3"})})]})}function T({cmd:a,items:b,index:c,onPick:e,onHover:f}){let g=N[a.icon]??m.A;return(0,d.jsxs)("div",{className:"absolute bottom-full left-0 right-0 mb-2 z-50 max-h-80 overflow-y-auto rounded-md border bg-popover text-popover-foreground shadow-lg",children:[(0,d.jsxs)("div",{className:"px-3 py-1.5 text-[10px] uppercase tracking-wider text-muted-foreground border-b flex items-center gap-2",children:[(0,d.jsx)(g,{className:"h-3 w-3"}),(0,d.jsxs)("span",{children:[a.label," \xb7 ",a.usage.replace(/^\/\S+\s*/,"")]})]}),(0,d.jsx)("ul",{children:b.map((a,b)=>(0,d.jsx)("li",{children:(0,d.jsxs)("button",{type:"button",onMouseDown:b=>{b.preventDefault(),e(a)},onMouseEnter:()=>f(b),className:(0,D.cn)("w-full flex items-start gap-2 px-3 py-2 text-left",b===c?"bg-accent":"hover:bg-accent/60"),children:[(0,d.jsx)(m.A,{className:"h-3.5 w-3.5 mt-0.5 shrink-0 text-violet-600"}),(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsxs)("div",{className:"flex items-baseline gap-2 flex-wrap",children:[(0,d.jsx)("span",{className:"font-medium text-sm",children:a.label}),(0,d.jsx)("span",{className:"font-mono text-[10px] text-muted-foreground",children:a.value})]}),a.description&&(0,d.jsx)("p",{className:"text-[11px] text-muted-foreground leading-snug mt-0.5 line-clamp-2",children:a.description})]})]})},a.value))})]})}},26290:(a,b,c)=>{c.d(b,{cn:()=>f});var d=c(83243),e=c(86103);function f(...a){return(0,e.QP)((0,d.$)(a))}},45477:(a,b,c)=>{c.d(b,{T:()=>f});var d=c(64173);c(17240);var e=c(91344);function f({className:a,...b}){return(0,d.jsx)("textarea",{"data-slot":"textarea",className:(0,e.cn)("flex field-sizing-content min-h-16 w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:ring-destructive/40",a),...b})}},63337:(a,b,c)=>{c.d(b,{x:()=>h});var d=c(73745);c(66493);var e=c(49410),f=c(8118),g=c(53905);async function h(a){try{let b=(a.query??"").trim().toLowerCase();switch(a.commandId){case"skill":{let c=a.rootId?await (0,g.Zn)(a.rootId):null,d=(await (0,e.bG)(c?.path,a.rootId)).map(a=>({value:a.id,label:a.title,description:`${"project"===a.scope?"[project] ":"global"===a.scope?"[global] ":""}${a.description}`})).filter(a=>i(a,b));return{ok:!0,supported:!0,items:d}}case"util":{let c=(await (0,f.listUtilities)(a.rootId?{rootId:a.rootId}:{})).map(a=>({value:a.manifest.id,label:a.manifest.name,description:a.manifest.description}));return{ok:!0,supported:!0,items:c.filter(a=>i(a,b))}}default:return{ok:!0,supported:!1}}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}function i(a,b){return!b||a.value.toLowerCase().includes(b)||a.label.toLowerCase().includes(b)||(a.description?.toLowerCase().includes(b)??!1)}(0,c(63781).D)([h]),(0,d.A)(h,"40ad471593afb21c8d415a8d697a417b7558165bd3",null)},67248:(a,b,c)=>{c.d(b,{E:()=>i});var d=c(63003);c(34750);var e=c(86209),f=c(65715),g=c(26290);let h=(0,e.F)("inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/90",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline"}},defaultVariants:{variant:"default"}});function i({className:a,variant:b="default",asChild:c=!1,...e}){let i=c?f.bL:"span";return(0,d.jsx)(i,{"data-slot":"badge","data-variant":b,className:(0,g.cn)(h({variant:b}),a),...e})}},72901:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{LL:()=>v,ZC:()=>z,b2:()=>u,qO:()=>t,wd:()=>y});var e=c(73745);c(66493);var f=c(73024),g=c(76760),h=c.n(g),i=c(65326),j=c(53905),k=c(54287),l=c(56942),m=c(5492),n=c(13415),o=c(93554),p=c(49410),q=c(96921),r=c(63781),s=a([n,o]);async function t(a,b){try{let c=b.trim();if(!c)return{ok:!1,error:"Empty — nothing to remember."};let d=await (0,j.Zn)(a);if(!d)return{ok:!1,error:"Root not found"};let e=c.split(/\r?\n/,1)[0].trim(),f=e.length>80?e.slice(0,77).trimEnd()+"…":e,g=await (0,l.j)({rootPath:d.path,directive:{kind:"note",title:f,body:c}});return(0,i.revalidatePath)(`/roots/${a}`),{ok:!0,message:`Saved to ${g.relPath}`}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async function u(a,b){let c=await (0,n.L4)(a,b);return c.ok?{ok:!0,redirectTo:`/roots/${a}`,message:"Topic deleted"}:{ok:!1,error:c.error??"Failed"}}async function v(a){try{let b=await (0,j.Zn)(a);if(!b)return{ok:!1,error:"Root not found"};let c=(0,k.FF)(b.path);for(let a of(await (0,m.hk)(b.path)))await o.z.stopTopic(a.meta.id).catch(()=>void 0);return await w(h().join(c,"widgets")),await w(h().join(c,"dashboard-layout.json")),await w(h().join(c,"topics")),await x(c),(0,i.revalidatePath)(`/roots/${a}`),{ok:!0,redirectTo:`/roots/${a}`,message:"Project cleared. Starting fresh."}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async function w(a){try{await f.promises.rm(a,{recursive:!0,force:!0})}catch{}}async function x(a){let b;try{b=await f.promises.readdir(a,{withFileTypes:!0})}catch{return}for(let c of b){let b=h().join(a,c.name);if(c.isDirectory()){await x(b);try{let a=await f.promises.readdir(b);0===a.length&&await f.promises.rmdir(b)}catch{}continue}c.name.toLowerCase().endsWith(".md")&&await f.promises.unlink(b).catch(()=>void 0)}}async function y(){let a=await (0,p.bG)();return{ok:!0,commands:q.Lo,skills:a}}async function z(a,b){let{listUtilities:d}=await Promise.resolve().then(c.bind(c,8118)),e=await d({rootId:a}),f=b.trim().toLowerCase(),g=e.map(a=>({id:a.manifest.id,name:a.manifest.name,scope:a.scope,rootId:a.rootId})),h=a=>{let b=a.rootId?`?rootId=${encodeURIComponent(a.rootId)}`:"";return`/utilities/${a.scope}/${a.id}${b}`};if(!f)return 0===g.length?{ok:!1,error:"No mini-apps installed yet."}:{ok:!0,kind:"choices",items:g.map(a=>({url:h(a),id:a.id,name:a.name,scope:a.scope}))};let i=g.find(a=>a.id.toLowerCase()===f);if(i)return{ok:!0,kind:"redirect",url:h(i)};let j=g.filter(a=>a.id.toLowerCase().includes(f)||a.name.toLowerCase().includes(f));return 1===j.length?{ok:!0,kind:"redirect",url:h(j[0])}:0===j.length?{ok:!1,error:`Nothing found for "${b}". Installed: ${g.length}.`}:{ok:!0,kind:"choices",items:j.map(a=>({url:h(a),id:a.id,name:a.name,scope:a.scope}))}}[n,o]=s.then?(await s)():s,(0,r.D)([t,u,v,y,z]),(0,e.A)(t,"60dbb5b19ee1a9125f22594f5397ed52c8c95154c4",null),(0,e.A)(u,"6000f6981bd353d5c5ea0bcb4933eb92b2aecdcfcb",null),(0,e.A)(v,"40e67d9ee1d0aa666210337c0311259abbbdda5a0a",null),(0,e.A)(y,"00f7786be68064b5e2a1e24442fad62aee6a9c6c2c",null),(0,e.A)(z,"603075a118afad624e019e22c81f59743cf5416e57",null),d()}catch(a){d(a)}})},84913:(a,b,c)=>{c.d(b,{$:()=>i});var d=c(63003);c(34750);var e=c(86209),f=c(65715),g=c(26290);let h=(0,e.F)("inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function i({className:a,variant:b="default",size:c="default",asChild:e=!1,...i}){let j=e?f.bL:"button";return(0,d.jsx)(j,{"data-slot":"button","data-variant":b,"data-size":c,className:(0,g.cn)(h({variant:b,size:c,className:a})),...i})}}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=7220,exports.ids=[7220],exports.modules={37220:(a,b,c)=>{c.d(b,{observeTask:()=>j});var d=c(53905),e=c(20243),f=c(73024);function g(){return globalThis.__reflexPendingCache||(globalThis.__reflexPendingCache=new Map),globalThis.__reflexPendingCache}async function h(a,b){let c,d=(0,e.Rs)(a,b);try{c=await f.promises.stat(d)}catch{return[]}let h=g().get(d);if(h&&h.mtimeMs===c.mtimeMs&&h.size===c.size)return h.result;let i=function(a,b){let c=new Map;for(let d of a)switch(d.type){case"permission-request":c.set(`p:${d.requestId}`,{kind:"permission",topicId:b,requestId:d.requestId,ts:d.ts,summary:d.tool?`Permission: ${d.tool}`:d.action??"Permission request",...d.description?{details:d.description}:{}});break;case"permission-response":c.delete(`p:${d.requestId}`);break;case"question":c.set(`q:${d.questionId}`,{kind:"question",topicId:b,requestId:d.questionId,ts:d.ts,summary:d.prompt.slice(0,200),...d.choices&&d.choices.length?{details:d.choices.join(" / ")}:{}});break;case"answer":c.delete(`q:${d.questionId}`);break;case"mcp-add-request":c.set(`m:${d.requestId}`,{kind:"mcp-add",topicId:b,requestId:d.requestId,ts:d.ts,summary:`MCP add: ${d.label}`,...d.description?{details:d.description}:{}});break;case"mcp-add-response":c.delete(`m:${d.requestId}`)}return[...c.values()]}(await (0,e.readEvents)(a,b),b);return g().set(d,{mtimeMs:c.mtimeMs,size:c.size,result:i}),i}var i=c(26380);async function j(a){let b=await (0,d.Zn)(a.rootId);if(!b)return null;let c=await (0,i.getTask)(b.path,a.taskId);if(!c)return null;if(!c.topicId)return{taskId:c.id,status:c.status,topicId:null,lastAssistantText:null,pending:[],recentEvents:[],topicEnded:!1};let f=await (0,e.readEvents)(b.path,c.topicId).catch(()=>[]),g=await h(b.path,c.topicId).catch(()=>[]),j=function(a){let b="";for(let c=a.length-1;c>=0;c--){let d=a[c];if("assistant-delta"===d.type&&"string"==typeof d.text)b=d.text+b;else if("turn-start"===d.type||"agent-start"===d.type)break}if(!b.trim())return null;let c=b.replace(/<<reflex:[^>]+>>[\s\S]*?<<\/reflex:[^>]+>>/g,"").trim();return c?c.length>240?c.slice(0,240)+"…":c:null}(f),k=f.slice(-20).map(a=>({ts:a.ts,kind:a.type})),l=f.some(a=>"turn-end"===a.type||"agent-end"===a.type);return{taskId:c.id,status:c.status,topicId:c.topicId,lastAssistantText:j,pending:g.map(a=>({kind:a.kind,summary:a.summary,requestId:a.requestId})),recentEvents:k,topicEnded:l}}}};
|