@augmentcode/onison 1.2.0-prerelease.202608191711 → 1.2.0-prerelease.202608200912
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/auggie-v2.mjs +6 -6
- package/package.json +2 -1
package/auggie-v2.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
3
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8cf31d65-e310-50cc-aaed-78ed14d7e106")}catch(e){}}();
|
|
4
4
|
import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);
|
|
5
|
-
var rls=Object.create;var L3e=Object.defineProperty;var ils=Object.getOwnPropertyDescriptor;var ols=Object.getOwnPropertyNames;var sls=Object.getPrototypeOf,als=Object.prototype.hasOwnProperty;var Bt=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var I=(t,e,n)=>()=>{if(n)throw n[0];try{return t&&(e=t(t=0)),e}catch(r){throw n=[r],r}};var pe=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(n){throw e=0,n}},qo=(t,e)=>{for(var n in e)L3e(t,n,{get:e[n],enumerable:!0})},x$n=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of ols(e))!als.call(t,i)&&i!==n&&L3e(t,i,{get:()=>e[i],enumerable:!(r=ils(e,i))||r.enumerable});return t};var Kr=(t,e,n)=>(n=t!=null?rls(sls(t)):{},x$n(e||!t||!t.__esModule?L3e(n,"default",{value:t,enumerable:!0}):n,t)),jr=t=>x$n(L3e({},"__esModule",{value:!0}),t);var py={};qo(py,{HasPropertyKey:()=>P3e,IsArray:()=>mf,IsAsyncIterator:()=>YVt,IsBigInt:()=>aRe,IsBoolean:()=>BF,IsDate:()=>C6,IsFunction:()=>JVt,IsIterator:()=>zVt,IsNull:()=>HVt,IsNumber:()=>L_,IsObject:()=>Kd,IsRegExp:()=>lRe,IsString:()=>$p,IsSymbol:()=>KVt,IsUint8Array:()=>HO,IsUndefined:()=>hf});function P3e(t,e){return e in t}function YVt(t){return Kd(t)&&!mf(t)&&!HO(t)&&Symbol.asyncIterator in t}function mf(t){return Array.isArray(t)}function aRe(t){return typeof t=="bigint"}function BF(t){return typeof t=="boolean"}function C6(t){return t instanceof globalThis.Date}function JVt(t){return typeof t=="function"}function zVt(t){return Kd(t)&&!mf(t)&&!HO(t)&&Symbol.iterator in t}function HVt(t){return t===null}function L_(t){return typeof t=="number"}function Kd(t){return typeof t=="object"&&t!==null}function lRe(t){return t instanceof globalThis.RegExp}function $p(t){return typeof t=="string"}function KVt(t){return typeof t=="symbol"}function HO(t){return t instanceof globalThis.Uint8Array}function hf(t){return t===void 0}var iS=I(()=>{});function lls(t){return t.map(e=>W3e(e))}function cls(t){return new Date(t.getTime())}function uls(t){return new Uint8Array(t)}function dls(t){return new RegExp(t.source,t.flags)}function pls(t){let e={};for(let n of Object.getOwnPropertyNames(t))e[n]=W3e(t[n]);for(let n of Object.getOwnPropertySymbols(t))e[n]=W3e(t[n]);return e}function W3e(t){return mf(t)?lls(t):C6(t)?cls(t):HO(t)?uls(t):lRe(t)?dls(t):Kd(t)?pls(t):t}function JA(t){return W3e(t)}var P_=I(()=>{iS()});function Als(t){return t.map(e=>SZ(e))}function SZ(t,e){return e===void 0?JA(t):JA({...e,...t})}var Z3e=I(()=>{P_()});var jVt=I(()=>{Z3e();P_()});function X3e(t){return Ul(t)&&globalThis.Symbol.asyncIterator in t}function Y3e(t){return Ul(t)&&globalThis.Symbol.iterator in t}function $Vt(t){return Ul(t)&&(globalThis.Object.getPrototypeOf(t)===Object.prototype||globalThis.Object.getPrototypeOf(t)===null)}function J3e(t){return t instanceof globalThis.Promise}function oS(t){return t instanceof Date&&globalThis.Number.isFinite(t.getTime())}function T$n(t){return t instanceof globalThis.Map}function N$n(t){return t instanceof globalThis.Set}function M1(t){return globalThis.ArrayBuffer.isView(t)}function Yse(t){return t instanceof globalThis.Uint8Array}function Ya(t,e){return e in t}function Ul(t){return t!==null&&typeof t=="object"}function ka(t){return globalThis.Array.isArray(t)&&!globalThis.ArrayBuffer.isView(t)}function Eg(t){return t===void 0}function KO(t){return t===null}function wF(t){return typeof t=="boolean"}function ua(t){return typeof t=="number"}function z3e(t){return globalThis.Number.isInteger(t)}function Ay(t){return typeof t=="bigint"}function Eu(t){return typeof t=="string"}function _Z(t){return typeof t=="function"}function jO(t){return typeof t=="symbol"}function iB(t){return Ay(t)||wF(t)||KO(t)||ua(t)||Eu(t)||jO(t)||Eg(t)}var H3e=I(()=>{});var $f=I(()=>{H3e()});var zA,cRe=I(()=>{$f();(function(t){t.InstanceMode="default",t.ExactOptionalPropertyTypes=!1,t.AllowArrayObject=!1,t.AllowNaN=!1,t.AllowNullVoid=!1;function e(s,a){return t.ExactOptionalPropertyTypes?a in s:s[a]!==void 0}t.IsExactOptionalProperty=e;function n(s){let a=Ul(s);return t.AllowArrayObject?a:a&&!ka(s)}t.IsObjectLike=n;function r(s){return n(s)&&!(s instanceof Date)&&!(s instanceof Uint8Array)}t.IsRecordLike=r;function i(s){return t.AllowNaN?ua(s):Number.isFinite(s)}t.IsNumberLike=i;function o(s){let a=Eg(s);return t.AllowNullVoid?a||s===null:a}t.IsVoidLike=o})(zA||(zA={}))});function gls(t){return globalThis.Object.freeze(t).map(e=>uRe(e))}function mls(t){let e={};for(let n of Object.getOwnPropertyNames(t))e[n]=uRe(t[n]);for(let n of Object.getOwnPropertySymbols(t))e[n]=uRe(t[n]);return globalThis.Object.freeze(e)}function uRe(t){return mf(t)?gls(t):C6(t)?t:HO(t)?t:lRe(t)?t:Kd(t)?mls(t):t}var k$n=I(()=>{iS()});function Zr(t,e){let n=e!==void 0?{...e,...t}:t;switch(zA.InstanceMode){case"freeze":return uRe(n);case"clone":return JA(n);default:return n}}var wa=I(()=>{cRe();k$n();P_()});var $O=I(()=>{wa()});var _a,qVt=I(()=>{_a=class extends Error{constructor(e){super(e)}}});var jg=I(()=>{qVt()});var bg,G1,Lb,sS,Fr,dRe=I(()=>{bg=Symbol.for("TypeBox.Transform"),G1=Symbol.for("TypeBox.Readonly"),Lb=Symbol.for("TypeBox.Optional"),sS=Symbol.for("TypeBox.Hint"),Fr=Symbol.for("TypeBox.Kind")});var fs=I(()=>{dRe()});var M2={};qo(M2,{IsAny:()=>K3e,IsArgument:()=>j3e,IsArray:()=>U1,IsAsyncIterator:()=>RZ,IsBigInt:()=>vZ,IsBoolean:()=>xF,IsComputed:()=>O1,IsConstructor:()=>L1,IsDate:()=>Q$n,IsFunction:()=>P1,IsImport:()=>hls,IsInteger:()=>W1,IsIntersect:()=>$g,IsIterator:()=>BZ,IsKind:()=>e9,IsKindOf:()=>Gc,IsLiteral:()=>gy,IsLiteralBoolean:()=>Cls,IsLiteralNumber:()=>bls,IsLiteralString:()=>Els,IsLiteralValue:()=>pRe,IsMappedKey:()=>W_,IsMappedResult:()=>HA,IsNever:()=>qO,IsNot:()=>D$n,IsNull:()=>Jse,IsNumber:()=>Z1,IsObject:()=>ph,IsOptional:()=>aS,IsPromise:()=>wZ,IsProperties:()=>fls,IsReadonly:()=>y6,IsRecord:()=>xZ,IsRecursive:()=>yls,IsRef:()=>Ym,IsRegExp:()=>$3e,IsSchema:()=>Cg,IsString:()=>TF,IsSymbol:()=>zse,IsTemplateLiteral:()=>Z_,IsThis:()=>F$n,IsTransform:()=>ju,IsTuple:()=>X_,IsUint8Array:()=>V$n,IsUndefined:()=>NF,IsUnion:()=>bu,IsUnknown:()=>M$n,IsUnsafe:()=>G$n,IsVoid:()=>U$n});function y6(t){return Kd(t)&&t[G1]==="Readonly"}function aS(t){return Kd(t)&&t[Lb]==="Optional"}function K3e(t){return Gc(t,"Any")}function j3e(t){return Gc(t,"Argument")}function U1(t){return Gc(t,"Array")}function RZ(t){return Gc(t,"AsyncIterator")}function vZ(t){return Gc(t,"BigInt")}function xF(t){return Gc(t,"Boolean")}function O1(t){return Gc(t,"Computed")}function L1(t){return Gc(t,"Constructor")}function Q$n(t){return Gc(t,"Date")}function P1(t){return Gc(t,"Function")}function hls(t){return Gc(t,"Import")}function W1(t){return Gc(t,"Integer")}function fls(t){return Kd(t)}function $g(t){return Gc(t,"Intersect")}function BZ(t){return Gc(t,"Iterator")}function Gc(t,e){return Kd(t)&&Fr in t&&t[Fr]===e}function Els(t){return gy(t)&&$p(t.const)}function bls(t){return gy(t)&&L_(t.const)}function Cls(t){return gy(t)&&BF(t.const)}function pRe(t){return BF(t)||L_(t)||$p(t)}function gy(t){return Gc(t,"Literal")}function W_(t){return Gc(t,"MappedKey")}function HA(t){return Gc(t,"MappedResult")}function qO(t){return Gc(t,"Never")}function D$n(t){return Gc(t,"Not")}function Jse(t){return Gc(t,"Null")}function Z1(t){return Gc(t,"Number")}function ph(t){return Gc(t,"Object")}function wZ(t){return Gc(t,"Promise")}function xZ(t){return Gc(t,"Record")}function yls(t){return Kd(t)&&sS in t&&t[sS]==="Recursive"}function Ym(t){return Gc(t,"Ref")}function $3e(t){return Gc(t,"RegExp")}function TF(t){return Gc(t,"String")}function zse(t){return Gc(t,"Symbol")}function Z_(t){return Gc(t,"TemplateLiteral")}function F$n(t){return Gc(t,"This")}function ju(t){return Kd(t)&&bg in t}function X_(t){return Gc(t,"Tuple")}function NF(t){return Gc(t,"Undefined")}function bu(t){return Gc(t,"Union")}function V$n(t){return Gc(t,"Uint8Array")}function M$n(t){return Gc(t,"Unknown")}function G$n(t){return Gc(t,"Unsafe")}function U$n(t){return Gc(t,"Void")}function e9(t){return Kd(t)&&Fr in t&&$p(t[Fr])}function Cg(t){return K3e(t)||j3e(t)||U1(t)||xF(t)||vZ(t)||RZ(t)||O1(t)||L1(t)||Q$n(t)||P1(t)||W1(t)||$g(t)||BZ(t)||gy(t)||W_(t)||HA(t)||qO(t)||D$n(t)||Jse(t)||Z1(t)||ph(t)||wZ(t)||xZ(t)||Ym(t)||$3e(t)||TF(t)||zse(t)||Z_(t)||F$n(t)||X_(t)||NF(t)||bu(t)||V$n(t)||M$n(t)||G$n(t)||U$n(t)||e9(t)}var bc=I(()=>{iS();fs()});var $n={};qo($n,{IsAny:()=>W$n,IsArgument:()=>Z$n,IsArray:()=>X$n,IsAsyncIterator:()=>Y$n,IsBigInt:()=>J$n,IsBoolean:()=>z$n,IsComputed:()=>H$n,IsConstructor:()=>K$n,IsDate:()=>j$n,IsFunction:()=>$$n,IsImport:()=>Bls,IsInteger:()=>q$n,IsIntersect:()=>eqn,IsIterator:()=>tqn,IsKind:()=>Bqn,IsKindOf:()=>Uc,IsLiteral:()=>gRe,IsLiteralBoolean:()=>wls,IsLiteralNumber:()=>rqn,IsLiteralString:()=>nqn,IsLiteralValue:()=>iqn,IsMappedKey:()=>oqn,IsMappedResult:()=>sqn,IsNever:()=>aqn,IsNot:()=>lqn,IsNull:()=>cqn,IsNumber:()=>uqn,IsObject:()=>dqn,IsOptional:()=>vls,IsPromise:()=>pqn,IsProperties:()=>q3e,IsReadonly:()=>Rls,IsRecord:()=>Aqn,IsRecursive:()=>xls,IsRef:()=>gqn,IsRegExp:()=>mqn,IsSchema:()=>yg,IsString:()=>hqn,IsSymbol:()=>fqn,IsTemplateLiteral:()=>Eqn,IsThis:()=>bqn,IsTransform:()=>Cqn,IsTuple:()=>yqn,IsUint8Array:()=>Sqn,IsUndefined:()=>Iqn,IsUnion:()=>rMt,IsUnionLiteral:()=>Tls,IsUnknown:()=>_qn,IsUnsafe:()=>Rqn,IsVoid:()=>vqn,TypeGuardUnknownTypeError:()=>eMt});function O$n(t){try{return new RegExp(t),!0}catch{return!1}}function tMt(t){if(!$p(t))return!1;for(let e=0;e<t.length;e++){let n=t.charCodeAt(e);if(n>=7&&n<=13||n===27||n===127)return!1}return!0}function L$n(t){return nMt(t)||yg(t)}function ARe(t){return hf(t)||aRe(t)}function _A(t){return hf(t)||L_(t)}function nMt(t){return hf(t)||BF(t)}function kp(t){return hf(t)||$p(t)}function Sls(t){return hf(t)||$p(t)&&tMt(t)&&O$n(t)}function _ls(t){return hf(t)||$p(t)&&tMt(t)}function P$n(t){return hf(t)||yg(t)}function Rls(t){return Kd(t)&&t[G1]==="Readonly"}function vls(t){return Kd(t)&&t[Lb]==="Optional"}function W$n(t){return Uc(t,"Any")&&kp(t.$id)}function Z$n(t){return Uc(t,"Argument")&&L_(t.index)}function X$n(t){return Uc(t,"Array")&&t.type==="array"&&kp(t.$id)&&yg(t.items)&&_A(t.minItems)&&_A(t.maxItems)&&nMt(t.uniqueItems)&&P$n(t.contains)&&_A(t.minContains)&&_A(t.maxContains)}function Y$n(t){return Uc(t,"AsyncIterator")&&t.type==="AsyncIterator"&&kp(t.$id)&&yg(t.items)}function J$n(t){return Uc(t,"BigInt")&&t.type==="bigint"&&kp(t.$id)&&ARe(t.exclusiveMaximum)&&ARe(t.exclusiveMinimum)&&ARe(t.maximum)&&ARe(t.minimum)&&ARe(t.multipleOf)}function z$n(t){return Uc(t,"Boolean")&&t.type==="boolean"&&kp(t.$id)}function H$n(t){return Uc(t,"Computed")&&$p(t.target)&&mf(t.parameters)&&t.parameters.every(e=>yg(e))}function K$n(t){return Uc(t,"Constructor")&&t.type==="Constructor"&&kp(t.$id)&&mf(t.parameters)&&t.parameters.every(e=>yg(e))&&yg(t.returns)}function j$n(t){return Uc(t,"Date")&&t.type==="Date"&&kp(t.$id)&&_A(t.exclusiveMaximumTimestamp)&&_A(t.exclusiveMinimumTimestamp)&&_A(t.maximumTimestamp)&&_A(t.minimumTimestamp)&&_A(t.multipleOfTimestamp)}function $$n(t){return Uc(t,"Function")&&t.type==="Function"&&kp(t.$id)&&mf(t.parameters)&&t.parameters.every(e=>yg(e))&&yg(t.returns)}function Bls(t){return Uc(t,"Import")&&P3e(t,"$defs")&&Kd(t.$defs)&&q3e(t.$defs)&&P3e(t,"$ref")&&$p(t.$ref)&&t.$ref in t.$defs}function q$n(t){return Uc(t,"Integer")&&t.type==="integer"&&kp(t.$id)&&_A(t.exclusiveMaximum)&&_A(t.exclusiveMinimum)&&_A(t.maximum)&&_A(t.minimum)&&_A(t.multipleOf)}function q3e(t){return Kd(t)&&Object.entries(t).every(([e,n])=>tMt(e)&&yg(n))}function eqn(t){return Uc(t,"Intersect")&&!($p(t.type)&&t.type!=="object")&&mf(t.allOf)&&t.allOf.every(e=>yg(e)&&!Cqn(e))&&kp(t.type)&&(nMt(t.unevaluatedProperties)||P$n(t.unevaluatedProperties))&&kp(t.$id)}function tqn(t){return Uc(t,"Iterator")&&t.type==="Iterator"&&kp(t.$id)&&yg(t.items)}function Uc(t,e){return Kd(t)&&Fr in t&&t[Fr]===e}function nqn(t){return gRe(t)&&$p(t.const)}function rqn(t){return gRe(t)&&L_(t.const)}function wls(t){return gRe(t)&&BF(t.const)}function gRe(t){return Uc(t,"Literal")&&kp(t.$id)&&iqn(t.const)}function iqn(t){return BF(t)||L_(t)||$p(t)}function oqn(t){return Uc(t,"MappedKey")&&mf(t.keys)&&t.keys.every(e=>L_(e)||$p(e))}function sqn(t){return Uc(t,"MappedResult")&&q3e(t.properties)}function aqn(t){return Uc(t,"Never")&&Kd(t.not)&&Object.getOwnPropertyNames(t.not).length===0}function lqn(t){return Uc(t,"Not")&&yg(t.not)}function cqn(t){return Uc(t,"Null")&&t.type==="null"&&kp(t.$id)}function uqn(t){return Uc(t,"Number")&&t.type==="number"&&kp(t.$id)&&_A(t.exclusiveMaximum)&&_A(t.exclusiveMinimum)&&_A(t.maximum)&&_A(t.minimum)&&_A(t.multipleOf)}function dqn(t){return Uc(t,"Object")&&t.type==="object"&&kp(t.$id)&&q3e(t.properties)&&L$n(t.additionalProperties)&&_A(t.minProperties)&&_A(t.maxProperties)}function pqn(t){return Uc(t,"Promise")&&t.type==="Promise"&&kp(t.$id)&&yg(t.item)}function Aqn(t){return Uc(t,"Record")&&t.type==="object"&&kp(t.$id)&&L$n(t.additionalProperties)&&Kd(t.patternProperties)&&(e=>{let n=Object.getOwnPropertyNames(e.patternProperties);return n.length===1&&O$n(n[0])&&Kd(e.patternProperties)&&yg(e.patternProperties[n[0]])})(t)}function xls(t){return Kd(t)&&sS in t&&t[sS]==="Recursive"}function gqn(t){return Uc(t,"Ref")&&kp(t.$id)&&$p(t.$ref)}function mqn(t){return Uc(t,"RegExp")&&kp(t.$id)&&$p(t.source)&&$p(t.flags)&&_A(t.maxLength)&&_A(t.minLength)}function hqn(t){return Uc(t,"String")&&t.type==="string"&&kp(t.$id)&&_A(t.minLength)&&_A(t.maxLength)&&Sls(t.pattern)&&_ls(t.format)}function fqn(t){return Uc(t,"Symbol")&&t.type==="symbol"&&kp(t.$id)}function Eqn(t){return Uc(t,"TemplateLiteral")&&t.type==="string"&&$p(t.pattern)&&t.pattern[0]==="^"&&t.pattern[t.pattern.length-1]==="$"}function bqn(t){return Uc(t,"This")&&kp(t.$id)&&$p(t.$ref)}function Cqn(t){return Kd(t)&&bg in t}function yqn(t){return Uc(t,"Tuple")&&t.type==="array"&&kp(t.$id)&&L_(t.minItems)&&L_(t.maxItems)&&t.minItems===t.maxItems&&(hf(t.items)&&hf(t.additionalItems)&&t.minItems===0||mf(t.items)&&t.items.every(e=>yg(e)))}function Iqn(t){return Uc(t,"Undefined")&&t.type==="undefined"&&kp(t.$id)}function Tls(t){return rMt(t)&&t.anyOf.every(e=>nqn(e)||rqn(e))}function rMt(t){return Uc(t,"Union")&&kp(t.$id)&&Kd(t)&&mf(t.anyOf)&&t.anyOf.every(e=>yg(e))}function Sqn(t){return Uc(t,"Uint8Array")&&t.type==="Uint8Array"&&kp(t.$id)&&_A(t.minByteLength)&&_A(t.maxByteLength)}function _qn(t){return Uc(t,"Unknown")&&kp(t.$id)}function Rqn(t){return Uc(t,"Unsafe")}function vqn(t){return Uc(t,"Void")&&t.type==="void"&&kp(t.$id)}function Bqn(t){return Kd(t)&&Fr in t&&$p(t[Fr])&&!Ils.includes(t[Fr])}function yg(t){return Kd(t)&&(W$n(t)||Z$n(t)||X$n(t)||z$n(t)||J$n(t)||Y$n(t)||H$n(t)||K$n(t)||j$n(t)||$$n(t)||q$n(t)||eqn(t)||tqn(t)||gRe(t)||oqn(t)||sqn(t)||aqn(t)||lqn(t)||cqn(t)||uqn(t)||dqn(t)||pqn(t)||Aqn(t)||gqn(t)||mqn(t)||hqn(t)||fqn(t)||Eqn(t)||bqn(t)||yqn(t)||Iqn(t)||rMt(t)||Sqn(t)||_qn(t)||Rqn(t)||vqn(t)||Bqn(t))}var eMt,Ils,iMt=I(()=>{iS();fs();jg();eMt=class extends _a{},Ils=["Argument","Any","Array","AsyncIterator","BigInt","Boolean","Computed","Constructor","Date","Enum","Function","Integer","Intersect","Iterator","Literal","MappedKey","MappedResult","Not","Null","Number","Object","Promise","Record","Ref","RegExp","String","Symbol","TemplateLiteral","This","Tuple","Undefined","Union","Uint8Array","Unknown","Void"]});var oMt=I(()=>{bc();iMt();iS()});function Nls(t){return(parseInt(t)+1).toString()}var wqn=I(()=>{});var xqn=I(()=>{wqn()});var eXe,Hse,tXe,Tqn,kls,t9,n9,sMt,Nqn=I(()=>{eXe="(true|false)",Hse="(0|[1-9][0-9]*)",tXe="(.*)",Tqn="(?!.*)",kls=`^${eXe}$`,t9=`^${Hse}$`,n9=`^${tXe}$`,sMt=`^${Tqn}$`});var mRe=I(()=>{Nqn()});var lS={};qo(lS,{Clear:()=>Dls,Delete:()=>Fls,Entries:()=>Qls,Get:()=>Gls,Has:()=>Vls,Set:()=>Mls});function Qls(){return new Map(Kse)}function Dls(){return Kse.clear()}function Fls(t){return Kse.delete(t)}function Vls(t){return Kse.has(t)}function Mls(t,e){Kse.set(t,e)}function Gls(t){return Kse.get(t)}var Kse,kqn=I(()=>{Kse=new Map});var PE={};qo(PE,{Clear:()=>Ols,Delete:()=>Lls,Entries:()=>Uls,Get:()=>Zls,Has:()=>Pls,Set:()=>Wls});function Uls(){return new Map(jse)}function Ols(){return jse.clear()}function Lls(t){return jse.delete(t)}function Pls(t){return jse.has(t)}function Wls(t,e){jse.set(t,e)}function Zls(t){return jse.get(t)}var jse,Qqn=I(()=>{jse=new Map});var I6=I(()=>{kqn();Qqn()});function nXe(t,e){return t.includes(e)}function Xls(t,e){return t.every(n=>nXe(e,n))}function aMt(t){return[...new Set(t)]}function Dqn(t,e){return t.filter(n=>e.includes(n))}function Yls(t,e){return[...t,...e]}function Jls(t,e){return t.filter(n=>!e.includes(n))}function zls(t,e){return t.reduce((n,r)=>Dqn(n,r),e)}function lMt(t){return t.length===1?t[0]:t.length>1?zls(t.slice(1),t[0]):[]}function cMt(t){let e=[];for(let n of t)e.push(...n);return e}var Fqn=I(()=>{});var hRe=I(()=>{Fqn()});function G2(t){return Zr({[Fr]:"Any"},t)}var Vqn=I(()=>{$O();fs()});var $se=I(()=>{Vqn()});function r9(t,e){return Zr({[Fr]:"Array",type:"array",items:t},e)}var Mqn=I(()=>{wa();fs()});var qse=I(()=>{Mqn()});function fRe(t){return Zr({[Fr]:"Argument",index:t})}var Gqn=I(()=>{wa();fs()});var rXe=I(()=>{Gqn()});function i9(t,e){return Zr({[Fr]:"AsyncIterator",type:"AsyncIterator",items:t},e)}var Uqn=I(()=>{fs();wa()});var eae=I(()=>{Uqn()});function RA(t,e,n){return Zr({[Fr]:"Computed",target:t,parameters:e},n)}var Oqn=I(()=>{$O();dRe()});var TZ=I(()=>{Oqn()});function Hls(t,e){let{[e]:n,...r}=t;return r}function Jm(t,e){return e.reduce((n,r)=>Hls(n,r),t)}var iXe=I(()=>{});var o9=I(()=>{iXe()});function Ol(t){return Zr({[Fr]:"Never",not:{}},t)}var Lqn=I(()=>{wa();fs()});var ff=I(()=>{Lqn()});function Kls(t){return Zr({[Fr]:"MappedKey",keys:t})}var Pqn=I(()=>{wa();fs()});function Vu(t){return Zr({[Fr]:"MappedResult",properties:t})}var uMt=I(()=>{wa();fs()});function s9(t,e,n){return Zr({[Fr]:"Constructor",type:"Constructor",parameters:t,returns:e},n)}var Wqn=I(()=>{wa();fs()});var tae=I(()=>{Wqn()});function oB(t,e,n){return Zr({[Fr]:"Function",type:"Function",parameters:t,returns:e},n)}var Zqn=I(()=>{wa();fs()});var NZ=I(()=>{Zqn()});function ERe(t,e){return Zr({[Fr]:"Union",anyOf:t},e)}var dMt=I(()=>{wa();fs()});function jls(t){return t.some(e=>aS(e))}function Xqn(t){return t.map(e=>aS(e)?$ls(e):e)}function $ls(t){return Jm(t,[Lb])}function qls(t,e){return jls(t)?WE(ERe(Xqn(t),e)):ERe(Xqn(t),e)}function U2(t,e){return t.length===1?Zr(t[0],e):t.length===0?Ol(e):qls(t,e)}var Yqn=I(()=>{wa();fs();o9();ff();kF();dMt();bc()});var Jqn=I(()=>{});function Cu(t,e){return t.length===0?Ol(e):t.length===1?Zr(t[0],e):ERe(t,e)}var zqn=I(()=>{ff();wa();dMt()});var Ah=I(()=>{Yqn();Jqn();zqn()});function ecs(t){return t.replace(/\\\$/g,"$").replace(/\\\*/g,"*").replace(/\\\^/g,"^").replace(/\\\|/g,"|").replace(/\\\(/g,"(").replace(/\\\)/g,")")}function pMt(t,e,n){return t[e]===n&&t.charCodeAt(e-1)!==92}function a9(t,e){return pMt(t,e,"(")}function CRe(t,e){return pMt(t,e,")")}function Hqn(t,e){return pMt(t,e,"|")}function tcs(t){if(!(a9(t,0)&&CRe(t,t.length-1)))return!1;let e=0;for(let n=0;n<t.length;n++)if(a9(t,n)&&(e+=1),CRe(t,n)&&(e-=1),e===0&&n!==t.length-1)return!1;return!0}function ncs(t){return t.slice(1,t.length-1)}function rcs(t){let e=0;for(let n=0;n<t.length;n++)if(a9(t,n)&&(e+=1),CRe(t,n)&&(e-=1),Hqn(t,n)&&e===0)return!0;return!1}function ics(t){for(let e=0;e<t.length;e++)if(a9(t,e))return!0;return!1}function ocs(t){let[e,n]=[0,0],r=[];for(let o=0;o<t.length;o++)if(a9(t,o)&&(e+=1),CRe(t,o)&&(e-=1),Hqn(t,o)&&e===0){let s=t.slice(n,o);s.length>0&&r.push(S6(s)),n=o+1}let i=t.slice(n);return i.length>0&&r.push(S6(i)),r.length===0?{type:"const",const:""}:r.length===1?r[0]:{type:"or",expr:r}}function scs(t){function e(i,o){if(!a9(i,o))throw new bRe("TemplateLiteralParser: Index must point to open parens");let s=0;for(let a=o;a<i.length;a++)if(a9(i,a)&&(s+=1),CRe(i,a)&&(s-=1),s===0)return[o,a];throw new bRe("TemplateLiteralParser: Unclosed group parens in expression")}function n(i,o){for(let s=o;s<i.length;s++)if(a9(i,s))return[o,s];return[o,i.length]}let r=[];for(let i=0;i<t.length;i++)if(a9(t,i)){let[o,s]=e(t,i),a=t.slice(o,s+1);r.push(S6(a)),i=s}else{let[o,s]=n(t,i),a=t.slice(o,s);a.length>0&&r.push(S6(a)),i=s-1}return r.length===0?{type:"const",const:""}:r.length===1?r[0]:{type:"and",expr:r}}function S6(t){return tcs(t)?S6(ncs(t)):rcs(t)?ocs(t):ics(t)?scs(t):{type:"const",const:ecs(t)}}function _6(t){return S6(t.slice(1,t.length-1))}var bRe,oXe=I(()=>{jg();bRe=class extends _a{}});function acs(t){return t.type==="or"&&t.expr.length===2&&t.expr[0].type==="const"&&t.expr[0].const==="0"&&t.expr[1].type==="const"&&t.expr[1].const==="[1-9][0-9]*"}function lcs(t){return t.type==="or"&&t.expr.length===2&&t.expr[0].type==="const"&&t.expr[0].const==="true"&&t.expr[1].type==="const"&&t.expr[1].const==="false"}function ccs(t){return t.type==="const"&&t.const===".*"}function kZ(t){return acs(t)||ccs(t)?!1:lcs(t)?!0:t.type==="and"?t.expr.every(e=>kZ(e)):t.type==="or"?t.expr.every(e=>kZ(e)):t.type==="const"?!0:(()=>{throw new sXe("Unknown expression type")})()}function yRe(t){let e=_6(t.pattern);return kZ(e)}var sXe,AMt=I(()=>{oXe();jg();sXe=class extends _a{}});function*Kqn(t){if(t.length===1)return yield*t[0];for(let e of t[0])for(let n of Kqn(t.slice(1)))yield`${e}${n}`}function*ucs(t){return yield*Kqn(t.expr.map(e=>[...nae(e)]))}function*dcs(t){for(let e of t.expr)yield*nae(e)}function*pcs(t){return yield t.const}function*nae(t){return t.type==="and"?yield*ucs(t):t.type==="or"?yield*dcs(t):t.type==="const"?yield*pcs(t):(()=>{throw new aXe("Unknown expression")})()}function R6(t){let e=_6(t.pattern);return kZ(e)?[...nae(e)]:[]}var aXe,gMt=I(()=>{AMt();oXe();jg();aXe=class extends _a{}});function kc(t,e){return Zr({[Fr]:"Literal",const:t,type:typeof t},e)}var jqn=I(()=>{wa();fs()});var VI=I(()=>{jqn()});function v6(t){return Zr({[Fr]:"Boolean",type:"boolean"},t)}var $qn=I(()=>{fs();$O()});var IRe=I(()=>{$qn()});function l9(t){return Zr({[Fr]:"BigInt",type:"bigint"},t)}var qqn=I(()=>{fs();$O()});var rae=I(()=>{qqn()});function cS(t){return Zr({[Fr]:"Number",type:"number"},t)}var e7n=I(()=>{wa();fs()});var QZ=I(()=>{e7n()});function Pb(t){return Zr({[Fr]:"String",type:"string"},t)}var t7n=I(()=>{wa();fs()});var DZ=I(()=>{t7n()});function*Acs(t){let e=t.trim().replace(/"|'/g,"");return e==="boolean"?yield v6():e==="number"?yield cS():e==="bigint"?yield l9():e==="string"?yield Pb():yield(()=>{let n=e.split("|").map(r=>kc(r.trim()));return n.length===0?Ol():n.length===1?n[0]:U2(n)})()}function*gcs(t){if(t[1]!=="{"){let e=kc("$"),n=mMt(t.slice(1));return yield*[e,...n]}for(let e=2;e<t.length;e++)if(t[e]==="}"){let n=Acs(t.slice(2,e)),r=mMt(t.slice(e+1));return yield*[...n,...r]}yield kc(t)}function*mMt(t){for(let e=0;e<t.length;e++)if(t[e]==="$"){let n=kc(t.slice(0,e)),r=gcs(t.slice(e));return yield*[n,...r]}yield kc(t)}function hMt(t){return[...mMt(t)]}var fMt=I(()=>{VI();IRe();rae();QZ();DZ();Ah();ff()});function mcs(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function n7n(t,e){return Z_(t)?t.pattern.slice(1,t.pattern.length-1):bu(t)?`(${t.anyOf.map(n=>n7n(n,e)).join("|")})`:Z1(t)?`${e}${Hse}`:W1(t)?`${e}${Hse}`:vZ(t)?`${e}${Hse}`:TF(t)?`${e}${tXe}`:gy(t)?`${e}${mcs(t.const.toString())}`:xF(t)?`${e}${eXe}`:(()=>{throw new lXe(`Unexpected Kind '${t[Fr]}'`)})()}function cXe(t){return`^${t.map(e=>n7n(e,"")).join("")}$`}var lXe,EMt=I(()=>{mRe();fs();jg();bc();lXe=class extends _a{}});function FZ(t){let n=R6(t).map(r=>kc(r));return U2(n)}var r7n=I(()=>{Ah();VI();gMt()});function B6(t,e){let n=$p(t)?cXe(hMt(t)):cXe(t);return Zr({[Fr]:"TemplateLiteral",type:"string",pattern:n},e)}var i7n=I(()=>{wa();fMt();EMt();iS();fs()});var O2=I(()=>{AMt();gMt();fMt();oXe();EMt();r7n();i7n()});function hcs(t){return R6(t).map(n=>n.toString())}function fcs(t){let e=[];for(let n of t)e.push(...uS(n));return e}function Ecs(t){return[t.toString()]}function uS(t){return[...new Set(Z_(t)?hcs(t):bu(t)?fcs(t.anyOf):gy(t)?Ecs(t.const):Z1(t)?["[number]"]:W1(t)?["[number]"]:[])]}var uXe=I(()=>{O2();bc()});function bcs(t,e,n){let r={};for(let i of Object.getOwnPropertyNames(e))r[i]=L2(t,uS(e[i]),n);return r}function Ccs(t,e,n){return bcs(t,e.properties,n)}function bMt(t,e,n){let r=Ccs(t,e,n);return Vu(r)}var CMt=I(()=>{qf();uXe();P2()});function s7n(t,e){return t.map(n=>yMt(n,e))}function ycs(t){return t.filter(e=>!qO(e))}function Ics(t,e){return SRe(ycs(s7n(t,e)))}function Scs(t){return t.some(e=>qO(e))?[]:t}function _cs(t,e){return U2(Scs(s7n(t,e)))}function Rcs(t,e){return e in t?t[e]:e==="[number]"?U2(t):Ol()}function vcs(t,e){return e==="[number]"?t:Ol()}function Bcs(t,e){return e in t?t[e]:Ol()}function yMt(t,e){return $g(t)?Ics(t.allOf,e):bu(t)?_cs(t.anyOf,e):X_(t)?Rcs(t.items??[],e):U1(t)?vcs(t.items,e):ph(t)?Bcs(t.properties,e):Ol()}function iae(t,e){return e.map(n=>yMt(t,n))}function o7n(t,e){return U2(iae(t,e))}function wcs(t,e){return RA("Index",[t,e])}function L2(t,e,n){if(Ym(t)||Ym(e)){let r="Index types using Ref parameters require both Type and Key to be of TSchema";if(!Cg(t)||!Cg(e))throw new _a(r);return RA("Index",[t,e])}return HA(e)?bMt(t,e,n):W_(e)?IMt(t,e,n):Zr(Cg(e)?o7n(t,uS(e)):o7n(t,e),n)}var dXe=I(()=>{wa();jg();TZ();ff();sB();Ah();uXe();SMt();CMt();bc()});function xcs(t,e,n){return{[e]:L2(t,[e],JA(n))}}function Tcs(t,e,n){return e.reduce((r,i)=>({...r,...xcs(t,i,n)}),{})}function Ncs(t,e,n){return Tcs(t,e.keys,n)}function IMt(t,e,n){let r=Ncs(t,e,n);return Vu(r)}var SMt=I(()=>{dXe();qf();P_()});var P2=I(()=>{SMt();CMt();uXe();dXe()});function c9(t,e){return Zr({[Fr]:"Iterator",type:"Iterator",items:t},e)}var a7n=I(()=>{wa();fs()});var oae=I(()=>{a7n()});function kcs(t){return globalThis.Object.keys(t).filter(e=>!aS(t[e]))}function Qcs(t,e){let n=kcs(t),r=n.length>0?{[Fr]:"Object",type:"object",required:n,properties:t}:{[Fr]:"Object",type:"object",properties:t};return Zr(r,e)}var yu,l7n=I(()=>{wa();fs();bc();yu=Qcs});var dS=I(()=>{l7n()});function w6(t,e){return Zr({[Fr]:"Promise",type:"Promise",item:t},e)}var c7n=I(()=>{wa();fs()});var _Re=I(()=>{c7n()});function Dcs(t){return Zr(Jm(t,[G1]))}function Fcs(t){return Zr({...t,[G1]:"Readonly"})}function Vcs(t,e){return e===!1?Dcs(t):Fcs(t)}function my(t,e){let n=e??!0;return HA(t)?RMt(t,n):Vcs(t,n)}var _Mt=I(()=>{wa();fs();o9();vMt();bc()});function Mcs(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=my(t[r],e);return n}function Gcs(t,e){return Mcs(t.properties,e)}function RMt(t,e){let n=Gcs(t,e);return Vu(n)}var vMt=I(()=>{qf();_Mt()});var VZ=I(()=>{vMt();_Mt()});function pS(t,e){return Zr(t.length>0?{[Fr]:"Tuple",type:"array",items:t,additionalItems:!1,minItems:t.length,maxItems:t.length}:{[Fr]:"Tuple",type:"array",minItems:t.length,maxItems:t.length},e)}var u7n=I(()=>{wa();fs()});var u9=I(()=>{u7n()});function d7n(t,e){return t in e?X1(t,e[t]):Vu(e)}function Ucs(t){return{[t]:kc(t)}}function Ocs(t){let e={};for(let n of t)e[n]=kc(n);return e}function Lcs(t,e){return nXe(e,t)?Ucs(t):Ocs(e)}function Pcs(t,e){let n=Lcs(t,e);return d7n(t,n)}function RRe(t,e){return e.map(n=>X1(t,n))}function Wcs(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=X1(t,e[r]);return n}function X1(t,e){let n={...e};return aS(e)?WE(X1(t,Jm(e,[Lb]))):y6(e)?my(X1(t,Jm(e,[G1]))):HA(e)?d7n(t,e.properties):W_(e)?Pcs(t,e.keys):L1(e)?s9(RRe(t,e.parameters),X1(t,e.returns),n):P1(e)?oB(RRe(t,e.parameters),X1(t,e.returns),n):RZ(e)?i9(X1(t,e.items),n):BZ(e)?c9(X1(t,e.items),n):$g(e)?ZE(RRe(t,e.allOf),n):bu(e)?Cu(RRe(t,e.anyOf),n):X_(e)?pS(RRe(t,e.items??[]),n):ph(e)?yu(Wcs(t,e.properties),n):U1(e)?r9(X1(t,e.items),n):wZ(e)?w6(X1(t,e.item),n):e}function p7n(t,e){let n={};for(let r of t)n[r]=X1(r,e);return n}function vRe(t,e,n){let r=Cg(t)?uS(t):t,i=e({[Fr]:"MappedKey",keys:r}),o=p7n(r,i);return yu(o,n)}var A7n=I(()=>{fs();o9();qse();eae();tae();NZ();P2();sB();oae();VI();dS();kF();_Re();VZ();u9();Ah();hRe();uMt();bc()});var qf=I(()=>{Pqn();uMt();A7n()});function Zcs(t){return Zr(Jm(t,[Lb]))}function Xcs(t){return Zr({...t,[Lb]:"Optional"})}function Ycs(t,e){return e===!1?Zcs(t):Xcs(t)}function WE(t,e){let n=e??!0;return HA(t)?wMt(t,n):Ycs(t,n)}var BMt=I(()=>{wa();fs();o9();xMt();bc()});function Jcs(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=WE(t[r],e);return n}function zcs(t,e){return Jcs(t.properties,e)}function wMt(t,e){let n=zcs(t,e);return Vu(n)}var xMt=I(()=>{qf();BMt()});var kF=I(()=>{xMt();BMt()});function BRe(t,e={}){let n=t.every(i=>ph(i)),r=Cg(e.unevaluatedProperties)?{unevaluatedProperties:e.unevaluatedProperties}:{};return Zr(e.unevaluatedProperties===!1||Cg(e.unevaluatedProperties)||n?{...r,[Fr]:"Intersect",type:"object",allOf:t}:{...r,[Fr]:"Intersect",allOf:t},e)}var TMt=I(()=>{wa();fs();bc()});function Hcs(t){return t.every(e=>aS(e))}function Kcs(t){return Jm(t,[Lb])}function g7n(t){return t.map(e=>aS(e)?Kcs(e):e)}function jcs(t,e){return Hcs(t)?WE(BRe(g7n(t),e)):BRe(g7n(t),e)}function SRe(t,e={}){if(t.length===1)return Zr(t[0],e);if(t.length===0)return Ol(e);if(t.some(n=>ju(n)))throw new Error("Cannot intersect transform types");return jcs(t,e)}var m7n=I(()=>{fs();wa();o9();ff();kF();TMt();bc()});var h7n=I(()=>{});function ZE(t,e){if(t.length===1)return Zr(t[0],e);if(t.length===0)return Ol(e);if(t.some(n=>ju(n)))throw new Error("Cannot intersect transform types");return BRe(t,e)}var f7n=I(()=>{wa();ff();TMt();bc()});var sB=I(()=>{m7n();h7n();f7n()});function AS(...t){let[e,n]=typeof t[0]=="string"?[t[0],t[1]]:[t[0].$id,t[1]];if(typeof e!="string")throw new _a("Ref: $ref must be a string");return Zr({[Fr]:"Ref",$ref:e},n)}var E7n=I(()=>{jg();wa();fs()});var d9=I(()=>{E7n()});function $cs(t,e){return RA("Awaited",[RA(t,e)])}function qcs(t){return RA("Awaited",[AS(t)])}function eus(t){return ZE(b7n(t))}function tus(t){return Cu(b7n(t))}function nus(t){return p9(t)}function b7n(t){return t.map(e=>p9(e))}function p9(t,e){return Zr(O1(t)?$cs(t.target,t.parameters):$g(t)?eus(t.allOf):bu(t)?tus(t.anyOf):wZ(t)?nus(t.item):Ym(t)?qcs(t.$ref):t,e)}var C7n=I(()=>{wa();TZ();sB();Ah();d9();bc()});var wRe=I(()=>{C7n()});function y7n(t){let e=[];for(let n of t)e.push(gS(n));return e}function rus(t){let e=y7n(t);return cMt(e)}function ius(t){let e=y7n(t);return lMt(e)}function ous(t){return t.map((e,n)=>n.toString())}function sus(t){return["[number]"]}function aus(t){return globalThis.Object.getOwnPropertyNames(t)}function lus(t){return NMt?globalThis.Object.getOwnPropertyNames(t).map(n=>n[0]==="^"&&n[n.length-1]==="$"?n.slice(1,n.length-1):n):[]}function gS(t){return $g(t)?rus(t.allOf):bu(t)?ius(t.anyOf):X_(t)?ous(t.items??[]):U1(t)?sus(t.items):ph(t)?aus(t.properties):xZ(t)?lus(t.patternProperties):[]}function QF(t){NMt=!0;let e=gS(t);return NMt=!1,`^(${e.map(r=>`(${r})`).join("|")})$`}var NMt,pXe=I(()=>{hRe();bc();NMt=!1});function cus(t,e){return RA("KeyOf",[RA(t,e)])}function uus(t){return RA("KeyOf",[AS(t)])}function dus(t,e){let n=gS(t),r=I7n(n),i=U2(r);return Zr(i,e)}function I7n(t){return t.map(e=>e==="[number]"?cS():kc(e))}function A9(t,e){return O1(t)?cus(t.target,t.parameters):Ym(t)?uus(t.$ref):HA(t)?QMt(t,e):dus(t,e)}var kMt=I(()=>{wa();VI();QZ();TZ();d9();pXe();Ah();DMt();bc()});function pus(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=A9(t[r],JA(e));return n}function Aus(t,e){return pus(t.properties,e)}function QMt(t,e){let n=Aus(t,e);return Vu(n)}var DMt=I(()=>{qf();kMt();P_()});function xRe(t){let e=gS(t),n=iae(t,e);return e.map((r,i)=>[e[i],n[i]])}var S7n=I(()=>{dXe();pXe()});var Y1=I(()=>{DMt();S7n();pXe();kMt()});function gus(t){let e=[];for(let n of t)e.push(...gS(n));return aMt(e)}function mus(t){return t.filter(e=>!qO(e))}function hus(t,e){let n=[];for(let r of t)n.push(...iae(r,[e]));return mus(n)}function fus(t,e){let n={};for(let r of e)n[r]=SRe(hus(t,r));return n}function TRe(t,e){let n=gus(t),r=fus(t,n);return yu(r,e)}var _7n=I(()=>{sB();P2();Y1();dS();hRe();bc()});var AXe=I(()=>{_7n()});function x6(t){return Zr({[Fr]:"Date",type:"Date"},t)}var R7n=I(()=>{fs();wa()});var NRe=I(()=>{R7n()});function T6(t){return Zr({[Fr]:"Null",type:"null"},t)}var v7n=I(()=>{wa();fs()});var kRe=I(()=>{v7n()});function N6(t){return Zr({[Fr]:"Symbol",type:"symbol"},t)}var B7n=I(()=>{wa();fs()});var QRe=I(()=>{B7n()});function k6(t){return Zr({[Fr]:"Undefined",type:"undefined"},t)}var w7n=I(()=>{wa();fs()});var DRe=I(()=>{w7n()});function Q6(t){return Zr({[Fr]:"Uint8Array",type:"Uint8Array"},t)}var x7n=I(()=>{wa();fs()});var FRe=I(()=>{x7n()});function Y_(t){return Zr({[Fr]:"Unknown"},t)}var T7n=I(()=>{wa();fs()});var MZ=I(()=>{T7n()});function Eus(t){return t.map(e=>FMt(e,!1))}function bus(t){let e={};for(let n of globalThis.Object.getOwnPropertyNames(t))e[n]=my(FMt(t[n],!1));return e}function gXe(t,e){return e===!0?t:my(t)}function FMt(t,e){return YVt(t)?gXe(G2(),e):zVt(t)?gXe(G2(),e):mf(t)?my(pS(Eus(t))):HO(t)?Q6():C6(t)?x6():Kd(t)?gXe(yu(bus(t)),e):JVt(t)?gXe(oB([],Y_()),e):hf(t)?k6():HVt(t)?T6():KVt(t)?N6():aRe(t)?l9():L_(t)?kc(t):BF(t)?kc(t):$p(t)?kc(t):yu({})}function VRe(t,e){return Zr(FMt(t,!0),e)}var N7n=I(()=>{$se();rae();NRe();NZ();VI();kRe();dS();QRe();u9();VZ();DRe();FRe();MZ();$O();iS()});var mXe=I(()=>{N7n()});function MRe(t,e){return L1(t)?pS(t.parameters,e):Ol(e)}var k7n=I(()=>{u9();ff();bc()});var hXe=I(()=>{k7n()});function GRe(t,e){if(hf(t))throw new Error("Enum undefined or empty");let n=globalThis.Object.getOwnPropertyNames(t).filter(o=>isNaN(o)).map(o=>t[o]),i=[...new Set(n)].map(o=>kc(o));return Cu(i,{...e,[sS]:"Enum"})}var Q7n=I(()=>{VI();fs();Ah();iS()});var fXe=I(()=>{Q7n()});function J1(t){return t===zr.False?t:zr.True}function sae(t){throw new EXe(t)}function eE(t){return $n.IsNever(t)||$n.IsIntersect(t)||$n.IsUnion(t)||$n.IsUnknown(t)||$n.IsAny(t)}function tE(t,e){return $n.IsNever(e)?O7n(t,e):$n.IsIntersect(e)?bXe(t,e):$n.IsUnion(e)?OMt(t,e):$n.IsUnknown(e)?Z7n(t,e):$n.IsAny(e)?UMt(t,e):sae("StructuralRight")}function UMt(t,e){return zr.True}function Cus(t,e){return $n.IsIntersect(e)?bXe(t,e):$n.IsUnion(e)&&e.anyOf.some(n=>$n.IsAny(n)||$n.IsUnknown(n))?zr.True:$n.IsUnion(e)?zr.Union:$n.IsUnknown(e)||$n.IsAny(e)?zr.True:zr.Union}function yus(t,e){return $n.IsUnknown(t)?zr.False:$n.IsAny(t)?zr.Union:$n.IsNever(t)?zr.True:zr.False}function Ius(t,e){return $n.IsObject(e)&&CXe(e)?zr.True:eE(e)?tE(t,e):$n.IsArray(e)?J1(Qp(t.items,e.items)):zr.False}function Sus(t,e){return eE(e)?tE(t,e):$n.IsAsyncIterator(e)?J1(Qp(t.items,e.items)):zr.False}function _us(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsBigInt(e)?zr.True:zr.False}function G7n(t,e){return $n.IsLiteralBoolean(t)||$n.IsBoolean(t)?zr.True:zr.False}function Rus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsBoolean(e)?zr.True:zr.False}function vus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsConstructor(e)?t.parameters.length>e.parameters.length?zr.False:t.parameters.every((n,r)=>J1(Qp(e.parameters[r],n))===zr.True)?J1(Qp(t.returns,e.returns)):zr.False:zr.False}function Bus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsDate(e)?zr.True:zr.False}function wus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsFunction(e)?t.parameters.length>e.parameters.length?zr.False:t.parameters.every((n,r)=>J1(Qp(e.parameters[r],n))===zr.True)?J1(Qp(t.returns,e.returns)):zr.False:zr.False}function U7n(t,e){return $n.IsLiteral(t)&&py.IsNumber(t.const)||$n.IsNumber(t)||$n.IsInteger(t)?zr.True:zr.False}function xus(t,e){return $n.IsInteger(e)||$n.IsNumber(e)?zr.True:eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):zr.False}function bXe(t,e){return e.allOf.every(n=>Qp(t,n)===zr.True)?zr.True:zr.False}function Tus(t,e){return t.allOf.some(n=>Qp(n,e)===zr.True)?zr.True:zr.False}function Nus(t,e){return eE(e)?tE(t,e):$n.IsIterator(e)?J1(Qp(t.items,e.items)):zr.False}function kus(t,e){return $n.IsLiteral(e)&&e.const===t.const?zr.True:eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsString(e)?W7n(t,e):$n.IsNumber(e)?L7n(t,e):$n.IsInteger(e)?U7n(t,e):$n.IsBoolean(e)?G7n(t,e):zr.False}function O7n(t,e){return zr.False}function Qus(t,e){return zr.True}function D7n(t){let[e,n]=[t,0];for(;$n.IsNot(e);)e=e.not,n+=1;return n%2===0?e:Y_()}function Dus(t,e){return $n.IsNot(t)?Qp(D7n(t),e):$n.IsNot(e)?Qp(t,D7n(e)):sae("Invalid fallthrough for Not")}function Fus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsNull(e)?zr.True:zr.False}function L7n(t,e){return $n.IsLiteralNumber(t)||$n.IsNumber(t)||$n.IsInteger(t)?zr.True:zr.False}function Vus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsInteger(e)||$n.IsNumber(e)?zr.True:zr.False}function J_(t,e){return Object.getOwnPropertyNames(t.properties).length===e}function F7n(t){return CXe(t)}function V7n(t){return J_(t,0)||J_(t,1)&&"description"in t.properties&&$n.IsUnion(t.properties.description)&&t.properties.description.anyOf.length===2&&($n.IsString(t.properties.description.anyOf[0])&&$n.IsUndefined(t.properties.description.anyOf[1])||$n.IsString(t.properties.description.anyOf[1])&&$n.IsUndefined(t.properties.description.anyOf[0]))}function VMt(t){return J_(t,0)}function M7n(t){return J_(t,0)}function Mus(t){return J_(t,0)}function Gus(t){return J_(t,0)}function Uus(t){return CXe(t)}function Ous(t){let e=cS();return J_(t,0)||J_(t,1)&&"length"in t.properties&&J1(Qp(t.properties.length,e))===zr.True}function Lus(t){return J_(t,0)}function CXe(t){let e=cS();return J_(t,0)||J_(t,1)&&"length"in t.properties&&J1(Qp(t.properties.length,e))===zr.True}function Pus(t){let e=oB([G2()],G2());return J_(t,0)||J_(t,1)&&"then"in t.properties&&J1(Qp(t.properties.then,e))===zr.True}function P7n(t,e){return Qp(t,e)===zr.False||$n.IsOptional(t)&&!$n.IsOptional(e)?zr.False:zr.True}function MI(t,e){return $n.IsUnknown(t)?zr.False:$n.IsAny(t)?zr.Union:$n.IsNever(t)||$n.IsLiteralString(t)&&F7n(e)||$n.IsLiteralNumber(t)&&VMt(e)||$n.IsLiteralBoolean(t)&&M7n(e)||$n.IsSymbol(t)&&V7n(e)||$n.IsBigInt(t)&&Mus(e)||$n.IsString(t)&&F7n(e)||$n.IsSymbol(t)&&V7n(e)||$n.IsNumber(t)&&VMt(e)||$n.IsInteger(t)&&VMt(e)||$n.IsBoolean(t)&&M7n(e)||$n.IsUint8Array(t)&&Uus(e)||$n.IsDate(t)&&Gus(e)||$n.IsConstructor(t)&&Lus(e)||$n.IsFunction(t)&&Ous(e)?zr.True:$n.IsRecord(t)&&$n.IsString(MMt(t))?e[sS]==="Record"?zr.True:zr.False:$n.IsRecord(t)&&$n.IsNumber(MMt(t))&&J_(e,0)?zr.True:zr.False}function Wus(t,e){return eE(e)?tE(t,e):$n.IsRecord(e)?z1(t,e):$n.IsObject(e)?(()=>{for(let n of Object.getOwnPropertyNames(e.properties)){if(!(n in t.properties)&&!$n.IsOptional(e.properties[n]))return zr.False;if($n.IsOptional(e.properties[n]))return zr.True;if(P7n(t.properties[n],e.properties[n])===zr.False)return zr.False}return zr.True})():zr.False}function Zus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)&&Pus(e)?zr.True:$n.IsPromise(e)?J1(Qp(t.item,e.item)):zr.False}function MMt(t){return t9 in t.patternProperties?cS():n9 in t.patternProperties?Pb():sae("Unknown record key pattern")}function GMt(t){return t9 in t.patternProperties?t.patternProperties[t9]:n9 in t.patternProperties?t.patternProperties[n9]:sae("Unable to get record value schema")}function z1(t,e){let[n,r]=[MMt(e),GMt(e)];return $n.IsLiteralString(t)&&$n.IsNumber(n)&&J1(Qp(t,r))===zr.True?zr.True:$n.IsUint8Array(t)&&$n.IsNumber(n)||$n.IsString(t)&&$n.IsNumber(n)||$n.IsArray(t)&&$n.IsNumber(n)?Qp(t,r):$n.IsObject(t)?(()=>{for(let i of Object.getOwnPropertyNames(t.properties))if(P7n(r,t.properties[i])===zr.False)return zr.False;return zr.True})():zr.False}function Xus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?Qp(GMt(t),GMt(e)):zr.False}function Yus(t,e){let n=$n.IsRegExp(t)?Pb():t,r=$n.IsRegExp(e)?Pb():e;return Qp(n,r)}function W7n(t,e){return $n.IsLiteral(t)&&py.IsString(t.const)||$n.IsString(t)?zr.True:zr.False}function Jus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsString(e)?zr.True:zr.False}function zus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsSymbol(e)?zr.True:zr.False}function Hus(t,e){return $n.IsTemplateLiteral(t)?Qp(FZ(t),e):$n.IsTemplateLiteral(e)?Qp(t,FZ(e)):sae("Invalid fallthrough for TemplateLiteral")}function Kus(t,e){return $n.IsArray(e)&&t.items!==void 0&&t.items.every(n=>Qp(n,e.items)===zr.True)}function jus(t,e){return $n.IsNever(t)?zr.True:$n.IsUnknown(t)?zr.False:$n.IsAny(t)?zr.Union:zr.False}function $us(t,e){return eE(e)?tE(t,e):$n.IsObject(e)&&CXe(e)||$n.IsArray(e)&&Kus(t,e)?zr.True:$n.IsTuple(e)?py.IsUndefined(t.items)&&!py.IsUndefined(e.items)||!py.IsUndefined(t.items)&&py.IsUndefined(e.items)?zr.False:py.IsUndefined(t.items)&&!py.IsUndefined(e.items)||t.items.every((n,r)=>Qp(n,e.items[r])===zr.True)?zr.True:zr.False:zr.False}function qus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsUint8Array(e)?zr.True:zr.False}function eds(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsVoid(e)?rds(t,e):$n.IsUndefined(e)?zr.True:zr.False}function OMt(t,e){return e.anyOf.some(n=>Qp(t,n)===zr.True)?zr.True:zr.False}function tds(t,e){return t.anyOf.every(n=>Qp(n,e)===zr.True)?zr.True:zr.False}function Z7n(t,e){return zr.True}function nds(t,e){return $n.IsNever(e)?O7n(t,e):$n.IsIntersect(e)?bXe(t,e):$n.IsUnion(e)?OMt(t,e):$n.IsAny(e)?UMt(t,e):$n.IsString(e)?W7n(t,e):$n.IsNumber(e)?L7n(t,e):$n.IsInteger(e)?U7n(t,e):$n.IsBoolean(e)?G7n(t,e):$n.IsArray(e)?yus(t,e):$n.IsTuple(e)?jus(t,e):$n.IsObject(e)?MI(t,e):$n.IsUnknown(e)?zr.True:zr.False}function rds(t,e){return $n.IsUndefined(t)||$n.IsUndefined(t)?zr.True:zr.False}function ids(t,e){return $n.IsIntersect(e)?bXe(t,e):$n.IsUnion(e)?OMt(t,e):$n.IsUnknown(e)?Z7n(t,e):$n.IsAny(e)?UMt(t,e):$n.IsObject(e)?MI(t,e):$n.IsVoid(e)?zr.True:zr.False}function Qp(t,e){return $n.IsTemplateLiteral(t)||$n.IsTemplateLiteral(e)?Hus(t,e):$n.IsRegExp(t)||$n.IsRegExp(e)?Yus(t,e):$n.IsNot(t)||$n.IsNot(e)?Dus(t,e):$n.IsAny(t)?Cus(t,e):$n.IsArray(t)?Ius(t,e):$n.IsBigInt(t)?_us(t,e):$n.IsBoolean(t)?Rus(t,e):$n.IsAsyncIterator(t)?Sus(t,e):$n.IsConstructor(t)?vus(t,e):$n.IsDate(t)?Bus(t,e):$n.IsFunction(t)?wus(t,e):$n.IsInteger(t)?xus(t,e):$n.IsIntersect(t)?Tus(t,e):$n.IsIterator(t)?Nus(t,e):$n.IsLiteral(t)?kus(t,e):$n.IsNever(t)?Qus(t,e):$n.IsNull(t)?Fus(t,e):$n.IsNumber(t)?Vus(t,e):$n.IsObject(t)?Wus(t,e):$n.IsRecord(t)?Xus(t,e):$n.IsString(t)?Jus(t,e):$n.IsSymbol(t)?zus(t,e):$n.IsTuple(t)?$us(t,e):$n.IsPromise(t)?Zus(t,e):$n.IsUint8Array(t)?qus(t,e):$n.IsUndefined(t)?eds(t,e):$n.IsUnion(t)?tds(t,e):$n.IsUnknown(t)?nds(t,e):$n.IsVoid(t)?ids(t,e):sae(`Unknown left type operand '${t[Fr]}'`)}function g9(t,e){return Qp(t,e)}var EXe,zr,LMt=I(()=>{$se();NZ();QZ();DZ();MZ();O2();mRe();fs();jg();oMt();EXe=class extends _a{};(function(t){t[t.Union=0]="Union",t[t.True=1]="True",t[t.False=2]="False"})(zr||(zr={}))});function ods(t,e,n,r,i){let o={};for(let s of globalThis.Object.getOwnPropertyNames(t))o[s]=m9(t[s],e,n,r,JA(i));return o}function sds(t,e,n,r,i){return ods(t.properties,e,n,r,i)}function PMt(t,e,n,r,i){let o=sds(t,e,n,r,i);return Vu(o)}var WMt=I(()=>{qf();yXe();P_()});function ads(t,e,n,r){let i=g9(t,e);return i===zr.Union?Cu([n,r]):i===zr.True?n:r}function m9(t,e,n,r,i){return HA(t)?PMt(t,e,n,r,i):W_(t)?Zr(ZMt(t,e,n,r,i)):Zr(ads(t,e,n,r),i)}var yXe=I(()=>{wa();Ah();LMt();XMt();WMt();bc()});function lds(t,e,n,r,i){return{[t]:m9(kc(t),e,n,r,JA(i))}}function cds(t,e,n,r,i){return t.reduce((o,s)=>({...o,...lds(s,e,n,r,i)}),{})}function uds(t,e,n,r,i){return cds(t.keys,e,n,r,i)}function ZMt(t,e,n,r,i){let o=uds(t,e,n,r,i);return Vu(o)}var XMt=I(()=>{qf();VI();yXe();P_()});function dds(t){return t.allOf.every(e=>DF(e))}function pds(t){return t.anyOf.some(e=>DF(e))}function Ads(t){return!DF(t.not)}function DF(t){return t[Fr]==="Intersect"?dds(t):t[Fr]==="Union"?pds(t):t[Fr]==="Not"?Ads(t):t[Fr]==="Undefined"}var IXe=I(()=>{fs()});var D6=I(()=>{LMt();XMt();WMt();IXe();yXe()});function YMt(t,e){return h9(FZ(t),e)}var JMt=I(()=>{SXe();O2()});function gds(t,e){let n=t.filter(r=>g9(r,e)===zr.False);return n.length===1?n[0]:Cu(n)}function h9(t,e,n={}){return Z_(t)?Zr(YMt(t,e),n):HA(t)?Zr(zMt(t,e),n):Zr(bu(t)?gds(t.anyOf,e):g9(t,e)!==zr.False?Ol():t,n)}var SXe=I(()=>{wa();Ah();ff();D6();HMt();JMt();bc()});function mds(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=h9(t[r],e);return n}function hds(t,e){return mds(t.properties,e)}function zMt(t,e){let n=hds(t,e);return Vu(n)}var HMt=I(()=>{qf();SXe()});var _Xe=I(()=>{HMt();JMt();SXe()});function KMt(t,e){return f9(FZ(t),e)}var jMt=I(()=>{RXe();O2()});function fds(t,e){let n=t.filter(r=>g9(r,e)!==zr.False);return n.length===1?n[0]:Cu(n)}function f9(t,e,n){return Z_(t)?Zr(KMt(t,e),n):HA(t)?Zr($Mt(t,e),n):Zr(bu(t)?fds(t.anyOf,e):g9(t,e)!==zr.False?t:Ol(),n)}var RXe=I(()=>{wa();Ah();ff();D6();qMt();jMt();bc()});function Eds(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=f9(t[r],e);return n}function bds(t,e){return Eds(t.properties,e)}function $Mt(t,e){let n=bds(t,e);return Vu(n)}var qMt=I(()=>{qf();RXe()});var vXe=I(()=>{qMt();jMt();RXe()});function URe(t,e){return L1(t)?Zr(t.returns,e):Ol(e)}var X7n=I(()=>{wa();ff();bc()});var BXe=I(()=>{X7n()});function F6(t){return my(WE(t))}var Y7n=I(()=>{VZ();kF()});var ORe=I(()=>{Y7n()});function V6(t,e,n){return Zr({[Fr]:"Record",type:"object",patternProperties:{[t]:e}},n)}function eGt(t,e,n){let r={};for(let i of t)r[i]=e;return yu(r,{...n,[sS]:"Record"})}function Cds(t,e,n){return yRe(t)?eGt(uS(t),e,n):V6(t.pattern,e,n)}function yds(t,e,n){return eGt(uS(Cu(t)),e,n)}function Ids(t,e,n){return eGt([t.toString()],e,n)}function Sds(t,e,n){return V6(t.source,e,n)}function _ds(t,e,n){let r=hf(t.pattern)?n9:t.pattern;return V6(r,e,n)}function Rds(t,e,n){return V6(n9,e,n)}function vds(t,e,n){return V6(sMt,e,n)}function Bds(t,e,n){return yu({true:e,false:e},n)}function wds(t,e,n){return V6(t9,e,n)}function xds(t,e,n){return V6(t9,e,n)}function M6(t,e,n={}){return bu(t)?yds(t.anyOf,e,n):Z_(t)?Cds(t,e,n):gy(t)?Ids(t.const,e,n):xF(t)?Bds(t,e,n):W1(t)?wds(t,e,n):Z1(t)?xds(t,e,n):$3e(t)?Sds(t,e,n):TF(t)?_ds(t,e,n):K3e(t)?Rds(t,e,n):qO(t)?vds(t,e,n):Ol(n)}function LRe(t){return globalThis.Object.getOwnPropertyNames(t.patternProperties)[0]}function tGt(t){let e=LRe(t);return e===n9?Pb():e===t9?cS():Pb({pattern:e})}function PRe(t){return t.patternProperties[LRe(t)]}var J7n=I(()=>{wa();fs();ff();QZ();dS();DZ();Ah();O2();mRe();P2();iS();bc()});var aae=I(()=>{J7n()});function Tds(t,e){return e.parameters=lae(t,e.parameters),e.returns=W2(t,e.returns),e}function Nds(t,e){return e.parameters=lae(t,e.parameters),e.returns=W2(t,e.returns),e}function kds(t,e){return e.allOf=lae(t,e.allOf),e}function Qds(t,e){return e.anyOf=lae(t,e.anyOf),e}function Dds(t,e){return hf(e.items)||(e.items=lae(t,e.items)),e}function Fds(t,e){return e.items=W2(t,e.items),e}function Vds(t,e){return e.items=W2(t,e.items),e}function Mds(t,e){return e.items=W2(t,e.items),e}function Gds(t,e){return e.item=W2(t,e.item),e}function Uds(t,e){let n=Wds(t,e.properties);return{...e,...yu(n)}}function Ods(t,e){let n=W2(t,tGt(e)),r=W2(t,PRe(e)),i=M6(n,r);return{...e,...i}}function Lds(t,e){return e.index in t?t[e.index]:Y_()}function Pds(t,e){let n=y6(e),r=aS(e),i=W2(t,e);return n&&r?F6(i):n&&!r?my(i):!n&&r?WE(i):i}function Wds(t,e){return globalThis.Object.getOwnPropertyNames(e).reduce((n,r)=>({...n,[r]:Pds(t,e[r])}),{})}function lae(t,e){return e.map(n=>W2(t,n))}function W2(t,e){return L1(e)?Tds(t,e):P1(e)?Nds(t,e):$g(e)?kds(t,e):bu(e)?Qds(t,e):X_(e)?Dds(t,e):U1(e)?Fds(t,e):RZ(e)?Vds(t,e):BZ(e)?Mds(t,e):wZ(e)?Gds(t,e):ph(e)?Uds(t,e):xZ(e)?Ods(t,e):j3e(e)?Lds(t,e):e}function WRe(t,e){return W2(e,SZ(t))}var z7n=I(()=>{Z3e();MZ();ORe();VZ();kF();dS();aae();iS();bc()});var wXe=I(()=>{z7n()});function ZRe(t){return Zr({[Fr]:"Integer",type:"integer"},t)}var H7n=I(()=>{wa();fs()});var xXe=I(()=>{H7n()});function Zds(t,e,n){return{[t]:H1(kc(t),e,JA(n))}}function Xds(t,e,n){return t.reduce((i,o)=>({...i,...Zds(o,e,n)}),{})}function Yds(t,e,n){return Xds(t.keys,e,n)}function nGt(t,e,n){let r=Yds(t,e,n);return Vu(r)}var rGt=I(()=>{qf();G6();VI();P_()});function Jds(t){let[e,n]=[t.slice(0,1),t.slice(1)];return[e.toLowerCase(),n].join("")}function zds(t){let[e,n]=[t.slice(0,1),t.slice(1)];return[e.toUpperCase(),n].join("")}function Hds(t){return t.toUpperCase()}function Kds(t){return t.toLowerCase()}function jds(t,e,n){let r=_6(t.pattern);if(!kZ(r))return{...t,pattern:K7n(t.pattern,e)};let s=[...nae(r)].map(c=>kc(c)),a=j7n(s,e),l=Cu(a);return B6([l],n)}function K7n(t,e){return typeof t=="string"?e==="Uncapitalize"?Jds(t):e==="Capitalize"?zds(t):e==="Uppercase"?Hds(t):e==="Lowercase"?Kds(t):t:t.toString()}function j7n(t,e){return t.map(n=>H1(n,e))}function H1(t,e,n={}){return W_(t)?nGt(t,e,n):Z_(t)?jds(t,e,n):bu(t)?Cu(j7n(t.anyOf,e),n):gy(t)?kc(K7n(t.const,e),n):Zr(t,n)}var G6=I(()=>{wa();O2();rGt();VI();Ah();bc()});function XRe(t,e={}){return H1(t,"Capitalize",e)}var $7n=I(()=>{G6()});function YRe(t,e={}){return H1(t,"Lowercase",e)}var q7n=I(()=>{G6()});function JRe(t,e={}){return H1(t,"Uncapitalize",e)}var eer=I(()=>{G6()});function zRe(t,e={}){return H1(t,"Uppercase",e)}var ter=I(()=>{G6()});var TXe=I(()=>{$7n();rGt();G6();q7n();eer();ter()});function $ds(t,e,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(t))r[i]=Z2(t[i],e,JA(n));return r}function qds(t,e,n){return $ds(t.properties,e,n)}function iGt(t,e,n){let r=qds(t,e,n);return Vu(r)}var oGt=I(()=>{qf();NXe();P_()});function eps(t,e){return t.map(n=>sGt(n,e))}function tps(t,e){return t.map(n=>sGt(n,e))}function nps(t,e){let{[e]:n,...r}=t;return r}function rps(t,e){return e.reduce((n,r)=>nps(n,r),t)}function ips(t,e,n){let r=Jm(t,[bg,"$id","required","properties"]),i=rps(n,e);return yu(i,r)}function ops(t){let e=t.reduce((n,r)=>pRe(r)?[...n,kc(r)]:n,[]);return Cu(e)}function sGt(t,e){return $g(t)?ZE(eps(t.allOf,e)):bu(t)?Cu(tps(t.anyOf,e)):ph(t)?ips(t,e,t.properties):yu({})}function Z2(t,e,n){let r=mf(e)?ops(e):e,i=Cg(e)?uS(e):e,o=Ym(t),s=Ym(e);return HA(t)?iGt(t,i,n):W_(e)?aGt(t,e,n):o&&s?RA("Omit",[t,r],n):!o&&s?RA("Omit",[t,r],n):o&&!s?RA("Omit",[t,r],n):Zr({...sGt(t,i),...n})}var NXe=I(()=>{wa();iXe();dRe();TZ();VI();P2();sB();Ah();dS();lGt();oGt();bc();iS()});function sps(t,e,n){return{[e]:Z2(t,[e],JA(n))}}function aps(t,e,n){return e.reduce((r,i)=>({...r,...sps(t,i,n)}),{})}function lps(t,e,n){return aps(t,e.keys,n)}function aGt(t,e,n){let r=lps(t,e,n);return Vu(r)}var lGt=I(()=>{qf();NXe();P_()});var HRe=I(()=>{lGt();oGt();NXe()});function cps(t,e,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(t))r[i]=X2(t[i],e,JA(n));return r}function ups(t,e,n){return cps(t.properties,e,n)}function cGt(t,e,n){let r=ups(t,e,n);return Vu(r)}var uGt=I(()=>{qf();kXe();P_()});function dps(t,e){return t.map(n=>dGt(n,e))}function pps(t,e){return t.map(n=>dGt(n,e))}function Aps(t,e){let n={};for(let r of e)r in t&&(n[r]=t[r]);return n}function gps(t,e,n){let r=Jm(t,[bg,"$id","required","properties"]),i=Aps(n,e);return yu(i,r)}function mps(t){let e=t.reduce((n,r)=>pRe(r)?[...n,kc(r)]:n,[]);return Cu(e)}function dGt(t,e){return $g(t)?ZE(dps(t.allOf,e)):bu(t)?Cu(pps(t.anyOf,e)):ph(t)?gps(t,e,t.properties):yu({})}function X2(t,e,n){let r=mf(e)?mps(e):e,i=Cg(e)?uS(e):e,o=Ym(t),s=Ym(e);return HA(t)?cGt(t,i,n):W_(e)?pGt(t,e,n):o&&s?RA("Pick",[t,r],n):!o&&s?RA("Pick",[t,r],n):o&&!s?RA("Pick",[t,r],n):Zr({...dGt(t,i),...n})}var kXe=I(()=>{wa();iXe();TZ();sB();VI();dS();Ah();P2();dRe();bc();iS();AGt();uGt()});function hps(t,e,n){return{[e]:X2(t,[e],JA(n))}}function fps(t,e,n){return e.reduce((r,i)=>({...r,...hps(t,i,n)}),{})}function Eps(t,e,n){return fps(t,e.keys,n)}function pGt(t,e,n){let r=Eps(t,e,n);return Vu(r)}var AGt=I(()=>{qf();kXe();P_()});var KRe=I(()=>{AGt();uGt();kXe()});function bps(t,e){return RA("Partial",[RA(t,e)])}function Cps(t){return RA("Partial",[AS(t)])}function yps(t){let e={};for(let n of globalThis.Object.getOwnPropertyNames(t))e[n]=WE(t[n]);return e}function Ips(t,e){let n=Jm(t,[bg,"$id","required","properties"]),r=yps(e);return yu(r,n)}function ner(t){return t.map(e=>rer(e))}function rer(t){return O1(t)?bps(t.target,t.parameters):Ym(t)?Cps(t.$ref):$g(t)?ZE(ner(t.allOf)):bu(t)?Cu(ner(t.anyOf)):ph(t)?Ips(t,t.properties):vZ(t)||xF(t)||W1(t)||gy(t)||Jse(t)||Z1(t)||TF(t)||zse(t)||NF(t)?t:yu({})}function E9(t,e){return HA(t)?mGt(t,e):Zr({...rer(t),...e})}var gGt=I(()=>{wa();TZ();kF();dS();sB();Ah();d9();o9();fs();hGt();bc()});function Sps(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=E9(t[r],JA(e));return n}function _ps(t,e){return Sps(t.properties,e)}function mGt(t,e){let n=_ps(t,e);return Vu(n)}var hGt=I(()=>{qf();gGt();P_()});var jRe=I(()=>{hGt();gGt()});function Rps(t,e){return RA("Required",[RA(t,e)])}function vps(t){return RA("Required",[AS(t)])}function Bps(t){let e={};for(let n of globalThis.Object.getOwnPropertyNames(t))e[n]=Jm(t[n],[Lb]);return e}function wps(t,e){let n=Jm(t,[bg,"$id","required","properties"]),r=Bps(e);return yu(r,n)}function ier(t){return t.map(e=>oer(e))}function oer(t){return O1(t)?Rps(t.target,t.parameters):Ym(t)?vps(t.$ref):$g(t)?ZE(ier(t.allOf)):bu(t)?Cu(ier(t.anyOf)):ph(t)?wps(t,t.properties):vZ(t)||xF(t)||W1(t)||gy(t)||Jse(t)||Z1(t)||TF(t)||zse(t)||NF(t)?t:yu({})}function b9(t,e){return HA(t)?EGt(t,e):Zr({...oer(t),...e})}var fGt=I(()=>{wa();TZ();dS();sB();Ah();d9();fs();o9();bGt();bc()});function xps(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=b9(t[r],e);return n}function Tps(t,e){return xps(t.properties,e)}function EGt(t,e){let n=Tps(t,e);return Vu(n)}var bGt=I(()=>{qf();fGt()});var $Re=I(()=>{bGt();fGt()});function Nps(t,e){return e.map(n=>Ym(n)?CGt(t,n.$ref):aB(t,n))}function CGt(t,e){return e in t?Ym(t[e])?CGt(t,t[e].$ref):aB(t,t[e]):Ol()}function kps(t){return p9(t[0])}function Qps(t){return L2(t[0],t[1])}function Dps(t){return A9(t[0])}function Fps(t){return E9(t[0])}function Vps(t){return Z2(t[0],t[1])}function Mps(t){return X2(t[0],t[1])}function Gps(t){return b9(t[0])}function Ups(t,e,n){let r=Nps(t,n);return e==="Awaited"?kps(r):e==="Index"?Qps(r):e==="KeyOf"?Dps(r):e==="Partial"?Fps(r):e==="Omit"?Vps(r):e==="Pick"?Mps(r):e==="Required"?Gps(r):Ol()}function Ops(t,e){return r9(aB(t,e))}function Lps(t,e){return i9(aB(t,e))}function Pps(t,e,n){return s9(qRe(t,e),aB(t,n))}function Wps(t,e,n){return oB(qRe(t,e),aB(t,n))}function Zps(t,e){return ZE(qRe(t,e))}function Xps(t,e){return c9(aB(t,e))}function Yps(t,e){return yu(globalThis.Object.keys(e).reduce((n,r)=>({...n,[r]:aB(t,e[r])}),{}))}function Jps(t,e){let[n,r]=[aB(t,PRe(e)),LRe(e)],i=SZ(e);return i.patternProperties[r]=n,i}function zps(t,e){return Ym(e)?{...CGt(t,e.$ref),[bg]:e[bg]}:e}function Hps(t,e){return pS(qRe(t,e))}function Kps(t,e){return Cu(qRe(t,e))}function qRe(t,e){return e.map(n=>aB(t,n))}function aB(t,e){return aS(e)?Zr(aB(t,Jm(e,[Lb])),e):y6(e)?Zr(aB(t,Jm(e,[G1])),e):ju(e)?Zr(zps(t,e),e):U1(e)?Zr(Ops(t,e.items),e):RZ(e)?Zr(Lps(t,e.items),e):O1(e)?Zr(Ups(t,e.target,e.parameters)):L1(e)?Zr(Pps(t,e.parameters,e.returns),e):P1(e)?Zr(Wps(t,e.parameters,e.returns),e):$g(e)?Zr(Zps(t,e.allOf),e):BZ(e)?Zr(Xps(t,e.items),e):ph(e)?Zr(Yps(t,e.properties),e):xZ(e)?Zr(Jps(t,e)):X_(e)?Zr(Hps(t,e.items||[]),e):bu(e)?Zr(Kps(t,e.anyOf),e):e}function jps(t,e){return e in t?aB(t,t[e]):Ol()}function ser(t){return globalThis.Object.getOwnPropertyNames(t).reduce((e,n)=>({...e,[n]:jps(t,n)}),{})}var aer=I(()=>{$O();jVt();o9();qse();wRe();eae();tae();P2();NZ();sB();oae();Y1();dS();HRe();KRe();ff();jRe();aae();$Re();u9();Ah();fs();bc()});function eve(t){return new QXe(t)}var QXe,ler=I(()=>{$O();fs();aer();QXe=class{constructor(e){let n=ser(e),r=this.WithIdentifiers(n);this.$defs=r}Import(e,n){let r={...this.$defs,[e]:Zr(this.$defs[e],n)};return Zr({[Fr]:"Import",$defs:r,$ref:e})}WithIdentifiers(e){return globalThis.Object.getOwnPropertyNames(e).reduce((n,r)=>({...n,[r]:{...e[r],$id:r}}),{})}}});var DXe=I(()=>{ler()});function tve(t,e){return Zr({[Fr]:"Not",not:t},e)}var cer=I(()=>{wa();fs()});var FXe=I(()=>{cer()});function nve(t,e){return P1(t)?pS(t.parameters,e):Ol()}var uer=I(()=>{u9();ff();bc()});var VXe=I(()=>{uer()});function rve(t,e={}){hf(e.$id)&&(e.$id=`T${$ps++}`);let n=SZ(t({[Fr]:"This",$ref:`${e.$id}`}));return n.$id=e.$id,Zr({[sS]:"Recursive",...n},e)}var $ps,der=I(()=>{Z3e();wa();iS();fs();$ps=0});var MXe=I(()=>{der()});function ive(t,e){let n=$p(t)?new globalThis.RegExp(t):t;return Zr({[Fr]:"RegExp",type:"RegExp",source:n.source,flags:n.flags},e)}var per=I(()=>{wa();iS();fs()});var GXe=I(()=>{per()});function qps(t){return $g(t)?t.allOf:bu(t)?t.anyOf:X_(t)?t.items??[]:[]}function ove(t){return qps(t)}var Aer=I(()=>{bc()});var UXe=I(()=>{Aer()});function sve(t,e){return P1(t)?Zr(t.returns,e):Ol(e)}var ger=I(()=>{wa();ff();bc()});var OXe=I(()=>{ger()});var mer=I(()=>{});var her=I(()=>{});var fer=I(()=>{mer();her()});var Eer=I(()=>{});var ber=I(()=>{Eer()});function ave(t){return new LXe(t)}var LXe,PXe,Cer=I(()=>{fs();bc();LXe=class{constructor(e){this.schema=e}Decode(e){return new PXe(this.schema,e)}},PXe=class{constructor(e,n){this.schema=e,this.decode=n}EncodeTransform(e,n){let o={Encode:s=>n[bg].Encode(e(s)),Decode:s=>this.decode(n[bg].Decode(s))};return{...n,[bg]:o}}EncodeSchema(e,n){let r={Decode:this.decode,Encode:e};return{...n,[bg]:r}}Encode(e){return ju(this.schema)?this.EncodeTransform(e,this.schema):this.EncodeSchema(e,this.schema)}}});var WXe=I(()=>{Cer()});function U6(t={}){return Zr({[Fr]:t[Fr]??"Unsafe"},t)}var yer=I(()=>{wa();fs()});var lve=I(()=>{yer()});function cve(t){return Zr({[Fr]:"Void",type:"void"},t)}var Ier=I(()=>{wa();fs()});var ZXe=I(()=>{Ier()});var cae,yGt=I(()=>{$se();qse();IRe();AXe();mXe();fXe();_Xe();D6();vXe();P2();xXe();sB();TXe();Y1();VI();qf();ff();FXe();kRe();DXe();QZ();dS();HRe();kF();jRe();KRe();VZ();ORe();aae();MXe();d9();$Re();UXe();DZ();O2();WXe();u9();Ah();MZ();lve();cae=class{ReadonlyOptional(e){return F6(e)}Readonly(e,n){return my(e,n??!0)}Optional(e,n){return WE(e,n??!0)}Any(e){return G2(e)}Array(e,n){return r9(e,n)}Boolean(e){return v6(e)}Capitalize(e,n){return XRe(e,n)}Composite(e,n){return TRe(e,n)}Const(e,n){return VRe(e,n)}Enum(e,n){return GRe(e,n)}Exclude(e,n,r){return h9(e,n,r)}Extends(e,n,r,i,o){return m9(e,n,r,i,o)}Extract(e,n,r){return f9(e,n,r)}Index(e,n,r){return L2(e,n,r)}Integer(e){return ZRe(e)}Intersect(e,n){return ZE(e,n)}KeyOf(e,n){return A9(e,n)}Literal(e,n){return kc(e,n)}Lowercase(e,n){return YRe(e,n)}Mapped(e,n,r){return vRe(e,n,r)}Module(e){return eve(e)}Never(e){return Ol(e)}Not(e,n){return tve(e,n)}Null(e){return T6(e)}Number(e){return cS(e)}Object(e,n){return yu(e,n)}Omit(e,n,r){return Z2(e,n,r)}Partial(e,n){return E9(e,n)}Pick(e,n,r){return X2(e,n,r)}Record(e,n,r){return M6(e,n,r)}Recursive(e,n){return rve(e,n)}Ref(...e){return AS(e[0],e[1])}Required(e,n){return b9(e,n)}Rest(e){return ove(e)}String(e){return Pb(e)}TemplateLiteral(e,n){return B6(e,n)}Transform(e){return ave(e)}Tuple(e,n){return pS(e,n)}Uncapitalize(e,n){return JRe(e,n)}Union(e,n){return Cu(e,n)}Unknown(e){return Y_(e)}Unsafe(e){return U6(e)}Uppercase(e,n){return zRe(e,n)}}});var IGt={};qo(IGt,{Any:()=>G2,Argument:()=>fRe,Array:()=>r9,AsyncIterator:()=>i9,Awaited:()=>p9,BigInt:()=>l9,Boolean:()=>v6,Capitalize:()=>XRe,Composite:()=>TRe,Const:()=>VRe,Constructor:()=>s9,ConstructorParameters:()=>MRe,Date:()=>x6,Enum:()=>GRe,Exclude:()=>h9,Extends:()=>m9,Extract:()=>f9,Function:()=>oB,Index:()=>L2,InstanceType:()=>URe,Instantiate:()=>WRe,Integer:()=>ZRe,Intersect:()=>ZE,Iterator:()=>c9,KeyOf:()=>A9,Literal:()=>kc,Lowercase:()=>YRe,Mapped:()=>vRe,Module:()=>eve,Never:()=>Ol,Not:()=>tve,Null:()=>T6,Number:()=>cS,Object:()=>yu,Omit:()=>Z2,Optional:()=>WE,Parameters:()=>nve,Partial:()=>E9,Pick:()=>X2,Promise:()=>w6,Readonly:()=>my,ReadonlyOptional:()=>F6,Record:()=>M6,Recursive:()=>rve,Ref:()=>AS,RegExp:()=>ive,Required:()=>b9,Rest:()=>ove,ReturnType:()=>sve,String:()=>Pb,Symbol:()=>N6,TemplateLiteral:()=>B6,Transform:()=>ave,Tuple:()=>pS,Uint8Array:()=>Q6,Uncapitalize:()=>JRe,Undefined:()=>k6,Union:()=>Cu,Unknown:()=>Y_,Unsafe:()=>U6,Uppercase:()=>zRe,Void:()=>cve});var Ser=I(()=>{$se();rXe();qse();eae();wRe();rae();IRe();AXe();mXe();tae();hXe();NRe();fXe();_Xe();D6();vXe();NZ();P2();BXe();wXe();xXe();sB();TXe();oae();Y1();VI();qf();DXe();ff();FXe();kRe();QZ();dS();HRe();kF();VXe();jRe();KRe();_Re();VZ();ORe();aae();MXe();d9();GXe();$Re();UXe();OXe();DZ();QRe();O2();WXe();u9();FRe();DRe();Ah();MZ();lve();ZXe()});var XXe,_er=I(()=>{yGt();rXe();eae();wRe();rae();tae();hXe();NRe();NZ();BXe();wXe();oae();VXe();_Re();GXe();OXe();QRe();FRe();DRe();ZXe();XXe=class extends cae{Argument(e){return fRe(e)}AsyncIterator(e,n){return i9(e,n)}Awaited(e,n){return p9(e,n)}BigInt(e){return l9(e)}ConstructorParameters(e,n){return MRe(e,n)}Constructor(e,n,r){return s9(e,n,r)}Date(e={}){return x6(e)}Function(e,n,r){return oB(e,n,r)}InstanceType(e,n){return URe(e,n)}Instantiate(e,n){return WRe(e,n)}Iterator(e,n){return c9(e,n)}Parameters(e,n){return nve(e,n)}Promise(e,n){return w6(e,n)}RegExp(e,n){return ive(e,n)}ReturnType(e,n){return sve(e,n)}Symbol(e){return N6(e)}Undefined(e){return k6(e)}Uint8Array(e){return Q6(e)}Void(e){return cve(e)}}});var Me,Rer=I(()=>{yGt();Ser();_er();Me=IGt});var uve={};qo(uve,{Any:()=>G2,Argument:()=>fRe,Array:()=>r9,AsyncIterator:()=>i9,Awaited:()=>p9,BigInt:()=>l9,Boolean:()=>v6,Capitalize:()=>XRe,Clone:()=>JA,CloneRest:()=>Als,CloneType:()=>SZ,Composite:()=>TRe,Const:()=>VRe,Constructor:()=>s9,ConstructorParameters:()=>MRe,CreateType:()=>Zr,Date:()=>x6,Enum:()=>GRe,Exclude:()=>h9,ExcludeFromMappedResult:()=>zMt,ExcludeFromTemplateLiteral:()=>YMt,Extends:()=>m9,ExtendsCheck:()=>g9,ExtendsFromMappedKey:()=>ZMt,ExtendsFromMappedResult:()=>PMt,ExtendsResolverError:()=>EXe,ExtendsResult:()=>zr,ExtendsUndefinedCheck:()=>DF,Extract:()=>f9,ExtractFromMappedResult:()=>$Mt,ExtractFromTemplateLiteral:()=>KMt,FormatRegistry:()=>lS,FromTypes:()=>lae,Function:()=>oB,Hint:()=>sS,Increment:()=>Nls,Index:()=>L2,IndexFromComputed:()=>wcs,IndexFromMappedKey:()=>IMt,IndexFromMappedResult:()=>bMt,IndexFromPropertyKey:()=>yMt,IndexFromPropertyKeys:()=>iae,IndexPropertyKeys:()=>uS,InstanceType:()=>URe,Instantiate:()=>WRe,Integer:()=>ZRe,Intersect:()=>ZE,IntersectEvaluated:()=>SRe,Intrinsic:()=>H1,IntrinsicFromMappedKey:()=>nGt,IsTemplateLiteralExpressionFinite:()=>kZ,IsTemplateLiteralFinite:()=>yRe,Iterator:()=>c9,JavaScriptTypeBuilder:()=>XXe,JsonTypeBuilder:()=>cae,KeyOf:()=>A9,KeyOfFromMappedResult:()=>QMt,KeyOfPattern:()=>QF,KeyOfPropertyEntries:()=>xRe,KeyOfPropertyKeys:()=>gS,KeyOfPropertyKeysToRest:()=>I7n,Kind:()=>Fr,KindGuard:()=>M2,Literal:()=>kc,Lowercase:()=>YRe,Mapped:()=>vRe,MappedFunctionReturnType:()=>p7n,MappedKey:()=>Kls,MappedResult:()=>Vu,Module:()=>eve,Never:()=>Ol,Not:()=>tve,Null:()=>T6,Number:()=>cS,Object:()=>yu,Omit:()=>Z2,OmitFromMappedKey:()=>aGt,OmitFromMappedResult:()=>iGt,Optional:()=>WE,OptionalFromMappedResult:()=>wMt,OptionalKind:()=>Lb,Parameters:()=>nve,Partial:()=>E9,PartialFromMappedResult:()=>mGt,PatternBoolean:()=>eXe,PatternBooleanExact:()=>kls,PatternNever:()=>Tqn,PatternNeverExact:()=>sMt,PatternNumber:()=>Hse,PatternNumberExact:()=>t9,PatternString:()=>tXe,PatternStringExact:()=>n9,Pick:()=>X2,PickFromMappedKey:()=>pGt,PickFromMappedResult:()=>cGt,Promise:()=>w6,Readonly:()=>my,ReadonlyFromMappedResult:()=>RMt,ReadonlyKind:()=>G1,ReadonlyOptional:()=>F6,Record:()=>M6,RecordKey:()=>tGt,RecordPattern:()=>LRe,RecordValue:()=>PRe,Recursive:()=>rve,Ref:()=>AS,RegExp:()=>ive,Required:()=>b9,RequiredFromMappedResult:()=>EGt,Rest:()=>ove,ReturnType:()=>sve,SetComplement:()=>Jls,SetDistinct:()=>aMt,SetIncludes:()=>nXe,SetIntersect:()=>Dqn,SetIntersectMany:()=>lMt,SetIsSubset:()=>Xls,SetUnion:()=>Yls,SetUnionMany:()=>cMt,String:()=>Pb,Symbol:()=>N6,TModule:()=>QXe,TemplateLiteral:()=>B6,TemplateLiteralExpressionGenerate:()=>nae,TemplateLiteralFiniteError:()=>sXe,TemplateLiteralGenerate:()=>R6,TemplateLiteralGenerateError:()=>aXe,TemplateLiteralParse:()=>S6,TemplateLiteralParseExact:()=>_6,TemplateLiteralParserError:()=>bRe,TemplateLiteralPattern:()=>cXe,TemplateLiteralPatternError:()=>lXe,TemplateLiteralSyntax:()=>hMt,TemplateLiteralToUnion:()=>FZ,Transform:()=>ave,TransformDecodeBuilder:()=>LXe,TransformEncodeBuilder:()=>PXe,TransformKind:()=>bg,Tuple:()=>pS,Type:()=>Me,TypeBoxError:()=>_a,TypeGuard:()=>$n,TypeRegistry:()=>PE,Uint8Array:()=>Q6,Uncapitalize:()=>JRe,Undefined:()=>k6,Union:()=>Cu,UnionEvaluated:()=>U2,Unknown:()=>Y_,Unsafe:()=>U6,Uppercase:()=>zRe,ValueGuard:()=>py,Void:()=>cve});var cl=I(()=>{jVt();$O();jg();oMt();xqn();mRe();I6();hRe();fs();$se();qse();rXe();eae();wRe();rae();IRe();AXe();mXe();tae();hXe();NRe();fXe();_Xe();D6();vXe();NZ();P2();BXe();wXe();xXe();sB();oae();TXe();Y1();VI();DXe();qf();ff();FXe();kRe();QZ();dS();HRe();kF();VXe();jRe();KRe();_Re();VZ();ORe();aae();MXe();d9();GXe();$Re();UXe();OXe();fer();ber();DZ();QRe();O2();WXe();u9();FRe();DRe();Ah();MZ();lve();ZXe();Rer()});function eAs(t,e){return(n,r,i)=>{if(n.api!==t)throw new Error(`Mismatched api: ${n.api} expected ${t}`);return e(n,r,i)}}function tAs(t,e){return(n,r,i)=>{if(n.api!==t)throw new Error(`Mismatched api: ${n.api} expected ${t}`);return e(n,r,i)}}function C9(t,e){uae.set(t.api,{provider:{api:t.api,stream:eAs(t.api,t.stream),streamSimple:tAs(t.api,t.streamSimple)},sourceId:e})}function SGt(t){return uae.get(t)?.provider}function nAs(){return Array.from(uae.values(),t=>t.provider)}function _Gt(t){for(let[e,n]of uae.entries())n.sourceId===t&&uae.delete(e)}function RGt(){uae.clear()}var uae,dve=I(()=>{"use strict";uae=new Map});function lB(t){if(process.versions?.bun&&!(typeof process>"u")&&!(Object.keys(process.env).length>0)){if(YXe===null){YXe=new Map;try{let{readFileSync:e}=Bt("node:fs"),n=e("/proc/self/environ","utf-8");for(let r of n.split("\0")){let i=r.indexOf("=");i>0&&YXe.set(r.slice(0,i),r.slice(i+1))}}catch{}}return YXe.get(t)}}function sAs(){if(pve===null){if(!JXe||!BGt||!wGt)return typeof process<"u"&&(process.versions?.node||process.versions?.bun)||(pve=!1),!1;let t=process.env.GOOGLE_APPLICATION_CREDENTIALS||lB("GOOGLE_APPLICATION_CREDENTIALS");t?pve=JXe(t):pve=JXe(wGt(BGt(),".config","gcloud","application_default_credentials.json"))}return pve}function aAs(t){if(t==="github-copilot")return["COPILOT_GITHUB_TOKEN","GH_TOKEN","GITHUB_TOKEN"];if(t==="anthropic")return["ANTHROPIC_OAUTH_TOKEN","ANTHROPIC_API_KEY"];let n={openai:"OPENAI_API_KEY","azure-openai-responses":"AZURE_OPENAI_API_KEY",deepseek:"DEEPSEEK_API_KEY",google:"GEMINI_API_KEY","google-vertex":"GOOGLE_CLOUD_API_KEY",groq:"GROQ_API_KEY",cerebras:"CEREBRAS_API_KEY",xai:"XAI_API_KEY",openrouter:"OPENROUTER_API_KEY","vercel-ai-gateway":"AI_GATEWAY_API_KEY",zai:"ZAI_API_KEY",mistral:"MISTRAL_API_KEY",minimax:"MINIMAX_API_KEY","minimax-cn":"MINIMAX_CN_API_KEY",moonshotai:"MOONSHOT_API_KEY","moonshotai-cn":"MOONSHOT_API_KEY",huggingface:"HF_TOKEN",fireworks:"FIREWORKS_API_KEY",opencode:"OPENCODE_API_KEY","opencode-go":"OPENCODE_API_KEY","kimi-coding":"KIMI_API_KEY","cloudflare-workers-ai":"CLOUDFLARE_API_KEY","cloudflare-ai-gateway":"CLOUDFLARE_API_KEY",xiaomi:"XIAOMI_API_KEY","xiaomi-token-plan-cn":"XIAOMI_TOKEN_PLAN_CN_API_KEY","xiaomi-token-plan-ams":"XIAOMI_TOKEN_PLAN_AMS_API_KEY","xiaomi-token-plan-sgp":"XIAOMI_TOKEN_PLAN_SGP_API_KEY"}[t];return n?[n]:void 0}function ver(t){let e=aAs(t);if(!e)return;let n=e.filter(r=>!!process.env[r]||!!lB(r));return n.length>0?n:void 0}function Dp(t){let e=ver(t);if(e?.[0])return process.env[e[0]]||lB(e[0]);if(t==="google-vertex"){let n=sAs(),r=!!(process.env.GOOGLE_CLOUD_PROJECT||process.env.GCLOUD_PROJECT||lB("GOOGLE_CLOUD_PROJECT")||lB("GCLOUD_PROJECT")),i=!!(process.env.GOOGLE_CLOUD_LOCATION||lB("GOOGLE_CLOUD_LOCATION"));if(n&&r&&i)return"<authenticated>"}if(t==="amazon-bedrock"&&(process.env.AWS_PROFILE||process.env.AWS_ACCESS_KEY_ID&&process.env.AWS_SECRET_ACCESS_KEY||process.env.AWS_BEARER_TOKEN_BEDROCK||process.env.AWS_CONTAINER_CREDENTIALS_RELATIVE_URI||process.env.AWS_CONTAINER_CREDENTIALS_FULL_URI||process.env.AWS_WEB_IDENTITY_TOKEN_FILE||lB("AWS_PROFILE")||lB("AWS_ACCESS_KEY_ID")&&lB("AWS_SECRET_ACCESS_KEY")||lB("AWS_BEARER_TOKEN_BEDROCK")||lB("AWS_CONTAINER_CREDENTIALS_RELATIVE_URI")||lB("AWS_CONTAINER_CREDENTIALS_FULL_URI")||lB("AWS_WEB_IDENTITY_TOKEN_FILE")))return"<authenticated>"}var JXe,BGt,wGt,vGt,rAs,iAs,oAs,YXe,pve,FF=I(()=>{"use strict";JXe=null,BGt=null,wGt=null,vGt=t=>import(t),rAs="node:fs",iAs="node:os",oAs="node:path";typeof process<"u"&&(process.versions?.node||process.versions?.bun)&&(vGt(rAs).then(t=>{JXe=t.existsSync}),vGt(iAs).then(t=>{BGt=t.homedir}),vGt(oAs).then(t=>{wGt=t.join}));YXe=null;pve=null});var Ber,wer=I(()=>{"use strict";Ber={"amazon-bedrock":{"amazon.nova-2-lite-v1:0":{id:"amazon.nova-2-lite-v1:0",name:"Nova 2 Lite",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:.33,output:2.75,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"amazon.nova-lite-v1:0":{id:"amazon.nova-lite-v1:0",name:"Nova Lite",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.06,output:.24,cacheRead:.015,cacheWrite:0},contextWindow:3e5,maxTokens:8192},"amazon.nova-micro-v1:0":{id:"amazon.nova-micro-v1:0",name:"Nova Micro",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.035,output:.14,cacheRead:.00875,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"amazon.nova-pro-v1:0":{id:"amazon.nova-pro-v1:0",name:"Nova Pro",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.8,output:3.2,cacheRead:.2,cacheWrite:0},contextWindow:3e5,maxTokens:8192},"anthropic.claude-fable-5":{id:"anthropic.claude-fable-5",name:"Claude Fable 5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic.claude-haiku-4-5-20251001-v1:0":{id:"anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"anthropic.claude-opus-4-1-20250805-v1:0":{id:"anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},contextWindow:2e5,maxTokens:32e3},"anthropic.claude-opus-4-5-20251101-v1:0":{id:"anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"anthropic.claude-opus-4-6-v1":{id:"anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic.claude-opus-4-7":{id:"anthropic.claude-opus-4-7",name:"Claude Opus 4.7",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic.claude-opus-4-8":{id:"anthropic.claude-opus-4-8",name:"Claude Opus 4.8",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic.claude-opus-5":{id:"anthropic.claude-opus-5",name:"Claude Opus 5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"anthropic.claude-sonnet-4-6":{id:"anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"anthropic.claude-sonnet-5":{id:"anthropic.claude-sonnet-5",name:"Claude Sonnet 5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"au.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"au.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (AU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"au.anthropic.claude-opus-4-6-v1":{id:"au.anthropic.claude-opus-4-6-v1",name:"AU Anthropic Claude Opus 4.6",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:16.5,output:82.5,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"au.anthropic.claude-opus-4-8":{id:"au.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (AU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"au.anthropic.claude-opus-5":{id:"au.anthropic.claude-opus-5",name:"Claude Opus 5 (AU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"au.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"au.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (AU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"au.anthropic.claude-sonnet-4-6":{id:"au.anthropic.claude-sonnet-4-6",name:"AU Anthropic Claude Sonnet 4.6",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3.3,output:16.5,cacheRead:.33,cacheWrite:4.125},contextWindow:1e6,maxTokens:128e3},"au.anthropic.claude-sonnet-5":{id:"au.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (AU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"deepseek.r1-v1:0":{id:"deepseek.r1-v1:0",name:"DeepSeek-R1",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:32768},"deepseek.v3-v1:0":{id:"deepseek.v3-v1:0",name:"DeepSeek-V3.1",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.58,output:1.68,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:81920},"deepseek.v3.2":{id:"deepseek.v3.2",name:"DeepSeek-V3.2",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.62,output:1.85,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:81920},"eu.anthropic.claude-fable-5":{id:"eu.anthropic.claude-fable-5",name:"Claude Fable 5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:11,output:55,cacheRead:1.1,cacheWrite:13.75},contextWindow:1e6,maxTokens:128e3},"eu.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"eu.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1.1,output:5.5,cacheRead:.11,cacheWrite:1.375},contextWindow:2e5,maxTokens:64e3},"eu.anthropic.claude-opus-4-5-20251101-v1:0":{id:"eu.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:27.5,cacheRead:.55,cacheWrite:6.875},contextWindow:2e5,maxTokens:64e3},"eu.anthropic.claude-opus-4-6-v1":{id:"eu.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:27.5,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"eu.anthropic.claude-opus-4-7":{id:"eu.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:27.5,cacheRead:.55,cacheWrite:6.875},contextWindow:1e6,maxTokens:128e3},"eu.anthropic.claude-opus-4-8":{id:"eu.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:27.5,cacheRead:.55,cacheWrite:6.875},contextWindow:1e6,maxTokens:128e3},"eu.anthropic.claude-opus-5":{id:"eu.anthropic.claude-opus-5",name:"Claude Opus 5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:27.5,cacheRead:.55,cacheWrite:6.875},contextWindow:1e6,maxTokens:128e3},"eu.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"eu.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3.3,output:16.5,cacheRead:.33,cacheWrite:4.125},contextWindow:2e5,maxTokens:64e3},"eu.anthropic.claude-sonnet-4-6":{id:"eu.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3.3,output:16.5,cacheRead:.33,cacheWrite:4.125},contextWindow:1e6,maxTokens:64e3},"eu.anthropic.claude-sonnet-5":{id:"eu.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2.2,output:11,cacheRead:.22,cacheWrite:2.75},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-fable-5":{id:"global.anthropic.claude-fable-5",name:"Claude Fable 5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"global.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"global.anthropic.claude-opus-4-5-20251101-v1:0":{id:"global.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"global.anthropic.claude-opus-4-6-v1":{id:"global.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-opus-4-7":{id:"global.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-opus-4-8":{id:"global.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-opus-5":{id:"global.anthropic.claude-opus-5",name:"Claude Opus 5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"global.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"global.anthropic.claude-sonnet-4-6":{id:"global.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"global.anthropic.claude-sonnet-5":{id:"global.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"global.openai.gpt-5.6-luna":{id:"global.openai.gpt-5.6-luna",name:"GPT-5.6 Luna (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:.22,output:1.32,cacheRead:.022,cacheWrite:.275},contextWindow:105e4,maxTokens:128e3},"global.openai.gpt-5.6-sol":{id:"global.openai.gpt-5.6-sol",name:"GPT-5.6 Sol (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:33,cacheRead:.55,cacheWrite:6.875},contextWindow:105e4,maxTokens:128e3},"global.openai.gpt-5.6-terra":{id:"global.openai.gpt-5.6-terra",name:"GPT-5.6 Terra (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2.2,output:13.2,cacheRead:.22,cacheWrite:2.75},contextWindow:105e4,maxTokens:128e3},"google.gemma-3-27b-it":{id:"google.gemma-3-27b-it",name:"Google Gemma 3 27B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.12,output:.2,cacheRead:0,cacheWrite:0},contextWindow:202752,maxTokens:8192},"google.gemma-3-4b-it":{id:"google.gemma-3-4b-it",name:"Gemma 3 4B IT",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.04,output:.08,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"jp.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"jp.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"jp.anthropic.claude-opus-4-7":{id:"jp.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"jp.anthropic.claude-opus-4-8":{id:"jp.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"jp.anthropic.claude-opus-5":{id:"jp.anthropic.claude-opus-5",name:"Claude Opus 5 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"jp.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"jp.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"jp.anthropic.claude-sonnet-4-6":{id:"jp.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"jp.anthropic.claude-sonnet-5":{id:"jp.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"meta.llama3-1-70b-instruct-v1:0":{id:"meta.llama3-1-70b-instruct-v1:0",name:"Llama 3.1 70B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.72,output:.72,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"meta.llama3-1-8b-instruct-v1:0":{id:"meta.llama3-1-8b-instruct-v1:0",name:"Llama 3.1 8B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.22,output:.22,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"meta.llama3-3-70b-instruct-v1:0":{id:"meta.llama3-3-70b-instruct-v1:0",name:"Llama 3.3 70B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.72,output:.72,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"meta.llama4-maverick-17b-instruct-v1:0":{id:"meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.24,output:.97,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:16384},"meta.llama4-scout-17b-instruct-v1:0":{id:"meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.17,output:.66,cacheRead:0,cacheWrite:0},contextWindow:35e5,maxTokens:16384},"minimax.minimax-m2":{id:"minimax.minimax-m2",name:"MiniMax M2",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:204608,maxTokens:128e3},"minimax.minimax-m2.1":{id:"minimax.minimax-m2.1",name:"MiniMax M2.1",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax.minimax-m2.5":{id:"minimax.minimax-m2.5",name:"MiniMax M2.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:196608,maxTokens:98304},"mistral.devstral-2-123b":{id:"mistral.devstral-2-123b",name:"Devstral 2 123B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:8192},"mistral.magistral-small-2509":{id:"mistral.magistral-small-2509",name:"Magistral Small 1.2",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e4},"mistral.ministral-3-14b-instruct":{id:"mistral.ministral-3-14b-instruct",name:"Ministral 14B 3.0",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.2,output:.2,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"mistral.ministral-3-3b-instruct":{id:"mistral.ministral-3-3b-instruct",name:"Ministral 3 3B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.1,output:.1,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:8192},"mistral.ministral-3-8b-instruct":{id:"mistral.ministral-3-8b-instruct",name:"Ministral 3 8B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"mistral.mistral-large-3-675b-instruct":{id:"mistral.mistral-large-3-675b-instruct",name:"Mistral Large 3",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:8192},"mistral.pixtral-large-2502-v1:0":{id:"mistral.pixtral-large-2502-v1:0",name:"Pixtral Large (25.02)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:2,output:6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"mistral.voxtral-mini-3b-2507":{id:"mistral.voxtral-mini-3b-2507",name:"Voxtral Mini 3B 2507",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.04,output:.04,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"mistral.voxtral-small-24b-2507":{id:"mistral.voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.15,output:.35,cacheRead:0,cacheWrite:0},contextWindow:32e3,maxTokens:8192},"moonshot.kimi-k2-thinking":{id:"moonshot.kimi-k2-thinking",name:"Kimi K2 Thinking",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.6,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:262143,maxTokens:16e3},"moonshotai.kimi-k2.5":{id:"moonshotai.kimi-k2.5",name:"Kimi K2.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:.6,output:3,cacheRead:0,cacheWrite:0},contextWindow:262143,maxTokens:16e3},"nvidia.nemotron-nano-12b-v2":{id:"nvidia.nemotron-nano-12b-v2",name:"NVIDIA Nemotron Nano 12B v2 VL BF16",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.2,output:.6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"nvidia.nemotron-nano-3-30b":{id:"nvidia.nemotron-nano-3-30b",name:"NVIDIA Nemotron Nano 3 30B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.06,output:.24,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"nvidia.nemotron-nano-9b-v2":{id:"nvidia.nemotron-nano-9b-v2",name:"NVIDIA Nemotron Nano 9B v2",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.06,output:.23,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"nvidia.nemotron-super-3-120b":{id:"nvidia.nemotron-super-3-120b",name:"NVIDIA Nemotron 3 Super 120B A12B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.15,output:.65,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"openai.gpt-5.4":{id:"openai.gpt-5.4",name:"GPT-5.4",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2.75,output:16.5,cacheRead:.275,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"openai.gpt-5.5":{id:"openai.gpt-5.5",name:"GPT-5.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:33,cacheRead:.55,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"openai.gpt-5.6-luna":{id:"openai.gpt-5.6-luna",name:"GPT-5.6 Luna",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:.22,output:1.32,cacheRead:.022,cacheWrite:.275},contextWindow:105e4,maxTokens:128e3},"openai.gpt-5.6-sol":{id:"openai.gpt-5.6-sol",name:"GPT-5.6 Sol",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:33,cacheRead:.55,cacheWrite:6.875},contextWindow:105e4,maxTokens:128e3},"openai.gpt-5.6-terra":{id:"openai.gpt-5.6-terra",name:"GPT-5.6 Terra",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2.2,output:13.2,cacheRead:.22,cacheWrite:2.75},contextWindow:105e4,maxTokens:128e3},"openai.gpt-oss-120b":{id:"openai.gpt-oss-120b",name:"gpt-oss-120b",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai.gpt-oss-120b-1:0":{id:"openai.gpt-oss-120b-1:0",name:"gpt-oss-120b",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai.gpt-oss-20b":{id:"openai.gpt-oss-20b",name:"gpt-oss-20b",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.07,output:.3,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai.gpt-oss-20b-1:0":{id:"openai.gpt-oss-20b-1:0",name:"gpt-oss-20b",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.07,output:.3,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai.gpt-oss-safeguard-120b":{id:"openai.gpt-oss-safeguard-120b",name:"GPT OSS Safeguard 120B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai.gpt-oss-safeguard-20b":{id:"openai.gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.07,output:.2,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"qwen.qwen3-235b-a22b-2507-v1:0":{id:"qwen.qwen3-235b-a22b-2507-v1:0",name:"Qwen3 235B A22B 2507",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.22,output:.88,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"qwen.qwen3-32b-v1:0":{id:"qwen.qwen3-32b-v1:0",name:"Qwen3 32B (dense)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:16384,maxTokens:16384},"qwen.qwen3-coder-30b-a3b-v1:0":{id:"qwen.qwen3-coder-30b-a3b-v1:0",name:"Qwen3 Coder 30B A3B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"qwen.qwen3-coder-480b-a35b-v1:0":{id:"qwen.qwen3-coder-480b-a35b-v1:0",name:"Qwen3 Coder 480B A35B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.22,output:1.8,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"qwen.qwen3-coder-next":{id:"qwen.qwen3-coder-next",name:"Qwen3 Coder Next",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.22,output:1.8,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"qwen.qwen3-next-80b-a3b":{id:"qwen.qwen3-next-80b-a3b",name:"Qwen/Qwen3-Next-80B-A3B-Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.14,output:1.4,cacheRead:0,cacheWrite:0},contextWindow:262e3,maxTokens:262e3},"qwen.qwen3-vl-235b-a22b":{id:"qwen.qwen3-vl-235b-a22b",name:"Qwen/Qwen3-VL-235B-A22B-Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.3,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:262e3,maxTokens:262e3},"us.anthropic.claude-fable-5":{id:"us.anthropic.claude-fable-5",name:"Claude Fable 5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"us.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"us.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"us.anthropic.claude-opus-4-1-20250805-v1:0":{id:"us.anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},contextWindow:2e5,maxTokens:32e3},"us.anthropic.claude-opus-4-5-20251101-v1:0":{id:"us.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"us.anthropic.claude-opus-4-6-v1":{id:"us.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"us.anthropic.claude-opus-4-7":{id:"us.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"us.anthropic.claude-opus-4-8":{id:"us.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"us.anthropic.claude-opus-5":{id:"us.anthropic.claude-opus-5",name:"Claude Opus 5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"us.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"us.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"us.anthropic.claude-sonnet-4-6":{id:"us.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"us.anthropic.claude-sonnet-5":{id:"us.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"us.deepseek.r1-v1:0":{id:"us.deepseek.r1-v1:0",name:"DeepSeek-R1 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:32768},"us.meta.llama4-maverick-17b-instruct-v1:0":{id:"us.meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.24,output:.97,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:16384},"us.meta.llama4-scout-17b-instruct-v1:0":{id:"us.meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.17,output:.66,cacheRead:0,cacheWrite:0},contextWindow:35e5,maxTokens:16384},"writer.palmyra-x4-v1:0":{id:"writer.palmyra-x4-v1:0",name:"Palmyra X4",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:2.5,output:10,cacheRead:0,cacheWrite:0},contextWindow:122880,maxTokens:8192},"writer.palmyra-x5-v1:0":{id:"writer.palmyra-x5-v1:0",name:"Palmyra X5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.6,output:6,cacheRead:0,cacheWrite:0},contextWindow:104e4,maxTokens:8192},"xai.grok-4.3":{id:"xai.grok-4.3",name:"Grok 4.3",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"xai.grok-4.6":{id:"xai.grok-4.6",name:"Grok 4.6",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2.2,output:6.6,cacheRead:.55,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"zai.glm-4.7":{id:"zai.glm-4.7",name:"GLM-4.7",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"zai.glm-4.7-flash":{id:"zai.glm-4.7-flash",name:"GLM-4.7-Flash",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.07,output:.4,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:131072},"zai.glm-5":{id:"zai.glm-5",name:"GLM-5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:1,output:3.2,cacheRead:0,cacheWrite:0},contextWindow:202752,maxTokens:101376}},anthropic:{"claude-fable-5":{id:"claude-fable-5",name:"Claude Fable 5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"claude-haiku-4-5":{id:"claude-haiku-4-5",name:"Claude Haiku 4.5 (latest)",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"claude-haiku-4-5-20251001":{id:"claude-haiku-4-5-20251001",name:"Claude Haiku 4.5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-5":{id:"claude-opus-4-5",name:"Claude Opus 4.5 (latest)",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-5-20251101":{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-4-8":{id:"claude-opus-4-8",name:"Claude Opus 4.8",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-5":{id:"claude-opus-5",name:"Claude Opus 5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5 (latest)",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"claude-sonnet-4-5-20250929":{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet 4.5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:128e3},"claude-sonnet-5":{id:"claude-sonnet-5",name:"Claude Sonnet 5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3}},"azure-openai-responses":{"gpt-4":{id:"gpt-4",name:"GPT-4",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text"],cost:{input:30,output:60,cacheRead:0,cacheWrite:0},contextWindow:8192,maxTokens:8192},"gpt-4-turbo":{id:"gpt-4-turbo",name:"GPT-4 Turbo",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:10,output:30,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:.4,output:1.6,cacheRead:.1,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4.1-nano":{id:"gpt-4.1-nano",name:"GPT-4.1 nano",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:.1,output:.4,cacheRead:.025,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4o":{id:"gpt-4o",name:"GPT-4o",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-2024-05-13":{id:"gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:5,output:15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"gpt-4o-2024-08-06":{id:"gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-2024-11-20":{id:"gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-mini":{id:"gpt-4o-mini",name:"GPT-4o mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5":{id:"gpt-5",name:"GPT-5",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-chat-latest":{id:"gpt-5-chat-latest",name:"GPT-5 Chat Latest",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.025,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:.05,output:.4,cacheRead:.005,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-pro":{id:"gpt-5-pro",name:"GPT-5 Pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:15,output:120,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:272e3},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.25,output:5,cacheRead:.125,cacheWrite:1.25},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2-chat-latest":{id:"gpt-5.2-chat-latest",name:"GPT-5.2 Chat",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5.2-pro":{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:21,output:168,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-chat-latest":{id:"gpt-5.3-chat-latest",name:"GPT-5.3 Chat (latest)",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:32e3},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.6":{id:"gpt-5.6",name:"GPT-5.6",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:6.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-luna":{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-sol":{id:"gpt-5.6-sol",name:"GPT-5.6 Sol",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:6.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-terra":{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"gpt-realtime-2.1":{id:"gpt-realtime-2.1",name:"GPT-Realtime-2.1",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:4,output:24,cacheRead:.4,cacheWrite:0},contextWindow:128e3,maxTokens:32e3},o1:{id:"o1",name:"o1",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:15,output:60,cacheRead:7.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o1-pro":{id:"o1-pro",name:"o1-pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:150,output:600,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},o3:{id:"o3",name:"o3",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o3-mini":{id:"o3-mini",name:"o3-mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text"],cost:{input:1.1,output:4.4,cacheRead:.55,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o3-pro":{id:"o3-pro",name:"o3-pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:20,output:80,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o4-mini":{id:"o4-mini",name:"o4-mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5}},cerebras:{"gemma-4-31b":{id:"gemma-4-31b",name:"Gemma 4 31B IT",api:"openai-completions",provider:"cerebras",baseUrl:"https://api.cerebras.ai/v1",reasoning:!0,input:["text","image"],cost:{input:.99,output:1.49,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:40960},"gpt-oss-120b":{id:"gpt-oss-120b",name:"GPT OSS 120B",api:"openai-completions",provider:"cerebras",baseUrl:"https://api.cerebras.ai/v1",reasoning:!0,input:["text"],cost:{input:.35,output:.75,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:40960}},"github-copilot":{"claude-fable-5":{id:"claude-fable-5",name:"Claude Fable 5",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"claude-haiku-4.5":{id:"claude-haiku-4.5",name:"Claude Haiku 4.5 (latest)",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4.5":{id:"claude-opus-4.5",name:"Claude Opus 4.5 (latest)",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:32e3},"claude-opus-4.6":{id:"claude-opus-4.6",name:"Claude Opus 4.6",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:32e3},"claude-opus-4.7":{id:"claude-opus-4.7",name:"Claude Opus 4.7",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:32e3},"claude-opus-4.8":{id:"claude-opus-4.8",name:"Claude Opus 4.8",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-5":{id:"claude-opus-5",name:"Claude Opus 5",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:64e3},"claude-sonnet-4":{id:"claude-sonnet-4",name:"Claude Sonnet 4 (latest)",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:216e3,maxTokens:16e3},"claude-sonnet-4.5":{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5 (latest)",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:32e3},"claude-sonnet-4.6":{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:32e3},"claude-sonnet-5":{id:"claude-sonnet-5",name:"Claude Sonnet 5",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:2e5,maxTokens:64e3},"gemini-3.6-flash":{id:"gemini-3.6-flash",name:"Gemini 3.6 Flash",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"gemini-3.7-flash":{id:"gemini-3.7-flash",name:"Gemini 3.7 Flash",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:.75,output:3.75,cacheRead:.075,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!1,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.025,cacheWrite:0},contextWindow:264e3,maxTokens:64e3},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:.2,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-luna":{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-sol":{id:"gpt-5.6-sol",name:"GPT-5.6 Sol",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:6.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-terra":{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"grok-4.5":{id:"grok-4.5",name:"Grok 4.5",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:128e3},"grok-4.6":{id:"grok-4.6",name:"Grok 4.6",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:128e3},"kimi-k2.7-code":{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.19,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"kimi-k3":{id:"kimi-k3",name:"Kimi K3",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"mai-code-1-flash-picker":{id:"mai-code-1-flash-picker",name:"MAI-Code-1-Flash",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:256e3,maxTokens:128e3},"mai-code-1.1-flash":{id:"mai-code-1.1-flash",name:"MAI-Code-1.1-Flash",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:0},contextWindow:256e3,maxTokens:128e3}},google:{"deep-research-max-preview-04-2026":{id:"deep-research-max-preview-04-2026",name:"Deep Research Max Preview (Apr-21-2026)",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:131072,maxTokens:65536},"deep-research-preview-04-2026":{id:"deep-research-preview-04-2026",name:"Deep Research Preview (Apr-21-2026)",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:131072,maxTokens:65536},"gemini-2.5-computer-use-preview-10-2025":{id:"gemini-2.5-computer-use-preview-10-2025",name:"Gemini 2.5 Computer Use Preview 10-2025",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.1,output:.4,cacheRead:.01,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.05,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.025,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-flash-lite-image":{id:"gemini-3.1-flash-lite-image",name:"Nano Banana 2 Lite",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.25,output:30,cacheRead:0,cacheWrite:0},contextWindow:65536,maxTokens:65536},"gemini-3.1-flash-lite-preview":{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.025,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-flash-live-preview":{id:"gemini-3.1-flash-live-preview",name:"Gemini 3.1 Flash Live Preview",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.5-flash-lite":{id:"gemini-3.5-flash-lite",name:"Gemini 3.5 Flash Lite",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.6-flash":{id:"gemini-3.6-flash",name:"Gemini 3.6 Flash",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.7-flash":{id:"gemini-3.7-flash",name:"Gemini 3.7 Flash",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.75,output:3.75,cacheRead:.075,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.025,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-robotics-er-1.6-preview":{id:"gemini-robotics-er-1.6-preview",name:"Gemini Robotics-ER 1.6 Preview",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"gemma-4-26b-a4b-it":{id:"gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"gemma-4-31b-it":{id:"gemma-4-31b-it",name:"Gemma 4 31B IT",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768}},"google-antigravity":{"claude-opus-4-5-thinking":{id:"claude-opus-4-5-thinking",name:"Claude Opus 4.5 Thinking (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-6-thinking":{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 Thinking (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:128e3},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5 (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"claude-sonnet-4-5-thinking":{id:"claude-sonnet-4-5-thinking",name:"Claude Sonnet 4.5 Thinking (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"gemini-3-flash":{id:"gemini-3-flash",name:"Gemini 3 Flash (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.5,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"gemini-3.1-pro-high":{id:"gemini-3.1-pro-high",name:"Gemini 3.1 Pro High (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:2.375},contextWindow:1048576,maxTokens:65535},"gemini-3.1-pro-low":{id:"gemini-3.1-pro-low",name:"Gemini 3.1 Pro Low (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:2.375},contextWindow:1048576,maxTokens:65535},"gpt-oss-120b-medium":{id:"gpt-oss-120b-medium",name:"GPT-OSS 120B Medium (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!1,input:["text"],cost:{input:.09,output:.36,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768}},"google-gemini-cli":{"gemini-2.0-flash":{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:8192},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"gemini-3-pro-preview":{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65535}},"google-vertex":{"gemini-1.5-flash":{id:"gemini-1.5-flash",name:"Gemini 1.5 Flash (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:.075,output:.3,cacheRead:.01875,cacheWrite:0},contextWindow:1e6,maxTokens:8192},"gemini-1.5-flash-8b":{id:"gemini-1.5-flash-8b",name:"Gemini 1.5 Flash-8B (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:.0375,output:.15,cacheRead:.01,cacheWrite:0},contextWindow:1e6,maxTokens:8192},"gemini-1.5-pro":{id:"gemini-1.5-pro",name:"Gemini 1.5 Pro (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:1.25,output:5,cacheRead:.3125,cacheWrite:0},contextWindow:1e6,maxTokens:8192},"gemini-2.0-flash":{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.0375,cacheWrite:0},contextWindow:1048576,maxTokens:8192},"gemini-2.0-flash-lite":{id:"gemini-2.0-flash-lite",name:"Gemini 2.0 Flash Lite (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.075,output:.3,cacheRead:.01875,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.1,output:.4,cacheRead:.01,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-flash-lite-preview-09-2025":{id:"gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-25 (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.1,output:.4,cacheRead:.01,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.05,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3-pro-preview":{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1048576,maxTokens:65536}},groq:{"llama-3.1-8b-instant":{id:"llama-3.1-8b-instant",name:"Llama 3.1 8B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!1,input:["text"],cost:{input:.05,output:.08,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"llama-3.3-70b-versatile":{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!1,input:["text"],cost:{input:.59,output:.79,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!0,input:["text"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:131072,maxTokens:65536},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!0,input:["text"],cost:{input:.075,output:.3,cacheRead:.0375,cacheWrite:0},contextWindow:131072,maxTokens:65536},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"Safety GPT OSS 20B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!0,input:["text"],cost:{input:.075,output:.3,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen3.6 27B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!0,input:["text","image"],cost:{input:.6,output:3,cacheRead:.3,cacheWrite:0},contextWindow:131072,maxTokens:16384}},huggingface:{"MiniMaxAI/MiniMax-M2":{id:"MiniMaxAI/MiniMax-M2",name:"MiniMax-M2",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:128e3},"MiniMaxAI/MiniMax-M2.1":{id:"MiniMaxAI/MiniMax-M2.1",name:"MiniMax-M2.1",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.03,cacheWrite:0},contextWindow:204800,maxTokens:131072},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:131072},"MiniMaxAI/MiniMax-M3":{id:"MiniMaxAI/MiniMax-M3",name:"MiniMax-M3",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:524288,maxTokens:128e3},"Qwen/Qwen2.5-Coder-32B-Instruct":{id:"Qwen/Qwen2.5-Coder-32B-Instruct",name:"Qwen2.5-Coder-32B-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.06,output:.2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"Qwen/Qwen3-235B-A22B":{id:"Qwen/Qwen3-235B-A22B",name:"Qwen3 235B-A22B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.2,output:.8,cacheRead:0,cacheWrite:0},contextWindow:40960,maxTokens:16384},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B-A22B Instruct 2507",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.855,output:2.565,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.3,output:3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"Qwen/Qwen3-30B-A3B":{id:"Qwen/Qwen3-30B-A3B",name:"Qwen3 30B A3B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.12,output:.5,cacheRead:0,cacheWrite:0},contextWindow:40960,maxTokens:16384},"Qwen/Qwen3-32B":{id:"Qwen/Qwen3-32B",name:"Qwen3 32B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.29,output:.59,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"Qwen/Qwen3-Coder-30B-A3B-Instruct":{id:"Qwen/Qwen3-Coder-30B-A3B-Instruct",name:"Qwen3-Coder 30B-A3B Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.07,output:.26,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:2,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:66536},"Qwen/Qwen3-Coder-Next":{id:"Qwen/Qwen3-Coder-Next",name:"Qwen3-Coder-Next",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.2,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3-Next-80B-A3B-Instruct":{id:"Qwen/Qwen3-Next-80B-A3B-Instruct",name:"Qwen3-Next-80B-A3B-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.25,output:1,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:66536},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.3,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"Qwen/Qwen3-VL-235B-A22B-Instruct":{id:"Qwen/Qwen3-VL-235B-A22B-Instruct",name:"Qwen3 VL 235B A22B Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text","image"],cost:{input:.3,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"Qwen/Qwen3-VL-235B-A22B-Thinking":{id:"Qwen/Qwen3-VL-235B-A22B-Thinking",name:"Qwen3 VL 235B A22B Thinking",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.98,output:3.95,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"Qwen/Qwen3.5-122B-A10B":{id:"Qwen/Qwen3.5-122B-A10B",name:"Qwen3.5 122B-A10B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.4,output:3.2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.5-27B":{id:"Qwen/Qwen3.5-27B",name:"Qwen3.5 27B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.3,output:2.4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.5-35B-A3B":{id:"Qwen/Qwen3.5-35B-A3B",name:"Qwen3.5 35B-A3B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.6,output:3.6,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"Qwen/Qwen3.5-9B":{id:"Qwen/Qwen3.5-9B",name:"Qwen3.5 9B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.17,output:.25,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.6-27B":{id:"Qwen/Qwen3.6-27B",name:"Qwen3.6 27B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.47,output:3.19,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.6-35B-A3B":{id:"Qwen/Qwen3.6-35B-A3B",name:"Qwen3.6 35B-A3B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.15,output:.95,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.8-2.4T-A95B":{id:"Qwen/Qwen3.8-2.4T-A95B",name:"Qwen3.8 2.4T A95B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:2.5,output:6.25,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"XiaomiMiMo/MiMo-V2-Flash":{id:"XiaomiMiMo/MiMo-V2-Flash",name:"MiMo-V2-Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:4096},"XiaomiMiMo/MiMo-V2.5":{id:"XiaomiMiMo/MiMo-V2.5",name:"MiMo-V2.5",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"XiaomiMiMo/MiMo-V2.5-Pro":{id:"XiaomiMiMo/MiMo-V2.5-Pro",name:"MiMo-V2.5-Pro",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:1,output:3,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"deepseek-ai/DeepSeek-R1":{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek-R1",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.7,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:64e3,maxTokens:32768},"deepseek-ai/DeepSeek-R1-0528":{id:"deepseek-ai/DeepSeek-R1-0528",name:"DeepSeek-R1-0528",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:3,output:5,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:163840},"deepseek-ai/DeepSeek-V3":{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek-V3",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.4,output:1.3,cacheRead:0,cacheWrite:0},contextWindow:64e3,maxTokens:8192},"deepseek-ai/DeepSeek-V3-0324":{id:"deepseek-ai/DeepSeek-V3-0324",name:"DeepSeek V3 0324",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.27,output:1.12,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:163840},"deepseek-ai/DeepSeek-V3.1":{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek-V3.1",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.27,output:1,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.28,output:.4,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:65536},"deepseek-ai/DeepSeek-V4-Flash":{id:"deepseek-ai/DeepSeek-V4-Flash",name:"DeepSeek V4 Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.14,output:.28,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:384e3},"deepseek-ai/DeepSeek-V4-Flash-0731":{id:"deepseek-ai/DeepSeek-V4-Flash-0731",name:"DeepSeek V4 Flash 0731",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.14,output:.28,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:384e3},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.435,output:.87,cacheRead:.003625,cacheWrite:0},contextWindow:1048576,maxTokens:393216},"deepseek-ai/DeepSeek-V4-Pro-0813":{id:"deepseek-ai/DeepSeek-V4-Pro-0813",name:"DeepSeek V4 Pro 0813",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:1.32,output:3.96,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"google/gemma-4-26B-A4B-it":{id:"google/gemma-4-26B-A4B-it",name:"Gemma 4 26B A4B IT",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.13,output:.4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"google/gemma-4-31B-it":{id:"google/gemma-4-31B-it",name:"Gemma 4 31B IT",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.14,output:.4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"meta-llama/Llama-3.1-8B-Instruct":{id:"meta-llama/Llama-3.1-8B-Instruct",name:"Llama-3.1-8B-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.06,output:.06,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:4096},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.59,output:.79,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:4096},"moonshotai/Kimi-K2-Instruct":{id:"moonshotai/Kimi-K2-Instruct",name:"Kimi-K2-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:1,output:3,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"moonshotai/Kimi-K2-Instruct-0905":{id:"moonshotai/Kimi-K2-Instruct-0905",name:"Kimi-K2-Instruct-0905",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:1,output:3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"moonshotai/Kimi-K2-Thinking":{id:"moonshotai/Kimi-K2-Thinking",name:"Kimi-K2-Thinking",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.6,output:2.5,cacheRead:.15,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.6,output:3,cacheRead:.1,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi-K2.6",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.16,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/Kimi-K2.7-Code":{id:"moonshotai/Kimi-K2.7-Code",name:"Kimi K2.7 Code",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/Kimi-K3":{id:"moonshotai/Kimi-K3",name:"Kimi K3",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.25,output:.69,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.1,output:.5,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"stepfun-ai/Step-3.5-Flash":{id:"stepfun-ai/Step-3.5-Flash",name:"Step 3.5 Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:256e3},"stepfun-ai/Step-3.7-Flash":{id:"stepfun-ai/Step-3.7-Flash",name:"Step 3.7 Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.2,output:1.15,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:256e3},"tencent/Hy3":{id:"tencent/Hy3",name:"Hy3",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.14,output:.58,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:64e3},"thinkingmachines/Inkling":{id:"thinkingmachines/Inkling",name:"Inkling",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:1,output:4.05,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:1048576},"thinkingmachines/Inkling-Small":{id:"thinkingmachines/Inkling-Small",name:"Inkling Small",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.5,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:524288,maxTokens:1048576},"zai-org/GLM-4.5":{id:"zai-org/GLM-4.5",name:"GLM-4.5",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:98304},"zai-org/GLM-4.5-Air":{id:"zai-org/GLM-4.5-Air",name:"GLM-4.5-Air",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.13,output:.85,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:98304},"zai-org/GLM-4.5V":{id:"zai-org/GLM-4.5V",name:"GLM-4.5V",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.6,output:1.8,cacheRead:0,cacheWrite:0},contextWindow:65536,maxTokens:16384},"zai-org/GLM-4.6":{id:"zai-org/GLM-4.6",name:"GLM-4.6",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.55,output:2.2,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"zai-org/GLM-4.6V-Flash":{id:"zai-org/GLM-4.6V-Flash",name:"GLM-4.6V-Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.3,output:.9,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM-4.7",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:.11,cacheWrite:0},contextWindow:204800,maxTokens:131072},"zai-org/GLM-4.7-Flash":{id:"zai-org/GLM-4.7-Flash",name:"GLM-4.7-Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:128e3},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:1,output:3.2,cacheRead:.2,cacheWrite:0},contextWindow:202752,maxTokens:131072},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:1,output:3.2,cacheRead:.2,cacheWrite:0},contextWindow:202752,maxTokens:131072},"zai-org/GLM-5.2":{id:"zai-org/GLM-5.2",name:"GLM-5.2",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072}},"kimi-coding":{k2p5:{id:"k2p5",name:"Kimi K2.5",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},k3:{id:"k3",name:"Kimi K3",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"k3-256k":{id:"k3-256k",name:"Kimi K3-256K",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"kimi-for-coding":{id:"kimi-for-coding",name:"Kimi K2.7 Code",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"kimi-for-coding-highspeed":{id:"kimi-for-coding-highspeed",name:"Kimi For Coding HighSpeed",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"kimi-k2-thinking":{id:"kimi-k2-thinking",name:"Kimi K2 Thinking",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768}},minimax:{"MiniMax-M2.7":{id:"MiniMax-M2.7",name:"MiniMax-M2.7",api:"anthropic-messages",provider:"minimax",baseUrl:"https://api.minimax.io/anthropic",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131072},"MiniMax-M2.7-highspeed":{id:"MiniMax-M2.7-highspeed",name:"MiniMax-M2.7-highspeed",api:"anthropic-messages",provider:"minimax",baseUrl:"https://api.minimax.io/anthropic",reasoning:!0,input:["text"],cost:{input:.6,output:2.4,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131072}},"minimax-cn":{"MiniMax-M2.7":{id:"MiniMax-M2.7",name:"MiniMax-M2.7",api:"anthropic-messages",provider:"minimax-cn",baseUrl:"https://api.minimaxi.com/anthropic",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131072},"MiniMax-M2.7-highspeed":{id:"MiniMax-M2.7-highspeed",name:"MiniMax-M2.7-highspeed",api:"anthropic-messages",provider:"minimax-cn",baseUrl:"https://api.minimaxi.com/anthropic",reasoning:!0,input:["text"],cost:{input:.6,output:2.4,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131072}},mistral:{"codestral-latest":{id:"codestral-latest",name:"Codestral (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.3,output:.9,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:4096},"devstral-2512":{id:"devstral-2512",name:"Devstral 2",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"devstral-latest":{id:"devstral-latest",name:"Devstral 2",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"devstral-medium-2507":{id:"devstral-medium-2507",name:"Devstral Medium",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"devstral-medium-latest":{id:"devstral-medium-latest",name:"Devstral 2 (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"devstral-small-2505":{id:"devstral-small-2505",name:"Devstral Small 2505",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"devstral-small-2507":{id:"devstral-small-2507",name:"Devstral Small",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"labs-devstral-small-2512":{id:"labs-devstral-small-2512",name:"Devstral Small 2",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"magistral-medium-latest":{id:"magistral-medium-latest",name:"Magistral Medium (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text"],cost:{input:2,output:5,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"magistral-small":{id:"magistral-small",name:"Magistral Small",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"ministral-3b-latest":{id:"ministral-3b-latest",name:"Ministral 3B (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.04,output:.04,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"ministral-8b-latest":{id:"ministral-8b-latest",name:"Ministral 8B (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.1,output:.1,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"mistral-large-2411":{id:"mistral-large-2411",name:"Mistral Large 2.1",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:2,output:6,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"mistral-large-2512":{id:"mistral-large-2512",name:"Mistral Large 3",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"mistral-large-latest":{id:"mistral-large-latest",name:"Mistral Large (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"mistral-medium-2505":{id:"mistral-medium-2505",name:"Mistral Medium 3",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"mistral-medium-2508":{id:"mistral-medium-2508",name:"Mistral Medium 3.1",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"mistral-medium-2604":{id:"mistral-medium-2604",name:"Mistral Medium 3.5",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"mistral-medium-latest":{id:"mistral-medium-latest",name:"Mistral Medium (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"mistral-nemo":{id:"mistral-nemo",name:"Mistral Nemo",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"mistral-small-2506":{id:"mistral-small-2506",name:"Mistral Small 3.2",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"mistral-small-2603":{id:"mistral-small-2603",name:"Mistral Small 4",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text","image"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral-small-latest":{id:"mistral-small-latest",name:"Mistral Small (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text","image"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"open-mistral-7b":{id:"open-mistral-7b",name:"Mistral 7B",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.25,output:.25,cacheRead:0,cacheWrite:0},contextWindow:8e3,maxTokens:8e3},"open-mistral-nemo":{id:"open-mistral-nemo",name:"Open Mistral Nemo",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"open-mixtral-8x22b":{id:"open-mixtral-8x22b",name:"Mixtral 8x22B",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:2,output:6,cacheRead:0,cacheWrite:0},contextWindow:64e3,maxTokens:64e3},"open-mixtral-8x7b":{id:"open-mixtral-8x7b",name:"Mixtral 8x7B",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.7,output:.7,cacheRead:0,cacheWrite:0},contextWindow:32e3,maxTokens:32e3},"pixtral-12b":{id:"pixtral-12b",name:"Pixtral 12B",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"pixtral-large-latest":{id:"pixtral-large-latest",name:"Pixtral Large (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:2,output:6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"voxtral-small-latest":{id:"voxtral-small-latest",name:"Voxtral Small (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:32e3,maxTokens:32e3}},openai:{"gpt-4":{id:"gpt-4",name:"GPT-4",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text"],cost:{input:30,output:60,cacheRead:0,cacheWrite:0},contextWindow:8192,maxTokens:8192},"gpt-4-turbo":{id:"gpt-4-turbo",name:"GPT-4 Turbo",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:10,output:30,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:.4,output:1.6,cacheRead:.1,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4.1-nano":{id:"gpt-4.1-nano",name:"GPT-4.1 nano",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:.1,output:.4,cacheRead:.025,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4o":{id:"gpt-4o",name:"GPT-4o",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-2024-05-13":{id:"gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:5,output:15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"gpt-4o-2024-08-06":{id:"gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-2024-11-20":{id:"gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-mini":{id:"gpt-4o-mini",name:"GPT-4o mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5":{id:"gpt-5",name:"GPT-5",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-chat-latest":{id:"gpt-5-chat-latest",name:"GPT-5 Chat Latest",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.025,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:.05,output:.4,cacheRead:.005,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-pro":{id:"gpt-5-pro",name:"GPT-5 Pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:120,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:272e3},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:5,cacheRead:.125,cacheWrite:1.25},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2-chat-latest":{id:"gpt-5.2-chat-latest",name:"GPT-5.2 Chat",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5.2-pro":{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:21,output:168,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-chat-latest":{id:"gpt-5.3-chat-latest",name:"GPT-5.3 Chat (latest)",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:32e3},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.6":{id:"gpt-5.6",name:"GPT-5.6",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:6.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-luna":{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-sol":{id:"gpt-5.6-sol",name:"GPT-5.6 Sol",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:6.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-terra":{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"gpt-realtime-2.1":{id:"gpt-realtime-2.1",name:"GPT-Realtime-2.1",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:4,output:24,cacheRead:.4,cacheWrite:0},contextWindow:128e3,maxTokens:32e3},o1:{id:"o1",name:"o1",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:60,cacheRead:7.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o1-pro":{id:"o1-pro",name:"o1-pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:150,output:600,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},o3:{id:"o3",name:"o3",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o3-mini":{id:"o3-mini",name:"o3-mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text"],cost:{input:1.1,output:4.4,cacheRead:.55,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o3-pro":{id:"o3-pro",name:"o3-pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:20,output:80,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o4-mini":{id:"o4-mini",name:"o4-mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5}},"openai-codex":{"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.025,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 Mini",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:272e3,maxTokens:128e3}},opencode:{"big-pickle":{id:"big-pickle",name:"Big Pickle",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:32e3},"claude-fable-5":{id:"claude-fable-5",name:"Claude Fable 5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"claude-haiku-4-5":{id:"claude-haiku-4-5",name:"Claude Haiku 4.5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-5":{id:"claude-opus-4-5",name:"Claude Opus 4.5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-4-8":{id:"claude-opus-4-8",name:"Claude Opus 4.8",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-5":{id:"claude-opus-5",name:"Claude Opus 5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-sonnet-4":{id:"claude-sonnet-4",name:"Claude Sonnet 4",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"claude-sonnet-5":{id:"claude-sonnet-5",name:"Claude Sonnet 5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:.14,output:.28,cacheRead:.028,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"deepseek-v4-flash-free":{id:"deepseek-v4-flash-free",name:"DeepSeek V4 Flash Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:128e3},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:1.74,output:3.84,cacheRead:.145,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"gemini-3-flash":{id:"gemini-3-flash",name:"Gemini 3 Flash",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.05,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-pro":{id:"gemini-3.1-pro",name:"Gemini 3.1 Pro Preview",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.5-flash-lite":{id:"gemini-3.5-flash-lite",name:"Gemini 3.5 Flash Lite",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.6-flash":{id:"gemini-3.6-flash",name:"Gemini 3.6 Flash",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.7-flash":{id:"gemini-3.7-flash",name:"Gemini 3.7 Flash",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"glm-5":{id:"glm-5",name:"GLM-5",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:1,output:3.2,cacheRead:.2,cacheWrite:0},contextWindow:204800,maxTokens:131072},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:204800,maxTokens:131072},"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"gpt-5":{id:"gpt-5",name:"GPT-5",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.07,output:8.5,cacheRead:.107,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-codex":{id:"gpt-5-codex",name:"GPT-5 Codex",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.07,output:8.5,cacheRead:.107,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.05,output:.4,cacheRead:.005,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.07,output:8.5,cacheRead:.107,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.07,output:8.5,cacheRead:.107,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.025,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 Mini",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 Nano",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:30,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:30,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-luna":{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-sol":{id:"gpt-5.6-sol",name:"GPT-5.6 Sol (50% Off)",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-terra":{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"grok-4.5":{id:"grok-4.5",name:"Grok 4.5",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"grok-4.6":{id:"grok-4.6",name:"Grok 4.6",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"grok-build-0.1":{id:"grok-build-0.1",name:"Grok Build 0.1",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:2,cacheRead:.2,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"hy3-free":{id:"hy3-free",name:"Hy3 Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:19e4,maxTokens:64e3},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.6,output:3,cacheRead:.08,cacheWrite:0},contextWindow:262144,maxTokens:65536},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.16,cacheWrite:0},contextWindow:262144,maxTokens:65536},"kimi-k2.7-code":{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.19,cacheWrite:0},contextWindow:262144,maxTokens:262144},"kimi-k3":{id:"kimi-k3",name:"Kimi K3",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"laguna-s-2.1-free":{id:"laguna-s-2.1-free",name:"Laguna S 2.1 Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"mimo-v2.5-free":{id:"mimo-v2.5-free",name:"MiMo V2.5 Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:32e3},"minimax-m2.5":{id:"minimax-m2.5",name:"MiniMax-M2.5",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax-m2.7":{id:"minimax-m2.7",name:"MiniMax-M2.7",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax-m3":{id:"minimax-m3",name:"MiniMax-M3",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:512e3,maxTokens:128e3},"muse-spark-1.2":{id:"muse-spark-1.2",name:"Muse Spark 1.2",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:4.25,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"nemotron-3-ultra-free":{id:"nemotron-3-ultra-free",name:"Nemotron 3 Ultra Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"nemotron-3.5-lightning-free":{id:"nemotron-3.5-lightning-free",name:"Nemotron 3.5 Lightning Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen3.5-plus":{id:"qwen3.5-plus",name:"Qwen3.5 Plus",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:262144,maxTokens:65536},"qwen3.6-plus":{id:"qwen3.6-plus",name:"Qwen3.6 Plus",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.05,cacheWrite:.625},contextWindow:262144,maxTokens:65536}},"opencode-go":{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:.22,output:.66,cacheRead:.007,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro (New)",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:.66,output:1.98,cacheRead:.022,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:202752,maxTokens:32768},"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"glm-5.3":{id:"glm-5.3",name:"GLM-5.3",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"gpt-5.6-luna":{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",api:"openai-responses",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"grok-4.5":{id:"grok-4.5",name:"Grok 4.5",api:"openai-responses",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},hy3:{id:"hy3",name:"Hy3 (8x usage)",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:.0175,output:.0725,cacheRead:.004375,cacheWrite:0},contextWindow:256e3,maxTokens:64e3},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.16,cacheWrite:0},contextWindow:262144,maxTokens:65536},"kimi-k2.7-code":{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.19,cacheWrite:0},contextWindow:262144,maxTokens:262144},"kimi-k3":{id:"kimi-k3",name:"Kimi K3",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"mimo-v2.5":{id:"mimo-v2.5",name:"MiMo V2.5",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.14,output:.28,cacheRead:.0028,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"mimo-v2.5-pro":{id:"mimo-v2.5-pro",name:"MiMo V2.5 Pro",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:.435,output:.87,cacheRead:.003625,cacheWrite:0},contextWindow:1048576,maxTokens:128e3},"minimax-m2.7":{id:"minimax-m2.7",name:"MiniMax-M2.7",api:"anthropic-messages",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax-m3":{id:"minimax-m3",name:"MiniMax-M3",api:"anthropic-messages",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"muse-spark-1.2-contributor":{id:"muse-spark-1.2-contributor",name:"Muse Spark 1.2 Contributor",api:"openai-responses",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.1,output:.2,cacheRead:.002,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"qwen3.6-plus":{id:"qwen3.6-plus",name:"Qwen3.6 Plus",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.05,cacheWrite:.625},contextWindow:1e6,maxTokens:65536},"qwen3.7-max":{id:"qwen3.7-max",name:"Qwen3.7 Max",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:2.5,output:7.5,cacheRead:.5,cacheWrite:3.125},contextWindow:1e6,maxTokens:65536},"qwen3.7-plus":{id:"qwen3.7-plus",name:"Qwen3.7 Plus",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.4,output:1.6,cacheRead:.04,cacheWrite:.5},contextWindow:1e6,maxTokens:65536},"qwen3.8-max":{id:"qwen3.8-max",name:"Qwen3.8 Max",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.25,cacheWrite:2.5},contextWindow:1e6,maxTokens:131072}},openrouter:{"aion-labs/aion-2.0":{id:"aion-labs/aion-2.0",name:"AionLabs: Aion-2.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.7999999999999999,output:1.5999999999999999,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:131072,maxTokens:32768},"aion-labs/aion-3.0":{id:"aion-labs/aion-3.0",name:"AionLabs: Aion-3.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:3,output:6,cacheRead:.75,cacheWrite:0},contextWindow:131072,maxTokens:32768},"aion-labs/aion-3.0-mini":{id:"aion-labs/aion-3.0-mini",name:"AionLabs: Aion-3.0-Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.7,output:1.4,cacheRead:.18,cacheWrite:0},contextWindow:131072,maxTokens:32768},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Amazon: Nova 2 Lite",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:65535},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Amazon: Nova Lite 1.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.06,output:.24,cacheRead:0,cacheWrite:0},contextWindow:3e5,maxTokens:5120},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Amazon: Nova Micro 1.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.035,output:.14,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:5120},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Amazon: Nova Premier 1.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.625,cacheWrite:0},contextWindow:1e6,maxTokens:32e3},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Amazon: Nova Pro 1.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.7999999999999999,output:3.1999999999999997,cacheRead:0,cacheWrite:0},contextWindow:3e5,maxTokens:5120},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Anthropic: Claude 3 Haiku",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.25,output:1.25,cacheRead:.03,cacheWrite:.3},contextWindow:2e5,maxTokens:4096},"anthropic/claude-fable-5":{id:"anthropic/claude-fable-5",name:"Anthropic: Claude Fable 5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-fable-5:batch":{id:"anthropic/claude-fable-5:batch",name:"Anthropic: Claude Fable 5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Anthropic: Claude Haiku 4.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.09999999999999999,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-haiku-4.5:batch":{id:"anthropic/claude-haiku-4.5:batch",name:"Anthropic: Claude Haiku 4.5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:2.5,cacheRead:.049999999999999996,cacheWrite:.625},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Anthropic: Claude Opus 4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},contextWindow:2e5,maxTokens:32e3},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Anthropic: Claude Opus 4.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},contextWindow:2e5,maxTokens:32e3},"anthropic/claude-opus-4.1:batch":{id:"anthropic/claude-opus-4.1:batch",name:"Anthropic: Claude Opus 4.1 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:7.5,output:37.5,cacheRead:.75,cacheWrite:9.375},contextWindow:2e5,maxTokens:32e3},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Anthropic: Claude Opus 4.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-opus-4.5:batch":{id:"anthropic/claude-opus-4.5:batch",name:"Anthropic: Claude Opus 4.5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.25,cacheWrite:3.125},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Anthropic: Claude Opus 4.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.6:batch":{id:"anthropic/claude-opus-4.6:batch",name:"Anthropic: Claude Opus 4.6 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.25,cacheWrite:3.125},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Anthropic: Claude Opus 4.7",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.7-fast":{id:"anthropic/claude-opus-4.7-fast",name:"Anthropic: Claude Opus 4.7 (Fast)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:150,cacheRead:3,cacheWrite:37.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.7:batch":{id:"anthropic/claude-opus-4.7:batch",name:"Anthropic: Claude Opus 4.7 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.25,cacheWrite:3.125},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Anthropic: Claude Opus 4.8",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.8-fast":{id:"anthropic/claude-opus-4.8-fast",name:"Anthropic: Claude Opus 4.8 (Fast)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.8:batch":{id:"anthropic/claude-opus-4.8:batch",name:"Anthropic: Claude Opus 4.8 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.25,cacheWrite:3.125},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-5":{id:"anthropic/claude-opus-5",name:"Claude Opus 5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-5-fast":{id:"anthropic/claude-opus-5-fast",name:"Claude Opus 5 (Fast)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-5:batch":{id:"anthropic/claude-opus-5:batch",name:"Claude Opus 5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.25,cacheWrite:3.125},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Anthropic: Claude Sonnet 4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Anthropic: Claude Sonnet 4.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"anthropic/claude-sonnet-4.5:batch":{id:"anthropic/claude-sonnet-4.5:batch",name:"Anthropic: Claude Sonnet 4.5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:1.875},contextWindow:1e6,maxTokens:64e3},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Anthropic: Claude Sonnet 4.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-4.6:batch":{id:"anthropic/claude-sonnet-4.6:batch",name:"Anthropic: Claude Sonnet 4.6 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:1.875},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-5":{id:"anthropic/claude-sonnet-5",name:"Anthropic: Claude Sonnet 5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-5:batch":{id:"anthropic/claude-sonnet-5:batch",name:"Anthropic: Claude Sonnet 5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.09999999999999999,cacheWrite:1.25},contextWindow:1e6,maxTokens:128e3},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Arcee AI: Trinity Large Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.22,output:.85,cacheRead:.06,cacheWrite:0},contextWindow:262144,maxTokens:262144},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Arcee AI: Virtuoso Large",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.75,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:64e3},auto:{id:"auto",name:"Auto",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e6,maxTokens:3e4},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"ByteDance Seed: Seed 1.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"ByteDance Seed: Seed 1.6 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.075,output:.3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"bytedance-seed/seed-2-1-turbo":{id:"bytedance-seed/seed-2-1-turbo",name:"ByteDance Seed: Seed 2.1 Turbo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"bytedance-seed/seed-2.0-code":{id:"bytedance-seed/seed-2.0-code",name:"ByteDance Seed: Seed-2.0-Code",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"ByteDance Seed: Seed-2.0-Lite",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"ByteDance Seed: Seed-2.0-Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Cohere: Command R (08-2024)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Cohere: Command R+ (08-2024)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:2.5,output:10,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"cohere/north-mini-code:free":{id:"cohere/north-mini-code:free",name:"Cohere: North Mini Code (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:64e3},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek: DeepSeek V3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.2574,output:1.0287,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:16e3},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek: DeepSeek V3 0324",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.25,output:1,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:163840},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek: DeepSeek V3.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.25,output:.95,cacheRead:.13,cacheWrite:0},contextWindow:163840,maxTokens:32768},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.7,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:64e3,maxTokens:16e3},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"DeepSeek: R1 0528",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.5,output:2.1500000000000004,cacheRead:.35,cacheWrite:0},contextWindow:163840,maxTokens:32768},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek: DeepSeek V3.1 Terminus",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.27,output:1,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:163840},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek: DeepSeek V3.2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.26899999999999996,output:.39999999999999997,cacheRead:.13449999999999998,cacheWrite:0},contextWindow:163840,maxTokens:65536},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek: DeepSeek V3.2 Exp",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.27,output:.41,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:65536},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek: DeepSeek V4 Flash 0423",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.08259999999999999,output:.16519999999999999,cacheRead:.01652,cacheWrite:0},contextWindow:1048576,maxTokens:384e3},"deepseek/deepseek-v4-flash-0731":{id:"deepseek/deepseek-v4-flash-0731",name:"DeepSeek: DeepSeek V4 Flash 0731",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.14,output:.28,cacheRead:.028,cacheWrite:0},contextWindow:1310720,maxTokens:393216},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek: DeepSeek V4 Pro 0423",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.44,output:2.88,cacheRead:.1215,cacheWrite:0},contextWindow:1048576,maxTokens:393216},"deepseek/deepseek-v4-pro-0813":{id:"deepseek/deepseek-v4-pro-0813",name:"DeepSeek: DeepSeek V4 Pro 0813",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.0559999999999998,output:3.168,cacheRead:.035199999999999995,cacheWrite:0},contextWindow:1048576,maxTokens:4096},"dots-studio/dots-3-note-preview:free":{id:"dots-studio/dots-3-note-preview:free",name:"Dots Studio: Dots3-Note Preview (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:512e3,maxTokens:512e3},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Google: Gemini 2.5 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65535},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Google: Gemini 2.5 Flash Lite",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:.01,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65535},"google/gemini-2.5-flash-lite:batch":{id:"google/gemini-2.5-flash-lite:batch",name:"Google: Gemini 2.5 Flash Lite (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.049999999999999996,output:.19999999999999998,cacheRead:.01,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"google/gemini-2.5-flash:batch":{id:"google/gemini-2.5-flash:batch",name:"Google: Gemini 2.5 Flash (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.15,output:1.25,cacheRead:.03,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Google: Gemini 2.5 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:.375},contextWindow:1048576,maxTokens:65536},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Google: Gemini 2.5 Pro Preview 06-05",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:.375},contextWindow:1048576,maxTokens:65536},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Google: Gemini 2.5 Pro Preview 05-06",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:.375},contextWindow:1048576,maxTokens:65535},"google/gemini-2.5-pro:batch":{id:"google/gemini-2.5-pro:batch",name:"Google: Gemini 2.5 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.625,output:5,cacheRead:.125,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Google: Gemini 3 Flash Preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.049999999999999996,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3-flash-preview:batch":{id:"google/gemini-3-flash-preview:batch",name:"Google: Gemini 3 Flash Preview (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3-pro-image":{id:"google/gemini-3-pro-image",name:"Google: Nano Banana Pro (Gemini 3 Pro Image)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:.375},contextWindow:131072,maxTokens:32768},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Google: Gemini 3.1 Flash Lite",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.024999999999999998,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Google: Gemini 3.1 Flash Lite Preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.024999999999999998,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3.1-flash-lite:batch":{id:"google/gemini-3.1-flash-lite:batch",name:"Google: Gemini 3.1 Flash Lite (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.125,output:.75,cacheRead:.012499999999999999,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Google: Gemini 3.1 Pro Preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:.375},contextWindow:1048576,maxTokens:65536},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Google: Gemini 3.1 Pro Preview Custom Tools",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:.375},contextWindow:1048576,maxTokens:65536},"google/gemini-3.1-pro-preview:batch":{id:"google/gemini-3.1-pro-preview:batch",name:"Google: Gemini 3.1 Pro Preview (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:6,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Google: Gemini 3.5 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3.5-flash-lite":{id:"google/gemini-3.5-flash-lite",name:"Google: Gemini 3.5 Flash Lite",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3.5-flash-lite:batch":{id:"google/gemini-3.5-flash-lite:batch",name:"Google: Gemini 3.5 Flash Lite (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.15,output:1.25,cacheRead:.015,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3.5-flash:batch":{id:"google/gemini-3.5-flash:batch",name:"Google: Gemini 3.5 Flash (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3.6-flash":{id:"google/gemini-3.6-flash",name:"Google: Gemini 3.6 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:3.75,cacheRead:.075,cacheWrite:.0416666666666667},contextWindow:1048576,maxTokens:65536},"google/gemini-3.6-flash:batch":{id:"google/gemini-3.6-flash:batch",name:"Google: Gemini 3.6 Flash (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.375,output:1.875,cacheRead:.0375,cacheWrite:.0416666666666667},contextWindow:1048576,maxTokens:65536},"google/gemini-3.7-flash":{id:"google/gemini-3.7-flash",name:"Google: Gemini 3.7 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.375,output:1.875,cacheRead:.0375,cacheWrite:.0208333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3.7-flash:batch":{id:"google/gemini-3.7-flash:batch",name:"Google: Gemini 3.7 Flash (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.1875,output:.9375,cacheRead:.01875,cacheWrite:.0208333333333333},contextWindow:1048576,maxTokens:65536},"google/gemma-3-12b-it":{id:"google/gemma-3-12b-it",name:"Google: Gemma 3 12B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.049999999999999996,output:.15,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Google: Gemma 3 27B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.08,output:.44999999999999996,cacheRead:.04,cacheWrite:0},contextWindow:262144,maxTokens:131072},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Google: Gemma 4 26B A4B ",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.07,output:.33999999999999997,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"google/gemma-4-26b-a4b-it:free":{id:"google/gemma-4-26b-a4b-it:free",name:"Google: Gemma 4 26B A4B (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Google: Gemma 4 31B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09,output:.33999999999999997,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:262144,maxTokens:16384},"google/gemma-4-31b-it:free":{id:"google/gemma-4-31b-it:free",name:"Google: Gemma 4 31B (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"IBM: Granite 4.1 8B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.049999999999999996,output:.09999999999999999,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:131072,maxTokens:131072},"inception/mercury-2":{id:"inception/mercury-2",name:"Inception: Mercury 2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.25,output:.75,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:128e3,maxTokens:5e4},"inclusionai/ling-2.6-1t":{id:"inclusionai/ling-2.6-1t",name:"inclusionAI: Ling-2.6-1T",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.075,output:.625,cacheRead:.015,cacheWrite:0},contextWindow:262144,maxTokens:32768},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"inclusionAI: Ling-2.6-flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.01,output:.03,cacheRead:.002,cacheWrite:0},contextWindow:262144,maxTokens:32768},"inclusionai/ling-3.0-flash":{id:"inclusionai/ling-3.0-flash",name:"Ling-3.0-flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.020999999999999998,output:.063,cacheRead:.004200000000000001,cacheWrite:0},contextWindow:262144,maxTokens:32768},"inclusionai/ring-2.6-1t":{id:"inclusionai/ring-2.6-1t",name:"inclusionAI: Ring-2.6-1T",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.075,output:.625,cacheRead:.015,cacheWrite:0},contextWindow:262144,maxTokens:65536},"kwaipilot/kat-coder-air-v2.5":{id:"kwaipilot/kat-coder-air-v2.5",name:"Kwaipilot: KAT-Coder-Air V2.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.15,output:.6,cacheRead:.03,cacheWrite:0},contextWindow:256e3,maxTokens:8e4},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kwaipilot: KAT-Coder-Pro V2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:262144,maxTokens:8e4},"kwaipilot/kat-coder-pro-v2.5":{id:"kwaipilot/kat-coder-pro-v2.5",name:"Kwaipilot: KAT-Coder-Pro V2.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.74,output:2.96,cacheRead:.15,cacheWrite:0},contextWindow:256e3,maxTokens:8e4},"liquid/lfm-2.5-2.6b:free":{id:"liquid/lfm-2.5-2.6b:free",name:"LiquidAI: LFM2.5-2.6B (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meituan/longcat-2.0":{id:"meituan/longcat-2.0",name:"Meituan: LongCat 2.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.006,cacheWrite:0},contextWindow:1048756,maxTokens:262144},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Meta: Llama 3.1 70B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.39999999999999997,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Meta: Llama 3.1 8B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.049999999999999996,output:.08,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:131072,maxTokens:131072},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Meta: Llama 3.3 70B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.09999999999999999,output:.32,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Meta: Llama 4 Maverick",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.7999999999999999,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:16384},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Meta: Llama 4 Scout",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.3,cacheRead:0,cacheWrite:0},contextWindow:1310720,maxTokens:16384},"meta/muse-glimmer-30b":{id:"meta/muse-glimmer-30b",name:"Meta: Muse Glimmer 30B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.35,output:1.5,cacheRead:.04,cacheWrite:0},contextWindow:131072,maxTokens:4096},"meta/muse-spark-1.1":{id:"meta/muse-spark-1.1",name:"Meta: Muse Spark 1.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:4.25,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:4096},"meta/muse-spark-1.2":{id:"meta/muse-spark-1.2",name:"Meta: Muse Spark 1.2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:4.25,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:4096},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax: MiniMax M1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.55,output:2.2,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:4e4},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax: MiniMax M2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.255,output:1.02,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax: MiniMax M2.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.03,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax: MiniMax M2.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.22499999999999998,output:.8999999999999999,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:4096},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax: MiniMax M2.7",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax: MiniMax M3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:1048576,maxTokens:512e3},"minimax/minimax-m3:batch":{id:"minimax/minimax-m3:batch",name:"MiniMax: MiniMax M3 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:524288,maxTokens:4096},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Mistral: Codestral 2508",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.3,output:.8999999999999999,cacheRead:.03,cacheWrite:0},contextWindow:256e3,maxTokens:4096},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Mistral: Ministral 3 14B 2512",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.19999999999999998,cacheRead:.02,cacheWrite:0},contextWindow:262144,maxTokens:4096},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Mistral: Ministral 3 3B 2512",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.09999999999999999,cacheRead:.01,cacheWrite:0},contextWindow:131072,maxTokens:4096},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Mistral: Ministral 3 8B 2512",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.15,output:.15,cacheRead:.015,cacheWrite:0},contextWindow:262144,maxTokens:4096},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:2,output:6,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:2,output:6,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:131072,maxTokens:4096},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral: Mistral Large 3 2512",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:262144,maxTokens:4096},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral: Mistral Medium 3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:2,cacheRead:.04,cacheWrite:0},contextWindow:131072,maxTokens:4096},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral: Mistral Medium 3.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:4096},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral: Mistral Medium 3.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:2,cacheRead:.04,cacheWrite:0},contextWindow:131072,maxTokens:4096},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral: Mistral Nemo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.019000000000000003,output:.03,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Mistral: Saba",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.19999999999999998,output:.6,cacheRead:.02,cacheWrite:0},contextWindow:32768,maxTokens:4096},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral: Mistral Small 4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.015,cacheWrite:0},contextWindow:262144,maxTokens:4096},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral: Mistral Small 3.2 24B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.09375,output:.25,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:16384},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mistral: Mixtral 8x22B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:2,output:6,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:65536,maxTokens:4096},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Mistral: Voxtral Small 24B 2507",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.09999999999999999,output:.3,cacheRead:.01,cacheWrite:0},contextWindow:32e3,maxTokens:4096},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"MoonshotAI: Kimi K2 0711",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.5700000000000001,output:2.3,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:100352},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"MoonshotAI: Kimi K2 0905",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.6,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:100352},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"MoonshotAI: Kimi K2 Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.6,output:2.5,cacheRead:.15,cacheWrite:0},contextWindow:262144,maxTokens:100352},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"MoonshotAI: Kimi K2.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.41,output:2.06,cacheRead:.07,cacheWrite:0},contextWindow:262144,maxTokens:4096},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"MoonshotAI: Kimi K2.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.16,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/kimi-k2.7-code":{id:"moonshotai/kimi-k2.7-code",name:"MoonshotAI: Kimi K2.7 Code",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.71,output:3.5,cacheRead:.15,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/kimi-k2.7-code:batch":{id:"moonshotai/kimi-k2.7-code:batch",name:"MoonshotAI: Kimi K2.7 Code (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.19,cacheWrite:0},contextWindow:262144,maxTokens:4096},"moonshotai/kimi-k3":{id:"moonshotai/kimi-k3",name:"MoonshotAI: Kimi K3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:0},contextWindow:1048576,maxTokens:4096},"nex-agi/nex-n2-mini":{id:"nex-agi/nex-n2-mini",name:"Nex AGI: Nex-N2-Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.024999999999999998,output:.09999999999999999,cacheRead:.0025,cacheWrite:0},contextWindow:262144,maxTokens:262144},"nex-agi/nex-n2-pro":{id:"nex-agi/nex-n2-pro",name:"Nex AGI: Nex-N2-Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:1,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:262144,maxTokens:262144},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"NVIDIA: Nemotron 3 Nano 30B A3B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.049999999999999996,output:.19999999999999998,cacheRead:.03,cacheWrite:0},contextWindow:262144,maxTokens:262144},"nvidia/nemotron-3-nano-30b-a3b:free":{id:"nvidia/nemotron-3-nano-30b-a3b:free",name:"NVIDIA: Nemotron 3 Nano 30B A3B (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:4096},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"NVIDIA: Nemotron 3 Nano Omni (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:65536},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA: Nemotron 3 Super",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.08499999999999999,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:16384},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"NVIDIA: Nemotron 3 Super (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"NVIDIA: Nemotron 3 Ultra",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.6,output:3.5999999999999996,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:512288,maxTokens:4096},"nvidia/nemotron-3-ultra-550b-a55b:batch":{id:"nvidia/nemotron-3-ultra-550b-a55b:batch",name:"NVIDIA: Nemotron 3 Ultra (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.6,output:3.5999999999999996,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:512288,maxTokens:4096},"nvidia/nemotron-3-ultra-550b-a55b:free":{id:"nvidia/nemotron-3-ultra-550b-a55b:free",name:"NVIDIA: Nemotron 3 Ultra (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"nvidia/nemotron-3.5-lightning":{id:"nvidia/nemotron-3.5-lightning",name:"NVIDIA: Nemotron 3.5 Lightning",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.08,output:.19999999999999998,cacheRead:.04,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"nvidia/nemotron-3.5-lightning:free":{id:"nvidia/nemotron-3.5-lightning:free",name:"NVIDIA: Nemotron 3.5 Lightning (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"nvidia/nemotron-nano-12b-v2-vl:free":{id:"nvidia/nemotron-nano-12b-v2-vl:free",name:"NVIDIA: Nemotron Nano 12B 2 VL (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"nvidia/nemotron-nano-9b-v2:free":{id:"nvidia/nemotron-nano-9b-v2:free",name:"NVIDIA: Nemotron Nano 9B V2 (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"OpenAI: GPT-3.5 Turbo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:16385,maxTokens:4096},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"OpenAI: GPT-3.5 Turbo (older v0613)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:1,output:2,cacheRead:0,cacheWrite:0},contextWindow:4095,maxTokens:4096},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"OpenAI: GPT-3.5 Turbo 16k",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:3,output:4,cacheRead:0,cacheWrite:0},contextWindow:16385,maxTokens:4096},"openai/gpt-3.5-turbo:batch":{id:"openai/gpt-3.5-turbo:batch",name:"OpenAI: GPT-3.5 Turbo (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.25,output:.75,cacheRead:0,cacheWrite:0},contextWindow:16385,maxTokens:4096},"openai/gpt-4":{id:"openai/gpt-4",name:"OpenAI: GPT-4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:30,output:60,cacheRead:0,cacheWrite:0},contextWindow:8191,maxTokens:4096},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"OpenAI: GPT-4 Turbo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:10,output:30,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"OpenAI: GPT-4 Turbo Preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:10,output:30,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-4-turbo:batch":{id:"openai/gpt-4-turbo:batch",name:"OpenAI: GPT-4 Turbo (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:5,output:15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"OpenAI: GPT-4.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"OpenAI: GPT-4.1 Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:1.5999999999999999,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-mini:batch":{id:"openai/gpt-4.1-mini:batch",name:"OpenAI: GPT-4.1 Mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.7999999999999999,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"OpenAI: GPT-4.1 Nano",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-nano:batch":{id:"openai/gpt-4.1-nano:batch",name:"OpenAI: GPT-4.1 Nano (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.049999999999999996,output:.19999999999999998,cacheRead:.012499999999999999,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1:batch":{id:"openai/gpt-4.1:batch",name:"OpenAI: GPT-4.1 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:1,output:4,cacheRead:.25,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4o":{id:"openai/gpt-4o",name:"OpenAI: GPT-4o",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"OpenAI: GPT-4o (2024-05-13)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:5,output:15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"OpenAI: GPT-4o (2024-08-06)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"OpenAI: GPT-4o (2024-11-20)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"OpenAI: GPT-4o-mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"OpenAI: GPT-4o-mini (2024-07-18)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-mini:batch":{id:"openai/gpt-4o-mini:batch",name:"OpenAI: GPT-4o-mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.075,output:.3,cacheRead:.0375,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o:batch":{id:"openai/gpt-4o:batch",name:"OpenAI: GPT-4o (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:1.25,output:5,cacheRead:.625,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-5":{id:"openai/gpt-5",name:"OpenAI: GPT-5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-codex:batch":{id:"openai/gpt-5-codex:batch",name:"OpenAI: GPT-5 Codex (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.625,output:5,cacheRead:.0625,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"OpenAI: GPT-5 Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-mini:batch":{id:"openai/gpt-5-mini:batch",name:"OpenAI: GPT-5 Mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.125,output:1,cacheRead:.012499999999999999,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"OpenAI: GPT-5 Nano",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.049999999999999996,output:.39999999999999997,cacheRead:.005,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-nano:batch":{id:"openai/gpt-5-nano:batch",name:"OpenAI: GPT-5 Nano (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.024999999999999998,output:.19999999999999998,cacheRead:.0025,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"OpenAI: GPT-5 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:120,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-pro:batch":{id:"openai/gpt-5-pro:batch",name:"OpenAI: GPT-5 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:7.5,output:60,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"OpenAI: GPT-5.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"OpenAI: GPT-5.1-Codex",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.13,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"OpenAI: GPT-5.1-Codex-Max",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"OpenAI: GPT-5.1-Codex-Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.03,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1:batch":{id:"openai/gpt-5.1:batch",name:"OpenAI: GPT-5.1 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.625,output:5,cacheRead:.0625,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"OpenAI: GPT-5.2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"OpenAI: GPT-5.2 Chat",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:32e3},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"OpenAI: GPT-5.2-Codex",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"OpenAI: GPT-5.2 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:21,output:168,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-pro:batch":{id:"openai/gpt-5.2-pro:batch",name:"OpenAI: GPT-5.2 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10.5,output:84,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2:batch":{id:"openai/gpt-5.2:batch",name:"OpenAI: GPT-5.2 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.875,output:7,cacheRead:.0875,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"OpenAI: GPT-5.3-Codex",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"OpenAI: GPT-5.4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"OpenAI: GPT-5.4 Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-mini:batch":{id:"openai/gpt-5.4-mini:batch",name:"OpenAI: GPT-5.4 Mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.375,output:2.25,cacheRead:.0375,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"OpenAI: GPT-5.4 Nano",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-nano:batch":{id:"openai/gpt-5.4-nano:batch",name:"OpenAI: GPT-5.4 Nano (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.625,cacheRead:.01,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"OpenAI: GPT-5.4 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.4-pro:batch":{id:"openai/gpt-5.4-pro:batch",name:"OpenAI: GPT-5.4 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:90,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.4:batch":{id:"openai/gpt-5.4:batch",name:"OpenAI: GPT-5.4 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:7.5,cacheRead:.125,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"OpenAI: GPT-5.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"OpenAI: GPT-5.5 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.5-pro:batch":{id:"openai/gpt-5.5-pro:batch",name:"OpenAI: GPT-5.5 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:90,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.5:batch":{id:"openai/gpt-5.5:batch",name:"OpenAI: GPT-5.5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-luna":{id:"openai/gpt-5.6-luna",name:"OpenAI: GPT-5.6 Luna",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-luna-pro":{id:"openai/gpt-5.6-luna-pro",name:"OpenAI: GPT-5.6 Luna Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-luna-pro:batch":{id:"openai/gpt-5.6-luna-pro:batch",name:"OpenAI: GPT-5.6 Luna Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.6,cacheRead:.01,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-luna:batch":{id:"openai/gpt-5.6-luna:batch",name:"OpenAI: GPT-5.6 Luna (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.6,cacheRead:.01,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol":{id:"openai/gpt-5.6-sol",name:"OpenAI: GPT-5.6 Sol",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol-pro":{id:"openai/gpt-5.6-sol-pro",name:"OpenAI: GPT-5.6 Sol Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol-pro:batch":{id:"openai/gpt-5.6-sol-pro:batch",name:"OpenAI: GPT-5.6 Sol Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:7.5,cacheRead:.125,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol:batch":{id:"openai/gpt-5.6-sol:batch",name:"OpenAI: GPT-5.6 Sol (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:7.5,cacheRead:.125,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra":{id:"openai/gpt-5.6-terra",name:"OpenAI: GPT-5.6 Terra",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra-pro":{id:"openai/gpt-5.6-terra-pro",name:"OpenAI: GPT-5.6 Terra Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra-pro:batch":{id:"openai/gpt-5.6-terra-pro:batch",name:"OpenAI: GPT-5.6 Terra Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:6,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra:batch":{id:"openai/gpt-5.6-terra:batch",name:"OpenAI: GPT-5.6 Terra (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:6,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5:batch":{id:"openai/gpt-5:batch",name:"OpenAI: GPT-5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.625,output:5,cacheRead:.0625,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-audio":{id:"openai/gpt-audio",name:"OpenAI: GPT Audio",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:2.5,output:10,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-audio-mini":{id:"openai/gpt-audio-mini",name:"OpenAI: GPT Audio Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.6,output:2.4,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"OpenAI: GPT Chat Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI: gpt-oss-120b",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.03,output:.16999999999999998,cacheRead:.03,cacheWrite:0},contextWindow:131072,maxTokens:131072},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"OpenAI: gpt-oss-20b",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.03,output:.13,cacheRead:.03,cacheWrite:0},contextWindow:131072,maxTokens:131072},"openai/gpt-oss-20b:free":{id:"openai/gpt-oss-20b:free",name:"OpenAI: gpt-oss-20b (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"OpenAI: gpt-oss-safeguard-20b",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.075,output:.3,cacheRead:.0375,cacheWrite:0},contextWindow:131072,maxTokens:65536},"openai/o1":{id:"openai/o1",name:"OpenAI: o1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:60,cacheRead:7.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o1:batch":{id:"openai/o1:batch",name:"OpenAI: o1 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:7.5,output:30,cacheRead:3.75,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3":{id:"openai/o3",name:"OpenAI: o3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-mini":{id:"openai/o3-mini",name:"OpenAI: o3 Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.1,output:4.4,cacheRead:.55,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"OpenAI: o3 Mini High",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.1,output:4.4,cacheRead:.55,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-mini-high:batch":{id:"openai/o3-mini-high:batch",name:"OpenAI: o3 Mini High (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.55,output:2.2,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-mini:batch":{id:"openai/o3-mini:batch",name:"OpenAI: o3 Mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.55,output:2.2,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-pro":{id:"openai/o3-pro",name:"OpenAI: o3 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:20,output:80,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-pro:batch":{id:"openai/o3-pro:batch",name:"OpenAI: o3 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10,output:40,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3:batch":{id:"openai/o3:batch",name:"OpenAI: o3 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:4,cacheRead:.25,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini":{id:"openai/o4-mini",name:"OpenAI: o4 Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"OpenAI: o4 Mini High",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini-high:batch":{id:"openai/o4-mini-high:batch",name:"OpenAI: o4 Mini High (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.55,output:2.2,cacheRead:.1375,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini:batch":{id:"openai/o4-mini:batch",name:"OpenAI: o4 Mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.55,output:2.2,cacheRead:.1375,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:-1e6,output:-1e6,cacheRead:0,cacheWrite:0},contextWindow:2e6,maxTokens:4096},"openrouter/auto-beta":{id:"openrouter/auto-beta",name:"Auto Router (Beta)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:-1e6,output:-1e6,cacheRead:0,cacheWrite:0},contextWindow:2e6,maxTokens:4096},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:4096},"poolside/laguna-s-2.1":{id:"poolside/laguna-s-2.1",name:"Poolside: Laguna S 2.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.09,output:.18,cacheRead:.009,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"poolside/laguna-s-2.1:free":{id:"poolside/laguna-s-2.1:free",name:"Poolside: Laguna S 2.1 (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"poolside/laguna-xs-2.1":{id:"poolside/laguna-xs-2.1",name:"Poolside: Laguna XS 2.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.06,output:.12,cacheRead:.03,cacheWrite:0},contextWindow:262144,maxTokens:32768},"poolside/laguna-xs-2.1:free":{id:"poolside/laguna-xs-2.1:free",name:"Poolside: Laguna XS 2.1 (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.36,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:32768,maxTokens:16384},"qwen/qwen-2.5-7b-instruct":{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen: Qwen2.5 7B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.09999999999999999,output:.19999999999999998,cacheRead:0,cacheWrite:0},contextWindow:32768,maxTokens:32768},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.26,output:.78,cacheRead:.052000000000000005,cacheWrite:.325},contextWindow:1e6,maxTokens:32768},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen: Qwen Plus 0728",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.26,output:.78,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:32768},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen: Qwen Plus 0728 (thinking)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.26,output:.78,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:32768},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen: Qwen3 14B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.12,output:.24,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen: Qwen3 235B A22B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.45499999999999996,output:1.8199999999999998,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen: Qwen3 235B A22B Instruct 2507",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.09,output:.55,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen: Qwen3 235B A22B Thinking 2507",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.22999999999999998,output:2.3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:4096},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen: Qwen3 30B A3B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.13,output:.52,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen: Qwen3 30B A3B Instruct 2507",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.04815,output:.19305,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32e3},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen: Qwen3 30B A3B Thinking 2507",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.19999999999999998,output:2.4,cacheRead:0,cacheWrite:0},contextWindow:81920,maxTokens:32768},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen: Qwen3 32B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.08,output:.28,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen: Qwen3 8B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.117,output:.45499999999999996,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen: Qwen3 Coder 480B A35B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.3,output:1,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:262144,maxTokens:65536},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen: Qwen3 Coder 30B A3B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.07,output:.28,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen: Qwen3 Coder Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.195,output:.975,cacheRead:.039,cacheWrite:.24375},contextWindow:1e6,maxTokens:65536},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen: Qwen3 Coder Next",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.12,output:.7999999999999999,cacheRead:.07,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen: Qwen3 Coder Plus",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.65,output:3.25,cacheRead:.13,cacheWrite:.8125},contextWindow:1e6,maxTokens:65536},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen: Qwen3 Max",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.78,output:3.9,cacheRead:.156,cacheWrite:.975},contextWindow:262144,maxTokens:65536},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen: Qwen3 Max Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.78,output:3.9,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen: Qwen3 Next 80B A3B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.09,output:1.1,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen: Qwen3 Next 80B A3B Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.15,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen: Qwen3 VL 235B A22B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.21,output:1.9,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen: Qwen3 VL 235B A22B Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:4,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen: Qwen3 VL 30B A3B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.13,output:.52,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen: Qwen3 VL 30B A3B Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:2.4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen: Qwen3 VL 32B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.10400000000000001,output:.41600000000000004,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen: Qwen3 VL 8B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.117,output:.45499999999999996,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen: Qwen3 VL 8B Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.18,output:2.0999999999999996,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen: Qwen3.5-122B-A10B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.26,output:2.08,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen: Qwen3.5-27B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.195,output:1.56,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen: Qwen3.5-35B-A3B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.25,cacheRead:.25,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen: Qwen3.5 397B A17B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.39,output:2.34,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen: Qwen3.5-9B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.15,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.065,output:.26,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen: Qwen3.5 Plus 2026-02-15",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.26,output:1.56,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen: Qwen3.5 Plus 2026-04-20",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.7999999999999998,cacheRead:0,cacheWrite:.375},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen: Qwen3.6 27B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:2,cacheRead:.03,cacheWrite:0},contextWindow:262144,maxTokens:65536},"qwen/qwen3.6-35b-a3b":{id:"qwen/qwen3.6-35b-a3b",name:"Qwen: Qwen3.6 35B A3B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.14,output:1,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen: Qwen3.6 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.1875,output:1.125,cacheRead:0,cacheWrite:.234375},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen: Qwen3.6 Max Preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.0270000000000001,output:6.162,cacheRead:0,cacheWrite:1.28375},contextWindow:262144,maxTokens:65536},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen: Qwen3.6 Plus",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.325,output:1.95,cacheRead:0,cacheWrite:.40625},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.7-flash":{id:"qwen/qwen3.7-flash",name:"Qwen: Qwen3.7 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.03,output:.13,cacheRead:.006,cacheWrite:.038000000000000006},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.7-max":{id:"qwen/qwen3.7-max",name:"Qwen: Qwen3.7 Max",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.475,output:4.425,cacheRead:.295,cacheWrite:1.84375},contextWindow:1e6,maxTokens:131072},"qwen/qwen3.7-plus":{id:"qwen/qwen3.7-plus",name:"Qwen: Qwen3.7 Plus",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.32,output:1.28,cacheRead:.064,cacheWrite:.39999999999999997},contextWindow:1e6,maxTokens:131072},"qwen/qwen3.8-2.4t-a95b":{id:"qwen/qwen3.8-2.4t-a95b",name:"Qwen: Qwen3.8 2.4T A95B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:2,output:6,cacheRead:.25,cacheWrite:0},contextWindow:1048576,maxTokens:262144},"qwen/qwen3.8-27b":{id:"qwen/qwen3.8-27b",name:"Qwen: Qwen3.8 27B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.44999999999999996,output:3.1999999999999997,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"qwen/qwen3.8-max":{id:"qwen/qwen3.8-max",name:"Qwen: Qwen3.8 Max",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.25,cacheWrite:2.5},contextWindow:1e6,maxTokens:131072},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.09999999999999999,cacheRead:0,cacheWrite:0},contextWindow:16384,maxTokens:16384},"relace/relace-search":{id:"relace/relace-search",name:"Relace: Relace Search",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:1,output:3,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:128e3},"sakana/fugu-ultra":{id:"sakana/fugu-ultra",name:"Sakana: Fugu Ultra",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"sakana/sakana-namazu":{id:"sakana/sakana-namazu",name:"Sakana: Sakana Namazu",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.15,cacheWrite:0},contextWindow:262144,maxTokens:65536},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Sao10K: Llama 3.1 Euryale 70B v2.2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.85,output:.85,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun: Step 3.5 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.09999999999999999,output:.3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"StepFun: Step 3.7 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.15,cacheRead:.04,cacheWrite:0},contextWindow:262144,maxTokens:256e3},"tencent/hy3":{id:"tencent/hy3",name:"Tencent: Hy3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.13199999999999998,output:.5279999999999999,cacheRead:.032999999999999995,cacheWrite:0},contextWindow:262144,maxTokens:128e3},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Tencent: Hy3 preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.18,output:.6,cacheRead:.06,cacheWrite:0},contextWindow:262144,maxTokens:4096},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"TheDrummer: UnslopNemo 12B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.39999999999999997,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:1024e3,maxTokens:1024e3},"thinkingmachines/inkling":{id:"thinkingmachines/inkling",name:"Thinking Machines: Inkling",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4.05,cacheRead:.16,cacheWrite:0},contextWindow:1048576,maxTokens:262144},"thinkingmachines/inkling-small":{id:"thinkingmachines/inkling-small",name:"Thinking Machines: Inkling Small",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.44999999999999996,output:1.2,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:524288,maxTokens:262144},"thinkingmachines/inkling:batch":{id:"thinkingmachines/inkling:batch",name:"Thinking Machines: Inkling (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:4.05,cacheRead:.16999999999999998,cacheWrite:0},contextWindow:524288,maxTokens:4096},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Upstage: Solar Pro 3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.15,output:.6,cacheRead:.015,cacheWrite:0},contextWindow:131072,maxTokens:131072},"upstage/solar-pro4":{id:"upstage/solar-pro4",name:"Upstage: Solar Pro 4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.03,output:.12,cacheRead:.006,cacheWrite:0},contextWindow:524288,maxTokens:131072},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"SpaceXAI: Grok 4.20",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:4096},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"SpaceXAI: Grok 4.3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:1e6,maxTokens:4096},"x-ai/grok-4.5":{id:"x-ai/grok-4.5",name:"SpaceXAI: Grok 4.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.3,cacheWrite:0},contextWindow:5e5,maxTokens:4096},"x-ai/grok-4.6":{id:"x-ai/grok-4.6",name:"SpaceXAI: Grok 4.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:4096},"x-ai/grok-build-0.1":{id:"x-ai/grok-build-0.1",name:"SpaceXAI: Grok Build 0.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:2,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:256e3,maxTokens:4096},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.14,output:.28,cacheRead:.0028,cacheWrite:0},contextWindow:105e4,maxTokens:131072},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo-V2.5-Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.435,output:.87,cacheRead:.0036,cacheWrite:0},contextWindow:105e4,maxTokens:131072},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"Z.ai: GLM 4.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:.11,cacheWrite:0},contextWindow:131072,maxTokens:98304},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"Z.ai: GLM 4.5 Air",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.13,output:.85,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:131072,maxTokens:98304},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"Z.ai: GLM 4.5V",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.6,output:1.7999999999999998,cacheRead:.11,cacheWrite:0},contextWindow:65536,maxTokens:16384},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"Z.ai: GLM 4.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.5,output:2,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:204800,maxTokens:131072},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"Z.ai: GLM 4.6V",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:.8999999999999999,cacheRead:.055,cacheWrite:0},contextWindow:131072,maxTokens:32768},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"Z.ai: GLM 4.7",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.39999999999999997,output:1.75,cacheRead:.08,cacheWrite:0},contextWindow:204800,maxTokens:131072},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"Z.ai: GLM 4.7 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.06,output:.39999999999999997,cacheRead:.01,cacheWrite:0},contextWindow:202752,maxTokens:16384},"z-ai/glm-5":{id:"z-ai/glm-5",name:"Z.ai: GLM 5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.6,output:1.9,cacheRead:.119,cacheWrite:0},contextWindow:204800,maxTokens:128e3},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"Z.ai: GLM 5 Turbo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.2,output:4,cacheRead:.24,cacheWrite:0},contextWindow:202752,maxTokens:131072},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"Z.ai: GLM 5.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.966,output:3.036,cacheRead:.1794,cacheWrite:0},contextWindow:204800,maxTokens:128e3},"z-ai/glm-5.2":{id:"z-ai/glm-5.2",name:"Z.ai: GLM 5.2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.966,output:3.036,cacheRead:.1932,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"z-ai/glm-5.2:batch":{id:"z-ai/glm-5.2:batch",name:"Z.ai: GLM 5.2 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:512e3,maxTokens:4096},"z-ai/glm-5.2:free":{id:"z-ai/glm-5.2:free",name:"Z.ai: GLM 5.2 (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"z-ai/glm-5.3":{id:"z-ai/glm-5.3",name:"Z.ai: GLM 5.3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"Z.ai: GLM 5V Turbo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.2,output:4,cacheRead:.24,cacheWrite:0},contextWindow:202752,maxTokens:131072},"~anthropic/claude-fable-latest":{id:"~anthropic/claude-fable-latest",name:"Anthropic: Claude Fable Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic Claude Haiku Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.09999999999999999,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Anthropic: Claude Opus Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic Claude Sonnet Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"~deepseek/deepseek-v4-flash-latest":{id:"~deepseek/deepseek-v4-flash-latest",name:"DeepSeek V4 Flash Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.07,output:.14,cacheRead:.014,cacheWrite:0},contextWindow:1310720,maxTokens:1048576},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google Gemini Flash Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.375,output:1.875,cacheRead:.0375,cacheWrite:.0208333333333333},contextWindow:1048576,maxTokens:65536},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google Gemini Pro Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:.375},contextWindow:1048576,maxTokens:65536},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI Kimi Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.6,output:13,cacheRead:.29,cacheWrite:0},contextWindow:1048576,maxTokens:974842},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI GPT Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI GPT Mini Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"~x-ai/grok-latest":{id:"~x-ai/grok-latest",name:"xAI: Grok Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:4096},"~z-ai/glm-latest":{id:"~z-ai/glm-latest",name:"Z.ai: GLM Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1048576,maxTokens:131072}},"vercel-ai-gateway":{"alibaba/qwen-3-14b":{id:"alibaba/qwen-3-14b",name:"Qwen3-14B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.12,output:.24,cacheRead:0,cacheWrite:0},contextWindow:40960,maxTokens:16384},"alibaba/qwen-3-235b":{id:"alibaba/qwen-3-235b",name:"Qwen3 235B A22B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.22,output:.88,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"alibaba/qwen-3-30b":{id:"alibaba/qwen-3-30b",name:"Qwen3-30B-A3B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.12,output:.5,cacheRead:0,cacheWrite:0},contextWindow:40960,maxTokens:16384},"alibaba/qwen-3-32b":{id:"alibaba/qwen-3-32b",name:"Qwen 3 32B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.16,output:.64,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"alibaba/qwen-3.6-max-preview":{id:"alibaba/qwen-3.6-max-preview",name:"Qwen 3.6 Max Preview",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.3,output:7.8,cacheRead:.26,cacheWrite:1.625},contextWindow:24e4,maxTokens:64e3},"alibaba/qwen3-235b-a22b-thinking":{id:"alibaba/qwen3-235b-a22b-thinking",name:"Qwen3 VL 235B A22B Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:4,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"alibaba/qwen3-coder":{id:"alibaba/qwen3-coder",name:"Qwen3 Coder 480B A35B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:1.5,output:7.5,cacheRead:.3,cacheWrite:0},contextWindow:262144,maxTokens:65536},"alibaba/qwen3-coder-30b-a3b":{id:"alibaba/qwen3-coder-30b-a3b",name:"Qwen 3 Coder 30B A3B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:8192},"alibaba/qwen3-coder-next":{id:"alibaba/qwen3-coder-next",name:"Qwen3 Coder Next",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.5,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"alibaba/qwen3-coder-plus":{id:"alibaba/qwen3-coder-plus",name:"Qwen3 Coder Plus",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:1,output:5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"alibaba/qwen3-max":{id:"alibaba/qwen3-max",name:"Qwen3 Max",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:1.2,output:6,cacheRead:.24,cacheWrite:0},contextWindow:262144,maxTokens:32768},"alibaba/qwen3-max-preview":{id:"alibaba/qwen3-max-preview",name:"Qwen3 Max Preview",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:1.2,output:6,cacheRead:.24,cacheWrite:0},contextWindow:262144,maxTokens:32768},"alibaba/qwen3-max-thinking":{id:"alibaba/qwen3-max-thinking",name:"Qwen 3 Max Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.2,output:6,cacheRead:.24,cacheWrite:0},contextWindow:256e3,maxTokens:65536},"alibaba/qwen3-next-80b-a3b-instruct":{id:"alibaba/qwen3-next-80b-a3b-instruct",name:"Qwen3 Next 80B A3B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.15,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"alibaba/qwen3-next-80b-a3b-thinking":{id:"alibaba/qwen3-next-80b-a3b-thinking",name:"Qwen3 Next 80B A3B Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.15,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"alibaba/qwen3-vl-235b-a22b-instruct":{id:"alibaba/qwen3-vl-235b-a22b-instruct",name:"Qwen3 VL 235B A22B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:1.5999999999999999,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:129024},"alibaba/qwen3-vl-instruct":{id:"alibaba/qwen3-vl-instruct",name:"Qwen3 VL 235B A22B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:1.5999999999999999,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:129024},"alibaba/qwen3-vl-thinking":{id:"alibaba/qwen3-vl-thinking",name:"Qwen3 VL 235B A22B Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:4,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"alibaba/qwen3.5-flash":{id:"alibaba/qwen3.5-flash",name:"Qwen 3.5 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:.001,cacheWrite:.125},contextWindow:1e6,maxTokens:64e3},"alibaba/qwen3.5-plus":{id:"alibaba/qwen3.5-plus",name:"Qwen 3.5 Plus",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:2.4,cacheRead:.04,cacheWrite:.5},contextWindow:1e6,maxTokens:64e3},"alibaba/qwen3.6-27b":{id:"alibaba/qwen3.6-27b",name:"Qwen 3.6 27B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.6,output:3.5999999999999996,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"alibaba/qwen3.6-plus":{id:"alibaba/qwen3.6-plus",name:"Qwen 3.6 Plus",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.09999999999999999,cacheWrite:.625},contextWindow:1e6,maxTokens:64e3},"alibaba/qwen3.7-flash":{id:"alibaba/qwen3.7-flash",name:"Qwen 3.7 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.03,output:.13,cacheRead:.006,cacheWrite:.038000000000000006},contextWindow:991e3,maxTokens:64e3},"alibaba/qwen3.7-max":{id:"alibaba/qwen3.7-max",name:"Qwen 3.7 Max",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:2.5,output:7.5,cacheRead:.5,cacheWrite:3.125},contextWindow:991e3,maxTokens:64e3},"alibaba/qwen3.7-plus":{id:"alibaba/qwen3.7-plus",name:"Qwen 3.7 Plus",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:1.5999999999999999,cacheRead:.08,cacheWrite:.5},contextWindow:1e6,maxTokens:64e3},"alibaba/qwen3.8-2.4t-a95b":{id:"alibaba/qwen3.8-2.4t-a95b",name:"Qwen3.8 2.4T A95B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:2,output:6,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:262144,maxTokens:131072},"alibaba/qwen3.8-27b":{id:"alibaba/qwen3.8-27b",name:"Qwen3.8 27B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.55,output:3.3000000000000003,cacheRead:.11,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"alibaba/qwen3.8-max":{id:"alibaba/qwen3.8-max",name:"Qwen 3.8 Max",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.25,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"amazon/nova-2-lite":{id:"amazon/nova-2-lite",name:"Nova 2 Lite",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.075,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"amazon/nova-lite":{id:"amazon/nova-lite",name:"Nova Lite",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.06,output:.24,cacheRead:0,cacheWrite:0},contextWindow:3e5,maxTokens:8192},"amazon/nova-micro":{id:"amazon/nova-micro",name:"Nova Micro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.035,output:.14,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"amazon/nova-pro":{id:"amazon/nova-pro",name:"Nova Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.7999999999999999,output:3.1999999999999997,cacheRead:0,cacheWrite:0},contextWindow:3e5,maxTokens:8192},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Claude 3 Haiku",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.25,output:1.25,cacheRead:.03,cacheWrite:.3},contextWindow:2e5,maxTokens:4096},"anthropic/claude-fable-5":{id:"anthropic/claude-fable-5",name:"Claude Fable 5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.09999999999999999,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},contextWindow:2e5,maxTokens:8192},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.8-fast":{id:"anthropic/claude-opus-4.8-fast",name:"Claude Opus 4.8 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-5":{id:"anthropic/claude-opus-5",name:"Claude Opus 5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-5-fast":{id:"anthropic/claude-opus-5-fast",name:"Claude Opus 5 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:8192},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-5":{id:"anthropic/claude-sonnet-5",name:"Claude Sonnet 5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.25,output:.8999999999999999,cacheRead:0,cacheWrite:0},contextWindow:262100,maxTokens:8e4},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Trinity Mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.045,output:.15,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"bytedance/seed-1.6":{id:"bytedance/seed-1.6",name:"Seed 1.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"bytedance/seed-1.8":{id:"bytedance/seed-1.8",name:"Bytedance Seed 1.8",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:256e3,maxTokens:64e3},"cohere/command-a":{id:"cohere/command-a",name:"Command A",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:2.5,output:10,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:8e3},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"deepseek/deepseek-v3":{id:"deepseek/deepseek-v3",name:"DeepSeek V3 0324",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.27,output:1.12,cacheRead:.135,cacheWrite:0},contextWindow:163840,maxTokens:163840},"deepseek/deepseek-v3.1":{id:"deepseek/deepseek-v3.1",name:"DeepSeek V3.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.25,output:.95,cacheRead:.13,cacheWrite:0},contextWindow:163840,maxTokens:128e3},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.27,output:1,cacheRead:.135,cacheWrite:0},contextWindow:131072,maxTokens:65536},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek V3.2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.28,output:.42,cacheRead:.028,cacheWrite:0},contextWindow:128e3,maxTokens:8e3},"deepseek/deepseek-v3.2-thinking":{id:"deepseek/deepseek-v3.2-thinking",name:"DeepSeek V3.2 Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.62,output:1.85,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8e3},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.13,output:.26,cacheRead:.028,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"deepseek/deepseek-v4-flash-0731":{id:"deepseek/deepseek-v4-flash-0731",name:"DeepSeek V4 Flash 0731",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.13,output:.26,cacheRead:.028,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.74,output:3.48,cacheRead:.14,cacheWrite:0},contextWindow:1048600,maxTokens:1048600},"deepseek/deepseek-v4-pro-0813":{id:"deepseek/deepseek-v4-pro-0813",name:"DeepSeek V4 Pro 0813",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.32,output:3.9600000000000004,cacheRead:.13199999999999998,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:.01,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3-flash":{id:"google/gemini-3-flash",name:"Gemini 3 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1e6,maxTokens:65e3},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.03,cacheWrite:0},contextWindow:1e6,maxTokens:65e3},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"google/gemini-3.5-flash-lite":{id:"google/gemini-3.5-flash-lite",name:"Gemini 3.5 Flash Lite",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1e6,maxTokens:65e3},"google/gemini-3.6-flash":{id:"google/gemini-3.6-flash",name:"Gemini 3.6 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.75,output:3.75,cacheRead:.075,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"google/gemini-3.7-flash":{id:"google/gemini-3.7-flash",name:"Gemini 3.7 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.75,output:3.75,cacheRead:.075,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Google Gemma 4 26B A4B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.015,cacheWrite:0},contextWindow:262144,maxTokens:131072},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.14,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.25,output:.75,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"inception/mercury-coder-small":{id:"inception/mercury-coder-small",name:"Mercury Coder Small Beta",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.25,output:1,cacheRead:0,cacheWrite:0},contextWindow:32e3,maxTokens:16384},"inclusionai/ling-3.0-flash":{id:"inclusionai/ling-3.0-flash",name:"Ling 3.0 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.06,output:.18,cacheRead:.012,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"interfaze/interfaze-beta":{id:"interfaze/interfaze-beta",name:"Interfaze Beta",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.5,output:3.5,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:32e3},"kwaipilot/kat-coder-air-v2.5":{id:"kwaipilot/kat-coder-air-v2.5",name:"Kat Coder Air V2.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.03,cacheWrite:0},contextWindow:256e3,maxTokens:8e4},"kwaipilot/kat-coder-pro-v1":{id:"kwaipilot/kat-coder-pro-v1",name:"KAT-Coder-Pro V1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kat Coder Pro V2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"kwaipilot/kat-coder-pro-v2.5":{id:"kwaipilot/kat-coder-pro-v2.5",name:"Kat Coder Pro V2.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.74,output:2.96,cacheRead:.15,cacheWrite:0},contextWindow:256e3,maxTokens:8e4},"meta/llama-3.1-70b":{id:"meta/llama-3.1-70b",name:"Llama 3.1 70B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.72,output:.72,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meta/llama-3.1-8b":{id:"meta/llama-3.1-8b",name:"Llama 3.1 8B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.22,output:.22,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meta/llama-3.3-70b":{id:"meta/llama-3.3-70b",name:"Llama 3.3 70B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.72,output:.72,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meta/llama-4-maverick":{id:"meta/llama-4-maverick",name:"Llama 4 Maverick 17B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.24,output:.9700000000000001,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meta/llama-4-scout":{id:"meta/llama-4-scout",name:"Llama 4 Scout 17B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.16999999999999998,output:.66,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meta/muse-glimmer-30b":{id:"meta/muse-glimmer-30b",name:"Muse Glimmer 30B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.35,output:1.5,cacheRead:.04,cacheWrite:0},contextWindow:131072,maxTokens:131072},"meta/muse-spark-1.1":{id:"meta/muse-spark-1.1",name:"Muse Spark 1.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:4.25,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:1048576},"meta/muse-spark-1.2":{id:"meta/muse-spark-1.2",name:"Muse Spark 1.2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:4.25,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:1048576},"meta/muse-spark-1.2-contributor":{id:"meta/muse-spark-1.2-contributor",name:"Muse Spark 1.2 Contributor",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.19999999999999998,cacheRead:.002,cacheWrite:0},contextWindow:1048576,maxTokens:1048576},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax M2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.03,cacheWrite:.375},contextWindow:205e3,maxTokens:205e3},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax M2.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.03,cacheWrite:.375},contextWindow:204800,maxTokens:131072},"minimax/minimax-m2.1-lightning":{id:"minimax/minimax-m2.1-lightning",name:"MiniMax M2.1 Lightning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:2.4,cacheRead:.03,cacheWrite:.375},contextWindow:204800,maxTokens:131072},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax M2.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.03,cacheWrite:.375},contextWindow:204800,maxTokens:131e3},"minimax/minimax-m2.5-highspeed":{id:"minimax/minimax-m2.5-highspeed",name:"MiniMax M2.5 High Speed",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.4,cacheRead:.03,cacheWrite:.375},contextWindow:204800,maxTokens:131e3},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"Minimax M2.7",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131e3},"minimax/minimax-m2.7-highspeed":{id:"minimax/minimax-m2.7-highspeed",name:"MiniMax M2.7 High Speed",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.4,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131100},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax M3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"mistral/codestral":{id:"mistral/codestral",name:"Mistral Codestral",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.3,output:.8999999999999999,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"mistral/devstral-2":{id:"mistral/devstral-2",name:"Devstral 2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.39999999999999997,output:2,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral/devstral-small-2":{id:"mistral/devstral-small-2",name:"Devstral Small 2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.3,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral/magistral-medium":{id:"mistral/magistral-medium",name:"Magistral Medium 2509",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:5,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:64e3},"mistral/magistral-small":{id:"mistral/magistral-small",name:"Magistral Small 2509",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:64e3},"mistral/ministral-14b":{id:"mistral/ministral-14b",name:"Ministral 14B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.19999999999999998,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral/ministral-3b":{id:"mistral/ministral-3b",name:"Ministral 3B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.09999999999999999,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"mistral/ministral-8b":{id:"mistral/ministral-8b",name:"Ministral 8B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"mistral/mistral-large-3":{id:"mistral/mistral-large-3",name:"Mistral Large 3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral/mistral-medium":{id:"mistral/mistral-medium",name:"Mistral Medium 3.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:2,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:64e3},"mistral/mistral-medium-3.5":{id:"mistral/mistral-medium-3.5",name:"Mistral Medium Latest",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral/mistral-nemo":{id:"mistral/mistral-nemo",name:"Mistral Nemo 12B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"mistral/mistral-small":{id:"mistral/mistral-small",name:"Mistral Small",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.3,cacheRead:0,cacheWrite:0},contextWindow:32e3,maxTokens:4e3},"mistral/pixtral-12b":{id:"mistral/pixtral-12b",name:"Pixtral 12B 2409",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"Kimi K2 Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.5700000000000001,output:2.3,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.47,output:2,cacheRead:.14100000000000001,cacheWrite:0},contextWindow:216144,maxTokens:216144},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.6,output:3,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:262114,maxTokens:262114},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.16,cacheWrite:0},contextWindow:262e3,maxTokens:262e3},"moonshotai/kimi-k2.7-code":{id:"moonshotai/kimi-k2.7-code",name:"Kimi K2.7 Code",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.19,cacheWrite:0},contextWindow:256e3,maxTokens:32768},"moonshotai/kimi-k2.7-code-highspeed":{id:"moonshotai/kimi-k2.7-code-highspeed",name:"Kimi K2.7 Code High Speed",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.9,output:8,cacheRead:.38,cacheWrite:0},contextWindow:262144,maxTokens:32768},"moonshotai/kimi-k3":{id:"moonshotai/kimi-k3",name:"Kimi K3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"moonshotai/kimi-k3-fast":{id:"moonshotai/kimi-k3-fast",name:"Kimi K3 Fast",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:4.5,output:22.5,cacheRead:.44999999999999996,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"Nemotron 3 Nano 30B A3B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.049999999999999996,output:.24,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA Nemotron 3 Super 120B A12B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.15,output:.65,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.4,cacheRead:.12,cacheWrite:0},contextWindow:1e6,maxTokens:65e3},"nvidia/nemotron-3.5-lightning":{id:"nvidia/nemotron-3.5-lightning",name:"Nemotron 3.5 Lightning 30B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.049999999999999996,output:.19999999999999998,cacheRead:.01,cacheWrite:0},contextWindow:262144,maxTokens:131072},"nvidia/nemotron-nano-12b-v2-vl":{id:"nvidia/nemotron-nano-12b-v2-vl",name:"Nvidia Nemotron Nano 12B V2 VL",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:.6,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"Nvidia Nemotron Nano 9B V2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.06,output:.22999999999999998,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"GPT-3.5 Turbo",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:16385,maxTokens:4096},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:10,output:30,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-fast":{id:"openai/gpt-4.1-fast",name:"GPT-4.1 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:3.5,output:14,cacheRead:.875,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:1.5999999999999999,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-mini-fast":{id:"openai/gpt-4.1-mini-fast",name:"GPT-4.1 mini (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.7,output:2.8,cacheRead:.175,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-nano-fast":{id:"openai/gpt-4.1-nano-fast",name:"GPT-4.1 nano (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.7999999999999999,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-fast":{id:"openai/gpt-4o-fast",name:"GPT-4o (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:4.25,output:17,cacheRead:2.125,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-mini-fast":{id:"openai/gpt-4o-mini-fast",name:"GPT-4o mini (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.25,output:1,cacheRead:.125,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.13,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-fast":{id:"openai/gpt-5-fast",name:"GPT-5 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2.5,output:20,cacheRead:.25,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-mini-fast":{id:"openai/gpt-5-mini-fast",name:"GPT-5 mini (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.44999999999999996,output:3.5999999999999996,cacheRead:.045,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 nano",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.049999999999999996,output:.39999999999999997,cacheRead:.005,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:15,output:120,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:272e3},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.13,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT 5.1 Codex Max",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT 5.1 Codex Mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.03,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-thinking":{id:"openai/gpt-5.1-thinking",name:"GPT 5.1 Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-thinking-fast":{id:"openai/gpt-5.1-thinking-fast",name:"GPT 5.1 Thinking (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2.5,output:20,cacheRead:.25,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT 5.2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT 5.2 Codex",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-fast":{id:"openai/gpt-5.2-fast",name:"GPT 5.2 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3.5,output:28,cacheRead:.35,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT 5.2 ",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:21,output:168,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT 5.3 Codex",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.3-codex-fast":{id:"openai/gpt-5.3-codex-fast",name:"GPT 5.3 Codex (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3.5,output:28,cacheRead:.35,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT 5.4",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.4-fast":{id:"openai/gpt-5.4-fast",name:"GPT 5.4 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT 5.4 Mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-mini-fast":{id:"openai/gpt-5.4-mini-fast",name:"GPT 5.4 Mini (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT 5.4 Nano",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT 5.4 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT 5.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"openai/gpt-5.5-fast":{id:"openai/gpt-5.5-fast",name:"GPT 5.5 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:12.5,output:75,cacheRead:1.25,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT 5.5 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"openai/gpt-5.6-luna":{id:"openai/gpt-5.6-luna",name:"GPT 5.6 Luna",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-luna-fast":{id:"openai/gpt-5.6-luna-fast",name:"GPT 5.6 Luna (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:2.4,cacheRead:.04,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol":{id:"openai/gpt-5.6-sol",name:"GPT 5.6 Sol",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol-fast":{id:"openai/gpt-5.6-sol-fast",name:"GPT 5.6 Sol (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra":{id:"openai/gpt-5.6-terra",name:"GPT 5.6 Terra",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra-fast":{id:"openai/gpt-5.6-terra-fast",name:"GPT 5.6 Terra (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:4,output:24,cacheRead:.39999999999999997,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.09999999999999999,output:.5,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.049999999999999996,output:.19999999999999998,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.075,output:.3,cacheRead:.037,cacheWrite:0},contextWindow:131072,maxTokens:65536},"openai/o1":{id:"openai/o1",name:"o1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:15,output:60,cacheRead:7.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3":{id:"openai/o3",name:"o3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:10,output:40,cacheRead:2.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-fast":{id:"openai/o3-fast",name:"o3 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3.5,output:14,cacheRead:.875,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.1,output:4.4,cacheRead:.55,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-pro":{id:"openai/o3-pro",name:"o3 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:20,output:80,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini-fast":{id:"openai/o4-mini-fast",name:"o4-mini (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"poolside/laguna-s-2.1":{id:"poolside/laguna-s-2.1",name:"Laguna S 2.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.09999999999999999,output:.19999999999999998,cacheRead:.01,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"poolside/laguna-s-2.1-free":{id:"poolside/laguna-s-2.1-free",name:"Laguna S 2.1 Free",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:32768},"sakana/fugu-ultra":{id:"sakana/fugu-ultra",name:"Fugu Ultra",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"sakana/namazu":{id:"sakana/namazu",name:"Sakana Namazu",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.15,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun 3.5 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.09,output:.3,cacheRead:.02,cacheWrite:0},contextWindow:262114,maxTokens:262114},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"Step 3.7 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.15,cacheRead:.04,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"tencent/hy3":{id:"tencent/hy3",name:"Hy3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.14,output:.58,cacheRead:.035,cacheWrite:0},contextWindow:262144,maxTokens:262144},"thinkingmachines/inkling":{id:"thinkingmachines/inkling",name:"Inkling",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1,output:4.05,cacheRead:.16999999999999998,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"thinkingmachines/inkling-small":{id:"thinkingmachines/inkling-small",name:"Inkling Small",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.5,output:1.2,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"xai/grok-4.1-fast-non-reasoning":{id:"xai/grok-4.1-fast-non-reasoning",name:"Grok 4.1 Fast Non-Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.5,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"xai/grok-4.1-fast-reasoning":{id:"xai/grok-4.1-fast-reasoning",name:"Grok 4.1 Fast Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:.5,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"xai/grok-4.20-multi-agent":{id:"xai/grok-4.20-multi-agent",name:"Grok 4.20 Multi-Agent",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.20-multi-agent-beta":{id:"xai/grok-4.20-multi-agent-beta",name:"Grok 4.20 Multi Agent Beta",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.20-non-reasoning":{id:"xai/grok-4.20-non-reasoning",name:"Grok 4.20 Non-Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.20-non-reasoning-beta":{id:"xai/grok-4.20-non-reasoning-beta",name:"Grok 4.20 Beta Non-Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.20-reasoning":{id:"xai/grok-4.20-reasoning",name:"Grok 4.20 Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.20-reasoning-beta":{id:"xai/grok-4.20-reasoning-beta",name:"Grok 4.20 Beta Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.3":{id:"xai/grok-4.3",name:"Grok 4.3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"xai/grok-4.5":{id:"xai/grok-4.5",name:"Grok 4.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.3,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"xai/grok-4.6":{id:"xai/grok-4.6",name:"Grok 4.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"xai/grok-build-0.1":{id:"xai/grok-build-0.1",name:"Grok Build 0.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1,output:2,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo M2.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.14,output:.28,cacheRead:.0028,cacheWrite:0},contextWindow:105e4,maxTokens:131100},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo V2.5 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.435,output:.87,cacheRead:.0036,cacheWrite:0},contextWindow:105e4,maxTokens:131e3},"zai/glm-4.5":{id:"zai/glm-4.5",name:"GLM 4.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:.11,cacheWrite:0},contextWindow:128e3,maxTokens:96e3},"zai/glm-4.5-air":{id:"zai/glm-4.5-air",name:"GLM 4.5 Air",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.19999999999999998,output:1.1,cacheRead:.03,cacheWrite:0},contextWindow:128e3,maxTokens:96e3},"zai/glm-4.5v":{id:"zai/glm-4.5v",name:"GLM 4.5V",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.6,output:1.7999999999999998,cacheRead:.11,cacheWrite:0},contextWindow:66e3,maxTokens:16e3},"zai/glm-4.6":{id:"zai/glm-4.6",name:"GLM 4.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:.11,cacheWrite:0},contextWindow:2e5,maxTokens:96e3},"zai/glm-4.7":{id:"zai/glm-4.7",name:"GLM 4.7",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:.12,cacheWrite:0},contextWindow:2e5,maxTokens:12e4},"zai/glm-4.7-flash":{id:"zai/glm-4.7-flash",name:"GLM 4.7 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.07,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:131e3},"zai/glm-4.7-flashx":{id:"zai/glm-4.7-flashx",name:"GLM 4.7 FlashX",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.06,output:.39999999999999997,cacheRead:.01,cacheWrite:0},contextWindow:2e5,maxTokens:128e3},"zai/glm-5":{id:"zai/glm-5",name:"GLM 5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1,output:3.1999999999999997,cacheRead:0,cacheWrite:0},contextWindow:202800,maxTokens:131100},"zai/glm-5-turbo":{id:"zai/glm-5-turbo",name:"GLM 5 Turbo",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.2,output:4,cacheRead:.24,cacheWrite:0},contextWindow:202800,maxTokens:131100},"zai/glm-5.1":{id:"zai/glm-5.1",name:"GLM 5.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:202800,maxTokens:64e3},"zai/glm-5.2":{id:"zai/glm-5.2",name:"GLM 5.2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.7999999999999999,output:2.5500000000000003,cacheRead:.16,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"zai/glm-5.2-fast":{id:"zai/glm-5.2-fast",name:"GLM 5.2 Fast",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:2.0999999999999996,output:6.6000000000000005,cacheRead:.21,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"zai/glm-5.3":{id:"zai/glm-5.3",name:"GLM 5.3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1e6,maxTokens:12800},"zai/glm-5v-turbo":{id:"zai/glm-5v-turbo",name:"GLM 5V Turbo",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.2,output:4,cacheRead:.24,cacheWrite:0},contextWindow:2e5,maxTokens:128e3}},xai:{"grok-4.20-0309-non-reasoning":{id:"grok-4.20-0309-non-reasoning",name:"Grok 4.20 (Non-Reasoning)",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!1,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:3e4},"grok-4.20-0309-reasoning":{id:"grok-4.20-0309-reasoning",name:"Grok 4.20 (Reasoning)",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:3e4},"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:3e4},"grok-4.5":{id:"grok-4.5",name:"Grok 4.5",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.3,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"grok-4.6":{id:"grok-4.6",name:"Grok 4.6",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"grok-build-0.1":{id:"grok-build-0.1",name:"Grok Build 0.1",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:2,cacheRead:.2,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"grok-code-fast-1":{id:"grok-code-fast-1",name:"Grok Code Fast 1",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!1,input:["text"],cost:{input:.2,output:1.5,cacheRead:.02,cacheWrite:0},contextWindow:32768,maxTokens:8192}},zai:{"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",api:"openai-completions",provider:"zai",baseUrl:"https://api.z.ai/api/coding/paas/v4",compat:{supportsDeveloperRole:!1,thinkingFormat:"zai",zaiToolStream:!0},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",api:"openai-completions",provider:"zai",baseUrl:"https://api.z.ai/api/coding/paas/v4",compat:{supportsDeveloperRole:!1,thinkingFormat:"zai",zaiToolStream:!0},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:131072},"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",api:"openai-completions",provider:"zai",baseUrl:"https://api.z.ai/api/coding/paas/v4",compat:{supportsDeveloperRole:!1,thinkingFormat:"zai",zaiToolStream:!0},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"glm-5.2-highspeed":{id:"glm-5.2-highspeed",name:"GLM-5.2 Highspeed",api:"openai-completions",provider:"zai",baseUrl:"https://api.z.ai/api/coding/paas/v4",compat:{supportsDeveloperRole:!1,thinkingFormat:"zai",zaiToolStream:!0},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"glm-5.3":{id:"glm-5.3",name:"GLM-5.3",api:"openai-completions",provider:"zai",baseUrl:"https://api.z.ai/api/coding/paas/v4",compat:{supportsDeveloperRole:!1,thinkingFormat:"zai",zaiToolStream:!0},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:131072}}}});function lAs(t,e){return zXe.get(t)?.get(e)}function Ave(){return Array.from(zXe.keys())}function O6(t){let e=zXe.get(t);return e?Array.from(e.values()):[]}function Wb(t,e){return e.cost.input=t.cost.input/1e6*e.input,e.cost.output=t.cost.output/1e6*e.output,e.cost.cacheRead=t.cost.cacheRead/1e6*e.cacheRead,e.cost.cacheWrite=t.cost.cacheWrite/1e6*e.cacheWrite,e.cost.total=e.cost.input+e.cost.output+e.cost.cacheRead+e.cost.cacheWrite,e.cost}function XE(t){return!!(t.id.includes("gpt-5.2")||t.id.includes("gpt-5.3")||t.id.includes("gpt-5.4")||t.id.includes("opus-4-6")||t.id.includes("opus-4.6"))}function jd(t,e){return!t||!e?!1:t.id===e.id&&t.provider===e.provider}var zXe,z_=I(()=>{"use strict";wer();zXe=new Map;for(let[t,e]of Object.entries(Ber)){let n=new Map;for(let[r,i]of Object.entries(e))n.set(r,i);zXe.set(t,n)}});function GZ(t){return t.systemPromptTokens+t.chatHistoryTokens+t.currentMessageTokens+t.toolDefinitionsTokens+t.toolResultTokens+t.assistantResponseTokens}function cB(t){if(!t||typeof t!="object")return!1;let e=t,n=[e.systemPromptTokens,e.chatHistoryTokens,e.currentMessageTokens,e.toolDefinitionsTokens,e.toolResultTokens,e.assistantResponseTokens];return!Number.isSafeInteger(e.maxContextTokens)||e.maxContextTokens<=0||n.some(r=>!Number.isSafeInteger(r)||r<0)?!1:Number.isSafeInteger(GZ(e))}function KA(t){if(t==="stop"||t==="length"||t==="toolUse")return t;throw new Error(`Unexpected stop reason for done event: ${t}`)}var H_=I(()=>{"use strict"});function xGt(){return new Fp}var UZ,Fp,mS=I(()=>{"use strict";UZ=class{constructor(e,n){this.isComplete=e;this.extractResult=n;this.finalResultPromise=new Promise(r=>{this.resolveFinalResult=r})}isComplete;extractResult;queue=[];waiting=[];done=!1;finalResultPromise;resolveFinalResult;push(e){if(this.done)return;this.isComplete(e)&&(this.done=!0,this.resolveFinalResult(this.extractResult(e)));let n=this.waiting.shift();n?n({value:e,done:!1}):this.queue.push(e)}end(e){for(this.done=!0,e!==void 0&&this.resolveFinalResult(e);this.waiting.length>0;)this.waiting.shift()({value:void 0,done:!0})}async*[Symbol.asyncIterator](){for(;;)if(this.queue.length>0)yield this.queue.shift();else{if(this.done)return;{let e=await new Promise(n=>this.waiting.push(n));if(e.done)return;yield e.value}}}result(){return this.finalResultPromise}},Fp=class extends UZ{constructor(){super(e=>e.type==="done"||e.type==="error",e=>{if(e.type==="done")return e.message;if(e.type==="error")return e.error;throw new Error("Unexpected event type for final result")})}}});function Fer(t){return{type:"text",text:t}}function pAs(t){return{type:"thinking",thinking:t}}function AAs(t,e,n={}){return{type:"toolCall",id:n.id??kGt("tool"),name:t,arguments:e}}function gAs(t){return typeof t=="string"?[Fer(t)]:Array.isArray(t)?t:[t]}function mAs(t,e={}){return{role:"assistant",content:gAs(t),api:ker,provider:Qer,model:Der,usage:QGt,stopReason:e.stopReason??"stop",errorMessage:e.errorMessage,responseId:e.responseId,requestId:e.requestId,timestamp:e.timestamp??Date.now()}}function mve(t){return Math.ceil(t.length/4)}function kGt(t){return`${t}:${Date.now()}:${Math.random().toString(36).slice(2)}`}function Ver(t){return typeof t=="string"?t:t.map(e=>e.type==="text"?e.text:`[image:${e.mimeType}:${e.data.length}]`).join(`
|
|
5
|
+
var rls=Object.create;var L3e=Object.defineProperty;var ils=Object.getOwnPropertyDescriptor;var ols=Object.getOwnPropertyNames;var sls=Object.getPrototypeOf,als=Object.prototype.hasOwnProperty;var Bt=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var I=(t,e,n)=>()=>{if(n)throw n[0];try{return t&&(e=t(t=0)),e}catch(r){throw n=[r],r}};var pe=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(n){throw e=0,n}},qo=(t,e)=>{for(var n in e)L3e(t,n,{get:e[n],enumerable:!0})},x$n=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of ols(e))!als.call(t,i)&&i!==n&&L3e(t,i,{get:()=>e[i],enumerable:!(r=ils(e,i))||r.enumerable});return t};var Kr=(t,e,n)=>(n=t!=null?rls(sls(t)):{},x$n(e||!t||!t.__esModule?L3e(n,"default",{value:t,enumerable:!0}):n,t)),jr=t=>x$n(L3e({},"__esModule",{value:!0}),t);var py={};qo(py,{HasPropertyKey:()=>P3e,IsArray:()=>mf,IsAsyncIterator:()=>YVt,IsBigInt:()=>aRe,IsBoolean:()=>BF,IsDate:()=>C6,IsFunction:()=>JVt,IsIterator:()=>zVt,IsNull:()=>HVt,IsNumber:()=>L_,IsObject:()=>Kd,IsRegExp:()=>lRe,IsString:()=>$p,IsSymbol:()=>KVt,IsUint8Array:()=>HO,IsUndefined:()=>hf});function P3e(t,e){return e in t}function YVt(t){return Kd(t)&&!mf(t)&&!HO(t)&&Symbol.asyncIterator in t}function mf(t){return Array.isArray(t)}function aRe(t){return typeof t=="bigint"}function BF(t){return typeof t=="boolean"}function C6(t){return t instanceof globalThis.Date}function JVt(t){return typeof t=="function"}function zVt(t){return Kd(t)&&!mf(t)&&!HO(t)&&Symbol.iterator in t}function HVt(t){return t===null}function L_(t){return typeof t=="number"}function Kd(t){return typeof t=="object"&&t!==null}function lRe(t){return t instanceof globalThis.RegExp}function $p(t){return typeof t=="string"}function KVt(t){return typeof t=="symbol"}function HO(t){return t instanceof globalThis.Uint8Array}function hf(t){return t===void 0}var iS=I(()=>{});function lls(t){return t.map(e=>W3e(e))}function cls(t){return new Date(t.getTime())}function uls(t){return new Uint8Array(t)}function dls(t){return new RegExp(t.source,t.flags)}function pls(t){let e={};for(let n of Object.getOwnPropertyNames(t))e[n]=W3e(t[n]);for(let n of Object.getOwnPropertySymbols(t))e[n]=W3e(t[n]);return e}function W3e(t){return mf(t)?lls(t):C6(t)?cls(t):HO(t)?uls(t):lRe(t)?dls(t):Kd(t)?pls(t):t}function JA(t){return W3e(t)}var P_=I(()=>{iS()});function Als(t){return t.map(e=>SZ(e))}function SZ(t,e){return e===void 0?JA(t):JA({...e,...t})}var Z3e=I(()=>{P_()});var jVt=I(()=>{Z3e();P_()});function X3e(t){return Ul(t)&&globalThis.Symbol.asyncIterator in t}function Y3e(t){return Ul(t)&&globalThis.Symbol.iterator in t}function $Vt(t){return Ul(t)&&(globalThis.Object.getPrototypeOf(t)===Object.prototype||globalThis.Object.getPrototypeOf(t)===null)}function J3e(t){return t instanceof globalThis.Promise}function oS(t){return t instanceof Date&&globalThis.Number.isFinite(t.getTime())}function T$n(t){return t instanceof globalThis.Map}function N$n(t){return t instanceof globalThis.Set}function M1(t){return globalThis.ArrayBuffer.isView(t)}function Yse(t){return t instanceof globalThis.Uint8Array}function Ya(t,e){return e in t}function Ul(t){return t!==null&&typeof t=="object"}function ka(t){return globalThis.Array.isArray(t)&&!globalThis.ArrayBuffer.isView(t)}function Eg(t){return t===void 0}function KO(t){return t===null}function wF(t){return typeof t=="boolean"}function ua(t){return typeof t=="number"}function z3e(t){return globalThis.Number.isInteger(t)}function Ay(t){return typeof t=="bigint"}function Eu(t){return typeof t=="string"}function _Z(t){return typeof t=="function"}function jO(t){return typeof t=="symbol"}function iB(t){return Ay(t)||wF(t)||KO(t)||ua(t)||Eu(t)||jO(t)||Eg(t)}var H3e=I(()=>{});var $f=I(()=>{H3e()});var zA,cRe=I(()=>{$f();(function(t){t.InstanceMode="default",t.ExactOptionalPropertyTypes=!1,t.AllowArrayObject=!1,t.AllowNaN=!1,t.AllowNullVoid=!1;function e(s,a){return t.ExactOptionalPropertyTypes?a in s:s[a]!==void 0}t.IsExactOptionalProperty=e;function n(s){let a=Ul(s);return t.AllowArrayObject?a:a&&!ka(s)}t.IsObjectLike=n;function r(s){return n(s)&&!(s instanceof Date)&&!(s instanceof Uint8Array)}t.IsRecordLike=r;function i(s){return t.AllowNaN?ua(s):Number.isFinite(s)}t.IsNumberLike=i;function o(s){let a=Eg(s);return t.AllowNullVoid?a||s===null:a}t.IsVoidLike=o})(zA||(zA={}))});function gls(t){return globalThis.Object.freeze(t).map(e=>uRe(e))}function mls(t){let e={};for(let n of Object.getOwnPropertyNames(t))e[n]=uRe(t[n]);for(let n of Object.getOwnPropertySymbols(t))e[n]=uRe(t[n]);return globalThis.Object.freeze(e)}function uRe(t){return mf(t)?gls(t):C6(t)?t:HO(t)?t:lRe(t)?t:Kd(t)?mls(t):t}var k$n=I(()=>{iS()});function Zr(t,e){let n=e!==void 0?{...e,...t}:t;switch(zA.InstanceMode){case"freeze":return uRe(n);case"clone":return JA(n);default:return n}}var wa=I(()=>{cRe();k$n();P_()});var $O=I(()=>{wa()});var _a,qVt=I(()=>{_a=class extends Error{constructor(e){super(e)}}});var jg=I(()=>{qVt()});var bg,G1,Lb,sS,Fr,dRe=I(()=>{bg=Symbol.for("TypeBox.Transform"),G1=Symbol.for("TypeBox.Readonly"),Lb=Symbol.for("TypeBox.Optional"),sS=Symbol.for("TypeBox.Hint"),Fr=Symbol.for("TypeBox.Kind")});var fs=I(()=>{dRe()});var M2={};qo(M2,{IsAny:()=>K3e,IsArgument:()=>j3e,IsArray:()=>U1,IsAsyncIterator:()=>RZ,IsBigInt:()=>vZ,IsBoolean:()=>xF,IsComputed:()=>O1,IsConstructor:()=>L1,IsDate:()=>Q$n,IsFunction:()=>P1,IsImport:()=>hls,IsInteger:()=>W1,IsIntersect:()=>$g,IsIterator:()=>BZ,IsKind:()=>e9,IsKindOf:()=>Gc,IsLiteral:()=>gy,IsLiteralBoolean:()=>Cls,IsLiteralNumber:()=>bls,IsLiteralString:()=>Els,IsLiteralValue:()=>pRe,IsMappedKey:()=>W_,IsMappedResult:()=>HA,IsNever:()=>qO,IsNot:()=>D$n,IsNull:()=>Jse,IsNumber:()=>Z1,IsObject:()=>ph,IsOptional:()=>aS,IsPromise:()=>wZ,IsProperties:()=>fls,IsReadonly:()=>y6,IsRecord:()=>xZ,IsRecursive:()=>yls,IsRef:()=>Ym,IsRegExp:()=>$3e,IsSchema:()=>Cg,IsString:()=>TF,IsSymbol:()=>zse,IsTemplateLiteral:()=>Z_,IsThis:()=>F$n,IsTransform:()=>ju,IsTuple:()=>X_,IsUint8Array:()=>V$n,IsUndefined:()=>NF,IsUnion:()=>bu,IsUnknown:()=>M$n,IsUnsafe:()=>G$n,IsVoid:()=>U$n});function y6(t){return Kd(t)&&t[G1]==="Readonly"}function aS(t){return Kd(t)&&t[Lb]==="Optional"}function K3e(t){return Gc(t,"Any")}function j3e(t){return Gc(t,"Argument")}function U1(t){return Gc(t,"Array")}function RZ(t){return Gc(t,"AsyncIterator")}function vZ(t){return Gc(t,"BigInt")}function xF(t){return Gc(t,"Boolean")}function O1(t){return Gc(t,"Computed")}function L1(t){return Gc(t,"Constructor")}function Q$n(t){return Gc(t,"Date")}function P1(t){return Gc(t,"Function")}function hls(t){return Gc(t,"Import")}function W1(t){return Gc(t,"Integer")}function fls(t){return Kd(t)}function $g(t){return Gc(t,"Intersect")}function BZ(t){return Gc(t,"Iterator")}function Gc(t,e){return Kd(t)&&Fr in t&&t[Fr]===e}function Els(t){return gy(t)&&$p(t.const)}function bls(t){return gy(t)&&L_(t.const)}function Cls(t){return gy(t)&&BF(t.const)}function pRe(t){return BF(t)||L_(t)||$p(t)}function gy(t){return Gc(t,"Literal")}function W_(t){return Gc(t,"MappedKey")}function HA(t){return Gc(t,"MappedResult")}function qO(t){return Gc(t,"Never")}function D$n(t){return Gc(t,"Not")}function Jse(t){return Gc(t,"Null")}function Z1(t){return Gc(t,"Number")}function ph(t){return Gc(t,"Object")}function wZ(t){return Gc(t,"Promise")}function xZ(t){return Gc(t,"Record")}function yls(t){return Kd(t)&&sS in t&&t[sS]==="Recursive"}function Ym(t){return Gc(t,"Ref")}function $3e(t){return Gc(t,"RegExp")}function TF(t){return Gc(t,"String")}function zse(t){return Gc(t,"Symbol")}function Z_(t){return Gc(t,"TemplateLiteral")}function F$n(t){return Gc(t,"This")}function ju(t){return Kd(t)&&bg in t}function X_(t){return Gc(t,"Tuple")}function NF(t){return Gc(t,"Undefined")}function bu(t){return Gc(t,"Union")}function V$n(t){return Gc(t,"Uint8Array")}function M$n(t){return Gc(t,"Unknown")}function G$n(t){return Gc(t,"Unsafe")}function U$n(t){return Gc(t,"Void")}function e9(t){return Kd(t)&&Fr in t&&$p(t[Fr])}function Cg(t){return K3e(t)||j3e(t)||U1(t)||xF(t)||vZ(t)||RZ(t)||O1(t)||L1(t)||Q$n(t)||P1(t)||W1(t)||$g(t)||BZ(t)||gy(t)||W_(t)||HA(t)||qO(t)||D$n(t)||Jse(t)||Z1(t)||ph(t)||wZ(t)||xZ(t)||Ym(t)||$3e(t)||TF(t)||zse(t)||Z_(t)||F$n(t)||X_(t)||NF(t)||bu(t)||V$n(t)||M$n(t)||G$n(t)||U$n(t)||e9(t)}var bc=I(()=>{iS();fs()});var $n={};qo($n,{IsAny:()=>W$n,IsArgument:()=>Z$n,IsArray:()=>X$n,IsAsyncIterator:()=>Y$n,IsBigInt:()=>J$n,IsBoolean:()=>z$n,IsComputed:()=>H$n,IsConstructor:()=>K$n,IsDate:()=>j$n,IsFunction:()=>$$n,IsImport:()=>Bls,IsInteger:()=>q$n,IsIntersect:()=>eqn,IsIterator:()=>tqn,IsKind:()=>Bqn,IsKindOf:()=>Uc,IsLiteral:()=>gRe,IsLiteralBoolean:()=>wls,IsLiteralNumber:()=>rqn,IsLiteralString:()=>nqn,IsLiteralValue:()=>iqn,IsMappedKey:()=>oqn,IsMappedResult:()=>sqn,IsNever:()=>aqn,IsNot:()=>lqn,IsNull:()=>cqn,IsNumber:()=>uqn,IsObject:()=>dqn,IsOptional:()=>vls,IsPromise:()=>pqn,IsProperties:()=>q3e,IsReadonly:()=>Rls,IsRecord:()=>Aqn,IsRecursive:()=>xls,IsRef:()=>gqn,IsRegExp:()=>mqn,IsSchema:()=>yg,IsString:()=>hqn,IsSymbol:()=>fqn,IsTemplateLiteral:()=>Eqn,IsThis:()=>bqn,IsTransform:()=>Cqn,IsTuple:()=>yqn,IsUint8Array:()=>Sqn,IsUndefined:()=>Iqn,IsUnion:()=>rMt,IsUnionLiteral:()=>Tls,IsUnknown:()=>_qn,IsUnsafe:()=>Rqn,IsVoid:()=>vqn,TypeGuardUnknownTypeError:()=>eMt});function O$n(t){try{return new RegExp(t),!0}catch{return!1}}function tMt(t){if(!$p(t))return!1;for(let e=0;e<t.length;e++){let n=t.charCodeAt(e);if(n>=7&&n<=13||n===27||n===127)return!1}return!0}function L$n(t){return nMt(t)||yg(t)}function ARe(t){return hf(t)||aRe(t)}function _A(t){return hf(t)||L_(t)}function nMt(t){return hf(t)||BF(t)}function kp(t){return hf(t)||$p(t)}function Sls(t){return hf(t)||$p(t)&&tMt(t)&&O$n(t)}function _ls(t){return hf(t)||$p(t)&&tMt(t)}function P$n(t){return hf(t)||yg(t)}function Rls(t){return Kd(t)&&t[G1]==="Readonly"}function vls(t){return Kd(t)&&t[Lb]==="Optional"}function W$n(t){return Uc(t,"Any")&&kp(t.$id)}function Z$n(t){return Uc(t,"Argument")&&L_(t.index)}function X$n(t){return Uc(t,"Array")&&t.type==="array"&&kp(t.$id)&&yg(t.items)&&_A(t.minItems)&&_A(t.maxItems)&&nMt(t.uniqueItems)&&P$n(t.contains)&&_A(t.minContains)&&_A(t.maxContains)}function Y$n(t){return Uc(t,"AsyncIterator")&&t.type==="AsyncIterator"&&kp(t.$id)&&yg(t.items)}function J$n(t){return Uc(t,"BigInt")&&t.type==="bigint"&&kp(t.$id)&&ARe(t.exclusiveMaximum)&&ARe(t.exclusiveMinimum)&&ARe(t.maximum)&&ARe(t.minimum)&&ARe(t.multipleOf)}function z$n(t){return Uc(t,"Boolean")&&t.type==="boolean"&&kp(t.$id)}function H$n(t){return Uc(t,"Computed")&&$p(t.target)&&mf(t.parameters)&&t.parameters.every(e=>yg(e))}function K$n(t){return Uc(t,"Constructor")&&t.type==="Constructor"&&kp(t.$id)&&mf(t.parameters)&&t.parameters.every(e=>yg(e))&&yg(t.returns)}function j$n(t){return Uc(t,"Date")&&t.type==="Date"&&kp(t.$id)&&_A(t.exclusiveMaximumTimestamp)&&_A(t.exclusiveMinimumTimestamp)&&_A(t.maximumTimestamp)&&_A(t.minimumTimestamp)&&_A(t.multipleOfTimestamp)}function $$n(t){return Uc(t,"Function")&&t.type==="Function"&&kp(t.$id)&&mf(t.parameters)&&t.parameters.every(e=>yg(e))&&yg(t.returns)}function Bls(t){return Uc(t,"Import")&&P3e(t,"$defs")&&Kd(t.$defs)&&q3e(t.$defs)&&P3e(t,"$ref")&&$p(t.$ref)&&t.$ref in t.$defs}function q$n(t){return Uc(t,"Integer")&&t.type==="integer"&&kp(t.$id)&&_A(t.exclusiveMaximum)&&_A(t.exclusiveMinimum)&&_A(t.maximum)&&_A(t.minimum)&&_A(t.multipleOf)}function q3e(t){return Kd(t)&&Object.entries(t).every(([e,n])=>tMt(e)&&yg(n))}function eqn(t){return Uc(t,"Intersect")&&!($p(t.type)&&t.type!=="object")&&mf(t.allOf)&&t.allOf.every(e=>yg(e)&&!Cqn(e))&&kp(t.type)&&(nMt(t.unevaluatedProperties)||P$n(t.unevaluatedProperties))&&kp(t.$id)}function tqn(t){return Uc(t,"Iterator")&&t.type==="Iterator"&&kp(t.$id)&&yg(t.items)}function Uc(t,e){return Kd(t)&&Fr in t&&t[Fr]===e}function nqn(t){return gRe(t)&&$p(t.const)}function rqn(t){return gRe(t)&&L_(t.const)}function wls(t){return gRe(t)&&BF(t.const)}function gRe(t){return Uc(t,"Literal")&&kp(t.$id)&&iqn(t.const)}function iqn(t){return BF(t)||L_(t)||$p(t)}function oqn(t){return Uc(t,"MappedKey")&&mf(t.keys)&&t.keys.every(e=>L_(e)||$p(e))}function sqn(t){return Uc(t,"MappedResult")&&q3e(t.properties)}function aqn(t){return Uc(t,"Never")&&Kd(t.not)&&Object.getOwnPropertyNames(t.not).length===0}function lqn(t){return Uc(t,"Not")&&yg(t.not)}function cqn(t){return Uc(t,"Null")&&t.type==="null"&&kp(t.$id)}function uqn(t){return Uc(t,"Number")&&t.type==="number"&&kp(t.$id)&&_A(t.exclusiveMaximum)&&_A(t.exclusiveMinimum)&&_A(t.maximum)&&_A(t.minimum)&&_A(t.multipleOf)}function dqn(t){return Uc(t,"Object")&&t.type==="object"&&kp(t.$id)&&q3e(t.properties)&&L$n(t.additionalProperties)&&_A(t.minProperties)&&_A(t.maxProperties)}function pqn(t){return Uc(t,"Promise")&&t.type==="Promise"&&kp(t.$id)&&yg(t.item)}function Aqn(t){return Uc(t,"Record")&&t.type==="object"&&kp(t.$id)&&L$n(t.additionalProperties)&&Kd(t.patternProperties)&&(e=>{let n=Object.getOwnPropertyNames(e.patternProperties);return n.length===1&&O$n(n[0])&&Kd(e.patternProperties)&&yg(e.patternProperties[n[0]])})(t)}function xls(t){return Kd(t)&&sS in t&&t[sS]==="Recursive"}function gqn(t){return Uc(t,"Ref")&&kp(t.$id)&&$p(t.$ref)}function mqn(t){return Uc(t,"RegExp")&&kp(t.$id)&&$p(t.source)&&$p(t.flags)&&_A(t.maxLength)&&_A(t.minLength)}function hqn(t){return Uc(t,"String")&&t.type==="string"&&kp(t.$id)&&_A(t.minLength)&&_A(t.maxLength)&&Sls(t.pattern)&&_ls(t.format)}function fqn(t){return Uc(t,"Symbol")&&t.type==="symbol"&&kp(t.$id)}function Eqn(t){return Uc(t,"TemplateLiteral")&&t.type==="string"&&$p(t.pattern)&&t.pattern[0]==="^"&&t.pattern[t.pattern.length-1]==="$"}function bqn(t){return Uc(t,"This")&&kp(t.$id)&&$p(t.$ref)}function Cqn(t){return Kd(t)&&bg in t}function yqn(t){return Uc(t,"Tuple")&&t.type==="array"&&kp(t.$id)&&L_(t.minItems)&&L_(t.maxItems)&&t.minItems===t.maxItems&&(hf(t.items)&&hf(t.additionalItems)&&t.minItems===0||mf(t.items)&&t.items.every(e=>yg(e)))}function Iqn(t){return Uc(t,"Undefined")&&t.type==="undefined"&&kp(t.$id)}function Tls(t){return rMt(t)&&t.anyOf.every(e=>nqn(e)||rqn(e))}function rMt(t){return Uc(t,"Union")&&kp(t.$id)&&Kd(t)&&mf(t.anyOf)&&t.anyOf.every(e=>yg(e))}function Sqn(t){return Uc(t,"Uint8Array")&&t.type==="Uint8Array"&&kp(t.$id)&&_A(t.minByteLength)&&_A(t.maxByteLength)}function _qn(t){return Uc(t,"Unknown")&&kp(t.$id)}function Rqn(t){return Uc(t,"Unsafe")}function vqn(t){return Uc(t,"Void")&&t.type==="void"&&kp(t.$id)}function Bqn(t){return Kd(t)&&Fr in t&&$p(t[Fr])&&!Ils.includes(t[Fr])}function yg(t){return Kd(t)&&(W$n(t)||Z$n(t)||X$n(t)||z$n(t)||J$n(t)||Y$n(t)||H$n(t)||K$n(t)||j$n(t)||$$n(t)||q$n(t)||eqn(t)||tqn(t)||gRe(t)||oqn(t)||sqn(t)||aqn(t)||lqn(t)||cqn(t)||uqn(t)||dqn(t)||pqn(t)||Aqn(t)||gqn(t)||mqn(t)||hqn(t)||fqn(t)||Eqn(t)||bqn(t)||yqn(t)||Iqn(t)||rMt(t)||Sqn(t)||_qn(t)||Rqn(t)||vqn(t)||Bqn(t))}var eMt,Ils,iMt=I(()=>{iS();fs();jg();eMt=class extends _a{},Ils=["Argument","Any","Array","AsyncIterator","BigInt","Boolean","Computed","Constructor","Date","Enum","Function","Integer","Intersect","Iterator","Literal","MappedKey","MappedResult","Not","Null","Number","Object","Promise","Record","Ref","RegExp","String","Symbol","TemplateLiteral","This","Tuple","Undefined","Union","Uint8Array","Unknown","Void"]});var oMt=I(()=>{bc();iMt();iS()});function Nls(t){return(parseInt(t)+1).toString()}var wqn=I(()=>{});var xqn=I(()=>{wqn()});var eXe,Hse,tXe,Tqn,kls,t9,n9,sMt,Nqn=I(()=>{eXe="(true|false)",Hse="(0|[1-9][0-9]*)",tXe="(.*)",Tqn="(?!.*)",kls=`^${eXe}$`,t9=`^${Hse}$`,n9=`^${tXe}$`,sMt=`^${Tqn}$`});var mRe=I(()=>{Nqn()});var lS={};qo(lS,{Clear:()=>Dls,Delete:()=>Fls,Entries:()=>Qls,Get:()=>Gls,Has:()=>Vls,Set:()=>Mls});function Qls(){return new Map(Kse)}function Dls(){return Kse.clear()}function Fls(t){return Kse.delete(t)}function Vls(t){return Kse.has(t)}function Mls(t,e){Kse.set(t,e)}function Gls(t){return Kse.get(t)}var Kse,kqn=I(()=>{Kse=new Map});var PE={};qo(PE,{Clear:()=>Ols,Delete:()=>Lls,Entries:()=>Uls,Get:()=>Zls,Has:()=>Pls,Set:()=>Wls});function Uls(){return new Map(jse)}function Ols(){return jse.clear()}function Lls(t){return jse.delete(t)}function Pls(t){return jse.has(t)}function Wls(t,e){jse.set(t,e)}function Zls(t){return jse.get(t)}var jse,Qqn=I(()=>{jse=new Map});var I6=I(()=>{kqn();Qqn()});function nXe(t,e){return t.includes(e)}function Xls(t,e){return t.every(n=>nXe(e,n))}function aMt(t){return[...new Set(t)]}function Dqn(t,e){return t.filter(n=>e.includes(n))}function Yls(t,e){return[...t,...e]}function Jls(t,e){return t.filter(n=>!e.includes(n))}function zls(t,e){return t.reduce((n,r)=>Dqn(n,r),e)}function lMt(t){return t.length===1?t[0]:t.length>1?zls(t.slice(1),t[0]):[]}function cMt(t){let e=[];for(let n of t)e.push(...n);return e}var Fqn=I(()=>{});var hRe=I(()=>{Fqn()});function G2(t){return Zr({[Fr]:"Any"},t)}var Vqn=I(()=>{$O();fs()});var $se=I(()=>{Vqn()});function r9(t,e){return Zr({[Fr]:"Array",type:"array",items:t},e)}var Mqn=I(()=>{wa();fs()});var qse=I(()=>{Mqn()});function fRe(t){return Zr({[Fr]:"Argument",index:t})}var Gqn=I(()=>{wa();fs()});var rXe=I(()=>{Gqn()});function i9(t,e){return Zr({[Fr]:"AsyncIterator",type:"AsyncIterator",items:t},e)}var Uqn=I(()=>{fs();wa()});var eae=I(()=>{Uqn()});function RA(t,e,n){return Zr({[Fr]:"Computed",target:t,parameters:e},n)}var Oqn=I(()=>{$O();dRe()});var TZ=I(()=>{Oqn()});function Hls(t,e){let{[e]:n,...r}=t;return r}function Jm(t,e){return e.reduce((n,r)=>Hls(n,r),t)}var iXe=I(()=>{});var o9=I(()=>{iXe()});function Ol(t){return Zr({[Fr]:"Never",not:{}},t)}var Lqn=I(()=>{wa();fs()});var ff=I(()=>{Lqn()});function Kls(t){return Zr({[Fr]:"MappedKey",keys:t})}var Pqn=I(()=>{wa();fs()});function Vu(t){return Zr({[Fr]:"MappedResult",properties:t})}var uMt=I(()=>{wa();fs()});function s9(t,e,n){return Zr({[Fr]:"Constructor",type:"Constructor",parameters:t,returns:e},n)}var Wqn=I(()=>{wa();fs()});var tae=I(()=>{Wqn()});function oB(t,e,n){return Zr({[Fr]:"Function",type:"Function",parameters:t,returns:e},n)}var Zqn=I(()=>{wa();fs()});var NZ=I(()=>{Zqn()});function ERe(t,e){return Zr({[Fr]:"Union",anyOf:t},e)}var dMt=I(()=>{wa();fs()});function jls(t){return t.some(e=>aS(e))}function Xqn(t){return t.map(e=>aS(e)?$ls(e):e)}function $ls(t){return Jm(t,[Lb])}function qls(t,e){return jls(t)?WE(ERe(Xqn(t),e)):ERe(Xqn(t),e)}function U2(t,e){return t.length===1?Zr(t[0],e):t.length===0?Ol(e):qls(t,e)}var Yqn=I(()=>{wa();fs();o9();ff();kF();dMt();bc()});var Jqn=I(()=>{});function Cu(t,e){return t.length===0?Ol(e):t.length===1?Zr(t[0],e):ERe(t,e)}var zqn=I(()=>{ff();wa();dMt()});var Ah=I(()=>{Yqn();Jqn();zqn()});function ecs(t){return t.replace(/\\\$/g,"$").replace(/\\\*/g,"*").replace(/\\\^/g,"^").replace(/\\\|/g,"|").replace(/\\\(/g,"(").replace(/\\\)/g,")")}function pMt(t,e,n){return t[e]===n&&t.charCodeAt(e-1)!==92}function a9(t,e){return pMt(t,e,"(")}function CRe(t,e){return pMt(t,e,")")}function Hqn(t,e){return pMt(t,e,"|")}function tcs(t){if(!(a9(t,0)&&CRe(t,t.length-1)))return!1;let e=0;for(let n=0;n<t.length;n++)if(a9(t,n)&&(e+=1),CRe(t,n)&&(e-=1),e===0&&n!==t.length-1)return!1;return!0}function ncs(t){return t.slice(1,t.length-1)}function rcs(t){let e=0;for(let n=0;n<t.length;n++)if(a9(t,n)&&(e+=1),CRe(t,n)&&(e-=1),Hqn(t,n)&&e===0)return!0;return!1}function ics(t){for(let e=0;e<t.length;e++)if(a9(t,e))return!0;return!1}function ocs(t){let[e,n]=[0,0],r=[];for(let o=0;o<t.length;o++)if(a9(t,o)&&(e+=1),CRe(t,o)&&(e-=1),Hqn(t,o)&&e===0){let s=t.slice(n,o);s.length>0&&r.push(S6(s)),n=o+1}let i=t.slice(n);return i.length>0&&r.push(S6(i)),r.length===0?{type:"const",const:""}:r.length===1?r[0]:{type:"or",expr:r}}function scs(t){function e(i,o){if(!a9(i,o))throw new bRe("TemplateLiteralParser: Index must point to open parens");let s=0;for(let a=o;a<i.length;a++)if(a9(i,a)&&(s+=1),CRe(i,a)&&(s-=1),s===0)return[o,a];throw new bRe("TemplateLiteralParser: Unclosed group parens in expression")}function n(i,o){for(let s=o;s<i.length;s++)if(a9(i,s))return[o,s];return[o,i.length]}let r=[];for(let i=0;i<t.length;i++)if(a9(t,i)){let[o,s]=e(t,i),a=t.slice(o,s+1);r.push(S6(a)),i=s}else{let[o,s]=n(t,i),a=t.slice(o,s);a.length>0&&r.push(S6(a)),i=s-1}return r.length===0?{type:"const",const:""}:r.length===1?r[0]:{type:"and",expr:r}}function S6(t){return tcs(t)?S6(ncs(t)):rcs(t)?ocs(t):ics(t)?scs(t):{type:"const",const:ecs(t)}}function _6(t){return S6(t.slice(1,t.length-1))}var bRe,oXe=I(()=>{jg();bRe=class extends _a{}});function acs(t){return t.type==="or"&&t.expr.length===2&&t.expr[0].type==="const"&&t.expr[0].const==="0"&&t.expr[1].type==="const"&&t.expr[1].const==="[1-9][0-9]*"}function lcs(t){return t.type==="or"&&t.expr.length===2&&t.expr[0].type==="const"&&t.expr[0].const==="true"&&t.expr[1].type==="const"&&t.expr[1].const==="false"}function ccs(t){return t.type==="const"&&t.const===".*"}function kZ(t){return acs(t)||ccs(t)?!1:lcs(t)?!0:t.type==="and"?t.expr.every(e=>kZ(e)):t.type==="or"?t.expr.every(e=>kZ(e)):t.type==="const"?!0:(()=>{throw new sXe("Unknown expression type")})()}function yRe(t){let e=_6(t.pattern);return kZ(e)}var sXe,AMt=I(()=>{oXe();jg();sXe=class extends _a{}});function*Kqn(t){if(t.length===1)return yield*t[0];for(let e of t[0])for(let n of Kqn(t.slice(1)))yield`${e}${n}`}function*ucs(t){return yield*Kqn(t.expr.map(e=>[...nae(e)]))}function*dcs(t){for(let e of t.expr)yield*nae(e)}function*pcs(t){return yield t.const}function*nae(t){return t.type==="and"?yield*ucs(t):t.type==="or"?yield*dcs(t):t.type==="const"?yield*pcs(t):(()=>{throw new aXe("Unknown expression")})()}function R6(t){let e=_6(t.pattern);return kZ(e)?[...nae(e)]:[]}var aXe,gMt=I(()=>{AMt();oXe();jg();aXe=class extends _a{}});function kc(t,e){return Zr({[Fr]:"Literal",const:t,type:typeof t},e)}var jqn=I(()=>{wa();fs()});var VI=I(()=>{jqn()});function v6(t){return Zr({[Fr]:"Boolean",type:"boolean"},t)}var $qn=I(()=>{fs();$O()});var IRe=I(()=>{$qn()});function l9(t){return Zr({[Fr]:"BigInt",type:"bigint"},t)}var qqn=I(()=>{fs();$O()});var rae=I(()=>{qqn()});function cS(t){return Zr({[Fr]:"Number",type:"number"},t)}var e7n=I(()=>{wa();fs()});var QZ=I(()=>{e7n()});function Pb(t){return Zr({[Fr]:"String",type:"string"},t)}var t7n=I(()=>{wa();fs()});var DZ=I(()=>{t7n()});function*Acs(t){let e=t.trim().replace(/"|'/g,"");return e==="boolean"?yield v6():e==="number"?yield cS():e==="bigint"?yield l9():e==="string"?yield Pb():yield(()=>{let n=e.split("|").map(r=>kc(r.trim()));return n.length===0?Ol():n.length===1?n[0]:U2(n)})()}function*gcs(t){if(t[1]!=="{"){let e=kc("$"),n=mMt(t.slice(1));return yield*[e,...n]}for(let e=2;e<t.length;e++)if(t[e]==="}"){let n=Acs(t.slice(2,e)),r=mMt(t.slice(e+1));return yield*[...n,...r]}yield kc(t)}function*mMt(t){for(let e=0;e<t.length;e++)if(t[e]==="$"){let n=kc(t.slice(0,e)),r=gcs(t.slice(e));return yield*[n,...r]}yield kc(t)}function hMt(t){return[...mMt(t)]}var fMt=I(()=>{VI();IRe();rae();QZ();DZ();Ah();ff()});function mcs(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function n7n(t,e){return Z_(t)?t.pattern.slice(1,t.pattern.length-1):bu(t)?`(${t.anyOf.map(n=>n7n(n,e)).join("|")})`:Z1(t)?`${e}${Hse}`:W1(t)?`${e}${Hse}`:vZ(t)?`${e}${Hse}`:TF(t)?`${e}${tXe}`:gy(t)?`${e}${mcs(t.const.toString())}`:xF(t)?`${e}${eXe}`:(()=>{throw new lXe(`Unexpected Kind '${t[Fr]}'`)})()}function cXe(t){return`^${t.map(e=>n7n(e,"")).join("")}$`}var lXe,EMt=I(()=>{mRe();fs();jg();bc();lXe=class extends _a{}});function FZ(t){let n=R6(t).map(r=>kc(r));return U2(n)}var r7n=I(()=>{Ah();VI();gMt()});function B6(t,e){let n=$p(t)?cXe(hMt(t)):cXe(t);return Zr({[Fr]:"TemplateLiteral",type:"string",pattern:n},e)}var i7n=I(()=>{wa();fMt();EMt();iS();fs()});var O2=I(()=>{AMt();gMt();fMt();oXe();EMt();r7n();i7n()});function hcs(t){return R6(t).map(n=>n.toString())}function fcs(t){let e=[];for(let n of t)e.push(...uS(n));return e}function Ecs(t){return[t.toString()]}function uS(t){return[...new Set(Z_(t)?hcs(t):bu(t)?fcs(t.anyOf):gy(t)?Ecs(t.const):Z1(t)?["[number]"]:W1(t)?["[number]"]:[])]}var uXe=I(()=>{O2();bc()});function bcs(t,e,n){let r={};for(let i of Object.getOwnPropertyNames(e))r[i]=L2(t,uS(e[i]),n);return r}function Ccs(t,e,n){return bcs(t,e.properties,n)}function bMt(t,e,n){let r=Ccs(t,e,n);return Vu(r)}var CMt=I(()=>{qf();uXe();P2()});function s7n(t,e){return t.map(n=>yMt(n,e))}function ycs(t){return t.filter(e=>!qO(e))}function Ics(t,e){return SRe(ycs(s7n(t,e)))}function Scs(t){return t.some(e=>qO(e))?[]:t}function _cs(t,e){return U2(Scs(s7n(t,e)))}function Rcs(t,e){return e in t?t[e]:e==="[number]"?U2(t):Ol()}function vcs(t,e){return e==="[number]"?t:Ol()}function Bcs(t,e){return e in t?t[e]:Ol()}function yMt(t,e){return $g(t)?Ics(t.allOf,e):bu(t)?_cs(t.anyOf,e):X_(t)?Rcs(t.items??[],e):U1(t)?vcs(t.items,e):ph(t)?Bcs(t.properties,e):Ol()}function iae(t,e){return e.map(n=>yMt(t,n))}function o7n(t,e){return U2(iae(t,e))}function wcs(t,e){return RA("Index",[t,e])}function L2(t,e,n){if(Ym(t)||Ym(e)){let r="Index types using Ref parameters require both Type and Key to be of TSchema";if(!Cg(t)||!Cg(e))throw new _a(r);return RA("Index",[t,e])}return HA(e)?bMt(t,e,n):W_(e)?IMt(t,e,n):Zr(Cg(e)?o7n(t,uS(e)):o7n(t,e),n)}var dXe=I(()=>{wa();jg();TZ();ff();sB();Ah();uXe();SMt();CMt();bc()});function xcs(t,e,n){return{[e]:L2(t,[e],JA(n))}}function Tcs(t,e,n){return e.reduce((r,i)=>({...r,...xcs(t,i,n)}),{})}function Ncs(t,e,n){return Tcs(t,e.keys,n)}function IMt(t,e,n){let r=Ncs(t,e,n);return Vu(r)}var SMt=I(()=>{dXe();qf();P_()});var P2=I(()=>{SMt();CMt();uXe();dXe()});function c9(t,e){return Zr({[Fr]:"Iterator",type:"Iterator",items:t},e)}var a7n=I(()=>{wa();fs()});var oae=I(()=>{a7n()});function kcs(t){return globalThis.Object.keys(t).filter(e=>!aS(t[e]))}function Qcs(t,e){let n=kcs(t),r=n.length>0?{[Fr]:"Object",type:"object",required:n,properties:t}:{[Fr]:"Object",type:"object",properties:t};return Zr(r,e)}var yu,l7n=I(()=>{wa();fs();bc();yu=Qcs});var dS=I(()=>{l7n()});function w6(t,e){return Zr({[Fr]:"Promise",type:"Promise",item:t},e)}var c7n=I(()=>{wa();fs()});var _Re=I(()=>{c7n()});function Dcs(t){return Zr(Jm(t,[G1]))}function Fcs(t){return Zr({...t,[G1]:"Readonly"})}function Vcs(t,e){return e===!1?Dcs(t):Fcs(t)}function my(t,e){let n=e??!0;return HA(t)?RMt(t,n):Vcs(t,n)}var _Mt=I(()=>{wa();fs();o9();vMt();bc()});function Mcs(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=my(t[r],e);return n}function Gcs(t,e){return Mcs(t.properties,e)}function RMt(t,e){let n=Gcs(t,e);return Vu(n)}var vMt=I(()=>{qf();_Mt()});var VZ=I(()=>{vMt();_Mt()});function pS(t,e){return Zr(t.length>0?{[Fr]:"Tuple",type:"array",items:t,additionalItems:!1,minItems:t.length,maxItems:t.length}:{[Fr]:"Tuple",type:"array",minItems:t.length,maxItems:t.length},e)}var u7n=I(()=>{wa();fs()});var u9=I(()=>{u7n()});function d7n(t,e){return t in e?X1(t,e[t]):Vu(e)}function Ucs(t){return{[t]:kc(t)}}function Ocs(t){let e={};for(let n of t)e[n]=kc(n);return e}function Lcs(t,e){return nXe(e,t)?Ucs(t):Ocs(e)}function Pcs(t,e){let n=Lcs(t,e);return d7n(t,n)}function RRe(t,e){return e.map(n=>X1(t,n))}function Wcs(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=X1(t,e[r]);return n}function X1(t,e){let n={...e};return aS(e)?WE(X1(t,Jm(e,[Lb]))):y6(e)?my(X1(t,Jm(e,[G1]))):HA(e)?d7n(t,e.properties):W_(e)?Pcs(t,e.keys):L1(e)?s9(RRe(t,e.parameters),X1(t,e.returns),n):P1(e)?oB(RRe(t,e.parameters),X1(t,e.returns),n):RZ(e)?i9(X1(t,e.items),n):BZ(e)?c9(X1(t,e.items),n):$g(e)?ZE(RRe(t,e.allOf),n):bu(e)?Cu(RRe(t,e.anyOf),n):X_(e)?pS(RRe(t,e.items??[]),n):ph(e)?yu(Wcs(t,e.properties),n):U1(e)?r9(X1(t,e.items),n):wZ(e)?w6(X1(t,e.item),n):e}function p7n(t,e){let n={};for(let r of t)n[r]=X1(r,e);return n}function vRe(t,e,n){let r=Cg(t)?uS(t):t,i=e({[Fr]:"MappedKey",keys:r}),o=p7n(r,i);return yu(o,n)}var A7n=I(()=>{fs();o9();qse();eae();tae();NZ();P2();sB();oae();VI();dS();kF();_Re();VZ();u9();Ah();hRe();uMt();bc()});var qf=I(()=>{Pqn();uMt();A7n()});function Zcs(t){return Zr(Jm(t,[Lb]))}function Xcs(t){return Zr({...t,[Lb]:"Optional"})}function Ycs(t,e){return e===!1?Zcs(t):Xcs(t)}function WE(t,e){let n=e??!0;return HA(t)?wMt(t,n):Ycs(t,n)}var BMt=I(()=>{wa();fs();o9();xMt();bc()});function Jcs(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=WE(t[r],e);return n}function zcs(t,e){return Jcs(t.properties,e)}function wMt(t,e){let n=zcs(t,e);return Vu(n)}var xMt=I(()=>{qf();BMt()});var kF=I(()=>{xMt();BMt()});function BRe(t,e={}){let n=t.every(i=>ph(i)),r=Cg(e.unevaluatedProperties)?{unevaluatedProperties:e.unevaluatedProperties}:{};return Zr(e.unevaluatedProperties===!1||Cg(e.unevaluatedProperties)||n?{...r,[Fr]:"Intersect",type:"object",allOf:t}:{...r,[Fr]:"Intersect",allOf:t},e)}var TMt=I(()=>{wa();fs();bc()});function Hcs(t){return t.every(e=>aS(e))}function Kcs(t){return Jm(t,[Lb])}function g7n(t){return t.map(e=>aS(e)?Kcs(e):e)}function jcs(t,e){return Hcs(t)?WE(BRe(g7n(t),e)):BRe(g7n(t),e)}function SRe(t,e={}){if(t.length===1)return Zr(t[0],e);if(t.length===0)return Ol(e);if(t.some(n=>ju(n)))throw new Error("Cannot intersect transform types");return jcs(t,e)}var m7n=I(()=>{fs();wa();o9();ff();kF();TMt();bc()});var h7n=I(()=>{});function ZE(t,e){if(t.length===1)return Zr(t[0],e);if(t.length===0)return Ol(e);if(t.some(n=>ju(n)))throw new Error("Cannot intersect transform types");return BRe(t,e)}var f7n=I(()=>{wa();ff();TMt();bc()});var sB=I(()=>{m7n();h7n();f7n()});function AS(...t){let[e,n]=typeof t[0]=="string"?[t[0],t[1]]:[t[0].$id,t[1]];if(typeof e!="string")throw new _a("Ref: $ref must be a string");return Zr({[Fr]:"Ref",$ref:e},n)}var E7n=I(()=>{jg();wa();fs()});var d9=I(()=>{E7n()});function $cs(t,e){return RA("Awaited",[RA(t,e)])}function qcs(t){return RA("Awaited",[AS(t)])}function eus(t){return ZE(b7n(t))}function tus(t){return Cu(b7n(t))}function nus(t){return p9(t)}function b7n(t){return t.map(e=>p9(e))}function p9(t,e){return Zr(O1(t)?$cs(t.target,t.parameters):$g(t)?eus(t.allOf):bu(t)?tus(t.anyOf):wZ(t)?nus(t.item):Ym(t)?qcs(t.$ref):t,e)}var C7n=I(()=>{wa();TZ();sB();Ah();d9();bc()});var wRe=I(()=>{C7n()});function y7n(t){let e=[];for(let n of t)e.push(gS(n));return e}function rus(t){let e=y7n(t);return cMt(e)}function ius(t){let e=y7n(t);return lMt(e)}function ous(t){return t.map((e,n)=>n.toString())}function sus(t){return["[number]"]}function aus(t){return globalThis.Object.getOwnPropertyNames(t)}function lus(t){return NMt?globalThis.Object.getOwnPropertyNames(t).map(n=>n[0]==="^"&&n[n.length-1]==="$"?n.slice(1,n.length-1):n):[]}function gS(t){return $g(t)?rus(t.allOf):bu(t)?ius(t.anyOf):X_(t)?ous(t.items??[]):U1(t)?sus(t.items):ph(t)?aus(t.properties):xZ(t)?lus(t.patternProperties):[]}function QF(t){NMt=!0;let e=gS(t);return NMt=!1,`^(${e.map(r=>`(${r})`).join("|")})$`}var NMt,pXe=I(()=>{hRe();bc();NMt=!1});function cus(t,e){return RA("KeyOf",[RA(t,e)])}function uus(t){return RA("KeyOf",[AS(t)])}function dus(t,e){let n=gS(t),r=I7n(n),i=U2(r);return Zr(i,e)}function I7n(t){return t.map(e=>e==="[number]"?cS():kc(e))}function A9(t,e){return O1(t)?cus(t.target,t.parameters):Ym(t)?uus(t.$ref):HA(t)?QMt(t,e):dus(t,e)}var kMt=I(()=>{wa();VI();QZ();TZ();d9();pXe();Ah();DMt();bc()});function pus(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=A9(t[r],JA(e));return n}function Aus(t,e){return pus(t.properties,e)}function QMt(t,e){let n=Aus(t,e);return Vu(n)}var DMt=I(()=>{qf();kMt();P_()});function xRe(t){let e=gS(t),n=iae(t,e);return e.map((r,i)=>[e[i],n[i]])}var S7n=I(()=>{dXe();pXe()});var Y1=I(()=>{DMt();S7n();pXe();kMt()});function gus(t){let e=[];for(let n of t)e.push(...gS(n));return aMt(e)}function mus(t){return t.filter(e=>!qO(e))}function hus(t,e){let n=[];for(let r of t)n.push(...iae(r,[e]));return mus(n)}function fus(t,e){let n={};for(let r of e)n[r]=SRe(hus(t,r));return n}function TRe(t,e){let n=gus(t),r=fus(t,n);return yu(r,e)}var _7n=I(()=>{sB();P2();Y1();dS();hRe();bc()});var AXe=I(()=>{_7n()});function x6(t){return Zr({[Fr]:"Date",type:"Date"},t)}var R7n=I(()=>{fs();wa()});var NRe=I(()=>{R7n()});function T6(t){return Zr({[Fr]:"Null",type:"null"},t)}var v7n=I(()=>{wa();fs()});var kRe=I(()=>{v7n()});function N6(t){return Zr({[Fr]:"Symbol",type:"symbol"},t)}var B7n=I(()=>{wa();fs()});var QRe=I(()=>{B7n()});function k6(t){return Zr({[Fr]:"Undefined",type:"undefined"},t)}var w7n=I(()=>{wa();fs()});var DRe=I(()=>{w7n()});function Q6(t){return Zr({[Fr]:"Uint8Array",type:"Uint8Array"},t)}var x7n=I(()=>{wa();fs()});var FRe=I(()=>{x7n()});function Y_(t){return Zr({[Fr]:"Unknown"},t)}var T7n=I(()=>{wa();fs()});var MZ=I(()=>{T7n()});function Eus(t){return t.map(e=>FMt(e,!1))}function bus(t){let e={};for(let n of globalThis.Object.getOwnPropertyNames(t))e[n]=my(FMt(t[n],!1));return e}function gXe(t,e){return e===!0?t:my(t)}function FMt(t,e){return YVt(t)?gXe(G2(),e):zVt(t)?gXe(G2(),e):mf(t)?my(pS(Eus(t))):HO(t)?Q6():C6(t)?x6():Kd(t)?gXe(yu(bus(t)),e):JVt(t)?gXe(oB([],Y_()),e):hf(t)?k6():HVt(t)?T6():KVt(t)?N6():aRe(t)?l9():L_(t)?kc(t):BF(t)?kc(t):$p(t)?kc(t):yu({})}function VRe(t,e){return Zr(FMt(t,!0),e)}var N7n=I(()=>{$se();rae();NRe();NZ();VI();kRe();dS();QRe();u9();VZ();DRe();FRe();MZ();$O();iS()});var mXe=I(()=>{N7n()});function MRe(t,e){return L1(t)?pS(t.parameters,e):Ol(e)}var k7n=I(()=>{u9();ff();bc()});var hXe=I(()=>{k7n()});function GRe(t,e){if(hf(t))throw new Error("Enum undefined or empty");let n=globalThis.Object.getOwnPropertyNames(t).filter(o=>isNaN(o)).map(o=>t[o]),i=[...new Set(n)].map(o=>kc(o));return Cu(i,{...e,[sS]:"Enum"})}var Q7n=I(()=>{VI();fs();Ah();iS()});var fXe=I(()=>{Q7n()});function J1(t){return t===zr.False?t:zr.True}function sae(t){throw new EXe(t)}function eE(t){return $n.IsNever(t)||$n.IsIntersect(t)||$n.IsUnion(t)||$n.IsUnknown(t)||$n.IsAny(t)}function tE(t,e){return $n.IsNever(e)?O7n(t,e):$n.IsIntersect(e)?bXe(t,e):$n.IsUnion(e)?OMt(t,e):$n.IsUnknown(e)?Z7n(t,e):$n.IsAny(e)?UMt(t,e):sae("StructuralRight")}function UMt(t,e){return zr.True}function Cus(t,e){return $n.IsIntersect(e)?bXe(t,e):$n.IsUnion(e)&&e.anyOf.some(n=>$n.IsAny(n)||$n.IsUnknown(n))?zr.True:$n.IsUnion(e)?zr.Union:$n.IsUnknown(e)||$n.IsAny(e)?zr.True:zr.Union}function yus(t,e){return $n.IsUnknown(t)?zr.False:$n.IsAny(t)?zr.Union:$n.IsNever(t)?zr.True:zr.False}function Ius(t,e){return $n.IsObject(e)&&CXe(e)?zr.True:eE(e)?tE(t,e):$n.IsArray(e)?J1(Qp(t.items,e.items)):zr.False}function Sus(t,e){return eE(e)?tE(t,e):$n.IsAsyncIterator(e)?J1(Qp(t.items,e.items)):zr.False}function _us(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsBigInt(e)?zr.True:zr.False}function G7n(t,e){return $n.IsLiteralBoolean(t)||$n.IsBoolean(t)?zr.True:zr.False}function Rus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsBoolean(e)?zr.True:zr.False}function vus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsConstructor(e)?t.parameters.length>e.parameters.length?zr.False:t.parameters.every((n,r)=>J1(Qp(e.parameters[r],n))===zr.True)?J1(Qp(t.returns,e.returns)):zr.False:zr.False}function Bus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsDate(e)?zr.True:zr.False}function wus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsFunction(e)?t.parameters.length>e.parameters.length?zr.False:t.parameters.every((n,r)=>J1(Qp(e.parameters[r],n))===zr.True)?J1(Qp(t.returns,e.returns)):zr.False:zr.False}function U7n(t,e){return $n.IsLiteral(t)&&py.IsNumber(t.const)||$n.IsNumber(t)||$n.IsInteger(t)?zr.True:zr.False}function xus(t,e){return $n.IsInteger(e)||$n.IsNumber(e)?zr.True:eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):zr.False}function bXe(t,e){return e.allOf.every(n=>Qp(t,n)===zr.True)?zr.True:zr.False}function Tus(t,e){return t.allOf.some(n=>Qp(n,e)===zr.True)?zr.True:zr.False}function Nus(t,e){return eE(e)?tE(t,e):$n.IsIterator(e)?J1(Qp(t.items,e.items)):zr.False}function kus(t,e){return $n.IsLiteral(e)&&e.const===t.const?zr.True:eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsString(e)?W7n(t,e):$n.IsNumber(e)?L7n(t,e):$n.IsInteger(e)?U7n(t,e):$n.IsBoolean(e)?G7n(t,e):zr.False}function O7n(t,e){return zr.False}function Qus(t,e){return zr.True}function D7n(t){let[e,n]=[t,0];for(;$n.IsNot(e);)e=e.not,n+=1;return n%2===0?e:Y_()}function Dus(t,e){return $n.IsNot(t)?Qp(D7n(t),e):$n.IsNot(e)?Qp(t,D7n(e)):sae("Invalid fallthrough for Not")}function Fus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsNull(e)?zr.True:zr.False}function L7n(t,e){return $n.IsLiteralNumber(t)||$n.IsNumber(t)||$n.IsInteger(t)?zr.True:zr.False}function Vus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsInteger(e)||$n.IsNumber(e)?zr.True:zr.False}function J_(t,e){return Object.getOwnPropertyNames(t.properties).length===e}function F7n(t){return CXe(t)}function V7n(t){return J_(t,0)||J_(t,1)&&"description"in t.properties&&$n.IsUnion(t.properties.description)&&t.properties.description.anyOf.length===2&&($n.IsString(t.properties.description.anyOf[0])&&$n.IsUndefined(t.properties.description.anyOf[1])||$n.IsString(t.properties.description.anyOf[1])&&$n.IsUndefined(t.properties.description.anyOf[0]))}function VMt(t){return J_(t,0)}function M7n(t){return J_(t,0)}function Mus(t){return J_(t,0)}function Gus(t){return J_(t,0)}function Uus(t){return CXe(t)}function Ous(t){let e=cS();return J_(t,0)||J_(t,1)&&"length"in t.properties&&J1(Qp(t.properties.length,e))===zr.True}function Lus(t){return J_(t,0)}function CXe(t){let e=cS();return J_(t,0)||J_(t,1)&&"length"in t.properties&&J1(Qp(t.properties.length,e))===zr.True}function Pus(t){let e=oB([G2()],G2());return J_(t,0)||J_(t,1)&&"then"in t.properties&&J1(Qp(t.properties.then,e))===zr.True}function P7n(t,e){return Qp(t,e)===zr.False||$n.IsOptional(t)&&!$n.IsOptional(e)?zr.False:zr.True}function MI(t,e){return $n.IsUnknown(t)?zr.False:$n.IsAny(t)?zr.Union:$n.IsNever(t)||$n.IsLiteralString(t)&&F7n(e)||$n.IsLiteralNumber(t)&&VMt(e)||$n.IsLiteralBoolean(t)&&M7n(e)||$n.IsSymbol(t)&&V7n(e)||$n.IsBigInt(t)&&Mus(e)||$n.IsString(t)&&F7n(e)||$n.IsSymbol(t)&&V7n(e)||$n.IsNumber(t)&&VMt(e)||$n.IsInteger(t)&&VMt(e)||$n.IsBoolean(t)&&M7n(e)||$n.IsUint8Array(t)&&Uus(e)||$n.IsDate(t)&&Gus(e)||$n.IsConstructor(t)&&Lus(e)||$n.IsFunction(t)&&Ous(e)?zr.True:$n.IsRecord(t)&&$n.IsString(MMt(t))?e[sS]==="Record"?zr.True:zr.False:$n.IsRecord(t)&&$n.IsNumber(MMt(t))&&J_(e,0)?zr.True:zr.False}function Wus(t,e){return eE(e)?tE(t,e):$n.IsRecord(e)?z1(t,e):$n.IsObject(e)?(()=>{for(let n of Object.getOwnPropertyNames(e.properties)){if(!(n in t.properties)&&!$n.IsOptional(e.properties[n]))return zr.False;if($n.IsOptional(e.properties[n]))return zr.True;if(P7n(t.properties[n],e.properties[n])===zr.False)return zr.False}return zr.True})():zr.False}function Zus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)&&Pus(e)?zr.True:$n.IsPromise(e)?J1(Qp(t.item,e.item)):zr.False}function MMt(t){return t9 in t.patternProperties?cS():n9 in t.patternProperties?Pb():sae("Unknown record key pattern")}function GMt(t){return t9 in t.patternProperties?t.patternProperties[t9]:n9 in t.patternProperties?t.patternProperties[n9]:sae("Unable to get record value schema")}function z1(t,e){let[n,r]=[MMt(e),GMt(e)];return $n.IsLiteralString(t)&&$n.IsNumber(n)&&J1(Qp(t,r))===zr.True?zr.True:$n.IsUint8Array(t)&&$n.IsNumber(n)||$n.IsString(t)&&$n.IsNumber(n)||$n.IsArray(t)&&$n.IsNumber(n)?Qp(t,r):$n.IsObject(t)?(()=>{for(let i of Object.getOwnPropertyNames(t.properties))if(P7n(r,t.properties[i])===zr.False)return zr.False;return zr.True})():zr.False}function Xus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?Qp(GMt(t),GMt(e)):zr.False}function Yus(t,e){let n=$n.IsRegExp(t)?Pb():t,r=$n.IsRegExp(e)?Pb():e;return Qp(n,r)}function W7n(t,e){return $n.IsLiteral(t)&&py.IsString(t.const)||$n.IsString(t)?zr.True:zr.False}function Jus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsString(e)?zr.True:zr.False}function zus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsSymbol(e)?zr.True:zr.False}function Hus(t,e){return $n.IsTemplateLiteral(t)?Qp(FZ(t),e):$n.IsTemplateLiteral(e)?Qp(t,FZ(e)):sae("Invalid fallthrough for TemplateLiteral")}function Kus(t,e){return $n.IsArray(e)&&t.items!==void 0&&t.items.every(n=>Qp(n,e.items)===zr.True)}function jus(t,e){return $n.IsNever(t)?zr.True:$n.IsUnknown(t)?zr.False:$n.IsAny(t)?zr.Union:zr.False}function $us(t,e){return eE(e)?tE(t,e):$n.IsObject(e)&&CXe(e)||$n.IsArray(e)&&Kus(t,e)?zr.True:$n.IsTuple(e)?py.IsUndefined(t.items)&&!py.IsUndefined(e.items)||!py.IsUndefined(t.items)&&py.IsUndefined(e.items)?zr.False:py.IsUndefined(t.items)&&!py.IsUndefined(e.items)||t.items.every((n,r)=>Qp(n,e.items[r])===zr.True)?zr.True:zr.False:zr.False}function qus(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsUint8Array(e)?zr.True:zr.False}function eds(t,e){return eE(e)?tE(t,e):$n.IsObject(e)?MI(t,e):$n.IsRecord(e)?z1(t,e):$n.IsVoid(e)?rds(t,e):$n.IsUndefined(e)?zr.True:zr.False}function OMt(t,e){return e.anyOf.some(n=>Qp(t,n)===zr.True)?zr.True:zr.False}function tds(t,e){return t.anyOf.every(n=>Qp(n,e)===zr.True)?zr.True:zr.False}function Z7n(t,e){return zr.True}function nds(t,e){return $n.IsNever(e)?O7n(t,e):$n.IsIntersect(e)?bXe(t,e):$n.IsUnion(e)?OMt(t,e):$n.IsAny(e)?UMt(t,e):$n.IsString(e)?W7n(t,e):$n.IsNumber(e)?L7n(t,e):$n.IsInteger(e)?U7n(t,e):$n.IsBoolean(e)?G7n(t,e):$n.IsArray(e)?yus(t,e):$n.IsTuple(e)?jus(t,e):$n.IsObject(e)?MI(t,e):$n.IsUnknown(e)?zr.True:zr.False}function rds(t,e){return $n.IsUndefined(t)||$n.IsUndefined(t)?zr.True:zr.False}function ids(t,e){return $n.IsIntersect(e)?bXe(t,e):$n.IsUnion(e)?OMt(t,e):$n.IsUnknown(e)?Z7n(t,e):$n.IsAny(e)?UMt(t,e):$n.IsObject(e)?MI(t,e):$n.IsVoid(e)?zr.True:zr.False}function Qp(t,e){return $n.IsTemplateLiteral(t)||$n.IsTemplateLiteral(e)?Hus(t,e):$n.IsRegExp(t)||$n.IsRegExp(e)?Yus(t,e):$n.IsNot(t)||$n.IsNot(e)?Dus(t,e):$n.IsAny(t)?Cus(t,e):$n.IsArray(t)?Ius(t,e):$n.IsBigInt(t)?_us(t,e):$n.IsBoolean(t)?Rus(t,e):$n.IsAsyncIterator(t)?Sus(t,e):$n.IsConstructor(t)?vus(t,e):$n.IsDate(t)?Bus(t,e):$n.IsFunction(t)?wus(t,e):$n.IsInteger(t)?xus(t,e):$n.IsIntersect(t)?Tus(t,e):$n.IsIterator(t)?Nus(t,e):$n.IsLiteral(t)?kus(t,e):$n.IsNever(t)?Qus(t,e):$n.IsNull(t)?Fus(t,e):$n.IsNumber(t)?Vus(t,e):$n.IsObject(t)?Wus(t,e):$n.IsRecord(t)?Xus(t,e):$n.IsString(t)?Jus(t,e):$n.IsSymbol(t)?zus(t,e):$n.IsTuple(t)?$us(t,e):$n.IsPromise(t)?Zus(t,e):$n.IsUint8Array(t)?qus(t,e):$n.IsUndefined(t)?eds(t,e):$n.IsUnion(t)?tds(t,e):$n.IsUnknown(t)?nds(t,e):$n.IsVoid(t)?ids(t,e):sae(`Unknown left type operand '${t[Fr]}'`)}function g9(t,e){return Qp(t,e)}var EXe,zr,LMt=I(()=>{$se();NZ();QZ();DZ();MZ();O2();mRe();fs();jg();oMt();EXe=class extends _a{};(function(t){t[t.Union=0]="Union",t[t.True=1]="True",t[t.False=2]="False"})(zr||(zr={}))});function ods(t,e,n,r,i){let o={};for(let s of globalThis.Object.getOwnPropertyNames(t))o[s]=m9(t[s],e,n,r,JA(i));return o}function sds(t,e,n,r,i){return ods(t.properties,e,n,r,i)}function PMt(t,e,n,r,i){let o=sds(t,e,n,r,i);return Vu(o)}var WMt=I(()=>{qf();yXe();P_()});function ads(t,e,n,r){let i=g9(t,e);return i===zr.Union?Cu([n,r]):i===zr.True?n:r}function m9(t,e,n,r,i){return HA(t)?PMt(t,e,n,r,i):W_(t)?Zr(ZMt(t,e,n,r,i)):Zr(ads(t,e,n,r),i)}var yXe=I(()=>{wa();Ah();LMt();XMt();WMt();bc()});function lds(t,e,n,r,i){return{[t]:m9(kc(t),e,n,r,JA(i))}}function cds(t,e,n,r,i){return t.reduce((o,s)=>({...o,...lds(s,e,n,r,i)}),{})}function uds(t,e,n,r,i){return cds(t.keys,e,n,r,i)}function ZMt(t,e,n,r,i){let o=uds(t,e,n,r,i);return Vu(o)}var XMt=I(()=>{qf();VI();yXe();P_()});function dds(t){return t.allOf.every(e=>DF(e))}function pds(t){return t.anyOf.some(e=>DF(e))}function Ads(t){return!DF(t.not)}function DF(t){return t[Fr]==="Intersect"?dds(t):t[Fr]==="Union"?pds(t):t[Fr]==="Not"?Ads(t):t[Fr]==="Undefined"}var IXe=I(()=>{fs()});var D6=I(()=>{LMt();XMt();WMt();IXe();yXe()});function YMt(t,e){return h9(FZ(t),e)}var JMt=I(()=>{SXe();O2()});function gds(t,e){let n=t.filter(r=>g9(r,e)===zr.False);return n.length===1?n[0]:Cu(n)}function h9(t,e,n={}){return Z_(t)?Zr(YMt(t,e),n):HA(t)?Zr(zMt(t,e),n):Zr(bu(t)?gds(t.anyOf,e):g9(t,e)!==zr.False?Ol():t,n)}var SXe=I(()=>{wa();Ah();ff();D6();HMt();JMt();bc()});function mds(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=h9(t[r],e);return n}function hds(t,e){return mds(t.properties,e)}function zMt(t,e){let n=hds(t,e);return Vu(n)}var HMt=I(()=>{qf();SXe()});var _Xe=I(()=>{HMt();JMt();SXe()});function KMt(t,e){return f9(FZ(t),e)}var jMt=I(()=>{RXe();O2()});function fds(t,e){let n=t.filter(r=>g9(r,e)!==zr.False);return n.length===1?n[0]:Cu(n)}function f9(t,e,n){return Z_(t)?Zr(KMt(t,e),n):HA(t)?Zr($Mt(t,e),n):Zr(bu(t)?fds(t.anyOf,e):g9(t,e)!==zr.False?t:Ol(),n)}var RXe=I(()=>{wa();Ah();ff();D6();qMt();jMt();bc()});function Eds(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=f9(t[r],e);return n}function bds(t,e){return Eds(t.properties,e)}function $Mt(t,e){let n=bds(t,e);return Vu(n)}var qMt=I(()=>{qf();RXe()});var vXe=I(()=>{qMt();jMt();RXe()});function URe(t,e){return L1(t)?Zr(t.returns,e):Ol(e)}var X7n=I(()=>{wa();ff();bc()});var BXe=I(()=>{X7n()});function F6(t){return my(WE(t))}var Y7n=I(()=>{VZ();kF()});var ORe=I(()=>{Y7n()});function V6(t,e,n){return Zr({[Fr]:"Record",type:"object",patternProperties:{[t]:e}},n)}function eGt(t,e,n){let r={};for(let i of t)r[i]=e;return yu(r,{...n,[sS]:"Record"})}function Cds(t,e,n){return yRe(t)?eGt(uS(t),e,n):V6(t.pattern,e,n)}function yds(t,e,n){return eGt(uS(Cu(t)),e,n)}function Ids(t,e,n){return eGt([t.toString()],e,n)}function Sds(t,e,n){return V6(t.source,e,n)}function _ds(t,e,n){let r=hf(t.pattern)?n9:t.pattern;return V6(r,e,n)}function Rds(t,e,n){return V6(n9,e,n)}function vds(t,e,n){return V6(sMt,e,n)}function Bds(t,e,n){return yu({true:e,false:e},n)}function wds(t,e,n){return V6(t9,e,n)}function xds(t,e,n){return V6(t9,e,n)}function M6(t,e,n={}){return bu(t)?yds(t.anyOf,e,n):Z_(t)?Cds(t,e,n):gy(t)?Ids(t.const,e,n):xF(t)?Bds(t,e,n):W1(t)?wds(t,e,n):Z1(t)?xds(t,e,n):$3e(t)?Sds(t,e,n):TF(t)?_ds(t,e,n):K3e(t)?Rds(t,e,n):qO(t)?vds(t,e,n):Ol(n)}function LRe(t){return globalThis.Object.getOwnPropertyNames(t.patternProperties)[0]}function tGt(t){let e=LRe(t);return e===n9?Pb():e===t9?cS():Pb({pattern:e})}function PRe(t){return t.patternProperties[LRe(t)]}var J7n=I(()=>{wa();fs();ff();QZ();dS();DZ();Ah();O2();mRe();P2();iS();bc()});var aae=I(()=>{J7n()});function Tds(t,e){return e.parameters=lae(t,e.parameters),e.returns=W2(t,e.returns),e}function Nds(t,e){return e.parameters=lae(t,e.parameters),e.returns=W2(t,e.returns),e}function kds(t,e){return e.allOf=lae(t,e.allOf),e}function Qds(t,e){return e.anyOf=lae(t,e.anyOf),e}function Dds(t,e){return hf(e.items)||(e.items=lae(t,e.items)),e}function Fds(t,e){return e.items=W2(t,e.items),e}function Vds(t,e){return e.items=W2(t,e.items),e}function Mds(t,e){return e.items=W2(t,e.items),e}function Gds(t,e){return e.item=W2(t,e.item),e}function Uds(t,e){let n=Wds(t,e.properties);return{...e,...yu(n)}}function Ods(t,e){let n=W2(t,tGt(e)),r=W2(t,PRe(e)),i=M6(n,r);return{...e,...i}}function Lds(t,e){return e.index in t?t[e.index]:Y_()}function Pds(t,e){let n=y6(e),r=aS(e),i=W2(t,e);return n&&r?F6(i):n&&!r?my(i):!n&&r?WE(i):i}function Wds(t,e){return globalThis.Object.getOwnPropertyNames(e).reduce((n,r)=>({...n,[r]:Pds(t,e[r])}),{})}function lae(t,e){return e.map(n=>W2(t,n))}function W2(t,e){return L1(e)?Tds(t,e):P1(e)?Nds(t,e):$g(e)?kds(t,e):bu(e)?Qds(t,e):X_(e)?Dds(t,e):U1(e)?Fds(t,e):RZ(e)?Vds(t,e):BZ(e)?Mds(t,e):wZ(e)?Gds(t,e):ph(e)?Uds(t,e):xZ(e)?Ods(t,e):j3e(e)?Lds(t,e):e}function WRe(t,e){return W2(e,SZ(t))}var z7n=I(()=>{Z3e();MZ();ORe();VZ();kF();dS();aae();iS();bc()});var wXe=I(()=>{z7n()});function ZRe(t){return Zr({[Fr]:"Integer",type:"integer"},t)}var H7n=I(()=>{wa();fs()});var xXe=I(()=>{H7n()});function Zds(t,e,n){return{[t]:H1(kc(t),e,JA(n))}}function Xds(t,e,n){return t.reduce((i,o)=>({...i,...Zds(o,e,n)}),{})}function Yds(t,e,n){return Xds(t.keys,e,n)}function nGt(t,e,n){let r=Yds(t,e,n);return Vu(r)}var rGt=I(()=>{qf();G6();VI();P_()});function Jds(t){let[e,n]=[t.slice(0,1),t.slice(1)];return[e.toLowerCase(),n].join("")}function zds(t){let[e,n]=[t.slice(0,1),t.slice(1)];return[e.toUpperCase(),n].join("")}function Hds(t){return t.toUpperCase()}function Kds(t){return t.toLowerCase()}function jds(t,e,n){let r=_6(t.pattern);if(!kZ(r))return{...t,pattern:K7n(t.pattern,e)};let s=[...nae(r)].map(c=>kc(c)),a=j7n(s,e),l=Cu(a);return B6([l],n)}function K7n(t,e){return typeof t=="string"?e==="Uncapitalize"?Jds(t):e==="Capitalize"?zds(t):e==="Uppercase"?Hds(t):e==="Lowercase"?Kds(t):t:t.toString()}function j7n(t,e){return t.map(n=>H1(n,e))}function H1(t,e,n={}){return W_(t)?nGt(t,e,n):Z_(t)?jds(t,e,n):bu(t)?Cu(j7n(t.anyOf,e),n):gy(t)?kc(K7n(t.const,e),n):Zr(t,n)}var G6=I(()=>{wa();O2();rGt();VI();Ah();bc()});function XRe(t,e={}){return H1(t,"Capitalize",e)}var $7n=I(()=>{G6()});function YRe(t,e={}){return H1(t,"Lowercase",e)}var q7n=I(()=>{G6()});function JRe(t,e={}){return H1(t,"Uncapitalize",e)}var eer=I(()=>{G6()});function zRe(t,e={}){return H1(t,"Uppercase",e)}var ter=I(()=>{G6()});var TXe=I(()=>{$7n();rGt();G6();q7n();eer();ter()});function $ds(t,e,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(t))r[i]=Z2(t[i],e,JA(n));return r}function qds(t,e,n){return $ds(t.properties,e,n)}function iGt(t,e,n){let r=qds(t,e,n);return Vu(r)}var oGt=I(()=>{qf();NXe();P_()});function eps(t,e){return t.map(n=>sGt(n,e))}function tps(t,e){return t.map(n=>sGt(n,e))}function nps(t,e){let{[e]:n,...r}=t;return r}function rps(t,e){return e.reduce((n,r)=>nps(n,r),t)}function ips(t,e,n){let r=Jm(t,[bg,"$id","required","properties"]),i=rps(n,e);return yu(i,r)}function ops(t){let e=t.reduce((n,r)=>pRe(r)?[...n,kc(r)]:n,[]);return Cu(e)}function sGt(t,e){return $g(t)?ZE(eps(t.allOf,e)):bu(t)?Cu(tps(t.anyOf,e)):ph(t)?ips(t,e,t.properties):yu({})}function Z2(t,e,n){let r=mf(e)?ops(e):e,i=Cg(e)?uS(e):e,o=Ym(t),s=Ym(e);return HA(t)?iGt(t,i,n):W_(e)?aGt(t,e,n):o&&s?RA("Omit",[t,r],n):!o&&s?RA("Omit",[t,r],n):o&&!s?RA("Omit",[t,r],n):Zr({...sGt(t,i),...n})}var NXe=I(()=>{wa();iXe();dRe();TZ();VI();P2();sB();Ah();dS();lGt();oGt();bc();iS()});function sps(t,e,n){return{[e]:Z2(t,[e],JA(n))}}function aps(t,e,n){return e.reduce((r,i)=>({...r,...sps(t,i,n)}),{})}function lps(t,e,n){return aps(t,e.keys,n)}function aGt(t,e,n){let r=lps(t,e,n);return Vu(r)}var lGt=I(()=>{qf();NXe();P_()});var HRe=I(()=>{lGt();oGt();NXe()});function cps(t,e,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(t))r[i]=X2(t[i],e,JA(n));return r}function ups(t,e,n){return cps(t.properties,e,n)}function cGt(t,e,n){let r=ups(t,e,n);return Vu(r)}var uGt=I(()=>{qf();kXe();P_()});function dps(t,e){return t.map(n=>dGt(n,e))}function pps(t,e){return t.map(n=>dGt(n,e))}function Aps(t,e){let n={};for(let r of e)r in t&&(n[r]=t[r]);return n}function gps(t,e,n){let r=Jm(t,[bg,"$id","required","properties"]),i=Aps(n,e);return yu(i,r)}function mps(t){let e=t.reduce((n,r)=>pRe(r)?[...n,kc(r)]:n,[]);return Cu(e)}function dGt(t,e){return $g(t)?ZE(dps(t.allOf,e)):bu(t)?Cu(pps(t.anyOf,e)):ph(t)?gps(t,e,t.properties):yu({})}function X2(t,e,n){let r=mf(e)?mps(e):e,i=Cg(e)?uS(e):e,o=Ym(t),s=Ym(e);return HA(t)?cGt(t,i,n):W_(e)?pGt(t,e,n):o&&s?RA("Pick",[t,r],n):!o&&s?RA("Pick",[t,r],n):o&&!s?RA("Pick",[t,r],n):Zr({...dGt(t,i),...n})}var kXe=I(()=>{wa();iXe();TZ();sB();VI();dS();Ah();P2();dRe();bc();iS();AGt();uGt()});function hps(t,e,n){return{[e]:X2(t,[e],JA(n))}}function fps(t,e,n){return e.reduce((r,i)=>({...r,...hps(t,i,n)}),{})}function Eps(t,e,n){return fps(t,e.keys,n)}function pGt(t,e,n){let r=Eps(t,e,n);return Vu(r)}var AGt=I(()=>{qf();kXe();P_()});var KRe=I(()=>{AGt();uGt();kXe()});function bps(t,e){return RA("Partial",[RA(t,e)])}function Cps(t){return RA("Partial",[AS(t)])}function yps(t){let e={};for(let n of globalThis.Object.getOwnPropertyNames(t))e[n]=WE(t[n]);return e}function Ips(t,e){let n=Jm(t,[bg,"$id","required","properties"]),r=yps(e);return yu(r,n)}function ner(t){return t.map(e=>rer(e))}function rer(t){return O1(t)?bps(t.target,t.parameters):Ym(t)?Cps(t.$ref):$g(t)?ZE(ner(t.allOf)):bu(t)?Cu(ner(t.anyOf)):ph(t)?Ips(t,t.properties):vZ(t)||xF(t)||W1(t)||gy(t)||Jse(t)||Z1(t)||TF(t)||zse(t)||NF(t)?t:yu({})}function E9(t,e){return HA(t)?mGt(t,e):Zr({...rer(t),...e})}var gGt=I(()=>{wa();TZ();kF();dS();sB();Ah();d9();o9();fs();hGt();bc()});function Sps(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=E9(t[r],JA(e));return n}function _ps(t,e){return Sps(t.properties,e)}function mGt(t,e){let n=_ps(t,e);return Vu(n)}var hGt=I(()=>{qf();gGt();P_()});var jRe=I(()=>{hGt();gGt()});function Rps(t,e){return RA("Required",[RA(t,e)])}function vps(t){return RA("Required",[AS(t)])}function Bps(t){let e={};for(let n of globalThis.Object.getOwnPropertyNames(t))e[n]=Jm(t[n],[Lb]);return e}function wps(t,e){let n=Jm(t,[bg,"$id","required","properties"]),r=Bps(e);return yu(r,n)}function ier(t){return t.map(e=>oer(e))}function oer(t){return O1(t)?Rps(t.target,t.parameters):Ym(t)?vps(t.$ref):$g(t)?ZE(ier(t.allOf)):bu(t)?Cu(ier(t.anyOf)):ph(t)?wps(t,t.properties):vZ(t)||xF(t)||W1(t)||gy(t)||Jse(t)||Z1(t)||TF(t)||zse(t)||NF(t)?t:yu({})}function b9(t,e){return HA(t)?EGt(t,e):Zr({...oer(t),...e})}var fGt=I(()=>{wa();TZ();dS();sB();Ah();d9();fs();o9();bGt();bc()});function xps(t,e){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=b9(t[r],e);return n}function Tps(t,e){return xps(t.properties,e)}function EGt(t,e){let n=Tps(t,e);return Vu(n)}var bGt=I(()=>{qf();fGt()});var $Re=I(()=>{bGt();fGt()});function Nps(t,e){return e.map(n=>Ym(n)?CGt(t,n.$ref):aB(t,n))}function CGt(t,e){return e in t?Ym(t[e])?CGt(t,t[e].$ref):aB(t,t[e]):Ol()}function kps(t){return p9(t[0])}function Qps(t){return L2(t[0],t[1])}function Dps(t){return A9(t[0])}function Fps(t){return E9(t[0])}function Vps(t){return Z2(t[0],t[1])}function Mps(t){return X2(t[0],t[1])}function Gps(t){return b9(t[0])}function Ups(t,e,n){let r=Nps(t,n);return e==="Awaited"?kps(r):e==="Index"?Qps(r):e==="KeyOf"?Dps(r):e==="Partial"?Fps(r):e==="Omit"?Vps(r):e==="Pick"?Mps(r):e==="Required"?Gps(r):Ol()}function Ops(t,e){return r9(aB(t,e))}function Lps(t,e){return i9(aB(t,e))}function Pps(t,e,n){return s9(qRe(t,e),aB(t,n))}function Wps(t,e,n){return oB(qRe(t,e),aB(t,n))}function Zps(t,e){return ZE(qRe(t,e))}function Xps(t,e){return c9(aB(t,e))}function Yps(t,e){return yu(globalThis.Object.keys(e).reduce((n,r)=>({...n,[r]:aB(t,e[r])}),{}))}function Jps(t,e){let[n,r]=[aB(t,PRe(e)),LRe(e)],i=SZ(e);return i.patternProperties[r]=n,i}function zps(t,e){return Ym(e)?{...CGt(t,e.$ref),[bg]:e[bg]}:e}function Hps(t,e){return pS(qRe(t,e))}function Kps(t,e){return Cu(qRe(t,e))}function qRe(t,e){return e.map(n=>aB(t,n))}function aB(t,e){return aS(e)?Zr(aB(t,Jm(e,[Lb])),e):y6(e)?Zr(aB(t,Jm(e,[G1])),e):ju(e)?Zr(zps(t,e),e):U1(e)?Zr(Ops(t,e.items),e):RZ(e)?Zr(Lps(t,e.items),e):O1(e)?Zr(Ups(t,e.target,e.parameters)):L1(e)?Zr(Pps(t,e.parameters,e.returns),e):P1(e)?Zr(Wps(t,e.parameters,e.returns),e):$g(e)?Zr(Zps(t,e.allOf),e):BZ(e)?Zr(Xps(t,e.items),e):ph(e)?Zr(Yps(t,e.properties),e):xZ(e)?Zr(Jps(t,e)):X_(e)?Zr(Hps(t,e.items||[]),e):bu(e)?Zr(Kps(t,e.anyOf),e):e}function jps(t,e){return e in t?aB(t,t[e]):Ol()}function ser(t){return globalThis.Object.getOwnPropertyNames(t).reduce((e,n)=>({...e,[n]:jps(t,n)}),{})}var aer=I(()=>{$O();jVt();o9();qse();wRe();eae();tae();P2();NZ();sB();oae();Y1();dS();HRe();KRe();ff();jRe();aae();$Re();u9();Ah();fs();bc()});function eve(t){return new QXe(t)}var QXe,ler=I(()=>{$O();fs();aer();QXe=class{constructor(e){let n=ser(e),r=this.WithIdentifiers(n);this.$defs=r}Import(e,n){let r={...this.$defs,[e]:Zr(this.$defs[e],n)};return Zr({[Fr]:"Import",$defs:r,$ref:e})}WithIdentifiers(e){return globalThis.Object.getOwnPropertyNames(e).reduce((n,r)=>({...n,[r]:{...e[r],$id:r}}),{})}}});var DXe=I(()=>{ler()});function tve(t,e){return Zr({[Fr]:"Not",not:t},e)}var cer=I(()=>{wa();fs()});var FXe=I(()=>{cer()});function nve(t,e){return P1(t)?pS(t.parameters,e):Ol()}var uer=I(()=>{u9();ff();bc()});var VXe=I(()=>{uer()});function rve(t,e={}){hf(e.$id)&&(e.$id=`T${$ps++}`);let n=SZ(t({[Fr]:"This",$ref:`${e.$id}`}));return n.$id=e.$id,Zr({[sS]:"Recursive",...n},e)}var $ps,der=I(()=>{Z3e();wa();iS();fs();$ps=0});var MXe=I(()=>{der()});function ive(t,e){let n=$p(t)?new globalThis.RegExp(t):t;return Zr({[Fr]:"RegExp",type:"RegExp",source:n.source,flags:n.flags},e)}var per=I(()=>{wa();iS();fs()});var GXe=I(()=>{per()});function qps(t){return $g(t)?t.allOf:bu(t)?t.anyOf:X_(t)?t.items??[]:[]}function ove(t){return qps(t)}var Aer=I(()=>{bc()});var UXe=I(()=>{Aer()});function sve(t,e){return P1(t)?Zr(t.returns,e):Ol(e)}var ger=I(()=>{wa();ff();bc()});var OXe=I(()=>{ger()});var mer=I(()=>{});var her=I(()=>{});var fer=I(()=>{mer();her()});var Eer=I(()=>{});var ber=I(()=>{Eer()});function ave(t){return new LXe(t)}var LXe,PXe,Cer=I(()=>{fs();bc();LXe=class{constructor(e){this.schema=e}Decode(e){return new PXe(this.schema,e)}},PXe=class{constructor(e,n){this.schema=e,this.decode=n}EncodeTransform(e,n){let o={Encode:s=>n[bg].Encode(e(s)),Decode:s=>this.decode(n[bg].Decode(s))};return{...n,[bg]:o}}EncodeSchema(e,n){let r={Decode:this.decode,Encode:e};return{...n,[bg]:r}}Encode(e){return ju(this.schema)?this.EncodeTransform(e,this.schema):this.EncodeSchema(e,this.schema)}}});var WXe=I(()=>{Cer()});function U6(t={}){return Zr({[Fr]:t[Fr]??"Unsafe"},t)}var yer=I(()=>{wa();fs()});var lve=I(()=>{yer()});function cve(t){return Zr({[Fr]:"Void",type:"void"},t)}var Ier=I(()=>{wa();fs()});var ZXe=I(()=>{Ier()});var cae,yGt=I(()=>{$se();qse();IRe();AXe();mXe();fXe();_Xe();D6();vXe();P2();xXe();sB();TXe();Y1();VI();qf();ff();FXe();kRe();DXe();QZ();dS();HRe();kF();jRe();KRe();VZ();ORe();aae();MXe();d9();$Re();UXe();DZ();O2();WXe();u9();Ah();MZ();lve();cae=class{ReadonlyOptional(e){return F6(e)}Readonly(e,n){return my(e,n??!0)}Optional(e,n){return WE(e,n??!0)}Any(e){return G2(e)}Array(e,n){return r9(e,n)}Boolean(e){return v6(e)}Capitalize(e,n){return XRe(e,n)}Composite(e,n){return TRe(e,n)}Const(e,n){return VRe(e,n)}Enum(e,n){return GRe(e,n)}Exclude(e,n,r){return h9(e,n,r)}Extends(e,n,r,i,o){return m9(e,n,r,i,o)}Extract(e,n,r){return f9(e,n,r)}Index(e,n,r){return L2(e,n,r)}Integer(e){return ZRe(e)}Intersect(e,n){return ZE(e,n)}KeyOf(e,n){return A9(e,n)}Literal(e,n){return kc(e,n)}Lowercase(e,n){return YRe(e,n)}Mapped(e,n,r){return vRe(e,n,r)}Module(e){return eve(e)}Never(e){return Ol(e)}Not(e,n){return tve(e,n)}Null(e){return T6(e)}Number(e){return cS(e)}Object(e,n){return yu(e,n)}Omit(e,n,r){return Z2(e,n,r)}Partial(e,n){return E9(e,n)}Pick(e,n,r){return X2(e,n,r)}Record(e,n,r){return M6(e,n,r)}Recursive(e,n){return rve(e,n)}Ref(...e){return AS(e[0],e[1])}Required(e,n){return b9(e,n)}Rest(e){return ove(e)}String(e){return Pb(e)}TemplateLiteral(e,n){return B6(e,n)}Transform(e){return ave(e)}Tuple(e,n){return pS(e,n)}Uncapitalize(e,n){return JRe(e,n)}Union(e,n){return Cu(e,n)}Unknown(e){return Y_(e)}Unsafe(e){return U6(e)}Uppercase(e,n){return zRe(e,n)}}});var IGt={};qo(IGt,{Any:()=>G2,Argument:()=>fRe,Array:()=>r9,AsyncIterator:()=>i9,Awaited:()=>p9,BigInt:()=>l9,Boolean:()=>v6,Capitalize:()=>XRe,Composite:()=>TRe,Const:()=>VRe,Constructor:()=>s9,ConstructorParameters:()=>MRe,Date:()=>x6,Enum:()=>GRe,Exclude:()=>h9,Extends:()=>m9,Extract:()=>f9,Function:()=>oB,Index:()=>L2,InstanceType:()=>URe,Instantiate:()=>WRe,Integer:()=>ZRe,Intersect:()=>ZE,Iterator:()=>c9,KeyOf:()=>A9,Literal:()=>kc,Lowercase:()=>YRe,Mapped:()=>vRe,Module:()=>eve,Never:()=>Ol,Not:()=>tve,Null:()=>T6,Number:()=>cS,Object:()=>yu,Omit:()=>Z2,Optional:()=>WE,Parameters:()=>nve,Partial:()=>E9,Pick:()=>X2,Promise:()=>w6,Readonly:()=>my,ReadonlyOptional:()=>F6,Record:()=>M6,Recursive:()=>rve,Ref:()=>AS,RegExp:()=>ive,Required:()=>b9,Rest:()=>ove,ReturnType:()=>sve,String:()=>Pb,Symbol:()=>N6,TemplateLiteral:()=>B6,Transform:()=>ave,Tuple:()=>pS,Uint8Array:()=>Q6,Uncapitalize:()=>JRe,Undefined:()=>k6,Union:()=>Cu,Unknown:()=>Y_,Unsafe:()=>U6,Uppercase:()=>zRe,Void:()=>cve});var Ser=I(()=>{$se();rXe();qse();eae();wRe();rae();IRe();AXe();mXe();tae();hXe();NRe();fXe();_Xe();D6();vXe();NZ();P2();BXe();wXe();xXe();sB();TXe();oae();Y1();VI();qf();DXe();ff();FXe();kRe();QZ();dS();HRe();kF();VXe();jRe();KRe();_Re();VZ();ORe();aae();MXe();d9();GXe();$Re();UXe();OXe();DZ();QRe();O2();WXe();u9();FRe();DRe();Ah();MZ();lve();ZXe()});var XXe,_er=I(()=>{yGt();rXe();eae();wRe();rae();tae();hXe();NRe();NZ();BXe();wXe();oae();VXe();_Re();GXe();OXe();QRe();FRe();DRe();ZXe();XXe=class extends cae{Argument(e){return fRe(e)}AsyncIterator(e,n){return i9(e,n)}Awaited(e,n){return p9(e,n)}BigInt(e){return l9(e)}ConstructorParameters(e,n){return MRe(e,n)}Constructor(e,n,r){return s9(e,n,r)}Date(e={}){return x6(e)}Function(e,n,r){return oB(e,n,r)}InstanceType(e,n){return URe(e,n)}Instantiate(e,n){return WRe(e,n)}Iterator(e,n){return c9(e,n)}Parameters(e,n){return nve(e,n)}Promise(e,n){return w6(e,n)}RegExp(e,n){return ive(e,n)}ReturnType(e,n){return sve(e,n)}Symbol(e){return N6(e)}Undefined(e){return k6(e)}Uint8Array(e){return Q6(e)}Void(e){return cve(e)}}});var Me,Rer=I(()=>{yGt();Ser();_er();Me=IGt});var uve={};qo(uve,{Any:()=>G2,Argument:()=>fRe,Array:()=>r9,AsyncIterator:()=>i9,Awaited:()=>p9,BigInt:()=>l9,Boolean:()=>v6,Capitalize:()=>XRe,Clone:()=>JA,CloneRest:()=>Als,CloneType:()=>SZ,Composite:()=>TRe,Const:()=>VRe,Constructor:()=>s9,ConstructorParameters:()=>MRe,CreateType:()=>Zr,Date:()=>x6,Enum:()=>GRe,Exclude:()=>h9,ExcludeFromMappedResult:()=>zMt,ExcludeFromTemplateLiteral:()=>YMt,Extends:()=>m9,ExtendsCheck:()=>g9,ExtendsFromMappedKey:()=>ZMt,ExtendsFromMappedResult:()=>PMt,ExtendsResolverError:()=>EXe,ExtendsResult:()=>zr,ExtendsUndefinedCheck:()=>DF,Extract:()=>f9,ExtractFromMappedResult:()=>$Mt,ExtractFromTemplateLiteral:()=>KMt,FormatRegistry:()=>lS,FromTypes:()=>lae,Function:()=>oB,Hint:()=>sS,Increment:()=>Nls,Index:()=>L2,IndexFromComputed:()=>wcs,IndexFromMappedKey:()=>IMt,IndexFromMappedResult:()=>bMt,IndexFromPropertyKey:()=>yMt,IndexFromPropertyKeys:()=>iae,IndexPropertyKeys:()=>uS,InstanceType:()=>URe,Instantiate:()=>WRe,Integer:()=>ZRe,Intersect:()=>ZE,IntersectEvaluated:()=>SRe,Intrinsic:()=>H1,IntrinsicFromMappedKey:()=>nGt,IsTemplateLiteralExpressionFinite:()=>kZ,IsTemplateLiteralFinite:()=>yRe,Iterator:()=>c9,JavaScriptTypeBuilder:()=>XXe,JsonTypeBuilder:()=>cae,KeyOf:()=>A9,KeyOfFromMappedResult:()=>QMt,KeyOfPattern:()=>QF,KeyOfPropertyEntries:()=>xRe,KeyOfPropertyKeys:()=>gS,KeyOfPropertyKeysToRest:()=>I7n,Kind:()=>Fr,KindGuard:()=>M2,Literal:()=>kc,Lowercase:()=>YRe,Mapped:()=>vRe,MappedFunctionReturnType:()=>p7n,MappedKey:()=>Kls,MappedResult:()=>Vu,Module:()=>eve,Never:()=>Ol,Not:()=>tve,Null:()=>T6,Number:()=>cS,Object:()=>yu,Omit:()=>Z2,OmitFromMappedKey:()=>aGt,OmitFromMappedResult:()=>iGt,Optional:()=>WE,OptionalFromMappedResult:()=>wMt,OptionalKind:()=>Lb,Parameters:()=>nve,Partial:()=>E9,PartialFromMappedResult:()=>mGt,PatternBoolean:()=>eXe,PatternBooleanExact:()=>kls,PatternNever:()=>Tqn,PatternNeverExact:()=>sMt,PatternNumber:()=>Hse,PatternNumberExact:()=>t9,PatternString:()=>tXe,PatternStringExact:()=>n9,Pick:()=>X2,PickFromMappedKey:()=>pGt,PickFromMappedResult:()=>cGt,Promise:()=>w6,Readonly:()=>my,ReadonlyFromMappedResult:()=>RMt,ReadonlyKind:()=>G1,ReadonlyOptional:()=>F6,Record:()=>M6,RecordKey:()=>tGt,RecordPattern:()=>LRe,RecordValue:()=>PRe,Recursive:()=>rve,Ref:()=>AS,RegExp:()=>ive,Required:()=>b9,RequiredFromMappedResult:()=>EGt,Rest:()=>ove,ReturnType:()=>sve,SetComplement:()=>Jls,SetDistinct:()=>aMt,SetIncludes:()=>nXe,SetIntersect:()=>Dqn,SetIntersectMany:()=>lMt,SetIsSubset:()=>Xls,SetUnion:()=>Yls,SetUnionMany:()=>cMt,String:()=>Pb,Symbol:()=>N6,TModule:()=>QXe,TemplateLiteral:()=>B6,TemplateLiteralExpressionGenerate:()=>nae,TemplateLiteralFiniteError:()=>sXe,TemplateLiteralGenerate:()=>R6,TemplateLiteralGenerateError:()=>aXe,TemplateLiteralParse:()=>S6,TemplateLiteralParseExact:()=>_6,TemplateLiteralParserError:()=>bRe,TemplateLiteralPattern:()=>cXe,TemplateLiteralPatternError:()=>lXe,TemplateLiteralSyntax:()=>hMt,TemplateLiteralToUnion:()=>FZ,Transform:()=>ave,TransformDecodeBuilder:()=>LXe,TransformEncodeBuilder:()=>PXe,TransformKind:()=>bg,Tuple:()=>pS,Type:()=>Me,TypeBoxError:()=>_a,TypeGuard:()=>$n,TypeRegistry:()=>PE,Uint8Array:()=>Q6,Uncapitalize:()=>JRe,Undefined:()=>k6,Union:()=>Cu,UnionEvaluated:()=>U2,Unknown:()=>Y_,Unsafe:()=>U6,Uppercase:()=>zRe,ValueGuard:()=>py,Void:()=>cve});var cl=I(()=>{jVt();$O();jg();oMt();xqn();mRe();I6();hRe();fs();$se();qse();rXe();eae();wRe();rae();IRe();AXe();mXe();tae();hXe();NRe();fXe();_Xe();D6();vXe();NZ();P2();BXe();wXe();xXe();sB();oae();TXe();Y1();VI();DXe();qf();ff();FXe();kRe();QZ();dS();HRe();kF();VXe();jRe();KRe();_Re();VZ();ORe();aae();MXe();d9();GXe();$Re();UXe();OXe();fer();ber();DZ();QRe();O2();WXe();u9();FRe();DRe();Ah();MZ();lve();ZXe();Rer()});function eAs(t,e){return(n,r,i)=>{if(n.api!==t)throw new Error(`Mismatched api: ${n.api} expected ${t}`);return e(n,r,i)}}function tAs(t,e){return(n,r,i)=>{if(n.api!==t)throw new Error(`Mismatched api: ${n.api} expected ${t}`);return e(n,r,i)}}function C9(t,e){uae.set(t.api,{provider:{api:t.api,stream:eAs(t.api,t.stream),streamSimple:tAs(t.api,t.streamSimple)},sourceId:e})}function SGt(t){return uae.get(t)?.provider}function nAs(){return Array.from(uae.values(),t=>t.provider)}function _Gt(t){for(let[e,n]of uae.entries())n.sourceId===t&&uae.delete(e)}function RGt(){uae.clear()}var uae,dve=I(()=>{"use strict";uae=new Map});function lB(t){if(process.versions?.bun&&!(typeof process>"u")&&!(Object.keys(process.env).length>0)){if(YXe===null){YXe=new Map;try{let{readFileSync:e}=Bt("node:fs"),n=e("/proc/self/environ","utf-8");for(let r of n.split("\0")){let i=r.indexOf("=");i>0&&YXe.set(r.slice(0,i),r.slice(i+1))}}catch{}}return YXe.get(t)}}function sAs(){if(pve===null){if(!JXe||!BGt||!wGt)return typeof process<"u"&&(process.versions?.node||process.versions?.bun)||(pve=!1),!1;let t=process.env.GOOGLE_APPLICATION_CREDENTIALS||lB("GOOGLE_APPLICATION_CREDENTIALS");t?pve=JXe(t):pve=JXe(wGt(BGt(),".config","gcloud","application_default_credentials.json"))}return pve}function aAs(t){if(t==="github-copilot")return["COPILOT_GITHUB_TOKEN","GH_TOKEN","GITHUB_TOKEN"];if(t==="anthropic")return["ANTHROPIC_OAUTH_TOKEN","ANTHROPIC_API_KEY"];let n={openai:"OPENAI_API_KEY","azure-openai-responses":"AZURE_OPENAI_API_KEY",deepseek:"DEEPSEEK_API_KEY",google:"GEMINI_API_KEY","google-vertex":"GOOGLE_CLOUD_API_KEY",groq:"GROQ_API_KEY",cerebras:"CEREBRAS_API_KEY",xai:"XAI_API_KEY",openrouter:"OPENROUTER_API_KEY","vercel-ai-gateway":"AI_GATEWAY_API_KEY",zai:"ZAI_API_KEY",mistral:"MISTRAL_API_KEY",minimax:"MINIMAX_API_KEY","minimax-cn":"MINIMAX_CN_API_KEY",moonshotai:"MOONSHOT_API_KEY","moonshotai-cn":"MOONSHOT_API_KEY",huggingface:"HF_TOKEN",fireworks:"FIREWORKS_API_KEY",opencode:"OPENCODE_API_KEY","opencode-go":"OPENCODE_API_KEY","kimi-coding":"KIMI_API_KEY","cloudflare-workers-ai":"CLOUDFLARE_API_KEY","cloudflare-ai-gateway":"CLOUDFLARE_API_KEY",xiaomi:"XIAOMI_API_KEY","xiaomi-token-plan-cn":"XIAOMI_TOKEN_PLAN_CN_API_KEY","xiaomi-token-plan-ams":"XIAOMI_TOKEN_PLAN_AMS_API_KEY","xiaomi-token-plan-sgp":"XIAOMI_TOKEN_PLAN_SGP_API_KEY"}[t];return n?[n]:void 0}function ver(t){let e=aAs(t);if(!e)return;let n=e.filter(r=>!!process.env[r]||!!lB(r));return n.length>0?n:void 0}function Dp(t){let e=ver(t);if(e?.[0])return process.env[e[0]]||lB(e[0]);if(t==="google-vertex"){let n=sAs(),r=!!(process.env.GOOGLE_CLOUD_PROJECT||process.env.GCLOUD_PROJECT||lB("GOOGLE_CLOUD_PROJECT")||lB("GCLOUD_PROJECT")),i=!!(process.env.GOOGLE_CLOUD_LOCATION||lB("GOOGLE_CLOUD_LOCATION"));if(n&&r&&i)return"<authenticated>"}if(t==="amazon-bedrock"&&(process.env.AWS_PROFILE||process.env.AWS_ACCESS_KEY_ID&&process.env.AWS_SECRET_ACCESS_KEY||process.env.AWS_BEARER_TOKEN_BEDROCK||process.env.AWS_CONTAINER_CREDENTIALS_RELATIVE_URI||process.env.AWS_CONTAINER_CREDENTIALS_FULL_URI||process.env.AWS_WEB_IDENTITY_TOKEN_FILE||lB("AWS_PROFILE")||lB("AWS_ACCESS_KEY_ID")&&lB("AWS_SECRET_ACCESS_KEY")||lB("AWS_BEARER_TOKEN_BEDROCK")||lB("AWS_CONTAINER_CREDENTIALS_RELATIVE_URI")||lB("AWS_CONTAINER_CREDENTIALS_FULL_URI")||lB("AWS_WEB_IDENTITY_TOKEN_FILE")))return"<authenticated>"}var JXe,BGt,wGt,vGt,rAs,iAs,oAs,YXe,pve,FF=I(()=>{"use strict";JXe=null,BGt=null,wGt=null,vGt=t=>import(t),rAs="node:fs",iAs="node:os",oAs="node:path";typeof process<"u"&&(process.versions?.node||process.versions?.bun)&&(vGt(rAs).then(t=>{JXe=t.existsSync}),vGt(iAs).then(t=>{BGt=t.homedir}),vGt(oAs).then(t=>{wGt=t.join}));YXe=null;pve=null});var Ber,wer=I(()=>{"use strict";Ber={"amazon-bedrock":{"amazon.nova-2-lite-v1:0":{id:"amazon.nova-2-lite-v1:0",name:"Nova 2 Lite",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:.33,output:2.75,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"amazon.nova-lite-v1:0":{id:"amazon.nova-lite-v1:0",name:"Nova Lite",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.06,output:.24,cacheRead:.015,cacheWrite:0},contextWindow:3e5,maxTokens:8192},"amazon.nova-micro-v1:0":{id:"amazon.nova-micro-v1:0",name:"Nova Micro",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.035,output:.14,cacheRead:.00875,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"amazon.nova-pro-v1:0":{id:"amazon.nova-pro-v1:0",name:"Nova Pro",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.8,output:3.2,cacheRead:.2,cacheWrite:0},contextWindow:3e5,maxTokens:8192},"anthropic.claude-fable-5":{id:"anthropic.claude-fable-5",name:"Claude Fable 5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic.claude-haiku-4-5-20251001-v1:0":{id:"anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"anthropic.claude-opus-4-1-20250805-v1:0":{id:"anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},contextWindow:2e5,maxTokens:32e3},"anthropic.claude-opus-4-5-20251101-v1:0":{id:"anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"anthropic.claude-opus-4-6-v1":{id:"anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic.claude-opus-4-7":{id:"anthropic.claude-opus-4-7",name:"Claude Opus 4.7",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic.claude-opus-4-8":{id:"anthropic.claude-opus-4-8",name:"Claude Opus 4.8",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic.claude-opus-5":{id:"anthropic.claude-opus-5",name:"Claude Opus 5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"anthropic.claude-sonnet-4-6":{id:"anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"anthropic.claude-sonnet-5":{id:"anthropic.claude-sonnet-5",name:"Claude Sonnet 5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"au.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"au.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (AU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"au.anthropic.claude-opus-4-6-v1":{id:"au.anthropic.claude-opus-4-6-v1",name:"AU Anthropic Claude Opus 4.6",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:16.5,output:82.5,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"au.anthropic.claude-opus-4-8":{id:"au.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (AU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"au.anthropic.claude-opus-5":{id:"au.anthropic.claude-opus-5",name:"Claude Opus 5 (AU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"au.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"au.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (AU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"au.anthropic.claude-sonnet-4-6":{id:"au.anthropic.claude-sonnet-4-6",name:"AU Anthropic Claude Sonnet 4.6",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3.3,output:16.5,cacheRead:.33,cacheWrite:4.125},contextWindow:1e6,maxTokens:128e3},"au.anthropic.claude-sonnet-5":{id:"au.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (AU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"deepseek.r1-v1:0":{id:"deepseek.r1-v1:0",name:"DeepSeek-R1",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:32768},"deepseek.v3-v1:0":{id:"deepseek.v3-v1:0",name:"DeepSeek-V3.1",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.58,output:1.68,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:81920},"deepseek.v3.2":{id:"deepseek.v3.2",name:"DeepSeek-V3.2",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.62,output:1.85,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:81920},"eu.anthropic.claude-fable-5":{id:"eu.anthropic.claude-fable-5",name:"Claude Fable 5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:11,output:55,cacheRead:1.1,cacheWrite:13.75},contextWindow:1e6,maxTokens:128e3},"eu.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"eu.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1.1,output:5.5,cacheRead:.11,cacheWrite:1.375},contextWindow:2e5,maxTokens:64e3},"eu.anthropic.claude-opus-4-5-20251101-v1:0":{id:"eu.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:27.5,cacheRead:.55,cacheWrite:6.875},contextWindow:2e5,maxTokens:64e3},"eu.anthropic.claude-opus-4-6-v1":{id:"eu.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:27.5,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"eu.anthropic.claude-opus-4-7":{id:"eu.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:27.5,cacheRead:.55,cacheWrite:6.875},contextWindow:1e6,maxTokens:128e3},"eu.anthropic.claude-opus-4-8":{id:"eu.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:27.5,cacheRead:.55,cacheWrite:6.875},contextWindow:1e6,maxTokens:128e3},"eu.anthropic.claude-opus-5":{id:"eu.anthropic.claude-opus-5",name:"Claude Opus 5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:27.5,cacheRead:.55,cacheWrite:6.875},contextWindow:1e6,maxTokens:128e3},"eu.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"eu.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3.3,output:16.5,cacheRead:.33,cacheWrite:4.125},contextWindow:2e5,maxTokens:64e3},"eu.anthropic.claude-sonnet-4-6":{id:"eu.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3.3,output:16.5,cacheRead:.33,cacheWrite:4.125},contextWindow:1e6,maxTokens:64e3},"eu.anthropic.claude-sonnet-5":{id:"eu.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (EU)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2.2,output:11,cacheRead:.22,cacheWrite:2.75},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-fable-5":{id:"global.anthropic.claude-fable-5",name:"Claude Fable 5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"global.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"global.anthropic.claude-opus-4-5-20251101-v1:0":{id:"global.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"global.anthropic.claude-opus-4-6-v1":{id:"global.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-opus-4-7":{id:"global.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-opus-4-8":{id:"global.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-opus-5":{id:"global.anthropic.claude-opus-5",name:"Claude Opus 5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"global.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"global.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"global.anthropic.claude-sonnet-4-6":{id:"global.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"global.anthropic.claude-sonnet-5":{id:"global.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"global.openai.gpt-5.6-luna":{id:"global.openai.gpt-5.6-luna",name:"GPT-5.6 Luna (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:.22,output:1.32,cacheRead:.022,cacheWrite:.275},contextWindow:105e4,maxTokens:128e3},"global.openai.gpt-5.6-sol":{id:"global.openai.gpt-5.6-sol",name:"GPT-5.6 Sol (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:33,cacheRead:.55,cacheWrite:6.875},contextWindow:105e4,maxTokens:128e3},"global.openai.gpt-5.6-terra":{id:"global.openai.gpt-5.6-terra",name:"GPT-5.6 Terra (Global)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2.2,output:13.2,cacheRead:.22,cacheWrite:2.75},contextWindow:105e4,maxTokens:128e3},"google.gemma-3-27b-it":{id:"google.gemma-3-27b-it",name:"Google Gemma 3 27B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.12,output:.2,cacheRead:0,cacheWrite:0},contextWindow:202752,maxTokens:8192},"google.gemma-3-4b-it":{id:"google.gemma-3-4b-it",name:"Gemma 3 4B IT",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.04,output:.08,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"jp.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"jp.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"jp.anthropic.claude-opus-4-7":{id:"jp.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"jp.anthropic.claude-opus-4-8":{id:"jp.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"jp.anthropic.claude-opus-5":{id:"jp.anthropic.claude-opus-5",name:"Claude Opus 5 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"jp.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"jp.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"jp.anthropic.claude-sonnet-4-6":{id:"jp.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"jp.anthropic.claude-sonnet-5":{id:"jp.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (JP)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"meta.llama3-1-70b-instruct-v1:0":{id:"meta.llama3-1-70b-instruct-v1:0",name:"Llama 3.1 70B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.72,output:.72,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"meta.llama3-1-8b-instruct-v1:0":{id:"meta.llama3-1-8b-instruct-v1:0",name:"Llama 3.1 8B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.22,output:.22,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"meta.llama3-3-70b-instruct-v1:0":{id:"meta.llama3-3-70b-instruct-v1:0",name:"Llama 3.3 70B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.72,output:.72,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"meta.llama4-maverick-17b-instruct-v1:0":{id:"meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.24,output:.97,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:16384},"meta.llama4-scout-17b-instruct-v1:0":{id:"meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.17,output:.66,cacheRead:0,cacheWrite:0},contextWindow:35e5,maxTokens:16384},"minimax.minimax-m2":{id:"minimax.minimax-m2",name:"MiniMax M2",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:204608,maxTokens:128e3},"minimax.minimax-m2.1":{id:"minimax.minimax-m2.1",name:"MiniMax M2.1",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax.minimax-m2.5":{id:"minimax.minimax-m2.5",name:"MiniMax M2.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:196608,maxTokens:98304},"mistral.devstral-2-123b":{id:"mistral.devstral-2-123b",name:"Devstral 2 123B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:8192},"mistral.magistral-small-2509":{id:"mistral.magistral-small-2509",name:"Magistral Small 1.2",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e4},"mistral.ministral-3-14b-instruct":{id:"mistral.ministral-3-14b-instruct",name:"Ministral 14B 3.0",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.2,output:.2,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"mistral.ministral-3-3b-instruct":{id:"mistral.ministral-3-3b-instruct",name:"Ministral 3 3B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.1,output:.1,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:8192},"mistral.ministral-3-8b-instruct":{id:"mistral.ministral-3-8b-instruct",name:"Ministral 3 8B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"mistral.mistral-large-3-675b-instruct":{id:"mistral.mistral-large-3-675b-instruct",name:"Mistral Large 3",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:8192},"mistral.pixtral-large-2502-v1:0":{id:"mistral.pixtral-large-2502-v1:0",name:"Pixtral Large (25.02)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:2,output:6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"mistral.voxtral-mini-3b-2507":{id:"mistral.voxtral-mini-3b-2507",name:"Voxtral Mini 3B 2507",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.04,output:.04,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"mistral.voxtral-small-24b-2507":{id:"mistral.voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.15,output:.35,cacheRead:0,cacheWrite:0},contextWindow:32e3,maxTokens:8192},"moonshot.kimi-k2-thinking":{id:"moonshot.kimi-k2-thinking",name:"Kimi K2 Thinking",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.6,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:262143,maxTokens:16e3},"moonshotai.kimi-k2.5":{id:"moonshotai.kimi-k2.5",name:"Kimi K2.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:.6,output:3,cacheRead:0,cacheWrite:0},contextWindow:262143,maxTokens:16e3},"nvidia.nemotron-nano-12b-v2":{id:"nvidia.nemotron-nano-12b-v2",name:"NVIDIA Nemotron Nano 12B v2 VL BF16",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.2,output:.6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"nvidia.nemotron-nano-3-30b":{id:"nvidia.nemotron-nano-3-30b",name:"NVIDIA Nemotron Nano 3 30B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.06,output:.24,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"nvidia.nemotron-nano-9b-v2":{id:"nvidia.nemotron-nano-9b-v2",name:"NVIDIA Nemotron Nano 9B v2",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.06,output:.23,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"nvidia.nemotron-super-3-120b":{id:"nvidia.nemotron-super-3-120b",name:"NVIDIA Nemotron 3 Super 120B A12B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.15,output:.65,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"openai.gpt-5.4":{id:"openai.gpt-5.4",name:"GPT-5.4",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2.75,output:16.5,cacheRead:.275,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"openai.gpt-5.5":{id:"openai.gpt-5.5",name:"GPT-5.5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:33,cacheRead:.55,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"openai.gpt-5.6-luna":{id:"openai.gpt-5.6-luna",name:"GPT-5.6 Luna",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:.22,output:1.32,cacheRead:.022,cacheWrite:.275},contextWindow:105e4,maxTokens:128e3},"openai.gpt-5.6-sol":{id:"openai.gpt-5.6-sol",name:"GPT-5.6 Sol",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5.5,output:33,cacheRead:.55,cacheWrite:6.875},contextWindow:105e4,maxTokens:128e3},"openai.gpt-5.6-terra":{id:"openai.gpt-5.6-terra",name:"GPT-5.6 Terra",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2.2,output:13.2,cacheRead:.22,cacheWrite:2.75},contextWindow:105e4,maxTokens:128e3},"openai.gpt-oss-120b":{id:"openai.gpt-oss-120b",name:"gpt-oss-120b",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai.gpt-oss-120b-1:0":{id:"openai.gpt-oss-120b-1:0",name:"gpt-oss-120b",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai.gpt-oss-20b":{id:"openai.gpt-oss-20b",name:"gpt-oss-20b",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.07,output:.3,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai.gpt-oss-20b-1:0":{id:"openai.gpt-oss-20b-1:0",name:"gpt-oss-20b",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.07,output:.3,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai.gpt-oss-safeguard-120b":{id:"openai.gpt-oss-safeguard-120b",name:"GPT OSS Safeguard 120B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai.gpt-oss-safeguard-20b":{id:"openai.gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.07,output:.2,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"qwen.qwen3-235b-a22b-2507-v1:0":{id:"qwen.qwen3-235b-a22b-2507-v1:0",name:"Qwen3 235B A22B 2507",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.22,output:.88,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"qwen.qwen3-32b-v1:0":{id:"qwen.qwen3-32b-v1:0",name:"Qwen3 32B (dense)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:16384,maxTokens:16384},"qwen.qwen3-coder-30b-a3b-v1:0":{id:"qwen.qwen3-coder-30b-a3b-v1:0",name:"Qwen3 Coder 30B A3B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"qwen.qwen3-coder-480b-a35b-v1:0":{id:"qwen.qwen3-coder-480b-a35b-v1:0",name:"Qwen3 Coder 480B A35B Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.22,output:1.8,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"qwen.qwen3-coder-next":{id:"qwen.qwen3-coder-next",name:"Qwen3 Coder Next",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.22,output:1.8,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"qwen.qwen3-next-80b-a3b":{id:"qwen.qwen3-next-80b-a3b",name:"Qwen/Qwen3-Next-80B-A3B-Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text"],cost:{input:.14,output:1.4,cacheRead:0,cacheWrite:0},contextWindow:262e3,maxTokens:262e3},"qwen.qwen3-vl-235b-a22b":{id:"qwen.qwen3-vl-235b-a22b",name:"Qwen/Qwen3-VL-235B-A22B-Instruct",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.3,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:262e3,maxTokens:262e3},"us.anthropic.claude-fable-5":{id:"us.anthropic.claude-fable-5",name:"Claude Fable 5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"us.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"us.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"us.anthropic.claude-opus-4-1-20250805-v1:0":{id:"us.anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},contextWindow:2e5,maxTokens:32e3},"us.anthropic.claude-opus-4-5-20251101-v1:0":{id:"us.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"us.anthropic.claude-opus-4-6-v1":{id:"us.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"us.anthropic.claude-opus-4-7":{id:"us.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"us.anthropic.claude-opus-4-8":{id:"us.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"us.anthropic.claude-opus-5":{id:"us.anthropic.claude-opus-5",name:"Claude Opus 5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"us.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"us.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"us.anthropic.claude-sonnet-4-6":{id:"us.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"us.anthropic.claude-sonnet-5":{id:"us.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"us.deepseek.r1-v1:0":{id:"us.deepseek.r1-v1:0",name:"DeepSeek-R1 (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:32768},"us.meta.llama4-maverick-17b-instruct-v1:0":{id:"us.meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.24,output:.97,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:16384},"us.meta.llama4-scout-17b-instruct-v1:0":{id:"us.meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct (US)",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!1,input:["text","image"],cost:{input:.17,output:.66,cacheRead:0,cacheWrite:0},contextWindow:35e5,maxTokens:16384},"writer.palmyra-x4-v1:0":{id:"writer.palmyra-x4-v1:0",name:"Palmyra X4",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:2.5,output:10,cacheRead:0,cacheWrite:0},contextWindow:122880,maxTokens:8192},"writer.palmyra-x5-v1:0":{id:"writer.palmyra-x5-v1:0",name:"Palmyra X5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.6,output:6,cacheRead:0,cacheWrite:0},contextWindow:104e4,maxTokens:8192},"xai.grok-4.3":{id:"xai.grok-4.3",name:"Grok 4.3",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"xai.grok-4.6":{id:"xai.grok-4.6",name:"Grok 4.6",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text","image"],cost:{input:2.2,output:6.6,cacheRead:.55,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"zai.glm-4.7":{id:"zai.glm-4.7",name:"GLM-4.7",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"zai.glm-4.7-flash":{id:"zai.glm-4.7-flash",name:"GLM-4.7-Flash",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:.07,output:.4,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:131072},"zai.glm-5":{id:"zai.glm-5",name:"GLM-5",api:"bedrock-converse-stream",provider:"amazon-bedrock",baseUrl:"https://bedrock-runtime.us-east-1.amazonaws.com",reasoning:!0,input:["text"],cost:{input:1,output:3.2,cacheRead:0,cacheWrite:0},contextWindow:202752,maxTokens:101376}},anthropic:{"claude-fable-5":{id:"claude-fable-5",name:"Claude Fable 5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"claude-haiku-4-5":{id:"claude-haiku-4-5",name:"Claude Haiku 4.5 (latest)",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"claude-haiku-4-5-20251001":{id:"claude-haiku-4-5-20251001",name:"Claude Haiku 4.5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-5":{id:"claude-opus-4-5",name:"Claude Opus 4.5 (latest)",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-5-20251101":{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-4-8":{id:"claude-opus-4-8",name:"Claude Opus 4.8",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-5":{id:"claude-opus-5",name:"Claude Opus 5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5 (latest)",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"claude-sonnet-4-5-20250929":{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet 4.5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:128e3},"claude-sonnet-5":{id:"claude-sonnet-5",name:"Claude Sonnet 5",api:"anthropic-messages",provider:"anthropic",baseUrl:"https://api.anthropic.com",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3}},"azure-openai-responses":{"gpt-4":{id:"gpt-4",name:"GPT-4",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text"],cost:{input:30,output:60,cacheRead:0,cacheWrite:0},contextWindow:8192,maxTokens:8192},"gpt-4-turbo":{id:"gpt-4-turbo",name:"GPT-4 Turbo",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:10,output:30,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:.4,output:1.6,cacheRead:.1,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4.1-nano":{id:"gpt-4.1-nano",name:"GPT-4.1 nano",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:.1,output:.4,cacheRead:.025,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4o":{id:"gpt-4o",name:"GPT-4o",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-2024-05-13":{id:"gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:5,output:15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"gpt-4o-2024-08-06":{id:"gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-2024-11-20":{id:"gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-mini":{id:"gpt-4o-mini",name:"GPT-4o mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5":{id:"gpt-5",name:"GPT-5",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-chat-latest":{id:"gpt-5-chat-latest",name:"GPT-5 Chat Latest",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.025,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:.05,output:.4,cacheRead:.005,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-pro":{id:"gpt-5-pro",name:"GPT-5 Pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:15,output:120,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:272e3},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.25,output:5,cacheRead:.125,cacheWrite:1.25},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2-chat-latest":{id:"gpt-5.2-chat-latest",name:"GPT-5.2 Chat",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5.2-pro":{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:21,output:168,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-chat-latest":{id:"gpt-5.3-chat-latest",name:"GPT-5.3 Chat (latest)",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!1,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:32e3},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.6":{id:"gpt-5.6",name:"GPT-5.6",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:6.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-luna":{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-sol":{id:"gpt-5.6-sol",name:"GPT-5.6 Sol",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:6.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-terra":{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"gpt-realtime-2.1":{id:"gpt-realtime-2.1",name:"GPT-Realtime-2.1",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:4,output:24,cacheRead:.4,cacheWrite:0},contextWindow:128e3,maxTokens:32e3},o1:{id:"o1",name:"o1",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:15,output:60,cacheRead:7.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o1-pro":{id:"o1-pro",name:"o1-pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:150,output:600,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},o3:{id:"o3",name:"o3",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o3-mini":{id:"o3-mini",name:"o3-mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text"],cost:{input:1.1,output:4.4,cacheRead:.55,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o3-pro":{id:"o3-pro",name:"o3-pro",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:20,output:80,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o4-mini":{id:"o4-mini",name:"o4-mini",api:"azure-openai-responses",provider:"azure-openai-responses",baseUrl:"",reasoning:!0,input:["text","image"],cost:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5}},cerebras:{"gemma-4-31b":{id:"gemma-4-31b",name:"Gemma 4 31B IT",api:"openai-completions",provider:"cerebras",baseUrl:"https://api.cerebras.ai/v1",reasoning:!0,input:["text","image"],cost:{input:.99,output:1.49,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:40960},"gpt-oss-120b":{id:"gpt-oss-120b",name:"GPT OSS 120B",api:"openai-completions",provider:"cerebras",baseUrl:"https://api.cerebras.ai/v1",reasoning:!0,input:["text"],cost:{input:.35,output:.75,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:40960}},"github-copilot":{"claude-fable-5":{id:"claude-fable-5",name:"Claude Fable 5",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"claude-haiku-4.5":{id:"claude-haiku-4.5",name:"Claude Haiku 4.5 (latest)",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4.5":{id:"claude-opus-4.5",name:"Claude Opus 4.5 (latest)",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:32e3},"claude-opus-4.6":{id:"claude-opus-4.6",name:"Claude Opus 4.6",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:32e3},"claude-opus-4.7":{id:"claude-opus-4.7",name:"Claude Opus 4.7",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:32e3},"claude-opus-4.8":{id:"claude-opus-4.8",name:"Claude Opus 4.8",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-5":{id:"claude-opus-5",name:"Claude Opus 5",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:64e3},"claude-sonnet-4":{id:"claude-sonnet-4",name:"Claude Sonnet 4 (latest)",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:216e3,maxTokens:16e3},"claude-sonnet-4.5":{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5 (latest)",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:32e3},"claude-sonnet-4.6":{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6",api:"anthropic-messages",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:32e3},"claude-sonnet-5":{id:"claude-sonnet-5",name:"Claude Sonnet 5",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:2e5,maxTokens:64e3},"gemini-3.6-flash":{id:"gemini-3.6-flash",name:"Gemini 3.6 Flash",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"gemini-3.7-flash":{id:"gemini-3.7-flash",name:"Gemini 3.7 Flash",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:.75,output:3.75,cacheRead:.075,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!1,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.025,cacheWrite:0},contextWindow:264e3,maxTokens:64e3},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:.2,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-luna":{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-sol":{id:"gpt-5.6-sol",name:"GPT-5.6 Sol",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:6.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-terra":{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",api:"openai-responses",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"grok-4.5":{id:"grok-4.5",name:"Grok 4.5",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:128e3},"grok-4.6":{id:"grok-4.6",name:"Grok 4.6",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:128e3},"kimi-k2.7-code":{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.19,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"kimi-k3":{id:"kimi-k3",name:"Kimi K3",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"mai-code-1-flash-picker":{id:"mai-code-1-flash-picker",name:"MAI-Code-1-Flash",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:256e3,maxTokens:128e3},"mai-code-1.1-flash":{id:"mai-code-1.1-flash",name:"MAI-Code-1.1-Flash",api:"openai-completions",provider:"github-copilot",baseUrl:"https://api.individual.githubcopilot.com",headers:{"User-Agent":"GitHubCopilotChat/0.35.0","Editor-Version":"vscode/1.107.0","Editor-Plugin-Version":"copilot-chat/0.35.0","Copilot-Integration-Id":"vscode-chat"},compat:{supportsStore:!1,supportsDeveloperRole:!1,supportsReasoningEffort:!1},reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:0},contextWindow:256e3,maxTokens:128e3}},google:{"deep-research-max-preview-04-2026":{id:"deep-research-max-preview-04-2026",name:"Deep Research Max Preview (Apr-21-2026)",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:131072,maxTokens:65536},"deep-research-preview-04-2026":{id:"deep-research-preview-04-2026",name:"Deep Research Preview (Apr-21-2026)",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:131072,maxTokens:65536},"gemini-2.5-computer-use-preview-10-2025":{id:"gemini-2.5-computer-use-preview-10-2025",name:"Gemini 2.5 Computer Use Preview 10-2025",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.1,output:.4,cacheRead:.01,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.05,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.025,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-flash-lite-image":{id:"gemini-3.1-flash-lite-image",name:"Nano Banana 2 Lite",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.25,output:30,cacheRead:0,cacheWrite:0},contextWindow:65536,maxTokens:65536},"gemini-3.1-flash-lite-preview":{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.025,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-flash-live-preview":{id:"gemini-3.1-flash-live-preview",name:"Gemini 3.1 Flash Live Preview",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.5-flash-lite":{id:"gemini-3.5-flash-lite",name:"Gemini 3.5 Flash Lite",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.6-flash":{id:"gemini-3.6-flash",name:"Gemini 3.6 Flash",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.7-flash":{id:"gemini-3.7-flash",name:"Gemini 3.7 Flash",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.75,output:3.75,cacheRead:.075,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.025,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-robotics-er-1.6-preview":{id:"gemini-robotics-er-1.6-preview",name:"Gemini Robotics-ER 1.6 Preview",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"gemma-4-26b-a4b-it":{id:"gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"gemma-4-31b-it":{id:"gemma-4-31b-it",name:"Gemma 4 31B IT",api:"google-generative-ai",provider:"google",baseUrl:"https://generativelanguage.googleapis.com/v1beta",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768}},"google-antigravity":{"claude-opus-4-5-thinking":{id:"claude-opus-4-5-thinking",name:"Claude Opus 4.5 Thinking (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-6-thinking":{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 Thinking (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:128e3},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5 (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"claude-sonnet-4-5-thinking":{id:"claude-sonnet-4-5-thinking",name:"Claude Sonnet 4.5 Thinking (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"gemini-3-flash":{id:"gemini-3-flash",name:"Gemini 3 Flash (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.5,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"gemini-3.1-pro-high":{id:"gemini-3.1-pro-high",name:"Gemini 3.1 Pro High (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:2.375},contextWindow:1048576,maxTokens:65535},"gemini-3.1-pro-low":{id:"gemini-3.1-pro-low",name:"Gemini 3.1 Pro Low (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:2.375},contextWindow:1048576,maxTokens:65535},"gpt-oss-120b-medium":{id:"gpt-oss-120b-medium",name:"GPT-OSS 120B Medium (Antigravity)",api:"google-gemini-cli",provider:"google-antigravity",baseUrl:"https://daily-cloudcode-pa.sandbox.googleapis.com",reasoning:!1,input:["text"],cost:{input:.09,output:.36,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768}},"google-gemini-cli":{"gemini-2.0-flash":{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:8192},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"gemini-3-pro-preview":{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview (Cloud Code Assist)",api:"google-gemini-cli",provider:"google-gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65535}},"google-vertex":{"gemini-1.5-flash":{id:"gemini-1.5-flash",name:"Gemini 1.5 Flash (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:.075,output:.3,cacheRead:.01875,cacheWrite:0},contextWindow:1e6,maxTokens:8192},"gemini-1.5-flash-8b":{id:"gemini-1.5-flash-8b",name:"Gemini 1.5 Flash-8B (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:.0375,output:.15,cacheRead:.01,cacheWrite:0},contextWindow:1e6,maxTokens:8192},"gemini-1.5-pro":{id:"gemini-1.5-pro",name:"Gemini 1.5 Pro (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:1.25,output:5,cacheRead:.3125,cacheWrite:0},contextWindow:1e6,maxTokens:8192},"gemini-2.0-flash":{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.0375,cacheWrite:0},contextWindow:1048576,maxTokens:8192},"gemini-2.0-flash-lite":{id:"gemini-2.0-flash-lite",name:"Gemini 2.0 Flash Lite (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.075,output:.3,cacheRead:.01875,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.1,output:.4,cacheRead:.01,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-flash-lite-preview-09-2025":{id:"gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-25 (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.1,output:.4,cacheRead:.01,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.05,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3-pro-preview":{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools (Vertex)",api:"google-vertex",provider:"google-vertex",baseUrl:"https://{location}-aiplatform.googleapis.com",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1048576,maxTokens:65536}},groq:{"llama-3.1-8b-instant":{id:"llama-3.1-8b-instant",name:"Llama 3.1 8B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!1,input:["text"],cost:{input:.05,output:.08,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"llama-3.3-70b-versatile":{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!1,input:["text"],cost:{input:.59,output:.79,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!0,input:["text"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:131072,maxTokens:65536},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!0,input:["text"],cost:{input:.075,output:.3,cacheRead:.0375,cacheWrite:0},contextWindow:131072,maxTokens:65536},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"Safety GPT OSS 20B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!0,input:["text"],cost:{input:.075,output:.3,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:65536},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen3.6 27B",api:"openai-completions",provider:"groq",baseUrl:"https://api.groq.com/openai/v1",reasoning:!0,input:["text","image"],cost:{input:.6,output:3,cacheRead:.3,cacheWrite:0},contextWindow:131072,maxTokens:16384}},huggingface:{"MiniMaxAI/MiniMax-M2":{id:"MiniMaxAI/MiniMax-M2",name:"MiniMax-M2",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:128e3},"MiniMaxAI/MiniMax-M2.1":{id:"MiniMaxAI/MiniMax-M2.1",name:"MiniMax-M2.1",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.03,cacheWrite:0},contextWindow:204800,maxTokens:131072},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:131072},"MiniMaxAI/MiniMax-M3":{id:"MiniMaxAI/MiniMax-M3",name:"MiniMax-M3",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:524288,maxTokens:128e3},"Qwen/Qwen2.5-Coder-32B-Instruct":{id:"Qwen/Qwen2.5-Coder-32B-Instruct",name:"Qwen2.5-Coder-32B-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.06,output:.2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"Qwen/Qwen3-235B-A22B":{id:"Qwen/Qwen3-235B-A22B",name:"Qwen3 235B-A22B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.2,output:.8,cacheRead:0,cacheWrite:0},contextWindow:40960,maxTokens:16384},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B-A22B Instruct 2507",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.855,output:2.565,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.3,output:3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"Qwen/Qwen3-30B-A3B":{id:"Qwen/Qwen3-30B-A3B",name:"Qwen3 30B A3B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.12,output:.5,cacheRead:0,cacheWrite:0},contextWindow:40960,maxTokens:16384},"Qwen/Qwen3-32B":{id:"Qwen/Qwen3-32B",name:"Qwen3 32B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.29,output:.59,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"Qwen/Qwen3-Coder-30B-A3B-Instruct":{id:"Qwen/Qwen3-Coder-30B-A3B-Instruct",name:"Qwen3-Coder 30B-A3B Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.07,output:.26,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:2,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:66536},"Qwen/Qwen3-Coder-Next":{id:"Qwen/Qwen3-Coder-Next",name:"Qwen3-Coder-Next",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.2,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3-Next-80B-A3B-Instruct":{id:"Qwen/Qwen3-Next-80B-A3B-Instruct",name:"Qwen3-Next-80B-A3B-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.25,output:1,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:66536},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.3,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"Qwen/Qwen3-VL-235B-A22B-Instruct":{id:"Qwen/Qwen3-VL-235B-A22B-Instruct",name:"Qwen3 VL 235B A22B Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text","image"],cost:{input:.3,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"Qwen/Qwen3-VL-235B-A22B-Thinking":{id:"Qwen/Qwen3-VL-235B-A22B-Thinking",name:"Qwen3 VL 235B A22B Thinking",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.98,output:3.95,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"Qwen/Qwen3.5-122B-A10B":{id:"Qwen/Qwen3.5-122B-A10B",name:"Qwen3.5 122B-A10B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.4,output:3.2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.5-27B":{id:"Qwen/Qwen3.5-27B",name:"Qwen3.5 27B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.3,output:2.4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.5-35B-A3B":{id:"Qwen/Qwen3.5-35B-A3B",name:"Qwen3.5 35B-A3B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.6,output:3.6,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"Qwen/Qwen3.5-9B":{id:"Qwen/Qwen3.5-9B",name:"Qwen3.5 9B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.17,output:.25,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.6-27B":{id:"Qwen/Qwen3.6-27B",name:"Qwen3.6 27B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.47,output:3.19,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.6-35B-A3B":{id:"Qwen/Qwen3.6-35B-A3B",name:"Qwen3.6 35B-A3B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.15,output:.95,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"Qwen/Qwen3.8-2.4T-A95B":{id:"Qwen/Qwen3.8-2.4T-A95B",name:"Qwen3.8 2.4T A95B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:2.5,output:6.25,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"XiaomiMiMo/MiMo-V2-Flash":{id:"XiaomiMiMo/MiMo-V2-Flash",name:"MiMo-V2-Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:4096},"XiaomiMiMo/MiMo-V2.5":{id:"XiaomiMiMo/MiMo-V2.5",name:"MiMo-V2.5",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"XiaomiMiMo/MiMo-V2.5-Pro":{id:"XiaomiMiMo/MiMo-V2.5-Pro",name:"MiMo-V2.5-Pro",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:1,output:3,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"deepseek-ai/DeepSeek-R1":{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek-R1",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.7,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:64e3,maxTokens:32768},"deepseek-ai/DeepSeek-R1-0528":{id:"deepseek-ai/DeepSeek-R1-0528",name:"DeepSeek-R1-0528",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:3,output:5,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:163840},"deepseek-ai/DeepSeek-V3":{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek-V3",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.4,output:1.3,cacheRead:0,cacheWrite:0},contextWindow:64e3,maxTokens:8192},"deepseek-ai/DeepSeek-V3-0324":{id:"deepseek-ai/DeepSeek-V3-0324",name:"DeepSeek V3 0324",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.27,output:1.12,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:163840},"deepseek-ai/DeepSeek-V3.1":{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek-V3.1",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.27,output:1,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.28,output:.4,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:65536},"deepseek-ai/DeepSeek-V4-Flash":{id:"deepseek-ai/DeepSeek-V4-Flash",name:"DeepSeek V4 Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.14,output:.28,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:384e3},"deepseek-ai/DeepSeek-V4-Flash-0731":{id:"deepseek-ai/DeepSeek-V4-Flash-0731",name:"DeepSeek V4 Flash 0731",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.14,output:.28,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:384e3},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.435,output:.87,cacheRead:.003625,cacheWrite:0},contextWindow:1048576,maxTokens:393216},"deepseek-ai/DeepSeek-V4-Pro-0813":{id:"deepseek-ai/DeepSeek-V4-Pro-0813",name:"DeepSeek V4 Pro 0813",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:1.32,output:3.96,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"google/gemma-4-26B-A4B-it":{id:"google/gemma-4-26B-A4B-it",name:"Gemma 4 26B A4B IT",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.13,output:.4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"google/gemma-4-31B-it":{id:"google/gemma-4-31B-it",name:"Gemma 4 31B IT",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.14,output:.4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"meta-llama/Llama-3.1-8B-Instruct":{id:"meta-llama/Llama-3.1-8B-Instruct",name:"Llama-3.1-8B-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.06,output:.06,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:4096},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:.59,output:.79,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:4096},"moonshotai/Kimi-K2-Instruct":{id:"moonshotai/Kimi-K2-Instruct",name:"Kimi-K2-Instruct",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:1,output:3,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"moonshotai/Kimi-K2-Instruct-0905":{id:"moonshotai/Kimi-K2-Instruct-0905",name:"Kimi-K2-Instruct-0905",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!1,input:["text"],cost:{input:1,output:3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"moonshotai/Kimi-K2-Thinking":{id:"moonshotai/Kimi-K2-Thinking",name:"Kimi-K2-Thinking",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.6,output:2.5,cacheRead:.15,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.6,output:3,cacheRead:.1,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi-K2.6",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.16,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/Kimi-K2.7-Code":{id:"moonshotai/Kimi-K2.7-Code",name:"Kimi K2.7 Code",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/Kimi-K3":{id:"moonshotai/Kimi-K3",name:"Kimi K3",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.25,output:.69,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.1,output:.5,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"stepfun-ai/Step-3.5-Flash":{id:"stepfun-ai/Step-3.5-Flash",name:"Step 3.5 Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:256e3},"stepfun-ai/Step-3.7-Flash":{id:"stepfun-ai/Step-3.7-Flash",name:"Step 3.7 Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.2,output:1.15,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:256e3},"tencent/Hy3":{id:"tencent/Hy3",name:"Hy3",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.14,output:.58,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:64e3},"thinkingmachines/Inkling":{id:"thinkingmachines/Inkling",name:"Inkling",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:1,output:4.05,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:1048576},"thinkingmachines/Inkling-Small":{id:"thinkingmachines/Inkling-Small",name:"Inkling Small",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.5,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:524288,maxTokens:1048576},"zai-org/GLM-4.5":{id:"zai-org/GLM-4.5",name:"GLM-4.5",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:98304},"zai-org/GLM-4.5-Air":{id:"zai-org/GLM-4.5-Air",name:"GLM-4.5-Air",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.13,output:.85,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:98304},"zai-org/GLM-4.5V":{id:"zai-org/GLM-4.5V",name:"GLM-4.5V",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.6,output:1.8,cacheRead:0,cacheWrite:0},contextWindow:65536,maxTokens:16384},"zai-org/GLM-4.6":{id:"zai-org/GLM-4.6",name:"GLM-4.6",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.55,output:2.2,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"zai-org/GLM-4.6V-Flash":{id:"zai-org/GLM-4.6V-Flash",name:"GLM-4.6V-Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text","image"],cost:{input:.3,output:.9,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM-4.7",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:.11,cacheWrite:0},contextWindow:204800,maxTokens:131072},"zai-org/GLM-4.7-Flash":{id:"zai-org/GLM-4.7-Flash",name:"GLM-4.7-Flash",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:128e3},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:1,output:3.2,cacheRead:.2,cacheWrite:0},contextWindow:202752,maxTokens:131072},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:1,output:3.2,cacheRead:.2,cacheWrite:0},contextWindow:202752,maxTokens:131072},"zai-org/GLM-5.2":{id:"zai-org/GLM-5.2",name:"GLM-5.2",api:"openai-completions",provider:"huggingface",baseUrl:"https://router.huggingface.co/v1",compat:{supportsDeveloperRole:!1},reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072}},"kimi-coding":{k2p5:{id:"k2p5",name:"Kimi K2.5",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},k3:{id:"k3",name:"Kimi K3",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"k3-256k":{id:"k3-256k",name:"Kimi K3-256K",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"kimi-for-coding":{id:"kimi-for-coding",name:"Kimi K2.7 Code",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"kimi-for-coding-highspeed":{id:"kimi-for-coding-highspeed",name:"Kimi For Coding HighSpeed",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"kimi-k2-thinking":{id:"kimi-k2-thinking",name:"Kimi K2 Thinking",api:"anthropic-messages",provider:"kimi-coding",baseUrl:"https://api.kimi.com/coding",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768}},minimax:{"MiniMax-M2.7":{id:"MiniMax-M2.7",name:"MiniMax-M2.7",api:"anthropic-messages",provider:"minimax",baseUrl:"https://api.minimax.io/anthropic",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131072},"MiniMax-M2.7-highspeed":{id:"MiniMax-M2.7-highspeed",name:"MiniMax-M2.7-highspeed",api:"anthropic-messages",provider:"minimax",baseUrl:"https://api.minimax.io/anthropic",reasoning:!0,input:["text"],cost:{input:.6,output:2.4,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131072}},"minimax-cn":{"MiniMax-M2.7":{id:"MiniMax-M2.7",name:"MiniMax-M2.7",api:"anthropic-messages",provider:"minimax-cn",baseUrl:"https://api.minimaxi.com/anthropic",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131072},"MiniMax-M2.7-highspeed":{id:"MiniMax-M2.7-highspeed",name:"MiniMax-M2.7-highspeed",api:"anthropic-messages",provider:"minimax-cn",baseUrl:"https://api.minimaxi.com/anthropic",reasoning:!0,input:["text"],cost:{input:.6,output:2.4,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131072}},mistral:{"codestral-latest":{id:"codestral-latest",name:"Codestral (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.3,output:.9,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:4096},"devstral-2512":{id:"devstral-2512",name:"Devstral 2",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"devstral-latest":{id:"devstral-latest",name:"Devstral 2",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"devstral-medium-2507":{id:"devstral-medium-2507",name:"Devstral Medium",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"devstral-medium-latest":{id:"devstral-medium-latest",name:"Devstral 2 (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"devstral-small-2505":{id:"devstral-small-2505",name:"Devstral Small 2505",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"devstral-small-2507":{id:"devstral-small-2507",name:"Devstral Small",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"labs-devstral-small-2512":{id:"labs-devstral-small-2512",name:"Devstral Small 2",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"magistral-medium-latest":{id:"magistral-medium-latest",name:"Magistral Medium (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text"],cost:{input:2,output:5,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"magistral-small":{id:"magistral-small",name:"Magistral Small",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"ministral-3b-latest":{id:"ministral-3b-latest",name:"Ministral 3B (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.04,output:.04,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"ministral-8b-latest":{id:"ministral-8b-latest",name:"Ministral 8B (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.1,output:.1,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"mistral-large-2411":{id:"mistral-large-2411",name:"Mistral Large 2.1",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:2,output:6,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"mistral-large-2512":{id:"mistral-large-2512",name:"Mistral Large 3",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"mistral-large-latest":{id:"mistral-large-latest",name:"Mistral Large (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"mistral-medium-2505":{id:"mistral-medium-2505",name:"Mistral Medium 3",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"mistral-medium-2508":{id:"mistral-medium-2508",name:"Mistral Medium 3.1",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.4,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"mistral-medium-2604":{id:"mistral-medium-2604",name:"Mistral Medium 3.5",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"mistral-medium-latest":{id:"mistral-medium-latest",name:"Mistral Medium (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"mistral-nemo":{id:"mistral-nemo",name:"Mistral Nemo",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"mistral-small-2506":{id:"mistral-small-2506",name:"Mistral Small 3.2",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"mistral-small-2603":{id:"mistral-small-2603",name:"Mistral Small 4",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text","image"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral-small-latest":{id:"mistral-small-latest",name:"Mistral Small (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!0,input:["text","image"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"open-mistral-7b":{id:"open-mistral-7b",name:"Mistral 7B",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.25,output:.25,cacheRead:0,cacheWrite:0},contextWindow:8e3,maxTokens:8e3},"open-mistral-nemo":{id:"open-mistral-nemo",name:"Open Mistral Nemo",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"open-mixtral-8x22b":{id:"open-mixtral-8x22b",name:"Mixtral 8x22B",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:2,output:6,cacheRead:0,cacheWrite:0},contextWindow:64e3,maxTokens:64e3},"open-mixtral-8x7b":{id:"open-mixtral-8x7b",name:"Mixtral 8x7B",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.7,output:.7,cacheRead:0,cacheWrite:0},contextWindow:32e3,maxTokens:32e3},"pixtral-12b":{id:"pixtral-12b",name:"Pixtral 12B",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"pixtral-large-latest":{id:"pixtral-large-latest",name:"Pixtral Large (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text","image"],cost:{input:2,output:6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"voxtral-small-latest":{id:"voxtral-small-latest",name:"Voxtral Small (latest)",api:"mistral-conversations",provider:"mistral",baseUrl:"https://api.mistral.ai",reasoning:!1,input:["text"],cost:{input:.1,output:.3,cacheRead:0,cacheWrite:0},contextWindow:32e3,maxTokens:32e3}},openai:{"gpt-4":{id:"gpt-4",name:"GPT-4",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text"],cost:{input:30,output:60,cacheRead:0,cacheWrite:0},contextWindow:8192,maxTokens:8192},"gpt-4-turbo":{id:"gpt-4-turbo",name:"GPT-4 Turbo",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:10,output:30,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:.4,output:1.6,cacheRead:.1,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4.1-nano":{id:"gpt-4.1-nano",name:"GPT-4.1 nano",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:.1,output:.4,cacheRead:.025,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"gpt-4o":{id:"gpt-4o",name:"GPT-4o",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-2024-05-13":{id:"gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:5,output:15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"gpt-4o-2024-08-06":{id:"gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-2024-11-20":{id:"gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-4o-mini":{id:"gpt-4o-mini",name:"GPT-4o mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5":{id:"gpt-5",name:"GPT-5",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-chat-latest":{id:"gpt-5-chat-latest",name:"GPT-5 Chat Latest",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.025,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:.05,output:.4,cacheRead:.005,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-pro":{id:"gpt-5-pro",name:"GPT-5 Pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:120,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:272e3},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:5,cacheRead:.125,cacheWrite:1.25},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2-chat-latest":{id:"gpt-5.2-chat-latest",name:"GPT-5.2 Chat",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5.2-pro":{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:21,output:168,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-chat-latest":{id:"gpt-5.3-chat-latest",name:"GPT-5.3 Chat (latest)",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!1,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:32e3},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.6":{id:"gpt-5.6",name:"GPT-5.6",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:6.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-luna":{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-sol":{id:"gpt-5.6-sol",name:"GPT-5.6 Sol",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:6.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-terra":{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"gpt-realtime-2.1":{id:"gpt-realtime-2.1",name:"GPT-Realtime-2.1",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:4,output:24,cacheRead:.4,cacheWrite:0},contextWindow:128e3,maxTokens:32e3},o1:{id:"o1",name:"o1",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:60,cacheRead:7.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o1-pro":{id:"o1-pro",name:"o1-pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:150,output:600,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},o3:{id:"o3",name:"o3",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o3-mini":{id:"o3-mini",name:"o3-mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text"],cost:{input:1.1,output:4.4,cacheRead:.55,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o3-pro":{id:"o3-pro",name:"o3-pro",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:20,output:80,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"o4-mini":{id:"o4-mini",name:"o4-mini",api:"openai-responses",provider:"openai",baseUrl:"https://api.openai.com/v1",reasoning:!0,input:["text","image"],cost:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5}},"openai-codex":{"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.025,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 Mini",api:"openai-codex-responses",provider:"openai-codex",baseUrl:"https://chatgpt.com/backend-api",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:272e3,maxTokens:128e3}},opencode:{"big-pickle":{id:"big-pickle",name:"Big Pickle",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:32e3},"claude-fable-5":{id:"claude-fable-5",name:"Claude Fable 5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"claude-haiku-4-5":{id:"claude-haiku-4-5",name:"Claude Haiku 4.5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.1,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-5":{id:"claude-opus-4-5",name:"Claude Opus 4.5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-4-8":{id:"claude-opus-4-8",name:"Claude Opus 4.8",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-opus-5":{id:"claude-opus-5",name:"Claude Opus 5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"claude-sonnet-4":{id:"claude-sonnet-4",name:"Claude Sonnet 4",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:2e5,maxTokens:64e3},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"claude-sonnet-5":{id:"claude-sonnet-5",name:"Claude Sonnet 5",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.2,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:.14,output:.28,cacheRead:.028,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"deepseek-v4-flash-free":{id:"deepseek-v4-flash-free",name:"DeepSeek V4 Flash Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:128e3},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:1.74,output:3.84,cacheRead:.145,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"gemini-3-flash":{id:"gemini-3-flash",name:"Gemini 3 Flash",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.05,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.1-pro":{id:"gemini-3.1-pro",name:"Gemini 3.1 Pro Preview",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.2,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.5-flash-lite":{id:"gemini-3.5-flash-lite",name:"Gemini 3.5 Flash Lite",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.6-flash":{id:"gemini-3.6-flash",name:"Gemini 3.6 Flash",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"gemini-3.7-flash":{id:"gemini-3.7-flash",name:"Gemini 3.7 Flash",api:"google-generative-ai",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"glm-5":{id:"glm-5",name:"GLM-5",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:1,output:3.2,cacheRead:.2,cacheWrite:0},contextWindow:204800,maxTokens:131072},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:204800,maxTokens:131072},"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"gpt-5":{id:"gpt-5",name:"GPT-5",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.07,output:8.5,cacheRead:.107,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-codex":{id:"gpt-5-codex",name:"GPT-5 Codex",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.07,output:8.5,cacheRead:.107,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.05,output:.4,cacheRead:.005,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.07,output:8.5,cacheRead:.107,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.07,output:8.5,cacheRead:.107,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex Mini",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.025,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:272e3,maxTokens:128e3},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 Mini",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 Nano",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:30,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:30,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-luna":{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-sol":{id:"gpt-5.6-sol",name:"GPT-5.6 Sol (50% Off)",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"gpt-5.6-terra":{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"grok-4.5":{id:"grok-4.5",name:"Grok 4.5",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"grok-4.6":{id:"grok-4.6",name:"Grok 4.6",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"grok-build-0.1":{id:"grok-build-0.1",name:"Grok Build 0.1",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:2,cacheRead:.2,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"hy3-free":{id:"hy3-free",name:"Hy3 Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:19e4,maxTokens:64e3},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.6,output:3,cacheRead:.08,cacheWrite:0},contextWindow:262144,maxTokens:65536},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.16,cacheWrite:0},contextWindow:262144,maxTokens:65536},"kimi-k2.7-code":{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.19,cacheWrite:0},contextWindow:262144,maxTokens:262144},"kimi-k3":{id:"kimi-k3",name:"Kimi K3",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"mimo-v2.5-free":{id:"mimo-v2.5-free",name:"MiMo V2.5 Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:32e3},"minimax-m2.5":{id:"minimax-m2.5",name:"MiniMax-M2.5",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax-m2.7":{id:"minimax-m2.7",name:"MiniMax-M2.7",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax-m3":{id:"minimax-m3",name:"MiniMax-M3",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:512e3,maxTokens:128e3},"muse-spark-1.2":{id:"muse-spark-1.2",name:"Muse Spark 1.2",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:4.25,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"muse-spark-1.2-contributor-free":{id:"muse-spark-1.2-contributor-free",name:"Muse Spark 1.2 Free",api:"openai-responses",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"nemotron-3-ultra-free":{id:"nemotron-3-ultra-free",name:"Nemotron 3 Ultra Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"nemotron-3.5-lightning-free":{id:"nemotron-3.5-lightning-free",name:"Nemotron 3.5 Lightning Free",api:"openai-completions",provider:"opencode",baseUrl:"https://opencode.ai/zen/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen3.5-plus":{id:"qwen3.5-plus",name:"Qwen3.5 Plus",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:262144,maxTokens:65536},"qwen3.6-plus":{id:"qwen3.6-plus",name:"Qwen3.6 Plus",api:"anthropic-messages",provider:"opencode",baseUrl:"https://opencode.ai/zen",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.05,cacheWrite:.625},contextWindow:262144,maxTokens:65536}},"opencode-go":{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:.22,output:.66,cacheRead:.007,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro (New)",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:.66,output:1.98,cacheRead:.022,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:202752,maxTokens:32768},"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"glm-5.3":{id:"glm-5.3",name:"GLM-5.3",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"gpt-5.6-luna":{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",api:"openai-responses",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.2,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"grok-4.5":{id:"grok-4.5",name:"Grok 4.5",api:"openai-responses",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},hy3:{id:"hy3",name:"Hy3 (8x usage)",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:.0175,output:.0725,cacheRead:.004375,cacheWrite:0},contextWindow:256e3,maxTokens:64e3},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.16,cacheWrite:0},contextWindow:262144,maxTokens:65536},"kimi-k2.7-code":{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.19,cacheWrite:0},contextWindow:262144,maxTokens:262144},"kimi-k3":{id:"kimi-k3",name:"Kimi K3",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"mimo-v2.5":{id:"mimo-v2.5",name:"MiMo V2.5",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.14,output:.28,cacheRead:.0028,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"mimo-v2.5-pro":{id:"mimo-v2.5-pro",name:"MiMo V2.5 Pro",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:.435,output:.87,cacheRead:.003625,cacheWrite:0},contextWindow:1048576,maxTokens:128e3},"minimax-m2.7":{id:"minimax-m2.7",name:"MiniMax-M2.7",api:"anthropic-messages",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax-m3":{id:"minimax-m3",name:"MiniMax-M3",api:"anthropic-messages",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"muse-spark-1.2-contributor":{id:"muse-spark-1.2-contributor",name:"Muse Spark 1.2 Contributor",api:"openai-responses",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.1,output:.2,cacheRead:.002,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"qwen3.6-plus":{id:"qwen3.6-plus",name:"Qwen3.6 Plus",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.05,cacheWrite:.625},contextWindow:1e6,maxTokens:65536},"qwen3.7-max":{id:"qwen3.7-max",name:"Qwen3.7 Max",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text"],cost:{input:2.5,output:7.5,cacheRead:.5,cacheWrite:3.125},contextWindow:1e6,maxTokens:65536},"qwen3.7-plus":{id:"qwen3.7-plus",name:"Qwen3.7 Plus",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:.4,output:1.6,cacheRead:.04,cacheWrite:.5},contextWindow:1e6,maxTokens:65536},"qwen3.8-max":{id:"qwen3.8-max",name:"Qwen3.8 Max",api:"openai-completions",provider:"opencode-go",baseUrl:"https://opencode.ai/zen/go/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.25,cacheWrite:2.5},contextWindow:1e6,maxTokens:131072}},openrouter:{"aion-labs/aion-2.0":{id:"aion-labs/aion-2.0",name:"AionLabs: Aion-2.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.7999999999999999,output:1.5999999999999999,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:131072,maxTokens:32768},"aion-labs/aion-3.0":{id:"aion-labs/aion-3.0",name:"AionLabs: Aion-3.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:3,output:6,cacheRead:.75,cacheWrite:0},contextWindow:131072,maxTokens:32768},"aion-labs/aion-3.0-mini":{id:"aion-labs/aion-3.0-mini",name:"AionLabs: Aion-3.0-Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.7,output:1.4,cacheRead:.18,cacheWrite:0},contextWindow:131072,maxTokens:32768},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Amazon: Nova 2 Lite",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:65535},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Amazon: Nova Lite 1.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.06,output:.24,cacheRead:0,cacheWrite:0},contextWindow:3e5,maxTokens:5120},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Amazon: Nova Micro 1.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.035,output:.14,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:5120},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Amazon: Nova Premier 1.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.625,cacheWrite:0},contextWindow:1e6,maxTokens:32e3},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Amazon: Nova Pro 1.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.7999999999999999,output:3.1999999999999997,cacheRead:0,cacheWrite:0},contextWindow:3e5,maxTokens:5120},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Anthropic: Claude 3 Haiku",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.25,output:1.25,cacheRead:.03,cacheWrite:.3},contextWindow:2e5,maxTokens:4096},"anthropic/claude-fable-5":{id:"anthropic/claude-fable-5",name:"Anthropic: Claude Fable 5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-fable-5:batch":{id:"anthropic/claude-fable-5:batch",name:"Anthropic: Claude Fable 5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Anthropic: Claude Haiku 4.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.09999999999999999,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-haiku-4.5:batch":{id:"anthropic/claude-haiku-4.5:batch",name:"Anthropic: Claude Haiku 4.5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:2.5,cacheRead:.049999999999999996,cacheWrite:.625},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Anthropic: Claude Opus 4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},contextWindow:2e5,maxTokens:32e3},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Anthropic: Claude Opus 4.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},contextWindow:2e5,maxTokens:32e3},"anthropic/claude-opus-4.1:batch":{id:"anthropic/claude-opus-4.1:batch",name:"Anthropic: Claude Opus 4.1 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:7.5,output:37.5,cacheRead:.75,cacheWrite:9.375},contextWindow:2e5,maxTokens:32e3},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Anthropic: Claude Opus 4.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-opus-4.5:batch":{id:"anthropic/claude-opus-4.5:batch",name:"Anthropic: Claude Opus 4.5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.25,cacheWrite:3.125},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Anthropic: Claude Opus 4.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.6:batch":{id:"anthropic/claude-opus-4.6:batch",name:"Anthropic: Claude Opus 4.6 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.25,cacheWrite:3.125},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Anthropic: Claude Opus 4.7",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.7-fast":{id:"anthropic/claude-opus-4.7-fast",name:"Anthropic: Claude Opus 4.7 (Fast)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:150,cacheRead:3,cacheWrite:37.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.7:batch":{id:"anthropic/claude-opus-4.7:batch",name:"Anthropic: Claude Opus 4.7 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.25,cacheWrite:3.125},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Anthropic: Claude Opus 4.8",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.8-fast":{id:"anthropic/claude-opus-4.8-fast",name:"Anthropic: Claude Opus 4.8 (Fast)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.8:batch":{id:"anthropic/claude-opus-4.8:batch",name:"Anthropic: Claude Opus 4.8 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.25,cacheWrite:3.125},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-5":{id:"anthropic/claude-opus-5",name:"Claude Opus 5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-5-fast":{id:"anthropic/claude-opus-5-fast",name:"Claude Opus 5 (Fast)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-5:batch":{id:"anthropic/claude-opus-5:batch",name:"Claude Opus 5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:12.5,cacheRead:.25,cacheWrite:3.125},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Anthropic: Claude Sonnet 4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Anthropic: Claude Sonnet 4.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"anthropic/claude-sonnet-4.5:batch":{id:"anthropic/claude-sonnet-4.5:batch",name:"Anthropic: Claude Sonnet 4.5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:1.875},contextWindow:1e6,maxTokens:64e3},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Anthropic: Claude Sonnet 4.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-4.6:batch":{id:"anthropic/claude-sonnet-4.6:batch",name:"Anthropic: Claude Sonnet 4.6 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:.15,cacheWrite:1.875},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-5":{id:"anthropic/claude-sonnet-5",name:"Anthropic: Claude Sonnet 5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-5:batch":{id:"anthropic/claude-sonnet-5:batch",name:"Anthropic: Claude Sonnet 5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.09999999999999999,cacheWrite:1.25},contextWindow:1e6,maxTokens:128e3},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Arcee AI: Trinity Large Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.22,output:.85,cacheRead:.06,cacheWrite:0},contextWindow:262144,maxTokens:262144},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Arcee AI: Virtuoso Large",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.75,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:64e3},auto:{id:"auto",name:"Auto",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e6,maxTokens:3e4},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"ByteDance Seed: Seed 1.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"ByteDance Seed: Seed 1.6 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.075,output:.3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"bytedance-seed/seed-2-1-turbo":{id:"bytedance-seed/seed-2-1-turbo",name:"ByteDance Seed: Seed 2.1 Turbo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"bytedance-seed/seed-2.0-code":{id:"bytedance-seed/seed-2.0-code",name:"ByteDance Seed: Seed-2.0-Code",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"ByteDance Seed: Seed-2.0-Lite",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"ByteDance Seed: Seed-2.0-Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Cohere: Command R (08-2024)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Cohere: Command R+ (08-2024)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:2.5,output:10,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"cohere/north-mini-code:free":{id:"cohere/north-mini-code:free",name:"Cohere: North Mini Code (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:64e3},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek: DeepSeek V3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.2574,output:1.0287,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:16e3},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek: DeepSeek V3 0324",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.25,output:1,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:163840},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek: DeepSeek V3.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.25,output:.95,cacheRead:.13,cacheWrite:0},contextWindow:163840,maxTokens:32768},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.7,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:64e3,maxTokens:16e3},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"DeepSeek: R1 0528",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.5,output:2.1500000000000004,cacheRead:.35,cacheWrite:0},contextWindow:163840,maxTokens:32768},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek: DeepSeek V3.1 Terminus",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.27,output:1,cacheRead:.135,cacheWrite:0},contextWindow:163840,maxTokens:32768},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek: DeepSeek V3.2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.26899999999999996,output:.39999999999999997,cacheRead:.13449999999999998,cacheWrite:0},contextWindow:163840,maxTokens:65536},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek: DeepSeek V3.2 Exp",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.27,output:.41,cacheRead:0,cacheWrite:0},contextWindow:163840,maxTokens:65536},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek: DeepSeek V4 Flash 0423",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.08399999999999999,output:.16799999999999998,cacheRead:.016800000000000002,cacheWrite:0},contextWindow:1048576,maxTokens:384e3},"deepseek/deepseek-v4-flash-0731":{id:"deepseek/deepseek-v4-flash-0731",name:"DeepSeek: DeepSeek V4 Flash 0731",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.14,output:.28,cacheRead:.028,cacheWrite:0},contextWindow:1310720,maxTokens:393216},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek: DeepSeek V4 Pro 0423",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.5999999999999999,output:3.1999999999999997,cacheRead:.135,cacheWrite:0},contextWindow:1048576,maxTokens:393216},"deepseek/deepseek-v4-pro-0813":{id:"deepseek/deepseek-v4-pro-0813",name:"DeepSeek: DeepSeek V4 Pro 0813",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.1880000000000002,output:3.564,cacheRead:.039599999999999996,cacheWrite:0},contextWindow:1048576,maxTokens:4096},"dots-studio/dots-3-note-preview:free":{id:"dots-studio/dots-3-note-preview:free",name:"Dots Studio: Dots3-Note Preview (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:512e3,maxTokens:512e3},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Google: Gemini 2.5 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65535},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Google: Gemini 2.5 Flash Lite",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:.01,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65535},"google/gemini-2.5-flash-lite:batch":{id:"google/gemini-2.5-flash-lite:batch",name:"Google: Gemini 2.5 Flash Lite (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.049999999999999996,output:.19999999999999998,cacheRead:.01,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"google/gemini-2.5-flash:batch":{id:"google/gemini-2.5-flash:batch",name:"Google: Gemini 2.5 Flash (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.15,output:1.25,cacheRead:.03,cacheWrite:0},contextWindow:1048576,maxTokens:65535},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Google: Gemini 2.5 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:.375},contextWindow:1048576,maxTokens:65536},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Google: Gemini 2.5 Pro Preview 06-05",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:.375},contextWindow:1048576,maxTokens:65536},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Google: Gemini 2.5 Pro Preview 05-06",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:.375},contextWindow:1048576,maxTokens:65535},"google/gemini-2.5-pro:batch":{id:"google/gemini-2.5-pro:batch",name:"Google: Gemini 2.5 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.625,output:5,cacheRead:.125,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Google: Gemini 3 Flash Preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.049999999999999996,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3-flash-preview:batch":{id:"google/gemini-3-flash-preview:batch",name:"Google: Gemini 3 Flash Preview (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3-pro-image":{id:"google/gemini-3-pro-image",name:"Google: Nano Banana Pro (Gemini 3 Pro Image)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:.375},contextWindow:131072,maxTokens:32768},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Google: Gemini 3.1 Flash Lite",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.024999999999999998,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Google: Gemini 3.1 Flash Lite Preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.024999999999999998,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3.1-flash-lite:batch":{id:"google/gemini-3.1-flash-lite:batch",name:"Google: Gemini 3.1 Flash Lite (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.125,output:.75,cacheRead:.012499999999999999,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Google: Gemini 3.1 Pro Preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:.375},contextWindow:1048576,maxTokens:65536},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Google: Gemini 3.1 Pro Preview Custom Tools",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:.375},contextWindow:1048576,maxTokens:65536},"google/gemini-3.1-pro-preview:batch":{id:"google/gemini-3.1-pro-preview:batch",name:"Google: Gemini 3.1 Pro Preview (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:6,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Google: Gemini 3.5 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3.5-flash-lite":{id:"google/gemini-3.5-flash-lite",name:"Google: Gemini 3.5 Flash Lite",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:.0833333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3.5-flash-lite:batch":{id:"google/gemini-3.5-flash-lite:batch",name:"Google: Gemini 3.5 Flash Lite (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.15,output:1.25,cacheRead:.015,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3.5-flash:batch":{id:"google/gemini-3.5-flash:batch",name:"Google: Gemini 3.5 Flash (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3.6-flash":{id:"google/gemini-3.6-flash",name:"Google: Gemini 3.6 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:3.75,cacheRead:.075,cacheWrite:.0416666666666667},contextWindow:1048576,maxTokens:65536},"google/gemini-3.6-flash:batch":{id:"google/gemini-3.6-flash:batch",name:"Google: Gemini 3.6 Flash (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.375,output:1.875,cacheRead:.0375,cacheWrite:.0416666666666667},contextWindow:1048576,maxTokens:65536},"google/gemini-3.7-flash":{id:"google/gemini-3.7-flash",name:"Google: Gemini 3.7 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.375,output:1.875,cacheRead:.0375,cacheWrite:.0208333333333333},contextWindow:1048576,maxTokens:65536},"google/gemini-3.7-flash:batch":{id:"google/gemini-3.7-flash:batch",name:"Google: Gemini 3.7 Flash (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.1875,output:.9375,cacheRead:.01875,cacheWrite:.0208333333333333},contextWindow:1048576,maxTokens:65536},"google/gemma-3-12b-it":{id:"google/gemma-3-12b-it",name:"Google: Gemma 3 12B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.049999999999999996,output:.15,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Google: Gemma 3 27B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.08,output:.44999999999999996,cacheRead:.04,cacheWrite:0},contextWindow:262144,maxTokens:131072},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Google: Gemma 4 26B A4B ",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.07,output:.33999999999999997,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"google/gemma-4-26b-a4b-it:free":{id:"google/gemma-4-26b-a4b-it:free",name:"Google: Gemma 4 26B A4B (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Google: Gemma 4 31B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09,output:.33999999999999997,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:262144,maxTokens:16384},"google/gemma-4-31b-it:free":{id:"google/gemma-4-31b-it:free",name:"Google: Gemma 4 31B (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"IBM: Granite 4.1 8B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.049999999999999996,output:.09999999999999999,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:131072,maxTokens:131072},"inception/mercury-2":{id:"inception/mercury-2",name:"Inception: Mercury 2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.25,output:.75,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:128e3,maxTokens:5e4},"inclusionai/ling-2.6-1t":{id:"inclusionai/ling-2.6-1t",name:"inclusionAI: Ling-2.6-1T",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.075,output:.625,cacheRead:.015,cacheWrite:0},contextWindow:262144,maxTokens:32768},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"inclusionAI: Ling-2.6-flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.01,output:.03,cacheRead:.002,cacheWrite:0},contextWindow:262144,maxTokens:32768},"inclusionai/ling-3.0-flash":{id:"inclusionai/ling-3.0-flash",name:"Ling-3.0-flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.020999999999999998,output:.063,cacheRead:.004200000000000001,cacheWrite:0},contextWindow:262144,maxTokens:32768},"inclusionai/ring-2.6-1t":{id:"inclusionai/ring-2.6-1t",name:"inclusionAI: Ring-2.6-1T",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.075,output:.625,cacheRead:.015,cacheWrite:0},contextWindow:262144,maxTokens:65536},"kwaipilot/kat-coder-air-v2.5":{id:"kwaipilot/kat-coder-air-v2.5",name:"Kwaipilot: KAT-Coder-Air V2.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.15,output:.6,cacheRead:.03,cacheWrite:0},contextWindow:256e3,maxTokens:8e4},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kwaipilot: KAT-Coder-Pro V2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:262144,maxTokens:8e4},"kwaipilot/kat-coder-pro-v2.5":{id:"kwaipilot/kat-coder-pro-v2.5",name:"Kwaipilot: KAT-Coder-Pro V2.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.74,output:2.96,cacheRead:.15,cacheWrite:0},contextWindow:256e3,maxTokens:8e4},"liquid/lfm-2.5-2.6b:free":{id:"liquid/lfm-2.5-2.6b:free",name:"LiquidAI: LFM2.5-2.6B (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meituan/longcat-2.0":{id:"meituan/longcat-2.0",name:"Meituan: LongCat 2.0",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.006,cacheWrite:0},contextWindow:1048756,maxTokens:262144},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Meta: Llama 3.1 70B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.39999999999999997,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Meta: Llama 3.1 8B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.049999999999999996,output:.08,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:131072,maxTokens:131072},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Meta: Llama 3.3 70B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.09999999999999999,output:.32,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Meta: Llama 4 Maverick",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.7999999999999999,cacheRead:0,cacheWrite:0},contextWindow:1048576,maxTokens:16384},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Meta: Llama 4 Scout",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.3,cacheRead:0,cacheWrite:0},contextWindow:1310720,maxTokens:16384},"meta/muse-glimmer-30b":{id:"meta/muse-glimmer-30b",name:"Meta: Muse Glimmer 30B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.35,output:1.5,cacheRead:.04,cacheWrite:0},contextWindow:131072,maxTokens:4096},"meta/muse-spark-1.1":{id:"meta/muse-spark-1.1",name:"Meta: Muse Spark 1.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:4.25,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:4096},"meta/muse-spark-1.2":{id:"meta/muse-spark-1.2",name:"Meta: Muse Spark 1.2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:4.25,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:4096},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax: MiniMax M1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.55,output:2.2,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:4e4},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax: MiniMax M2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.255,output:1.02,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax: MiniMax M2.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.03,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax: MiniMax M2.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.22499999999999998,output:.8999999999999999,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:4096},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax: MiniMax M2.7",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:204800,maxTokens:131072},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax: MiniMax M3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:1048576,maxTokens:512e3},"minimax/minimax-m3:batch":{id:"minimax/minimax-m3:batch",name:"MiniMax: MiniMax M3 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:524288,maxTokens:4096},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Mistral: Codestral 2508",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.3,output:.8999999999999999,cacheRead:.03,cacheWrite:0},contextWindow:256e3,maxTokens:4096},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Mistral: Ministral 3 14B 2512",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.19999999999999998,cacheRead:.02,cacheWrite:0},contextWindow:262144,maxTokens:4096},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Mistral: Ministral 3 3B 2512",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.09999999999999999,cacheRead:.01,cacheWrite:0},contextWindow:131072,maxTokens:4096},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Mistral: Ministral 3 8B 2512",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.15,output:.15,cacheRead:.015,cacheWrite:0},contextWindow:262144,maxTokens:4096},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:2,output:6,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:2,output:6,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:131072,maxTokens:4096},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral: Mistral Large 3 2512",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:262144,maxTokens:4096},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral: Mistral Medium 3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:2,cacheRead:.04,cacheWrite:0},contextWindow:131072,maxTokens:4096},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral: Mistral Medium 3.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:4096},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral: Mistral Medium 3.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:2,cacheRead:.04,cacheWrite:0},contextWindow:131072,maxTokens:4096},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral: Mistral Nemo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.019000000000000003,output:.03,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Mistral: Saba",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.19999999999999998,output:.6,cacheRead:.02,cacheWrite:0},contextWindow:32768,maxTokens:4096},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral: Mistral Small 4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.015,cacheWrite:0},contextWindow:262144,maxTokens:4096},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral: Mistral Small 3.2 24B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.09375,output:.25,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:16384},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mistral: Mixtral 8x22B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:2,output:6,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:65536,maxTokens:4096},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Mistral: Voxtral Small 24B 2507",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.09999999999999999,output:.3,cacheRead:.01,cacheWrite:0},contextWindow:32e3,maxTokens:4096},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"MoonshotAI: Kimi K2 0711",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.5700000000000001,output:2.3,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:100352},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"MoonshotAI: Kimi K2 0905",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.6,output:2.5,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:100352},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"MoonshotAI: Kimi K2 Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.6,output:2.5,cacheRead:.15,cacheWrite:0},contextWindow:262144,maxTokens:100352},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"MoonshotAI: Kimi K2.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.41,output:2.06,cacheRead:.07,cacheWrite:0},contextWindow:262144,maxTokens:4096},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"MoonshotAI: Kimi K2.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.5795,output:2.44,cacheRead:.0976,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/kimi-k2.7-code":{id:"moonshotai/kimi-k2.7-code",name:"MoonshotAI: Kimi K2.7 Code",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.71,output:3.5,cacheRead:.15,cacheWrite:0},contextWindow:262144,maxTokens:262144},"moonshotai/kimi-k2.7-code:batch":{id:"moonshotai/kimi-k2.7-code:batch",name:"MoonshotAI: Kimi K2.7 Code (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.19,cacheWrite:0},contextWindow:262144,maxTokens:4096},"moonshotai/kimi-k3":{id:"moonshotai/kimi-k3",name:"MoonshotAI: Kimi K3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:0},contextWindow:1048576,maxTokens:4096},"nex-agi/nex-n2-mini":{id:"nex-agi/nex-n2-mini",name:"Nex AGI: Nex-N2-Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.024999999999999998,output:.09999999999999999,cacheRead:.0025,cacheWrite:0},contextWindow:262144,maxTokens:262144},"nex-agi/nex-n2-pro":{id:"nex-agi/nex-n2-pro",name:"Nex AGI: Nex-N2-Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:1,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:262144,maxTokens:262144},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"NVIDIA: Nemotron 3 Nano 30B A3B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.049999999999999996,output:.19999999999999998,cacheRead:.03,cacheWrite:0},contextWindow:262144,maxTokens:262144},"nvidia/nemotron-3-nano-30b-a3b:free":{id:"nvidia/nemotron-3-nano-30b-a3b:free",name:"NVIDIA: Nemotron 3 Nano 30B A3B (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:4096},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"NVIDIA: Nemotron 3 Nano Omni (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:65536},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA: Nemotron 3 Super",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.08499999999999999,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:16384},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"NVIDIA: Nemotron 3 Super (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"NVIDIA: Nemotron 3 Ultra",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.6,output:3.5999999999999996,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:512288,maxTokens:4096},"nvidia/nemotron-3-ultra-550b-a55b:batch":{id:"nvidia/nemotron-3-ultra-550b-a55b:batch",name:"NVIDIA: Nemotron 3 Ultra (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.6,output:3.5999999999999996,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:512288,maxTokens:4096},"nvidia/nemotron-3-ultra-550b-a55b:free":{id:"nvidia/nemotron-3-ultra-550b-a55b:free",name:"NVIDIA: Nemotron 3 Ultra (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"nvidia/nemotron-3.5-lightning":{id:"nvidia/nemotron-3.5-lightning",name:"NVIDIA: Nemotron 3.5 Lightning",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.08,output:.19999999999999998,cacheRead:.04,cacheWrite:0},contextWindow:262144,maxTokens:131072},"nvidia/nemotron-3.5-lightning:free":{id:"nvidia/nemotron-3.5-lightning:free",name:"NVIDIA: Nemotron 3.5 Lightning (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"nvidia/nemotron-nano-12b-v2-vl:free":{id:"nvidia/nemotron-nano-12b-v2-vl:free",name:"NVIDIA: Nemotron Nano 12B 2 VL (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"nvidia/nemotron-nano-9b-v2:free":{id:"nvidia/nemotron-nano-9b-v2:free",name:"NVIDIA: Nemotron Nano 9B V2 (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"OpenAI: GPT-3.5 Turbo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:16385,maxTokens:4096},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"OpenAI: GPT-3.5 Turbo (older v0613)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:1,output:2,cacheRead:0,cacheWrite:0},contextWindow:4095,maxTokens:4096},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"OpenAI: GPT-3.5 Turbo 16k",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:3,output:4,cacheRead:0,cacheWrite:0},contextWindow:16385,maxTokens:4096},"openai/gpt-3.5-turbo:batch":{id:"openai/gpt-3.5-turbo:batch",name:"OpenAI: GPT-3.5 Turbo (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.25,output:.75,cacheRead:0,cacheWrite:0},contextWindow:16385,maxTokens:4096},"openai/gpt-4":{id:"openai/gpt-4",name:"OpenAI: GPT-4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:30,output:60,cacheRead:0,cacheWrite:0},contextWindow:8191,maxTokens:4096},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"OpenAI: GPT-4 Turbo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:10,output:30,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"OpenAI: GPT-4 Turbo Preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:10,output:30,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-4-turbo:batch":{id:"openai/gpt-4-turbo:batch",name:"OpenAI: GPT-4 Turbo (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:5,output:15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"OpenAI: GPT-4.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"OpenAI: GPT-4.1 Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:1.5999999999999999,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-mini:batch":{id:"openai/gpt-4.1-mini:batch",name:"OpenAI: GPT-4.1 Mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.7999999999999999,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"OpenAI: GPT-4.1 Nano",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-nano:batch":{id:"openai/gpt-4.1-nano:batch",name:"OpenAI: GPT-4.1 Nano (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.049999999999999996,output:.19999999999999998,cacheRead:.012499999999999999,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1:batch":{id:"openai/gpt-4.1:batch",name:"OpenAI: GPT-4.1 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:1,output:4,cacheRead:.25,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4o":{id:"openai/gpt-4o",name:"OpenAI: GPT-4o",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"OpenAI: GPT-4o (2024-05-13)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:5,output:15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"OpenAI: GPT-4o (2024-08-06)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"OpenAI: GPT-4o (2024-11-20)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"OpenAI: GPT-4o-mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"OpenAI: GPT-4o-mini (2024-07-18)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-mini:batch":{id:"openai/gpt-4o-mini:batch",name:"OpenAI: GPT-4o-mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.075,output:.3,cacheRead:.0375,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o:batch":{id:"openai/gpt-4o:batch",name:"OpenAI: GPT-4o (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:1.25,output:5,cacheRead:.625,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-5":{id:"openai/gpt-5",name:"OpenAI: GPT-5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-codex:batch":{id:"openai/gpt-5-codex:batch",name:"OpenAI: GPT-5 Codex (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.625,output:5,cacheRead:.0625,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"OpenAI: GPT-5 Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-mini:batch":{id:"openai/gpt-5-mini:batch",name:"OpenAI: GPT-5 Mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.125,output:1,cacheRead:.012499999999999999,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"OpenAI: GPT-5 Nano",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.049999999999999996,output:.39999999999999997,cacheRead:.005,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-nano:batch":{id:"openai/gpt-5-nano:batch",name:"OpenAI: GPT-5 Nano (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.024999999999999998,output:.19999999999999998,cacheRead:.0025,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"OpenAI: GPT-5 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:120,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-pro:batch":{id:"openai/gpt-5-pro:batch",name:"OpenAI: GPT-5 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:7.5,output:60,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"OpenAI: GPT-5.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"OpenAI: GPT-5.1-Codex",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.13,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"OpenAI: GPT-5.1-Codex-Max",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"OpenAI: GPT-5.1-Codex-Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.03,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1:batch":{id:"openai/gpt-5.1:batch",name:"OpenAI: GPT-5.1 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.625,output:5,cacheRead:.0625,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"OpenAI: GPT-5.2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"OpenAI: GPT-5.2 Chat",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:128e3,maxTokens:32e3},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"OpenAI: GPT-5.2-Codex",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"OpenAI: GPT-5.2 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:21,output:168,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-pro:batch":{id:"openai/gpt-5.2-pro:batch",name:"OpenAI: GPT-5.2 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10.5,output:84,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2:batch":{id:"openai/gpt-5.2:batch",name:"OpenAI: GPT-5.2 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.875,output:7,cacheRead:.0875,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"OpenAI: GPT-5.3-Codex",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"OpenAI: GPT-5.4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"OpenAI: GPT-5.4 Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-mini:batch":{id:"openai/gpt-5.4-mini:batch",name:"OpenAI: GPT-5.4 Mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.375,output:2.25,cacheRead:.0375,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"OpenAI: GPT-5.4 Nano",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-nano:batch":{id:"openai/gpt-5.4-nano:batch",name:"OpenAI: GPT-5.4 Nano (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.625,cacheRead:.01,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"OpenAI: GPT-5.4 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.4-pro:batch":{id:"openai/gpt-5.4-pro:batch",name:"OpenAI: GPT-5.4 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:90,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.4:batch":{id:"openai/gpt-5.4:batch",name:"OpenAI: GPT-5.4 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:7.5,cacheRead:.125,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"OpenAI: GPT-5.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"OpenAI: GPT-5.5 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.5-pro:batch":{id:"openai/gpt-5.5-pro:batch",name:"OpenAI: GPT-5.5 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:90,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.5:batch":{id:"openai/gpt-5.5:batch",name:"OpenAI: GPT-5.5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-luna":{id:"openai/gpt-5.6-luna",name:"OpenAI: GPT-5.6 Luna",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-luna-pro":{id:"openai/gpt-5.6-luna-pro",name:"OpenAI: GPT-5.6 Luna Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-luna-pro:batch":{id:"openai/gpt-5.6-luna-pro:batch",name:"OpenAI: GPT-5.6 Luna Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.6,cacheRead:.01,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-luna:batch":{id:"openai/gpt-5.6-luna:batch",name:"OpenAI: GPT-5.6 Luna (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.6,cacheRead:.01,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol":{id:"openai/gpt-5.6-sol",name:"OpenAI: GPT-5.6 Sol",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol-pro":{id:"openai/gpt-5.6-sol-pro",name:"OpenAI: GPT-5.6 Sol Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol-pro:batch":{id:"openai/gpt-5.6-sol-pro:batch",name:"OpenAI: GPT-5.6 Sol Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:7.5,cacheRead:.125,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol:batch":{id:"openai/gpt-5.6-sol:batch",name:"OpenAI: GPT-5.6 Sol (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:7.5,cacheRead:.125,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra":{id:"openai/gpt-5.6-terra",name:"OpenAI: GPT-5.6 Terra",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra-pro":{id:"openai/gpt-5.6-terra-pro",name:"OpenAI: GPT-5.6 Terra Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra-pro:batch":{id:"openai/gpt-5.6-terra-pro:batch",name:"OpenAI: GPT-5.6 Terra Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:6,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra:batch":{id:"openai/gpt-5.6-terra:batch",name:"OpenAI: GPT-5.6 Terra (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:6,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5:batch":{id:"openai/gpt-5:batch",name:"OpenAI: GPT-5 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.625,output:5,cacheRead:.0625,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-audio":{id:"openai/gpt-audio",name:"OpenAI: GPT Audio",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:2.5,output:10,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-audio-mini":{id:"openai/gpt-audio-mini",name:"OpenAI: GPT Audio Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.6,output:2.4,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"OpenAI: GPT Chat Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI: gpt-oss-120b",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.03,output:.16999999999999998,cacheRead:.03,cacheWrite:0},contextWindow:131072,maxTokens:131072},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"OpenAI: gpt-oss-20b",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.03,output:.13,cacheRead:.03,cacheWrite:0},contextWindow:131072,maxTokens:131072},"openai/gpt-oss-20b:free":{id:"openai/gpt-oss-20b:free",name:"OpenAI: gpt-oss-20b (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"OpenAI: gpt-oss-safeguard-20b",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.075,output:.3,cacheRead:.0375,cacheWrite:0},contextWindow:131072,maxTokens:65536},"openai/o1":{id:"openai/o1",name:"OpenAI: o1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:15,output:60,cacheRead:7.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o1:batch":{id:"openai/o1:batch",name:"OpenAI: o1 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:7.5,output:30,cacheRead:3.75,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3":{id:"openai/o3",name:"OpenAI: o3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-mini":{id:"openai/o3-mini",name:"OpenAI: o3 Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.1,output:4.4,cacheRead:.55,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"OpenAI: o3 Mini High",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.1,output:4.4,cacheRead:.55,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-mini-high:batch":{id:"openai/o3-mini-high:batch",name:"OpenAI: o3 Mini High (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.55,output:2.2,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-mini:batch":{id:"openai/o3-mini:batch",name:"OpenAI: o3 Mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.55,output:2.2,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-pro":{id:"openai/o3-pro",name:"OpenAI: o3 Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:20,output:80,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-pro:batch":{id:"openai/o3-pro:batch",name:"OpenAI: o3 Pro (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10,output:40,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3:batch":{id:"openai/o3:batch",name:"OpenAI: o3 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:4,cacheRead:.25,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini":{id:"openai/o4-mini",name:"OpenAI: o4 Mini",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"OpenAI: o4 Mini High",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini-high:batch":{id:"openai/o4-mini-high:batch",name:"OpenAI: o4 Mini High (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.55,output:2.2,cacheRead:.1375,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini:batch":{id:"openai/o4-mini:batch",name:"OpenAI: o4 Mini (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.55,output:2.2,cacheRead:.1375,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:-1e6,output:-1e6,cacheRead:0,cacheWrite:0},contextWindow:2e6,maxTokens:4096},"openrouter/auto-beta":{id:"openrouter/auto-beta",name:"Auto Router (Beta)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:-1e6,output:-1e6,cacheRead:0,cacheWrite:0},contextWindow:2e6,maxTokens:4096},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:4096},"poolside/laguna-s-2.1":{id:"poolside/laguna-s-2.1",name:"Poolside: Laguna S 2.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.09,output:.18,cacheRead:.009,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"poolside/laguna-s-2.1:free":{id:"poolside/laguna-s-2.1:free",name:"Poolside: Laguna S 2.1 (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"poolside/laguna-xs-2.1":{id:"poolside/laguna-xs-2.1",name:"Poolside: Laguna XS 2.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.06,output:.12,cacheRead:.03,cacheWrite:0},contextWindow:262144,maxTokens:32768},"poolside/laguna-xs-2.1:free":{id:"poolside/laguna-xs-2.1:free",name:"Poolside: Laguna XS 2.1 (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.36,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:32768,maxTokens:16384},"qwen/qwen-2.5-7b-instruct":{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen: Qwen2.5 7B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.09999999999999999,output:.19999999999999998,cacheRead:0,cacheWrite:0},contextWindow:32768,maxTokens:32768},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.26,output:.78,cacheRead:.052000000000000005,cacheWrite:.325},contextWindow:1e6,maxTokens:32768},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen: Qwen Plus 0728",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.26,output:.78,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:32768},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen: Qwen Plus 0728 (thinking)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.26,output:.78,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:32768},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen: Qwen3 14B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.12,output:.24,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen: Qwen3 235B A22B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.45499999999999996,output:1.8199999999999998,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen: Qwen3 235B A22B Instruct 2507",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.09,output:.55,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen: Qwen3 235B A22B Thinking 2507",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.22999999999999998,output:2.3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:4096},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen: Qwen3 30B A3B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.13,output:.52,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen: Qwen3 30B A3B Instruct 2507",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.04815,output:.19305,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32e3},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen: Qwen3 30B A3B Thinking 2507",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.19999999999999998,output:2.4,cacheRead:0,cacheWrite:0},contextWindow:81920,maxTokens:32768},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen: Qwen3 32B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.08,output:.28,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen: Qwen3 8B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.117,output:.45499999999999996,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen: Qwen3 Coder 480B A35B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.3,output:1,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:262144,maxTokens:65536},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen: Qwen3 Coder 30B A3B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.07,output:.28,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen: Qwen3 Coder Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.195,output:.975,cacheRead:.039,cacheWrite:.24375},contextWindow:1e6,maxTokens:65536},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen: Qwen3 Coder Next",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.12,output:.7999999999999999,cacheRead:.07,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen: Qwen3 Coder Plus",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.65,output:3.25,cacheRead:.13,cacheWrite:.8125},contextWindow:1e6,maxTokens:65536},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen: Qwen3 Max",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.78,output:3.9,cacheRead:.156,cacheWrite:.975},contextWindow:262144,maxTokens:65536},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen: Qwen3 Max Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.78,output:3.9,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen: Qwen3 Next 80B A3B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.09,output:1.1,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen: Qwen3 Next 80B A3B Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.15,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen: Qwen3 VL 235B A22B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.21,output:1.9,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen: Qwen3 VL 235B A22B Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:4,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen: Qwen3 VL 30B A3B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.13,output:.52,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen: Qwen3 VL 30B A3B Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:2.4,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen: Qwen3 VL 32B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.10400000000000001,output:.41600000000000004,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen: Qwen3 VL 8B Instruct",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.117,output:.45499999999999996,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:32768},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen: Qwen3 VL 8B Thinking",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.18,output:2.0999999999999996,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen: Qwen3.5-122B-A10B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.26,output:2.08,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen: Qwen3.5-27B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.195,output:1.56,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen: Qwen3.5-35B-A3B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.25,cacheRead:.25,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen: Qwen3.5 397B A17B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.39,output:2.34,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen: Qwen3.5-9B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.15,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.065,output:.26,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen: Qwen3.5 Plus 2026-02-15",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.26,output:1.56,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen: Qwen3.5 Plus 2026-04-20",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.7999999999999998,cacheRead:0,cacheWrite:.375},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen: Qwen3.6 27B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.6,output:3.5999999999999996,cacheRead:.12,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3.6-35b-a3b":{id:"qwen/qwen3.6-35b-a3b",name:"Qwen: Qwen3.6 35B A3B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.14,output:1,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:262144,maxTokens:262144},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen: Qwen3.6 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.1875,output:1.125,cacheRead:0,cacheWrite:.234375},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen: Qwen3.6 Max Preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.0270000000000001,output:6.162,cacheRead:0,cacheWrite:1.28375},contextWindow:262144,maxTokens:65536},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen: Qwen3.6 Plus",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.325,output:1.95,cacheRead:0,cacheWrite:.40625},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.7-flash":{id:"qwen/qwen3.7-flash",name:"Qwen: Qwen3.7 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.03,output:.13,cacheRead:.006,cacheWrite:.038000000000000006},contextWindow:1e6,maxTokens:65536},"qwen/qwen3.7-max":{id:"qwen/qwen3.7-max",name:"Qwen: Qwen3.7 Max",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.475,output:4.425,cacheRead:.295,cacheWrite:1.84375},contextWindow:1e6,maxTokens:131072},"qwen/qwen3.7-plus":{id:"qwen/qwen3.7-plus",name:"Qwen: Qwen3.7 Plus",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.32,output:1.28,cacheRead:.064,cacheWrite:.39999999999999997},contextWindow:1e6,maxTokens:131072},"qwen/qwen3.8-2.4t-a95b":{id:"qwen/qwen3.8-2.4t-a95b",name:"Qwen: Qwen3.8 2.4T A95B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:2,output:6,cacheRead:.25,cacheWrite:0},contextWindow:1048576,maxTokens:262144},"qwen/qwen3.8-27b":{id:"qwen/qwen3.8-27b",name:"Qwen: Qwen3.8 27B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.44999999999999996,output:3.1999999999999997,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"qwen/qwen3.8-max":{id:"qwen/qwen3.8-max",name:"Qwen: Qwen3.8 Max",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.25,cacheWrite:2.5},contextWindow:1e6,maxTokens:131072},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.09999999999999999,cacheRead:0,cacheWrite:0},contextWindow:16384,maxTokens:16384},"relace/relace-search":{id:"relace/relace-search",name:"Relace: Relace Search",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:1,output:3,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:128e3},"sakana/fugu-ultra":{id:"sakana/fugu-ultra",name:"Sakana: Fugu Ultra",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"sakana/sakana-namazu":{id:"sakana/sakana-namazu",name:"Sakana: Sakana Namazu",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.15,cacheWrite:0},contextWindow:262144,maxTokens:65536},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Sao10K: Llama 3.1 Euryale 70B v2.2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.85,output:.85,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:16384},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun: Step 3.5 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.09999999999999999,output:.3,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:65536},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"StepFun: Step 3.7 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.15,cacheRead:.04,cacheWrite:0},contextWindow:262144,maxTokens:256e3},"tencent/hy3":{id:"tencent/hy3",name:"Tencent: Hy3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.13199999999999998,output:.5279999999999999,cacheRead:.032999999999999995,cacheWrite:0},contextWindow:262144,maxTokens:128e3},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Tencent: Hy3 preview",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.18,output:.6,cacheRead:.06,cacheWrite:0},contextWindow:262144,maxTokens:4096},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"TheDrummer: UnslopNemo 12B",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!1,input:["text"],cost:{input:.39999999999999997,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:1024e3,maxTokens:1024e3},"thinkingmachines/inkling":{id:"thinkingmachines/inkling",name:"Thinking Machines: Inkling",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.95,output:4.05,cacheRead:.16,cacheWrite:0},contextWindow:1048576,maxTokens:262144},"thinkingmachines/inkling-small":{id:"thinkingmachines/inkling-small",name:"Thinking Machines: Inkling Small",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.44999999999999996,output:1.2,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:524288,maxTokens:262144},"thinkingmachines/inkling:batch":{id:"thinkingmachines/inkling:batch",name:"Thinking Machines: Inkling (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:4.05,cacheRead:.16999999999999998,cacheWrite:0},contextWindow:524288,maxTokens:4096},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Upstage: Solar Pro 3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.15,output:.6,cacheRead:.015,cacheWrite:0},contextWindow:131072,maxTokens:131072},"upstage/solar-pro4":{id:"upstage/solar-pro4",name:"Upstage: Solar Pro 4",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.03,output:.12,cacheRead:.006,cacheWrite:0},contextWindow:524288,maxTokens:131072},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"SpaceXAI: Grok 4.20",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:4096},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"SpaceXAI: Grok 4.3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:1e6,maxTokens:4096},"x-ai/grok-4.5":{id:"x-ai/grok-4.5",name:"SpaceXAI: Grok 4.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.3,cacheWrite:0},contextWindow:5e5,maxTokens:4096},"x-ai/grok-4.6":{id:"x-ai/grok-4.6",name:"SpaceXAI: Grok 4.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:4096},"x-ai/grok-build-0.1":{id:"x-ai/grok-build-0.1",name:"SpaceXAI: Grok Build 0.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:2,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:256e3,maxTokens:4096},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.14,output:.28,cacheRead:.0028,cacheWrite:0},contextWindow:105e4,maxTokens:131072},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo-V2.5-Pro",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.435,output:.87,cacheRead:.0036,cacheWrite:0},contextWindow:105e4,maxTokens:131072},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"Z.ai: GLM 4.5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:.11,cacheWrite:0},contextWindow:131072,maxTokens:98304},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"Z.ai: GLM 4.5 Air",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.13,output:.85,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:131072,maxTokens:98304},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"Z.ai: GLM 4.5V",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.6,output:1.7999999999999998,cacheRead:.11,cacheWrite:0},contextWindow:65536,maxTokens:16384},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"Z.ai: GLM 4.6",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.5,output:2,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:204800,maxTokens:131072},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"Z.ai: GLM 4.6V",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.3,output:.8999999999999999,cacheRead:.055,cacheWrite:0},contextWindow:131072,maxTokens:32768},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"Z.ai: GLM 4.7",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.39999999999999997,output:1.75,cacheRead:.08,cacheWrite:0},contextWindow:204800,maxTokens:131072},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"Z.ai: GLM 4.7 Flash",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.06,output:.39999999999999997,cacheRead:.01,cacheWrite:0},contextWindow:202752,maxTokens:16384},"z-ai/glm-5":{id:"z-ai/glm-5",name:"Z.ai: GLM 5",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.6,output:1.9,cacheRead:.119,cacheWrite:0},contextWindow:204800,maxTokens:128e3},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"Z.ai: GLM 5 Turbo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.2,output:4,cacheRead:.24,cacheWrite:0},contextWindow:202752,maxTokens:131072},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"Z.ai: GLM 5.1",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.966,output:3.036,cacheRead:.1794,cacheWrite:0},contextWindow:204800,maxTokens:128e3},"z-ai/glm-5.2":{id:"z-ai/glm-5.2",name:"Z.ai: GLM 5.2",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.966,output:3.036,cacheRead:.1932,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"z-ai/glm-5.2:batch":{id:"z-ai/glm-5.2:batch",name:"Z.ai: GLM 5.2 (batch)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:512e3,maxTokens:4096},"z-ai/glm-5.2:free":{id:"z-ai/glm-5.2:free",name:"Z.ai: GLM 5.2 (free)",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"z-ai/glm-5.3":{id:"z-ai/glm-5.3",name:"Z.ai: GLM 5.3",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1048576,maxTokens:131072},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"Z.ai: GLM 5V Turbo",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1.2,output:4,cacheRead:.24,cacheWrite:0},contextWindow:202752,maxTokens:131072},"~anthropic/claude-fable-latest":{id:"~anthropic/claude-fable-latest",name:"Anthropic: Claude Fable Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic Claude Haiku Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.09999999999999999,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Anthropic: Claude Opus Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic Claude Sonnet Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"~deepseek/deepseek-v4-flash-latest":{id:"~deepseek/deepseek-v4-flash-latest",name:"DeepSeek V4 Flash Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:.065,output:.14,cacheRead:.014,cacheWrite:0},contextWindow:1310720,maxTokens:262144},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google Gemini Flash Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.375,output:1.875,cacheRead:.0375,cacheWrite:.0208333333333333},contextWindow:1048576,maxTokens:65536},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google Gemini Pro Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:.375},contextWindow:1048576,maxTokens:65536},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI Kimi Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.6,output:13,cacheRead:.29,cacheWrite:0},contextWindow:1048576,maxTokens:974842},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI GPT Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI GPT Mini Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"~x-ai/grok-latest":{id:"~x-ai/grok-latest",name:"xAI: Grok Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:4096},"~z-ai/glm-latest":{id:"~z-ai/glm-latest",name:"Z.ai: GLM Latest",api:"openai-completions",provider:"openrouter",baseUrl:"https://openrouter.ai/api/v1",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1048576,maxTokens:131072}},"vercel-ai-gateway":{"alibaba/qwen-3-14b":{id:"alibaba/qwen-3-14b",name:"Qwen3-14B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.12,output:.24,cacheRead:0,cacheWrite:0},contextWindow:40960,maxTokens:16384},"alibaba/qwen-3-235b":{id:"alibaba/qwen-3-235b",name:"Qwen3 235B A22B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.22,output:.88,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:16384},"alibaba/qwen-3-30b":{id:"alibaba/qwen-3-30b",name:"Qwen3-30B-A3B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.12,output:.5,cacheRead:0,cacheWrite:0},contextWindow:40960,maxTokens:16384},"alibaba/qwen-3-32b":{id:"alibaba/qwen-3-32b",name:"Qwen 3 32B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.16,output:.64,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"alibaba/qwen-3.6-max-preview":{id:"alibaba/qwen-3.6-max-preview",name:"Qwen 3.6 Max Preview",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.3,output:7.8,cacheRead:.26,cacheWrite:1.625},contextWindow:24e4,maxTokens:64e3},"alibaba/qwen3-235b-a22b-thinking":{id:"alibaba/qwen3-235b-a22b-thinking",name:"Qwen3 VL 235B A22B Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:4,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"alibaba/qwen3-coder":{id:"alibaba/qwen3-coder",name:"Qwen3 Coder 480B A35B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:1.5,output:7.5,cacheRead:.3,cacheWrite:0},contextWindow:262144,maxTokens:65536},"alibaba/qwen3-coder-30b-a3b":{id:"alibaba/qwen3-coder-30b-a3b",name:"Qwen 3 Coder 30B A3B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.15,output:.6,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:8192},"alibaba/qwen3-coder-next":{id:"alibaba/qwen3-coder-next",name:"Qwen3 Coder Next",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.5,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"alibaba/qwen3-coder-plus":{id:"alibaba/qwen3-coder-plus",name:"Qwen3 Coder Plus",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:1,output:5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"alibaba/qwen3-max":{id:"alibaba/qwen3-max",name:"Qwen3 Max",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:1.2,output:6,cacheRead:.24,cacheWrite:0},contextWindow:262144,maxTokens:32768},"alibaba/qwen3-max-preview":{id:"alibaba/qwen3-max-preview",name:"Qwen3 Max Preview",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:1.2,output:6,cacheRead:.24,cacheWrite:0},contextWindow:262144,maxTokens:32768},"alibaba/qwen3-max-thinking":{id:"alibaba/qwen3-max-thinking",name:"Qwen 3 Max Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.2,output:6,cacheRead:.24,cacheWrite:0},contextWindow:256e3,maxTokens:65536},"alibaba/qwen3-next-80b-a3b-instruct":{id:"alibaba/qwen3-next-80b-a3b-instruct",name:"Qwen3 Next 80B A3B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.15,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"alibaba/qwen3-next-80b-a3b-thinking":{id:"alibaba/qwen3-next-80b-a3b-thinking",name:"Qwen3 Next 80B A3B Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.15,output:1.2,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"alibaba/qwen3-vl-235b-a22b-instruct":{id:"alibaba/qwen3-vl-235b-a22b-instruct",name:"Qwen3 VL 235B A22B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:1.5999999999999999,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:129024},"alibaba/qwen3-vl-instruct":{id:"alibaba/qwen3-vl-instruct",name:"Qwen3 VL 235B A22B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:1.5999999999999999,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:129024},"alibaba/qwen3-vl-thinking":{id:"alibaba/qwen3-vl-thinking",name:"Qwen3 VL 235B A22B Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:4,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:32768},"alibaba/qwen3.5-flash":{id:"alibaba/qwen3.5-flash",name:"Qwen 3.5 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:.001,cacheWrite:.125},contextWindow:1e6,maxTokens:64e3},"alibaba/qwen3.5-plus":{id:"alibaba/qwen3.5-plus",name:"Qwen 3.5 Plus",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:2.4,cacheRead:.04,cacheWrite:.5},contextWindow:1e6,maxTokens:64e3},"alibaba/qwen3.6-27b":{id:"alibaba/qwen3.6-27b",name:"Qwen 3.6 27B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.6,output:3.5999999999999996,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"alibaba/qwen3.6-plus":{id:"alibaba/qwen3.6-plus",name:"Qwen 3.6 Plus",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.09999999999999999,cacheWrite:.625},contextWindow:1e6,maxTokens:64e3},"alibaba/qwen3.7-flash":{id:"alibaba/qwen3.7-flash",name:"Qwen 3.7 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.03,output:.13,cacheRead:.006,cacheWrite:.038000000000000006},contextWindow:991e3,maxTokens:64e3},"alibaba/qwen3.7-max":{id:"alibaba/qwen3.7-max",name:"Qwen 3.7 Max",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:2.5,output:7.5,cacheRead:.5,cacheWrite:3.125},contextWindow:991e3,maxTokens:64e3},"alibaba/qwen3.7-plus":{id:"alibaba/qwen3.7-plus",name:"Qwen 3.7 Plus",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:1.5999999999999999,cacheRead:.08,cacheWrite:.5},contextWindow:1e6,maxTokens:64e3},"alibaba/qwen3.8-2.4t-a95b":{id:"alibaba/qwen3.8-2.4t-a95b",name:"Qwen3.8 2.4T A95B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:2,output:6,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:262144,maxTokens:131072},"alibaba/qwen3.8-27b":{id:"alibaba/qwen3.8-27b",name:"Qwen3.8 27B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.55,output:3.3000000000000003,cacheRead:.11,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"alibaba/qwen3.8-max":{id:"alibaba/qwen3.8-max",name:"Qwen 3.8 Max",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.25,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"amazon/nova-2-lite":{id:"amazon/nova-2-lite",name:"Nova 2 Lite",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.075,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"amazon/nova-lite":{id:"amazon/nova-lite",name:"Nova Lite",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.06,output:.24,cacheRead:0,cacheWrite:0},contextWindow:3e5,maxTokens:8192},"amazon/nova-micro":{id:"amazon/nova-micro",name:"Nova Micro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.035,output:.14,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"amazon/nova-pro":{id:"amazon/nova-pro",name:"Nova Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.7999999999999999,output:3.1999999999999997,cacheRead:0,cacheWrite:0},contextWindow:3e5,maxTokens:8192},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Claude 3 Haiku",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.25,output:1.25,cacheRead:.03,cacheWrite:.3},contextWindow:2e5,maxTokens:4096},"anthropic/claude-fable-5":{id:"anthropic/claude-fable-5",name:"Claude Fable 5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1,output:5,cacheRead:.09999999999999999,cacheWrite:1.25},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},contextWindow:2e5,maxTokens:8192},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:2e5,maxTokens:64e3},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-4.8-fast":{id:"anthropic/claude-opus-4.8-fast",name:"Claude Opus 4.8 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-5":{id:"anthropic/claude-opus-5",name:"Claude Opus 5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:25,cacheRead:.5,cacheWrite:6.25},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-opus-5-fast":{id:"anthropic/claude-opus-5-fast",name:"Claude Opus 5 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:10,output:50,cacheRead:1,cacheWrite:12.5},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:8192},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:64e3},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:3.75},contextWindow:1e6,maxTokens:128e3},"anthropic/claude-sonnet-5":{id:"anthropic/claude-sonnet-5",name:"Claude Sonnet 5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:10,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:1e6,maxTokens:128e3},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.25,output:.8999999999999999,cacheRead:0,cacheWrite:0},contextWindow:262100,maxTokens:8e4},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Trinity Mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.045,output:.15,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"bytedance/seed-1.6":{id:"bytedance/seed-1.6",name:"Seed 1.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"bytedance/seed-1.8":{id:"bytedance/seed-1.8",name:"Bytedance Seed 1.8",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:256e3,maxTokens:64e3},"cohere/command-a":{id:"cohere/command-a",name:"Command A",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:2.5,output:10,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:8e3},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"deepseek/deepseek-v3":{id:"deepseek/deepseek-v3",name:"DeepSeek V3 0324",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.27,output:1.12,cacheRead:.135,cacheWrite:0},contextWindow:163840,maxTokens:163840},"deepseek/deepseek-v3.1":{id:"deepseek/deepseek-v3.1",name:"DeepSeek V3.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.25,output:.95,cacheRead:.13,cacheWrite:0},contextWindow:163840,maxTokens:128e3},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.27,output:1,cacheRead:.135,cacheWrite:0},contextWindow:131072,maxTokens:65536},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek V3.2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.28,output:.42,cacheRead:.028,cacheWrite:0},contextWindow:128e3,maxTokens:8e3},"deepseek/deepseek-v3.2-thinking":{id:"deepseek/deepseek-v3.2-thinking",name:"DeepSeek V3.2 Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.62,output:1.85,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8e3},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.13,output:.26,cacheRead:.028,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"deepseek/deepseek-v4-flash-0731":{id:"deepseek/deepseek-v4-flash-0731",name:"DeepSeek V4 Flash 0731",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.13,output:.26,cacheRead:.028,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.74,output:3.48,cacheRead:.14,cacheWrite:0},contextWindow:1048600,maxTokens:1048600},"deepseek/deepseek-v4-pro-0813":{id:"deepseek/deepseek-v4-pro-0813",name:"DeepSeek V4 Pro 0813",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.32,output:3.9600000000000004,cacheRead:.13199999999999998,cacheWrite:0},contextWindow:1e6,maxTokens:384e3},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:.01,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:1048576,maxTokens:65536},"google/gemini-3-flash":{id:"google/gemini-3-flash",name:"Gemini 3 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.5,output:3,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1e6,maxTokens:65e3},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.25,output:1.5,cacheRead:.03,cacheWrite:0},contextWindow:1e6,maxTokens:65e3},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"google/gemini-3.5-flash-lite":{id:"google/gemini-3.5-flash-lite",name:"Gemini 3.5 Flash Lite",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.3,output:2.5,cacheRead:.03,cacheWrite:0},contextWindow:1e6,maxTokens:65e3},"google/gemini-3.6-flash":{id:"google/gemini-3.6-flash",name:"Gemini 3.6 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.75,output:3.75,cacheRead:.075,cacheWrite:0},contextWindow:1e6,maxTokens:64e3},"google/gemini-3.7-flash":{id:"google/gemini-3.7-flash",name:"Gemini 3.7 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.75,output:3.75,cacheRead:.075,cacheWrite:0},contextWindow:1e6,maxTokens:65536},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Google Gemma 4 26B A4B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.015,cacheWrite:0},contextWindow:262144,maxTokens:131072},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.14,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:131072},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.25,output:.75,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"inception/mercury-coder-small":{id:"inception/mercury-coder-small",name:"Mercury Coder Small Beta",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.25,output:1,cacheRead:0,cacheWrite:0},contextWindow:32e3,maxTokens:16384},"inclusionai/ling-3.0-flash":{id:"inclusionai/ling-3.0-flash",name:"Ling 3.0 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.06,output:.18,cacheRead:.012,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"interfaze/interfaze-beta":{id:"interfaze/interfaze-beta",name:"Interfaze Beta",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.5,output:3.5,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:32e3},"kwaipilot/kat-coder-air-v2.5":{id:"kwaipilot/kat-coder-air-v2.5",name:"Kat Coder Air V2.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.03,cacheWrite:0},contextWindow:256e3,maxTokens:8e4},"kwaipilot/kat-coder-pro-v1":{id:"kwaipilot/kat-coder-pro-v1",name:"KAT-Coder-Pro V1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kat Coder Pro V2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"kwaipilot/kat-coder-pro-v2.5":{id:"kwaipilot/kat-coder-pro-v2.5",name:"Kat Coder Pro V2.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.74,output:2.96,cacheRead:.15,cacheWrite:0},contextWindow:256e3,maxTokens:8e4},"meta/llama-3.1-70b":{id:"meta/llama-3.1-70b",name:"Llama 3.1 70B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.72,output:.72,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meta/llama-3.1-8b":{id:"meta/llama-3.1-8b",name:"Llama 3.1 8B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.22,output:.22,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meta/llama-3.3-70b":{id:"meta/llama-3.3-70b",name:"Llama 3.3 70B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.72,output:.72,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meta/llama-4-maverick":{id:"meta/llama-4-maverick",name:"Llama 4 Maverick 17B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.24,output:.9700000000000001,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meta/llama-4-scout":{id:"meta/llama-4-scout",name:"Llama 4 Scout 17B Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.16999999999999998,output:.66,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:8192},"meta/muse-glimmer-30b":{id:"meta/muse-glimmer-30b",name:"Muse Glimmer 30B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.35,output:1.5,cacheRead:.04,cacheWrite:0},contextWindow:131072,maxTokens:131072},"meta/muse-spark-1.1":{id:"meta/muse-spark-1.1",name:"Muse Spark 1.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:4.25,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:1048576},"meta/muse-spark-1.2":{id:"meta/muse-spark-1.2",name:"Muse Spark 1.2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:4.25,cacheRead:.15,cacheWrite:0},contextWindow:1048576,maxTokens:1048576},"meta/muse-spark-1.2-contributor":{id:"meta/muse-spark-1.2-contributor",name:"Muse Spark 1.2 Contributor",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.09999999999999999,output:.19999999999999998,cacheRead:.002,cacheWrite:0},contextWindow:1048576,maxTokens:1048576},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax M2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.03,cacheWrite:.375},contextWindow:205e3,maxTokens:205e3},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax M2.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.03,cacheWrite:.375},contextWindow:204800,maxTokens:131072},"minimax/minimax-m2.1-lightning":{id:"minimax/minimax-m2.1-lightning",name:"MiniMax M2.1 Lightning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:2.4,cacheRead:.03,cacheWrite:.375},contextWindow:204800,maxTokens:131072},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax M2.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.03,cacheWrite:.375},contextWindow:204800,maxTokens:131e3},"minimax/minimax-m2.5-highspeed":{id:"minimax/minimax-m2.5-highspeed",name:"MiniMax M2.5 High Speed",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.4,cacheRead:.03,cacheWrite:.375},contextWindow:204800,maxTokens:131e3},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"Minimax M2.7",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131e3},"minimax/minimax-m2.7-highspeed":{id:"minimax/minimax-m2.7-highspeed",name:"MiniMax M2.7 High Speed",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.4,cacheRead:.06,cacheWrite:.375},contextWindow:204800,maxTokens:131100},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax M3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.3,output:1.2,cacheRead:.06,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"mistral/codestral":{id:"mistral/codestral",name:"Mistral Codestral",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.3,output:.8999999999999999,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"mistral/devstral-2":{id:"mistral/devstral-2",name:"Devstral 2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.39999999999999997,output:2,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral/devstral-small-2":{id:"mistral/devstral-small-2",name:"Devstral Small 2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.3,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral/magistral-medium":{id:"mistral/magistral-medium",name:"Magistral Medium 2509",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:5,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:64e3},"mistral/magistral-small":{id:"mistral/magistral-small",name:"Magistral Small 2509",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:64e3},"mistral/ministral-14b":{id:"mistral/ministral-14b",name:"Ministral 14B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.19999999999999998,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral/ministral-3b":{id:"mistral/ministral-3b",name:"Ministral 3B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.09999999999999999,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"mistral/ministral-8b":{id:"mistral/ministral-8b",name:"Ministral 8B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"mistral/mistral-large-3":{id:"mistral/mistral-large-3",name:"Mistral Large 3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral/mistral-medium":{id:"mistral/mistral-medium",name:"Mistral Medium 3.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:2,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:64e3},"mistral/mistral-medium-3.5":{id:"mistral/mistral-medium-3.5",name:"Mistral Medium Latest",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"mistral/mistral-nemo":{id:"mistral/mistral-nemo",name:"Mistral Nemo 12B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:128e3},"mistral/mistral-small":{id:"mistral/mistral-small",name:"Mistral Small",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.3,cacheRead:0,cacheWrite:0},contextWindow:32e3,maxTokens:4e3},"mistral/pixtral-12b":{id:"mistral/pixtral-12b",name:"Pixtral 12B 2409",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.15,output:.15,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4e3},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"Kimi K2 Instruct",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.5700000000000001,output:2.3,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.47,output:2,cacheRead:.14100000000000001,cacheWrite:0},contextWindow:216144,maxTokens:216144},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.6,output:3,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:262114,maxTokens:262114},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.16,cacheWrite:0},contextWindow:262e3,maxTokens:262e3},"moonshotai/kimi-k2.7-code":{id:"moonshotai/kimi-k2.7-code",name:"Kimi K2.7 Code",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.19,cacheWrite:0},contextWindow:256e3,maxTokens:32768},"moonshotai/kimi-k2.7-code-highspeed":{id:"moonshotai/kimi-k2.7-code-highspeed",name:"Kimi K2.7 Code High Speed",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.9,output:8,cacheRead:.38,cacheWrite:0},contextWindow:262144,maxTokens:32768},"moonshotai/kimi-k3":{id:"moonshotai/kimi-k3",name:"Kimi K3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3,output:15,cacheRead:.3,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"moonshotai/kimi-k3-fast":{id:"moonshotai/kimi-k3-fast",name:"Kimi K3 Fast",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:4.5,output:22.5,cacheRead:.44999999999999996,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"Nemotron 3 Nano 30B A3B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.049999999999999996,output:.24,cacheRead:0,cacheWrite:0},contextWindow:262144,maxTokens:262144},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA Nemotron 3 Super 120B A12B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.15,output:.65,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:32e3},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.4,cacheRead:.12,cacheWrite:0},contextWindow:1e6,maxTokens:65e3},"nvidia/nemotron-3.5-lightning":{id:"nvidia/nemotron-3.5-lightning",name:"Nemotron 3.5 Lightning 30B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.049999999999999996,output:.19999999999999998,cacheRead:.01,cacheWrite:0},contextWindow:262144,maxTokens:131072},"nvidia/nemotron-nano-12b-v2-vl":{id:"nvidia/nemotron-nano-12b-v2-vl",name:"Nvidia Nemotron Nano 12B V2 VL",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:.6,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"Nvidia Nemotron Nano 9B V2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.06,output:.22999999999999998,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"GPT-3.5 Turbo",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text"],cost:{input:.5,output:1.5,cacheRead:0,cacheWrite:0},contextWindow:16385,maxTokens:4096},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:10,output:30,cacheRead:0,cacheWrite:0},contextWindow:128e3,maxTokens:4096},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-fast":{id:"openai/gpt-4.1-fast",name:"GPT-4.1 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:3.5,output:14,cacheRead:.875,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.39999999999999997,output:1.5999999999999999,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-mini-fast":{id:"openai/gpt-4.1-mini-fast",name:"GPT-4.1 mini (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.7,output:2.8,cacheRead:.175,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.09999999999999999,output:.39999999999999997,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4.1-nano-fast":{id:"openai/gpt-4.1-nano-fast",name:"GPT-4.1 nano (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.7999999999999999,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1047576,maxTokens:32768},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-fast":{id:"openai/gpt-4o-fast",name:"GPT-4o (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:4.25,output:17,cacheRead:2.125,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.15,output:.6,cacheRead:.075,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-4o-mini-fast":{id:"openai/gpt-4o-mini-fast",name:"GPT-4o mini (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.25,output:1,cacheRead:.125,cacheWrite:0},contextWindow:128e3,maxTokens:16384},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.13,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-fast":{id:"openai/gpt-5-fast",name:"GPT-5 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2.5,output:20,cacheRead:.25,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.024999999999999998,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-mini-fast":{id:"openai/gpt-5-mini-fast",name:"GPT-5 mini (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.44999999999999996,output:3.5999999999999996,cacheRead:.045,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 nano",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.049999999999999996,output:.39999999999999997,cacheRead:.005,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:15,output:120,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:272e3},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.13,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT 5.1 Codex Max",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT 5.1 Codex Mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.25,output:2,cacheRead:.03,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-thinking":{id:"openai/gpt-5.1-thinking",name:"GPT 5.1 Thinking",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:10,cacheRead:.125,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.1-thinking-fast":{id:"openai/gpt-5.1-thinking-fast",name:"GPT 5.1 Thinking (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2.5,output:20,cacheRead:.25,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT 5.2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT 5.2 Codex",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-fast":{id:"openai/gpt-5.2-fast",name:"GPT 5.2 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3.5,output:28,cacheRead:.35,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT 5.2 ",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:21,output:168,cacheRead:0,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT 5.3 Codex",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.75,output:14,cacheRead:.175,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.3-codex-fast":{id:"openai/gpt-5.3-codex-fast",name:"GPT 5.3 Codex (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3.5,output:28,cacheRead:.35,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT 5.4",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.4-fast":{id:"openai/gpt-5.4-fast",name:"GPT 5.4 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT 5.4 Mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-mini-fast":{id:"openai/gpt-5.4-mini-fast",name:"GPT 5.4 Mini (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.5,output:9,cacheRead:.15,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT 5.4 Nano",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.25,cacheRead:.02,cacheWrite:0},contextWindow:4e5,maxTokens:128e3},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT 5.4 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT 5.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"openai/gpt-5.5-fast":{id:"openai/gpt-5.5-fast",name:"GPT 5.5 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:12.5,output:75,cacheRead:1.25,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT 5.5 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:30,output:180,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"openai/gpt-5.6-luna":{id:"openai/gpt-5.6-luna",name:"GPT 5.6 Luna",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.2,cacheRead:.02,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-luna-fast":{id:"openai/gpt-5.6-luna-fast",name:"GPT 5.6 Luna (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.39999999999999997,output:2.4,cacheRead:.04,cacheWrite:.25},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol":{id:"openai/gpt-5.6-sol",name:"GPT 5.6 Sol",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2.5,output:15,cacheRead:.25,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-sol-fast":{id:"openai/gpt-5.6-sol-fast",name:"GPT 5.6 Sol (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:3.125},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra":{id:"openai/gpt-5.6-terra",name:"GPT 5.6 Terra",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:12,cacheRead:.19999999999999998,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"openai/gpt-5.6-terra-fast":{id:"openai/gpt-5.6-terra-fast",name:"GPT 5.6 Terra (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:4,output:24,cacheRead:.39999999999999997,cacheWrite:2.5},contextWindow:105e4,maxTokens:128e3},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.09999999999999999,output:.5,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:131072},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.049999999999999996,output:.19999999999999998,cacheRead:0,cacheWrite:0},contextWindow:131072,maxTokens:8192},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.075,output:.3,cacheRead:.037,cacheWrite:0},contextWindow:131072,maxTokens:65536},"openai/o1":{id:"openai/o1",name:"o1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:15,output:60,cacheRead:7.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3":{id:"openai/o3",name:"o3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:10,output:40,cacheRead:2.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-fast":{id:"openai/o3-fast",name:"o3 (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:3.5,output:14,cacheRead:.875,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.1,output:4.4,cacheRead:.55,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o3-pro":{id:"openai/o3-pro",name:"o3 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:20,output:80,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"openai/o4-mini-fast":{id:"openai/o4-mini-fast",name:"o4-mini (Fast)",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:8,cacheRead:.5,cacheWrite:0},contextWindow:2e5,maxTokens:1e5},"poolside/laguna-s-2.1":{id:"poolside/laguna-s-2.1",name:"Laguna S 2.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.09999999999999999,output:.19999999999999998,cacheRead:.01,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"poolside/laguna-s-2.1-free":{id:"poolside/laguna-s-2.1-free",name:"Laguna S 2.1 Free",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:256e3,maxTokens:32768},"sakana/fugu-ultra":{id:"sakana/fugu-ultra",name:"Fugu Ultra",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:5,output:30,cacheRead:.5,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"sakana/namazu":{id:"sakana/namazu",name:"Sakana Namazu",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.95,output:4,cacheRead:.15,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun 3.5 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.09,output:.3,cacheRead:.02,cacheWrite:0},contextWindow:262114,maxTokens:262114},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"Step 3.7 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:1.15,cacheRead:.04,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"tencent/hy3":{id:"tencent/hy3",name:"Hy3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.14,output:.58,cacheRead:.035,cacheWrite:0},contextWindow:262144,maxTokens:262144},"thinkingmachines/inkling":{id:"thinkingmachines/inkling",name:"Inkling",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1,output:4.05,cacheRead:.16999999999999998,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"thinkingmachines/inkling-small":{id:"thinkingmachines/inkling-small",name:"Inkling Small",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.5,output:1.2,cacheRead:.09999999999999999,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"xai/grok-4.1-fast-non-reasoning":{id:"xai/grok-4.1-fast-non-reasoning",name:"Grok 4.1 Fast Non-Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:.19999999999999998,output:.5,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"xai/grok-4.1-fast-reasoning":{id:"xai/grok-4.1-fast-reasoning",name:"Grok 4.1 Fast Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.19999999999999998,output:.5,cacheRead:.049999999999999996,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"xai/grok-4.20-multi-agent":{id:"xai/grok-4.20-multi-agent",name:"Grok 4.20 Multi-Agent",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.20-multi-agent-beta":{id:"xai/grok-4.20-multi-agent-beta",name:"Grok 4.20 Multi Agent Beta",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.20-non-reasoning":{id:"xai/grok-4.20-non-reasoning",name:"Grok 4.20 Non-Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.20-non-reasoning-beta":{id:"xai/grok-4.20-non-reasoning-beta",name:"Grok 4.20 Beta Non-Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!1,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.20-reasoning":{id:"xai/grok-4.20-reasoning",name:"Grok 4.20 Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.20-reasoning-beta":{id:"xai/grok-4.20-reasoning-beta",name:"Grok 4.20 Beta Reasoning",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:2e6,maxTokens:2e6},"xai/grok-4.3":{id:"xai/grok-4.3",name:"Grok 4.3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:1e6,maxTokens:1e6},"xai/grok-4.5":{id:"xai/grok-4.5",name:"Grok 4.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.3,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"xai/grok-4.6":{id:"xai/grok-4.6",name:"Grok 4.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"xai/grok-build-0.1":{id:"xai/grok-build-0.1",name:"Grok Build 0.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1,output:2,cacheRead:.19999999999999998,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo M2.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.14,output:.28,cacheRead:.0028,cacheWrite:0},contextWindow:105e4,maxTokens:131100},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo V2.5 Pro",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.435,output:.87,cacheRead:.0036,cacheWrite:0},contextWindow:105e4,maxTokens:131e3},"zai/glm-4.5":{id:"zai/glm-4.5",name:"GLM 4.5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:.11,cacheWrite:0},contextWindow:128e3,maxTokens:96e3},"zai/glm-4.5-air":{id:"zai/glm-4.5-air",name:"GLM 4.5 Air",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.19999999999999998,output:1.1,cacheRead:.03,cacheWrite:0},contextWindow:128e3,maxTokens:96e3},"zai/glm-4.5v":{id:"zai/glm-4.5v",name:"GLM 4.5V",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:.6,output:1.7999999999999998,cacheRead:.11,cacheWrite:0},contextWindow:66e3,maxTokens:16e3},"zai/glm-4.6":{id:"zai/glm-4.6",name:"GLM 4.6",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:.11,cacheWrite:0},contextWindow:2e5,maxTokens:96e3},"zai/glm-4.7":{id:"zai/glm-4.7",name:"GLM 4.7",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.6,output:2.2,cacheRead:.12,cacheWrite:0},contextWindow:2e5,maxTokens:12e4},"zai/glm-4.7-flash":{id:"zai/glm-4.7-flash",name:"GLM 4.7 Flash",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.07,output:.39999999999999997,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:131e3},"zai/glm-4.7-flashx":{id:"zai/glm-4.7-flashx",name:"GLM 4.7 FlashX",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.06,output:.39999999999999997,cacheRead:.01,cacheWrite:0},contextWindow:2e5,maxTokens:128e3},"zai/glm-5":{id:"zai/glm-5",name:"GLM 5",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1,output:3.1999999999999997,cacheRead:0,cacheWrite:0},contextWindow:202800,maxTokens:131100},"zai/glm-5-turbo":{id:"zai/glm-5-turbo",name:"GLM 5 Turbo",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.2,output:4,cacheRead:.24,cacheWrite:0},contextWindow:202800,maxTokens:131100},"zai/glm-5.1":{id:"zai/glm-5.1",name:"GLM 5.1",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:202800,maxTokens:64e3},"zai/glm-5.2":{id:"zai/glm-5.2",name:"GLM 5.2",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:.7999999999999999,output:2.5500000000000003,cacheRead:.16,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"zai/glm-5.2-fast":{id:"zai/glm-5.2-fast",name:"GLM 5.2 Fast",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:2.0999999999999996,output:6.6000000000000005,cacheRead:.21,cacheWrite:0},contextWindow:1e6,maxTokens:128e3},"zai/glm-5.3":{id:"zai/glm-5.3",name:"GLM 5.3",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text"],cost:{input:1.4,output:4.4,cacheRead:.26,cacheWrite:0},contextWindow:1e6,maxTokens:12800},"zai/glm-5v-turbo":{id:"zai/glm-5v-turbo",name:"GLM 5V Turbo",api:"anthropic-messages",provider:"vercel-ai-gateway",baseUrl:"https://ai-gateway.vercel.sh",reasoning:!0,input:["text","image"],cost:{input:1.2,output:4,cacheRead:.24,cacheWrite:0},contextWindow:2e5,maxTokens:128e3}},xai:{"grok-4.20-0309-non-reasoning":{id:"grok-4.20-0309-non-reasoning",name:"Grok 4.20 (Non-Reasoning)",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!1,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:3e4},"grok-4.20-0309-reasoning":{id:"grok-4.20-0309-reasoning",name:"Grok 4.20 (Reasoning)",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:3e4},"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!0,input:["text","image"],cost:{input:1.25,output:2.5,cacheRead:.2,cacheWrite:0},contextWindow:1e6,maxTokens:3e4},"grok-4.5":{id:"grok-4.5",name:"Grok 4.5",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.3,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"grok-4.6":{id:"grok-4.6",name:"Grok 4.6",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!0,input:["text","image"],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5},"grok-build-0.1":{id:"grok-build-0.1",name:"Grok Build 0.1",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!0,input:["text","image"],cost:{input:1,output:2,cacheRead:.2,cacheWrite:0},contextWindow:256e3,maxTokens:256e3},"grok-code-fast-1":{id:"grok-code-fast-1",name:"Grok Code Fast 1",api:"openai-completions",provider:"xai",baseUrl:"https://api.x.ai/v1",reasoning:!1,input:["text"],cost:{input:.2,output:1.5,cacheRead:.02,cacheWrite:0},contextWindow:32768,maxTokens:8192}},zai:{"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",api:"openai-completions",provider:"zai",baseUrl:"https://api.z.ai/api/coding/paas/v4",compat:{supportsDeveloperRole:!1,thinkingFormat:"zai",zaiToolStream:!0},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:204800,maxTokens:131072},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",api:"openai-completions",provider:"zai",baseUrl:"https://api.z.ai/api/coding/paas/v4",compat:{supportsDeveloperRole:!1,thinkingFormat:"zai",zaiToolStream:!0},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:2e5,maxTokens:131072},"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",api:"openai-completions",provider:"zai",baseUrl:"https://api.z.ai/api/coding/paas/v4",compat:{supportsDeveloperRole:!1,thinkingFormat:"zai",zaiToolStream:!0},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"glm-5.2-highspeed":{id:"glm-5.2-highspeed",name:"GLM-5.2 Highspeed",api:"openai-completions",provider:"zai",baseUrl:"https://api.z.ai/api/coding/paas/v4",compat:{supportsDeveloperRole:!1,thinkingFormat:"zai",zaiToolStream:!0},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:131072},"glm-5.3":{id:"glm-5.3",name:"GLM-5.3",api:"openai-completions",provider:"zai",baseUrl:"https://api.z.ai/api/coding/paas/v4",compat:{supportsDeveloperRole:!1,thinkingFormat:"zai",zaiToolStream:!0},reasoning:!0,input:["text"],cost:{input:0,output:0,cacheRead:0,cacheWrite:0},contextWindow:1e6,maxTokens:131072}}}});function lAs(t,e){return zXe.get(t)?.get(e)}function Ave(){return Array.from(zXe.keys())}function O6(t){let e=zXe.get(t);return e?Array.from(e.values()):[]}function Wb(t,e){return e.cost.input=t.cost.input/1e6*e.input,e.cost.output=t.cost.output/1e6*e.output,e.cost.cacheRead=t.cost.cacheRead/1e6*e.cacheRead,e.cost.cacheWrite=t.cost.cacheWrite/1e6*e.cacheWrite,e.cost.total=e.cost.input+e.cost.output+e.cost.cacheRead+e.cost.cacheWrite,e.cost}function XE(t){return!!(t.id.includes("gpt-5.2")||t.id.includes("gpt-5.3")||t.id.includes("gpt-5.4")||t.id.includes("opus-4-6")||t.id.includes("opus-4.6"))}function jd(t,e){return!t||!e?!1:t.id===e.id&&t.provider===e.provider}var zXe,z_=I(()=>{"use strict";wer();zXe=new Map;for(let[t,e]of Object.entries(Ber)){let n=new Map;for(let[r,i]of Object.entries(e))n.set(r,i);zXe.set(t,n)}});function GZ(t){return t.systemPromptTokens+t.chatHistoryTokens+t.currentMessageTokens+t.toolDefinitionsTokens+t.toolResultTokens+t.assistantResponseTokens}function cB(t){if(!t||typeof t!="object")return!1;let e=t,n=[e.systemPromptTokens,e.chatHistoryTokens,e.currentMessageTokens,e.toolDefinitionsTokens,e.toolResultTokens,e.assistantResponseTokens];return!Number.isSafeInteger(e.maxContextTokens)||e.maxContextTokens<=0||n.some(r=>!Number.isSafeInteger(r)||r<0)?!1:Number.isSafeInteger(GZ(e))}function KA(t){if(t==="stop"||t==="length"||t==="toolUse")return t;throw new Error(`Unexpected stop reason for done event: ${t}`)}var H_=I(()=>{"use strict"});function xGt(){return new Fp}var UZ,Fp,mS=I(()=>{"use strict";UZ=class{constructor(e,n){this.isComplete=e;this.extractResult=n;this.finalResultPromise=new Promise(r=>{this.resolveFinalResult=r})}isComplete;extractResult;queue=[];waiting=[];done=!1;finalResultPromise;resolveFinalResult;push(e){if(this.done)return;this.isComplete(e)&&(this.done=!0,this.resolveFinalResult(this.extractResult(e)));let n=this.waiting.shift();n?n({value:e,done:!1}):this.queue.push(e)}end(e){for(this.done=!0,e!==void 0&&this.resolveFinalResult(e);this.waiting.length>0;)this.waiting.shift()({value:void 0,done:!0})}async*[Symbol.asyncIterator](){for(;;)if(this.queue.length>0)yield this.queue.shift();else{if(this.done)return;{let e=await new Promise(n=>this.waiting.push(n));if(e.done)return;yield e.value}}}result(){return this.finalResultPromise}},Fp=class extends UZ{constructor(){super(e=>e.type==="done"||e.type==="error",e=>{if(e.type==="done")return e.message;if(e.type==="error")return e.error;throw new Error("Unexpected event type for final result")})}}});function Fer(t){return{type:"text",text:t}}function pAs(t){return{type:"thinking",thinking:t}}function AAs(t,e,n={}){return{type:"toolCall",id:n.id??kGt("tool"),name:t,arguments:e}}function gAs(t){return typeof t=="string"?[Fer(t)]:Array.isArray(t)?t:[t]}function mAs(t,e={}){return{role:"assistant",content:gAs(t),api:ker,provider:Qer,model:Der,usage:QGt,stopReason:e.stopReason??"stop",errorMessage:e.errorMessage,responseId:e.responseId,requestId:e.requestId,timestamp:e.timestamp??Date.now()}}function mve(t){return Math.ceil(t.length/4)}function kGt(t){return`${t}:${Date.now()}:${Math.random().toString(36).slice(2)}`}function Ver(t){return typeof t=="string"?t:t.map(e=>e.type==="text"?e.text:`[image:${e.mimeType}:${e.data.length}]`).join(`
|
|
6
6
|
`)}function Mer(t){return t.map(e=>e.type==="text"?e.text:e.type==="thinking"?e.thinking:`${e.name}:${JSON.stringify(e.arguments)}`).join(`
|
|
7
7
|
`)}function hAs(t){return[t.toolName,...t.content.map(e=>Ver([e]))].join(`
|
|
8
8
|
`)}function fAs(t){return t.role==="user"?Ver(t.content):t.role==="assistant"?Mer(t.content):hAs(t)}function EAs(t){let e=[];t.systemPrompt&&e.push(`system:${t.systemPrompt}`);for(let n of t.messages)e.push(`${n.role}:${fAs(n)}`);return t.tools?.length&&e.push(`tools:${JSON.stringify(t.tools)}`),e.join(`
|
|
@@ -623,7 +623,7 @@ GFS4: `),console.error(t)});qm[Oy]||(rgi=global[Oy]||[],ogi(qm,rgi),qm.close=(fu
|
|
|
623
623
|
`)return`
|
|
624
624
|
`}return t&&t.eol||`
|
|
625
625
|
`}function lQe(t,e){return`\r
|
|
626
|
-
`.indexOf(t.charAt(e))!==-1}var sAn=I(()=>{"use strict";Oat();Ngi()});function kgi(t,e=[],n=cQe.DEFAULT){let r=null,i=[],o=[];function s(l){Array.isArray(i)?i.push(l):r!==null&&(i[r]=l)}return Pat(t,{onObjectBegin:()=>{let l={};s(l),o.push(i),i=l,r=null},onObjectProperty:l=>{r=l},onObjectEnd:()=>{i=o.pop()},onArrayBegin:()=>{let l=[];s(l),o.push(i),i=l,r=null},onArrayEnd:()=>{i=o.pop()},onLiteralValue:s,onError:(l,c,u)=>{e.push({error:l,offset:c,length:u})}},n),i[0]}function aAn(t,e=[],n=cQe.DEFAULT){let r={type:"array",offset:-1,length:-1,children:[],parent:void 0};function i(l){r.type==="property"&&(r.length=l-r.offset,r=r.parent)}function o(l){return r.children.push(l),l}Pat(t,{onObjectBegin:l=>{r=o({type:"object",offset:l,length:-1,parent:r,children:[]})},onObjectProperty:(l,c,u)=>{r=o({type:"property",offset:c,length:-1,parent:r,children:[]}),r.children.push({type:"string",value:l,offset:c,length:u,parent:r})},onObjectEnd:(l,c)=>{i(l+c),r.length=l+c-r.offset,r=r.parent,i(l+c)},onArrayBegin:(l,c)=>{r=o({type:"array",offset:l,length:-1,parent:r,children:[]})},onArrayEnd:(l,c)=>{r.length=l+c-r.offset,r=r.parent,i(l+c)},onLiteralValue:(l,c,u)=>{o({type:aMa(l),offset:c,length:u,parent:r,value:l}),i(c+u)},onSeparator:(l,c,u)=>{r.type==="property"&&(l===":"?r.colonOffset=c:l===","&&i(c))},onError:(l,c,u)=>{e.push({error:l,offset:c,length:u})}},n);let a=r.children[0];return a&&delete a.parent,a}function Lat(t,e){if(!t)return;let n=t;for(let r of e)if(typeof r=="string"){if(n.type!=="object"||!Array.isArray(n.children))return;let i=!1;for(let o of n.children)if(Array.isArray(o.children)&&o.children[0].value===r&&o.children.length===2){n=o.children[1],i=!0;break}if(!i)return}else{let i=r;if(n.type!=="array"||i<0||!Array.isArray(n.children)||i>=n.children.length)return;n=n.children[i]}return n}function Pat(t,e,n=cQe.DEFAULT){let r=aQe(t,!1),i=[],o=0;function s(k){return k?()=>o===0&&k(r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter()):()=>!0}function a(k){return k?W=>o===0&&k(W,r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter()):()=>!0}function l(k){return k?W=>o===0&&k(W,r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter(),()=>i.slice()):()=>!0}function c(k){return k?()=>{o>0?o++:k(r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter(),()=>i.slice())===!1&&(o=1)}:()=>!0}function u(k){return k?()=>{o>0&&o--,o===0&&k(r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter())}:()=>!0}let d=c(e.onObjectBegin),p=l(e.onObjectProperty),A=u(e.onObjectEnd),g=c(e.onArrayBegin),m=u(e.onArrayEnd),h=l(e.onLiteralValue),f=a(e.onSeparator),E=s(e.onComment),b=a(e.onError),y=n&&n.disallowComments,_=n&&n.allowTrailingComma;function v(){for(;;){let k=r.scan();switch(r.getTokenError()){case 4:R(14);break;case 5:R(15);break;case 3:R(13);break;case 1:y||R(11);break;case 2:R(12);break;case 6:R(16);break}switch(k){case 12:case 13:y?R(10):E();break;case 16:R(1);break;case 15:case 14:break;default:return k}}}function R(k,W=[],Y=[]){if(b(k),W.length+Y.length>0){let j=r.getToken();for(;j!==17;){if(W.indexOf(j)!==-1){v();break}else if(Y.indexOf(j)!==-1)break;j=v()}}}function x(k){let W=r.getTokenValue();return k?h(W):(p(W),i.push(W)),v(),!0}function w(){switch(r.getToken()){case 11:let k=r.getTokenValue(),W=Number(k);isNaN(W)&&(R(2),W=0),h(W);break;case 7:h(null);break;case 8:h(!0);break;case 9:h(!1);break;default:return!1}return v(),!0}function F(){return r.getToken()!==10?(R(3,[],[2,5]),!1):(x(!1),r.getToken()===6?(f(":"),v(),Q()||R(4,[],[2,5])):R(5,[],[2,5]),i.pop(),!0)}function T(){d(),v();let k=!1;for(;r.getToken()!==2&&r.getToken()!==17;){if(r.getToken()===5){if(k||R(4,[],[]),f(","),v(),r.getToken()===2&&_)break}else k&&R(6,[],[]);F()||R(4,[],[2,5]),k=!0}return A(),r.getToken()!==2?R(7,[2],[]):v(),!0}function D(){g(),v();let k=!0,W=!1;for(;r.getToken()!==4&&r.getToken()!==17;){if(r.getToken()===5){if(W||R(4,[],[]),f(","),v(),r.getToken()===4&&_)break}else W&&R(6,[],[]);k?(i.push(0),k=!1):i[i.length-1]++,Q()||R(4,[],[4,5]),W=!0}return m(),k||i.pop(),r.getToken()!==4?R(8,[4],[]):v(),!0}function Q(){switch(r.getToken()){case 3:return D();case 1:return T();case 10:return x(!0);default:return w()}}return v(),r.getToken()===17?n.allowEmptyContent?!0:(R(4,[],[]),!1):Q()?(r.getToken()!==17&&R(9,[],[]),!0):(R(4,[],[]),!1)}function aMa(t){switch(typeof t){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(t){if(Array.isArray(t))return"array"}else return"null";return"object"}default:return"null"}}var cQe,lAn=I(()=>{"use strict";Oat();(function(t){t.DEFAULT={allowTrailingComma:!1}})(cQe||(cQe={}))});function Qgi(t,e,n,r){let i=e.slice(),s=aAn(t,[]),a,l;for(;i.length>0&&(l=i.pop(),a=Lat(s,i),a===void 0&&n!==void 0);)typeof l=="string"?n={[l]:n}:n=[n];if(a)if(a.type==="object"&&typeof l=="string"&&Array.isArray(a.children)){let c=Lat(a,[l]);if(c!==void 0)if(n===void 0){if(!c.parent)throw new Error("Malformed AST");let u=a.children.indexOf(c.parent),d,p=c.parent.offset+c.parent.length;if(u>0){let A=a.children[u-1];d=A.offset+A.length}else d=a.offset+1,a.children.length>1&&(p=a.children[1].offset);return R7(t,{offset:d,length:p-d,content:""},r)}else return R7(t,{offset:c.offset,length:c.length,content:JSON.stringify(n)},r);else{if(n===void 0)return[];let u=`${JSON.stringify(l)}: ${JSON.stringify(n)}`,d=r.getInsertionIndex?r.getInsertionIndex(a.children.map(A=>A.children[0].value)):a.children.length,p;if(d>0){let A=a.children[d-1];p={offset:A.offset+A.length,length:0,content:","+u}}else a.children.length===0?p={offset:a.offset+1,length:0,content:u}:p={offset:a.offset+1,length:0,content:u+","};return R7(t,p,r)}}else if(a.type==="array"&&typeof l=="number"&&Array.isArray(a.children)){let c=l;if(c===-1){let u=`${JSON.stringify(n)}`,d;if(a.children.length===0)d={offset:a.offset+1,length:0,content:u};else{let p=a.children[a.children.length-1];d={offset:p.offset+p.length,length:0,content:","+u}}return R7(t,d,r)}else if(n===void 0&&a.children.length>=0){let u=l,d=a.children[u],p;if(a.children.length===1)p={offset:a.offset+1,length:a.length-2,content:""};else if(a.children.length-1===u){let A=a.children[u-1],g=A.offset+A.length,m=a.offset+a.length;p={offset:g,length:m-2-g,content:""}}else p={offset:d.offset,length:a.children[u+1].offset-d.offset,content:""};return R7(t,p,r)}else if(n!==void 0){let u,d=`${JSON.stringify(n)}`;if(!r.isArrayInsertion&&a.children.length>l){let p=a.children[l];u={offset:p.offset,length:p.length,content:d}}else if(a.children.length===0||l===0)u={offset:a.offset+1,length:0,content:a.children.length===0?d:d+","};else{let p=l>a.children.length?a.children.length:l,A=a.children[p-1];u={offset:A.offset+A.length,length:0,content:","+d}}return R7(t,u,r)}else throw new Error(`Can not ${n===void 0?"remove":r.isArrayInsertion?"insert":"modify"} Array index ${c} as length is not sufficient`)}else throw new Error(`Can not add ${typeof l!="number"?"index":"property"} to parent of type ${a.type}`);else{if(n===void 0)throw new Error("Can not delete in empty document");return R7(t,{offset:s?s.offset:0,length:s?s.length:0,content:JSON.stringify(n)},r)}}function R7(t,e,n){if(!n.formattingOptions)return[e];let r=Wat(t,e),i=e.offset,o=e.offset+e.content.length;if(e.length===0||e.content.length===0){for(;i>0&&!lQe(r,i-1);)i--;for(;o<r.length&&!lQe(r,o);)o++}let s=oAn(r,{offset:i,length:o-i},{...n.formattingOptions,keepLines:!1});for(let l=s.length-1;l>=0;l--){let c=s[l];r=Wat(r,c),i=Math.min(i,c.offset),o=Math.max(o,c.offset+c.length),o+=c.content.length-c.length}let a=t.length-(r.length-o)-i;return[{offset:i,length:a,content:r.substring(i,o)}]}function Wat(t,e){return t.substring(0,e.offset)+e.content+t.substring(e.offset+e.length)}var Dgi=I(()=>{"use strict";sAn();lAn()});function Ogi(t){switch(t){case 1:return"InvalidSymbol";case 2:return"InvalidNumberFormat";case 3:return"PropertyNameExpected";case 4:return"ValueExpected";case 5:return"ColonExpected";case 6:return"CommaExpected";case 7:return"CloseBraceExpected";case 8:return"CloseBracketExpected";case 9:return"EndOfFileExpected";case 10:return"InvalidCommentToken";case 11:return"UnexpectedEndOfComment";case 12:return"UnexpectedEndOfString";case 13:return"UnexpectedEndOfNumber";case 14:return"InvalidUnicode";case 15:return"InvalidEscapeCharacter";case 16:return"InvalidCharacter"}return"<unknown ParseErrorCode>"}function Lgi(t,e,n,r){return Qgi(t,e,n,r)}function Pgi(t,e){let n=e.slice(0).sort((i,o)=>{let s=i.offset-o.offset;return s===0?i.length-o.length:s}),r=t.length;for(let i=n.length-1;i>=0;i--){let o=n[i];if(o.offset+o.length<=r)t=Wat(t,o);else throw new Error("Overlapping edit");r=o.offset}return t}var Fgi,Vgi,Ggi,Ugi,Mgi,Wgi=I(()=>{"use strict";sAn();Dgi();Oat();lAn();(function(t){t[t.None=0]="None",t[t.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",t[t.UnexpectedEndOfString=2]="UnexpectedEndOfString",t[t.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",t[t.InvalidUnicode=4]="InvalidUnicode",t[t.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",t[t.InvalidCharacter=6]="InvalidCharacter"})(Fgi||(Fgi={}));(function(t){t[t.OpenBraceToken=1]="OpenBraceToken",t[t.CloseBraceToken=2]="CloseBraceToken",t[t.OpenBracketToken=3]="OpenBracketToken",t[t.CloseBracketToken=4]="CloseBracketToken",t[t.CommaToken=5]="CommaToken",t[t.ColonToken=6]="ColonToken",t[t.NullKeyword=7]="NullKeyword",t[t.TrueKeyword=8]="TrueKeyword",t[t.FalseKeyword=9]="FalseKeyword",t[t.StringLiteral=10]="StringLiteral",t[t.NumericLiteral=11]="NumericLiteral",t[t.LineCommentTrivia=12]="LineCommentTrivia",t[t.BlockCommentTrivia=13]="BlockCommentTrivia",t[t.LineBreakTrivia=14]="LineBreakTrivia",t[t.Trivia=15]="Trivia",t[t.Unknown=16]="Unknown",t[t.EOF=17]="EOF"})(Vgi||(Vgi={}));Ggi=kgi,Ugi=Pat;(function(t){t[t.InvalidSymbol=1]="InvalidSymbol",t[t.InvalidNumberFormat=2]="InvalidNumberFormat",t[t.PropertyNameExpected=3]="PropertyNameExpected",t[t.ValueExpected=4]="ValueExpected",t[t.ColonExpected=5]="ColonExpected",t[t.CommaExpected=6]="CommaExpected",t[t.CloseBraceExpected=7]="CloseBraceExpected",t[t.CloseBracketExpected=8]="CloseBracketExpected",t[t.EndOfFileExpected=9]="EndOfFileExpected",t[t.InvalidCommentToken=10]="InvalidCommentToken",t[t.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",t[t.UnexpectedEndOfString=12]="UnexpectedEndOfString",t[t.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",t[t.InvalidUnicode=14]="InvalidUnicode",t[t.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",t[t.InvalidCharacter=16]="InvalidCharacter"})(Mgi||(Mgi={}))});var Ly=I(()=>{Y1e();Y1e()});var Zgi,uMa,dMa,pMa,AMa,gMa,mMa,hMa,Xgi,Ygi=I(()=>{"use strict";Ly();Zgi=t=>t===null?"null":Array.isArray(t)?"an array":`a ${typeof t}`,uMa=t=>{try{return new RegExp(t),!0}catch{return!1}},dMa=On.discriminatedUnion("type",[On.object({type:On.enum(["allow","deny","ask-user"])}),On.object({type:On.literal("webhook-policy"),webhookUrl:On.url({error:'"permission.webhookUrl" must be a valid URL for a "webhook-policy".'})}),On.object({type:On.literal("script-policy"),script:On.string({error:'"permission.script" must be a non-empty string for a "script-policy".'}).min(1,{error:'"permission.script" must be a non-empty string for a "script-policy".'})})],{error:'unknown or invalid "permission".'}),pMa=On.object({toolName:On.string({error:'"toolName" must be a non-empty string.'}).min(1,{error:'"toolName" must be a non-empty string.'}),permission:dMa,eventType:On.enum(["tool-call","tool-response"],{error:'"eventType" must be "tool-call" or "tool-response" when present.'}).optional(),shellInputRegex:On.string({error:'"shellInputRegex" must be a string when present.'}).refine(uMa,{error:'"shellInputRegex" must be a valid regular expression when present.'}).optional()},{error:t=>`rule must be an object, got ${Zgi(t.input)}.`}),AMa=t=>{let e=t.issues[0];if(e===void 0)return"invalid rule.";let n=e.message.endsWith(".")?e.message:`${e.message}.`;return e.path.length===0||n.startsWith('"')?n:`"${e.path.join(".")}": ${n}`},gMa='Expected { "toolName": string, "permission": { "type": "allow" | "deny" | "ask-user" } | { "type": "webhook-policy", "webhookUrl": string } | { "type": "script-policy", "script": string }, "eventType"?: "tool-call" | "tool-response", "shellInputRegex"?: string }.',mMa=t=>{let e=t.toolPermissions;if(e===void 0)return[];if(!Array.isArray(e))return t.toolPermissions=void 0,[`Ignoring "toolPermissions": expected an array of rules, got ${Zgi(e)}.`];let n=[],r=[];for(let i=0;i<e.length;i++){let o=pMa.safeParse(e[i]);o.success?r.push(e[i]):n.push(`Dropping invalid "toolPermissions" rule at index ${i}: ${AMa(o.error)} ${gMa}`)}return n.length>0&&(t.toolPermissions=r),n},hMa=t=>{if("queueMode"in t&&!("steeringMode"in t)&&(t.steeringMode=t.queueMode,t.queueMode=void 0),!("transport"in t)&&typeof t.websockets=="boolean"&&(t.transport=t.websockets?"websocket":"sse",t.websockets=void 0),"skills"in t&&typeof t.skills=="object"&&t.skills!==null&&!Array.isArray(t.skills)){let e=t.skills;e.enableSkillCommands!==void 0&&t.enableSkillCommands===void 0&&(t.enableSkillCommands=e.enableSkillCommands),Array.isArray(e.customDirectories)&&e.customDirectories.length>0?t.skills=e.customDirectories:t.skills=void 0}return t},Xgi=t=>{let e=hMa(t),n=mMa(e);return{settings:e,warnings:n}}});var fMa,EMa,cAn,bMa,cJ,CMa,Jgi,v7,vme=I(()=>{"use strict";Wgi();Ygi();fMa=t=>typeof t=="object"&&t!==null&&!Array.isArray(t),EMa=t=>{Ugi(t,{onObjectProperty:e=>{if(cJ.has(e))throw new Error(`Settings document contains reserved key "${e}".`)}})},cAn=t=>{EMa(t);let e=[],n=Ggi(t,e,{allowTrailingComma:!0});if(e.length>0){let r=e.map(i=>Ogi(i.error)).join(", ");throw new Error(`Failed to parse settings JSON: ${r}`)}if(n===void 0)return{};if(!fMa(n))throw new Error("Settings document is not a valid object. Expected a JSON object but found a different type (e.g., array).");return n},bMa={tabSize:2,insertSpaces:!0},cJ=new Set(["__proto__","constructor","prototype"]),CMa=t=>{let e=typeof t=="string"?t.split("."):[...t],n=typeof t=="string"?t:t.join(".");for(let r of e){if(r==="")throw new Error(`Invalid settings path "${n}": empty segment.`);if(cJ.has(r))throw new Error(`Invalid settings path "${n}": "${r}" is a reserved key.`)}return e},Jgi=(t,e,n)=>{let r=Lgi(t,CMa(e),n,{formattingOptions:bMa});return Pgi(t,r)},v7=class{constructor(e){this.settings={};this.warnings=[];this.store=e}drainWarnings(){let e=this.warnings;return this.warnings=[],e}getSettings(){return structuredClone(this.settings)}publish(e){let n=cAn(e),{settings:r,warnings:i}=Xgi(n);this.warnings.push(...i),this.settings=r}reload(){let e=this.store.read();if(e===void 0||e.trim()===""){this.settings={};return}this.publish(e)}remove(e){let n={persisted:!1,effectiveChange:!1};return this.store.modify(r=>{if(r===void 0||r.trim()==="")return;cAn(r);let i=r;for(let o of e.paths)i=Jgi(i,o,void 0);if(i!==r)return this.publish(i),n={persisted:!0,effectiveChange:!0},i}),n}update(e){return this.updateAll([e])}updateAll(e){let n={persisted:!1,effectiveChange:!1};return this.store.modify(r=>{let i=r===void 0||r.trim()===""?"{}":r;cAn(i);let o=e.reduce((s,a)=>Jgi(s,a.path,a.value),i);if(o!==i)return this.publish(o),n={persisted:!0,effectiveChange:!0},o}),n}}});var uAn,uQe,zgi,yMa,IMa,SMa,_Ma,B7,Zat=I(()=>{"use strict";Lr();vme();uAn=t=>typeof t=="object"&&t!==null&&!Array.isArray(t),uQe=t=>Array.isArray(t)?t.map(uQe):uAn(t)?Object.fromEntries(Object.entries(t).filter(([e])=>!cJ.has(e)).map(([e,n])=>[e,uQe(n)])):structuredClone(t),zgi=(t,e,n=!1)=>{for(let[r,i]of Object.entries(e)){if(cJ.has(r)||i===void 0)continue;let o=t[r];n&&r==="toolPermissions"&&Array.isArray(i)?t[r]=[...uQe(i),...Array.isArray(o)?o:[]]:uAn(o)&&uAn(i)?t[r]={...o,...uQe(i)}:t[r]=uQe(i)}},yMa="managed",IMa="global",SMa="project",_Ma="local",B7=class{constructor(e,n={},r={}){this.errors=[];this.locals=e,this.overrides=n,this.vfs=r}drainErrors(){let e=this.errors;return this.errors=[],e}getSettings(){return this.mergeLayers([IMa,SMa,_Ma,yMa])}getGlobalSettings(){return this.locals.global.getSettings()}getManagedSettings(){return this.locals.managed.getSettings()}getLocalSettings(){return this.locals.local.getSettings()}getProjectSettings(){return this.locals.project.getSettings()}getVfsUserSettings(){return this.vfs.vfsUser?.getSettings()??{}}getVfsSpaceSettings(){return this.vfs.vfsSpace?.getSettings()??{}}getVfsOrgSettings(){return this.vfs.vfsOrg?.getSettings()??{}}mergeLayers(e){let n={},r=e.map(i=>this.locals[i].getSettings());for(let i of r)zgi(n,i,!0);return zgi(n,this.overrides),n}reload(){let e=[...Object.entries(this.locals),...Object.entries(this.vfs)];for(let[n,r]of e)if(r){try{r.reload()}catch(i){let o=i instanceof Error?i:new Error(String(i));mn.error("settings reload failed",{scope:n,error:o}),this.errors.push({scope:n,error:o})}for(let i of r.drainWarnings())this.errors.push({scope:n,error:new Error(i)})}}remove(e,n){return this.routeWrite(e,r=>r.remove(n))}update(e,n){return this.routeWrite(e,r=>r.update(n))}updateAll(e,n){return this.routeWrite(e,r=>r.updateAll(n))}routeWrite(e,n){if(e==="managed")throw new Error('Refusing to write read-only settings scope "managed"');let r=this.getSettings(),i=n(this.locals[e]);for(let a of this.locals[e].drainWarnings())this.errors.push({scope:e,error:new Error(a)});if(!i.persisted)return i;let o=this.getSettings(),s=JSON.stringify(r)!==JSON.stringify(o);return{persisted:i.persisted,effectiveChange:s}}}});var dAn,pAn=I(()=>{"use strict";wgi();Zat();vme();dAn=(t,e)=>{let n=i=>new v7(new Uat(i)),r=new B7({managed:n(t.managedPath),global:n(t.globalPath),project:n(t.projectPath),local:n(t.localPath)},e,{vfsUser:t.vfsUserPath?n(t.vfsUserPath):void 0,vfsSpace:t.vfsSpacePath?n(t.vfsSpacePath):void 0,vfsOrg:t.vfsOrgPath?n(t.vfsOrgPath):void 0});return r.reload(),r}});var AAn,gAn,Hgi,w7,Xat=I(()=>{"use strict";vme();AAn=t=>typeof t=="object"&&t!==null&&!Array.isArray(t),gAn=t=>{if(Array.isArray(t))return t.map(gAn);if(!AAn(t))return structuredClone(t);let e={};for(let[n,r]of Object.entries(t))cJ.has(n)||(e[n]=gAn(r));return e},Hgi=(t,e)=>{let n=structuredClone(t);for(let r of Object.keys(e)){let i=e[r];if(i===void 0||cJ.has(r))continue;let o=n[r],s=gAn(i);AAn(o)&&AAn(s)?n[r]={...o,...s}:n[r]=s}return n},w7=class{constructor(e){this.errors=[];this.manager=e}get settings(){let e=this.manager.getSettings();return this.dynamicOverrides?Hgi(e,this.dynamicOverrides):e}update(e,n,r){if(this.dynamicOverrides=void 0,typeof n=="object"&&"path"in n)return this.manager.update(e,n);try{this.manager.update(e,{path:n,value:r})}catch(i){let o=i instanceof Error?i:new Error(String(i));this.errors.push({scope:e,error:o})}}updateAll(e,n){return this.dynamicOverrides=void 0,this.manager.updateAll(e,n)}remove(e,n){return this.dynamicOverrides=void 0,this.manager.remove(e,n)}getSettings(){return structuredClone(this.settings)}getGlobalSettings(){return structuredClone(this.manager.getGlobalSettings())}getProjectSettings(){return structuredClone(this.manager.getProjectSettings())}getLocalSettings(){return structuredClone(this.manager.getLocalSettings())}getManagedSettings(){return structuredClone(this.manager.getManagedSettings())}getVfsUserSettings(){return structuredClone(this.manager.getVfsUserSettings())}getVfsSpaceSettings(){return structuredClone(this.manager.getVfsSpaceSettings())}getVfsOrgSettings(){return structuredClone(this.manager.getVfsOrgSettings())}reload(){this.manager.reload(),this.dynamicOverrides=void 0}applyOverrides(e){this.dynamicOverrides=Hgi(this.dynamicOverrides??{},e)}flush(){}drainErrors(){let e=[...this.manager.drainErrors(),...this.errors];return this.errors=[],e}getLastChangelogVersion(){return this.settings.lastChangelogVersion}setLastChangelogVersion(e){this.update("global","lastChangelogVersion",e)}getSessionDir(){return this.settings.sessionDir}getWorktreeDir(){return this.settings.worktreeDir}getDefaultProvider(){return this.settings.defaultProvider}getDefaultModel(){return this.settings.defaultModel}setDefaultProvider(e){this.update("global","defaultProvider",e)}setDefaultModel(e){this.update("global","defaultModel",e)}setDefaultModelAndProvider(e,n){this.dynamicOverrides=void 0;try{this.manager.updateAll("global",[{path:"defaultProvider",value:e},{path:"defaultModel",value:n}])}catch(r){let i=r instanceof Error?r:new Error(String(r));this.errors.push({scope:"global",error:i})}}getSteeringMode(){return this.settings.steeringMode||"one-at-a-time"}setSteeringMode(e){this.update("global","steeringMode",e)}getFollowUpMode(){return this.settings.followUpMode||"one-at-a-time"}setFollowUpMode(e){this.update("global","followUpMode",e)}getTheme(){return this.settings.theme}setTheme(e){this.update("global","theme",e)}getDefaultThinkingLevel(){return this.settings.defaultThinkingLevel}setDefaultThinkingLevel(e){this.update("global","defaultThinkingLevel",e)}getTransport(){return this.settings.transport??"sse"}setTransport(e){this.update("global","transport",e)}getCompactionEnabled(){return this.settings.compaction?.enabled??!0}setCompactionEnabled(e){this.update("global","compaction.enabled",e)}getCompactionReserveTokens(){return this.settings.compaction?.reserveTokens??16384}getCompactionProtectedHeadTokens(){return this.settings.compaction?.protectedHeadTokens??2e4}getCompactionKeepRecentTokens(){return this.settings.compaction?.keepRecentTokens??2e4}getCompactionSummarizationModel(){return this.settings.compaction?.summarizationModel}getCompactionSettings(){return{enabled:this.getCompactionEnabled(),reserveTokens:this.getCompactionReserveTokens(),protectedHeadTokens:this.getCompactionProtectedHeadTokens(),keepRecentTokens:this.getCompactionKeepRecentTokens(),summarizationModel:this.getCompactionSummarizationModel(),useReserveTrigger:this.settings.compaction?.useReserveTrigger??!1,inputBudgetTriggerRatio:this.settings.compaction?.inputBudgetTriggerRatio,fallbackInputBudgetRatio:this.settings.compaction?.fallbackInputBudgetRatio,maxMessageTokens:this.settings.compaction?.maxMessageTokens}}getBranchSummarySettings(){return{reserveTokens:this.settings.branchSummary?.reserveTokens??16384,skipPrompt:this.settings.branchSummary?.skipPrompt??!1}}getBranchSummarySkipPrompt(){return this.settings.branchSummary?.skipPrompt??!1}getRetryEnabled(){return this.settings.retry?.enabled??!0}setRetryEnabled(e){this.update("global","retry.enabled",e)}getRetrySettings(){return{enabled:this.getRetryEnabled(),maxRetries:this.settings.retry?.maxRetries??3,baseDelayMs:this.settings.retry?.baseDelayMs??2e3,maxDelayMs:this.settings.retry?.maxDelayMs??6e4}}getHideThinkingBlock(){return this.settings.hideThinkingBlock??!1}setHideThinkingBlock(e){this.update("global","hideThinkingBlock",e)}getCollapsePromptCommands(){return this.settings.collapsePromptCommands??!1}setCollapsePromptCommands(e){this.update("global","collapsePromptCommands",e)}getShellPath(){return this.settings.shellPath}setShellPath(e){this.update("global","shellPath",e)}getQuietStartup(){return this.settings.quietStartup??!1}setQuietStartup(e){this.update("global","quietStartup",e)}getShellCommandPrefix(){return this.settings.shellCommandPrefix}setShellCommandPrefix(e){this.update("global","shellCommandPrefix",e)}getNpmCommand(){return this.settings.npmCommand?[...this.settings.npmCommand]:void 0}setNpmCommand(e){this.update("global","npmCommand",e?[...e]:void 0)}getCollapseChangelog(){return this.settings.collapseChangelog??!1}setCollapseChangelog(e){this.update("global","collapseChangelog",e)}getPackages(){return[...this.settings.packages??[]]}setPackages(e){this.update("global","packages",e)}setProjectPackages(e){this.update("project","packages",e)}setLocalPackages(e){this.update("local","packages",e)}getExtensionPaths(){return[...this.settings.extensions??[]]}setExtensionPaths(e){this.update("global","extensions",e)}setProjectExtensionPaths(e){this.update("project","extensions",e)}setLocalExtensionPaths(e){this.update("local","extensions",e)}getSkillPaths(){return[...this.settings.skills??[]]}setSkillPaths(e){this.update("global","skills",e)}setProjectSkillPaths(e){this.update("project","skills",e)}setLocalSkillPaths(e){this.update("local","skills",e)}getPromptTemplatePaths(){return[...this.settings.prompts??[]]}setPromptTemplatePaths(e){this.update("global","prompts",e)}setProjectPromptTemplatePaths(e){this.update("project","prompts",e)}setLocalPromptTemplatePaths(e){this.update("local","prompts",e)}getThemePaths(){return[...this.settings.themes??[]]}setThemePaths(e){this.update("global","themes",e)}setProjectThemePaths(e){this.update("project","themes",e)}setLocalThemePaths(e){this.update("local","themes",e)}getEnableSkillCommands(){return this.settings.enableSkillCommands??!0}setEnableSkillCommands(e){this.update("global","enableSkillCommands",e)}getEnableHashline(){return this.settings.enableHashline??!1}setEnableHashline(e){this.update("global","enableHashline",e)}getEnabledPlugins(){let e={};for(let[n,r]of Object.entries(this.settings.enabledPlugins??{}))typeof r=="boolean"&&(e[n]=r);return e}getToolPermissions(){let e=this.settings.toolPermissions;return Array.isArray(e)?structuredClone(e):[]}getToolPermissionScopeRuleSets(){let e=[this.getManagedSettings(),this.getLocalSettings(),this.getProjectSettings(),this.getGlobalSettings()],n=[];for(let r of e){let i=r.toolPermissions;Array.isArray(i)&&i.length>0&&n.push(structuredClone(i))}return n}setPluginEnabled(e,n){this.update("global",["enabledPlugins",e],n)}getEnableToolSearch(){return this.settings.enableToolSearch??!1}getThinkingBudgets(){return this.settings.thinkingBudgets}getShowImages(){return this.settings.terminal?.showImages??!0}setShowImages(e){this.update("global","terminal.showImages",e)}getClearOnShrink(){return this.settings.terminal?.clearOnShrink!==void 0?this.settings.terminal.clearOnShrink:process.env.PI_CLEAR_ON_SHRINK==="1"}setClearOnShrink(e){this.update("global","terminal.clearOnShrink",e)}getImageAutoResize(){return this.settings.images?.autoResize??!0}setImageAutoResize(e){this.update("global","images.autoResize",e)}getBlockImages(){return this.settings.images?.blockImages??!1}setBlockImages(e){this.update("global","images.blockImages",e)}getEnabledModels(){return this.settings.enabledModels?[...this.settings.enabledModels]:void 0}setEnabledModels(e){this.update("global","enabledModels",e)}getDoubleEscapeAction(){return this.settings.doubleEscapeAction??"tree"}setDoubleEscapeAction(e){this.update("global","doubleEscapeAction",e)}getTreeFilterMode(){let e=this.settings.treeFilterMode;return e&&["default","no-tools","user-only","labeled-only","all"].includes(e)?e:"default"}setTreeFilterMode(e){this.update("global","treeFilterMode",e)}getShowHardwareCursor(){return this.settings.showHardwareCursor??process.env.PI_HARDWARE_CURSOR==="1"}setShowHardwareCursor(e){this.update("global","showHardwareCursor",e)}getEditorPaddingX(){return this.settings.editorPaddingX??0}setEditorPaddingX(e){this.update("global","editorPaddingX",Math.max(0,Math.min(3,Math.floor(e))))}getAutocompleteMaxVisible(){return this.settings.autocompleteMaxVisible??5}setAutocompleteMaxVisible(e){this.update("global","autocompleteMaxVisible",Math.max(3,Math.min(20,Math.floor(e))))}getCodeBlockIndent(){return this.settings.markdown?.codeBlockIndent??" "}getHooks(){return this.settings.hooks}getTelemetrySettings(){return this.settings.telemetry}getEnvInjection(){let e=this.settings.env;if(!e||typeof e!="object")return{};let n={};for(let[r,i]of Object.entries(e))typeof i=="string"&&(n[r]=i);return n}getFeatureFlagOverrides(){return this.settings.featureFlagOverrides}getIndexingDirsUnion(){let e=[this.getManagedSettings(),this.getLocalSettings(),this.getProjectSettings(),this.getGlobalSettings()],n=r=>{let i=new Set,o=[];for(let s of e){let a=s[r];if(Array.isArray(a))for(let l of a)typeof l!="string"||i.has(l)||(i.add(l),o.push(l))}return o};return{allowDirs:n("indexingAllowDirs"),denyDirs:n("indexingDenyDirs")}}}});var mAn,hAn=I(()=>{"use strict";pAn();Xat();mAn=(t,e)=>new w7(dAn(t,e))});var dQe,fAn=I(()=>{"use strict";dQe=class{constructor(e){this.content=e}read(){return this.content}modify(e){let n=e(this.content);n!==void 0&&(this.content=n)}}});import{homedir as Kgi}from"node:os";import{join as x7}from"node:path";var RMa,vMa,EAn,ol,jgi=I(()=>{"use strict";fAn();Zat();vme();hAn();Xat();RMa="AUGGIE-V2_CODING_AGENT_DIR",vMa=()=>{let t=process.env[`${RMa}_MANAGED`];if(t)return t==="~"?x7(Kgi(),"settings.json"):t.startsWith("~/")?Kgi()+t.slice(1):t;if(process.platform==="win32"){let e=process.env.ProgramData||"C:\\ProgramData";return x7(e,"augment","settings.json")}return x7("/etc","augment","settings.json")},EAn=t=>t?x7(t,".augment","settings.json"):void 0,ol={create(t,e,n){return mAn({globalPath:x7(e,"settings.json"),projectPath:x7(t,".augment","settings.json"),localPath:x7(t,".augment","settings.local.json"),managedPath:vMa(),vfsUserPath:EAn(n?.user),vfsSpacePath:EAn(n?.space),vfsOrgPath:EAn(n?.org)})},inMemory(t={}){let e=r=>new v7(new dQe(r===void 0?void 0:JSON.stringify(r))),n=new B7({managed:e(),local:e(),project:e(),global:e(t)});return n.reload(),new w7(n)}}});var ub=I(()=>{"use strict";hAn();Xat();jgi();pAn();fAn();Zat();vme()});var uJ,bAn=I(()=>{uJ={name:"@augmentcode/auggie-v2",version:"1.2.0",description:"Auggie CLI Client by Augment Code",type:"module",piConfig:{name:"auggie-v2",configDir:".augment"},bin:{pi:"dist/cli.js"},main:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{source:"./src/index.ts",types:"./dist/index.d.ts",import:"./dist/index.js"},"./hooks":{types:"./dist/core/hooks/index.d.ts",import:"./dist/core/hooks/index.js"}},files:["dist","docs","examples","CHANGELOG.md"],scripts:{"check-types":"pnpm run bake:export-html && tsgo -p tsconfig.build.json",clean:"shx rm -rf dist","cli:source":"tsx --conditions=source src/cli.ts",dev:"pnpm run bake:export-html && pnpm run cli:source","dev:debug":"pnpm run bake:export-html && node --conditions=source --inspect-wait=ws://localhost:6499/57uz7t2uyri --import tsx src/cli.ts","bake:export-html":"node scripts/bake-export-html.mjs",build:"pnpm run bake:export-html && tsgo -p tsconfig.build.json --noCheck && shx chmod +x dist/cli.js && shx cp src/runtime/register-extensions.js dist/runtime/register-extensions.js && shx cp src/runtime/cloud-bridge.js dist/runtime/cloud-bridge.js && shx cp src/runtime/cloud-tracer-bridge.js dist/runtime/cloud-tracer-bridge.js && shx cp src/runtime/cloud-error-bridge.js dist/runtime/cloud-error-bridge.js && shx cp src/runtime/mcp-error-bridge.js dist/runtime/mcp-error-bridge.js && pnpm run copy-assets","build:npm:release":"node scripts/build-npm-release.mjs","build:migration-engine":"node scripts/build-migration-engine.mjs","build:release:sea":"node scripts/build-sea-release.mjs","build:release:sea:from-onison":"node scripts/build-sea-from-onison.mjs","build:release-js":"pnpm run bake:export-html && tsgo -p tsconfig.release.json --noCheck && shx chmod +x dist/cli.js && shx cp src/runtime/register-extensions.js dist/runtime/register-extensions.js && shx cp src/runtime/cloud-bridge.js dist/runtime/cloud-bridge.js && shx cp src/runtime/cloud-tracer-bridge.js dist/runtime/cloud-tracer-bridge.js && shx cp src/runtime/cloud-error-bridge.js dist/runtime/cloud-error-bridge.js && shx cp src/runtime/mcp-error-bridge.js dist/runtime/mcp-error-bridge.js && pnpm run copy-assets","build:npm":"pnpm run build:npm:release","clean:npm-artifacts":"find dist -name '*.js' -not -path 'dist/cli.js' -not -path 'dist/index.js' -not -path 'dist/release/*' -not -path 'dist/core/export-html/*' -delete && find dist -name '*.js.map' -delete","copy-assets":"shx mkdir -p dist/modes/interactive/theme && shx cp src/modes/interactive/theme/*.json dist/modes/interactive/theme/","assemble-changelog":"tsx scripts/assemble-changelog.ts",test:"pnpm run bake:export-html && vitest --run","test:acp:e2e":"pnpm run bake:export-html && vitest --run --config vitest.e2e.config.ts e2e-test/acp/","test:e2e:sanity":"pnpm run bake:export-html && vitest --run --config vitest.e2e.config.ts e2e-test/tui/sanity.test.ts","test:e2e:tui":"pnpm run bake:export-html && vitest --run --no-file-parallelism --config vitest.e2e.config.ts e2e-test/tui/","test:e2e:cli":"pnpm run bake:export-html && vitest --run --no-file-parallelism --config vitest.e2e.config.ts e2e-test/cli/",prepublishOnly:"pnpm run clean && pnpm run build"},dependencies:{"@agentclientprotocol/sdk":"1.3.0","@augmentcode/api-client":"0.0.13-20260812T202821Z","@earendil-works/pi-agent-core":"workspace:*","@earendil-works/pi-ai":"workspace:*","@earendil-works/pi-indexing":"workspace:*","@earendil-works/pi-tui":"workspace:*","@hermes/ask-user":"workspace:*","@hermes/augment-legacy-tools":"workspace:*","@hermes/cloud":"workspace:*","@hermes/daemon":"workspace:*","@hermes/git-credentials":"workspace:*","@hermes/hashline-edit":"workspace:*","@hermes/hooks":"workspace:*","@hermes/logger":"workspace:*","@hermes/lsp":"workspace:*","@hermes/mcp":"workspace:*","@hermes/migration":"workspace:*","@hermes/otel":"workspace:*","@hermes/path-utils":"workspace:*","@hermes/plugins":"workspace:*","@hermes/prompt-enhancer":"workspace:*","@hermes/segment-analytics":"workspace:*","@hermes/settings":"workspace:*","@hermes/shared-types":"workspace:*","@hermes/subagents":"workspace:*","@hermes/tool-permissions":"workspace:*","@mariozechner/jiti":"^2.6.2","@sentry/node":"^10.53.1","@silvia-odwyer/photon-node":"^0.3.4","@sinclair/typebox":"^0.34.41",ajv:"^8.17.1",chalk:"^5.5.0","cli-highlight":"^2.1.11",diff:"^8.0.2","extract-zip":"^2.0.1",fdir:"^6.5.0","file-type":"^21.1.1",glob:"^13.0.1","hosted-git-info":"^9.0.2",ignore:"^7.0.5","jsonc-parser":"3.3.1",marked:"^15.0.12",minimatch:"^10.2.3","proper-lockfile":"^4.1.2","strip-ansi":"^7.1.0",turndown:"^7.2.4",undici:"^7.19.1",yaml:"^2.8.2",zod:"^4.4.3"},overrides:{rimraf:"6.1.2",gaxios:{rimraf:"6.1.2"}},optionalDependencies:{"@mariozechner/clipboard":"^0.3.2"},devDependencies:{"@tintinweb/pi-subagents":"workspace:*","@types/diff":"^7.0.2","@types/hosted-git-info":"^3.0.5","@types/ms":"^2.1.0","@types/node":"^24.3.0","@types/proper-lockfile":"^4.1.4","@types/turndown":"^5.0.5",level:"^10.0.0",shx:"^0.4.0",tsx:"^4.21.0",typescript:"^5.7.3",vitest:"^3.2.4"},keywords:["coding-agent","ai","llm","cli","tui","agent"],author:"Mario Zechner",license:"MIT",repository:{type:"git",url:"git+https://github.com/badlogic/pi-mono.git",directory:"packages/coding-agent"},engines:{node:">=20.6.0"}}});import{existsSync as wMa}from"node:fs";import{homedir as pQe}from"node:os";import{dirname as CAn,join as xT,resolve as $gi}from"node:path";import{fileURLToPath as xMa}from"node:url";function NMa(){let t=`${yAn}\0${process.execPath||""}`.toLowerCase();return t.includes("/pnpm/")||t.includes("/.pnpm/")||t.includes("\\pnpm\\")?"pnpm":t.includes("/yarn/")||t.includes("/.yarn/")||t.includes("\\yarn\\")?"yarn":t.includes("/npm/")||t.includes("/node_modules/")||t.includes("\\npm\\")?"npm":"unknown"}function qgi(t,e){switch(NMa()){case"pnpm":return`Run: pnpm install -g ${t}`;case"yarn":return`Run: yarn global add ${t}`;case"npm":return`Run: npm install -g ${t}`;default:return`Run: npm install -g ${t}`}}function emi(){let t=process.env.PI_PACKAGE_DIR;if(t)return t==="~"?pQe():t.startsWith("~/")?pQe()+t.slice(1):t;let e=yAn;for(;e!==CAn(e);){if(wMa(xT(e,"package.json")))return e;e=CAn(e)}return yAn}function Bme(){return $gi(xT(emi(),"docs"))}function Yat(){return $gi(xT(emi(),"CHANGELOG.md"))}function imi(t){return`${process.env.PI_SHARE_VIEWER_URL||QMa}#${t}`}function omi(t){return t==="~"?pQe():t.startsWith("~/")?pQe()+t.slice(1):t}function RQ(){let t=process.env.AUGMENT_CACHE_DIR;return t?omi(t):xT(pQe(),".augment")}function ks(){let t=process.env[mQe];return t?omi(t):RQ()}function hQe(){return xT(ks(),"themes")}function smi(){return xT(ks(),"models.json")}function IAn(){return xT(ks(),"auth.json")}function ami(){return xT(ks(),"settings.json")}function T7(){return RQ()}function wme(){return xT(ks(),"bin")}function lmi(){return xT(ks(),"prompts")}function cmi(){return xT(ks(),AQe)}function umi(){return xT(ks(),`${Ms}-debug.log`)}var TMa,yAn,Ms,Kl,AQe,gQe,tmi,kMa,QA,nmi,rmi,mQe,QMa,Lu=I(()=>{"use strict";bAn();TMa=xMa(import.meta.url),yAn=CAn(TMa);Ms=uJ.piConfig?.name||"pi",Kl=uJ.piConfig?.configDir||".augment",AQe="sessions-v2",gQe="auggie",tmi="Auggie Coding Agent",kMa="1.2.0-prerelease.202608191711",QA=kMa??uJ.version,nmi="7a13aef9d8cf816639742afae45b4fd6571b757a",rmi="2026-08-20T00:11:17Z",mQe=`${Ms.toUpperCase()}_CODING_AGENT_DIR`,QMa="https://pi.dev/session/"});function dmi(...t){return new globalThis.Function(...t)}var pmi=I(()=>{});var SAn,_An,Ami,gmi=I(()=>{I6();lve();fs();jg();SAn=class extends _a{constructor(e){super(`Duplicate type kind '${e}' detected`)}},_An=class extends _a{constructor(e){super(`Duplicate string format '${e}' detected`)}};(function(t){function e(r,i){if(PE.Has(r))throw new SAn(r);return PE.Set(r,i),(o={})=>U6({...o,[Fr]:r})}t.Type=e;function n(r,i){if(lS.Has(r))throw new _An(r);return lS.Set(r,i),r}t.Format=n})(Ami||(Ami={}))});var Jat=I(()=>{pmi();cRe();gmi()});function DMa(t){switch(t.errorType){case Or.ArrayContains:return"Expected array to contain at least one matching value";case Or.ArrayMaxContains:return`Expected array to contain no more than ${t.schema.maxContains} matching values`;case Or.ArrayMinContains:return`Expected array to contain at least ${t.schema.minContains} matching values`;case Or.ArrayMaxItems:return`Expected array length to be less or equal to ${t.schema.maxItems}`;case Or.ArrayMinItems:return`Expected array length to be greater or equal to ${t.schema.minItems}`;case Or.ArrayUniqueItems:return"Expected array elements to be unique";case Or.Array:return"Expected array";case Or.AsyncIterator:return"Expected AsyncIterator";case Or.BigIntExclusiveMaximum:return`Expected bigint to be less than ${t.schema.exclusiveMaximum}`;case Or.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${t.schema.exclusiveMinimum}`;case Or.BigIntMaximum:return`Expected bigint to be less or equal to ${t.schema.maximum}`;case Or.BigIntMinimum:return`Expected bigint to be greater or equal to ${t.schema.minimum}`;case Or.BigIntMultipleOf:return`Expected bigint to be a multiple of ${t.schema.multipleOf}`;case Or.BigInt:return"Expected bigint";case Or.Boolean:return"Expected boolean";case Or.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${t.schema.exclusiveMinimumTimestamp}`;case Or.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${t.schema.exclusiveMaximumTimestamp}`;case Or.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${t.schema.minimumTimestamp}`;case Or.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${t.schema.maximumTimestamp}`;case Or.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${t.schema.multipleOfTimestamp}`;case Or.Date:return"Expected Date";case Or.Function:return"Expected function";case Or.IntegerExclusiveMaximum:return`Expected integer to be less than ${t.schema.exclusiveMaximum}`;case Or.IntegerExclusiveMinimum:return`Expected integer to be greater than ${t.schema.exclusiveMinimum}`;case Or.IntegerMaximum:return`Expected integer to be less or equal to ${t.schema.maximum}`;case Or.IntegerMinimum:return`Expected integer to be greater or equal to ${t.schema.minimum}`;case Or.IntegerMultipleOf:return`Expected integer to be a multiple of ${t.schema.multipleOf}`;case Or.Integer:return"Expected integer";case Or.IntersectUnevaluatedProperties:return"Unexpected property";case Or.Intersect:return"Expected all values to match";case Or.Iterator:return"Expected Iterator";case Or.Literal:return`Expected ${typeof t.schema.const=="string"?`'${t.schema.const}'`:t.schema.const}`;case Or.Never:return"Never";case Or.Not:return"Value should not match";case Or.Null:return"Expected null";case Or.NumberExclusiveMaximum:return`Expected number to be less than ${t.schema.exclusiveMaximum}`;case Or.NumberExclusiveMinimum:return`Expected number to be greater than ${t.schema.exclusiveMinimum}`;case Or.NumberMaximum:return`Expected number to be less or equal to ${t.schema.maximum}`;case Or.NumberMinimum:return`Expected number to be greater or equal to ${t.schema.minimum}`;case Or.NumberMultipleOf:return`Expected number to be a multiple of ${t.schema.multipleOf}`;case Or.Number:return"Expected number";case Or.Object:return"Expected object";case Or.ObjectAdditionalProperties:return"Unexpected property";case Or.ObjectMaxProperties:return`Expected object to have no more than ${t.schema.maxProperties} properties`;case Or.ObjectMinProperties:return`Expected object to have at least ${t.schema.minProperties} properties`;case Or.ObjectRequiredProperty:return"Expected required property";case Or.Promise:return"Expected Promise";case Or.RegExp:return"Expected string to match regular expression";case Or.StringFormatUnknown:return`Unknown format '${t.schema.format}'`;case Or.StringFormat:return`Expected string to match '${t.schema.format}' format`;case Or.StringMaxLength:return`Expected string length less or equal to ${t.schema.maxLength}`;case Or.StringMinLength:return`Expected string length greater or equal to ${t.schema.minLength}`;case Or.StringPattern:return`Expected string to match '${t.schema.pattern}'`;case Or.String:return"Expected string";case Or.Symbol:return"Expected symbol";case Or.TupleLength:return`Expected tuple to have ${t.schema.maxItems||0} elements`;case Or.Tuple:return"Expected tuple";case Or.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${t.schema.maxByteLength}`;case Or.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${t.schema.minByteLength}`;case Or.Uint8Array:return"Expected Uint8Array";case Or.Undefined:return"Expected undefined";case Or.Union:return"Expected union value";case Or.Void:return"Expected void";case Or.Kind:return`Expected kind '${t.schema[Fr]}'`;default:return"Unknown error type"}}function mmi(){return FMa}var FMa,RAn=I(()=>{fs();vAn();FMa=DMa});function VMa(t,e){let n=e.find(r=>r.$id===t.$ref);if(n===void 0)throw new BAn(t);return Pu(n,e)}function CC(t,e){return!Eu(t.$id)||e.some(n=>n.$id===t.$id)||e.push(t),e}function Pu(t,e){return t[Fr]==="This"||t[Fr]==="Ref"?VMa(t,e):t}var BAn,hmi=I(()=>{jg();fs();H3e();BAn=class extends _a{constructor(e){super(`Unable to dereference schema with $id '${e.$ref}'`),this.schema=e}}});var TT=I(()=>{hmi()});function*OMa(t){let e=t===0?1:Math.ceil(Math.floor(Math.log2(t)+1)/8);for(let n=0;n<e;n++)yield t>>8*(e-1-n)&255}function LMa(t){c0(qB.Array);for(let e of t)Tme(e)}function PMa(t){c0(qB.Boolean),c0(t?1:0)}function WMa(t){c0(qB.BigInt),Emi.setBigInt64(0,t);for(let e of bmi)c0(e)}function ZMa(t){c0(qB.Date),Tme(t.getTime())}function XMa(t){c0(qB.Null)}function YMa(t){c0(qB.Number),Emi.setFloat64(0,t);for(let e of bmi)c0(e)}function JMa(t){c0(qB.Object);for(let e of globalThis.Object.getOwnPropertyNames(t).sort())Tme(e),Tme(t[e])}function zMa(t){c0(qB.String);for(let e=0;e<t.length;e++)for(let n of OMa(t.charCodeAt(e)))c0(n)}function HMa(t){c0(qB.Symbol),Tme(t.description)}function KMa(t){c0(qB.Uint8Array);for(let e=0;e<t.length;e++)c0(t[e])}function jMa(t){return c0(qB.Undefined)}function Tme(t){if(ka(t))return LMa(t);if(wF(t))return PMa(t);if(Ay(t))return WMa(t);if(oS(t))return ZMa(t);if(KO(t))return XMa(t);if(ua(t))return YMa(t);if(Ul(t))return JMa(t);if(Eu(t))return zMa(t);if(jO(t))return HMa(t);if(Yse(t))return KMa(t);if(Eg(t))return jMa(t);throw new wAn(t)}function c0(t){xme=xme^UMa[t],xme=xme*MMa%GMa}function dJ(t){return xme=BigInt("14695981039346656037"),Tme(t),xme}var wAn,qB,xme,MMa,GMa,UMa,fmi,Emi,bmi,Cmi=I(()=>{$f();jg();wAn=class extends _a{constructor(e){super("Unable to hash value"),this.value=e}};(function(t){t[t.Undefined=0]="Undefined",t[t.Null=1]="Null",t[t.Boolean=2]="Boolean",t[t.Number=3]="Number",t[t.String=4]="String",t[t.Object=5]="Object",t[t.Array=6]="Array",t[t.Date=7]="Date",t[t.Uint8Array=8]="Uint8Array",t[t.Symbol=9]="Symbol",t[t.BigInt=10]="BigInt"})(qB||(qB={}));xme=BigInt("14695981039346656037"),[MMa,GMa]=[BigInt("1099511628211"),BigInt("18446744073709551616")],UMa=Array.from({length:256}).map((t,e)=>BigInt(e)),fmi=new Float64Array(1),Emi=new DataView(fmi.buffer),bmi=new Uint8Array(fmi.buffer)});var Nme=I(()=>{Cmi()});function $Ma(t){return t[Fr]==="Any"||t[Fr]==="Unknown"}function iu(t){return t!==void 0}function qMa(t,e,n){return!0}function eGa(t,e,n){return!0}function tGa(t,e,n){if(!ka(n)||iu(t.minItems)&&!(n.length>=t.minItems)||iu(t.maxItems)&&!(n.length<=t.maxItems))return!1;for(let o of n)if(!yC(t.items,e,o))return!1;if(t.uniqueItems===!0&&!(function(){let o=new Set;for(let s of n){let a=dJ(s);if(o.has(a))return!1;o.add(a)}return!0})())return!1;if(!(iu(t.contains)||ua(t.minContains)||ua(t.maxContains)))return!0;let r=iu(t.contains)?t.contains:Ol(),i=n.reduce((o,s)=>yC(r,e,s)?o+1:o,0);return!(i===0||ua(t.minContains)&&i<t.minContains||ua(t.maxContains)&&i>t.maxContains)}function nGa(t,e,n){return X3e(n)}function rGa(t,e,n){return!(!Ay(n)||iu(t.exclusiveMaximum)&&!(n<t.exclusiveMaximum)||iu(t.exclusiveMinimum)&&!(n>t.exclusiveMinimum)||iu(t.maximum)&&!(n<=t.maximum)||iu(t.minimum)&&!(n>=t.minimum)||iu(t.multipleOf)&&n%t.multipleOf!==BigInt(0))}function iGa(t,e,n){return wF(n)}function oGa(t,e,n){return yC(t.returns,e,n.prototype)}function sGa(t,e,n){return!(!oS(n)||iu(t.exclusiveMaximumTimestamp)&&!(n.getTime()<t.exclusiveMaximumTimestamp)||iu(t.exclusiveMinimumTimestamp)&&!(n.getTime()>t.exclusiveMinimumTimestamp)||iu(t.maximumTimestamp)&&!(n.getTime()<=t.maximumTimestamp)||iu(t.minimumTimestamp)&&!(n.getTime()>=t.minimumTimestamp)||iu(t.multipleOfTimestamp)&&n.getTime()%t.multipleOfTimestamp!==0)}function aGa(t,e,n){return _Z(n)}function lGa(t,e,n){let r=globalThis.Object.values(t.$defs),i=t.$defs[t.$ref];return yC(i,[...e,...r],n)}function cGa(t,e,n){return!(!z3e(n)||iu(t.exclusiveMaximum)&&!(n<t.exclusiveMaximum)||iu(t.exclusiveMinimum)&&!(n>t.exclusiveMinimum)||iu(t.maximum)&&!(n<=t.maximum)||iu(t.minimum)&&!(n>=t.minimum)||iu(t.multipleOf)&&n%t.multipleOf!==0)}function uGa(t,e,n){let r=t.allOf.every(i=>yC(i,e,n));if(t.unevaluatedProperties===!1){let i=new RegExp(QF(t)),o=Object.getOwnPropertyNames(n).every(s=>i.test(s));return r&&o}else if(Cg(t.unevaluatedProperties)){let i=new RegExp(QF(t)),o=Object.getOwnPropertyNames(n).every(s=>i.test(s)||yC(t.unevaluatedProperties,e,n[s]));return r&&o}else return r}function dGa(t,e,n){return Y3e(n)}function pGa(t,e,n){return n===t.const}function AGa(t,e,n){return!1}function gGa(t,e,n){return!yC(t.not,e,n)}function mGa(t,e,n){return KO(n)}function hGa(t,e,n){return!(!zA.IsNumberLike(n)||iu(t.exclusiveMaximum)&&!(n<t.exclusiveMaximum)||iu(t.exclusiveMinimum)&&!(n>t.exclusiveMinimum)||iu(t.minimum)&&!(n>=t.minimum)||iu(t.maximum)&&!(n<=t.maximum)||iu(t.multipleOf)&&n%t.multipleOf!==0)}function fGa(t,e,n){if(!zA.IsObjectLike(n)||iu(t.minProperties)&&!(Object.getOwnPropertyNames(n).length>=t.minProperties)||iu(t.maxProperties)&&!(Object.getOwnPropertyNames(n).length<=t.maxProperties))return!1;let r=Object.getOwnPropertyNames(t.properties);for(let i of r){let o=t.properties[i];if(t.required&&t.required.includes(i)){if(!yC(o,e,n[i])||(DF(o)||$Ma(o))&&!(i in n))return!1}else if(zA.IsExactOptionalProperty(n,i)&&!yC(o,e,n[i]))return!1}if(t.additionalProperties===!1){let i=Object.getOwnPropertyNames(n);return t.required&&t.required.length===r.length&&i.length===r.length?!0:i.every(o=>r.includes(o))}else return typeof t.additionalProperties=="object"?Object.getOwnPropertyNames(n).every(o=>r.includes(o)||yC(t.additionalProperties,e,n[o])):!0}function EGa(t,e,n){return J3e(n)}function bGa(t,e,n){if(!zA.IsRecordLike(n)||iu(t.minProperties)&&!(Object.getOwnPropertyNames(n).length>=t.minProperties)||iu(t.maxProperties)&&!(Object.getOwnPropertyNames(n).length<=t.maxProperties))return!1;let[r,i]=Object.entries(t.patternProperties)[0],o=new RegExp(r),s=Object.entries(n).every(([c,u])=>o.test(c)?yC(i,e,u):!0),a=typeof t.additionalProperties=="object"?Object.entries(n).every(([c,u])=>o.test(c)?!0:yC(t.additionalProperties,e,u)):!0,l=t.additionalProperties===!1?Object.getOwnPropertyNames(n).every(c=>o.test(c)):!0;return s&&a&&l}function CGa(t,e,n){return yC(Pu(t,e),e,n)}function yGa(t,e,n){let r=new RegExp(t.source,t.flags);return iu(t.minLength)&&!(n.length>=t.minLength)||iu(t.maxLength)&&!(n.length<=t.maxLength)?!1:r.test(n)}function IGa(t,e,n){return!Eu(n)||iu(t.minLength)&&!(n.length>=t.minLength)||iu(t.maxLength)&&!(n.length<=t.maxLength)||iu(t.pattern)&&!new RegExp(t.pattern).test(n)?!1:iu(t.format)?lS.Has(t.format)?lS.Get(t.format)(n):!1:!0}function SGa(t,e,n){return jO(n)}function _Ga(t,e,n){return Eu(n)&&new RegExp(t.pattern).test(n)}function RGa(t,e,n){return yC(Pu(t,e),e,n)}function vGa(t,e,n){if(!ka(n)||t.items===void 0&&n.length!==0||n.length!==t.maxItems)return!1;if(!t.items)return!0;for(let r=0;r<t.items.length;r++)if(!yC(t.items[r],e,n[r]))return!1;return!0}function BGa(t,e,n){return Eg(n)}function wGa(t,e,n){return t.anyOf.some(r=>yC(r,e,n))}function xGa(t,e,n){return!(!Yse(n)||iu(t.maxByteLength)&&!(n.length<=t.maxByteLength)||iu(t.minByteLength)&&!(n.length>=t.minByteLength))}function TGa(t,e,n){return!0}function NGa(t,e,n){return zA.IsVoidLike(n)}function kGa(t,e,n){return PE.Has(t[Fr])?PE.Get(t[Fr])(t,n):!1}function yC(t,e,n){let r=iu(t.$id)?CC(t,e):e,i=t;switch(i[Fr]){case"Any":return qMa(i,r,n);case"Argument":return eGa(i,r,n);case"Array":return tGa(i,r,n);case"AsyncIterator":return nGa(i,r,n);case"BigInt":return rGa(i,r,n);case"Boolean":return iGa(i,r,n);case"Constructor":return oGa(i,r,n);case"Date":return sGa(i,r,n);case"Function":return aGa(i,r,n);case"Import":return lGa(i,r,n);case"Integer":return cGa(i,r,n);case"Intersect":return uGa(i,r,n);case"Iterator":return dGa(i,r,n);case"Literal":return pGa(i,r,n);case"Never":return AGa(i,r,n);case"Not":return gGa(i,r,n);case"Null":return mGa(i,r,n);case"Number":return hGa(i,r,n);case"Object":return fGa(i,r,n);case"Promise":return EGa(i,r,n);case"Record":return bGa(i,r,n);case"Ref":return CGa(i,r,n);case"RegExp":return yGa(i,r,n);case"String":return IGa(i,r,n);case"Symbol":return SGa(i,r,n);case"TemplateLiteral":return _Ga(i,r,n);case"This":return RGa(i,r,n);case"Tuple":return vGa(i,r,n);case"Undefined":return BGa(i,r,n);case"Union":return wGa(i,r,n);case"Uint8Array":return xGa(i,r,n);case"Unknown":return TGa(i,r,n);case"Void":return NGa(i,r,n);default:if(!PE.Has(i[Fr]))throw new xAn(i);return kGa(i,r,n)}}function Ac(...t){return t.length===3?yC(t[0],t[1],t[2]):yC(t[0],[],t[1])}var xAn,TAn=I(()=>{Jat();TT();Nme();fs();Y1();D6();I6();jg();ff();$f();bc();xAn=class extends _a{constructor(e){super("Unknown type"),this.schema=e}}});var ew=I(()=>{TAn()});function gP(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}function ou(t){return t!==void 0}function Uo(t,e,n,r,i=[]){return{type:t,schema:e,path:n,value:r,message:mmi()({errorType:t,path:n,schema:e,value:r,errors:i}),errors:i}}function*QGa(t,e,n,r){}function*DGa(t,e,n,r){}function*FGa(t,e,n,r){if(!ka(r))return yield Uo(Or.Array,t,n,r);ou(t.minItems)&&!(r.length>=t.minItems)&&(yield Uo(Or.ArrayMinItems,t,n,r)),ou(t.maxItems)&&!(r.length<=t.maxItems)&&(yield Uo(Or.ArrayMaxItems,t,n,r));for(let s=0;s<r.length;s++)yield*IC(t.items,e,`${n}/${s}`,r[s]);if(t.uniqueItems===!0&&!(function(){let s=new Set;for(let a of r){let l=dJ(a);if(s.has(l))return!1;s.add(l)}return!0})()&&(yield Uo(Or.ArrayUniqueItems,t,n,r)),!(ou(t.contains)||ou(t.minContains)||ou(t.maxContains)))return;let i=ou(t.contains)?t.contains:Ol(),o=r.reduce((s,a,l)=>IC(i,e,`${n}${l}`,a).next().done===!0?s+1:s,0);o===0&&(yield Uo(Or.ArrayContains,t,n,r)),ua(t.minContains)&&o<t.minContains&&(yield Uo(Or.ArrayMinContains,t,n,r)),ua(t.maxContains)&&o>t.maxContains&&(yield Uo(Or.ArrayMaxContains,t,n,r))}function*VGa(t,e,n,r){X3e(r)||(yield Uo(Or.AsyncIterator,t,n,r))}function*MGa(t,e,n,r){if(!Ay(r))return yield Uo(Or.BigInt,t,n,r);ou(t.exclusiveMaximum)&&!(r<t.exclusiveMaximum)&&(yield Uo(Or.BigIntExclusiveMaximum,t,n,r)),ou(t.exclusiveMinimum)&&!(r>t.exclusiveMinimum)&&(yield Uo(Or.BigIntExclusiveMinimum,t,n,r)),ou(t.maximum)&&!(r<=t.maximum)&&(yield Uo(Or.BigIntMaximum,t,n,r)),ou(t.minimum)&&!(r>=t.minimum)&&(yield Uo(Or.BigIntMinimum,t,n,r)),ou(t.multipleOf)&&r%t.multipleOf!==BigInt(0)&&(yield Uo(Or.BigIntMultipleOf,t,n,r))}function*GGa(t,e,n,r){wF(r)||(yield Uo(Or.Boolean,t,n,r))}function*UGa(t,e,n,r){yield*IC(t.returns,e,n,r.prototype)}function*OGa(t,e,n,r){if(!oS(r))return yield Uo(Or.Date,t,n,r);ou(t.exclusiveMaximumTimestamp)&&!(r.getTime()<t.exclusiveMaximumTimestamp)&&(yield Uo(Or.DateExclusiveMaximumTimestamp,t,n,r)),ou(t.exclusiveMinimumTimestamp)&&!(r.getTime()>t.exclusiveMinimumTimestamp)&&(yield Uo(Or.DateExclusiveMinimumTimestamp,t,n,r)),ou(t.maximumTimestamp)&&!(r.getTime()<=t.maximumTimestamp)&&(yield Uo(Or.DateMaximumTimestamp,t,n,r)),ou(t.minimumTimestamp)&&!(r.getTime()>=t.minimumTimestamp)&&(yield Uo(Or.DateMinimumTimestamp,t,n,r)),ou(t.multipleOfTimestamp)&&r.getTime()%t.multipleOfTimestamp!==0&&(yield Uo(Or.DateMultipleOfTimestamp,t,n,r))}function*LGa(t,e,n,r){_Z(r)||(yield Uo(Or.Function,t,n,r))}function*PGa(t,e,n,r){let i=globalThis.Object.values(t.$defs),o=t.$defs[t.$ref];yield*IC(o,[...e,...i],n,r)}function*WGa(t,e,n,r){if(!z3e(r))return yield Uo(Or.Integer,t,n,r);ou(t.exclusiveMaximum)&&!(r<t.exclusiveMaximum)&&(yield Uo(Or.IntegerExclusiveMaximum,t,n,r)),ou(t.exclusiveMinimum)&&!(r>t.exclusiveMinimum)&&(yield Uo(Or.IntegerExclusiveMinimum,t,n,r)),ou(t.maximum)&&!(r<=t.maximum)&&(yield Uo(Or.IntegerMaximum,t,n,r)),ou(t.minimum)&&!(r>=t.minimum)&&(yield Uo(Or.IntegerMinimum,t,n,r)),ou(t.multipleOf)&&r%t.multipleOf!==0&&(yield Uo(Or.IntegerMultipleOf,t,n,r))}function*ZGa(t,e,n,r){let i=!1;for(let o of t.allOf)for(let s of IC(o,e,n,r))i=!0,yield s;if(i)return yield Uo(Or.Intersect,t,n,r);if(t.unevaluatedProperties===!1){let o=new RegExp(QF(t));for(let s of Object.getOwnPropertyNames(r))o.test(s)||(yield Uo(Or.IntersectUnevaluatedProperties,t,`${n}/${s}`,r))}if(typeof t.unevaluatedProperties=="object"){let o=new RegExp(QF(t));for(let s of Object.getOwnPropertyNames(r))if(!o.test(s)){let a=IC(t.unevaluatedProperties,e,`${n}/${s}`,r[s]).next();a.done||(yield a.value)}}}function*XGa(t,e,n,r){Y3e(r)||(yield Uo(Or.Iterator,t,n,r))}function*YGa(t,e,n,r){r!==t.const&&(yield Uo(Or.Literal,t,n,r))}function*JGa(t,e,n,r){yield Uo(Or.Never,t,n,r)}function*zGa(t,e,n,r){IC(t.not,e,n,r).next().done===!0&&(yield Uo(Or.Not,t,n,r))}function*HGa(t,e,n,r){KO(r)||(yield Uo(Or.Null,t,n,r))}function*KGa(t,e,n,r){if(!zA.IsNumberLike(r))return yield Uo(Or.Number,t,n,r);ou(t.exclusiveMaximum)&&!(r<t.exclusiveMaximum)&&(yield Uo(Or.NumberExclusiveMaximum,t,n,r)),ou(t.exclusiveMinimum)&&!(r>t.exclusiveMinimum)&&(yield Uo(Or.NumberExclusiveMinimum,t,n,r)),ou(t.maximum)&&!(r<=t.maximum)&&(yield Uo(Or.NumberMaximum,t,n,r)),ou(t.minimum)&&!(r>=t.minimum)&&(yield Uo(Or.NumberMinimum,t,n,r)),ou(t.multipleOf)&&r%t.multipleOf!==0&&(yield Uo(Or.NumberMultipleOf,t,n,r))}function*jGa(t,e,n,r){if(!zA.IsObjectLike(r))return yield Uo(Or.Object,t,n,r);ou(t.minProperties)&&!(Object.getOwnPropertyNames(r).length>=t.minProperties)&&(yield Uo(Or.ObjectMinProperties,t,n,r)),ou(t.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=t.maxProperties)&&(yield Uo(Or.ObjectMaxProperties,t,n,r));let i=Array.isArray(t.required)?t.required:[],o=Object.getOwnPropertyNames(t.properties),s=Object.getOwnPropertyNames(r);for(let a of i)s.includes(a)||(yield Uo(Or.ObjectRequiredProperty,t.properties[a],`${n}/${gP(a)}`,void 0));if(t.additionalProperties===!1)for(let a of s)o.includes(a)||(yield Uo(Or.ObjectAdditionalProperties,t,`${n}/${gP(a)}`,r[a]));if(typeof t.additionalProperties=="object")for(let a of s)o.includes(a)||(yield*IC(t.additionalProperties,e,`${n}/${gP(a)}`,r[a]));for(let a of o){let l=t.properties[a];t.required&&t.required.includes(a)?(yield*IC(l,e,`${n}/${gP(a)}`,r[a]),DF(t)&&!(a in r)&&(yield Uo(Or.ObjectRequiredProperty,l,`${n}/${gP(a)}`,void 0))):zA.IsExactOptionalProperty(r,a)&&(yield*IC(l,e,`${n}/${gP(a)}`,r[a]))}}function*$Ga(t,e,n,r){J3e(r)||(yield Uo(Or.Promise,t,n,r))}function*qGa(t,e,n,r){if(!zA.IsRecordLike(r))return yield Uo(Or.Object,t,n,r);ou(t.minProperties)&&!(Object.getOwnPropertyNames(r).length>=t.minProperties)&&(yield Uo(Or.ObjectMinProperties,t,n,r)),ou(t.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=t.maxProperties)&&(yield Uo(Or.ObjectMaxProperties,t,n,r));let[i,o]=Object.entries(t.patternProperties)[0],s=new RegExp(i);for(let[a,l]of Object.entries(r))s.test(a)&&(yield*IC(o,e,`${n}/${gP(a)}`,l));if(typeof t.additionalProperties=="object")for(let[a,l]of Object.entries(r))s.test(a)||(yield*IC(t.additionalProperties,e,`${n}/${gP(a)}`,l));if(t.additionalProperties===!1){for(let[a,l]of Object.entries(r))if(!s.test(a))return yield Uo(Or.ObjectAdditionalProperties,t,`${n}/${gP(a)}`,l)}}function*eUa(t,e,n,r){yield*IC(Pu(t,e),e,n,r)}function*tUa(t,e,n,r){if(!Eu(r))return yield Uo(Or.String,t,n,r);if(ou(t.minLength)&&!(r.length>=t.minLength)&&(yield Uo(Or.StringMinLength,t,n,r)),ou(t.maxLength)&&!(r.length<=t.maxLength)&&(yield Uo(Or.StringMaxLength,t,n,r)),!new RegExp(t.source,t.flags).test(r))return yield Uo(Or.RegExp,t,n,r)}function*nUa(t,e,n,r){if(!Eu(r))return yield Uo(Or.String,t,n,r);ou(t.minLength)&&!(r.length>=t.minLength)&&(yield Uo(Or.StringMinLength,t,n,r)),ou(t.maxLength)&&!(r.length<=t.maxLength)&&(yield Uo(Or.StringMaxLength,t,n,r)),Eu(t.pattern)&&(new RegExp(t.pattern).test(r)||(yield Uo(Or.StringPattern,t,n,r))),Eu(t.format)&&(lS.Has(t.format)?lS.Get(t.format)(r)||(yield Uo(Or.StringFormat,t,n,r)):yield Uo(Or.StringFormatUnknown,t,n,r))}function*rUa(t,e,n,r){jO(r)||(yield Uo(Or.Symbol,t,n,r))}function*iUa(t,e,n,r){if(!Eu(r))return yield Uo(Or.String,t,n,r);new RegExp(t.pattern).test(r)||(yield Uo(Or.StringPattern,t,n,r))}function*oUa(t,e,n,r){yield*IC(Pu(t,e),e,n,r)}function*sUa(t,e,n,r){if(!ka(r))return yield Uo(Or.Tuple,t,n,r);if(t.items===void 0&&r.length!==0)return yield Uo(Or.TupleLength,t,n,r);if(r.length!==t.maxItems)return yield Uo(Or.TupleLength,t,n,r);if(t.items)for(let i=0;i<t.items.length;i++)yield*IC(t.items[i],e,`${n}/${i}`,r[i])}function*aUa(t,e,n,r){Eg(r)||(yield Uo(Or.Undefined,t,n,r))}function*lUa(t,e,n,r){if(Ac(t,e,r))return;let i=t.anyOf.map(o=>new pJ(IC(o,e,n,r)));yield Uo(Or.Union,t,n,r,i)}function*cUa(t,e,n,r){if(!Yse(r))return yield Uo(Or.Uint8Array,t,n,r);ou(t.maxByteLength)&&!(r.length<=t.maxByteLength)&&(yield Uo(Or.Uint8ArrayMaxByteLength,t,n,r)),ou(t.minByteLength)&&!(r.length>=t.minByteLength)&&(yield Uo(Or.Uint8ArrayMinByteLength,t,n,r))}function*uUa(t,e,n,r){}function*dUa(t,e,n,r){zA.IsVoidLike(r)||(yield Uo(Or.Void,t,n,r))}function*pUa(t,e,n,r){PE.Get(t[Fr])(t,r)||(yield Uo(Or.Kind,t,n,r))}function*IC(t,e,n,r){let i=ou(t.$id)?[...e,t]:e,o=t;switch(o[Fr]){case"Any":return yield*QGa(o,i,n,r);case"Argument":return yield*DGa(o,i,n,r);case"Array":return yield*FGa(o,i,n,r);case"AsyncIterator":return yield*VGa(o,i,n,r);case"BigInt":return yield*MGa(o,i,n,r);case"Boolean":return yield*GGa(o,i,n,r);case"Constructor":return yield*UGa(o,i,n,r);case"Date":return yield*OGa(o,i,n,r);case"Function":return yield*LGa(o,i,n,r);case"Import":return yield*PGa(o,i,n,r);case"Integer":return yield*WGa(o,i,n,r);case"Intersect":return yield*ZGa(o,i,n,r);case"Iterator":return yield*XGa(o,i,n,r);case"Literal":return yield*YGa(o,i,n,r);case"Never":return yield*JGa(o,i,n,r);case"Not":return yield*zGa(o,i,n,r);case"Null":return yield*HGa(o,i,n,r);case"Number":return yield*KGa(o,i,n,r);case"Object":return yield*jGa(o,i,n,r);case"Promise":return yield*$Ga(o,i,n,r);case"Record":return yield*qGa(o,i,n,r);case"Ref":return yield*eUa(o,i,n,r);case"RegExp":return yield*tUa(o,i,n,r);case"String":return yield*nUa(o,i,n,r);case"Symbol":return yield*rUa(o,i,n,r);case"TemplateLiteral":return yield*iUa(o,i,n,r);case"This":return yield*oUa(o,i,n,r);case"Tuple":return yield*sUa(o,i,n,r);case"Undefined":return yield*aUa(o,i,n,r);case"Union":return yield*lUa(o,i,n,r);case"Uint8Array":return yield*cUa(o,i,n,r);case"Unknown":return yield*uUa(o,i,n,r);case"Void":return yield*dUa(o,i,n,r);default:if(!PE.Has(o[Fr]))throw new NAn(t);return yield*pUa(o,i,n,r)}}function ZM(...t){let e=t.length===3?IC(t[0],t[1],"",t[2]):IC(t[0],[],"",t[1]);return new pJ(e)}var Or,NAn,pJ,vAn=I(()=>{Jat();Y1();I6();IXe();RAn();jg();TT();Nme();ew();fs();ff();$f();(function(t){t[t.ArrayContains=0]="ArrayContains",t[t.ArrayMaxContains=1]="ArrayMaxContains",t[t.ArrayMaxItems=2]="ArrayMaxItems",t[t.ArrayMinContains=3]="ArrayMinContains",t[t.ArrayMinItems=4]="ArrayMinItems",t[t.ArrayUniqueItems=5]="ArrayUniqueItems",t[t.Array=6]="Array",t[t.AsyncIterator=7]="AsyncIterator",t[t.BigIntExclusiveMaximum=8]="BigIntExclusiveMaximum",t[t.BigIntExclusiveMinimum=9]="BigIntExclusiveMinimum",t[t.BigIntMaximum=10]="BigIntMaximum",t[t.BigIntMinimum=11]="BigIntMinimum",t[t.BigIntMultipleOf=12]="BigIntMultipleOf",t[t.BigInt=13]="BigInt",t[t.Boolean=14]="Boolean",t[t.DateExclusiveMaximumTimestamp=15]="DateExclusiveMaximumTimestamp",t[t.DateExclusiveMinimumTimestamp=16]="DateExclusiveMinimumTimestamp",t[t.DateMaximumTimestamp=17]="DateMaximumTimestamp",t[t.DateMinimumTimestamp=18]="DateMinimumTimestamp",t[t.DateMultipleOfTimestamp=19]="DateMultipleOfTimestamp",t[t.Date=20]="Date",t[t.Function=21]="Function",t[t.IntegerExclusiveMaximum=22]="IntegerExclusiveMaximum",t[t.IntegerExclusiveMinimum=23]="IntegerExclusiveMinimum",t[t.IntegerMaximum=24]="IntegerMaximum",t[t.IntegerMinimum=25]="IntegerMinimum",t[t.IntegerMultipleOf=26]="IntegerMultipleOf",t[t.Integer=27]="Integer",t[t.IntersectUnevaluatedProperties=28]="IntersectUnevaluatedProperties",t[t.Intersect=29]="Intersect",t[t.Iterator=30]="Iterator",t[t.Kind=31]="Kind",t[t.Literal=32]="Literal",t[t.Never=33]="Never",t[t.Not=34]="Not",t[t.Null=35]="Null",t[t.NumberExclusiveMaximum=36]="NumberExclusiveMaximum",t[t.NumberExclusiveMinimum=37]="NumberExclusiveMinimum",t[t.NumberMaximum=38]="NumberMaximum",t[t.NumberMinimum=39]="NumberMinimum",t[t.NumberMultipleOf=40]="NumberMultipleOf",t[t.Number=41]="Number",t[t.ObjectAdditionalProperties=42]="ObjectAdditionalProperties",t[t.ObjectMaxProperties=43]="ObjectMaxProperties",t[t.ObjectMinProperties=44]="ObjectMinProperties",t[t.ObjectRequiredProperty=45]="ObjectRequiredProperty",t[t.Object=46]="Object",t[t.Promise=47]="Promise",t[t.RegExp=48]="RegExp",t[t.StringFormatUnknown=49]="StringFormatUnknown",t[t.StringFormat=50]="StringFormat",t[t.StringMaxLength=51]="StringMaxLength",t[t.StringMinLength=52]="StringMinLength",t[t.StringPattern=53]="StringPattern",t[t.String=54]="String",t[t.Symbol=55]="Symbol",t[t.TupleLength=56]="TupleLength",t[t.Tuple=57]="Tuple",t[t.Uint8ArrayMaxByteLength=58]="Uint8ArrayMaxByteLength",t[t.Uint8ArrayMinByteLength=59]="Uint8ArrayMinByteLength",t[t.Uint8Array=60]="Uint8Array",t[t.Undefined=61]="Undefined",t[t.Union=62]="Union",t[t.Void=63]="Void"})(Or||(Or={}));NAn=class extends _a{constructor(e){super("Unknown type"),this.schema=e}};pJ=class{constructor(e){this.iterator=e}[Symbol.iterator](){return this.iterator}First(){let e=this.iterator.next();return e.done?void 0:e.value}}});var kme=I(()=>{vAn();RAn()});function Im(t,e,n){try{return ju(t)?t[bg].Decode(n):n}catch(r){throw new kAn(t,e,n,r)}}function AUa(t,e,n,r){return ka(r)?Im(t,n,r.map((i,o)=>vQ(t.items,e,`${n}/${o}`,i))):Im(t,n,r)}function gUa(t,e,n,r){if(!Ul(r)||iB(r))return Im(t,n,r);let i=xRe(t),o=i.map(u=>u[0]),s={...r};for(let[u,d]of i)u in s&&(s[u]=vQ(d,e,`${n}/${u}`,s[u]));if(!ju(t.unevaluatedProperties))return Im(t,n,s);let a=Object.getOwnPropertyNames(s),l=t.unevaluatedProperties,c={...s};for(let u of a)o.includes(u)||(c[u]=Im(l,`${n}/${u}`,c[u]));return Im(t,n,c)}function mUa(t,e,n,r){let i=globalThis.Object.values(t.$defs),o=t.$defs[t.$ref],s=vQ(o,[...e,...i],n,r);return Im(t,n,s)}function hUa(t,e,n,r){return Im(t,n,vQ(t.not,e,n,r))}function fUa(t,e,n,r){if(!Ul(r))return Im(t,n,r);let i=gS(t),o={...r};for(let c of i)Ya(o,c)&&(Eg(o[c])&&(!NF(t.properties[c])||zA.IsExactOptionalProperty(o,c))||(o[c]=vQ(t.properties[c],e,`${n}/${c}`,o[c])));if(!Cg(t.additionalProperties))return Im(t,n,o);let s=Object.getOwnPropertyNames(o),a=t.additionalProperties,l={...o};for(let c of s)i.includes(c)||(l[c]=Im(a,`${n}/${c}`,l[c]));return Im(t,n,l)}function EUa(t,e,n,r){if(!Ul(r))return Im(t,n,r);let i=Object.getOwnPropertyNames(t.patternProperties)[0],o=new RegExp(i),s={...r};for(let u of Object.getOwnPropertyNames(r))o.test(u)&&(s[u]=vQ(t.patternProperties[i],e,`${n}/${u}`,s[u]));if(!Cg(t.additionalProperties))return Im(t,n,s);let a=Object.getOwnPropertyNames(s),l=t.additionalProperties,c={...s};for(let u of a)o.test(u)||(c[u]=Im(l,`${n}/${u}`,c[u]));return Im(t,n,c)}function bUa(t,e,n,r){let i=Pu(t,e);return Im(t,n,vQ(i,e,n,r))}function CUa(t,e,n,r){let i=Pu(t,e);return Im(t,n,vQ(i,e,n,r))}function yUa(t,e,n,r){return ka(r)&&ka(t.items)?Im(t,n,t.items.map((i,o)=>vQ(i,e,`${n}/${o}`,r[o]))):Im(t,n,r)}function IUa(t,e,n,r){for(let i of t.anyOf){if(!Ac(i,e,r))continue;let o=vQ(i,e,n,r);return Im(t,n,o)}return Im(t,n,r)}function vQ(t,e,n,r){let i=CC(t,e),o=t;switch(t[Fr]){case"Array":return AUa(o,i,n,r);case"Import":return mUa(o,i,n,r);case"Intersect":return gUa(o,i,n,r);case"Not":return hUa(o,i,n,r);case"Object":return fUa(o,i,n,r);case"Record":return EUa(o,i,n,r);case"Ref":return bUa(o,i,n,r);case"Symbol":return Im(o,n,r);case"This":return CUa(o,i,n,r);case"Tuple":return yUa(o,i,n,r);case"Union":return IUa(o,i,n,r);default:return Im(o,n,r)}}function Dme(t,e,n){return vQ(t,e,"",n)}var Qme,kAn,ymi=I(()=>{cRe();fs();jg();Y1();TT();ew();$f();bc();Qme=class extends _a{constructor(e,n,r){super("Unable to decode value as it does not match the expected schema"),this.schema=e,this.value=n,this.error=r}},kAn=class extends _a{constructor(e,n,r,i){super(i instanceof Error?i.message:"Unknown error"),this.schema=e,this.path=n,this.value=r,this.error=i}}});function Py(t,e,n){try{return ju(t)?t[bg].Encode(n):n}catch(r){throw new QAn(t,e,n,r)}}function SUa(t,e,n,r){let i=Py(t,n,r);return ka(i)?i.map((o,s)=>BQ(t.items,e,`${n}/${s}`,o)):i}function _Ua(t,e,n,r){let i=globalThis.Object.values(t.$defs),o=t.$defs[t.$ref],s=Py(t,n,r);return BQ(o,[...e,...i],n,s)}function RUa(t,e,n,r){let i=Py(t,n,r);if(!Ul(r)||iB(r))return i;let o=xRe(t),s=o.map(d=>d[0]),a={...i};for(let[d,p]of o)d in a&&(a[d]=BQ(p,e,`${n}/${d}`,a[d]));if(!ju(t.unevaluatedProperties))return a;let l=Object.getOwnPropertyNames(a),c=t.unevaluatedProperties,u={...a};for(let d of l)s.includes(d)||(u[d]=Py(c,`${n}/${d}`,u[d]));return u}function vUa(t,e,n,r){return Py(t.not,n,Py(t,n,r))}function BUa(t,e,n,r){let i=Py(t,n,r);if(!Ul(i))return i;let o=gS(t),s={...i};for(let u of o)Ya(s,u)&&(Eg(s[u])&&(!NF(t.properties[u])||zA.IsExactOptionalProperty(s,u))||(s[u]=BQ(t.properties[u],e,`${n}/${u}`,s[u])));if(!Cg(t.additionalProperties))return s;let a=Object.getOwnPropertyNames(s),l=t.additionalProperties,c={...s};for(let u of a)o.includes(u)||(c[u]=Py(l,`${n}/${u}`,c[u]));return c}function wUa(t,e,n,r){let i=Py(t,n,r);if(!Ul(r))return i;let o=Object.getOwnPropertyNames(t.patternProperties)[0],s=new RegExp(o),a={...i};for(let d of Object.getOwnPropertyNames(r))s.test(d)&&(a[d]=BQ(t.patternProperties[o],e,`${n}/${d}`,a[d]));if(!Cg(t.additionalProperties))return a;let l=Object.getOwnPropertyNames(a),c=t.additionalProperties,u={...a};for(let d of l)s.test(d)||(u[d]=Py(c,`${n}/${d}`,u[d]));return u}function xUa(t,e,n,r){let i=Pu(t,e),o=BQ(i,e,n,r);return Py(t,n,o)}function TUa(t,e,n,r){let i=Pu(t,e),o=BQ(i,e,n,r);return Py(t,n,o)}function NUa(t,e,n,r){let i=Py(t,n,r);return ka(t.items)?t.items.map((o,s)=>BQ(o,e,`${n}/${s}`,i[s])):[]}function kUa(t,e,n,r){for(let i of t.anyOf){if(!Ac(i,e,r))continue;let o=BQ(i,e,n,r);return Py(t,n,o)}for(let i of t.anyOf){let o=BQ(i,e,n,r);if(Ac(t,e,o))return Py(t,n,o)}return Py(t,n,r)}function BQ(t,e,n,r){let i=CC(t,e),o=t;switch(t[Fr]){case"Array":return SUa(o,i,n,r);case"Import":return _Ua(o,i,n,r);case"Intersect":return RUa(o,i,n,r);case"Not":return vUa(o,i,n,r);case"Object":return BUa(o,i,n,r);case"Record":return wUa(o,i,n,r);case"Ref":return xUa(o,i,n,r);case"This":return TUa(o,i,n,r);case"Tuple":return NUa(o,i,n,r);case"Union":return kUa(o,i,n,r);default:return Py(o,n,r)}}function Vme(t,e,n){return BQ(t,e,"",n)}var Fme,QAn,Imi=I(()=>{cRe();fs();jg();Y1();TT();ew();$f();bc();Fme=class extends _a{constructor(e,n,r){super("The encoded value does not match the expected schema"),this.schema=e,this.value=n,this.error=r}},QAn=class extends _a{constructor(e,n,r,i){super(`${i instanceof Error?i.message:"Unknown error"}`),this.schema=e,this.path=n,this.value=r,this.error=i}}});function QUa(t,e){return ju(t)||db(t.items,e)}function DUa(t,e){return ju(t)||db(t.items,e)}function FUa(t,e){return ju(t)||db(t.returns,e)||t.parameters.some(n=>db(n,e))}function VUa(t,e){return ju(t)||db(t.returns,e)||t.parameters.some(n=>db(n,e))}function MUa(t,e){return ju(t)||ju(t.unevaluatedProperties)||t.allOf.some(n=>db(n,e))}function GUa(t,e){let n=globalThis.Object.getOwnPropertyNames(t.$defs).reduce((i,o)=>[...i,t.$defs[o]],[]),r=t.$defs[t.$ref];return ju(t)||db(r,[...n,...e])}function UUa(t,e){return ju(t)||db(t.items,e)}function OUa(t,e){return ju(t)||db(t.not,e)}function LUa(t,e){return ju(t)||Object.values(t.properties).some(n=>db(n,e))||Cg(t.additionalProperties)&&db(t.additionalProperties,e)}function PUa(t,e){return ju(t)||db(t.item,e)}function WUa(t,e){let n=Object.getOwnPropertyNames(t.patternProperties)[0],r=t.patternProperties[n];return ju(t)||db(r,e)||Cg(t.additionalProperties)&&ju(t.additionalProperties)}function ZUa(t,e){return ju(t)?!0:db(Pu(t,e),e)}function XUa(t,e){return ju(t)?!0:db(Pu(t,e),e)}function YUa(t,e){return ju(t)||!Eg(t.items)&&t.items.some(n=>db(n,e))}function JUa(t,e){return ju(t)||t.anyOf.some(n=>db(n,e))}function db(t,e){let n=CC(t,e),r=t;if(t.$id&&DAn.has(t.$id))return!1;switch(t.$id&&DAn.add(t.$id),t[Fr]){case"Array":return QUa(r,n);case"AsyncIterator":return DUa(r,n);case"Constructor":return FUa(r,n);case"Function":return VUa(r,n);case"Import":return GUa(r,n);case"Intersect":return MUa(r,n);case"Iterator":return UUa(r,n);case"Not":return OUa(r,n);case"Object":return LUa(r,n);case"Promise":return PUa(r,n);case"Record":return WUa(r,n);case"Ref":return ZUa(r,n);case"This":return XUa(r,n);case"Tuple":return YUa(r,n);case"Union":return JUa(r,n);default:return ju(t)}}function mP(t,e){return DAn.clear(),db(t,e)}var DAn,Smi=I(()=>{TT();fs();bc();$f();DAn=new Set});var Mme=I(()=>{ymi();Imi();Smi()});function AJ(t){if(!Eu(t))throw Error("ConstantString: Not a String");return`'${JSON.stringify(t).slice(1,-1).replace(/'/g,"\\'")}'`}function _mi(t,e){return`${t}[${AJ(e)}]`}var FAn,zat,VAn,MAn,Hat,N7,Gme,Rmi=I(()=>{Mme();kme();Jat();jg();TT();Nme();fs();I6();Y1();IXe();ff();d9();$f();iMt();FAn=class{constructor(e,n,r,i){this.schema=e,this.references=n,this.checkFunc=r,this.code=i,this.hasTransform=mP(e,n)}Code(){return this.code}Schema(){return this.schema}References(){return this.references}Errors(e){return ZM(this.schema,this.references,e)}Check(e){return this.checkFunc(e)}Decode(e){if(!this.checkFunc(e))throw new Qme(this.schema,e,this.Errors(e).First());return this.hasTransform?Dme(this.schema,this.references,e):e}Encode(e){let n=this.hasTransform?Vme(this.schema,this.references,e):e;if(!this.checkFunc(n))throw new Fme(this.schema,e,this.Errors(e).First());return n}};(function(t){function e(o){return o===36}t.DollarSign=e;function n(o){return o===95}t.IsUnderscore=n;function r(o){return o>=65&&o<=90||o>=97&&o<=122}t.IsAlpha=r;function i(o){return o>=48&&o<=57}t.IsNumeric=i})(zat||(zat={}));(function(t){function e(n){let r=[];for(let i=0;i<n.length;i++){let o=n.charCodeAt(i);zat.IsNumeric(o)||zat.IsAlpha(o)?r.push(n.charAt(i)):r.push(`_${o}_`)}return r.join("").replace(/__/g,"_")}t.Encode=e})(VAn||(VAn={}));MAn=class extends _a{constructor(e){super("Unknown type"),this.schema=e}},Hat=class extends _a{constructor(e){super("Preflight validation check failed to guard for the given schema"),this.schema=e}};(function(t){function e(s,a,l){return zA.ExactOptionalPropertyTypes?`(${AJ(a)} in ${s} ? ${l} : true)`:`(${_mi(s,a)} !== undefined ? ${l} : true)`}t.IsExactOptionalProperty=e;function n(s){return zA.AllowArrayObject?`(typeof ${s} === 'object' && ${s} !== null)`:`(typeof ${s} === 'object' && ${s} !== null && !Array.isArray(${s}))`}t.IsObjectLike=n;function r(s){return zA.AllowArrayObject?`(typeof ${s} === 'object' && ${s} !== null && !(${s} instanceof Date) && !(${s} instanceof Uint8Array))`:`(typeof ${s} === 'object' && ${s} !== null && !Array.isArray(${s}) && !(${s} instanceof Date) && !(${s} instanceof Uint8Array))`}t.IsRecordLike=r;function i(s){return zA.AllowNaN?`typeof ${s} === 'number'`:`Number.isFinite(${s})`}t.IsNumberLike=i;function o(s){return zA.AllowNullVoid?`(${s} === undefined || ${s} === null)`:`${s} === undefined`}t.IsVoidLike=o})(N7||(N7={}));(function(t){function e(le){return le[Fr]==="Any"||le[Fr]==="Unknown"}function*n(le,Ne,we){yield"true"}function*r(le,Ne,we){yield"true"}function*i(le,Ne,we){yield`Array.isArray(${we})`;let[Z,q]=[ae("value","any"),ae("acc","number")];ua(le.maxItems)&&(yield`${we}.length <= ${le.maxItems}`),ua(le.minItems)&&(yield`${we}.length >= ${le.minItems}`);let be=te(le.items,Ne,"value");if(yield`((array) => { for(const ${Z} of array) if(!(${be})) { return false }; return true; })(${we})`,yg(le.contains)||ua(le.minContains)||ua(le.maxContains)){let ve=yg(le.contains)?le.contains:Ol(),Le=te(ve,Ne,"value"),ie=ua(le.minContains)?[`(count >= ${le.minContains})`]:[],Ye=ua(le.maxContains)?[`(count <= ${le.maxContains})`]:[],It=`const count = value.reduce((${q}, ${Z}) => ${Le} ? acc + 1 : acc, 0)`,ft=["(count > 0)",...ie,...Ye].join(" && ");yield`((${Z}) => { ${It}; return ${ft}})(${we})`}le.uniqueItems===!0&&(yield`((${Z}) => { const set = new Set(); for(const element of value) { const hashed = hash(element); if(set.has(hashed)) { return false } else { set.add(hashed) } } return true } )(${we})`)}function*o(le,Ne,we){yield`(typeof value === 'object' && Symbol.asyncIterator in ${we})`}function*s(le,Ne,we){yield`(typeof ${we} === 'bigint')`,Ay(le.exclusiveMaximum)&&(yield`${we} < BigInt(${le.exclusiveMaximum})`),Ay(le.exclusiveMinimum)&&(yield`${we} > BigInt(${le.exclusiveMinimum})`),Ay(le.maximum)&&(yield`${we} <= BigInt(${le.maximum})`),Ay(le.minimum)&&(yield`${we} >= BigInt(${le.minimum})`),Ay(le.multipleOf)&&(yield`(${we} % BigInt(${le.multipleOf})) === 0`)}function*a(le,Ne,we){yield`(typeof ${we} === 'boolean')`}function*l(le,Ne,we){yield*V(le.returns,Ne,`${we}.prototype`)}function*c(le,Ne,we){yield`(${we} instanceof Date) && Number.isFinite(${we}.getTime())`,ua(le.exclusiveMaximumTimestamp)&&(yield`${we}.getTime() < ${le.exclusiveMaximumTimestamp}`),ua(le.exclusiveMinimumTimestamp)&&(yield`${we}.getTime() > ${le.exclusiveMinimumTimestamp}`),ua(le.maximumTimestamp)&&(yield`${we}.getTime() <= ${le.maximumTimestamp}`),ua(le.minimumTimestamp)&&(yield`${we}.getTime() >= ${le.minimumTimestamp}`),ua(le.multipleOfTimestamp)&&(yield`(${we}.getTime() % ${le.multipleOfTimestamp}) === 0`)}function*u(le,Ne,we){yield`(typeof ${we} === 'function')`}function*d(le,Ne,we){let Z=globalThis.Object.getOwnPropertyNames(le.$defs).reduce((q,be)=>[...q,le.$defs[be]],[]);yield*V(AS(le.$ref),[...Ne,...Z],we)}function*p(le,Ne,we){yield`Number.isInteger(${we})`,ua(le.exclusiveMaximum)&&(yield`${we} < ${le.exclusiveMaximum}`),ua(le.exclusiveMinimum)&&(yield`${we} > ${le.exclusiveMinimum}`),ua(le.maximum)&&(yield`${we} <= ${le.maximum}`),ua(le.minimum)&&(yield`${we} >= ${le.minimum}`),ua(le.multipleOf)&&(yield`(${we} % ${le.multipleOf}) === 0`)}function*A(le,Ne,we){let Z=le.allOf.map(q=>te(q,Ne,we)).join(" && ");if(le.unevaluatedProperties===!1){let q=$(`${new RegExp(QF(le))};`),be=`Object.getOwnPropertyNames(${we}).every(key => ${q}.test(key))`;yield`(${Z} && ${be})`}else if(yg(le.unevaluatedProperties)){let q=$(`${new RegExp(QF(le))};`),be=`Object.getOwnPropertyNames(${we}).every(key => ${q}.test(key) || ${te(le.unevaluatedProperties,Ne,`${we}[key]`)})`;yield`(${Z} && ${be})`}else yield`(${Z})`}function*g(le,Ne,we){yield`(typeof value === 'object' && Symbol.iterator in ${we})`}function*m(le,Ne,we){if(typeof le.const=="number"||typeof le.const=="boolean")yield`(${we} === ${le.const})`;else if(typeof le.const=="string")yield`(${we} === ${AJ(le.const)})`;else throw Error("Invalid Literal Value")}function*h(le,Ne,we){yield"false"}function*f(le,Ne,we){yield`(!${te(le.not,Ne,we)})`}function*E(le,Ne,we){yield`(${we} === null)`}function*b(le,Ne,we){yield N7.IsNumberLike(we),ua(le.exclusiveMaximum)&&(yield`${we} < ${le.exclusiveMaximum}`),ua(le.exclusiveMinimum)&&(yield`${we} > ${le.exclusiveMinimum}`),ua(le.maximum)&&(yield`${we} <= ${le.maximum}`),ua(le.minimum)&&(yield`${we} >= ${le.minimum}`),ua(le.multipleOf)&&(yield`(${we} % ${le.multipleOf}) === 0`)}function*y(le,Ne,we){yield N7.IsObjectLike(we),ua(le.minProperties)&&(yield`Object.getOwnPropertyNames(${we}).length >= ${le.minProperties}`),ua(le.maxProperties)&&(yield`Object.getOwnPropertyNames(${we}).length <= ${le.maxProperties}`);let Z=Object.getOwnPropertyNames(le.properties);for(let q of Z){let be=_mi(we,q),ve=le.properties[q];if(le.required&&le.required.includes(q))yield*V(ve,Ne,be),(DF(ve)||e(ve))&&(yield`(${AJ(q)} in ${we})`);else{let Le=te(ve,Ne,be);yield N7.IsExactOptionalProperty(we,q,Le)}}if(le.additionalProperties===!1)if(le.required&&le.required.length===Z.length)yield`Object.getOwnPropertyNames(${we}).length === ${Z.length}`;else{let q=`[${Z.map(be=>`${AJ(be)}`).join(", ")}]`;yield`Object.getOwnPropertyNames(${we}).every(key => ${q}.includes(key))`}if(typeof le.additionalProperties=="object"){let q=te(le.additionalProperties,Ne,`${we}[key]`),be=`[${Z.map(ve=>`${AJ(ve)}`).join(", ")}]`;yield`(Object.getOwnPropertyNames(${we}).every(key => ${be}.includes(key) || ${q}))`}}function*_(le,Ne,we){yield`${we} instanceof Promise`}function*v(le,Ne,we){yield N7.IsRecordLike(we),ua(le.minProperties)&&(yield`Object.getOwnPropertyNames(${we}).length >= ${le.minProperties}`),ua(le.maxProperties)&&(yield`Object.getOwnPropertyNames(${we}).length <= ${le.maxProperties}`);let[Z,q]=Object.entries(le.patternProperties)[0],be=$(`${new RegExp(Z)}`),ve=te(q,Ne,"value"),Le=yg(le.additionalProperties)?te(le.additionalProperties,Ne,we):le.additionalProperties===!1?"false":"true",ie=`(${be}.test(key) ? ${ve} : ${Le})`;yield`(Object.entries(${we}).every(([key, value]) => ${ie}))`}function*R(le,Ne,we){let Z=Pu(le,Ne);if(z.functions.has(le.$ref))return yield`${oe(le.$ref)}(${we})`;yield*V(Z,Ne,we)}function*x(le,Ne,we){let Z=$(`${new RegExp(le.source,le.flags)};`);yield`(typeof ${we} === 'string')`,ua(le.maxLength)&&(yield`${we}.length <= ${le.maxLength}`),ua(le.minLength)&&(yield`${we}.length >= ${le.minLength}`),yield`${Z}.test(${we})`}function*w(le,Ne,we){yield`(typeof ${we} === 'string')`,ua(le.maxLength)&&(yield`${we}.length <= ${le.maxLength}`),ua(le.minLength)&&(yield`${we}.length >= ${le.minLength}`),le.pattern!==void 0&&(yield`${$(`${new RegExp(le.pattern)};`)}.test(${we})`),le.format!==void 0&&(yield`format(${AJ(le.format)}, ${we})`)}function*F(le,Ne,we){yield`(typeof ${we} === 'symbol')`}function*T(le,Ne,we){yield`(typeof ${we} === 'string')`,yield`${$(`${new RegExp(le.pattern)};`)}.test(${we})`}function*D(le,Ne,we){yield`${oe(le.$ref)}(${we})`}function*Q(le,Ne,we){if(yield`Array.isArray(${we})`,le.items===void 0)return yield`${we}.length === 0`;yield`(${we}.length === ${le.maxItems})`;for(let Z=0;Z<le.items.length;Z++)yield`${te(le.items[Z],Ne,`${we}[${Z}]`)}`}function*k(le,Ne,we){yield`${we} === undefined`}function*W(le,Ne,we){yield`(${le.anyOf.map(q=>te(q,Ne,we)).join(" || ")})`}function*Y(le,Ne,we){yield`${we} instanceof Uint8Array`,ua(le.maxByteLength)&&(yield`(${we}.length <= ${le.maxByteLength})`),ua(le.minByteLength)&&(yield`(${we}.length >= ${le.minByteLength})`)}function*j(le,Ne,we){yield"true"}function*X(le,Ne,we){yield N7.IsVoidLike(we)}function*H(le,Ne,we){let Z=z.instances.size;z.instances.set(Z,le),yield`kind(${AJ(le[Fr])}, ${Z}, ${we})`}function*V(le,Ne,we,Z=!0){let q=Eu(le.$id)?[...Ne,le]:Ne,be=le;if(Z&&Eu(le.$id)){let ve=oe(le.$id);if(z.functions.has(ve))return yield`${ve}(${we})`;{z.functions.set(ve,"<deferred>");let Le=de(ve,le,Ne,"value",!1);return z.functions.set(ve,Le),yield`${ve}(${we})`}}switch(be[Fr]){case"Any":return yield*n(be,q,we);case"Argument":return yield*r(be,q,we);case"Array":return yield*i(be,q,we);case"AsyncIterator":return yield*o(be,q,we);case"BigInt":return yield*s(be,q,we);case"Boolean":return yield*a(be,q,we);case"Constructor":return yield*l(be,q,we);case"Date":return yield*c(be,q,we);case"Function":return yield*u(be,q,we);case"Import":return yield*d(be,q,we);case"Integer":return yield*p(be,q,we);case"Intersect":return yield*A(be,q,we);case"Iterator":return yield*g(be,q,we);case"Literal":return yield*m(be,q,we);case"Never":return yield*h(be,q,we);case"Not":return yield*f(be,q,we);case"Null":return yield*E(be,q,we);case"Number":return yield*b(be,q,we);case"Object":return yield*y(be,q,we);case"Promise":return yield*_(be,q,we);case"Record":return yield*v(be,q,we);case"Ref":return yield*R(be,q,we);case"RegExp":return yield*x(be,q,we);case"String":return yield*w(be,q,we);case"Symbol":return yield*F(be,q,we);case"TemplateLiteral":return yield*T(be,q,we);case"This":return yield*D(be,q,we);case"Tuple":return yield*Q(be,q,we);case"Undefined":return yield*k(be,q,we);case"Union":return yield*W(be,q,we);case"Uint8Array":return yield*Y(be,q,we);case"Unknown":return yield*j(be,q,we);case"Void":return yield*X(be,q,we);default:if(!PE.Has(be[Fr]))throw new MAn(le);return yield*H(be,q,we)}}let z={language:"javascript",functions:new Map,variables:new Map,instances:new Map};function te(le,Ne,we,Z=!0){return`(${[...V(le,Ne,we,Z)].join(" && ")})`}function oe(le){return`check_${VAn.Encode(le)}`}function $(le){let Ne=`local_${z.variables.size}`;return z.variables.set(Ne,`const ${Ne} = ${le}`),Ne}function de(le,Ne,we,Z,q=!0){let[be,ve]=[`
|
|
626
|
+
`.indexOf(t.charAt(e))!==-1}var sAn=I(()=>{"use strict";Oat();Ngi()});function kgi(t,e=[],n=cQe.DEFAULT){let r=null,i=[],o=[];function s(l){Array.isArray(i)?i.push(l):r!==null&&(i[r]=l)}return Pat(t,{onObjectBegin:()=>{let l={};s(l),o.push(i),i=l,r=null},onObjectProperty:l=>{r=l},onObjectEnd:()=>{i=o.pop()},onArrayBegin:()=>{let l=[];s(l),o.push(i),i=l,r=null},onArrayEnd:()=>{i=o.pop()},onLiteralValue:s,onError:(l,c,u)=>{e.push({error:l,offset:c,length:u})}},n),i[0]}function aAn(t,e=[],n=cQe.DEFAULT){let r={type:"array",offset:-1,length:-1,children:[],parent:void 0};function i(l){r.type==="property"&&(r.length=l-r.offset,r=r.parent)}function o(l){return r.children.push(l),l}Pat(t,{onObjectBegin:l=>{r=o({type:"object",offset:l,length:-1,parent:r,children:[]})},onObjectProperty:(l,c,u)=>{r=o({type:"property",offset:c,length:-1,parent:r,children:[]}),r.children.push({type:"string",value:l,offset:c,length:u,parent:r})},onObjectEnd:(l,c)=>{i(l+c),r.length=l+c-r.offset,r=r.parent,i(l+c)},onArrayBegin:(l,c)=>{r=o({type:"array",offset:l,length:-1,parent:r,children:[]})},onArrayEnd:(l,c)=>{r.length=l+c-r.offset,r=r.parent,i(l+c)},onLiteralValue:(l,c,u)=>{o({type:aMa(l),offset:c,length:u,parent:r,value:l}),i(c+u)},onSeparator:(l,c,u)=>{r.type==="property"&&(l===":"?r.colonOffset=c:l===","&&i(c))},onError:(l,c,u)=>{e.push({error:l,offset:c,length:u})}},n);let a=r.children[0];return a&&delete a.parent,a}function Lat(t,e){if(!t)return;let n=t;for(let r of e)if(typeof r=="string"){if(n.type!=="object"||!Array.isArray(n.children))return;let i=!1;for(let o of n.children)if(Array.isArray(o.children)&&o.children[0].value===r&&o.children.length===2){n=o.children[1],i=!0;break}if(!i)return}else{let i=r;if(n.type!=="array"||i<0||!Array.isArray(n.children)||i>=n.children.length)return;n=n.children[i]}return n}function Pat(t,e,n=cQe.DEFAULT){let r=aQe(t,!1),i=[],o=0;function s(k){return k?()=>o===0&&k(r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter()):()=>!0}function a(k){return k?W=>o===0&&k(W,r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter()):()=>!0}function l(k){return k?W=>o===0&&k(W,r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter(),()=>i.slice()):()=>!0}function c(k){return k?()=>{o>0?o++:k(r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter(),()=>i.slice())===!1&&(o=1)}:()=>!0}function u(k){return k?()=>{o>0&&o--,o===0&&k(r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter())}:()=>!0}let d=c(e.onObjectBegin),p=l(e.onObjectProperty),A=u(e.onObjectEnd),g=c(e.onArrayBegin),m=u(e.onArrayEnd),h=l(e.onLiteralValue),f=a(e.onSeparator),E=s(e.onComment),b=a(e.onError),y=n&&n.disallowComments,_=n&&n.allowTrailingComma;function v(){for(;;){let k=r.scan();switch(r.getTokenError()){case 4:R(14);break;case 5:R(15);break;case 3:R(13);break;case 1:y||R(11);break;case 2:R(12);break;case 6:R(16);break}switch(k){case 12:case 13:y?R(10):E();break;case 16:R(1);break;case 15:case 14:break;default:return k}}}function R(k,W=[],Y=[]){if(b(k),W.length+Y.length>0){let j=r.getToken();for(;j!==17;){if(W.indexOf(j)!==-1){v();break}else if(Y.indexOf(j)!==-1)break;j=v()}}}function x(k){let W=r.getTokenValue();return k?h(W):(p(W),i.push(W)),v(),!0}function w(){switch(r.getToken()){case 11:let k=r.getTokenValue(),W=Number(k);isNaN(W)&&(R(2),W=0),h(W);break;case 7:h(null);break;case 8:h(!0);break;case 9:h(!1);break;default:return!1}return v(),!0}function F(){return r.getToken()!==10?(R(3,[],[2,5]),!1):(x(!1),r.getToken()===6?(f(":"),v(),Q()||R(4,[],[2,5])):R(5,[],[2,5]),i.pop(),!0)}function T(){d(),v();let k=!1;for(;r.getToken()!==2&&r.getToken()!==17;){if(r.getToken()===5){if(k||R(4,[],[]),f(","),v(),r.getToken()===2&&_)break}else k&&R(6,[],[]);F()||R(4,[],[2,5]),k=!0}return A(),r.getToken()!==2?R(7,[2],[]):v(),!0}function D(){g(),v();let k=!0,W=!1;for(;r.getToken()!==4&&r.getToken()!==17;){if(r.getToken()===5){if(W||R(4,[],[]),f(","),v(),r.getToken()===4&&_)break}else W&&R(6,[],[]);k?(i.push(0),k=!1):i[i.length-1]++,Q()||R(4,[],[4,5]),W=!0}return m(),k||i.pop(),r.getToken()!==4?R(8,[4],[]):v(),!0}function Q(){switch(r.getToken()){case 3:return D();case 1:return T();case 10:return x(!0);default:return w()}}return v(),r.getToken()===17?n.allowEmptyContent?!0:(R(4,[],[]),!1):Q()?(r.getToken()!==17&&R(9,[],[]),!0):(R(4,[],[]),!1)}function aMa(t){switch(typeof t){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(t){if(Array.isArray(t))return"array"}else return"null";return"object"}default:return"null"}}var cQe,lAn=I(()=>{"use strict";Oat();(function(t){t.DEFAULT={allowTrailingComma:!1}})(cQe||(cQe={}))});function Qgi(t,e,n,r){let i=e.slice(),s=aAn(t,[]),a,l;for(;i.length>0&&(l=i.pop(),a=Lat(s,i),a===void 0&&n!==void 0);)typeof l=="string"?n={[l]:n}:n=[n];if(a)if(a.type==="object"&&typeof l=="string"&&Array.isArray(a.children)){let c=Lat(a,[l]);if(c!==void 0)if(n===void 0){if(!c.parent)throw new Error("Malformed AST");let u=a.children.indexOf(c.parent),d,p=c.parent.offset+c.parent.length;if(u>0){let A=a.children[u-1];d=A.offset+A.length}else d=a.offset+1,a.children.length>1&&(p=a.children[1].offset);return R7(t,{offset:d,length:p-d,content:""},r)}else return R7(t,{offset:c.offset,length:c.length,content:JSON.stringify(n)},r);else{if(n===void 0)return[];let u=`${JSON.stringify(l)}: ${JSON.stringify(n)}`,d=r.getInsertionIndex?r.getInsertionIndex(a.children.map(A=>A.children[0].value)):a.children.length,p;if(d>0){let A=a.children[d-1];p={offset:A.offset+A.length,length:0,content:","+u}}else a.children.length===0?p={offset:a.offset+1,length:0,content:u}:p={offset:a.offset+1,length:0,content:u+","};return R7(t,p,r)}}else if(a.type==="array"&&typeof l=="number"&&Array.isArray(a.children)){let c=l;if(c===-1){let u=`${JSON.stringify(n)}`,d;if(a.children.length===0)d={offset:a.offset+1,length:0,content:u};else{let p=a.children[a.children.length-1];d={offset:p.offset+p.length,length:0,content:","+u}}return R7(t,d,r)}else if(n===void 0&&a.children.length>=0){let u=l,d=a.children[u],p;if(a.children.length===1)p={offset:a.offset+1,length:a.length-2,content:""};else if(a.children.length-1===u){let A=a.children[u-1],g=A.offset+A.length,m=a.offset+a.length;p={offset:g,length:m-2-g,content:""}}else p={offset:d.offset,length:a.children[u+1].offset-d.offset,content:""};return R7(t,p,r)}else if(n!==void 0){let u,d=`${JSON.stringify(n)}`;if(!r.isArrayInsertion&&a.children.length>l){let p=a.children[l];u={offset:p.offset,length:p.length,content:d}}else if(a.children.length===0||l===0)u={offset:a.offset+1,length:0,content:a.children.length===0?d:d+","};else{let p=l>a.children.length?a.children.length:l,A=a.children[p-1];u={offset:A.offset+A.length,length:0,content:","+d}}return R7(t,u,r)}else throw new Error(`Can not ${n===void 0?"remove":r.isArrayInsertion?"insert":"modify"} Array index ${c} as length is not sufficient`)}else throw new Error(`Can not add ${typeof l!="number"?"index":"property"} to parent of type ${a.type}`);else{if(n===void 0)throw new Error("Can not delete in empty document");return R7(t,{offset:s?s.offset:0,length:s?s.length:0,content:JSON.stringify(n)},r)}}function R7(t,e,n){if(!n.formattingOptions)return[e];let r=Wat(t,e),i=e.offset,o=e.offset+e.content.length;if(e.length===0||e.content.length===0){for(;i>0&&!lQe(r,i-1);)i--;for(;o<r.length&&!lQe(r,o);)o++}let s=oAn(r,{offset:i,length:o-i},{...n.formattingOptions,keepLines:!1});for(let l=s.length-1;l>=0;l--){let c=s[l];r=Wat(r,c),i=Math.min(i,c.offset),o=Math.max(o,c.offset+c.length),o+=c.content.length-c.length}let a=t.length-(r.length-o)-i;return[{offset:i,length:a,content:r.substring(i,o)}]}function Wat(t,e){return t.substring(0,e.offset)+e.content+t.substring(e.offset+e.length)}var Dgi=I(()=>{"use strict";sAn();lAn()});function Ogi(t){switch(t){case 1:return"InvalidSymbol";case 2:return"InvalidNumberFormat";case 3:return"PropertyNameExpected";case 4:return"ValueExpected";case 5:return"ColonExpected";case 6:return"CommaExpected";case 7:return"CloseBraceExpected";case 8:return"CloseBracketExpected";case 9:return"EndOfFileExpected";case 10:return"InvalidCommentToken";case 11:return"UnexpectedEndOfComment";case 12:return"UnexpectedEndOfString";case 13:return"UnexpectedEndOfNumber";case 14:return"InvalidUnicode";case 15:return"InvalidEscapeCharacter";case 16:return"InvalidCharacter"}return"<unknown ParseErrorCode>"}function Lgi(t,e,n,r){return Qgi(t,e,n,r)}function Pgi(t,e){let n=e.slice(0).sort((i,o)=>{let s=i.offset-o.offset;return s===0?i.length-o.length:s}),r=t.length;for(let i=n.length-1;i>=0;i--){let o=n[i];if(o.offset+o.length<=r)t=Wat(t,o);else throw new Error("Overlapping edit");r=o.offset}return t}var Fgi,Vgi,Ggi,Ugi,Mgi,Wgi=I(()=>{"use strict";sAn();Dgi();Oat();lAn();(function(t){t[t.None=0]="None",t[t.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",t[t.UnexpectedEndOfString=2]="UnexpectedEndOfString",t[t.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",t[t.InvalidUnicode=4]="InvalidUnicode",t[t.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",t[t.InvalidCharacter=6]="InvalidCharacter"})(Fgi||(Fgi={}));(function(t){t[t.OpenBraceToken=1]="OpenBraceToken",t[t.CloseBraceToken=2]="CloseBraceToken",t[t.OpenBracketToken=3]="OpenBracketToken",t[t.CloseBracketToken=4]="CloseBracketToken",t[t.CommaToken=5]="CommaToken",t[t.ColonToken=6]="ColonToken",t[t.NullKeyword=7]="NullKeyword",t[t.TrueKeyword=8]="TrueKeyword",t[t.FalseKeyword=9]="FalseKeyword",t[t.StringLiteral=10]="StringLiteral",t[t.NumericLiteral=11]="NumericLiteral",t[t.LineCommentTrivia=12]="LineCommentTrivia",t[t.BlockCommentTrivia=13]="BlockCommentTrivia",t[t.LineBreakTrivia=14]="LineBreakTrivia",t[t.Trivia=15]="Trivia",t[t.Unknown=16]="Unknown",t[t.EOF=17]="EOF"})(Vgi||(Vgi={}));Ggi=kgi,Ugi=Pat;(function(t){t[t.InvalidSymbol=1]="InvalidSymbol",t[t.InvalidNumberFormat=2]="InvalidNumberFormat",t[t.PropertyNameExpected=3]="PropertyNameExpected",t[t.ValueExpected=4]="ValueExpected",t[t.ColonExpected=5]="ColonExpected",t[t.CommaExpected=6]="CommaExpected",t[t.CloseBraceExpected=7]="CloseBraceExpected",t[t.CloseBracketExpected=8]="CloseBracketExpected",t[t.EndOfFileExpected=9]="EndOfFileExpected",t[t.InvalidCommentToken=10]="InvalidCommentToken",t[t.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",t[t.UnexpectedEndOfString=12]="UnexpectedEndOfString",t[t.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",t[t.InvalidUnicode=14]="InvalidUnicode",t[t.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",t[t.InvalidCharacter=16]="InvalidCharacter"})(Mgi||(Mgi={}))});var Ly=I(()=>{Y1e();Y1e()});var Zgi,uMa,dMa,pMa,AMa,gMa,mMa,hMa,Xgi,Ygi=I(()=>{"use strict";Ly();Zgi=t=>t===null?"null":Array.isArray(t)?"an array":`a ${typeof t}`,uMa=t=>{try{return new RegExp(t),!0}catch{return!1}},dMa=On.discriminatedUnion("type",[On.object({type:On.enum(["allow","deny","ask-user"])}),On.object({type:On.literal("webhook-policy"),webhookUrl:On.url({error:'"permission.webhookUrl" must be a valid URL for a "webhook-policy".'})}),On.object({type:On.literal("script-policy"),script:On.string({error:'"permission.script" must be a non-empty string for a "script-policy".'}).min(1,{error:'"permission.script" must be a non-empty string for a "script-policy".'})})],{error:'unknown or invalid "permission".'}),pMa=On.object({toolName:On.string({error:'"toolName" must be a non-empty string.'}).min(1,{error:'"toolName" must be a non-empty string.'}),permission:dMa,eventType:On.enum(["tool-call","tool-response"],{error:'"eventType" must be "tool-call" or "tool-response" when present.'}).optional(),shellInputRegex:On.string({error:'"shellInputRegex" must be a string when present.'}).refine(uMa,{error:'"shellInputRegex" must be a valid regular expression when present.'}).optional()},{error:t=>`rule must be an object, got ${Zgi(t.input)}.`}),AMa=t=>{let e=t.issues[0];if(e===void 0)return"invalid rule.";let n=e.message.endsWith(".")?e.message:`${e.message}.`;return e.path.length===0||n.startsWith('"')?n:`"${e.path.join(".")}": ${n}`},gMa='Expected { "toolName": string, "permission": { "type": "allow" | "deny" | "ask-user" } | { "type": "webhook-policy", "webhookUrl": string } | { "type": "script-policy", "script": string }, "eventType"?: "tool-call" | "tool-response", "shellInputRegex"?: string }.',mMa=t=>{let e=t.toolPermissions;if(e===void 0)return[];if(!Array.isArray(e))return t.toolPermissions=void 0,[`Ignoring "toolPermissions": expected an array of rules, got ${Zgi(e)}.`];let n=[],r=[];for(let i=0;i<e.length;i++){let o=pMa.safeParse(e[i]);o.success?r.push(e[i]):n.push(`Dropping invalid "toolPermissions" rule at index ${i}: ${AMa(o.error)} ${gMa}`)}return n.length>0&&(t.toolPermissions=r),n},hMa=t=>{if("queueMode"in t&&!("steeringMode"in t)&&(t.steeringMode=t.queueMode,t.queueMode=void 0),!("transport"in t)&&typeof t.websockets=="boolean"&&(t.transport=t.websockets?"websocket":"sse",t.websockets=void 0),"skills"in t&&typeof t.skills=="object"&&t.skills!==null&&!Array.isArray(t.skills)){let e=t.skills;e.enableSkillCommands!==void 0&&t.enableSkillCommands===void 0&&(t.enableSkillCommands=e.enableSkillCommands),Array.isArray(e.customDirectories)&&e.customDirectories.length>0?t.skills=e.customDirectories:t.skills=void 0}return t},Xgi=t=>{let e=hMa(t),n=mMa(e);return{settings:e,warnings:n}}});var fMa,EMa,cAn,bMa,cJ,CMa,Jgi,v7,vme=I(()=>{"use strict";Wgi();Ygi();fMa=t=>typeof t=="object"&&t!==null&&!Array.isArray(t),EMa=t=>{Ugi(t,{onObjectProperty:e=>{if(cJ.has(e))throw new Error(`Settings document contains reserved key "${e}".`)}})},cAn=t=>{EMa(t);let e=[],n=Ggi(t,e,{allowTrailingComma:!0});if(e.length>0){let r=e.map(i=>Ogi(i.error)).join(", ");throw new Error(`Failed to parse settings JSON: ${r}`)}if(n===void 0)return{};if(!fMa(n))throw new Error("Settings document is not a valid object. Expected a JSON object but found a different type (e.g., array).");return n},bMa={tabSize:2,insertSpaces:!0},cJ=new Set(["__proto__","constructor","prototype"]),CMa=t=>{let e=typeof t=="string"?t.split("."):[...t],n=typeof t=="string"?t:t.join(".");for(let r of e){if(r==="")throw new Error(`Invalid settings path "${n}": empty segment.`);if(cJ.has(r))throw new Error(`Invalid settings path "${n}": "${r}" is a reserved key.`)}return e},Jgi=(t,e,n)=>{let r=Lgi(t,CMa(e),n,{formattingOptions:bMa});return Pgi(t,r)},v7=class{constructor(e){this.settings={};this.warnings=[];this.store=e}drainWarnings(){let e=this.warnings;return this.warnings=[],e}getSettings(){return structuredClone(this.settings)}publish(e){let n=cAn(e),{settings:r,warnings:i}=Xgi(n);this.warnings.push(...i),this.settings=r}reload(){let e=this.store.read();if(e===void 0||e.trim()===""){this.settings={};return}this.publish(e)}remove(e){let n={persisted:!1,effectiveChange:!1};return this.store.modify(r=>{if(r===void 0||r.trim()==="")return;cAn(r);let i=r;for(let o of e.paths)i=Jgi(i,o,void 0);if(i!==r)return this.publish(i),n={persisted:!0,effectiveChange:!0},i}),n}update(e){return this.updateAll([e])}updateAll(e){let n={persisted:!1,effectiveChange:!1};return this.store.modify(r=>{let i=r===void 0||r.trim()===""?"{}":r;cAn(i);let o=e.reduce((s,a)=>Jgi(s,a.path,a.value),i);if(o!==i)return this.publish(o),n={persisted:!0,effectiveChange:!0},o}),n}}});var uAn,uQe,zgi,yMa,IMa,SMa,_Ma,B7,Zat=I(()=>{"use strict";Lr();vme();uAn=t=>typeof t=="object"&&t!==null&&!Array.isArray(t),uQe=t=>Array.isArray(t)?t.map(uQe):uAn(t)?Object.fromEntries(Object.entries(t).filter(([e])=>!cJ.has(e)).map(([e,n])=>[e,uQe(n)])):structuredClone(t),zgi=(t,e,n=!1)=>{for(let[r,i]of Object.entries(e)){if(cJ.has(r)||i===void 0)continue;let o=t[r];n&&r==="toolPermissions"&&Array.isArray(i)?t[r]=[...uQe(i),...Array.isArray(o)?o:[]]:uAn(o)&&uAn(i)?t[r]={...o,...uQe(i)}:t[r]=uQe(i)}},yMa="managed",IMa="global",SMa="project",_Ma="local",B7=class{constructor(e,n={},r={}){this.errors=[];this.locals=e,this.overrides=n,this.vfs=r}drainErrors(){let e=this.errors;return this.errors=[],e}getSettings(){return this.mergeLayers([IMa,SMa,_Ma,yMa])}getGlobalSettings(){return this.locals.global.getSettings()}getManagedSettings(){return this.locals.managed.getSettings()}getLocalSettings(){return this.locals.local.getSettings()}getProjectSettings(){return this.locals.project.getSettings()}getVfsUserSettings(){return this.vfs.vfsUser?.getSettings()??{}}getVfsSpaceSettings(){return this.vfs.vfsSpace?.getSettings()??{}}getVfsOrgSettings(){return this.vfs.vfsOrg?.getSettings()??{}}mergeLayers(e){let n={},r=e.map(i=>this.locals[i].getSettings());for(let i of r)zgi(n,i,!0);return zgi(n,this.overrides),n}reload(){let e=[...Object.entries(this.locals),...Object.entries(this.vfs)];for(let[n,r]of e)if(r){try{r.reload()}catch(i){let o=i instanceof Error?i:new Error(String(i));mn.error("settings reload failed",{scope:n,error:o}),this.errors.push({scope:n,error:o})}for(let i of r.drainWarnings())this.errors.push({scope:n,error:new Error(i)})}}remove(e,n){return this.routeWrite(e,r=>r.remove(n))}update(e,n){return this.routeWrite(e,r=>r.update(n))}updateAll(e,n){return this.routeWrite(e,r=>r.updateAll(n))}routeWrite(e,n){if(e==="managed")throw new Error('Refusing to write read-only settings scope "managed"');let r=this.getSettings(),i=n(this.locals[e]);for(let a of this.locals[e].drainWarnings())this.errors.push({scope:e,error:new Error(a)});if(!i.persisted)return i;let o=this.getSettings(),s=JSON.stringify(r)!==JSON.stringify(o);return{persisted:i.persisted,effectiveChange:s}}}});var dAn,pAn=I(()=>{"use strict";wgi();Zat();vme();dAn=(t,e)=>{let n=i=>new v7(new Uat(i)),r=new B7({managed:n(t.managedPath),global:n(t.globalPath),project:n(t.projectPath),local:n(t.localPath)},e,{vfsUser:t.vfsUserPath?n(t.vfsUserPath):void 0,vfsSpace:t.vfsSpacePath?n(t.vfsSpacePath):void 0,vfsOrg:t.vfsOrgPath?n(t.vfsOrgPath):void 0});return r.reload(),r}});var AAn,gAn,Hgi,w7,Xat=I(()=>{"use strict";vme();AAn=t=>typeof t=="object"&&t!==null&&!Array.isArray(t),gAn=t=>{if(Array.isArray(t))return t.map(gAn);if(!AAn(t))return structuredClone(t);let e={};for(let[n,r]of Object.entries(t))cJ.has(n)||(e[n]=gAn(r));return e},Hgi=(t,e)=>{let n=structuredClone(t);for(let r of Object.keys(e)){let i=e[r];if(i===void 0||cJ.has(r))continue;let o=n[r],s=gAn(i);AAn(o)&&AAn(s)?n[r]={...o,...s}:n[r]=s}return n},w7=class{constructor(e){this.errors=[];this.manager=e}get settings(){let e=this.manager.getSettings();return this.dynamicOverrides?Hgi(e,this.dynamicOverrides):e}update(e,n,r){if(this.dynamicOverrides=void 0,typeof n=="object"&&"path"in n)return this.manager.update(e,n);try{this.manager.update(e,{path:n,value:r})}catch(i){let o=i instanceof Error?i:new Error(String(i));this.errors.push({scope:e,error:o})}}updateAll(e,n){return this.dynamicOverrides=void 0,this.manager.updateAll(e,n)}remove(e,n){return this.dynamicOverrides=void 0,this.manager.remove(e,n)}getSettings(){return structuredClone(this.settings)}getGlobalSettings(){return structuredClone(this.manager.getGlobalSettings())}getProjectSettings(){return structuredClone(this.manager.getProjectSettings())}getLocalSettings(){return structuredClone(this.manager.getLocalSettings())}getManagedSettings(){return structuredClone(this.manager.getManagedSettings())}getVfsUserSettings(){return structuredClone(this.manager.getVfsUserSettings())}getVfsSpaceSettings(){return structuredClone(this.manager.getVfsSpaceSettings())}getVfsOrgSettings(){return structuredClone(this.manager.getVfsOrgSettings())}reload(){this.manager.reload(),this.dynamicOverrides=void 0}applyOverrides(e){this.dynamicOverrides=Hgi(this.dynamicOverrides??{},e)}flush(){}drainErrors(){let e=[...this.manager.drainErrors(),...this.errors];return this.errors=[],e}getLastChangelogVersion(){return this.settings.lastChangelogVersion}setLastChangelogVersion(e){this.update("global","lastChangelogVersion",e)}getSessionDir(){return this.settings.sessionDir}getWorktreeDir(){return this.settings.worktreeDir}getDefaultProvider(){return this.settings.defaultProvider}getDefaultModel(){return this.settings.defaultModel}setDefaultProvider(e){this.update("global","defaultProvider",e)}setDefaultModel(e){this.update("global","defaultModel",e)}setDefaultModelAndProvider(e,n){this.dynamicOverrides=void 0;try{this.manager.updateAll("global",[{path:"defaultProvider",value:e},{path:"defaultModel",value:n}])}catch(r){let i=r instanceof Error?r:new Error(String(r));this.errors.push({scope:"global",error:i})}}getSteeringMode(){return this.settings.steeringMode||"one-at-a-time"}setSteeringMode(e){this.update("global","steeringMode",e)}getFollowUpMode(){return this.settings.followUpMode||"one-at-a-time"}setFollowUpMode(e){this.update("global","followUpMode",e)}getTheme(){return this.settings.theme}setTheme(e){this.update("global","theme",e)}getDefaultThinkingLevel(){return this.settings.defaultThinkingLevel}setDefaultThinkingLevel(e){this.update("global","defaultThinkingLevel",e)}getTransport(){return this.settings.transport??"sse"}setTransport(e){this.update("global","transport",e)}getCompactionEnabled(){return this.settings.compaction?.enabled??!0}setCompactionEnabled(e){this.update("global","compaction.enabled",e)}getCompactionReserveTokens(){return this.settings.compaction?.reserveTokens??16384}getCompactionProtectedHeadTokens(){return this.settings.compaction?.protectedHeadTokens??2e4}getCompactionKeepRecentTokens(){return this.settings.compaction?.keepRecentTokens??2e4}getCompactionSummarizationModel(){return this.settings.compaction?.summarizationModel}getCompactionSettings(){return{enabled:this.getCompactionEnabled(),reserveTokens:this.getCompactionReserveTokens(),protectedHeadTokens:this.getCompactionProtectedHeadTokens(),keepRecentTokens:this.getCompactionKeepRecentTokens(),summarizationModel:this.getCompactionSummarizationModel(),useReserveTrigger:this.settings.compaction?.useReserveTrigger??!1,inputBudgetTriggerRatio:this.settings.compaction?.inputBudgetTriggerRatio,fallbackInputBudgetRatio:this.settings.compaction?.fallbackInputBudgetRatio,maxMessageTokens:this.settings.compaction?.maxMessageTokens}}getBranchSummarySettings(){return{reserveTokens:this.settings.branchSummary?.reserveTokens??16384,skipPrompt:this.settings.branchSummary?.skipPrompt??!1}}getBranchSummarySkipPrompt(){return this.settings.branchSummary?.skipPrompt??!1}getRetryEnabled(){return this.settings.retry?.enabled??!0}setRetryEnabled(e){this.update("global","retry.enabled",e)}getRetrySettings(){return{enabled:this.getRetryEnabled(),maxRetries:this.settings.retry?.maxRetries??3,baseDelayMs:this.settings.retry?.baseDelayMs??2e3,maxDelayMs:this.settings.retry?.maxDelayMs??6e4}}getHideThinkingBlock(){return this.settings.hideThinkingBlock??!1}setHideThinkingBlock(e){this.update("global","hideThinkingBlock",e)}getCollapsePromptCommands(){return this.settings.collapsePromptCommands??!1}setCollapsePromptCommands(e){this.update("global","collapsePromptCommands",e)}getShellPath(){return this.settings.shellPath}setShellPath(e){this.update("global","shellPath",e)}getQuietStartup(){return this.settings.quietStartup??!1}setQuietStartup(e){this.update("global","quietStartup",e)}getShellCommandPrefix(){return this.settings.shellCommandPrefix}setShellCommandPrefix(e){this.update("global","shellCommandPrefix",e)}getNpmCommand(){return this.settings.npmCommand?[...this.settings.npmCommand]:void 0}setNpmCommand(e){this.update("global","npmCommand",e?[...e]:void 0)}getCollapseChangelog(){return this.settings.collapseChangelog??!1}setCollapseChangelog(e){this.update("global","collapseChangelog",e)}getPackages(){return[...this.settings.packages??[]]}setPackages(e){this.update("global","packages",e)}setProjectPackages(e){this.update("project","packages",e)}setLocalPackages(e){this.update("local","packages",e)}getExtensionPaths(){return[...this.settings.extensions??[]]}setExtensionPaths(e){this.update("global","extensions",e)}setProjectExtensionPaths(e){this.update("project","extensions",e)}setLocalExtensionPaths(e){this.update("local","extensions",e)}getSkillPaths(){return[...this.settings.skills??[]]}setSkillPaths(e){this.update("global","skills",e)}setProjectSkillPaths(e){this.update("project","skills",e)}setLocalSkillPaths(e){this.update("local","skills",e)}getPromptTemplatePaths(){return[...this.settings.prompts??[]]}setPromptTemplatePaths(e){this.update("global","prompts",e)}setProjectPromptTemplatePaths(e){this.update("project","prompts",e)}setLocalPromptTemplatePaths(e){this.update("local","prompts",e)}getThemePaths(){return[...this.settings.themes??[]]}setThemePaths(e){this.update("global","themes",e)}setProjectThemePaths(e){this.update("project","themes",e)}setLocalThemePaths(e){this.update("local","themes",e)}getEnableSkillCommands(){return this.settings.enableSkillCommands??!0}setEnableSkillCommands(e){this.update("global","enableSkillCommands",e)}getEnableHashline(){return this.settings.enableHashline??!1}setEnableHashline(e){this.update("global","enableHashline",e)}getEnabledPlugins(){let e={};for(let[n,r]of Object.entries(this.settings.enabledPlugins??{}))typeof r=="boolean"&&(e[n]=r);return e}getToolPermissions(){let e=this.settings.toolPermissions;return Array.isArray(e)?structuredClone(e):[]}getToolPermissionScopeRuleSets(){let e=[this.getManagedSettings(),this.getLocalSettings(),this.getProjectSettings(),this.getGlobalSettings()],n=[];for(let r of e){let i=r.toolPermissions;Array.isArray(i)&&i.length>0&&n.push(structuredClone(i))}return n}setPluginEnabled(e,n){this.update("global",["enabledPlugins",e],n)}getEnableToolSearch(){return this.settings.enableToolSearch??!1}getThinkingBudgets(){return this.settings.thinkingBudgets}getShowImages(){return this.settings.terminal?.showImages??!0}setShowImages(e){this.update("global","terminal.showImages",e)}getClearOnShrink(){return this.settings.terminal?.clearOnShrink!==void 0?this.settings.terminal.clearOnShrink:process.env.PI_CLEAR_ON_SHRINK==="1"}setClearOnShrink(e){this.update("global","terminal.clearOnShrink",e)}getImageAutoResize(){return this.settings.images?.autoResize??!0}setImageAutoResize(e){this.update("global","images.autoResize",e)}getBlockImages(){return this.settings.images?.blockImages??!1}setBlockImages(e){this.update("global","images.blockImages",e)}getEnabledModels(){return this.settings.enabledModels?[...this.settings.enabledModels]:void 0}setEnabledModels(e){this.update("global","enabledModels",e)}getDoubleEscapeAction(){return this.settings.doubleEscapeAction??"tree"}setDoubleEscapeAction(e){this.update("global","doubleEscapeAction",e)}getTreeFilterMode(){let e=this.settings.treeFilterMode;return e&&["default","no-tools","user-only","labeled-only","all"].includes(e)?e:"default"}setTreeFilterMode(e){this.update("global","treeFilterMode",e)}getShowHardwareCursor(){return this.settings.showHardwareCursor??process.env.PI_HARDWARE_CURSOR==="1"}setShowHardwareCursor(e){this.update("global","showHardwareCursor",e)}getEditorPaddingX(){return this.settings.editorPaddingX??0}setEditorPaddingX(e){this.update("global","editorPaddingX",Math.max(0,Math.min(3,Math.floor(e))))}getAutocompleteMaxVisible(){return this.settings.autocompleteMaxVisible??5}setAutocompleteMaxVisible(e){this.update("global","autocompleteMaxVisible",Math.max(3,Math.min(20,Math.floor(e))))}getCodeBlockIndent(){return this.settings.markdown?.codeBlockIndent??" "}getHooks(){return this.settings.hooks}getTelemetrySettings(){return this.settings.telemetry}getEnvInjection(){let e=this.settings.env;if(!e||typeof e!="object")return{};let n={};for(let[r,i]of Object.entries(e))typeof i=="string"&&(n[r]=i);return n}getFeatureFlagOverrides(){return this.settings.featureFlagOverrides}getIndexingDirsUnion(){let e=[this.getManagedSettings(),this.getLocalSettings(),this.getProjectSettings(),this.getGlobalSettings()],n=r=>{let i=new Set,o=[];for(let s of e){let a=s[r];if(Array.isArray(a))for(let l of a)typeof l!="string"||i.has(l)||(i.add(l),o.push(l))}return o};return{allowDirs:n("indexingAllowDirs"),denyDirs:n("indexingDenyDirs")}}}});var mAn,hAn=I(()=>{"use strict";pAn();Xat();mAn=(t,e)=>new w7(dAn(t,e))});var dQe,fAn=I(()=>{"use strict";dQe=class{constructor(e){this.content=e}read(){return this.content}modify(e){let n=e(this.content);n!==void 0&&(this.content=n)}}});import{homedir as Kgi}from"node:os";import{join as x7}from"node:path";var RMa,vMa,EAn,ol,jgi=I(()=>{"use strict";fAn();Zat();vme();hAn();Xat();RMa="AUGGIE-V2_CODING_AGENT_DIR",vMa=()=>{let t=process.env[`${RMa}_MANAGED`];if(t)return t==="~"?x7(Kgi(),"settings.json"):t.startsWith("~/")?Kgi()+t.slice(1):t;if(process.platform==="win32"){let e=process.env.ProgramData||"C:\\ProgramData";return x7(e,"augment","settings.json")}return x7("/etc","augment","settings.json")},EAn=t=>t?x7(t,".augment","settings.json"):void 0,ol={create(t,e,n){return mAn({globalPath:x7(e,"settings.json"),projectPath:x7(t,".augment","settings.json"),localPath:x7(t,".augment","settings.local.json"),managedPath:vMa(),vfsUserPath:EAn(n?.user),vfsSpacePath:EAn(n?.space),vfsOrgPath:EAn(n?.org)})},inMemory(t={}){let e=r=>new v7(new dQe(r===void 0?void 0:JSON.stringify(r))),n=new B7({managed:e(),local:e(),project:e(),global:e(t)});return n.reload(),new w7(n)}}});var ub=I(()=>{"use strict";hAn();Xat();jgi();pAn();fAn();Zat();vme()});var uJ,bAn=I(()=>{uJ={name:"@augmentcode/auggie-v2",version:"1.2.0",description:"Auggie CLI Client by Augment Code",type:"module",piConfig:{name:"auggie-v2",configDir:".augment"},bin:{pi:"dist/cli.js"},main:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{source:"./src/index.ts",types:"./dist/index.d.ts",import:"./dist/index.js"},"./hooks":{types:"./dist/core/hooks/index.d.ts",import:"./dist/core/hooks/index.js"}},files:["dist","docs","examples","CHANGELOG.md"],scripts:{"check-types":"pnpm run bake:export-html && tsgo -p tsconfig.build.json",clean:"shx rm -rf dist","cli:source":"tsx --conditions=source src/cli.ts",dev:"pnpm run bake:export-html && pnpm run cli:source","dev:debug":"pnpm run bake:export-html && node --conditions=source --inspect-wait=ws://localhost:6499/57uz7t2uyri --import tsx src/cli.ts","bake:export-html":"node scripts/bake-export-html.mjs",build:"pnpm run bake:export-html && tsgo -p tsconfig.build.json --noCheck && shx chmod +x dist/cli.js && shx cp src/runtime/register-extensions.js dist/runtime/register-extensions.js && shx cp src/runtime/cloud-bridge.js dist/runtime/cloud-bridge.js && shx cp src/runtime/cloud-tracer-bridge.js dist/runtime/cloud-tracer-bridge.js && shx cp src/runtime/cloud-error-bridge.js dist/runtime/cloud-error-bridge.js && shx cp src/runtime/mcp-error-bridge.js dist/runtime/mcp-error-bridge.js && pnpm run copy-assets","build:npm:release":"node scripts/build-npm-release.mjs","build:migration-engine":"node scripts/build-migration-engine.mjs","build:release:sea":"node scripts/build-sea-release.mjs","build:release:sea:from-onison":"node scripts/build-sea-from-onison.mjs","build:release-js":"pnpm run bake:export-html && tsgo -p tsconfig.release.json --noCheck && shx chmod +x dist/cli.js && shx cp src/runtime/register-extensions.js dist/runtime/register-extensions.js && shx cp src/runtime/cloud-bridge.js dist/runtime/cloud-bridge.js && shx cp src/runtime/cloud-tracer-bridge.js dist/runtime/cloud-tracer-bridge.js && shx cp src/runtime/cloud-error-bridge.js dist/runtime/cloud-error-bridge.js && shx cp src/runtime/mcp-error-bridge.js dist/runtime/mcp-error-bridge.js && pnpm run copy-assets","build:npm":"pnpm run build:npm:release","clean:npm-artifacts":"find dist -name '*.js' -not -path 'dist/cli.js' -not -path 'dist/index.js' -not -path 'dist/release/*' -not -path 'dist/core/export-html/*' -delete && find dist -name '*.js.map' -delete","copy-assets":"shx mkdir -p dist/modes/interactive/theme && shx cp src/modes/interactive/theme/*.json dist/modes/interactive/theme/","assemble-changelog":"tsx scripts/assemble-changelog.ts",test:"pnpm run bake:export-html && vitest --run","test:acp:e2e":"pnpm run bake:export-html && vitest --run --config vitest.e2e.config.ts e2e-test/acp/","test:e2e:sanity":"pnpm run bake:export-html && vitest --run --config vitest.e2e.config.ts e2e-test/tui/sanity.test.ts","test:e2e:tui":"pnpm run bake:export-html && vitest --run --no-file-parallelism --config vitest.e2e.config.ts e2e-test/tui/","test:e2e:cli":"pnpm run bake:export-html && vitest --run --no-file-parallelism --config vitest.e2e.config.ts e2e-test/cli/",prepublishOnly:"pnpm run clean && pnpm run build"},dependencies:{"@agentclientprotocol/sdk":"1.3.0","@augmentcode/api-client":"0.0.13-20260812T202821Z","@earendil-works/pi-agent-core":"workspace:*","@earendil-works/pi-ai":"workspace:*","@earendil-works/pi-indexing":"workspace:*","@earendil-works/pi-tui":"workspace:*","@hermes/ask-user":"workspace:*","@hermes/augment-legacy-tools":"workspace:*","@hermes/cloud":"workspace:*","@hermes/daemon":"workspace:*","@hermes/git-credentials":"workspace:*","@hermes/hashline-edit":"workspace:*","@hermes/hooks":"workspace:*","@hermes/logger":"workspace:*","@hermes/lsp":"workspace:*","@hermes/mcp":"workspace:*","@hermes/migration":"workspace:*","@hermes/otel":"workspace:*","@hermes/path-utils":"workspace:*","@hermes/plugins":"workspace:*","@hermes/prompt-enhancer":"workspace:*","@hermes/segment-analytics":"workspace:*","@hermes/settings":"workspace:*","@hermes/shared-types":"workspace:*","@hermes/subagents":"workspace:*","@hermes/tool-permissions":"workspace:*","@mariozechner/jiti":"^2.6.2","@sentry/node":"^10.53.1","@silvia-odwyer/photon-node":"^0.3.4","@sinclair/typebox":"^0.34.41",ajv:"^8.17.1",chalk:"^5.5.0","cli-highlight":"^2.1.11",diff:"^8.0.2","extract-zip":"^2.0.1",fdir:"^6.5.0","file-type":"^21.1.1",glob:"^13.0.1","hosted-git-info":"^9.0.2",ignore:"^7.0.5","jsonc-parser":"3.3.1",marked:"^15.0.12",minimatch:"^10.2.3","proper-lockfile":"^4.1.2","strip-ansi":"^7.1.0",turndown:"^7.2.4",undici:"^7.19.1",yaml:"^2.8.2",zod:"^4.4.3"},overrides:{rimraf:"6.1.2",gaxios:{rimraf:"6.1.2"}},optionalDependencies:{"@mariozechner/clipboard":"^0.3.2"},devDependencies:{"@tintinweb/pi-subagents":"workspace:*","@types/diff":"^7.0.2","@types/hosted-git-info":"^3.0.5","@types/ms":"^2.1.0","@types/node":"^24.3.0","@types/proper-lockfile":"^4.1.4","@types/turndown":"^5.0.5",level:"^10.0.0",shx:"^0.4.0",tsx:"^4.21.0",typescript:"^5.7.3",vitest:"^3.2.4"},keywords:["coding-agent","ai","llm","cli","tui","agent"],author:"Mario Zechner",license:"MIT",repository:{type:"git",url:"git+https://github.com/badlogic/pi-mono.git",directory:"packages/coding-agent"},engines:{node:">=20.6.0"}}});import{existsSync as wMa}from"node:fs";import{homedir as pQe}from"node:os";import{dirname as CAn,join as xT,resolve as $gi}from"node:path";import{fileURLToPath as xMa}from"node:url";function NMa(){let t=`${yAn}\0${process.execPath||""}`.toLowerCase();return t.includes("/pnpm/")||t.includes("/.pnpm/")||t.includes("\\pnpm\\")?"pnpm":t.includes("/yarn/")||t.includes("/.yarn/")||t.includes("\\yarn\\")?"yarn":t.includes("/npm/")||t.includes("/node_modules/")||t.includes("\\npm\\")?"npm":"unknown"}function qgi(t,e){switch(NMa()){case"pnpm":return`Run: pnpm install -g ${t}`;case"yarn":return`Run: yarn global add ${t}`;case"npm":return`Run: npm install -g ${t}`;default:return`Run: npm install -g ${t}`}}function emi(){let t=process.env.PI_PACKAGE_DIR;if(t)return t==="~"?pQe():t.startsWith("~/")?pQe()+t.slice(1):t;let e=yAn;for(;e!==CAn(e);){if(wMa(xT(e,"package.json")))return e;e=CAn(e)}return yAn}function Bme(){return $gi(xT(emi(),"docs"))}function Yat(){return $gi(xT(emi(),"CHANGELOG.md"))}function imi(t){return`${process.env.PI_SHARE_VIEWER_URL||QMa}#${t}`}function omi(t){return t==="~"?pQe():t.startsWith("~/")?pQe()+t.slice(1):t}function RQ(){let t=process.env.AUGMENT_CACHE_DIR;return t?omi(t):xT(pQe(),".augment")}function ks(){let t=process.env[mQe];return t?omi(t):RQ()}function hQe(){return xT(ks(),"themes")}function smi(){return xT(ks(),"models.json")}function IAn(){return xT(ks(),"auth.json")}function ami(){return xT(ks(),"settings.json")}function T7(){return RQ()}function wme(){return xT(ks(),"bin")}function lmi(){return xT(ks(),"prompts")}function cmi(){return xT(ks(),AQe)}function umi(){return xT(ks(),`${Ms}-debug.log`)}var TMa,yAn,Ms,Kl,AQe,gQe,tmi,kMa,QA,nmi,rmi,mQe,QMa,Lu=I(()=>{"use strict";bAn();TMa=xMa(import.meta.url),yAn=CAn(TMa);Ms=uJ.piConfig?.name||"pi",Kl=uJ.piConfig?.configDir||".augment",AQe="sessions-v2",gQe="auggie",tmi="Auggie Coding Agent",kMa="1.2.0-prerelease.202608200912",QA=kMa??uJ.version,nmi="a18eeff29d2fc53a12e6308f11a14c49653567b0",rmi="2026-08-20T16:12:11Z",mQe=`${Ms.toUpperCase()}_CODING_AGENT_DIR`,QMa="https://pi.dev/session/"});function dmi(...t){return new globalThis.Function(...t)}var pmi=I(()=>{});var SAn,_An,Ami,gmi=I(()=>{I6();lve();fs();jg();SAn=class extends _a{constructor(e){super(`Duplicate type kind '${e}' detected`)}},_An=class extends _a{constructor(e){super(`Duplicate string format '${e}' detected`)}};(function(t){function e(r,i){if(PE.Has(r))throw new SAn(r);return PE.Set(r,i),(o={})=>U6({...o,[Fr]:r})}t.Type=e;function n(r,i){if(lS.Has(r))throw new _An(r);return lS.Set(r,i),r}t.Format=n})(Ami||(Ami={}))});var Jat=I(()=>{pmi();cRe();gmi()});function DMa(t){switch(t.errorType){case Or.ArrayContains:return"Expected array to contain at least one matching value";case Or.ArrayMaxContains:return`Expected array to contain no more than ${t.schema.maxContains} matching values`;case Or.ArrayMinContains:return`Expected array to contain at least ${t.schema.minContains} matching values`;case Or.ArrayMaxItems:return`Expected array length to be less or equal to ${t.schema.maxItems}`;case Or.ArrayMinItems:return`Expected array length to be greater or equal to ${t.schema.minItems}`;case Or.ArrayUniqueItems:return"Expected array elements to be unique";case Or.Array:return"Expected array";case Or.AsyncIterator:return"Expected AsyncIterator";case Or.BigIntExclusiveMaximum:return`Expected bigint to be less than ${t.schema.exclusiveMaximum}`;case Or.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${t.schema.exclusiveMinimum}`;case Or.BigIntMaximum:return`Expected bigint to be less or equal to ${t.schema.maximum}`;case Or.BigIntMinimum:return`Expected bigint to be greater or equal to ${t.schema.minimum}`;case Or.BigIntMultipleOf:return`Expected bigint to be a multiple of ${t.schema.multipleOf}`;case Or.BigInt:return"Expected bigint";case Or.Boolean:return"Expected boolean";case Or.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${t.schema.exclusiveMinimumTimestamp}`;case Or.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${t.schema.exclusiveMaximumTimestamp}`;case Or.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${t.schema.minimumTimestamp}`;case Or.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${t.schema.maximumTimestamp}`;case Or.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${t.schema.multipleOfTimestamp}`;case Or.Date:return"Expected Date";case Or.Function:return"Expected function";case Or.IntegerExclusiveMaximum:return`Expected integer to be less than ${t.schema.exclusiveMaximum}`;case Or.IntegerExclusiveMinimum:return`Expected integer to be greater than ${t.schema.exclusiveMinimum}`;case Or.IntegerMaximum:return`Expected integer to be less or equal to ${t.schema.maximum}`;case Or.IntegerMinimum:return`Expected integer to be greater or equal to ${t.schema.minimum}`;case Or.IntegerMultipleOf:return`Expected integer to be a multiple of ${t.schema.multipleOf}`;case Or.Integer:return"Expected integer";case Or.IntersectUnevaluatedProperties:return"Unexpected property";case Or.Intersect:return"Expected all values to match";case Or.Iterator:return"Expected Iterator";case Or.Literal:return`Expected ${typeof t.schema.const=="string"?`'${t.schema.const}'`:t.schema.const}`;case Or.Never:return"Never";case Or.Not:return"Value should not match";case Or.Null:return"Expected null";case Or.NumberExclusiveMaximum:return`Expected number to be less than ${t.schema.exclusiveMaximum}`;case Or.NumberExclusiveMinimum:return`Expected number to be greater than ${t.schema.exclusiveMinimum}`;case Or.NumberMaximum:return`Expected number to be less or equal to ${t.schema.maximum}`;case Or.NumberMinimum:return`Expected number to be greater or equal to ${t.schema.minimum}`;case Or.NumberMultipleOf:return`Expected number to be a multiple of ${t.schema.multipleOf}`;case Or.Number:return"Expected number";case Or.Object:return"Expected object";case Or.ObjectAdditionalProperties:return"Unexpected property";case Or.ObjectMaxProperties:return`Expected object to have no more than ${t.schema.maxProperties} properties`;case Or.ObjectMinProperties:return`Expected object to have at least ${t.schema.minProperties} properties`;case Or.ObjectRequiredProperty:return"Expected required property";case Or.Promise:return"Expected Promise";case Or.RegExp:return"Expected string to match regular expression";case Or.StringFormatUnknown:return`Unknown format '${t.schema.format}'`;case Or.StringFormat:return`Expected string to match '${t.schema.format}' format`;case Or.StringMaxLength:return`Expected string length less or equal to ${t.schema.maxLength}`;case Or.StringMinLength:return`Expected string length greater or equal to ${t.schema.minLength}`;case Or.StringPattern:return`Expected string to match '${t.schema.pattern}'`;case Or.String:return"Expected string";case Or.Symbol:return"Expected symbol";case Or.TupleLength:return`Expected tuple to have ${t.schema.maxItems||0} elements`;case Or.Tuple:return"Expected tuple";case Or.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${t.schema.maxByteLength}`;case Or.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${t.schema.minByteLength}`;case Or.Uint8Array:return"Expected Uint8Array";case Or.Undefined:return"Expected undefined";case Or.Union:return"Expected union value";case Or.Void:return"Expected void";case Or.Kind:return`Expected kind '${t.schema[Fr]}'`;default:return"Unknown error type"}}function mmi(){return FMa}var FMa,RAn=I(()=>{fs();vAn();FMa=DMa});function VMa(t,e){let n=e.find(r=>r.$id===t.$ref);if(n===void 0)throw new BAn(t);return Pu(n,e)}function CC(t,e){return!Eu(t.$id)||e.some(n=>n.$id===t.$id)||e.push(t),e}function Pu(t,e){return t[Fr]==="This"||t[Fr]==="Ref"?VMa(t,e):t}var BAn,hmi=I(()=>{jg();fs();H3e();BAn=class extends _a{constructor(e){super(`Unable to dereference schema with $id '${e.$ref}'`),this.schema=e}}});var TT=I(()=>{hmi()});function*OMa(t){let e=t===0?1:Math.ceil(Math.floor(Math.log2(t)+1)/8);for(let n=0;n<e;n++)yield t>>8*(e-1-n)&255}function LMa(t){c0(qB.Array);for(let e of t)Tme(e)}function PMa(t){c0(qB.Boolean),c0(t?1:0)}function WMa(t){c0(qB.BigInt),Emi.setBigInt64(0,t);for(let e of bmi)c0(e)}function ZMa(t){c0(qB.Date),Tme(t.getTime())}function XMa(t){c0(qB.Null)}function YMa(t){c0(qB.Number),Emi.setFloat64(0,t);for(let e of bmi)c0(e)}function JMa(t){c0(qB.Object);for(let e of globalThis.Object.getOwnPropertyNames(t).sort())Tme(e),Tme(t[e])}function zMa(t){c0(qB.String);for(let e=0;e<t.length;e++)for(let n of OMa(t.charCodeAt(e)))c0(n)}function HMa(t){c0(qB.Symbol),Tme(t.description)}function KMa(t){c0(qB.Uint8Array);for(let e=0;e<t.length;e++)c0(t[e])}function jMa(t){return c0(qB.Undefined)}function Tme(t){if(ka(t))return LMa(t);if(wF(t))return PMa(t);if(Ay(t))return WMa(t);if(oS(t))return ZMa(t);if(KO(t))return XMa(t);if(ua(t))return YMa(t);if(Ul(t))return JMa(t);if(Eu(t))return zMa(t);if(jO(t))return HMa(t);if(Yse(t))return KMa(t);if(Eg(t))return jMa(t);throw new wAn(t)}function c0(t){xme=xme^UMa[t],xme=xme*MMa%GMa}function dJ(t){return xme=BigInt("14695981039346656037"),Tme(t),xme}var wAn,qB,xme,MMa,GMa,UMa,fmi,Emi,bmi,Cmi=I(()=>{$f();jg();wAn=class extends _a{constructor(e){super("Unable to hash value"),this.value=e}};(function(t){t[t.Undefined=0]="Undefined",t[t.Null=1]="Null",t[t.Boolean=2]="Boolean",t[t.Number=3]="Number",t[t.String=4]="String",t[t.Object=5]="Object",t[t.Array=6]="Array",t[t.Date=7]="Date",t[t.Uint8Array=8]="Uint8Array",t[t.Symbol=9]="Symbol",t[t.BigInt=10]="BigInt"})(qB||(qB={}));xme=BigInt("14695981039346656037"),[MMa,GMa]=[BigInt("1099511628211"),BigInt("18446744073709551616")],UMa=Array.from({length:256}).map((t,e)=>BigInt(e)),fmi=new Float64Array(1),Emi=new DataView(fmi.buffer),bmi=new Uint8Array(fmi.buffer)});var Nme=I(()=>{Cmi()});function $Ma(t){return t[Fr]==="Any"||t[Fr]==="Unknown"}function iu(t){return t!==void 0}function qMa(t,e,n){return!0}function eGa(t,e,n){return!0}function tGa(t,e,n){if(!ka(n)||iu(t.minItems)&&!(n.length>=t.minItems)||iu(t.maxItems)&&!(n.length<=t.maxItems))return!1;for(let o of n)if(!yC(t.items,e,o))return!1;if(t.uniqueItems===!0&&!(function(){let o=new Set;for(let s of n){let a=dJ(s);if(o.has(a))return!1;o.add(a)}return!0})())return!1;if(!(iu(t.contains)||ua(t.minContains)||ua(t.maxContains)))return!0;let r=iu(t.contains)?t.contains:Ol(),i=n.reduce((o,s)=>yC(r,e,s)?o+1:o,0);return!(i===0||ua(t.minContains)&&i<t.minContains||ua(t.maxContains)&&i>t.maxContains)}function nGa(t,e,n){return X3e(n)}function rGa(t,e,n){return!(!Ay(n)||iu(t.exclusiveMaximum)&&!(n<t.exclusiveMaximum)||iu(t.exclusiveMinimum)&&!(n>t.exclusiveMinimum)||iu(t.maximum)&&!(n<=t.maximum)||iu(t.minimum)&&!(n>=t.minimum)||iu(t.multipleOf)&&n%t.multipleOf!==BigInt(0))}function iGa(t,e,n){return wF(n)}function oGa(t,e,n){return yC(t.returns,e,n.prototype)}function sGa(t,e,n){return!(!oS(n)||iu(t.exclusiveMaximumTimestamp)&&!(n.getTime()<t.exclusiveMaximumTimestamp)||iu(t.exclusiveMinimumTimestamp)&&!(n.getTime()>t.exclusiveMinimumTimestamp)||iu(t.maximumTimestamp)&&!(n.getTime()<=t.maximumTimestamp)||iu(t.minimumTimestamp)&&!(n.getTime()>=t.minimumTimestamp)||iu(t.multipleOfTimestamp)&&n.getTime()%t.multipleOfTimestamp!==0)}function aGa(t,e,n){return _Z(n)}function lGa(t,e,n){let r=globalThis.Object.values(t.$defs),i=t.$defs[t.$ref];return yC(i,[...e,...r],n)}function cGa(t,e,n){return!(!z3e(n)||iu(t.exclusiveMaximum)&&!(n<t.exclusiveMaximum)||iu(t.exclusiveMinimum)&&!(n>t.exclusiveMinimum)||iu(t.maximum)&&!(n<=t.maximum)||iu(t.minimum)&&!(n>=t.minimum)||iu(t.multipleOf)&&n%t.multipleOf!==0)}function uGa(t,e,n){let r=t.allOf.every(i=>yC(i,e,n));if(t.unevaluatedProperties===!1){let i=new RegExp(QF(t)),o=Object.getOwnPropertyNames(n).every(s=>i.test(s));return r&&o}else if(Cg(t.unevaluatedProperties)){let i=new RegExp(QF(t)),o=Object.getOwnPropertyNames(n).every(s=>i.test(s)||yC(t.unevaluatedProperties,e,n[s]));return r&&o}else return r}function dGa(t,e,n){return Y3e(n)}function pGa(t,e,n){return n===t.const}function AGa(t,e,n){return!1}function gGa(t,e,n){return!yC(t.not,e,n)}function mGa(t,e,n){return KO(n)}function hGa(t,e,n){return!(!zA.IsNumberLike(n)||iu(t.exclusiveMaximum)&&!(n<t.exclusiveMaximum)||iu(t.exclusiveMinimum)&&!(n>t.exclusiveMinimum)||iu(t.minimum)&&!(n>=t.minimum)||iu(t.maximum)&&!(n<=t.maximum)||iu(t.multipleOf)&&n%t.multipleOf!==0)}function fGa(t,e,n){if(!zA.IsObjectLike(n)||iu(t.minProperties)&&!(Object.getOwnPropertyNames(n).length>=t.minProperties)||iu(t.maxProperties)&&!(Object.getOwnPropertyNames(n).length<=t.maxProperties))return!1;let r=Object.getOwnPropertyNames(t.properties);for(let i of r){let o=t.properties[i];if(t.required&&t.required.includes(i)){if(!yC(o,e,n[i])||(DF(o)||$Ma(o))&&!(i in n))return!1}else if(zA.IsExactOptionalProperty(n,i)&&!yC(o,e,n[i]))return!1}if(t.additionalProperties===!1){let i=Object.getOwnPropertyNames(n);return t.required&&t.required.length===r.length&&i.length===r.length?!0:i.every(o=>r.includes(o))}else return typeof t.additionalProperties=="object"?Object.getOwnPropertyNames(n).every(o=>r.includes(o)||yC(t.additionalProperties,e,n[o])):!0}function EGa(t,e,n){return J3e(n)}function bGa(t,e,n){if(!zA.IsRecordLike(n)||iu(t.minProperties)&&!(Object.getOwnPropertyNames(n).length>=t.minProperties)||iu(t.maxProperties)&&!(Object.getOwnPropertyNames(n).length<=t.maxProperties))return!1;let[r,i]=Object.entries(t.patternProperties)[0],o=new RegExp(r),s=Object.entries(n).every(([c,u])=>o.test(c)?yC(i,e,u):!0),a=typeof t.additionalProperties=="object"?Object.entries(n).every(([c,u])=>o.test(c)?!0:yC(t.additionalProperties,e,u)):!0,l=t.additionalProperties===!1?Object.getOwnPropertyNames(n).every(c=>o.test(c)):!0;return s&&a&&l}function CGa(t,e,n){return yC(Pu(t,e),e,n)}function yGa(t,e,n){let r=new RegExp(t.source,t.flags);return iu(t.minLength)&&!(n.length>=t.minLength)||iu(t.maxLength)&&!(n.length<=t.maxLength)?!1:r.test(n)}function IGa(t,e,n){return!Eu(n)||iu(t.minLength)&&!(n.length>=t.minLength)||iu(t.maxLength)&&!(n.length<=t.maxLength)||iu(t.pattern)&&!new RegExp(t.pattern).test(n)?!1:iu(t.format)?lS.Has(t.format)?lS.Get(t.format)(n):!1:!0}function SGa(t,e,n){return jO(n)}function _Ga(t,e,n){return Eu(n)&&new RegExp(t.pattern).test(n)}function RGa(t,e,n){return yC(Pu(t,e),e,n)}function vGa(t,e,n){if(!ka(n)||t.items===void 0&&n.length!==0||n.length!==t.maxItems)return!1;if(!t.items)return!0;for(let r=0;r<t.items.length;r++)if(!yC(t.items[r],e,n[r]))return!1;return!0}function BGa(t,e,n){return Eg(n)}function wGa(t,e,n){return t.anyOf.some(r=>yC(r,e,n))}function xGa(t,e,n){return!(!Yse(n)||iu(t.maxByteLength)&&!(n.length<=t.maxByteLength)||iu(t.minByteLength)&&!(n.length>=t.minByteLength))}function TGa(t,e,n){return!0}function NGa(t,e,n){return zA.IsVoidLike(n)}function kGa(t,e,n){return PE.Has(t[Fr])?PE.Get(t[Fr])(t,n):!1}function yC(t,e,n){let r=iu(t.$id)?CC(t,e):e,i=t;switch(i[Fr]){case"Any":return qMa(i,r,n);case"Argument":return eGa(i,r,n);case"Array":return tGa(i,r,n);case"AsyncIterator":return nGa(i,r,n);case"BigInt":return rGa(i,r,n);case"Boolean":return iGa(i,r,n);case"Constructor":return oGa(i,r,n);case"Date":return sGa(i,r,n);case"Function":return aGa(i,r,n);case"Import":return lGa(i,r,n);case"Integer":return cGa(i,r,n);case"Intersect":return uGa(i,r,n);case"Iterator":return dGa(i,r,n);case"Literal":return pGa(i,r,n);case"Never":return AGa(i,r,n);case"Not":return gGa(i,r,n);case"Null":return mGa(i,r,n);case"Number":return hGa(i,r,n);case"Object":return fGa(i,r,n);case"Promise":return EGa(i,r,n);case"Record":return bGa(i,r,n);case"Ref":return CGa(i,r,n);case"RegExp":return yGa(i,r,n);case"String":return IGa(i,r,n);case"Symbol":return SGa(i,r,n);case"TemplateLiteral":return _Ga(i,r,n);case"This":return RGa(i,r,n);case"Tuple":return vGa(i,r,n);case"Undefined":return BGa(i,r,n);case"Union":return wGa(i,r,n);case"Uint8Array":return xGa(i,r,n);case"Unknown":return TGa(i,r,n);case"Void":return NGa(i,r,n);default:if(!PE.Has(i[Fr]))throw new xAn(i);return kGa(i,r,n)}}function Ac(...t){return t.length===3?yC(t[0],t[1],t[2]):yC(t[0],[],t[1])}var xAn,TAn=I(()=>{Jat();TT();Nme();fs();Y1();D6();I6();jg();ff();$f();bc();xAn=class extends _a{constructor(e){super("Unknown type"),this.schema=e}}});var ew=I(()=>{TAn()});function gP(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}function ou(t){return t!==void 0}function Uo(t,e,n,r,i=[]){return{type:t,schema:e,path:n,value:r,message:mmi()({errorType:t,path:n,schema:e,value:r,errors:i}),errors:i}}function*QGa(t,e,n,r){}function*DGa(t,e,n,r){}function*FGa(t,e,n,r){if(!ka(r))return yield Uo(Or.Array,t,n,r);ou(t.minItems)&&!(r.length>=t.minItems)&&(yield Uo(Or.ArrayMinItems,t,n,r)),ou(t.maxItems)&&!(r.length<=t.maxItems)&&(yield Uo(Or.ArrayMaxItems,t,n,r));for(let s=0;s<r.length;s++)yield*IC(t.items,e,`${n}/${s}`,r[s]);if(t.uniqueItems===!0&&!(function(){let s=new Set;for(let a of r){let l=dJ(a);if(s.has(l))return!1;s.add(l)}return!0})()&&(yield Uo(Or.ArrayUniqueItems,t,n,r)),!(ou(t.contains)||ou(t.minContains)||ou(t.maxContains)))return;let i=ou(t.contains)?t.contains:Ol(),o=r.reduce((s,a,l)=>IC(i,e,`${n}${l}`,a).next().done===!0?s+1:s,0);o===0&&(yield Uo(Or.ArrayContains,t,n,r)),ua(t.minContains)&&o<t.minContains&&(yield Uo(Or.ArrayMinContains,t,n,r)),ua(t.maxContains)&&o>t.maxContains&&(yield Uo(Or.ArrayMaxContains,t,n,r))}function*VGa(t,e,n,r){X3e(r)||(yield Uo(Or.AsyncIterator,t,n,r))}function*MGa(t,e,n,r){if(!Ay(r))return yield Uo(Or.BigInt,t,n,r);ou(t.exclusiveMaximum)&&!(r<t.exclusiveMaximum)&&(yield Uo(Or.BigIntExclusiveMaximum,t,n,r)),ou(t.exclusiveMinimum)&&!(r>t.exclusiveMinimum)&&(yield Uo(Or.BigIntExclusiveMinimum,t,n,r)),ou(t.maximum)&&!(r<=t.maximum)&&(yield Uo(Or.BigIntMaximum,t,n,r)),ou(t.minimum)&&!(r>=t.minimum)&&(yield Uo(Or.BigIntMinimum,t,n,r)),ou(t.multipleOf)&&r%t.multipleOf!==BigInt(0)&&(yield Uo(Or.BigIntMultipleOf,t,n,r))}function*GGa(t,e,n,r){wF(r)||(yield Uo(Or.Boolean,t,n,r))}function*UGa(t,e,n,r){yield*IC(t.returns,e,n,r.prototype)}function*OGa(t,e,n,r){if(!oS(r))return yield Uo(Or.Date,t,n,r);ou(t.exclusiveMaximumTimestamp)&&!(r.getTime()<t.exclusiveMaximumTimestamp)&&(yield Uo(Or.DateExclusiveMaximumTimestamp,t,n,r)),ou(t.exclusiveMinimumTimestamp)&&!(r.getTime()>t.exclusiveMinimumTimestamp)&&(yield Uo(Or.DateExclusiveMinimumTimestamp,t,n,r)),ou(t.maximumTimestamp)&&!(r.getTime()<=t.maximumTimestamp)&&(yield Uo(Or.DateMaximumTimestamp,t,n,r)),ou(t.minimumTimestamp)&&!(r.getTime()>=t.minimumTimestamp)&&(yield Uo(Or.DateMinimumTimestamp,t,n,r)),ou(t.multipleOfTimestamp)&&r.getTime()%t.multipleOfTimestamp!==0&&(yield Uo(Or.DateMultipleOfTimestamp,t,n,r))}function*LGa(t,e,n,r){_Z(r)||(yield Uo(Or.Function,t,n,r))}function*PGa(t,e,n,r){let i=globalThis.Object.values(t.$defs),o=t.$defs[t.$ref];yield*IC(o,[...e,...i],n,r)}function*WGa(t,e,n,r){if(!z3e(r))return yield Uo(Or.Integer,t,n,r);ou(t.exclusiveMaximum)&&!(r<t.exclusiveMaximum)&&(yield Uo(Or.IntegerExclusiveMaximum,t,n,r)),ou(t.exclusiveMinimum)&&!(r>t.exclusiveMinimum)&&(yield Uo(Or.IntegerExclusiveMinimum,t,n,r)),ou(t.maximum)&&!(r<=t.maximum)&&(yield Uo(Or.IntegerMaximum,t,n,r)),ou(t.minimum)&&!(r>=t.minimum)&&(yield Uo(Or.IntegerMinimum,t,n,r)),ou(t.multipleOf)&&r%t.multipleOf!==0&&(yield Uo(Or.IntegerMultipleOf,t,n,r))}function*ZGa(t,e,n,r){let i=!1;for(let o of t.allOf)for(let s of IC(o,e,n,r))i=!0,yield s;if(i)return yield Uo(Or.Intersect,t,n,r);if(t.unevaluatedProperties===!1){let o=new RegExp(QF(t));for(let s of Object.getOwnPropertyNames(r))o.test(s)||(yield Uo(Or.IntersectUnevaluatedProperties,t,`${n}/${s}`,r))}if(typeof t.unevaluatedProperties=="object"){let o=new RegExp(QF(t));for(let s of Object.getOwnPropertyNames(r))if(!o.test(s)){let a=IC(t.unevaluatedProperties,e,`${n}/${s}`,r[s]).next();a.done||(yield a.value)}}}function*XGa(t,e,n,r){Y3e(r)||(yield Uo(Or.Iterator,t,n,r))}function*YGa(t,e,n,r){r!==t.const&&(yield Uo(Or.Literal,t,n,r))}function*JGa(t,e,n,r){yield Uo(Or.Never,t,n,r)}function*zGa(t,e,n,r){IC(t.not,e,n,r).next().done===!0&&(yield Uo(Or.Not,t,n,r))}function*HGa(t,e,n,r){KO(r)||(yield Uo(Or.Null,t,n,r))}function*KGa(t,e,n,r){if(!zA.IsNumberLike(r))return yield Uo(Or.Number,t,n,r);ou(t.exclusiveMaximum)&&!(r<t.exclusiveMaximum)&&(yield Uo(Or.NumberExclusiveMaximum,t,n,r)),ou(t.exclusiveMinimum)&&!(r>t.exclusiveMinimum)&&(yield Uo(Or.NumberExclusiveMinimum,t,n,r)),ou(t.maximum)&&!(r<=t.maximum)&&(yield Uo(Or.NumberMaximum,t,n,r)),ou(t.minimum)&&!(r>=t.minimum)&&(yield Uo(Or.NumberMinimum,t,n,r)),ou(t.multipleOf)&&r%t.multipleOf!==0&&(yield Uo(Or.NumberMultipleOf,t,n,r))}function*jGa(t,e,n,r){if(!zA.IsObjectLike(r))return yield Uo(Or.Object,t,n,r);ou(t.minProperties)&&!(Object.getOwnPropertyNames(r).length>=t.minProperties)&&(yield Uo(Or.ObjectMinProperties,t,n,r)),ou(t.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=t.maxProperties)&&(yield Uo(Or.ObjectMaxProperties,t,n,r));let i=Array.isArray(t.required)?t.required:[],o=Object.getOwnPropertyNames(t.properties),s=Object.getOwnPropertyNames(r);for(let a of i)s.includes(a)||(yield Uo(Or.ObjectRequiredProperty,t.properties[a],`${n}/${gP(a)}`,void 0));if(t.additionalProperties===!1)for(let a of s)o.includes(a)||(yield Uo(Or.ObjectAdditionalProperties,t,`${n}/${gP(a)}`,r[a]));if(typeof t.additionalProperties=="object")for(let a of s)o.includes(a)||(yield*IC(t.additionalProperties,e,`${n}/${gP(a)}`,r[a]));for(let a of o){let l=t.properties[a];t.required&&t.required.includes(a)?(yield*IC(l,e,`${n}/${gP(a)}`,r[a]),DF(t)&&!(a in r)&&(yield Uo(Or.ObjectRequiredProperty,l,`${n}/${gP(a)}`,void 0))):zA.IsExactOptionalProperty(r,a)&&(yield*IC(l,e,`${n}/${gP(a)}`,r[a]))}}function*$Ga(t,e,n,r){J3e(r)||(yield Uo(Or.Promise,t,n,r))}function*qGa(t,e,n,r){if(!zA.IsRecordLike(r))return yield Uo(Or.Object,t,n,r);ou(t.minProperties)&&!(Object.getOwnPropertyNames(r).length>=t.minProperties)&&(yield Uo(Or.ObjectMinProperties,t,n,r)),ou(t.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=t.maxProperties)&&(yield Uo(Or.ObjectMaxProperties,t,n,r));let[i,o]=Object.entries(t.patternProperties)[0],s=new RegExp(i);for(let[a,l]of Object.entries(r))s.test(a)&&(yield*IC(o,e,`${n}/${gP(a)}`,l));if(typeof t.additionalProperties=="object")for(let[a,l]of Object.entries(r))s.test(a)||(yield*IC(t.additionalProperties,e,`${n}/${gP(a)}`,l));if(t.additionalProperties===!1){for(let[a,l]of Object.entries(r))if(!s.test(a))return yield Uo(Or.ObjectAdditionalProperties,t,`${n}/${gP(a)}`,l)}}function*eUa(t,e,n,r){yield*IC(Pu(t,e),e,n,r)}function*tUa(t,e,n,r){if(!Eu(r))return yield Uo(Or.String,t,n,r);if(ou(t.minLength)&&!(r.length>=t.minLength)&&(yield Uo(Or.StringMinLength,t,n,r)),ou(t.maxLength)&&!(r.length<=t.maxLength)&&(yield Uo(Or.StringMaxLength,t,n,r)),!new RegExp(t.source,t.flags).test(r))return yield Uo(Or.RegExp,t,n,r)}function*nUa(t,e,n,r){if(!Eu(r))return yield Uo(Or.String,t,n,r);ou(t.minLength)&&!(r.length>=t.minLength)&&(yield Uo(Or.StringMinLength,t,n,r)),ou(t.maxLength)&&!(r.length<=t.maxLength)&&(yield Uo(Or.StringMaxLength,t,n,r)),Eu(t.pattern)&&(new RegExp(t.pattern).test(r)||(yield Uo(Or.StringPattern,t,n,r))),Eu(t.format)&&(lS.Has(t.format)?lS.Get(t.format)(r)||(yield Uo(Or.StringFormat,t,n,r)):yield Uo(Or.StringFormatUnknown,t,n,r))}function*rUa(t,e,n,r){jO(r)||(yield Uo(Or.Symbol,t,n,r))}function*iUa(t,e,n,r){if(!Eu(r))return yield Uo(Or.String,t,n,r);new RegExp(t.pattern).test(r)||(yield Uo(Or.StringPattern,t,n,r))}function*oUa(t,e,n,r){yield*IC(Pu(t,e),e,n,r)}function*sUa(t,e,n,r){if(!ka(r))return yield Uo(Or.Tuple,t,n,r);if(t.items===void 0&&r.length!==0)return yield Uo(Or.TupleLength,t,n,r);if(r.length!==t.maxItems)return yield Uo(Or.TupleLength,t,n,r);if(t.items)for(let i=0;i<t.items.length;i++)yield*IC(t.items[i],e,`${n}/${i}`,r[i])}function*aUa(t,e,n,r){Eg(r)||(yield Uo(Or.Undefined,t,n,r))}function*lUa(t,e,n,r){if(Ac(t,e,r))return;let i=t.anyOf.map(o=>new pJ(IC(o,e,n,r)));yield Uo(Or.Union,t,n,r,i)}function*cUa(t,e,n,r){if(!Yse(r))return yield Uo(Or.Uint8Array,t,n,r);ou(t.maxByteLength)&&!(r.length<=t.maxByteLength)&&(yield Uo(Or.Uint8ArrayMaxByteLength,t,n,r)),ou(t.minByteLength)&&!(r.length>=t.minByteLength)&&(yield Uo(Or.Uint8ArrayMinByteLength,t,n,r))}function*uUa(t,e,n,r){}function*dUa(t,e,n,r){zA.IsVoidLike(r)||(yield Uo(Or.Void,t,n,r))}function*pUa(t,e,n,r){PE.Get(t[Fr])(t,r)||(yield Uo(Or.Kind,t,n,r))}function*IC(t,e,n,r){let i=ou(t.$id)?[...e,t]:e,o=t;switch(o[Fr]){case"Any":return yield*QGa(o,i,n,r);case"Argument":return yield*DGa(o,i,n,r);case"Array":return yield*FGa(o,i,n,r);case"AsyncIterator":return yield*VGa(o,i,n,r);case"BigInt":return yield*MGa(o,i,n,r);case"Boolean":return yield*GGa(o,i,n,r);case"Constructor":return yield*UGa(o,i,n,r);case"Date":return yield*OGa(o,i,n,r);case"Function":return yield*LGa(o,i,n,r);case"Import":return yield*PGa(o,i,n,r);case"Integer":return yield*WGa(o,i,n,r);case"Intersect":return yield*ZGa(o,i,n,r);case"Iterator":return yield*XGa(o,i,n,r);case"Literal":return yield*YGa(o,i,n,r);case"Never":return yield*JGa(o,i,n,r);case"Not":return yield*zGa(o,i,n,r);case"Null":return yield*HGa(o,i,n,r);case"Number":return yield*KGa(o,i,n,r);case"Object":return yield*jGa(o,i,n,r);case"Promise":return yield*$Ga(o,i,n,r);case"Record":return yield*qGa(o,i,n,r);case"Ref":return yield*eUa(o,i,n,r);case"RegExp":return yield*tUa(o,i,n,r);case"String":return yield*nUa(o,i,n,r);case"Symbol":return yield*rUa(o,i,n,r);case"TemplateLiteral":return yield*iUa(o,i,n,r);case"This":return yield*oUa(o,i,n,r);case"Tuple":return yield*sUa(o,i,n,r);case"Undefined":return yield*aUa(o,i,n,r);case"Union":return yield*lUa(o,i,n,r);case"Uint8Array":return yield*cUa(o,i,n,r);case"Unknown":return yield*uUa(o,i,n,r);case"Void":return yield*dUa(o,i,n,r);default:if(!PE.Has(o[Fr]))throw new NAn(t);return yield*pUa(o,i,n,r)}}function ZM(...t){let e=t.length===3?IC(t[0],t[1],"",t[2]):IC(t[0],[],"",t[1]);return new pJ(e)}var Or,NAn,pJ,vAn=I(()=>{Jat();Y1();I6();IXe();RAn();jg();TT();Nme();ew();fs();ff();$f();(function(t){t[t.ArrayContains=0]="ArrayContains",t[t.ArrayMaxContains=1]="ArrayMaxContains",t[t.ArrayMaxItems=2]="ArrayMaxItems",t[t.ArrayMinContains=3]="ArrayMinContains",t[t.ArrayMinItems=4]="ArrayMinItems",t[t.ArrayUniqueItems=5]="ArrayUniqueItems",t[t.Array=6]="Array",t[t.AsyncIterator=7]="AsyncIterator",t[t.BigIntExclusiveMaximum=8]="BigIntExclusiveMaximum",t[t.BigIntExclusiveMinimum=9]="BigIntExclusiveMinimum",t[t.BigIntMaximum=10]="BigIntMaximum",t[t.BigIntMinimum=11]="BigIntMinimum",t[t.BigIntMultipleOf=12]="BigIntMultipleOf",t[t.BigInt=13]="BigInt",t[t.Boolean=14]="Boolean",t[t.DateExclusiveMaximumTimestamp=15]="DateExclusiveMaximumTimestamp",t[t.DateExclusiveMinimumTimestamp=16]="DateExclusiveMinimumTimestamp",t[t.DateMaximumTimestamp=17]="DateMaximumTimestamp",t[t.DateMinimumTimestamp=18]="DateMinimumTimestamp",t[t.DateMultipleOfTimestamp=19]="DateMultipleOfTimestamp",t[t.Date=20]="Date",t[t.Function=21]="Function",t[t.IntegerExclusiveMaximum=22]="IntegerExclusiveMaximum",t[t.IntegerExclusiveMinimum=23]="IntegerExclusiveMinimum",t[t.IntegerMaximum=24]="IntegerMaximum",t[t.IntegerMinimum=25]="IntegerMinimum",t[t.IntegerMultipleOf=26]="IntegerMultipleOf",t[t.Integer=27]="Integer",t[t.IntersectUnevaluatedProperties=28]="IntersectUnevaluatedProperties",t[t.Intersect=29]="Intersect",t[t.Iterator=30]="Iterator",t[t.Kind=31]="Kind",t[t.Literal=32]="Literal",t[t.Never=33]="Never",t[t.Not=34]="Not",t[t.Null=35]="Null",t[t.NumberExclusiveMaximum=36]="NumberExclusiveMaximum",t[t.NumberExclusiveMinimum=37]="NumberExclusiveMinimum",t[t.NumberMaximum=38]="NumberMaximum",t[t.NumberMinimum=39]="NumberMinimum",t[t.NumberMultipleOf=40]="NumberMultipleOf",t[t.Number=41]="Number",t[t.ObjectAdditionalProperties=42]="ObjectAdditionalProperties",t[t.ObjectMaxProperties=43]="ObjectMaxProperties",t[t.ObjectMinProperties=44]="ObjectMinProperties",t[t.ObjectRequiredProperty=45]="ObjectRequiredProperty",t[t.Object=46]="Object",t[t.Promise=47]="Promise",t[t.RegExp=48]="RegExp",t[t.StringFormatUnknown=49]="StringFormatUnknown",t[t.StringFormat=50]="StringFormat",t[t.StringMaxLength=51]="StringMaxLength",t[t.StringMinLength=52]="StringMinLength",t[t.StringPattern=53]="StringPattern",t[t.String=54]="String",t[t.Symbol=55]="Symbol",t[t.TupleLength=56]="TupleLength",t[t.Tuple=57]="Tuple",t[t.Uint8ArrayMaxByteLength=58]="Uint8ArrayMaxByteLength",t[t.Uint8ArrayMinByteLength=59]="Uint8ArrayMinByteLength",t[t.Uint8Array=60]="Uint8Array",t[t.Undefined=61]="Undefined",t[t.Union=62]="Union",t[t.Void=63]="Void"})(Or||(Or={}));NAn=class extends _a{constructor(e){super("Unknown type"),this.schema=e}};pJ=class{constructor(e){this.iterator=e}[Symbol.iterator](){return this.iterator}First(){let e=this.iterator.next();return e.done?void 0:e.value}}});var kme=I(()=>{vAn();RAn()});function Im(t,e,n){try{return ju(t)?t[bg].Decode(n):n}catch(r){throw new kAn(t,e,n,r)}}function AUa(t,e,n,r){return ka(r)?Im(t,n,r.map((i,o)=>vQ(t.items,e,`${n}/${o}`,i))):Im(t,n,r)}function gUa(t,e,n,r){if(!Ul(r)||iB(r))return Im(t,n,r);let i=xRe(t),o=i.map(u=>u[0]),s={...r};for(let[u,d]of i)u in s&&(s[u]=vQ(d,e,`${n}/${u}`,s[u]));if(!ju(t.unevaluatedProperties))return Im(t,n,s);let a=Object.getOwnPropertyNames(s),l=t.unevaluatedProperties,c={...s};for(let u of a)o.includes(u)||(c[u]=Im(l,`${n}/${u}`,c[u]));return Im(t,n,c)}function mUa(t,e,n,r){let i=globalThis.Object.values(t.$defs),o=t.$defs[t.$ref],s=vQ(o,[...e,...i],n,r);return Im(t,n,s)}function hUa(t,e,n,r){return Im(t,n,vQ(t.not,e,n,r))}function fUa(t,e,n,r){if(!Ul(r))return Im(t,n,r);let i=gS(t),o={...r};for(let c of i)Ya(o,c)&&(Eg(o[c])&&(!NF(t.properties[c])||zA.IsExactOptionalProperty(o,c))||(o[c]=vQ(t.properties[c],e,`${n}/${c}`,o[c])));if(!Cg(t.additionalProperties))return Im(t,n,o);let s=Object.getOwnPropertyNames(o),a=t.additionalProperties,l={...o};for(let c of s)i.includes(c)||(l[c]=Im(a,`${n}/${c}`,l[c]));return Im(t,n,l)}function EUa(t,e,n,r){if(!Ul(r))return Im(t,n,r);let i=Object.getOwnPropertyNames(t.patternProperties)[0],o=new RegExp(i),s={...r};for(let u of Object.getOwnPropertyNames(r))o.test(u)&&(s[u]=vQ(t.patternProperties[i],e,`${n}/${u}`,s[u]));if(!Cg(t.additionalProperties))return Im(t,n,s);let a=Object.getOwnPropertyNames(s),l=t.additionalProperties,c={...s};for(let u of a)o.test(u)||(c[u]=Im(l,`${n}/${u}`,c[u]));return Im(t,n,c)}function bUa(t,e,n,r){let i=Pu(t,e);return Im(t,n,vQ(i,e,n,r))}function CUa(t,e,n,r){let i=Pu(t,e);return Im(t,n,vQ(i,e,n,r))}function yUa(t,e,n,r){return ka(r)&&ka(t.items)?Im(t,n,t.items.map((i,o)=>vQ(i,e,`${n}/${o}`,r[o]))):Im(t,n,r)}function IUa(t,e,n,r){for(let i of t.anyOf){if(!Ac(i,e,r))continue;let o=vQ(i,e,n,r);return Im(t,n,o)}return Im(t,n,r)}function vQ(t,e,n,r){let i=CC(t,e),o=t;switch(t[Fr]){case"Array":return AUa(o,i,n,r);case"Import":return mUa(o,i,n,r);case"Intersect":return gUa(o,i,n,r);case"Not":return hUa(o,i,n,r);case"Object":return fUa(o,i,n,r);case"Record":return EUa(o,i,n,r);case"Ref":return bUa(o,i,n,r);case"Symbol":return Im(o,n,r);case"This":return CUa(o,i,n,r);case"Tuple":return yUa(o,i,n,r);case"Union":return IUa(o,i,n,r);default:return Im(o,n,r)}}function Dme(t,e,n){return vQ(t,e,"",n)}var Qme,kAn,ymi=I(()=>{cRe();fs();jg();Y1();TT();ew();$f();bc();Qme=class extends _a{constructor(e,n,r){super("Unable to decode value as it does not match the expected schema"),this.schema=e,this.value=n,this.error=r}},kAn=class extends _a{constructor(e,n,r,i){super(i instanceof Error?i.message:"Unknown error"),this.schema=e,this.path=n,this.value=r,this.error=i}}});function Py(t,e,n){try{return ju(t)?t[bg].Encode(n):n}catch(r){throw new QAn(t,e,n,r)}}function SUa(t,e,n,r){let i=Py(t,n,r);return ka(i)?i.map((o,s)=>BQ(t.items,e,`${n}/${s}`,o)):i}function _Ua(t,e,n,r){let i=globalThis.Object.values(t.$defs),o=t.$defs[t.$ref],s=Py(t,n,r);return BQ(o,[...e,...i],n,s)}function RUa(t,e,n,r){let i=Py(t,n,r);if(!Ul(r)||iB(r))return i;let o=xRe(t),s=o.map(d=>d[0]),a={...i};for(let[d,p]of o)d in a&&(a[d]=BQ(p,e,`${n}/${d}`,a[d]));if(!ju(t.unevaluatedProperties))return a;let l=Object.getOwnPropertyNames(a),c=t.unevaluatedProperties,u={...a};for(let d of l)s.includes(d)||(u[d]=Py(c,`${n}/${d}`,u[d]));return u}function vUa(t,e,n,r){return Py(t.not,n,Py(t,n,r))}function BUa(t,e,n,r){let i=Py(t,n,r);if(!Ul(i))return i;let o=gS(t),s={...i};for(let u of o)Ya(s,u)&&(Eg(s[u])&&(!NF(t.properties[u])||zA.IsExactOptionalProperty(s,u))||(s[u]=BQ(t.properties[u],e,`${n}/${u}`,s[u])));if(!Cg(t.additionalProperties))return s;let a=Object.getOwnPropertyNames(s),l=t.additionalProperties,c={...s};for(let u of a)o.includes(u)||(c[u]=Py(l,`${n}/${u}`,c[u]));return c}function wUa(t,e,n,r){let i=Py(t,n,r);if(!Ul(r))return i;let o=Object.getOwnPropertyNames(t.patternProperties)[0],s=new RegExp(o),a={...i};for(let d of Object.getOwnPropertyNames(r))s.test(d)&&(a[d]=BQ(t.patternProperties[o],e,`${n}/${d}`,a[d]));if(!Cg(t.additionalProperties))return a;let l=Object.getOwnPropertyNames(a),c=t.additionalProperties,u={...a};for(let d of l)s.test(d)||(u[d]=Py(c,`${n}/${d}`,u[d]));return u}function xUa(t,e,n,r){let i=Pu(t,e),o=BQ(i,e,n,r);return Py(t,n,o)}function TUa(t,e,n,r){let i=Pu(t,e),o=BQ(i,e,n,r);return Py(t,n,o)}function NUa(t,e,n,r){let i=Py(t,n,r);return ka(t.items)?t.items.map((o,s)=>BQ(o,e,`${n}/${s}`,i[s])):[]}function kUa(t,e,n,r){for(let i of t.anyOf){if(!Ac(i,e,r))continue;let o=BQ(i,e,n,r);return Py(t,n,o)}for(let i of t.anyOf){let o=BQ(i,e,n,r);if(Ac(t,e,o))return Py(t,n,o)}return Py(t,n,r)}function BQ(t,e,n,r){let i=CC(t,e),o=t;switch(t[Fr]){case"Array":return SUa(o,i,n,r);case"Import":return _Ua(o,i,n,r);case"Intersect":return RUa(o,i,n,r);case"Not":return vUa(o,i,n,r);case"Object":return BUa(o,i,n,r);case"Record":return wUa(o,i,n,r);case"Ref":return xUa(o,i,n,r);case"This":return TUa(o,i,n,r);case"Tuple":return NUa(o,i,n,r);case"Union":return kUa(o,i,n,r);default:return Py(o,n,r)}}function Vme(t,e,n){return BQ(t,e,"",n)}var Fme,QAn,Imi=I(()=>{cRe();fs();jg();Y1();TT();ew();$f();bc();Fme=class extends _a{constructor(e,n,r){super("The encoded value does not match the expected schema"),this.schema=e,this.value=n,this.error=r}},QAn=class extends _a{constructor(e,n,r,i){super(`${i instanceof Error?i.message:"Unknown error"}`),this.schema=e,this.path=n,this.value=r,this.error=i}}});function QUa(t,e){return ju(t)||db(t.items,e)}function DUa(t,e){return ju(t)||db(t.items,e)}function FUa(t,e){return ju(t)||db(t.returns,e)||t.parameters.some(n=>db(n,e))}function VUa(t,e){return ju(t)||db(t.returns,e)||t.parameters.some(n=>db(n,e))}function MUa(t,e){return ju(t)||ju(t.unevaluatedProperties)||t.allOf.some(n=>db(n,e))}function GUa(t,e){let n=globalThis.Object.getOwnPropertyNames(t.$defs).reduce((i,o)=>[...i,t.$defs[o]],[]),r=t.$defs[t.$ref];return ju(t)||db(r,[...n,...e])}function UUa(t,e){return ju(t)||db(t.items,e)}function OUa(t,e){return ju(t)||db(t.not,e)}function LUa(t,e){return ju(t)||Object.values(t.properties).some(n=>db(n,e))||Cg(t.additionalProperties)&&db(t.additionalProperties,e)}function PUa(t,e){return ju(t)||db(t.item,e)}function WUa(t,e){let n=Object.getOwnPropertyNames(t.patternProperties)[0],r=t.patternProperties[n];return ju(t)||db(r,e)||Cg(t.additionalProperties)&&ju(t.additionalProperties)}function ZUa(t,e){return ju(t)?!0:db(Pu(t,e),e)}function XUa(t,e){return ju(t)?!0:db(Pu(t,e),e)}function YUa(t,e){return ju(t)||!Eg(t.items)&&t.items.some(n=>db(n,e))}function JUa(t,e){return ju(t)||t.anyOf.some(n=>db(n,e))}function db(t,e){let n=CC(t,e),r=t;if(t.$id&&DAn.has(t.$id))return!1;switch(t.$id&&DAn.add(t.$id),t[Fr]){case"Array":return QUa(r,n);case"AsyncIterator":return DUa(r,n);case"Constructor":return FUa(r,n);case"Function":return VUa(r,n);case"Import":return GUa(r,n);case"Intersect":return MUa(r,n);case"Iterator":return UUa(r,n);case"Not":return OUa(r,n);case"Object":return LUa(r,n);case"Promise":return PUa(r,n);case"Record":return WUa(r,n);case"Ref":return ZUa(r,n);case"This":return XUa(r,n);case"Tuple":return YUa(r,n);case"Union":return JUa(r,n);default:return ju(t)}}function mP(t,e){return DAn.clear(),db(t,e)}var DAn,Smi=I(()=>{TT();fs();bc();$f();DAn=new Set});var Mme=I(()=>{ymi();Imi();Smi()});function AJ(t){if(!Eu(t))throw Error("ConstantString: Not a String");return`'${JSON.stringify(t).slice(1,-1).replace(/'/g,"\\'")}'`}function _mi(t,e){return`${t}[${AJ(e)}]`}var FAn,zat,VAn,MAn,Hat,N7,Gme,Rmi=I(()=>{Mme();kme();Jat();jg();TT();Nme();fs();I6();Y1();IXe();ff();d9();$f();iMt();FAn=class{constructor(e,n,r,i){this.schema=e,this.references=n,this.checkFunc=r,this.code=i,this.hasTransform=mP(e,n)}Code(){return this.code}Schema(){return this.schema}References(){return this.references}Errors(e){return ZM(this.schema,this.references,e)}Check(e){return this.checkFunc(e)}Decode(e){if(!this.checkFunc(e))throw new Qme(this.schema,e,this.Errors(e).First());return this.hasTransform?Dme(this.schema,this.references,e):e}Encode(e){let n=this.hasTransform?Vme(this.schema,this.references,e):e;if(!this.checkFunc(n))throw new Fme(this.schema,e,this.Errors(e).First());return n}};(function(t){function e(o){return o===36}t.DollarSign=e;function n(o){return o===95}t.IsUnderscore=n;function r(o){return o>=65&&o<=90||o>=97&&o<=122}t.IsAlpha=r;function i(o){return o>=48&&o<=57}t.IsNumeric=i})(zat||(zat={}));(function(t){function e(n){let r=[];for(let i=0;i<n.length;i++){let o=n.charCodeAt(i);zat.IsNumeric(o)||zat.IsAlpha(o)?r.push(n.charAt(i)):r.push(`_${o}_`)}return r.join("").replace(/__/g,"_")}t.Encode=e})(VAn||(VAn={}));MAn=class extends _a{constructor(e){super("Unknown type"),this.schema=e}},Hat=class extends _a{constructor(e){super("Preflight validation check failed to guard for the given schema"),this.schema=e}};(function(t){function e(s,a,l){return zA.ExactOptionalPropertyTypes?`(${AJ(a)} in ${s} ? ${l} : true)`:`(${_mi(s,a)} !== undefined ? ${l} : true)`}t.IsExactOptionalProperty=e;function n(s){return zA.AllowArrayObject?`(typeof ${s} === 'object' && ${s} !== null)`:`(typeof ${s} === 'object' && ${s} !== null && !Array.isArray(${s}))`}t.IsObjectLike=n;function r(s){return zA.AllowArrayObject?`(typeof ${s} === 'object' && ${s} !== null && !(${s} instanceof Date) && !(${s} instanceof Uint8Array))`:`(typeof ${s} === 'object' && ${s} !== null && !Array.isArray(${s}) && !(${s} instanceof Date) && !(${s} instanceof Uint8Array))`}t.IsRecordLike=r;function i(s){return zA.AllowNaN?`typeof ${s} === 'number'`:`Number.isFinite(${s})`}t.IsNumberLike=i;function o(s){return zA.AllowNullVoid?`(${s} === undefined || ${s} === null)`:`${s} === undefined`}t.IsVoidLike=o})(N7||(N7={}));(function(t){function e(le){return le[Fr]==="Any"||le[Fr]==="Unknown"}function*n(le,Ne,we){yield"true"}function*r(le,Ne,we){yield"true"}function*i(le,Ne,we){yield`Array.isArray(${we})`;let[Z,q]=[ae("value","any"),ae("acc","number")];ua(le.maxItems)&&(yield`${we}.length <= ${le.maxItems}`),ua(le.minItems)&&(yield`${we}.length >= ${le.minItems}`);let be=te(le.items,Ne,"value");if(yield`((array) => { for(const ${Z} of array) if(!(${be})) { return false }; return true; })(${we})`,yg(le.contains)||ua(le.minContains)||ua(le.maxContains)){let ve=yg(le.contains)?le.contains:Ol(),Le=te(ve,Ne,"value"),ie=ua(le.minContains)?[`(count >= ${le.minContains})`]:[],Ye=ua(le.maxContains)?[`(count <= ${le.maxContains})`]:[],It=`const count = value.reduce((${q}, ${Z}) => ${Le} ? acc + 1 : acc, 0)`,ft=["(count > 0)",...ie,...Ye].join(" && ");yield`((${Z}) => { ${It}; return ${ft}})(${we})`}le.uniqueItems===!0&&(yield`((${Z}) => { const set = new Set(); for(const element of value) { const hashed = hash(element); if(set.has(hashed)) { return false } else { set.add(hashed) } } return true } )(${we})`)}function*o(le,Ne,we){yield`(typeof value === 'object' && Symbol.asyncIterator in ${we})`}function*s(le,Ne,we){yield`(typeof ${we} === 'bigint')`,Ay(le.exclusiveMaximum)&&(yield`${we} < BigInt(${le.exclusiveMaximum})`),Ay(le.exclusiveMinimum)&&(yield`${we} > BigInt(${le.exclusiveMinimum})`),Ay(le.maximum)&&(yield`${we} <= BigInt(${le.maximum})`),Ay(le.minimum)&&(yield`${we} >= BigInt(${le.minimum})`),Ay(le.multipleOf)&&(yield`(${we} % BigInt(${le.multipleOf})) === 0`)}function*a(le,Ne,we){yield`(typeof ${we} === 'boolean')`}function*l(le,Ne,we){yield*V(le.returns,Ne,`${we}.prototype`)}function*c(le,Ne,we){yield`(${we} instanceof Date) && Number.isFinite(${we}.getTime())`,ua(le.exclusiveMaximumTimestamp)&&(yield`${we}.getTime() < ${le.exclusiveMaximumTimestamp}`),ua(le.exclusiveMinimumTimestamp)&&(yield`${we}.getTime() > ${le.exclusiveMinimumTimestamp}`),ua(le.maximumTimestamp)&&(yield`${we}.getTime() <= ${le.maximumTimestamp}`),ua(le.minimumTimestamp)&&(yield`${we}.getTime() >= ${le.minimumTimestamp}`),ua(le.multipleOfTimestamp)&&(yield`(${we}.getTime() % ${le.multipleOfTimestamp}) === 0`)}function*u(le,Ne,we){yield`(typeof ${we} === 'function')`}function*d(le,Ne,we){let Z=globalThis.Object.getOwnPropertyNames(le.$defs).reduce((q,be)=>[...q,le.$defs[be]],[]);yield*V(AS(le.$ref),[...Ne,...Z],we)}function*p(le,Ne,we){yield`Number.isInteger(${we})`,ua(le.exclusiveMaximum)&&(yield`${we} < ${le.exclusiveMaximum}`),ua(le.exclusiveMinimum)&&(yield`${we} > ${le.exclusiveMinimum}`),ua(le.maximum)&&(yield`${we} <= ${le.maximum}`),ua(le.minimum)&&(yield`${we} >= ${le.minimum}`),ua(le.multipleOf)&&(yield`(${we} % ${le.multipleOf}) === 0`)}function*A(le,Ne,we){let Z=le.allOf.map(q=>te(q,Ne,we)).join(" && ");if(le.unevaluatedProperties===!1){let q=$(`${new RegExp(QF(le))};`),be=`Object.getOwnPropertyNames(${we}).every(key => ${q}.test(key))`;yield`(${Z} && ${be})`}else if(yg(le.unevaluatedProperties)){let q=$(`${new RegExp(QF(le))};`),be=`Object.getOwnPropertyNames(${we}).every(key => ${q}.test(key) || ${te(le.unevaluatedProperties,Ne,`${we}[key]`)})`;yield`(${Z} && ${be})`}else yield`(${Z})`}function*g(le,Ne,we){yield`(typeof value === 'object' && Symbol.iterator in ${we})`}function*m(le,Ne,we){if(typeof le.const=="number"||typeof le.const=="boolean")yield`(${we} === ${le.const})`;else if(typeof le.const=="string")yield`(${we} === ${AJ(le.const)})`;else throw Error("Invalid Literal Value")}function*h(le,Ne,we){yield"false"}function*f(le,Ne,we){yield`(!${te(le.not,Ne,we)})`}function*E(le,Ne,we){yield`(${we} === null)`}function*b(le,Ne,we){yield N7.IsNumberLike(we),ua(le.exclusiveMaximum)&&(yield`${we} < ${le.exclusiveMaximum}`),ua(le.exclusiveMinimum)&&(yield`${we} > ${le.exclusiveMinimum}`),ua(le.maximum)&&(yield`${we} <= ${le.maximum}`),ua(le.minimum)&&(yield`${we} >= ${le.minimum}`),ua(le.multipleOf)&&(yield`(${we} % ${le.multipleOf}) === 0`)}function*y(le,Ne,we){yield N7.IsObjectLike(we),ua(le.minProperties)&&(yield`Object.getOwnPropertyNames(${we}).length >= ${le.minProperties}`),ua(le.maxProperties)&&(yield`Object.getOwnPropertyNames(${we}).length <= ${le.maxProperties}`);let Z=Object.getOwnPropertyNames(le.properties);for(let q of Z){let be=_mi(we,q),ve=le.properties[q];if(le.required&&le.required.includes(q))yield*V(ve,Ne,be),(DF(ve)||e(ve))&&(yield`(${AJ(q)} in ${we})`);else{let Le=te(ve,Ne,be);yield N7.IsExactOptionalProperty(we,q,Le)}}if(le.additionalProperties===!1)if(le.required&&le.required.length===Z.length)yield`Object.getOwnPropertyNames(${we}).length === ${Z.length}`;else{let q=`[${Z.map(be=>`${AJ(be)}`).join(", ")}]`;yield`Object.getOwnPropertyNames(${we}).every(key => ${q}.includes(key))`}if(typeof le.additionalProperties=="object"){let q=te(le.additionalProperties,Ne,`${we}[key]`),be=`[${Z.map(ve=>`${AJ(ve)}`).join(", ")}]`;yield`(Object.getOwnPropertyNames(${we}).every(key => ${be}.includes(key) || ${q}))`}}function*_(le,Ne,we){yield`${we} instanceof Promise`}function*v(le,Ne,we){yield N7.IsRecordLike(we),ua(le.minProperties)&&(yield`Object.getOwnPropertyNames(${we}).length >= ${le.minProperties}`),ua(le.maxProperties)&&(yield`Object.getOwnPropertyNames(${we}).length <= ${le.maxProperties}`);let[Z,q]=Object.entries(le.patternProperties)[0],be=$(`${new RegExp(Z)}`),ve=te(q,Ne,"value"),Le=yg(le.additionalProperties)?te(le.additionalProperties,Ne,we):le.additionalProperties===!1?"false":"true",ie=`(${be}.test(key) ? ${ve} : ${Le})`;yield`(Object.entries(${we}).every(([key, value]) => ${ie}))`}function*R(le,Ne,we){let Z=Pu(le,Ne);if(z.functions.has(le.$ref))return yield`${oe(le.$ref)}(${we})`;yield*V(Z,Ne,we)}function*x(le,Ne,we){let Z=$(`${new RegExp(le.source,le.flags)};`);yield`(typeof ${we} === 'string')`,ua(le.maxLength)&&(yield`${we}.length <= ${le.maxLength}`),ua(le.minLength)&&(yield`${we}.length >= ${le.minLength}`),yield`${Z}.test(${we})`}function*w(le,Ne,we){yield`(typeof ${we} === 'string')`,ua(le.maxLength)&&(yield`${we}.length <= ${le.maxLength}`),ua(le.minLength)&&(yield`${we}.length >= ${le.minLength}`),le.pattern!==void 0&&(yield`${$(`${new RegExp(le.pattern)};`)}.test(${we})`),le.format!==void 0&&(yield`format(${AJ(le.format)}, ${we})`)}function*F(le,Ne,we){yield`(typeof ${we} === 'symbol')`}function*T(le,Ne,we){yield`(typeof ${we} === 'string')`,yield`${$(`${new RegExp(le.pattern)};`)}.test(${we})`}function*D(le,Ne,we){yield`${oe(le.$ref)}(${we})`}function*Q(le,Ne,we){if(yield`Array.isArray(${we})`,le.items===void 0)return yield`${we}.length === 0`;yield`(${we}.length === ${le.maxItems})`;for(let Z=0;Z<le.items.length;Z++)yield`${te(le.items[Z],Ne,`${we}[${Z}]`)}`}function*k(le,Ne,we){yield`${we} === undefined`}function*W(le,Ne,we){yield`(${le.anyOf.map(q=>te(q,Ne,we)).join(" || ")})`}function*Y(le,Ne,we){yield`${we} instanceof Uint8Array`,ua(le.maxByteLength)&&(yield`(${we}.length <= ${le.maxByteLength})`),ua(le.minByteLength)&&(yield`(${we}.length >= ${le.minByteLength})`)}function*j(le,Ne,we){yield"true"}function*X(le,Ne,we){yield N7.IsVoidLike(we)}function*H(le,Ne,we){let Z=z.instances.size;z.instances.set(Z,le),yield`kind(${AJ(le[Fr])}, ${Z}, ${we})`}function*V(le,Ne,we,Z=!0){let q=Eu(le.$id)?[...Ne,le]:Ne,be=le;if(Z&&Eu(le.$id)){let ve=oe(le.$id);if(z.functions.has(ve))return yield`${ve}(${we})`;{z.functions.set(ve,"<deferred>");let Le=de(ve,le,Ne,"value",!1);return z.functions.set(ve,Le),yield`${ve}(${we})`}}switch(be[Fr]){case"Any":return yield*n(be,q,we);case"Argument":return yield*r(be,q,we);case"Array":return yield*i(be,q,we);case"AsyncIterator":return yield*o(be,q,we);case"BigInt":return yield*s(be,q,we);case"Boolean":return yield*a(be,q,we);case"Constructor":return yield*l(be,q,we);case"Date":return yield*c(be,q,we);case"Function":return yield*u(be,q,we);case"Import":return yield*d(be,q,we);case"Integer":return yield*p(be,q,we);case"Intersect":return yield*A(be,q,we);case"Iterator":return yield*g(be,q,we);case"Literal":return yield*m(be,q,we);case"Never":return yield*h(be,q,we);case"Not":return yield*f(be,q,we);case"Null":return yield*E(be,q,we);case"Number":return yield*b(be,q,we);case"Object":return yield*y(be,q,we);case"Promise":return yield*_(be,q,we);case"Record":return yield*v(be,q,we);case"Ref":return yield*R(be,q,we);case"RegExp":return yield*x(be,q,we);case"String":return yield*w(be,q,we);case"Symbol":return yield*F(be,q,we);case"TemplateLiteral":return yield*T(be,q,we);case"This":return yield*D(be,q,we);case"Tuple":return yield*Q(be,q,we);case"Undefined":return yield*k(be,q,we);case"Union":return yield*W(be,q,we);case"Uint8Array":return yield*Y(be,q,we);case"Unknown":return yield*j(be,q,we);case"Void":return yield*X(be,q,we);default:if(!PE.Has(be[Fr]))throw new MAn(le);return yield*H(be,q,we)}}let z={language:"javascript",functions:new Map,variables:new Map,instances:new Map};function te(le,Ne,we,Z=!0){return`(${[...V(le,Ne,we,Z)].join(" && ")})`}function oe(le){return`check_${VAn.Encode(le)}`}function $(le){let Ne=`local_${z.variables.size}`;return z.variables.set(Ne,`const ${Ne} = ${le}`),Ne}function de(le,Ne,we,Z,q=!0){let[be,ve]=[`
|
|
627
627
|
`,It=>"".padStart(It," ")],Le=ae("value","any"),ie=se("boolean"),Ye=[...V(Ne,we,Z,q)].map(It=>`${ve(4)}${It}`).join(` &&${be}`);return`function ${le}(${Le})${ie} {${be}${ve(2)}return (${be}${Ye}${be}${ve(2)})
|
|
628
628
|
}`}function ae(le,Ne){let we=z.language==="typescript"?`: ${Ne}`:"";return`${le}${we}`}function se(le){return z.language==="typescript"?`: ${le}`:""}function ee(le,Ne,we){let Z=de("check",le,Ne,"value"),q=ae("value","any"),be=se("boolean"),ve=[...z.functions.values()],Le=[...z.variables.values()],ie=Eu(le.$id)?`return function check(${q})${be} {
|
|
629
629
|
return ${oe(le.$id)}(value)
|
|
@@ -6724,7 +6724,7 @@ continue in current cwd
|
|
|
6724
6724
|
${t.fallbackCwd}`}function Wne(t,e){let n=MNn(t,e);if(n)throw new Gz(n)}var Gz,yUe=I(()=>{"use strict";Gz=class extends Error{constructor(e){super(c4l(e)),this.name="MissingSessionCwdError",this.issue=e}}});function huo(t){let{reporter:e,sessionId:n,getRequestId:r}=t;return i=>{if(i.type==="tool_execution_start"){e.toolStarted(n,{toolCallId:i.toolCallId,toolName:i.toolName,args:i.args});return}i.type==="tool_execution_end"&&e.toolEnded(n,{toolCallId:i.toolCallId,toolName:i.toolName,result:i.result,isError:i.isError,requestId:r()})}}var fuo=I(()=>{"use strict"});function Euo(t){return{total_history_char_count:0,total_history_exchange_count:0,head_char_count:0,head_exchange_count:0,head_last_request_id:"",tail_char_count:0,tail_exchange_count:0,tail_last_request_id:"",summary_char_count:t.summaryCharCount,summarization_duration_ms:t.durationMs??0,is_cache_about_to_expire:!1,is_aborted:t.aborted??!1,total_history_token_count:t.tokensBefore,head_token_count:t.tokensBefore,tail_token_count:t.tokensAfter??0,tokens_from_backend:!1}}function buo(t,e){if(t.truncated)return{original_char_count:t.totalBytes,original_line_count:t.totalLines,truncated_char_count:t.outputBytes,truncated_line_count:t.outputLines,tool_type:e}}function Cuo(t){let{source:e,scope:n}=t.sourceInfo;return n==="user"||n==="project"?n:e}function yuo(t){let e=t.filter(n=>!n.disableModelInvocation);if(e.length!==0)return{skills:e.map(n=>({skill_name:n.name,skill_source:Cuo(n)})),skill_count:e.length}}function Iuo(t,e,n){return{skill_name:t.name,skill_source:Cuo(t),content_length:e,source_tool:n}}function Suo(t,e){return{retrieval_mode:e?.retrievalMode??"codebase_only",total_elapsed_ms:vE(t.totalElapsedMs),codebase_retrieval_elapsed_ms:vE(t.codebaseRetrievalElapsedMs),conversation_retrieval_elapsed_ms:vE(t.conversationRetrievalElapsedMs),conversation_initial_retrieval_ms:vE(t.conversationInitialRetrievalMs),conversation_query_rewriting_ms:vE(t.conversationQueryRewritingMs),conversation_followup_retrieval_ms:vE(t.conversationFollowupRetrievalMs),blob_name_lookup_ms:vE(t.blobNameLookupMs),codebase_chunks_retrieved:vE(t.codebaseChunksRetrieved),conversation_chunks_initial:vE(t.conversationChunksInitial),conversation_queries_generated:vE(t.conversationQueriesGenerated),conversation_chunks_followup:vE(t.conversationChunksFollowup),conversation_chunks_combined:vE(t.conversationChunksCombined),codebase_result_len_pre_truncation:vE(t.codebaseResultLenPreTruncation),codebase_result_len:vE(t.codebaseResultLen),conversation_result_len_pre_truncation:vE(t.conversationResultLenPreTruncation),conversation_result_len:vE(t.conversationResultLen),combined_result_len:vE(t.combinedResultLen),total_budget:vE(t.totalBudget),codebase_budget:vE(t.codebaseBudget),conversation_budget:vE(t.conversationBudget),codebase_truncated:WCt(t.codebaseTruncated),conversation_truncated:WCt(t.conversationTruncated),final_truncated:WCt(t.finalTruncated),is_sub_agent:WCt(e?.isSubAgent)}}var vE,WCt,_uo=I(()=>{"use strict";vE=t=>t??0,WCt=t=>t??!1});import{randomUUID as u4l}from"node:crypto";function A4l(t){if(typeof t!="object"||t===null)return;let e=t.details;if(!(typeof e!="object"||e===null))return e}function g4l(t,e){if(t===e)return!0;if(!([...e].some(i=>Ruo.has(i))&&t.endsWith(e)))return!1;let r=t.at(-e.length-1);return r!==void 0&&Ruo.has(r)}function m4l(t,e){return e.find(n=>g4l(n.filePath,t))}function vuo(t){let e=new GNn(t);return n=>e.handle(n)}function h4l(t){if(typeof t!="object"||t===null)return 0;let e=t.content;if(!Array.isArray(e))return 0;let n=0;for(let r of e)typeof r=="object"&&r!==null&&r.type==="text"&&typeof r.text=="string"&&(n+=r.text.length);return n}function Buo(t){let e=yuo(t.skills);e&&t.reporter.skillsIncludedInChat(t.sessionId,e)}var d4l,p4l,Ruo,GNn,wuo=I(()=>{"use strict";_uo();d4l={"codebase-retrieval":"codebase_only","session-retrieval":"conversation_only"},p4l={read:"read","web-fetch":"web-fetch",bash:"bash"};Ruo=new Set(["/","\\"]);GNn=class{constructor(e){this.readPathsByCallId=new Map,this.options=e}handle(e){if(e.type==="compaction_start"){this.pendingCompactionChatHistoryLength=this.options.getChatHistoryLength?.();return}if(e.type==="compaction_end"){this.emitCompaction(e);return}if(e.type==="tool_execution_start"){this.rememberReadPath(e);return}if(e.type!=="tool_execution_end")return;let n=this.readPathsByCallId.get(e.toolCallId);if(this.readPathsByCallId.delete(e.toolCallId),e.isError)return;let r=A4l(e.result);this.emitTruncation(e.toolName,r),this.emitRetrieval(e.toolName,r),this.emitSkillContent(e.toolName,n,e.result)}emitCompaction(e){let n=this.pendingCompactionChatHistoryLength??0;this.pendingCompactionChatHistoryLength=void 0,!(e.aborted||!e.result)&&this.options.reporter.chatHistorySummarization(this.options.sessionId,u4l(),n,Euo({summaryCharCount:e.result.summary.length,tokensBefore:e.result.tokensBefore,tokensAfter:e.tokensAfter,durationMs:e.durationMs,aborted:!1}))}rememberReadPath(e){if(e.toolName!=="read")return;let n=e.args?.path;typeof n=="string"&&this.readPathsByCallId.set(e.toolCallId,n)}emitTruncation(e,n){let r=p4l[e];if(!(r&&n?.truncation))return;let i=buo(n.truncation,r);i&&this.options.reporter.contentTruncation(this.options.sessionId,i)}emitRetrieval(e,n){let r=d4l[e];r&&n?.analytics&&this.options.reporter.retrievalToolUsed(this.options.sessionId,Suo(n.analytics,{retrievalMode:r}))}emitSkillContent(e,n,r){if(e!=="read"||!n)return;let i=m4l(n,this.options.getSkills());i&&this.options.reporter.skillContentLoaded(this.options.sessionId,Iuo(i,h4l(r),"read"))}}});function xuo(t){return t==="8"?{kind:"mode-disabled",message:f4l}:{kind:"generic"}}var f4l,UNn=I(()=>{"use strict";f4l="CLI mode access has been disabled for your account. If you believe this to be an error, please contact your administrator."});import{createHash as E4l}from"node:crypto";function IUe(t){t instanceof Error&&Guo.add(t)}function Zne(t){return t instanceof Error&&Guo.has(t)}function Q4l(t){return E4l("sha256").update(Buffer.from(t,"utf8").subarray(0,S4l)).digest("hex")}function Uuo(t){return T4l.has(t)?t:Vuo}function Nuo(t){if(t!==void 0)return N4l.has(t)?t:Vuo}function kuo(t){if(t!==void 0)return Number.isInteger(t)&&t>=-1&&t<=255?t:-1}function D4l(t){if(t!==void 0)return t<5?"under_5":t<10?"5_to_9":"10_or_more"}function Ouo(t){let e=t.replaceAll("\\","/").replace(/^file:\/\//u,"");return w4l.test(e)?"auggie-v2.mjs":x4l.test(e)||e==="<anonymous>"||e==="native"?e:"[redacted]"}function F4l(t,e){if(!t.stack)return;let n=t.stack.slice(0,_4l),r=[];for(let i of n.split(`
|
|
6725
6725
|
`,Fuo+1).slice(1)){let o=B4l.exec(i);if(!o)continue;let s=o[1]&&v4l.test(o[1])?o[1]:void 0,l=`${Ouo(o[2])}:${o[3]}:${o[4]}`;r.push(` at ${s?`${s} (${l})`:l}`)}if(r.length!==0)return`${e}
|
|
6726
6726
|
${r.join(`
|
|
6727
|
-
`)}`.slice(0,R4l)}function V4l(t){let e;t.category!=="daemon.connection.incident"&&t.error instanceof Error&&(e=t.error);let n=e?F4l(e,t.category):void 0,r=n,i=n===void 0,o=new Error(t.category);return o.name=t.category,o.stack=n,Zne(e)&&IUe(o),{error:o,limiterIdentity:r,synthetic:i}}function Quo(t){switch(t.category){case"daemon.startup.failure":return t.stage;case"daemon.connection.incident":return t.incident;case"daemon.command.failure":return Uuo(t.commandType);case"daemon.child.start_failure":return t.stage;case"daemon.child.runtime_failure":return t.failure;case"daemon.ownership.compromised":return"lease"}}function M4l(t,e){let n=t?.values?.[0]?.stacktrace?.frames?.slice(-Fuo).map(r=>{let i=r.debug_id;return{colno:r.colno,...i===void 0?{}:{debug_id:i},filename:r.filename?Ouo(r.filename):void 0,function:r.function,in_app:r.in_app,lineno:r.lineno}});if(n)return{values:[{stacktrace:{frames:n},type:e,value:e}]}}function G4l(t){switch(t.category){case"daemon.startup.failure":return{stage:t.stage};case"daemon.connection.incident":{let e=D4l(t.reconnectAttempt);return{incident:t.incident,...e===void 0?{}:{reconnect_attempt:e}}}case"daemon.command.failure":return{command_type:Uuo(t.commandType)};case"daemon.child.start_failure":return U4l(t);case"daemon.child.runtime_failure":return O4l(t);case"daemon.ownership.compromised":return{state:"compromised"}}}function U4l(t){return{child_id:t.childId,stage:t.stage,use_worktree:t.useWorktree}}function O4l(t){return{child_id:t.childId,failure:t.failure,...kuo(t.exitCode)===void 0?{}:{exit_code:kuo(t.exitCode)},...t.exitReason===void 0?{}:{exit_reason:t.exitReason},...Nuo(t.signal)===void 0?{}:{signal:Nuo(t.signal)}}}function L4l(t){return t==="daemon.child.start_failure"||t==="daemon.child.runtime_failure"}function P4l(t){if(t.category==="daemon.child.start_failure"||t.category==="daemon.child.runtime_failure")return t.childId}function Duo(t,e){switch(t){case"daemon.startup":{let n=e;return n.vmId?{"daemon.vm_id":n.vmId}:{}}case"daemon.ws.connect":return{"daemon.connection":"initial"};case"daemon.child.start":{let n=e;return{"daemon.child.id":n.childId,...n.stage===void 0?{}:{"daemon.child.stage":n.stage},"daemon.child.use_worktree":n.useWorktree,conversation_id:n.childId,session_id:n.childId}}}}function W4l(t,e,n){let r={"daemon.issue":e};for(let i of["app_mode","cli_version","tenant","daemon.vm_id"]){let o=t.tags?.[i];o!==void 0&&(r[i]=String(o))}if(L4l(e))for(let i of Muo){let o=t.tags?.[i];o!==void 0&&(r[i]=String(o))}return{breadcrumbs:[],contexts:t.contexts?.daemon?{daemon:t.contexts.daemon}:void 0,environment:t.environment,event_id:t.event_id,exception:M4l(t.exception,e),fingerprint:n?["daemon",e,n]:void 0,level:"error",platform:t.platform,release:t.release,tags:r,timestamp:t.timestamp}}function Z4l(t,e){let n=!1;return{setContext(r){n||e(r)},end(r){n||(n=!0,t.setStatus({code:r==="ok"?1:2}),t.end())}}}function Luo(t){if(!t)return Qw;let e;return WJ("daemon",{scope:"process"}),{setContext(n){e=n.vmId,Gh("daemon.vm_id",n.vmId),WJ("daemon",{scope:"process",vm_id:n.vmId})},startSpan(n,r){let i=Duo(n,r),o=ts({name:n,op:n,attributes:i});return Z4l(o,s=>{for(let[a,l]of Object.entries(Duo(n,{...r,...s})))o.setAttribute(a,l)})},reportError(n){let r=n.error;if(Zne(r)){IUe(r);return}let i=V4l(n),o=`${n.category}:${Q4l(i.limiterIdentity??Quo(n))}`;if(n.category!=="daemon.connection.incident"&&!k4l.shouldCapture(n.category,o)){IUe(r);return}IUe(r),IUe(i.error),Qa(s=>{s.clearBreadcrumbs(),s.setTag("daemon.issue",n.category);let a=P4l(n);if(a)for(let c of Muo)s.setTag(c,a);s.setContext("daemon",{...G4l(n),...e?{vm_id:e}:{}});let l=i.synthetic?Quo(n):void 0;s.addEventProcessor(c=>W4l(c,n.category,l)),fo(i.error)})}}}function Puo(t){return t?(Tuo??=Promise.resolve().then(()=>ZJ(b4l)).then(()=>{},()=>{}),Tuo):Promise.resolve()}var b4l,C4l,y4l,I4l,S4l,_4l,R4l,Fuo,v4l,B4l,w4l,x4l,Vuo,Muo,T4l,N4l,Guo,Tuo,ONn,k4l,LNn=I(()=>{"use strict";_D();iI();b4l=2e3,C4l=1800*1e3,y4l=512,I4l=128,S4l=64*1024,_4l=64*1024,R4l=16*1024,Fuo=64,v4l=/^[\w.$<>[\] -]{1,160}$/u,B4l=/^\s*at\s+(?:(.*?)\s+\()?(.+?):(\d+):(\d+)\)?$/u,w4l=/(?:^|\/)(?:auggie-v2\.mjs|cli\.js)$/u,x4l=/^node:[a-z0-9_./-]+$/u,Vuo="unknown",Muo=["daemon.child.id","session_id","conversation_id"],T4l=new Set(["CONNECTED","EXECUTE_DAEMON_DIFF_OP","EXECUTE_DAEMON_FS_OP","KEEPALIVE","OPEN_PTY_SESSION","QUIT_DAEMON","START_AGENT","STOP_AGENT"]),N4l=new Set(["SIGABRT","SIGBUS","SIGFPE","SIGILL","SIGKILL","SIGSEGV","SIGTERM"]),Guo=new WeakSet,ONn=class{constructor(){this.entries=new Map}get size(){return this.entries.size}clear(){this.entries.clear()}count(e){let n=0;for(let r of this.entries.values())r.category===e&&n++;return n}shouldCapture(e,n,r=Date.now()){return this.pruneExpired(r),this.entries.get(n)?(this.entries.delete(n),this.entries.set(n,{category:e,seenAt:r}),!1):(this.evictOldestInCategory(e),this.evictOldestGlobal(),this.entries.set(n,{category:e,seenAt:r}),!0)}pruneExpired(e){for(let[n,r]of this.entries)e-r.seenAt>=C4l&&this.entries.delete(n)}evictOldestInCategory(e){let n=0,r;for(let[i,o]of this.entries)o.category===e&&(n++,r??=i);n>=I4l&&r&&this.entries.delete(r)}evictOldestGlobal(){if(this.entries.size<y4l)return;let e=this.entries.keys().next().value;typeof e=="string"&&this.entries.delete(e)}},k4l=new ONn});import Yuo from"node:v8";function Dbe(t){if(kbe){AI.debug("initSentryForCloudService: skipped (already initialized)");return}try{let e=rzl();if(!e){AI.info("initSentryForCloudService: skipped (AUGGIE_V2_SENTRY_DSN is empty, Sentry disabled)"),kbe=!0;return}let n=izl(),r=azl(t.tenantUrl),i=lzl(t.tenantUrl);qFe({dsn:e,release:t.cliVersion,environment:r,sendDefaultPii:!1,sampleRate:1,tracesSampleRate:n,integrations:o=>o.filter(s=>s.name!=="Modules"&&s.name!=="Http"&&s.name!=="Undici")}),Gh("app_mode",t.appMode??"cloud-service"),Gh("cli_version",t.cliVersion),i&&(Gh("tenant",i),FNn({agentId:"",vmId:"",tenant:i})),t.cloudId&&Huo(t.cloudId,""),XCt=!0,kbe=!0,AI.info(`Sentry initialized: app_mode=${t.appMode??"cloud-service"}, env=${r}, release=${t.cliVersion}, tenant=${i??"<unknown>"}, tracesSampleRate=${n}`)}catch(e){AI.warn(`initSentryForCloudService: failed: ${e}`),kbe=!0}}function Juo(){return XCt}function zuo(t){if(kbe&&(t.id||t.email))try{Qhe({id:t.id,email:t.email})}catch(e){AI.warn(`setSentryUserContext: failed: ${e}`)}}function Huo(t,e){Gh("cloud.id",t),Gh("session_id",t),Gh("conversation_id",t),e&&Gh("vm_id",e),Dhe(t),FNn({agentId:t,vmId:e})}function Kuo(t){if(kbe)try{Huo(t.agentId,t.vmId)}catch(e){AI.warn(`setSentryCloudSessionContext: failed: ${e}`)}}function Fbe(){if(Wuo){AI.debug("installCloudServiceProcessHandlers: skipped (already installed)");return}Wuo=!0,process.on("uncaughtException",Y4l),process.on("unhandledRejection",J4l),ezl(),AI.info(`Sentry process handlers installed (flush timeout ${YCt}ms)`)}function K4l(t,e,n){return e<=0?!1:t/e>=n}function juo(t){return Number.isFinite(t)&&t>=H4l}function j4l(){let t=process.env.AUGGIE_V2_SENTRY_HEAP_OOM_CONSECUTIVE;if(!t)return WNn;let e=Number.parseInt(t,10);return!Number.isFinite(e)||e<1?WNn:e}function $4l(){let t=process.env.AUGGIE_V2_SENTRY_HEAP_OOM_THRESHOLD;if(!t)return PNn;let e=Number.parseFloat(t);return!Number.isFinite(e)||e<=0?PNn:e>1?1:e}function q4l(){let t=process.env.AUGGIE_V2_SENTRY_HEAP_OOM_INTERVAL_MS;if(t===void 0)return Zuo;let e=Number.parseInt(t,10);return Number.isFinite(e)?e<=0?0:e:Zuo}function ezl(){if(Qbe)return;let t=q4l();if(t<=0){AI.info("Heap-OOM watchdog disabled (AUGGIE_V2_SENTRY_HEAP_OOM_INTERVAL_MS <= 0)");return}let e=Yuo.getHeapStatistics().heap_size_limit;if(!juo(e)){AI.info(`Heap-OOM watchdog disabled (v8 heap_size_limit not meaningful: ${e} bytes)`);return}let n=$4l(),r=j4l();Qbe=setInterval(()=>{try{tzl(n,r)}catch(i){AI.warn(`heap-OOM watchdog tick failed: ${i}`)}},t),Qbe.unref?.(),AI.info(`Heap-OOM watchdog started (threshold=${n}, consecutive=${r}, interval=${t}ms)`)}function tzl(t,e){if(Xuo)return;let n=process.memoryUsage().heapUsed,r=Yuo.getHeapStatistics().heap_size_limit;if(!juo(r)||!K4l(n,r,t)){ZCt=0;return}if(ZCt+=1,ZCt<e){AI.warn(`Heap-OOM watchdog: usage above threshold (${ZCt}/${e} consecutive ticks)`);return}Xuo=!0,nzl(n,r,t)}function nzl(t,e,n){let r=Math.round(t/1024/1024),i=Math.round(e/1024/1024),o=Math.round(t/e*100);AI.error(`Heap-OOM watchdog tripped: heapUsed=${r}MiB / limit=${i}MiB (${o}%), threshold=${Math.round(n*100)}%. Reporting to Sentry and exiting.`),Qbe&&(clearInterval(Qbe),Qbe=void 0);try{Qa(s=>{s.setTag("crash.kind","heap_oom"),s.setFingerprint(["heap-oom"]),s.setContext("heap",{heap_used_mb:r,heap_size_limit_mb:i,used_fraction:t/e,threshold:n}),fo(new Error(`JavaScript heap approaching limit: ${r}MiB / ${i}MiB (${o}%)`))})}catch(s){AI.warn(`heap-OOM captureException failed: ${s}`)}cG(YCt).finally(()=>{process.exit(z4l)})}function rzl(){let t=process.env.AUGGIE_V2_SENTRY_DSN;return t===void 0?X4l:t}function izl(){let t=process.env.AUGGIE_V2_SENTRY_TRACES_SAMPLE_RATE;if(!t)return 1;let e=Number.parseFloat(t);return Number.isFinite(e)?e<0?0:e>1?1:e:1}function azl(t){let e=$uo(t);if(!e)return"unknown";let n;try{n=new URL(e).hostname}catch{return"unknown"}if(n.startsWith("localhost")||n.startsWith("127."))return"local";let r=n.split(".")[0]??"";return r.startsWith("test-")||r==="test"?"test":r.includes("staging")?"staging":n.endsWith(szl)||r.startsWith("dev-")||r==="dev"?"dev":n==="api.augmentcode.com"||n.endsWith(ozl)?"production":"unknown"}function lzl(t){let e=$uo(t);if(!e)return;let n;try{n=new URL(e).hostname}catch{return}let r=n.split(".");if(!(r.length<2))return r[0]}function $uo(t){return t||czl()}function czl(){let t=process.env.AUGMENT_SESSION_AUTH;if(t)try{let e=JSON.parse(t);if(typeof e.tenantURL=="string"&&e.tenantURL.length>0)return e.tenantURL}catch{}}var AI,X4l,kbe,XCt,YCt,Wuo,Y4l,J4l,PNn,Zuo,z4l,WNn,H4l,Xuo,Qbe,ZCt,ozl,szl,Vbe=I(()=>{"use strict";Lr();iI();LCt();LNn();AI=mn.child({prefix:"sentry-init"}),X4l="https://cf0b4ce9e43e297fcf7328555628364a@o4509262619082752.ingest.us.sentry.io/4510925971914752",kbe=!1,XCt=!1;YCt=2e3,Wuo=!1,Y4l=t=>{AI.error(`uncaughtException: ${t}`);try{Zne(t)||fo(t)}catch{}(XCt?cG(YCt):Promise.resolve(!0)).finally(()=>{process.exit(1)})},J4l=t=>{AI.error(`unhandledRejection: ${t}`);try{let n=t instanceof Error?t:new Error(String(t));Zne(n)||fo(n)}catch{}(XCt?cG(YCt):Promise.resolve(!0)).finally(()=>{process.exit(1)})};PNn=.9,Zuo=2e3,z4l=12,WNn=3,H4l=64*1024*1024,Xuo=!1,ZCt=0;ozl=".api.augmentcode.com",szl=".us-central.api.augmentcode.com"});function ZNn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function JCt(t,...e){for(let n of e){let r=t[n];if(ZNn(r))return r}}function Xne(t,...e){for(let n of e){let r=t[n];if(typeof r=="string")return r}}function pzl(t){if(typeof t=="string")return t.trim().length>0?{kind:"text",text:t}:null;if(!ZNn(t))return null;let e=ZNn(t.block)?t.block:t,n=JCt(e,"text","Text");if(n){let s=Xne(n,"text");if(s!==void 0&&s.trim().length>0)return{kind:"text",text:s}}let r=JCt(e,"tool_use","toolUse","ToolUse");if(r){let s=Xne(r,"id"),a=Xne(r,"name");if(!s||!a)return null;let l=Xne(r,"input");return{kind:"tool_use",toolUseId:s,toolName:a,inputJson:l&&l.trim().length>0?l:"{}"}}let i=JCt(e,"tool_result","toolResult","ToolResult");if(i){let s=Xne(i,"tool_use_id","toolUseId");if(!s)return null;let a=i.is_error??i.isError;return{kind:"tool_result",toolUseId:s,content:Xne(i,"content")??"",isError:typeof a=="boolean"?a:!1}}let o=JCt(e,"thinking","Thinking");if(o){let s=Xne(o,"content");if(s!==void 0)return{kind:"thinking",content:s}}return null}function quo(t){if(!Array.isArray(t.content))return[];let e=[];for(let n of t.content){let r=pzl(n);r!==null&&e.push(r)}return e}function Azl(t){let e=[],n=[];for(let r of t)if(r.kind==="text"){if(r.text.trim().length===0)continue;n.push(r.text),e.push({type:pbt,text_node:{content:r.text}})}else r.kind==="tool_result"&&e.push({type:y1n,tool_result_node:{content:r.content,is_error:r.isError}});return{requestNodes:e,requestText:n.join("")}}function gzl(t){let e=[],n=[],r=[],i=()=>{if(r.length===0)return;let o=r.join("");r.length=0,o.trim().length!==0&&e.push({type:Abt,content:o})};for(let o of t)if(o.kind==="text"){if(o.text.trim().length===0)continue;n.push(o.text),r.push(o.text)}else o.kind==="tool_use"?(i(),e.push({type:I1n,content:"",tool_use:{tool_name:o.toolName,input_json:o.inputJson}})):o.kind==="thinking"&&(i(),e.push({type:S1n,content:o.content,thinking:{content:o.content}}));return i(),{responseNodes:e,responseText:n.join("")}}function mzl(t){let e=[];for(let n of t)if(n.role==="user")e.push({user:n,assistants:[]});else if(n.role==="assistant"){let r=e.at(-1);r?r.assistants.push(n):e.push({assistants:[n]})}return e.map(({user:n,assistants:r})=>{let{requestNodes:i,requestText:o}=Azl(n?quo(n):[]),{responseNodes:s,responseText:a}=gzl(r.flatMap(quo));return{request_message:o,response_text:a,request_id:n?.id??r[0]?.id??"",request_nodes:i,response_nodes:s}})}async function hzl(t){let e=await t.fetchImpl(`${t.baseUrl}cloud-agents/agents/get-messages`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t.apiKey}`,...t.userAgent?{"User-Agent":t.userAgent}:{}},body:JSON.stringify({agent_id:t.agentId,limit:uzl,...t.beforeTimestamp?{before_timestamp:t.beforeTimestamp}:{}})});if(!e.ok)throw new Error(`Fetching cloud-agent chat history failed: ${e.status} ${e.statusText}`);return await e.json()}async function fzl(t){let e=new Set,n=[],r;for(let s=0;s<dzl;s++){let a=await hzl({...t,beforeTimestamp:r}),l=Array.isArray(a.messages)?a.messages:[];n.push(l);let c=Ezl(l,e),u=a.oldest_timestamp;if(a.has_next!==!0||l.length===0||!u||c===0)break;r=u}let i=new Set,o=[];for(let s=n.length-1;s>=0;s--)for(let a of n[s]){let l=a.id;if(l!==void 0){if(i.has(l))continue;i.add(l)}o.push(a)}return o}function Ezl(t,e){let n=0;for(let r of t)(r.id===void 0||!e.has(r.id))&&n++,r.id!==void 0&&e.add(r.id);return n}function XNn(t){let e=t.fetchImpl??globalThis.fetch.bind(globalThis);return async n=>{let r=await t.readCredentials();if(!r)throw new Error("view-session requires an Augment login. Please sign in and try again.");let i=r.apiUrl.endsWith("/")?r.apiUrl:`${r.apiUrl}/`,o=await fzl({fetchImpl:e,baseUrl:i,apiKey:r.apiKey,userAgent:t.userAgent,agentId:n});return mzl(o)}}var uzl,dzl,edo=I(()=>{"use strict";hbt();uzl=400,dzl=200});import{join as Czl}from"node:path";function yzl(t){return t.map(e=>{if(e.type!=="message")return{type:e.type,id:e.id,parentId:e.parentId};let n=e.message,r=typeof n.content=="string"?n.content:n.content.map(i=>({type:i.type,text:"text"in i?i.text:void 0}));return{type:e.type,id:e.id,parentId:e.parentId,message:{role:n.role,content:r,timestamp:n.timestamp}}})}function Izl(t){if(t instanceof Error){let e=t;return typeof e.status=="number"?String(e.status):typeof e.httpStatus=="number"?String(e.httpStatus):t.message}return String(t)}function Szl(t,e){let n=Izl(t);if(n!=="8"){let r=t instanceof Error?t.message:String(t);e.push({type:"error",message:`Failed to fetch feature flags: ${r}`})}return{flags:Pp(void 0),errorStatus:n}}function _zl(t,e,n){if(t.allowClientFeatureFlagOverrides!==!0)return t;let r=e.getFeatureFlagOverrides();if(!r)return t;try{let i=$6i(r);return q6i(t,i)}catch(i){let o=i instanceof Error?i.message:String(i);return n.push({type:"warning",message:`Failed to parse feature flag overrides, ignoring them: ${o}`}),t}}function Rzl(t){return t.cosmosMultiRepoContextEnabled===!0}function vzl(t){return t.cosmosNestedAgentsMdEnabled===!0}function Bzl(t,e){let{allowDirs:n,denyDirs:r}=t.getIndexingDirsUnion(),i=e?.get("parent-daemon-id"),o=typeof i=="string"&&i.length>0,s=e?.get("cloud-agent"),a=typeof s=="string"&&s.length>0;return{allowDirs:n,denyDirs:r,daemonChild:o&&a,allowIndexingFlag:e?.get("allow-indexing")===!0}}function wzl(t,e){if(!e)return[];let n=[],r=t.getExtensions(),i=new Map;for(let s of r.extensions)for(let[a,l]of s.flags)i.set(a,{type:l.type});let o=[];for(let[s,a]of e){let l=i.get(s);if(!l){o.push(s);continue}if(l.type==="boolean"){r.runtime.flagValues.set(s,!0);continue}if(typeof a=="string"){r.runtime.flagValues.set(s,a);continue}n.push({type:"error",message:`Extension flag "--${s}" requires a value`})}return o.length>0&&n.push({type:"error",message:`Unknown option${o.length===1?"":"s"}: ${o.map(s=>`--${s}`).join(", ")}`}),n}async function SUe(t){let e=t.cwd,n=t.agentDir??ks(),r=t.authStorage??sU.create(Czl(n,"auth.json")),i=t.settingsManager??ol.create(e,n),o=t.modelRegistry??xz.empty(r),s=t.augmentUserAgent??mN();await o.discoverAugmentModels(s);let a=await Of(),l=J4();eqi(l);let c=[],u,d={flags:Pp(void 0)},p,A;if(a){u=await Sg(a.apiKey,a.apiUrl,s);try{let h=await u.getModelConfig();p=h.user?.id,A=h.user?.email,zuo({id:p,email:A});let f=Pp(h.featureFlagsV2);d={flags:_zl(f,i,c)}}catch(h){d=Szl(h,c)}}let g=new cz({...t.resourceLoaderOptions??{},cwd:e,agentDir:n,settingsManager:i,eventBus:l,multiRepoContextEnabled:Rzl(d.flags),nestedContextDescentEnabled:vzl(d.flags)});await g.reload(),a&&u&&(l.emit("augment:api",u),l.emit("augment:credentials",{apiKey:a.apiKey,apiUrl:a.apiUrl,userAgent:s,userId:p,email:A,cliVersion:QA}));let m=g.getExtensions();for(let{name:h,config:f,extensionPath:E}of m.runtime.pendingProviderRegistrations)try{o.registerProvider(h,f)}catch(b){let y=b instanceof Error?b.message:String(b);c.push({type:"error",message:`Extension "${E}" error: ${y}`})}return m.runtime.pendingProviderRegistrations=[],c.push(...wzl(g,t.extensionFlagValues)),l.emit("augment:indexing-policy",Bzl(i,t.extensionFlagValues)),l.emit("augment:feature-flags",d),l.emit("augment:feature-flags-startup-complete",void 0),{cwd:e,agentDir:n,mcpConfigOverride:t.mcpConfigOverride,permissionOverride:t.permissionOverride,authStorage:r,settingsManager:i,modelRegistry:o,resourceLoader:g,diagnostics:c,augmentUserAgent:s,augmentApi:u,featureFlags:d}}function _Ue(t){let e=t.services.augmentApi,n=e?{viewSession:{operations:{fetchChatHistory:_1n({readCredentials:Of,userAgent:t.services.augmentUserAgent}),fetchCloudAgentChatHistory:XNn({readCredentials:Of,userAgent:t.services.augmentUserAgent})}},sessionRetrieval:{operations:{createRequestId:e.createRequestId.bind(e),agentCodebaseRetrieval:e.agentCodebaseRetrieval.bind(e),fetchCloudAgentChatHistory:XNn({readCredentials:Of,userAgent:t.services.augmentUserAgent}),fetchChatHistory:_1n({readCredentials:Of,userAgent:t.services.augmentUserAgent}),getBranch:()=>yzl(t.sessionManager.getBranch())}}}:void 0;return zCt({cwd:t.services.cwd,agentDir:t.services.agentDir,authStorage:t.services.authStorage,settingsManager:t.services.settingsManager,modelRegistry:t.services.modelRegistry,augmentUserAgent:t.services.augmentUserAgent,resourceLoader:t.services.resourceLoader,sessionManager:t.sessionManager,model:t.model,thinkingLevel:t.thinkingLevel,scopedModels:t.scopedModels,tools:t.tools,customTools:t.customTools,sessionStartEvent:t.sessionStartEvent,toolsOptions:n,featureFlags:t.services.featureFlags.flags,mcpConfigOverride:t.services.mcpConfigOverride,permissionOverride:t.services.permissionOverride})}var YNn=I(()=>{"use strict";Zl();ub();UNn();Lu();Vbe();vW();$Ge();sMe();hEe();wMe();kw();VMe();JNn();edo();R1n()});import{copyFileSync as xzl,existsSync as tdo,mkdirSync as Tzl}from"node:fs";import{basename as Nzl,join as kzl,resolve as ndo}from"node:path";function Qzl(t){return typeof t=="string"?t:t.filter(e=>e.type==="text"&&typeof e.text=="string").map(e=>e.text).join("")}async function HCt(t,e){Wne(e.sessionManager,e.cwd);let n=await t(e);return process.cwd()!==n.services.cwd&&process.chdir(n.services.cwd),new RUe(n.session,n.services,t,n.diagnostics,n.modelFallbackMessage,e.usageReporter,e.toolUseReporter,e.enableSentrySummarizationSpans)}var RUe,zNn=I(()=>{"use strict";LCt();wht();eN();yUe();bw();fuo();wuo();YNn();RUe=class{constructor(e,n,r,i=[],o,s,a,l=!1){this._session=e,this._services=n,this.createRuntime=r,this._diagnostics=i,this._modelFallbackMessage=o,this._usageReporter=s,this._toolUseReporter=a,this.enableSentrySummarizationSpans=l,this.attachUsageReporter(),this.attachSummarizationTracer()}attachUsageReporter(){let e=this._usageReporter,n=this._toolUseReporter;if(!(e||n))return;let r=this._session,i=r.sessionId,o=e?vuo({reporter:e,sessionId:i,getSkills:()=>this._services.resourceLoader.getSkills().skills,getChatHistoryLength:()=>r.sessionManager.getBranch().length}):void 0;e&&(e.sessionStarted(i),Buo({reporter:e,sessionId:i,skills:this._services.resourceLoader.getSkills().skills}));let s=n?huo({reporter:n,sessionId:i,getRequestId:()=>r.currentRequestId}):void 0;this._usageUnsubscribe=r.subscribe(a=>{e&&a.type==="message_start"&&qT(a.message.role)&&e.userMessageSent(i),o?.(a),s?.(a)})}attachSummarizationTracer(){if(!this.enableSentrySummarizationSpans)return;let e=muo();this._summarizationSubscriber=e,this._summarizationUnsubscribe=this._session.subscribe(e.handle)}detachSummarizationTracer(){this._summarizationUnsubscribe?.(),this._summarizationUnsubscribe=void 0,this._summarizationSubscriber?.dispose(),this._summarizationSubscriber=void 0}detachUsageReporter(){let e=this._usageReporter,n=this._toolUseReporter;(e||n)&&(this._usageUnsubscribe?.(),this._usageUnsubscribe=void 0,e?.sessionEnded(this._session.sessionId))}get services(){return this._services}get session(){return this._session}get cwd(){return this._services.cwd}get diagnostics(){return this._diagnostics}get modelFallbackMessage(){return this._modelFallbackMessage}async emitBeforeSwitch(e,n){let r=this.session.extensionRunner;return r?.hasHandlers("session_before_switch")?{cancelled:(await r.emit({type:"session_before_switch",reason:e,targetSessionFile:n}))?.cancel===!0}:{cancelled:!1}}async emitBeforeFork(e){let n=this.session.extensionRunner;return n?.hasHandlers("session_before_fork")?{cancelled:(await n.emit({type:"session_before_fork",entryId:e}))?.cancel===!0}:{cancelled:!1}}async teardownCurrent(){this.detachUsageReporter(),this.detachSummarizationTracer(),await cMe(this.session.extensionRunner),this.session.dispose()}apply(e){process.cwd()!==e.services.cwd&&process.chdir(e.services.cwd),this._session=e.session,this._services=e.services,this._diagnostics=e.diagnostics,this._modelFallbackMessage=e.modelFallbackMessage,this.attachUsageReporter(),this.attachSummarizationTracer()}async switchSession(e,n){let r=await this.emitBeforeSwitch("resume",e);if(r.cancelled)return r;let i=this.session.sessionFile,o=Vl.open(e,void 0,n);return Wne(o,this.cwd),await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:o.getCwd(),agentDir:this.services.agentDir,sessionManager:o,sessionStartEvent:{type:"session_start",reason:"resume",previousSessionFile:i}})),{cancelled:!1}}async newSession(e){let n=await this.emitBeforeSwitch("new");if(n.cancelled)return n;let r=e?.cwd??this.cwd,i=this.session.sessionFile,o=this.session.sessionManager.getSessionDir(),s=Vl.create(r,o);return e?.parentSession&&s.newSession({parentSession:e.parentSession}),await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:r,agentDir:this.services.agentDir,sessionManager:s,sessionStartEvent:{type:"session_start",reason:"new",previousSessionFile:i}})),e?.setup&&(await e.setup(this.session.sessionManager),this.session.agent.state.messages=this.session.sessionManager.buildSessionContext().messages),{cancelled:!1}}async fork(e){if((await this.emitBeforeFork(e)).cancelled)return{cancelled:!0};let r=this.session.sessionManager.getEntry(e);if(!r||r.type!=="message")throw new Error("Invalid entry ID for forking");let i=r.message,o;if(i.role==="user")o=Qzl(i.content);else if(i.role==="promptCommandInvocation")o=sI(i);else throw new Error("Invalid entry ID for forking");let s=this.session.sessionFile;if(this.session.sessionManager.isPersisted()){let l=this.session.sessionFile;if(!l)throw new Error("Persisted session is missing a session file");let c=this.session.sessionManager.getSessionDir();if(!r.parentId){let A=Vl.create(this.cwd,c);return A.newSession({parentSession:l}),await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:this.cwd,agentDir:this.services.agentDir,sessionManager:A,sessionStartEvent:{type:"session_start",reason:"fork",previousSessionFile:s}})),{cancelled:!1,selectedText:o}}let d=Vl.open(l,c).createBranchedSession(r.parentId);if(!d)throw new Error("Failed to create forked session");let p=Vl.open(d,c);return await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:p.getCwd(),agentDir:this.services.agentDir,sessionManager:p,sessionStartEvent:{type:"session_start",reason:"fork",previousSessionFile:s}})),{cancelled:!1,selectedText:o}}let a=this.session.sessionManager;return r.parentId?a.createBranchedSession(r.parentId):a.newSession({parentSession:this.session.sessionFile}),await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:this.cwd,agentDir:this.services.agentDir,sessionManager:a,sessionStartEvent:{type:"session_start",reason:"fork",previousSessionFile:s}})),{cancelled:!1,selectedText:o}}async importFromJsonl(e,n){let r=ndo(e);if(!tdo(r))throw new Error(`File not found: ${r}`);let i=this.session.sessionManager.getSessionDir();tdo(i)||Tzl(i,{recursive:!0});let o=kzl(i,Nzl(r)),s=await this.emitBeforeSwitch("resume",o);if(s.cancelled)return s;let a=this.session.sessionFile;ndo(o)!==r&&xzl(r,o);let l=Vl.open(o,i,n);return Wne(l,this.cwd),await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:l.getCwd(),agentDir:this.services.agentDir,sessionManager:l,sessionStartEvent:{type:"session_start",reason:"resume",previousSessionFile:a}})),{cancelled:!1}}async dispose(){this.detachUsageReporter(),this.detachSummarizationTracer(),await cMe(this.session.extensionRunner),this.session.dispose(),await Promise.all([this._usageReporter?.flush(),this._toolUseReporter?.flush()])}}});import{join as HNn}from"node:path";function Dzl(){return ks()}async function zCt(t={}){let e=t.cwd??process.cwd(),n=t.agentDir??Dzl(),r=t.resourceLoader,i=t.agentDir?HNn(n,"auth.json"):void 0,o=t.agentDir?HNn(n,"models.json"):void 0,s=t.authStorage??sU.create(i),a=t.modelRegistry??xz.create(s,o),l=t.settingsManager??ol.create(e,n),c=t.sessionManager??Vl.create(e,jR(e,n));r||(r=new cz({cwd:e,agentDir:n,settingsManager:l}),await r.reload(),Mw("resourceLoader.reload"));let u=c.buildSessionContext(),d=u.messages.length>0,p=c.getBranch().some(w=>w.type==="thinking_level_change"),A=t.model,g;if(!A&&d&&u.model){let w=a.find(u.model.provider,u.model.modelId);if(w&&a.hasConfiguredAuth(w)&&(A=w),!A&&!w){let F=a.findDeprecatedModelUpgrade(u.model.provider,u.model.modelId);F&&a.hasConfiguredAuth(F)&&(A=F,g=`Model ${u.model.provider}/${u.model.modelId} is retired. Using ${F.provider}/${F.id}`)}A||(g=`Could not restore model ${u.model.provider}/${u.model.modelId}`)}A||(A=(await duo({scopedModels:[],isContinuing:d,defaultProvider:l.getDefaultProvider(),defaultModelId:l.getDefaultModel(),defaultThinkingLevel:l.getDefaultThinkingLevel(),modelRegistry:a})).model,A?g&&(g+=`. Using ${A.provider}/${A.id}`):g=`No models available. Use /login or set an API key environment variable. See ${HNn(Bme(),"providers.md")}. Then use /model to select a model.`);let m=t.thinkingLevel;m===void 0&&d&&(m=p?u.thinkingLevel:l.getDefaultThinkingLevel()??$Q),m===void 0&&(m=l.getDefaultThinkingLevel()??$Q),A?.reasoning||(m="off");let f=["read",process.env.AUGGIE_ENABLE_TERMINAL==="1"?"terminal":"bash","edit","write","web-fetch","view-session"],E=t.tools?t.tools.map(w=>w.name).filter(w=>w in iU):f,b,y=t.augmentUserAgent??"",_=w=>{let F=LG(w);return l.getBlockImages()?F.map(T=>{if(T.role==="user"||T.role==="toolResult"){let D=T.content;if(Array.isArray(D)&&D.some(k=>k.type==="image")){let k=D.map(W=>W.type==="image"?{type:"text",text:"Image reading is disabled."}:W).filter((W,Y,j)=>!(W.type==="text"&&W.text==="Image reading is disabled."&&Y>0&&j[Y-1].type==="text"&&j[Y-1].text==="Image reading is disabled."));return{...T,content:k}}}return T}):F},v={};b=new Ste({initialState:{systemPrompt:"",model:A,thinkingLevel:m,tools:[]},convertToLlm:_,streamFn:async(w,F,T)=>{let D=await a.getApiKeyAndHeaders(w);if(!D.ok)throw new Error(D.error);let Q={...T,apiKey:D.apiKey,headers:D.headers||T?.headers?{...D.headers,...T?.headers}:void 0};return w.api==="augment-chat-stream"?ype(w,F,{...Q,userAgent:y}):RV(w,F,Q)},onPayload:(w,F)=>{let T=v.current;return T?.hasHandlers("before_provider_request")?T.emitBeforeProviderRequest(w):w},sessionId:c.getSessionId(),transformContext:w=>{let F=v.current;return F?F.emitContext(w):Promise.resolve(w)},steeringMode:l.getSteeringMode(),followUpMode:l.getFollowUpMode(),transport:l.getTransport(),thinkingBudgets:l.getThinkingBudgets(),maxRetryDelayMs:l.getRetrySettings().maxDelayMs}),d?(b.state.messages=u.messages,p||c.appendThinkingLevelChange(m)):(A&&c.appendModelChange(A.provider,A.id),c.appendThinkingLevelChange(m));let R=new Cbe({agent:b,sessionManager:c,settingsManager:l,cwd:e,agentDir:n,mcpConfigOverride:t.mcpConfigOverride,permissionOverride:t.permissionOverride,scopedModels:t.scopedModels,resourceLoader:r,customTools:t.customTools,toolsOptions:t.toolsOptions,modelRegistry:a,initialActiveToolNames:E,extensionRunnerRef:v,sessionStartEvent:t.sessionStartEvent,featureFlags:t.featureFlags,role:t.role}),x=r.getExtensions();return{session:R,extensionsResult:x,modelFallbackMessage:g}}var JNn=I(()=>{"use strict";zVe();Zl();ub();Lu();aCt();$Ge();sht();eN();kw();bUe();VMe();bw();DNn();vz();zNn();vz()});function jCt(t){return KNn[t]}function Mbe(t){return t==="user"?"global":t}function Gbe(t){return t==="global"?"user":t}function $Ct(t){let{files:e,alwaysShowPicker:n}=t;if(n&&e.length>=2)return{files:e};let r=e.filter(i=>i.exists);return r.length===0?{directTarget:"user"}:r.length===1?{directTarget:r[0].target}:{files:e}}var KCt,KNn,rdo=I(()=>{"use strict";KCt=["local","project","user"],KNn={user:"User settings (global)",project:"Project settings (shared)",local:"Local settings (personal)"}});var WZg,vUe=I(()=>{"use strict";WZg=new TextDecoder("utf-8",{fatal:!0})});var jNn=I(()=>{"use strict"});var $Nn=I(()=>{"use strict"});var qNn=I(()=>{"use strict";Lr();$Nn()});var ido=I(()=>{"use strict"});var BUe=I(()=>{"use strict";Lr();BT();jNn();qNn();ido()});import{execFile as Gzl}from"node:child_process";import{promisify as Uzl}from"node:util";var c3g,e2n=I(()=>{"use strict";Lr();c3g=Uzl(Gzl)});import{exec as Lzl}from"node:child_process";import{promisify as Pzl}from"node:util";var m3g,t2n=I(()=>{"use strict";Lr();e2n();m3g=Pzl(Lzl)});var wUe=I(()=>{"use strict"});var xUe=I(()=>{"use strict";Lr();BT()});var Wzl,I3g,S3g,qCt=I(()=>{"use strict";Lr();Wzl=Kr(oW(),1),I3g=1024*1024,S3g=mn.child({prefix:"HierarchicalIgnoreFilter"})});var TUe=I(()=>{"use strict";Lr();BT()});import{execFile as Zzl,spawn as x3g}from"node:child_process";import{promisify as Xzl}from"node:util";var Q3g,D3g,F3g,eyt=I(()=>{"use strict";Lr();wUe();Q3g=Xzl(Zzl),D3g=1024*1024,F3g=mn.child({prefix:"git-tree-walker"})});import{execFile as Yzl}from"node:child_process";import{promisify as Jzl}from"node:util";var U3g,r2n=I(()=>{"use strict";U3g=Jzl(Yzl)});var zzl,P3g,i2n=I(()=>{"use strict";Lr();zzl=Kr(oW(),1),P3g=1024*1024});import{execFile as qzl}from"node:child_process";import{promisify as eHl}from"node:util";var J3g,c2n=I(()=>{"use strict";eyt();Lr();vUe();BUe();BT();r2n();wUe();eyt();xUe();i2n();TUe();J3g=eHl(qzl)});var sXg,u2n=I(()=>{"use strict";Lr();sXg=mn.child({prefix:"FileWalker"})});var d2n=I(()=>{"use strict";Lr();vUe();BUe();BT();xUe();u2n();qCt();TUe()});var bXg,p2n=I(()=>{"use strict";Lr();BT();bXg=mn.child({prefix:"FileWatcher"})});var SXg,A2n=I(()=>{"use strict";Lr();BT();SXg=mn.child({prefix:"WatcherProcessor"})});var ado=I(()=>{"use strict";Lr();vUe();BUe();t2n();BT();wUe();xUe();qCt();TUe();c2n();d2n();p2n();A2n()});import{Worker as lHl}from"node:worker_threads";async function NUe(){let t=Date.now(),e=new URL("./indexing-worker.mjs",import.meta.url),n;try{n=new lHl(e)}catch(r){return{ok:!1,error:`Worker construction threw: ${r instanceof Error?r.message:String(r)}`,durationMs:Date.now()-t}}return await new Promise(r=>{let i=!1,o=a=>{i||(i=!0,clearTimeout(s),n.terminate().catch(()=>{}),r(a))},s=setTimeout(()=>{o({ok:!1,error:`Worker did not report ready within ${ldo}ms`,durationMs:Date.now()-t})},ldo);s.unref(),n.on("message",a=>{a&&a.type==="ready"&&o({ok:!0,durationMs:Date.now()-t})}),n.on("error",a=>{o({ok:!1,error:`Worker error event: ${a.message}`,durationMs:Date.now()-t})}),n.on("exit",a=>{a!==0&&o({ok:!1,error:`Worker exited with code ${a} before ready`,durationMs:Date.now()-t})})})}var ldo,cdo=I(()=>{"use strict";ldo=1e4});var PXg,udo=I(()=>{"use strict";Lr();PXg=mn.child({prefix:"AugmentApiAdapter"})});var g2n=I(()=>{"use strict";ado();cdo();mat();xpn();udo();r2n();e2n();wUe();eyt();t2n();xUe();u2n();qCt();i2n();TUe();c2n();d2n();vUe();BUe();jNn();$Nn();qNn();BT();p2n();A2n()});var cHl,uHl,dHl,Ado,pHl,AHl,gHl,ddo,pdo,Ube,tyt,m2n,h2n,mHl,nyt,b2n,Yne,C2n,hHl,kUe,fHl,f2n,E2n,EHl,ryt,iyt=I(()=>{"use strict";cHl="http/protobuf",uHl="delta",dHl="hmac",Ado=new Set(["1","true","yes","on"]),pHl=new Set(["0","false","no","off"]),AHl={metrics:"METRICS",logs:"LOGS",traces:"TRACES"},gHl={metrics:"/v1/metrics",logs:"/v1/logs",traces:"/v1/traces"},ddo=(t,e,n)=>{if(n==="grpc")return t;let r=gHl[e],i=t.endsWith("/")?t.slice(0,-1):t;return i.endsWith(r)?i:i+r},pdo=t=>Ado.has(t.trim().toLowerCase()),Ube=t=>{if(t===void 0)return;let e=t.trim().toLowerCase();return Ado.has(e)?!0:pHl.has(e)?!1:void 0},tyt=(t,e)=>{if(t===void 0)return e;let n=Number.parseInt(t.trim(),10);return Number.isNaN(n)?e:n},m2n=(t,e)=>{let n=tyt(t,e);return n>0?n:e},h2n=(t,e)=>t&&t>0?t:e,mHl=t=>t==="grpc"||t==="http/protobuf"||t==="http/json",nyt=t=>{if(t===void 0)return;let e=t.trim().toLowerCase();return mHl(e)?e:void 0},b2n=t=>{if(t===void 0)return;let e=t.trim().toLowerCase();if(e==="delta"||e==="cumulative")return e},Yne=t=>{if(t===void 0)return;let e=t.trim();return e.length>0?e:void 0},C2n=t=>{if(t===void 0)return;let e=t.trim().toLowerCase();if(e==="hmac"||e==="raw"||e==="off")return e},hHl=(t,e)=>(t??"").split(",").map(n=>n.trim().toLowerCase()).includes(e),kUe=t=>{let e={};if(!t)return e;for(let n of t.split(",")){let r=n.trim(),i=r.indexOf("=");if(i<=0)continue;let o=r.slice(0,i).trim();o&&(e[o]=r.slice(i+1).trim())}return e},fHl=(t,e,n)=>{if(n.enabled!==void 0)return n.enabled;let r=t.AUGGIE_ENABLE_TELEMETRY;if(r!==void 0)return pdo(r);let i=t.CLAUDE_CODE_ENABLE_TELEMETRY;return i!==void 0?pdo(i):e.enabled??!1},f2n=(t,e,n,r)=>{let i=AHl[e],o=r.protocol??nyt(t[`OTEL_EXPORTER_OTLP_${i}_PROTOCOL`])??nyt(t.OTEL_EXPORTER_OTLP_PROTOCOL)??n.protocol??cHl,s=Yne(r.endpoint),a=Yne(t[`OTEL_EXPORTER_OTLP_${i}_ENDPOINT`]),l=Yne(t.OTEL_EXPORTER_OTLP_ENDPOINT)??Yne(n.endpoint),c;s!==void 0?c=ddo(s,e,o):a!==void 0?c=a:l!==void 0&&(c=ddo(l,e,o));let u={...n.headers,...kUe(t.OTEL_EXPORTER_OTLP_HEADERS),...kUe(t[`OTEL_EXPORTER_OTLP_${i}_HEADERS`]),...r.headers};return{endpoint:c,headers:u,protocol:o}},E2n=t=>t!==void 0&&t>0?t:void 0,EHl=(t,e,n)=>({bufferDir:Yne(n.bufferDir)??Yne(t.AUGGIE_TELEMETRY_BUFFER_DIR)??Yne(e.bufferDir),bufferMaxBytes:E2n(n.bufferMaxBytes)??m2n(t.AUGGIE_TELEMETRY_BUFFER_MAX_BYTES,h2n(e.bufferMaxBytes,52428800)),breakerFailureThreshold:E2n(n.breakerFailureThreshold)??m2n(t.AUGGIE_TELEMETRY_BREAKER_FAILURE_THRESHOLD,h2n(e.breakerFailureThreshold,3)),breakerBackoffMs:E2n(n.breakerBackoffMs)??m2n(t.AUGGIE_TELEMETRY_BREAKER_BACKOFF_MS,h2n(e.breakerBackoffMs,3e4))}),ryt=(t={})=>{let e=t.env??process.env,n={...t.envInjection,...e},r=t.telemetry??{},i=t.managed??{},o={metrics:f2n(n,"metrics",r,i),logs:f2n(n,"logs",r,i),traces:f2n(n,"traces",r,i)},s=o.metrics.endpoint!==void 0||o.logs.endpoint!==void 0||o.traces.endpoint!==void 0;return{enabled:fHl(n,r,i)&&s,exporter:o,metricExportIntervalMs:i.metricExportIntervalMs??tyt(n.OTEL_METRIC_EXPORT_INTERVAL,r.metricExportIntervalMs??2e4),logsExportIntervalMs:i.logsExportIntervalMs??tyt(n.OTEL_LOGS_EXPORT_INTERVAL,r.logsExportIntervalMs??5e3),metricsTemporalityPreference:i.metricsTemporalityPreference??b2n(n.OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE)??r.metricsTemporalityPreference??uHl,resourceAttributes:{...r.resourceAttributes,...kUe(n.OTEL_RESOURCE_ATTRIBUTES),...i.resourceAttributes},includeVersion:i.includeVersion??Ube(n.OTEL_METRICS_INCLUDE_VERSION)??r.includeVersion??!1,includeAccountUuid:i.includeAccountUuid??Ube(n.OTEL_METRICS_INCLUDE_ACCOUNT_UUID)??r.includeAccountUuid??!0,identity:{mode:i.identityMode??C2n(n.AUGGIE_TELEMETRY_IDENTITY_MODE)??r.identityMode??dHl,secret:i.identitySecret??n.AUGGIE_TELEMETRY_IDENTITY_SECRET??r.identitySecret},shutdownTimeoutMs:i.shutdownTimeoutMs??tyt(n.AUGGIE_TELEMETRY_SHUTDOWN_TIMEOUT_MS,r.shutdownTimeoutMs??2e3),...EHl(n,r,i),genAiCaptureMessageContent:i.captureMessageContent??Ube(n.OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT)??r.captureMessageContent??!1,genAiLatestExperimental:hHl(n.OTEL_SEMCONV_STABILITY_OPT_IN,"gen_ai_latest_experimental"),logUserPrompts:i.logUserPrompts??Ube(n.OTEL_LOG_USER_PROMPTS)??r.logUserPrompts??!1,logToolDetails:i.logToolDetails??Ube(n.OTEL_LOG_TOOL_DETAILS)??r.logToolDetails??!1,langsmithCompat:i.langsmithCompat??Ube(n.AUGGIE_TELEMETRY_LANGSMITH_COMPAT)??r.langsmithCompat??!1}}});import{execFileSync as bHl}from"node:child_process";import{existsSync as CHl,readFileSync as yHl}from"node:fs";var gdo,IHl,SHl,mdo,hdo,_Hl,S2n,fdo,RHl,vHl,BHl,wHl,xHl,y2n,THl,NHl,Jne,Obe,I2n,Edo,kHl,oyt,_2n=I(()=>{"use strict";iyt();gdo="/Library/Managed Preferences/com.augmentcode.auggie.plist",IHl="HKLM\\SOFTWARE\\Policies\\AugmentCode\\Auggie\\Telemetry",SHl="/etc/augment/auggie-managed-settings.json",mdo="/usr/bin/plutil",hdo="C:\\Windows\\System32\\reg.exe",_Hl=2e3,S2n=t=>typeof t=="object"&&t!==null&&!Array.isArray(t),fdo=t=>S2n(t)?t.telemetry:void 0,RHl=(t,e)=>bHl(t,e,{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:_Hl,windowsHide:!0}),vHl=/^ {4}(.+?) {4}(REG_[A-Z_]+) {4}(.*)$/,BHl=t=>{let e={};for(let n of t.split(/\r?\n/)){let r=vHl.exec(n);if(!r)continue;let[,i,o,s]=r;if(o==="REG_DWORD"||o==="REG_QWORD"){let a=Number(s.trim());Number.isFinite(a)&&(e[i]=a)}else(o==="REG_SZ"||o==="REG_EXPAND_SZ")&&(e[i]=s)}return Object.keys(e).length>0?e:void 0},wHl=(t={})=>{let e=t.execRead??RHl,n=t.fileExists??CHl;return{darwin:()=>{if(!(n(gdo)&&n(mdo)))return;let r=e(mdo,["-convert","json","-o","-",gdo]);return fdo(JSON.parse(r))},linux:()=>fdo(JSON.parse(yHl(SHl,"utf-8"))),win32:()=>{if(n(hdo))return BHl(e(hdo,["query",IHl]))}}},xHl=wHl(),y2n=t=>typeof t=="string"?t:void 0,THl=new Set(["1","true","yes","on"]),NHl=new Set(["0","false","no","off"]),Jne=t=>{if(typeof t=="boolean")return t;if(typeof t=="number")return t!==0;if(typeof t=="string"){let e=t.trim().toLowerCase();if(THl.has(e))return!0;if(NHl.has(e))return!1}},Obe=t=>{if(typeof t=="number")return Number.isFinite(t)?t:void 0;if(typeof t=="string"){let e=t.trim();if(e.length===0)return;let n=Number(e);return Number.isFinite(n)?n:void 0}},I2n=t=>{if(typeof t!="string")return;let e=t.trim();return e.length>0?e:void 0},Edo=t=>{if(typeof t=="string"){let n=kUe(t);return Object.keys(n).length>0?n:void 0}if(!S2n(t))return;let e={};for(let[n,r]of Object.entries(t))typeof r=="string"&&(e[n]=r);return Object.keys(e).length>0?e:void 0},kHl=t=>{if(!S2n(t))return;let e={breakerBackoffMs:Obe(t.breakerBackoffMs),breakerFailureThreshold:Obe(t.breakerFailureThreshold),bufferDir:I2n(t.bufferDir),bufferMaxBytes:Obe(t.bufferMaxBytes),captureMessageContent:Jne(t.captureMessageContent),enabled:Jne(t.enabled),endpoint:I2n(t.endpoint),headers:Edo(t.headers),identityMode:C2n(y2n(t.identityMode)),identitySecret:I2n(t.identitySecret),includeAccountUuid:Jne(t.includeAccountUuid),includeVersion:Jne(t.includeVersion),logsExportIntervalMs:Obe(t.logsExportIntervalMs),langsmithCompat:Jne(t.langsmithCompat),logToolDetails:Jne(t.logToolDetails),logUserPrompts:Jne(t.logUserPrompts),metricExportIntervalMs:Obe(t.metricExportIntervalMs),metricsTemporalityPreference:b2n(y2n(t.metricsTemporalityPreference)),protocol:nyt(y2n(t.protocol)),resourceAttributes:Edo(t.resourceAttributes),shutdownTimeoutMs:Obe(t.shutdownTimeoutMs)};return Object.values(e).some(r=>r!==void 0)?e:void 0},oyt=(t={})=>{let e=t.platform??process.platform;if(e!=="darwin"&&e!=="win32"&&e!=="linux")return;let n=t.readers?.[e]??xHl[e];try{return kHl(n())}catch{return}}});function h_(t,e){if(typeof t=="string"){if(!e)throw new Error(`registerBuiltinExtension("${t}", factory) called without a factory`);syt.push({name:t,factory:e,kind:"bundled"});return}if((t.kind??"bundled")==="prebundled"){if(t.factory!==void 0)throw new Error(`registerBuiltinExtension("${t.name}"): prebundled extensions must not be registered with a factory (the static factory import would inline the extension into the SEA, see apps/auggie-v2/docs/prebundled-extensions.md).`);syt.push({name:t.name,kind:"prebundled"});return}if(!t.factory)throw new Error(`registerBuiltinExtension({ name: "${t.name}" }) called without a factory for kind="bundled"`);syt.push({name:t.name,factory:t.factory,kind:"bundled"})}function bdo(){return syt}function Cdo(t,e){return t.filter(n=>!e.has(n.name))}var syt,R2n=I(()=>{"use strict";syt=[]});import{statSync as QHl}from"node:fs";import{resolve as DHl}from"node:path";function ydo(t,e,n){let r=[],i=[];if(!t||t.length===0)return{resolved:r,errors:i};let o=new Set([e]);for(let s of t){let a=Cm(s),l=DHl(n,a);if(o.has(l))continue;let c;try{c=QHl(l)}catch(u){let d=u instanceof Error?u.message:String(u);i.push(`--add-workspace "${s}": ${d}`);continue}if(!c.isDirectory()){i.push(`--add-workspace "${s}": not a directory (${l})`);continue}o.add(l),r.push(l)}return{resolved:r,errors:i}}function Ido(t){return t.isCloudService?{kind:"tolerate",warnings:t.errors}:{kind:"fatal",fatalErrors:t.errors}}var Sdo=I(()=>{"use strict";sb()});import{execFile as FHl}from"node:child_process";import{existsSync as VHl,rmSync as MHl}from"node:fs";import{promisify as GHl}from"node:util";function v2n(t){let e=t.match(/^git@([^:]+):(.+?)(?:\.git)?$/);if(e){let[,r,i]=e;return{sshUrl:t.endsWith(".git")?t:`${t}.git`,httpsUrl:`https://${r}/${i}.git`}}let n=t.match(/^https?:\/\/([^/]+)\/(.+?)(?:\.git)?$/);if(n){let[,r,i]=n;return{sshUrl:`git@${r}:${i}.git`,httpsUrl:t.endsWith(".git")?t:`${t}.git`}}return{sshUrl:t,httpsUrl:t}}function Bdo(t){return t instanceof Error?t.message:String(t)}async function B2n({sshUrl:t,httpsUrl:e,targetDir:n,extraArgs:r=[]}){let i;for(let o of[{url:t,env:UHl},{url:e,env:vdo}])try{return await Rdo("git",["clone","--depth","1",...r,o.url,n],{env:o.env}),{success:!0}}catch(s){i=s,VHl(n)&&MHl(n,{recursive:!0,force:!0})}return{success:!1,error:Bdo(i)}}function _do(t,e){return Rdo("git",t,{cwd:e,env:vdo})}async function wdo(t,e){try{return await _do(["fetch","--depth","1","origin",e],t),await _do(["checkout","FETCH_HEAD"],t),{success:!0}}catch(n){return{success:!1,error:Bdo(n)}}}var Rdo,UHl,vdo,xdo=I(()=>{"use strict";Rdo=GHl(FHl),UHl={...process.env,GIT_TERMINAL_PROMPT:"0",GIT_SSH_COMMAND:"ssh -o BatchMode=yes"},vdo={...process.env,GIT_TERMINAL_PROMPT:"0"}});import{existsSync as OHl,readFileSync as LHl}from"node:fs";import{join as Lbe}from"node:path";function kdo(t){for(let e of Ndo)if(OHl(Lbe(t,e)))return!0;return!1}function zne(t){let e=PHl(t,Tdo);return e.manifest||e.diagnostics.length>0?e:{diagnostics:[`no marketplace manifest found (looked for ${Tdo.join(", ")})`]}}function PHl(t,e){let n=[];for(let r of e){let i=Lbe(t,r),o;try{o=LHl(i,"utf-8")}catch{continue}try{let s=JSON.parse(o);if(s&&typeof s=="object"&&!Array.isArray(s))return{manifest:s,manifestPath:i,diagnostics:n};n.push(`manifest at ${r} is not a JSON object; ignoring`)}catch(s){n.push(`failed to parse manifest at ${r}: ${s.message}`)}}return{diagnostics:n}}var Ndo,Tdo,Qdo,ayt=I(()=>{"use strict";Ndo=[Lbe(".augment-plugin","plugin.json"),Lbe(".claude-plugin","plugin.json")],Tdo=[Lbe(".augment-plugin","marketplace.json"),Lbe(".claude-plugin","marketplace.json")];Qdo=`no plugin manifest found (looked for ${Ndo.join(", ")})`});import{execFile as WHl}from"node:child_process";import{existsSync as DW,mkdirSync as Fdo,readdirSync as ZHl,renameSync as XHl,rmSync as YHl,statSync as JHl}from"node:fs";import{dirname as zHl,isAbsolute as Vdo,join as FW,relative as Mdo,resolve as w2n}from"node:path";import{promisify as HHl}from"node:util";function Udo(t){let e=t.replace(/\.\./g,"").replace(/[/\\]/g,"").replace(/^\.+/,"").trim();return!e||!/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(e)?null:e}function Ddo(t){let e=t.replace(/\.\./g,"").replace(/[/\\]/g,"").replace(/^\.+/,"").trim();return!e||!/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(e)?null:e}function jHl(t){let e=t.match(/^([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_.-]+?)(?:@(.+))?$/);if(e?.[1]&&e[2])return{owner:e[1],repo:e[2].replace(/\.git$/,""),...e[3]?{ref:e[3]}:{}};let n=t.match(/^https?:\/\/github\.com\/([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_.-]+?)(\.git)?(?:#(.+))?$/);if(n?.[1]&&n[2])return{owner:n[1],repo:n[2],...n[4]?{ref:n[4]}:{}};let r=t.match(/^git@github\.com:([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_.-]+?)(\.git)?(?:#(.+))?$/);return r?.[1]&&r[2]?{owner:r[1],repo:r[2],...r[4]?{ref:r[4]}:{}}:null}function uU(t){return typeof t=="string"&&t.length>0?t:void 0}function $Hl(t,e){let n=uU(t.repo);return n?{kind:"github",url:`https://github.com/${n.replace(/\.git$/,"")}.git`,...e?{ref:e}:{},...uU(t.path)?{subdir:uU(t.path)}:{}}:null}function qHl(t,e){let n=uU(t.url);return n?{kind:"url",url:n,...e?{ref:e}:{},...uU(t.path)?{subdir:uU(t.path)}:{}}:null}function eKl(t,e){let n=uU(t.url),r=uU(t.path);return n&&r?{kind:"git-subdir",url:n,subdir:r,...e?{ref:e}:{}}:null}function x2n(t){if(!t||typeof t!="object")return null;let e=t,n=uU(e.sha)??uU(e.ref);switch(e.source){case"github":return $Hl(e,n);case"url":return qHl(e,n);case"git-subdir":return eKl(e,n);default:return null}}function Odo(t,e,n){let r=Udo(e);if(!r)return;let i=FW(t,Gdo,r);if(!DW(FW(i,".git")))return;if(!n)return i;let o=w2n(i,n),s=Mdo(i,o);if(!(s.startsWith("..")||Vdo(s)))return DW(o)?o:void 0}async function tKl(t,e){let n=typeof e.name=="string"?e.name:"",r=x2n(e.source);if(!r)return;let i=Udo(n);if(!i)return{name:n,status:"failed",error:"invalid plugin cache name"};let o=FW(t,Gdo,i);if(DW(FW(o,".git")))return{name:n,status:"skipped"};let s=zHl(o);DW(s)||Fdo(s,{recursive:!0});let{sshUrl:a,httpsUrl:l}=v2n(r.url),c=r.kind==="git-subdir",u=await B2n({sshUrl:a,httpsUrl:l,targetDir:o,extraArgs:c?["--filter=blob:none","--sparse"]:[]});if(!u.success)return{name:n,status:"failed",error:u.error};if(r.ref){let d=await wdo(o,r.ref);if(!d.success)return{name:n,status:"failed",error:d.error}}if(c&&r.kind==="git-subdir")try{await KHl("git",["sparse-checkout","set",r.subdir],{cwd:o,env:{...process.env,GIT_TERMINAL_PROMPT:"0"}})}catch(d){return{name:n,status:"failed",error:d instanceof Error?d.message:String(d)}}return{name:n,status:"cloned"}}async function Ldo(t){let{manifest:e}=zne(t),n=e?.plugins;if(!n||n.length===0)return[];let r=[];for(let i of n){let o=await tKl(t,i);o&&r.push(o)}return r}function nKl(t){try{return JHl(t).isDirectory()}catch{return!1}}function rKl(t,e){let n=Mdo(w2n(t),w2n(e));return n!==""&&!n.startsWith("..")&&!Vdo(n)}async function QUe(t,e){let n=jHl(e);if(!n)return{success:!1,error:`Invalid GitHub repository: ${e}. Expected owner/repo or a github.com URL.`};let{owner:r,repo:i,ref:o}=n;DW(t)||Fdo(t,{recursive:!0});let s=Ddo(i);if(!s)return{success:!1,error:`Invalid repository name for marketplace directory: "${i}".`};let a=FW(t,s);if(DW(a))return{success:!1,alreadyInstalled:!0,marketplaceId:s,error:`Marketplace '${s}' is already installed.`};let{sshUrl:l,httpsUrl:c}=v2n(`https://github.com/${r}/${i}`),u=await B2n({sshUrl:l,httpsUrl:c,targetDir:a,extraArgs:o?["--branch",o]:[]});if(!u.success)return{success:!1,error:`Failed to clone '${r}/${i}' (SSH and HTTPS both failed): ${u.error}`};let{manifest:d}=zne(a),p=s,A=typeof d?.name=="string"?Ddo(d.name):null;if(A&&A!==s){let g=FW(t,A);if(!DW(g))try{XHl(a,g),p=A}catch{}}return await Ldo(FW(t,p)),{success:!0,marketplaceId:p}}function DUe(t,e){let n=FW(t,e);if(!rKl(t,n))return{success:!1,error:`Refusing to remove '${e}': path is outside the marketplaces directory.`};if(!DW(n))return{success:!1,error:`Marketplace '${e}' not found.`};try{return YHl(n,{recursive:!0,force:!0}),{success:!0}}catch(r){return{success:!1,error:`Failed to remove '${e}': ${r instanceof Error?r.message:String(r)}`}}}async function Pdo(t){let e=!1;for(let n of t){if(!DW(n))continue;let r;try{r=ZHl(n)}catch{continue}for(let i of r){let o=FW(n,i);if(!nKl(o))continue;(await Ldo(o)).some(a=>a.status==="cloned")&&(e=!0)}}return e}var KHl,Gdo,lyt=I(()=>{"use strict";xdo();ayt();KHl=HHl(WHl),Gdo=".plugin-cache"});import{readFileSync as iKl}from"node:fs";import{join as oKl}from"node:path";function Wdo(t){let e=oKl(t,"hooks","hooks.json"),n;try{n=iKl(e,"utf-8")}catch{return{diagnostics:[]}}let r;try{r=JSON.parse(n)}catch(o){return{diagnostics:[`failed to parse hooks/hooks.json: ${o.message}`]}}return!r||typeof r!="object"||Array.isArray(r)?{diagnostics:["hooks/hooks.json must be a JSON object"]}:{config:yMe(r),diagnostics:[]}}var Zdo=I(()=>{"use strict";Tte()});import{existsSync as sKl,lstatSync as aKl,readdirSync as Ydo,statSync as lKl}from"node:fs";import{isAbsolute as Xdo,join as FUe,relative as cKl,resolve as Jdo}from"node:path";function zdo(t,e){let n=[],r=[],i=[],o=new Map;for(let s of t)for(let a of uKl(s,e,r)){let l=o.get(a.id);if(l!==void 0){i.push({id:a.id,shadowedRoot:s,winnerRoot:l});continue}o.set(a.id,s),n.push(a)}for(let[s,a]of Object.entries(e))a&&!o.has(s)&&r.push(`enabledPlugins["${s}"] = true but no plugin with that id was found in any marketplace root`);return{plugins:n,globalDiagnostics:r,shadowedPlugins:i}}function uKl(t,e,n){let r=[];if(!sKl(t))return r;let i;try{i=Ydo(t)}catch(o){return n.push(`failed to read marketplaces directory ${t}: ${o.message}`),r}for(let o of i){let s=FUe(t,o);VUe(s)&&dKl(s,o,e,r,n)}return r}function dKl(t,e,n,r,i){let o=zne(t);if(!o.manifest){for(let c of o.diagnostics)i.push(`[${e}] ${c}`);return}let s=EKl(o.manifest.name,e),a=fKl(t,o.manifest.metadata?.pluginRoot),l=Array.isArray(o.manifest.plugins)?o.manifest.plugins:[];l.length===0&&i.push(`[${s}] marketplace.json has no plugins[] entries`);for(let c of l){let u=pKl(c,t,a,s,n);u&&r.push(u)}for(let c of o.diagnostics)i.push(`[${s}] ${c}`)}function pKl(t,e,n,r,i){let o=typeof t.name=="string"?Pbe(t.name):void 0;if(!o)return;let s=`${o}@${r}`,a=i[s]===!0,l=[],c=hKl(t.source,o,e,n,l);return c?gKl(s,r,o,c,a,l):{id:s,marketplace:r,name:o,root:e,enabled:a,commandsDir:void 0,skillsDir:void 0,hooksConfig:void 0,agentsDirPresent:!1,diagnostics:l}}function AKl(t,e){let n=[],r;try{r=Ydo(t).sort()}catch(o){return e.push(`failed to read agents directory: ${o.message}`),n}let i=[];for(let o of r){if(!o.endsWith(".md"))continue;let s=FUe(t,o);try{if(!aKl(s).isFile()){i.push(o);continue}}catch(a){e.push(`failed to stat agent file ${o}: ${a.message}`);continue}n.push(s)}return i.length>0&&e.push(`ignoring non-regular agent file(s) under agents/ (symlinks / dirs / devices are not followed): ${i.join(", ")}`),n}function gKl(t,e,n,r,i,o){kdo(r)||o.push(Qdo);let s=FUe(r,"commands"),a=FUe(r,"skills"),l=FUe(r,"agents"),c=VUe(s)?s:void 0,u=VUe(a)?a:void 0,d=VUe(l),p=d&&i?AKl(l,o):void 0,A=Wdo(r);for(let g of A.diagnostics)o.push(g);return{id:t,marketplace:e,name:n,root:r,enabled:i,commandsDir:c,skillsDir:u,hooksConfig:A.config,agentsDirPresent:d,agentFiles:p,diagnostics:o}}function mKl(t,e,n,r){let i=x2n(t);if(!i){let s=t.source;r.push(`source kind "${typeof s=="string"?s:"object"}" is not supported; install the plugin manually as a relative directory`);return}let o=Odo(n,e,i.subdir);if(o)return o;r.push(`source kind "${i.kind}" not fetched yet; run /plugins to clone it (or marketplace update)`)}function hKl(t,e,n,r,i){if(typeof t!="string"){if(t&&typeof t=="object")return mKl(t,e,n,i);i.push("plugin entry has no source field; skipping");return}if(Xdo(t)){i.push(`absolute source "${t}" is not allowed; skipping`);return}let o=t.startsWith("./")?n:r,s=Jdo(o,t),a=cKl(n,s);if(a.startsWith("..")||Xdo(a)){i.push(`source "${t}" resolves outside the marketplace root; skipping`);return}if(!VUe(s)){i.push(`source "${t}" does not point to an existing directory (looked at ${s})`);return}return s}function fKl(t,e){return typeof e!="string"||e.length===0?t:Jdo(t,e)}function EKl(t,e){if(typeof t=="string"&&t.length>0){let n=Pbe(t);if(n.length>0)return n}return e}function Pbe(t){let e="";for(let n of t){let r=n.codePointAt(0);if(r===void 0)continue;let i=r<=31,o=r>=127&&r<=159;i||o||(e+=n)}return e}function VUe(t){try{return lKl(t).isDirectory()}catch{return!1}}var cyt=I(()=>{"use strict";lyt();Zdo();ayt()});import{readFileSync as bKl}from"node:fs";import{basename as CKl}from"node:path";function uyt(t){return typeof t=="string"?t:void 0}function IKl(t){if(typeof t=="string")return Kdo.includes(t)?t:void 0}function SKl(t){return typeof t=="number"&&t>=0?t:void 0}function $do(t){if(t==null)return;let e=String(t).trim();if(!e||e==="none")return;let n=e.split(",").map(r=>r.trim()).filter(Boolean);return n.length>0?n:void 0}function qdo(t,e){return t==null?[...e]:$do(t)??[]}function _Kl(t){return $do(t)}function RKl(t){if(t==="user"||t==="project"||t==="local")return t}function Hdo(t){if(t==null||t===!0)return!0;if(t===!1||t==="none")return!1;let e=qdo(t,[]);return e.length>0?e:!1}function vKl(t,e){let n=Pbe(CKl(t,".md")),r;try{r=bKl(t,"utf-8")}catch(u){let d=u instanceof Error?u.message:String(u);return{ok:!1,diagnostic:`failed to read agent file ${t}: ${d}`}}let i,o;try{let u=HQ(r);i=u.frontmatter??{},o=u.body}catch(u){let d=u instanceof Error?u.message:String(u);return{ok:!1,diagnostic:`invalid frontmatter in agent file ${t}: ${d}`}}let s=uyt(i.thinking),a=IKl(i.thinking),l=[];s!==void 0&&a===void 0&&l.push(`agent file ${t} declares thinking: "${s}", which is not a recognised level (expected one of: ${Kdo.join(", ")}); falling back to the model's default`);let c={name:n,displayName:uyt(i.display_name),description:uyt(i.description)??n,builtinToolNames:qdo(i.tools,yKl),disallowedTools:_Kl(i.disallowed_tools),extensions:Hdo(i.extensions??i.inherit_extensions),skills:Hdo(i.skills??i.inherit_skills),model:uyt(i.model),thinking:a,maxTurns:SKl(i.max_turns),systemPrompt:o.trim(),promptMode:i.prompt_mode==="append"?"append":"replace",inheritContext:i.inherit_context==null?void 0:i.inherit_context===!0,runInBackground:i.run_in_background==null?void 0:i.run_in_background===!0,isolated:i.isolated==null?void 0:i.isolated===!0,memory:RKl(i.memory),isolation:i.isolation==="worktree"?"worktree":void 0,enabled:i.enabled!==!1,source:"plugin",pluginId:e};return l.length>0?{ok:!0,config:c,warnings:l}:{ok:!0,config:c}}function epo(t){let e=new Map,n=[];if(!t.agentFiles||t.agentFiles.length===0)return{agents:e,diagnostics:n};let r=new Map;for(let i of t.agentFiles){let o=vKl(i,t.id);if(!o.ok){n.push(o.diagnostic);continue}if(o.warnings)for(let l of o.warnings)n.push(l);let{config:s}=o,a=s.name.toLowerCase();if(r.has(a)){let l=r.get(a)??s.name,c=l===s.name?`"${s.name}"`:`"${s.name}" (case-insensitive collision with "${l}")`;n.push(`duplicate agent name ${c} in plugin ${t.id}; ignoring ${i}`);continue}e.set(s.name,s),r.set(a,s.name)}return{agents:e,diagnostics:n}}var yKl,Kdo,jdo,tpo=I(()=>{"use strict";ad();cyt();yKl=["read","bash","edit","write","grep","find","ls"],Kdo=["off","minimal","low","medium","high","xhigh"],jdo=["general-purpose","explore","plan"]});import{lstatSync as BKl,readFileSync as wKl,realpathSync as npo}from"node:fs";import{isAbsolute as xKl,join as TKl,relative as NKl}from"node:path";function MUe(t,e){let n=t;for(let r of kKl){let i=`\${${r}}`;n.includes(i)&&(n=n.split(i).join(e))}return n}function T2n(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function rpo(t){if(!t)return;let e={};for(let[n,r]of Object.entries(t))r!=null&&(e[n]=String(r));return Object.keys(e).length>0?e:void 0}function QKl(t){if(t.type==="stdio"||t.type==="http"||t.type==="sse")return t.type;if(t.url)return"http";if(t.command)return"stdio"}function DKl(t,e,n){let r=QKl(e);if(!r)throw new Error(`MCP server "${t}" must declare a 'command' (stdio) or 'url' (http/sse) property`);if(r==="http"||r==="sse"){if(!e.url)throw new Error(`MCP server "${t}" has type "${r}" but no 'url' property`);return{type:r,name:t,disabled:e.disabled,url:e.url,headers:rpo(e.headers),auth:e.auth==="oauth"?"oauth":void 0,cwd:e.cwd,timeoutMs:e.timeoutMs}}let i=e.command;if(!i)throw new Error(`MCP server "${t}" has type "stdio" but no 'command' property`);let o=Array.isArray(e.args)?e.args.map(a=>String(a)):[],s=o.length>0?`${i} ${o.join(" ")}`:i;return e.useShellInterpolation===!1&&n.push(`MCP server "${t}": useShellInterpolation:false is ignored; plugin stdio servers always shell-wrap (V2 parity)`),{type:"stdio",name:t,disabled:e.disabled,command:s,args:[],env:rpo(e.env),cwd:e.cwd,timeoutMs:e.timeoutMs,useShellInterpolation:!0}}function ipo(t,e){if(!t)return;let n={};for(let[r,i]of Object.entries(t))n[r]=MUe(i,e);return n}function FKl(t,e){return t.type==="stdio"?{...t,command:MUe(t.command,e),env:ipo(t.env,e),cwd:t.cwd?MUe(t.cwd,e):void 0}:{...t,url:MUe(t.url,e),headers:ipo(t.headers,e),cwd:t.cwd?MUe(t.cwd,e):void 0}}function VKl(t,e){let n=TKl(t,".mcp.json"),r;try{r=BKl(n)}catch(i){if(i?.code==="ENOENT")return;e.push(`failed to stat .mcp.json: ${i.message}`);return}if(r.isSymbolicLink()){e.push(".mcp.json is a symlink; refusing to follow it out of the plugin root");return}if(!r.isFile()){e.push(".mcp.json is not a regular file; skipping");return}try{let i=npo(t),o=npo(n),s=NKl(i,o);if(s.startsWith("..")||xKl(s)){e.push(".mcp.json resolves outside the plugin root; skipping");return}}catch(i){e.push(`failed to resolve .mcp.json real path: ${i.message}`);return}try{return wKl(n,"utf-8")}catch(i){e.push(`failed to read .mcp.json: ${i.message}`);return}}function opo(t){let e=[],n=VKl(t.root,e);if(n===void 0)return{servers:[],diagnostics:e};let r;try{r=JSON.parse(n)}catch(s){return e.push(`failed to parse .mcp.json: ${s.message}`),{servers:[],diagnostics:e}}if(!T2n(r))return e.push(".mcp.json must be a JSON object"),{servers:[],diagnostics:e};let i=r.mcpServers;if(!T2n(i))return e.push('.mcp.json must contain an "mcpServers" object'),{servers:[],diagnostics:e};let o=[];for(let[s,a]of Object.entries(i)){let l=`${t.id}/${Pbe(s)}`;if(!T2n(a)){e.push(`MCP server "${l}" must be a JSON object`);continue}try{let c=DKl(l,a,e);o.push(FKl(c,t.root))}catch(c){e.push(c instanceof Error?c.message:String(c))}}return{servers:o,diagnostics:e}}var kKl,spo,apo=I(()=>{"use strict";cyt();kKl=["CLAUDE_PLUGIN_ROOT","AUGMENT_PLUGIN_ROOT","AUGGIE_PLUGIN_ROOT"];spo="hermes:mcp:register-server-source"});function lpo(t,e){let n=ol.create(t,e),r=n.getEnabledPlugins(),i=n.drainErrors().map(({scope:o,error:s})=>`failed to load ${o} settings: ${s.message}; enabledPlugins entries from this scope will be ignored`);return{enabled:r,diagnostics:i}}var cpo=I(()=>{"use strict";ad()});var upo,dpo=I(()=>{"use strict";upo="hermes:subagents:register-agent-source"});import{join as Wbe}from"node:path";import{existsSync as MKl,readdirSync as GKl,statSync as UKl}from"node:fs";function Q2n(t){RD=[],k2n=[],dyt=[],N2n=[],GUe=[];let e=!1,n,r=new Map,i,o,s=new Map,a;t.events.on(gft,x=>{n=x.register}),t.events.on(upo,x=>{i=x.register}),t.events.on(spo,x=>{a=x.registerServerSource});function l(x,w){let{enabled:F,diagnostics:T}=lpo(x,w),D=Wbe(T7(),"plugins","marketplaces"),Q=Wbe(w,"plugins","marketplaces"),k=zdo([D,Q],F);for(let W of k.shadowedPlugins)Gw.debug(`plugin "${W.id}" from ${W.shadowedRoot} is shadowed by the higher-precedence root ${W.winnerRoot}`);return k.globalDiagnostics=[...T,...k.globalDiagnostics],RD=k.plugins,k2n=k.globalDiagnostics,e=!0,k}function c(x,w){e||l(x,w)}function u(){let x=new Map,w=new Map;dyt=[];let F=[...RD.filter(T=>T.enabled)].sort((T,D)=>T.id.localeCompare(D.id));for(let T of F){let{agents:D,diagnostics:Q}=epo(T);for(let k of Q)Gw.warn(`[${T.id}] ${k}`),dyt.push({type:"warning",message:`[${T.id}] ${k}`,path:T.root});for(let[k,W]of D)d(T.id,k,W,x,w)}s=x}function d(x,w,F,T,D){let Q=w.toLowerCase(),k=D.get(Q);if(k){let W=k.name===w?`"${w}"`:`"${w}" (case-insensitive collision with "${k.name}")`;Gw.warn(`[${x}] plugin-contributed agent ${W} shadowed by earlier plugin ${k.pluginId}; ignoring`);return}jdo.includes(Q)&&Gw.warn(`[${x}] plugin-contributed agent "${w}" shadows the built-in default agent of the same name; the plugin's definition will be used for every Agent-tool invocation across this session`),T.set(w,F),D.set(Q,{pluginId:x,name:w})}function p(){if(!i)return;o?.(),o=i({getAgents:()=>s,getDiagnostics:()=>dyt})}function A(){let x=[];GUe=[];let w=[...RD.filter(F=>F.enabled)].sort((F,T)=>F.id.localeCompare(T.id));for(let F of w){let{servers:T,diagnostics:D}=opo(F);for(let Q of D)Gw.warn(`[${F.id}] ${Q}`),GUe.push({type:"warning",message:`[${F.id}] ${Q}`,path:F.root});for(let Q of T)x.push(Q)}N2n=x}function g(){if(!a)return;a({source:"plugin",getServers:()=>N2n,getDiagnostics:()=>GUe})}function m(){if(n){for(let x of r.values())x();r.clear();for(let x of RD){if(!x.enabled)continue;let w=OKl(x);r.set(x.id,n(w))}}}function h(){for(let x of r.values())x();r.clear()}function f(){let x=[],w=[];for(let F of RD){if(!F.enabled){for(let T of F.diagnostics)Gw.debug(`[${F.id}] ${T}`);continue}F.commandsDir&&w.push(F.commandsDir),F.skillsDir&&x.push(F.skillsDir);for(let T of F.diagnostics)Gw.warn(`[${F.id}] ${T}`)}return{skillPaths:x,promptPaths:w}}t.on("resources_discover",x=>{e=!1;let w=l(x.cwd,x.agentDir),{skillPaths:F,promptPaths:T}=f();for(let Q of w.globalDiagnostics)Gw.warn(Q);let D=RD.filter(Q=>Q.enabled).length;return RD.length>0&&Gw.info(`Discovered ${RD.length} plugin(s); ${D} enabled`),m(),u(),p(),v(),A(),g(),R(),{skillPaths:F,promptPaths:T}}),t.on("session_start",(x,w)=>{c(w.cwd,w.agentDir),m(),u(),p(),_(),A(),g();let F=Wbe(T7(),"plugins","marketplaces"),T=Wbe(w.agentDir,"plugins","marketplaces");Pdo([F,T]).then(D=>{D&&(e=!1,l(w.cwd,w.agentDir),m(),u(),p(),A(),g())}).catch(D=>{Gw.debug(`background plugin source fetch failed: ${D instanceof Error?D.message:String(D)}`)})}),t.on("session_shutdown",()=>{h(),o?.(),o=void 0,s=new Map});let E=!1,b=!1,y=!1;function _(){!n&&!E&&(E=!0,Gw.warn("@hermes/hooks did not register a hook listener; plugin hooks will not run. This usually means @hermes/hooks was removed from the built-in extension list."))}function v(){!i&&!b&&(b=!0,Gw.debug("@hermes/subagents did not register an agent source; plugin-contributed subagents will not be available (expected when --disable-subagents is set)."))}function R(){!a&&!y&&(y=!0,Gw.debug("@hermes/mcp did not register a server source; plugin-contributed MCP servers will not be loaded."))}}function OKl(t){return{source:t.id,isEnabled:()=>t.enabled,getConfig:()=>t.hooksConfig,env:LKl(t.root),postToolUsePrefix:`Plugin ${t.id} hook`,backgroundLabel:e=>`[${t.id}] ${e} hook`,blockedFallbackReason:"Blocked by plugin hook"}}function LKl(t){return{PLUGIN_ROOT:t,CLAUDE_PLUGIN_ROOT:t}}function Uz(){return RD}function UUe(t){return Wbe(t,"plugins","marketplaces")}function pyt(t){let e=UUe(t);if(!MKl(e))return[];let n;try{n=GKl(e)}catch{return[]}let r=[];for(let i of n){let o=Wbe(e,i);try{if(!UKl(o).isDirectory())continue}catch{continue}let{manifest:s}=zne(o);if(!s)continue;let a=typeof s.name=="string"&&s.name.length>0?s.name:i;r.push({dir:i,name:a,path:o})}return r}function dU(){let t=[];for(let e of RD)for(let n of e.diagnostics)t.push({type:"warning",message:`[${e.id}] ${n}`,path:e.root});for(let e of k2n)t.push({type:"warning",message:e});for(let e of GUe)t.push(e);return t}var Gw,RD,k2n,dyt,N2n,GUe,Zbe=I(()=>{"use strict";ad();Tte();Lr();tpo();cyt();lyt();ayt();apo();cpo();dpo();lyt();Gw=mn.child({prefix:"pi-plugins"}),RD=[],k2n=[],dyt=[],N2n=[],GUe=[]});function D2n(){let t=globalThis;return t[ppo]??=new Map,t[ppo]}function Apo(){return[...D2n().values()]}function gpo(t){return D2n().get(t)}function mpo(t){let e=D2n();e.clear();for(let n of t)e.set(n.name,n)}var ppo,F2n=I(()=>{"use strict";ppo=Symbol.for("__hermes_cloud_tool_registry__")});function PKl(t){return{...t,execute:(e,n,r,i,o)=>{let s=gpo(t.name);if(!s)throw new Error(`Cloud tool "${t.name}" is unavailable`);return s.execute(e,n,r,i,o)}}}function V2n(t){for(let e of Apo())t.registerTool(PKl(e))}var hpo=I(()=>{"use strict";F2n()});function Ayt(){let t=globalThis;return t[fpo]??=new Map,t[fpo]}function bpo(){return[...Ayt().values()]}function Cpo(t){return Ayt().get(t)}function Oz(t){Ayt().set(t.name,t)}function ypo(t,e){let n=Ayt();(e===void 0||n.get(t)===e)&&n.delete(t)}function Ipo(t){Reflect.set(t,Epo,!0)}function gyt(t){return Reflect.get(t,Epo)===!0}var fpo,Epo,Hne=I(()=>{"use strict";fpo=Symbol.for("__hermes_mcp_tool_registry__"),Epo=Symbol.for("__hermes_mcp_extension_factory__")});function WKl(t){return{...t,execute:(e,n,r,i,o)=>{let s=Cpo(t.name);if(!s)throw new Error(`MCP tool "${t.name}" is unavailable`);return s.execute(e,n,r,i,o)}}}function myt(t){for(let e of bpo())t.registerTool(WKl(e))}var Spo=I(()=>{"use strict";Hne()});import{existsSync as ZKl}from"node:fs";import{homedir as OUe}from"node:os";import{dirname as M2n,join as fN,resolve as _po}from"node:path";import{fileURLToPath as XKl}from"node:url";function JKl(){let t=`${G2n}\0${process.execPath||""}`.toLowerCase();return t.includes("/pnpm/")||t.includes("/.pnpm/")||t.includes("\\pnpm\\")?"pnpm":t.includes("/yarn/")||t.includes("/.yarn/")||t.includes("\\yarn\\")?"yarn":t.includes("/npm/")||t.includes("/node_modules/")||t.includes("\\npm\\")?"npm":"unknown"}function Rpo(t,e){switch(JKl()){case"pnpm":return`Run: pnpm install -g ${t}`;case"yarn":return`Run: yarn global add ${t}`;case"npm":return`Run: npm install -g ${t}`;default:return`Run: npm install -g ${t}`}}function vpo(){let t=process.env.PI_PACKAGE_DIR;if(t)return t==="~"?OUe():t.startsWith("~/")?OUe()+t.slice(1):t;let e=G2n;for(;e!==M2n(e);){if(ZKl(fN(e,"package.json")))return e;e=M2n(e)}return G2n}function Xbe(){return _po(fN(vpo(),"docs"))}function hyt(){return _po(fN(vpo(),"CHANGELOG.md"))}function Tpo(t){return`${process.env.PI_SHARE_VIEWER_URL||HKl}#${t}`}function Npo(t){return t==="~"?OUe():t.startsWith("~/")?OUe()+t.slice(1):t}function vD(){let t=process.env.AUGMENT_CACHE_DIR;return t?Npo(t):fN(OUe(),".augment")}function Co(){let t=process.env[WUe];return t?Npo(t):vD()}function ZUe(){return fN(Co(),"themes")}function kpo(){return fN(Co(),"models.json")}function U2n(){return fN(Co(),"auth.json")}function Qpo(){return fN(Co(),"settings.json")}function fyt(){return vD()}function Ybe(){return fN(Co(),"bin")}function Dpo(){return fN(Co(),"prompts")}function Fpo(){return fN(Co(),LUe)}function Vpo(){return fN(Co(),`${Gs}-debug.log`)}var YKl,G2n,Gs,ql,LUe,PUe,Bpo,zKl,Qg,wpo,xpo,WUe,HKl,Ju=I(()=>{"use strict";bAn();YKl=XKl(import.meta.url),G2n=M2n(YKl);Gs=uJ.piConfig?.name||"pi",ql=uJ.piConfig?.configDir||".augment",LUe="sessions-v2",PUe="auggie",Bpo="Auggie Coding Agent",zKl="1.2.0-prerelease.202608191711",Qg=zKl??uJ.version,wpo="7a13aef9d8cf816639742afae45b4fd6571b757a",xpo="2026-08-20T00:11:17Z",WUe=`${Gs.toUpperCase()}_CODING_AGENT_DIR`,HKl="https://pi.dev/session/"});var Gpo,Mpo=I(()=>{Gpo={$schema:"https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",name:"dark",vars:{cyan:"#00d7ff",blue:"#5f87ff",green:"#b5bd68",red:"#cc6666",yellow:"#ffff00",gray:"#808080",dimGray:"#666666",darkGray:"#505050",accent:"#8abeb7",selectedBg:"#3a3a4a",userMsgBg:"#343541",toolPendingBg:"#282832",toolSuccessBg:"#283228",toolErrorBg:"#3c2828",customMsgBg:"#2d2838"},colors:{accent:"accent",border:"blue",borderAccent:"cyan",borderMuted:"darkGray",success:"green",error:"red",warning:"yellow",muted:"gray",dim:"dimGray",text:"",thinkingText:"gray",selectedBg:"selectedBg",userMessageBg:"userMsgBg",userMessageText:"",customMessageBg:"customMsgBg",customMessageText:"",customMessageLabel:"#9575cd",toolPendingBg:"toolPendingBg",toolSuccessBg:"toolSuccessBg",toolErrorBg:"toolErrorBg",toolTitle:"#b294bb",toolOutput:"gray",mdHeading:"#f0c674",mdLink:"#81a2be",mdLinkUrl:"dimGray",mdCode:"accent",mdCodeBlock:"green",mdCodeBlockBorder:"gray",mdQuote:"gray",mdQuoteBorder:"gray",mdHr:"gray",mdListBullet:"accent",toolDiffAdded:"green",toolDiffRemoved:"red",toolDiffContext:"gray",syntaxComment:"#6A9955",syntaxKeyword:"#569CD6",syntaxFunction:"#DCDCAA",syntaxVariable:"#9CDCFE",syntaxString:"#CE9178",syntaxNumber:"#B5CEA8",syntaxType:"#4EC9B0",syntaxOperator:"#D4D4D4",syntaxPunctuation:"#D4D4D4",thinkingOff:"darkGray",thinkingMinimal:"#6e6e6e",thinkingLow:"#5f87af",thinkingMedium:"#81a2be",thinkingHigh:"#b294bb",thinkingXhigh:"#d183e8",bashMode:"green"},export:{pageBg:"#18181e",cardBg:"#1e1e24",infoBg:"#3c3728"}}});var Opo,Upo=I(()=>{Opo={$schema:"https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",name:"light",vars:{teal:"#5a8080",blue:"#547da7",green:"#588458",red:"#aa5555",yellow:"#9a7326",mediumGray:"#6c6c6c",dimGray:"#767676",lightGray:"#b0b0b0",selectedBg:"#d0d0e0",userMsgBg:"#e8e8e8",toolPendingBg:"#e8e8f0",toolSuccessBg:"#e8f0e8",toolErrorBg:"#f0e8e8",customMsgBg:"#ede7f6"},colors:{accent:"teal",border:"blue",borderAccent:"teal",borderMuted:"lightGray",success:"green",error:"red",warning:"yellow",muted:"mediumGray",dim:"dimGray",text:"",thinkingText:"mediumGray",selectedBg:"selectedBg",userMessageBg:"userMsgBg",userMessageText:"",customMessageBg:"customMsgBg",customMessageText:"",customMessageLabel:"#7e57c2",toolPendingBg:"toolPendingBg",toolSuccessBg:"toolSuccessBg",toolErrorBg:"toolErrorBg",toolTitle:"",toolOutput:"mediumGray",mdHeading:"yellow",mdLink:"blue",mdLinkUrl:"dimGray",mdCode:"teal",mdCodeBlock:"green",mdCodeBlockBorder:"mediumGray",mdQuote:"mediumGray",mdQuoteBorder:"mediumGray",mdHr:"mediumGray",mdListBullet:"green",toolDiffAdded:"green",toolDiffRemoved:"red",toolDiffContext:"mediumGray",syntaxComment:"#008000",syntaxKeyword:"#0000FF",syntaxFunction:"#795E26",syntaxVariable:"#001080",syntaxString:"#A31515",syntaxNumber:"#098658",syntaxType:"#267F99",syntaxOperator:"#000000",syntaxPunctuation:"#000000",thinkingOff:"lightGray",thinkingMinimal:"#767676",thinkingLow:"blue",thinkingMedium:"teal",thinkingHigh:"#875f87",thinkingXhigh:"#8b008b",bashMode:"green"},export:{pageBg:"#f8f8f8",cardBg:"#ffffff",infoBg:"#fffae6"}}});import*as f_ from"node:fs";import*as byt from"node:path";function qKl(){let t=process.env.COLORTERM;if(t==="truecolor"||t==="24bit"||process.env.WT_SESSION)return"truecolor";let e=process.env.TERM||"";return e==="dumb"||e===""||e==="linux"||process.env.TERM_PROGRAM==="Apple_Terminal"||e==="screen"||e.startsWith("screen-")||e.startsWith("screen.")?"256color":"truecolor"}function W2n(t){let e=t.replace("#","");if(e.length!==6)throw new Error(`Invalid hex color: ${t}`);let n=Number.parseInt(e.slice(0,2),16),r=Number.parseInt(e.slice(2,4),16),i=Number.parseInt(e.slice(4,6),16);if(Number.isNaN(n)||Number.isNaN(r)||Number.isNaN(i))throw new Error(`Invalid hex color: ${t}`);return{r:n,g:r,b:i}}function O2n(t){let e=Number.POSITIVE_INFINITY,n=0;for(let[r,i]of Eyt.entries()){let o=Math.abs(t-i);o<e&&(e=o,n=r)}return n}function e8l(t){let e=Number.POSITIVE_INFINITY,n=0;for(let[r,i]of Zpo.entries()){let o=Math.abs(t-i);o<e&&(e=o,n=r)}return n}function Ppo(t,e,n,r,i,o){let s=t-r,a=e-i,l=n-o;return s*s*.299+a*a*.587+l*l*.114}function t8l(t,e,n){let r=O2n(t),i=O2n(e),o=O2n(n),s=Eyt[r]??0,a=Eyt[i]??0,l=Eyt[o]??0,c=16+36*r+6*i+o,u=Ppo(t,e,n,s,a,l),d=Math.round(.299*t+.587*e+.114*n),p=e8l(d),A=Zpo[p]??0,g=232+p,m=Ppo(t,e,n,A,A,A),h=Math.max(t,e,n),f=Math.min(t,e,n);return h-f<10&&m<u?g:c}function Xpo(t){let{r:e,g:n,b:r}=W2n(t);return t8l(e,n,r)}function n8l(t,e){if(t==="")return"\x1B[39m";if(typeof t=="number")return`\x1B[38;5;${t}m`;if(t.startsWith("#")){if(e==="truecolor"){let{r,g:i,b:o}=W2n(t);return`\x1B[38;2;${r};${i};${o}m`}return`\x1B[38;5;${Xpo(t)}m`}throw new Error(`Invalid color value: ${t}`)}function r8l(t,e){if(t==="")return"\x1B[49m";if(typeof t=="number")return`\x1B[48;5;${t}m`;if(t.startsWith("#")){if(e==="truecolor"){let{r,g:i,b:o}=W2n(t);return`\x1B[48;2;${r};${i};${o}m`}return`\x1B[48;5;${Xpo(t)}m`}throw new Error(`Invalid color value: ${t}`)}function Z2n(t,e,n=new Set){if(typeof t=="number"||t===""||t.startsWith("#"))return t;if(n.has(t))throw new Error(`Circular variable reference detected: ${t}`);if(!(t in e))throw new Error(`Variable reference not found: ${t}`);n.add(t);let r=e[t];if(r===void 0)throw new Error(`Variable reference not found: ${t}`);return Z2n(r,e,n)}function Ypo(t,e={}){let n={};for(let[r,i]of Object.entries(t))n[r]=Z2n(i,e);return n}function Cyt(){let t=new Set(Object.keys(X2n)),e=ZUe();if(f_.existsSync(e)){let n=f_.readdirSync(e);for(let r of n)r.endsWith(".json")&&t.add(r.slice(0,-5))}for(let n of ere.keys())t.add(n);return Array.from(t).sort()}function Jpo(){let t=ZUe(),e=[];for(let n of Object.keys(X2n))e.push({name:n,path:void 0});if(f_.existsSync(t)){for(let n of f_.readdirSync(t))if(n.endsWith(".json")){let r=n.slice(0,-5);e.some(i=>i.name===r)||e.push({name:r,path:byt.join(t,n)})}}for(let[n,r]of ere.entries())e.some(i=>i.name===n)||e.push({name:n,path:r.sourcePath});return e.sort((n,r)=>n.name.localeCompare(r.name))}function i8l(t,e){if(!Lpo.Check(e)){let n=Array.from(Lpo.Errors(e)),r=[],i=[];for(let s of n){let l=s.path.match(/^\/colors\/(\w+)$/)?.[1];l&&s.message.includes("Required")?r.push(l):i.push(` - ${s.path}: ${s.message}`)}let o=`Invalid theme "${t}":
|
|
6727
|
+
`)}`.slice(0,R4l)}function V4l(t){let e;t.category!=="daemon.connection.incident"&&t.error instanceof Error&&(e=t.error);let n=e?F4l(e,t.category):void 0,r=n,i=n===void 0,o=new Error(t.category);return o.name=t.category,o.stack=n,Zne(e)&&IUe(o),{error:o,limiterIdentity:r,synthetic:i}}function Quo(t){switch(t.category){case"daemon.startup.failure":return t.stage;case"daemon.connection.incident":return t.incident;case"daemon.command.failure":return Uuo(t.commandType);case"daemon.child.start_failure":return t.stage;case"daemon.child.runtime_failure":return t.failure;case"daemon.ownership.compromised":return"lease"}}function M4l(t,e){let n=t?.values?.[0]?.stacktrace?.frames?.slice(-Fuo).map(r=>{let i=r.debug_id;return{colno:r.colno,...i===void 0?{}:{debug_id:i},filename:r.filename?Ouo(r.filename):void 0,function:r.function,in_app:r.in_app,lineno:r.lineno}});if(n)return{values:[{stacktrace:{frames:n},type:e,value:e}]}}function G4l(t){switch(t.category){case"daemon.startup.failure":return{stage:t.stage};case"daemon.connection.incident":{let e=D4l(t.reconnectAttempt);return{incident:t.incident,...e===void 0?{}:{reconnect_attempt:e}}}case"daemon.command.failure":return{command_type:Uuo(t.commandType)};case"daemon.child.start_failure":return U4l(t);case"daemon.child.runtime_failure":return O4l(t);case"daemon.ownership.compromised":return{state:"compromised"}}}function U4l(t){return{child_id:t.childId,stage:t.stage,use_worktree:t.useWorktree}}function O4l(t){return{child_id:t.childId,failure:t.failure,...kuo(t.exitCode)===void 0?{}:{exit_code:kuo(t.exitCode)},...t.exitReason===void 0?{}:{exit_reason:t.exitReason},...Nuo(t.signal)===void 0?{}:{signal:Nuo(t.signal)}}}function L4l(t){return t==="daemon.child.start_failure"||t==="daemon.child.runtime_failure"}function P4l(t){if(t.category==="daemon.child.start_failure"||t.category==="daemon.child.runtime_failure")return t.childId}function Duo(t,e){switch(t){case"daemon.startup":{let n=e;return n.vmId?{"daemon.vm_id":n.vmId}:{}}case"daemon.ws.connect":return{"daemon.connection":"initial"};case"daemon.child.start":{let n=e;return{"daemon.child.id":n.childId,...n.stage===void 0?{}:{"daemon.child.stage":n.stage},"daemon.child.use_worktree":n.useWorktree,conversation_id:n.childId,session_id:n.childId}}}}function W4l(t,e,n){let r={"daemon.issue":e};for(let i of["app_mode","cli_version","tenant","daemon.vm_id"]){let o=t.tags?.[i];o!==void 0&&(r[i]=String(o))}if(L4l(e))for(let i of Muo){let o=t.tags?.[i];o!==void 0&&(r[i]=String(o))}return{breadcrumbs:[],contexts:t.contexts?.daemon?{daemon:t.contexts.daemon}:void 0,environment:t.environment,event_id:t.event_id,exception:M4l(t.exception,e),fingerprint:n?["daemon",e,n]:void 0,level:"error",platform:t.platform,release:t.release,tags:r,timestamp:t.timestamp}}function Z4l(t,e){let n=!1;return{setContext(r){n||e(r)},end(r){n||(n=!0,t.setStatus({code:r==="ok"?1:2}),t.end())}}}function Luo(t){if(!t)return Qw;let e;return WJ("daemon",{scope:"process"}),{setContext(n){e=n.vmId,Gh("daemon.vm_id",n.vmId),WJ("daemon",{scope:"process",vm_id:n.vmId})},startSpan(n,r){let i=Duo(n,r),o=ts({name:n,op:n,attributes:i});return Z4l(o,s=>{for(let[a,l]of Object.entries(Duo(n,{...r,...s})))o.setAttribute(a,l)})},reportError(n){let r=n.error;if(Zne(r)){IUe(r);return}let i=V4l(n),o=`${n.category}:${Q4l(i.limiterIdentity??Quo(n))}`;if(n.category!=="daemon.connection.incident"&&!k4l.shouldCapture(n.category,o)){IUe(r);return}IUe(r),IUe(i.error),Qa(s=>{s.clearBreadcrumbs(),s.setTag("daemon.issue",n.category);let a=P4l(n);if(a)for(let c of Muo)s.setTag(c,a);s.setContext("daemon",{...G4l(n),...e?{vm_id:e}:{}});let l=i.synthetic?Quo(n):void 0;s.addEventProcessor(c=>W4l(c,n.category,l)),fo(i.error)})}}}function Puo(t){return t?(Tuo??=Promise.resolve().then(()=>ZJ(b4l)).then(()=>{},()=>{}),Tuo):Promise.resolve()}var b4l,C4l,y4l,I4l,S4l,_4l,R4l,Fuo,v4l,B4l,w4l,x4l,Vuo,Muo,T4l,N4l,Guo,Tuo,ONn,k4l,LNn=I(()=>{"use strict";_D();iI();b4l=2e3,C4l=1800*1e3,y4l=512,I4l=128,S4l=64*1024,_4l=64*1024,R4l=16*1024,Fuo=64,v4l=/^[\w.$<>[\] -]{1,160}$/u,B4l=/^\s*at\s+(?:(.*?)\s+\()?(.+?):(\d+):(\d+)\)?$/u,w4l=/(?:^|\/)(?:auggie-v2\.mjs|cli\.js)$/u,x4l=/^node:[a-z0-9_./-]+$/u,Vuo="unknown",Muo=["daemon.child.id","session_id","conversation_id"],T4l=new Set(["CONNECTED","EXECUTE_DAEMON_DIFF_OP","EXECUTE_DAEMON_FS_OP","KEEPALIVE","OPEN_PTY_SESSION","QUIT_DAEMON","START_AGENT","STOP_AGENT"]),N4l=new Set(["SIGABRT","SIGBUS","SIGFPE","SIGILL","SIGKILL","SIGSEGV","SIGTERM"]),Guo=new WeakSet,ONn=class{constructor(){this.entries=new Map}get size(){return this.entries.size}clear(){this.entries.clear()}count(e){let n=0;for(let r of this.entries.values())r.category===e&&n++;return n}shouldCapture(e,n,r=Date.now()){return this.pruneExpired(r),this.entries.get(n)?(this.entries.delete(n),this.entries.set(n,{category:e,seenAt:r}),!1):(this.evictOldestInCategory(e),this.evictOldestGlobal(),this.entries.set(n,{category:e,seenAt:r}),!0)}pruneExpired(e){for(let[n,r]of this.entries)e-r.seenAt>=C4l&&this.entries.delete(n)}evictOldestInCategory(e){let n=0,r;for(let[i,o]of this.entries)o.category===e&&(n++,r??=i);n>=I4l&&r&&this.entries.delete(r)}evictOldestGlobal(){if(this.entries.size<y4l)return;let e=this.entries.keys().next().value;typeof e=="string"&&this.entries.delete(e)}},k4l=new ONn});import Yuo from"node:v8";function Dbe(t){if(kbe){AI.debug("initSentryForCloudService: skipped (already initialized)");return}try{let e=rzl();if(!e){AI.info("initSentryForCloudService: skipped (AUGGIE_V2_SENTRY_DSN is empty, Sentry disabled)"),kbe=!0;return}let n=izl(),r=azl(t.tenantUrl),i=lzl(t.tenantUrl);qFe({dsn:e,release:t.cliVersion,environment:r,sendDefaultPii:!1,sampleRate:1,tracesSampleRate:n,integrations:o=>o.filter(s=>s.name!=="Modules"&&s.name!=="Http"&&s.name!=="Undici")}),Gh("app_mode",t.appMode??"cloud-service"),Gh("cli_version",t.cliVersion),i&&(Gh("tenant",i),FNn({agentId:"",vmId:"",tenant:i})),t.cloudId&&Huo(t.cloudId,""),XCt=!0,kbe=!0,AI.info(`Sentry initialized: app_mode=${t.appMode??"cloud-service"}, env=${r}, release=${t.cliVersion}, tenant=${i??"<unknown>"}, tracesSampleRate=${n}`)}catch(e){AI.warn(`initSentryForCloudService: failed: ${e}`),kbe=!0}}function Juo(){return XCt}function zuo(t){if(kbe&&(t.id||t.email))try{Qhe({id:t.id,email:t.email})}catch(e){AI.warn(`setSentryUserContext: failed: ${e}`)}}function Huo(t,e){Gh("cloud.id",t),Gh("session_id",t),Gh("conversation_id",t),e&&Gh("vm_id",e),Dhe(t),FNn({agentId:t,vmId:e})}function Kuo(t){if(kbe)try{Huo(t.agentId,t.vmId)}catch(e){AI.warn(`setSentryCloudSessionContext: failed: ${e}`)}}function Fbe(){if(Wuo){AI.debug("installCloudServiceProcessHandlers: skipped (already installed)");return}Wuo=!0,process.on("uncaughtException",Y4l),process.on("unhandledRejection",J4l),ezl(),AI.info(`Sentry process handlers installed (flush timeout ${YCt}ms)`)}function K4l(t,e,n){return e<=0?!1:t/e>=n}function juo(t){return Number.isFinite(t)&&t>=H4l}function j4l(){let t=process.env.AUGGIE_V2_SENTRY_HEAP_OOM_CONSECUTIVE;if(!t)return WNn;let e=Number.parseInt(t,10);return!Number.isFinite(e)||e<1?WNn:e}function $4l(){let t=process.env.AUGGIE_V2_SENTRY_HEAP_OOM_THRESHOLD;if(!t)return PNn;let e=Number.parseFloat(t);return!Number.isFinite(e)||e<=0?PNn:e>1?1:e}function q4l(){let t=process.env.AUGGIE_V2_SENTRY_HEAP_OOM_INTERVAL_MS;if(t===void 0)return Zuo;let e=Number.parseInt(t,10);return Number.isFinite(e)?e<=0?0:e:Zuo}function ezl(){if(Qbe)return;let t=q4l();if(t<=0){AI.info("Heap-OOM watchdog disabled (AUGGIE_V2_SENTRY_HEAP_OOM_INTERVAL_MS <= 0)");return}let e=Yuo.getHeapStatistics().heap_size_limit;if(!juo(e)){AI.info(`Heap-OOM watchdog disabled (v8 heap_size_limit not meaningful: ${e} bytes)`);return}let n=$4l(),r=j4l();Qbe=setInterval(()=>{try{tzl(n,r)}catch(i){AI.warn(`heap-OOM watchdog tick failed: ${i}`)}},t),Qbe.unref?.(),AI.info(`Heap-OOM watchdog started (threshold=${n}, consecutive=${r}, interval=${t}ms)`)}function tzl(t,e){if(Xuo)return;let n=process.memoryUsage().heapUsed,r=Yuo.getHeapStatistics().heap_size_limit;if(!juo(r)||!K4l(n,r,t)){ZCt=0;return}if(ZCt+=1,ZCt<e){AI.warn(`Heap-OOM watchdog: usage above threshold (${ZCt}/${e} consecutive ticks)`);return}Xuo=!0,nzl(n,r,t)}function nzl(t,e,n){let r=Math.round(t/1024/1024),i=Math.round(e/1024/1024),o=Math.round(t/e*100);AI.error(`Heap-OOM watchdog tripped: heapUsed=${r}MiB / limit=${i}MiB (${o}%), threshold=${Math.round(n*100)}%. Reporting to Sentry and exiting.`),Qbe&&(clearInterval(Qbe),Qbe=void 0);try{Qa(s=>{s.setTag("crash.kind","heap_oom"),s.setFingerprint(["heap-oom"]),s.setContext("heap",{heap_used_mb:r,heap_size_limit_mb:i,used_fraction:t/e,threshold:n}),fo(new Error(`JavaScript heap approaching limit: ${r}MiB / ${i}MiB (${o}%)`))})}catch(s){AI.warn(`heap-OOM captureException failed: ${s}`)}cG(YCt).finally(()=>{process.exit(z4l)})}function rzl(){let t=process.env.AUGGIE_V2_SENTRY_DSN;return t===void 0?X4l:t}function izl(){let t=process.env.AUGGIE_V2_SENTRY_TRACES_SAMPLE_RATE;if(!t)return 1;let e=Number.parseFloat(t);return Number.isFinite(e)?e<0?0:e>1?1:e:1}function azl(t){let e=$uo(t);if(!e)return"unknown";let n;try{n=new URL(e).hostname}catch{return"unknown"}if(n.startsWith("localhost")||n.startsWith("127."))return"local";let r=n.split(".")[0]??"";return r.startsWith("test-")||r==="test"?"test":r.includes("staging")?"staging":n.endsWith(szl)||r.startsWith("dev-")||r==="dev"?"dev":n==="api.augmentcode.com"||n.endsWith(ozl)?"production":"unknown"}function lzl(t){let e=$uo(t);if(!e)return;let n;try{n=new URL(e).hostname}catch{return}let r=n.split(".");if(!(r.length<2))return r[0]}function $uo(t){return t||czl()}function czl(){let t=process.env.AUGMENT_SESSION_AUTH;if(t)try{let e=JSON.parse(t);if(typeof e.tenantURL=="string"&&e.tenantURL.length>0)return e.tenantURL}catch{}}var AI,X4l,kbe,XCt,YCt,Wuo,Y4l,J4l,PNn,Zuo,z4l,WNn,H4l,Xuo,Qbe,ZCt,ozl,szl,Vbe=I(()=>{"use strict";Lr();iI();LCt();LNn();AI=mn.child({prefix:"sentry-init"}),X4l="https://cf0b4ce9e43e297fcf7328555628364a@o4509262619082752.ingest.us.sentry.io/4510925971914752",kbe=!1,XCt=!1;YCt=2e3,Wuo=!1,Y4l=t=>{AI.error(`uncaughtException: ${t}`);try{Zne(t)||fo(t)}catch{}(XCt?cG(YCt):Promise.resolve(!0)).finally(()=>{process.exit(1)})},J4l=t=>{AI.error(`unhandledRejection: ${t}`);try{let n=t instanceof Error?t:new Error(String(t));Zne(n)||fo(n)}catch{}(XCt?cG(YCt):Promise.resolve(!0)).finally(()=>{process.exit(1)})};PNn=.9,Zuo=2e3,z4l=12,WNn=3,H4l=64*1024*1024,Xuo=!1,ZCt=0;ozl=".api.augmentcode.com",szl=".us-central.api.augmentcode.com"});function ZNn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function JCt(t,...e){for(let n of e){let r=t[n];if(ZNn(r))return r}}function Xne(t,...e){for(let n of e){let r=t[n];if(typeof r=="string")return r}}function pzl(t){if(typeof t=="string")return t.trim().length>0?{kind:"text",text:t}:null;if(!ZNn(t))return null;let e=ZNn(t.block)?t.block:t,n=JCt(e,"text","Text");if(n){let s=Xne(n,"text");if(s!==void 0&&s.trim().length>0)return{kind:"text",text:s}}let r=JCt(e,"tool_use","toolUse","ToolUse");if(r){let s=Xne(r,"id"),a=Xne(r,"name");if(!s||!a)return null;let l=Xne(r,"input");return{kind:"tool_use",toolUseId:s,toolName:a,inputJson:l&&l.trim().length>0?l:"{}"}}let i=JCt(e,"tool_result","toolResult","ToolResult");if(i){let s=Xne(i,"tool_use_id","toolUseId");if(!s)return null;let a=i.is_error??i.isError;return{kind:"tool_result",toolUseId:s,content:Xne(i,"content")??"",isError:typeof a=="boolean"?a:!1}}let o=JCt(e,"thinking","Thinking");if(o){let s=Xne(o,"content");if(s!==void 0)return{kind:"thinking",content:s}}return null}function quo(t){if(!Array.isArray(t.content))return[];let e=[];for(let n of t.content){let r=pzl(n);r!==null&&e.push(r)}return e}function Azl(t){let e=[],n=[];for(let r of t)if(r.kind==="text"){if(r.text.trim().length===0)continue;n.push(r.text),e.push({type:pbt,text_node:{content:r.text}})}else r.kind==="tool_result"&&e.push({type:y1n,tool_result_node:{content:r.content,is_error:r.isError}});return{requestNodes:e,requestText:n.join("")}}function gzl(t){let e=[],n=[],r=[],i=()=>{if(r.length===0)return;let o=r.join("");r.length=0,o.trim().length!==0&&e.push({type:Abt,content:o})};for(let o of t)if(o.kind==="text"){if(o.text.trim().length===0)continue;n.push(o.text),r.push(o.text)}else o.kind==="tool_use"?(i(),e.push({type:I1n,content:"",tool_use:{tool_name:o.toolName,input_json:o.inputJson}})):o.kind==="thinking"&&(i(),e.push({type:S1n,content:o.content,thinking:{content:o.content}}));return i(),{responseNodes:e,responseText:n.join("")}}function mzl(t){let e=[];for(let n of t)if(n.role==="user")e.push({user:n,assistants:[]});else if(n.role==="assistant"){let r=e.at(-1);r?r.assistants.push(n):e.push({assistants:[n]})}return e.map(({user:n,assistants:r})=>{let{requestNodes:i,requestText:o}=Azl(n?quo(n):[]),{responseNodes:s,responseText:a}=gzl(r.flatMap(quo));return{request_message:o,response_text:a,request_id:n?.id??r[0]?.id??"",request_nodes:i,response_nodes:s}})}async function hzl(t){let e=await t.fetchImpl(`${t.baseUrl}cloud-agents/agents/get-messages`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t.apiKey}`,...t.userAgent?{"User-Agent":t.userAgent}:{}},body:JSON.stringify({agent_id:t.agentId,limit:uzl,...t.beforeTimestamp?{before_timestamp:t.beforeTimestamp}:{}})});if(!e.ok)throw new Error(`Fetching cloud-agent chat history failed: ${e.status} ${e.statusText}`);return await e.json()}async function fzl(t){let e=new Set,n=[],r;for(let s=0;s<dzl;s++){let a=await hzl({...t,beforeTimestamp:r}),l=Array.isArray(a.messages)?a.messages:[];n.push(l);let c=Ezl(l,e),u=a.oldest_timestamp;if(a.has_next!==!0||l.length===0||!u||c===0)break;r=u}let i=new Set,o=[];for(let s=n.length-1;s>=0;s--)for(let a of n[s]){let l=a.id;if(l!==void 0){if(i.has(l))continue;i.add(l)}o.push(a)}return o}function Ezl(t,e){let n=0;for(let r of t)(r.id===void 0||!e.has(r.id))&&n++,r.id!==void 0&&e.add(r.id);return n}function XNn(t){let e=t.fetchImpl??globalThis.fetch.bind(globalThis);return async n=>{let r=await t.readCredentials();if(!r)throw new Error("view-session requires an Augment login. Please sign in and try again.");let i=r.apiUrl.endsWith("/")?r.apiUrl:`${r.apiUrl}/`,o=await fzl({fetchImpl:e,baseUrl:i,apiKey:r.apiKey,userAgent:t.userAgent,agentId:n});return mzl(o)}}var uzl,dzl,edo=I(()=>{"use strict";hbt();uzl=400,dzl=200});import{join as Czl}from"node:path";function yzl(t){return t.map(e=>{if(e.type!=="message")return{type:e.type,id:e.id,parentId:e.parentId};let n=e.message,r=typeof n.content=="string"?n.content:n.content.map(i=>({type:i.type,text:"text"in i?i.text:void 0}));return{type:e.type,id:e.id,parentId:e.parentId,message:{role:n.role,content:r,timestamp:n.timestamp}}})}function Izl(t){if(t instanceof Error){let e=t;return typeof e.status=="number"?String(e.status):typeof e.httpStatus=="number"?String(e.httpStatus):t.message}return String(t)}function Szl(t,e){let n=Izl(t);if(n!=="8"){let r=t instanceof Error?t.message:String(t);e.push({type:"error",message:`Failed to fetch feature flags: ${r}`})}return{flags:Pp(void 0),errorStatus:n}}function _zl(t,e,n){if(t.allowClientFeatureFlagOverrides!==!0)return t;let r=e.getFeatureFlagOverrides();if(!r)return t;try{let i=$6i(r);return q6i(t,i)}catch(i){let o=i instanceof Error?i.message:String(i);return n.push({type:"warning",message:`Failed to parse feature flag overrides, ignoring them: ${o}`}),t}}function Rzl(t){return t.cosmosMultiRepoContextEnabled===!0}function vzl(t){return t.cosmosNestedAgentsMdEnabled===!0}function Bzl(t,e){let{allowDirs:n,denyDirs:r}=t.getIndexingDirsUnion(),i=e?.get("parent-daemon-id"),o=typeof i=="string"&&i.length>0,s=e?.get("cloud-agent"),a=typeof s=="string"&&s.length>0;return{allowDirs:n,denyDirs:r,daemonChild:o&&a,allowIndexingFlag:e?.get("allow-indexing")===!0}}function wzl(t,e){if(!e)return[];let n=[],r=t.getExtensions(),i=new Map;for(let s of r.extensions)for(let[a,l]of s.flags)i.set(a,{type:l.type});let o=[];for(let[s,a]of e){let l=i.get(s);if(!l){o.push(s);continue}if(l.type==="boolean"){r.runtime.flagValues.set(s,!0);continue}if(typeof a=="string"){r.runtime.flagValues.set(s,a);continue}n.push({type:"error",message:`Extension flag "--${s}" requires a value`})}return o.length>0&&n.push({type:"error",message:`Unknown option${o.length===1?"":"s"}: ${o.map(s=>`--${s}`).join(", ")}`}),n}async function SUe(t){let e=t.cwd,n=t.agentDir??ks(),r=t.authStorage??sU.create(Czl(n,"auth.json")),i=t.settingsManager??ol.create(e,n),o=t.modelRegistry??xz.empty(r),s=t.augmentUserAgent??mN();await o.discoverAugmentModels(s);let a=await Of(),l=J4();eqi(l);let c=[],u,d={flags:Pp(void 0)},p,A;if(a){u=await Sg(a.apiKey,a.apiUrl,s);try{let h=await u.getModelConfig();p=h.user?.id,A=h.user?.email,zuo({id:p,email:A});let f=Pp(h.featureFlagsV2);d={flags:_zl(f,i,c)}}catch(h){d=Szl(h,c)}}let g=new cz({...t.resourceLoaderOptions??{},cwd:e,agentDir:n,settingsManager:i,eventBus:l,multiRepoContextEnabled:Rzl(d.flags),nestedContextDescentEnabled:vzl(d.flags)});await g.reload(),a&&u&&(l.emit("augment:api",u),l.emit("augment:credentials",{apiKey:a.apiKey,apiUrl:a.apiUrl,userAgent:s,userId:p,email:A,cliVersion:QA}));let m=g.getExtensions();for(let{name:h,config:f,extensionPath:E}of m.runtime.pendingProviderRegistrations)try{o.registerProvider(h,f)}catch(b){let y=b instanceof Error?b.message:String(b);c.push({type:"error",message:`Extension "${E}" error: ${y}`})}return m.runtime.pendingProviderRegistrations=[],c.push(...wzl(g,t.extensionFlagValues)),l.emit("augment:indexing-policy",Bzl(i,t.extensionFlagValues)),l.emit("augment:feature-flags",d),l.emit("augment:feature-flags-startup-complete",void 0),{cwd:e,agentDir:n,mcpConfigOverride:t.mcpConfigOverride,permissionOverride:t.permissionOverride,authStorage:r,settingsManager:i,modelRegistry:o,resourceLoader:g,diagnostics:c,augmentUserAgent:s,augmentApi:u,featureFlags:d}}function _Ue(t){let e=t.services.augmentApi,n=e?{viewSession:{operations:{fetchChatHistory:_1n({readCredentials:Of,userAgent:t.services.augmentUserAgent}),fetchCloudAgentChatHistory:XNn({readCredentials:Of,userAgent:t.services.augmentUserAgent})}},sessionRetrieval:{operations:{createRequestId:e.createRequestId.bind(e),agentCodebaseRetrieval:e.agentCodebaseRetrieval.bind(e),fetchCloudAgentChatHistory:XNn({readCredentials:Of,userAgent:t.services.augmentUserAgent}),fetchChatHistory:_1n({readCredentials:Of,userAgent:t.services.augmentUserAgent}),getBranch:()=>yzl(t.sessionManager.getBranch())}}}:void 0;return zCt({cwd:t.services.cwd,agentDir:t.services.agentDir,authStorage:t.services.authStorage,settingsManager:t.services.settingsManager,modelRegistry:t.services.modelRegistry,augmentUserAgent:t.services.augmentUserAgent,resourceLoader:t.services.resourceLoader,sessionManager:t.sessionManager,model:t.model,thinkingLevel:t.thinkingLevel,scopedModels:t.scopedModels,tools:t.tools,customTools:t.customTools,sessionStartEvent:t.sessionStartEvent,toolsOptions:n,featureFlags:t.services.featureFlags.flags,mcpConfigOverride:t.services.mcpConfigOverride,permissionOverride:t.services.permissionOverride})}var YNn=I(()=>{"use strict";Zl();ub();UNn();Lu();Vbe();vW();$Ge();sMe();hEe();wMe();kw();VMe();JNn();edo();R1n()});import{copyFileSync as xzl,existsSync as tdo,mkdirSync as Tzl}from"node:fs";import{basename as Nzl,join as kzl,resolve as ndo}from"node:path";function Qzl(t){return typeof t=="string"?t:t.filter(e=>e.type==="text"&&typeof e.text=="string").map(e=>e.text).join("")}async function HCt(t,e){Wne(e.sessionManager,e.cwd);let n=await t(e);return process.cwd()!==n.services.cwd&&process.chdir(n.services.cwd),new RUe(n.session,n.services,t,n.diagnostics,n.modelFallbackMessage,e.usageReporter,e.toolUseReporter,e.enableSentrySummarizationSpans)}var RUe,zNn=I(()=>{"use strict";LCt();wht();eN();yUe();bw();fuo();wuo();YNn();RUe=class{constructor(e,n,r,i=[],o,s,a,l=!1){this._session=e,this._services=n,this.createRuntime=r,this._diagnostics=i,this._modelFallbackMessage=o,this._usageReporter=s,this._toolUseReporter=a,this.enableSentrySummarizationSpans=l,this.attachUsageReporter(),this.attachSummarizationTracer()}attachUsageReporter(){let e=this._usageReporter,n=this._toolUseReporter;if(!(e||n))return;let r=this._session,i=r.sessionId,o=e?vuo({reporter:e,sessionId:i,getSkills:()=>this._services.resourceLoader.getSkills().skills,getChatHistoryLength:()=>r.sessionManager.getBranch().length}):void 0;e&&(e.sessionStarted(i),Buo({reporter:e,sessionId:i,skills:this._services.resourceLoader.getSkills().skills}));let s=n?huo({reporter:n,sessionId:i,getRequestId:()=>r.currentRequestId}):void 0;this._usageUnsubscribe=r.subscribe(a=>{e&&a.type==="message_start"&&qT(a.message.role)&&e.userMessageSent(i),o?.(a),s?.(a)})}attachSummarizationTracer(){if(!this.enableSentrySummarizationSpans)return;let e=muo();this._summarizationSubscriber=e,this._summarizationUnsubscribe=this._session.subscribe(e.handle)}detachSummarizationTracer(){this._summarizationUnsubscribe?.(),this._summarizationUnsubscribe=void 0,this._summarizationSubscriber?.dispose(),this._summarizationSubscriber=void 0}detachUsageReporter(){let e=this._usageReporter,n=this._toolUseReporter;(e||n)&&(this._usageUnsubscribe?.(),this._usageUnsubscribe=void 0,e?.sessionEnded(this._session.sessionId))}get services(){return this._services}get session(){return this._session}get cwd(){return this._services.cwd}get diagnostics(){return this._diagnostics}get modelFallbackMessage(){return this._modelFallbackMessage}async emitBeforeSwitch(e,n){let r=this.session.extensionRunner;return r?.hasHandlers("session_before_switch")?{cancelled:(await r.emit({type:"session_before_switch",reason:e,targetSessionFile:n}))?.cancel===!0}:{cancelled:!1}}async emitBeforeFork(e){let n=this.session.extensionRunner;return n?.hasHandlers("session_before_fork")?{cancelled:(await n.emit({type:"session_before_fork",entryId:e}))?.cancel===!0}:{cancelled:!1}}async teardownCurrent(){this.detachUsageReporter(),this.detachSummarizationTracer(),await cMe(this.session.extensionRunner),this.session.dispose()}apply(e){process.cwd()!==e.services.cwd&&process.chdir(e.services.cwd),this._session=e.session,this._services=e.services,this._diagnostics=e.diagnostics,this._modelFallbackMessage=e.modelFallbackMessage,this.attachUsageReporter(),this.attachSummarizationTracer()}async switchSession(e,n){let r=await this.emitBeforeSwitch("resume",e);if(r.cancelled)return r;let i=this.session.sessionFile,o=Vl.open(e,void 0,n);return Wne(o,this.cwd),await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:o.getCwd(),agentDir:this.services.agentDir,sessionManager:o,sessionStartEvent:{type:"session_start",reason:"resume",previousSessionFile:i}})),{cancelled:!1}}async newSession(e){let n=await this.emitBeforeSwitch("new");if(n.cancelled)return n;let r=e?.cwd??this.cwd,i=this.session.sessionFile,o=this.session.sessionManager.getSessionDir(),s=Vl.create(r,o);return e?.parentSession&&s.newSession({parentSession:e.parentSession}),await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:r,agentDir:this.services.agentDir,sessionManager:s,sessionStartEvent:{type:"session_start",reason:"new",previousSessionFile:i}})),e?.setup&&(await e.setup(this.session.sessionManager),this.session.agent.state.messages=this.session.sessionManager.buildSessionContext().messages),{cancelled:!1}}async fork(e){if((await this.emitBeforeFork(e)).cancelled)return{cancelled:!0};let r=this.session.sessionManager.getEntry(e);if(!r||r.type!=="message")throw new Error("Invalid entry ID for forking");let i=r.message,o;if(i.role==="user")o=Qzl(i.content);else if(i.role==="promptCommandInvocation")o=sI(i);else throw new Error("Invalid entry ID for forking");let s=this.session.sessionFile;if(this.session.sessionManager.isPersisted()){let l=this.session.sessionFile;if(!l)throw new Error("Persisted session is missing a session file");let c=this.session.sessionManager.getSessionDir();if(!r.parentId){let A=Vl.create(this.cwd,c);return A.newSession({parentSession:l}),await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:this.cwd,agentDir:this.services.agentDir,sessionManager:A,sessionStartEvent:{type:"session_start",reason:"fork",previousSessionFile:s}})),{cancelled:!1,selectedText:o}}let d=Vl.open(l,c).createBranchedSession(r.parentId);if(!d)throw new Error("Failed to create forked session");let p=Vl.open(d,c);return await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:p.getCwd(),agentDir:this.services.agentDir,sessionManager:p,sessionStartEvent:{type:"session_start",reason:"fork",previousSessionFile:s}})),{cancelled:!1,selectedText:o}}let a=this.session.sessionManager;return r.parentId?a.createBranchedSession(r.parentId):a.newSession({parentSession:this.session.sessionFile}),await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:this.cwd,agentDir:this.services.agentDir,sessionManager:a,sessionStartEvent:{type:"session_start",reason:"fork",previousSessionFile:s}})),{cancelled:!1,selectedText:o}}async importFromJsonl(e,n){let r=ndo(e);if(!tdo(r))throw new Error(`File not found: ${r}`);let i=this.session.sessionManager.getSessionDir();tdo(i)||Tzl(i,{recursive:!0});let o=kzl(i,Nzl(r)),s=await this.emitBeforeSwitch("resume",o);if(s.cancelled)return s;let a=this.session.sessionFile;ndo(o)!==r&&xzl(r,o);let l=Vl.open(o,i,n);return Wne(l,this.cwd),await this.teardownCurrent(),this.apply(await this.createRuntime({cwd:l.getCwd(),agentDir:this.services.agentDir,sessionManager:l,sessionStartEvent:{type:"session_start",reason:"resume",previousSessionFile:a}})),{cancelled:!1}}async dispose(){this.detachUsageReporter(),this.detachSummarizationTracer(),await cMe(this.session.extensionRunner),this.session.dispose(),await Promise.all([this._usageReporter?.flush(),this._toolUseReporter?.flush()])}}});import{join as HNn}from"node:path";function Dzl(){return ks()}async function zCt(t={}){let e=t.cwd??process.cwd(),n=t.agentDir??Dzl(),r=t.resourceLoader,i=t.agentDir?HNn(n,"auth.json"):void 0,o=t.agentDir?HNn(n,"models.json"):void 0,s=t.authStorage??sU.create(i),a=t.modelRegistry??xz.create(s,o),l=t.settingsManager??ol.create(e,n),c=t.sessionManager??Vl.create(e,jR(e,n));r||(r=new cz({cwd:e,agentDir:n,settingsManager:l}),await r.reload(),Mw("resourceLoader.reload"));let u=c.buildSessionContext(),d=u.messages.length>0,p=c.getBranch().some(w=>w.type==="thinking_level_change"),A=t.model,g;if(!A&&d&&u.model){let w=a.find(u.model.provider,u.model.modelId);if(w&&a.hasConfiguredAuth(w)&&(A=w),!A&&!w){let F=a.findDeprecatedModelUpgrade(u.model.provider,u.model.modelId);F&&a.hasConfiguredAuth(F)&&(A=F,g=`Model ${u.model.provider}/${u.model.modelId} is retired. Using ${F.provider}/${F.id}`)}A||(g=`Could not restore model ${u.model.provider}/${u.model.modelId}`)}A||(A=(await duo({scopedModels:[],isContinuing:d,defaultProvider:l.getDefaultProvider(),defaultModelId:l.getDefaultModel(),defaultThinkingLevel:l.getDefaultThinkingLevel(),modelRegistry:a})).model,A?g&&(g+=`. Using ${A.provider}/${A.id}`):g=`No models available. Use /login or set an API key environment variable. See ${HNn(Bme(),"providers.md")}. Then use /model to select a model.`);let m=t.thinkingLevel;m===void 0&&d&&(m=p?u.thinkingLevel:l.getDefaultThinkingLevel()??$Q),m===void 0&&(m=l.getDefaultThinkingLevel()??$Q),A?.reasoning||(m="off");let f=["read",process.env.AUGGIE_ENABLE_TERMINAL==="1"?"terminal":"bash","edit","write","web-fetch","view-session"],E=t.tools?t.tools.map(w=>w.name).filter(w=>w in iU):f,b,y=t.augmentUserAgent??"",_=w=>{let F=LG(w);return l.getBlockImages()?F.map(T=>{if(T.role==="user"||T.role==="toolResult"){let D=T.content;if(Array.isArray(D)&&D.some(k=>k.type==="image")){let k=D.map(W=>W.type==="image"?{type:"text",text:"Image reading is disabled."}:W).filter((W,Y,j)=>!(W.type==="text"&&W.text==="Image reading is disabled."&&Y>0&&j[Y-1].type==="text"&&j[Y-1].text==="Image reading is disabled."));return{...T,content:k}}}return T}):F},v={};b=new Ste({initialState:{systemPrompt:"",model:A,thinkingLevel:m,tools:[]},convertToLlm:_,streamFn:async(w,F,T)=>{let D=await a.getApiKeyAndHeaders(w);if(!D.ok)throw new Error(D.error);let Q={...T,apiKey:D.apiKey,headers:D.headers||T?.headers?{...D.headers,...T?.headers}:void 0};return w.api==="augment-chat-stream"?ype(w,F,{...Q,userAgent:y}):RV(w,F,Q)},onPayload:(w,F)=>{let T=v.current;return T?.hasHandlers("before_provider_request")?T.emitBeforeProviderRequest(w):w},sessionId:c.getSessionId(),transformContext:w=>{let F=v.current;return F?F.emitContext(w):Promise.resolve(w)},steeringMode:l.getSteeringMode(),followUpMode:l.getFollowUpMode(),transport:l.getTransport(),thinkingBudgets:l.getThinkingBudgets(),maxRetryDelayMs:l.getRetrySettings().maxDelayMs}),d?(b.state.messages=u.messages,p||c.appendThinkingLevelChange(m)):(A&&c.appendModelChange(A.provider,A.id),c.appendThinkingLevelChange(m));let R=new Cbe({agent:b,sessionManager:c,settingsManager:l,cwd:e,agentDir:n,mcpConfigOverride:t.mcpConfigOverride,permissionOverride:t.permissionOverride,scopedModels:t.scopedModels,resourceLoader:r,customTools:t.customTools,toolsOptions:t.toolsOptions,modelRegistry:a,initialActiveToolNames:E,extensionRunnerRef:v,sessionStartEvent:t.sessionStartEvent,featureFlags:t.featureFlags,role:t.role}),x=r.getExtensions();return{session:R,extensionsResult:x,modelFallbackMessage:g}}var JNn=I(()=>{"use strict";zVe();Zl();ub();Lu();aCt();$Ge();sht();eN();kw();bUe();VMe();bw();DNn();vz();zNn();vz()});function jCt(t){return KNn[t]}function Mbe(t){return t==="user"?"global":t}function Gbe(t){return t==="global"?"user":t}function $Ct(t){let{files:e,alwaysShowPicker:n}=t;if(n&&e.length>=2)return{files:e};let r=e.filter(i=>i.exists);return r.length===0?{directTarget:"user"}:r.length===1?{directTarget:r[0].target}:{files:e}}var KCt,KNn,rdo=I(()=>{"use strict";KCt=["local","project","user"],KNn={user:"User settings (global)",project:"Project settings (shared)",local:"Local settings (personal)"}});var WZg,vUe=I(()=>{"use strict";WZg=new TextDecoder("utf-8",{fatal:!0})});var jNn=I(()=>{"use strict"});var $Nn=I(()=>{"use strict"});var qNn=I(()=>{"use strict";Lr();$Nn()});var ido=I(()=>{"use strict"});var BUe=I(()=>{"use strict";Lr();BT();jNn();qNn();ido()});import{execFile as Gzl}from"node:child_process";import{promisify as Uzl}from"node:util";var c3g,e2n=I(()=>{"use strict";Lr();c3g=Uzl(Gzl)});import{exec as Lzl}from"node:child_process";import{promisify as Pzl}from"node:util";var m3g,t2n=I(()=>{"use strict";Lr();e2n();m3g=Pzl(Lzl)});var wUe=I(()=>{"use strict"});var xUe=I(()=>{"use strict";Lr();BT()});var Wzl,I3g,S3g,qCt=I(()=>{"use strict";Lr();Wzl=Kr(oW(),1),I3g=1024*1024,S3g=mn.child({prefix:"HierarchicalIgnoreFilter"})});var TUe=I(()=>{"use strict";Lr();BT()});import{execFile as Zzl,spawn as x3g}from"node:child_process";import{promisify as Xzl}from"node:util";var Q3g,D3g,F3g,eyt=I(()=>{"use strict";Lr();wUe();Q3g=Xzl(Zzl),D3g=1024*1024,F3g=mn.child({prefix:"git-tree-walker"})});import{execFile as Yzl}from"node:child_process";import{promisify as Jzl}from"node:util";var U3g,r2n=I(()=>{"use strict";U3g=Jzl(Yzl)});var zzl,P3g,i2n=I(()=>{"use strict";Lr();zzl=Kr(oW(),1),P3g=1024*1024});import{execFile as qzl}from"node:child_process";import{promisify as eHl}from"node:util";var J3g,c2n=I(()=>{"use strict";eyt();Lr();vUe();BUe();BT();r2n();wUe();eyt();xUe();i2n();TUe();J3g=eHl(qzl)});var sXg,u2n=I(()=>{"use strict";Lr();sXg=mn.child({prefix:"FileWalker"})});var d2n=I(()=>{"use strict";Lr();vUe();BUe();BT();xUe();u2n();qCt();TUe()});var bXg,p2n=I(()=>{"use strict";Lr();BT();bXg=mn.child({prefix:"FileWatcher"})});var SXg,A2n=I(()=>{"use strict";Lr();BT();SXg=mn.child({prefix:"WatcherProcessor"})});var ado=I(()=>{"use strict";Lr();vUe();BUe();t2n();BT();wUe();xUe();qCt();TUe();c2n();d2n();p2n();A2n()});import{Worker as lHl}from"node:worker_threads";async function NUe(){let t=Date.now(),e=new URL("./indexing-worker.mjs",import.meta.url),n;try{n=new lHl(e)}catch(r){return{ok:!1,error:`Worker construction threw: ${r instanceof Error?r.message:String(r)}`,durationMs:Date.now()-t}}return await new Promise(r=>{let i=!1,o=a=>{i||(i=!0,clearTimeout(s),n.terminate().catch(()=>{}),r(a))},s=setTimeout(()=>{o({ok:!1,error:`Worker did not report ready within ${ldo}ms`,durationMs:Date.now()-t})},ldo);s.unref(),n.on("message",a=>{a&&a.type==="ready"&&o({ok:!0,durationMs:Date.now()-t})}),n.on("error",a=>{o({ok:!1,error:`Worker error event: ${a.message}`,durationMs:Date.now()-t})}),n.on("exit",a=>{a!==0&&o({ok:!1,error:`Worker exited with code ${a} before ready`,durationMs:Date.now()-t})})})}var ldo,cdo=I(()=>{"use strict";ldo=1e4});var PXg,udo=I(()=>{"use strict";Lr();PXg=mn.child({prefix:"AugmentApiAdapter"})});var g2n=I(()=>{"use strict";ado();cdo();mat();xpn();udo();r2n();e2n();wUe();eyt();t2n();xUe();u2n();qCt();i2n();TUe();c2n();d2n();vUe();BUe();jNn();$Nn();qNn();BT();p2n();A2n()});var cHl,uHl,dHl,Ado,pHl,AHl,gHl,ddo,pdo,Ube,tyt,m2n,h2n,mHl,nyt,b2n,Yne,C2n,hHl,kUe,fHl,f2n,E2n,EHl,ryt,iyt=I(()=>{"use strict";cHl="http/protobuf",uHl="delta",dHl="hmac",Ado=new Set(["1","true","yes","on"]),pHl=new Set(["0","false","no","off"]),AHl={metrics:"METRICS",logs:"LOGS",traces:"TRACES"},gHl={metrics:"/v1/metrics",logs:"/v1/logs",traces:"/v1/traces"},ddo=(t,e,n)=>{if(n==="grpc")return t;let r=gHl[e],i=t.endsWith("/")?t.slice(0,-1):t;return i.endsWith(r)?i:i+r},pdo=t=>Ado.has(t.trim().toLowerCase()),Ube=t=>{if(t===void 0)return;let e=t.trim().toLowerCase();return Ado.has(e)?!0:pHl.has(e)?!1:void 0},tyt=(t,e)=>{if(t===void 0)return e;let n=Number.parseInt(t.trim(),10);return Number.isNaN(n)?e:n},m2n=(t,e)=>{let n=tyt(t,e);return n>0?n:e},h2n=(t,e)=>t&&t>0?t:e,mHl=t=>t==="grpc"||t==="http/protobuf"||t==="http/json",nyt=t=>{if(t===void 0)return;let e=t.trim().toLowerCase();return mHl(e)?e:void 0},b2n=t=>{if(t===void 0)return;let e=t.trim().toLowerCase();if(e==="delta"||e==="cumulative")return e},Yne=t=>{if(t===void 0)return;let e=t.trim();return e.length>0?e:void 0},C2n=t=>{if(t===void 0)return;let e=t.trim().toLowerCase();if(e==="hmac"||e==="raw"||e==="off")return e},hHl=(t,e)=>(t??"").split(",").map(n=>n.trim().toLowerCase()).includes(e),kUe=t=>{let e={};if(!t)return e;for(let n of t.split(",")){let r=n.trim(),i=r.indexOf("=");if(i<=0)continue;let o=r.slice(0,i).trim();o&&(e[o]=r.slice(i+1).trim())}return e},fHl=(t,e,n)=>{if(n.enabled!==void 0)return n.enabled;let r=t.AUGGIE_ENABLE_TELEMETRY;if(r!==void 0)return pdo(r);let i=t.CLAUDE_CODE_ENABLE_TELEMETRY;return i!==void 0?pdo(i):e.enabled??!1},f2n=(t,e,n,r)=>{let i=AHl[e],o=r.protocol??nyt(t[`OTEL_EXPORTER_OTLP_${i}_PROTOCOL`])??nyt(t.OTEL_EXPORTER_OTLP_PROTOCOL)??n.protocol??cHl,s=Yne(r.endpoint),a=Yne(t[`OTEL_EXPORTER_OTLP_${i}_ENDPOINT`]),l=Yne(t.OTEL_EXPORTER_OTLP_ENDPOINT)??Yne(n.endpoint),c;s!==void 0?c=ddo(s,e,o):a!==void 0?c=a:l!==void 0&&(c=ddo(l,e,o));let u={...n.headers,...kUe(t.OTEL_EXPORTER_OTLP_HEADERS),...kUe(t[`OTEL_EXPORTER_OTLP_${i}_HEADERS`]),...r.headers};return{endpoint:c,headers:u,protocol:o}},E2n=t=>t!==void 0&&t>0?t:void 0,EHl=(t,e,n)=>({bufferDir:Yne(n.bufferDir)??Yne(t.AUGGIE_TELEMETRY_BUFFER_DIR)??Yne(e.bufferDir),bufferMaxBytes:E2n(n.bufferMaxBytes)??m2n(t.AUGGIE_TELEMETRY_BUFFER_MAX_BYTES,h2n(e.bufferMaxBytes,52428800)),breakerFailureThreshold:E2n(n.breakerFailureThreshold)??m2n(t.AUGGIE_TELEMETRY_BREAKER_FAILURE_THRESHOLD,h2n(e.breakerFailureThreshold,3)),breakerBackoffMs:E2n(n.breakerBackoffMs)??m2n(t.AUGGIE_TELEMETRY_BREAKER_BACKOFF_MS,h2n(e.breakerBackoffMs,3e4))}),ryt=(t={})=>{let e=t.env??process.env,n={...t.envInjection,...e},r=t.telemetry??{},i=t.managed??{},o={metrics:f2n(n,"metrics",r,i),logs:f2n(n,"logs",r,i),traces:f2n(n,"traces",r,i)},s=o.metrics.endpoint!==void 0||o.logs.endpoint!==void 0||o.traces.endpoint!==void 0;return{enabled:fHl(n,r,i)&&s,exporter:o,metricExportIntervalMs:i.metricExportIntervalMs??tyt(n.OTEL_METRIC_EXPORT_INTERVAL,r.metricExportIntervalMs??2e4),logsExportIntervalMs:i.logsExportIntervalMs??tyt(n.OTEL_LOGS_EXPORT_INTERVAL,r.logsExportIntervalMs??5e3),metricsTemporalityPreference:i.metricsTemporalityPreference??b2n(n.OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE)??r.metricsTemporalityPreference??uHl,resourceAttributes:{...r.resourceAttributes,...kUe(n.OTEL_RESOURCE_ATTRIBUTES),...i.resourceAttributes},includeVersion:i.includeVersion??Ube(n.OTEL_METRICS_INCLUDE_VERSION)??r.includeVersion??!1,includeAccountUuid:i.includeAccountUuid??Ube(n.OTEL_METRICS_INCLUDE_ACCOUNT_UUID)??r.includeAccountUuid??!0,identity:{mode:i.identityMode??C2n(n.AUGGIE_TELEMETRY_IDENTITY_MODE)??r.identityMode??dHl,secret:i.identitySecret??n.AUGGIE_TELEMETRY_IDENTITY_SECRET??r.identitySecret},shutdownTimeoutMs:i.shutdownTimeoutMs??tyt(n.AUGGIE_TELEMETRY_SHUTDOWN_TIMEOUT_MS,r.shutdownTimeoutMs??2e3),...EHl(n,r,i),genAiCaptureMessageContent:i.captureMessageContent??Ube(n.OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT)??r.captureMessageContent??!1,genAiLatestExperimental:hHl(n.OTEL_SEMCONV_STABILITY_OPT_IN,"gen_ai_latest_experimental"),logUserPrompts:i.logUserPrompts??Ube(n.OTEL_LOG_USER_PROMPTS)??r.logUserPrompts??!1,logToolDetails:i.logToolDetails??Ube(n.OTEL_LOG_TOOL_DETAILS)??r.logToolDetails??!1,langsmithCompat:i.langsmithCompat??Ube(n.AUGGIE_TELEMETRY_LANGSMITH_COMPAT)??r.langsmithCompat??!1}}});import{execFileSync as bHl}from"node:child_process";import{existsSync as CHl,readFileSync as yHl}from"node:fs";var gdo,IHl,SHl,mdo,hdo,_Hl,S2n,fdo,RHl,vHl,BHl,wHl,xHl,y2n,THl,NHl,Jne,Obe,I2n,Edo,kHl,oyt,_2n=I(()=>{"use strict";iyt();gdo="/Library/Managed Preferences/com.augmentcode.auggie.plist",IHl="HKLM\\SOFTWARE\\Policies\\AugmentCode\\Auggie\\Telemetry",SHl="/etc/augment/auggie-managed-settings.json",mdo="/usr/bin/plutil",hdo="C:\\Windows\\System32\\reg.exe",_Hl=2e3,S2n=t=>typeof t=="object"&&t!==null&&!Array.isArray(t),fdo=t=>S2n(t)?t.telemetry:void 0,RHl=(t,e)=>bHl(t,e,{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:_Hl,windowsHide:!0}),vHl=/^ {4}(.+?) {4}(REG_[A-Z_]+) {4}(.*)$/,BHl=t=>{let e={};for(let n of t.split(/\r?\n/)){let r=vHl.exec(n);if(!r)continue;let[,i,o,s]=r;if(o==="REG_DWORD"||o==="REG_QWORD"){let a=Number(s.trim());Number.isFinite(a)&&(e[i]=a)}else(o==="REG_SZ"||o==="REG_EXPAND_SZ")&&(e[i]=s)}return Object.keys(e).length>0?e:void 0},wHl=(t={})=>{let e=t.execRead??RHl,n=t.fileExists??CHl;return{darwin:()=>{if(!(n(gdo)&&n(mdo)))return;let r=e(mdo,["-convert","json","-o","-",gdo]);return fdo(JSON.parse(r))},linux:()=>fdo(JSON.parse(yHl(SHl,"utf-8"))),win32:()=>{if(n(hdo))return BHl(e(hdo,["query",IHl]))}}},xHl=wHl(),y2n=t=>typeof t=="string"?t:void 0,THl=new Set(["1","true","yes","on"]),NHl=new Set(["0","false","no","off"]),Jne=t=>{if(typeof t=="boolean")return t;if(typeof t=="number")return t!==0;if(typeof t=="string"){let e=t.trim().toLowerCase();if(THl.has(e))return!0;if(NHl.has(e))return!1}},Obe=t=>{if(typeof t=="number")return Number.isFinite(t)?t:void 0;if(typeof t=="string"){let e=t.trim();if(e.length===0)return;let n=Number(e);return Number.isFinite(n)?n:void 0}},I2n=t=>{if(typeof t!="string")return;let e=t.trim();return e.length>0?e:void 0},Edo=t=>{if(typeof t=="string"){let n=kUe(t);return Object.keys(n).length>0?n:void 0}if(!S2n(t))return;let e={};for(let[n,r]of Object.entries(t))typeof r=="string"&&(e[n]=r);return Object.keys(e).length>0?e:void 0},kHl=t=>{if(!S2n(t))return;let e={breakerBackoffMs:Obe(t.breakerBackoffMs),breakerFailureThreshold:Obe(t.breakerFailureThreshold),bufferDir:I2n(t.bufferDir),bufferMaxBytes:Obe(t.bufferMaxBytes),captureMessageContent:Jne(t.captureMessageContent),enabled:Jne(t.enabled),endpoint:I2n(t.endpoint),headers:Edo(t.headers),identityMode:C2n(y2n(t.identityMode)),identitySecret:I2n(t.identitySecret),includeAccountUuid:Jne(t.includeAccountUuid),includeVersion:Jne(t.includeVersion),logsExportIntervalMs:Obe(t.logsExportIntervalMs),langsmithCompat:Jne(t.langsmithCompat),logToolDetails:Jne(t.logToolDetails),logUserPrompts:Jne(t.logUserPrompts),metricExportIntervalMs:Obe(t.metricExportIntervalMs),metricsTemporalityPreference:b2n(y2n(t.metricsTemporalityPreference)),protocol:nyt(y2n(t.protocol)),resourceAttributes:Edo(t.resourceAttributes),shutdownTimeoutMs:Obe(t.shutdownTimeoutMs)};return Object.values(e).some(r=>r!==void 0)?e:void 0},oyt=(t={})=>{let e=t.platform??process.platform;if(e!=="darwin"&&e!=="win32"&&e!=="linux")return;let n=t.readers?.[e]??xHl[e];try{return kHl(n())}catch{return}}});function h_(t,e){if(typeof t=="string"){if(!e)throw new Error(`registerBuiltinExtension("${t}", factory) called without a factory`);syt.push({name:t,factory:e,kind:"bundled"});return}if((t.kind??"bundled")==="prebundled"){if(t.factory!==void 0)throw new Error(`registerBuiltinExtension("${t.name}"): prebundled extensions must not be registered with a factory (the static factory import would inline the extension into the SEA, see apps/auggie-v2/docs/prebundled-extensions.md).`);syt.push({name:t.name,kind:"prebundled"});return}if(!t.factory)throw new Error(`registerBuiltinExtension({ name: "${t.name}" }) called without a factory for kind="bundled"`);syt.push({name:t.name,factory:t.factory,kind:"bundled"})}function bdo(){return syt}function Cdo(t,e){return t.filter(n=>!e.has(n.name))}var syt,R2n=I(()=>{"use strict";syt=[]});import{statSync as QHl}from"node:fs";import{resolve as DHl}from"node:path";function ydo(t,e,n){let r=[],i=[];if(!t||t.length===0)return{resolved:r,errors:i};let o=new Set([e]);for(let s of t){let a=Cm(s),l=DHl(n,a);if(o.has(l))continue;let c;try{c=QHl(l)}catch(u){let d=u instanceof Error?u.message:String(u);i.push(`--add-workspace "${s}": ${d}`);continue}if(!c.isDirectory()){i.push(`--add-workspace "${s}": not a directory (${l})`);continue}o.add(l),r.push(l)}return{resolved:r,errors:i}}function Ido(t){return t.isCloudService?{kind:"tolerate",warnings:t.errors}:{kind:"fatal",fatalErrors:t.errors}}var Sdo=I(()=>{"use strict";sb()});import{execFile as FHl}from"node:child_process";import{existsSync as VHl,rmSync as MHl}from"node:fs";import{promisify as GHl}from"node:util";function v2n(t){let e=t.match(/^git@([^:]+):(.+?)(?:\.git)?$/);if(e){let[,r,i]=e;return{sshUrl:t.endsWith(".git")?t:`${t}.git`,httpsUrl:`https://${r}/${i}.git`}}let n=t.match(/^https?:\/\/([^/]+)\/(.+?)(?:\.git)?$/);if(n){let[,r,i]=n;return{sshUrl:`git@${r}:${i}.git`,httpsUrl:t.endsWith(".git")?t:`${t}.git`}}return{sshUrl:t,httpsUrl:t}}function Bdo(t){return t instanceof Error?t.message:String(t)}async function B2n({sshUrl:t,httpsUrl:e,targetDir:n,extraArgs:r=[]}){let i;for(let o of[{url:t,env:UHl},{url:e,env:vdo}])try{return await Rdo("git",["clone","--depth","1",...r,o.url,n],{env:o.env}),{success:!0}}catch(s){i=s,VHl(n)&&MHl(n,{recursive:!0,force:!0})}return{success:!1,error:Bdo(i)}}function _do(t,e){return Rdo("git",t,{cwd:e,env:vdo})}async function wdo(t,e){try{return await _do(["fetch","--depth","1","origin",e],t),await _do(["checkout","FETCH_HEAD"],t),{success:!0}}catch(n){return{success:!1,error:Bdo(n)}}}var Rdo,UHl,vdo,xdo=I(()=>{"use strict";Rdo=GHl(FHl),UHl={...process.env,GIT_TERMINAL_PROMPT:"0",GIT_SSH_COMMAND:"ssh -o BatchMode=yes"},vdo={...process.env,GIT_TERMINAL_PROMPT:"0"}});import{existsSync as OHl,readFileSync as LHl}from"node:fs";import{join as Lbe}from"node:path";function kdo(t){for(let e of Ndo)if(OHl(Lbe(t,e)))return!0;return!1}function zne(t){let e=PHl(t,Tdo);return e.manifest||e.diagnostics.length>0?e:{diagnostics:[`no marketplace manifest found (looked for ${Tdo.join(", ")})`]}}function PHl(t,e){let n=[];for(let r of e){let i=Lbe(t,r),o;try{o=LHl(i,"utf-8")}catch{continue}try{let s=JSON.parse(o);if(s&&typeof s=="object"&&!Array.isArray(s))return{manifest:s,manifestPath:i,diagnostics:n};n.push(`manifest at ${r} is not a JSON object; ignoring`)}catch(s){n.push(`failed to parse manifest at ${r}: ${s.message}`)}}return{diagnostics:n}}var Ndo,Tdo,Qdo,ayt=I(()=>{"use strict";Ndo=[Lbe(".augment-plugin","plugin.json"),Lbe(".claude-plugin","plugin.json")],Tdo=[Lbe(".augment-plugin","marketplace.json"),Lbe(".claude-plugin","marketplace.json")];Qdo=`no plugin manifest found (looked for ${Ndo.join(", ")})`});import{execFile as WHl}from"node:child_process";import{existsSync as DW,mkdirSync as Fdo,readdirSync as ZHl,renameSync as XHl,rmSync as YHl,statSync as JHl}from"node:fs";import{dirname as zHl,isAbsolute as Vdo,join as FW,relative as Mdo,resolve as w2n}from"node:path";import{promisify as HHl}from"node:util";function Udo(t){let e=t.replace(/\.\./g,"").replace(/[/\\]/g,"").replace(/^\.+/,"").trim();return!e||!/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(e)?null:e}function Ddo(t){let e=t.replace(/\.\./g,"").replace(/[/\\]/g,"").replace(/^\.+/,"").trim();return!e||!/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(e)?null:e}function jHl(t){let e=t.match(/^([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_.-]+?)(?:@(.+))?$/);if(e?.[1]&&e[2])return{owner:e[1],repo:e[2].replace(/\.git$/,""),...e[3]?{ref:e[3]}:{}};let n=t.match(/^https?:\/\/github\.com\/([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_.-]+?)(\.git)?(?:#(.+))?$/);if(n?.[1]&&n[2])return{owner:n[1],repo:n[2],...n[4]?{ref:n[4]}:{}};let r=t.match(/^git@github\.com:([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_.-]+?)(\.git)?(?:#(.+))?$/);return r?.[1]&&r[2]?{owner:r[1],repo:r[2],...r[4]?{ref:r[4]}:{}}:null}function uU(t){return typeof t=="string"&&t.length>0?t:void 0}function $Hl(t,e){let n=uU(t.repo);return n?{kind:"github",url:`https://github.com/${n.replace(/\.git$/,"")}.git`,...e?{ref:e}:{},...uU(t.path)?{subdir:uU(t.path)}:{}}:null}function qHl(t,e){let n=uU(t.url);return n?{kind:"url",url:n,...e?{ref:e}:{},...uU(t.path)?{subdir:uU(t.path)}:{}}:null}function eKl(t,e){let n=uU(t.url),r=uU(t.path);return n&&r?{kind:"git-subdir",url:n,subdir:r,...e?{ref:e}:{}}:null}function x2n(t){if(!t||typeof t!="object")return null;let e=t,n=uU(e.sha)??uU(e.ref);switch(e.source){case"github":return $Hl(e,n);case"url":return qHl(e,n);case"git-subdir":return eKl(e,n);default:return null}}function Odo(t,e,n){let r=Udo(e);if(!r)return;let i=FW(t,Gdo,r);if(!DW(FW(i,".git")))return;if(!n)return i;let o=w2n(i,n),s=Mdo(i,o);if(!(s.startsWith("..")||Vdo(s)))return DW(o)?o:void 0}async function tKl(t,e){let n=typeof e.name=="string"?e.name:"",r=x2n(e.source);if(!r)return;let i=Udo(n);if(!i)return{name:n,status:"failed",error:"invalid plugin cache name"};let o=FW(t,Gdo,i);if(DW(FW(o,".git")))return{name:n,status:"skipped"};let s=zHl(o);DW(s)||Fdo(s,{recursive:!0});let{sshUrl:a,httpsUrl:l}=v2n(r.url),c=r.kind==="git-subdir",u=await B2n({sshUrl:a,httpsUrl:l,targetDir:o,extraArgs:c?["--filter=blob:none","--sparse"]:[]});if(!u.success)return{name:n,status:"failed",error:u.error};if(r.ref){let d=await wdo(o,r.ref);if(!d.success)return{name:n,status:"failed",error:d.error}}if(c&&r.kind==="git-subdir")try{await KHl("git",["sparse-checkout","set",r.subdir],{cwd:o,env:{...process.env,GIT_TERMINAL_PROMPT:"0"}})}catch(d){return{name:n,status:"failed",error:d instanceof Error?d.message:String(d)}}return{name:n,status:"cloned"}}async function Ldo(t){let{manifest:e}=zne(t),n=e?.plugins;if(!n||n.length===0)return[];let r=[];for(let i of n){let o=await tKl(t,i);o&&r.push(o)}return r}function nKl(t){try{return JHl(t).isDirectory()}catch{return!1}}function rKl(t,e){let n=Mdo(w2n(t),w2n(e));return n!==""&&!n.startsWith("..")&&!Vdo(n)}async function QUe(t,e){let n=jHl(e);if(!n)return{success:!1,error:`Invalid GitHub repository: ${e}. Expected owner/repo or a github.com URL.`};let{owner:r,repo:i,ref:o}=n;DW(t)||Fdo(t,{recursive:!0});let s=Ddo(i);if(!s)return{success:!1,error:`Invalid repository name for marketplace directory: "${i}".`};let a=FW(t,s);if(DW(a))return{success:!1,alreadyInstalled:!0,marketplaceId:s,error:`Marketplace '${s}' is already installed.`};let{sshUrl:l,httpsUrl:c}=v2n(`https://github.com/${r}/${i}`),u=await B2n({sshUrl:l,httpsUrl:c,targetDir:a,extraArgs:o?["--branch",o]:[]});if(!u.success)return{success:!1,error:`Failed to clone '${r}/${i}' (SSH and HTTPS both failed): ${u.error}`};let{manifest:d}=zne(a),p=s,A=typeof d?.name=="string"?Ddo(d.name):null;if(A&&A!==s){let g=FW(t,A);if(!DW(g))try{XHl(a,g),p=A}catch{}}return await Ldo(FW(t,p)),{success:!0,marketplaceId:p}}function DUe(t,e){let n=FW(t,e);if(!rKl(t,n))return{success:!1,error:`Refusing to remove '${e}': path is outside the marketplaces directory.`};if(!DW(n))return{success:!1,error:`Marketplace '${e}' not found.`};try{return YHl(n,{recursive:!0,force:!0}),{success:!0}}catch(r){return{success:!1,error:`Failed to remove '${e}': ${r instanceof Error?r.message:String(r)}`}}}async function Pdo(t){let e=!1;for(let n of t){if(!DW(n))continue;let r;try{r=ZHl(n)}catch{continue}for(let i of r){let o=FW(n,i);if(!nKl(o))continue;(await Ldo(o)).some(a=>a.status==="cloned")&&(e=!0)}}return e}var KHl,Gdo,lyt=I(()=>{"use strict";xdo();ayt();KHl=HHl(WHl),Gdo=".plugin-cache"});import{readFileSync as iKl}from"node:fs";import{join as oKl}from"node:path";function Wdo(t){let e=oKl(t,"hooks","hooks.json"),n;try{n=iKl(e,"utf-8")}catch{return{diagnostics:[]}}let r;try{r=JSON.parse(n)}catch(o){return{diagnostics:[`failed to parse hooks/hooks.json: ${o.message}`]}}return!r||typeof r!="object"||Array.isArray(r)?{diagnostics:["hooks/hooks.json must be a JSON object"]}:{config:yMe(r),diagnostics:[]}}var Zdo=I(()=>{"use strict";Tte()});import{existsSync as sKl,lstatSync as aKl,readdirSync as Ydo,statSync as lKl}from"node:fs";import{isAbsolute as Xdo,join as FUe,relative as cKl,resolve as Jdo}from"node:path";function zdo(t,e){let n=[],r=[],i=[],o=new Map;for(let s of t)for(let a of uKl(s,e,r)){let l=o.get(a.id);if(l!==void 0){i.push({id:a.id,shadowedRoot:s,winnerRoot:l});continue}o.set(a.id,s),n.push(a)}for(let[s,a]of Object.entries(e))a&&!o.has(s)&&r.push(`enabledPlugins["${s}"] = true but no plugin with that id was found in any marketplace root`);return{plugins:n,globalDiagnostics:r,shadowedPlugins:i}}function uKl(t,e,n){let r=[];if(!sKl(t))return r;let i;try{i=Ydo(t)}catch(o){return n.push(`failed to read marketplaces directory ${t}: ${o.message}`),r}for(let o of i){let s=FUe(t,o);VUe(s)&&dKl(s,o,e,r,n)}return r}function dKl(t,e,n,r,i){let o=zne(t);if(!o.manifest){for(let c of o.diagnostics)i.push(`[${e}] ${c}`);return}let s=EKl(o.manifest.name,e),a=fKl(t,o.manifest.metadata?.pluginRoot),l=Array.isArray(o.manifest.plugins)?o.manifest.plugins:[];l.length===0&&i.push(`[${s}] marketplace.json has no plugins[] entries`);for(let c of l){let u=pKl(c,t,a,s,n);u&&r.push(u)}for(let c of o.diagnostics)i.push(`[${s}] ${c}`)}function pKl(t,e,n,r,i){let o=typeof t.name=="string"?Pbe(t.name):void 0;if(!o)return;let s=`${o}@${r}`,a=i[s]===!0,l=[],c=hKl(t.source,o,e,n,l);return c?gKl(s,r,o,c,a,l):{id:s,marketplace:r,name:o,root:e,enabled:a,commandsDir:void 0,skillsDir:void 0,hooksConfig:void 0,agentsDirPresent:!1,diagnostics:l}}function AKl(t,e){let n=[],r;try{r=Ydo(t).sort()}catch(o){return e.push(`failed to read agents directory: ${o.message}`),n}let i=[];for(let o of r){if(!o.endsWith(".md"))continue;let s=FUe(t,o);try{if(!aKl(s).isFile()){i.push(o);continue}}catch(a){e.push(`failed to stat agent file ${o}: ${a.message}`);continue}n.push(s)}return i.length>0&&e.push(`ignoring non-regular agent file(s) under agents/ (symlinks / dirs / devices are not followed): ${i.join(", ")}`),n}function gKl(t,e,n,r,i,o){kdo(r)||o.push(Qdo);let s=FUe(r,"commands"),a=FUe(r,"skills"),l=FUe(r,"agents"),c=VUe(s)?s:void 0,u=VUe(a)?a:void 0,d=VUe(l),p=d&&i?AKl(l,o):void 0,A=Wdo(r);for(let g of A.diagnostics)o.push(g);return{id:t,marketplace:e,name:n,root:r,enabled:i,commandsDir:c,skillsDir:u,hooksConfig:A.config,agentsDirPresent:d,agentFiles:p,diagnostics:o}}function mKl(t,e,n,r){let i=x2n(t);if(!i){let s=t.source;r.push(`source kind "${typeof s=="string"?s:"object"}" is not supported; install the plugin manually as a relative directory`);return}let o=Odo(n,e,i.subdir);if(o)return o;r.push(`source kind "${i.kind}" not fetched yet; run /plugins to clone it (or marketplace update)`)}function hKl(t,e,n,r,i){if(typeof t!="string"){if(t&&typeof t=="object")return mKl(t,e,n,i);i.push("plugin entry has no source field; skipping");return}if(Xdo(t)){i.push(`absolute source "${t}" is not allowed; skipping`);return}let o=t.startsWith("./")?n:r,s=Jdo(o,t),a=cKl(n,s);if(a.startsWith("..")||Xdo(a)){i.push(`source "${t}" resolves outside the marketplace root; skipping`);return}if(!VUe(s)){i.push(`source "${t}" does not point to an existing directory (looked at ${s})`);return}return s}function fKl(t,e){return typeof e!="string"||e.length===0?t:Jdo(t,e)}function EKl(t,e){if(typeof t=="string"&&t.length>0){let n=Pbe(t);if(n.length>0)return n}return e}function Pbe(t){let e="";for(let n of t){let r=n.codePointAt(0);if(r===void 0)continue;let i=r<=31,o=r>=127&&r<=159;i||o||(e+=n)}return e}function VUe(t){try{return lKl(t).isDirectory()}catch{return!1}}var cyt=I(()=>{"use strict";lyt();Zdo();ayt()});import{readFileSync as bKl}from"node:fs";import{basename as CKl}from"node:path";function uyt(t){return typeof t=="string"?t:void 0}function IKl(t){if(typeof t=="string")return Kdo.includes(t)?t:void 0}function SKl(t){return typeof t=="number"&&t>=0?t:void 0}function $do(t){if(t==null)return;let e=String(t).trim();if(!e||e==="none")return;let n=e.split(",").map(r=>r.trim()).filter(Boolean);return n.length>0?n:void 0}function qdo(t,e){return t==null?[...e]:$do(t)??[]}function _Kl(t){return $do(t)}function RKl(t){if(t==="user"||t==="project"||t==="local")return t}function Hdo(t){if(t==null||t===!0)return!0;if(t===!1||t==="none")return!1;let e=qdo(t,[]);return e.length>0?e:!1}function vKl(t,e){let n=Pbe(CKl(t,".md")),r;try{r=bKl(t,"utf-8")}catch(u){let d=u instanceof Error?u.message:String(u);return{ok:!1,diagnostic:`failed to read agent file ${t}: ${d}`}}let i,o;try{let u=HQ(r);i=u.frontmatter??{},o=u.body}catch(u){let d=u instanceof Error?u.message:String(u);return{ok:!1,diagnostic:`invalid frontmatter in agent file ${t}: ${d}`}}let s=uyt(i.thinking),a=IKl(i.thinking),l=[];s!==void 0&&a===void 0&&l.push(`agent file ${t} declares thinking: "${s}", which is not a recognised level (expected one of: ${Kdo.join(", ")}); falling back to the model's default`);let c={name:n,displayName:uyt(i.display_name),description:uyt(i.description)??n,builtinToolNames:qdo(i.tools,yKl),disallowedTools:_Kl(i.disallowed_tools),extensions:Hdo(i.extensions??i.inherit_extensions),skills:Hdo(i.skills??i.inherit_skills),model:uyt(i.model),thinking:a,maxTurns:SKl(i.max_turns),systemPrompt:o.trim(),promptMode:i.prompt_mode==="append"?"append":"replace",inheritContext:i.inherit_context==null?void 0:i.inherit_context===!0,runInBackground:i.run_in_background==null?void 0:i.run_in_background===!0,isolated:i.isolated==null?void 0:i.isolated===!0,memory:RKl(i.memory),isolation:i.isolation==="worktree"?"worktree":void 0,enabled:i.enabled!==!1,source:"plugin",pluginId:e};return l.length>0?{ok:!0,config:c,warnings:l}:{ok:!0,config:c}}function epo(t){let e=new Map,n=[];if(!t.agentFiles||t.agentFiles.length===0)return{agents:e,diagnostics:n};let r=new Map;for(let i of t.agentFiles){let o=vKl(i,t.id);if(!o.ok){n.push(o.diagnostic);continue}if(o.warnings)for(let l of o.warnings)n.push(l);let{config:s}=o,a=s.name.toLowerCase();if(r.has(a)){let l=r.get(a)??s.name,c=l===s.name?`"${s.name}"`:`"${s.name}" (case-insensitive collision with "${l}")`;n.push(`duplicate agent name ${c} in plugin ${t.id}; ignoring ${i}`);continue}e.set(s.name,s),r.set(a,s.name)}return{agents:e,diagnostics:n}}var yKl,Kdo,jdo,tpo=I(()=>{"use strict";ad();cyt();yKl=["read","bash","edit","write","grep","find","ls"],Kdo=["off","minimal","low","medium","high","xhigh"],jdo=["general-purpose","explore","plan"]});import{lstatSync as BKl,readFileSync as wKl,realpathSync as npo}from"node:fs";import{isAbsolute as xKl,join as TKl,relative as NKl}from"node:path";function MUe(t,e){let n=t;for(let r of kKl){let i=`\${${r}}`;n.includes(i)&&(n=n.split(i).join(e))}return n}function T2n(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function rpo(t){if(!t)return;let e={};for(let[n,r]of Object.entries(t))r!=null&&(e[n]=String(r));return Object.keys(e).length>0?e:void 0}function QKl(t){if(t.type==="stdio"||t.type==="http"||t.type==="sse")return t.type;if(t.url)return"http";if(t.command)return"stdio"}function DKl(t,e,n){let r=QKl(e);if(!r)throw new Error(`MCP server "${t}" must declare a 'command' (stdio) or 'url' (http/sse) property`);if(r==="http"||r==="sse"){if(!e.url)throw new Error(`MCP server "${t}" has type "${r}" but no 'url' property`);return{type:r,name:t,disabled:e.disabled,url:e.url,headers:rpo(e.headers),auth:e.auth==="oauth"?"oauth":void 0,cwd:e.cwd,timeoutMs:e.timeoutMs}}let i=e.command;if(!i)throw new Error(`MCP server "${t}" has type "stdio" but no 'command' property`);let o=Array.isArray(e.args)?e.args.map(a=>String(a)):[],s=o.length>0?`${i} ${o.join(" ")}`:i;return e.useShellInterpolation===!1&&n.push(`MCP server "${t}": useShellInterpolation:false is ignored; plugin stdio servers always shell-wrap (V2 parity)`),{type:"stdio",name:t,disabled:e.disabled,command:s,args:[],env:rpo(e.env),cwd:e.cwd,timeoutMs:e.timeoutMs,useShellInterpolation:!0}}function ipo(t,e){if(!t)return;let n={};for(let[r,i]of Object.entries(t))n[r]=MUe(i,e);return n}function FKl(t,e){return t.type==="stdio"?{...t,command:MUe(t.command,e),env:ipo(t.env,e),cwd:t.cwd?MUe(t.cwd,e):void 0}:{...t,url:MUe(t.url,e),headers:ipo(t.headers,e),cwd:t.cwd?MUe(t.cwd,e):void 0}}function VKl(t,e){let n=TKl(t,".mcp.json"),r;try{r=BKl(n)}catch(i){if(i?.code==="ENOENT")return;e.push(`failed to stat .mcp.json: ${i.message}`);return}if(r.isSymbolicLink()){e.push(".mcp.json is a symlink; refusing to follow it out of the plugin root");return}if(!r.isFile()){e.push(".mcp.json is not a regular file; skipping");return}try{let i=npo(t),o=npo(n),s=NKl(i,o);if(s.startsWith("..")||xKl(s)){e.push(".mcp.json resolves outside the plugin root; skipping");return}}catch(i){e.push(`failed to resolve .mcp.json real path: ${i.message}`);return}try{return wKl(n,"utf-8")}catch(i){e.push(`failed to read .mcp.json: ${i.message}`);return}}function opo(t){let e=[],n=VKl(t.root,e);if(n===void 0)return{servers:[],diagnostics:e};let r;try{r=JSON.parse(n)}catch(s){return e.push(`failed to parse .mcp.json: ${s.message}`),{servers:[],diagnostics:e}}if(!T2n(r))return e.push(".mcp.json must be a JSON object"),{servers:[],diagnostics:e};let i=r.mcpServers;if(!T2n(i))return e.push('.mcp.json must contain an "mcpServers" object'),{servers:[],diagnostics:e};let o=[];for(let[s,a]of Object.entries(i)){let l=`${t.id}/${Pbe(s)}`;if(!T2n(a)){e.push(`MCP server "${l}" must be a JSON object`);continue}try{let c=DKl(l,a,e);o.push(FKl(c,t.root))}catch(c){e.push(c instanceof Error?c.message:String(c))}}return{servers:o,diagnostics:e}}var kKl,spo,apo=I(()=>{"use strict";cyt();kKl=["CLAUDE_PLUGIN_ROOT","AUGMENT_PLUGIN_ROOT","AUGGIE_PLUGIN_ROOT"];spo="hermes:mcp:register-server-source"});function lpo(t,e){let n=ol.create(t,e),r=n.getEnabledPlugins(),i=n.drainErrors().map(({scope:o,error:s})=>`failed to load ${o} settings: ${s.message}; enabledPlugins entries from this scope will be ignored`);return{enabled:r,diagnostics:i}}var cpo=I(()=>{"use strict";ad()});var upo,dpo=I(()=>{"use strict";upo="hermes:subagents:register-agent-source"});import{join as Wbe}from"node:path";import{existsSync as MKl,readdirSync as GKl,statSync as UKl}from"node:fs";function Q2n(t){RD=[],k2n=[],dyt=[],N2n=[],GUe=[];let e=!1,n,r=new Map,i,o,s=new Map,a;t.events.on(gft,x=>{n=x.register}),t.events.on(upo,x=>{i=x.register}),t.events.on(spo,x=>{a=x.registerServerSource});function l(x,w){let{enabled:F,diagnostics:T}=lpo(x,w),D=Wbe(T7(),"plugins","marketplaces"),Q=Wbe(w,"plugins","marketplaces"),k=zdo([D,Q],F);for(let W of k.shadowedPlugins)Gw.debug(`plugin "${W.id}" from ${W.shadowedRoot} is shadowed by the higher-precedence root ${W.winnerRoot}`);return k.globalDiagnostics=[...T,...k.globalDiagnostics],RD=k.plugins,k2n=k.globalDiagnostics,e=!0,k}function c(x,w){e||l(x,w)}function u(){let x=new Map,w=new Map;dyt=[];let F=[...RD.filter(T=>T.enabled)].sort((T,D)=>T.id.localeCompare(D.id));for(let T of F){let{agents:D,diagnostics:Q}=epo(T);for(let k of Q)Gw.warn(`[${T.id}] ${k}`),dyt.push({type:"warning",message:`[${T.id}] ${k}`,path:T.root});for(let[k,W]of D)d(T.id,k,W,x,w)}s=x}function d(x,w,F,T,D){let Q=w.toLowerCase(),k=D.get(Q);if(k){let W=k.name===w?`"${w}"`:`"${w}" (case-insensitive collision with "${k.name}")`;Gw.warn(`[${x}] plugin-contributed agent ${W} shadowed by earlier plugin ${k.pluginId}; ignoring`);return}jdo.includes(Q)&&Gw.warn(`[${x}] plugin-contributed agent "${w}" shadows the built-in default agent of the same name; the plugin's definition will be used for every Agent-tool invocation across this session`),T.set(w,F),D.set(Q,{pluginId:x,name:w})}function p(){if(!i)return;o?.(),o=i({getAgents:()=>s,getDiagnostics:()=>dyt})}function A(){let x=[];GUe=[];let w=[...RD.filter(F=>F.enabled)].sort((F,T)=>F.id.localeCompare(T.id));for(let F of w){let{servers:T,diagnostics:D}=opo(F);for(let Q of D)Gw.warn(`[${F.id}] ${Q}`),GUe.push({type:"warning",message:`[${F.id}] ${Q}`,path:F.root});for(let Q of T)x.push(Q)}N2n=x}function g(){if(!a)return;a({source:"plugin",getServers:()=>N2n,getDiagnostics:()=>GUe})}function m(){if(n){for(let x of r.values())x();r.clear();for(let x of RD){if(!x.enabled)continue;let w=OKl(x);r.set(x.id,n(w))}}}function h(){for(let x of r.values())x();r.clear()}function f(){let x=[],w=[];for(let F of RD){if(!F.enabled){for(let T of F.diagnostics)Gw.debug(`[${F.id}] ${T}`);continue}F.commandsDir&&w.push(F.commandsDir),F.skillsDir&&x.push(F.skillsDir);for(let T of F.diagnostics)Gw.warn(`[${F.id}] ${T}`)}return{skillPaths:x,promptPaths:w}}t.on("resources_discover",x=>{e=!1;let w=l(x.cwd,x.agentDir),{skillPaths:F,promptPaths:T}=f();for(let Q of w.globalDiagnostics)Gw.warn(Q);let D=RD.filter(Q=>Q.enabled).length;return RD.length>0&&Gw.info(`Discovered ${RD.length} plugin(s); ${D} enabled`),m(),u(),p(),v(),A(),g(),R(),{skillPaths:F,promptPaths:T}}),t.on("session_start",(x,w)=>{c(w.cwd,w.agentDir),m(),u(),p(),_(),A(),g();let F=Wbe(T7(),"plugins","marketplaces"),T=Wbe(w.agentDir,"plugins","marketplaces");Pdo([F,T]).then(D=>{D&&(e=!1,l(w.cwd,w.agentDir),m(),u(),p(),A(),g())}).catch(D=>{Gw.debug(`background plugin source fetch failed: ${D instanceof Error?D.message:String(D)}`)})}),t.on("session_shutdown",()=>{h(),o?.(),o=void 0,s=new Map});let E=!1,b=!1,y=!1;function _(){!n&&!E&&(E=!0,Gw.warn("@hermes/hooks did not register a hook listener; plugin hooks will not run. This usually means @hermes/hooks was removed from the built-in extension list."))}function v(){!i&&!b&&(b=!0,Gw.debug("@hermes/subagents did not register an agent source; plugin-contributed subagents will not be available (expected when --disable-subagents is set)."))}function R(){!a&&!y&&(y=!0,Gw.debug("@hermes/mcp did not register a server source; plugin-contributed MCP servers will not be loaded."))}}function OKl(t){return{source:t.id,isEnabled:()=>t.enabled,getConfig:()=>t.hooksConfig,env:LKl(t.root),postToolUsePrefix:`Plugin ${t.id} hook`,backgroundLabel:e=>`[${t.id}] ${e} hook`,blockedFallbackReason:"Blocked by plugin hook"}}function LKl(t){return{PLUGIN_ROOT:t,CLAUDE_PLUGIN_ROOT:t}}function Uz(){return RD}function UUe(t){return Wbe(t,"plugins","marketplaces")}function pyt(t){let e=UUe(t);if(!MKl(e))return[];let n;try{n=GKl(e)}catch{return[]}let r=[];for(let i of n){let o=Wbe(e,i);try{if(!UKl(o).isDirectory())continue}catch{continue}let{manifest:s}=zne(o);if(!s)continue;let a=typeof s.name=="string"&&s.name.length>0?s.name:i;r.push({dir:i,name:a,path:o})}return r}function dU(){let t=[];for(let e of RD)for(let n of e.diagnostics)t.push({type:"warning",message:`[${e.id}] ${n}`,path:e.root});for(let e of k2n)t.push({type:"warning",message:e});for(let e of GUe)t.push(e);return t}var Gw,RD,k2n,dyt,N2n,GUe,Zbe=I(()=>{"use strict";ad();Tte();Lr();tpo();cyt();lyt();ayt();apo();cpo();dpo();lyt();Gw=mn.child({prefix:"pi-plugins"}),RD=[],k2n=[],dyt=[],N2n=[],GUe=[]});function D2n(){let t=globalThis;return t[ppo]??=new Map,t[ppo]}function Apo(){return[...D2n().values()]}function gpo(t){return D2n().get(t)}function mpo(t){let e=D2n();e.clear();for(let n of t)e.set(n.name,n)}var ppo,F2n=I(()=>{"use strict";ppo=Symbol.for("__hermes_cloud_tool_registry__")});function PKl(t){return{...t,execute:(e,n,r,i,o)=>{let s=gpo(t.name);if(!s)throw new Error(`Cloud tool "${t.name}" is unavailable`);return s.execute(e,n,r,i,o)}}}function V2n(t){for(let e of Apo())t.registerTool(PKl(e))}var hpo=I(()=>{"use strict";F2n()});function Ayt(){let t=globalThis;return t[fpo]??=new Map,t[fpo]}function bpo(){return[...Ayt().values()]}function Cpo(t){return Ayt().get(t)}function Oz(t){Ayt().set(t.name,t)}function ypo(t,e){let n=Ayt();(e===void 0||n.get(t)===e)&&n.delete(t)}function Ipo(t){Reflect.set(t,Epo,!0)}function gyt(t){return Reflect.get(t,Epo)===!0}var fpo,Epo,Hne=I(()=>{"use strict";fpo=Symbol.for("__hermes_mcp_tool_registry__"),Epo=Symbol.for("__hermes_mcp_extension_factory__")});function WKl(t){return{...t,execute:(e,n,r,i,o)=>{let s=Cpo(t.name);if(!s)throw new Error(`MCP tool "${t.name}" is unavailable`);return s.execute(e,n,r,i,o)}}}function myt(t){for(let e of bpo())t.registerTool(WKl(e))}var Spo=I(()=>{"use strict";Hne()});import{existsSync as ZKl}from"node:fs";import{homedir as OUe}from"node:os";import{dirname as M2n,join as fN,resolve as _po}from"node:path";import{fileURLToPath as XKl}from"node:url";function JKl(){let t=`${G2n}\0${process.execPath||""}`.toLowerCase();return t.includes("/pnpm/")||t.includes("/.pnpm/")||t.includes("\\pnpm\\")?"pnpm":t.includes("/yarn/")||t.includes("/.yarn/")||t.includes("\\yarn\\")?"yarn":t.includes("/npm/")||t.includes("/node_modules/")||t.includes("\\npm\\")?"npm":"unknown"}function Rpo(t,e){switch(JKl()){case"pnpm":return`Run: pnpm install -g ${t}`;case"yarn":return`Run: yarn global add ${t}`;case"npm":return`Run: npm install -g ${t}`;default:return`Run: npm install -g ${t}`}}function vpo(){let t=process.env.PI_PACKAGE_DIR;if(t)return t==="~"?OUe():t.startsWith("~/")?OUe()+t.slice(1):t;let e=G2n;for(;e!==M2n(e);){if(ZKl(fN(e,"package.json")))return e;e=M2n(e)}return G2n}function Xbe(){return _po(fN(vpo(),"docs"))}function hyt(){return _po(fN(vpo(),"CHANGELOG.md"))}function Tpo(t){return`${process.env.PI_SHARE_VIEWER_URL||HKl}#${t}`}function Npo(t){return t==="~"?OUe():t.startsWith("~/")?OUe()+t.slice(1):t}function vD(){let t=process.env.AUGMENT_CACHE_DIR;return t?Npo(t):fN(OUe(),".augment")}function Co(){let t=process.env[WUe];return t?Npo(t):vD()}function ZUe(){return fN(Co(),"themes")}function kpo(){return fN(Co(),"models.json")}function U2n(){return fN(Co(),"auth.json")}function Qpo(){return fN(Co(),"settings.json")}function fyt(){return vD()}function Ybe(){return fN(Co(),"bin")}function Dpo(){return fN(Co(),"prompts")}function Fpo(){return fN(Co(),LUe)}function Vpo(){return fN(Co(),`${Gs}-debug.log`)}var YKl,G2n,Gs,ql,LUe,PUe,Bpo,zKl,Qg,wpo,xpo,WUe,HKl,Ju=I(()=>{"use strict";bAn();YKl=XKl(import.meta.url),G2n=M2n(YKl);Gs=uJ.piConfig?.name||"pi",ql=uJ.piConfig?.configDir||".augment",LUe="sessions-v2",PUe="auggie",Bpo="Auggie Coding Agent",zKl="1.2.0-prerelease.202608200912",Qg=zKl??uJ.version,wpo="a18eeff29d2fc53a12e6308f11a14c49653567b0",xpo="2026-08-20T16:12:11Z",WUe=`${Gs.toUpperCase()}_CODING_AGENT_DIR`,HKl="https://pi.dev/session/"});var Gpo,Mpo=I(()=>{Gpo={$schema:"https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",name:"dark",vars:{cyan:"#00d7ff",blue:"#5f87ff",green:"#b5bd68",red:"#cc6666",yellow:"#ffff00",gray:"#808080",dimGray:"#666666",darkGray:"#505050",accent:"#8abeb7",selectedBg:"#3a3a4a",userMsgBg:"#343541",toolPendingBg:"#282832",toolSuccessBg:"#283228",toolErrorBg:"#3c2828",customMsgBg:"#2d2838"},colors:{accent:"accent",border:"blue",borderAccent:"cyan",borderMuted:"darkGray",success:"green",error:"red",warning:"yellow",muted:"gray",dim:"dimGray",text:"",thinkingText:"gray",selectedBg:"selectedBg",userMessageBg:"userMsgBg",userMessageText:"",customMessageBg:"customMsgBg",customMessageText:"",customMessageLabel:"#9575cd",toolPendingBg:"toolPendingBg",toolSuccessBg:"toolSuccessBg",toolErrorBg:"toolErrorBg",toolTitle:"#b294bb",toolOutput:"gray",mdHeading:"#f0c674",mdLink:"#81a2be",mdLinkUrl:"dimGray",mdCode:"accent",mdCodeBlock:"green",mdCodeBlockBorder:"gray",mdQuote:"gray",mdQuoteBorder:"gray",mdHr:"gray",mdListBullet:"accent",toolDiffAdded:"green",toolDiffRemoved:"red",toolDiffContext:"gray",syntaxComment:"#6A9955",syntaxKeyword:"#569CD6",syntaxFunction:"#DCDCAA",syntaxVariable:"#9CDCFE",syntaxString:"#CE9178",syntaxNumber:"#B5CEA8",syntaxType:"#4EC9B0",syntaxOperator:"#D4D4D4",syntaxPunctuation:"#D4D4D4",thinkingOff:"darkGray",thinkingMinimal:"#6e6e6e",thinkingLow:"#5f87af",thinkingMedium:"#81a2be",thinkingHigh:"#b294bb",thinkingXhigh:"#d183e8",bashMode:"green"},export:{pageBg:"#18181e",cardBg:"#1e1e24",infoBg:"#3c3728"}}});var Opo,Upo=I(()=>{Opo={$schema:"https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json",name:"light",vars:{teal:"#5a8080",blue:"#547da7",green:"#588458",red:"#aa5555",yellow:"#9a7326",mediumGray:"#6c6c6c",dimGray:"#767676",lightGray:"#b0b0b0",selectedBg:"#d0d0e0",userMsgBg:"#e8e8e8",toolPendingBg:"#e8e8f0",toolSuccessBg:"#e8f0e8",toolErrorBg:"#f0e8e8",customMsgBg:"#ede7f6"},colors:{accent:"teal",border:"blue",borderAccent:"teal",borderMuted:"lightGray",success:"green",error:"red",warning:"yellow",muted:"mediumGray",dim:"dimGray",text:"",thinkingText:"mediumGray",selectedBg:"selectedBg",userMessageBg:"userMsgBg",userMessageText:"",customMessageBg:"customMsgBg",customMessageText:"",customMessageLabel:"#7e57c2",toolPendingBg:"toolPendingBg",toolSuccessBg:"toolSuccessBg",toolErrorBg:"toolErrorBg",toolTitle:"",toolOutput:"mediumGray",mdHeading:"yellow",mdLink:"blue",mdLinkUrl:"dimGray",mdCode:"teal",mdCodeBlock:"green",mdCodeBlockBorder:"mediumGray",mdQuote:"mediumGray",mdQuoteBorder:"mediumGray",mdHr:"mediumGray",mdListBullet:"green",toolDiffAdded:"green",toolDiffRemoved:"red",toolDiffContext:"mediumGray",syntaxComment:"#008000",syntaxKeyword:"#0000FF",syntaxFunction:"#795E26",syntaxVariable:"#001080",syntaxString:"#A31515",syntaxNumber:"#098658",syntaxType:"#267F99",syntaxOperator:"#000000",syntaxPunctuation:"#000000",thinkingOff:"lightGray",thinkingMinimal:"#767676",thinkingLow:"blue",thinkingMedium:"teal",thinkingHigh:"#875f87",thinkingXhigh:"#8b008b",bashMode:"green"},export:{pageBg:"#f8f8f8",cardBg:"#ffffff",infoBg:"#fffae6"}}});import*as f_ from"node:fs";import*as byt from"node:path";function qKl(){let t=process.env.COLORTERM;if(t==="truecolor"||t==="24bit"||process.env.WT_SESSION)return"truecolor";let e=process.env.TERM||"";return e==="dumb"||e===""||e==="linux"||process.env.TERM_PROGRAM==="Apple_Terminal"||e==="screen"||e.startsWith("screen-")||e.startsWith("screen.")?"256color":"truecolor"}function W2n(t){let e=t.replace("#","");if(e.length!==6)throw new Error(`Invalid hex color: ${t}`);let n=Number.parseInt(e.slice(0,2),16),r=Number.parseInt(e.slice(2,4),16),i=Number.parseInt(e.slice(4,6),16);if(Number.isNaN(n)||Number.isNaN(r)||Number.isNaN(i))throw new Error(`Invalid hex color: ${t}`);return{r:n,g:r,b:i}}function O2n(t){let e=Number.POSITIVE_INFINITY,n=0;for(let[r,i]of Eyt.entries()){let o=Math.abs(t-i);o<e&&(e=o,n=r)}return n}function e8l(t){let e=Number.POSITIVE_INFINITY,n=0;for(let[r,i]of Zpo.entries()){let o=Math.abs(t-i);o<e&&(e=o,n=r)}return n}function Ppo(t,e,n,r,i,o){let s=t-r,a=e-i,l=n-o;return s*s*.299+a*a*.587+l*l*.114}function t8l(t,e,n){let r=O2n(t),i=O2n(e),o=O2n(n),s=Eyt[r]??0,a=Eyt[i]??0,l=Eyt[o]??0,c=16+36*r+6*i+o,u=Ppo(t,e,n,s,a,l),d=Math.round(.299*t+.587*e+.114*n),p=e8l(d),A=Zpo[p]??0,g=232+p,m=Ppo(t,e,n,A,A,A),h=Math.max(t,e,n),f=Math.min(t,e,n);return h-f<10&&m<u?g:c}function Xpo(t){let{r:e,g:n,b:r}=W2n(t);return t8l(e,n,r)}function n8l(t,e){if(t==="")return"\x1B[39m";if(typeof t=="number")return`\x1B[38;5;${t}m`;if(t.startsWith("#")){if(e==="truecolor"){let{r,g:i,b:o}=W2n(t);return`\x1B[38;2;${r};${i};${o}m`}return`\x1B[38;5;${Xpo(t)}m`}throw new Error(`Invalid color value: ${t}`)}function r8l(t,e){if(t==="")return"\x1B[49m";if(typeof t=="number")return`\x1B[48;5;${t}m`;if(t.startsWith("#")){if(e==="truecolor"){let{r,g:i,b:o}=W2n(t);return`\x1B[48;2;${r};${i};${o}m`}return`\x1B[48;5;${Xpo(t)}m`}throw new Error(`Invalid color value: ${t}`)}function Z2n(t,e,n=new Set){if(typeof t=="number"||t===""||t.startsWith("#"))return t;if(n.has(t))throw new Error(`Circular variable reference detected: ${t}`);if(!(t in e))throw new Error(`Variable reference not found: ${t}`);n.add(t);let r=e[t];if(r===void 0)throw new Error(`Variable reference not found: ${t}`);return Z2n(r,e,n)}function Ypo(t,e={}){let n={};for(let[r,i]of Object.entries(t))n[r]=Z2n(i,e);return n}function Cyt(){let t=new Set(Object.keys(X2n)),e=ZUe();if(f_.existsSync(e)){let n=f_.readdirSync(e);for(let r of n)r.endsWith(".json")&&t.add(r.slice(0,-5))}for(let n of ere.keys())t.add(n);return Array.from(t).sort()}function Jpo(){let t=ZUe(),e=[];for(let n of Object.keys(X2n))e.push({name:n,path:void 0});if(f_.existsSync(t)){for(let n of f_.readdirSync(t))if(n.endsWith(".json")){let r=n.slice(0,-5);e.some(i=>i.name===r)||e.push({name:r,path:byt.join(t,n)})}}for(let[n,r]of ere.entries())e.some(i=>i.name===n)||e.push({name:n,path:r.sourcePath});return e.sort((n,r)=>n.name.localeCompare(r.name))}function i8l(t,e){if(!Lpo.Check(e)){let n=Array.from(Lpo.Errors(e)),r=[],i=[];for(let s of n){let l=s.path.match(/^\/colors\/(\w+)$/)?.[1];l&&s.message.includes("Required")?r.push(l):i.push(` - ${s.path}: ${s.message}`)}let o=`Invalid theme "${t}":
|
|
6728
6728
|
`;throw r.length>0&&(o+=`
|
|
6729
6729
|
Missing required color tokens:
|
|
6730
6730
|
`,o+=r.map(s=>` - ${s}`).join(`
|
|
@@ -12640,7 +12640,7 @@ list options:
|
|
|
12640
12640
|
current workspace's session directory)
|
|
12641
12641
|
|
|
12642
12642
|
--help, -h Show this help`;izc=5});import{existsSync as dzc,readFileSync as pzc}from"node:fs";import{join as Azc}from"node:path";function VWo(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function gzc(t){return t in FWo}function mzc(t){if(!VWo(t))return{};let e={};for(let[n,r]of Object.entries(t)){if(typeof r=="string"){e[n]=r;continue}Array.isArray(r)&&r.every(i=>typeof i=="string")&&(e[n]=r)}return e}function eZn(t){let e={},n=!1;for(let[r,i]of Object.entries(t)){let o=gzc(r)?FWo[r]:r;if(o!==r&&(n=!0),r!==o&&Object.hasOwn(t,o)){n=!0;continue}e[o]=i}return{config:hzc(e),migrated:n}}function hzc(t){let e={};for(let r of Object.keys(DWo))Object.hasOwn(t,r)&&(e[r]=t[r]);let n=Object.keys(t).filter(r=>!Object.hasOwn(e,r)).sort();for(let r of n)e[r]=t[r];return e}function fzc(t){if(dzc(t))try{let e=JSON.parse(pzc(t,"utf-8"));return VWo(e)?e:void 0}catch{return}}var DWo,FWo,tF,QIe=I(()=>{"use strict";ci();Ju();DWo={...n7,"app.interrupt":{defaultKeys:"escape",description:"Cancel or abort"},"app.clear":{defaultKeys:"ctrl+c",description:"Clear editor"},"app.exit":{defaultKeys:"ctrl+d",description:"Exit when editor is empty"},"app.suspend":{defaultKeys:"ctrl+z",description:"Suspend to background"},"app.thinking.cycle":{defaultKeys:"shift+tab",description:"Cycle thinking level"},"app.model.cycleForward":{defaultKeys:[],description:"Cycle to next model"},"app.model.cycleBackward":{defaultKeys:[],description:"Cycle to previous model"},"app.model.select":{defaultKeys:"ctrl+l",description:"Open model selector"},"app.tools.expand":{defaultKeys:"ctrl+o",description:"Toggle tool output"},"app.thinking.toggle":{defaultKeys:"ctrl+t",description:"Toggle thinking blocks"},"app.session.toggleNamedFilter":{defaultKeys:"ctrl+n",description:"Toggle named session filter"},"app.editor.external":{defaultKeys:"ctrl+g",description:"Open external editor"},"app.message.followUp":{defaultKeys:"alt+enter",description:"Queue follow-up message"},"app.message.dequeue":{defaultKeys:"alt+up",description:"Restore queued messages"},"app.clipboard.pasteImage":{defaultKeys:process.platform==="win32"?"alt+v":"ctrl+v",description:"Paste image from clipboard"},"app.session.new":{defaultKeys:[],description:"Start a new session"},"app.session.tree":{defaultKeys:[],description:"Open session tree"},"app.session.fork":{defaultKeys:[],description:"Fork current session"},"app.session.resume":{defaultKeys:[],description:"Resume a session"},"app.tree.foldOrUp":{defaultKeys:["ctrl+left","alt+left"],description:"Fold tree branch or move up"},"app.tree.unfoldOrDown":{defaultKeys:["ctrl+right","alt+right"],description:"Unfold tree branch or move down"},"app.tree.editLabel":{defaultKeys:"shift+l",description:"Edit tree label"},"app.tree.toggleLabelTimestamp":{defaultKeys:"shift+t",description:"Toggle tree label timestamps"},"app.session.togglePath":{defaultKeys:"ctrl+p",description:"Toggle session path display"},"app.session.toggleSort":{defaultKeys:"ctrl+s",description:"Toggle session sort mode"},"app.session.rename":{defaultKeys:"ctrl+r",description:"Rename session"},"app.session.delete":{defaultKeys:"ctrl+d",description:"Delete session"},"app.session.deleteNoninvasive":{defaultKeys:"ctrl+backspace",description:"Delete session when query is empty"}},FWo={cursorUp:"tui.editor.cursorUp",cursorDown:"tui.editor.cursorDown",cursorLeft:"tui.editor.cursorLeft",cursorRight:"tui.editor.cursorRight",cursorWordLeft:"tui.editor.cursorWordLeft",cursorWordRight:"tui.editor.cursorWordRight",cursorLineStart:"tui.editor.cursorLineStart",cursorLineEnd:"tui.editor.cursorLineEnd",jumpForward:"tui.editor.jumpForward",jumpBackward:"tui.editor.jumpBackward",pageUp:"tui.editor.pageUp",pageDown:"tui.editor.pageDown",deleteCharBackward:"tui.editor.deleteCharBackward",deleteCharForward:"tui.editor.deleteCharForward",deleteWordBackward:"tui.editor.deleteWordBackward",deleteWordForward:"tui.editor.deleteWordForward",deleteToLineStart:"tui.editor.deleteToLineStart",deleteToLineEnd:"tui.editor.deleteToLineEnd",yank:"tui.editor.yank",yankPop:"tui.editor.yankPop",undo:"tui.editor.undo",newLine:"tui.input.newLine",submit:"tui.input.submit",tab:"tui.input.tab",copy:"tui.input.copy",selectUp:"tui.select.up",selectDown:"tui.select.down",selectPageUp:"tui.select.pageUp",selectPageDown:"tui.select.pageDown",selectConfirm:"tui.select.confirm",selectCancel:"tui.select.cancel",interrupt:"app.interrupt",clear:"app.clear",exit:"app.exit",suspend:"app.suspend",cycleThinkingLevel:"app.thinking.cycle",cycleModelForward:"app.model.cycleForward",cycleModelBackward:"app.model.cycleBackward",selectModel:"app.model.select",expandTools:"app.tools.expand",toggleThinking:"app.thinking.toggle",toggleSessionNamedFilter:"app.session.toggleNamedFilter",externalEditor:"app.editor.external",followUp:"app.message.followUp",dequeue:"app.message.dequeue",pasteImage:"app.clipboard.pasteImage",newSession:"app.session.new",tree:"app.session.tree",fork:"app.session.fork",resume:"app.session.resume",treeFoldOrUp:"app.tree.foldOrUp",treeUnfoldOrDown:"app.tree.unfoldOrDown",treeEditLabel:"app.tree.editLabel",treeToggleLabelTimestamp:"app.tree.toggleLabelTimestamp",toggleSessionPath:"app.session.togglePath",toggleSessionSort:"app.session.toggleSort",renameSession:"app.session.rename",deleteSession:"app.session.delete",deleteSessionNoninvasive:"app.session.deleteNoninvasive"};tF=class t extends nP{configPath;constructor(e={},n){super(DWo,e),this.configPath=n}static create(e=Co()){let n=Azc(e,"keybindings.json"),r=t.loadFromFile(n);return new t(r,n)}reload(){this.configPath&&this.setUserBindings(t.loadFromFile(this.configPath))}getEffectiveConfig(){return this.getResolvedBindings()}static loadFromFile(e){let n=fzc(e);return n?mzc(eZn(n).config):{}}}});var Wo,ef=I(()=>{"use strict";Sl();Wo=class{color;constructor(e=n=>ut.fg("border",n)){this.color=e}invalidate(){}render(e){return[this.color("\u2500".repeat(Math.max(1,e)))]}}});function MWo(t){return t.toLowerCase().replace(/\s+/g," ").trim()}function Ezc(t){return`${t.id} ${t.name??""} ${t.allMessagesText} ${t.cwd}`}function tZn(t){return!!t.name?.trim()}function bzc(t,e){return e==="all"?!0:tZn(t)}function Czc(t){let e=t.trim();if(!e)return{mode:"tokens",tokens:[],regex:null};if(e.startsWith("re:")){let a=e.slice(3).trim();if(!a)return{mode:"regex",tokens:[],regex:null,error:"Empty regex"};try{return{mode:"regex",tokens:[],regex:new RegExp(a,"i")}}catch(l){let c=l instanceof Error?l.message:String(l);return{mode:"regex",tokens:[],regex:null,error:c}}}let n=[],r="",i=!1,o=!1,s=a=>{let l=r.trim();r="",l&&n.push({kind:a,value:l})};for(let a of e){if(a==='"'){i?(s("phrase"),i=!1):(s("fuzzy"),i=!0);continue}if(!i&&/\s/.test(a)){s("fuzzy");continue}r+=a}return i&&(o=!0),o?{mode:"tokens",tokens:e.split(/\s+/).map(a=>a.trim()).filter(a=>a.length>0).map(a=>({kind:"fuzzy",value:a})),regex:null}:(s(i?"phrase":"fuzzy"),{mode:"tokens",tokens:n,regex:null})}function GWo(t,e){let n=Ezc(t);if(e.mode==="regex"){if(!e.regex)return{matches:!1,score:0};let o=n.search(e.regex);return o<0?{matches:!1,score:0}:{matches:!0,score:o*.1}}if(e.tokens.length===0)return{matches:!0,score:0};let r=0,i=null;for(let o of e.tokens){if(o.kind==="phrase"){i===null&&(i=MWo(n));let a=MWo(o.value);if(!a)continue;let l=i.indexOf(a);if(l<0)return{matches:!1,score:0};r+=l*.1;continue}let s=$q(o.value,n);if(!s.matches)return{matches:!1,score:0};r+=s.score}return{matches:!0,score:r}}function UWo(t,e,n,r="all"){let i=r==="all"?t:t.filter(l=>bzc(l,r));if(!e.trim())return i;let s=Czc(e);if(s.error)return[];if(n==="recent"){let l=[];for(let c of i)GWo(c,s).matches&&l.push(c);return l}let a=[];for(let l of i){let c=GWo(l,s);c.matches&&a.push({session:l,score:c.score})}return a.sort((l,c)=>l.score!==c.score?l.score-c.score:c.session.modified.getTime()-l.session.modified.getTime()),a.map(l=>l.session)}var OWo=I(()=>{"use strict";ci()});import{spawnSync as yzc}from"node:child_process";import{existsSync as Izc}from"node:fs";import{unlink as Szc}from"node:fs/promises";function LWo(t){return t&&_T(t)}function _zc(t){let n=new Date().getTime()-t.getTime(),r=Math.floor(n/6e4),i=Math.floor(n/36e5),o=Math.floor(n/864e5);return r<1?"now":r<60?`${r}m`:i<24?`${i}h`:o<7?`${o}d`:o<30?`${Math.floor(o/7)}w`:o<365?`${Math.floor(o/30)}mo`:`${Math.floor(o/365)}y`}function Rzc(t){let e=new Map;for(let i of t)e.set(i.path,{session:i,children:[]});let n=[];for(let i of t){let o=e.get(i.path);if(!o)continue;let s=i.parentSessionPath;s&&e.has(s)?e.get(s)?.children.push(o):n.push(o)}let r=i=>{i.sort((o,s)=>s.session.modified.getTime()-o.session.modified.getTime());for(let o of i)r(o.children)};return r(n),n}function vzc(t){let e=[],n=(r,i,o,s)=>{e.push({session:r.session,depth:i,isLast:s,ancestorContinues:o});for(let a=0;a<r.children.length;a++){let l=r.children[a];if(!l)continue;let c=a===r.children.length-1,u=i>0?!s:!1;n(l,i+1,[...o,u],c)}};for(let r=0;r<t.length;r++){let i=t[r];i&&n(i,0,[],r===t.length-1)}return e}async function Bzc(t){let e=t.startsWith("-")?["--",t]:[t],n=yzc("trash",e,{encoding:"utf-8"}),r=()=>{let i=[];n.error&&i.push(n.error.message);let o=n.stderr?.trim();return o&&i.push(o.split(`
|
|
12643
|
-
`)[0]??o),i.length===0?null:`trash: ${i.join(" \xB7 ").slice(0,200)}`};if(n.status===0||!Izc(t))return{ok:!0,method:"trash"};try{return await Szc(t),{ok:!0,method:"unlink"}}catch(i){let o=i instanceof Error?i.message:String(i),s=r();return{ok:!1,method:"unlink",error:s?`${o} (${s})`:o}}}var nZn,rZn,M5,IBt=I(()=>{"use strict";ci();sb();QIe();Sl();ef();ug();OWo();nZn=class{scope;sortMode;nameFilter;requestRender;loading=!1;loadProgress=null;showPath=!1;confirmingDeletePath=null;statusMessage=null;statusTimeout=null;showRenameHint=!1;constructor(e,n,r,i){this.scope=e,this.sortMode=n,this.nameFilter=r,this.requestRender=i}setScope(e){this.scope=e}setSortMode(e){this.sortMode=e}setNameFilter(e){this.nameFilter=e}setLoading(e){this.loading=e,this.loadProgress=null}setProgress(e,n){this.loadProgress={loaded:e,total:n}}setShowPath(e){this.showPath=e}setShowRenameHint(e){this.showRenameHint=e}setConfirmingDeletePath(e){this.confirmingDeletePath=e}clearStatusTimeout(){this.statusTimeout&&(clearTimeout(this.statusTimeout),this.statusTimeout=null)}setStatusMessage(e,n){this.clearStatusTimeout(),this.statusMessage=e,!(!e||!n)&&(this.statusTimeout=setTimeout(()=>{this.statusMessage=null,this.statusTimeout=null,this.requestRender()},n))}invalidate(){}render(e){let n=this.scope==="current"?"Resume Session (Current Folder)":"Resume Session (All)",r=ut.bold(n),i;this.sortMode==="threaded"?i="Threaded":this.sortMode==="recent"?i="Recent":i="Fuzzy";let o=ut.fg("muted","Sort: ")+ut.fg("accent",i),s=this.nameFilter==="all"?"All":"Named",a=ut.fg("muted","Name: ")+ut.fg("accent",s),l;if(this.loading){let m=this.loadProgress?`${this.loadProgress.loaded}/${this.loadProgress.total}`:"...";l=`${ut.fg("muted","\u25CB Current Folder | ")}${ut.fg("accent",`Loading ${m}`)}`}else this.scope==="current"?l=`${ut.fg("accent","\u25C9 Current Folder")}${ut.fg("muted"," | \u25CB All")}`:l=`${ut.fg("muted","\u25CB Current Folder | ")}${ut.fg("accent","\u25C9 All")}`;let c=kr(`${l} ${a} ${o}`,e,""),u=Math.max(0,e-fi(c)-1),d=kr(r,u,""),p=Math.max(0,e-fi(d)-fi(c)),A,g;if(this.confirmingDeletePath!==null){let m=`Delete session? ${js("tui.select.confirm","confirm")} \xB7 ${js("tui.select.cancel","cancel")}`;A=ut.fg("error",kr(m,e,"\u2026")),g=""}else if(this.statusMessage){let m=this.statusMessage.type==="error"?"error":"accent";A=ut.fg(m,kr(this.statusMessage.message,e,"\u2026")),g=""}else{let m=this.showPath?"(on)":"(off)",h=ut.fg("muted"," \xB7 "),f=js("tui.input.tab","scope")+h+ut.fg("muted",'re:<pattern> regex \xB7 "phrase" exact'),E=[js("app.session.toggleSort","sort"),js("app.session.toggleNamedFilter","named"),js("app.session.delete","delete"),js("app.session.togglePath",`path ${m}`)];this.showRenameHint&&E.push(js("app.session.rename","rename"));let b=E.join(h);A=kr(f,e,"\u2026"),g=kr(b,e,"\u2026")}return[`${d}${" ".repeat(p)}${c}`,A,g]}};rZn=class{getSelectedSessionPath(){return this.filteredSessions[this.selectedIndex]?.session.path}allSessions=[];filteredSessions=[];selectedIndex=0;searchInput;showCwd=!1;sortMode="threaded";nameFilter="all";keybindings;showPath=!1;confirmingDeletePath=null;currentSessionFilePath;onSelect;onCancel;onExit=()=>{};onToggleScope;onToggleSort;onToggleNameFilter;onTogglePath;onDeleteConfirmationChange;onDeleteSession;onRenameSession;onError;maxVisible=10;_focused=!1;get focused(){return this._focused}set focused(e){this._focused=e,this.searchInput.focused=e}constructor(e,n,r,i,o,s){this.allSessions=e,this.filteredSessions=[],this.searchInput=new wl,this.showCwd=n,this.sortMode=r,this.nameFilter=i,this.keybindings=o,this.currentSessionFilePath=s,this.filterSessions(""),this.searchInput.onSubmit=()=>{if(this.filteredSessions[this.selectedIndex]){let a=this.filteredSessions[this.selectedIndex];this.onSelect&&this.onSelect(a.session.path)}}}setSortMode(e){this.sortMode=e,this.filterSessions(this.searchInput.getValue())}setNameFilter(e){this.nameFilter=e,this.filterSessions(this.searchInput.getValue())}setSessions(e,n){this.allSessions=e,this.showCwd=n,this.filterSessions(this.searchInput.getValue())}filterSessions(e){let n=e.trim(),r=this.nameFilter==="all"?this.allSessions:this.allSessions.filter(i=>tZn(i));if(this.sortMode==="threaded"&&!n){let i=Rzc(r);this.filteredSessions=vzc(i)}else{let i=UWo(r,e,this.sortMode,"all");this.filteredSessions=i.map(o=>({session:o,depth:0,isLast:!0,ancestorContinues:[]}))}this.selectedIndex=Math.min(this.selectedIndex,Math.max(0,this.filteredSessions.length-1))}setConfirmingDeletePath(e){this.confirmingDeletePath=e,this.onDeleteConfirmationChange?.(e)}startDeleteConfirmationForSelectedSession(){let e=this.filteredSessions[this.selectedIndex];if(e){if(this.currentSessionFilePath&&e.session.path===this.currentSessionFilePath){this.onError?.("Cannot delete the currently active session");return}this.setConfirmingDeletePath(e.session.path)}}invalidate(){}render(e){let n=[];if(n.push(...this.searchInput.render(e)),n.push(""),this.filteredSessions.length===0){let o;if(this.nameFilter==="named"){let s=GA("app.session.toggleNamedFilter");this.showCwd?o=` No named sessions found. Press ${s} to show all.`:o=` No named sessions in current folder. Press ${s} to show all, or Tab to view all.`}else this.showCwd?o=" No sessions found":o=" No sessions in current folder. Press Tab to view all.";return n.push(ut.fg("muted",kr(o,e,"\u2026"))),n}let r=Math.max(0,Math.min(this.selectedIndex-Math.floor(this.maxVisible/2),this.filteredSessions.length-this.maxVisible)),i=Math.min(r+this.maxVisible,this.filteredSessions.length);for(let o=r;o<i;o++){let s=this.filteredSessions[o];if(!s)continue;let a=s.session,l=o===this.selectedIndex,c=a.path===this.confirmingDeletePath,u=this.currentSessionFilePath===a.path,d=this.buildTreePrefix(s),p=!!a.name,g=(a.name??a.firstMessage).replace(new RegExp("[\\x00-\\x1f\\x7f]","g")," ").trim(),m=_zc(a.modified),f=`${String(a.messageCount)} ${m}`;this.showCwd&&a.cwd&&(f=`${LWo(a.cwd)} ${f}`),this.showPath&&(f=`${LWo(a.path)} ${f}`);let E=l?ut.fg("accent","\u203A "):" ",b=fi(d),y=fi(f)+2,_=e-2-b-y,v=kr(g,Math.max(10,_),"\u2026"),R=null;c?R="error":u?R="accent":p&&(R="warning");let x=R?ut.fg(R,v):v;l&&(x=ut.bold(x));let w=E+ut.fg("dim",d)+x,F=fi(w),T=Math.max(1,e-F-fi(f)),D=ut.fg(c?"error":"dim",f),Q=w+" ".repeat(T)+D;l&&(Q=ut.bg("selectedBg",Q)),n.push(kr(Q,e))}if(r>0||i<this.filteredSessions.length){let o=` (${this.selectedIndex+1}/${this.filteredSessions.length})`,s=ut.fg("muted",kr(o,e,""));n.push(s)}return n}buildTreePrefix(e){if(e.depth===0)return"";let n=e.ancestorContinues.map(i=>i?"\u2502 ":" "),r=e.isLast?"\u2514\u2500 ":"\u251C\u2500 ";return n.join("")+r}handleInput(e){let n=bo();if(this.confirmingDeletePath!==null){if(n.matches(e,"tui.select.confirm")){let r=this.confirmingDeletePath;this.setConfirmingDeletePath(null),this.onDeleteSession?.(r);return}if(n.matches(e,"tui.select.cancel")){this.setConfirmingDeletePath(null);return}return}if(n.matches(e,"tui.input.tab")){this.onToggleScope&&this.onToggleScope();return}if(n.matches(e,"app.session.toggleSort")){this.onToggleSort?.();return}if(this.keybindings.matches(e,"app.session.toggleNamedFilter")){this.onToggleNameFilter?.();return}if(n.matches(e,"app.session.togglePath")){this.showPath=!this.showPath,this.onTogglePath?.(this.showPath);return}if(n.matches(e,"app.session.delete")){this.startDeleteConfirmationForSelectedSession();return}if(n.matches(e,"app.session.rename")){let r=this.filteredSessions[this.selectedIndex];r&&this.onRenameSession?.(r.session.path);return}if(n.matches(e,"app.session.deleteNoninvasive")){if(this.searchInput.getValue().length>0){this.searchInput.handleInput(e),this.filterSessions(this.searchInput.getValue());return}this.startDeleteConfirmationForSelectedSession();return}if(n.matches(e,"tui.select.up"))this.selectedIndex=Math.max(0,this.selectedIndex-1);else if(n.matches(e,"tui.select.down"))this.selectedIndex=Math.min(this.filteredSessions.length-1,this.selectedIndex+1);else if(n.matches(e,"tui.select.pageUp"))this.selectedIndex=Math.max(0,this.selectedIndex-this.maxVisible);else if(n.matches(e,"tui.select.pageDown"))this.selectedIndex=Math.min(this.filteredSessions.length-1,this.selectedIndex+this.maxVisible);else if(n.matches(e,"tui.select.confirm")){let r=this.filteredSessions[this.selectedIndex];r&&this.onSelect&&this.onSelect(r.session.path)}else n.matches(e,"tui.select.cancel")?this.onCancel&&this.onCancel():(this.searchInput.handleInput(e),this.filterSessions(this.searchInput.getValue()))}};M5=class extends xr{handleInput(e){if(this.mode==="rename"){if(bo().matches(e,"tui.select.cancel")){this.exitRenameMode();return}this.renameInput.handleInput(e);return}this.sessionList.handleInput(e)}canRename=!0;sessionList;header;keybindings;scope="current";sortMode="threaded";nameFilter="all";currentSessions=null;allSessions=null;currentSessionsLoader;allSessionsLoader;onCancel;requestRender;renameSession;currentLoading=!1;allLoading=!1;allLoadSeq=0;mode="list";renameInput=new wl;renameTargetPath=null;_focused=!1;get focused(){return this._focused}set focused(e){this._focused=e,this.sessionList.focused=e,this.renameInput.focused=e,e&&this.mode==="rename"&&(this.renameInput.focused=!0)}buildBaseLayout(e,n){this.clear(),this.addChild(new cn(1)),this.addChild(new Wo(r=>ut.fg("accent",r))),this.addChild(new cn(1)),(n?.showHeader??!0)&&(this.addChild(this.header),this.addChild(new cn(1))),this.addChild(e),this.addChild(new cn(1)),this.addChild(new Wo(r=>ut.fg("accent",r)))}constructor(e,n,r,i,o,s,a,l){super(),this.keybindings=a?.keybindings??tF.create(),this.currentSessionsLoader=e,this.allSessionsLoader=n,this.onCancel=i,this.requestRender=s,this.header=new nZn(this.scope,this.sortMode,this.nameFilter,this.requestRender);let c=a?.renameSession;this.renameSession=c,this.canRename=!!c,this.header.setShowRenameHint(a?.showRenameHint??this.canRename),this.sessionList=new rZn([],!1,this.sortMode,this.nameFilter,this.keybindings,l),this.buildBaseLayout(this.sessionList),this.renameInput.onSubmit=d=>{this.confirmRename(d)};let u=()=>this.header.setStatusMessage(null);this.sessionList.onSelect=d=>{u(),r(d)},this.sessionList.onCancel=()=>{u(),i()},this.sessionList.onExit=()=>{u(),o()},this.sessionList.onToggleScope=()=>this.toggleScope(),this.sessionList.onToggleSort=()=>this.toggleSortMode(),this.sessionList.onToggleNameFilter=()=>this.toggleNameFilter(),this.sessionList.onRenameSession=d=>{if(!c||this.scope==="current"&&this.currentLoading||this.scope==="all"&&this.allLoading)return;let A=(this.scope==="all"?this.allSessions??[]:this.currentSessions??[]).find(g=>g.path===d);this.enterRenameMode(d,A?.name)},this.sessionList.onTogglePath=d=>{this.header.setShowPath(d),this.requestRender()},this.sessionList.onDeleteConfirmationChange=d=>{this.header.setConfirmingDeletePath(d),this.requestRender()},this.sessionList.onError=d=>{this.header.setStatusMessage({type:"error",message:d},3e3),this.requestRender()},this.sessionList.onDeleteSession=async d=>{let p=await Bzc(d);if(p.ok){this.currentSessions&&(this.currentSessions=this.currentSessions.filter(h=>h.path!==d)),this.allSessions&&(this.allSessions=this.allSessions.filter(h=>h.path!==d));let A=this.scope==="all"?this.allSessions??[]:this.currentSessions??[],g=this.scope==="all";this.sessionList.setSessions(A,g);let m=p.method==="trash"?"Session moved to trash":"Session deleted";this.header.setStatusMessage({type:"info",message:m},2e3),await this.refreshSessionsAfterMutation()}else{let A=p.error??"Unknown error";this.header.setStatusMessage({type:"error",message:`Failed to delete: ${A}`},3e3)}this.requestRender()},this.loadCurrentSessions()}loadCurrentSessions(){this.loadScope("current","initial")}enterRenameMode(e,n){this.mode="rename",this.renameTargetPath=e,this.renameInput.setValue(n??""),this.renameInput.focused=!0;let r=new xr;r.addChild(new Ut(ut.bold("Rename Session"),1,0)),r.addChild(new cn(1)),r.addChild(this.renameInput),r.addChild(new cn(1)),r.addChild(new Ut(ut.fg("muted",`${GA("tui.select.confirm")} to save \xB7 ${GA("tui.select.cancel")} to cancel`),1,0)),this.buildBaseLayout(r,{showHeader:!1}),this.requestRender()}exitRenameMode(){this.mode="list",this.renameTargetPath=null,this.buildBaseLayout(this.sessionList),this.requestRender()}async confirmRename(e){let n=e.trim();if(!n)return;let r=this.renameTargetPath;if(!r){this.exitRenameMode();return}let i=this.renameSession;if(!i){this.exitRenameMode();return}try{await i(r,n),await this.refreshSessionsAfterMutation()}finally{this.exitRenameMode()}}async loadScope(e,n){let r=e==="all";e==="current"?this.currentLoading=!0:this.allLoading=!0;let i=e==="all"?++this.allLoadSeq:void 0;this.header.setScope(e),this.header.setLoading(!0),this.requestRender();let o=(s,a)=>{e===this.scope&&(i!==void 0&&i!==this.allLoadSeq||(this.header.setProgress(s,a),this.requestRender()))};try{let s=await(e==="current"?this.currentSessionsLoader(o):this.allSessionsLoader(o));if(e==="current"?(this.currentSessions=s,this.currentLoading=!1):(this.allSessions=s,this.allLoading=!1),e!==this.scope||i!==void 0&&i!==this.allLoadSeq)return;this.header.setLoading(!1),this.sessionList.setSessions(s,r),this.requestRender(),e==="all"&&s.length===0&&(this.currentSessions?.length??0)===0&&this.onCancel()}catch(s){if(e==="current"?this.currentLoading=!1:this.allLoading=!1,e!==this.scope||i!==void 0&&i!==this.allLoadSeq)return;let a=s instanceof Error?s.message:String(s);this.header.setLoading(!1),this.header.setStatusMessage({type:"error",message:`Failed to load sessions: ${a}`},4e3),n==="initial"&&this.sessionList.setSessions([],r),this.requestRender()}}toggleSortMode(){let e;this.sortMode==="threaded"?e="recent":this.sortMode==="recent"?e="relevance":e="threaded",this.sortMode=e,this.header.setSortMode(this.sortMode),this.sessionList.setSortMode(this.sortMode),this.requestRender()}toggleNameFilter(){this.nameFilter=this.nameFilter==="all"?"named":"all",this.header.setNameFilter(this.nameFilter),this.sessionList.setNameFilter(this.nameFilter),this.requestRender()}async refreshSessionsAfterMutation(){await this.loadScope(this.scope,"refresh")}toggleScope(){if(this.scope==="current"){if(this.scope="all",this.header.setScope(this.scope),this.allSessions!==null){this.header.setLoading(!1),this.sessionList.setSessions(this.allSessions,!0),this.requestRender();return}this.allLoading||this.loadScope("all","toggle");return}this.scope="current",this.header.setScope(this.scope),this.header.setLoading(this.currentLoading),this.sessionList.setSessions(this.currentSessions??[],!1),this.requestRender()}getSessionList(){return this.sessionList}}});function PWo(t,e){return new Promise(n=>{let r=new fm(new bm,void 0,Co()),i=tF.create();kR(i);let o=!1,s=new M5(t,e,a=>{o||(o=!0,r.stop(),n(a))},()=>{o||(o=!0,r.stop(),n(null))},()=>{r.stop(),process.exit(0)},()=>r.requestRender(),{showRenameHint:!1,keybindings:i});r.addChild(s),r.setFocus(s.getSessionList()),r.start()})}var WWo=I(()=>{"use strict";ci();Ju();QIe();IBt()});var SBt,iZn=I(()=>{SBt={name:"@augmentcode/onison",version:"999.999.999",description:"Coding agent CLI with read, bash, edit, write tools and session management",type:"module",bin:{"auggie-v2":"./auggie-v2.mjs"},files:["auggie-v2.mjs","auggie-v2.mjs.d","indexing-worker.mjs","vfs-prefetch-worker.mjs","README.md","CHANGELOG.md"],publishConfig:{registry:"https://registry.npmjs.org",access:"public"},engines:{node:">=20.6.0"},license:"MIT",repository:{type:"git",url:"git+https://github.com/augmentcode/hermes.git",directory:"apps/auggie-v2"},keywords:["coding-agent","ai","llm","cli","tui","agent"]}});import{spawnSync as xzc}from"node:child_process";import{existsSync as Tzc,readFileSync as Nzc,realpathSync as kzc}from"node:fs";import{basename as Qzc,dirname as Dzc,extname as Fzc,isAbsolute as Vzc,join as Mzc,relative as Gzc,resolve as Uzc,sep as Ozc}from"node:path";function Xzc(t,e){try{let n=JSON.parse(e.readFileSync(t,"utf8"));return typeof n=="object"&&n!==null?n:void 0}catch{return}}function Yzc(t,e,n){let r=e.dirname(t);for(;;){let i=e.join(r,"package.json");if(n.existsSync(i)){let s=Xzc(i,n);return s?{packageRoot:r,packageJson:s}:void 0}let o=e.dirname(r);if(o===r)return;r=o}}function Jzc(t){return t.replaceAll("\\","/").toLowerCase()}function zzc(t){let e=Jzc(t);if(e.includes("/.pnpm/")||e.includes("/pnpm/global/")||e.includes("/pnpm/node_modules/"))return"pnpm";if(e.includes("/.yarn/")||e.includes("/yarn/global/")||e.includes("/yarn/node_modules/"))return"yarn"}function Hzc(t){return typeof t=="string"?[t]:typeof t!="object"||t===null||Array.isArray(t)?[]:Object.values(t).filter(e=>typeof e=="string")}function Kzc({bin:t,entryPath:e,packageRoot:n,pathApi:r}){let i=r.resolve(e);return Hzc(t).some(o=>r.resolve(n,o)===i)}function jzc(t,e=_Bt){if(e.basename(t)!=="onison")return;let n=e.dirname(t);if(e.basename(n)!=="@augmentcode")return;let r=e.dirname(n);if(e.basename(r)==="node_modules")return e.dirname(r)}function YWo({entryPath:t,runtimeVersion:e,pathApi:n=_Bt,fs:r=Zzc}){if(!t)return{type:"unknown",reason:"The running executable path is unavailable."};let i;try{i=r.realpathSync(t)}catch{return{type:"unknown",reason:"The running executable path could not be resolved."}}let o=n.extname(i).toLowerCase();if([".ts",".tsx",".mts",".cts"].includes(o))return{type:"source",reason:"The running entry point is a source file."};let s=Yzc(i,n,r);if(!s)return[".js",".mjs",".cjs"].includes(o)?{type:"unknown",reason:"No package metadata was found for the running JavaScript entry point."}:{type:"standalone"};let{packageJson:a,packageRoot:l}=s;if(a.name==="@augmentcode/auggie-v2")return{type:"source",reason:"The running package is a development package."};if(a.name!==Aoe)return{type:"unknown",reason:"The running package is not the official npm release package."};if(typeof a.version!="string")return{type:"unknown",reason:"The installed package version is missing or invalid."};if(a.version!==e)return{type:"unknown",reason:"The runtime and installed package versions do not match."};if(!Kzc({bin:a.bin,entryPath:i,packageRoot:l,pathApi:n}))return{type:"unknown",reason:"The running entry point does not match the installed package metadata."};let c=zzc(i);if(c)return{type:"unsupported-package-manager",manager:c};let u=jzc(l,n);return u?{type:"npm",entryPath:i,packageRoot:l,installBase:u,version:a.version}:{type:"unknown",reason:"The npm package root has an unsupported directory layout."}}function wK(t){let e=$zc.exec(t);if(!e)return;let n=e[4]?.split(".")??[],r=[];for(let i of n){let o=qzc.test(i);if(o&&i.length>1&&i.startsWith("0"))return;r.push({value:i,numeric:o})}return{raw:t,core:[e[1],e[2],e[3]],prerelease:r}}function JWo(t,e){return t.length!==e.length?t.length<e.length?-1:1:t===e?0:t<e?-1:1}function eHc(t,e){return t.numeric&&e.numeric?JWo(t.value,e.value):t.numeric!==e.numeric?t.numeric?-1:1:t.value===e.value?0:t.value<e.value?-1:1}function oZn(t,e){for(let r=0;r<t.core.length;r+=1){let i=JWo(t.core[r],e.core[r]);if(i!==0)return i}if(t.prerelease.length===0||e.prerelease.length===0)return t.prerelease.length===e.prerelease.length?0:t.prerelease.length===0?1:-1;let n=Math.max(t.prerelease.length,e.prerelease.length);for(let r=0;r<n;r+=1){let i=t.prerelease[r],o=e.prerelease[r];if(!i||!o)return i?1:-1;let s=eHc(i,o);if(s!==0)return s}return 0}function zWo(t){let n=wK(t)?.prerelease[0];return n&&!n.numeric?n.value:void 0}function tHc({candidates:t,current:e,channel:n}){let r;for(let i of t){let o=wK(i);o&&zWo(i)===n&&(oZn(o,e)<=0||(!r||oZn(o,r)>0)&&(r=o))}return r}function HWo({currentVersion:t,metadata:e}){let n=wK(t);if(!n)return{type:"invalid",reason:"The current version is not a valid release version."};let r=zWo(t);if(n.prerelease.length>0&&!r)return{type:"invalid",reason:"The current prerelease version does not identify a release channel."};if(!r){let a=e.distTags.latest,l=a?wK(a):void 0;return!(a&&l)||l.prerelease.length>0?{type:"invalid",reason:"The npm latest tag is missing or invalid."}:oZn(l,n)>0?{type:"update",targetVersion:a}:{type:"up-to-date"}}let i=e.distTags[r],o=i?[i,...e.versions]:e.versions,s=tHc({candidates:o,current:n,channel:r});return s?{type:"update",targetVersion:s.raw}:{type:"up-to-date"}}function nHc(t){if(typeof t!="object"||t===null)return;let e=t,n=e["dist-tags"],r=e.versions;if(typeof n!="object"||n===null||Array.isArray(n)||typeof r!="object"||r===null||Array.isArray(r))return;let i={};for(let[s,a]of Object.entries(n)){if(typeof a!="string"||!wK(a))return;i[s]=a}let o=Object.keys(r);if(!o.some(s=>!wK(s)))return{distTags:i,versions:o}}async function KWo({fetchImpl:t=fetch,createSignal:e=()=>AbortSignal.timeout(Lzc)}={}){try{let n=encodeURIComponent(Aoe),r=await t(`https://registry.npmjs.org/${n}`,{headers:{Accept:"application/json"},signal:e()});if(!r.ok)throw new yI("lookup-failed",`The npm registry returned HTTP ${r.status}.`);let i=nHc(await r.json());if(!i)throw new yI("lookup-failed","The npm registry returned invalid release metadata.");return i}catch(n){throw n instanceof yI?n:new yI("lookup-failed","Release metadata could not be retrieved from the npm registry.")}}function rHc(t){if(!/^[0-9A-Za-z@/._+-]+$/.test(t))throw new yI("npm-install-failed",BK["npm-install-failed"]);return t}function jWo({platform:t,args:e,stdio:n,timeout:r,prefix:i,env:o=process.env}){let s=n[1]==="pipe"||n[2]==="pipe",a={encoding:"utf8",shell:!1,stdio:n,timeout:r};if(s&&(a.maxBuffer=XWo*2),t!=="win32")return{command:"npm",args:e,options:a};let l=e.map(c=>c===i?'"%AUGGIE_UPGRADE_PREFIX%"':rHc(c));return{command:o.ComSpec??"cmd.exe",args:["/d","/s","/c",`npm.cmd ${l.join(" ")}`],options:{...a,env:i?{...o,AUGGIE_UPGRADE_PREFIX:i}:o}}}function $Wo(t,e,n){return xzc(t,e,n)}function iHc(t){return`${t.stderr??""}
|
|
12643
|
+
`)[0]??o),i.length===0?null:`trash: ${i.join(" \xB7 ").slice(0,200)}`};if(n.status===0||!Izc(t))return{ok:!0,method:"trash"};try{return await Szc(t),{ok:!0,method:"unlink"}}catch(i){let o=i instanceof Error?i.message:String(i),s=r();return{ok:!1,method:"unlink",error:s?`${o} (${s})`:o}}}var nZn,rZn,M5,IBt=I(()=>{"use strict";ci();sb();QIe();Sl();ef();ug();OWo();nZn=class{scope;sortMode;nameFilter;requestRender;loading=!1;loadProgress=null;showPath=!1;confirmingDeletePath=null;statusMessage=null;statusTimeout=null;showRenameHint=!1;constructor(e,n,r,i){this.scope=e,this.sortMode=n,this.nameFilter=r,this.requestRender=i}setScope(e){this.scope=e}setSortMode(e){this.sortMode=e}setNameFilter(e){this.nameFilter=e}setLoading(e){this.loading=e,this.loadProgress=null}setProgress(e,n){this.loadProgress={loaded:e,total:n}}setShowPath(e){this.showPath=e}setShowRenameHint(e){this.showRenameHint=e}setConfirmingDeletePath(e){this.confirmingDeletePath=e}clearStatusTimeout(){this.statusTimeout&&(clearTimeout(this.statusTimeout),this.statusTimeout=null)}setStatusMessage(e,n){this.clearStatusTimeout(),this.statusMessage=e,!(!e||!n)&&(this.statusTimeout=setTimeout(()=>{this.statusMessage=null,this.statusTimeout=null,this.requestRender()},n))}invalidate(){}render(e){let n=this.scope==="current"?"Resume Session (Current Folder)":"Resume Session (All)",r=ut.bold(n),i;this.sortMode==="threaded"?i="Threaded":this.sortMode==="recent"?i="Recent":i="Fuzzy";let o=ut.fg("muted","Sort: ")+ut.fg("accent",i),s=this.nameFilter==="all"?"All":"Named",a=ut.fg("muted","Name: ")+ut.fg("accent",s),l;if(this.loading){let m=this.loadProgress?`${this.loadProgress.loaded}/${this.loadProgress.total}`:"...";l=`${ut.fg("muted","\u25CB Current Folder | ")}${ut.fg("accent",`Loading ${m}`)}`}else this.scope==="current"?l=`${ut.fg("accent","\u25C9 Current Folder")}${ut.fg("muted"," | \u25CB All")}`:l=`${ut.fg("muted","\u25CB Current Folder | ")}${ut.fg("accent","\u25C9 All")}`;let c=kr(`${l} ${a} ${o}`,e,""),u=Math.max(0,e-fi(c)-1),d=kr(r,u,""),p=Math.max(0,e-fi(d)-fi(c)),A,g;if(this.confirmingDeletePath!==null){let m=`Delete session? ${js("tui.select.confirm","confirm")} \xB7 ${js("tui.select.cancel","cancel")}`;A=ut.fg("error",kr(m,e,"\u2026")),g=""}else if(this.statusMessage){let m=this.statusMessage.type==="error"?"error":"accent";A=ut.fg(m,kr(this.statusMessage.message,e,"\u2026")),g=""}else{let m=this.showPath?"(on)":"(off)",h=ut.fg("muted"," \xB7 "),f=js("tui.input.tab","scope")+h+ut.fg("muted",'re:<pattern> regex \xB7 "phrase" exact'),E=[js("app.session.toggleSort","sort"),js("app.session.toggleNamedFilter","named"),js("app.session.delete","delete"),js("app.session.togglePath",`path ${m}`)];this.showRenameHint&&E.push(js("app.session.rename","rename"));let b=E.join(h);A=kr(f,e,"\u2026"),g=kr(b,e,"\u2026")}return[`${d}${" ".repeat(p)}${c}`,A,g]}};rZn=class{getSelectedSessionPath(){return this.filteredSessions[this.selectedIndex]?.session.path}allSessions=[];filteredSessions=[];selectedIndex=0;searchInput;showCwd=!1;sortMode="threaded";nameFilter="all";keybindings;showPath=!1;confirmingDeletePath=null;currentSessionFilePath;onSelect;onCancel;onExit=()=>{};onToggleScope;onToggleSort;onToggleNameFilter;onTogglePath;onDeleteConfirmationChange;onDeleteSession;onRenameSession;onError;maxVisible=10;_focused=!1;get focused(){return this._focused}set focused(e){this._focused=e,this.searchInput.focused=e}constructor(e,n,r,i,o,s){this.allSessions=e,this.filteredSessions=[],this.searchInput=new wl,this.showCwd=n,this.sortMode=r,this.nameFilter=i,this.keybindings=o,this.currentSessionFilePath=s,this.filterSessions(""),this.searchInput.onSubmit=()=>{if(this.filteredSessions[this.selectedIndex]){let a=this.filteredSessions[this.selectedIndex];this.onSelect&&this.onSelect(a.session.path)}}}setSortMode(e){this.sortMode=e,this.filterSessions(this.searchInput.getValue())}setNameFilter(e){this.nameFilter=e,this.filterSessions(this.searchInput.getValue())}setSessions(e,n){this.allSessions=e,this.showCwd=n,this.filterSessions(this.searchInput.getValue())}filterSessions(e){let n=e.trim(),r=this.nameFilter==="all"?this.allSessions:this.allSessions.filter(i=>tZn(i));if(this.sortMode==="threaded"&&!n){let i=Rzc(r);this.filteredSessions=vzc(i)}else{let i=UWo(r,e,this.sortMode,"all");this.filteredSessions=i.map(o=>({session:o,depth:0,isLast:!0,ancestorContinues:[]}))}this.selectedIndex=Math.min(this.selectedIndex,Math.max(0,this.filteredSessions.length-1))}setConfirmingDeletePath(e){this.confirmingDeletePath=e,this.onDeleteConfirmationChange?.(e)}startDeleteConfirmationForSelectedSession(){let e=this.filteredSessions[this.selectedIndex];if(e){if(this.currentSessionFilePath&&e.session.path===this.currentSessionFilePath){this.onError?.("Cannot delete the currently active session");return}this.setConfirmingDeletePath(e.session.path)}}invalidate(){}render(e){let n=[];if(n.push(...this.searchInput.render(e)),n.push(""),this.filteredSessions.length===0){let o;if(this.nameFilter==="named"){let s=GA("app.session.toggleNamedFilter");this.showCwd?o=` No named sessions found. Press ${s} to show all.`:o=` No named sessions in current folder. Press ${s} to show all, or Tab to view all.`}else this.showCwd?o=" No sessions found":o=" No sessions in current folder. Press Tab to view all.";return n.push(ut.fg("muted",kr(o,e,"\u2026"))),n}let r=Math.max(0,Math.min(this.selectedIndex-Math.floor(this.maxVisible/2),this.filteredSessions.length-this.maxVisible)),i=Math.min(r+this.maxVisible,this.filteredSessions.length);for(let o=r;o<i;o++){let s=this.filteredSessions[o];if(!s)continue;let a=s.session,l=o===this.selectedIndex,c=a.path===this.confirmingDeletePath,u=this.currentSessionFilePath===a.path,d=this.buildTreePrefix(s),p=!!a.name,g=(a.name??a.firstMessage).replace(new RegExp("[\\x00-\\x1f\\x7f]","g")," ").trim(),m=_zc(a.modified),f=`${String(a.messageCount)} ${m}`;this.showCwd&&a.cwd&&(f=`${LWo(a.cwd)} ${f}`),this.showPath&&(f=`${LWo(a.path)} ${f}`);let E=l?ut.fg("accent","\u203A "):" ",b=fi(d),y=fi(f)+2,_=e-2-b-y,v=kr(g,Math.max(10,_),"\u2026"),R=null;c?R="error":u?R="accent":p&&(R="warning");let x=R?ut.fg(R,v):v;l&&(x=ut.bold(x));let w=E+ut.fg("dim",d)+x,F=fi(w),T=Math.max(1,e-F-fi(f)),D=ut.fg(c?"error":"dim",f),Q=w+" ".repeat(T)+D;l&&(Q=ut.bg("selectedBg",Q)),n.push(kr(Q,e))}if(r>0||i<this.filteredSessions.length){let o=` (${this.selectedIndex+1}/${this.filteredSessions.length})`,s=ut.fg("muted",kr(o,e,""));n.push(s)}return n}buildTreePrefix(e){if(e.depth===0)return"";let n=e.ancestorContinues.map(i=>i?"\u2502 ":" "),r=e.isLast?"\u2514\u2500 ":"\u251C\u2500 ";return n.join("")+r}handleInput(e){let n=bo();if(this.confirmingDeletePath!==null){if(n.matches(e,"tui.select.confirm")){let r=this.confirmingDeletePath;this.setConfirmingDeletePath(null),this.onDeleteSession?.(r);return}if(n.matches(e,"tui.select.cancel")){this.setConfirmingDeletePath(null);return}return}if(n.matches(e,"tui.input.tab")){this.onToggleScope&&this.onToggleScope();return}if(n.matches(e,"app.session.toggleSort")){this.onToggleSort?.();return}if(this.keybindings.matches(e,"app.session.toggleNamedFilter")){this.onToggleNameFilter?.();return}if(n.matches(e,"app.session.togglePath")){this.showPath=!this.showPath,this.onTogglePath?.(this.showPath);return}if(n.matches(e,"app.session.delete")){this.startDeleteConfirmationForSelectedSession();return}if(n.matches(e,"app.session.rename")){let r=this.filteredSessions[this.selectedIndex];r&&this.onRenameSession?.(r.session.path);return}if(n.matches(e,"app.session.deleteNoninvasive")){if(this.searchInput.getValue().length>0){this.searchInput.handleInput(e),this.filterSessions(this.searchInput.getValue());return}this.startDeleteConfirmationForSelectedSession();return}if(n.matches(e,"tui.select.up"))this.selectedIndex=Math.max(0,this.selectedIndex-1);else if(n.matches(e,"tui.select.down"))this.selectedIndex=Math.min(this.filteredSessions.length-1,this.selectedIndex+1);else if(n.matches(e,"tui.select.pageUp"))this.selectedIndex=Math.max(0,this.selectedIndex-this.maxVisible);else if(n.matches(e,"tui.select.pageDown"))this.selectedIndex=Math.min(this.filteredSessions.length-1,this.selectedIndex+this.maxVisible);else if(n.matches(e,"tui.select.confirm")){let r=this.filteredSessions[this.selectedIndex];r&&this.onSelect&&this.onSelect(r.session.path)}else n.matches(e,"tui.select.cancel")?this.onCancel&&this.onCancel():(this.searchInput.handleInput(e),this.filterSessions(this.searchInput.getValue()))}};M5=class extends xr{handleInput(e){if(this.mode==="rename"){if(bo().matches(e,"tui.select.cancel")){this.exitRenameMode();return}this.renameInput.handleInput(e);return}this.sessionList.handleInput(e)}canRename=!0;sessionList;header;keybindings;scope="current";sortMode="threaded";nameFilter="all";currentSessions=null;allSessions=null;currentSessionsLoader;allSessionsLoader;onCancel;requestRender;renameSession;currentLoading=!1;allLoading=!1;allLoadSeq=0;mode="list";renameInput=new wl;renameTargetPath=null;_focused=!1;get focused(){return this._focused}set focused(e){this._focused=e,this.sessionList.focused=e,this.renameInput.focused=e,e&&this.mode==="rename"&&(this.renameInput.focused=!0)}buildBaseLayout(e,n){this.clear(),this.addChild(new cn(1)),this.addChild(new Wo(r=>ut.fg("accent",r))),this.addChild(new cn(1)),(n?.showHeader??!0)&&(this.addChild(this.header),this.addChild(new cn(1))),this.addChild(e),this.addChild(new cn(1)),this.addChild(new Wo(r=>ut.fg("accent",r)))}constructor(e,n,r,i,o,s,a,l){super(),this.keybindings=a?.keybindings??tF.create(),this.currentSessionsLoader=e,this.allSessionsLoader=n,this.onCancel=i,this.requestRender=s,this.header=new nZn(this.scope,this.sortMode,this.nameFilter,this.requestRender);let c=a?.renameSession;this.renameSession=c,this.canRename=!!c,this.header.setShowRenameHint(a?.showRenameHint??this.canRename),this.sessionList=new rZn([],!1,this.sortMode,this.nameFilter,this.keybindings,l),this.buildBaseLayout(this.sessionList),this.renameInput.onSubmit=d=>{this.confirmRename(d)};let u=()=>this.header.setStatusMessage(null);this.sessionList.onSelect=d=>{u(),r(d)},this.sessionList.onCancel=()=>{u(),i()},this.sessionList.onExit=()=>{u(),o()},this.sessionList.onToggleScope=()=>this.toggleScope(),this.sessionList.onToggleSort=()=>this.toggleSortMode(),this.sessionList.onToggleNameFilter=()=>this.toggleNameFilter(),this.sessionList.onRenameSession=d=>{if(!c||this.scope==="current"&&this.currentLoading||this.scope==="all"&&this.allLoading)return;let A=(this.scope==="all"?this.allSessions??[]:this.currentSessions??[]).find(g=>g.path===d);this.enterRenameMode(d,A?.name)},this.sessionList.onTogglePath=d=>{this.header.setShowPath(d),this.requestRender()},this.sessionList.onDeleteConfirmationChange=d=>{this.header.setConfirmingDeletePath(d),this.requestRender()},this.sessionList.onError=d=>{this.header.setStatusMessage({type:"error",message:d},3e3),this.requestRender()},this.sessionList.onDeleteSession=async d=>{let p=await Bzc(d);if(p.ok){this.currentSessions&&(this.currentSessions=this.currentSessions.filter(h=>h.path!==d)),this.allSessions&&(this.allSessions=this.allSessions.filter(h=>h.path!==d));let A=this.scope==="all"?this.allSessions??[]:this.currentSessions??[],g=this.scope==="all";this.sessionList.setSessions(A,g);let m=p.method==="trash"?"Session moved to trash":"Session deleted";this.header.setStatusMessage({type:"info",message:m},2e3),await this.refreshSessionsAfterMutation()}else{let A=p.error??"Unknown error";this.header.setStatusMessage({type:"error",message:`Failed to delete: ${A}`},3e3)}this.requestRender()},this.loadCurrentSessions()}loadCurrentSessions(){this.loadScope("current","initial")}enterRenameMode(e,n){this.mode="rename",this.renameTargetPath=e,this.renameInput.setValue(n??""),this.renameInput.focused=!0;let r=new xr;r.addChild(new Ut(ut.bold("Rename Session"),1,0)),r.addChild(new cn(1)),r.addChild(this.renameInput),r.addChild(new cn(1)),r.addChild(new Ut(ut.fg("muted",`${GA("tui.select.confirm")} to save \xB7 ${GA("tui.select.cancel")} to cancel`),1,0)),this.buildBaseLayout(r,{showHeader:!1}),this.requestRender()}exitRenameMode(){this.mode="list",this.renameTargetPath=null,this.buildBaseLayout(this.sessionList),this.requestRender()}async confirmRename(e){let n=e.trim();if(!n)return;let r=this.renameTargetPath;if(!r){this.exitRenameMode();return}let i=this.renameSession;if(!i){this.exitRenameMode();return}try{await i(r,n),await this.refreshSessionsAfterMutation()}finally{this.exitRenameMode()}}async loadScope(e,n){let r=e==="all";e==="current"?this.currentLoading=!0:this.allLoading=!0;let i=e==="all"?++this.allLoadSeq:void 0;this.header.setScope(e),this.header.setLoading(!0),this.requestRender();let o=(s,a)=>{e===this.scope&&(i!==void 0&&i!==this.allLoadSeq||(this.header.setProgress(s,a),this.requestRender()))};try{let s=await(e==="current"?this.currentSessionsLoader(o):this.allSessionsLoader(o));if(e==="current"?(this.currentSessions=s,this.currentLoading=!1):(this.allSessions=s,this.allLoading=!1),e!==this.scope||i!==void 0&&i!==this.allLoadSeq)return;this.header.setLoading(!1),this.sessionList.setSessions(s,r),this.requestRender(),e==="all"&&s.length===0&&(this.currentSessions?.length??0)===0&&this.onCancel()}catch(s){if(e==="current"?this.currentLoading=!1:this.allLoading=!1,e!==this.scope||i!==void 0&&i!==this.allLoadSeq)return;let a=s instanceof Error?s.message:String(s);this.header.setLoading(!1),this.header.setStatusMessage({type:"error",message:`Failed to load sessions: ${a}`},4e3),n==="initial"&&this.sessionList.setSessions([],r),this.requestRender()}}toggleSortMode(){let e;this.sortMode==="threaded"?e="recent":this.sortMode==="recent"?e="relevance":e="threaded",this.sortMode=e,this.header.setSortMode(this.sortMode),this.sessionList.setSortMode(this.sortMode),this.requestRender()}toggleNameFilter(){this.nameFilter=this.nameFilter==="all"?"named":"all",this.header.setNameFilter(this.nameFilter),this.sessionList.setNameFilter(this.nameFilter),this.requestRender()}async refreshSessionsAfterMutation(){await this.loadScope(this.scope,"refresh")}toggleScope(){if(this.scope==="current"){if(this.scope="all",this.header.setScope(this.scope),this.allSessions!==null){this.header.setLoading(!1),this.sessionList.setSessions(this.allSessions,!0),this.requestRender();return}this.allLoading||this.loadScope("all","toggle");return}this.scope="current",this.header.setScope(this.scope),this.header.setLoading(this.currentLoading),this.sessionList.setSessions(this.currentSessions??[],!1),this.requestRender()}getSessionList(){return this.sessionList}}});function PWo(t,e){return new Promise(n=>{let r=new fm(new bm,void 0,Co()),i=tF.create();kR(i);let o=!1,s=new M5(t,e,a=>{o||(o=!0,r.stop(),n(a))},()=>{o||(o=!0,r.stop(),n(null))},()=>{r.stop(),process.exit(0)},()=>r.requestRender(),{showRenameHint:!1,keybindings:i});r.addChild(s),r.setFocus(s.getSessionList()),r.start()})}var WWo=I(()=>{"use strict";ci();Ju();QIe();IBt()});var SBt,iZn=I(()=>{SBt={name:"@augmentcode/onison",version:"999.999.999",description:"Coding agent CLI with read, bash, edit, write tools and session management",type:"module",bin:{"auggie-dev":"./auggie-v2.mjs","auggie-v2":"./auggie-v2.mjs"},files:["auggie-v2.mjs","auggie-v2.mjs.d","indexing-worker.mjs","vfs-prefetch-worker.mjs","README.md","CHANGELOG.md"],publishConfig:{registry:"https://registry.npmjs.org",access:"public"},engines:{node:">=20.6.0"},license:"MIT",repository:{type:"git",url:"git+https://github.com/augmentcode/hermes.git",directory:"apps/auggie-v2"},keywords:["coding-agent","ai","llm","cli","tui","agent"]}});import{spawnSync as xzc}from"node:child_process";import{existsSync as Tzc,readFileSync as Nzc,realpathSync as kzc}from"node:fs";import{basename as Qzc,dirname as Dzc,extname as Fzc,isAbsolute as Vzc,join as Mzc,relative as Gzc,resolve as Uzc,sep as Ozc}from"node:path";function Xzc(t,e){try{let n=JSON.parse(e.readFileSync(t,"utf8"));return typeof n=="object"&&n!==null?n:void 0}catch{return}}function Yzc(t,e,n){let r=e.dirname(t);for(;;){let i=e.join(r,"package.json");if(n.existsSync(i)){let s=Xzc(i,n);return s?{packageRoot:r,packageJson:s}:void 0}let o=e.dirname(r);if(o===r)return;r=o}}function Jzc(t){return t.replaceAll("\\","/").toLowerCase()}function zzc(t){let e=Jzc(t);if(e.includes("/.pnpm/")||e.includes("/pnpm/global/")||e.includes("/pnpm/node_modules/"))return"pnpm";if(e.includes("/.yarn/")||e.includes("/yarn/global/")||e.includes("/yarn/node_modules/"))return"yarn"}function Hzc(t){return typeof t=="string"?[t]:typeof t!="object"||t===null||Array.isArray(t)?[]:Object.values(t).filter(e=>typeof e=="string")}function Kzc({bin:t,entryPath:e,packageRoot:n,pathApi:r}){let i=r.resolve(e);return Hzc(t).some(o=>r.resolve(n,o)===i)}function jzc(t,e=_Bt){if(e.basename(t)!=="onison")return;let n=e.dirname(t);if(e.basename(n)!=="@augmentcode")return;let r=e.dirname(n);if(e.basename(r)==="node_modules")return e.dirname(r)}function YWo({entryPath:t,runtimeVersion:e,pathApi:n=_Bt,fs:r=Zzc}){if(!t)return{type:"unknown",reason:"The running executable path is unavailable."};let i;try{i=r.realpathSync(t)}catch{return{type:"unknown",reason:"The running executable path could not be resolved."}}let o=n.extname(i).toLowerCase();if([".ts",".tsx",".mts",".cts"].includes(o))return{type:"source",reason:"The running entry point is a source file."};let s=Yzc(i,n,r);if(!s)return[".js",".mjs",".cjs"].includes(o)?{type:"unknown",reason:"No package metadata was found for the running JavaScript entry point."}:{type:"standalone"};let{packageJson:a,packageRoot:l}=s;if(a.name==="@augmentcode/auggie-v2")return{type:"source",reason:"The running package is a development package."};if(a.name!==Aoe)return{type:"unknown",reason:"The running package is not the official npm release package."};if(typeof a.version!="string")return{type:"unknown",reason:"The installed package version is missing or invalid."};if(a.version!==e)return{type:"unknown",reason:"The runtime and installed package versions do not match."};if(!Kzc({bin:a.bin,entryPath:i,packageRoot:l,pathApi:n}))return{type:"unknown",reason:"The running entry point does not match the installed package metadata."};let c=zzc(i);if(c)return{type:"unsupported-package-manager",manager:c};let u=jzc(l,n);return u?{type:"npm",entryPath:i,packageRoot:l,installBase:u,version:a.version}:{type:"unknown",reason:"The npm package root has an unsupported directory layout."}}function wK(t){let e=$zc.exec(t);if(!e)return;let n=e[4]?.split(".")??[],r=[];for(let i of n){let o=qzc.test(i);if(o&&i.length>1&&i.startsWith("0"))return;r.push({value:i,numeric:o})}return{raw:t,core:[e[1],e[2],e[3]],prerelease:r}}function JWo(t,e){return t.length!==e.length?t.length<e.length?-1:1:t===e?0:t<e?-1:1}function eHc(t,e){return t.numeric&&e.numeric?JWo(t.value,e.value):t.numeric!==e.numeric?t.numeric?-1:1:t.value===e.value?0:t.value<e.value?-1:1}function oZn(t,e){for(let r=0;r<t.core.length;r+=1){let i=JWo(t.core[r],e.core[r]);if(i!==0)return i}if(t.prerelease.length===0||e.prerelease.length===0)return t.prerelease.length===e.prerelease.length?0:t.prerelease.length===0?1:-1;let n=Math.max(t.prerelease.length,e.prerelease.length);for(let r=0;r<n;r+=1){let i=t.prerelease[r],o=e.prerelease[r];if(!i||!o)return i?1:-1;let s=eHc(i,o);if(s!==0)return s}return 0}function zWo(t){let n=wK(t)?.prerelease[0];return n&&!n.numeric?n.value:void 0}function tHc({candidates:t,current:e,channel:n}){let r;for(let i of t){let o=wK(i);o&&zWo(i)===n&&(oZn(o,e)<=0||(!r||oZn(o,r)>0)&&(r=o))}return r}function HWo({currentVersion:t,metadata:e}){let n=wK(t);if(!n)return{type:"invalid",reason:"The current version is not a valid release version."};let r=zWo(t);if(n.prerelease.length>0&&!r)return{type:"invalid",reason:"The current prerelease version does not identify a release channel."};if(!r){let a=e.distTags.latest,l=a?wK(a):void 0;return!(a&&l)||l.prerelease.length>0?{type:"invalid",reason:"The npm latest tag is missing or invalid."}:oZn(l,n)>0?{type:"update",targetVersion:a}:{type:"up-to-date"}}let i=e.distTags[r],o=i?[i,...e.versions]:e.versions,s=tHc({candidates:o,current:n,channel:r});return s?{type:"update",targetVersion:s.raw}:{type:"up-to-date"}}function nHc(t){if(typeof t!="object"||t===null)return;let e=t,n=e["dist-tags"],r=e.versions;if(typeof n!="object"||n===null||Array.isArray(n)||typeof r!="object"||r===null||Array.isArray(r))return;let i={};for(let[s,a]of Object.entries(n)){if(typeof a!="string"||!wK(a))return;i[s]=a}let o=Object.keys(r);if(!o.some(s=>!wK(s)))return{distTags:i,versions:o}}async function KWo({fetchImpl:t=fetch,createSignal:e=()=>AbortSignal.timeout(Lzc)}={}){try{let n=encodeURIComponent(Aoe),r=await t(`https://registry.npmjs.org/${n}`,{headers:{Accept:"application/json"},signal:e()});if(!r.ok)throw new yI("lookup-failed",`The npm registry returned HTTP ${r.status}.`);let i=nHc(await r.json());if(!i)throw new yI("lookup-failed","The npm registry returned invalid release metadata.");return i}catch(n){throw n instanceof yI?n:new yI("lookup-failed","Release metadata could not be retrieved from the npm registry.")}}function rHc(t){if(!/^[0-9A-Za-z@/._+-]+$/.test(t))throw new yI("npm-install-failed",BK["npm-install-failed"]);return t}function jWo({platform:t,args:e,stdio:n,timeout:r,prefix:i,env:o=process.env}){let s=n[1]==="pipe"||n[2]==="pipe",a={encoding:"utf8",shell:!1,stdio:n,timeout:r};if(s&&(a.maxBuffer=XWo*2),t!=="win32")return{command:"npm",args:e,options:a};let l=e.map(c=>c===i?'"%AUGGIE_UPGRADE_PREFIX%"':rHc(c));return{command:o.ComSpec??"cmd.exe",args:["/d","/s","/c",`npm.cmd ${l.join(" ")}`],options:{...a,env:i?{...o,AUGGIE_UPGRADE_PREFIX:i}:o}}}function $Wo(t,e,n){return xzc(t,e,n)}function iHc(t){return`${t.stderr??""}
|
|
12644
12644
|
${t.stdout??""}`.trim().slice(0,XWo)}function oHc(t){return t?.code}function qWo(t,e,n,r,i){let o=oHc(t.error);if(o==="ETIMEDOUT"&&e==="prefix-inspection-failed")return new yI("prefix-inspection-timed-out",BK["prefix-inspection-timed-out"]);let s=n?iHc(t):"",a=`${o??""} ${s}`.toUpperCase();return o==="ENOENT"||/(?:NPM(?:\.CMD)?[^\n]*(?:NOT FOUND|NOT RECOGNIZED)|COMMAND NOT FOUND[^\n]*NPM)/.test(a)?new yI("npm-not-found",BK["npm-not-found"],r,i):new yI(e,BK[e],r,i)}function sHc(t,e,n){return n.relative(n.resolve(t),n.resolve(e))===""}function aHc({installation:t,platform:e=process.platform,pathApi:n=_Bt,spawn:r=$Wo,env:i=process.env}){let o=jWo({platform:e,args:["root","-g"],stdio:["ignore","pipe","pipe"],timeout:Pzc,env:i}),s=r(o.command,o.args,o.options);if(s.error||s.status!==0)throw qWo(s,"prefix-inspection-failed",!0);let a=String(s.stdout??"").trim();if(!a||!n.isAbsolute(a))throw new yI("prefix-inspection-failed",BK["prefix-inspection-failed"]);let l=n.join(a,"@augmentcode","onison");return sHc(t.packageRoot,l,n)?{type:"global"}:{type:"custom",prefix:t.installBase}}function lHc(t){return`'${t.replaceAll("'",`'"'"'`)}'`}function ZWo(t){return`'${t.replaceAll("'","''")}'`}function cHc({destination:t,targetVersion:e,platform:n}){if(!wK(e))throw new yI("npm-install-failed",BK["npm-install-failed"]);let r=`${Aoe}@${e}`;return t.type==="global"?`npm install -g ${r}`:n==="win32"?`& (Get-Command node.exe -ErrorAction Stop).Source (Join-Path (Split-Path (Get-Command npm.cmd -ErrorAction Stop).Source) 'node_modules/npm/bin/npm-cli.js') install --prefix ${ZWo(t.prefix)} ${ZWo(r)}`:`npm install --prefix ${lHc(t.prefix)} ${r}`}function e5o({installation:t,targetVersion:e,platform:n=process.platform,pathApi:r=_Bt,spawn:i=$Wo,env:o=process.env,stdoutIsTTY:s=process.stdout.isTTY===!0,stderrIsTTY:a=process.stderr.isTTY===!0}){if(!wK(e))throw new yI("npm-install-failed",BK["npm-install-failed"]);let l=aHc({installation:t,platform:n,pathApi:r,spawn:i,env:o}),c=`${Aoe}@${e}`,u=cHc({destination:l,targetVersion:e,platform:n}),d=n==="win32"&&l.type==="custom"?"PowerShell":void 0,p=l.type==="custom"?l.prefix:void 0,A=l.type==="global"?["install","-g",c]:["install","--prefix",l.prefix,c],g=s&&a?"inherit":"ignore",m=jWo({platform:n,args:A,stdio:["ignore",g,g],timeout:Wzc,prefix:p,env:o}),h;try{h=i(m.command,m.args,m.options)}catch{throw new yI("npm-install-failed",BK["npm-install-failed"],u,d)}if(h.error||h.status!==0)throw qWo(h,"npm-install-failed",!1,u,d)}var Aoe,Lzc,Pzc,Wzc,XWo,_Bt,Zzc,$zc,qzc,BK,yI,t5o=I(()=>{"use strict";iZn();Aoe=SBt.name,Lzc=8e3,Pzc=3e4,Wzc=10*6e4,XWo=1e3,_Bt={basename:Qzc,dirname:Dzc,extname:Fzc,isAbsolute:Vzc,join:Mzc,relative:Gzc,resolve:Uzc,sep:Ozc},Zzc={existsSync:Tzc,readFileSync:Nzc,realpathSync:kzc};$zc=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$/,qzc=/^\d+$/;BK={"npm-not-found":"npm could not be found on PATH.","npm-install-failed":"npm failed to install the selected release.","prefix-inspection-failed":"The npm global prefix could not be inspected.","prefix-inspection-timed-out":"The npm global prefix inspection timed out."},yI=class extends Error{code;manualCommand;manualShell;constructor(e,n,r,i){super(n),this.name="SelfUpdateError",this.code=e,this.manualCommand=r,this.manualShell=i}}});import{existsSync as n5o}from"node:fs";import{createInterface as uHc}from"node:readline";import{isSea as r5o}from"node:sea";function dHc(t){let e=!1;for(let n of t.slice(1)){if(n==="--help"||n==="-h")return{type:"help"};if(n!=="--offline"){if(n==="--skip-confirmation"){if(e)return{type:"error",message:"Duplicate option: --skip-confirmation"};e=!0;continue}return{type:"error",message:n.startsWith("-")?`Unknown option: ${n}`:`Unexpected argument: ${n}`}}}return{type:"run",skipConfirmation:e}}function i5o(){return`Usage: ${Gs} upgrade [--skip-confirmation]`}function pHc(){return`${i5o()}
|
|
12645
12645
|
|
|
12646
12646
|
Upgrade the official npm installation of auggie.
|
|
@@ -14147,4 +14147,4 @@ content-type/index.js:
|
|
|
14147
14147
|
*)
|
|
14148
14148
|
*/
|
|
14149
14149
|
|
|
14150
|
-
//# debugId=
|
|
14150
|
+
//# debugId=8cf31d65-e310-50cc-aaed-78ed14d7e106
|