omniroute 3.0.7 → 3.0.8
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/app/.next/BUILD_ID +1 -1
- package/app/.next/build-manifest.json +2 -2
- package/app/.next/prerender-manifest.json +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/a2a/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/agents/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/auto-combo/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/mcp/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/search-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/400/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/401/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/403/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/408/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/429/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/500/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/502/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/503/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error.html +2 -2
- package/app/.next/server/app/_global-error.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/maintenance/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/offline/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__051203a6._.js +2 -2
- package/app/.next/server/chunks/[root-of-the-server]__0891af92._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__1f2b0d89._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__46e00e59._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__6e52619e._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__70a3877b._.js +5 -5
- package/app/.next/server/chunks/[root-of-the-server]__7ace0fcd._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__7fa4d14e._.js +1 -1
- package/app/.next/server/chunks/[root-of-the-server]__b013abab._.js +6 -6
- package/app/.next/server/chunks/_05c48915._.js +1 -1
- package/app/.next/server/chunks/_06515a8a._.js +1 -1
- package/app/.next/server/chunks/_2115d8de._.js +1 -1
- package/app/.next/server/chunks/_3ac953eb._.js +1 -1
- package/app/.next/server/chunks/_4b8fd853._.js +1 -1
- package/app/.next/server/chunks/_68683848._.js +1 -1
- package/app/.next/server/chunks/_ee9b677b._.js +1 -1
- package/app/.next/server/chunks/_efd5ede2._.js +1 -1
- package/app/.next/server/chunks/open-sse_translator_index_ts_f5fd0821._.js +1 -1
- package/app/.next/server/chunks/ssr/[root-of-the-server]__9ef96d20._.js +1 -1
- package/app/.next/server/chunks/ssr/[root-of-the-server]__a6942102._.js +1 -1
- package/app/.next/server/pages/500.html +2 -2
- package/app/.next/server/server-reference-manifest.js +1 -1
- package/app/.next/server/server-reference-manifest.json +1 -1
- package/app/.next/static/chunks/{84065c05df1a3a1a.js → 6d9bfb06374cbab3.js} +1 -1
- package/app/CHANGELOG.md +13 -0
- package/app/docs/openapi.yaml +1 -1
- package/app/open-sse/handlers/responseSanitizer.ts +58 -0
- package/app/open-sse/translator/response/openai-to-claude.ts +12 -1
- package/app/open-sse/utils/usageTracking.ts +44 -5
- package/app/package-lock.json +20 -20
- package/app/package.json +1 -1
- package/app/src/lib/db/combos.ts +5 -5
- package/app/src/lib/db/models.ts +9 -9
- package/package.json +1 -1
- /package/app/.next/static/{kmbT_1tKg7aSbEcFkhAUg → VtLeHcThjUtEgx1Z2skPg}/_buildManifest.js +0 -0
- /package/app/.next/static/{kmbT_1tKg7aSbEcFkhAUg → VtLeHcThjUtEgx1Z2skPg}/_clientMiddlewareManifest.json +0 -0
- /package/app/.next/static/{kmbT_1tKg7aSbEcFkhAUg → VtLeHcThjUtEgx1Z2skPg}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
module.exports=[446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},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"))},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"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var n=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,i={},l={RequestCookies:()=>h,ResponseCookies:()=>g,parseCookie:()=>c,parseSetCookie:()=>p,stringifyCookie:()=>d};for(var u in l)n(i,u,{get:l[u],enumerable:!0});function d(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),n=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?n:`${n}; ${r.join("; ")}`}function c(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[n,a]=[r.slice(0,e),r.slice(e+1)];try{t.set(n,decodeURIComponent(null!=a?a:"true"))}catch{}}return t}function p(e){if(!e)return;let[[t,r],...n]=c(e),{domain:a,expires:o,httponly:s,maxage:i,path:l,samesite:u,secure:d,partitioned:p,priority:h}=Object.fromEntries(n.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,y,x={name:t,value:decodeURIComponent(r),domain:a,...o&&{expires:new Date(o)},...s&&{httpOnly:!0},..."string"==typeof i&&{maxAge:Number(i)},path:l,...u&&{sameSite:m.includes(g=(g=u).toLowerCase())?g:void 0},...d&&{secure:!0},...h&&{priority:f.includes(y=(y=h).toLowerCase())?y:void 0},...p&&{partitioned:!0}};let e={};for(let t in x)x[t]&&(e[t]=x[t]);return e}}t.exports=((e,t,r,i)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of o(t))s.call(e,r)||void 0===r||n(e,r,{get:()=>t[r],enumerable:!(i=a(t,r))||i.enumerable});return e})(n({},"__esModule",{value:!0}),i);var m=["strict","lax","none"],f=["low","medium","high"],h=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of c(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===n).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,n=this._parsed;return n.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(n).map(([e,t])=>d(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>d(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,r,n;this._parsed=new Map,this._headers=e;const a=null!=(n=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?n:[];for(const e of Array.isArray(a)?a:function(e){if(!e)return[];var t,r,n,a,o,s=[],i=0;function l(){for(;i<e.length&&/\s/.test(e.charAt(i));)i+=1;return i<e.length}for(;i<e.length;){for(t=i,o=!1;l();)if(","===(r=e.charAt(i))){for(n=i,i+=1,l(),a=i;i<e.length&&"="!==(r=e.charAt(i))&&";"!==r&&","!==r;)i+=1;i<e.length&&"="===e.charAt(i)?(o=!0,i=a,s.push(e.substring(t,n)),t=i):i=n+1}else i+=1;(!o||i>=e.length)&&s.push(e.substring(t,e.length))}return s}(a)){const t=p(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===n)}has(e){return this._parsed.has(e)}set(...e){let[t,r,n]=1===e.length?[e[0].name,e[0].value,e[0]]:e,a=this._parsed;return a.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...n})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=d(r);t.append("set-cookie",e)}}(a,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(d).join("; ")}}},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},266240,e=>{"use strict";let t,r,n,a,o,s;var i=e.i(924868),l=e.i(522734),u=e.i(446786),d=e.i(814747),c=e.i(233405);let p=new Set(["auto","host","container"]),m=new Set(["0","false","no","off"]),f={claude:{defaultCommand:"claude",envBinKey:"CLI_CLAUDE_BIN",requiresBinary:!0,healthcheckTimeoutMs:4e3,paths:{settings:".claude/settings.json"}},codex:{defaultCommand:"codex",envBinKey:"CLI_CODEX_BIN",requiresBinary:!0,healthcheckTimeoutMs:4e3,paths:{config:".codex/config.toml",auth:".codex/auth.json"}},droid:{defaultCommand:"droid",envBinKey:"CLI_DROID_BIN",requiresBinary:!0,healthcheckTimeoutMs:8e3,paths:{settings:".factory/settings.json"}},openclaw:{defaultCommand:"openclaw",envBinKey:"CLI_OPENCLAW_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{settings:".openclaw/openclaw.json"}},cursor:{defaultCommands:["agent","cursor"],envBinKey:"CLI_CURSOR_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{config:".cursor/cli-config.json",auth:".config/cursor/auth.json",state:".cursor/agent-cli-state.json"}},cline:{defaultCommand:"cline",envBinKey:"CLI_CLINE_BIN",requiresBinary:!0,healthcheckTimeoutMs:12e3,paths:{globalState:".cline/data/globalState.json",secrets:".cline/data/secrets.json"}},kilo:{defaultCommand:"kilocode",envBinKey:"CLI_KILO_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{auth:".local/share/kilo/auth.json"}},continue:{defaultCommand:null,envBinKey:"CLI_CONTINUE_BIN",requiresBinary:!1,healthcheckTimeoutMs:15e3,paths:{settings:".continue/config.json"}},opencode:{defaultCommand:"opencode",envBinKey:"CLI_OPENCODE_BIN",requiresBinary:!0,healthcheckTimeoutMs:15e3,paths:{config:".config/opencode/opencode.json"}}},h=(e,t,{env:r,timeoutMs:n=3e3}={})=>new Promise(a=>{let o="",s="",i=!1,l=!1,u=(0,c.spawn)(e,t,{env:r,stdio:["ignore","pipe","pipe"],..."win32"===process.platform?"TURBOPACK unreachable":{}}),d=setTimeout(()=>{i=!0,u.kill("SIGKILL")},n),p=e=>{l||(l=!0,clearTimeout(d),a(e))};u.stdout.on("data",e=>{o+=e.toString()}),u.stderr.on("data",e=>{s+=e.toString()}),u.on("error",e=>{p({ok:!1,code:null,stdout:o.trim(),stderr:s.trim(),timedOut:i,error:e?.message||"spawn_error"})}),u.on("close",e=>{p({ok:!i&&0===e,code:e,stdout:o.trim(),stderr:s.trim(),timedOut:i,error:i?"timeout":null})})}),g=["&","|",";","<",">","(",")","`","$","^","%","!"],y=(e,t)=>{let r=e=>d.default.normalize(e).toLowerCase().replace(/\\/g,"/"),n=r(e),a=r(t);if(n===a)return!0;let o=a.endsWith("/")?a:a+"/";return n.startsWith(o)},x=e=>!(!e||!d.default.isAbsolute(e)||g.some(t=>e.includes(t))),v=(e,t)=>{if(!e)return"";let r=e.trim();if(!d.default.isAbsolute(r)||g.some(e=>r.includes(e)))return"";let n=d.default.normalize(r);return n.includes("..")||t.length>0&&!t.some(e=>y(n,e))?"":n},C=()=>{if(void 0!==t)return t;let e=String(process.env.npm_config_prefix||"").trim();if(e&&d.default.isAbsolute(e))return t=e;try{let e=(0,c.execFileSync)("npm",["config","get","prefix"],{timeout:5e3,encoding:"utf8",stdio:["ignore","pipe","ignore"],..."win32"===process.platform?"TURBOPACK unreachable":{}}).trim();if(e&&d.default.isAbsolute(e)&&!g.some(t=>e.includes(t)))return t=e}catch{}return t=""},_=(r=u.default.homedir(),n=process.env.USERPROFILE||r,a=v(process.env.APPDATA,[r,n]),o=v(process.env.LOCALAPPDATA,[d.default.join(r,"AppData","Local"),d.default.join(n,"AppData","Local"),n]),s=v(process.env.ProgramFiles,["C:\\Program Files","C:\\Program Files (x86)"]),[r,n,a,o,s,v(process.env["ProgramFiles(x86)"],["C:\\Program Files","C:\\Program Files (x86)"]),C()].filter(Boolean)),b=async e=>{if(!x(e))return{installed:!1,commandPath:null,reason:"unsafe_path"};try{await i.default.access(e,i.default.constants.F_OK)}catch{return{installed:!1,commandPath:null,reason:"not_found"}}try{return await i.default.access(e,i.default.constants.X_OK),{installed:!0,commandPath:e,reason:null}}catch{return{installed:!0,commandPath:e,reason:"not_executable"}}},P=async(e,t)=>{if(!e)return{installed:!1,commandPath:null,reason:"missing_command"};if(e.includes("/")||e.includes("\\"))return b(e);process.platform;let r=await h("sh",["-c",'command -v -- "$1"',"sh",e],{env:t,timeoutMs:3e3});if(!r.ok||!r.stdout)return{installed:!1,commandPath:null,reason:"not_found"};let n=r.stdout.split(/\r?\n/).map(e=>(e=>{if(!e||"win32"!==process.platform)return e})(e.trim())).find(Boolean)||null;return{installed:!!n,commandPath:n,reason:n?null:"not_found"}},w=async e=>{if(!d.default.isAbsolute(e))return{installed:!1,commandPath:null,reason:"not_absolute"};if(!x(e))return{installed:!1,commandPath:null,reason:"unsafe_path"};try{let t=await i.default.realpath(e);if(!_.some(e=>y(t,e)))return{installed:!1,commandPath:null,reason:"symlink_escape"};let r=await i.default.stat(t);if(!r.isFile())return{installed:!1,commandPath:null,reason:"not_file"};if(r.size<30||r.size>0x6400000)return{installed:!1,commandPath:null,reason:"suspicious_size"}}catch(t){let e=t.code;if("ENOENT"===e)return{installed:!1,commandPath:null,reason:"not_found"};if("EINVAL"===e)return{installed:!1,commandPath:null,reason:"invalid_path"};return{installed:!1,commandPath:null,reason:"access_error"}}try{return await i.default.access(e,i.default.constants.X_OK),{installed:!0,commandPath:e,reason:null}}catch{return{installed:!0,commandPath:e,reason:"not_executable"}}},R=async(e,t,r)=>{if(!Array.isArray(e)||0===e.length)return{command:null,installed:!1,commandPath:null,reason:"missing_command"};if(r)for(let t of(e=>{let t=u.default.homedir(),r=[],n=C();if(process.execPath.toLowerCase().includes("nvm")&&d.default.dirname(process.execPath),"win32"===process.platform);else for(let[,a]of({claude:[["claude.cmd","claude"],["claude.exe","claude"]],codex:[["codex.cmd","codex"]],droid:[["droid.cmd","droid"]],openclaw:[["openclaw.cmd","openclaw"]],cursor:[["agent.cmd","agent"],["cursor.cmd","cursor"]],cline:[["cline.cmd","cline"]],kilo:[["kilocode.cmd","kilocode"]],opencode:[["opencode.cmd","opencode"]]})[e]||[]){let o=d.default.dirname(process.execPath);r.push(d.default.join(o,a)),n&&r.push(d.default.join(n,"bin",a)),r.push(d.default.join(t,".local","bin",a)),l.default.existsSync("/usr/local/bin")&&r.push(d.default.join("/usr","local","bin",a)),l.default.existsSync("/usr/bin")&&r.push(d.default.join("/usr","bin",a)),"opencode"===e&&r.push(d.default.join(t,".opencode","bin",a)),"claude"===e&&r.push(d.default.join(t,".claude","bin",a))}return r})(r)){let r=await w(t);if(r.installed&&null===r.reason)return{command:e[0],installed:!0,commandPath:r.commandPath,reason:null}}for(let r of e){let e=await P(r,t);if(e.installed||"not_found"!==e.reason)return{command:r,...e}}return{command:e[0],installed:!1,commandPath:null,reason:"not_found"}},A=async(e,t,r=4e3)=>{let n={PATH:t.PATH,HOME:t.HOME||t.USERPROFILE,SystemRoot:t.SystemRoot,PATHEXT:t.PATHEXT};for(let t of[["--version"],["-v"]]){let a=await h(e,t,{env:n,timeoutMs:r});if(a.ok&&a.stdout.length>0&&a.stdout.length<4096)return{runnable:!0,reason:null,version:a.stdout.trim()}}return{runnable:!1,reason:"healthcheck_failed"}},O=()=>((e=process.platform,t=process.env,r=u.default.homedir())=>d.default.join(((e=process.platform,t=process.env,r=u.default.homedir())=>"win32"===e?String(t.APPDATA||"").trim()||d.default.join(r,"AppData","Roaming"):String(t.XDG_CONFIG_HOME||"").trim()||d.default.join(r,".config"))(e,t,r),"opencode","opencode.json"))(),E=e=>{let t=f[e];if(!t)return null;if("opencode"===e)return{config:O()};let r=(()=>{let e=String(process.env.CLI_CONFIG_HOME||"").trim();if(!e||!d.default.isAbsolute(e)||g.some(t=>e.includes(t))||d.default.normalize(e).includes(".."))return u.default.homedir();let t=u.default.homedir(),r=d.default.normalize(e);return y(r,t)?r:t})();return Object.fromEntries(Object.entries(t.paths).map(([e,t])=>[e,d.default.join(r,t)]))},S=async e=>{let t,r,n,a=f[e],o=(t=String(process.env.CLI_MODE||"auto").trim().toLowerCase(),p.has(t)?t:"auto");if(!a)return{installed:!1,runnable:!1,command:null,commandPath:null,reason:"unknown_tool",runtimeMode:o,requiresBinary:!1};let s=(r={...process.env},(n=String(process.env.CLI_EXTRA_PATHS||"").split(d.default.delimiter).map(e=>e.trim()).filter(Boolean).filter(e=>!(!d.default.isAbsolute(e)||g.some(t=>e.includes(t))||d.default.normalize(e).includes("..")))).length>0&&(r.PATH=[...n,r.PATH||""].filter(Boolean).join(d.default.delimiter)),r),i=(e=>{let t=f[e];if(!t)return[];let r=String(process.env[t.envBinKey]||"").trim();return r?[r]:Array.isArray(t.defaultCommands)&&t.defaultCommands.length>0?t.defaultCommands.filter(Boolean):t.defaultCommand?[t.defaultCommand]:[]})(e),l=!1!==a.requiresBinary;if(!l&&0===i.length)return{installed:!0,runnable:!0,command:null,commandPath:null,reason:"not_required",runtimeMode:o,requiresBinary:l};let u=await R(i,s,e),c=u.command;if(!u.installed)return{installed:!1,runnable:!1,command:c,commandPath:null,reason:u.reason||"not_found",runtimeMode:o,requiresBinary:l};if("not_executable"===u.reason)return{installed:!0,runnable:!1,command:c,commandPath:u.commandPath,reason:"not_executable",runtimeMode:o,requiresBinary:l};let m=await A(u.commandPath,s,Number(a.healthcheckTimeoutMs||4e3));return{installed:!0,runnable:m.runnable,command:c,commandPath:u.commandPath,reason:m.reason,runtimeMode:o,requiresBinary:l}},I=Object.keys(f);e.s(["CLI_TOOL_IDS",0,I,"ensureCliConfigWriteAllowed",0,()=>((e,t=!0)=>null==e||""===e?t:!m.has(String(e).trim().toLowerCase()))(process.env.CLI_ALLOW_CONFIG_WRITES,!0)?null:"CLI config writes are disabled (CLI_ALLOW_CONFIG_WRITES=false)","getCliConfigPaths",0,E,"getCliPrimaryConfigPath",0,e=>{let t=E(e);if(!t)return null;let r=Object.keys(t)[0];return r?t[r]:null},"getCliRuntimeStatus",0,S,"getOpenCodeConfigPath",0,O])},997953,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].ReactServerDOMTurbopackServer},745015,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"registerServerReference",{enumerable:!0,get:function(){return n.registerServerReference}});let n=e.r(997953)},195975,(e,t,r)=>{"use strict";function n(e){for(let t=0;t<e.length;t++){let r=e[t];if("function"!=typeof r)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof r}.
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return n}})},653870,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),o=e.i(561916),s=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),m=e.i(570101),f=e.i(626937),h=e.i(10372),g=e.i(193695);e.i(52474);var y=e.i(600220),x=e.i(745015),v=e.i(89171),C=e.i(266240);async function _(e,{params:t}){try{let{toolId:e}=await t,r=String(e||"").trim().toLowerCase();if(!C.CLI_TOOL_IDS.includes(r))return v.NextResponse.json({error:"Unsupported CLI tool"},{status:404});let n=await (0,C.getCliRuntimeStatus)(r);return v.NextResponse.json({...n,toolId:r,configPath:(0,C.getCliPrimaryConfigPath)(r),message:"not_required"===n.reason?"This integration is guide-based and does not require a local CLI binary":n.installed&&n.runnable?"CLI detected and runnable":n.installed?"CLI detected but not runnable":"CLI not detected"})}catch(e){return console.log("Error checking CLI runtime:",e),v.NextResponse.json({error:"Failed to check CLI runtime"},{status:500})}}(0,e.i(195975).ensureServerEntryExports)([_]),(0,x.registerServerReference)(_,"
|
|
2
|
+
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return n}})},653870,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),o=e.i(561916),s=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),m=e.i(570101),f=e.i(626937),h=e.i(10372),g=e.i(193695);e.i(52474);var y=e.i(600220),x=e.i(745015),v=e.i(89171),C=e.i(266240);async function _(e,{params:t}){try{let{toolId:e}=await t,r=String(e||"").trim().toLowerCase();if(!C.CLI_TOOL_IDS.includes(r))return v.NextResponse.json({error:"Unsupported CLI tool"},{status:404});let n=await (0,C.getCliRuntimeStatus)(r);return v.NextResponse.json({...n,toolId:r,configPath:(0,C.getCliPrimaryConfigPath)(r),message:"not_required"===n.reason?"This integration is guide-based and does not require a local CLI binary":n.installed&&n.runnable?"CLI detected and runnable":n.installed?"CLI detected but not runnable":"CLI not detected"})}catch(e){return console.log("Error checking CLI runtime:",e),v.NextResponse.json({error:"Failed to check CLI runtime"},{status:500})}}(0,e.i(195975).ensureServerEntryExports)([_]),(0,x.registerServerReference)(_,"60e907ce34be95d63967f65ecdcc0ecaa89f6baf2e",null),e.s(["GET",()=>_],735115);var b=e.i(735115);let P=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/cli-tools/runtime/[toolId]/route",pathname:"/api/cli-tools/runtime/[toolId]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/runtime/[toolId]/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:w,workUnitAsyncStorage:R,serverHooks:A}=P;function O(){return(0,n.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:R})}async function E(e,t,n){P.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/cli-tools/runtime/[toolId]/route";x=x.replace(/\/index$/,"")||"/";let v=await P.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:C,params:_,nextConfig:b,parsedUrl:w,isDraftMode:R,prerenderManifest:A,routerServerContext:O,isOnDemandRevalidate:E,revalidateOnlyGenerated:S,resolvedPathname:I,clientReferenceManifest:j,serverActionsManifest:k}=v,T=(0,i.normalizeAppPath)(x),L=!!(A.dynamicRoutes[T]||A.routes[I]),N=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,w,!1):t.end("This page could not be found"),null);if(L&&!R){let e=!!A.routes[I],t=A.dynamicRoutes[T];if(t&&!1===t.fallback&&!e){if(b.experimental.adapterPath)return await N();throw new g.NoFallbackError}}let B=null;!L||P.isDev||R||(B="/index"===(B=I)?"/":B);let q=!0===P.isDev||!L,D=L&&!q;k&&j&&(0,s.setManifestsSingleton)({page:x,clientReferenceManifest:j,serverActionsManifest:k});let M=e.method||"GET",H=(0,o.getTracer)(),U=H.getActiveScopeSpan(),$={params:_,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!b.experimental.authInterrupts},cacheComponents:!!b.cacheComponents,supportsDynamicResponse:q,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:b.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>P.onRequestError(e,t,n,a,O)},sharedContext:{buildId:C}},K=new l.NodeNextRequest(e),F=new l.NodeNextResponse(t),z=u.NextRequestAdapter.fromNodeNextRequest(K,(0,u.signalFromNodeResponse)(t));try{let s=async e=>P.handle(z,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${M} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${x}`)}),i=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var o,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&E&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await s(a);e.fetchMetrics=$.renderOpts.fetchMetrics;let l=$.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let u=$.renderOpts.collectedTags;if(!L)return await (0,p.sendResponse)(K,F,o,$.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(o.headers);u&&(t[h.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,n=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=h.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await P.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:E})},!1,O),t}},d=await P.handleResponse({req:e,nextConfig:b,cacheKey:B,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:E,revalidateOnlyGenerated:S,responseGenerator:u,waitUntil:n.waitUntil,isMinimalMode:i});if(!L)return null;if((null==d||null==(o=d.value)?void 0:o.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",E?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),R&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&L||g.delete(h.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(K,F,new Response(d.value.body,{headers:g,status:d.value.status||200})),null};U?await l(U):await H.withPropagatedContext(e.headers,()=>H.trace(d.BaseServerSpan.handleRequest,{spanName:`${M} ${x}`,kind:o.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await P.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:E})},!1,O),L)throw t;return await (0,p.sendResponse)(K,F,new Response(null,{status:500})),null}}e.s(["handler",()=>E,"patchFetch",()=>O,"routeModule",()=>P,"serverHooks",()=>A,"workAsyncStorage",()=>w,"workUnitAsyncStorage",()=>R],653870)}];
|
|
3
3
|
|
|
4
4
|
//# sourceMappingURL=%5Broot-of-the-server%5D__46e00e59._.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
module.exports=[918622,(e,t,i)=>{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"))},556704,(e,t,i)=>{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,i)=>{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"))},324725,(e,t,i)=>{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"))},270406,(e,t,i)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,i)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,i)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,i)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,i)=>{"use strict";var o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,n={},c={RequestCookies:()=>b,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>u,stringifyCookie:()=>p};for(var l in c)o(n,l,{get:c[l],enumerable:!0});function p(e){var t;let i=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),o=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===i.length?o:`${o}; ${i.join("; ")}`}function d(e){let t=new Map;for(let i of e.split(/; */)){if(!i)continue;let e=i.indexOf("=");if(-1===e){t.set(i,"true");continue}let[o,a]=[i.slice(0,e),i.slice(e+1)];try{t.set(o,decodeURIComponent(null!=a?a:"true"))}catch{}}return t}function u(e){if(!e)return;let[[t,i],...o]=d(e),{domain:a,expires:r,httponly:s,maxage:n,path:c,samesite:l,secure:p,partitioned:u,priority:b}=Object.fromEntries(o.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,y,x={name:t,value:decodeURIComponent(i),domain:a,...r&&{expires:new Date(r)},...s&&{httpOnly:!0},..."string"==typeof n&&{maxAge:Number(n)},path:c,...l&&{sameSite:m.includes(g=(g=l).toLowerCase())?g:void 0},...p&&{secure:!0},...b&&{priority:h.includes(y=(y=b).toLowerCase())?y:void 0},...u&&{partitioned:!0}};let e={};for(let t in x)x[t]&&(e[t]=x[t]);return e}}t.exports=((e,t,i,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of r(t))s.call(e,i)||void 0===i||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e})(o({},"__esModule",{value:!0}),n);var m=["strict","lax","none"],h=["low","medium","high"],b=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,i]of d(t))this._parsed.set(e,{name:e,value:i})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed);if(!e.length)return i.map(([e,t])=>t);let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(([e])=>e===o).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,i]=1===e.length?[e[0].name,e[0].value]:e,o=this._parsed;return o.set(t,{name:t,value:i}),this._headers.set("cookie",Array.from(o).map(([e,t])=>p(t)).join("; ")),this}delete(e){let t=this._parsed,i=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>p(t)).join("; ")),i}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,i,o;this._parsed=new Map,this._headers=e;const a=null!=(o=null!=(i=null==(t=e.getSetCookie)?void 0:t.call(e))?i:e.get("set-cookie"))?o:[];for(const e of Array.isArray(a)?a:function(e){if(!e)return[];var t,i,o,a,r,s=[],n=0;function c(){for(;n<e.length&&/\s/.test(e.charAt(n));)n+=1;return n<e.length}for(;n<e.length;){for(t=n,r=!1;c();)if(","===(i=e.charAt(n))){for(o=n,n+=1,c(),a=n;n<e.length&&"="!==(i=e.charAt(n))&&";"!==i&&","!==i;)n+=1;n<e.length&&"="===e.charAt(n)?(r=!0,n=a,s.push(e.substring(t,o)),t=n):n=o+1}else n+=1;(!r||n>=e.length)&&s.push(e.substring(t,e.length))}return s}(a)){const t=u(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed.values());if(!e.length)return i;let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(e=>e.name===o)}has(e){return this._parsed.has(e)}set(...e){let[t,i,o]=1===e.length?[e[0].name,e[0].value,e[0]]:e,a=this._parsed;return a.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:i,...o})),function(e,t){for(let[,i]of(t.delete("set-cookie"),e)){let e=p(i);t.append("set-cookie",e)}}(a,this._headers),this}delete(...e){let[t,i]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...i,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(p).join("; ")}}},677850,e=>e.a(async(t,i)=>{try{let t=await e.y("zod");e.n(t),i()}catch(e){i(e)}},!0),804730,e=>{e.v({name:"omniroute",version:"3.0.7",description:"Smart AI Router with auto fallback — route to FREE & cheap models, zero downtime. Works with Cursor, Cline, Claude Desktop, Codex, and any OpenAI-compatible tool.",type:"module",bin:{omniroute:"bin/omniroute.mjs","omniroute-reset-password":"bin/reset-password.mjs"},files:["bin/","app/","open-sse/mcp-server/","src/shared/contracts/","scripts/postinstall.mjs","scripts/native-binary-compat.mjs","README.md","LICENSE"],workspaces:["open-sse"],engines:{node:">=18.0.0 <24.0.0"},keywords:["ai","router","proxy","openai","claude","anthropic","gemini","fallback","cursor","cline","codex","llm","auto-fallback"],license:"MIT",author:"diegosouzapw",repository:{type:"git",url:"https://github.com/diegosouzapw/OmniRoute"},homepage:"https://omniroute.online",scripts:{dev:"node scripts/run-next.mjs dev",build:"node scripts/build-next-isolated.mjs","build:cli":"node scripts/prepublish.mjs",start:"node scripts/run-next.mjs start",lint:"eslint .","electron:dev":'concurrently "npm run dev" "wait-on http://localhost:20128 && cd electron && npm run dev"',"electron:build":"npm run build && cd electron && npm run build","electron:build:win":"npm run build && cd electron && npm run build:win","electron:build:mac":"npm run build && cd electron && npm run build:mac","electron:build:linux":"npm run build && cd electron && npm run build:linux",test:"node --import tsx/esm --test tests/unit/*.test.mjs","test:unit":"node --import tsx/esm --test tests/unit/*.test.mjs","test:plan3":"node --import tsx/esm --test tests/unit/plan3-p0.test.mjs","test:fixes":"node --import tsx/esm --test tests/unit/fixes-p1.test.mjs","test:security":"node --import tsx/esm --test tests/unit/security-fase01.test.mjs","check:cycles":"node scripts/check-cycles.mjs","check:route-validation:t06":"node scripts/check-route-validation.mjs","check:any-budget:t11":"node scripts/check-t11-any-budget.mjs","check:docs-sync":"node scripts/check-docs-sync.mjs","typecheck:core":"tsc --pretty false -p tsconfig.typecheck-core.json","typecheck:noimplicit:core":"tsc --pretty false -p tsconfig.typecheck-noimplicit-core.json","test:integration":"node --import tsx/esm --test tests/integration/*.test.mjs","test:e2e":"node scripts/run-playwright-tests.mjs test tests/e2e/*.spec.ts","test:protocols:e2e":"node scripts/run-protocol-clients-tests.mjs","test:vitest":"vitest run open-sse/mcp-server/__tests__/*.test.ts open-sse/services/autoCombo/__tests__/*.test.ts","test:ecosystem":"node scripts/run-ecosystem-tests.mjs","test:coverage":"npx c8 --exclude=open-sse --check-coverage --lines 50 --functions 50 --branches 50 node --import tsx/esm --test tests/unit/*.test.mjs","test:all":"npm run test:unit && npm run test:vitest && npm run test:ecosystem && npm run test:e2e",check:"npm run lint && npm run test",prepublishOnly:"npm run build:cli",postinstall:"node scripts/postinstall.mjs",prepare:"husky","system-info":"node scripts/system-info.mjs"},dependencies:{"@lobehub/icons":"^5.0.1","@modelcontextprotocol/sdk":"^1.27.1","@monaco-editor/react":"^4.7.0","@swc/helpers":"0.5.19",bcryptjs:"^3.0.3","better-sqlite3":"^12.6.2",bottleneck:"^2.19.5",dompurify:"^3.3.2",express:"^5.2.1","fetch-socks":"^1.3.2","http-proxy-middleware":"^3.0.5","https-proxy-agent":"^8.0.0",jose:"^6.1.3",keytar:"^7.9.0",lowdb:"^7.0.1","monaco-editor":"^0.55.1",next:"^16.0.10","next-intl":"^4.8.3","node-machine-id":"^1.1.12",open:"^11.0.0",ora:"^9.1.0",pino:"^10.3.1","pino-pretty":"^13.1.3",react:"19.2.4","react-dom":"19.2.4",recharts:"^3.7.0",selfsigned:"^5.5.0",tsx:"^4.21.0",undici:"^7.19.2",uuid:"^13.0.0","wreq-js":"^2.0.1",zod:"^4.3.6",zustand:"^5.0.10"},devDependencies:{"@playwright/test":"^1.58.2","@tailwindcss/postcss":"^4.1.18","@types/bcryptjs":"^3.0.0","@types/better-sqlite3":"^7.6.13","@types/keytar":"^4.4.0","@types/node":"^25.2.3","@types/react":"^19.2.14","@types/react-dom":"^19.2.3",concurrently:"^9.2.1","cross-env":"^10.1.0",eslint:"^9.39.2","eslint-config-next":"^16.0.10",husky:"^9.1.7","lint-staged":"^16.2.7",prettier:"^3.8.1",tailwindcss:"^4",typescript:"^5.9.3","typescript-eslint":"^8.56.0",vitest:"^4.0.18","wait-on":"^9.0.4"},"lint-staged":{"*.{js,jsx,ts,tsx,mjs}":["prettier --write","eslint --fix --no-error-on-unmatched-pattern"],"*.{json,md,yml,yaml,css}":["prettier --write"]},pnpm:{onlyBuiltDependencies:["@parcel/watcher","@swc/core","better-sqlite3","esbuild","omniroute","sharp"]},overrides:{dompurify:"^3.3.2"}})},102835,e=>e.a(async(t,i)=>{try{var o=e.i(677850),a=t([o]);[o]=a.then?(await a)():a;let s=o.z.object({id:o.z.string().min(1),alias:o.z.string().min(1),name:o.z.string().min(1),icon:o.z.string().min(1),color:o.z.string().regex(/^#[0-9A-Fa-f]{6}$/,"Must be a valid hex color (#RRGGBB)"),textIcon:o.z.string().optional(),website:o.z.string().url().optional(),passthroughModels:o.z.boolean().optional(),deprecated:o.z.boolean().optional(),deprecationReason:o.z.string().optional(),hasFree:o.z.boolean().optional(),freeNote:o.z.string().optional(),authHint:o.z.string().optional(),apiHint:o.z.string().optional()}),n=o.z.record(o.z.string(),s);function r(e,t){let i=n.safeParse(e);if(!i.success){let e=i.error.issues.map(e=>` ${e.path.join(".")}: ${e.message}`).join("\n");throw console.error(`[PROVIDER VALIDATION] ${t} has invalid entries:
|
|
1
|
+
module.exports=[918622,(e,t,i)=>{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"))},556704,(e,t,i)=>{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,i)=>{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"))},324725,(e,t,i)=>{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"))},270406,(e,t,i)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,i)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,i)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,i)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,i)=>{"use strict";var o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,n={},c={RequestCookies:()=>b,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>u,stringifyCookie:()=>p};for(var l in c)o(n,l,{get:c[l],enumerable:!0});function p(e){var t;let i=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),o=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===i.length?o:`${o}; ${i.join("; ")}`}function d(e){let t=new Map;for(let i of e.split(/; */)){if(!i)continue;let e=i.indexOf("=");if(-1===e){t.set(i,"true");continue}let[o,a]=[i.slice(0,e),i.slice(e+1)];try{t.set(o,decodeURIComponent(null!=a?a:"true"))}catch{}}return t}function u(e){if(!e)return;let[[t,i],...o]=d(e),{domain:a,expires:r,httponly:s,maxage:n,path:c,samesite:l,secure:p,partitioned:u,priority:b}=Object.fromEntries(o.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,y,x={name:t,value:decodeURIComponent(i),domain:a,...r&&{expires:new Date(r)},...s&&{httpOnly:!0},..."string"==typeof n&&{maxAge:Number(n)},path:c,...l&&{sameSite:m.includes(g=(g=l).toLowerCase())?g:void 0},...p&&{secure:!0},...b&&{priority:h.includes(y=(y=b).toLowerCase())?y:void 0},...u&&{partitioned:!0}};let e={};for(let t in x)x[t]&&(e[t]=x[t]);return e}}t.exports=((e,t,i,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of r(t))s.call(e,i)||void 0===i||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e})(o({},"__esModule",{value:!0}),n);var m=["strict","lax","none"],h=["low","medium","high"],b=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,i]of d(t))this._parsed.set(e,{name:e,value:i})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed);if(!e.length)return i.map(([e,t])=>t);let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(([e])=>e===o).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,i]=1===e.length?[e[0].name,e[0].value]:e,o=this._parsed;return o.set(t,{name:t,value:i}),this._headers.set("cookie",Array.from(o).map(([e,t])=>p(t)).join("; ")),this}delete(e){let t=this._parsed,i=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>p(t)).join("; ")),i}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,i,o;this._parsed=new Map,this._headers=e;const a=null!=(o=null!=(i=null==(t=e.getSetCookie)?void 0:t.call(e))?i:e.get("set-cookie"))?o:[];for(const e of Array.isArray(a)?a:function(e){if(!e)return[];var t,i,o,a,r,s=[],n=0;function c(){for(;n<e.length&&/\s/.test(e.charAt(n));)n+=1;return n<e.length}for(;n<e.length;){for(t=n,r=!1;c();)if(","===(i=e.charAt(n))){for(o=n,n+=1,c(),a=n;n<e.length&&"="!==(i=e.charAt(n))&&";"!==i&&","!==i;)n+=1;n<e.length&&"="===e.charAt(n)?(r=!0,n=a,s.push(e.substring(t,o)),t=n):n=o+1}else n+=1;(!r||n>=e.length)&&s.push(e.substring(t,e.length))}return s}(a)){const t=u(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let i=Array.from(this._parsed.values());if(!e.length)return i;let o="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return i.filter(e=>e.name===o)}has(e){return this._parsed.has(e)}set(...e){let[t,i,o]=1===e.length?[e[0].name,e[0].value,e[0]]:e,a=this._parsed;return a.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:i,...o})),function(e,t){for(let[,i]of(t.delete("set-cookie"),e)){let e=p(i);t.append("set-cookie",e)}}(a,this._headers),this}delete(...e){let[t,i]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...i,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(p).join("; ")}}},677850,e=>e.a(async(t,i)=>{try{let t=await e.y("zod");e.n(t),i()}catch(e){i(e)}},!0),804730,e=>{e.v({name:"omniroute",version:"3.0.8",description:"Smart AI Router with auto fallback — route to FREE & cheap models, zero downtime. Works with Cursor, Cline, Claude Desktop, Codex, and any OpenAI-compatible tool.",type:"module",bin:{omniroute:"bin/omniroute.mjs","omniroute-reset-password":"bin/reset-password.mjs"},files:["bin/","app/","open-sse/mcp-server/","src/shared/contracts/","scripts/postinstall.mjs","scripts/native-binary-compat.mjs","README.md","LICENSE"],workspaces:["open-sse"],engines:{node:">=18.0.0 <24.0.0"},keywords:["ai","router","proxy","openai","claude","anthropic","gemini","fallback","cursor","cline","codex","llm","auto-fallback"],license:"MIT",author:"diegosouzapw",repository:{type:"git",url:"https://github.com/diegosouzapw/OmniRoute"},homepage:"https://omniroute.online",scripts:{dev:"node scripts/run-next.mjs dev",build:"node scripts/build-next-isolated.mjs","build:cli":"node scripts/prepublish.mjs",start:"node scripts/run-next.mjs start",lint:"eslint .","electron:dev":'concurrently "npm run dev" "wait-on http://localhost:20128 && cd electron && npm run dev"',"electron:build":"npm run build && cd electron && npm run build","electron:build:win":"npm run build && cd electron && npm run build:win","electron:build:mac":"npm run build && cd electron && npm run build:mac","electron:build:linux":"npm run build && cd electron && npm run build:linux",test:"node --import tsx/esm --test tests/unit/*.test.mjs","test:unit":"node --import tsx/esm --test tests/unit/*.test.mjs","test:plan3":"node --import tsx/esm --test tests/unit/plan3-p0.test.mjs","test:fixes":"node --import tsx/esm --test tests/unit/fixes-p1.test.mjs","test:security":"node --import tsx/esm --test tests/unit/security-fase01.test.mjs","check:cycles":"node scripts/check-cycles.mjs","check:route-validation:t06":"node scripts/check-route-validation.mjs","check:any-budget:t11":"node scripts/check-t11-any-budget.mjs","check:docs-sync":"node scripts/check-docs-sync.mjs","typecheck:core":"tsc --pretty false -p tsconfig.typecheck-core.json","typecheck:noimplicit:core":"tsc --pretty false -p tsconfig.typecheck-noimplicit-core.json","test:integration":"node --import tsx/esm --test tests/integration/*.test.mjs","test:e2e":"node scripts/run-playwright-tests.mjs test tests/e2e/*.spec.ts","test:protocols:e2e":"node scripts/run-protocol-clients-tests.mjs","test:vitest":"vitest run open-sse/mcp-server/__tests__/*.test.ts open-sse/services/autoCombo/__tests__/*.test.ts","test:ecosystem":"node scripts/run-ecosystem-tests.mjs","test:coverage":"npx c8 --exclude=open-sse --check-coverage --lines 50 --functions 50 --branches 50 node --import tsx/esm --test tests/unit/*.test.mjs","test:all":"npm run test:unit && npm run test:vitest && npm run test:ecosystem && npm run test:e2e",check:"npm run lint && npm run test",prepublishOnly:"npm run build:cli",postinstall:"node scripts/postinstall.mjs",prepare:"husky","system-info":"node scripts/system-info.mjs"},dependencies:{"@lobehub/icons":"^5.0.1","@modelcontextprotocol/sdk":"^1.27.1","@monaco-editor/react":"^4.7.0","@swc/helpers":"0.5.19",bcryptjs:"^3.0.3","better-sqlite3":"^12.6.2",bottleneck:"^2.19.5",dompurify:"^3.3.2",express:"^5.2.1","fetch-socks":"^1.3.2","http-proxy-middleware":"^3.0.5","https-proxy-agent":"^8.0.0",jose:"^6.1.3",keytar:"^7.9.0",lowdb:"^7.0.1","monaco-editor":"^0.55.1",next:"^16.0.10","next-intl":"^4.8.3","node-machine-id":"^1.1.12",open:"^11.0.0",ora:"^9.1.0",pino:"^10.3.1","pino-pretty":"^13.1.3",react:"19.2.4","react-dom":"19.2.4",recharts:"^3.7.0",selfsigned:"^5.5.0",tsx:"^4.21.0",undici:"^7.19.2",uuid:"^13.0.0","wreq-js":"^2.0.1",zod:"^4.3.6",zustand:"^5.0.10"},devDependencies:{"@playwright/test":"^1.58.2","@tailwindcss/postcss":"^4.1.18","@types/bcryptjs":"^3.0.0","@types/better-sqlite3":"^7.6.13","@types/keytar":"^4.4.0","@types/node":"^25.2.3","@types/react":"^19.2.14","@types/react-dom":"^19.2.3",concurrently:"^9.2.1","cross-env":"^10.1.0",eslint:"^9.39.2","eslint-config-next":"^16.0.10",husky:"^9.1.7","lint-staged":"^16.2.7",prettier:"^3.8.1",tailwindcss:"^4",typescript:"^5.9.3","typescript-eslint":"^8.56.0",vitest:"^4.0.18","wait-on":"^9.0.4"},"lint-staged":{"*.{js,jsx,ts,tsx,mjs}":["prettier --write","eslint --fix --no-error-on-unmatched-pattern"],"*.{json,md,yml,yaml,css}":["prettier --write"]},pnpm:{onlyBuiltDependencies:["@parcel/watcher","@swc/core","better-sqlite3","esbuild","omniroute","sharp"]},overrides:{dompurify:"^3.3.2"}})},102835,e=>e.a(async(t,i)=>{try{var o=e.i(677850),a=t([o]);[o]=a.then?(await a)():a;let s=o.z.object({id:o.z.string().min(1),alias:o.z.string().min(1),name:o.z.string().min(1),icon:o.z.string().min(1),color:o.z.string().regex(/^#[0-9A-Fa-f]{6}$/,"Must be a valid hex color (#RRGGBB)"),textIcon:o.z.string().optional(),website:o.z.string().url().optional(),passthroughModels:o.z.boolean().optional(),deprecated:o.z.boolean().optional(),deprecationReason:o.z.string().optional(),hasFree:o.z.boolean().optional(),freeNote:o.z.string().optional(),authHint:o.z.string().optional(),apiHint:o.z.string().optional()}),n=o.z.record(o.z.string(),s);function r(e,t){let i=n.safeParse(e);if(!i.success){let e=i.error.issues.map(e=>` ${e.path.join(".")}: ${e.message}`).join("\n");throw console.error(`[PROVIDER VALIDATION] ${t} has invalid entries:
|
|
2
2
|
${e}`),Error(`Provider validation failed for ${t}`)}}e.s(["validateProviders",()=>r]),i()}catch(e){i(e)}},!1),963219,e=>e.a(async(t,i)=>{try{var o=e.i(102835),a=t([o]);[o]=a.then?(await a)():a;let n={iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981"},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4",deprecated:!0,deprecationReason:"Google restricts third-party OAuth usage for Gemini CLI (Mar 2026). Pro models require paid plans. Use 'gemini' (API key) provider instead."},kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"}},c={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#D97757"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B"},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6"},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},"kimi-coding":{id:"kimi-coding",alias:"kmc",name:"Kimi Coding",icon:"psychology",color:"#1E40AF",textIcon:"KC"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},l={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",passthroughModels:!0,website:"https://openrouter.ai"},glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},"bailian-coding-plan":{id:"bailian-coding-plan",alias:"bcp",name:"Alibaba Coding Plan",icon:"code",color:"#FF6A00",textIcon:"BCP",website:"https://www.alibabacloud.com/help/en/model-studio/coding-plan"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn"},"kimi-coding-apikey":{id:"kimi-coding-apikey",alias:"kmca",name:"Kimi Coding (API Key)",icon:"psychology",color:"#1E40AF",textIcon:"KC",website:"https://kimi.com"},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com"},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://bailian.console.aliyun.com"},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://modelstudio.console.alibabacloud.com"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com"},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com"},gemini:{id:"gemini",alias:"gemini",name:"Gemini (Google AI Studio)",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev",hasFree:!0,freeNote:"Free forever: 1,500 req/day for Gemini 2.5 Flash — no credit card, get key at aistudio.google.com"},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com",hasFree:!0,freeNote:"Free tier: 30 RPM / 14.4K RPD — no credit card"},blackbox:{id:"blackbox",alias:"bb",name:"Blackbox AI",icon:"view_in_ar",color:"#1A1A2E",textIcon:"BB",website:"https://blackbox.ai"},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai"},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai"},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai"},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai",hasFree:!0,freeNote:"$25 signup credits + 3 permanently free models: Llama 3.3 70B, Vision, DeepSeek-R1 distill"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://inference.cerebras.ai",hasFree:!0,freeNote:"Free: 1M tokens/day, 60K TPM — world's fastest inference"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://build.nvidia.com",hasFree:!0,freeNote:"Free dev access: ~40 RPM, 70+ models (Kimi K2.5, GLM 4.7, DeepSeek V3.2...)"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com"},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com"},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai"},"ollama-cloud":{id:"ollama-cloud",alias:"ollamacloud",name:"Ollama Cloud",icon:"cloud",color:"#58A6FF",textIcon:"OC",website:"https://ollama.com/settings/api-keys"},elevenlabs:{id:"elevenlabs",alias:"el",name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io"},cartesia:{id:"cartesia",alias:"cartesia",name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai"},playht:{id:"playht",alias:"playht",name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht"},inworld:{id:"inworld",alias:"inworld",name:"Inworld",icon:"voice_chat",color:"#7B2EF2",textIcon:"IW",website:"https://inworld.ai"},sdwebui:{id:"sdwebui",alias:"sdwebui",name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui"},comfyui:{id:"comfyui",alias:"comfyui",name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI"},huggingface:{id:"huggingface",alias:"hf",name:"HuggingFace",icon:"face",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",hasFree:!0,freeNote:"Free Inference API for thousands of models (Whisper, VITS, SDXL…)"},synthetic:{id:"synthetic",alias:"synthetic",name:"Synthetic",icon:"verified_user",color:"#6366F1",textIcon:"SY",website:"https://synthetic.new",passthroughModels:!0},"kilo-gateway":{id:"kilo-gateway",alias:"kg",name:"Kilo Gateway",icon:"hub",color:"#617A91",textIcon:"KG",website:"https://kilo.ai",passthroughModels:!0},vertex:{id:"vertex",alias:"vertex",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VA",website:"https://cloud.google.com/vertex-ai",authHint:"Provide Service Account JSON or OAuth access_token"},zai:{id:"zai",alias:"zai",name:"Z.AI (GLM-5)",icon:"psychology",color:"#2563EB",textIcon:"ZA",website:"https://open.bigmodel.cn",apiHint:"API key from https://open.bigmodel.cn/usercenter/apikeys"},"perplexity-search":{id:"perplexity-search",alias:"pplx-search",name:"Perplexity Search",icon:"search",color:"#20808D",textIcon:"PS",website:"https://docs.perplexity.ai/guides/search-quickstart",authHint:"Same API key as Perplexity (pplx-...)"},"serper-search":{id:"serper-search",alias:"serper-search",name:"Serper Search",icon:"search",color:"#4285F4",textIcon:"SP",website:"https://serper.dev",authHint:"API key from serper.dev dashboard"},"brave-search":{id:"brave-search",alias:"brave-search",name:"Brave Search",icon:"travel_explore",color:"#FB542B",textIcon:"BR",website:"https://brave.com/search/api",authHint:"Subscription token from Brave Search API dashboard"},"exa-search":{id:"exa-search",alias:"exa-search",name:"Exa Search",icon:"neurology",color:"#1E40AF",textIcon:"EX",website:"https://exa.ai",authHint:"API key from dashboard.exa.ai"},"tavily-search":{id:"tavily-search",alias:"tavily-search",name:"Tavily Search",icon:"manage_search",color:"#5B4FDB",textIcon:"TV",website:"https://tavily.com",authHint:"API key from app.tavily.com (format: tvly-...)"},"opencode-zen":{id:"opencode-zen",alias:"opencode-zen",name:"OpenCode Zen",icon:"opencode",color:"#6366f1",website:"https://opencode.ai/zen"},"opencode-go":{id:"opencode-go",alias:"opencode-go",name:"OpenCode Go",icon:"opencode",color:"#6366f1",website:"https://opencode.ai/zen/go"},alibaba:{id:"alibaba",alias:"ali",name:"Alibaba Cloud (DashScope)",icon:"cloud_queue",color:"#FF6600",textIcon:"AL",website:"https://dashscope-intl.aliyuncs.com",hasFree:!1},longcat:{id:"longcat",alias:"lc",name:"LongCat AI",icon:"auto_awesome",color:"#FF6B9D",textIcon:"LC",website:"https://longcat.chat",hasFree:!0,freeNote:"50M tokens/day (Flash-Lite) + 500K/day (Chat/Thinking) — 100% free while public beta"},pollinations:{id:"pollinations",alias:"pol",name:"Pollinations AI",icon:"local_florist",color:"#4CAF50",textIcon:"PO",website:"https://pollinations.ai",hasFree:!0,freeNote:"No API key needed — access GPT-5, Claude, Gemini, DeepSeek V3, Llama 4 free (1 req/15s)"},puter:{id:"puter",alias:"pu",name:"Puter AI",icon:"cloud_circle",color:"#6366F1",textIcon:"PU",website:"https://puter.com",hasFree:!0,freeNote:"500+ models (GPT-5, Claude Opus 4, Gemini 3 Pro, Grok 4, DeepSeek V3...) — Users pay via free Puter account",passthroughModels:!0,authHint:"Get token at puter.com/dashboard → Copy Auth Token"},"cloudflare-ai":{id:"cloudflare-ai",alias:"cf",name:"Cloudflare Workers AI",icon:"cloud",color:"#F48120",textIcon:"CF",website:"https://developers.cloudflare.com/workers-ai/",hasFree:!0,freeNote:"Free 10K Neurons/day: ~150 LLM responses or 500s Whisper audio — edge inference globally",authHint:"Requires API Token AND Account ID (found at dash.cloudflare.com)"},scaleway:{id:"scaleway",alias:"scw",name:"Scaleway AI",icon:"cloud",color:"#4F0599",textIcon:"SCW",website:"https://www.scaleway.com/en/ai/generative-apis/",hasFree:!0,freeNote:"1M free tokens for new accounts — EU/GDPR compliant (Paris), Qwen3 235B & Llama 70B"},aimlapi:{id:"aimlapi",alias:"aiml",name:"AI/ML API",icon:"hub",color:"#6366F1",textIcon:"AI",website:"https://aimlapi.com",hasFree:!0,freeNote:"$0.025/day free credits — 200+ models (GPT-4o, Claude, Gemini, Llama) via single endpoint",passthroughModels:!0}},p="openai-compatible-",d="anthropic-compatible-";function r(e){return"string"==typeof e&&e.startsWith(p)}function s(e){return"string"==typeof e&&e.startsWith(d)}let u={...n,...c,...l},m=Object.values(u).reduce((e,t)=>(e[t.alias]=t.id,e),{});Object.values(u).reduce((e,t)=>(e[t.id]=t.alias,e),{}),(0,o.validateProviders)(n,"FREE_PROVIDERS"),(0,o.validateProviders)(c,"OAUTH_PROVIDERS"),(0,o.validateProviders)(l,"APIKEY_PROVIDERS"),e.s(["AI_PROVIDERS",0,u,"ALIAS_TO_ID",0,m,"ANTHROPIC_COMPATIBLE_PREFIX",0,d,"APIKEY_PROVIDERS",0,l,"FREE_PROVIDERS",0,n,"OAUTH_PROVIDERS",0,c,"OPENAI_COMPATIBLE_PREFIX",0,p,"isAnthropicCompatibleProvider",()=>s,"isOpenAICompatibleProvider",()=>r]),i()}catch(e){i(e)}},!1),617325,e=>e.a(async(t,i)=>{try{var o=e.i(878947),a=e.i(963219),r=t([a]);[a]=r.then?(await r)():r,Object.entries(a.AI_PROVIDERS).filter(([,e])=>e.passthroughModels).map(([e])=>e);let s=Object.entries(o.PROVIDER_MODELS).flatMap(([e,t])=>t.map(t=>({provider:e,model:t.id,name:t.name})));e.s(["AI_MODELS",0,s]),i()}catch(e){i(e)}},!1),651948,e=>e.a(async(t,i)=>{try{var o=e.i(804730),a=e.i(963219),r=e.i(617325),s=t([a,r]);[a,r]=s.then?(await s)():s;let n={name:"OmniRoute",description:"AI Gateway for Multi-Provider LLMs",version:o.default.version};e.s(["APP_CONFIG",0,n]),i()}catch(e){i(e)}},!1),949423,e=>e.a(async(t,i)=>{try{var o=e.i(89171);e.i(245272);var a=e.i(385498),r=e.i(548941),s=e.i(651948),n=e.i(963219),c=t([s,n]);async function l(){try{let{getAllCircuitBreakerStatuses:t}=await e.A(970016),{getAllRateLimitStatus:i}=await e.A(134636),{getAllModelLockouts:c}=await e.A(730711),{getInflightCount:l}=await e.A(38026),p=await (0,r.getSettings)(),d=await (0,a.getProviderConnections)(),u=t(),m=i(),h=c(),{getAllHealthStatuses:b}=await e.A(338694),g={version:s.APP_CONFIG.version,nodeVersion:process.version,uptime:process.uptime(),memoryUsage:process.memoryUsage(),pid:process.pid,platform:process.platform},y={};for(let e of u)e.name.startsWith("test-")||e.name.startsWith("test_")||(y[e.name]={state:e.state,failures:e.failureCount||0,lastFailure:e.lastFailureTime});let x=new Set(d.map(e=>e.provider)),f=new Set(d.filter(e=>!1!==e.isActive).map(e=>e.provider));return o.NextResponse.json({status:"healthy",timestamp:new Date().toISOString(),system:g,providerHealth:y,providerSummary:{catalogCount:Object.keys(n.AI_PROVIDERS).length,configuredCount:x.size,activeCount:f.size,monitoredCount:Object.keys(y).length},localProviders:b(),rateLimitStatus:m,lockouts:h,dedup:{inflightRequests:l()},setupComplete:p?.setupComplete||!1})}catch(e){return console.error("[API] GET /api/monitoring/health error:",e),o.NextResponse.json({status:"error",error:"Health check failed"},{status:500})}}async function p(){try{let{resetAllCircuitBreakers:t,getAllCircuitBreakerStatuses:i}=await e.A(970016),a=i().length;return t(),console.log(`[API] DELETE /api/monitoring/health — Reset ${a} circuit breakers`),o.NextResponse.json({success:!0,message:`Reset ${a} circuit breaker(s) to healthy state`,resetCount:a})}catch(e){return console.error("[API] DELETE /api/monitoring/health error:",e),o.NextResponse.json({error:"Failed to reset circuit breakers"},{status:500})}}[s,n]=c.then?(await c)():c,e.s(["DELETE",()=>p,"GET",()=>l]),i()}catch(e){i(e)}},!1),984654,e=>e.a(async(t,i)=>{try{var o=e.i(747909),a=e.i(174017),r=e.i(996250),s=e.i(759756),n=e.i(561916),c=e.i(174677),l=e.i(869741),p=e.i(316795),d=e.i(487718),u=e.i(995169),m=e.i(47587),h=e.i(666012),b=e.i(570101),g=e.i(626937),y=e.i(10372),x=e.i(193695);e.i(52474);var f=e.i(600220),w=e.i(949423),v=t([w]);[w]=v.then?(await v)():v;let _=new o.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/monitoring/health/route",pathname:"/api/monitoring/health",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/monitoring/health/route.ts",nextConfigOutput:"standalone",userland:w}),{workAsyncStorage:k,workUnitAsyncStorage:C,serverHooks:R}=_;function A(){return(0,r.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:C})}async function I(e,t,i){_.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let o="/api/monitoring/health/route";o=o.replace(/\/index$/,"")||"/";let r=await _.prepare(e,t,{srcPage:o,multiZoneDraftMode:!1});if(!r)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:w,params:v,nextConfig:A,parsedUrl:I,isDraftMode:k,prerenderManifest:C,routerServerContext:R,isOnDemandRevalidate:F,revalidateOnlyGenerated:P,resolvedPathname:E,clientReferenceManifest:O,serverActionsManifest:j}=r,S=(0,l.normalizeAppPath)(o),D=!!(C.dynamicRoutes[S]||C.routes[E]),N=async()=>((null==R?void 0:R.render404)?await R.render404(e,t,I,!1):t.end("This page could not be found"),null);if(D&&!k){let e=!!C.routes[E],t=C.dynamicRoutes[S];if(t&&!1===t.fallback&&!e){if(A.experimental.adapterPath)return await N();throw new x.NoFallbackError}}let M=null;!D||_.isDev||k||(M=E,M="/index"===M?"/":M);let T=!0===_.isDev||!D,B=D&&!T;j&&O&&(0,c.setManifestsSingleton)({page:o,clientReferenceManifest:O,serverActionsManifest:j});let q=e.method||"GET",L=(0,n.getTracer)(),H=L.getActiveScopeSpan(),G={params:v,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:T,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:A.cacheLife,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,i,o,a)=>_.onRequestError(e,t,o,a,R)},sharedContext:{buildId:w}},z=new p.NodeNextRequest(e),U=new p.NodeNextResponse(t),$=d.NextRequestAdapter.fromNodeNextRequest(z,(0,d.signalFromNodeResponse)(t));try{let r=async e=>_.handle($,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let i=L.getRootSpanAttributes();if(!i)return;if(i.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${i.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=i.get("next.route");if(a){let t=`${q} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${o}`)}),c=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var n,l;let p=async({previousCacheEntry:a})=>{try{if(!c&&F&&P&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await r(s);e.fetchMetrics=G.renderOpts.fetchMetrics;let n=G.renderOpts.pendingWaitUntil;n&&i.waitUntil&&(i.waitUntil(n),n=void 0);let l=G.renderOpts.collectedTags;if(!D)return await (0,h.sendResponse)(z,U,o,G.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,b.toNodeOutgoingHttpHeaders)(o.headers);l&&(t[y.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let i=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=y.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=y.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:f.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:i,expire:a}}}}catch(t){throw(null==a?void 0:a.isStale)&&await _.onRequestError(e,t,{routerKind:"App Router",routePath:o,routeType:"route",revalidateReason:(0,m.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:F})},!1,R),t}},d=await _.handleResponse({req:e,nextConfig:A,cacheKey:M,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:F,revalidateOnlyGenerated:P,responseGenerator:p,waitUntil:i.waitUntil,isMinimalMode:c});if(!D)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==f.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});c||t.setHeader("x-nextjs-cache",F?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),k&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,b.fromNodeOutgoingHttpHeaders)(d.value.headers);return c&&D||u.delete(y.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,h.sendResponse)(z,U,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};H?await l(H):await L.withPropagatedContext(e.headers,()=>L.trace(u.BaseServerSpan.handleRequest,{spanName:`${q} ${o}`,kind:n.SpanKind.SERVER,attributes:{"http.method":q,"http.target":e.url}},l))}catch(t){if(t instanceof x.NoFallbackError||await _.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,m.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:F})},!1,R),D)throw t;return await (0,h.sendResponse)(z,U,new Response(null,{status:500})),null}}e.s(["handler",()=>I,"patchFetch",()=>A,"routeModule",()=>_,"serverHooks",()=>R,"workAsyncStorage",()=>k,"workUnitAsyncStorage",()=>C]),i()}catch(e){i(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_fa113e09._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_65de0558._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},970016,e=>{e.v(t=>Promise.all(["server/chunks/src_5ca0c0a2._.js"].map(t=>e.l(t))).then(()=>t(260222)))},134636,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_localDb_ts_e8eb1d55._.js","server/chunks/open-sse_services_tokenRefresh_ts_0d1f8d2a._.js","server/chunks/_5677b5e2._.js","server/chunks/open-sse_97c54840._.js","server/chunks/open-sse_executors_01c3e95e._.js"].map(t=>e.l(t))).then(()=>t(20870)))},730711,e=>{e.v(t=>Promise.all(["server/chunks/open-sse_cf4d5692._.js"].map(t=>e.l(t))).then(()=>t(441637)))},38026,e=>{e.v(t=>Promise.all(["server/chunks/open-sse_services_requestDedup_ts_82fdaab0._.js"].map(t=>e.l(t))).then(()=>t(951700)))},338694,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_localHealthCheck_ts_06c8cb5d._.js"].map(t=>e.l(t))).then(()=>t(181666)))}];
|
|
3
3
|
|
|
4
4
|
//# sourceMappingURL=%5Broot-of-the-server%5D__6e52619e._.js.map
|
|
@@ -16,20 +16,20 @@ ${n}`}:e):[{role:"system",content:n},...e]}transformRequest(e,t,n,r){let o=JSON.
|
|
|
16
16
|
|
|
17
17
|
`))}}u>=1e3&&console.warn("[Kiro] Max iterations reached in event parsing")},flush(e){if(!i.finishEmitted){i.finishEmitted=!0;let n={id:o,object:"chat.completion.chunk",created:s,model:t,choices:[{index:0,delta:{},finish_reason:i.hasToolCalls?"tool_calls":"stop"}]};e.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(n)}
|
|
18
18
|
|
|
19
|
-
`))}e.enqueue(new TextEncoder().encode("data: [DONE]\n\n"))}});return new Response(e.body.pipeThrough(l),{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}async refreshCredentials(e,t){if(!e.refreshToken)return null;try{return await (0,o.refreshKiroToken)(e.refreshToken,e.providerSpecificData,t)}catch(n){let e=n instanceof Error?n:Error(String(n));return t?.error?.("TOKEN",`Kiro refresh error: ${e.message}`),null}}}e.s(["KiroExecutor",()=>i])},406461,(e,t,n)=>{t.exports=e.x("zlib",()=>require("zlib"))},14018,e=>{"use strict";var t=e.i(689960),n=e.i(406461);let r="1"===process.env.CURSOR_PROTOBUF_DEBUG,o=(e,...t)=>r&&console.log(`[PROTOBUF:${e}]`,...t),s=new TextDecoder,a="1.1.3",i=new Set([1,2,3,9,10,11,27,1,25]);function l(e){let t=[];for(;e>=128;)t.push(127&e|128),e>>>=7;return t.push(127&e),new Uint8Array(t)}function c(e,t,n){let r=l(e<<3|t);if(0===t)return u(r,l(n));if(2===t){let e="string"==typeof n?new TextEncoder().encode(n):n instanceof Uint8Array?n:Buffer.isBuffer(n)?new Uint8Array(n):new Uint8Array(0);return u(r,l(e.length),e)}return new Uint8Array(0)}function u(...e){let t=new Uint8Array(e.reduce((e,t)=>e+t.length,0)),n=0;for(let r of e)t.set(r,n),n+=r.length;return t}function p(e,r,s=[],a=null){o("BODY",`Generating: ${e.length} msgs, model=${r}, tools=${s.length}, reasoning=${a||"none"}`);let i=function(e,n,r=[],s=null){return c(1,2,function(e,n,r=[],s=null){let a,i=r?.length>0,p=[],d=[],f=[];for(let t=0;t<e.length;t++){let n=e[t],r=Array.isArray(n?.tool_calls)&&n.tool_calls.length>0,s=Array.isArray(n?.tool_results)&&n.tool_results.length>0;if(n?.role==="assistant"&&r&&s){o("ENCODE",`normalizing mixed assistant tool payload at msg[${t}] (calls=${n.tool_calls.length}, results=${n.tool_results.length})`),f.push({...n,tool_results:[]});let r=e[t+1],s=r?.role==="assistant"&&Array.isArray(r?.tool_results)&&r.tool_results.length>0,a=new Set(n.tool_results.map(e=>e?.tool_call_id).filter(e=>"string"==typeof e)),i=new Set((r?.tool_results||[]).map(e=>e?.tool_call_id).filter(e=>"string"==typeof e)),l=a.size>0&&a.size===i.size;if(l){for(let e of a)if(!i.has(e)){l=!1;break}}s&&l||f.push({role:"assistant",content:"",tool_results:n.tool_results});continue}f.push(n)}for(let e=0;e<f.length;e++){let n=f[e],r="user"===n.role?1:2,o=(0,t.v4)(),s=e===f.length-1;p.push({content:n.content,role:r,messageId:o,isLast:s,hasTools:i,toolResults:n.tool_results||[]}),d.push({messageId:o,role:r})}let h=0;return"medium"===s?h=1:"high"===s&&(h=2),u(...p.map(e=>c(1,2,function(e,t,n,r=null,o=!1,s=!1,a=[]){return u(c(1,2,e),c(2,0,t),c(13,2,n),...a.length>0?a.map(e=>c(18,2,function(e){var t,n,r,o,s;let a,{toolCallId:i,modelCallId:l}=function(e){if("string"!=typeof e||0===e.length)return{toolCallId:"",modelCallId:null};let t="\nmc_",n=e.indexOf(t);return n>=0?{toolCallId:e.slice(0,n),modelCallId:e.slice(n+t.length)}:{toolCallId:e,modelCallId:null}}(e.tool_call_id||""),p=function(e){let t="string"==typeof e&&e.length>0?e:"tool";if(t.startsWith("mcp__")){let e=t.slice(5),n=e.indexOf("__");if(n>=0){let t=e.slice(0,n)||"custom",r=e.slice(n+2)||"tool";return`mcp_${t}_${r}`}return`mcp_custom_${e||"tool"}`}return t.startsWith("mcp_")?t:`mcp_custom_${t}`}(e.name||""),{selectedTool:d,serverName:f}=function(e){if("string"!=typeof e||!e.startsWith("mcp_"))return{serverName:"custom",selectedTool:e||"tool"};let t=e.slice(4),n=t.indexOf("_");return n<0?{serverName:"custom",selectedTool:t||"tool"}:{serverName:t.slice(0,n)||"custom",selectedTool:t.slice(n+1)||"tool"}}(p),h=e.index>0?e.index:1,g=e.raw_args||"{}",m=(t=i,n=l,r=d,o=h,s=e.result||"",a=u(c(1,2,"string"==typeof r&&r.length>0?r:"tool"),c(2,2,"string"==typeof s?s:"")),u(c(1,0,19),c(28,2,a),...t?[c(35,2,t)]:[],...n?[c(48,2,n)]:[],c(49,0,o))),y=function(e,t,n,r,o,s,a){let i;return u(c(1,0,19),c(27,2,(i=u(c(1,2,r||"tool"),c(3,2,s||"{}"),c(4,2,o||"custom")),c(1,2,i))),...e?[c(3,2,e)]:[],c(9,2,n||"tool"),c(10,2,s||"{}"),c(48,0,a>0?a:1),...t?[c(49,2,t)]:[])}(i,l,p,d,f,g,h);return u(c(1,2,i),c(2,2,p),c(3,0,h),...l?[c(12,2,l)]:[],c(5,2,g),...m?[c(8,2,m)]:[],c(11,2,y))}(e))):[],c(29,0,+!!s),c(47,0,s?2:1),...o&&s?[c(51,2,l(1))]:[])}(e.content,e.role,e.messageId,null,e.isLast,e.hasTools,e.toolResults))),c(2,0,1),c(3,2,new Uint8Array(0)),c(4,0,1),c(5,2,u(c(1,2,n),c(4,2,new Uint8Array(0)))),c(8,2,""),c(13,0,1),c(15,2,(a=u(c(1,2,new Uint8Array(0)),c(2,2,new Uint8Array(0))),u(c(1,2,"cursor\\aisettings"),c(3,2,new Uint8Array(0)),c(6,2,a),c(8,0,1),c(9,0,1)))),c(19,0,1),c(23,2,(0,t.v4)()),c(26,2,u(c(1,2,process.platform||"linux"),c(2,2,process.arch||"x64"),c(3,2,process.version||"v20.0.0"),c(4,2,process.cwd?.()||"/"),c(5,2,new Date().toISOString()))),c(27,0,+!!i),...i?[c(29,2,l(1))]:[],...d.map(e=>c(30,2,function(e,t,n=null){return u(c(1,2,e),...n?[c(2,2,n)]:[],c(3,0,t))}(e.messageId,e.role))),...r?.length>0?r.map(e=>{let t,n,r;return c(34,2,(t=e.function?.name||e.name||"",n=e.function?.description||e.description||"",r=e.function?.parameters||e.input_schema||{},u(...t?[c(1,2,t)]:[],...n?[c(2,2,n)]:[],...Object.keys(r).length>0?[c(3,2,JSON.stringify(r))]:[],c(4,2,"custom"))))}):[],c(35,0,0),c(38,0,0),c(46,0,i?2:1),c(47,2,""),c(48,0,+!i),c(49,0,h),c(51,0,0),c(53,0,1),c(54,2,i?"Agent":"Ask"))}(e,n,r,s))}(e,r,s,a),d=function(e,t=!1){let r=e,o=0;t&&(r=new Uint8Array(n.default.gzipSync(Buffer.from(e))),o=1);let s=new Uint8Array(5+r.length);return s[0]=o,s[1]=r.length>>24&255,s[2]=r.length>>16&255,s[3]=r.length>>8&255,s[4]=255&r.length,s.set(r,5),s}(i,!1);return o("BODY",`Protobuf=${i.length}B, Framed=${d.length}B`),d}function d(e,t){let n=0,r=0,o=t;for(;o<e.length;){let t=e[o];if(n|=(127&t)<<r,o++,!(128&t))break;r+=7}return[n,o]}function f(e){let t=new Map,n=0;for(;n<e.length;){let[r,o,s,a]=function(e,t){let n;if(t>=e.length)return[null,null,null,t];let[r,o]=d(e,t),s=7&r,a=o;if(0===s)[n,a]=d(e,a);else if(2===s){let[t,r]=d(e,a);n=e.slice(r,r+t),a=r+t}else 1===s?(n=e.slice(a,a+8),a+=8):5===s?(n=e.slice(a,a+4),a+=4):n=null;return[r>>3,s,n,a]}(e,n);if(null===r)break;t.has(r)||t.set(r,[]),t.get(r).push({wireType:o,value:s}),n=a}return t}function h(e){try{let t=f(e);for(let e of t.keys())i.has(e)||o("SCHEMA",`Unknown response field #${e} detected. Schema v${a} may be outdated.`);if(t.has(1)){let e=function(e){let t=f(e),n="",r="",a="",i=!1;if(t.has(3)&&(n=s.decode(t.get(3)[0].value)),t.has(9)&&(r=s.decode(t.get(9)[0].value)),t.has(11)?i=0!==t.get(11)[0].value:t.has(15)&&(i=0!==t.get(15)[0].value),t.has(27))try{let e=f(t.get(27)[0].value);if(e.has(1)){let t=f(e.get(1)[0].value);t.has(1)&&(r=s.decode(t.get(1)[0].value)),t.has(3)&&(a=s.decode(t.get(3)[0].value))}}catch(e){o("EXTRACT",`MCP parse error: ${e.message}`)}return(!a&&t.has(10)&&(a=s.decode(t.get(10)[0].value)),n&&r)?{id:n,type:"function",function:{name:r,arguments:a||"{}"},isLast:i}:null}(t.get(1)[0].value);if(e)return o("EXTRACT",`Tool call: ${e.function.name}`),{text:null,error:null,toolCall:e,thinking:null}}if(t.has(2)){let{text:e,thinking:n}=function(e){let t=f(e),n=null,r=null;if(t.has(1)&&(n=s.decode(t.get(1)[0].value)),t.has(25))try{let e=f(t.get(25)[0].value);e.has(1)&&(r=s.decode(e.get(1)[0].value))}catch(e){o("EXTRACT",`Thinking parse error: ${e.message}`)}return{text:n,thinking:r}}(t.get(2)[0].value);if(e||n)return{text:e,error:null,toolCall:null,thinking:n}}return{text:null,error:null,toolCall:null,thinking:null}}catch(t){return o("EXTRACT",`Decode failed (schema v${a}): ${t.message}`),{text:null,error:null,toolCall:null,thinking:null,raw:Buffer.from(e).toString("base64"),decodeError:t.message}}}e.s(["extractTextFromResponse",()=>h,"generateCursorBody",()=>p])},954372,e=>{"use strict";e.i(312125);var t=e.i(400722),n=e.i(496727);let r={reset:"\x1b[0m",red:"\x1b[31m",green:"\x1b[32m",yellow:"\x1b[33m",blue:"\x1b[34m",cyan:"\x1b[36m"};function o(e){if(!e||"object"!=typeof e)return e;let t={...e};return void 0!==t.input_tokens&&(t.input_tokens+=2e3),void 0!==t.prompt_tokens&&(t.prompt_tokens+=2e3),void 0!==t.total_tokens?t.total_tokens+=2e3:void 0!==t.prompt_tokens&&void 0!==t.completion_tokens&&(t.total_tokens=t.prompt_tokens+t.completion_tokens),t}function s(e,t){if(!e||"object"!=typeof e)return e;let r={[n.FORMATS.CLAUDE]:["input_tokens","output_tokens","cache_read_input_tokens","cache_creation_input_tokens","estimated"],[n.FORMATS.GEMINI]:["promptTokenCount","candidatesTokenCount","totalTokenCount","cachedContentTokenCount","thoughtsTokenCount","estimated"],[n.FORMATS.OPENAI_RESPONSES]:["input_tokens","output_tokens","input_tokens_details","output_tokens_details","estimated"],default:["prompt_tokens","completion_tokens","total_tokens","cached_tokens","reasoning_tokens","prompt_tokens_details","completion_tokens_details","estimated"]},o=r[t];t===n.FORMATS.GEMINI_CLI||t===n.FORMATS.ANTIGRAVITY?o=r[n.FORMATS.GEMINI]:t===n.FORMATS.OPENAI_RESPONSE?o=r[n.FORMATS.OPENAI_RESPONSES]:o||(o=r.default);let s={};for(let t of o)void 0!==e[t]&&(s[t]=e[t]);return s}function a(e){if(!e||"object"!=typeof e||Array.isArray(e))return null;let t={},n=(e,n)=>{if(null==n)return;let r=Number(n);Number.isFinite(r)&&(t[e]=r)};return(n("prompt_tokens",e?.prompt_tokens),n("completion_tokens",e?.completion_tokens),n("total_tokens",e?.total_tokens),n("cache_read_input_tokens",e?.cache_read_input_tokens),n("cache_creation_input_tokens",e?.cache_creation_input_tokens),n("cached_tokens",e?.cached_tokens),n("reasoning_tokens",e?.reasoning_tokens),0===Object.keys(t).length)?null:t}function i(e){if(!e||"object"!=typeof e)return!1;for(let t of["prompt_tokens","completion_tokens","total_tokens","input_tokens","output_tokens","promptTokenCount","candidatesTokenCount"])if("number"==typeof e[t]&&e[t]>0)return!0;return!1}function l(e){if(!e||"object"!=typeof e)return null;if("message_start"===e.type&&e.message?.usage){let t=e.message.usage,n=t.input_tokens||t.prompt_tokens||0;if(n>0)return a({prompt_tokens:n,completion_tokens:t.output_tokens||t.completion_tokens||0,cache_read_input_tokens:t.cache_read_input_tokens,cache_creation_input_tokens:t.cache_creation_input_tokens})}if("message_delta"===e.type&&e.usage&&"object"==typeof e.usage)return a({prompt_tokens:e.usage.input_tokens||0,completion_tokens:e.usage.output_tokens||0,cache_read_input_tokens:e.usage.cache_read_input_tokens,cache_creation_input_tokens:e.usage.cache_creation_input_tokens});if(("response.completed"===e.type||"response.done"===e.type)&&e.response?.usage&&"object"==typeof e.response.usage){let t=e.response.usage;return a({prompt_tokens:t.input_tokens||t.prompt_tokens||0,completion_tokens:t.output_tokens||t.completion_tokens||0,cached_tokens:t.input_tokens_details?.cached_tokens,reasoning_tokens:t.output_tokens_details?.reasoning_tokens})}return e.usage&&"object"==typeof e.usage&&void 0!==e.usage.prompt_tokens?a({prompt_tokens:e.usage.prompt_tokens,completion_tokens:e.usage.completion_tokens||0,cached_tokens:e.usage.prompt_tokens_details?.cached_tokens,reasoning_tokens:e.usage.completion_tokens_details?.reasoning_tokens}):e.usageMetadata&&"object"==typeof e.usageMetadata?a({prompt_tokens:e.usageMetadata?.promptTokenCount||0,completion_tokens:e.usageMetadata?.candidatesTokenCount||0,total_tokens:e.usageMetadata?.totalTokenCount,cached_tokens:e.usageMetadata?.cachedContentTokenCount,reasoning_tokens:e.usageMetadata?.thoughtsTokenCount}):null}function c(e){if(!e||"string"!=typeof e)return 0;let t=e.match(/[\u3000-\u9fff\uf900-\ufaff\u{20000}-\u{2fa1f}]/gu);return(t?t.length:0)+Math.ceil(1.3*e.replace(/[\u3000-\u9fff\uf900-\ufaff]/g," ").split(/(\s+|[^\w\s]|(?<=[a-z])(?=[A-Z]))/).filter(e=>e&&e.trim().length>0).length)}function u(e,t,r=n.FORMATS.OPENAI){var s,a;return s=function(e){if(!e||"object"!=typeof e)return 0;try{let t=0,n=0;if(e.tools&&Array.isArray(e.tools)){let r=JSON.stringify(e.tools);t=Math.ceil(r.length/6);let{tools:o,...s}=e;n=c(JSON.stringify(s))}else n=c(JSON.stringify(e));return n+t}catch(e){return 0}}(e),a=t&&!(t<=0)?Math.max(1,Math.ceil(t/3.5)):0,r===n.FORMATS.CLAUDE?o({input_tokens:s,output_tokens:a,estimated:!0}):o({prompt_tokens:s,completion_tokens:a,total_tokens:s+a,estimated:!0})}function p(e,n,o=null,s=null,a=null){if(!n||"object"!=typeof n)return;let i=e?.toUpperCase()||"UNKNOWN",l=n?.prompt_tokens||n?.input_tokens||0,c=n?.completion_tokens||n?.output_tokens||0,u=s?s.slice(0,8)+"...":"unknown",d=`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 📊 ${r.green}[USAGE] ${i} | in=${l} | out=${c} | account=${u}${r.reset}`;n.estimated&&(d+=` ${r.yellow}(estimated)${r.reset}`);let f=n.cache_read_input_tokens||n.cached_tokens;f&&(d+=` | cache_read=${f}`);let h=n.cache_creation_input_tokens;h&&(d+=` | cache_create=${h}`);let g=n.reasoning_tokens;g&&(d+=` | reasoning=${g}`),console.log(d);let m={input:l+(f||0)+(h||0),output:c,cacheRead:f||0,cacheCreation:h||0,reasoning:g||0};(0,t.saveRequestUsage)({model:o,provider:e,connectionId:s,apiKeyId:a?.id||void 0,apiKeyName:a?.name||void 0,tokens:m}).catch(()=>{}),(0,t.appendRequestLog)({model:o,provider:e,connectionId:s,tokens:m,status:"200 OK"}).catch(()=>{})}e.s(["COLORS",0,r,"addBufferToUsage",()=>o,"estimateUsage",()=>u,"extractUsage",()=>l,"filterUsageForFormat",()=>s,"hasValidUsage",()=>i,"logUsage",()=>p])},189384,e=>{"use strict";var t=e.i(666680);let n=function(e){return Array.isArray(e)?e=Buffer.from(e):"string"==typeof e&&(e=Buffer.from(e,"utf8")),(0,t.createHash)("sha1").update(e).digest()};var r=e.i(684076);let o=function(e){let t;if(!(0,r.default)(e))throw TypeError("Invalid UUID");return Uint8Array.of((t=parseInt(e.slice(0,8),16))>>>24,t>>>16&255,t>>>8&255,255&t,(t=parseInt(e.slice(9,13),16))>>>8,255&t,(t=parseInt(e.slice(14,18),16))>>>8,255&t,(t=parseInt(e.slice(19,23),16))>>>8,255&t,(t=parseInt(e.slice(24,36),16))/0x10000000000&255,t/0x100000000&255,t>>>24&255,t>>>16&255,t>>>8&255,255&t)};var s=e.i(730901);function a(e,t,r,a){var i=t,l=a;let c="string"==typeof e?function(e){let t=new Uint8Array((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<e.length;++n)t[n]=e.charCodeAt(n);return t}(e):e,u="string"==typeof i?o(i):i;if("string"==typeof i&&(i=o(i)),i?.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let p=new Uint8Array(16+c.length);if(p.set(u),p.set(c,u.length),(p=n(p))[6]=15&p[6]|80,p[8]=63&p[8]|128,r){l=l||0;for(let e=0;e<16;++e)r[l+e]=p[e];return r}return(0,s.unsafeStringify)(p)}a.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",a.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",e.s(["v5",0,a],189384)},655475,e=>e.a(async(t,n)=>{try{var r=e.i(511938),o=e.i(16023),s=e.i(14018),a=e.i(954372),i=e.i(496727),l=e.i(254799),c=e.i(189384),u=e.i(406461);let t=null;if(!("u">typeof caches&&"object"==typeof caches||"u">typeof EdgeRuntime))try{t=await e.A(901259)}catch{}let f="1"===process.env.CURSOR_STREAM_DEBUG,h=(...e)=>{f&&console.log(...e)};function p(e,t){if(e.length>10&&123===e[0]&&34===e[1])try{if(e.toString("utf-8").startsWith('{"error"'))return h("[DECOMPRESS] Detected JSON error, skipping decompression"),e}catch{}if(1===t||2===t||3===t)try{return u.default.gunzipSync(e)}catch(n){try{return u.default.inflateSync(e)}catch(r){try{return u.default.inflateRawSync(e)}catch(o){h(`[DECOMPRESS ERROR] flags=${t}, payloadSize=${e.length}, gzip=${n.message}, deflate=${r.message}, raw=${o.message}`),h("[DECOMPRESS ERROR] First 50 bytes (hex):",e.slice(0,50).toString("hex")),h("[DECOMPRESS ERROR] First 50 bytes (utf8):",e.slice(0,50).toString("utf8").replace(/[^\x20-\x7E]/g,"."))}}}return e}function d(e){let t=e?.error?.details?.[0]?.debug?.details?.title||e?.error?.details?.[0]?.debug?.details?.detail||e?.error?.message||"API Error",n=e?.error?.code==="resource_exhausted";return new Response(JSON.stringify({error:{message:t,type:n?"rate_limit_error":"api_error",code:e?.error?.details?.[0]?.debug?.error||"unknown"}}),{status:n?o.HTTP_STATUS.RATE_LIMITED:o.HTTP_STATUS.BAD_REQUEST,headers:{"Content-Type":"application/json"}})}class g extends r.BaseExecutor{constructor(){super("cursor",o.PROVIDERS.cursor)}buildUrl(){return`${this.config.baseUrl}${this.config.chatPath||""}`}generateChecksum(e){let t=Math.floor(Date.now()/1e6),n=new Uint8Array([t>>40&255,t>>32&255,t>>24&255,t>>16&255,t>>8&255,255&t]),r=165;for(let e=0;e<n.length;e++)n[e]=(n[e]^r)+e%256&255,r=n[e];let o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",s="";for(let e=0;e<n.length;e+=3){let t=n[e],r=e+1<n.length?n[e+1]:0,a=e+2<n.length?n[e+2]:0;s+=o[t>>2],s+=o[(3&t)<<4|r>>4],e+1<n.length&&(s+=o[(15&r)<<2|a>>6]),e+2<n.length&&(s+=o[63&a])}return`${s}${e}`}buildHeaders(e){let t=e.accessToken,n=e.providerSpecificData?.machineId,r=e.providerSpecificData?.ghostMode!==!1;if(!n)throw Error("Machine ID is required for Cursor API");let o=t.includes("::")?t.split("::")[1]:t;return{authorization:`Bearer ${o}`,"connect-accept-encoding":"gzip","connect-protocol-version":"1","content-type":"application/connect+proto","user-agent":"connect-es/1.6.1","x-amzn-trace-id":`Root=${l.default.randomUUID()}`,"x-client-key":l.default.createHash("sha256").update(o).digest("hex"),"x-cursor-checksum":this.generateChecksum(n),"x-cursor-client-version":"2.3.41","x-cursor-client-type":"ide","x-cursor-client-os":"linux","x-cursor-client-arch":"x64","x-cursor-client-device-type":"desktop","x-cursor-config-version":l.default.randomUUID(),"x-cursor-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC","x-ghost-mode":r?"true":"false","x-request-id":l.default.randomUUID(),"x-session-id":(0,c.v5)(o,c.v5.DNS)}}transformRequest(e,t,n,r){let o=t.messages||[],a=t.tools||[],i=t.reasoning_effort||null;return(0,s.generateCursorBody)(o,e,a,i)}async makeFetchRequest(e,t,n,r){let o=await fetch(e,{method:"POST",headers:t,body:n,signal:r});return{status:o.status,headers:Object.fromEntries(o.headers.entries()),body:Buffer.from(await o.arrayBuffer())}}makeHttp2Request(e,n,r,s){if(!t)throw Error("http2 module not available");return new Promise((a,i)=>{let l=new URL(e),c=t.connect(`https://${l.host}`),u=[],p={};c.on("error",i);let d=c.request({":method":"POST",":path":l.pathname,":authority":l.host,":scheme":"https",...n});d.on("response",e=>{p=e}),d.on("data",e=>{u.push(e)}),d.on("end",()=>{c.close(),a({status:"number"==typeof p[":status"]?p[":status"]:Number(p[":status"]||o.HTTP_STATUS.SERVER_ERROR),headers:p,body:Buffer.concat(u)})}),d.on("error",e=>{c.close(),i(e)}),s&&s.addEventListener("abort",()=>{d.close(),c.close(),i(Error("Request aborted"))}),d.write(r),d.end()})}async execute({model:e,body:n,stream:s,credentials:a,signal:i,log:l,upstreamExtraHeaders:c}){let u=this.buildUrl(),p=this.buildHeaders(a);(0,r.mergeUpstreamExtraHeaders)(p,c);let d=this.transformRequest(e,n,s,a);try{let r=t?await this.makeHttp2Request(u,p,d,i):await this.makeFetchRequest(u,p,d,i);if(200!==r.status){let e=r.body?.toString()||"Unknown error";return{response:new Response(JSON.stringify({error:{message:`[${r.status}]: ${e}`,type:"invalid_request_error",code:""}}),{status:r.status,headers:{"Content-Type":"application/json"}}),url:u,headers:p,transformedBody:n}}return{response:!1!==s?this.transformProtobufToSSE(r.body,e,n):this.transformProtobufToJSON(r.body,e,n),url:u,headers:p,transformedBody:n}}catch(e){return{response:new Response(JSON.stringify({error:{message:e.message,type:"connection_error",code:""}}),{status:o.HTTP_STATUS.SERVER_ERROR,headers:{"Content-Type":"application/json"}}),url:u,headers:p,transformedBody:n}}}transformProtobufToJSON(e,t,n){let r=`chatcmpl-cursor-${Date.now()}`,l=Math.floor(Date.now()/1e3),c=0,u="",f=[],g=new Map,m=new Set,y=0;for(h(`[CURSOR BUFFER] Total length: ${e.length} bytes`);c<e.length;){if(c+5>e.length){h(`[CURSOR BUFFER] Reached end, offset=${c}, remaining=${e.length-c}`);break}let t=e[c],n=e.readUInt32BE(c+1);if(h(`[CURSOR BUFFER] Frame ${y+1}: flags=0x${t.toString(16).padStart(2,"0")}, length=${n}`),c+5+n>e.length){h(`[CURSOR BUFFER] Incomplete frame, offset=${c}, length=${n}, buffer.length=${e.length}`);break}let r=e.slice(c+5,c+5+n);if(c+=5+n,y++,!(r=p(r,t))){h(`[CURSOR BUFFER] Frame ${y}: decompression failed, skipping`);continue}if(r.length>0&&123===r[0])try{let e=r.toString("utf-8");if(e.includes('"error"')){let t=u||g.size>0;if(h(`[CURSOR BUFFER] Error frame (hasContent=${t}): ${e.slice(0,500)}`),t)break;return d(JSON.parse(e))}}catch{}let a=(0,s.extractTextFromResponse)(new Uint8Array(r));if(h(`[CURSOR DECODED] Frame ${y}:`,a),a.error){let e=u||g.size>0;if(h(`[CURSOR BUFFER] Decoded error (hasContent=${e}): ${a.error}`),e)break;return new Response(JSON.stringify({error:{message:a.error,type:"rate_limit_error",code:"rate_limited"}}),{status:o.HTTP_STATUS.RATE_LIMITED,headers:{"Content-Type":"application/json"}})}if(a.toolCall){let e=a.toolCall;if(g.has(e.id)){let t=g.get(e.id);t.function.arguments+=e.function.arguments,t.isLast=e.isLast}else g.set(e.id,{...e});if(e.isLast){let t=g.get(e.id);m.add(e.id),f.push({id:t.id,type:t.type,function:{name:t.function.name,arguments:t.function.arguments}})}}a.text&&(u+=a.text)}for(let[e,t]of(h(`[CURSOR BUFFER] Parsed ${y} frames, toolCallsMap size: ${g.size}, finalized toolCalls: ${f.length}`),g.entries()))m.has(e)||(h(`[CURSOR BUFFER] Finalizing incomplete tool call: ${e}, isLast=${t.isLast}`),f.push({id:t.id,type:t.type,function:{name:t.function.name,arguments:t.function.arguments}}));h(`[CURSOR BUFFER] Final toolCalls count: ${f.length}`);let _={role:"assistant",content:u||null};f.length>0&&(_.tool_calls=f);let k=(0,a.estimateUsage)(n,u.length,i.FORMATS.OPENAI),E={id:r,object:"chat.completion",created:l,model:t,choices:[{index:0,message:_,finish_reason:f.length>0?"tool_calls":"stop"}],usage:k};return new Response(JSON.stringify(E),{status:200,headers:{"Content-Type":"application/json"}})}transformProtobufToSSE(e,t,n){let r=`chatcmpl-cursor-${Date.now()}`,l=Math.floor(Date.now()/1e3),c=[],u=0,f="",g=[],m=new Map,y=new Set,_=new Set,k=0;for(h(`[CURSOR BUFFER SSE] Total length: ${e.length} bytes`);u<e.length;){if(u+5>e.length){h(`[CURSOR BUFFER SSE] Reached end, offset=${u}, remaining=${e.length-u}`);break}let n=e[u],a=e.readUInt32BE(u+1);if(h(`[CURSOR BUFFER SSE] Frame ${k+1}: flags=0x${n.toString(16).padStart(2,"0")}, length=${a}`),u+5+a>e.length){h(`[CURSOR BUFFER SSE] Incomplete frame, offset=${u}, length=${a}, buffer.length=${e.length}`);break}let i=e.slice(u+5,u+5+a);if(u+=5+a,k++,!(i=p(i,n))){h(`[CURSOR BUFFER SSE] Frame ${k}: decompression failed, skipping`);continue}if(123===i[0])try{let e=i.toString("utf-8");if(e.includes('"error"')){let t=c.length>0||f||m.size>0;if(h(`[CURSOR BUFFER SSE] Error frame (hasContent=${t}): ${e.slice(0,500)}`),t)break;return d(JSON.parse(e))}}catch{}let E=(0,s.extractTextFromResponse)(new Uint8Array(i));if(h(`[CURSOR DECODED SSE] Frame ${k}:`,E),E.error){let e=c.length>0||f||m.size>0;if(h(`[CURSOR BUFFER SSE] Decoded error (hasContent=${e}): ${E.error}`),e)break;return new Response(JSON.stringify({error:{message:E.error,type:"rate_limit_error",code:"rate_limited"}}),{status:o.HTTP_STATUS.RATE_LIMITED,headers:{"Content-Type":"application/json"}})}if(E.toolCall){let e=E.toolCall;if(0===c.length&&c.push(`data: ${JSON.stringify({id:r,object:"chat.completion.chunk",created:l,model:t,choices:[{index:0,delta:{role:"assistant",content:""},finish_reason:null}]})}
|
|
19
|
+
`))}e.enqueue(new TextEncoder().encode("data: [DONE]\n\n"))}});return new Response(e.body.pipeThrough(l),{status:e.status,statusText:e.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}async refreshCredentials(e,t){if(!e.refreshToken)return null;try{return await (0,o.refreshKiroToken)(e.refreshToken,e.providerSpecificData,t)}catch(n){let e=n instanceof Error?n:Error(String(n));return t?.error?.("TOKEN",`Kiro refresh error: ${e.message}`),null}}}e.s(["KiroExecutor",()=>i])},406461,(e,t,n)=>{t.exports=e.x("zlib",()=>require("zlib"))},14018,e=>{"use strict";var t=e.i(689960),n=e.i(406461);let r="1"===process.env.CURSOR_PROTOBUF_DEBUG,o=(e,...t)=>r&&console.log(`[PROTOBUF:${e}]`,...t),s=new TextDecoder,a="1.1.3",i=new Set([1,2,3,9,10,11,27,1,25]);function l(e){let t=[];for(;e>=128;)t.push(127&e|128),e>>>=7;return t.push(127&e),new Uint8Array(t)}function c(e,t,n){let r=l(e<<3|t);if(0===t)return u(r,l(n));if(2===t){let e="string"==typeof n?new TextEncoder().encode(n):n instanceof Uint8Array?n:Buffer.isBuffer(n)?new Uint8Array(n):new Uint8Array(0);return u(r,l(e.length),e)}return new Uint8Array(0)}function u(...e){let t=new Uint8Array(e.reduce((e,t)=>e+t.length,0)),n=0;for(let r of e)t.set(r,n),n+=r.length;return t}function p(e,r,s=[],a=null){o("BODY",`Generating: ${e.length} msgs, model=${r}, tools=${s.length}, reasoning=${a||"none"}`);let i=function(e,n,r=[],s=null){return c(1,2,function(e,n,r=[],s=null){let a,i=r?.length>0,p=[],d=[],f=[];for(let t=0;t<e.length;t++){let n=e[t],r=Array.isArray(n?.tool_calls)&&n.tool_calls.length>0,s=Array.isArray(n?.tool_results)&&n.tool_results.length>0;if(n?.role==="assistant"&&r&&s){o("ENCODE",`normalizing mixed assistant tool payload at msg[${t}] (calls=${n.tool_calls.length}, results=${n.tool_results.length})`),f.push({...n,tool_results:[]});let r=e[t+1],s=r?.role==="assistant"&&Array.isArray(r?.tool_results)&&r.tool_results.length>0,a=new Set(n.tool_results.map(e=>e?.tool_call_id).filter(e=>"string"==typeof e)),i=new Set((r?.tool_results||[]).map(e=>e?.tool_call_id).filter(e=>"string"==typeof e)),l=a.size>0&&a.size===i.size;if(l){for(let e of a)if(!i.has(e)){l=!1;break}}s&&l||f.push({role:"assistant",content:"",tool_results:n.tool_results});continue}f.push(n)}for(let e=0;e<f.length;e++){let n=f[e],r="user"===n.role?1:2,o=(0,t.v4)(),s=e===f.length-1;p.push({content:n.content,role:r,messageId:o,isLast:s,hasTools:i,toolResults:n.tool_results||[]}),d.push({messageId:o,role:r})}let h=0;return"medium"===s?h=1:"high"===s&&(h=2),u(...p.map(e=>c(1,2,function(e,t,n,r=null,o=!1,s=!1,a=[]){return u(c(1,2,e),c(2,0,t),c(13,2,n),...a.length>0?a.map(e=>c(18,2,function(e){var t,n,r,o,s;let a,{toolCallId:i,modelCallId:l}=function(e){if("string"!=typeof e||0===e.length)return{toolCallId:"",modelCallId:null};let t="\nmc_",n=e.indexOf(t);return n>=0?{toolCallId:e.slice(0,n),modelCallId:e.slice(n+t.length)}:{toolCallId:e,modelCallId:null}}(e.tool_call_id||""),p=function(e){let t="string"==typeof e&&e.length>0?e:"tool";if(t.startsWith("mcp__")){let e=t.slice(5),n=e.indexOf("__");if(n>=0){let t=e.slice(0,n)||"custom",r=e.slice(n+2)||"tool";return`mcp_${t}_${r}`}return`mcp_custom_${e||"tool"}`}return t.startsWith("mcp_")?t:`mcp_custom_${t}`}(e.name||""),{selectedTool:d,serverName:f}=function(e){if("string"!=typeof e||!e.startsWith("mcp_"))return{serverName:"custom",selectedTool:e||"tool"};let t=e.slice(4),n=t.indexOf("_");return n<0?{serverName:"custom",selectedTool:t||"tool"}:{serverName:t.slice(0,n)||"custom",selectedTool:t.slice(n+1)||"tool"}}(p),h=e.index>0?e.index:1,g=e.raw_args||"{}",m=(t=i,n=l,r=d,o=h,s=e.result||"",a=u(c(1,2,"string"==typeof r&&r.length>0?r:"tool"),c(2,2,"string"==typeof s?s:"")),u(c(1,0,19),c(28,2,a),...t?[c(35,2,t)]:[],...n?[c(48,2,n)]:[],c(49,0,o))),_=function(e,t,n,r,o,s,a){let i;return u(c(1,0,19),c(27,2,(i=u(c(1,2,r||"tool"),c(3,2,s||"{}"),c(4,2,o||"custom")),c(1,2,i))),...e?[c(3,2,e)]:[],c(9,2,n||"tool"),c(10,2,s||"{}"),c(48,0,a>0?a:1),...t?[c(49,2,t)]:[])}(i,l,p,d,f,g,h);return u(c(1,2,i),c(2,2,p),c(3,0,h),...l?[c(12,2,l)]:[],c(5,2,g),...m?[c(8,2,m)]:[],c(11,2,_))}(e))):[],c(29,0,+!!s),c(47,0,s?2:1),...o&&s?[c(51,2,l(1))]:[])}(e.content,e.role,e.messageId,null,e.isLast,e.hasTools,e.toolResults))),c(2,0,1),c(3,2,new Uint8Array(0)),c(4,0,1),c(5,2,u(c(1,2,n),c(4,2,new Uint8Array(0)))),c(8,2,""),c(13,0,1),c(15,2,(a=u(c(1,2,new Uint8Array(0)),c(2,2,new Uint8Array(0))),u(c(1,2,"cursor\\aisettings"),c(3,2,new Uint8Array(0)),c(6,2,a),c(8,0,1),c(9,0,1)))),c(19,0,1),c(23,2,(0,t.v4)()),c(26,2,u(c(1,2,process.platform||"linux"),c(2,2,process.arch||"x64"),c(3,2,process.version||"v20.0.0"),c(4,2,process.cwd?.()||"/"),c(5,2,new Date().toISOString()))),c(27,0,+!!i),...i?[c(29,2,l(1))]:[],...d.map(e=>c(30,2,function(e,t,n=null){return u(c(1,2,e),...n?[c(2,2,n)]:[],c(3,0,t))}(e.messageId,e.role))),...r?.length>0?r.map(e=>{let t,n,r;return c(34,2,(t=e.function?.name||e.name||"",n=e.function?.description||e.description||"",r=e.function?.parameters||e.input_schema||{},u(...t?[c(1,2,t)]:[],...n?[c(2,2,n)]:[],...Object.keys(r).length>0?[c(3,2,JSON.stringify(r))]:[],c(4,2,"custom"))))}):[],c(35,0,0),c(38,0,0),c(46,0,i?2:1),c(47,2,""),c(48,0,+!i),c(49,0,h),c(51,0,0),c(53,0,1),c(54,2,i?"Agent":"Ask"))}(e,n,r,s))}(e,r,s,a),d=function(e,t=!1){let r=e,o=0;t&&(r=new Uint8Array(n.default.gzipSync(Buffer.from(e))),o=1);let s=new Uint8Array(5+r.length);return s[0]=o,s[1]=r.length>>24&255,s[2]=r.length>>16&255,s[3]=r.length>>8&255,s[4]=255&r.length,s.set(r,5),s}(i,!1);return o("BODY",`Protobuf=${i.length}B, Framed=${d.length}B`),d}function d(e,t){let n=0,r=0,o=t;for(;o<e.length;){let t=e[o];if(n|=(127&t)<<r,o++,!(128&t))break;r+=7}return[n,o]}function f(e){let t=new Map,n=0;for(;n<e.length;){let[r,o,s,a]=function(e,t){let n;if(t>=e.length)return[null,null,null,t];let[r,o]=d(e,t),s=7&r,a=o;if(0===s)[n,a]=d(e,a);else if(2===s){let[t,r]=d(e,a);n=e.slice(r,r+t),a=r+t}else 1===s?(n=e.slice(a,a+8),a+=8):5===s?(n=e.slice(a,a+4),a+=4):n=null;return[r>>3,s,n,a]}(e,n);if(null===r)break;t.has(r)||t.set(r,[]),t.get(r).push({wireType:o,value:s}),n=a}return t}function h(e){try{let t=f(e);for(let e of t.keys())i.has(e)||o("SCHEMA",`Unknown response field #${e} detected. Schema v${a} may be outdated.`);if(t.has(1)){let e=function(e){let t=f(e),n="",r="",a="",i=!1;if(t.has(3)&&(n=s.decode(t.get(3)[0].value)),t.has(9)&&(r=s.decode(t.get(9)[0].value)),t.has(11)?i=0!==t.get(11)[0].value:t.has(15)&&(i=0!==t.get(15)[0].value),t.has(27))try{let e=f(t.get(27)[0].value);if(e.has(1)){let t=f(e.get(1)[0].value);t.has(1)&&(r=s.decode(t.get(1)[0].value)),t.has(3)&&(a=s.decode(t.get(3)[0].value))}}catch(e){o("EXTRACT",`MCP parse error: ${e.message}`)}return(!a&&t.has(10)&&(a=s.decode(t.get(10)[0].value)),n&&r)?{id:n,type:"function",function:{name:r,arguments:a||"{}"},isLast:i}:null}(t.get(1)[0].value);if(e)return o("EXTRACT",`Tool call: ${e.function.name}`),{text:null,error:null,toolCall:e,thinking:null}}if(t.has(2)){let{text:e,thinking:n}=function(e){let t=f(e),n=null,r=null;if(t.has(1)&&(n=s.decode(t.get(1)[0].value)),t.has(25))try{let e=f(t.get(25)[0].value);e.has(1)&&(r=s.decode(e.get(1)[0].value))}catch(e){o("EXTRACT",`Thinking parse error: ${e.message}`)}return{text:n,thinking:r}}(t.get(2)[0].value);if(e||n)return{text:e,error:null,toolCall:null,thinking:n}}return{text:null,error:null,toolCall:null,thinking:null}}catch(t){return o("EXTRACT",`Decode failed (schema v${a}): ${t.message}`),{text:null,error:null,toolCall:null,thinking:null,raw:Buffer.from(e).toString("base64"),decodeError:t.message}}}e.s(["extractTextFromResponse",()=>h,"generateCursorBody",()=>p])},954372,e=>{"use strict";e.i(312125);var t=e.i(400722),n=e.i(496727);let r={reset:"\x1b[0m",red:"\x1b[31m",green:"\x1b[32m",yellow:"\x1b[33m",blue:"\x1b[34m",cyan:"\x1b[36m"};function o(e){if(!e||"object"!=typeof e)return e;let t={...e};return void 0!==t.input_tokens&&(t.input_tokens+=2e3),void 0!==t.prompt_tokens&&(t.prompt_tokens+=2e3),void 0!==t.total_tokens?t.total_tokens+=2e3:void 0!==t.prompt_tokens&&void 0!==t.completion_tokens&&(t.total_tokens=t.prompt_tokens+t.completion_tokens),t}function s(e,t){if(!e||"object"!=typeof e)return e;let r={...e};t===n.FORMATS.CLAUDE||t===n.FORMATS.OPENAI_RESPONSES?(void 0!==r.prompt_tokens&&void 0===r.input_tokens&&(r.input_tokens=r.prompt_tokens),void 0!==r.completion_tokens&&void 0===r.output_tokens&&(r.output_tokens=r.completion_tokens)):(void 0!==r.input_tokens&&void 0===r.prompt_tokens&&(r.prompt_tokens=r.input_tokens),void 0!==r.output_tokens&&void 0===r.completion_tokens&&(r.completion_tokens=r.output_tokens),void 0===r.total_tokens&&void 0!==r.prompt_tokens&&void 0!==r.completion_tokens&&(r.total_tokens=r.prompt_tokens+r.completion_tokens));let o={[n.FORMATS.CLAUDE]:["input_tokens","output_tokens","cache_read_input_tokens","cache_creation_input_tokens","estimated"],[n.FORMATS.GEMINI]:["promptTokenCount","candidatesTokenCount","totalTokenCount","cachedContentTokenCount","thoughtsTokenCount","estimated"],[n.FORMATS.OPENAI_RESPONSES]:["input_tokens","output_tokens","input_tokens_details","output_tokens_details","estimated"],default:["prompt_tokens","completion_tokens","total_tokens","cached_tokens","reasoning_tokens","prompt_tokens_details","completion_tokens_details","estimated"]},s=o[t];t===n.FORMATS.GEMINI_CLI||t===n.FORMATS.ANTIGRAVITY?s=o[n.FORMATS.GEMINI]:t===n.FORMATS.OPENAI_RESPONSE?s=o[n.FORMATS.OPENAI_RESPONSES]:s||(s=o.default);let a={};for(let e of s)void 0!==r[e]&&(a[e]=r[e]);return a}function a(e){if(!e||"object"!=typeof e||Array.isArray(e))return null;let t={},n=(e,n)=>{if(null==n)return;let r=Number(n);Number.isFinite(r)&&(t[e]=r)};return(n("prompt_tokens",e?.prompt_tokens),n("completion_tokens",e?.completion_tokens),n("total_tokens",e?.total_tokens),n("cache_read_input_tokens",e?.cache_read_input_tokens),n("cache_creation_input_tokens",e?.cache_creation_input_tokens),n("cached_tokens",e?.cached_tokens),n("reasoning_tokens",e?.reasoning_tokens),0===Object.keys(t).length)?null:t}function i(e){if(!e||"object"!=typeof e)return!1;for(let t of["prompt_tokens","completion_tokens","total_tokens","input_tokens","output_tokens","promptTokenCount","candidatesTokenCount"])if("number"==typeof e[t]&&e[t]>0)return!0;return!1}function l(e){if(!e||"object"!=typeof e)return null;if("message_start"===e.type&&e.message?.usage){let t=e.message.usage,n=t.input_tokens||t.prompt_tokens||0;if(n>0)return a({prompt_tokens:n,completion_tokens:t.output_tokens||t.completion_tokens||0,cache_read_input_tokens:t.cache_read_input_tokens,cache_creation_input_tokens:t.cache_creation_input_tokens})}if("message_delta"===e.type&&e.usage&&"object"==typeof e.usage)return a({prompt_tokens:e.usage.input_tokens||0,completion_tokens:e.usage.output_tokens||0,cache_read_input_tokens:e.usage.cache_read_input_tokens,cache_creation_input_tokens:e.usage.cache_creation_input_tokens});if(("response.completed"===e.type||"response.done"===e.type)&&e.response?.usage&&"object"==typeof e.response.usage){let t=e.response.usage;return a({prompt_tokens:t.input_tokens||t.prompt_tokens||0,completion_tokens:t.output_tokens||t.completion_tokens||0,cached_tokens:t.input_tokens_details?.cached_tokens,reasoning_tokens:t.output_tokens_details?.reasoning_tokens})}return e.usage&&"object"==typeof e.usage&&(void 0!==e.usage.prompt_tokens||void 0!==e.usage.input_tokens)?a({prompt_tokens:e.usage.prompt_tokens??e.usage.input_tokens??0,completion_tokens:e.usage.completion_tokens??e.usage.output_tokens??0,cached_tokens:e.usage.prompt_tokens_details?.cached_tokens,reasoning_tokens:e.usage.completion_tokens_details?.reasoning_tokens}):e.usageMetadata&&"object"==typeof e.usageMetadata?a({prompt_tokens:e.usageMetadata?.promptTokenCount||0,completion_tokens:e.usageMetadata?.candidatesTokenCount||0,total_tokens:e.usageMetadata?.totalTokenCount,cached_tokens:e.usageMetadata?.cachedContentTokenCount,reasoning_tokens:e.usageMetadata?.thoughtsTokenCount}):null}function c(e){if(!e||"string"!=typeof e)return 0;let t=e.match(/[\u3000-\u9fff\uf900-\ufaff\u{20000}-\u{2fa1f}]/gu);return(t?t.length:0)+Math.ceil(1.3*e.replace(/[\u3000-\u9fff\uf900-\ufaff]/g," ").split(/(\s+|[^\w\s]|(?<=[a-z])(?=[A-Z]))/).filter(e=>e&&e.trim().length>0).length)}function u(e,t,r=n.FORMATS.OPENAI){var s,a;return s=function(e){if(!e||"object"!=typeof e)return 0;try{let t=0,n=0;if(e.tools&&Array.isArray(e.tools)){let r=JSON.stringify(e.tools);t=Math.ceil(r.length/6);let{tools:o,...s}=e;n=c(JSON.stringify(s))}else n=c(JSON.stringify(e));return n+t}catch(e){return 0}}(e),a=t&&!(t<=0)?Math.max(1,Math.ceil(t/3.5)):0,r===n.FORMATS.CLAUDE?o({input_tokens:s,output_tokens:a,estimated:!0}):o({prompt_tokens:s,completion_tokens:a,total_tokens:s+a,estimated:!0})}function p(e,n,o=null,s=null,a=null){if(!n||"object"!=typeof n)return;let i=e?.toUpperCase()||"UNKNOWN",l=n?.prompt_tokens||n?.input_tokens||0,c=n?.completion_tokens||n?.output_tokens||0,u=s?s.slice(0,8)+"...":"unknown",d=`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 📊 ${r.green}[USAGE] ${i} | in=${l} | out=${c} | account=${u}${r.reset}`;n.estimated&&(d+=` ${r.yellow}(estimated)${r.reset}`);let f=n.cache_read_input_tokens||n.cached_tokens;f&&(d+=` | cache_read=${f}`);let h=n.cache_creation_input_tokens;h&&(d+=` | cache_create=${h}`);let g=n.reasoning_tokens;g&&(d+=` | reasoning=${g}`),console.log(d);let m={input:l+(f||0)+(h||0),output:c,cacheRead:f||0,cacheCreation:h||0,reasoning:g||0};(0,t.saveRequestUsage)({model:o,provider:e,connectionId:s,apiKeyId:a?.id||void 0,apiKeyName:a?.name||void 0,tokens:m}).catch(()=>{}),(0,t.appendRequestLog)({model:o,provider:e,connectionId:s,tokens:m,status:"200 OK"}).catch(()=>{})}e.s(["COLORS",0,r,"addBufferToUsage",()=>o,"estimateUsage",()=>u,"extractUsage",()=>l,"filterUsageForFormat",()=>s,"hasValidUsage",()=>i,"logUsage",()=>p])},189384,e=>{"use strict";var t=e.i(666680);let n=function(e){return Array.isArray(e)?e=Buffer.from(e):"string"==typeof e&&(e=Buffer.from(e,"utf8")),(0,t.createHash)("sha1").update(e).digest()};var r=e.i(684076);let o=function(e){let t;if(!(0,r.default)(e))throw TypeError("Invalid UUID");return Uint8Array.of((t=parseInt(e.slice(0,8),16))>>>24,t>>>16&255,t>>>8&255,255&t,(t=parseInt(e.slice(9,13),16))>>>8,255&t,(t=parseInt(e.slice(14,18),16))>>>8,255&t,(t=parseInt(e.slice(19,23),16))>>>8,255&t,(t=parseInt(e.slice(24,36),16))/0x10000000000&255,t/0x100000000&255,t>>>24&255,t>>>16&255,t>>>8&255,255&t)};var s=e.i(730901);function a(e,t,r,a){var i=t,l=a;let c="string"==typeof e?function(e){let t=new Uint8Array((e=unescape(encodeURIComponent(e))).length);for(let n=0;n<e.length;++n)t[n]=e.charCodeAt(n);return t}(e):e,u="string"==typeof i?o(i):i;if("string"==typeof i&&(i=o(i)),i?.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let p=new Uint8Array(16+c.length);if(p.set(u),p.set(c,u.length),(p=n(p))[6]=15&p[6]|80,p[8]=63&p[8]|128,r){l=l||0;for(let e=0;e<16;++e)r[l+e]=p[e];return r}return(0,s.unsafeStringify)(p)}a.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",a.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",e.s(["v5",0,a],189384)},655475,e=>e.a(async(t,n)=>{try{var r=e.i(511938),o=e.i(16023),s=e.i(14018),a=e.i(954372),i=e.i(496727),l=e.i(254799),c=e.i(189384),u=e.i(406461);let t=null;if(!("u">typeof caches&&"object"==typeof caches||"u">typeof EdgeRuntime))try{t=await e.A(901259)}catch{}let f="1"===process.env.CURSOR_STREAM_DEBUG,h=(...e)=>{f&&console.log(...e)};function p(e,t){if(e.length>10&&123===e[0]&&34===e[1])try{if(e.toString("utf-8").startsWith('{"error"'))return h("[DECOMPRESS] Detected JSON error, skipping decompression"),e}catch{}if(1===t||2===t||3===t)try{return u.default.gunzipSync(e)}catch(n){try{return u.default.inflateSync(e)}catch(r){try{return u.default.inflateRawSync(e)}catch(o){h(`[DECOMPRESS ERROR] flags=${t}, payloadSize=${e.length}, gzip=${n.message}, deflate=${r.message}, raw=${o.message}`),h("[DECOMPRESS ERROR] First 50 bytes (hex):",e.slice(0,50).toString("hex")),h("[DECOMPRESS ERROR] First 50 bytes (utf8):",e.slice(0,50).toString("utf8").replace(/[^\x20-\x7E]/g,"."))}}}return e}function d(e){let t=e?.error?.details?.[0]?.debug?.details?.title||e?.error?.details?.[0]?.debug?.details?.detail||e?.error?.message||"API Error",n=e?.error?.code==="resource_exhausted";return new Response(JSON.stringify({error:{message:t,type:n?"rate_limit_error":"api_error",code:e?.error?.details?.[0]?.debug?.error||"unknown"}}),{status:n?o.HTTP_STATUS.RATE_LIMITED:o.HTTP_STATUS.BAD_REQUEST,headers:{"Content-Type":"application/json"}})}class g extends r.BaseExecutor{constructor(){super("cursor",o.PROVIDERS.cursor)}buildUrl(){return`${this.config.baseUrl}${this.config.chatPath||""}`}generateChecksum(e){let t=Math.floor(Date.now()/1e6),n=new Uint8Array([t>>40&255,t>>32&255,t>>24&255,t>>16&255,t>>8&255,255&t]),r=165;for(let e=0;e<n.length;e++)n[e]=(n[e]^r)+e%256&255,r=n[e];let o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",s="";for(let e=0;e<n.length;e+=3){let t=n[e],r=e+1<n.length?n[e+1]:0,a=e+2<n.length?n[e+2]:0;s+=o[t>>2],s+=o[(3&t)<<4|r>>4],e+1<n.length&&(s+=o[(15&r)<<2|a>>6]),e+2<n.length&&(s+=o[63&a])}return`${s}${e}`}buildHeaders(e){let t=e.accessToken,n=e.providerSpecificData?.machineId,r=e.providerSpecificData?.ghostMode!==!1;if(!n)throw Error("Machine ID is required for Cursor API");let o=t.includes("::")?t.split("::")[1]:t;return{authorization:`Bearer ${o}`,"connect-accept-encoding":"gzip","connect-protocol-version":"1","content-type":"application/connect+proto","user-agent":"connect-es/1.6.1","x-amzn-trace-id":`Root=${l.default.randomUUID()}`,"x-client-key":l.default.createHash("sha256").update(o).digest("hex"),"x-cursor-checksum":this.generateChecksum(n),"x-cursor-client-version":"2.3.41","x-cursor-client-type":"ide","x-cursor-client-os":"linux","x-cursor-client-arch":"x64","x-cursor-client-device-type":"desktop","x-cursor-config-version":l.default.randomUUID(),"x-cursor-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC","x-ghost-mode":r?"true":"false","x-request-id":l.default.randomUUID(),"x-session-id":(0,c.v5)(o,c.v5.DNS)}}transformRequest(e,t,n,r){let o=t.messages||[],a=t.tools||[],i=t.reasoning_effort||null;return(0,s.generateCursorBody)(o,e,a,i)}async makeFetchRequest(e,t,n,r){let o=await fetch(e,{method:"POST",headers:t,body:n,signal:r});return{status:o.status,headers:Object.fromEntries(o.headers.entries()),body:Buffer.from(await o.arrayBuffer())}}makeHttp2Request(e,n,r,s){if(!t)throw Error("http2 module not available");return new Promise((a,i)=>{let l=new URL(e),c=t.connect(`https://${l.host}`),u=[],p={};c.on("error",i);let d=c.request({":method":"POST",":path":l.pathname,":authority":l.host,":scheme":"https",...n});d.on("response",e=>{p=e}),d.on("data",e=>{u.push(e)}),d.on("end",()=>{c.close(),a({status:"number"==typeof p[":status"]?p[":status"]:Number(p[":status"]||o.HTTP_STATUS.SERVER_ERROR),headers:p,body:Buffer.concat(u)})}),d.on("error",e=>{c.close(),i(e)}),s&&s.addEventListener("abort",()=>{d.close(),c.close(),i(Error("Request aborted"))}),d.write(r),d.end()})}async execute({model:e,body:n,stream:s,credentials:a,signal:i,log:l,upstreamExtraHeaders:c}){let u=this.buildUrl(),p=this.buildHeaders(a);(0,r.mergeUpstreamExtraHeaders)(p,c);let d=this.transformRequest(e,n,s,a);try{let r=t?await this.makeHttp2Request(u,p,d,i):await this.makeFetchRequest(u,p,d,i);if(200!==r.status){let e=r.body?.toString()||"Unknown error";return{response:new Response(JSON.stringify({error:{message:`[${r.status}]: ${e}`,type:"invalid_request_error",code:""}}),{status:r.status,headers:{"Content-Type":"application/json"}}),url:u,headers:p,transformedBody:n}}return{response:!1!==s?this.transformProtobufToSSE(r.body,e,n):this.transformProtobufToJSON(r.body,e,n),url:u,headers:p,transformedBody:n}}catch(e){return{response:new Response(JSON.stringify({error:{message:e.message,type:"connection_error",code:""}}),{status:o.HTTP_STATUS.SERVER_ERROR,headers:{"Content-Type":"application/json"}}),url:u,headers:p,transformedBody:n}}}transformProtobufToJSON(e,t,n){let r=`chatcmpl-cursor-${Date.now()}`,l=Math.floor(Date.now()/1e3),c=0,u="",f=[],g=new Map,m=new Set,_=0;for(h(`[CURSOR BUFFER] Total length: ${e.length} bytes`);c<e.length;){if(c+5>e.length){h(`[CURSOR BUFFER] Reached end, offset=${c}, remaining=${e.length-c}`);break}let t=e[c],n=e.readUInt32BE(c+1);if(h(`[CURSOR BUFFER] Frame ${_+1}: flags=0x${t.toString(16).padStart(2,"0")}, length=${n}`),c+5+n>e.length){h(`[CURSOR BUFFER] Incomplete frame, offset=${c}, length=${n}, buffer.length=${e.length}`);break}let r=e.slice(c+5,c+5+n);if(c+=5+n,_++,!(r=p(r,t))){h(`[CURSOR BUFFER] Frame ${_}: decompression failed, skipping`);continue}if(r.length>0&&123===r[0])try{let e=r.toString("utf-8");if(e.includes('"error"')){let t=u||g.size>0;if(h(`[CURSOR BUFFER] Error frame (hasContent=${t}): ${e.slice(0,500)}`),t)break;return d(JSON.parse(e))}}catch{}let a=(0,s.extractTextFromResponse)(new Uint8Array(r));if(h(`[CURSOR DECODED] Frame ${_}:`,a),a.error){let e=u||g.size>0;if(h(`[CURSOR BUFFER] Decoded error (hasContent=${e}): ${a.error}`),e)break;return new Response(JSON.stringify({error:{message:a.error,type:"rate_limit_error",code:"rate_limited"}}),{status:o.HTTP_STATUS.RATE_LIMITED,headers:{"Content-Type":"application/json"}})}if(a.toolCall){let e=a.toolCall;if(g.has(e.id)){let t=g.get(e.id);t.function.arguments+=e.function.arguments,t.isLast=e.isLast}else g.set(e.id,{...e});if(e.isLast){let t=g.get(e.id);m.add(e.id),f.push({id:t.id,type:t.type,function:{name:t.function.name,arguments:t.function.arguments}})}}a.text&&(u+=a.text)}for(let[e,t]of(h(`[CURSOR BUFFER] Parsed ${_} frames, toolCallsMap size: ${g.size}, finalized toolCalls: ${f.length}`),g.entries()))m.has(e)||(h(`[CURSOR BUFFER] Finalizing incomplete tool call: ${e}, isLast=${t.isLast}`),f.push({id:t.id,type:t.type,function:{name:t.function.name,arguments:t.function.arguments}}));h(`[CURSOR BUFFER] Final toolCalls count: ${f.length}`);let k={role:"assistant",content:u||null};f.length>0&&(k.tool_calls=f);let y=(0,a.estimateUsage)(n,u.length,i.FORMATS.OPENAI),E={id:r,object:"chat.completion",created:l,model:t,choices:[{index:0,message:k,finish_reason:f.length>0?"tool_calls":"stop"}],usage:y};return new Response(JSON.stringify(E),{status:200,headers:{"Content-Type":"application/json"}})}transformProtobufToSSE(e,t,n){let r=`chatcmpl-cursor-${Date.now()}`,l=Math.floor(Date.now()/1e3),c=[],u=0,f="",g=[],m=new Map,_=new Set,k=new Set,y=0;for(h(`[CURSOR BUFFER SSE] Total length: ${e.length} bytes`);u<e.length;){if(u+5>e.length){h(`[CURSOR BUFFER SSE] Reached end, offset=${u}, remaining=${e.length-u}`);break}let n=e[u],a=e.readUInt32BE(u+1);if(h(`[CURSOR BUFFER SSE] Frame ${y+1}: flags=0x${n.toString(16).padStart(2,"0")}, length=${a}`),u+5+a>e.length){h(`[CURSOR BUFFER SSE] Incomplete frame, offset=${u}, length=${a}, buffer.length=${e.length}`);break}let i=e.slice(u+5,u+5+a);if(u+=5+a,y++,!(i=p(i,n))){h(`[CURSOR BUFFER SSE] Frame ${y}: decompression failed, skipping`);continue}if(123===i[0])try{let e=i.toString("utf-8");if(e.includes('"error"')){let t=c.length>0||f||m.size>0;if(h(`[CURSOR BUFFER SSE] Error frame (hasContent=${t}): ${e.slice(0,500)}`),t)break;return d(JSON.parse(e))}}catch{}let E=(0,s.extractTextFromResponse)(new Uint8Array(i));if(h(`[CURSOR DECODED SSE] Frame ${y}:`,E),E.error){let e=c.length>0||f||m.size>0;if(h(`[CURSOR BUFFER SSE] Decoded error (hasContent=${e}): ${E.error}`),e)break;return new Response(JSON.stringify({error:{message:E.error,type:"rate_limit_error",code:"rate_limited"}}),{status:o.HTTP_STATUS.RATE_LIMITED,headers:{"Content-Type":"application/json"}})}if(E.toolCall){let e=E.toolCall;if(0===c.length&&c.push(`data: ${JSON.stringify({id:r,object:"chat.completion.chunk",created:l,model:t,choices:[{index:0,delta:{role:"assistant",content:""},finish_reason:null}]})}
|
|
20
20
|
|
|
21
|
-
`),m.has(e.id)){let n=m.get(e.id);n.function.arguments.length,n.function.arguments+=e.function.arguments,n.isLast=e.isLast,e.function.arguments&&(
|
|
21
|
+
`),m.has(e.id)){let n=m.get(e.id);n.function.arguments.length,n.function.arguments+=e.function.arguments,n.isLast=e.isLast,e.function.arguments&&(k.add(e.id),c.push(`data: ${JSON.stringify({id:r,object:"chat.completion.chunk",created:l,model:t,choices:[{index:0,delta:{tool_calls:[{index:n.index,id:e.id,type:"function",function:{name:e.function.name,arguments:e.function.arguments}}]},finish_reason:null}]})}
|
|
22
22
|
|
|
23
|
-
`))}else{let n=g.length;
|
|
23
|
+
`))}else{let n=g.length;_.add(e.id),g.push({...e,index:n}),m.set(e.id,{...e,index:n}),k.add(e.id),c.push(`data: ${JSON.stringify({id:r,object:"chat.completion.chunk",created:l,model:t,choices:[{index:0,delta:{tool_calls:[{index:n,id:e.id,type:"function",function:{name:e.function.name,arguments:e.function.arguments}}]},finish_reason:null}]})}
|
|
24
24
|
|
|
25
25
|
`)}}E.text&&(f+=E.text,c.push(`data: ${JSON.stringify({id:r,object:"chat.completion.chunk",created:l,model:t,choices:[{index:0,delta:0===c.length&&0===g.length?{role:"assistant",content:E.text}:{content:E.text},finish_reason:null}]})}
|
|
26
26
|
|
|
27
|
-
`))}for(let[e,n]of(h(`[CURSOR BUFFER SSE] Parsed ${
|
|
27
|
+
`))}for(let[e,n]of(h(`[CURSOR BUFFER SSE] Parsed ${y} frames, toolCallsMap size: ${m.size}, toolCalls array: ${g.length}`),m.entries()))if(!_.has(e)){h(`[CURSOR BUFFER SSE] Finalizing incomplete tool call: ${e}, isLast=${n.isLast}`);let o=g.length;g.push({id:n.id,type:n.type,index:o,function:{name:n.function.name,arguments:n.function.arguments}}),k.has(n.id)||c.push(`data: ${JSON.stringify({id:r,object:"chat.completion.chunk",created:l,model:t,choices:[{index:0,delta:{tool_calls:[{index:o,id:n.id,type:"function",function:{name:n.function.name,arguments:n.function.arguments}}]},finish_reason:null}]})}
|
|
28
28
|
|
|
29
29
|
`)}0===c.length&&0===g.length&&c.push(`data: ${JSON.stringify({id:r,object:"chat.completion.chunk",created:l,model:t,choices:[{index:0,delta:{role:"assistant",content:""},finish_reason:null}]})}
|
|
30
30
|
|
|
31
31
|
`);let E=(0,a.estimateUsage)(n,f.length,i.FORMATS.OPENAI);return c.push(`data: ${JSON.stringify({id:r,object:"chat.completion.chunk",created:l,model:t,choices:[{index:0,delta:{},finish_reason:g.length>0?"tool_calls":"stop"}],usage:E})}
|
|
32
32
|
|
|
33
|
-
`),c.push("data: [DONE]\n\n"),new Response(c.join(""),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}async refreshCredentials(){return null}}e.s(["CursorExecutor",()=>g]),n()}catch(e){n(e)}},!0),313531,e=>{"use strict";var t=e.i(511938),n=e.i(16023),r=e.i(928602);class o extends t.BaseExecutor{constructor(e){super(e,n.PROVIDERS[e]||n.PROVIDERS.openai)}buildUrl(e,t,n=0,r=null){if(this.provider?.startsWith?.("openai-compatible-")){let e=r?.providerSpecificData,t=(e?.baseUrl||"https://api.openai.com/v1").replace(/\/$/,""),n="string"==typeof e?.chatPath&&e.chatPath?e.chatPath:null;if(n)return`${t}${n}`;let o=this.provider.includes("responses")?"/responses":"/chat/completions";return`${t}${o}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let e=r?.providerSpecificData,t=(e?.baseUrl||"https://api.anthropic.com/v1").replace(/\/$/,""),n="string"==typeof e?.chatPath&&e.chatPath?e.chatPath:null;return`${t}${n||"/messages"}`}switch(this.provider){case"claude":case"glm":case"kimi-coding":case"minimax":case"minimax-cn":return`${this.config.baseUrl}?beta=true`;case"gemini":return`${this.config.baseUrl}/${e}:${t?"streamGenerateContent?alt=sse":"generateContent"}`;default:return this.config.baseUrl}}buildHeaders(e,t=!0){let n={"Content-Type":"application/json",...this.config.headers};switch(this.provider){case"gemini":e.apiKey?n["x-goog-api-key"]=e.apiKey:n.Authorization=`Bearer ${e.accessToken}`;break;case"claude":e.apiKey?n["x-api-key"]=e.apiKey:n.Authorization=`Bearer ${e.accessToken}`;break;case"glm":case"kimi-coding":case"bailian-coding-plan":case"kimi-coding-apikey":case"minimax":case"minimax-cn":n["x-api-key"]=e.apiKey||e.accessToken;break;default:this.provider?.startsWith?.("anthropic-compatible-")?(e.apiKey?n["x-api-key"]=e.apiKey:e.accessToken&&(n.Authorization=`Bearer ${e.accessToken}`),n["anthropic-version"]||(n["anthropic-version"]="2023-06-01")):n.Authorization=`Bearer ${e.apiKey||e.accessToken}`}return t&&(n.Accept="text/event-stream"),n}transformRequest(e,t,n,r){return t}async refreshCredentials(e,t){if(!e.refreshToken)return null;try{return await (0,r.getAccessToken)(this.provider,e,t)}catch(e){return t?.error?.("TOKEN",`${this.provider} refresh error: ${e.message}`),null}}}e.s(["DefaultExecutor",()=>o])},698354,e=>{"use strict";var t=e.i(511938),n=e.i(16023);class r extends t.BaseExecutor{constructor(){super("pollinations",n.PROVIDERS.pollinations||{format:"openai"})}buildUrl(e,t,n=0,r=null){return"https://text.pollinations.ai/openai/chat/completions"}buildHeaders(e,t=!0){let n={"Content-Type":"application/json"},r=e?.apiKey||e?.accessToken;return r&&(n.Authorization=`Bearer ${r}`),t&&(n.Accept="text/event-stream"),n}transformRequest(e,t,n,r){return t}}e.s(["PollinationsExecutor",()=>r])},888908,e=>{"use strict";var t=e.i(511938),n=e.i(16023);class r extends t.BaseExecutor{constructor(){super("cloudflare-ai",n.PROVIDERS["cloudflare-ai"]||{format:"openai"})}buildUrl(e,t,n=0,r=null){let o=r?.providerSpecificData?.accountId||r?.accountId||process.env.CLOUDFLARE_ACCOUNT_ID;if(!o)throw Error("Cloudflare Workers AI requires an Account ID. Add it in provider settings under 'Account ID'. Find it at: https://dash.cloudflare.com (right sidebar).");return`https://api.cloudflare.com/client/v4/accounts/${o}/ai/v1/chat/completions`}buildHeaders(e,t=!0){let n={"Content-Type":"application/json",Authorization:`Bearer ${e.apiKey||e.accessToken}`};return t&&(n.Accept="text/event-stream"),n}transformRequest(e,t,n,r){return t}}e.s(["CloudflareAIExecutor",()=>r])},838124,e=>{"use strict";var t=e.i(511938),n=e.i(16023),r=e.i(878947);class o extends t.BaseExecutor{_requestFormat=null;constructor(e){super(e,n.PROVIDERS[e]||n.PROVIDERS.openai)}async execute(e){this._requestFormat=(0,r.getModelTargetFormat)(this.provider,e.model)||"openai";try{return await super.execute(e)}finally{this._requestFormat=null}}buildUrl(e,t,n=0,r=null){let o=this.config.baseUrl;switch(this._requestFormat){case"claude":return`${o}/messages`;case"openai-responses":return`${o}/responses`;case"gemini":return`${o}/models/${e}:${t?"streamGenerateContent?alt=sse":"generateContent"}`;default:return`${o}/chat/completions`}}buildHeaders(e,t=!0){let n={"Content-Type":"application/json"},r=e?.apiKey||e?.accessToken;return r&&(n.Authorization=`Bearer ${r}`),"claude"===this._requestFormat&&(n["anthropic-version"]="2023-06-01"),t&&(n.Accept="text/event-stream"),n}}e.s(["OpencodeExecutor",()=>o])},973111,e=>{"use strict";var t=e.i(511938),n=e.i(16023);class r extends t.BaseExecutor{constructor(){super("puter",n.PROVIDERS.puter||{format:"openai"})}buildUrl(e,t,n=0,r=null){return"https://api.puter.com/puterai/openai/v1/chat/completions"}buildHeaders(e,t=!0){let n={"Content-Type":"application/json"},r=e?.apiKey||e?.accessToken;return r&&(n.Authorization=`Bearer ${r}`),t&&(n.Accept="text/event-stream"),n}transformRequest(e,t,n,r){return t}}e.s(["PuterExecutor",()=>r])},646118,e=>{"use strict";var t=e.i(827957);e.i(14184);var n=e.i(477468),r=e.i(865466);e.i(196821);let o=(e,t)=>{if(e.byteLength!==t.length)return!1;for(let n=0;n<e.byteLength;n++)if(e[n]!==t[n])return!1;return!0},s=e=>{let t=e.data[e.pos++];if(128&t){let n=127&t,r=0;for(let t=0;t<n;t++)r=r<<8|e.data[e.pos++];return r}return t},a=(e,t,n)=>{if(e.data[e.pos++]!==t)throw Error(n)},i=(e,t)=>{let n=e.data.subarray(e.pos,e.pos+t);return e.pos+=t,n},l=async(e,t,n,o)=>{let s,a,i="spki"===e,l=()=>i?["verify"]:["sign"];switch(n){case"PS256":case"PS384":case"PS512":s={name:"RSA-PSS",hash:`SHA-${n.slice(-3)}`},a=l();break;case"RS256":case"RS384":case"RS512":s={name:"RSASSA-PKCS1-v1_5",hash:`SHA-${n.slice(-3)}`},a=l();break;case"RSA-OAEP":case"RSA-OAEP-256":case"RSA-OAEP-384":case"RSA-OAEP-512":s={name:"RSA-OAEP",hash:`SHA-${parseInt(n.slice(-3),10)||1}`},a=i?["encrypt","wrapKey"]:["decrypt","unwrapKey"];break;case"ES256":case"ES384":case"ES512":s={name:"ECDSA",namedCurve:({ES256:"P-256",ES384:"P-384",ES512:"P-521"})[n]},a=l();break;case"ECDH-ES":case"ECDH-ES+A128KW":case"ECDH-ES+A192KW":case"ECDH-ES+A256KW":try{let e=o.getNamedCurve(t);s="X25519"===e?{name:"X25519"}:{name:"ECDH",namedCurve:e}}catch(e){throw new r.JOSENotSupported("Invalid or unsupported key format")}a=i?[]:["deriveBits"];break;case"Ed25519":case"EdDSA":s={name:"Ed25519"},a=l();break;case"ML-DSA-44":case"ML-DSA-65":case"ML-DSA-87":s={name:n},a=l();break;default:throw new r.JOSENotSupported('Invalid or unsupported "alg" (Algorithm) value')}return crypto.subtle.importKey(e,t,s,o?.extractable??!!i,a)};async function c(e,t,r){let c,u,p;if("string"!=typeof e||0!==e.indexOf("-----BEGIN PRIVATE KEY-----"))throw TypeError('"pkcs8" must be PKCS#8 formatted string');return c=/(?:-----(?:BEGIN|END) PRIVATE KEY-----|\s)/g,u=(0,n.decodeBase64)(e.replace(c,"")),p=r,t?.startsWith?.("ECDH-ES")&&((p||={}).getNamedCurve=e=>{let t,n={data:e,pos:0};return a(n,48,"Invalid PKCS#8 structure"),s(n),a(n,2,"Expected version field"),t=s(n),n.pos+=t,a(n,48,"Expected algorithm identifier"),s(n),n.pos,(e=>{let t,n=(a(e,6,"Expected algorithm OID"),t=s(e),i(e,t));if(o(n,[43,101,110]))return"X25519";if(!o(n,[42,134,72,206,61,2,1]))throw Error("Unsupported key algorithm");a(e,6,"Expected curve OID");let r=s(e),l=i(e,r);for(let{name:e,oid:t}of[{name:"P-256",oid:[42,134,72,206,61,3,1,7]},{name:"P-384",oid:[43,129,4,0,34]},{name:"P-521",oid:[43,129,4,0,35]}])if(o(l,t))return e;throw Error("Unsupported named curve")})(n)}),l("pkcs8",u,t,p)}var u=e.i(511938),p=e.i(16023);let d=new Map;function f(e){try{return JSON.parse(e)}catch{throw Error("Vertex AI requires a valid Service Account JSON as the API key")}}async function h(e){if(!e.client_email||!e.private_key)throw Error("Service Account JSON is missing required fields (client_email or private_key)");let n=e.client_email,r=d.get(n);if(r&&Date.now()<r.expiresAt-6e4)return r.token;let o=await c(e.private_key,"RS256"),s=Math.floor(Date.now()/1e3),a=await new t.SignJWT({iss:e.client_email,sub:e.client_email,aud:"https://oauth2.googleapis.com/token",iat:s,exp:s+3600,scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256",kid:e.private_key_id}).sign(o),i=await fetch("https://oauth2.googleapis.com/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:a})});if(!i.ok){let e=await i.text();throw Error(`Failed to exchange JWT for Vertex access token: ${i.status} ${e}`)}let l=(await i.json()).access_token;if(!l)throw Error("Vertex AI token exchange succeeded but no access_token found");return d.set(n,{token:l,expiresAt:(s+3600)*1e3}),l}let g=new Set(["claude-3-5-sonnet","claude-3-opus","claude-3-haiku","deepseek-v3","deepseek-v3.2","deepseek-deepseek-r1","qwen3-next-80b","llama-3.1","mistral-","glm-5","meta/llama"]);class m extends u.BaseExecutor{constructor(){super("vertex",p.PROVIDERS.vertex)}async execute(e){let{credentials:t,log:n}=e;if(t.apiKey&&!t.accessToken)try{let e=f(t.apiKey);t.accessToken=await h(e)}catch(e){throw n?.error?.("VERTEX",`Failed to generate JWT token: ${e.message}`),e}return super.execute(e)}buildUrl(e,t,n=0,r=null){let o=r?.providerSpecificData?.region||"us-central1",s="unknown-project";if(r?.apiKey)try{let e=f(r.apiKey);e.project_id&&(s=e.project_id)}catch{}return[...g].some(t=>e.startsWith(t))?`https://aiplatform.googleapis.com/v1/projects/${s}/locations/global/endpoints/openapi/chat/completions`:`https://aiplatform.googleapis.com/v1/projects/${s}/locations/${o}/publishers/google/models/${e}:${t?"streamGenerateContent?alt=sse":"generateContent"}`}buildHeaders(e,t=!0){let n={"Content-Type":"application/json"};return e.accessToken&&(n.Authorization=`Bearer ${e.accessToken}`),t&&(n.Accept="text/event-stream"),n}}e.s(["VertexExecutor",()=>m],646118)},6751,e=>e.a(async(t,n)=>{try{var r=e.i(42075),o=e.i(246208),s=e.i(927219),a=e.i(960059),i=e.i(692428),l=e.i(69373),c=e.i(655475),u=e.i(313531),p=e.i(698354),d=e.i(888908),f=e.i(838124),h=e.i(973111),g=e.i(646118);e.i(511938);var m=t([c]);[c]=m.then?(await m)():m;let _={antigravity:new r.AntigravityExecutor,"gemini-cli":new o.GeminiCLIExecutor,github:new s.GithubExecutor,iflow:new a.IFlowExecutor,kiro:new i.KiroExecutor,codex:new l.CodexExecutor,cursor:new c.CursorExecutor,cu:new c.CursorExecutor,pollinations:new p.PollinationsExecutor,pol:new p.PollinationsExecutor,"cloudflare-ai":new d.CloudflareAIExecutor,cf:new d.CloudflareAIExecutor,"opencode-zen":new f.OpencodeExecutor("opencode-zen"),"opencode-go":new f.OpencodeExecutor("opencode-go"),puter:new h.PuterExecutor,pu:new h.PuterExecutor,vertex:new g.VertexExecutor},k=new Map;function y(e){return _[e]?_[e]:(k.has(e)||k.set(e,new u.DefaultExecutor(e)),k.get(e))}e.s(["getExecutor",()=>y]),n()}catch(e){n(e)}},!1)];
|
|
33
|
+
`),c.push("data: [DONE]\n\n"),new Response(c.join(""),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}async refreshCredentials(){return null}}e.s(["CursorExecutor",()=>g]),n()}catch(e){n(e)}},!0),313531,e=>{"use strict";var t=e.i(511938),n=e.i(16023),r=e.i(928602);class o extends t.BaseExecutor{constructor(e){super(e,n.PROVIDERS[e]||n.PROVIDERS.openai)}buildUrl(e,t,n=0,r=null){if(this.provider?.startsWith?.("openai-compatible-")){let e=r?.providerSpecificData,t=(e?.baseUrl||"https://api.openai.com/v1").replace(/\/$/,""),n="string"==typeof e?.chatPath&&e.chatPath?e.chatPath:null;if(n)return`${t}${n}`;let o=this.provider.includes("responses")?"/responses":"/chat/completions";return`${t}${o}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let e=r?.providerSpecificData,t=(e?.baseUrl||"https://api.anthropic.com/v1").replace(/\/$/,""),n="string"==typeof e?.chatPath&&e.chatPath?e.chatPath:null;return`${t}${n||"/messages"}`}switch(this.provider){case"claude":case"glm":case"kimi-coding":case"minimax":case"minimax-cn":return`${this.config.baseUrl}?beta=true`;case"gemini":return`${this.config.baseUrl}/${e}:${t?"streamGenerateContent?alt=sse":"generateContent"}`;default:return this.config.baseUrl}}buildHeaders(e,t=!0){let n={"Content-Type":"application/json",...this.config.headers};switch(this.provider){case"gemini":e.apiKey?n["x-goog-api-key"]=e.apiKey:n.Authorization=`Bearer ${e.accessToken}`;break;case"claude":e.apiKey?n["x-api-key"]=e.apiKey:n.Authorization=`Bearer ${e.accessToken}`;break;case"glm":case"kimi-coding":case"bailian-coding-plan":case"kimi-coding-apikey":case"minimax":case"minimax-cn":n["x-api-key"]=e.apiKey||e.accessToken;break;default:this.provider?.startsWith?.("anthropic-compatible-")?(e.apiKey?n["x-api-key"]=e.apiKey:e.accessToken&&(n.Authorization=`Bearer ${e.accessToken}`),n["anthropic-version"]||(n["anthropic-version"]="2023-06-01")):n.Authorization=`Bearer ${e.apiKey||e.accessToken}`}return t&&(n.Accept="text/event-stream"),n}transformRequest(e,t,n,r){return t}async refreshCredentials(e,t){if(!e.refreshToken)return null;try{return await (0,r.getAccessToken)(this.provider,e,t)}catch(e){return t?.error?.("TOKEN",`${this.provider} refresh error: ${e.message}`),null}}}e.s(["DefaultExecutor",()=>o])},698354,e=>{"use strict";var t=e.i(511938),n=e.i(16023);class r extends t.BaseExecutor{constructor(){super("pollinations",n.PROVIDERS.pollinations||{format:"openai"})}buildUrl(e,t,n=0,r=null){return"https://text.pollinations.ai/openai/chat/completions"}buildHeaders(e,t=!0){let n={"Content-Type":"application/json"},r=e?.apiKey||e?.accessToken;return r&&(n.Authorization=`Bearer ${r}`),t&&(n.Accept="text/event-stream"),n}transformRequest(e,t,n,r){return t}}e.s(["PollinationsExecutor",()=>r])},888908,e=>{"use strict";var t=e.i(511938),n=e.i(16023);class r extends t.BaseExecutor{constructor(){super("cloudflare-ai",n.PROVIDERS["cloudflare-ai"]||{format:"openai"})}buildUrl(e,t,n=0,r=null){let o=r?.providerSpecificData?.accountId||r?.accountId||process.env.CLOUDFLARE_ACCOUNT_ID;if(!o)throw Error("Cloudflare Workers AI requires an Account ID. Add it in provider settings under 'Account ID'. Find it at: https://dash.cloudflare.com (right sidebar).");return`https://api.cloudflare.com/client/v4/accounts/${o}/ai/v1/chat/completions`}buildHeaders(e,t=!0){let n={"Content-Type":"application/json",Authorization:`Bearer ${e.apiKey||e.accessToken}`};return t&&(n.Accept="text/event-stream"),n}transformRequest(e,t,n,r){return t}}e.s(["CloudflareAIExecutor",()=>r])},838124,e=>{"use strict";var t=e.i(511938),n=e.i(16023),r=e.i(878947);class o extends t.BaseExecutor{_requestFormat=null;constructor(e){super(e,n.PROVIDERS[e]||n.PROVIDERS.openai)}async execute(e){this._requestFormat=(0,r.getModelTargetFormat)(this.provider,e.model)||"openai";try{return await super.execute(e)}finally{this._requestFormat=null}}buildUrl(e,t,n=0,r=null){let o=this.config.baseUrl;switch(this._requestFormat){case"claude":return`${o}/messages`;case"openai-responses":return`${o}/responses`;case"gemini":return`${o}/models/${e}:${t?"streamGenerateContent?alt=sse":"generateContent"}`;default:return`${o}/chat/completions`}}buildHeaders(e,t=!0){let n={"Content-Type":"application/json"},r=e?.apiKey||e?.accessToken;return r&&(n.Authorization=`Bearer ${r}`),"claude"===this._requestFormat&&(n["anthropic-version"]="2023-06-01"),t&&(n.Accept="text/event-stream"),n}}e.s(["OpencodeExecutor",()=>o])},973111,e=>{"use strict";var t=e.i(511938),n=e.i(16023);class r extends t.BaseExecutor{constructor(){super("puter",n.PROVIDERS.puter||{format:"openai"})}buildUrl(e,t,n=0,r=null){return"https://api.puter.com/puterai/openai/v1/chat/completions"}buildHeaders(e,t=!0){let n={"Content-Type":"application/json"},r=e?.apiKey||e?.accessToken;return r&&(n.Authorization=`Bearer ${r}`),t&&(n.Accept="text/event-stream"),n}transformRequest(e,t,n,r){return t}}e.s(["PuterExecutor",()=>r])},646118,e=>{"use strict";var t=e.i(827957);e.i(14184);var n=e.i(477468),r=e.i(865466);e.i(196821);let o=(e,t)=>{if(e.byteLength!==t.length)return!1;for(let n=0;n<e.byteLength;n++)if(e[n]!==t[n])return!1;return!0},s=e=>{let t=e.data[e.pos++];if(128&t){let n=127&t,r=0;for(let t=0;t<n;t++)r=r<<8|e.data[e.pos++];return r}return t},a=(e,t,n)=>{if(e.data[e.pos++]!==t)throw Error(n)},i=(e,t)=>{let n=e.data.subarray(e.pos,e.pos+t);return e.pos+=t,n},l=async(e,t,n,o)=>{let s,a,i="spki"===e,l=()=>i?["verify"]:["sign"];switch(n){case"PS256":case"PS384":case"PS512":s={name:"RSA-PSS",hash:`SHA-${n.slice(-3)}`},a=l();break;case"RS256":case"RS384":case"RS512":s={name:"RSASSA-PKCS1-v1_5",hash:`SHA-${n.slice(-3)}`},a=l();break;case"RSA-OAEP":case"RSA-OAEP-256":case"RSA-OAEP-384":case"RSA-OAEP-512":s={name:"RSA-OAEP",hash:`SHA-${parseInt(n.slice(-3),10)||1}`},a=i?["encrypt","wrapKey"]:["decrypt","unwrapKey"];break;case"ES256":case"ES384":case"ES512":s={name:"ECDSA",namedCurve:({ES256:"P-256",ES384:"P-384",ES512:"P-521"})[n]},a=l();break;case"ECDH-ES":case"ECDH-ES+A128KW":case"ECDH-ES+A192KW":case"ECDH-ES+A256KW":try{let e=o.getNamedCurve(t);s="X25519"===e?{name:"X25519"}:{name:"ECDH",namedCurve:e}}catch(e){throw new r.JOSENotSupported("Invalid or unsupported key format")}a=i?[]:["deriveBits"];break;case"Ed25519":case"EdDSA":s={name:"Ed25519"},a=l();break;case"ML-DSA-44":case"ML-DSA-65":case"ML-DSA-87":s={name:n},a=l();break;default:throw new r.JOSENotSupported('Invalid or unsupported "alg" (Algorithm) value')}return crypto.subtle.importKey(e,t,s,o?.extractable??!!i,a)};async function c(e,t,r){let c,u,p;if("string"!=typeof e||0!==e.indexOf("-----BEGIN PRIVATE KEY-----"))throw TypeError('"pkcs8" must be PKCS#8 formatted string');return c=/(?:-----(?:BEGIN|END) PRIVATE KEY-----|\s)/g,u=(0,n.decodeBase64)(e.replace(c,"")),p=r,t?.startsWith?.("ECDH-ES")&&((p||={}).getNamedCurve=e=>{let t,n={data:e,pos:0};return a(n,48,"Invalid PKCS#8 structure"),s(n),a(n,2,"Expected version field"),t=s(n),n.pos+=t,a(n,48,"Expected algorithm identifier"),s(n),n.pos,(e=>{let t,n=(a(e,6,"Expected algorithm OID"),t=s(e),i(e,t));if(o(n,[43,101,110]))return"X25519";if(!o(n,[42,134,72,206,61,2,1]))throw Error("Unsupported key algorithm");a(e,6,"Expected curve OID");let r=s(e),l=i(e,r);for(let{name:e,oid:t}of[{name:"P-256",oid:[42,134,72,206,61,3,1,7]},{name:"P-384",oid:[43,129,4,0,34]},{name:"P-521",oid:[43,129,4,0,35]}])if(o(l,t))return e;throw Error("Unsupported named curve")})(n)}),l("pkcs8",u,t,p)}var u=e.i(511938),p=e.i(16023);let d=new Map;function f(e){try{return JSON.parse(e)}catch{throw Error("Vertex AI requires a valid Service Account JSON as the API key")}}async function h(e){if(!e.client_email||!e.private_key)throw Error("Service Account JSON is missing required fields (client_email or private_key)");let n=e.client_email,r=d.get(n);if(r&&Date.now()<r.expiresAt-6e4)return r.token;let o=await c(e.private_key,"RS256"),s=Math.floor(Date.now()/1e3),a=await new t.SignJWT({iss:e.client_email,sub:e.client_email,aud:"https://oauth2.googleapis.com/token",iat:s,exp:s+3600,scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256",kid:e.private_key_id}).sign(o),i=await fetch("https://oauth2.googleapis.com/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:a})});if(!i.ok){let e=await i.text();throw Error(`Failed to exchange JWT for Vertex access token: ${i.status} ${e}`)}let l=(await i.json()).access_token;if(!l)throw Error("Vertex AI token exchange succeeded but no access_token found");return d.set(n,{token:l,expiresAt:(s+3600)*1e3}),l}let g=new Set(["claude-3-5-sonnet","claude-3-opus","claude-3-haiku","deepseek-v3","deepseek-v3.2","deepseek-deepseek-r1","qwen3-next-80b","llama-3.1","mistral-","glm-5","meta/llama"]);class m extends u.BaseExecutor{constructor(){super("vertex",p.PROVIDERS.vertex)}async execute(e){let{credentials:t,log:n}=e;if(t.apiKey&&!t.accessToken)try{let e=f(t.apiKey);t.accessToken=await h(e)}catch(e){throw n?.error?.("VERTEX",`Failed to generate JWT token: ${e.message}`),e}return super.execute(e)}buildUrl(e,t,n=0,r=null){let o=r?.providerSpecificData?.region||"us-central1",s="unknown-project";if(r?.apiKey)try{let e=f(r.apiKey);e.project_id&&(s=e.project_id)}catch{}return[...g].some(t=>e.startsWith(t))?`https://aiplatform.googleapis.com/v1/projects/${s}/locations/global/endpoints/openapi/chat/completions`:`https://aiplatform.googleapis.com/v1/projects/${s}/locations/${o}/publishers/google/models/${e}:${t?"streamGenerateContent?alt=sse":"generateContent"}`}buildHeaders(e,t=!0){let n={"Content-Type":"application/json"};return e.accessToken&&(n.Authorization=`Bearer ${e.accessToken}`),t&&(n.Accept="text/event-stream"),n}}e.s(["VertexExecutor",()=>m],646118)},6751,e=>e.a(async(t,n)=>{try{var r=e.i(42075),o=e.i(246208),s=e.i(927219),a=e.i(960059),i=e.i(692428),l=e.i(69373),c=e.i(655475),u=e.i(313531),p=e.i(698354),d=e.i(888908),f=e.i(838124),h=e.i(973111),g=e.i(646118);e.i(511938);var m=t([c]);[c]=m.then?(await m)():m;let k={antigravity:new r.AntigravityExecutor,"gemini-cli":new o.GeminiCLIExecutor,github:new s.GithubExecutor,iflow:new a.IFlowExecutor,kiro:new i.KiroExecutor,codex:new l.CodexExecutor,cursor:new c.CursorExecutor,cu:new c.CursorExecutor,pollinations:new p.PollinationsExecutor,pol:new p.PollinationsExecutor,"cloudflare-ai":new d.CloudflareAIExecutor,cf:new d.CloudflareAIExecutor,"opencode-zen":new f.OpencodeExecutor("opencode-zen"),"opencode-go":new f.OpencodeExecutor("opencode-go"),puter:new h.PuterExecutor,pu:new h.PuterExecutor,vertex:new g.VertexExecutor},y=new Map;function _(e){return k[e]?k[e]:(y.has(e)||y.set(e,new u.DefaultExecutor(e)),y.get(e))}e.s(["getExecutor",()=>_]),n()}catch(e){n(e)}},!1)];
|
|
34
34
|
|
|
35
35
|
//# sourceMappingURL=%5Broot-of-the-server%5D__70a3877b._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[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"))},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"))},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"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var n=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={RequestCookies:()=>m,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>p,stringifyCookie:()=>c};for(var u in l)n(o,u,{get:l[u],enumerable:!0});function c(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),n=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?n:`${n}; ${r.join("; ")}`}function d(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[n,a]=[r.slice(0,e),r.slice(e+1)];try{t.set(n,decodeURIComponent(null!=a?a:"true"))}catch{}}return t}function p(e){if(!e)return;let[[t,r],...n]=d(e),{domain:a,expires:s,httponly:i,maxage:o,path:l,samesite:u,secure:c,partitioned:p,priority:m}=Object.fromEntries(n.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,x,v={name:t,value:decodeURIComponent(r),domain:a,...s&&{expires:new Date(s)},...i&&{httpOnly:!0},..."string"==typeof o&&{maxAge:Number(o)},path:l,...u&&{sameSite:f.includes(g=(g=u).toLowerCase())?g:void 0},...c&&{secure:!0},...m&&{priority:h.includes(x=(x=m).toLowerCase())?x:void 0},...p&&{partitioned:!0}};let e={};for(let t in v)v[t]&&(e[t]=v[t]);return e}}t.exports=((e,t,r,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of s(t))i.call(e,r)||void 0===r||n(e,r,{get:()=>t[r],enumerable:!(o=a(t,r))||o.enumerable});return e})(n({},"__esModule",{value:!0}),o);var f=["strict","lax","none"],h=["low","medium","high"],m=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of d(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===n).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,n=this._parsed;return n.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(n).map(([e,t])=>c(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>c(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,r,n;this._parsed=new Map,this._headers=e;const a=null!=(n=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?n:[];for(const e of Array.isArray(a)?a:function(e){if(!e)return[];var t,r,n,a,s,i=[],o=0;function l(){for(;o<e.length&&/\s/.test(e.charAt(o));)o+=1;return o<e.length}for(;o<e.length;){for(t=o,s=!1;l();)if(","===(r=e.charAt(o))){for(n=o,o+=1,l(),a=o;o<e.length&&"="!==(r=e.charAt(o))&&";"!==r&&","!==r;)o+=1;o<e.length&&"="===e.charAt(o)?(s=!0,o=a,i.push(e.substring(t,n)),t=o):o=n+1}else o+=1;(!s||o>=e.length)&&i.push(e.substring(t,e.length))}return i}(a)){const t=p(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===n)}has(e){return this._parsed.has(e)}set(...e){let[t,r,n]=1===e.length?[e[0].name,e[0].value,e[0]]:e,a=this._parsed;return a.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...n})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=c(r);t.append("set-cookie",e)}}(a,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(c).join("; ")}}},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},785148,(e,t,r)=>{t.exports=e.x("better-sqlite3",()=>require("better-sqlite3"))},256770,e=>{"use strict";var t=e.i(814747),r=e.i(446786);let n="omniroute";function a(){try{return r.default.homedir()}catch{return process.cwd()}}function s(e){if("string"!=typeof e)return null;let r=e.trim();return r?t.default.resolve(r):null}function i(){return t.default.join(a(),`.${n}`)}function o(){a();let e=s(process.env.XDG_CONFIG_HOME);return e?t.default.join(e,n):i()}function l({isCloud:e=!1}={}){if(e)return"/tmp";let t=s(process.env.DATA_DIR);return t||o()}function u(e,r){return!!e&&!!r&&t.default.resolve(e)===t.default.resolve(r)}e.s(["APP_NAME",0,n,"getDefaultDataDir",()=>o,"getLegacyDotDataDir",()=>i,"isSamePath",()=>u,"resolveDataDir",()=>l])},90100,e=>{"use strict";function t(e,t){if(!e)return t;let r=Number.parseInt(String(e),10);return!Number.isFinite(r)||r<1||r>65535?t:r}function r(){let e=t(process.env.OMNIROUTE_PORT||process.env.PORT,20128),r=!!process.env.API_PORT,n=!!process.env.DASHBOARD_PORT;return{port:e,apiPort:t(process.env.API_PORT,e),dashboardPort:t(process.env.DASHBOARD_PORT,e),apiPortExplicit:r,dashboardPortExplicit:n}}e.s(["getRuntimePorts",()=>r])},240867,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),i=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),f=e.i(570101),h=e.i(626937),m=e.i(10372),g=e.i(193695);e.i(52474);var x=e.i(600220),v=e.i(745015),y=e.i(89171),R=e.i(924868),w=e.i(266240),_=e.i(197892),A=e.i(90100),b=e.i(195975);let{apiPort:C}=(0,A.getRuntimePorts)();async function O(e){try{let t=(0,w.getCliPrimaryConfigPath)(e);if(!t)return"unknown";let r=await R.default.readFile(t,"utf-8"),n=JSON.parse(r);switch(e){case"claude":return n?.env?.ANTHROPIC_BASE_URL?"configured":"not_configured";case"codex":return n?.providers?.omniroute||n?.providers?.["openai-compatible"]?"configured":"not_configured";case"droid":case"openclaw":case"cline":case"kilo":let a=JSON.stringify(n).toLowerCase();return a.includes("omniroute")||a.includes("sk_omniroute")||a.includes(`localhost:${C}`)||a.includes(`127.0.0.1:${C}`)?"configured":"not_configured";default:return"unknown"}}catch{return"not_configured"}}async function E(){try{let e={};await Promise.all(w.CLI_TOOL_IDS.map(async t=>{try{let r=await Promise.race([(0,w.getCliRuntimeStatus)(t),new Promise((e,t)=>setTimeout(()=>t(Error("Timeout")),5e3))]);e[t]={installed:r.installed,runnable:r.runnable,command:r.command,commandPath:r.commandPath,reason:r.reason||null}}catch(r){e[t]={installed:!1,runnable:!1,reason:r.message||"Check failed"}}})),await Promise.all(["claude","codex","droid","openclaw","cline","kilo"].map(async t=>{if(!e[t]?.installed||!e[t]?.runnable){e[t].configStatus="not_installed";return}e[t].configStatus=await O(t)}));try{let t=(0,_.getAllCliToolLastConfigured)();for(let[r,n]of Object.entries(t))e[r]&&(e[r].lastConfiguredAt=n)}catch{}return y.NextResponse.json(e)}catch(e){return console.log("Error fetching CLI tool statuses:",e),y.NextResponse.json({error:"Failed to fetch statuses"},{status:500})}}(0,b.ensureServerEntryExports)([E]),(0,v.registerServerReference)(E,"0040dc635dccb9803f73d093d52b7cc5eea00e9549",null),e.s(["GET",()=>E],84799);var P=e.i(84799);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/cli-tools/status/route",pathname:"/api/cli-tools/status",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/status/route.ts",nextConfigOutput:"standalone",userland:P}),{workAsyncStorage:k,workUnitAsyncStorage:T,serverHooks:D}=S;function N(){return(0,n.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:T})}async function j(e,t,n){S.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/cli-tools/status/route";v=v.replace(/\/index$/,"")||"/";let y=await S.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:R,params:w,nextConfig:_,parsedUrl:A,isDraftMode:b,prerenderManifest:C,routerServerContext:O,isOnDemandRevalidate:E,revalidateOnlyGenerated:P,resolvedPathname:k,clientReferenceManifest:T,serverActionsManifest:D}=y,N=(0,o.normalizeAppPath)(v),j=!!(C.dynamicRoutes[N]||C.routes[k]),q=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,A,!1):t.end("This page could not be found"),null);if(j&&!b){let e=!!C.routes[k],t=C.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(_.experimental.adapterPath)return await q();throw new g.NoFallbackError}}let I=null;!j||S.isDev||b||(I="/index"===(I=k)?"/":I);let $=!0===S.isDev||!j,U=j&&!$;D&&T&&(0,i.setManifestsSingleton)({page:v,clientReferenceManifest:T,serverActionsManifest:D});let H=e.method||"GET",M=(0,s.getTracer)(),L=M.getActiveScopeSpan(),F={params:w,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!_.experimental.authInterrupts},cacheComponents:!!_.cacheComponents,supportsDynamicResponse:$,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:_.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>S.onRequestError(e,t,n,a,O)},sharedContext:{buildId:R}},B=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),G=u.NextRequestAdapter.fromNodeNextRequest(B,(0,u.signalFromNodeResponse)(t));try{let i=async e=>S.handle(G,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${H} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${H} ${v}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!o&&E&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(a);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let u=F.renderOpts.collectedTags;if(!j)return await (0,p.sendResponse)(B,K,s,F.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[m.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:E})},!1,O),t}},c=await S.handleResponse({req:e,nextConfig:_,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:E,revalidateOnlyGenerated:P,responseGenerator:u,waitUntil:n.waitUntil,isMinimalMode:o});if(!j)return null;if((null==c||null==(s=c.value)?void 0:s.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",E?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return o&&j||g.delete(m.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,h.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(B,K,new Response(c.value.body,{headers:g,status:c.value.status||200})),null};L?await l(L):await M.withPropagatedContext(e.headers,()=>M.trace(c.BaseServerSpan.handleRequest,{spanName:`${H} ${v}`,kind:s.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:E})},!1,O),j)throw t;return await (0,p.sendResponse)(B,K,new Response(null,{status:500})),null}}e.s(["handler",()=>j,"patchFetch",()=>N,"routeModule",()=>S,"serverHooks",()=>D,"workAsyncStorage",()=>k,"workUnitAsyncStorage",()=>T],240867)}];
|
|
1
|
+
module.exports=[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"))},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"))},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"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var n=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={RequestCookies:()=>m,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>p,stringifyCookie:()=>c};for(var u in l)n(o,u,{get:l[u],enumerable:!0});function c(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),n=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?n:`${n}; ${r.join("; ")}`}function d(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[n,a]=[r.slice(0,e),r.slice(e+1)];try{t.set(n,decodeURIComponent(null!=a?a:"true"))}catch{}}return t}function p(e){if(!e)return;let[[t,r],...n]=d(e),{domain:a,expires:s,httponly:i,maxage:o,path:l,samesite:u,secure:c,partitioned:p,priority:m}=Object.fromEntries(n.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,x,v={name:t,value:decodeURIComponent(r),domain:a,...s&&{expires:new Date(s)},...i&&{httpOnly:!0},..."string"==typeof o&&{maxAge:Number(o)},path:l,...u&&{sameSite:f.includes(g=(g=u).toLowerCase())?g:void 0},...c&&{secure:!0},...m&&{priority:h.includes(x=(x=m).toLowerCase())?x:void 0},...p&&{partitioned:!0}};let e={};for(let t in v)v[t]&&(e[t]=v[t]);return e}}t.exports=((e,t,r,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of s(t))i.call(e,r)||void 0===r||n(e,r,{get:()=>t[r],enumerable:!(o=a(t,r))||o.enumerable});return e})(n({},"__esModule",{value:!0}),o);var f=["strict","lax","none"],h=["low","medium","high"],m=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of d(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===n).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,n=this._parsed;return n.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(n).map(([e,t])=>c(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>c(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,r,n;this._parsed=new Map,this._headers=e;const a=null!=(n=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?n:[];for(const e of Array.isArray(a)?a:function(e){if(!e)return[];var t,r,n,a,s,i=[],o=0;function l(){for(;o<e.length&&/\s/.test(e.charAt(o));)o+=1;return o<e.length}for(;o<e.length;){for(t=o,s=!1;l();)if(","===(r=e.charAt(o))){for(n=o,o+=1,l(),a=o;o<e.length&&"="!==(r=e.charAt(o))&&";"!==r&&","!==r;)o+=1;o<e.length&&"="===e.charAt(o)?(s=!0,o=a,i.push(e.substring(t,n)),t=o):o=n+1}else o+=1;(!s||o>=e.length)&&i.push(e.substring(t,e.length))}return i}(a)){const t=p(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===n)}has(e){return this._parsed.has(e)}set(...e){let[t,r,n]=1===e.length?[e[0].name,e[0].value,e[0]]:e,a=this._parsed;return a.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...n})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=c(r);t.append("set-cookie",e)}}(a,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(c).join("; ")}}},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},785148,(e,t,r)=>{t.exports=e.x("better-sqlite3",()=>require("better-sqlite3"))},256770,e=>{"use strict";var t=e.i(814747),r=e.i(446786);let n="omniroute";function a(){try{return r.default.homedir()}catch{return process.cwd()}}function s(e){if("string"!=typeof e)return null;let r=e.trim();return r?t.default.resolve(r):null}function i(){return t.default.join(a(),`.${n}`)}function o(){a();let e=s(process.env.XDG_CONFIG_HOME);return e?t.default.join(e,n):i()}function l({isCloud:e=!1}={}){if(e)return"/tmp";let t=s(process.env.DATA_DIR);return t||o()}function u(e,r){return!!e&&!!r&&t.default.resolve(e)===t.default.resolve(r)}e.s(["APP_NAME",0,n,"getDefaultDataDir",()=>o,"getLegacyDotDataDir",()=>i,"isSamePath",()=>u,"resolveDataDir",()=>l])},90100,e=>{"use strict";function t(e,t){if(!e)return t;let r=Number.parseInt(String(e),10);return!Number.isFinite(r)||r<1||r>65535?t:r}function r(){let e=t(process.env.OMNIROUTE_PORT||process.env.PORT,20128),r=!!process.env.API_PORT,n=!!process.env.DASHBOARD_PORT;return{port:e,apiPort:t(process.env.API_PORT,e),dashboardPort:t(process.env.DASHBOARD_PORT,e),apiPortExplicit:r,dashboardPortExplicit:n}}e.s(["getRuntimePorts",()=>r])},240867,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),i=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),f=e.i(570101),h=e.i(626937),m=e.i(10372),g=e.i(193695);e.i(52474);var x=e.i(600220),v=e.i(745015),y=e.i(89171),R=e.i(924868),w=e.i(266240),_=e.i(197892),A=e.i(90100),b=e.i(195975);let{apiPort:C}=(0,A.getRuntimePorts)();async function O(e){try{let t=(0,w.getCliPrimaryConfigPath)(e);if(!t)return"unknown";let r=await R.default.readFile(t,"utf-8"),n=JSON.parse(r);switch(e){case"claude":return n?.env?.ANTHROPIC_BASE_URL?"configured":"not_configured";case"codex":return n?.providers?.omniroute||n?.providers?.["openai-compatible"]?"configured":"not_configured";case"droid":case"openclaw":case"cline":case"kilo":let a=JSON.stringify(n).toLowerCase();return a.includes("omniroute")||a.includes("sk_omniroute")||a.includes(`localhost:${C}`)||a.includes(`127.0.0.1:${C}`)?"configured":"not_configured";default:return"unknown"}}catch{return"not_configured"}}async function E(){try{let e={};await Promise.all(w.CLI_TOOL_IDS.map(async t=>{try{let r=await Promise.race([(0,w.getCliRuntimeStatus)(t),new Promise((e,t)=>setTimeout(()=>t(Error("Timeout")),5e3))]);e[t]={installed:r.installed,runnable:r.runnable,command:r.command,commandPath:r.commandPath,reason:r.reason||null}}catch(r){e[t]={installed:!1,runnable:!1,reason:r.message||"Check failed"}}})),await Promise.all(["claude","codex","droid","openclaw","cline","kilo"].map(async t=>{if(!e[t]?.installed||!e[t]?.runnable){e[t].configStatus="not_installed";return}e[t].configStatus=await O(t)}));try{let t=(0,_.getAllCliToolLastConfigured)();for(let[r,n]of Object.entries(t))e[r]&&(e[r].lastConfiguredAt=n)}catch{}return y.NextResponse.json(e)}catch(e){return console.log("Error fetching CLI tool statuses:",e),y.NextResponse.json({error:"Failed to fetch statuses"},{status:500})}}(0,b.ensureServerEntryExports)([E]),(0,v.registerServerReference)(E,"00395cff3b1f588cce51131fccde6fcd9b3848e477",null),e.s(["GET",()=>E],84799);var P=e.i(84799);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/cli-tools/status/route",pathname:"/api/cli-tools/status",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/status/route.ts",nextConfigOutput:"standalone",userland:P}),{workAsyncStorage:k,workUnitAsyncStorage:T,serverHooks:D}=S;function N(){return(0,n.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:T})}async function j(e,t,n){S.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/cli-tools/status/route";v=v.replace(/\/index$/,"")||"/";let y=await S.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:R,params:w,nextConfig:_,parsedUrl:A,isDraftMode:b,prerenderManifest:C,routerServerContext:O,isOnDemandRevalidate:E,revalidateOnlyGenerated:P,resolvedPathname:k,clientReferenceManifest:T,serverActionsManifest:D}=y,N=(0,o.normalizeAppPath)(v),j=!!(C.dynamicRoutes[N]||C.routes[k]),q=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,A,!1):t.end("This page could not be found"),null);if(j&&!b){let e=!!C.routes[k],t=C.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(_.experimental.adapterPath)return await q();throw new g.NoFallbackError}}let I=null;!j||S.isDev||b||(I="/index"===(I=k)?"/":I);let $=!0===S.isDev||!j,U=j&&!$;D&&T&&(0,i.setManifestsSingleton)({page:v,clientReferenceManifest:T,serverActionsManifest:D});let H=e.method||"GET",M=(0,s.getTracer)(),L=M.getActiveScopeSpan(),F={params:w,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!_.experimental.authInterrupts},cacheComponents:!!_.cacheComponents,supportsDynamicResponse:$,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:_.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>S.onRequestError(e,t,n,a,O)},sharedContext:{buildId:R}},B=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),G=u.NextRequestAdapter.fromNodeNextRequest(B,(0,u.signalFromNodeResponse)(t));try{let i=async e=>S.handle(G,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${H} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${H} ${v}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!o&&E&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(a);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let u=F.renderOpts.collectedTags;if(!j)return await (0,p.sendResponse)(B,K,s,F.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[m.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:E})},!1,O),t}},c=await S.handleResponse({req:e,nextConfig:_,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:E,revalidateOnlyGenerated:P,responseGenerator:u,waitUntil:n.waitUntil,isMinimalMode:o});if(!j)return null;if((null==c||null==(s=c.value)?void 0:s.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",E?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return o&&j||g.delete(m.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,h.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(B,K,new Response(c.value.body,{headers:g,status:c.value.status||200})),null};L?await l(L):await M.withPropagatedContext(e.headers,()=>M.trace(c.BaseServerSpan.handleRequest,{spanName:`${H} ${v}`,kind:s.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:E})},!1,O),j)throw t;return await (0,p.sendResponse)(B,K,new Response(null,{status:500})),null}}e.s(["handler",()=>j,"patchFetch",()=>N,"routeModule",()=>S,"serverHooks",()=>D,"workAsyncStorage",()=>k,"workUnitAsyncStorage",()=>T],240867)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__7ace0fcd._.js.map
|