@evoscientist/webui 0.2.9 → 0.3.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/dist/.next/BUILD_ID +1 -1
- package/dist/.next/build-manifest.json +3 -3
- package/dist/.next/server/app/_global-error.html +1 -1
- package/dist/.next/server/app/_global-error.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dist/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dist/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/_not-found.html +1 -1
- package/dist/.next/server/app/_not-found.rsc +2 -2
- package/dist/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/dist/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/dist/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/api/memory/executions/route.js.nft.json +1 -1
- package/dist/.next/server/app/api/memory/observations/route.js.nft.json +1 -1
- package/dist/.next/server/app/api/memory/route.js.nft.json +1 -1
- package/dist/.next/server/app/api/skills/catalog/route.js.nft.json +1 -1
- package/dist/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
- package/dist/.next/server/app/api/skills/install/route.js.nft.json +1 -1
- package/dist/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/dist/.next/server/app/api/workspace/download/route.js.nft.json +1 -1
- package/dist/.next/server/app/api/workspace/file/route.js.nft.json +1 -1
- package/dist/.next/server/app/api/workspace/route.js.nft.json +1 -1
- package/dist/.next/server/app/api/workspace/upload/route.js.nft.json +1 -1
- package/dist/.next/server/app/index.html +1 -1
- package/dist/.next/server/app/index.rsc +3 -3
- package/dist/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
- package/dist/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/dist/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/dist/.next/server/app/page.js.nft.json +1 -1
- package/dist/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/chunks/[root-of-the-server]__01e0ekn._.js +2 -2
- package/dist/.next/server/chunks/[root-of-the-server]__0om1fsa._.js +2 -2
- package/dist/.next/server/chunks/[root-of-the-server]__19l67fj._.js +2 -2
- package/dist/.next/server/chunks/[root-of-the-server]__1nb3ezt._.js +4 -4
- package/dist/.next/server/chunks/_13lro7d._.js +1 -1
- package/dist/.next/server/chunks/ssr/[root-of-the-server]__1q-wcrf._.js +4 -4
- package/dist/.next/server/chunks/ssr/{node_modules_0_3n1hi._.js → node_modules_0265-rz._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_0j6b-p5._.js → node_modules_0653v7w._.js} +2 -2
- package/dist/.next/server/chunks/ssr/{node_modules_1i5ml3x._.js → node_modules_09pkkps._.js} +2 -2
- package/dist/.next/server/chunks/ssr/{node_modules_0_n1n9u._.js → node_modules_0d4t5t-._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_1rsc-gt._.js → node_modules_0e21i6_._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_0mhroki._.js → node_modules_0f1vz2j._.js} +2 -2
- package/dist/.next/server/chunks/ssr/{node_modules_1ti62ba._.js → node_modules_0fpr7k8._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_1b08rf0._.js → node_modules_0gq6n6w._.js} +2 -2
- package/dist/.next/server/chunks/ssr/{node_modules_14j-r2i._.js → node_modules_0lb0yml._.js} +2 -2
- package/dist/.next/server/chunks/ssr/{node_modules_1bddg7x._.js → node_modules_0mshgc0._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_1wn8qu0._.js → node_modules_0r6hp0p._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_0-3gk4n._.js → node_modules_0revk50._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_042csl2._.js → node_modules_0sfdscp._.js} +2 -2
- package/dist/.next/server/chunks/ssr/{node_modules_1jpkt5_._.js → node_modules_0snw7z_._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_14_5zct._.js → node_modules_0tbm7m-._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_1xgltz7._.js → node_modules_0tfd3hd._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_0gmj-7m._.js → node_modules_0y4c6ao._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_0z53q9t._.js → node_modules_0zinurw._.js} +2 -2
- package/dist/.next/server/chunks/ssr/{node_modules_16ih6qm._.js → node_modules_0zz_c7x._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_0pimgwq._.js → node_modules_10xlaeo._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_0s436hr._.js → node_modules_11xf286._.js} +2 -2
- package/dist/.next/server/chunks/ssr/{node_modules_1y4f8cf._.js → node_modules_13418z5._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_0zzr3iv._.js → node_modules_16r2-d4._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_0u5o24a._.js → node_modules_1_uze58._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_18frml9._.js → node_modules_1di__7s._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_03mz3d2._.js → node_modules_1e3xu34._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_0bnt8d5._.js → node_modules_1frmxq2._.js} +2 -2
- package/dist/.next/server/chunks/ssr/{node_modules_1z39zs4._.js → node_modules_1ic3g8m._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_1wvft2t._.js → node_modules_1nia3l1._.js} +1 -1
- package/dist/.next/server/chunks/ssr/{node_modules_1bompw4._.js → node_modules_1yw7dd6._.js} +2 -2
- package/dist/.next/server/chunks/ssr/{node_modules_katex_dist_katex_mjs_16enqn_._.js → node_modules_katex_dist_katex_mjs_0rmimx0._.js} +1 -1
- package/dist/.next/server/middleware-build-manifest.js +3 -3
- package/dist/.next/server/pages/404.html +1 -1
- package/dist/.next/server/pages/500.html +1 -1
- package/dist/.next/static/chunks/357uypdcfkasu.js +13 -0
- package/dist/.next/static/chunks/3cmvtz1y1tcd1.css +3 -0
- package/dist/package.json +2 -1
- package/package.json +2 -1
- package/dist/.next/static/chunks/2dmr54jagfdwa.css +0 -3
- package/dist/.next/static/chunks/3r4zv-ypmltqz.js +0 -13
- /package/dist/.next/static/{jymT8vIg_gKraNQQCXVtL → GuE943tuTCMHEfFMDvjrJ}/_buildManifest.js +0 -0
- /package/dist/.next/static/{jymT8vIg_gKraNQQCXVtL → GuE943tuTCMHEfFMDvjrJ}/_clientMiddlewareManifest.js +0 -0
- /package/dist/.next/static/{jymT8vIg_gKraNQQCXVtL → GuE943tuTCMHEfFMDvjrJ}/_ssgManifest.js +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},915908,e=>{"use strict";var t=e.i(89171),r=e.i(904937),i=e.i(17883);async function a(e){try{if((0,i.isCrossOrigin)(e))return t.NextResponse.json({error:"Cross-origin installs are not allowed."},{status:403});let a=await e.json().catch(()=>null),s=a?.name;if("string"!=typeof s||!s)return t.NextResponse.json({error:"Missing skill name."},{status:400});let n=await (0,r.installSkill)(s);return t.NextResponse.json({ok:!0,...n})}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to install skill."},{status:400})}}e.s(["POST",0,a,"runtime",0,"nodejs"])},810900,e=>{"use strict";var t=e.i(747909),r=e.i(174017),i=e.i(996250),a=e.i(759756),s=e.i(561916),n=e.i(174677),o=e.i(869741),l=e.i(316795),c=e.i(487718),u=e.i(995169),p=e.i(47587),d=e.i(666012),h=e.i(570101),f=e.i(626937),m=e.i(10372),w=e.i(193695);e.i(52474);var v=e.i(600220);let g=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/skills/install/route",pathname:"/api/skills/install",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/install/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(915908),...{}}),{workAsyncStorage:y,workUnitAsyncStorage:x,serverHooks:E}=g;async function R(e,t,i){i.requestMeta&&(0,a.setRequestMeta)(e,i.requestMeta),g.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let y="/api/skills/install/route";y=y.replace(/\/index$/,"")||"/";let x=await g.prepare(e,t,{srcPage:y,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:E,deploymentId:R,params:b,nextConfig:k,parsedUrl:S,isDraftMode:C,prerenderManifest:$,routerServerContext:A,isOnDemandRevalidate:j,revalidateOnlyGenerated:T,resolvedPathname:_,clientReferenceManifest:I,serverActionsManifest:N}=x,O=(0,o.normalizeAppPath)(y),P=!!($.dynamicRoutes[O]||$.routes[_]),q=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,S,!1):t.end("This page could not be found"),null);if(P&&!C){let e=!!$.routes[_],t=$.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(k.adapterPath)return await q();throw new w.NoFallbackError}}let D=null;!P||g.isDev||C||(D="/index"===(D=_)?"/":D);let U=!0===g.isDev||!P,M=P&&!U;N&&I&&(0,n.setManifestsSingleton)({page:y,clientReferenceManifest:I,serverActionsManifest:N});let F=e.method||"GET",H=(0,s.getTracer)(),L=H.getActiveScopeSpan(),W=!!(null==A?void 0:A.isWrappedByNextServer),K=!!(0,a.getRequestMeta)(e,"minimalMode"),B=(0,a.getRequestMeta)(e,"incrementalCache")||await g.getIncrementalCache(e,k,$,K);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let z={params:b,previewProps:$.preview,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts,useCacheTimeout:k.experimental.useCacheTimeout},cacheComponents:!!k.cacheComponents,validationLevel:k.experimental.instantInsights.validationLevel,supportsDynamicResponse:U,incrementalCache:B,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:k.cacheLife,staticPageGenerationTimeout:k.staticPageGenerationTimeout,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,i,a)=>g.onRequestError(e,t,i,a,A)},sharedContext:{buildId:E,deploymentId:R}},G=new l.NodeNextRequest(e),V=new l.NodeNextResponse(t),X=c.NextRequestAdapter.fromNodeNextRequest(G,(0,c.signalFromNodeResponse)(t)),Z=async({previousCacheEntry:r})=>{try{if(!K&&j&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await g.handle(X,z);e.fetchMetrics=z.renderOpts.fetchMetrics;let s=z.renderOpts.pendingWaitUntil;s&&i.waitUntil&&(i.waitUntil(s),s=void 0);let n=z.renderOpts.collectedTags;if(!P)return await (0,d.sendResponse)(G,V,a,s),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);n&&(t[m.NEXT_CACHE_TAGS_HEADER]=n),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,i=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=m.INFINITE_CACHE?!1!==r&&r>0?k.expireTime:void 0:z.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:i}}}}catch(t){throw(null==r?void 0:r.isStale)&&await g.onRequestError(e,t,{routerKind:"App Router",routePath:y,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:j})},!1,A),t}},J=async(a,n)=>{try{var o,l;let a=await g.handleResponse({req:e,nextConfig:k,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:$,isRoutePPREnabled:!1,isOnDemandRevalidate:j,revalidateOnlyGenerated:T,responseGenerator:Z,waitUntil:i.waitUntil,isMinimalMode:K});if(!P)return;if((null==a||null==(o=a.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(l=a.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",j?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,h.fromNodeOutgoingHttpHeaders)(a.value.headers);K&&P||s.delete(m.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,f.getCacheControlHeader)(a.cacheControl)),await (0,d.sendResponse)(G,V,new Response(a.value.body,{headers:s,status:a.value.status||200}));return}catch(t){if(t instanceof w.NoFallbackError||await g.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:j})},!1,A),P)throw t;await (0,d.sendResponse)(G,V,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:s.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=r.get("next.route")||O,o=`${F} ${i}`;a.setAttributes({"next.route":i,"http.route":i,"next.span_name":o}),a.updateName(o),n&&n!==a&&(n.setAttribute("http.route",i),n.updateName(o))})()}};if(W&&L)await J(L,void 0);else{let t=H.getActiveScopeSpan();await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${F} ${y}`,kind:s.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},e=>J(e,t)),void 0,!W)}}e.s(["handler",0,R,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:y,workUnitAsyncStorage:x})},"routeModule",0,g,"serverHooks",0,E,"workAsyncStorage",0,y,"workUnitAsyncStorage",0,x])},904937,e=>{"use strict";let t;var r=e.i(446786),i=e.i(814747),a=e.i(522734),s=e.i(254799);let n="EvoScientist/EvoSkills",o="main",l="skills/",c=(0,i.join)((t=process.env.EVOSCIENTIST_DATA_DIR)&&t.trim()?t.startsWith("~")?(0,i.join)((0,r.homedir)(),t.slice(1)):(0,i.resolve)(t):(0,i.join)((0,r.homedir)(),".evoscientist"),"skills"),u=[c,(0,i.join)((0,r.homedir)(),".config","evoscientist","skills")],p={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"};function d(e){return e.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)&&!e.includes("..")}function h(e){let t=e.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return t?{frontmatter:t[1],body:e.slice(t[0].length).trim()}:{frontmatter:null,body:e.trim()}}function f(e){let t=t=>{let r=e.match(RegExp(`^${t}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:t("name"),description:t("description"),version:function(e){let t=e.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!t)return;let r=t[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(e)}}function m(e){let{frontmatter:t}=h(e);return t?f(t):{}}async function w(e){for(let t of u)try{let r=await a.promises.readFile((0,i.join)(t,e,"SKILL.md"),"utf-8"),s=m(r).version;if(s)return s}catch{}}function v(e,t){return`https://raw.githubusercontent.com/${n}/${e}/${t}`}let g=/^[0-9a-f]{7,40}$/,y=null;async function x(){try{let e=await fetch(`https://api.github.com/repos/${n}/commits/${o}`,{headers:p});if(e.ok){let t=await e.json();if("string"==typeof t.sha&&g.test(t.sha))return t.sha}}catch{}return o}async function E(e=!1){if(!e&&y&&Date.now()-y.at<3e5)return{ref:y.ref,tree:y.tree};let t=await x(),r=await fetch(`https://api.github.com/repos/${n}/git/trees/${t}?recursive=1`,{headers:p});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let i=await r.json();if(!Array.isArray(i.tree))throw Error("Unexpected response from the skills catalog.");return y={at:Date.now(),ref:t,tree:i.tree},{ref:t,tree:i.tree}}function R(){return(0,i.join)(c,".installed.yaml")}async function b(){try{return function(e){let t={},r=null;for(let i of e.split("\n"))if(!(!i.trim()||i.trimStart().startsWith("#"))){if(/^\S/.test(i)){let e=i.match(/^(\S[^:]*?):\s*$/);(r=e?e[1].trim():null)&&(t[r]={source:""})}else if(r){let e=i.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(e){let i=e[2].replace(/^["']|["']$/g,"").trim();"source"===e[1]?t[r].source=i:"commit"===e[1]&&(t[r].commit=i)}}}for(let e of Object.keys(t))t[e].source||delete t[e];return t}(await a.promises.readFile(R(),"utf-8"))}catch{return{}}}async function k(e){let t=R(),r=`${t}.${(0,s.randomUUID)()}.tmp`;await a.promises.mkdir(c,{recursive:!0}),await a.promises.writeFile(r,function(e){let t=Object.keys(e).sort();if(0===t.length)return"{}\n";let r="";for(let i of t)r+=`${i}:
|
|
1
|
+
module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},915908,e=>{"use strict";var t=e.i(89171),r=e.i(904937),i=e.i(17883);async function a(e){try{if((0,i.isCrossOrigin)(e))return t.NextResponse.json({error:"Cross-origin installs are not allowed."},{status:403});let a=await e.json().catch(()=>null),s=a?.name;if("string"!=typeof s||!s)return t.NextResponse.json({error:"Missing skill name."},{status:400});let n=await (0,r.installSkill)(s);return t.NextResponse.json({ok:!0,...n})}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to install skill."},{status:400})}}e.s(["POST",0,a,"runtime",0,"nodejs"])},810900,e=>{"use strict";var t=e.i(747909),r=e.i(174017),i=e.i(996250),a=e.i(759756),s=e.i(561916),n=e.i(174677),o=e.i(869741),l=e.i(316795),c=e.i(487718),u=e.i(995169),p=e.i(47587),d=e.i(666012),h=e.i(570101),f=e.i(626937),m=e.i(10372),w=e.i(193695);e.i(52474);var y=e.i(600220);let v=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/skills/install/route",pathname:"/api/skills/install",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/install/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(915908),...{}}),{workAsyncStorage:g,workUnitAsyncStorage:x,serverHooks:E}=v;async function R(e,t,i){i.requestMeta&&(0,a.setRequestMeta)(e,i.requestMeta),v.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/skills/install/route";g=g.replace(/\/index$/,"")||"/";let x=await v.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:E,deploymentId:R,params:k,nextConfig:b,parsedUrl:$,isDraftMode:S,prerenderManifest:C,routerServerContext:j,isOnDemandRevalidate:A,revalidateOnlyGenerated:T,resolvedPathname:_,clientReferenceManifest:I,serverActionsManifest:O}=x,P=(0,o.normalizeAppPath)(g),N=!!(C.dynamicRoutes[P]||C.routes[_]),q=async()=>((null==j?void 0:j.render404)?await j.render404(e,t,$,!1):t.end("This page could not be found"),null);if(N&&!S){let e=!!C.routes[_],t=C.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(b.adapterPath)return await q();throw new w.NoFallbackError}}let D=null;!N||v.isDev||S||(D="/index"===(D=_)?"/":D);let U=!0===v.isDev||!N,M=N&&!U;O&&I&&(0,n.setManifestsSingleton)({page:g,clientReferenceManifest:I,serverActionsManifest:O});let F=e.method||"GET",H=(0,s.getTracer)(),L=H.getActiveScopeSpan(),W=!!(null==j?void 0:j.isWrappedByNextServer),K=!!(0,a.getRequestMeta)(e,"minimalMode"),B=(0,a.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,b,C,K);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let z={params:k,previewProps:C.preview,renderOpts:{experimental:{authInterrupts:!!b.experimental.authInterrupts,useCacheTimeout:b.experimental.useCacheTimeout},cacheComponents:!!b.cacheComponents,validationLevel:b.experimental.instantInsights.validationLevel,supportsDynamicResponse:U,incrementalCache:B,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:b.cacheLife,staticPageGenerationTimeout:b.staticPageGenerationTimeout,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,i,a)=>v.onRequestError(e,t,i,a,j)},sharedContext:{buildId:E,deploymentId:R}},G=new l.NodeNextRequest(e),V=new l.NodeNextResponse(t),X=c.NextRequestAdapter.fromNodeNextRequest(G,(0,c.signalFromNodeResponse)(t)),Z=async({previousCacheEntry:r})=>{try{if(!K&&A&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await v.handle(X,z);e.fetchMetrics=z.renderOpts.fetchMetrics;let s=z.renderOpts.pendingWaitUntil;s&&i.waitUntil&&(i.waitUntil(s),s=void 0);let n=z.renderOpts.collectedTags;if(!N)return await (0,d.sendResponse)(G,V,a,s),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);n&&(t[m.NEXT_CACHE_TAGS_HEADER]=n),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,i=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=m.INFINITE_CACHE?!1!==r&&r>0?b.expireTime:void 0:z.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:i}}}}catch(t){throw(null==r?void 0:r.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:A})},!1,j),t}},J=async(a,n)=>{try{var o,l;let a=await v.handleResponse({req:e,nextConfig:b,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:T,responseGenerator:Z,waitUntil:i.waitUntil,isMinimalMode:K});if(!N)return;if((null==a||null==(o=a.value)?void 0:o.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(l=a.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",A?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,h.fromNodeOutgoingHttpHeaders)(a.value.headers);K&&N||s.delete(m.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,f.getCacheControlHeader)(a.cacheControl)),await (0,d.sendResponse)(G,V,new Response(a.value.body,{headers:s,status:a.value.status||200}));return}catch(t){if(t instanceof w.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:A})},!1,j),N)throw t;await (0,d.sendResponse)(G,V,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:s.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=r.get("next.route")||P,o=`${F} ${i}`;a.setAttributes({"next.route":i,"http.route":i,"next.span_name":o}),a.updateName(o),n&&n!==a&&(n.setAttribute("http.route",i),n.updateName(o))})()}};if(W&&L)await J(L,void 0);else{let t=H.getActiveScopeSpan();await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${F} ${g}`,kind:s.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},e=>J(e,t)),void 0,!W)}}e.s(["handler",0,R,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:g,workUnitAsyncStorage:x})},"routeModule",0,v,"serverHooks",0,E,"workAsyncStorage",0,g,"workUnitAsyncStorage",0,x])},904937,e=>{"use strict";let t;var r=e.i(446786),i=e.i(814747),a=e.i(522734),s=e.i(254799);let n="EvoScientist/EvoSkills",o="main",l="skills/",c=(0,i.join)((t=process.env.EVOSCIENTIST_DATA_DIR)&&t.trim()?t.startsWith("~")?(0,i.join)((0,r.homedir)(),t.slice(1)):(0,i.resolve)(t):(0,i.join)((0,r.homedir)(),".evoscientist"),"skills"),u=[c,(0,i.join)((0,r.homedir)(),".config","evoscientist","skills")],p={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"},d="EXPERT.md";async function h(e,t,r){try{let s=await a.promises.realpath((0,i.join)(e,t,r)),n=await a.promises.realpath(e);if(s!==n&&!s.startsWith(n+i.sep))return null;return await a.promises.readFile(s,"utf-8")}catch{return null}}function f(e){let t,{frontmatter:r}=y(e);if(!r)return!0;let i=r.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!i)return!0;let a=i[1],s=a.split("\n").find(e=>e.trim()),n=s?.match(/^[ \t]+/)?.[0]??" ",o=a.match(RegExp(`^${n}type\\s*:[ \\t]*(.*)$`,"m"));if(!o)return!0;let l=o[1].trim();if(""===l||"|"===l||">"===l)for(let e of(t=[],a.slice(a.indexOf(o[0])+o[0].length).split("\n"))){if(!e.trim())continue;let r=e.match(/^[ \t]+-[ \t]*(.+?)[ \t]*$/);if(!r||!e.startsWith(n))break;t.push(r[1])}else t=l.replace(/^\[|\]$/g,"").split(",");return t.map(e=>e.trim().replace(/^["']|["']$/g,"").toLowerCase()).filter(Boolean).includes("skill")}async function m(e){try{return(await a.promises.stat((0,i.join)(e,d))).isFile()}catch{return!1}}function w(e){return e.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)&&!e.includes("..")}function y(e){let t=e.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return t?{frontmatter:t[1],body:e.slice(t[0].length).trim()}:{frontmatter:null,body:e.trim()}}function v(e){let t=t=>{let r=e.match(RegExp(`^${t}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:t("name"),description:t("description"),version:function(e){let t=e.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!t)return;let r=t[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(e)}}function g(e){let{frontmatter:t}=y(e);return t?v(t):{}}async function x(e){for(let t of u)try{let r=await a.promises.readFile((0,i.join)(t,e,"SKILL.md"),"utf-8"),s=g(r).version;if(s)return s}catch{}}function E(e,t){return`https://raw.githubusercontent.com/${n}/${e}/${t}`}let R=/^[0-9a-f]{7,40}$/,k=null;async function b(){try{let e=await fetch(`https://api.github.com/repos/${n}/commits/${o}`,{headers:p});if(e.ok){let t=await e.json();if("string"==typeof t.sha&&R.test(t.sha))return t.sha}}catch{}return o}async function $(e=!1){if(!e&&k&&Date.now()-k.at<3e5)return{ref:k.ref,tree:k.tree};let t=await b(),r=await fetch(`https://api.github.com/repos/${n}/git/trees/${t}?recursive=1`,{headers:p});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let i=await r.json();if(!Array.isArray(i.tree))throw Error("Unexpected response from the skills catalog.");return k={at:Date.now(),ref:t,tree:i.tree},{ref:t,tree:i.tree}}function S(){return(0,i.join)(c,".installed.yaml")}async function C(){try{return function(e){let t={},r=null;for(let i of e.split("\n"))if(!(!i.trim()||i.trimStart().startsWith("#"))){if(/^\S/.test(i)){let e=i.match(/^(\S[^:]*?):\s*$/);(r=e?e[1].trim():null)&&(t[r]={source:""})}else if(r){let e=i.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(e){let i=e[2].replace(/^["']|["']$/g,"").trim();"source"===e[1]?t[r].source=i:"commit"===e[1]&&(t[r].commit=i)}}}for(let e of Object.keys(t))t[e].source||delete t[e];return t}(await a.promises.readFile(S(),"utf-8"))}catch{return{}}}async function j(e){let t=S(),r=`${t}.${(0,s.randomUUID)()}.tmp`;await a.promises.mkdir(c,{recursive:!0}),await a.promises.writeFile(r,function(e){let t=Object.keys(e).sort();if(0===t.length)return"{}\n";let r="";for(let i of t)r+=`${i}:
|
|
2
2
|
`,e[i].commit&&(r+=` commit: ${e[i].commit}
|
|
3
3
|
`),r+=` source: ${e[i].source}
|
|
4
|
-
`;return r}(e),{mode:384}),await a.promises.rename(r,t)}async function
|
|
4
|
+
`;return r}(e),{mode:384}),await a.promises.rename(r,t)}async function A(e,t){let r=await C(),i=`${n}@${l}${e}`;r[e]=t?{source:i,commit:t}:{source:i},await j(r)}async function T(e){let t=await C();e in t&&(delete t[e],await j(t))}async function _(){let e=new Set;for(let t of u)try{for(let r of(await a.promises.readdir(t,{withFileTypes:!0})))r.isDirectory()&&!r.name.startsWith(".")&&e.add(r.name)}catch{}return e}async function I(e=!1){let[{ref:t,tree:r},i]=await Promise.all([$(e),_()]),a=function(e){let t=new Map;for(let r of e){if("blob"!==r.type||!r.path.startsWith(l))continue;let e=r.path.slice(l.length),i=e.indexOf("/");if(i<=0)continue;let a=e.slice(0,i);(t.get(a)??t.set(a,[]).get(a)).push(r)}return t}(r);return(await Promise.all([...a.entries()].map(async([e,r])=>{let a,s,n=e,o="",c=!0,u=r.find(t=>t.path===`${l}${e}/SKILL.md`);if(u)try{let r=await fetch(E(t,u.path),{headers:p}).then(e=>e.ok?e.text():""),i=g(r);n=i.name||e,o=i.description||"",s=i.version,c=f(r)}catch{}let h=i.has(e),m=h?await x(e):void 0,w=h&&!!s&&!!m&&function(e,t){let r=e.split(".").map(e=>parseInt(e,10)),i=t.split(".").map(e=>parseInt(e,10)),a=Math.max(r.length,i.length);for(let e=0;e<a;e+=1){let t=r[e]??0,a=i[e]??0;if(Number.isNaN(t)||Number.isNaN(a))break;if(t!==a)return t>a?1:-1}return 0}(s,m)>0;return{name:e,title:n,description:o,fileCount:r.length,installed:h,latestVersion:s,installedVersion:m,updateAvailable:w,isExpert:(a=`${l}${e}/${d}`,r.some(e=>e.path===a)),isSkill:c}}))).sort((e,t)=>e.title.localeCompare(t.title))}async function O(e){if(!w(e))throw Error("Invalid skill name.");let t=null,r=null,i=!1;for(let a of u){let s=await h(a,e,"SKILL.md");if(null!==s){t=s,i=!0,r=await h(a,e,d);break}}if(null===t){let{ref:i,tree:a}=await $(),s=async e=>{let t=await fetch(E(i,e),{headers:p});if(!t.ok)throw Error(`Failed to load skill (${t.status}).`);return t.text()},n=e=>a.some(t=>"blob"===t.type&&t.path===e),o=`${l}${e}/SKILL.md`;if(!n(o))throw Error(`Skill "${e}" was not found.`);t=await s(o);let c=`${l}${e}/${d}`;if(n(c))try{r=await s(c)}catch{}}let{frontmatter:a,body:s}=y(t),n=a?v(a):{},o=null!==a&&(null!=n.name||null!=n.description||null!=n.version);return{name:e,title:n.name||e,description:n.description||"",version:n.version,body:o?s:t.trim(),installed:i,expertBody:null===r?void 0:function(e){let{frontmatter:t,body:r}=y(e);return(null===t?e:r).trim()}(r)}}async function P(e){if(!w(e))throw Error("Invalid skill name.");let{ref:t,tree:r}=await $(),n=`${l}${e}/`,u=r.filter(e=>"blob"===e.type&&e.path.startsWith(n));if(0===u.length)throw Error(`Skill "${e}" was not found in the catalog.`);if(u.length>300)throw Error("This skill has too many files to install.");if(u.reduce((e,t)=>e+(t.size??0),0)>0x1900000)throw Error("This skill is too large to install.");let d=(0,i.resolve)(c),h=(0,i.resolve)(d,e);if(h!==(0,i.join)(d,e))throw Error("Invalid skill name.");let f=(0,i.join)(d,`.installing-${e}-${(0,s.randomUUID)()}`);try{for(let e of(await a.promises.mkdir(f,{recursive:!0}),u)){let r=e.path.slice(n.length),s=(0,i.resolve)(f,r);if(s!==f&&!s.startsWith(f+i.sep))throw Error("Invalid file path in skill.");let o=await fetch(E(t,e.path),{headers:p});if(!o.ok)throw Error(`Failed to download ${r} (${o.status}).`);let l=Buffer.from(await o.arrayBuffer());await a.promises.mkdir((0,i.dirname)(s),{recursive:!0}),await a.promises.writeFile(s,l)}await a.promises.rm(h,{recursive:!0,force:!0}),await a.promises.mkdir(d,{recursive:!0}),await a.promises.rename(f,h)}catch(e){throw await a.promises.rm(f,{recursive:!0,force:!0}).catch(()=>{}),e}try{await A(e,t!==o&&R.test(t)?t:null)}catch{}return{files:u.length}}e.s(["SKILL_DIRS",0,u,"declaresSkillType",0,f,"getCatalog",0,I,"getSkillDetail",0,O,"installSkill",0,P,"isInstalledExpert",0,m,"isValidSkillName",0,w,"recordUninstall",0,T])},17883,e=>{"use strict";var t=e.i(522734),r=e.i(446786),i=e.i(814747),a=e.i(254799);let s=(0,i.join)((0,r.homedir)(),".config","evoscientist","langgraph_dev.workspace.json");function n(e){for(let t=0;t<e.length;t+=1){let r=e.charCodeAt(t);if(r<32||127===r||r>=128&&r<=159||8232===r||8233===r)return!0}return!1}let o=new Set(["large_tool_results","conversation_history","__pycache__","node_modules","__MACOSX"]),l=[".pyc",".pyo"];function c(e){return!!(e.startsWith(".")||o.has(e))||l.some(t=>e.endsWith(t))}async function u(){let e;try{let r=JSON.parse(await t.promises.readFile(s,"utf-8")),i=r.workspace,a=r.pid;"string"==typeof i&&i.trim()&&(!("number"==typeof a&&a>0)||function(e){try{return process.kill(e,0),!0}catch(e){return"EPERM"===e.code}}(a))&&(e=i)}catch{}if(!(e||=process.env.EVOSCIENTIST_WORKSPACE_DIR))throw Error("No active EvoScientist workspace found. Start the backend with `EvoSci deploy` first.");let r=(0,i.resolve)(e);if(!(await t.promises.stat(r)).isDirectory())throw Error("The active EvoScientist workspace is not a directory.");return t.promises.realpath(r)}function p(e,t){if(n(t))throw Error("Invalid path.");let r=t.replaceAll("\\","/").replace(/^\/+/,"");if(r.split("/").some(e=>""!==e&&c(e)))throw Error("Path is not accessible.");let a=(0,i.resolve)(e,r);if(a!==e&&!a.startsWith(e+i.sep))throw Error("Path is outside the workspace.");return a}async function d(e,r){let a,s=p(e,r);try{a=await t.promises.realpath(s)}catch{throw Error("Path is not accessible.")}if(a!==e&&!a.startsWith(e+i.sep))throw Error("Path is not accessible.");let n=(0,i.relative)(e,a);if(n&&n.split(i.sep).some(e=>""!==e&&c(e)))throw Error("Path is not accessible.");return a}let h=new Set(["txt","text","md","markdown","log","csv","tsv","json","jsonl","yaml","yml","toml","xml","ini","cfg","conf","env","py","js","jsx","ts","tsx","sh","bash","zsh","r","jl","cpp","cc","c","h","hpp","java","go","rs","rb","php","swift","kt","cs","sql","tex","bib","rst","css","scss","html"]);async function f(e,r){let a;try{a=await t.promises.realpath((0,i.dirname)(r))}catch{throw Error("Path is not accessible.")}if(a!==e&&!a.startsWith(e+i.sep))throw Error("Path is not accessible.")}function m(e){let t;return h.has((t=e.lastIndexOf("."))>=0?e.slice(t+1).toLowerCase():"")}async function w(e,r,s){let n;if("string"!=typeof s)throw Error("Content must be a string.");if(Buffer.byteLength(s,"utf-8")>5242880)throw Error("This file is too large to save.");if(!m(r.replaceAll("\\","/").split("/").pop()||r))throw Error("Only text/code files can be edited.");let o=p(e,r);try{n=await t.promises.lstat(o)}catch{throw Error("Only files can be edited.")}if(n.isSymbolicLink())throw Error("Editing symlinks is not allowed.");let l=await d(e,r);if(!m((0,i.basename)(l)))throw Error("Only text/code files can be edited.");let c=await t.promises.stat(l);if(!c.isFile())throw Error("Only files can be edited.");let u=`${l}.${(0,a.randomUUID)()}.tmp`;try{await f(e,l),await t.promises.writeFile(u,s,{encoding:"utf-8",mode:511&c.mode}),await f(e,l),await t.promises.rename(u,l)}catch(e){throw await t.promises.rm(u,{force:!0}).catch(()=>{}),e}let h=await t.promises.stat(l);return{path:r.replaceAll("\\","/").replace(/^\/+/,""),size:h.size,mtime:h.mtimeMs}}async function y(e,r){await d(e,r);let i=p(e,r);if((await t.promises.lstat(i)).isDirectory())throw Error("Only files can be deleted.");await f(e,i),await t.promises.rm(i,{force:!0})}e.s(["MAX_WORKSPACE_WRITE_BYTES",0,5242880,"deleteWorkspaceFile",0,y,"getWorkspaceDir",0,u,"hasControlChar",0,n,"isCrossOrigin",0,function(e){let t=e.headers.get("host");if(!t)return!0;let r=e.headers.get("sec-fetch-site");if(r)return"same-origin"!==r&&"same-site"!==r&&"none"!==r;let i=e.headers.get("origin");if(!i)return!1;try{return new URL(i).host!==t}catch{return!0}},"isHiddenEntry",0,c,"safeResolve",0,d,"writeWorkspaceFile",0,w,"zipExcludeArgs",0,function(){let e=[".*","*/.*"];for(let t of o)e.push(`${t}/*`,`*/${t}/*`,t,`*/${t}`);for(let t of l)e.push(`*${t}`);return e.flatMap(e=>["-x",e])}])}];
|
|
5
5
|
|
|
6
6
|
//# sourceMappingURL=%5Broot-of-the-server%5D__01e0ekn._.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},854032,e=>{"use strict";var t=e.i(89171),r=e.i(904937);async function a(e){try{let a="1"===e.nextUrl.searchParams.get("refresh"),i=await (0,r.getCatalog)(a);return t.NextResponse.json({skills:i})}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to load the skills catalog."},{status:502})}}e.s(["GET",0,a,"runtime",0,"nodejs"])},863384,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),i=e.i(759756),n=e.i(561916),s=e.i(174677),o=e.i(869741),l=e.i(316795),c=e.i(487718),u=e.i(995169),d=e.i(47587),p=e.i(666012),h=e.i(570101),m=e.i(626937),f=e.i(10372),w=e.i(193695);e.i(52474);var v=e.i(600220);let x=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/skills/catalog/route",pathname:"/api/skills/catalog",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/catalog/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(854032),...{}}),{workAsyncStorage:g,workUnitAsyncStorage:y,serverHooks:R}=x;async function E(e,t,a){a.requestMeta&&(0,i.setRequestMeta)(e,a.requestMeta),x.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/skills/catalog/route";g=g.replace(/\/index$/,"")||"/";let y=await x.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:R,deploymentId:E,params:k,nextConfig:b,parsedUrl:$,isDraftMode:C,prerenderManifest:S,routerServerContext:A,isOnDemandRevalidate:j,revalidateOnlyGenerated:T,resolvedPathname:I,clientReferenceManifest:N,serverActionsManifest:q}=y,P=(0,o.normalizeAppPath)(g),_=!!(S.dynamicRoutes[P]||S.routes[I]),O=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,$,!1):t.end("This page could not be found"),null);if(_&&!C){let e=!!S.routes[I],t=S.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(b.adapterPath)return await O();throw new w.NoFallbackError}}let U=null;!_||x.isDev||C||(U="/index"===(U=I)?"/":U);let D=!0===x.isDev||!_,H=_&&!D;q&&N&&(0,s.setManifestsSingleton)({page:g,clientReferenceManifest:N,serverActionsManifest:q});let M=e.method||"GET",F=(0,n.getTracer)(),L=F.getActiveScopeSpan(),K=!!(null==A?void 0:A.isWrappedByNextServer),W=!!(0,i.getRequestMeta)(e,"minimalMode"),B=(0,i.getRequestMeta)(e,"incrementalCache")||await x.getIncrementalCache(e,b,S,W);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let G={params:k,previewProps:S.preview,renderOpts:{experimental:{authInterrupts:!!b.experimental.authInterrupts,useCacheTimeout:b.experimental.useCacheTimeout},cacheComponents:!!b.cacheComponents,validationLevel:b.experimental.instantInsights.validationLevel,supportsDynamicResponse:D,incrementalCache:B,hmrRefreshHash:(0,i.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:b.cacheLife,staticPageGenerationTimeout:b.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,i)=>x.onRequestError(e,t,a,i,A)},sharedContext:{buildId:R,deploymentId:E}},z=new l.NodeNextRequest(e),V=new l.NodeNextResponse(t),Z=c.NextRequestAdapter.fromNodeNextRequest(z,(0,c.signalFromNodeResponse)(t)),X=async({previousCacheEntry:r})=>{try{if(!W&&j&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await x.handle(Z,G);e.fetchMetrics=G.renderOpts.fetchMetrics;let n=G.renderOpts.pendingWaitUntil;n&&a.waitUntil&&(a.waitUntil(n),n=void 0);let s=G.renderOpts.collectedTags;if(!_)return await (0,p.sendResponse)(z,V,i,n),null;{let e=await i.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(i.headers);s&&(t[f.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=f.INFINITE_CACHE?!1!==r&&r>0?b.expireTime:void 0:G.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await x.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:j})},!1,A),t}},J=async(i,s)=>{try{var o,l;let i=await x.handleResponse({req:e,nextConfig:b,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:j,revalidateOnlyGenerated:T,responseGenerator:X,waitUntil:a.waitUntil,isMinimalMode:W});if(!_)return;if((null==i||null==(o=i.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==i||null==(l=i.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});W||t.setHeader("x-nextjs-cache",j?"REVALIDATED":i.isMiss?"MISS":i.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let n=(0,h.fromNodeOutgoingHttpHeaders)(i.value.headers);W&&_||n.delete(f.NEXT_CACHE_TAGS_HEADER),!i.cacheControl||t.getHeader("Cache-Control")||n.get("Cache-Control")||n.set("Cache-Control",(0,m.getCacheControlHeader)(i.cacheControl)),await (0,p.sendResponse)(z,V,new Response(i.value.body,{headers:n,status:i.value.status||200}));return}catch(t){if(t instanceof w.NoFallbackError||await x.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:j})},!1,A),_)throw t;await (0,p.sendResponse)(z,V,new Response(null,{status:500}));return}finally{(()=>{if(!i)return;let e=t.statusCode;i.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(i.setStatus({code:n.SpanStatusCode.ERROR}),i.setAttribute("error.type",e.toString()));let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||P,o=`${M} ${a}`;i.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),i.updateName(o),s&&s!==i&&(s.setAttribute("http.route",a),s.updateName(o))})()}};if(K&&L)await J(L,void 0);else{let t=F.getActiveScopeSpan();await F.withPropagatedContext(e.headers,()=>F.trace(u.BaseServerSpan.handleRequest,{spanName:`${M} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},e=>J(e,t)),void 0,!K)}}e.s(["handler",0,E,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:g,workUnitAsyncStorage:y})},"routeModule",0,x,"serverHooks",0,R,"workAsyncStorage",0,g,"workUnitAsyncStorage",0,y])},904937,e=>{"use strict";let t;var r=e.i(446786),a=e.i(814747),i=e.i(522734),n=e.i(254799);let s="EvoScientist/EvoSkills",o="main",l="skills/",c=(0,a.join)((t=process.env.EVOSCIENTIST_DATA_DIR)&&t.trim()?t.startsWith("~")?(0,a.join)((0,r.homedir)(),t.slice(1)):(0,a.resolve)(t):(0,a.join)((0,r.homedir)(),".evoscientist"),"skills"),u=[c,(0,a.join)((0,r.homedir)(),".config","evoscientist","skills")],d={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"};function p(e){return e.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)&&!e.includes("..")}function h(e){let t=e.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return t?{frontmatter:t[1],body:e.slice(t[0].length).trim()}:{frontmatter:null,body:e.trim()}}function m(e){let t=t=>{let r=e.match(RegExp(`^${t}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:t("name"),description:t("description"),version:function(e){let t=e.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!t)return;let r=t[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(e)}}function f(e){let{frontmatter:t}=h(e);return t?m(t):{}}async function w(e){for(let t of u)try{let r=await i.promises.readFile((0,a.join)(t,e,"SKILL.md"),"utf-8"),n=f(r).version;if(n)return n}catch{}}function v(e,t){return`https://raw.githubusercontent.com/${s}/${e}/${t}`}let x=/^[0-9a-f]{7,40}$/,g=null;async function y(){try{let e=await fetch(`https://api.github.com/repos/${s}/commits/${o}`,{headers:d});if(e.ok){let t=await e.json();if("string"==typeof t.sha&&x.test(t.sha))return t.sha}}catch{}return o}async function R(e=!1){if(!e&&g&&Date.now()-g.at<3e5)return{ref:g.ref,tree:g.tree};let t=await y(),r=await fetch(`https://api.github.com/repos/${s}/git/trees/${t}?recursive=1`,{headers:d});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let a=await r.json();if(!Array.isArray(a.tree))throw Error("Unexpected response from the skills catalog.");return g={at:Date.now(),ref:t,tree:a.tree},{ref:t,tree:a.tree}}function E(){return(0,a.join)(c,".installed.yaml")}async function k(){try{return function(e){let t={},r=null;for(let a of e.split("\n"))if(!(!a.trim()||a.trimStart().startsWith("#"))){if(/^\S/.test(a)){let e=a.match(/^(\S[^:]*?):\s*$/);(r=e?e[1].trim():null)&&(t[r]={source:""})}else if(r){let e=a.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(e){let a=e[2].replace(/^["']|["']$/g,"").trim();"source"===e[1]?t[r].source=a:"commit"===e[1]&&(t[r].commit=a)}}}for(let e of Object.keys(t))t[e].source||delete t[e];return t}(await i.promises.readFile(E(),"utf-8"))}catch{return{}}}async function b(e){let t=E(),r=`${t}.${(0,n.randomUUID)()}.tmp`;await i.promises.mkdir(c,{recursive:!0}),await i.promises.writeFile(r,function(e){let t=Object.keys(e).sort();if(0===t.length)return"{}\n";let r="";for(let a of t)r+=`${a}:
|
|
1
|
+
module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},854032,e=>{"use strict";var t=e.i(89171),r=e.i(904937);async function a(e){try{let a="1"===e.nextUrl.searchParams.get("refresh"),i=await (0,r.getCatalog)(a);return t.NextResponse.json({skills:i})}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to load the skills catalog."},{status:502})}}e.s(["GET",0,a,"runtime",0,"nodejs"])},863384,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),i=e.i(759756),n=e.i(561916),s=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),h=e.i(570101),m=e.i(626937),f=e.i(10372),w=e.i(193695);e.i(52474);var x=e.i(600220);let g=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/skills/catalog/route",pathname:"/api/skills/catalog",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/catalog/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(854032),...{}}),{workAsyncStorage:v,workUnitAsyncStorage:y,serverHooks:R}=g;async function E(e,t,a){a.requestMeta&&(0,i.setRequestMeta)(e,a.requestMeta),g.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/skills/catalog/route";v=v.replace(/\/index$/,"")||"/";let y=await g.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:R,deploymentId:E,params:k,nextConfig:$,parsedUrl:b,isDraftMode:C,prerenderManifest:S,routerServerContext:A,isOnDemandRevalidate:j,revalidateOnlyGenerated:T,resolvedPathname:I,clientReferenceManifest:N,serverActionsManifest:q}=y,P=(0,o.normalizeAppPath)(v),_=!!(S.dynamicRoutes[P]||S.routes[I]),O=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,b,!1):t.end("This page could not be found"),null);if(_&&!C){let e=!!S.routes[I],t=S.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if($.adapterPath)return await O();throw new w.NoFallbackError}}let U=null;!_||g.isDev||C||(U="/index"===(U=I)?"/":U);let D=!0===g.isDev||!_,H=_&&!D;q&&N&&(0,s.setManifestsSingleton)({page:v,clientReferenceManifest:N,serverActionsManifest:q});let F=e.method||"GET",L=(0,n.getTracer)(),M=L.getActiveScopeSpan(),K=!!(null==A?void 0:A.isWrappedByNextServer),B=!!(0,i.getRequestMeta)(e,"minimalMode"),W=(0,i.getRequestMeta)(e,"incrementalCache")||await g.getIncrementalCache(e,$,S,B);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let G={params:k,previewProps:S.preview,renderOpts:{experimental:{authInterrupts:!!$.experimental.authInterrupts,useCacheTimeout:$.experimental.useCacheTimeout},cacheComponents:!!$.cacheComponents,validationLevel:$.experimental.instantInsights.validationLevel,supportsDynamicResponse:D,incrementalCache:W,hmrRefreshHash:(0,i.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:$.cacheLife,staticPageGenerationTimeout:$.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,i)=>g.onRequestError(e,t,a,i,A)},sharedContext:{buildId:R,deploymentId:E}},z=new l.NodeNextRequest(e),V=new l.NodeNextResponse(t),X=u.NextRequestAdapter.fromNodeNextRequest(z,(0,u.signalFromNodeResponse)(t)),Z=async({previousCacheEntry:r})=>{try{if(!B&&j&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await g.handle(X,G);e.fetchMetrics=G.renderOpts.fetchMetrics;let n=G.renderOpts.pendingWaitUntil;n&&a.waitUntil&&(a.waitUntil(n),n=void 0);let s=G.renderOpts.collectedTags;if(!_)return await (0,p.sendResponse)(z,V,i,n),null;{let e=await i.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(i.headers);s&&(t[f.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=f.INFINITE_CACHE?!1!==r&&r>0?$.expireTime:void 0:G.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await g.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:j})},!1,A),t}},J=async(i,s)=>{try{var o,l;let i=await g.handleResponse({req:e,nextConfig:$,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:j,revalidateOnlyGenerated:T,responseGenerator:Z,waitUntil:a.waitUntil,isMinimalMode:B});if(!_)return;if((null==i||null==(o=i.value)?void 0:o.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==i||null==(l=i.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});B||t.setHeader("x-nextjs-cache",j?"REVALIDATED":i.isMiss?"MISS":i.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let n=(0,h.fromNodeOutgoingHttpHeaders)(i.value.headers);B&&_||n.delete(f.NEXT_CACHE_TAGS_HEADER),!i.cacheControl||t.getHeader("Cache-Control")||n.get("Cache-Control")||n.set("Cache-Control",(0,m.getCacheControlHeader)(i.cacheControl)),await (0,p.sendResponse)(z,V,new Response(i.value.body,{headers:n,status:i.value.status||200}));return}catch(t){if(t instanceof w.NoFallbackError||await g.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:j})},!1,A),_)throw t;await (0,p.sendResponse)(z,V,new Response(null,{status:500}));return}finally{(()=>{if(!i)return;let e=t.statusCode;i.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(i.setStatus({code:n.SpanStatusCode.ERROR}),i.setAttribute("error.type",e.toString()));let r=L.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||P,o=`${F} ${a}`;i.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),i.updateName(o),s&&s!==i&&(s.setAttribute("http.route",a),s.updateName(o))})()}};if(K&&M)await J(M,void 0);else{let t=L.getActiveScopeSpan();await L.withPropagatedContext(e.headers,()=>L.trace(c.BaseServerSpan.handleRequest,{spanName:`${F} ${v}`,kind:n.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},e=>J(e,t)),void 0,!K)}}e.s(["handler",0,E,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:v,workUnitAsyncStorage:y})},"routeModule",0,g,"serverHooks",0,R,"workAsyncStorage",0,v,"workUnitAsyncStorage",0,y])},904937,e=>{"use strict";let t;var r=e.i(446786),a=e.i(814747),i=e.i(522734),n=e.i(254799);let s="EvoScientist/EvoSkills",o="main",l="skills/",u=(0,a.join)((t=process.env.EVOSCIENTIST_DATA_DIR)&&t.trim()?t.startsWith("~")?(0,a.join)((0,r.homedir)(),t.slice(1)):(0,a.resolve)(t):(0,a.join)((0,r.homedir)(),".evoscientist"),"skills"),c=[u,(0,a.join)((0,r.homedir)(),".config","evoscientist","skills")],d={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"},p="EXPERT.md";async function h(e,t,r){try{let n=await i.promises.realpath((0,a.join)(e,t,r)),s=await i.promises.realpath(e);if(n!==s&&!n.startsWith(s+a.sep))return null;return await i.promises.readFile(n,"utf-8")}catch{return null}}function m(e){let t,{frontmatter:r}=x(e);if(!r)return!0;let a=r.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!a)return!0;let i=a[1],n=i.split("\n").find(e=>e.trim()),s=n?.match(/^[ \t]+/)?.[0]??" ",o=i.match(RegExp(`^${s}type\\s*:[ \\t]*(.*)$`,"m"));if(!o)return!0;let l=o[1].trim();if(""===l||"|"===l||">"===l)for(let e of(t=[],i.slice(i.indexOf(o[0])+o[0].length).split("\n"))){if(!e.trim())continue;let r=e.match(/^[ \t]+-[ \t]*(.+?)[ \t]*$/);if(!r||!e.startsWith(s))break;t.push(r[1])}else t=l.replace(/^\[|\]$/g,"").split(",");return t.map(e=>e.trim().replace(/^["']|["']$/g,"").toLowerCase()).filter(Boolean).includes("skill")}async function f(e){try{return(await i.promises.stat((0,a.join)(e,p))).isFile()}catch{return!1}}function w(e){return e.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)&&!e.includes("..")}function x(e){let t=e.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return t?{frontmatter:t[1],body:e.slice(t[0].length).trim()}:{frontmatter:null,body:e.trim()}}function g(e){let t=t=>{let r=e.match(RegExp(`^${t}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:t("name"),description:t("description"),version:function(e){let t=e.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!t)return;let r=t[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(e)}}function v(e){let{frontmatter:t}=x(e);return t?g(t):{}}async function y(e){for(let t of c)try{let r=await i.promises.readFile((0,a.join)(t,e,"SKILL.md"),"utf-8"),n=v(r).version;if(n)return n}catch{}}function R(e,t){return`https://raw.githubusercontent.com/${s}/${e}/${t}`}let E=/^[0-9a-f]{7,40}$/,k=null;async function $(){try{let e=await fetch(`https://api.github.com/repos/${s}/commits/${o}`,{headers:d});if(e.ok){let t=await e.json();if("string"==typeof t.sha&&E.test(t.sha))return t.sha}}catch{}return o}async function b(e=!1){if(!e&&k&&Date.now()-k.at<3e5)return{ref:k.ref,tree:k.tree};let t=await $(),r=await fetch(`https://api.github.com/repos/${s}/git/trees/${t}?recursive=1`,{headers:d});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let a=await r.json();if(!Array.isArray(a.tree))throw Error("Unexpected response from the skills catalog.");return k={at:Date.now(),ref:t,tree:a.tree},{ref:t,tree:a.tree}}function C(){return(0,a.join)(u,".installed.yaml")}async function S(){try{return function(e){let t={},r=null;for(let a of e.split("\n"))if(!(!a.trim()||a.trimStart().startsWith("#"))){if(/^\S/.test(a)){let e=a.match(/^(\S[^:]*?):\s*$/);(r=e?e[1].trim():null)&&(t[r]={source:""})}else if(r){let e=a.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(e){let a=e[2].replace(/^["']|["']$/g,"").trim();"source"===e[1]?t[r].source=a:"commit"===e[1]&&(t[r].commit=a)}}}for(let e of Object.keys(t))t[e].source||delete t[e];return t}(await i.promises.readFile(C(),"utf-8"))}catch{return{}}}async function A(e){let t=C(),r=`${t}.${(0,n.randomUUID)()}.tmp`;await i.promises.mkdir(u,{recursive:!0}),await i.promises.writeFile(r,function(e){let t=Object.keys(e).sort();if(0===t.length)return"{}\n";let r="";for(let a of t)r+=`${a}:
|
|
2
2
|
`,e[a].commit&&(r+=` commit: ${e[a].commit}
|
|
3
3
|
`),r+=` source: ${e[a].source}
|
|
4
|
-
`;return r}(e),{mode:384}),await i.promises.rename(r,t)}async function
|
|
4
|
+
`;return r}(e),{mode:384}),await i.promises.rename(r,t)}async function j(e,t){let r=await S(),a=`${s}@${l}${e}`;r[e]=t?{source:a,commit:t}:{source:a},await A(r)}async function T(e){let t=await S();e in t&&(delete t[e],await A(t))}async function I(){let e=new Set;for(let t of c)try{for(let r of(await i.promises.readdir(t,{withFileTypes:!0})))r.isDirectory()&&!r.name.startsWith(".")&&e.add(r.name)}catch{}return e}async function N(e=!1){let[{ref:t,tree:r},a]=await Promise.all([b(e),I()]),i=function(e){let t=new Map;for(let r of e){if("blob"!==r.type||!r.path.startsWith(l))continue;let e=r.path.slice(l.length),a=e.indexOf("/");if(a<=0)continue;let i=e.slice(0,a);(t.get(i)??t.set(i,[]).get(i)).push(r)}return t}(r);return(await Promise.all([...i.entries()].map(async([e,r])=>{let i,n,s=e,o="",u=!0,c=r.find(t=>t.path===`${l}${e}/SKILL.md`);if(c)try{let r=await fetch(R(t,c.path),{headers:d}).then(e=>e.ok?e.text():""),a=v(r);s=a.name||e,o=a.description||"",n=a.version,u=m(r)}catch{}let h=a.has(e),f=h?await y(e):void 0,w=h&&!!n&&!!f&&function(e,t){let r=e.split(".").map(e=>parseInt(e,10)),a=t.split(".").map(e=>parseInt(e,10)),i=Math.max(r.length,a.length);for(let e=0;e<i;e+=1){let t=r[e]??0,i=a[e]??0;if(Number.isNaN(t)||Number.isNaN(i))break;if(t!==i)return t>i?1:-1}return 0}(n,f)>0;return{name:e,title:s,description:o,fileCount:r.length,installed:h,latestVersion:n,installedVersion:f,updateAvailable:w,isExpert:(i=`${l}${e}/${p}`,r.some(e=>e.path===i)),isSkill:u}}))).sort((e,t)=>e.title.localeCompare(t.title))}async function q(e){if(!w(e))throw Error("Invalid skill name.");let t=null,r=null,a=!1;for(let i of c){let n=await h(i,e,"SKILL.md");if(null!==n){t=n,a=!0,r=await h(i,e,p);break}}if(null===t){let{ref:a,tree:i}=await b(),n=async e=>{let t=await fetch(R(a,e),{headers:d});if(!t.ok)throw Error(`Failed to load skill (${t.status}).`);return t.text()},s=e=>i.some(t=>"blob"===t.type&&t.path===e),o=`${l}${e}/SKILL.md`;if(!s(o))throw Error(`Skill "${e}" was not found.`);t=await n(o);let u=`${l}${e}/${p}`;if(s(u))try{r=await n(u)}catch{}}let{frontmatter:i,body:n}=x(t),s=i?g(i):{},o=null!==i&&(null!=s.name||null!=s.description||null!=s.version);return{name:e,title:s.name||e,description:s.description||"",version:s.version,body:o?n:t.trim(),installed:a,expertBody:null===r?void 0:function(e){let{frontmatter:t,body:r}=x(e);return(null===t?e:r).trim()}(r)}}async function P(e){if(!w(e))throw Error("Invalid skill name.");let{ref:t,tree:r}=await b(),s=`${l}${e}/`,c=r.filter(e=>"blob"===e.type&&e.path.startsWith(s));if(0===c.length)throw Error(`Skill "${e}" was not found in the catalog.`);if(c.length>300)throw Error("This skill has too many files to install.");if(c.reduce((e,t)=>e+(t.size??0),0)>0x1900000)throw Error("This skill is too large to install.");let p=(0,a.resolve)(u),h=(0,a.resolve)(p,e);if(h!==(0,a.join)(p,e))throw Error("Invalid skill name.");let m=(0,a.join)(p,`.installing-${e}-${(0,n.randomUUID)()}`);try{for(let e of(await i.promises.mkdir(m,{recursive:!0}),c)){let r=e.path.slice(s.length),n=(0,a.resolve)(m,r);if(n!==m&&!n.startsWith(m+a.sep))throw Error("Invalid file path in skill.");let o=await fetch(R(t,e.path),{headers:d});if(!o.ok)throw Error(`Failed to download ${r} (${o.status}).`);let l=Buffer.from(await o.arrayBuffer());await i.promises.mkdir((0,a.dirname)(n),{recursive:!0}),await i.promises.writeFile(n,l)}await i.promises.rm(h,{recursive:!0,force:!0}),await i.promises.mkdir(p,{recursive:!0}),await i.promises.rename(m,h)}catch(e){throw await i.promises.rm(m,{recursive:!0,force:!0}).catch(()=>{}),e}try{await j(e,t!==o&&E.test(t)?t:null)}catch{}return{files:c.length}}e.s(["SKILL_DIRS",0,c,"declaresSkillType",0,m,"getCatalog",0,N,"getSkillDetail",0,q,"installSkill",0,P,"isInstalledExpert",0,f,"isValidSkillName",0,w,"recordUninstall",0,T])}];
|
|
5
5
|
|
|
6
6
|
//# sourceMappingURL=%5Broot-of-the-server%5D__0om1fsa._.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},713149,e=>{"use strict";var t=e.i(89171),r=e.i(904937);async function a(e){try{let a=e.nextUrl.searchParams.get("name");if(!a)return t.NextResponse.json({error:"Missing skill name."},{status:400});let i=await (0,r.getSkillDetail)(a);return t.NextResponse.json(i)}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to load skill detail."},{status:400})}}e.s(["GET",0,a,"runtime",0,"nodejs"])},562441,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),i=e.i(759756),n=e.i(561916),s=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),h=e.i(570101),m=e.i(626937),f=e.i(10372),w=e.i(193695);e.i(52474);var v=e.i(600220);let x=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/skills/detail/route",pathname:"/api/skills/detail",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/detail/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(713149),...{}}),{workAsyncStorage:g,workUnitAsyncStorage:y,serverHooks:R}=x;async function E(e,t,a){a.requestMeta&&(0,i.setRequestMeta)(e,a.requestMeta),x.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/skills/detail/route";g=g.replace(/\/index$/,"")||"/";let y=await x.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:R,deploymentId:E,params:k,nextConfig:b,parsedUrl:$,isDraftMode:S,prerenderManifest:C,routerServerContext:A,isOnDemandRevalidate:j,revalidateOnlyGenerated:T,resolvedPathname:N,clientReferenceManifest:I,serverActionsManifest:q}=y,P=(0,o.normalizeAppPath)(g),_=!!(C.dynamicRoutes[P]||C.routes[N]),O=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,$,!1):t.end("This page could not be found"),null);if(_&&!S){let e=!!C.routes[N],t=C.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(b.adapterPath)return await O();throw new w.NoFallbackError}}let D=null;!_||x.isDev||S||(D="/index"===(D=N)?"/":D);let U=!0===x.isDev||!_,H=_&&!U;q&&I&&(0,s.setManifestsSingleton)({page:g,clientReferenceManifest:I,serverActionsManifest:q});let M=e.method||"GET",F=(0,n.getTracer)(),L=F.getActiveScopeSpan(),K=!!(null==A?void 0:A.isWrappedByNextServer),W=!!(0,i.getRequestMeta)(e,"minimalMode"),B=(0,i.getRequestMeta)(e,"incrementalCache")||await x.getIncrementalCache(e,b,C,W);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let G={params:k,previewProps:C.preview,renderOpts:{experimental:{authInterrupts:!!b.experimental.authInterrupts,useCacheTimeout:b.experimental.useCacheTimeout},cacheComponents:!!b.cacheComponents,validationLevel:b.experimental.instantInsights.validationLevel,supportsDynamicResponse:U,incrementalCache:B,hmrRefreshHash:(0,i.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:b.cacheLife,staticPageGenerationTimeout:b.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,i)=>x.onRequestError(e,t,a,i,A)},sharedContext:{buildId:R,deploymentId:E}},z=new l.NodeNextRequest(e),V=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest(z,(0,u.signalFromNodeResponse)(t)),X=async({previousCacheEntry:r})=>{try{if(!W&&j&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await x.handle(Z,G);e.fetchMetrics=G.renderOpts.fetchMetrics;let n=G.renderOpts.pendingWaitUntil;n&&a.waitUntil&&(a.waitUntil(n),n=void 0);let s=G.renderOpts.collectedTags;if(!_)return await (0,p.sendResponse)(z,V,i,n),null;{let e=await i.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(i.headers);s&&(t[f.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=f.INFINITE_CACHE?!1!==r&&r>0?b.expireTime:void 0:G.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await x.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:j})},!1,A),t}},J=async(i,s)=>{try{var o,l;let i=await x.handleResponse({req:e,nextConfig:b,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:j,revalidateOnlyGenerated:T,responseGenerator:X,waitUntil:a.waitUntil,isMinimalMode:W});if(!_)return;if((null==i||null==(o=i.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==i||null==(l=i.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});W||t.setHeader("x-nextjs-cache",j?"REVALIDATED":i.isMiss?"MISS":i.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let n=(0,h.fromNodeOutgoingHttpHeaders)(i.value.headers);W&&_||n.delete(f.NEXT_CACHE_TAGS_HEADER),!i.cacheControl||t.getHeader("Cache-Control")||n.get("Cache-Control")||n.set("Cache-Control",(0,m.getCacheControlHeader)(i.cacheControl)),await (0,p.sendResponse)(z,V,new Response(i.value.body,{headers:n,status:i.value.status||200}));return}catch(t){if(t instanceof w.NoFallbackError||await x.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:j})},!1,A),_)throw t;await (0,p.sendResponse)(z,V,new Response(null,{status:500}));return}finally{(()=>{if(!i)return;let e=t.statusCode;i.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(i.setStatus({code:n.SpanStatusCode.ERROR}),i.setAttribute("error.type",e.toString()));let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||P,o=`${M} ${a}`;i.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),i.updateName(o),s&&s!==i&&(s.setAttribute("http.route",a),s.updateName(o))})()}};if(K&&L)await J(L,void 0);else{let t=F.getActiveScopeSpan();await F.withPropagatedContext(e.headers,()=>F.trace(c.BaseServerSpan.handleRequest,{spanName:`${M} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},e=>J(e,t)),void 0,!K)}}e.s(["handler",0,E,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:g,workUnitAsyncStorage:y})},"routeModule",0,x,"serverHooks",0,R,"workAsyncStorage",0,g,"workUnitAsyncStorage",0,y])},904937,e=>{"use strict";let t;var r=e.i(446786),a=e.i(814747),i=e.i(522734),n=e.i(254799);let s="EvoScientist/EvoSkills",o="main",l="skills/",u=(0,a.join)((t=process.env.EVOSCIENTIST_DATA_DIR)&&t.trim()?t.startsWith("~")?(0,a.join)((0,r.homedir)(),t.slice(1)):(0,a.resolve)(t):(0,a.join)((0,r.homedir)(),".evoscientist"),"skills"),c=[u,(0,a.join)((0,r.homedir)(),".config","evoscientist","skills")],d={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"};function p(e){return e.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)&&!e.includes("..")}function h(e){let t=e.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return t?{frontmatter:t[1],body:e.slice(t[0].length).trim()}:{frontmatter:null,body:e.trim()}}function m(e){let t=t=>{let r=e.match(RegExp(`^${t}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:t("name"),description:t("description"),version:function(e){let t=e.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!t)return;let r=t[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(e)}}function f(e){let{frontmatter:t}=h(e);return t?m(t):{}}async function w(e){for(let t of c)try{let r=await i.promises.readFile((0,a.join)(t,e,"SKILL.md"),"utf-8"),n=f(r).version;if(n)return n}catch{}}function v(e,t){return`https://raw.githubusercontent.com/${s}/${e}/${t}`}let x=/^[0-9a-f]{7,40}$/,g=null;async function y(){try{let e=await fetch(`https://api.github.com/repos/${s}/commits/${o}`,{headers:d});if(e.ok){let t=await e.json();if("string"==typeof t.sha&&x.test(t.sha))return t.sha}}catch{}return o}async function R(e=!1){if(!e&&g&&Date.now()-g.at<3e5)return{ref:g.ref,tree:g.tree};let t=await y(),r=await fetch(`https://api.github.com/repos/${s}/git/trees/${t}?recursive=1`,{headers:d});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let a=await r.json();if(!Array.isArray(a.tree))throw Error("Unexpected response from the skills catalog.");return g={at:Date.now(),ref:t,tree:a.tree},{ref:t,tree:a.tree}}function E(){return(0,a.join)(u,".installed.yaml")}async function k(){try{return function(e){let t={},r=null;for(let a of e.split("\n"))if(!(!a.trim()||a.trimStart().startsWith("#"))){if(/^\S/.test(a)){let e=a.match(/^(\S[^:]*?):\s*$/);(r=e?e[1].trim():null)&&(t[r]={source:""})}else if(r){let e=a.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(e){let a=e[2].replace(/^["']|["']$/g,"").trim();"source"===e[1]?t[r].source=a:"commit"===e[1]&&(t[r].commit=a)}}}for(let e of Object.keys(t))t[e].source||delete t[e];return t}(await i.promises.readFile(E(),"utf-8"))}catch{return{}}}async function b(e){let t=E(),r=`${t}.${(0,n.randomUUID)()}.tmp`;await i.promises.mkdir(u,{recursive:!0}),await i.promises.writeFile(r,function(e){let t=Object.keys(e).sort();if(0===t.length)return"{}\n";let r="";for(let a of t)r+=`${a}:
|
|
1
|
+
module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},713149,e=>{"use strict";var t=e.i(89171),r=e.i(904937);async function a(e){try{let a=e.nextUrl.searchParams.get("name");if(!a)return t.NextResponse.json({error:"Missing skill name."},{status:400});let i=await (0,r.getSkillDetail)(a);return t.NextResponse.json(i)}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to load skill detail."},{status:400})}}e.s(["GET",0,a,"runtime",0,"nodejs"])},562441,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),i=e.i(759756),n=e.i(561916),s=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),h=e.i(570101),m=e.i(626937),f=e.i(10372),w=e.i(193695);e.i(52474);var x=e.i(600220);let v=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/skills/detail/route",pathname:"/api/skills/detail",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/detail/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(713149),...{}}),{workAsyncStorage:g,workUnitAsyncStorage:y,serverHooks:R}=v;async function E(e,t,a){a.requestMeta&&(0,i.setRequestMeta)(e,a.requestMeta),v.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/skills/detail/route";g=g.replace(/\/index$/,"")||"/";let y=await v.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:R,deploymentId:E,params:k,nextConfig:$,parsedUrl:b,isDraftMode:S,prerenderManifest:C,routerServerContext:A,isOnDemandRevalidate:j,revalidateOnlyGenerated:T,resolvedPathname:I,clientReferenceManifest:N,serverActionsManifest:q}=y,P=(0,o.normalizeAppPath)(g),_=!!(C.dynamicRoutes[P]||C.routes[I]),O=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,b,!1):t.end("This page could not be found"),null);if(_&&!S){let e=!!C.routes[I],t=C.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if($.adapterPath)return await O();throw new w.NoFallbackError}}let D=null;!_||v.isDev||S||(D="/index"===(D=I)?"/":D);let U=!0===v.isDev||!_,H=_&&!U;q&&N&&(0,s.setManifestsSingleton)({page:g,clientReferenceManifest:N,serverActionsManifest:q});let M=e.method||"GET",F=(0,n.getTracer)(),L=F.getActiveScopeSpan(),K=!!(null==A?void 0:A.isWrappedByNextServer),B=!!(0,i.getRequestMeta)(e,"minimalMode"),W=(0,i.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,$,C,B);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let G={params:k,previewProps:C.preview,renderOpts:{experimental:{authInterrupts:!!$.experimental.authInterrupts,useCacheTimeout:$.experimental.useCacheTimeout},cacheComponents:!!$.cacheComponents,validationLevel:$.experimental.instantInsights.validationLevel,supportsDynamicResponse:U,incrementalCache:W,hmrRefreshHash:(0,i.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:$.cacheLife,staticPageGenerationTimeout:$.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,i)=>v.onRequestError(e,t,a,i,A)},sharedContext:{buildId:R,deploymentId:E}},z=new l.NodeNextRequest(e),V=new l.NodeNextResponse(t),X=u.NextRequestAdapter.fromNodeNextRequest(z,(0,u.signalFromNodeResponse)(t)),Z=async({previousCacheEntry:r})=>{try{if(!B&&j&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await v.handle(X,G);e.fetchMetrics=G.renderOpts.fetchMetrics;let n=G.renderOpts.pendingWaitUntil;n&&a.waitUntil&&(a.waitUntil(n),n=void 0);let s=G.renderOpts.collectedTags;if(!_)return await (0,p.sendResponse)(z,V,i,n),null;{let e=await i.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(i.headers);s&&(t[f.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=f.INFINITE_CACHE?!1!==r&&r>0?$.expireTime:void 0:G.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:j})},!1,A),t}},J=async(i,s)=>{try{var o,l;let i=await v.handleResponse({req:e,nextConfig:$,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:j,revalidateOnlyGenerated:T,responseGenerator:Z,waitUntil:a.waitUntil,isMinimalMode:B});if(!_)return;if((null==i||null==(o=i.value)?void 0:o.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==i||null==(l=i.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});B||t.setHeader("x-nextjs-cache",j?"REVALIDATED":i.isMiss?"MISS":i.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let n=(0,h.fromNodeOutgoingHttpHeaders)(i.value.headers);B&&_||n.delete(f.NEXT_CACHE_TAGS_HEADER),!i.cacheControl||t.getHeader("Cache-Control")||n.get("Cache-Control")||n.set("Cache-Control",(0,m.getCacheControlHeader)(i.cacheControl)),await (0,p.sendResponse)(z,V,new Response(i.value.body,{headers:n,status:i.value.status||200}));return}catch(t){if(t instanceof w.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:j})},!1,A),_)throw t;await (0,p.sendResponse)(z,V,new Response(null,{status:500}));return}finally{(()=>{if(!i)return;let e=t.statusCode;i.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(i.setStatus({code:n.SpanStatusCode.ERROR}),i.setAttribute("error.type",e.toString()));let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||P,o=`${M} ${a}`;i.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),i.updateName(o),s&&s!==i&&(s.setAttribute("http.route",a),s.updateName(o))})()}};if(K&&L)await J(L,void 0);else{let t=F.getActiveScopeSpan();await F.withPropagatedContext(e.headers,()=>F.trace(c.BaseServerSpan.handleRequest,{spanName:`${M} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},e=>J(e,t)),void 0,!K)}}e.s(["handler",0,E,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:g,workUnitAsyncStorage:y})},"routeModule",0,v,"serverHooks",0,R,"workAsyncStorage",0,g,"workUnitAsyncStorage",0,y])},904937,e=>{"use strict";let t;var r=e.i(446786),a=e.i(814747),i=e.i(522734),n=e.i(254799);let s="EvoScientist/EvoSkills",o="main",l="skills/",u=(0,a.join)((t=process.env.EVOSCIENTIST_DATA_DIR)&&t.trim()?t.startsWith("~")?(0,a.join)((0,r.homedir)(),t.slice(1)):(0,a.resolve)(t):(0,a.join)((0,r.homedir)(),".evoscientist"),"skills"),c=[u,(0,a.join)((0,r.homedir)(),".config","evoscientist","skills")],d={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"},p="EXPERT.md";async function h(e,t,r){try{let n=await i.promises.realpath((0,a.join)(e,t,r)),s=await i.promises.realpath(e);if(n!==s&&!n.startsWith(s+a.sep))return null;return await i.promises.readFile(n,"utf-8")}catch{return null}}function m(e){let t,{frontmatter:r}=x(e);if(!r)return!0;let a=r.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!a)return!0;let i=a[1],n=i.split("\n").find(e=>e.trim()),s=n?.match(/^[ \t]+/)?.[0]??" ",o=i.match(RegExp(`^${s}type\\s*:[ \\t]*(.*)$`,"m"));if(!o)return!0;let l=o[1].trim();if(""===l||"|"===l||">"===l)for(let e of(t=[],i.slice(i.indexOf(o[0])+o[0].length).split("\n"))){if(!e.trim())continue;let r=e.match(/^[ \t]+-[ \t]*(.+?)[ \t]*$/);if(!r||!e.startsWith(s))break;t.push(r[1])}else t=l.replace(/^\[|\]$/g,"").split(",");return t.map(e=>e.trim().replace(/^["']|["']$/g,"").toLowerCase()).filter(Boolean).includes("skill")}async function f(e){try{return(await i.promises.stat((0,a.join)(e,p))).isFile()}catch{return!1}}function w(e){return e.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)&&!e.includes("..")}function x(e){let t=e.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return t?{frontmatter:t[1],body:e.slice(t[0].length).trim()}:{frontmatter:null,body:e.trim()}}function v(e){let t=t=>{let r=e.match(RegExp(`^${t}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:t("name"),description:t("description"),version:function(e){let t=e.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!t)return;let r=t[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(e)}}function g(e){let{frontmatter:t}=x(e);return t?v(t):{}}async function y(e){for(let t of c)try{let r=await i.promises.readFile((0,a.join)(t,e,"SKILL.md"),"utf-8"),n=g(r).version;if(n)return n}catch{}}function R(e,t){return`https://raw.githubusercontent.com/${s}/${e}/${t}`}let E=/^[0-9a-f]{7,40}$/,k=null;async function $(){try{let e=await fetch(`https://api.github.com/repos/${s}/commits/${o}`,{headers:d});if(e.ok){let t=await e.json();if("string"==typeof t.sha&&E.test(t.sha))return t.sha}}catch{}return o}async function b(e=!1){if(!e&&k&&Date.now()-k.at<3e5)return{ref:k.ref,tree:k.tree};let t=await $(),r=await fetch(`https://api.github.com/repos/${s}/git/trees/${t}?recursive=1`,{headers:d});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let a=await r.json();if(!Array.isArray(a.tree))throw Error("Unexpected response from the skills catalog.");return k={at:Date.now(),ref:t,tree:a.tree},{ref:t,tree:a.tree}}function S(){return(0,a.join)(u,".installed.yaml")}async function C(){try{return function(e){let t={},r=null;for(let a of e.split("\n"))if(!(!a.trim()||a.trimStart().startsWith("#"))){if(/^\S/.test(a)){let e=a.match(/^(\S[^:]*?):\s*$/);(r=e?e[1].trim():null)&&(t[r]={source:""})}else if(r){let e=a.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(e){let a=e[2].replace(/^["']|["']$/g,"").trim();"source"===e[1]?t[r].source=a:"commit"===e[1]&&(t[r].commit=a)}}}for(let e of Object.keys(t))t[e].source||delete t[e];return t}(await i.promises.readFile(S(),"utf-8"))}catch{return{}}}async function A(e){let t=S(),r=`${t}.${(0,n.randomUUID)()}.tmp`;await i.promises.mkdir(u,{recursive:!0}),await i.promises.writeFile(r,function(e){let t=Object.keys(e).sort();if(0===t.length)return"{}\n";let r="";for(let a of t)r+=`${a}:
|
|
2
2
|
`,e[a].commit&&(r+=` commit: ${e[a].commit}
|
|
3
3
|
`),r+=` source: ${e[a].source}
|
|
4
|
-
`;return r}(e),{mode:384}),await i.promises.rename(r,t)}async function
|
|
4
|
+
`;return r}(e),{mode:384}),await i.promises.rename(r,t)}async function j(e,t){let r=await C(),a=`${s}@${l}${e}`;r[e]=t?{source:a,commit:t}:{source:a},await A(r)}async function T(e){let t=await C();e in t&&(delete t[e],await A(t))}async function I(){let e=new Set;for(let t of c)try{for(let r of(await i.promises.readdir(t,{withFileTypes:!0})))r.isDirectory()&&!r.name.startsWith(".")&&e.add(r.name)}catch{}return e}async function N(e=!1){let[{ref:t,tree:r},a]=await Promise.all([b(e),I()]),i=function(e){let t=new Map;for(let r of e){if("blob"!==r.type||!r.path.startsWith(l))continue;let e=r.path.slice(l.length),a=e.indexOf("/");if(a<=0)continue;let i=e.slice(0,a);(t.get(i)??t.set(i,[]).get(i)).push(r)}return t}(r);return(await Promise.all([...i.entries()].map(async([e,r])=>{let i,n,s=e,o="",u=!0,c=r.find(t=>t.path===`${l}${e}/SKILL.md`);if(c)try{let r=await fetch(R(t,c.path),{headers:d}).then(e=>e.ok?e.text():""),a=g(r);s=a.name||e,o=a.description||"",n=a.version,u=m(r)}catch{}let h=a.has(e),f=h?await y(e):void 0,w=h&&!!n&&!!f&&function(e,t){let r=e.split(".").map(e=>parseInt(e,10)),a=t.split(".").map(e=>parseInt(e,10)),i=Math.max(r.length,a.length);for(let e=0;e<i;e+=1){let t=r[e]??0,i=a[e]??0;if(Number.isNaN(t)||Number.isNaN(i))break;if(t!==i)return t>i?1:-1}return 0}(n,f)>0;return{name:e,title:s,description:o,fileCount:r.length,installed:h,latestVersion:n,installedVersion:f,updateAvailable:w,isExpert:(i=`${l}${e}/${p}`,r.some(e=>e.path===i)),isSkill:u}}))).sort((e,t)=>e.title.localeCompare(t.title))}async function q(e){if(!w(e))throw Error("Invalid skill name.");let t=null,r=null,a=!1;for(let i of c){let n=await h(i,e,"SKILL.md");if(null!==n){t=n,a=!0,r=await h(i,e,p);break}}if(null===t){let{ref:a,tree:i}=await b(),n=async e=>{let t=await fetch(R(a,e),{headers:d});if(!t.ok)throw Error(`Failed to load skill (${t.status}).`);return t.text()},s=e=>i.some(t=>"blob"===t.type&&t.path===e),o=`${l}${e}/SKILL.md`;if(!s(o))throw Error(`Skill "${e}" was not found.`);t=await n(o);let u=`${l}${e}/${p}`;if(s(u))try{r=await n(u)}catch{}}let{frontmatter:i,body:n}=x(t),s=i?v(i):{},o=null!==i&&(null!=s.name||null!=s.description||null!=s.version);return{name:e,title:s.name||e,description:s.description||"",version:s.version,body:o?n:t.trim(),installed:a,expertBody:null===r?void 0:function(e){let{frontmatter:t,body:r}=x(e);return(null===t?e:r).trim()}(r)}}async function P(e){if(!w(e))throw Error("Invalid skill name.");let{ref:t,tree:r}=await b(),s=`${l}${e}/`,c=r.filter(e=>"blob"===e.type&&e.path.startsWith(s));if(0===c.length)throw Error(`Skill "${e}" was not found in the catalog.`);if(c.length>300)throw Error("This skill has too many files to install.");if(c.reduce((e,t)=>e+(t.size??0),0)>0x1900000)throw Error("This skill is too large to install.");let p=(0,a.resolve)(u),h=(0,a.resolve)(p,e);if(h!==(0,a.join)(p,e))throw Error("Invalid skill name.");let m=(0,a.join)(p,`.installing-${e}-${(0,n.randomUUID)()}`);try{for(let e of(await i.promises.mkdir(m,{recursive:!0}),c)){let r=e.path.slice(s.length),n=(0,a.resolve)(m,r);if(n!==m&&!n.startsWith(m+a.sep))throw Error("Invalid file path in skill.");let o=await fetch(R(t,e.path),{headers:d});if(!o.ok)throw Error(`Failed to download ${r} (${o.status}).`);let l=Buffer.from(await o.arrayBuffer());await i.promises.mkdir((0,a.dirname)(n),{recursive:!0}),await i.promises.writeFile(n,l)}await i.promises.rm(h,{recursive:!0,force:!0}),await i.promises.mkdir(p,{recursive:!0}),await i.promises.rename(m,h)}catch(e){throw await i.promises.rm(m,{recursive:!0,force:!0}).catch(()=>{}),e}try{await j(e,t!==o&&E.test(t)?t:null)}catch{}return{files:c.length}}e.s(["SKILL_DIRS",0,c,"declaresSkillType",0,m,"getCatalog",0,N,"getSkillDetail",0,q,"installSkill",0,P,"isInstalledExpert",0,f,"isValidSkillName",0,w,"recordUninstall",0,T])}];
|
|
5
5
|
|
|
6
6
|
//# sourceMappingURL=%5Broot-of-the-server%5D__19l67fj._.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
module.exports=[254799,(e,
|
|
2
|
-
`,
|
|
3
|
-
`),r+=` source: ${
|
|
4
|
-
`;return r}(
|
|
1
|
+
module.exports=[254799,(t,e,r)=>{e.exports=t.x("crypto",()=>require("crypto"))},522734,(t,e,r)=>{e.exports=t.x("fs",()=>require("fs"))},270406,(t,e,r)=>{e.exports=t.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(t,e,r)=>{e.exports=t.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(t,e,r)=>{e.exports=t.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(t,e,r)=>{e.exports=t.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(t,e,r)=>{e.exports=t.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(t,e,r)=>{e.exports=t.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(t,e,r)=>{e.exports=t.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(t,e,r)=>{e.exports=t.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(t,e,r)=>{e.exports=t.x("node:stream",()=>require("node:stream"))},446786,(t,e,r)=>{e.exports=t.x("os",()=>require("os"))},814747,(t,e,r)=>{e.exports=t.x("path",()=>require("path"))},904937,t=>{"use strict";let e;var r=t.i(446786),i=t.i(814747),a=t.i(522734),s=t.i(254799);let n="EvoScientist/EvoSkills",o="main",l="skills/",c=(0,i.join)((e=process.env.EVOSCIENTIST_DATA_DIR)&&e.trim()?e.startsWith("~")?(0,i.join)((0,r.homedir)(),e.slice(1)):(0,i.resolve)(e):(0,i.join)((0,r.homedir)(),".evoscientist"),"skills"),u=[c,(0,i.join)((0,r.homedir)(),".config","evoscientist","skills")],p={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"},m="EXPERT.md";async function f(t,e,r){try{let s=await a.promises.realpath((0,i.join)(t,e,r)),n=await a.promises.realpath(t);if(s!==n&&!s.startsWith(n+i.sep))return null;return await a.promises.readFile(s,"utf-8")}catch{return null}}function d(t){let e,{frontmatter:r}=x(t);if(!r)return!0;let i=r.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!i)return!0;let a=i[1],s=a.split("\n").find(t=>t.trim()),n=s?.match(/^[ \t]+/)?.[0]??" ",o=a.match(RegExp(`^${n}type\\s*:[ \\t]*(.*)$`,"m"));if(!o)return!0;let l=o[1].trim();if(""===l||"|"===l||">"===l)for(let t of(e=[],a.slice(a.indexOf(o[0])+o[0].length).split("\n"))){if(!t.trim())continue;let r=t.match(/^[ \t]+-[ \t]*(.+?)[ \t]*$/);if(!r||!t.startsWith(n))break;e.push(r[1])}else e=l.replace(/^\[|\]$/g,"").split(",");return e.map(t=>t.trim().replace(/^["']|["']$/g,"").toLowerCase()).filter(Boolean).includes("skill")}async function h(t){try{return(await a.promises.stat((0,i.join)(t,m))).isFile()}catch{return!1}}function w(t){return t.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(t)&&!t.includes("..")}function x(t){let e=t.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return e?{frontmatter:e[1],body:t.slice(e[0].length).trim()}:{frontmatter:null,body:t.trim()}}function y(t){let e=e=>{let r=t.match(RegExp(`^${e}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:e("name"),description:e("description"),version:function(t){let e=t.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!e)return;let r=e[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(t)}}function $(t){let{frontmatter:e}=x(t);return e?y(e):{}}async function g(t){for(let e of u)try{let r=await a.promises.readFile((0,i.join)(e,t,"SKILL.md"),"utf-8"),s=$(r).version;if(s)return s}catch{}}function v(t,e){return`https://raw.githubusercontent.com/${n}/${t}/${e}`}let k=/^[0-9a-f]{7,40}$/,b=null;async function j(){try{let t=await fetch(`https://api.github.com/repos/${n}/commits/${o}`,{headers:p});if(t.ok){let e=await t.json();if("string"==typeof e.sha&&k.test(e.sha))return e.sha}}catch{}return o}async function E(t=!1){if(!t&&b&&Date.now()-b.at<3e5)return{ref:b.ref,tree:b.tree};let e=await j(),r=await fetch(`https://api.github.com/repos/${n}/git/trees/${e}?recursive=1`,{headers:p});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let i=await r.json();if(!Array.isArray(i.tree))throw Error("Unexpected response from the skills catalog.");return b={at:Date.now(),ref:e,tree:i.tree},{ref:e,tree:i.tree}}function S(){return(0,i.join)(c,".installed.yaml")}async function I(){try{return function(t){let e={},r=null;for(let i of t.split("\n"))if(!(!i.trim()||i.trimStart().startsWith("#"))){if(/^\S/.test(i)){let t=i.match(/^(\S[^:]*?):\s*$/);(r=t?t[1].trim():null)&&(e[r]={source:""})}else if(r){let t=i.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(t){let i=t[2].replace(/^["']|["']$/g,"").trim();"source"===t[1]?e[r].source=i:"commit"===t[1]&&(e[r].commit=i)}}}for(let t of Object.keys(e))e[t].source||delete e[t];return e}(await a.promises.readFile(S(),"utf-8"))}catch{return{}}}async function q(t){let e=S(),r=`${e}.${(0,s.randomUUID)()}.tmp`;await a.promises.mkdir(c,{recursive:!0}),await a.promises.writeFile(r,function(t){let e=Object.keys(t).sort();if(0===e.length)return"{}\n";let r="";for(let i of e)r+=`${i}:
|
|
2
|
+
`,t[i].commit&&(r+=` commit: ${t[i].commit}
|
|
3
|
+
`),r+=` source: ${t[i].source}
|
|
4
|
+
`;return r}(t),{mode:384}),await a.promises.rename(r,e)}async function L(t,e){let r=await I(),i=`${n}@${l}${t}`;r[t]=e?{source:i,commit:e}:{source:i},await q(r)}async function A(t){let e=await I();t in e&&(delete e[t],await q(e))}async function D(){let t=new Set;for(let e of u)try{for(let r of(await a.promises.readdir(e,{withFileTypes:!0})))r.isDirectory()&&!r.name.startsWith(".")&&t.add(r.name)}catch{}return t}async function F(t=!1){let[{ref:e,tree:r},i]=await Promise.all([E(t),D()]),a=function(t){let e=new Map;for(let r of t){if("blob"!==r.type||!r.path.startsWith(l))continue;let t=r.path.slice(l.length),i=t.indexOf("/");if(i<=0)continue;let a=t.slice(0,i);(e.get(a)??e.set(a,[]).get(a)).push(r)}return e}(r);return(await Promise.all([...a.entries()].map(async([t,r])=>{let a,s,n=t,o="",c=!0,u=r.find(e=>e.path===`${l}${t}/SKILL.md`);if(u)try{let r=await fetch(v(e,u.path),{headers:p}).then(t=>t.ok?t.text():""),i=$(r);n=i.name||t,o=i.description||"",s=i.version,c=d(r)}catch{}let f=i.has(t),h=f?await g(t):void 0,w=f&&!!s&&!!h&&function(t,e){let r=t.split(".").map(t=>parseInt(t,10)),i=e.split(".").map(t=>parseInt(t,10)),a=Math.max(r.length,i.length);for(let t=0;t<a;t+=1){let e=r[t]??0,a=i[t]??0;if(Number.isNaN(e)||Number.isNaN(a))break;if(e!==a)return e>a?1:-1}return 0}(s,h)>0;return{name:t,title:n,description:o,fileCount:r.length,installed:f,latestVersion:s,installedVersion:h,updateAvailable:w,isExpert:(a=`${l}${t}/${m}`,r.some(t=>t.path===a)),isSkill:c}}))).sort((t,e)=>t.title.localeCompare(e.title))}async function N(t){if(!w(t))throw Error("Invalid skill name.");let e=null,r=null,i=!1;for(let a of u){let s=await f(a,t,"SKILL.md");if(null!==s){e=s,i=!0,r=await f(a,t,m);break}}if(null===e){let{ref:i,tree:a}=await E(),s=async t=>{let e=await fetch(v(i,t),{headers:p});if(!e.ok)throw Error(`Failed to load skill (${e.status}).`);return e.text()},n=t=>a.some(e=>"blob"===e.type&&e.path===t),o=`${l}${t}/SKILL.md`;if(!n(o))throw Error(`Skill "${t}" was not found.`);e=await s(o);let c=`${l}${t}/${m}`;if(n(c))try{r=await s(c)}catch{}}let{frontmatter:a,body:s}=x(e),n=a?y(a):{},o=null!==a&&(null!=n.name||null!=n.description||null!=n.version);return{name:t,title:n.name||t,description:n.description||"",version:n.version,body:o?s:e.trim(),installed:i,expertBody:null===r?void 0:function(t){let{frontmatter:e,body:r}=x(t);return(null===e?t:r).trim()}(r)}}async function T(t){if(!w(t))throw Error("Invalid skill name.");let{ref:e,tree:r}=await E(),n=`${l}${t}/`,u=r.filter(t=>"blob"===t.type&&t.path.startsWith(n));if(0===u.length)throw Error(`Skill "${t}" was not found in the catalog.`);if(u.length>300)throw Error("This skill has too many files to install.");if(u.reduce((t,e)=>t+(e.size??0),0)>0x1900000)throw Error("This skill is too large to install.");let m=(0,i.resolve)(c),f=(0,i.resolve)(m,t);if(f!==(0,i.join)(m,t))throw Error("Invalid skill name.");let d=(0,i.join)(m,`.installing-${t}-${(0,s.randomUUID)()}`);try{for(let t of(await a.promises.mkdir(d,{recursive:!0}),u)){let r=t.path.slice(n.length),s=(0,i.resolve)(d,r);if(s!==d&&!s.startsWith(d+i.sep))throw Error("Invalid file path in skill.");let o=await fetch(v(e,t.path),{headers:p});if(!o.ok)throw Error(`Failed to download ${r} (${o.status}).`);let l=Buffer.from(await o.arrayBuffer());await a.promises.mkdir((0,i.dirname)(s),{recursive:!0}),await a.promises.writeFile(s,l)}await a.promises.rm(f,{recursive:!0,force:!0}),await a.promises.mkdir(m,{recursive:!0}),await a.promises.rename(d,f)}catch(t){throw await a.promises.rm(d,{recursive:!0,force:!0}).catch(()=>{}),t}try{await L(t,e!==o&&k.test(e)?e:null)}catch{}return{files:u.length}}t.s(["SKILL_DIRS",0,u,"declaresSkillType",0,d,"getCatalog",0,F,"getSkillDetail",0,N,"installSkill",0,T,"isInstalledExpert",0,h,"isValidSkillName",0,w,"recordUninstall",0,A])}];
|
|
5
5
|
|
|
6
6
|
//# sourceMappingURL=%5Broot-of-the-server%5D__1nb3ezt._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[856042,e=>{"use strict";var t=e.i(89171),a=e.i(814747),r=e.i(522734),n=e.i(904937);async function i(){let e=[],t=new Set;for(let i of n.SKILL_DIRS){let
|
|
1
|
+
module.exports=[856042,e=>{"use strict";var t=e.i(89171),a=e.i(814747),r=e.i(522734),n=e.i(904937);async function i(){let e=[],t=new Set;for(let i of n.SKILL_DIRS){let s,o=[];try{o=await r.promises.readdir(i),s=await r.promises.realpath(i)}catch{continue}for(let l of o){if(l.startsWith("."))continue;let o=(0,a.join)(i,l);try{let i=await r.promises.realpath(o);if(i!==s&&!i.startsWith(s+a.sep)||!(await r.promises.stat(i)).isDirectory())continue;let u=await r.promises.readFile((0,a.join)(i,"SKILL.md"),"utf-8"),{name:d,description:c}=function(e){let t=e.match(/^---\s*\n([\s\S]*?)\n---/);if(!t)return{};let a=t[1],r=e=>{let t=a.match(RegExp(`^${e}\\s*:\\s*(.+?)\\s*$`,"m"));if(t)return t[1].replace(/^["']|["']$/g,"").trim()};return{name:r("name"),description:r("description")}}(u);if(t.has(l))continue;t.add(l),e.push({name:l,title:d||l,description:c||"",dir:o,isExpert:await (0,n.isInstalledExpert)(i),isSkill:(0,n.declaresSkillType)(u)})}catch{}}}return e.sort((e,t)=>e.name.localeCompare(t.name))}async function s(){try{let e=await i();return t.NextResponse.json({skills:e})}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to read skills"},{status:500})}}async function o(e){let i=e.nextUrl.searchParams.get("name");if(!i||!(0,n.isValidSkillName)(i))return t.NextResponse.json({error:"Invalid skill name"},{status:400});for(let e of n.SKILL_DIRS){let s=(0,a.resolve)((0,a.join)(e,i));if(s===(0,a.resolve)(e)||s.startsWith((0,a.resolve)(e)+a.sep)){try{if(!(await r.promises.stat(s)).isDirectory())continue}catch{continue}return await r.promises.rm(s,{recursive:!0,force:!0}),await (0,n.recordUninstall)(i).catch(()=>{}),t.NextResponse.json({ok:!0})}}return t.NextResponse.json({error:"Skill not found"},{status:404})}e.s(["DELETE",0,o,"GET",0,s])},987542,e=>{"use strict";var t=e.i(747909),a=e.i(174017),r=e.i(996250),n=e.i(759756),i=e.i(561916),s=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),h=e.i(570101),R=e.i(626937),m=e.i(10372),f=e.i(193695);e.i(52474);var v=e.i(600220);let w=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/skills/route",pathname:"/api/skills",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(856042),...{}}),{workAsyncStorage:E,workUnitAsyncStorage:g,serverHooks:x}=w;async function C(e,t,r){r.requestMeta&&(0,n.setRequestMeta)(e,r.requestMeta),w.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let E="/api/skills/route";E=E.replace(/\/index$/,"")||"/";let g=await w.prepare(e,t,{srcPage:E,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:x,deploymentId:C,params:y,nextConfig:S,parsedUrl:T,isDraftMode:A,prerenderManifest:N,routerServerContext:P,isOnDemandRevalidate:b,revalidateOnlyGenerated:k,resolvedPathname:I,clientReferenceManifest:_,serverActionsManifest:O}=g,q=(0,o.normalizeAppPath)(E),H=!!(N.dynamicRoutes[q]||N.routes[I]),D=async()=>((null==P?void 0:P.render404)?await P.render404(e,t,T,!1):t.end("This page could not be found"),null);if(H&&!A){let e=!!N.routes[I],t=N.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(S.adapterPath)return await D();throw new f.NoFallbackError}}let U=null;!H||w.isDev||A||(U="/index"===(U=I)?"/":U);let M=!0===w.isDev||!H,j=H&&!M;O&&_&&(0,s.setManifestsSingleton)({page:E,clientReferenceManifest:_,serverActionsManifest:O});let L=e.method||"GET",K=(0,i.getTracer)(),F=K.getActiveScopeSpan(),$=!!(null==P?void 0:P.isWrappedByNextServer),B=!!(0,n.getRequestMeta)(e,"minimalMode"),G=(0,n.getRequestMeta)(e,"incrementalCache")||await w.getIncrementalCache(e,S,N,B);null==G||G.resetRequestCache(),globalThis.__incrementalCache=G;let W={params:y,previewProps:N.preview,renderOpts:{experimental:{authInterrupts:!!S.experimental.authInterrupts,useCacheTimeout:S.experimental.useCacheTimeout},cacheComponents:!!S.cacheComponents,validationLevel:S.experimental.instantInsights.validationLevel,supportsDynamicResponse:M,incrementalCache:G,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:S.cacheLife,staticPageGenerationTimeout:S.staticPageGenerationTimeout,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>w.onRequestError(e,t,r,n,P)},sharedContext:{buildId:x,deploymentId:C}},V=new l.NodeNextRequest(e),X=new l.NodeNextResponse(t),z=u.NextRequestAdapter.fromNodeNextRequest(V,(0,u.signalFromNodeResponse)(t)),Z=async({previousCacheEntry:a})=>{try{if(!B&&b&&k&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await w.handle(z,W);e.fetchMetrics=W.renderOpts.fetchMetrics;let i=W.renderOpts.pendingWaitUntil;i&&r.waitUntil&&(r.waitUntil(i),i=void 0);let s=W.renderOpts.collectedTags;if(!H)return await (0,p.sendResponse)(V,X,n,i),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);s&&(t[m.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,r=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=m.INFINITE_CACHE?!1!==a&&a>0?S.expireTime:void 0:W.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==a?void 0:a.isStale)&&await w.onRequestError(e,t,{routerKind:"App Router",routePath:E,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:b})},!1,P),t}},J=async(n,s)=>{try{var o,l;let n=await w.handleResponse({req:e,nextConfig:S,cacheKey:U,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:N,isRoutePPREnabled:!1,isOnDemandRevalidate:b,revalidateOnlyGenerated:k,responseGenerator:Z,waitUntil:r.waitUntil,isMinimalMode:B});if(!H)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});B||t.setHeader("x-nextjs-cache",b?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,h.fromNodeOutgoingHttpHeaders)(n.value.headers);B&&H||i.delete(m.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,R.getCacheControlHeader)(n.cacheControl)),await (0,p.sendResponse)(V,X,new Response(n.value.body,{headers:i,status:n.value.status||200}));return}catch(t){if(t instanceof f.NoFallbackError||await w.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:b})},!1,P),H)throw t;await (0,p.sendResponse)(V,X,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:i.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let a=K.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=a.get("next.route")||q,o=`${L} ${r}`;n.setAttributes({"next.route":r,"http.route":r,"next.span_name":o}),n.updateName(o),s&&s!==n&&(s.setAttribute("http.route",r),s.updateName(o))})()}};if($&&F)await J(F,void 0);else{let t=K.getActiveScopeSpan();await K.withPropagatedContext(e.headers,()=>K.trace(d.BaseServerSpan.handleRequest,{spanName:`${L} ${E}`,kind:i.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},e=>J(e,t)),void 0,!$)}}e.s(["handler",0,C,"patchFetch",0,function(){return(0,r.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:g})},"routeModule",0,w,"serverHooks",0,x,"workAsyncStorage",0,E,"workUnitAsyncStorage",0,g])}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_13lro7d._.js.map
|