@cline/llms 0.0.56 → 0.0.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/catalog/catalog.generated.d.ts.map +1 -1
- package/dist/index.browser.js +1 -1
- package/dist/index.js +26 -26
- package/dist/models.js +19 -19
- package/dist/providers.browser.js +1 -1
- package/dist/providers.js +21 -21
- package/package.json +2 -2
package/dist/providers.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{createRequire as tb}from"node:module";var Vy=Object.defineProperty;var qy=(e)=>e;function eb(e,t){this[e]=qy.bind(null,t)}var he=(e,t)=>{for(var n in t)Vy(e,n,{get:t[n],enumerable:!0,configurable:!0,set:eb.bind(t,n)})};var F=(e,t)=>()=>(e&&(t=e(e=0)),t);var pt=tb(import.meta.url);var Nh={};he(Nh,{zodToJsonSchema:()=>oh,xmlTagsRemoval:()=>Xv,withResolvedClineBuildEnv:()=>DI,validateWithZod:()=>pI,validateImageMedia:()=>th,validateAndReserveImageMedia:()=>nt,upsertWorkspaceInfo:()=>vx,truncateStr:()=>ah,truncateSplit:()=>dI,trimNonEmpty:()=>lI,toAiSdkToolResultOutput:()=>ih,stripModeNotices:()=>Gv,shouldIncludeConnectorField:()=>Iw,serializeAbortReason:()=>PS,sanitizeSurrogates:()=>V,sanitizeFileName:()=>uI,safeJsonStringify:()=>eI,safeJsonParse:()=>tI,resolveRootSessionId:()=>nx,resolveReasoningEffortRatio:()=>nh,resolveReasoningBudgetFromRatio:()=>ES,resolveMediaBudget:()=>Vv,resolveHubCommandTimeoutMs:()=>eS,resolveHookSessionContext:()=>ix,resolveEffectiveReasoningEffort:()=>OS,resolveClineEnvironment:()=>ch,resolveClineBuildEnv:()=>ns,reserveImageMediaBytes:()=>We,registerRemoteConfigSessionBlobUpload:()=>pb,registerDisposable:()=>Dv,readRemoteConfigSessionBlobUploadMetadata:()=>rl,processWorkspaceInfo:()=>gI,prepareRemoteConfigRuntime:()=>Pb,parseUserCommandEnvelope:()=>Kv,parseRuntimeConfigExtensions:()=>mx,parseJsonStream:()=>is,parseHookEventPayload:()=>Hw,omitUndefinedValues:()=>rI,normalizeUserInput:()=>Hv,normalizeSdkError:()=>fh,normalizePluginManifest:()=>Cv,normalizeJsonLikeStringsForSchema:()=>Br,noopBasicLogger:()=>DS,mergeModelOptions:()=>TS,maskSecret:()=>cI,listConnectorCatalog:()=>Nv,isRuntimeConfigExtensionKind:()=>gh,isLikelyAuthError:()=>r0,isHubToolExecutorName:()=>iS,isHubProtocolCompatible:()=>Vw,isHubDaemonProcess:()=>BI,isClineProvider:()=>Et,isCanonicalBase64:()=>es,isBase64Char:()=>qv,initVcr:()=>z0,imageFileMaxDecodedBytesForBase64Limit:()=>$S,imageBase64LengthForDecodedBytes:()=>Qv,imageBase64EncodedByteLength:()=>bS,imageBase64DecodedByteLength:()=>Yv,hasRuntimeConfigExtension:()=>fx,getShellArgs:()=>sI,getDefaultShell:()=>oI,getDefaultHubCommandTimeoutMs:()=>Fv,getClineEnvironmentConfig:()=>st,formatUserInputBlock:()=>dS,formatUserCommandBlock:()=>cS,formatUptime:()=>fI,formatModeSwitchNotice:()=>mS,formatMessagesForAiSdk:()=>ts,formatHumanReadableDate:()=>mI,formatFileContentBlock:()=>Wv,formatDisplayUserInput:()=>hS,estimateTokens:()=>ot,emptyWorkspaceManifest:()=>px,disposeAll:()=>jw,createTool:()=>n0,createSessionId:()=>lx,createRemoteConfigSessionMessagesArtifactUploader:()=>kb,createMediaBudgetState:()=>Oi,createContributionRegistry:()=>Aw,createClineTelemetryServiceMetadata:()=>ph,createClineTelemetryServiceConfig:()=>tx,connectorChannelsFromPlatforms:()=>xw,clearRemoteConfigSessionBlobUpload:()=>vb,captureSdkError:()=>Yn,captureAgentUnexpectedReasoningTokens:()=>HI,buildSdkErrorProperties:()=>mh,buildRemoteConfigSessionBlobUploadMetadata:()=>fb,buildClineSystemPrompt:()=>yI,augmentNodeCommandForDebug:()=>ZI,WorkspaceManifestSchema:()=>bh,WorkspaceInfoSchema:()=>yh,VertexSettingsSchema:()=>dv,VertexModelSchema:()=>lv,USAGE_COST_DISPLAYS:()=>US,ToolCallRecordSchema:()=>Iv,ThinkingConfigSchema:()=>wv,TeamTeammateSpecSchema:()=>$x,TeamTaskToolResultSchema:()=>Mx,TeamTaskListItemToolResultSchema:()=>kh,TeamTaskInputSchema:()=>xx,TeamStatusToolResultSchema:()=>Jx,TeamStatusInputSchema:()=>wx,TeamSpawnTeammateInputSchema:()=>_x,TeamSimpleAgentStatusToolResultSchema:()=>Gx,TeamShutdownTeammateInputSchema:()=>kx,TeamSendMessageToolResultSchema:()=>Yx,TeamSendMessageInputSchema:()=>Ox,TeamRunToolSummarySchema:()=>Bx,TeamRunTaskToolResultSchema:()=>Fx,TeamRunTaskInputSchema:()=>zx,TeamRunResultSummarySchema:()=>wh,TeamReviewOutcomeFragmentInputSchema:()=>Cx,TeamReadMailboxInputSchema:()=>Nx,TeamOutcomeToolResultSchema:()=>Kx,TeamOutcomeFragmentToolResultSchema:()=>e0,TeamMissionLogToolResultSchema:()=>Vx,TeamMissionLogInputSchema:()=>Px,TeamMessageType:()=>Sh,TeamMailboxMessageToolResultSchema:()=>Wx,TeamListRunsInputSchema:()=>Ux,TeamListOutcomesInputSchema:()=>Lx,TeamFinalizeOutcomeToolResultSchema:()=>t0,TeamFinalizeOutcomeInputSchema:()=>Rx,TeamCreateOutcomeToolResultSchema:()=>Hx,TeamCreateOutcomeInputSchema:()=>Dx,TeamCleanupToolResultSchema:()=>qx,TeamCleanupInputSchema:()=>Ax,TeamCancelRunToolResultSchema:()=>Xx,TeamCancelRunInputSchema:()=>Tx,TeamBroadcastToolResultSchema:()=>Qx,TeamBroadcastInputSchema:()=>Ex,TeamAwaitRunsInputSchema:()=>jx,TeamAttachOutcomeFragmentInputSchema:()=>Zx,TEAM_TASK_IGNORED_FIELDS_BY_ACTION:()=>Ix,TEAM_RUN_TEXT_PREVIEW_LIMIT:()=>yx,TEAM_RUN_MESSAGE_PREVIEW_LIMIT:()=>gx,TEAM_PROGRESS_EVENT_TYPE:()=>xI,TEAM_LIFECYCLE_EVENT_TYPE:()=>zI,TEAM_AWAIT_TIMEOUT_MS:()=>hx,SUPPORTED_IMAGE_MEDIA_TYPES:()=>qo,SESSION_STATUS_VALUES:()=>dx,SDK_ERROR_TELEMETRY_EVENT:()=>KI,S3AccessKeySettingsSchema:()=>Xi,RemoteMCPServerSchema:()=>hv,RemoteConfigSchema:()=>gw,ReasoningEffortSchema:()=>Uv,RUNTIME_CONFIG_EXTENSION_KINDS:()=>rs,REMOTE_URI_SCHEME:()=>wb,REMOTE_CONFIG_SESSION_BLOB_UPLOAD_METADATA_KEY:()=>el,REASONING_EFFORT_RATIOS:()=>Vt,ProviderProtocolSchema:()=>SI,ProviderClientSchema:()=>II,ProviderCapabilitySchema:()=>wI,PromptUploadingSchema:()=>gv,PLUGIN_FILE_EXTENSIONS:()=>Dw,OpenAiCompatibleSchema:()=>nv,OpenAiCompatibleModelSchema:()=>iv,ModelStatusSchema:()=>_v,ModelPricingSchema:()=>kv,ModelMetadataSchema:()=>Sv,ModelInfoSchema:()=>Qo,ModelCapabilitySchema:()=>$v,MIN_CLIENT_HUB_PROTOCOL_VERSION:()=>Xw,MAX_CLIENT_HUB_PROTOCOL_VERSION:()=>Yw,LiteLLMSchema:()=>mv,LiteLLMModelSchema:()=>cv,IMAGE_OMITTED_PLACEHOLDER:()=>Ue,HookEventPayloadSchema:()=>Jv,HookEventNameSchema:()=>Lv,HUB_USER_INSTRUCTIONS_SNAPSHOT_CAPABILITY:()=>lS,HUB_TOOL_EXECUTOR_NAMES:()=>Bv,HUB_TOOL_EXECUTOR_CAPABILITY_PREFIX:()=>nS,HUB_MISTAKE_LIMIT_CAPABILITY:()=>uS,HUB_HOOK_CAPABILITY_PREFIX:()=>aS,HUB_DEFAULT_COMMAND_TIMEOUT_MS:()=>Mv,HUB_CUSTOM_TOOL_CAPABILITY_PREFIX:()=>rS,HUB_COMPACTION_CAPABILITY:()=>oS,HUB_COMMAND_SLOW_LOG_MS:()=>qw,HUB_CHECKPOINT_CAPABILITY:()=>sS,HUB_CAPABILITIES:()=>Qw,GlobalInstructionsFileSchema:()=>Cr,FeatureFlagDefaultValue:()=>Zw,FEATURE_FLAGS:()=>Cw,EnterpriseTelemetrySchema:()=>yv,EMPTY_CONTENT_TEXT:()=>Rr,DEFAULT_RUNTIME_CONFIG_EXTENSIONS:()=>hh,DEFAULT_REQUEST_HEADERS:()=>NS,DEFAULT_REASONING_EFFORT:()=>jS,DEFAULT_OUTCOME_REQUIRED_SECTIONS:()=>$h,DEFAULT_MAX_TOTAL_MEDIA_BYTES:()=>yS,DEFAULT_MAX_IMAGE_ENCODED_BYTES:()=>q,DEFAULT_MAX_IMAGE_DECODED_BYTES:()=>me,DEFAULT_MAX_IMAGE_BASE64_BYTES:()=>gS,DEFAULT_CLINE_ENVIRONMENT:()=>LI,ContributionRegistry:()=>Vo,ConnectorHookEventSchema:()=>Sw,ConnectorHookEventNameSchema:()=>Tv,ConnectorEventContextSchema:()=>Ov,ConnectorEventActorSchema:()=>jv,ConnectorAuthorizationRequestSchema:()=>kw,ConnectorAuthorizationDecisionSchema:()=>ww,ClineSettingsSchema:()=>uv,ClineModelSchema:()=>sv,CURRENT_HUB_PROTOCOL_VERSION:()=>Gw,CONNECTOR_PLATFORMS:()=>Pv,CONNECTOR_CATALOG:()=>Ev,CLINE_RUN_AS_HUB_DAEMON_ENV:()=>FI,CLINE_HUB_PORT:()=>bI,CLINE_HUB_DEV_PORT:()=>$I,CLINE_ENVIRONMENT_OVERRIDE_ENV:()=>RI,CLINE_ENVIRONMENT_ENV:()=>CI,CLINE_ENVIRONMENTS:()=>Kr,CLINE_DEFAULT_RPC_PORT:()=>_I,CLINE_DEFAULT_RPC_ADDRESS:()=>kI,CLINE_DEBUG_PORT_BASE_ENV:()=>uh,CLINE_DEBUG_HOST_ENV:()=>sh,CLINE_BUILD_ENV_ENV:()=>sn,CHARS_PER_TOKEN:()=>AS,AwsBedrockSettingsSchema:()=>ov,AwsBedrockModelSchema:()=>rv,AwsBedrockCustomModelSchema:()=>av,ApiFormatSchema:()=>bv,ApiFormat:()=>bw,AnthropicSchema:()=>pv,AnthropicModelSchema:()=>fv,AllowedMCPServerSchema:()=>vv,AgentUsageSchema:()=>zv,AgentResultSchema:()=>$w,AgentFinishReasonSchema:()=>xv,AgentConfigSchema:()=>_w,AUTH_ERROR_PATTERNS:()=>Ih,APIKeySchema:()=>yw,AGENT_UNEXPECTED_REASONING_TOKENS_EVENT:()=>WI});import _e from"node:fs/promises";import jr from"node:path";import{createHmac as sb}from"node:crypto";import{basename as ub}from"node:path";import vt from"node:path";import{basename as UI}from"node:path";import{webcrypto as Xu}from"node:crypto";import{existsSync as a0,mkdirSync as o0,readFileSync as s0,writeFileSync as u0}from"node:fs";import{dirname as l0,resolve as d0}from"node:path";function ab(e,t){this[e]=rb.bind(null,t)}async function ob(e){try{return await _e.access(e),!0}catch{return!1}}class Qu{filePath;constructor(e){this.filePath=e}async read(){try{return JSON.parse(await _e.readFile(this.filePath,"utf8"))}catch(e){if(e.code==="ENOENT")return;throw e}}async write(e){await _e.mkdir(jr.dirname(this.filePath),{recursive:!0}),await _e.writeFile(this.filePath,JSON.stringify(e,null,2),"utf8")}async clear(){await _e.rm(this.filePath,{force:!0})}}class Vu{async writeText(e,t){await _e.mkdir(jr.dirname(e),{recursive:!0}),await _e.writeFile(e,t,"utf8")}async remove(e){await _e.rm(e,{recursive:!0,force:!0})}async removeChildren(e){if(!await ob(e))return;let t=await _e.readdir(e);await Promise.all(t.map((n)=>_e.rm(jr.join(e,n),{recursive:!0,force:!0})))}}class Xr{constructor({accessKeyId:e,secretAccessKey:t,sessionToken:n,service:r,region:i,cache:a,retries:o,initRetryMs:s}){if(e==null)throw TypeError("accessKeyId is a required option");if(t==null)throw TypeError("secretAccessKey is a required option");this.accessKeyId=e,this.secretAccessKey=t,this.sessionToken=n,this.service=r,this.region=i,this.cache=a||new Map,this.retries=o!=null?o:10,this.initRetryMs=s||50}async sign(e,t){if(e instanceof Request){let{method:i,url:a,headers:o,body:s}=e;if(t=Object.assign({method:i,url:a,headers:o},t),t.body==null&&o.has("Content-Type"))t.body=s!=null&&o.has("X-Amz-Content-Sha256")?s:await e.clone().arrayBuffer();e=a}let n=new qu(Object.assign({url:e.toString()},t,this,t&&t.aws)),r=Object.assign({},t,await n.sign());delete r.aws;try{return new Request(r.url.toString(),r)}catch(i){if(i instanceof TypeError)return new Request(r.url.toString(),Object.assign({duplex:"half"},r));throw i}}async fetch(e,t){for(let n=0;n<=this.retries;n++){let r=fetch(await this.sign(e,t));if(n===this.retries)return r;let i=await r;if(i.status<500&&i.status!==429)return i;await new Promise((a)=>setTimeout(a,Math.random()*this.initRetryMs*Math.pow(2,n)))}throw Error("An unknown error occurred, ensure retries is not negative")}}class qu{constructor({method:e,url:t,headers:n,body:r,accessKeyId:i,secretAccessKey:a,sessionToken:o,service:s,region:d,cache:l,datetime:c,signQuery:m,appendSessionToken:v,allHeaders:p,singleEncode:g}){if(t==null)throw TypeError("url is a required option");if(i==null)throw TypeError("accessKeyId is a required option");if(a==null)throw TypeError("secretAccessKey is a required option");this.method=e||(r?"POST":"GET"),this.url=new URL(t),this.headers=new Headers(n||{}),this.body=r,this.accessKeyId=i,this.secretAccessKey=a,this.sessionToken=o;let $,E;if(!s||!d)[$,E]=cb(this.url,this.headers);if(this.service=s||$||"",this.region=d||E||"us-east-1",this.cache=l||new Map,this.datetime=c||new Date().toISOString().replace(/[:-]|\.\d{3}/g,""),this.signQuery=m,this.appendSessionToken=v||this.service==="iotdevicegateway",this.headers.delete("Host"),this.service==="s3"&&!this.signQuery&&!this.headers.has("X-Amz-Content-Sha256"))this.headers.set("X-Amz-Content-Sha256","UNSIGNED-PAYLOAD");let T=this.signQuery?this.url.searchParams:this.headers;if(T.set("X-Amz-Date",this.datetime),this.sessionToken&&!this.appendSessionToken)T.set("X-Amz-Security-Token",this.sessionToken);if(this.signableHeaders=["host",...this.headers.keys()].filter((I)=>p||!db.has(I)).sort(),this.signedHeaders=this.signableHeaders.join(";"),this.canonicalHeaders=this.signableHeaders.map((I)=>I+":"+(I==="host"?this.url.host:(this.headers.get(I)||"").replace(/\s+/g," "))).join(`
|
|
1
|
+
import{createRequire as tb}from"node:module";var Vy=Object.defineProperty;var qy=(e)=>e;function eb(e,t){this[e]=qy.bind(null,t)}var he=(e,t)=>{for(var n in t)Vy(e,n,{get:t[n],enumerable:!0,configurable:!0,set:eb.bind(t,n)})};var F=(e,t)=>()=>(e&&(t=e(e=0)),t);var pt=tb(import.meta.url);var Nh={};he(Nh,{zodToJsonSchema:()=>oh,xmlTagsRemoval:()=>Xv,withResolvedClineBuildEnv:()=>CI,validateWithZod:()=>hI,validateImageMedia:()=>th,validateAndReserveImageMedia:()=>nt,upsertWorkspaceInfo:()=>gx,truncateStr:()=>ah,truncateSplit:()=>mI,trimNonEmpty:()=>cI,toAiSdkToolResultOutput:()=>ih,stripModeNotices:()=>Gv,shouldIncludeConnectorField:()=>Iw,serializeAbortReason:()=>DS,sanitizeSurrogates:()=>V,sanitizeFileName:()=>dI,safeJsonStringify:()=>iI,safeJsonParse:()=>nI,resolveRootSessionId:()=>ax,resolveReasoningEffortRatio:()=>nh,resolveReasoningBudgetFromRatio:()=>PS,resolveMediaBudget:()=>Vv,resolveHubCommandTimeoutMs:()=>eS,resolveHookSessionContext:()=>rx,resolveEffectiveReasoningEffort:()=>NS,resolveClineEnvironment:()=>ch,resolveClineBuildEnv:()=>ns,reserveImageMediaBytes:()=>We,registerRemoteConfigSessionBlobUpload:()=>pb,registerDisposable:()=>Dv,readRemoteConfigSessionBlobUploadMetadata:()=>rl,processWorkspaceInfo:()=>bI,prepareRemoteConfigRuntime:()=>Pb,parseUserInputMode:()=>fS,parseUserCommandEnvelope:()=>Kv,parseRuntimeConfigExtensions:()=>px,parseJsonStream:()=>is,parseHookEventPayload:()=>Hw,omitUndefinedValues:()=>oI,normalizeUserInput:()=>Hv,normalizeSdkError:()=>fh,normalizePluginManifest:()=>Cv,normalizeJsonLikeStringsForSchema:()=>Br,noopBasicLogger:()=>CS,mergeModelOptions:()=>OS,maskSecret:()=>fI,listConnectorCatalog:()=>Nv,isRuntimeConfigExtensionKind:()=>gh,isLikelyAuthError:()=>o0,isHubToolExecutorName:()=>iS,isHubProtocolCompatible:()=>Vw,isHubDaemonProcess:()=>KI,isClineProvider:()=>Et,isCanonicalBase64:()=>es,isBase64Char:()=>qv,initVcr:()=>T0,imageFileMaxDecodedBytesForBase64Limit:()=>kS,imageBase64LengthForDecodedBytes:()=>Qv,imageBase64EncodedByteLength:()=>_S,imageBase64DecodedByteLength:()=>Yv,hasRuntimeConfigExtension:()=>vx,getShellArgs:()=>lI,getDefaultShell:()=>uI,getDefaultHubCommandTimeoutMs:()=>Fv,getClineEnvironmentConfig:()=>st,formatUserInputBlock:()=>dS,formatUserCommandBlock:()=>cS,formatUptime:()=>vI,formatModeSwitchNotice:()=>pS,formatMessagesForAiSdk:()=>ts,formatHumanReadableDate:()=>pI,formatFileContentBlock:()=>Wv,formatDisplayUserInput:()=>yS,estimateTokens:()=>ot,emptyWorkspaceManifest:()=>hx,disposeAll:()=>jw,createTool:()=>a0,createSessionId:()=>cx,createRemoteConfigSessionMessagesArtifactUploader:()=>kb,createMediaBudgetState:()=>Oi,createContributionRegistry:()=>Aw,createClineTelemetryServiceMetadata:()=>ph,createClineTelemetryServiceConfig:()=>nx,connectorChannelsFromPlatforms:()=>xw,clearRemoteConfigSessionBlobUpload:()=>vb,captureSdkError:()=>Yn,captureAgentUnexpectedReasoningTokens:()=>XI,buildSdkErrorProperties:()=>mh,buildRemoteConfigSessionBlobUploadMetadata:()=>fb,buildClineSystemPrompt:()=>$I,augmentNodeCommandForDebug:()=>RI,WorkspaceManifestSchema:()=>bh,WorkspaceInfoSchema:()=>yh,VertexSettingsSchema:()=>dv,VertexModelSchema:()=>lv,USAGE_COST_DISPLAYS:()=>jS,ToolCallRecordSchema:()=>Iv,ThinkingConfigSchema:()=>wv,TeamTeammateSpecSchema:()=>kx,TeamTaskToolResultSchema:()=>Bx,TeamTaskListItemToolResultSchema:()=>kh,TeamTaskInputSchema:()=>Ux,TeamStatusToolResultSchema:()=>Fx,TeamStatusInputSchema:()=>Ix,TeamSpawnTeammateInputSchema:()=>wx,TeamSimpleAgentStatusToolResultSchema:()=>Yx,TeamShutdownTeammateInputSchema:()=>Sx,TeamSendMessageToolResultSchema:()=>Vx,TeamSendMessageInputSchema:()=>Nx,TeamRunToolSummarySchema:()=>Kx,TeamRunTaskToolResultSchema:()=>Wx,TeamRunTaskInputSchema:()=>Tx,TeamRunResultSummarySchema:()=>wh,TeamReviewOutcomeFragmentInputSchema:()=>Lx,TeamReadMailboxInputSchema:()=>Ax,TeamOutcomeToolResultSchema:()=>Gx,TeamOutcomeFragmentToolResultSchema:()=>i0,TeamMissionLogToolResultSchema:()=>e0,TeamMissionLogInputSchema:()=>Dx,TeamMessageType:()=>Sh,TeamMailboxMessageToolResultSchema:()=>Hx,TeamListRunsInputSchema:()=>jx,TeamListOutcomesInputSchema:()=>Mx,TeamFinalizeOutcomeToolResultSchema:()=>n0,TeamFinalizeOutcomeInputSchema:()=>Jx,TeamCreateOutcomeToolResultSchema:()=>Xx,TeamCreateOutcomeInputSchema:()=>Cx,TeamCleanupToolResultSchema:()=>t0,TeamCleanupInputSchema:()=>Zx,TeamCancelRunToolResultSchema:()=>Qx,TeamCancelRunInputSchema:()=>Ox,TeamBroadcastToolResultSchema:()=>qx,TeamBroadcastInputSchema:()=>Px,TeamAwaitRunsInputSchema:()=>Ex,TeamAttachOutcomeFragmentInputSchema:()=>Rx,TEAM_TASK_IGNORED_FIELDS_BY_ACTION:()=>zx,TEAM_RUN_TEXT_PREVIEW_LIMIT:()=>$x,TEAM_RUN_MESSAGE_PREVIEW_LIMIT:()=>bx,TEAM_PROGRESS_EVENT_TYPE:()=>UI,TEAM_LIFECYCLE_EVENT_TYPE:()=>TI,TEAM_AWAIT_TIMEOUT_MS:()=>yx,SUPPORTED_IMAGE_MEDIA_TYPES:()=>qo,SESSION_STATUS_VALUES:()=>mx,SDK_ERROR_TELEMETRY_EVENT:()=>GI,S3AccessKeySettingsSchema:()=>Xi,RemoteMCPServerSchema:()=>hv,RemoteConfigSchema:()=>gw,ReasoningEffortSchema:()=>Uv,RUNTIME_CONFIG_EXTENSION_KINDS:()=>rs,REMOTE_URI_SCHEME:()=>wb,REMOTE_CONFIG_SESSION_BLOB_UPLOAD_METADATA_KEY:()=>el,REASONING_EFFORT_RATIOS:()=>Vt,ProviderProtocolSchema:()=>xI,ProviderClientSchema:()=>zI,ProviderCapabilitySchema:()=>II,PromptUploadingSchema:()=>gv,PLUGIN_FILE_EXTENSIONS:()=>Dw,OpenAiCompatibleSchema:()=>nv,OpenAiCompatibleModelSchema:()=>iv,ModelStatusSchema:()=>_v,ModelPricingSchema:()=>kv,ModelMetadataSchema:()=>Sv,ModelInfoSchema:()=>Qo,ModelCapabilitySchema:()=>$v,MIN_CLIENT_HUB_PROTOCOL_VERSION:()=>Xw,MAX_CLIENT_HUB_PROTOCOL_VERSION:()=>Yw,LiteLLMSchema:()=>mv,LiteLLMModelSchema:()=>cv,IMAGE_OMITTED_PLACEHOLDER:()=>Ue,HookEventPayloadSchema:()=>Jv,HookEventNameSchema:()=>Lv,HUB_USER_INSTRUCTIONS_SNAPSHOT_CAPABILITY:()=>lS,HUB_TOOL_EXECUTOR_NAMES:()=>Bv,HUB_TOOL_EXECUTOR_CAPABILITY_PREFIX:()=>nS,HUB_MISTAKE_LIMIT_CAPABILITY:()=>uS,HUB_HOOK_CAPABILITY_PREFIX:()=>aS,HUB_DEFAULT_COMMAND_TIMEOUT_MS:()=>Mv,HUB_CUSTOM_TOOL_CAPABILITY_PREFIX:()=>rS,HUB_COMPACTION_CAPABILITY:()=>oS,HUB_COMMAND_SLOW_LOG_MS:()=>qw,HUB_CHECKPOINT_CAPABILITY:()=>sS,HUB_CAPABILITIES:()=>Qw,GlobalInstructionsFileSchema:()=>Cr,FeatureFlagDefaultValue:()=>Zw,FEATURE_FLAGS:()=>Cw,EnterpriseTelemetrySchema:()=>yv,EMPTY_CONTENT_TEXT:()=>Rr,DEFAULT_RUNTIME_CONFIG_EXTENSIONS:()=>hh,DEFAULT_REQUEST_HEADERS:()=>AS,DEFAULT_REASONING_EFFORT:()=>ES,DEFAULT_OUTCOME_REQUIRED_SECTIONS:()=>$h,DEFAULT_MAX_TOTAL_MEDIA_BYTES:()=>$S,DEFAULT_MAX_IMAGE_ENCODED_BYTES:()=>q,DEFAULT_MAX_IMAGE_DECODED_BYTES:()=>me,DEFAULT_MAX_IMAGE_BASE64_BYTES:()=>bS,DEFAULT_CLINE_ENVIRONMENT:()=>MI,ContributionRegistry:()=>Vo,ConnectorHookEventSchema:()=>Sw,ConnectorHookEventNameSchema:()=>Tv,ConnectorEventContextSchema:()=>Ov,ConnectorEventActorSchema:()=>jv,ConnectorAuthorizationRequestSchema:()=>kw,ConnectorAuthorizationDecisionSchema:()=>ww,ClineSettingsSchema:()=>uv,ClineModelSchema:()=>sv,CURRENT_HUB_PROTOCOL_VERSION:()=>Gw,CONNECTOR_PLATFORMS:()=>Pv,CONNECTOR_CATALOG:()=>Ev,CLINE_RUN_AS_HUB_DAEMON_ENV:()=>WI,CLINE_HUB_PORT:()=>_I,CLINE_HUB_DEV_PORT:()=>kI,CLINE_ENVIRONMENT_OVERRIDE_ENV:()=>JI,CLINE_ENVIRONMENT_ENV:()=>LI,CLINE_ENVIRONMENTS:()=>Kr,CLINE_DEFAULT_RPC_PORT:()=>wI,CLINE_DEFAULT_RPC_ADDRESS:()=>SI,CLINE_DEBUG_PORT_BASE_ENV:()=>uh,CLINE_DEBUG_HOST_ENV:()=>sh,CLINE_BUILD_ENV_ENV:()=>sn,CHARS_PER_TOKEN:()=>ZS,AwsBedrockSettingsSchema:()=>ov,AwsBedrockModelSchema:()=>rv,AwsBedrockCustomModelSchema:()=>av,ApiFormatSchema:()=>bv,ApiFormat:()=>bw,AnthropicSchema:()=>pv,AnthropicModelSchema:()=>fv,AllowedMCPServerSchema:()=>vv,AgentUsageSchema:()=>zv,AgentResultSchema:()=>$w,AgentFinishReasonSchema:()=>xv,AgentConfigSchema:()=>_w,AUTH_ERROR_PATTERNS:()=>Ih,APIKeySchema:()=>yw,AGENT_UNEXPECTED_REASONING_TOKENS_EVENT:()=>HI});import _e from"node:fs/promises";import jr from"node:path";import{createHmac as sb}from"node:crypto";import{basename as ub}from"node:path";import vt from"node:path";import{basename as jI}from"node:path";import{webcrypto as Xu}from"node:crypto";import{existsSync as s0,mkdirSync as u0,readFileSync as l0,writeFileSync as d0}from"node:fs";import{dirname as c0,resolve as m0}from"node:path";function ab(e,t){this[e]=rb.bind(null,t)}async function ob(e){try{return await _e.access(e),!0}catch{return!1}}class Qu{filePath;constructor(e){this.filePath=e}async read(){try{return JSON.parse(await _e.readFile(this.filePath,"utf8"))}catch(e){if(e.code==="ENOENT")return;throw e}}async write(e){await _e.mkdir(jr.dirname(this.filePath),{recursive:!0}),await _e.writeFile(this.filePath,JSON.stringify(e,null,2),"utf8")}async clear(){await _e.rm(this.filePath,{force:!0})}}class Vu{async writeText(e,t){await _e.mkdir(jr.dirname(e),{recursive:!0}),await _e.writeFile(e,t,"utf8")}async remove(e){await _e.rm(e,{recursive:!0,force:!0})}async removeChildren(e){if(!await ob(e))return;let t=await _e.readdir(e);await Promise.all(t.map((n)=>_e.rm(jr.join(e,n),{recursive:!0,force:!0})))}}class Xr{constructor({accessKeyId:e,secretAccessKey:t,sessionToken:n,service:r,region:i,cache:a,retries:o,initRetryMs:s}){if(e==null)throw TypeError("accessKeyId is a required option");if(t==null)throw TypeError("secretAccessKey is a required option");this.accessKeyId=e,this.secretAccessKey=t,this.sessionToken=n,this.service=r,this.region=i,this.cache=a||new Map,this.retries=o!=null?o:10,this.initRetryMs=s||50}async sign(e,t){if(e instanceof Request){let{method:i,url:a,headers:o,body:s}=e;if(t=Object.assign({method:i,url:a,headers:o},t),t.body==null&&o.has("Content-Type"))t.body=s!=null&&o.has("X-Amz-Content-Sha256")?s:await e.clone().arrayBuffer();e=a}let n=new qu(Object.assign({url:e.toString()},t,this,t&&t.aws)),r=Object.assign({},t,await n.sign());delete r.aws;try{return new Request(r.url.toString(),r)}catch(i){if(i instanceof TypeError)return new Request(r.url.toString(),Object.assign({duplex:"half"},r));throw i}}async fetch(e,t){for(let n=0;n<=this.retries;n++){let r=fetch(await this.sign(e,t));if(n===this.retries)return r;let i=await r;if(i.status<500&&i.status!==429)return i;await new Promise((a)=>setTimeout(a,Math.random()*this.initRetryMs*Math.pow(2,n)))}throw Error("An unknown error occurred, ensure retries is not negative")}}class qu{constructor({method:e,url:t,headers:n,body:r,accessKeyId:i,secretAccessKey:a,sessionToken:o,service:s,region:d,cache:l,datetime:c,signQuery:m,appendSessionToken:v,allHeaders:p,singleEncode:g}){if(t==null)throw TypeError("url is a required option");if(i==null)throw TypeError("accessKeyId is a required option");if(a==null)throw TypeError("secretAccessKey is a required option");this.method=e||(r?"POST":"GET"),this.url=new URL(t),this.headers=new Headers(n||{}),this.body=r,this.accessKeyId=i,this.secretAccessKey=a,this.sessionToken=o;let $,E;if(!s||!d)[$,E]=cb(this.url,this.headers);if(this.service=s||$||"",this.region=d||E||"us-east-1",this.cache=l||new Map,this.datetime=c||new Date().toISOString().replace(/[:-]|\.\d{3}/g,""),this.signQuery=m,this.appendSessionToken=v||this.service==="iotdevicegateway",this.headers.delete("Host"),this.service==="s3"&&!this.signQuery&&!this.headers.has("X-Amz-Content-Sha256"))this.headers.set("X-Amz-Content-Sha256","UNSIGNED-PAYLOAD");let T=this.signQuery?this.url.searchParams:this.headers;if(T.set("X-Amz-Date",this.datetime),this.sessionToken&&!this.appendSessionToken)T.set("X-Amz-Security-Token",this.sessionToken);if(this.signableHeaders=["host",...this.headers.keys()].filter((I)=>p||!db.has(I)).sort(),this.signedHeaders=this.signableHeaders.join(";"),this.canonicalHeaders=this.signableHeaders.map((I)=>I+":"+(I==="host"?this.url.host:(this.headers.get(I)||"").replace(/\s+/g," "))).join(`
|
|
2
2
|
`),this.credentialString=[this.datetime.slice(0,8),this.region,this.service,"aws4_request"].join("/"),this.signQuery){if(this.service==="s3"&&!T.has("X-Amz-Expires"))T.set("X-Amz-Expires","86400");T.set("X-Amz-Algorithm","AWS4-HMAC-SHA256"),T.set("X-Amz-Credential",this.accessKeyId+"/"+this.credentialString),T.set("X-Amz-SignedHeaders",this.signedHeaders)}if(this.service==="s3")try{this.encodedPath=decodeURIComponent(this.url.pathname.replace(/\+/g," "))}catch(I){this.encodedPath=this.url.pathname}else this.encodedPath=this.url.pathname.replace(/\/+/g,"/");if(!g)this.encodedPath=encodeURIComponent(this.encodedPath).replace(/%2F/g,"/");this.encodedPath=iu(this.encodedPath);let A=new Set;this.encodedSearch=[...this.url.searchParams].filter(([I])=>{if(!I)return!1;if(this.service==="s3"){if(A.has(I))return!1;A.add(I)}return!0}).map((I)=>I.map((R)=>iu(encodeURIComponent(R)))).sort(([I,R],[Y,$e])=>I<Y?-1:I>Y?1:R<$e?-1:R>$e?1:0).map((I)=>I.join("=")).join("&")}async sign(){if(this.signQuery){if(this.url.searchParams.set("X-Amz-Signature",await this.signature()),this.sessionToken&&this.appendSessionToken)this.url.searchParams.set("X-Amz-Security-Token",this.sessionToken)}else this.headers.set("Authorization",await this.authHeader());return{method:this.method,url:this.url,headers:this.headers,body:this.body}}async authHeader(){return["AWS4-HMAC-SHA256 Credential="+this.accessKeyId+"/"+this.credentialString,"SignedHeaders="+this.signedHeaders,"Signature="+await this.signature()].join(", ")}async signature(){let e=this.datetime.slice(0,8),t=[this.secretAccessKey,e,this.region,this.service].join(),n=this.cache.get(t);if(!n){let r=await Wt("AWS4"+this.secretAccessKey,e),i=await Wt(r,this.region),a=await Wt(i,this.service);n=await Wt(a,"aws4_request"),this.cache.set(t,n)}return Sr(await Wt(n,await this.stringToSign()))}async stringToSign(){return["AWS4-HMAC-SHA256",this.datetime,this.credentialString,Sr(await eu(await this.canonicalString()))].join(`
|
|
3
3
|
`)}async canonicalString(){return[this.method.toUpperCase(),this.encodedPath,this.encodedSearch,this.canonicalHeaders+`
|
|
4
4
|
`,this.signedHeaders,await this.hexBodyHash()].join(`
|
|
@@ -16,30 +16,30 @@ ${r}${t.contents.trim()}`}).join(`
|
|
|
16
16
|
|
|
17
17
|
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let o of e.seen.entries()){let s=o[1];if(t===o[0]){a(o);continue}if(e.external){let d=e.external.registry.get(o[0])?.id;if(t!==o[0]&&d){a(o);continue}}if(e.metadataRegistry.get(o[0])?.id){a(o);continue}if(s.cycle){a(o);continue}if(s.count>1){if(e.reused==="ref"){a(o);continue}}}}function zt(e,t){let n=e.seen.get(t);if(!n)throw Error("Unprocessed schema. This is a bug in Zod.");let r=(s)=>{let d=e.seen.get(s);if(d.ref===null)return;let l=d.def??d.schema,c={...l},m=d.ref;if(d.ref=null,m){r(m);let p=e.seen.get(m),g=p.schema;if(g.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))l.allOf=l.allOf??[],l.allOf.push(g);else Object.assign(l,g);if(Object.assign(l,c),s._zod.parent===m)for(let $ in l){if($==="$ref"||$==="allOf")continue;if(!($ in c))delete l[$]}if(g.$ref&&p.def)for(let $ in l){if($==="$ref"||$==="allOf")continue;if($ in p.def&&JSON.stringify(l[$])===JSON.stringify(p.def[$]))delete l[$]}}let v=s._zod.parent;if(v&&v!==m){r(v);let p=e.seen.get(v);if(p?.schema.$ref){if(l.$ref=p.schema.$ref,p.def)for(let g in l){if(g==="$ref"||g==="allOf")continue;if(g in p.def&&JSON.stringify(l[g])===JSON.stringify(p.def[g]))delete l[g]}}}e.override({zodSchema:s,jsonSchema:l,path:d.path??[]})};for(let s of[...e.seen.entries()].reverse())r(s[0]);let i={};if(e.target==="draft-2020-12")i.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")i.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")i.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let s=e.external.registry.get(t)?.id;if(!s)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(s)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;if(a!==void 0&&i.id===a)delete i.id;let o=e.external?.defs??{};for(let s of e.seen.entries()){let d=s[1];if(d.def&&d.defId){if(d.def.id===d.defId)delete d.def.id;o[d.defId]=d.def}}if(e.external);else if(Object.keys(o).length>0)if(e.target==="draft-2020-12")i.$defs=o;else i.definitions=o;try{let s=JSON.parse(JSON.stringify(i));return Object.defineProperty(s,"~standard",{value:{...t["~standard"],jsonSchema:{input:ei(t,"input",e.processors),output:ei(t,"output",e.processors)}},enumerable:!1,writable:!1}),s}catch(s){throw Error("Error converting schema to JSON.")}}function X(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return X(r.element,n);if(r.type==="set")return X(r.valueType,n);if(r.type==="lazy")return X(r.getter(),n);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return X(r.innerType,n);if(r.type==="intersection")return X(r.left,n)||X(r.right,n);if(r.type==="record"||r.type==="map")return X(r.keyType,n)||X(r.valueType,n);if(r.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return X(r.in,n)||X(r.out,n)}if(r.type==="object"){for(let i in r.shape)if(X(r.shape[i],n))return!0;return!1}if(r.type==="union"){for(let i of r.options)if(X(i,n))return!0;return!1}if(r.type==="tuple"){for(let i of r.items)if(X(i,n))return!0;if(r.rest&&X(r.rest,n))return!0;return!1}return!1}function bf(e,t){if("_idmap"in e){let r=e,i=It({...t,processors:Dr}),a={};for(let d of r._idmap.entries()){let[l,c]=d;P(c,i)}let o={},s={registry:r,uri:t?.uri,defs:a};i.external=s;for(let d of r._idmap.entries()){let[l,c]=d;xt(i,c),o[l]=zt(i,c)}if(Object.keys(a).length>0){let d=i.target==="draft-2020-12"?"$defs":"definitions";o.__shared={[d]:a}}return{schemas:o}}let n=It({...t,processors:Dr});return P(e,n),xt(n,e),zt(n,e)}class $f{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";this.ctx=It({processors:Dr,target:t,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,t={path:[],schemaPath:[]}){return P(e,this.ctx,t)}emit(e,t){if(t){if(t.cycles)this.ctx.cycles=t.cycles;if(t.reused)this.ctx.reused=t.reused;if(t.external)this.ctx.external=t.external}xt(this.ctx,e);let n=zt(this.ctx,e),{"~standard":r,...i}=n;return i}}function wf(e){return Vc(qa,e)}function Sf(e){return qc(eo,e)}function If(e){return em(to,e)}function xf(e){return tm(io,e)}function bi(e,t,n){let r=Object.getPrototypeOf(e),i=Tu.get(r);if(!i)i=new Set,Tu.set(r,i);if(i.has(t))return;i.add(t);for(let a in n){let o=n[a];Object.defineProperty(r,a,{configurable:!0,enumerable:!1,get(){let s=o.bind(this);return Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:s}),s},set(s){Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:s})}})}}function ti(e){return Gc($i,e)}function Lf(e){return Ia(xn,e)}function Jf(e){return nn(ii,e)}function Mf(e){return xa(ke,e)}function Ff(e){return za(ke,e)}function Bf(e){return Ua(ke,e)}function Wf(e){return Ta(ke,e)}function Kf(e){return mn(_i,e)}function Hf(e){return mn(_i,{protocol:Le.httpProtocol,hostname:Le.domain,...j.normalizeParams(e)})}function Gf(e){return ja(zn,e)}function Xf(e){return Oa(Un,e)}function Yf(e){return Ea(Tn,e)}function Qf(e){return Na(jn,e)}function Vf(e){return Pa(On,e)}function qf(e){return Aa(En,e)}function ep(e){return Da(Nn,e)}function tp(e){return Za(Pn,e)}function ip(e){return Yc(no,e)}function np(e){return Ca(An,e)}function rp(e){return Ra(Dn,e)}function ap(e){return La(Zn,e)}function op(e){return Ja(Cn,e)}function sp(e){return Ma(Rn,e)}function up(e){return Fa(Ln,e)}function lp(e){return Ba(Jn,e)}function dp(e,t,n={}){return yi(Ot,e,t,n)}function cp(e){return yi(Ot,"hostname",Le.hostname,e)}function mp(e){return yi(Ot,"hex",Le.hex,e)}function fp(e,t){let n=t?.enc??"hex",r=`${e}_${n}`,i=Le[r];if(!i)throw Error(`Unrecognized hash format: ${r}`);return yi(Ot,r,i,t)}function ro(e){return im(ki,e)}function rn(e){return rm(at,e)}function pp(e){return am(at,e)}function vp(e){return om(at,e)}function hp(e){return sm(at,e)}function gp(e){return um(at,e)}function ao(e){return lm(wi,e)}function yp(e){return cm(Si,e)}function bp(e){return fm(Mn,e)}function $p(e){return pm(Mn,e)}function _p(e){return vm(oo,e)}function kp(e){return hm(so,e)}function lo(e){return gm(uo,e)}function wp(){return ym(co)}function tt(){return bm(mo)}function Fn(e){return $m(fo,e)}function Sp(e){return _m(po,e)}function Ip(e){return km(Bn,e)}function Ii(e,t){return Im(vo,e,t)}function xp(e){let t=e._zod.def.shape;return Kn(Object.keys(t))}function zp(e,t){let n={type:"object",shape:e??{},...j.normalizeParams(t)};return new xi(n)}function Up(e,t){return new xi({type:"object",shape:e,catchall:Fn(),...j.normalizeParams(t)})}function Tp(e,t){return new xi({type:"object",shape:e,catchall:tt(),...j.normalizeParams(t)})}function Wn(e,t){return new zi({type:"union",options:e,...j.normalizeParams(t)})}function jp(e,t){return new ho({type:"union",options:e,inclusive:!1,...j.normalizeParams(t)})}function Op(e,t,n){return new go({type:"union",options:t,discriminator:e,...j.normalizeParams(n)})}function bo(e,t){return new yo({type:"intersection",left:e,right:t})}function _o(e,t,n){let r=t instanceof z,i=r?n:t;return new $o({type:"tuple",items:e,rest:r?t:null,...j.normalizeParams(i)})}function ko(e,t,n){if(!t||!t._zod)return new Ut({type:"record",keyType:ti(),valueType:e,...j.normalizeParams(t)});return new Ut({type:"record",keyType:e,valueType:t,...j.normalizeParams(n)})}function Ep(e,t,n){let r=fe(e);return r._zod.values=void 0,new Ut({type:"record",keyType:r,valueType:t,...j.normalizeParams(n)})}function Np(e,t,n){return new Ut({type:"record",keyType:e,valueType:t,mode:"loose",...j.normalizeParams(n)})}function Pp(e,t,n){return new wo({type:"map",keyType:e,valueType:t,...j.normalizeParams(n)})}function Ap(e,t){return new So({type:"set",valueType:e,...j.normalizeParams(t)})}function Kn(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map((r)=>[r,r])):e;return new Tt({type:"enum",entries:n,...j.normalizeParams(t)})}function Dp(e,t){return new Tt({type:"enum",entries:e,...j.normalizeParams(t)})}function Zp(e,t){return new Io({type:"literal",values:Array.isArray(e)?e:[e],...j.normalizeParams(t)})}function Cp(e){return xm(xo,e)}function Hn(e){return new zo({type:"transform",transform:e})}function ni(e){return new Gn({type:"optional",innerType:e})}function To(e){return new Uo({type:"optional",innerType:e})}function ri(e){return new jo({type:"nullable",innerType:e})}function Rp(e){return ni(ri(e))}function Eo(e,t){return new Oo({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():j.shallowClone(t)}})}function Po(e,t){return new No({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():j.shallowClone(t)}})}function Ao(e,t){return new Xn({type:"nonoptional",innerType:e,...j.normalizeParams(t)})}function Lp(e){return new Do({type:"success",innerType:e})}function Co(e,t){return new Zo({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}function Jp(e){return Sm(Ro,e)}function an(e,t){return new Ui({type:"pipe",in:e,out:t})}function Mp(e,t,n){return new Ti({type:"pipe",in:e,out:t,transform:n.decode,reverseTransform:n.encode})}function Fp(e){let t=e._zod.def;return new Ti({type:"pipe",in:t.out,out:t.in,transform:t.reverseTransform,reverseTransform:t.transform})}function Mo(e){return new Jo({type:"readonly",innerType:e})}function Bp(e,t){return new Fo({type:"template_literal",parts:e,...j.normalizeParams(t)})}function Wo(e){return new Bo({type:"lazy",getter:e})}function Wp(e){return new Ko({type:"promise",innerType:e})}function on(e){return new Ho({type:"function",input:Array.isArray(e?.input)?_o(e?.input):e?.input??Ii(tt()),output:e?.output??tt()})}function Kp(e){let t=new J({check:"custom"});return t._zod.check=e,t}function Hp(e,t){return zm(ji,e??(()=>!0),t)}function Go(e,t={}){return Um(ji,e,t)}function Xo(e,t){return Tm(e,t)}function Yp(e,t={}){let n=new ji({type:"custom",check:"custom",fn:(r)=>r instanceof e,abort:!0,...j.normalizeParams(t)});return n._zod.bag.Class=e,n._zod.check=(r)=>{if(!(r.value instanceof e))r.issues.push({code:"invalid_type",expected:e.name,input:r.value,inst:n,path:[...n._zod.def.path??[]]})},n}function Vp(e){let t=Wo(()=>{return Wn([ti(e),ro(),ao(),lo(),Ii(t),ko(ti(),t)])});return t}function qp(e,t){return new Lo({type:"pipe",in:Hn(e),out:t})}function aw(e){W({customError:e})}function ow(){return W().customError}function uw(e,t){let n=e.$schema;if(n==="https://json-schema.org/draft/2020-12/schema")return"draft-2020-12";if(n==="http://json-schema.org/draft-07/schema#")return"draft-7";if(n==="http://json-schema.org/draft-04/schema#")return"draft-4";return t??"draft-2020-12"}function lw(e,t){if(!e.startsWith("#"))throw Error("External $ref is not supported, only local refs (#/...) are allowed");let n=e.slice(1).split("/").filter(Boolean);if(n.length===0)return t.rootSchema;let r=t.version==="draft-2020-12"?"$defs":"definitions";if(n[0]===r){let i=n[1];if(!i||!t.defs[i])throw Error(`Reference not found: ${e}`);return t.defs[i]}throw Error(`Reference not found: ${e}`)}function ev(e,t){if(e.not!==void 0){if(typeof e.not==="object"&&Object.keys(e.not).length===0)return b.never();throw Error("not is not supported in Zod (except { not: {} } for never)")}if(e.unevaluatedItems!==void 0)throw Error("unevaluatedItems is not supported");if(e.unevaluatedProperties!==void 0)throw Error("unevaluatedProperties is not supported");if(e.if!==void 0||e.then!==void 0||e.else!==void 0)throw Error("Conditional schemas (if/then/else) are not supported");if(e.dependentSchemas!==void 0||e.dependentRequired!==void 0)throw Error("dependentSchemas and dependentRequired are not supported");if(e.$ref){let i=e.$ref;if(t.refs.has(i))return t.refs.get(i);if(t.processing.has(i))return b.lazy(()=>{if(!t.refs.has(i))throw Error(`Circular reference not resolved: ${i}`);return t.refs.get(i)});t.processing.add(i);let a=lw(i,t),o=H(a,t);return t.refs.set(i,o),t.processing.delete(i),o}if(e.enum!==void 0){let i=e.enum;if(t.version==="openapi-3.0"&&e.nullable===!0&&i.length===1&&i[0]===null)return b.null();if(i.length===0)return b.never();if(i.length===1)return b.literal(i[0]);if(i.every((o)=>typeof o==="string"))return b.enum(i);let a=i.map((o)=>b.literal(o));if(a.length<2)return a[0];return b.union([a[0],a[1],...a.slice(2)])}if(e.const!==void 0)return b.literal(e.const);let n=e.type;if(Array.isArray(n)){let i=n.map((a)=>{let o={...e,type:a};return ev(o,t)});if(i.length===0)return b.never();if(i.length===1)return i[0];return b.union(i)}if(!n)return b.any();let r;switch(n){case"string":{let i=b.string();if(e.format){let a=e.format;if(a==="email")i=i.check(b.email());else if(a==="uri"||a==="uri-reference")i=i.check(b.url());else if(a==="uuid"||a==="guid")i=i.check(b.uuid());else if(a==="date-time")i=i.check(b.iso.datetime());else if(a==="date")i=i.check(b.iso.date());else if(a==="time")i=i.check(b.iso.time());else if(a==="duration")i=i.check(b.iso.duration());else if(a==="ipv4")i=i.check(b.ipv4());else if(a==="ipv6")i=i.check(b.ipv6());else if(a==="mac")i=i.check(b.mac());else if(a==="cidr")i=i.check(b.cidrv4());else if(a==="cidr-v6")i=i.check(b.cidrv6());else if(a==="base64")i=i.check(b.base64());else if(a==="base64url")i=i.check(b.base64url());else if(a==="e164")i=i.check(b.e164());else if(a==="jwt")i=i.check(b.jwt());else if(a==="emoji")i=i.check(b.emoji());else if(a==="nanoid")i=i.check(b.nanoid());else if(a==="cuid")i=i.check(b.cuid());else if(a==="cuid2")i=i.check(b.cuid2());else if(a==="ulid")i=i.check(b.ulid());else if(a==="xid")i=i.check(b.xid());else if(a==="ksuid")i=i.check(b.ksuid())}if(typeof e.minLength==="number")i=i.min(e.minLength);if(typeof e.maxLength==="number")i=i.max(e.maxLength);if(e.pattern)i=i.regex(new RegExp(e.pattern));r=i;break}case"number":case"integer":{let i=n==="integer"?b.number().int():b.number();if(typeof e.minimum==="number")i=i.min(e.minimum);if(typeof e.maximum==="number")i=i.max(e.maximum);if(typeof e.exclusiveMinimum==="number")i=i.gt(e.exclusiveMinimum);else if(e.exclusiveMinimum===!0&&typeof e.minimum==="number")i=i.gt(e.minimum);if(typeof e.exclusiveMaximum==="number")i=i.lt(e.exclusiveMaximum);else if(e.exclusiveMaximum===!0&&typeof e.maximum==="number")i=i.lt(e.maximum);if(typeof e.multipleOf==="number")i=i.multipleOf(e.multipleOf);r=i;break}case"boolean":{r=b.boolean();break}case"null":{r=b.null();break}case"object":{let i={},a=e.properties||{},o=new Set(e.required||[]);for(let[d,l]of Object.entries(a)){let c=H(l,t);i[d]=o.has(d)?c:c.optional()}if(e.propertyNames){let d=H(e.propertyNames,t),l=e.additionalProperties&&typeof e.additionalProperties==="object"?H(e.additionalProperties,t):b.any();if(Object.keys(i).length===0){r=b.record(d,l);break}let c=b.object(i).passthrough(),m=b.looseRecord(d,l);r=b.intersection(c,m);break}if(e.patternProperties){let d=e.patternProperties,l=Object.keys(d),c=[];for(let v of l){let p=H(d[v],t),g=b.string().regex(new RegExp(v));c.push(b.looseRecord(g,p))}let m=[];if(Object.keys(i).length>0)m.push(b.object(i).passthrough());if(m.push(...c),m.length===0)r=b.object({}).passthrough();else if(m.length===1)r=m[0];else{let v=b.intersection(m[0],m[1]);for(let p=2;p<m.length;p++)v=b.intersection(v,m[p]);r=v}break}let s=b.object(i);if(e.additionalProperties===!1)r=s.strict();else if(typeof e.additionalProperties==="object")r=s.catchall(H(e.additionalProperties,t));else r=s.passthrough();break}case"array":{let{prefixItems:i,items:a}=e;if(i&&Array.isArray(i)){let o=i.map((d)=>H(d,t)),s=a&&typeof a==="object"&&!Array.isArray(a)?H(a,t):void 0;if(s)r=b.tuple(o).rest(s);else r=b.tuple(o);if(typeof e.minItems==="number")r=r.check(b.minLength(e.minItems));if(typeof e.maxItems==="number")r=r.check(b.maxLength(e.maxItems))}else if(Array.isArray(a)){let o=a.map((d)=>H(d,t)),s=e.additionalItems&&typeof e.additionalItems==="object"?H(e.additionalItems,t):void 0;if(s)r=b.tuple(o).rest(s);else r=b.tuple(o);if(typeof e.minItems==="number")r=r.check(b.minLength(e.minItems));if(typeof e.maxItems==="number")r=r.check(b.maxLength(e.maxItems))}else if(a!==void 0){let o=H(a,t),s=b.array(o);if(typeof e.minItems==="number")s=s.min(e.minItems);if(typeof e.maxItems==="number")s=s.max(e.maxItems);r=s}else r=b.array(b.any());break}default:throw Error(`Unsupported type: ${n}`)}return r}function H(e,t){if(typeof e==="boolean")return e?b.any():b.never();let n=ev(e,t),r=e.type||e.enum!==void 0||e.const!==void 0;if(e.anyOf&&Array.isArray(e.anyOf)){let s=e.anyOf.map((l)=>H(l,t)),d=b.union(s);n=r?b.intersection(n,d):d}if(e.oneOf&&Array.isArray(e.oneOf)){let s=e.oneOf.map((l)=>H(l,t)),d=b.xor(s);n=r?b.intersection(n,d):d}if(e.allOf&&Array.isArray(e.allOf))if(e.allOf.length===0)n=r?n:b.any();else{let s=r?n:H(e.allOf[0],t),d=r?0:1;for(let l=d;l<e.allOf.length;l++)s=b.intersection(s,H(e.allOf[l],t));n=s}if(e.nullable===!0&&t.version==="openapi-3.0")n=b.nullable(n);if(e.readOnly===!0)n=b.readonly(n);if(e.default!==void 0)n=n.default(e.default);let i={},a=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let s of a)if(s in e)i[s]=e[s];let o=["contentEncoding","contentMediaType","contentSchema"];for(let s of o)if(s in e)i[s]=e[s];for(let s of Object.keys(e))if(!sw.has(s))i[s]=e[s];if(Object.keys(i).length>0)t.registry.add(n,i);if(e.description)n=n.describe(e.description);return n}function dw(e,t){if(typeof e==="boolean")return e?b.any():b.never();let n;try{n=JSON.parse(JSON.stringify(e))}catch{throw Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas")}let r=uw(n,t?.defaultTarget),i=n.$defs||n.definitions||{},a={version:r,defs:i,refs:new Map,processing:new Set,rootSchema:n,registry:t?.registry??de};return H(n,a)}function cw(e){return Xc($i,e)}function mw(e){return nm(ki,e)}function fw(e){return dm(wi,e)}function pw(e){return mm(Si,e)}function vw(e){return wm(Bn,e)}function Nv(){return Ev.map((e)=>({...e}))}function Iw(e,t){let n=e.includeWhen;if(!n)return!0;let r=t[n.flag]??"";if(n.equals!==void 0&&r!==n.equals)return!1;if(n.notEquals!==void 0&&r===n.notEquals)return!1;return!0}function xw(e=Pv){let t=new Set(Nv().map((n)=>n.name));return e.filter((n)=>t.has(n.id)).map((n)=>({id:n.id,name:n.name,type:n.type,hint:n.hint,fields:n.fields.map((r)=>({flag:r.flag,label:r.label,placeholder:r.placeholder,required:r.required,help:r.help,initialValue:r.initialValue,options:r.options,includeWhen:r.includeWhen})),security:n.security?{prompt:n.security.prompt,fields:n.security.fields.map((r)=>({key:r.key,label:r.label,placeholder:r.placeholder,help:r.help,requiredMessage:r.requiredMessage}))}:void 0}))}function zw(e){return/^\d+$/.test(e)?void 0:"Telegram user ID must contain digits only"}function Uw(e){return/^T[A-Z0-9]+$/.test(e)?void 0:"Slack workspace ID must start with T and contain uppercase letters or digits only"}function Tw(e){return/^[UW][A-Z0-9]+$/.test(e)?void 0:"Slack member ID must start with U or W and contain uppercase letters or digits only"}function Dv(e){Av.push(e)}async function jw(){let e=Av.splice(0);await Promise.all(e.map((t)=>{try{return(typeof t==="function"?t():t.dispose())??Promise.resolve()}catch{return Promise.resolve()}}))}function Zv(e,t){return e.name||`extension_${String(t).padStart(4,"0")}`}function ju(e){return Array.isArray(e)&&e.every((t)=>typeof t==="string")}function Ou(e){if(!Array.isArray(e))return;let t=e.filter((n)=>typeof n==="string").map((n)=>n.trim()).filter((n)=>n.length>0);return t.length>0?t:void 0}function Cv(e){let t=Ou(e.providerIds),n=Ou(e.modelIds);return{...e,...t?{providerIds:t}:{},...n?{modelIds:n}:{}}}function Nw(e,t){let n=Zv(e,t),r=e.manifest;if(!r||typeof r!=="object")throw Error(`Invalid manifest for extension "${n}": manifest is required`);if(!Array.isArray(r.capabilities)||r.capabilities.length===0)throw Error(`Invalid manifest for extension "${n}": capabilities must be a non-empty array`);let i=new Set;for(let o of r.capabilities){if(!Ew.has(o))throw Error(`Invalid manifest for extension "${n}": unsupported capability "${String(o)}"`);i.add(o)}if(Object.hasOwn(r,"providerIds")&&!ju(r.providerIds))throw Error(`Invalid manifest for extension "${n}": providerIds must be a string array when provided`);if(Object.hasOwn(r,"modelIds")&&!ju(r.modelIds))throw Error(`Invalid manifest for extension "${n}": modelIds must be a string array when provided`);let a=i.has("hooks");if(e.hooks!==void 0&&!a)throw Error(`Invalid manifest for extension "${n}": runtime hooks require the "hooks" capability`);return{capabilities:i,raw:Cv(r)}}function Pw(e,t){if(!e||typeof e!=="object")throw Error(`Invalid automation event contribution for extension "${t}": expected object`);let n=typeof e.eventType==="string"?e.eventType.trim():"",r=typeof e.source==="string"?e.source.trim():"";if(!n)throw Error(`Invalid automation event contribution for extension "${t}": eventType is required`);if(!r)throw Error(`Invalid automation event contribution for extension "${t}": source is required`);return{...e,eventType:n,source:r,examples:e.examples?[...e.examples]:void 0,metadata:e.metadata?{...e.metadata}:void 0}}class Vo{extensions;registry={tools:[],commands:[],rules:[],messageBuilder:[],providers:[],automationEventTypes:[],mcpServers:[]};normalized=[];phase="resolve";setupContext;constructor(e={}){this.extensions=e.extensions??[],this.setupContext=e.setupContext??{}}resolve(){if(this.phase!=="resolve")return;this.normalized=this.extensions.map((e,t)=>({extension:e,order:t,manifest:{capabilities:new Set,raw:e.manifest}})),this.phase="validate"}validate(){if(this.phase==="resolve")this.resolve();if(this.phase!=="validate")return;this.normalized=this.normalized.map((e)=>({...e,manifest:Nw(e.extension,e.order)})),this.phase="setup"}async setup(e={}){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();if(this.phase!=="setup")return;let t,n=[];for(let r of this.normalized){let{extension:i}=r;if(i.disabled)continue;let a=Zv(i,r.order),o={tools:[],commands:[],rules:[],messageBuilder:[],providers:[],automationEventTypes:[],mcpServers:[]},s={registerTool:(l)=>o.tools.push(l),registerCommand:(l)=>o.commands.push(l),registerRule:(l)=>{if(!r.manifest.capabilities.has("rules"))throw Error(`Invalid setup for extension "${a}": registerRule requires the "rules" capability`);o.rules.push(l)},registerMessageBuilder:(l)=>o.messageBuilder.push(l),registerProvider:(l)=>o.providers.push(l),registerAutomationEventType:(l)=>{if(!r.manifest.capabilities.has("automationEvents"))throw Error(`Invalid setup for extension "${a}": registerAutomationEventType requires the "automationEvents" capability`);o.automationEventTypes.push(Pw(l,a))},registerMcpServer:(l)=>{if(!r.manifest.capabilities.has("mcp"))throw Error(`Invalid setup for extension "${a}": registerMcpServer requires the "mcp" capability`);o.mcpServers.push({...l,metadata:{...l.metadata??{},source:"plugin",plugin:a}})}},d=r.manifest.capabilities.has("automationEvents")?this.setupContext:{...this.setupContext,automation:void 0};try{await i.setup?.(s,d),n.push(o)}catch(l){if(e.tolerateSetupErrors!==!0)throw l;t??=l}}if(t&&e.tolerateSetupErrors!==!0)throw t;for(let r of n)this.registry.tools.push(...r.tools),this.registry.commands.push(...r.commands),this.registry.rules.push(...r.rules),this.registry.messageBuilder.push(...r.messageBuilder),this.registry.providers.push(...r.providers),this.registry.automationEventTypes.push(...r.automationEventTypes),this.registry.mcpServers.push(...r.mcpServers);if(this.phase="activate",t)throw t}activate(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();if(this.phase==="setup")throw Error("Contribution registry setup must complete before activation");if(this.phase!=="activate")return;this.phase="run"}async initialize(e={}){this.resolve(),this.validate();try{await this.setup(e)}finally{if(this.phase==="activate")this.activate()}}isActivated(){return this.phase==="run"}getRegistrySnapshot(){return{tools:[...this.registry.tools],commands:[...this.registry.commands],rules:[...this.registry.rules],messageBuilder:[...this.registry.messageBuilder],providers:[...this.registry.providers],automationEventTypes:[...this.registry.automationEventTypes],mcpServers:[...this.registry.mcpServers]}}getRegisteredTools(){return[...this.registry.tools]}getRegisteredRules(){return[...this.registry.rules]}getRegisteredAutomationEventTypes(){return[...this.registry.automationEventTypes]}getRegisteredMcpServers(){return[...this.registry.mcpServers]}getValidatedExtensions(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();return this.normalized.slice().sort((e,t)=>e.order-t.order).map(({extension:e})=>e)}}function Aw(e={}){return new Vo(e)}function Hw(e){let t=Jv.safeParse(e);if(!t.success)return;return t.data}function Gi(e){let t=/^v(\d+)$/.exec(e?.trim()??"");if(!t)return;return Number.parseInt(t[1]??"",10)}function Vw(e,t="v1"){let n=Gi(e.protocolVersion),r=Gi(t);if(n===void 0||r===void 0)return{compatible:!1,reason:"missing_protocol"};let i=Gi(e.minClientProtocolVersion)??n,a=Gi(e.maxClientProtocolVersion)??n;return r>=i&&r<=a?{compatible:!0}:{compatible:!1,reason:"unsupported_protocol"}}function Fv(e){switch(e){case"run.start":case"session.send_input":return null;default:return Mv}}function eS(e,t){return t===void 0?Fv(e):t}function iS(e){return typeof e==="string"&&tS.has(e)}function Wv(e,t){return`<file_content path="${e}">
|
|
18
18
|
${t}
|
|
19
|
-
</file_content>`}function dS(e,t="act"){return`<user_input mode="${t}">${e}</user_input>`}function cS(e,t){return`<user_command slash="${t}">${e}</user_command>`}function mS(e,t){return`<mode_notice>The user switched from ${e} mode to ${t} mode before sending this message.</mode_notice>`}function fS(e,t){let n=e.trim(),r=new RegExp(`^<${t}\\b([^>]*)>([\\s\\S]*?)<\\/${t}>$`,"i").exec(n);if(!r)return;return{attrs:r[1]??"",content:r[2]??""}}function pS(e,t){return new RegExp(`${t}="([^"]+)"`,"i").exec(e)?.[1]?.trim()||void 0}function Kv(e){if(!e?.trim())return;let t=fS(e,"user_command");if(!t)return;let n=pS(t.attrs,"slash");if(!n)return;return{slash:n,content:t.content.trim()}}function Hv(e){if(!e?.trim())return"";let t=e.trim();for(let n of["user_input","user_command"]){let r=Xv(t,n);t=(r!==t?r:t.replace(new RegExp(`<${n}[^>]*>`,"g"),"")).trim()}return t}function Gv(e){if(!e?.trim())return"";return vS(e,"mode_notice").trim()}function vS(e,t){let n=`<${t}>`,r=`</${t}>`,i=e,a=i.indexOf(n);while(a!==-1){let o=i.indexOf(r,a+n.length);if(o===-1)break;i=i.slice(0,a)+i.slice(o+r.length),a=i.indexOf(n,a)}return i}function hS(e){let t=Gv(Hv(e)),n=Kv(e);if(!n)return t;if(n.slash.toLowerCase()==="team"){let r=t.toLowerCase().startsWith("spawn a team of agents for the following task:")?t.slice(46).trim():t;return r?`/team ${r}`:"/team"}return t?`/${n.slash} ${t}`:`/${n.slash}`}function Xv(e,t){if(!e?.trim())return"";if(!t)return e;let n=new RegExp(`<${t}\\b[^>]*>([\\s\\S]*?)</${t}>`,"g");return e.replace(n,"$1")}function bS(e){return e.length}function Yv(e){let t=e.endsWith("==")?2:e.endsWith("=")?1:0;return Math.floor(e.length*3/4)-t}function $S(e=5242880){return Math.floor(e*3/4)}function Qv(e){return Math.ceil(e/3)*4}function Vv(e={}){return{maxImageEncodedBytes:e.maxImageEncodedBytes??5242880,maxImageDecodedBytes:e.maxImageDecodedBytes??6291456,maxTotalMediaBytes:e.maxTotalMediaBytes??8388608}}function Oi(){return{totalEncodedBytes:0,keptImages:0,omittedImages:0,omittedReasons:{}}}function Yi(e,t){e.omittedImages+=1,e.omittedReasons[t]=(e.omittedReasons[t]??0)+1}function We(e,t,n,r){let i=Vv(n);if(e>i.maxImageEncodedBytes){let a={ok:!1,reason:"encoded_limit",message:`Image media exceeds the ${i.maxImageEncodedBytes} byte encoded limit`};return Yi(r,a.reason),a}if(t>i.maxImageDecodedBytes){let a={ok:!1,reason:"decoded_limit",message:`Image media exceeds the ${i.maxImageDecodedBytes} byte decoded limit`};return Yi(r,a.reason),a}if(r.totalEncodedBytes+e>i.maxTotalMediaBytes){let a={ok:!1,reason:"total_limit",message:`Image media exceeds the ${i.maxTotalMediaBytes} byte total media limit`};return Yi(r,a.reason),a}return r.totalEncodedBytes+=e,r.keptImages+=1,null}function qv(e){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47}function es(e){return e.length>0&&eh(e,0,e.length)}function eh(e,t,n){let r=n-t;if(r%4!==0)return!1;let i=n;if(r>=2&&e.charCodeAt(n-2)===61&&e.charCodeAt(n-1)===61)i-=2;else if(r>=1&&e.charCodeAt(n-1)===61)i-=1;for(let a=t;a<i;a++)if(!qv(e.charCodeAt(a)))return!1;for(let a=i;a<n;a++)if(e.charCodeAt(a)!==61)return!1;return!0}function _S(e,t,n){return n-t>=5&&(e.charCodeAt(t)|32)===100&&(e.charCodeAt(t+1)|32)===97&&(e.charCodeAt(t+2)|32)===116&&(e.charCodeAt(t+3)|32)===97&&e.charCodeAt(t+4)===58}function kS(e){let t=0,n=e.length;while(t<n&&/\s/.test(e[t]??""))t+=1;while(n>t&&/\s/.test(e[n-1]??""))n-=1;return{start:t,end:n}}function wS(e,t,n){if(!_S(e,t,n))return;let r=t+5,i=e.indexOf(",",r);if(i===-1||i>=n)return;if(i-r>128)return;let a=e.slice(r,i).toLowerCase(),o=";base64";if(!a.endsWith(o))return;let s=a.slice(0,-o.length);if(!s||s.includes(";"))return;return{mediaType:s,base64Start:i+1,base64End:n}}function th(e,t,n={}){let r=n.maxEncodedBytes??5242880,i=n.maxDecodedBytes??6291456,a=new Set(n.supportedMediaTypes??qo),o=e?.toLowerCase(),s=kS(t),d=s.start,l=s.end,c=wS(t,s.start,s.end);if(c){if(o&&o!==c.mediaType)return{ok:!1,reason:"media_type_mismatch",message:`Image media type ${e} does not match data URL type ${c.mediaType}`};o=c.mediaType,d=c.base64Start,l=c.base64End}if(!o||!a.has(o))return{ok:!1,reason:"unsupported_media_type",message:`Unsupported image media type: ${e??"unknown"}`};let m=l-d;if(m===0)return{ok:!1,reason:"invalid_base64",message:"Image media must contain valid base64"};if(m>r)return{ok:!1,reason:"encoded_limit",message:`Image media exceeds the ${r} byte encoded limit`};if(!eh(t,d,l))return{ok:!1,reason:"invalid_base64",message:"Image media must contain valid base64"};let v=t.slice(d,l),p=Yv(v);if(p>i)return{ok:!1,reason:"decoded_limit",message:`Image media exceeds the ${i} byte decoded limit`};return{ok:!0,mediaType:o,base64:v,encodedBytes:m,decodedBytes:p}}function nt(e,t,n,r){let i=th(e,t,{maxEncodedBytes:n.maxImageEncodedBytes,maxDecodedBytes:n.maxImageDecodedBytes});if(!i.ok)return Yi(r,i.reason),i;let a=We(i.encodedBytes,i.decodedBytes,n,r);if(a)return a;return i}function V(e){return e.replace(/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,"�")}function Eu(e,t){let n=e[e.length-1];if(t.role==="tool"&&n?.role==="tool"&&Array.isArray(n.content)&&Array.isArray(t.content)){n.content.push(...t.content);return}e.push(t)}function IS(e){if(!Array.isArray(e)||e.length===0)return!1;return e.every((t)=>{if(!t||typeof t!=="object")return!1;let n=t;if(n.type==="text")return typeof n.text==="string";if(n.type==="image")return typeof n.data==="string"&&typeof n.mediaType==="string";return!1})}function Ye(){return{type:"text",text:Ue}}function Nu(e){return We(q,0,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},e)===null}function xS(e){try{return new URL(e).protocol}catch{return}}function Lr(e,t){let n=nt(e.mediaType,e.data,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t);if(!n.ok)return Ye();return{type:"image-data",data:n.base64,mediaType:n.mediaType}}function zS(e,t){if(e.image instanceof URL){if(e.image.protocol==="data:"){let a=nt(e.mediaType,e.image.href,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t);if(!a.ok)return Ye();return{type:"image",image:`data:${a.mediaType};base64,${a.base64}`,mediaType:a.mediaType}}if(e.image.protocol!=="http:"&&e.image.protocol!=="https:")return Ye();if(!Nu(t))return Ye();return{type:"image",image:e.image,mediaType:e.mediaType}}if(typeof e.image==="string"){let a=xS(e.image);if(a==="http:"||a==="https:"){if(!Nu(t))return Ye();return{type:"image",image:e.image,mediaType:e.mediaType}}let o=a==="data:",s=nt(e.mediaType??(o?void 0:"image/png"),e.image,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t);if(!s.ok)return Ye();return{type:"image",image:o?`data:${s.mediaType};base64,${s.base64}`:s.base64,mediaType:s.mediaType}}let n=e.image.byteLength,r=Qv(n),i=e.mediaType?.toLowerCase()??"image/png";if(!qo.includes(i)||We(r,n,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t))return Ye();return{type:"image",image:e.image,mediaType:i}}function Jr(e,t,n,r=!0){if(e==null||typeof e!=="object")return{value:e,changed:!1,mediaChanged:!1};if(Array.isArray(e)){let d=[],l=!1,c=!1;for(let m of e){if(m&&typeof m==="object"){let p=m;if(p.type==="image"&&typeof p.data==="string"&&typeof p.mediaType==="string"){if(!r){d.push(Ue),l=!0,c=!0;continue}let g={type:"image",data:p.data,mediaType:p.mediaType},$=Lr(g,n);if($.type==="image-data")t.push({type:"image",data:$.data,mediaType:$.mediaType});else d.push($.text);l=!0,c=!0;continue}if(p.type==="image"){d.push(Ue),l=!0,c=!0;continue}if(p.type==="text"&&typeof p.text==="string"){d.push(p.text),l=!0;continue}}let v=Jr(m,t,n,r);d.push(v.value),l||=v.changed,c||=v.mediaChanged}return{value:l?d:e,changed:l,mediaChanged:c}}let i=e;if(i.type==="image"){if(typeof i.data==="string"&&typeof i.mediaType==="string"){if(!r)return{value:Ue,changed:!0,mediaChanged:!0};let d={type:"image",data:i.data,mediaType:i.mediaType},l=Lr(d,n);if(l.type==="image-data")return t.push({type:"image",data:l.data,mediaType:l.mediaType}),{value:SS,changed:!0,mediaChanged:!0};return{value:l.text,changed:!0,mediaChanged:!0}}return{value:Ue,changed:!0,mediaChanged:!0}}let a={},o=!1,s=!1;for(let[d,l]of Object.entries(i)){let c=Jr(l,t,n,r);a[d]=c.value,o||=c.changed,s||=c.mediaChanged}return{value:o?a:e,changed:o,mediaChanged:s}}function Qt(e){if(typeof e==="string")return V(e);if(Array.isArray(e))return e.map((t)=>Qt(t));if(e!==null&&typeof e==="object"){let t=e,n={};for(let[r,i]of Object.entries(t))n[r]=Qt(i);return n}return e}function ih(e,t=!1,n=Oi()){if(typeof e==="string")return{type:t?"error-text":"text",value:V(e)};if(!t&&IS(e))return{type:"content",value:e.map((r)=>r.type==="image"?Lr(r,n):{type:"text",text:V(r.text)})};if(e!==null&&typeof e==="object"){let r=[],i=Jr(e,r,n,!t);if(!t&&r.length>0)return{type:"content",value:[{type:"text",text:typeof i.value==="string"?V(i.value):JSON.stringify(Qt(i.value))},...r.map((a)=>({type:"image-data",data:a.data,mediaType:a.mediaType}))]};if(i.mediaChanged)return{type:t?"error-json":"json",value:Qt(i.value)}}if(e===null||typeof e==="boolean"||typeof e==="number"||typeof e==="object")return{type:t?"error-json":"json",value:Qt(e)};return{type:t?"error-text":"text",value:V(String(e))}}function ts(e,t,n){let r=n?.assistantToolCallArgKey??"input",i=[],a=Oi();if(typeof e==="string"&&e.trim().length>0||Array.isArray(e)&&e.length>0)i.push({role:"system",content:typeof e==="string"?V(e):e});for(let o of t){let s=o.content;if(typeof s==="string"){if(s.trim().length===0){i.push({role:o.role,content:[{type:"text",text:Rr}]});continue}i.push({role:o.role,content:V(s)});continue}let d=[],l=[];if(s.length===0){i.push({role:o.role,content:[{type:"text",text:Rr}]});continue}for(let c of s)switch(c.type){case"text":d.push({type:"text",text:V(c.text),...c.providerOptions?{providerOptions:c.providerOptions}:{}});break;case"reasoning":d.push({type:"reasoning",text:V(c.text),...c.providerOptions?{providerOptions:c.providerOptions}:{}});break;case"image":d.push(zS(c,a));break;case"file":d.push({type:"text",text:Wv(c.path,V(c.content))});break;case"tool-call":if(o.role==="assistant")d.push({type:"tool-call",toolCallId:c.toolCallId,toolName:c.toolName,[r]:c.input,...c.providerOptions?{providerOptions:c.providerOptions}:{}});break;case"tool-result":{l.push({type:"tool-result",toolCallId:c.toolCallId,toolName:c.toolName,output:ih(c.output,c.isError??!1,a)});break}}if(d.length>0)Eu(i,{role:o.role,content:d});if(l.length>0)Eu(i,{role:"tool",content:l})}return i}function Pu(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function TS(e,t){if(!e&&!t)return;let n=e?.metadata,r=t?.metadata,i={...e??{},...t??{}};if(Pu(n)&&Pu(r))i.metadata={...n,...r};return i}function OS(e,t){if(typeof e==="string"&&e.toLowerCase()in Vt)return e.toLowerCase();return t?void 0:void 0}function nh(e,t){let n=typeof e==="string"?e.toLowerCase():void 0;if(n&&n in Vt)return Vt[n];if(t?.fallbackEffort)return Vt[t.fallbackEffort];return}function ES(e){let t=nh(e.effort,{fallbackEffort:e.fallbackEffort});if(t===void 0)return;if(t<=0)return 0;let n=e.minimumBudget??1;if(e.maxBudget<n)return;let r=e.scaleTokens??e.maxBudget;return Math.min(Math.max(Math.floor(r*t),n),e.maxBudget)}function PS(e){return e instanceof Error?{name:e.name,message:e.message}:e}function ot(e){return Math.max(1,Math.ceil(e/3))}function ZS(e){return/^[0-9A-Fa-f]$/.test(e)}function De(e){return e>="0"&&e<="9"}function CS(e){return e>=" "}function Ht(e){return`,:[]/{}()
|
|
19
|
+
</file_content>`}function dS(e,t="act"){return`<user_input mode="${t}">${e}</user_input>`}function cS(e,t){return`<user_command slash="${t}">${e}</user_command>`}function fS(e){let t=mS.exec(e??"");return t?t[1]:void 0}function pS(e,t){return`<mode_notice>The user switched from ${e} mode to ${t} mode before sending this message.</mode_notice>`}function vS(e,t){let n=e.trim(),r=new RegExp(`^<${t}\\b([^>]*)>([\\s\\S]*?)<\\/${t}>$`,"i").exec(n);if(!r)return;return{attrs:r[1]??"",content:r[2]??""}}function hS(e,t){return new RegExp(`${t}="([^"]+)"`,"i").exec(e)?.[1]?.trim()||void 0}function Kv(e){if(!e?.trim())return;let t=vS(e,"user_command");if(!t)return;let n=hS(t.attrs,"slash");if(!n)return;return{slash:n,content:t.content.trim()}}function Hv(e){if(!e?.trim())return"";let t=e.trim();for(let n of["user_input","user_command"]){let r=Xv(t,n);t=(r!==t?r:t.replace(new RegExp(`<${n}[^>]*>`,"g"),"")).trim()}return t}function Gv(e){if(!e?.trim())return"";return gS(e,"mode_notice").trim()}function gS(e,t){let n=`<${t}>`,r=`</${t}>`,i=e,a=i.indexOf(n);while(a!==-1){let o=i.indexOf(r,a+n.length);if(o===-1)break;i=i.slice(0,a)+i.slice(o+r.length),a=i.indexOf(n,a)}return i}function yS(e){let t=Gv(Hv(e)),n=Kv(e);if(!n)return t;if(n.slash.toLowerCase()==="team"){let r=t.toLowerCase().startsWith("spawn a team of agents for the following task:")?t.slice(46).trim():t;return r?`/team ${r}`:"/team"}return t?`/${n.slash} ${t}`:`/${n.slash}`}function Xv(e,t){if(!e?.trim())return"";if(!t)return e;let n=new RegExp(`<${t}\\b[^>]*>([\\s\\S]*?)</${t}>`,"g");return e.replace(n,"$1")}function _S(e){return e.length}function Yv(e){let t=e.endsWith("==")?2:e.endsWith("=")?1:0;return Math.floor(e.length*3/4)-t}function kS(e=5242880){return Math.floor(e*3/4)}function Qv(e){return Math.ceil(e/3)*4}function Vv(e={}){return{maxImageEncodedBytes:e.maxImageEncodedBytes??5242880,maxImageDecodedBytes:e.maxImageDecodedBytes??6291456,maxTotalMediaBytes:e.maxTotalMediaBytes??8388608}}function Oi(){return{totalEncodedBytes:0,keptImages:0,omittedImages:0,omittedReasons:{}}}function Yi(e,t){e.omittedImages+=1,e.omittedReasons[t]=(e.omittedReasons[t]??0)+1}function We(e,t,n,r){let i=Vv(n);if(e>i.maxImageEncodedBytes){let a={ok:!1,reason:"encoded_limit",message:`Image media exceeds the ${i.maxImageEncodedBytes} byte encoded limit`};return Yi(r,a.reason),a}if(t>i.maxImageDecodedBytes){let a={ok:!1,reason:"decoded_limit",message:`Image media exceeds the ${i.maxImageDecodedBytes} byte decoded limit`};return Yi(r,a.reason),a}if(r.totalEncodedBytes+e>i.maxTotalMediaBytes){let a={ok:!1,reason:"total_limit",message:`Image media exceeds the ${i.maxTotalMediaBytes} byte total media limit`};return Yi(r,a.reason),a}return r.totalEncodedBytes+=e,r.keptImages+=1,null}function qv(e){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47}function es(e){return e.length>0&&eh(e,0,e.length)}function eh(e,t,n){let r=n-t;if(r%4!==0)return!1;let i=n;if(r>=2&&e.charCodeAt(n-2)===61&&e.charCodeAt(n-1)===61)i-=2;else if(r>=1&&e.charCodeAt(n-1)===61)i-=1;for(let a=t;a<i;a++)if(!qv(e.charCodeAt(a)))return!1;for(let a=i;a<n;a++)if(e.charCodeAt(a)!==61)return!1;return!0}function wS(e,t,n){return n-t>=5&&(e.charCodeAt(t)|32)===100&&(e.charCodeAt(t+1)|32)===97&&(e.charCodeAt(t+2)|32)===116&&(e.charCodeAt(t+3)|32)===97&&e.charCodeAt(t+4)===58}function SS(e){let t=0,n=e.length;while(t<n&&/\s/.test(e[t]??""))t+=1;while(n>t&&/\s/.test(e[n-1]??""))n-=1;return{start:t,end:n}}function IS(e,t,n){if(!wS(e,t,n))return;let r=t+5,i=e.indexOf(",",r);if(i===-1||i>=n)return;if(i-r>128)return;let a=e.slice(r,i).toLowerCase(),o=";base64";if(!a.endsWith(o))return;let s=a.slice(0,-o.length);if(!s||s.includes(";"))return;return{mediaType:s,base64Start:i+1,base64End:n}}function th(e,t,n={}){let r=n.maxEncodedBytes??5242880,i=n.maxDecodedBytes??6291456,a=new Set(n.supportedMediaTypes??qo),o=e?.toLowerCase(),s=SS(t),d=s.start,l=s.end,c=IS(t,s.start,s.end);if(c){if(o&&o!==c.mediaType)return{ok:!1,reason:"media_type_mismatch",message:`Image media type ${e} does not match data URL type ${c.mediaType}`};o=c.mediaType,d=c.base64Start,l=c.base64End}if(!o||!a.has(o))return{ok:!1,reason:"unsupported_media_type",message:`Unsupported image media type: ${e??"unknown"}`};let m=l-d;if(m===0)return{ok:!1,reason:"invalid_base64",message:"Image media must contain valid base64"};if(m>r)return{ok:!1,reason:"encoded_limit",message:`Image media exceeds the ${r} byte encoded limit`};if(!eh(t,d,l))return{ok:!1,reason:"invalid_base64",message:"Image media must contain valid base64"};let v=t.slice(d,l),p=Yv(v);if(p>i)return{ok:!1,reason:"decoded_limit",message:`Image media exceeds the ${i} byte decoded limit`};return{ok:!0,mediaType:o,base64:v,encodedBytes:m,decodedBytes:p}}function nt(e,t,n,r){let i=th(e,t,{maxEncodedBytes:n.maxImageEncodedBytes,maxDecodedBytes:n.maxImageDecodedBytes});if(!i.ok)return Yi(r,i.reason),i;let a=We(i.encodedBytes,i.decodedBytes,n,r);if(a)return a;return i}function V(e){return e.replace(/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,"�")}function Eu(e,t){let n=e[e.length-1];if(t.role==="tool"&&n?.role==="tool"&&Array.isArray(n.content)&&Array.isArray(t.content)){n.content.push(...t.content);return}e.push(t)}function zS(e){if(!Array.isArray(e)||e.length===0)return!1;return e.every((t)=>{if(!t||typeof t!=="object")return!1;let n=t;if(n.type==="text")return typeof n.text==="string";if(n.type==="image")return typeof n.data==="string"&&typeof n.mediaType==="string";return!1})}function Ye(){return{type:"text",text:Ue}}function Nu(e){return We(q,0,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},e)===null}function US(e){try{return new URL(e).protocol}catch{return}}function Lr(e,t){let n=nt(e.mediaType,e.data,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t);if(!n.ok)return Ye();return{type:"image-data",data:n.base64,mediaType:n.mediaType}}function TS(e,t){if(e.image instanceof URL){if(e.image.protocol==="data:"){let a=nt(e.mediaType,e.image.href,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t);if(!a.ok)return Ye();return{type:"image",image:`data:${a.mediaType};base64,${a.base64}`,mediaType:a.mediaType}}if(e.image.protocol!=="http:"&&e.image.protocol!=="https:")return Ye();if(!Nu(t))return Ye();return{type:"image",image:e.image,mediaType:e.mediaType}}if(typeof e.image==="string"){let a=US(e.image);if(a==="http:"||a==="https:"){if(!Nu(t))return Ye();return{type:"image",image:e.image,mediaType:e.mediaType}}let o=a==="data:",s=nt(e.mediaType??(o?void 0:"image/png"),e.image,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t);if(!s.ok)return Ye();return{type:"image",image:o?`data:${s.mediaType};base64,${s.base64}`:s.base64,mediaType:s.mediaType}}let n=e.image.byteLength,r=Qv(n),i=e.mediaType?.toLowerCase()??"image/png";if(!qo.includes(i)||We(r,n,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t))return Ye();return{type:"image",image:e.image,mediaType:i}}function Jr(e,t,n,r=!0){if(e==null||typeof e!=="object")return{value:e,changed:!1,mediaChanged:!1};if(Array.isArray(e)){let d=[],l=!1,c=!1;for(let m of e){if(m&&typeof m==="object"){let p=m;if(p.type==="image"&&typeof p.data==="string"&&typeof p.mediaType==="string"){if(!r){d.push(Ue),l=!0,c=!0;continue}let g={type:"image",data:p.data,mediaType:p.mediaType},$=Lr(g,n);if($.type==="image-data")t.push({type:"image",data:$.data,mediaType:$.mediaType});else d.push($.text);l=!0,c=!0;continue}if(p.type==="image"){d.push(Ue),l=!0,c=!0;continue}if(p.type==="text"&&typeof p.text==="string"){d.push(p.text),l=!0;continue}}let v=Jr(m,t,n,r);d.push(v.value),l||=v.changed,c||=v.mediaChanged}return{value:l?d:e,changed:l,mediaChanged:c}}let i=e;if(i.type==="image"){if(typeof i.data==="string"&&typeof i.mediaType==="string"){if(!r)return{value:Ue,changed:!0,mediaChanged:!0};let d={type:"image",data:i.data,mediaType:i.mediaType},l=Lr(d,n);if(l.type==="image-data")return t.push({type:"image",data:l.data,mediaType:l.mediaType}),{value:xS,changed:!0,mediaChanged:!0};return{value:l.text,changed:!0,mediaChanged:!0}}return{value:Ue,changed:!0,mediaChanged:!0}}let a={},o=!1,s=!1;for(let[d,l]of Object.entries(i)){let c=Jr(l,t,n,r);a[d]=c.value,o||=c.changed,s||=c.mediaChanged}return{value:o?a:e,changed:o,mediaChanged:s}}function Qt(e){if(typeof e==="string")return V(e);if(Array.isArray(e))return e.map((t)=>Qt(t));if(e!==null&&typeof e==="object"){let t=e,n={};for(let[r,i]of Object.entries(t))n[r]=Qt(i);return n}return e}function ih(e,t=!1,n=Oi()){if(typeof e==="string")return{type:t?"error-text":"text",value:V(e)};if(!t&&zS(e))return{type:"content",value:e.map((r)=>r.type==="image"?Lr(r,n):{type:"text",text:V(r.text)})};if(e!==null&&typeof e==="object"){let r=[],i=Jr(e,r,n,!t);if(!t&&r.length>0)return{type:"content",value:[{type:"text",text:typeof i.value==="string"?V(i.value):JSON.stringify(Qt(i.value))},...r.map((a)=>({type:"image-data",data:a.data,mediaType:a.mediaType}))]};if(i.mediaChanged)return{type:t?"error-json":"json",value:Qt(i.value)}}if(e===null||typeof e==="boolean"||typeof e==="number"||typeof e==="object")return{type:t?"error-json":"json",value:Qt(e)};return{type:t?"error-text":"text",value:V(String(e))}}function ts(e,t,n){let r=n?.assistantToolCallArgKey??"input",i=[],a=Oi();if(typeof e==="string"&&e.trim().length>0||Array.isArray(e)&&e.length>0)i.push({role:"system",content:typeof e==="string"?V(e):e});for(let o of t){let s=o.content;if(typeof s==="string"){if(s.trim().length===0){i.push({role:o.role,content:[{type:"text",text:Rr}]});continue}i.push({role:o.role,content:V(s)});continue}let d=[],l=[];if(s.length===0){i.push({role:o.role,content:[{type:"text",text:Rr}]});continue}for(let c of s)switch(c.type){case"text":d.push({type:"text",text:V(c.text),...c.providerOptions?{providerOptions:c.providerOptions}:{}});break;case"reasoning":d.push({type:"reasoning",text:V(c.text),...c.providerOptions?{providerOptions:c.providerOptions}:{}});break;case"image":d.push(TS(c,a));break;case"file":d.push({type:"text",text:Wv(c.path,V(c.content))});break;case"tool-call":if(o.role==="assistant")d.push({type:"tool-call",toolCallId:c.toolCallId,toolName:c.toolName,[r]:c.input,...c.providerOptions?{providerOptions:c.providerOptions}:{}});break;case"tool-result":{l.push({type:"tool-result",toolCallId:c.toolCallId,toolName:c.toolName,output:ih(c.output,c.isError??!1,a)});break}}if(d.length>0)Eu(i,{role:o.role,content:d});if(l.length>0)Eu(i,{role:"tool",content:l})}return i}function Pu(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function OS(e,t){if(!e&&!t)return;let n=e?.metadata,r=t?.metadata,i={...e??{},...t??{}};if(Pu(n)&&Pu(r))i.metadata={...n,...r};return i}function NS(e,t){if(typeof e==="string"&&e.toLowerCase()in Vt)return e.toLowerCase();return t?void 0:void 0}function nh(e,t){let n=typeof e==="string"?e.toLowerCase():void 0;if(n&&n in Vt)return Vt[n];if(t?.fallbackEffort)return Vt[t.fallbackEffort];return}function PS(e){let t=nh(e.effort,{fallbackEffort:e.fallbackEffort});if(t===void 0)return;if(t<=0)return 0;let n=e.minimumBudget??1;if(e.maxBudget<n)return;let r=e.scaleTokens??e.maxBudget;return Math.min(Math.max(Math.floor(r*t),n),e.maxBudget)}function DS(e){return e instanceof Error?{name:e.name,message:e.message}:e}function ot(e){return Math.max(1,Math.ceil(e/3))}function RS(e){return/^[0-9A-Fa-f]$/.test(e)}function De(e){return e>="0"&&e<="9"}function LS(e){return e>=" "}function Ht(e){return`,:[]/{}()
|
|
20
20
|
+`.includes(e)}function Au(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="_"||e==="$"}function Ur(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="_"||e==="$"||e>="0"&&e<="9"}function Cu(e){return`,[]/{}
|
|
21
|
-
+`.includes(e)}function Ru(e){return Yt(e)||
|
|
22
|
-
`||e==="\r"||e==="\t"||e==="\b"||e==="\f"}function Ce(e,t){let n=e.charCodeAt(t);return n===32||n===10||n===9||n===13}function
|
|
21
|
+
+`.includes(e)}function Ru(e){return Yt(e)||JS.test(e)}function Lu(e){return e===`
|
|
22
|
+
`||e==="\r"||e==="\t"||e==="\b"||e==="\f"}function Ce(e,t){let n=e.charCodeAt(t);return n===32||n===10||n===9||n===13}function MS(e,t){let n=e.charCodeAt(t);return n===32||n===9||n===13}function FS(e,t){let n=e.charCodeAt(t);return n===160||n===6158||n>=8192&&n<=8203||n===8239||n===8287||n===12288||n===65279}function Yt(e){return rh(e)||Mr(e)}function rh(e){return e==='"'||e==="“"||e==="”"}function Ju(e){return e==='"'}function Mr(e){return e==="'"||e==="‘"||e==="’"||e==="`"||e==="´"}function Mu(e){return e==="'"}function Gt(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=e.lastIndexOf(t);return r!==-1?e.substring(0,r)+(n?"":e.substring(r+1)):e}function ge(e,t){let n=e.length;if(!Ce(e,n-1))return e+t;while(Ce(e,n-1))n--;return e.substring(0,n)+t+e.substring(n)}function BS(e,t,n){return e.substring(0,t)+e.substring(t+n)}function WS(e){return/[,\n][ \t\r]*$/.test(e)}function Bu(e){if(e.charAt(0)!=="&")return null;let t=e.indexOf(";");if(t===-1)return null;let n=e.substring(0,t+1),r=KS[n];if(r!==void 0)return{char:r,length:n.length};if(e.charAt(1)==="#"){let i=e.substring(2,t),a=i.charAt(0)==="x"||i.charAt(0)==="X",o=a?i.substring(1):i;if(o.length>0){let s=Number.parseInt(o,a?16:10);if(!Number.isNaN(s)&&s>=0&&s<=1114111)return{char:String.fromCodePoint(s),length:n.length}}}return null}function HS(e){return e!==null&&e.char==='"'}function GS(e){return e!==null&&e.char==="'"}function gt(e,t){let n=0;for(let r=0;r<e.length;r++)if(e.charAt(r)===t)n++;return n}function XS(e,t){switch(t){case")":return gt(e,"(")>gt(e,")");case"]":return gt(e,"[")>gt(e,"]");case"}":return gt(e,"{")>gt(e,"}");default:return!1}}function QS(e){let t=0,n="";if(d(["```","[```","{```"]),!i())Gy();d(["```","```]","```}"]);let r=c(",");if(r)a();if(Ru(e[t])&&WS(n)){if(!r)n=ge(n,",");E()}else if(r)n=Gt(n,",");while(e[t]==="}"||e[t]==="]")t++,a();if(t>=e.length)return n;_r();function i(){a();let _=g()||$()||T()||I()||R()||$e(!1)||ft();return a(),_}function a(){let _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,w=t,N=o(_);do if(N=s(),N)N=o(_);while(N);return t>w}function o(_){let w=_?Ce:MS,N="";while(!0)if(w(e,t))N+=e[t],t++;else if(FS(e,t))N+=" ",t++;else break;if(N.length>0)return n+=N,!0;return!1}function s(){if(e[t]==="/"&&e[t+1]==="*"){while(t<e.length&&!VS(e,t))t++;return t+=2,!0}if(e[t]==="/"&&e[t+1]==="/"){while(t<e.length&&e[t]!==`
|
|
23
23
|
`)t++;return!0}return!1}function d(_){if(l(_)){if(Au(e[t]))while(t<e.length&&Ur(e[t]))t++;return a(),!0}return!1}function l(_){o(!0);for(let w of _){let N=t+w.length;if(e.slice(t,N)===w)return t=N,!0}return!1}function c(_){if(e[t]===_)return n+=e[t],t++,!0;return!1}function m(_){if(e[t]===_)return t++,!0;return!1}function v(){return m("\\")}function p(){if(a(),e[t]==="."&&e[t+1]==="."&&e[t+2]===".")return t+=3,a(),m(","),!0;return!1}function g(){if(e[t]==="{"){if(n+="{",t++,a(),m(","))a();let _=!0;while(t<e.length&&e[t]!=="}"){let w;if(!_){if(w=c(","),!w)n=ge(n,",");a()}else w=!0;if(p(),!(T()||$e(!0))){if(e[t]==="}"||e[t]==="{"||e[t]==="]"||e[t]==="["||e[t]===void 0){if(!_)n=Gt(n,",")}else Xy();break}a();let N=c(":"),xe=t>=e.length;if(!N)if(Ru(e[t])||xe)n=ge(n,":");else Qs();if(!i())if(N||xe)n+="null";else Qs();_=!1}if(e[t]==="}")n+="}",t++;else n=ge(n,"}");return!0}return!1}function $(){if(e[t]==="["){if(n+="[",t++,a(),m(","))a();let _=!0;while(t<e.length&&e[t]!=="]"){if(!_){if(!c(","))n=ge(n,",")}if(p(),!i()){if(!_)n=Gt(n,",");break}_=!1}if(e[t]==="]")n+="]",t++;else n=ge(n,"]");return!0}return!1}function E(){let _=!0,w=!0;while(w){if(!_){if(!c(","))n=ge(n,",")}else _=!1;w=i()}if(!w)n=Gt(n,",");n=`[
|
|
24
24
|
${n}
|
|
25
|
-
]`}function T(){let _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1,N=e[t]==="\\";if(N){if(t++,!Yt(e[t]))_r()}let xe=e[t]==="&"?Bu(e.slice(t,t+Fu)):null,kr=
|
|
26
|
-
`)D+="\\n",t+=2;else D+=M,t+=2}else{let M=e.charAt(t);if(M==='"'&&e[t-1]!=="\\")D+=`\\${M}`,t++;else if(Lu(M))D+=Wu[M],t++;else{if(!
|
|
25
|
+
]`}function T(){let _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1,N=e[t]==="\\";if(N){if(t++,!Yt(e[t]))_r()}let xe=e[t]==="&"?Bu(e.slice(t,t+Fu)):null,kr=HS(xe)||GS(xe);if(Yt(e[t])||kr){let Qy=Ju(e[t])?Ju:Mu(e[t])?Mu:Mr(e[t])?Mr:rh,Li=t,Ji=n.length,D='"';t+=kr&&xe?xe.length:1;while(!0){if(t>=e.length){let M=Ri(t-1);if(!_&&Ht(e.charAt(M)))return t=Li,n=n.substring(0,Ji),T(!0);return D=ge(D,'"'),n+=D,!0}if(t===w)return D=ge(D,'"'),n+=D,!0;let ze=kr&&e[t]==="&"?Bu(e.slice(t,t+Fu)):null;if(ze&&xe?ze.char===xe.char:Qy(e[t])){let M=t,Pe=D.length;if(D+='"',t+=ze?ze.length:1,n+=D,a(!1),_||t>=e.length||Ht(e[t])&&!XS(D,e[t])||Yt(e[t])&&!Ky(t)||De(e[t]))return A(),!0;if(e[t]==="\\")_r();let Vs=Ri(M-1),qs=e.charAt(Vs);if(qs===",")return t=Li,n=n.substring(0,Ji),T(!1,Vs);if(Ht(qs))return t=Li,n=n.substring(0,Ji),T(!0);n=n.substring(0,Ji),t=M+(ze?ze.length:1),D=`${D.substring(0,Pe)}\\${D.substring(Pe)}`}else if(_&&Cu(e[t])){if(e[t-1]===":"&&Du.test(e.substring(Li+1,t+2)))while(t<e.length&&Zu.test(e[t]))D+=e[t],t++;return D=ge(D,'"'),n+=D,A(),!0}else if(ze){let M=ze.char;if(M==='"')D+="\\\"";else if(Lu(M))D+=Wu[M];else D+=M;t+=ze.length}else if(e[t]==="\\"){let M=e.charAt(t+1);if(YS[M]!==void 0)D+=e.slice(t,t+2),t+=2;else if(M==="u"){let Pe=2;while(Pe<6&&RS(e[t+Pe]))Pe++;if(Pe===6)D+=e.slice(t,t+6),t+=6;else if(t+Pe>=e.length)t=e.length;else Yy()}else if(M===`
|
|
26
|
+
`)D+="\\n",t+=2;else D+=M,t+=2}else{let M=e.charAt(t);if(M==='"'&&e[t-1]!=="\\")D+=`\\${M}`,t++;else if(Lu(M))D+=Wu[M],t++;else{if(!LS(M))Hy(M);D+=M,t++}}if(N)v()}}return!1}function A(){let _=!1;a();while(e[t]==="+"){_=!0,t++,a(),n=Gt(n,'"',!0);let w=n.length;if(T())n=BS(n,w,1);else n=ge(n,'"')}return _}function I(){let _=t,w="",N=!1;if(e[t]==="-"){if(w+=e[t],t++,!De(e[t])&&Ys())w+="0"}if(e[t]==="0"&&De(e[t+1]))N=!0;while(De(e[t]))w+=e[t],t++;if(e[t]==="."){if(w===""||w==="-")w+="0";if(w+=e[t],t++,!De(e[t]))w+="0";while(De(e[t]))w+=e[t],t++}if(t>_){if(e[t]==="e"||e[t]==="E"){if(w==="-")N=!0;if(w+=e[t],t++,e[t]==="-"||e[t]==="+")w+=e[t],t++;if(!De(e[t]))w+="0";while(De(e[t]))w+=e[t],t++}if(!Ys())return t=_,!1;return n+=N?`"${e.substring(_,t)}"`:w,!0}return!1}function R(){return Y("true","true")||Y("false","false")||Y("null","null")||Y("True","true")||Y("False","false")||Y("None","null")}function Y(_,w){if(e.slice(t,t+_.length)===_&&!Ur(e[t+_.length]))return n+=w,t+=_.length,!0;return!1}function $e(_){let w=t;if(Au(e[t])){while(t<e.length&&Ur(e[t]))t++;let N=t;while(Ce(e,N))N++;if(e[N]==="("){if(t=N+1,i(),e[t]===")"){if(t++,e[t]===";")t++}return!0}}while(t<e.length&&!Cu(e[t])&&!Yt(e[t])&&(!_||e[t]!==":"))t++;if(e[t-1]===":"&&Du.test(e.substring(w,t+2)))while(t<e.length&&Zu.test(e[t]))t++;if(t>w){while(Ce(e,t-1)&&t>0)t--;let N=e.slice(w,t);if(n+=N==="undefined"?"null":JSON.stringify(N),e[t]==='"')t++;return!0}}function ft(){if(e[t]==="/"){let _=t;t++;while(t<e.length&&(e[t]!=="/"||e[t-1]==="\\"))t++;return t++,n+=JSON.stringify(e.substring(_,t)),!0}}function Ri(_){let w=_;while(w>0&&Ce(e,w))w--;return w}function Ky(_){let w=_+1;while(w<e.length&&Ce(e,w))w++;return w>=e.length||Ht(e[w])}function Ys(){return t>=e.length||Ht(e[t])||Ce(e,t)}function Hy(_){throw new Qe(`Invalid character ${JSON.stringify(_)}`,t)}function _r(){throw new Qe(`Unexpected character ${JSON.stringify(e[t])}`,t)}function Gy(){throw new Qe("Unexpected end of json string",e.length)}function Xy(){throw new Qe("Object key expected",t)}function Qs(){throw new Qe("Colon expected",t)}function Yy(){let _=e.slice(t,t+6);throw new Qe(`Invalid unicode character "${_}"`,t)}}function VS(e,t){return e[t]==="*"&&e[t+1]==="/"}function eI(e){let t=e.match(qS);if(!t)return;let[,n,r]=t,i=r.trim();if(!i)return;let a=i[0];if(a==='"'||a==="{"||a==="["||i==="true"||i==="false"||i==="null"||Number.isFinite(Number(i)))return;return JSON.parse(`{"${n}":${JSON.stringify(i)}}`)}function is(e){if(typeof e!=="string")return e;let t=e.trimStart();if(t[0]!=="{"&&t[0]!=="[")return e;for(let n of tI)try{let r=n(t);if(r!==void 0)return r}catch{}return e}function iI(e){let t=new WeakSet;try{return JSON.stringify(e,(n,r)=>{if(typeof r==="bigint")return r.toString();if(r&&typeof r==="object"){if(t.has(r))return"[Circular]";t.add(r)}return r})??"null"}catch{return String(e)}}function nI(e){try{return JSON.parse(e)}catch{return}}function yt(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function rI(e){let t=e.type;if(typeof t==="string")return[t];return Array.isArray(t)?t.filter((n)=>typeof n==="string"):[]}function Fr(e,t){if(rI(e).includes(t))return!0;for(let n of["anyOf","oneOf","allOf"]){let r=e[n];if(Array.isArray(r)&&r.some((i)=>yt(i)&&Fr(i,t)))return!0}return!1}function aI(e,t){if(typeof e!=="string")return e;let n=e.trim(),r=Fr(t,"array"),i=Fr(t,"object");if((!r||!n.startsWith("["))&&(!i||!n.startsWith("{")))return e;try{let a=JSON.parse(n);if(Array.isArray(a))return r?a:e;if(yt(a))return i?a:e;return e}catch{return e}}function Br(e,t){let n=aI(e,t);if(Array.isArray(n)){let o=t.items;if(!yt(o))return n;let s=!1,d=n.map((l)=>{let c=Br(l,o);return s||=c!==l,c});return s?d:n}if(!yt(n))return n;let r=t.properties;if(!yt(r))return n;let i=!1,a={...n};for(let[o,s]of Object.entries(r)){if(!(o in n)||!yt(s))continue;let d=Br(n[o],s);if(d!==n[o])a[o]=d,i=!0}return i?a:n}function oI(e){return Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0))}function sI(e){let t=e.replaceAll("\\","/"),n=t.lastIndexOf("/");return(n>=0?t.slice(n+1):t).toLowerCase()}function uI(e){return e==="win32"?"powershell":"/bin/bash"}function lI(e,t){let n=sI(e);if(n==="powershell"||n==="powershell.exe"||n==="pwsh"||n==="pwsh.exe")return["-NoProfile","-NonInteractive","-Command",t];if(n==="cmd"||n==="cmd.exe")return["/d","/s","/c",t];return["-c",t]}function dI(e){return e.toLowerCase().replace(/[^\w.-]+/g,"_")}function cI(e){let t=e?.trim();return t?t:void 0}function ah(e,t){if(e.length<=t)return e;return`${e.slice(0,t-1)}…`}function mI(e,t="/",n=100){if(!e||e.length<=n)return e||"";let r=e.split(t)?.shift()?.trim()?.slice(0,n-1);return r?`${r}…`:ah(e,n)}function fI(e){if(e.length<=8)return"****";return`${e.slice(0,4)}...${e.slice(-4)}`}function pI(e){if(!e)return"(unknown-date)";let t=new Date(e);if(Number.isNaN(t.getTime()))return e;return t.toLocaleString("en-US",{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",hour12:!0})}function vI(e){let t=Math.max(0,Math.floor(e/1000)),n=Math.floor(t/86400),r=Math.floor(t%86400/3600),i=Math.floor(t%3600/60),a=t%60;if(n>0)return`${n}d ${r}h`;if(r>0)return`${r}h ${i}m`;if(i>0)return`${i}m ${a}s`;return`${a}s`}function hI(e,t){let n=e.safeParse(t);if(!n.success)throw Error(u.prettifyError(n.error));return n.data}function oh(e){return u.toJSONSchema(e)}function Et(e){return e==="cline"||e==="cline-pass"}function bI(e){return JSON.stringify({workspaces:{[e.rootPath]:{hint:e.hint,associatedRemoteUrls:e.associatedRemoteUrls,latestGitCommitHash:e.latestGitCommitHash,latestGitBranchName:e.latestGitBranchName}}},null,2)}function Ku(e,t,n){if(n?.trim()?.includes(Wr))return n.trim();let r=n||JSON.stringify({workspaces:{[e]:{hint:t||e.split("/").at(-1)||e}}},null,2);return`
|
|
27
27
|
${Wr}
|
|
28
|
-
${r}`}function
|
|
28
|
+
${r}`}function $I(e){let{ide:t="Terminal Shell",mode:n,platform:r="unknown",workspaceName:i,metadata:a,rules:o,overridePrompt:s,providerId:d}=e,l=e.workspaceRoot??e.rootPath??"",c=Et(d||"");if(s?.trim()){let m=s.trim();if(c&&a?.trim()&&!m.includes(Wr))return`${m}
|
|
29
29
|
|
|
30
|
-
${Ku(l,i,a)}`.trim();return m}return(n==="yolo"?hI:vI).replace("{{PLATFORM_NAME}}",r).replace("{{CWD}}",l).replace("{{CURRENT_DATE}}",new Date().toLocaleDateString()).replace("{{IDE_NAME}}",t).replace("{{CLINE_METADATA}}",c?Ku(l,i,a):"").replace("{{CLINE_RULES}}",o||"").trim()}function lh(e){let t=e?.trim().toLowerCase();if(t==="development"||t==="production")return t;return}function TI(e){for(let t=0;t<e.length;t+=1){let n=e[t]?.trim();if(!n)continue;if(n==="--conditions"&&e[t+1]?.trim()==="development")return!0;if(n.startsWith("--conditions=")&&n.slice(13).split(",").map((r)=>r.trim()).includes("development"))return!0}return!1}function jI(e){if(!e?.trim())return!1;let t=UI(e).toLowerCase();return t==="node"||t==="node.exe"||t==="bun"||t==="bun.exe"}function OI(e){return e.some((t)=>t==="--inspect"||t.startsWith("--inspect=")||t==="--inspect-brk"||t.startsWith("--inspect-brk="))}function EI(e){return e.some((t)=>t==="--enable-source-maps")}function NI(e){return e[sh]?.trim()||"127.0.0.1"}function PI(e){let t=e[uh]?.trim();if(!t)return;let n=Number.parseInt(t,10);return Number.isInteger(n)&&n>0?n:void 0}function AI(e){switch(e){case"rpc":return 0;case"hook":return 1;case"plugin-sandbox":return 2;case"connector":return 3;case"sandbox":return 4;default:return 9}}function ns(e={}){let t=e.env??process.env,n=e.execArgv??process.execArgv,r=lh(t[sn]);if(r)return r;let i=t.NODE_ENV?.trim().toLowerCase();if(i==="production")return"production";if(i==="development")return"development";return TI(n)?"development":"production"}function DI(e=process.env,t={}){if(lh(e[sn]))return e;return{...e,[sn]:ns({env:e,execArgv:t.execArgv})}}function ZI(e,t={}){if(e.length===0||!jI(e[0]))return[...e];if(ns(t)!=="development")return[...e];let n=t.env??process.env,r=[...n.NODE_OPTIONS?.split(/\s+/).filter(Boolean)??[],...e.slice(1)],i=[];if(!OI(r)){let a=NI(n),o=PI(n),s=o===void 0?0:o+AI(t.debugRole);i.push(`--inspect=${a}:${s}`)}if(!EI(r))i.push("--enable-source-maps");return[e[0],...i,...e.slice(1)]}function Hu(e){let t=e?.trim().toLowerCase();if(t==="production"||t==="staging"||t==="local")return t;return}function dh(){if(typeof process>"u"||!process?.env)return{};return process.env}function ch(){let e=dh();return Hu(e.CLINE_ENVIRONMENT_OVERRIDE)??Hu(e.CLINE_ENVIRONMENT)??"production"}function JI(e){if(typeof e==="string")return Kr[e];return Kr[ch()]}function MI(e,t){if(t.CLINE_API_BASE_URL)e={...e,apiBaseUrl:t.CLINE_API_BASE_URL,mcpBaseUrl:`${t.CLINE_API_BASE_URL}/v1/mcp`};return e}function st(e){let t=JI(e);return MI(t,dh())}function BI(e=process.env){return e.CLINE_RUN_AS_HUB_DAEMON==="1"}function HI(e,t){e?.capture({event:"agent.reasoning.unexpected_tokens",properties:GI({sessionId:t.sessionId,agentId:t.agentId,runId:t.runId,iteration:t.iteration,providerId:t.providerId,modelId:t.modelId,requestedThinking:t.requestedThinking,reasoningTokenCount:t.reasoningTokenCount})})}function Yn(e,t){if(!e)return;e.capture({event:t.event??"sdk.error",properties:mh(t)})}function mh(e){return{...e.context??{},component:e.component,operation:e.operation,severity:e.severity??"error",handled:e.handled??!0,...fh(e.error,e.messageLimit)}}function GI(e){let t={};for(let[n,r]of Object.entries(e))if(r!==void 0)t[n]=r;return t}function fh(e,t=500){let n=QI(e)?e:void 0,r=e instanceof Error?e:void 0,i=r?.message??Gu(n?.message)??(typeof e==="string"?e:String(e)),a=VI(n?.code),o=Tr(n?.status)??Tr(n?.statusCode)??Tr(n?.responseStatus);return{error_type:r?.name?.trim()||Gu(n?.name)||r?.constructor?.name||"Error",error_message:YI(XI(i),t),...a!==void 0?{error_code:a}:{},...o!==void 0?{error_status:o}:{}}}function XI(e){return e.replace(/(authorization=Bearer\s+)[^&\s]+/gi,"$1[redacted]").replace(/(api[_-]?key|access[_-]?token|refresh[_-]?token|authorization|password|secret)=([^&\s]+)/gi,"$1=[redacted]").replace(/(Bearer\s+)[A-Za-z0-9._~+/-]+=*/gi,"$1[redacted]").replace(/\/Users\/[^/\s]+/g,"/Users/[redacted]").replace(/\/home\/[^/\s]+/g,"/home/[redacted]").replace(/([A-Za-z]:[\\/]+Users[\\/]+)[^\\/\s]+/g,"$1[redacted]")}function YI(e,t){let n=Math.max(1,Math.floor(t));return e.length>n?e.substring(0,n):e}function QI(e){return typeof e==="object"&&e!==null}function Gu(e){return typeof e==="string"&&e.trim().length>0?e:void 0}function VI(e){if(typeof e==="string"&&e.trim().length>0)return e;if(typeof e==="number"&&Number.isFinite(e))return e;return}function Tr(e){return typeof e==="number"&&Number.isFinite(e)?e:void 0}function qI(e){let t={};if(!e)return t;try{e.split(",").forEach((n)=>{let r=n.indexOf("=");if(r<=0)return;let i=decodeURIComponent(n.substring(0,r).trim()),a=decodeURIComponent(n.substring(r+1).trim());if(!i||!a)return;t[i]=a})}catch{}return t}function ex(){if(!process.env)return{enabled:!1};return{enabled:process.env.OTEL_TELEMETRY_ENABLED==="1"||process.env.OTEL_TELEMETRY_ENABLED==="true",metricsExporter:process.env.OTEL_METRICS_EXPORTER||"otlp",logsExporter:process.env.OTEL_LOGS_EXPORTER||"otlp",tracesExporter:process.env.OTEL_TRACES_EXPORTER,otlpProtocol:process.env.OTEL_EXPORTER_OTLP_PROTOCOL||"http/json",otlpEndpoint:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,metricExportInterval:process.env.OTEL_METRIC_EXPORT_INTERVAL?Number.parseInt(process.env.OTEL_METRIC_EXPORT_INTERVAL,10):void 0,otlpHeaders:process.env.OTEL_EXPORTER_OTLP_HEADERS?qI(process.env.OTEL_EXPORTER_OTLP_HEADERS):void 0}}function ph(e={}){return{extension_version:"unknown",cline_type:"unknown",platform:"terminal",platform_version:process?.version||"unknown",os_type:process?.platform||"unknown",os_version:process?.platform==="win32"?process?.env?.OS??"unknown":"unknown",...e}}function tx(e={}){return{...ex(),...e,metadata:ph(e.metadata)}}function vh(e){let t=e?.trim();return t?t:void 0}function ix(e,t){if(!e)return;let n=typeof e==="function"?e(t):e;if(!n)return;let r=vh(n.rootSessionId);if(!r)return;return{rootSessionId:r}}function nx(e){return vh(e?.rootSessionId)}function ax(e){if(e<0)throw RangeError("Wrong ID size");try{if(!Ze||Ze.length<e)Ze=Buffer.allocUnsafe(e*rx),Xu.getRandomValues(Ze),bt=0;else if(bt+e>Ze.length)Xu.getRandomValues(Ze),bt=0}catch(t){throw Ze=void 0,t}bt+=e}function ox(e){return ax(e|=0),Ze.subarray(bt-e,bt)}function sx(e,t,n){let r=256-256%e.length;if(r===256){let a=e.length-1;return(o=t)=>{if(!o)return"";let s="";while(!0){let d=n(o),l=o;while(l--)if(s+=e[d[l]&a],s.length>=o)return s}}}let i=Math.ceil(409.6*t/r);return(a=t)=>{if(!a)return"";let o="";while(!0){let s=n(i),d=i;while(d--)if(s[d]<r){if(o+=e[s[d]%e.length],o.length>=a)return o}}}}function ux(e,t=21){return sx(e,t,ox)}function lx(e="",t=""){let n=ux("1234567890abcdefghijklmnopqrstuvwxyz",10);return`${e}${Date.now()}_${n(5)}${t}`}function gh(e){return typeof e==="string"&&cx.has(e)}function mx(e){if(!Array.isArray(e))return;let t=e.map((n)=>typeof n==="string"?n.trim():"").filter(gh);return[...new Set(t)]}function fx(e,t){return new Set(e??hh).has(t)}function px(){return{workspaces:{}}}function vx(e,t){let n={...e,workspaces:{...e.workspaces,[t.rootPath]:t}};if(!n.currentWorkspacePath)n.currentWorkspacePath=t.rootPath;return bh.parse(n)}function L(e){return u.preprocess((t)=>t===null?void 0:t,e.optional())}function i0(e){let{$schema:t,...n}=e;if(typeof n.type==="string")return n;if("properties"in n||"required"in n||"additionalProperties"in n)return{type:"object",...n};for(let r of["oneOf","anyOf","allOf"]){let i=n[r];if(!Array.isArray(i)||i.length===0)continue;if(r==="allOf"){if(i.some((a)=>a&&typeof a==="object"&&a.type==="object"))return{type:"object",...n};throw Error('Tool inputSchema must describe an object at the top level, but the schema has a top-level "allOf" with no branch that asserts type: "object". Add type: "object" to at least one allOf branch to make the object constraint explicit.')}if(i.every((a)=>a&&typeof a==="object"&&a.type==="object"))return{type:"object",...n};throw Error(`Tool inputSchema must describe an object at the top level, but the schema has a top-level "${r}" whose branches include non-object types. Pass the strict object schema as inputSchema and reserve union/coercion schemas for use inside execute().`)}return n}function n0(e){let t=i0(e.inputSchema instanceof u.ZodType?oh(e.inputSchema):e.inputSchema);return{name:e.name,description:e.description,inputSchema:t,lifecycle:e.lifecycle,timeoutMs:e.timeoutMs??30000,retryable:e.retryable??!0,maxRetries:e.maxRetries??3,execute:e.execute}}function r0(e){let t=e instanceof Error?e.message.toLowerCase():String(e);return Ih.some((n)=>t.includes(n))}function f0(e){let t=e.toLowerCase();if(c0.has(t))return!0;for(let n of m0){if(t===n)return!0;if(t.endsWith(n)&&t.length>n.length){let r=t[t.length-n.length-1];if(r==="_"||r==="-")return!0;let i=e[e.length-n.length];if(i&&i===i.toUpperCase()&&i!==i.toLowerCase())return!0}if(t.endsWith(`_${n}`))return!0}return!1}function xh(e){let t=e;for(let{pattern:n,replacement:r}of p0)t=t.replace(n,r);return t}function Hr(e){if(Array.isArray(e))return e.map(Hr);if(!e||typeof e!=="object")return e;return Object.fromEntries(Object.entries(e).sort(([t],[n])=>v0(t,n)).map(([t,n])=>[t,Hr(n)]))}function v0(e,t){if(e<t)return-1;if(e>t)return 1;return 0}function Yu(e){return JSON.stringify(Hr(e))}function Gr(e){let t=e;for(let{pattern:n,replacement:r}of h0)t=t.replace(n,r);return t}function _t(e){if(e===null||e===void 0)return e;if(typeof e==="string"){try{let t=JSON.parse(e);if(typeof t==="object"&&t!==null)return JSON.stringify(_t(t))}catch{}return xh(e)}if(Array.isArray(e))return e.map(_t);if(typeof e==="object"){let t={};for(let[n,r]of Object.entries(e))if(f0(n)&&(typeof r==="string"||typeof r==="number"))t[n]="REDACTED";else t[n]=_t(r);return t}return e}function g0(e){let t=new URLSearchParams(e),n=Array.from(t.entries());if(n.length===0||n.some(([i])=>i.length===0))return;let r={};for(let[i,a]of n){let o=r[i];if(o===void 0)r[i]=a;else if(Array.isArray(o))o.push(a);else r[i]=[o,a]}return r}function y0(e){return e?.toLowerCase().split(";")[0]?.trim()==="application/x-www-form-urlencoded"}function zh(e,t){try{return Yu(_t(JSON.parse(e)))}catch{if(y0(t)){let n=g0(e);if(n)return Yu(_t(n))}return xh(e)}}function b0(e,t){let n={...e},r=t&&e.body!==void 0?zh(e.body,e.requestContentType):void 0;if(delete n.body,delete n.requestContentType,r!==void 0)n.requestBody=r;if(typeof n.path==="string")n.path=Gr(n.path);if(n.response!==void 0)n.response=_t(n.response);return n}function Uh(e){try{let t=new URL(e),n=`${t.protocol}//${t.host}`,r=t.pathname+t.search;return{scope:n,path:r}}catch{return{scope:"",path:e}}}function Th(e){if(typeof e==="string")return e;if(e instanceof URL)return e.toString();if(e&&typeof e.url==="string")return e.url;return String(e)}function jh(e,t){if(t?.method)return t.method.toUpperCase();if(e&&typeof e.method==="string")return e.method.toUpperCase();return"GET"}function $0(e){if(!e)return;return new Headers(e).get("content-type")??void 0}function Oh(e,t){let n=$0(t?.headers);if(n)return n;if(t?.body instanceof URLSearchParams)return"application/x-www-form-urlencoded;charset=UTF-8";if(e instanceof Request)return e.headers.get("content-type")??void 0;return}async function Eh(e,t){if(t?.body){if(typeof t.body==="string")return t.body;if(t.body instanceof URLSearchParams)return t.body.toString();if(t.body instanceof ArrayBuffer)return new TextDecoder().decode(t.body);if(ArrayBuffer.isView(t.body))return new TextDecoder().decode(new Uint8Array(t.body.buffer,t.body.byteOffset,t.body.byteLength));return}if(e instanceof Request)try{return await e.clone().text()}catch{return}return}function _0(e){if(!e)return null;if(!process.env.CLINE_VCR_CASSETTE)return process.stderr.write(`[VCR] No CLINE_VCR_CASSETTE: requests will not be recorded or played back.
|
|
30
|
+
${Ku(l,i,a)}`.trim();return m}return(n==="yolo"?yI:gI).replace("{{PLATFORM_NAME}}",r).replace("{{CWD}}",l).replace("{{CURRENT_DATE}}",new Date().toLocaleDateString()).replace("{{IDE_NAME}}",t).replace("{{CLINE_METADATA}}",c?Ku(l,i,a):"").replace("{{CLINE_RULES}}",o||"").trim()}function lh(e){let t=e?.trim().toLowerCase();if(t==="development"||t==="production")return t;return}function OI(e){for(let t=0;t<e.length;t+=1){let n=e[t]?.trim();if(!n)continue;if(n==="--conditions"&&e[t+1]?.trim()==="development")return!0;if(n.startsWith("--conditions=")&&n.slice(13).split(",").map((r)=>r.trim()).includes("development"))return!0}return!1}function EI(e){if(!e?.trim())return!1;let t=jI(e).toLowerCase();return t==="node"||t==="node.exe"||t==="bun"||t==="bun.exe"}function NI(e){return e.some((t)=>t==="--inspect"||t.startsWith("--inspect=")||t==="--inspect-brk"||t.startsWith("--inspect-brk="))}function PI(e){return e.some((t)=>t==="--enable-source-maps")}function AI(e){return e[sh]?.trim()||"127.0.0.1"}function DI(e){let t=e[uh]?.trim();if(!t)return;let n=Number.parseInt(t,10);return Number.isInteger(n)&&n>0?n:void 0}function ZI(e){switch(e){case"rpc":return 0;case"hook":return 1;case"plugin-sandbox":return 2;case"connector":return 3;case"sandbox":return 4;default:return 9}}function ns(e={}){let t=e.env??process.env,n=e.execArgv??process.execArgv,r=lh(t[sn]);if(r)return r;let i=t.NODE_ENV?.trim().toLowerCase();if(i==="production")return"production";if(i==="development")return"development";return OI(n)?"development":"production"}function CI(e=process.env,t={}){if(lh(e[sn]))return e;return{...e,[sn]:ns({env:e,execArgv:t.execArgv})}}function RI(e,t={}){if(e.length===0||!EI(e[0]))return[...e];if(ns(t)!=="development")return[...e];let n=t.env??process.env,r=[...n.NODE_OPTIONS?.split(/\s+/).filter(Boolean)??[],...e.slice(1)],i=[];if(!NI(r)){let a=AI(n),o=DI(n),s=o===void 0?0:o+ZI(t.debugRole);i.push(`--inspect=${a}:${s}`)}if(!PI(r))i.push("--enable-source-maps");return[e[0],...i,...e.slice(1)]}function Hu(e){let t=e?.trim().toLowerCase();if(t==="production"||t==="staging"||t==="local")return t;return}function dh(){if(typeof process>"u"||!process?.env)return{};return process.env}function ch(){let e=dh();return Hu(e.CLINE_ENVIRONMENT_OVERRIDE)??Hu(e.CLINE_ENVIRONMENT)??"production"}function FI(e){if(typeof e==="string")return Kr[e];return Kr[ch()]}function BI(e,t){if(t.CLINE_API_BASE_URL)e={...e,apiBaseUrl:t.CLINE_API_BASE_URL,mcpBaseUrl:`${t.CLINE_API_BASE_URL}/v1/mcp`};return e}function st(e){let t=FI(e);return BI(t,dh())}function KI(e=process.env){return e.CLINE_RUN_AS_HUB_DAEMON==="1"}function XI(e,t){e?.capture({event:"agent.reasoning.unexpected_tokens",properties:YI({sessionId:t.sessionId,agentId:t.agentId,runId:t.runId,iteration:t.iteration,providerId:t.providerId,modelId:t.modelId,requestedThinking:t.requestedThinking,reasoningTokenCount:t.reasoningTokenCount})})}function Yn(e,t){if(!e)return;e.capture({event:t.event??"sdk.error",properties:mh(t)})}function mh(e){return{...e.context??{},component:e.component,operation:e.operation,severity:e.severity??"error",handled:e.handled??!0,...fh(e.error,e.messageLimit)}}function YI(e){let t={};for(let[n,r]of Object.entries(e))if(r!==void 0)t[n]=r;return t}function fh(e,t=500){let n=qI(e)?e:void 0,r=e instanceof Error?e:void 0,i=r?.message??Gu(n?.message)??(typeof e==="string"?e:String(e)),a=ex(n?.code),o=Tr(n?.status)??Tr(n?.statusCode)??Tr(n?.responseStatus);return{error_type:r?.name?.trim()||Gu(n?.name)||r?.constructor?.name||"Error",error_message:VI(QI(i),t),...a!==void 0?{error_code:a}:{},...o!==void 0?{error_status:o}:{}}}function QI(e){return e.replace(/(authorization=Bearer\s+)[^&\s]+/gi,"$1[redacted]").replace(/(api[_-]?key|access[_-]?token|refresh[_-]?token|authorization|password|secret)=([^&\s]+)/gi,"$1=[redacted]").replace(/(Bearer\s+)[A-Za-z0-9._~+/-]+=*/gi,"$1[redacted]").replace(/\/Users\/[^/\s]+/g,"/Users/[redacted]").replace(/\/home\/[^/\s]+/g,"/home/[redacted]").replace(/([A-Za-z]:[\\/]+Users[\\/]+)[^\\/\s]+/g,"$1[redacted]")}function VI(e,t){let n=Math.max(1,Math.floor(t));return e.length>n?e.substring(0,n):e}function qI(e){return typeof e==="object"&&e!==null}function Gu(e){return typeof e==="string"&&e.trim().length>0?e:void 0}function ex(e){if(typeof e==="string"&&e.trim().length>0)return e;if(typeof e==="number"&&Number.isFinite(e))return e;return}function Tr(e){return typeof e==="number"&&Number.isFinite(e)?e:void 0}function tx(e){let t={};if(!e)return t;try{e.split(",").forEach((n)=>{let r=n.indexOf("=");if(r<=0)return;let i=decodeURIComponent(n.substring(0,r).trim()),a=decodeURIComponent(n.substring(r+1).trim());if(!i||!a)return;t[i]=a})}catch{}return t}function ix(){if(!process.env)return{enabled:!1};return{enabled:process.env.OTEL_TELEMETRY_ENABLED==="1"||process.env.OTEL_TELEMETRY_ENABLED==="true",metricsExporter:process.env.OTEL_METRICS_EXPORTER||"otlp",logsExporter:process.env.OTEL_LOGS_EXPORTER||"otlp",tracesExporter:process.env.OTEL_TRACES_EXPORTER,otlpProtocol:process.env.OTEL_EXPORTER_OTLP_PROTOCOL||"http/json",otlpEndpoint:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,metricExportInterval:process.env.OTEL_METRIC_EXPORT_INTERVAL?Number.parseInt(process.env.OTEL_METRIC_EXPORT_INTERVAL,10):void 0,otlpHeaders:process.env.OTEL_EXPORTER_OTLP_HEADERS?tx(process.env.OTEL_EXPORTER_OTLP_HEADERS):void 0}}function ph(e={}){return{extension_version:"unknown",cline_type:"unknown",platform:"terminal",platform_version:process?.version||"unknown",os_type:process?.platform||"unknown",os_version:process?.platform==="win32"?process?.env?.OS??"unknown":"unknown",...e}}function nx(e={}){return{...ix(),...e,metadata:ph(e.metadata)}}function vh(e){let t=e?.trim();return t?t:void 0}function rx(e,t){if(!e)return;let n=typeof e==="function"?e(t):e;if(!n)return;let r=vh(n.rootSessionId);if(!r)return;return{rootSessionId:r}}function ax(e){return vh(e?.rootSessionId)}function sx(e){if(e<0)throw RangeError("Wrong ID size");try{if(!Ze||Ze.length<e)Ze=Buffer.allocUnsafe(e*ox),Xu.getRandomValues(Ze),bt=0;else if(bt+e>Ze.length)Xu.getRandomValues(Ze),bt=0}catch(t){throw Ze=void 0,t}bt+=e}function ux(e){return sx(e|=0),Ze.subarray(bt-e,bt)}function lx(e,t,n){let r=256-256%e.length;if(r===256){let a=e.length-1;return(o=t)=>{if(!o)return"";let s="";while(!0){let d=n(o),l=o;while(l--)if(s+=e[d[l]&a],s.length>=o)return s}}}let i=Math.ceil(409.6*t/r);return(a=t)=>{if(!a)return"";let o="";while(!0){let s=n(i),d=i;while(d--)if(s[d]<r){if(o+=e[s[d]%e.length],o.length>=a)return o}}}}function dx(e,t=21){return lx(e,t,ux)}function cx(e="",t=""){let n=dx("1234567890abcdefghijklmnopqrstuvwxyz",10);return`${e}${Date.now()}_${n(5)}${t}`}function gh(e){return typeof e==="string"&&fx.has(e)}function px(e){if(!Array.isArray(e))return;let t=e.map((n)=>typeof n==="string"?n.trim():"").filter(gh);return[...new Set(t)]}function vx(e,t){return new Set(e??hh).has(t)}function hx(){return{workspaces:{}}}function gx(e,t){let n={...e,workspaces:{...e.workspaces,[t.rootPath]:t}};if(!n.currentWorkspacePath)n.currentWorkspacePath=t.rootPath;return bh.parse(n)}function L(e){return u.preprocess((t)=>t===null?void 0:t,e.optional())}function r0(e){let{$schema:t,...n}=e;if(typeof n.type==="string")return n;if("properties"in n||"required"in n||"additionalProperties"in n)return{type:"object",...n};for(let r of["oneOf","anyOf","allOf"]){let i=n[r];if(!Array.isArray(i)||i.length===0)continue;if(r==="allOf"){if(i.some((a)=>a&&typeof a==="object"&&a.type==="object"))return{type:"object",...n};throw Error('Tool inputSchema must describe an object at the top level, but the schema has a top-level "allOf" with no branch that asserts type: "object". Add type: "object" to at least one allOf branch to make the object constraint explicit.')}if(i.every((a)=>a&&typeof a==="object"&&a.type==="object"))return{type:"object",...n};throw Error(`Tool inputSchema must describe an object at the top level, but the schema has a top-level "${r}" whose branches include non-object types. Pass the strict object schema as inputSchema and reserve union/coercion schemas for use inside execute().`)}return n}function a0(e){let t=r0(e.inputSchema instanceof u.ZodType?oh(e.inputSchema):e.inputSchema);return{name:e.name,description:e.description,inputSchema:t,lifecycle:e.lifecycle,timeoutMs:e.timeoutMs??30000,retryable:e.retryable??!0,maxRetries:e.maxRetries??3,execute:e.execute}}function o0(e){let t=e instanceof Error?e.message.toLowerCase():String(e);return Ih.some((n)=>t.includes(n))}function v0(e){let t=e.toLowerCase();if(f0.has(t))return!0;for(let n of p0){if(t===n)return!0;if(t.endsWith(n)&&t.length>n.length){let r=t[t.length-n.length-1];if(r==="_"||r==="-")return!0;let i=e[e.length-n.length];if(i&&i===i.toUpperCase()&&i!==i.toLowerCase())return!0}if(t.endsWith(`_${n}`))return!0}return!1}function xh(e){let t=e;for(let{pattern:n,replacement:r}of h0)t=t.replace(n,r);return t}function Hr(e){if(Array.isArray(e))return e.map(Hr);if(!e||typeof e!=="object")return e;return Object.fromEntries(Object.entries(e).sort(([t],[n])=>g0(t,n)).map(([t,n])=>[t,Hr(n)]))}function g0(e,t){if(e<t)return-1;if(e>t)return 1;return 0}function Yu(e){return JSON.stringify(Hr(e))}function Gr(e){let t=e;for(let{pattern:n,replacement:r}of y0)t=t.replace(n,r);return t}function _t(e){if(e===null||e===void 0)return e;if(typeof e==="string"){try{let t=JSON.parse(e);if(typeof t==="object"&&t!==null)return JSON.stringify(_t(t))}catch{}return xh(e)}if(Array.isArray(e))return e.map(_t);if(typeof e==="object"){let t={};for(let[n,r]of Object.entries(e))if(v0(n)&&(typeof r==="string"||typeof r==="number"))t[n]="REDACTED";else t[n]=_t(r);return t}return e}function b0(e){let t=new URLSearchParams(e),n=Array.from(t.entries());if(n.length===0||n.some(([i])=>i.length===0))return;let r={};for(let[i,a]of n){let o=r[i];if(o===void 0)r[i]=a;else if(Array.isArray(o))o.push(a);else r[i]=[o,a]}return r}function $0(e){return e?.toLowerCase().split(";")[0]?.trim()==="application/x-www-form-urlencoded"}function zh(e,t){try{return Yu(_t(JSON.parse(e)))}catch{if($0(t)){let n=b0(e);if(n)return Yu(_t(n))}return xh(e)}}function _0(e,t){let n={...e},r=t&&e.body!==void 0?zh(e.body,e.requestContentType):void 0;if(delete n.body,delete n.requestContentType,r!==void 0)n.requestBody=r;if(typeof n.path==="string")n.path=Gr(n.path);if(n.response!==void 0)n.response=_t(n.response);return n}function Uh(e){try{let t=new URL(e),n=`${t.protocol}//${t.host}`,r=t.pathname+t.search;return{scope:n,path:r}}catch{return{scope:"",path:e}}}function Th(e){if(typeof e==="string")return e;if(e instanceof URL)return e.toString();if(e&&typeof e.url==="string")return e.url;return String(e)}function jh(e,t){if(t?.method)return t.method.toUpperCase();if(e&&typeof e.method==="string")return e.method.toUpperCase();return"GET"}function k0(e){if(!e)return;return new Headers(e).get("content-type")??void 0}function Oh(e,t){let n=k0(t?.headers);if(n)return n;if(t?.body instanceof URLSearchParams)return"application/x-www-form-urlencoded;charset=UTF-8";if(e instanceof Request)return e.headers.get("content-type")??void 0;return}async function Eh(e,t){if(t?.body){if(typeof t.body==="string")return t.body;if(t.body instanceof URLSearchParams)return t.body.toString();if(t.body instanceof ArrayBuffer)return new TextDecoder().decode(t.body);if(ArrayBuffer.isView(t.body))return new TextDecoder().decode(new Uint8Array(t.body.buffer,t.body.byteOffset,t.body.byteLength));return}if(e instanceof Request)try{return await e.clone().text()}catch{return}return}function w0(e){if(!e)return null;if(!process.env.CLINE_VCR_CASSETTE)return process.stderr.write(`[VCR] No CLINE_VCR_CASSETTE: requests will not be recorded or played back.
|
|
31
31
|
`),null;if(e!=="record"&&e!=="playback")process.stderr.write(`[VCR] Invalid CLINE_VCR value: "${e}". Expected "record" or "playback".
|
|
32
|
-
`),process.exit(1);let t=
|
|
32
|
+
`),process.exit(1);let t=m0(process.env.CLINE_VCR_CASSETTE),n=process.env.CLINE_VCR_FILTER??"",r=process.env.CLINE_VCR_INCLUDE_REQUEST_BODY==="1"||process.env.CLINE_VCR_INCLUDE_REQUEST_BODY==="true";return{mode:e,cassettePath:t,filter:n,includeRequestBody:r}}function S0(e,t,n){let r=[],i=[],a=globalThis.fetch;function o(l){if(l.finalized)return;l.finalized=!0;let c=new TextDecoder,m=l.chunks.map((p)=>c.decode(p,{stream:!0})).join("")+c.decode(),v;try{v=JSON.parse(m)}catch{v=m}r.push({scope:l.scope,method:l.method,path:l.path,body:l.body,requestContentType:l.requestContentType,status:l.status,response:v,responseIsBinary:!1,contentType:l.contentType})}globalThis.fetch=Object.assign(async(l,c)=>{let m=Th(l),v=jh(l,c),{scope:p,path:g}=Uh(m),$=await Eh(l,c),E=Oh(l,c),T=await a(l,c);if(t&&!g.includes(t))return T;let A=T.headers.get("content-type")??void 0;if(!T.body)return r.push({scope:p,method:v,path:g,body:$??"",requestContentType:E,status:T.status,response:"",responseIsBinary:!1,contentType:A}),T;let I={scope:p,method:v,path:g,body:$??"",requestContentType:E,status:T.status,contentType:A,chunks:[],finalized:!1};i.push(I);let R=T.body,Y=new TransformStream({transform(ft,Ri){I.chunks.push(ft),Ri.enqueue(ft)},flush(){o(I)}}),$e=R.pipeThrough(Y);return new Response($e,{status:T.status,statusText:T.statusText,headers:T.headers})},{preconnect:(l)=>{}});let s=t?`matching path "*${t}*"`:"all paths";process.stderr.write(`[VCR] Recording HTTP requests (${s}). Cassette will be saved to: ${e}
|
|
33
33
|
`);let d=!1;Dv(()=>{if(d)return;d=!0,globalThis.fetch=a;for(let m of i)o(m);if(r.length===0){process.stderr.write(`[VCR] No HTTP requests${t?` matching "${t}"`:""} were recorded.
|
|
34
|
-
`);return}let l=
|
|
35
|
-
`)})}function
|
|
34
|
+
`);return}let l=c0(e);u0(l,{recursive:!0});let c=r.map((m)=>_0(m,n));d0(e,JSON.stringify(c,null,2)),process.stderr.write(`[VCR] Saved ${c.length} recorded HTTP interaction(s) to ${e}
|
|
35
|
+
`)})}function I0(e){let t=[],n=e.split(/\n\n/);for(let r of n){let i=r.trim();if(i)t.push(`${i}
|
|
36
36
|
|
|
37
|
-
`)}return t}function
|
|
37
|
+
`)}return t}function x0(e,t){let n=new TextEncoder,r=0;return new ReadableStream({async pull(i){if(r>=e.length){i.close();return}if(r>0&&t>0)await new Promise((o)=>setTimeout(o,t));let a=e[r];if(a===void 0){i.close();return}i.enqueue(n.encode(a)),r+=1}})}async function z0(e){if(e.recording.requestBody===void 0)return;let t=await Eh(e.requestInput,e.requestInit),n=Oh(e.requestInput,e.requestInit),r=zh(t??"",n);if(r!==e.recording.requestBody)throw Error(`[VCR] Request body mismatch for ${e.method} ${e.path}.
|
|
38
38
|
expected: ${e.recording.requestBody}
|
|
39
39
|
actual: ${r}
|
|
40
|
-
Re-record the cassette if the request change is intentional.`)}function
|
|
41
|
-
`),process.exit(1);let n=JSON.parse(
|
|
42
|
-
`)}function z0(e){let t=_0(e);if(!t)return;if(t.mode==="record")k0(t.cassettePath,t.filter,t.includeRequestBody);else x0(t.cassettePath,t.filter)}var nb,rb=(e)=>e,je=(e,t)=>{for(var n in t)nb(e,n,{get:t[n],enumerable:!0,configurable:!0,set:ab.bind(t,n)})},Or,lb,db,tu,el="enterprise.blobUpload",Qi,wb="remote://",zb="remote-config",u,cl,su,ml,fl,Re,ai,qt,j,uu,Qr,hl,Kb=(e)=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(e))return"array";if(e===null)return"null";if(e.then&&typeof e.then==="function"&&e.catch&&typeof e.catch==="function")return"promise";if(typeof Map<"u"&&e instanceof Map)return"map";if(typeof Set<"u"&&e instanceof Set)return"set";if(typeof Date<"u"&&e instanceof Date)return"date";if(typeof File<"u"&&e instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${t}`)}},qi,yl,$l,_l,xl=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Vi,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Vr,re,si=(e)=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Re;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((d)=>ne(d,a,W())));throw Qr(s,i?.callee),s}return o.value},Nr,ui=(e)=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)o=await o;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((d)=>ne(d,a,W())));throw Qr(s,i?.callee),s}return o.value},Pr,li=(e)=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Re;return a.issues.length?{success:!1,error:new(e??Vr)(a.issues.map((o)=>ne(o,i,W())))}:{success:!0,data:a.value}},jl,di=(e)=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)a=await a;return a.issues.length?{success:!1,error:new e(a.issues.map((o)=>ne(o,i,W())))}:{success:!0,data:a.value}},Ol,ta=(e)=>(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return si(e)(t,n,i)},o$,ia=(e)=>(t,n,r)=>{return si(e)(t,n,r)},s$,na=(e)=>async(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return ui(e)(t,n,i)},u$,ra=(e)=>async(t,n,r)=>{return ui(e)(t,n,r)},l$,aa=(e)=>(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return li(e)(t,n,i)},d$,oa=(e)=>(t,n,r)=>{return li(e)(t,n,r)},c$,sa=(e)=>async(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return di(e)(t,n,i)},m$,ua=(e)=>async(t,n,r)=>{return di(e)(t,n,r)},f$,Le,El,Nl,Pl,Al,Dl,Zl,Cl,p$,Rl,wt=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)},v$,h$,g$,Ll,y$,b$,Jl,$$,_$,k$="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Fl,Bl,Wl=(e)=>{let t=Te(e??":");return new RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},Kl,Hl,Gl,la,w$,S$,Xl,Yl,Ql="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Vl,id=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},nd,rd,da,ad,od,sd,ud,ld,I$,x$,z$,U$,T$,j$,O$,E$,N$,P$,A$,D$,Z$,C$,R$,L$,J,dd,ca,ma,cd,md,fd,pd,vd,hd,gd,yd,bd,fi,$d,_d,kd,wd,Sd,Id,xd,zd,Ud,Td,z,pi,Z,jd,Od,Ed,Nd,Pd,Ad,Dd,Zd,Cd,Rd,Ld,Jd,Md,Fd,Bd,Wd,Kd,Hd,Gd,Xd,Yd,Vd,qd,tc,ic,va,nc,ha,ga,rc,ac,oc,sc,uc,lc,dc,cc,mc,fc,hc,gc,cn,yc,bc,$c,ya,_c,kc,wc,Sc,Ic,xc,zc,ba,Uc,Tc,jc,Oc,Ec,Nc,Pc,Ac,$a,_a,Dc,Zc,Cc,Rc,Lc,Jc,Mc,ka,J$=()=>{let e={string:{unit:"حرف",verb:"أن يحوي"},file:{unit:"بايت",verb:"أن يحوي"},array:{unit:"عنصر",verb:"أن يحوي"},set:{unit:"عنصر",verb:"أن يحوي"}};function t(i){return e[i]??null}let n={regex:"مدخل",email:"بريد إلكتروني",url:"رابط",emoji:"إيموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاريخ ووقت بمعيار ISO",date:"تاريخ بمعيار ISO",time:"وقت بمعيار ISO",duration:"مدة بمعيار ISO",ipv4:"عنوان IPv4",ipv6:"عنوان IPv6",cidrv4:"مدى عناوين بصيغة IPv4",cidrv6:"مدى عناوين بصيغة IPv6",base64:"نَص بترميز base64-encoded",base64url:"نَص بترميز base64url-encoded",json_string:"نَص على هيئة JSON",e164:"رقم هاتف بمعيار E.164",jwt:"JWT",template_literal:"مدخل"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`مدخلات غير مقبولة: يفترض إدخال instanceof ${i.expected}، ولكن تم إدخال ${s}`;return`مدخلات غير مقبولة: يفترض إدخال ${a}، ولكن تم إدخال ${s}`}case"invalid_value":if(i.values.length===1)return`مدخلات غير مقبولة: يفترض إدخال ${k(i.values[0])}`;return`اختيار غير مقبول: يتوقع انتقاء أحد هذه الخيارات: ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return` أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${a} ${i.maximum.toString()} ${o.unit??"عنصر"}`;return`أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${a} ${i.minimum.toString()} ${o.unit}`;return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`نَص غير مقبول: يجب أن يبدأ بـ "${i.prefix}"`;if(a.format==="ends_with")return`نَص غير مقبول: يجب أن ينتهي بـ "${a.suffix}"`;if(a.format==="includes")return`نَص غير مقبول: يجب أن يتضمَّن "${a.includes}"`;if(a.format==="regex")return`نَص غير مقبول: يجب أن يطابق النمط ${a.pattern}`;return`${n[a.format]??i.format} غير مقبول`}case"not_multiple_of":return`رقم غير مقبول: يجب أن يكون من مضاعفات ${i.divisor}`;case"unrecognized_keys":return`معرف${i.keys.length>1?"ات":""} غريب${i.keys.length>1?"ة":""}: ${h(i.keys,"، ")}`;case"invalid_key":return`معرف غير مقبول في ${i.origin}`;case"invalid_union":return"مدخل غير مقبول";case"invalid_element":return`مدخل غير مقبول في ${i.origin}`;default:return"مدخل غير مقبول"}}},F$=()=>{let e={string:{unit:"simvol",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"element",verb:"olmalıdır"},set:{unit:"element",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Yanlış dəyər: gözlənilən instanceof ${i.expected}, daxil olan ${s}`;return`Yanlış dəyər: gözlənilən ${a}, daxil olan ${s}`}case"invalid_value":if(i.values.length===1)return`Yanlış dəyər: gözlənilən ${k(i.values[0])}`;return`Yanlış seçim: aşağıdakılardan biri olmalıdır: ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${a}${i.maximum.toString()} ${o.unit??"element"}`;return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çox kiçik: gözlənilən ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`Çox kiçik: gözlənilən ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Yanlış mətn: "${a.prefix}" ilə başlamalıdır`;if(a.format==="ends_with")return`Yanlış mətn: "${a.suffix}" ilə bitməlidir`;if(a.format==="includes")return`Yanlış mətn: "${a.includes}" daxil olmalıdır`;if(a.format==="regex")return`Yanlış mətn: ${a.pattern} şablonuna uyğun olmalıdır`;return`Yanlış ${n[a.format]??i.format}`}case"not_multiple_of":return`Yanlış ədəd: ${i.divisor} ilə bölünə bilən olmalıdır`;case"unrecognized_keys":return`Tanınmayan açar${i.keys.length>1?"lar":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} daxilində yanlış açar`;case"invalid_union":return"Yanlış dəyər";case"invalid_element":return`${i.origin} daxilində yanlış dəyər`;default:return"Yanlış dəyər"}}},W$=()=>{let e={string:{unit:{one:"сімвал",few:"сімвалы",many:"сімвалаў"},verb:"мець"},array:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},set:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},file:{unit:{one:"байт",few:"байты",many:"байтаў"},verb:"мець"}};function t(i){return e[i]??null}let n={regex:"увод",email:"email адрас",url:"URL",emoji:"эмодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата і час",date:"ISO дата",time:"ISO час",duration:"ISO працягласць",ipv4:"IPv4 адрас",ipv6:"IPv6 адрас",cidrv4:"IPv4 дыяпазон",cidrv6:"IPv6 дыяпазон",base64:"радок у фармаце base64",base64url:"радок у фармаце base64url",json_string:"JSON радок",e164:"нумар E.164",jwt:"JWT",template_literal:"увод"},r={nan:"NaN",number:"лік",array:"масіў"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Няправільны ўвод: чакаўся instanceof ${i.expected}, атрымана ${s}`;return`Няправільны ўвод: чакаўся ${a}, атрымана ${s}`}case"invalid_value":if(i.values.length===1)return`Няправільны ўвод: чакалася ${k(i.values[0])}`;return`Няправільны варыянт: чакаўся адзін з ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=Su(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна ${o.verb} ${a}${i.maximum.toString()} ${d}`}return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна быць ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=Su(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта малы: чакалася, што ${i.origin} павінна ${o.verb} ${a}${i.minimum.toString()} ${d}`}return`Занадта малы: чакалася, што ${i.origin} павінна быць ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Няправільны радок: павінен пачынацца з "${a.prefix}"`;if(a.format==="ends_with")return`Няправільны радок: павінен заканчвацца на "${a.suffix}"`;if(a.format==="includes")return`Няправільны радок: павінен змяшчаць "${a.includes}"`;if(a.format==="regex")return`Няправільны радок: павінен адпавядаць шаблону ${a.pattern}`;return`Няправільны ${n[a.format]??i.format}`}case"not_multiple_of":return`Няправільны лік: павінен быць кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспазнаны ${i.keys.length>1?"ключы":"ключ"}: ${h(i.keys,", ")}`;case"invalid_key":return`Няправільны ключ у ${i.origin}`;case"invalid_union":return"Няправільны ўвод";case"invalid_element":return`Няправільнае значэнне ў ${i.origin}`;default:return"Няправільны ўвод"}}},H$=()=>{let e={string:{unit:"символа",verb:"да съдържа"},file:{unit:"байта",verb:"да съдържа"},array:{unit:"елемента",verb:"да съдържа"},set:{unit:"елемента",verb:"да съдържа"}};function t(i){return e[i]??null}let n={regex:"вход",email:"имейл адрес",url:"URL",emoji:"емоджи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO време",date:"ISO дата",time:"ISO време",duration:"ISO продължителност",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"base64-кодиран низ",base64url:"base64url-кодиран низ",json_string:"JSON низ",e164:"E.164 номер",jwt:"JWT",template_literal:"вход"},r={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Невалиден вход: очакван instanceof ${i.expected}, получен ${s}`;return`Невалиден вход: очакван ${a}, получен ${s}`}case"invalid_value":if(i.values.length===1)return`Невалиден вход: очакван ${k(i.values[0])}`;return`Невалидна опция: очаквано едно от ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Твърде голямо: очаква се ${i.origin??"стойност"} да съдържа ${a}${i.maximum.toString()} ${o.unit??"елемента"}`;return`Твърде голямо: очаква се ${i.origin??"стойност"} да бъде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Твърде малко: очаква се ${i.origin} да съдържа ${a}${i.minimum.toString()} ${o.unit}`;return`Твърде малко: очаква се ${i.origin} да бъде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Невалиден низ: трябва да започва с "${a.prefix}"`;if(a.format==="ends_with")return`Невалиден низ: трябва да завършва с "${a.suffix}"`;if(a.format==="includes")return`Невалиден низ: трябва да включва "${a.includes}"`;if(a.format==="regex")return`Невалиден низ: трябва да съвпада с ${a.pattern}`;let o="Невалиден";if(a.format==="emoji")o="Невалидно";if(a.format==="datetime")o="Невалидно";if(a.format==="date")o="Невалидна";if(a.format==="time")o="Невалидно";if(a.format==="duration")o="Невалидна";return`${o} ${n[a.format]??i.format}`}case"not_multiple_of":return`Невалидно число: трябва да бъде кратно на ${i.divisor}`;case"unrecognized_keys":return`Неразпознат${i.keys.length>1?"и":""} ключ${i.keys.length>1?"ове":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Невалиден ключ в ${i.origin}`;case"invalid_union":return"Невалиден вход";case"invalid_element":return`Невалидна стойност в ${i.origin}`;default:return"Невалиден вход"}}},X$=()=>{let e={string:{unit:"caràcters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"adreça electrònica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adreça IPv4",ipv6:"adreça IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipus invàlid: s'esperava instanceof ${i.expected}, s'ha rebut ${s}`;return`Tipus invàlid: s'esperava ${a}, s'ha rebut ${s}`}case"invalid_value":if(i.values.length===1)return`Valor invàlid: s'esperava ${k(i.values[0])}`;return`Opció invàlida: s'esperava una de ${h(i.values," o ")}`;case"too_big":{let a=i.inclusive?"com a màxim":"menys de",o=t(i.origin);if(o)return`Massa gran: s'esperava que ${i.origin??"el valor"} contingués ${a} ${i.maximum.toString()} ${o.unit??"elements"}`;return`Massa gran: s'esperava que ${i.origin??"el valor"} fos ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"com a mínim":"més de",o=t(i.origin);if(o)return`Massa petit: s'esperava que ${i.origin} contingués ${a} ${i.minimum.toString()} ${o.unit}`;return`Massa petit: s'esperava que ${i.origin} fos ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Format invàlid: ha de començar amb "${a.prefix}"`;if(a.format==="ends_with")return`Format invàlid: ha d'acabar amb "${a.suffix}"`;if(a.format==="includes")return`Format invàlid: ha d'incloure "${a.includes}"`;if(a.format==="regex")return`Format invàlid: ha de coincidir amb el patró ${a.pattern}`;return`Format invàlid per a ${n[a.format]??i.format}`}case"not_multiple_of":return`Número invàlid: ha de ser múltiple de ${i.divisor}`;case"unrecognized_keys":return`Clau${i.keys.length>1?"s":""} no reconeguda${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Clau invàlida a ${i.origin}`;case"invalid_union":return"Entrada invàlida";case"invalid_element":return`Element invàlid a ${i.origin}`;default:return"Entrada invàlida"}}},Q$=()=>{let e={string:{unit:"znaků",verb:"mít"},file:{unit:"bajtů",verb:"mít"},array:{unit:"prvků",verb:"mít"},set:{unit:"prvků",verb:"mít"}};function t(i){return e[i]??null}let n={regex:"regulární výraz",email:"e-mailová adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a čas ve formátu ISO",date:"datum ve formátu ISO",time:"čas ve formátu ISO",duration:"doba trvání ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"řetězec zakódovaný ve formátu base64",base64url:"řetězec zakódovaný ve formátu base64url",json_string:"řetězec ve formátu JSON",e164:"číslo E.164",jwt:"JWT",template_literal:"vstup"},r={nan:"NaN",number:"číslo",string:"řetězec",function:"funkce",array:"pole"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neplatný vstup: očekáváno instanceof ${i.expected}, obdrženo ${s}`;return`Neplatný vstup: očekáváno ${a}, obdrženo ${s}`}case"invalid_value":if(i.values.length===1)return`Neplatný vstup: očekáváno ${k(i.values[0])}`;return`Neplatná možnost: očekávána jedna z hodnot ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí mít ${a}${i.maximum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí být ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí mít ${a}${i.minimum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí být ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neplatný řetězec: musí začínat na "${a.prefix}"`;if(a.format==="ends_with")return`Neplatný řetězec: musí končit na "${a.suffix}"`;if(a.format==="includes")return`Neplatný řetězec: musí obsahovat "${a.includes}"`;if(a.format==="regex")return`Neplatný řetězec: musí odpovídat vzoru ${a.pattern}`;return`Neplatný formát ${n[a.format]??i.format}`}case"not_multiple_of":return`Neplatné číslo: musí být násobkem ${i.divisor}`;case"unrecognized_keys":return`Neznámé klíče: ${h(i.keys,", ")}`;case"invalid_key":return`Neplatný klíč v ${i.origin}`;case"invalid_union":return"Neplatný vstup";case"invalid_element":return`Neplatná hodnota v ${i.origin}`;default:return"Neplatný vstup"}}},q$=()=>{let e={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslæt",date:"ISO-dato",time:"ISO-klokkeslæt",duration:"ISO-varighed",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},r={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"sæt",file:"fil"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldigt input: forventede instanceof ${i.expected}, fik ${s}`;return`Ugyldigt input: forventede ${a}, fik ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig værdi: forventede ${k(i.values[0])}`;return`Ugyldigt valg: forventede en af følgende ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`For stor: forventede ${s??"value"} ${o.verb} ${a} ${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor: forventede ${s??"value"} havde ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`For lille: forventede ${s} ${o.verb} ${a} ${i.minimum.toString()} ${o.unit}`;return`For lille: forventede ${s} havde ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ugyldig streng: skal starte med "${a.prefix}"`;if(a.format==="ends_with")return`Ugyldig streng: skal ende med "${a.suffix}"`;if(a.format==="includes")return`Ugyldig streng: skal indeholde "${a.includes}"`;if(a.format==="regex")return`Ugyldig streng: skal matche mønsteret ${a.pattern}`;return`Ugyldig ${n[a.format]??i.format}`}case"not_multiple_of":return`Ugyldigt tal: skal være deleligt med ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukendte nøgler":"Ukendt nøgle"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøgle i ${i.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig værdi i ${i.origin}`;default:return"Ugyldigt input"}}},t_=()=>{let e={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function t(i){return e[i]??null}let n={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},r={nan:"NaN",number:"Zahl",array:"Array"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ungültige Eingabe: erwartet instanceof ${i.expected}, erhalten ${s}`;return`Ungültige Eingabe: erwartet ${a}, erhalten ${s}`}case"invalid_value":if(i.values.length===1)return`Ungültige Eingabe: erwartet ${k(i.values[0])}`;return`Ungültige Option: erwartet eine von ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${a}${i.maximum.toString()} ${o.unit??"Elemente"} hat`;return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${a}${i.maximum.toString()} ist`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Zu klein: erwartet, dass ${i.origin} ${a}${i.minimum.toString()} ${o.unit} hat`;return`Zu klein: erwartet, dass ${i.origin} ${a}${i.minimum.toString()} ist`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ungültiger String: muss mit "${a.prefix}" beginnen`;if(a.format==="ends_with")return`Ungültiger String: muss mit "${a.suffix}" enden`;if(a.format==="includes")return`Ungültiger String: muss "${a.includes}" enthalten`;if(a.format==="regex")return`Ungültiger String: muss dem Muster ${a.pattern} entsprechen`;return`Ungültig: ${n[a.format]??i.format}`}case"not_multiple_of":return`Ungültige Zahl: muss ein Vielfaches von ${i.divisor} sein`;case"unrecognized_keys":return`${i.keys.length>1?"Unbekannte Schlüssel":"Unbekannter Schlüssel"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ungültiger Schlüssel in ${i.origin}`;case"invalid_union":return"Ungültige Eingabe";case"invalid_element":return`Ungültiger Wert in ${i.origin}`;default:return"Ungültige Eingabe"}}},n_=()=>{let e={string:{unit:"χαρακτήρες",verb:"να έχει"},file:{unit:"bytes",verb:"να έχει"},array:{unit:"στοιχεία",verb:"να έχει"},set:{unit:"στοιχεία",verb:"να έχει"},map:{unit:"καταχωρήσεις",verb:"να έχει"}};function t(i){return e[i]??null}let n={regex:"είσοδος",email:"διεύθυνση email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ημερομηνία και ώρα",date:"ISO ημερομηνία",time:"ISO ώρα",duration:"ISO διάρκεια",ipv4:"διεύθυνση IPv4",ipv6:"διεύθυνση IPv6",mac:"διεύθυνση MAC",cidrv4:"εύρος IPv4",cidrv6:"εύρος IPv6",base64:"συμβολοσειρά κωδικοποιημένη σε base64",base64url:"συμβολοσειρά κωδικοποιημένη σε base64url",json_string:"συμβολοσειρά JSON",e164:"αριθμός E.164",jwt:"JWT",template_literal:"είσοδος"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(typeof i.expected==="string"&&/^[A-Z]/.test(i.expected))return`Μη έγκυρη είσοδος: αναμενόταν instanceof ${i.expected}, λήφθηκε ${s}`;return`Μη έγκυρη είσοδος: αναμενόταν ${a}, λήφθηκε ${s}`}case"invalid_value":if(i.values.length===1)return`Μη έγκυρη είσοδος: αναμενόταν ${k(i.values[0])}`;return`Μη έγκυρη επιλογή: αναμενόταν ένα από ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να έχει ${a}${i.maximum.toString()} ${o.unit??"στοιχεία"}`;return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να είναι ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Πολύ μικρό: αναμενόταν ${i.origin} να έχει ${a}${i.minimum.toString()} ${o.unit}`;return`Πολύ μικρό: αναμενόταν ${i.origin} να είναι ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να ξεκινά με "${a.prefix}"`;if(a.format==="ends_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να τελειώνει με "${a.suffix}"`;if(a.format==="includes")return`Μη έγκυρη συμβολοσειρά: πρέπει να περιέχει "${a.includes}"`;if(a.format==="regex")return`Μη έγκυρη συμβολοσειρά: πρέπει να ταιριάζει με το μοτίβο ${a.pattern}`;return`Μη έγκυρο: ${n[a.format]??i.format}`}case"not_multiple_of":return`Μη έγκυρος αριθμός: πρέπει να είναι πολλαπλάσιο του ${i.divisor}`;case"unrecognized_keys":return`Άγνωστ${i.keys.length>1?"α":"ο"} κλειδ${i.keys.length>1?"ιά":"ί"}: ${h(i.keys,", ")}`;case"invalid_key":return`Μη έγκυρο κλειδί στο ${i.origin}`;case"invalid_union":return"Μη έγκυρη είσοδος";case"invalid_element":return`Μη έγκυρη τιμή στο ${i.origin}`;default:return"Μη έγκυρη είσοδος"}}},a_=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;return`Invalid input: expected ${a}, received ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${k(i.values[0])}`;return`Invalid option: expected one of ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Too big: expected ${i.origin??"value"} to have ${a}${i.maximum.toString()} ${o.unit??"elements"}`;return`Too big: expected ${i.origin??"value"} to be ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Too small: expected ${i.origin} to have ${a}${i.minimum.toString()} ${o.unit}`;return`Too small: expected ${i.origin} to be ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Invalid string: must start with "${a.prefix}"`;if(a.format==="ends_with")return`Invalid string: must end with "${a.suffix}"`;if(a.format==="includes")return`Invalid string: must include "${a.includes}"`;if(a.format==="regex")return`Invalid string: must match pattern ${a.pattern}`;return`Invalid ${n[a.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":if(i.options&&Array.isArray(i.options)&&i.options.length>0)return`Invalid discriminator value. Expected ${i.options.map((a)=>`'${a}'`).join(" | ")}`;return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}},o_=()=>{let e={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function t(i){return e[i]??null}let n={regex:"enigo",email:"retadreso",url:"URL",emoji:"emoĝio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-daŭro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},r={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Nevalida enigo: atendiĝis instanceof ${i.expected}, riceviĝis ${s}`;return`Nevalida enigo: atendiĝis ${a}, riceviĝis ${s}`}case"invalid_value":if(i.values.length===1)return`Nevalida enigo: atendiĝis ${k(i.values[0])}`;return`Nevalida opcio: atendiĝis unu el ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${a}${i.maximum.toString()} ${o.unit??"elementojn"}`;return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Tro malgranda: atendiĝis ke ${i.origin} havu ${a}${i.minimum.toString()} ${o.unit}`;return`Tro malgranda: atendiĝis ke ${i.origin} estu ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Nevalida karaktraro: devas komenciĝi per "${a.prefix}"`;if(a.format==="ends_with")return`Nevalida karaktraro: devas finiĝi per "${a.suffix}"`;if(a.format==="includes")return`Nevalida karaktraro: devas inkluzivi "${a.includes}"`;if(a.format==="regex")return`Nevalida karaktraro: devas kongrui kun la modelo ${a.pattern}`;return`Nevalida ${n[a.format]??i.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${i.divisor}`;case"unrecognized_keys":return`Nekonata${i.keys.length>1?"j":""} ŝlosilo${i.keys.length>1?"j":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Nevalida ŝlosilo en ${i.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${i.origin}`;default:return"Nevalida enigo"}}},u_=()=>{let e={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"dirección de correo electrónico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duración ISO",ipv4:"dirección IPv4",ipv6:"dirección IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN",string:"texto",number:"número",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"número grande",symbol:"símbolo",undefined:"indefinido",null:"nulo",function:"función",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeración",union:"unión",literal:"literal",promise:"promesa",void:"vacío",never:"nunca",unknown:"desconocido",any:"cualquiera"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrada inválida: se esperaba instanceof ${i.expected}, recibido ${s}`;return`Entrada inválida: se esperaba ${a}, recibido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: se esperaba ${k(i.values[0])}`;return`Opción inválida: se esperaba una de ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Demasiado grande: se esperaba que ${s??"valor"} tuviera ${a}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Demasiado grande: se esperaba que ${s??"valor"} fuera ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Demasiado pequeño: se esperaba que ${s} tuviera ${a}${i.minimum.toString()} ${o.unit}`;return`Demasiado pequeño: se esperaba que ${s} fuera ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Cadena inválida: debe comenzar con "${a.prefix}"`;if(a.format==="ends_with")return`Cadena inválida: debe terminar en "${a.suffix}"`;if(a.format==="includes")return`Cadena inválida: debe incluir "${a.includes}"`;if(a.format==="regex")return`Cadena inválida: debe coincidir con el patrón ${a.pattern}`;return`Inválido ${n[a.format]??i.format}`}case"not_multiple_of":return`Número inválido: debe ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Llave${i.keys.length>1?"s":""} desconocida${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Llave inválida en ${r[i.origin]??i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido en ${r[i.origin]??i.origin}`;default:return"Entrada inválida"}}},d_=()=>{let e={string:{unit:"کاراکتر",verb:"داشته باشد"},file:{unit:"بایت",verb:"داشته باشد"},array:{unit:"آیتم",verb:"داشته باشد"},set:{unit:"آیتم",verb:"داشته باشد"}};function t(i){return e[i]??null}let n={regex:"ورودی",email:"آدرس ایمیل",url:"URL",emoji:"ایموجی",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاریخ و زمان ایزو",date:"تاریخ ایزو",time:"زمان ایزو",duration:"مدت زمان ایزو",ipv4:"IPv4 آدرس",ipv6:"IPv6 آدرس",cidrv4:"IPv4 دامنه",cidrv6:"IPv6 دامنه",base64:"base64-encoded رشته",base64url:"base64url-encoded رشته",json_string:"JSON رشته",e164:"E.164 عدد",jwt:"JWT",template_literal:"ورودی"},r={nan:"NaN",number:"عدد",array:"آرایه"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ورودی نامعتبر: میبایست instanceof ${i.expected} میبود، ${s} دریافت شد`;return`ورودی نامعتبر: میبایست ${a} میبود، ${s} دریافت شد`}case"invalid_value":if(i.values.length===1)return`ورودی نامعتبر: میبایست ${k(i.values[0])} میبود`;return`گزینه نامعتبر: میبایست یکی از ${h(i.values,"|")} میبود`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${a}${i.maximum.toString()} ${o.unit??"عنصر"} باشد`;return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${a}${i.maximum.toString()} باشد`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`خیلی کوچک: ${i.origin} باید ${a}${i.minimum.toString()} ${o.unit} باشد`;return`خیلی کوچک: ${i.origin} باید ${a}${i.minimum.toString()} باشد`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`رشته نامعتبر: باید با "${a.prefix}" شروع شود`;if(a.format==="ends_with")return`رشته نامعتبر: باید با "${a.suffix}" تمام شود`;if(a.format==="includes")return`رشته نامعتبر: باید شامل "${a.includes}" باشد`;if(a.format==="regex")return`رشته نامعتبر: باید با الگوی ${a.pattern} مطابقت داشته باشد`;return`${n[a.format]??i.format} نامعتبر`}case"not_multiple_of":return`عدد نامعتبر: باید مضرب ${i.divisor} باشد`;case"unrecognized_keys":return`کلید${i.keys.length>1?"های":""} ناشناس: ${h(i.keys,", ")}`;case"invalid_key":return`کلید ناشناس در ${i.origin}`;case"invalid_union":return"ورودی نامعتبر";case"invalid_element":return`مقدار نامعتبر در ${i.origin}`;default:return"ورودی نامعتبر"}}},m_=()=>{let e={string:{unit:"merkkiä",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"päivämäärän"}};function t(i){return e[i]??null}let n={regex:"säännöllinen lauseke",email:"sähköpostiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-päivämäärä",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Virheellinen tyyppi: odotettiin instanceof ${i.expected}, oli ${s}`;return`Virheellinen tyyppi: odotettiin ${a}, oli ${s}`}case"invalid_value":if(i.values.length===1)return`Virheellinen syöte: täytyy olla ${k(i.values[0])}`;return`Virheellinen valinta: täytyy olla yksi seuraavista: ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Liian suuri: ${o.subject} täytyy olla ${a}${i.maximum.toString()} ${o.unit}`.trim();return`Liian suuri: arvon täytyy olla ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Liian pieni: ${o.subject} täytyy olla ${a}${i.minimum.toString()} ${o.unit}`.trim();return`Liian pieni: arvon täytyy olla ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Virheellinen syöte: täytyy alkaa "${a.prefix}"`;if(a.format==="ends_with")return`Virheellinen syöte: täytyy loppua "${a.suffix}"`;if(a.format==="includes")return`Virheellinen syöte: täytyy sisältää "${a.includes}"`;if(a.format==="regex")return`Virheellinen syöte: täytyy vastata säännöllistä lauseketta ${a.pattern}`;return`Virheellinen ${n[a.format]??i.format}`}case"not_multiple_of":return`Virheellinen luku: täytyy olla luvun ${i.divisor} monikerta`;case"unrecognized_keys":return`${i.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${h(i.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen syöte"}}},p_=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},r={string:"chaîne",number:"nombre",int:"entier",boolean:"booléen",bigint:"grand entier",symbol:"symbole",undefined:"indéfini",null:"null",never:"jamais",void:"vide",date:"date",array:"tableau",object:"objet",tuple:"tuple",record:"enregistrement",map:"carte",set:"ensemble",file:"fichier",nonoptional:"non-optionnel",nan:"NaN",function:"fonction"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : instanceof ${i.expected} attendu, ${s} reçu`;return`Entrée invalide : ${a} attendu, ${s} reçu`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : ${k(i.values[0])} attendu`;return`Option invalide : une valeur parmi ${h(i.values,"|")} attendue`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Trop grand : ${r[i.origin]??"valeur"} doit ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"élément(s)"}`;return`Trop grand : ${r[i.origin]??"valeur"} doit être ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Trop petit : ${r[i.origin]??"valeur"} doit ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Trop petit : ${r[i.origin]??"valeur"} doit être ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chaîne invalide : doit commencer par "${a.prefix}"`;if(a.format==="ends_with")return`Chaîne invalide : doit se terminer par "${a.suffix}"`;if(a.format==="includes")return`Chaîne invalide : doit inclure "${a.includes}"`;if(a.format==="regex")return`Chaîne invalide : doit correspondre au modèle ${a.pattern}`;return`${n[a.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${h(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},h_=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : attendu instanceof ${i.expected}, reçu ${s}`;return`Entrée invalide : attendu ${a}, reçu ${s}`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : attendu ${k(i.values[0])}`;return`Option invalide : attendu l'une des valeurs suivantes ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"≤":"<",o=t(i.origin);if(o)return`Trop grand : attendu que ${i.origin??"la valeur"} ait ${a}${i.maximum.toString()} ${o.unit}`;return`Trop grand : attendu que ${i.origin??"la valeur"} soit ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"≥":">",o=t(i.origin);if(o)return`Trop petit : attendu que ${i.origin} ait ${a}${i.minimum.toString()} ${o.unit}`;return`Trop petit : attendu que ${i.origin} soit ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chaîne invalide : doit commencer par "${a.prefix}"`;if(a.format==="ends_with")return`Chaîne invalide : doit se terminer par "${a.suffix}"`;if(a.format==="includes")return`Chaîne invalide : doit inclure "${a.includes}"`;if(a.format==="regex")return`Chaîne invalide : doit correspondre au motif ${a.pattern}`;return`${n[a.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${h(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},y_=()=>{let e={string:{label:"מחרוזת",gender:"f"},number:{label:"מספר",gender:"m"},boolean:{label:"ערך בוליאני",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"תאריך",gender:"m"},array:{label:"מערך",gender:"m"},object:{label:"אובייקט",gender:"m"},null:{label:"ערך ריק (null)",gender:"m"},undefined:{label:"ערך לא מוגדר (undefined)",gender:"m"},symbol:{label:"סימבול (Symbol)",gender:"m"},function:{label:"פונקציה",gender:"f"},map:{label:"מפה (Map)",gender:"f"},set:{label:"קבוצה (Set)",gender:"f"},file:{label:"קובץ",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"ערך לא ידוע",gender:"m"},value:{label:"ערך",gender:"m"}},t={string:{unit:"תווים",shortLabel:"קצר",longLabel:"ארוך"},file:{unit:"בייטים",shortLabel:"קטן",longLabel:"גדול"},array:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},set:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},number:{unit:"",shortLabel:"קטן",longLabel:"גדול"}},n=(l)=>l?e[l]:void 0,r=(l)=>{let c=n(l);if(c)return c.label;return l??e.unknown.label},i=(l)=>`ה${r(l)}`,a=(l)=>{return(n(l)?.gender??"m")==="f"?"צריכה להיות":"צריך להיות"},o=(l)=>{if(!l)return null;return t[l]??null},s={regex:{label:"קלט",gender:"m"},email:{label:"כתובת אימייל",gender:"f"},url:{label:"כתובת רשת",gender:"f"},emoji:{label:"אימוג'י",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"תאריך וזמן ISO",gender:"m"},date:{label:"תאריך ISO",gender:"m"},time:{label:"זמן ISO",gender:"m"},duration:{label:"משך זמן ISO",gender:"m"},ipv4:{label:"כתובת IPv4",gender:"f"},ipv6:{label:"כתובת IPv6",gender:"f"},cidrv4:{label:"טווח IPv4",gender:"m"},cidrv6:{label:"טווח IPv6",gender:"m"},base64:{label:"מחרוזת בבסיס 64",gender:"f"},base64url:{label:"מחרוזת בבסיס 64 לכתובות רשת",gender:"f"},json_string:{label:"מחרוזת JSON",gender:"f"},e164:{label:"מספר E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"קלט",gender:"m"},includes:{label:"קלט",gender:"m"},lowercase:{label:"קלט",gender:"m"},starts_with:{label:"קלט",gender:"m"},uppercase:{label:"קלט",gender:"m"}},d={nan:"NaN"};return(l)=>{switch(l.code){case"invalid_type":{let c=l.expected,m=d[c??""]??r(c),v=S(l.input),p=d[v]??e[v]?.label??v;if(/^[A-Z]/.test(l.expected))return`קלט לא תקין: צריך להיות instanceof ${l.expected}, התקבל ${p}`;return`קלט לא תקין: צריך להיות ${m}, התקבל ${p}`}case"invalid_value":{if(l.values.length===1)return`ערך לא תקין: הערך חייב להיות ${k(l.values[0])}`;let c=l.values.map((v)=>k(v));if(l.values.length===2)return`ערך לא תקין: האפשרויות המתאימות הן ${c[0]} או ${c[1]}`;let m=c[c.length-1];return`ערך לא תקין: האפשרויות המתאימות הן ${c.slice(0,-1).join(", ")} או ${m}`}case"too_big":{let c=o(l.origin),m=i(l.origin??"value");if(l.origin==="string")return`${c?.longLabel??"ארוך"} מדי: ${m} צריכה להכיל ${l.maximum.toString()} ${c?.unit??""} ${l.inclusive?"או פחות":"לכל היותר"}`.trim();if(l.origin==="number"){let g=l.inclusive?`קטן או שווה ל-${l.maximum}`:`קטן מ-${l.maximum}`;return`גדול מדי: ${m} צריך להיות ${g}`}if(l.origin==="array"||l.origin==="set"){let g=l.origin==="set"?"צריכה":"צריך",$=l.inclusive?`${l.maximum} ${c?.unit??""} או פחות`:`פחות מ-${l.maximum} ${c?.unit??""}`;return`גדול מדי: ${m} ${g} להכיל ${$}`.trim()}let v=l.inclusive?"<=":"<",p=a(l.origin??"value");if(c?.unit)return`${c.longLabel} מדי: ${m} ${p} ${v}${l.maximum.toString()} ${c.unit}`;return`${c?.longLabel??"גדול"} מדי: ${m} ${p} ${v}${l.maximum.toString()}`}case"too_small":{let c=o(l.origin),m=i(l.origin??"value");if(l.origin==="string")return`${c?.shortLabel??"קצר"} מדי: ${m} צריכה להכיל ${l.minimum.toString()} ${c?.unit??""} ${l.inclusive?"או יותר":"לפחות"}`.trim();if(l.origin==="number"){let g=l.inclusive?`גדול או שווה ל-${l.minimum}`:`גדול מ-${l.minimum}`;return`קטן מדי: ${m} צריך להיות ${g}`}if(l.origin==="array"||l.origin==="set"){let g=l.origin==="set"?"צריכה":"צריך";if(l.minimum===1&&l.inclusive){let E=l.origin==="set"?"לפחות פריט אחד":"לפחות פריט אחד";return`קטן מדי: ${m} ${g} להכיל ${E}`}let $=l.inclusive?`${l.minimum} ${c?.unit??""} או יותר`:`יותר מ-${l.minimum} ${c?.unit??""}`;return`קטן מדי: ${m} ${g} להכיל ${$}`.trim()}let v=l.inclusive?">=":">",p=a(l.origin??"value");if(c?.unit)return`${c.shortLabel} מדי: ${m} ${p} ${v}${l.minimum.toString()} ${c.unit}`;return`${c?.shortLabel??"קטן"} מדי: ${m} ${p} ${v}${l.minimum.toString()}`}case"invalid_format":{let c=l;if(c.format==="starts_with")return`המחרוזת חייבת להתחיל ב "${c.prefix}"`;if(c.format==="ends_with")return`המחרוזת חייבת להסתיים ב "${c.suffix}"`;if(c.format==="includes")return`המחרוזת חייבת לכלול "${c.includes}"`;if(c.format==="regex")return`המחרוזת חייבת להתאים לתבנית ${c.pattern}`;let m=s[c.format],v=m?.label??c.format,p=(m?.gender??"m")==="f"?"תקינה":"תקין";return`${v} לא ${p}`}case"not_multiple_of":return`מספר לא תקין: חייב להיות מכפלה של ${l.divisor}`;case"unrecognized_keys":return`מפתח${l.keys.length>1?"ות":""} לא מזוה${l.keys.length>1?"ים":"ה"}: ${h(l.keys,", ")}`;case"invalid_key":return"שדה לא תקין באובייקט";case"invalid_union":return"קלט לא תקין";case"invalid_element":return`ערך לא תקין ב${i(l.origin??"array")}`;default:return"קלט לא תקין"}}},$_=()=>{let e={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function t(i){return e[i]??null}let n={regex:"unos",email:"email adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum i vrijeme",date:"ISO datum",time:"ISO vrijeme",duration:"ISO trajanje",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"IPv4 raspon",cidrv6:"IPv6 raspon",base64:"base64 kodirani tekst",base64url:"base64url kodirani tekst",json_string:"JSON tekst",e164:"E.164 broj",jwt:"JWT",template_literal:"unos"},r={nan:"NaN",string:"tekst",number:"broj",boolean:"boolean",array:"niz",object:"objekt",set:"skup",file:"datoteka",date:"datum",bigint:"bigint",symbol:"simbol",undefined:"undefined",null:"null",function:"funkcija",map:"mapa"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neispravan unos: očekuje se instanceof ${i.expected}, a primljeno je ${s}`;return`Neispravan unos: očekuje se ${a}, a primljeno je ${s}`}case"invalid_value":if(i.values.length===1)return`Neispravna vrijednost: očekivano ${k(i.values[0])}`;return`Neispravna opcija: očekivano jedno od ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Preveliko: očekivano da ${s??"vrijednost"} ima ${a}${i.maximum.toString()} ${o.unit??"elemenata"}`;return`Preveliko: očekivano da ${s??"vrijednost"} bude ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Premalo: očekivano da ${s} ima ${a}${i.minimum.toString()} ${o.unit}`;return`Premalo: očekivano da ${s} bude ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neispravan tekst: mora započinjati s "${a.prefix}"`;if(a.format==="ends_with")return`Neispravan tekst: mora završavati s "${a.suffix}"`;if(a.format==="includes")return`Neispravan tekst: mora sadržavati "${a.includes}"`;if(a.format==="regex")return`Neispravan tekst: mora odgovarati uzorku ${a.pattern}`;return`Neispravna ${n[a.format]??i.format}`}case"not_multiple_of":return`Neispravan broj: mora biti višekratnik od ${i.divisor}`;case"unrecognized_keys":return`Neprepoznat${i.keys.length>1?"i ključevi":" ključ"}: ${h(i.keys,", ")}`;case"invalid_key":return`Neispravan ključ u ${r[i.origin]??i.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${r[i.origin]??i.origin}`;default:return"Neispravan unos"}}},k_=()=>{let e={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function t(i){return e[i]??null}let n={regex:"bemenet",email:"email cím",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO időbélyeg",date:"ISO dátum",time:"ISO idő",duration:"ISO időintervallum",ipv4:"IPv4 cím",ipv6:"IPv6 cím",cidrv4:"IPv4 tartomány",cidrv6:"IPv6 tartomány",base64:"base64-kódolt string",base64url:"base64url-kódolt string",json_string:"JSON string",e164:"E.164 szám",jwt:"JWT",template_literal:"bemenet"},r={nan:"NaN",number:"szám",array:"tömb"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Érvénytelen bemenet: a várt érték instanceof ${i.expected}, a kapott érték ${s}`;return`Érvénytelen bemenet: a várt érték ${a}, a kapott érték ${s}`}case"invalid_value":if(i.values.length===1)return`Érvénytelen bemenet: a várt érték ${k(i.values[0])}`;return`Érvénytelen opció: valamelyik érték várt ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Túl nagy: ${i.origin??"érték"} mérete túl nagy ${a}${i.maximum.toString()} ${o.unit??"elem"}`;return`Túl nagy: a bemeneti érték ${i.origin??"érték"} túl nagy: ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Túl kicsi: a bemeneti érték ${i.origin} mérete túl kicsi ${a}${i.minimum.toString()} ${o.unit}`;return`Túl kicsi: a bemeneti érték ${i.origin} túl kicsi ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Érvénytelen string: "${a.prefix}" értékkel kell kezdődnie`;if(a.format==="ends_with")return`Érvénytelen string: "${a.suffix}" értékkel kell végződnie`;if(a.format==="includes")return`Érvénytelen string: "${a.includes}" értéket kell tartalmaznia`;if(a.format==="regex")return`Érvénytelen string: ${a.pattern} mintának kell megfelelnie`;return`Érvénytelen ${n[a.format]??i.format}`}case"not_multiple_of":return`Érvénytelen szám: ${i.divisor} többszörösének kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Érvénytelen kulcs ${i.origin}`;case"invalid_union":return"Érvénytelen bemenet";case"invalid_element":return`Érvénytelen érték: ${i.origin}`;default:return"Érvénytelen bemenet"}}},S_=()=>{let e={string:{unit:{one:"նշան",many:"նշաններ"},verb:"ունենալ"},file:{unit:{one:"բայթ",many:"բայթեր"},verb:"ունենալ"},array:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"},set:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"}};function t(i){return e[i]??null}let n={regex:"մուտք",email:"էլ. հասցե",url:"URL",emoji:"էմոջի",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ամսաթիվ և ժամ",date:"ISO ամսաթիվ",time:"ISO ժամ",duration:"ISO տևողություն",ipv4:"IPv4 հասցե",ipv6:"IPv6 հասցե",cidrv4:"IPv4 միջակայք",cidrv6:"IPv6 միջակայք",base64:"base64 ձևաչափով տող",base64url:"base64url ձևաչափով տող",json_string:"JSON տող",e164:"E.164 համար",jwt:"JWT",template_literal:"մուտք"},r={nan:"NaN",number:"թիվ",array:"զանգված"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Սխալ մուտքագրում․ սպասվում էր instanceof ${i.expected}, ստացվել է ${s}`;return`Սխալ մուտքագրում․ սպասվում էր ${a}, ստացվել է ${s}`}case"invalid_value":if(i.values.length===1)return`Սխալ մուտքագրում․ սպասվում էր ${k(i.values[1])}`;return`Սխալ տարբերակ․ սպասվում էր հետևյալներից մեկը՝ ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=Iu(s,o.unit.one,o.unit.many);return`Չափազանց մեծ արժեք․ սպասվում է, որ ${ht(i.origin??"արժեք")} կունենա ${a}${i.maximum.toString()} ${d}`}return`Չափազանց մեծ արժեք․ սպասվում է, որ ${ht(i.origin??"արժեք")} լինի ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=Iu(s,o.unit.one,o.unit.many);return`Չափազանց փոքր արժեք․ սպասվում է, որ ${ht(i.origin)} կունենա ${a}${i.minimum.toString()} ${d}`}return`Չափազանց փոքր արժեք․ սպասվում է, որ ${ht(i.origin)} լինի ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Սխալ տող․ պետք է սկսվի "${a.prefix}"-ով`;if(a.format==="ends_with")return`Սխալ տող․ պետք է ավարտվի "${a.suffix}"-ով`;if(a.format==="includes")return`Սխալ տող․ պետք է պարունակի "${a.includes}"`;if(a.format==="regex")return`Սխալ տող․ պետք է համապատասխանի ${a.pattern} ձևաչափին`;return`Սխալ ${n[a.format]??i.format}`}case"not_multiple_of":return`Սխալ թիվ․ պետք է բազմապատիկ լինի ${i.divisor}-ի`;case"unrecognized_keys":return`Չճանաչված բանալի${i.keys.length>1?"ներ":""}. ${h(i.keys,", ")}`;case"invalid_key":return`Սխալ բանալի ${ht(i.origin)}-ում`;case"invalid_union":return"Սխալ մուտքագրում";case"invalid_element":return`Սխալ արժեք ${ht(i.origin)}-ում`;default:return"Սխալ մուտքագրում"}}},x_=()=>{let e={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak valid: diharapkan instanceof ${i.expected}, diterima ${s}`;return`Input tidak valid: diharapkan ${a}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak valid: diharapkan ${k(i.values[0])}`;return`Pilihan tidak valid: diharapkan salah satu dari ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: diharapkan ${i.origin??"value"} memiliki ${a}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: diharapkan ${i.origin??"value"} menjadi ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: diharapkan ${i.origin} memiliki ${a}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: diharapkan ${i.origin} menjadi ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`String tidak valid: harus dimulai dengan "${a.prefix}"`;if(a.format==="ends_with")return`String tidak valid: harus berakhir dengan "${a.suffix}"`;if(a.format==="includes")return`String tidak valid: harus menyertakan "${a.includes}"`;if(a.format==="regex")return`String tidak valid: harus sesuai pola ${a.pattern}`;return`${n[a.format]??i.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${i.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${i.origin}`;default:return"Input tidak valid"}}},U_=()=>{let e={string:{unit:"stafi",verb:"að hafa"},file:{unit:"bæti",verb:"að hafa"},array:{unit:"hluti",verb:"að hafa"},set:{unit:"hluti",verb:"að hafa"}};function t(i){return e[i]??null}let n={regex:"gildi",email:"netfang",url:"vefslóð",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og tími",date:"ISO dagsetning",time:"ISO tími",duration:"ISO tímalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 tölugildi",jwt:"JWT",template_literal:"gildi"},r={nan:"NaN",number:"númer",array:"fylki"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera instanceof ${i.expected}`;return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera ${a}`}case"invalid_value":if(i.values.length===1)return`Rangt gildi: gert ráð fyrir ${k(i.values[0])}`;return`Ógilt val: má vera eitt af eftirfarandi ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} hafi ${a}${i.maximum.toString()} ${o.unit??"hluti"}`;return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} sé ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Of lítið: gert er ráð fyrir að ${i.origin} hafi ${a}${i.minimum.toString()} ${o.unit}`;return`Of lítið: gert er ráð fyrir að ${i.origin} sé ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ógildur strengur: verður að byrja á "${a.prefix}"`;if(a.format==="ends_with")return`Ógildur strengur: verður að enda á "${a.suffix}"`;if(a.format==="includes")return`Ógildur strengur: verður að innihalda "${a.includes}"`;if(a.format==="regex")return`Ógildur strengur: verður að fylgja mynstri ${a.pattern}`;return`Rangt ${n[a.format]??i.format}`}case"not_multiple_of":return`Röng tala: verður að vera margfeldi af ${i.divisor}`;case"unrecognized_keys":return`Óþekkt ${i.keys.length>1?"ir lyklar":"ur lykill"}: ${h(i.keys,", ")}`;case"invalid_key":return`Rangur lykill í ${i.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi í ${i.origin}`;default:return"Rangt gildi"}}},j_=()=>{let e={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function t(i){return e[i]??null}let n={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"numero",array:"vettore"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input non valido: atteso instanceof ${i.expected}, ricevuto ${s}`;return`Input non valido: atteso ${a}, ricevuto ${s}`}case"invalid_value":if(i.values.length===1)return`Input non valido: atteso ${k(i.values[0])}`;return`Opzione non valida: atteso uno tra ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Troppo grande: ${i.origin??"valore"} deve avere ${a}${i.maximum.toString()} ${o.unit??"elementi"}`;return`Troppo grande: ${i.origin??"valore"} deve essere ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Troppo piccolo: ${i.origin} deve avere ${a}${i.minimum.toString()} ${o.unit}`;return`Troppo piccolo: ${i.origin} deve essere ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Stringa non valida: deve iniziare con "${a.prefix}"`;if(a.format==="ends_with")return`Stringa non valida: deve terminare con "${a.suffix}"`;if(a.format==="includes")return`Stringa non valida: deve includere "${a.includes}"`;if(a.format==="regex")return`Stringa non valida: deve corrispondere al pattern ${a.pattern}`;return`Input non valido: ${n[a.format]??i.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${i.divisor}`;case"unrecognized_keys":return`Chiav${i.keys.length>1?"i":"e"} non riconosciut${i.keys.length>1?"e":"a"}: ${h(i.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${i.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${i.origin}`;default:return"Input non valido"}}},E_=()=>{let e={string:{unit:"文字",verb:"である"},file:{unit:"バイト",verb:"である"},array:{unit:"要素",verb:"である"},set:{unit:"要素",verb:"である"}};function t(i){return e[i]??null}let n={regex:"入力値",email:"メールアドレス",url:"URL",emoji:"絵文字",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日時",date:"ISO日付",time:"ISO時刻",duration:"ISO期間",ipv4:"IPv4アドレス",ipv6:"IPv6アドレス",cidrv4:"IPv4範囲",cidrv6:"IPv6範囲",base64:"base64エンコード文字列",base64url:"base64urlエンコード文字列",json_string:"JSON文字列",e164:"E.164番号",jwt:"JWT",template_literal:"入力値"},r={nan:"NaN",number:"数値",array:"配列"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`無効な入力: instanceof ${i.expected}が期待されましたが、${s}が入力されました`;return`無効な入力: ${a}が期待されましたが、${s}が入力されました`}case"invalid_value":if(i.values.length===1)return`無効な入力: ${k(i.values[0])}が期待されました`;return`無効な選択: ${h(i.values,"、")}のいずれかである必要があります`;case"too_big":{let a=i.inclusive?"以下である":"より小さい",o=t(i.origin);if(o)return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${o.unit??"要素"}${a}必要があります`;return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${a}必要があります`}case"too_small":{let a=i.inclusive?"以上である":"より大きい",o=t(i.origin);if(o)return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${o.unit}${a}必要があります`;return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${a}必要があります`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`無効な文字列: "${a.prefix}"で始まる必要があります`;if(a.format==="ends_with")return`無効な文字列: "${a.suffix}"で終わる必要があります`;if(a.format==="includes")return`無効な文字列: "${a.includes}"を含む必要があります`;if(a.format==="regex")return`無効な文字列: パターン${a.pattern}に一致する必要があります`;return`無効な${n[a.format]??i.format}`}case"not_multiple_of":return`無効な数値: ${i.divisor}の倍数である必要があります`;case"unrecognized_keys":return`認識されていないキー${i.keys.length>1?"群":""}: ${h(i.keys,"、")}`;case"invalid_key":return`${i.origin}内の無効なキー`;case"invalid_union":return"無効な入力";case"invalid_element":return`${i.origin}内の無効な値`;default:return"無効な入力"}}},P_=()=>{let e={string:{unit:"სიმბოლო",verb:"უნდა შეიცავდეს"},file:{unit:"ბაიტი",verb:"უნდა შეიცავდეს"},array:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"},set:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"}};function t(i){return e[i]??null}let n={regex:"შეყვანა",email:"ელ-ფოსტის მისამართი",url:"URL",emoji:"ემოჯი",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"თარიღი-დრო",date:"თარიღი",time:"დრო",duration:"ხანგრძლივობა",ipv4:"IPv4 მისამართი",ipv6:"IPv6 მისამართი",cidrv4:"IPv4 დიაპაზონი",cidrv6:"IPv6 დიაპაზონი",base64:"base64-კოდირებული ველი",base64url:"base64url-კოდირებული ველი",json_string:"JSON ველი",e164:"E.164 ნომერი",jwt:"JWT",template_literal:"შეყვანა"},r={nan:"NaN",number:"რიცხვი",string:"ველი",boolean:"ბულეანი",function:"ფუნქცია",array:"მასივი"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`არასწორი შეყვანა: მოსალოდნელი instanceof ${i.expected}, მიღებული ${s}`;return`არასწორი შეყვანა: მოსალოდნელი ${a}, მიღებული ${s}`}case"invalid_value":if(i.values.length===1)return`არასწორი შეყვანა: მოსალოდნელი ${k(i.values[0])}`;return`არასწორი ვარიანტი: მოსალოდნელია ერთ-ერთი ${h(i.values,"|")}-დან`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit}`;return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} იყოს ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} იყოს ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`არასწორი ველი: უნდა იწყებოდეს "${a.prefix}"-ით`;if(a.format==="ends_with")return`არასწორი ველი: უნდა მთავრდებოდეს "${a.suffix}"-ით`;if(a.format==="includes")return`არასწორი ველი: უნდა შეიცავდეს "${a.includes}"-ს`;if(a.format==="regex")return`არასწორი ველი: უნდა შეესაბამებოდეს შაბლონს ${a.pattern}`;return`არასწორი ${n[a.format]??i.format}`}case"not_multiple_of":return`არასწორი რიცხვი: უნდა იყოს ${i.divisor}-ის ჯერადი`;case"unrecognized_keys":return`უცნობი გასაღებ${i.keys.length>1?"ები":"ი"}: ${h(i.keys,", ")}`;case"invalid_key":return`არასწორი გასაღები ${i.origin}-ში`;case"invalid_union":return"არასწორი შეყვანა";case"invalid_element":return`არასწორი მნიშვნელობა ${i.origin}-ში`;default:return"არასწორი შეყვანა"}}},D_=()=>{let e={string:{unit:"តួអក្សរ",verb:"គួរមាន"},file:{unit:"បៃ",verb:"គួរមាន"},array:{unit:"ធាតុ",verb:"គួរមាន"},set:{unit:"ធាតុ",verb:"គួរមាន"}};function t(i){return e[i]??null}let n={regex:"ទិន្នន័យបញ្ចូល",email:"អាសយដ្ឋានអ៊ីមែល",url:"URL",emoji:"សញ្ញាអារម្មណ៍",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"កាលបរិច្ឆេទ និងម៉ោង ISO",date:"កាលបរិច្ឆេទ ISO",time:"ម៉ោង ISO",duration:"រយៈពេល ISO",ipv4:"អាសយដ្ឋាន IPv4",ipv6:"អាសយដ្ឋាន IPv6",cidrv4:"ដែនអាសយដ្ឋាន IPv4",cidrv6:"ដែនអាសយដ្ឋាន IPv6",base64:"ខ្សែអក្សរអ៊ិកូដ base64",base64url:"ខ្សែអក្សរអ៊ិកូដ base64url",json_string:"ខ្សែអក្សរ JSON",e164:"លេខ E.164",jwt:"JWT",template_literal:"ទិន្នន័យបញ្ចូល"},r={nan:"NaN",number:"លេខ",array:"អារេ (Array)",null:"គ្មានតម្លៃ (null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ instanceof ${i.expected} ប៉ុន្តែទទួលបាន ${s}`;return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${a} ប៉ុន្តែទទួលបាន ${s}`}case"invalid_value":if(i.values.length===1)return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${k(i.values[0])}`;return`ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${a} ${i.maximum.toString()} ${o.unit??"ធាតុ"}`;return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`តូចពេក៖ ត្រូវការ ${i.origin} ${a} ${i.minimum.toString()} ${o.unit}`;return`តូចពេក៖ ត្រូវការ ${i.origin} ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${a.prefix}"`;if(a.format==="ends_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${a.suffix}"`;if(a.format==="includes")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${a.includes}"`;if(a.format==="regex")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${a.pattern}`;return`មិនត្រឹមត្រូវ៖ ${n[a.format]??i.format}`}case"not_multiple_of":return`លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${i.divisor}`;case"unrecognized_keys":return`រកឃើញសោមិនស្គាល់៖ ${h(i.keys,", ")}`;case"invalid_key":return`សោមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;case"invalid_union":return"ទិន្នន័យមិនត្រឹមត្រូវ";case"invalid_element":return`ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;default:return"ទិន្នន័យមិនត្រឹមត្រូវ"}}},C_=()=>{let e={string:{unit:"문자",verb:"to have"},file:{unit:"바이트",verb:"to have"},array:{unit:"개",verb:"to have"},set:{unit:"개",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"입력",email:"이메일 주소",url:"URL",emoji:"이모지",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 날짜시간",date:"ISO 날짜",time:"ISO 시간",duration:"ISO 기간",ipv4:"IPv4 주소",ipv6:"IPv6 주소",cidrv4:"IPv4 범위",cidrv6:"IPv6 범위",base64:"base64 인코딩 문자열",base64url:"base64url 인코딩 문자열",json_string:"JSON 문자열",e164:"E.164 번호",jwt:"JWT",template_literal:"입력"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`잘못된 입력: 예상 타입은 instanceof ${i.expected}, 받은 타입은 ${s}입니다`;return`잘못된 입력: 예상 타입은 ${a}, 받은 타입은 ${s}입니다`}case"invalid_value":if(i.values.length===1)return`잘못된 입력: 값은 ${k(i.values[0])} 이어야 합니다`;return`잘못된 옵션: ${h(i.values,"또는 ")} 중 하나여야 합니다`;case"too_big":{let a=i.inclusive?"이하":"미만",o=a==="미만"?"이어야 합니다":"여야 합니다",s=t(i.origin),d=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()}${d} ${a}${o}`;return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()} ${a}${o}`}case"too_small":{let a=i.inclusive?"이상":"초과",o=a==="이상"?"이어야 합니다":"여야 합니다",s=t(i.origin),d=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()}${d} ${a}${o}`;return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()} ${a}${o}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`잘못된 문자열: "${a.prefix}"(으)로 시작해야 합니다`;if(a.format==="ends_with")return`잘못된 문자열: "${a.suffix}"(으)로 끝나야 합니다`;if(a.format==="includes")return`잘못된 문자열: "${a.includes}"을(를) 포함해야 합니다`;if(a.format==="regex")return`잘못된 문자열: 정규식 ${a.pattern} 패턴과 일치해야 합니다`;return`잘못된 ${n[a.format]??i.format}`}case"not_multiple_of":return`잘못된 숫자: ${i.divisor}의 배수여야 합니다`;case"unrecognized_keys":return`인식할 수 없는 키: ${h(i.keys,", ")}`;case"invalid_key":return`잘못된 키: ${i.origin}`;case"invalid_union":return"잘못된 입력";case"invalid_element":return`잘못된 값: ${i.origin}`;default:return"잘못된 입력"}}},Kt=(e)=>{return e.charAt(0).toUpperCase()+e.slice(1)},L_=()=>{let e={string:{unit:{one:"simbolis",few:"simboliai",many:"simbolių"},verb:{smaller:{inclusive:"turi būti ne ilgesnė kaip",notInclusive:"turi būti trumpesnė kaip"},bigger:{inclusive:"turi būti ne trumpesnė kaip",notInclusive:"turi būti ilgesnė kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"baitų"},verb:{smaller:{inclusive:"turi būti ne didesnis kaip",notInclusive:"turi būti mažesnis kaip"},bigger:{inclusive:"turi būti ne mažesnis kaip",notInclusive:"turi būti didesnis kaip"}}},array:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}},set:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}}};function t(i,a,o,s){let d=e[i]??null;if(d===null)return d;return{unit:d.unit[a],verb:d.verb[s][o?"inclusive":"notInclusive"]}}let n={regex:"įvestis",email:"el. pašto adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukmė",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 užkoduota eilutė",base64url:"base64url užkoduota eilutė",json_string:"JSON eilutė",e164:"E.164 numeris",jwt:"JWT",template_literal:"įvestis"},r={nan:"NaN",number:"skaičius",bigint:"sveikasis skaičius",string:"eilutė",boolean:"loginė reikšmė",undefined:"neapibrėžta reikšmė",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulinė reikšmė"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Gautas tipas ${s}, o tikėtasi - instanceof ${i.expected}`;return`Gautas tipas ${s}, o tikėtasi - ${a}`}case"invalid_value":if(i.values.length===1)return`Privalo būti ${k(i.values[0])}`;return`Privalo būti vienas iš ${h(i.values,"|")} pasirinkimų`;case"too_big":{let a=r[i.origin]??i.origin,o=t(i.origin,xu(Number(i.maximum)),i.inclusive??!1,"smaller");if(o?.verb)return`${Kt(a??i.origin??"reikšmė")} ${o.verb} ${i.maximum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne didesnis kaip":"mažesnis kaip";return`${Kt(a??i.origin??"reikšmė")} turi būti ${s} ${i.maximum.toString()} ${o?.unit}`}case"too_small":{let a=r[i.origin]??i.origin,o=t(i.origin,xu(Number(i.minimum)),i.inclusive??!1,"bigger");if(o?.verb)return`${Kt(a??i.origin??"reikšmė")} ${o.verb} ${i.minimum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne mažesnis kaip":"didesnis kaip";return`${Kt(a??i.origin??"reikšmė")} turi būti ${s} ${i.minimum.toString()} ${o?.unit}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Eilutė privalo prasidėti "${a.prefix}"`;if(a.format==="ends_with")return`Eilutė privalo pasibaigti "${a.suffix}"`;if(a.format==="includes")return`Eilutė privalo įtraukti "${a.includes}"`;if(a.format==="regex")return`Eilutė privalo atitikti ${a.pattern}`;return`Neteisingas ${n[a.format]??i.format}`}case"not_multiple_of":return`Skaičius privalo būti ${i.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpažint${i.keys.length>1?"i":"as"} rakt${i.keys.length>1?"ai":"as"}: ${h(i.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga įvestis";case"invalid_element":{let a=r[i.origin]??i.origin;return`${Kt(a??i.origin??"reikšmė")} turi klaidingą įvestį`}default:return"Klaidinga įvestis"}}},M_=()=>{let e={string:{unit:"знаци",verb:"да имаат"},file:{unit:"бајти",verb:"да имаат"},array:{unit:"ставки",verb:"да имаат"},set:{unit:"ставки",verb:"да имаат"}};function t(i){return e[i]??null}let n={regex:"внес",email:"адреса на е-пошта",url:"URL",emoji:"емоџи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO датум и време",date:"ISO датум",time:"ISO време",duration:"ISO времетраење",ipv4:"IPv4 адреса",ipv6:"IPv6 адреса",cidrv4:"IPv4 опсег",cidrv6:"IPv6 опсег",base64:"base64-енкодирана низа",base64url:"base64url-енкодирана низа",json_string:"JSON низа",e164:"E.164 број",jwt:"JWT",template_literal:"внес"},r={nan:"NaN",number:"број",array:"низа"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Грешен внес: се очекува instanceof ${i.expected}, примено ${s}`;return`Грешен внес: се очекува ${a}, примено ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${k(i.values[0])}`;return`Грешана опција: се очекува една ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Премногу голем: се очекува ${i.origin??"вредноста"} да има ${a}${i.maximum.toString()} ${o.unit??"елементи"}`;return`Премногу голем: се очекува ${i.origin??"вредноста"} да биде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Премногу мал: се очекува ${i.origin} да има ${a}${i.minimum.toString()} ${o.unit}`;return`Премногу мал: се очекува ${i.origin} да биде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неважечка низа: мора да започнува со "${a.prefix}"`;if(a.format==="ends_with")return`Неважечка низа: мора да завршува со "${a.suffix}"`;if(a.format==="includes")return`Неважечка низа: мора да вклучува "${a.includes}"`;if(a.format==="regex")return`Неважечка низа: мора да одгоара на патернот ${a.pattern}`;return`Invalid ${n[a.format]??i.format}`}case"not_multiple_of":return`Грешен број: мора да биде делив со ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Непрепознаени клучеви":"Непрепознаен клуч"}: ${h(i.keys,", ")}`;case"invalid_key":return`Грешен клуч во ${i.origin}`;case"invalid_union":return"Грешен внес";case"invalid_element":return`Грешна вредност во ${i.origin}`;default:return"Грешен внес"}}},B_=()=>{let e={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"nombor"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak sah: dijangka instanceof ${i.expected}, diterima ${s}`;return`Input tidak sah: dijangka ${a}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak sah: dijangka ${k(i.values[0])}`;return`Pilihan tidak sah: dijangka salah satu daripada ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: dijangka ${i.origin??"nilai"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: dijangka ${i.origin??"nilai"} adalah ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: dijangka ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: dijangka ${i.origin} adalah ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`String tidak sah: mesti bermula dengan "${a.prefix}"`;if(a.format==="ends_with")return`String tidak sah: mesti berakhir dengan "${a.suffix}"`;if(a.format==="includes")return`String tidak sah: mesti mengandungi "${a.includes}"`;if(a.format==="regex")return`String tidak sah: mesti sepadan dengan corak ${a.pattern}`;return`${n[a.format]??i.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${h(i.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${i.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${i.origin}`;default:return"Input tidak sah"}}},K_=()=>{let e={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function t(i){return e[i]??null}let n={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},r={nan:"NaN",number:"getal"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ongeldige invoer: verwacht instanceof ${i.expected}, ontving ${s}`;return`Ongeldige invoer: verwacht ${a}, ontving ${s}`}case"invalid_value":if(i.values.length===1)return`Ongeldige invoer: verwacht ${k(i.values[0])}`;return`Ongeldige optie: verwacht één van ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=i.origin==="date"?"laat":i.origin==="string"?"lang":"groot";if(o)return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${a}${i.maximum.toString()} ${o.unit??"elementen"} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${a}${i.maximum.toString()} is`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=i.origin==="date"?"vroeg":i.origin==="string"?"kort":"klein";if(o)return`Te ${s}: verwacht dat ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin} ${a}${i.minimum.toString()} is`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ongeldige tekst: moet met "${a.prefix}" beginnen`;if(a.format==="ends_with")return`Ongeldige tekst: moet op "${a.suffix}" eindigen`;if(a.format==="includes")return`Ongeldige tekst: moet "${a.includes}" bevatten`;if(a.format==="regex")return`Ongeldige tekst: moet overeenkomen met patroon ${a.pattern}`;return`Ongeldig: ${n[a.format]??i.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${i.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${i.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${i.origin}`;default:return"Ongeldige invoer"}}},G_=()=>{let e={string:{unit:"tegn",verb:"å ha"},file:{unit:"bytes",verb:"å ha"},array:{unit:"elementer",verb:"å inneholde"},set:{unit:"elementer",verb:"å inneholde"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"tall",array:"liste"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldig input: forventet instanceof ${i.expected}, fikk ${s}`;return`Ugyldig input: forventet ${a}, fikk ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig verdi: forventet ${k(i.values[0])}`;return`Ugyldig valg: forventet en av ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`For stor(t): forventet ${i.origin??"value"} til å ha ${a}${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor(t): forventet ${i.origin??"value"} til å ha ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`For lite(n): forventet ${i.origin} til å ha ${a}${i.minimum.toString()} ${o.unit}`;return`For lite(n): forventet ${i.origin} til å ha ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ugyldig streng: må starte med "${a.prefix}"`;if(a.format==="ends_with")return`Ugyldig streng: må ende med "${a.suffix}"`;if(a.format==="includes")return`Ugyldig streng: må inneholde "${a.includes}"`;if(a.format==="regex")return`Ugyldig streng: må matche mønsteret ${a.pattern}`;return`Ugyldig ${n[a.format]??i.format}`}case"not_multiple_of":return`Ugyldig tall: må være et multiplum av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukjente nøkler":"Ukjent nøkkel"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøkkel i ${i.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${i.origin}`;default:return"Ugyldig input"}}},Y_=()=>{let e={string:{unit:"harf",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"unsur",verb:"olmalıdır"},set:{unit:"unsur",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"giren",email:"epostagâh",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO hengâmı",date:"ISO tarihi",time:"ISO zamanı",duration:"ISO müddeti",ipv4:"IPv4 nişânı",ipv6:"IPv6 nişânı",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-şifreli metin",base64url:"base64url-şifreli metin",json_string:"JSON metin",e164:"E.164 sayısı",jwt:"JWT",template_literal:"giren"},r={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Fâsit giren: umulan instanceof ${i.expected}, alınan ${s}`;return`Fâsit giren: umulan ${a}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Fâsit giren: umulan ${k(i.values[0])}`;return`Fâsit tercih: mûteberler ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Fazla büyük: ${i.origin??"value"}, ${a}${i.maximum.toString()} ${o.unit??"elements"} sahip olmalıydı.`;return`Fazla büyük: ${i.origin??"value"}, ${a}${i.maximum.toString()} olmalıydı.`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Fazla küçük: ${i.origin}, ${a}${i.minimum.toString()} ${o.unit} sahip olmalıydı.`;return`Fazla küçük: ${i.origin}, ${a}${i.minimum.toString()} olmalıydı.`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Fâsit metin: "${a.prefix}" ile başlamalı.`;if(a.format==="ends_with")return`Fâsit metin: "${a.suffix}" ile bitmeli.`;if(a.format==="includes")return`Fâsit metin: "${a.includes}" ihtivâ etmeli.`;if(a.format==="regex")return`Fâsit metin: ${a.pattern} nakşına uymalı.`;return`Fâsit ${n[a.format]??i.format}`}case"not_multiple_of":return`Fâsit sayı: ${i.divisor} katı olmalıydı.`;case"unrecognized_keys":return`Tanınmayan anahtar ${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} için tanınmayan anahtar var.`;case"invalid_union":return"Giren tanınamadı.";case"invalid_element":return`${i.origin} için tanınmayan kıymet var.`;default:return"Kıymet tanınamadı."}}},V_=()=>{let e={string:{unit:"توکي",verb:"ولري"},file:{unit:"بایټس",verb:"ولري"},array:{unit:"توکي",verb:"ولري"},set:{unit:"توکي",verb:"ولري"}};function t(i){return e[i]??null}let n={regex:"ورودي",email:"بریښنالیک",url:"یو آر ال",emoji:"ایموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"نیټه او وخت",date:"نېټه",time:"وخت",duration:"موده",ipv4:"د IPv4 پته",ipv6:"د IPv6 پته",cidrv4:"د IPv4 ساحه",cidrv6:"د IPv6 ساحه",base64:"base64-encoded متن",base64url:"base64url-encoded متن",json_string:"JSON متن",e164:"د E.164 شمېره",jwt:"JWT",template_literal:"ورودي"},r={nan:"NaN",number:"عدد",array:"ارې"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ناسم ورودي: باید instanceof ${i.expected} وای, مګر ${s} ترلاسه شو`;return`ناسم ورودي: باید ${a} وای, مګر ${s} ترلاسه شو`}case"invalid_value":if(i.values.length===1)return`ناسم ورودي: باید ${k(i.values[0])} وای`;return`ناسم انتخاب: باید یو له ${h(i.values,"|")} څخه وای`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ډیر لوی: ${i.origin??"ارزښت"} باید ${a}${i.maximum.toString()} ${o.unit??"عنصرونه"} ولري`;return`ډیر لوی: ${i.origin??"ارزښت"} باید ${a}${i.maximum.toString()} وي`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`ډیر کوچنی: ${i.origin} باید ${a}${i.minimum.toString()} ${o.unit} ولري`;return`ډیر کوچنی: ${i.origin} باید ${a}${i.minimum.toString()} وي`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`ناسم متن: باید د "${a.prefix}" سره پیل شي`;if(a.format==="ends_with")return`ناسم متن: باید د "${a.suffix}" سره پای ته ورسيږي`;if(a.format==="includes")return`ناسم متن: باید "${a.includes}" ولري`;if(a.format==="regex")return`ناسم متن: باید د ${a.pattern} سره مطابقت ولري`;return`${n[a.format]??i.format} ناسم دی`}case"not_multiple_of":return`ناسم عدد: باید د ${i.divisor} مضرب وي`;case"unrecognized_keys":return`ناسم ${i.keys.length>1?"کلیډونه":"کلیډ"}: ${h(i.keys,", ")}`;case"invalid_key":return`ناسم کلیډ په ${i.origin} کې`;case"invalid_union":return"ناسمه ورودي";case"invalid_element":return`ناسم عنصر په ${i.origin} کې`;default:return"ناسمه ورودي"}}},ek=()=>{let e={string:{unit:"znaków",verb:"mieć"},file:{unit:"bajtów",verb:"mieć"},array:{unit:"elementów",verb:"mieć"},set:{unit:"elementów",verb:"mieć"}};function t(i){return e[i]??null}let n={regex:"wyrażenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ciąg znaków zakodowany w formacie base64",base64url:"ciąg znaków zakodowany w formacie base64url",json_string:"ciąg znaków w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wejście"},r={nan:"NaN",number:"liczba",array:"tablica"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Nieprawidłowe dane wejściowe: oczekiwano instanceof ${i.expected}, otrzymano ${s}`;return`Nieprawidłowe dane wejściowe: oczekiwano ${a}, otrzymano ${s}`}case"invalid_value":if(i.values.length===1)return`Nieprawidłowe dane wejściowe: oczekiwano ${k(i.values[0])}`;return`Nieprawidłowa opcja: oczekiwano jednej z wartości ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Za duża wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${a}${i.maximum.toString()} ${o.unit??"elementów"}`;return`Zbyt duż(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Za mała wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${a}${i.minimum.toString()} ${o.unit??"elementów"}`;return`Zbyt mał(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Nieprawidłowy ciąg znaków: musi zaczynać się od "${a.prefix}"`;if(a.format==="ends_with")return`Nieprawidłowy ciąg znaków: musi kończyć się na "${a.suffix}"`;if(a.format==="includes")return`Nieprawidłowy ciąg znaków: musi zawierać "${a.includes}"`;if(a.format==="regex")return`Nieprawidłowy ciąg znaków: musi odpowiadać wzorcowi ${a.pattern}`;return`Nieprawidłow(y/a/e) ${n[a.format]??i.format}`}case"not_multiple_of":return`Nieprawidłowa liczba: musi być wielokrotnością ${i.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Nieprawidłowy klucz w ${i.origin}`;case"invalid_union":return"Nieprawidłowe dane wejściowe";case"invalid_element":return`Nieprawidłowa wartość w ${i.origin}`;default:return"Nieprawidłowe dane wejściowe"}}},ik=()=>{let e={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function t(i){return e[i]??null}let n={regex:"padrão",email:"endereço de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"duração ISO",ipv4:"endereço IPv4",ipv6:"endereço IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN",number:"número",null:"nulo"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipo inválido: esperado instanceof ${i.expected}, recebido ${s}`;return`Tipo inválido: esperado ${a}, recebido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: esperado ${k(i.values[0])}`;return`Opção inválida: esperada uma das ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Muito grande: esperado que ${i.origin??"valor"} tivesse ${a}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Muito grande: esperado que ${i.origin??"valor"} fosse ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Muito pequeno: esperado que ${i.origin} tivesse ${a}${i.minimum.toString()} ${o.unit}`;return`Muito pequeno: esperado que ${i.origin} fosse ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Texto inválido: deve começar com "${a.prefix}"`;if(a.format==="ends_with")return`Texto inválido: deve terminar com "${a.suffix}"`;if(a.format==="includes")return`Texto inválido: deve incluir "${a.includes}"`;if(a.format==="regex")return`Texto inválido: deve corresponder ao padrão ${a.pattern}`;return`${n[a.format]??i.format} inválido`}case"not_multiple_of":return`Número inválido: deve ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Chave${i.keys.length>1?"s":""} desconhecida${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Chave inválida em ${i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido em ${i.origin}`;default:return"Campo inválido"}}},rk=()=>{let e={string:{unit:"caractere",verb:"să aibă"},file:{unit:"octeți",verb:"să aibă"},array:{unit:"elemente",verb:"să aibă"},set:{unit:"elemente",verb:"să aibă"},map:{unit:"intrări",verb:"să aibă"}};function t(i){return e[i]??null}let n={regex:"intrare",email:"adresă de email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"dată și oră ISO",date:"dată ISO",time:"oră ISO",duration:"durată ISO",ipv4:"adresă IPv4",ipv6:"adresă IPv6",mac:"adresă MAC",cidrv4:"interval IPv4",cidrv6:"interval IPv6",base64:"șir codat base64",base64url:"șir codat base64url",json_string:"șir JSON",e164:"număr E.164",jwt:"JWT",template_literal:"intrare"},r={nan:"NaN",string:"șir",number:"număr",boolean:"boolean",function:"funcție",array:"matrice",object:"obiect",undefined:"nedefinit",symbol:"simbol",bigint:"număr mare",void:"void",never:"never",map:"hartă",set:"set"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;return`Intrare invalidă: așteptat ${a}, primit ${s}`}case"invalid_value":if(i.values.length===1)return`Intrare invalidă: așteptat ${k(i.values[0])}`;return`Opțiune invalidă: așteptat una dintre ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Prea mare: așteptat ca ${i.origin??"valoarea"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"elemente"}`;return`Prea mare: așteptat ca ${i.origin??"valoarea"} să fie ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Prea mic: așteptat ca ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Prea mic: așteptat ca ${i.origin} să fie ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Șir invalid: trebuie să înceapă cu "${a.prefix}"`;if(a.format==="ends_with")return`Șir invalid: trebuie să se termine cu "${a.suffix}"`;if(a.format==="includes")return`Șir invalid: trebuie să includă "${a.includes}"`;if(a.format==="regex")return`Șir invalid: trebuie să se potrivească cu modelul ${a.pattern}`;return`Format invalid: ${n[a.format]??i.format}`}case"not_multiple_of":return`Număr invalid: trebuie să fie multiplu de ${i.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${h(i.keys,", ")}`;case"invalid_key":return`Cheie invalidă în ${i.origin}`;case"invalid_union":return"Intrare invalidă";case"invalid_element":return`Valoare invalidă în ${i.origin}`;default:return"Intrare invalidă"}}},ok=()=>{let e={string:{unit:{one:"символ",few:"символа",many:"символов"},verb:"иметь"},file:{unit:{one:"байт",few:"байта",many:"байт"},verb:"иметь"},array:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"},set:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"}};function t(i){return e[i]??null}let n={regex:"ввод",email:"email адрес",url:"URL",emoji:"эмодзи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата и время",date:"ISO дата",time:"ISO время",duration:"ISO длительность",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"строка в формате base64",base64url:"строка в формате base64url",json_string:"JSON строка",e164:"номер E.164",jwt:"JWT",template_literal:"ввод"},r={nan:"NaN",number:"число",array:"массив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Неверный ввод: ожидалось instanceof ${i.expected}, получено ${s}`;return`Неверный ввод: ожидалось ${a}, получено ${s}`}case"invalid_value":if(i.values.length===1)return`Неверный ввод: ожидалось ${k(i.values[0])}`;return`Неверный вариант: ожидалось одно из ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=zu(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет иметь ${a}${i.maximum.toString()} ${d}`}return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=zu(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком маленькое значение: ожидалось, что ${i.origin} будет иметь ${a}${i.minimum.toString()} ${d}`}return`Слишком маленькое значение: ожидалось, что ${i.origin} будет ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неверная строка: должна начинаться с "${a.prefix}"`;if(a.format==="ends_with")return`Неверная строка: должна заканчиваться на "${a.suffix}"`;if(a.format==="includes")return`Неверная строка: должна содержать "${a.includes}"`;if(a.format==="regex")return`Неверная строка: должна соответствовать шаблону ${a.pattern}`;return`Неверный ${n[a.format]??i.format}`}case"not_multiple_of":return`Неверное число: должно быть кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспознанн${i.keys.length>1?"ые":"ый"} ключ${i.keys.length>1?"и":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Неверный ключ в ${i.origin}`;case"invalid_union":return"Неверные входные данные";case"invalid_element":return`Неверное значение в ${i.origin}`;default:return"Неверные входные данные"}}},uk=()=>{let e={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function t(i){return e[i]??null}let n={regex:"vnos",email:"e-poštni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in čas",date:"ISO datum",time:"ISO čas",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 številka",jwt:"JWT",template_literal:"vnos"},r={nan:"NaN",number:"število",array:"tabela"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neveljaven vnos: pričakovano instanceof ${i.expected}, prejeto ${s}`;return`Neveljaven vnos: pričakovano ${a}, prejeto ${s}`}case"invalid_value":if(i.values.length===1)return`Neveljaven vnos: pričakovano ${k(i.values[0])}`;return`Neveljavna možnost: pričakovano eno izmed ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} imelo ${a}${i.maximum.toString()} ${o.unit??"elementov"}`;return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Premajhno: pričakovano, da bo ${i.origin} imelo ${a}${i.minimum.toString()} ${o.unit}`;return`Premajhno: pričakovano, da bo ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neveljaven niz: mora se začeti z "${a.prefix}"`;if(a.format==="ends_with")return`Neveljaven niz: mora se končati z "${a.suffix}"`;if(a.format==="includes")return`Neveljaven niz: mora vsebovati "${a.includes}"`;if(a.format==="regex")return`Neveljaven niz: mora ustrezati vzorcu ${a.pattern}`;return`Neveljaven ${n[a.format]??i.format}`}case"not_multiple_of":return`Neveljavno število: mora biti večkratnik ${i.divisor}`;case"unrecognized_keys":return`Neprepoznan${i.keys.length>1?"i ključi":" ključ"}: ${h(i.keys,", ")}`;case"invalid_key":return`Neveljaven ključ v ${i.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${i.origin}`;default:return"Neveljaven vnos"}}},dk=()=>{let e={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att innehålla"},set:{unit:"objekt",verb:"att innehålla"}};function t(i){return e[i]??null}let n={regex:"reguljärt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad sträng",base64url:"base64url-kodad sträng",json_string:"JSON-sträng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},r={nan:"NaN",number:"antal",array:"lista"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ogiltig inmatning: förväntat instanceof ${i.expected}, fick ${s}`;return`Ogiltig inmatning: förväntat ${a}, fick ${s}`}case"invalid_value":if(i.values.length===1)return`Ogiltig inmatning: förväntat ${k(i.values[0])}`;return`Ogiltigt val: förväntade en av ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`För stor(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.maximum.toString()} ${o.unit??"element"}`;return`För stor(t): förväntat ${i.origin??"värdet"} att ha ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.minimum.toString()} ${o.unit}`;return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ogiltig sträng: måste börja med "${a.prefix}"`;if(a.format==="ends_with")return`Ogiltig sträng: måste sluta med "${a.suffix}"`;if(a.format==="includes")return`Ogiltig sträng: måste innehålla "${a.includes}"`;if(a.format==="regex")return`Ogiltig sträng: måste matcha mönstret "${a.pattern}"`;return`Ogiltig(t) ${n[a.format]??i.format}`}case"not_multiple_of":return`Ogiltigt tal: måste vara en multipel av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Okända nycklar":"Okänd nyckel"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${i.origin??"värdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt värde i ${i.origin??"värdet"}`;default:return"Ogiltig input"}}},mk=()=>{let e={string:{unit:"எழுத்துக்கள்",verb:"கொண்டிருக்க வேண்டும்"},file:{unit:"பைட்டுகள்",verb:"கொண்டிருக்க வேண்டும்"},array:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"},set:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"}};function t(i){return e[i]??null}let n={regex:"உள்ளீடு",email:"மின்னஞ்சல் முகவரி",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO தேதி நேரம்",date:"ISO தேதி",time:"ISO நேரம்",duration:"ISO கால அளவு",ipv4:"IPv4 முகவரி",ipv6:"IPv6 முகவரி",cidrv4:"IPv4 வரம்பு",cidrv6:"IPv6 வரம்பு",base64:"base64-encoded சரம்",base64url:"base64url-encoded சரம்",json_string:"JSON சரம்",e164:"E.164 எண்",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"எண்",array:"அணி",null:"வெறுமை"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது instanceof ${i.expected}, பெறப்பட்டது ${s}`;return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${a}, பெறப்பட்டது ${s}`}case"invalid_value":if(i.values.length===1)return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${k(i.values[0])}`;return`தவறான விருப்பம்: எதிர்பார்க்கப்பட்டது ${h(i.values,"|")} இல் ஒன்று`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${a}${i.maximum.toString()} ${o.unit??"உறுப்புகள்"} ஆக இருக்க வேண்டும்`;return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${a}${i.maximum.toString()} ஆக இருக்க வேண்டும்`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ஆக இருக்க வேண்டும்`;return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${a}${i.minimum.toString()} ஆக இருக்க வேண்டும்`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`தவறான சரம்: "${a.prefix}" இல் தொடங்க வேண்டும்`;if(a.format==="ends_with")return`தவறான சரம்: "${a.suffix}" இல் முடிவடைய வேண்டும்`;if(a.format==="includes")return`தவறான சரம்: "${a.includes}" ஐ உள்ளடக்க வேண்டும்`;if(a.format==="regex")return`தவறான சரம்: ${a.pattern} முறைபாட்டுடன் பொருந்த வேண்டும்`;return`தவறான ${n[a.format]??i.format}`}case"not_multiple_of":return`தவறான எண்: ${i.divisor} இன் பலமாக இருக்க வேண்டும்`;case"unrecognized_keys":return`அடையாளம் தெரியாத விசை${i.keys.length>1?"கள்":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} இல் தவறான விசை`;case"invalid_union":return"தவறான உள்ளீடு";case"invalid_element":return`${i.origin} இல் தவறான மதிப்பு`;default:return"தவறான உள்ளீடு"}}},pk=()=>{let e={string:{unit:"ตัวอักษร",verb:"ควรมี"},file:{unit:"ไบต์",verb:"ควรมี"},array:{unit:"รายการ",verb:"ควรมี"},set:{unit:"รายการ",verb:"ควรมี"}};function t(i){return e[i]??null}let n={regex:"ข้อมูลที่ป้อน",email:"ที่อยู่อีเมล",url:"URL",emoji:"อิโมจิ",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"วันที่เวลาแบบ ISO",date:"วันที่แบบ ISO",time:"เวลาแบบ ISO",duration:"ช่วงเวลาแบบ ISO",ipv4:"ที่อยู่ IPv4",ipv6:"ที่อยู่ IPv6",cidrv4:"ช่วง IP แบบ IPv4",cidrv6:"ช่วง IP แบบ IPv6",base64:"ข้อความแบบ Base64",base64url:"ข้อความแบบ Base64 สำหรับ URL",json_string:"ข้อความแบบ JSON",e164:"เบอร์โทรศัพท์ระหว่างประเทศ (E.164)",jwt:"โทเคน JWT",template_literal:"ข้อมูลที่ป้อน"},r={nan:"NaN",number:"ตัวเลข",array:"อาร์เรย์ (Array)",null:"ไม่มีค่า (null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น instanceof ${i.expected} แต่ได้รับ ${s}`;return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น ${a} แต่ได้รับ ${s}`}case"invalid_value":if(i.values.length===1)return`ค่าไม่ถูกต้อง: ควรเป็น ${k(i.values[0])}`;return`ตัวเลือกไม่ถูกต้อง: ควรเป็นหนึ่งใน ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"ไม่เกิน":"น้อยกว่า",o=t(i.origin);if(o)return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${a} ${i.maximum.toString()} ${o.unit??"รายการ"}`;return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"อย่างน้อย":"มากกว่า",o=t(i.origin);if(o)return`น้อยกว่ากำหนด: ${i.origin} ควรมี${a} ${i.minimum.toString()} ${o.unit}`;return`น้อยกว่ากำหนด: ${i.origin} ควรมี${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องขึ้นต้นด้วย "${a.prefix}"`;if(a.format==="ends_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องลงท้ายด้วย "${a.suffix}"`;if(a.format==="includes")return`รูปแบบไม่ถูกต้อง: ข้อความต้องมี "${a.includes}" อยู่ในข้อความ`;if(a.format==="regex")return`รูปแบบไม่ถูกต้อง: ต้องตรงกับรูปแบบที่กำหนด ${a.pattern}`;return`รูปแบบไม่ถูกต้อง: ${n[a.format]??i.format}`}case"not_multiple_of":return`ตัวเลขไม่ถูกต้อง: ต้องเป็นจำนวนที่หารด้วย ${i.divisor} ได้ลงตัว`;case"unrecognized_keys":return`พบคีย์ที่ไม่รู้จัก: ${h(i.keys,", ")}`;case"invalid_key":return`คีย์ไม่ถูกต้องใน ${i.origin}`;case"invalid_union":return"ข้อมูลไม่ถูกต้อง: ไม่ตรงกับรูปแบบยูเนียนที่กำหนดไว้";case"invalid_element":return`ข้อมูลไม่ถูกต้องใน ${i.origin}`;default:return"ข้อมูลไม่ถูกต้อง"}}},hk=()=>{let e={string:{unit:"karakter",verb:"olmalı"},file:{unit:"bayt",verb:"olmalı"},array:{unit:"öğe",verb:"olmalı"},set:{unit:"öğe",verb:"olmalı"}};function t(i){return e[i]??null}let n={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO süre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aralığı",cidrv6:"IPv6 aralığı",base64:"base64 ile şifrelenmiş metin",base64url:"base64url ile şifrelenmiş metin",json_string:"JSON dizesi",e164:"E.164 sayısı",jwt:"JWT",template_literal:"Şablon dizesi"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Geçersiz değer: beklenen instanceof ${i.expected}, alınan ${s}`;return`Geçersiz değer: beklenen ${a}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Geçersiz değer: beklenen ${k(i.values[0])}`;return`Geçersiz seçenek: aşağıdakilerden biri olmalı: ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çok büyük: beklenen ${i.origin??"değer"} ${a}${i.maximum.toString()} ${o.unit??"öğe"}`;return`Çok büyük: beklenen ${i.origin??"değer"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çok küçük: beklenen ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`Çok küçük: beklenen ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Geçersiz metin: "${a.prefix}" ile başlamalı`;if(a.format==="ends_with")return`Geçersiz metin: "${a.suffix}" ile bitmeli`;if(a.format==="includes")return`Geçersiz metin: "${a.includes}" içermeli`;if(a.format==="regex")return`Geçersiz metin: ${a.pattern} desenine uymalı`;return`Geçersiz ${n[a.format]??i.format}`}case"not_multiple_of":return`Geçersiz sayı: ${i.divisor} ile tam bölünebilmeli`;case"unrecognized_keys":return`Tanınmayan anahtar${i.keys.length>1?"lar":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} içinde geçersiz anahtar`;case"invalid_union":return"Geçersiz değer";case"invalid_element":return`${i.origin} içinde geçersiz değer`;default:return"Geçersiz değer"}}},yk=()=>{let e={string:{unit:"символів",verb:"матиме"},file:{unit:"байтів",verb:"матиме"},array:{unit:"елементів",verb:"матиме"},set:{unit:"елементів",verb:"матиме"}};function t(i){return e[i]??null}let n={regex:"вхідні дані",email:"адреса електронної пошти",url:"URL",emoji:"емодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"дата та час ISO",date:"дата ISO",time:"час ISO",duration:"тривалість ISO",ipv4:"адреса IPv4",ipv6:"адреса IPv6",cidrv4:"діапазон IPv4",cidrv6:"діапазон IPv6",base64:"рядок у кодуванні base64",base64url:"рядок у кодуванні base64url",json_string:"рядок JSON",e164:"номер E.164",jwt:"JWT",template_literal:"вхідні дані"},r={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Неправильні вхідні дані: очікується instanceof ${i.expected}, отримано ${s}`;return`Неправильні вхідні дані: очікується ${a}, отримано ${s}`}case"invalid_value":if(i.values.length===1)return`Неправильні вхідні дані: очікується ${k(i.values[0])}`;return`Неправильна опція: очікується одне з ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Занадто велике: очікується, що ${i.origin??"значення"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"елементів"}`;return`Занадто велике: очікується, що ${i.origin??"значення"} буде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Занадто мале: очікується, що ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Занадто мале: очікується, що ${i.origin} буде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неправильний рядок: повинен починатися з "${a.prefix}"`;if(a.format==="ends_with")return`Неправильний рядок: повинен закінчуватися на "${a.suffix}"`;if(a.format==="includes")return`Неправильний рядок: повинен містити "${a.includes}"`;if(a.format==="regex")return`Неправильний рядок: повинен відповідати шаблону ${a.pattern}`;return`Неправильний ${n[a.format]??i.format}`}case"not_multiple_of":return`Неправильне число: повинно бути кратним ${i.divisor}`;case"unrecognized_keys":return`Нерозпізнаний ключ${i.keys.length>1?"і":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Неправильний ключ у ${i.origin}`;case"invalid_union":return"Неправильні вхідні дані";case"invalid_element":return`Неправильне значення у ${i.origin}`;default:return"Неправильні вхідні дані"}}},$k=()=>{let e={string:{unit:"حروف",verb:"ہونا"},file:{unit:"بائٹس",verb:"ہونا"},array:{unit:"آئٹمز",verb:"ہونا"},set:{unit:"آئٹمز",verb:"ہونا"}};function t(i){return e[i]??null}let n={regex:"ان پٹ",email:"ای میل ایڈریس",url:"یو آر ایل",emoji:"ایموجی",uuid:"یو یو آئی ڈی",uuidv4:"یو یو آئی ڈی وی 4",uuidv6:"یو یو آئی ڈی وی 6",nanoid:"نینو آئی ڈی",guid:"جی یو آئی ڈی",cuid:"سی یو آئی ڈی",cuid2:"سی یو آئی ڈی 2",ulid:"یو ایل آئی ڈی",xid:"ایکس آئی ڈی",ksuid:"کے ایس یو آئی ڈی",datetime:"آئی ایس او ڈیٹ ٹائم",date:"آئی ایس او تاریخ",time:"آئی ایس او وقت",duration:"آئی ایس او مدت",ipv4:"آئی پی وی 4 ایڈریس",ipv6:"آئی پی وی 6 ایڈریس",cidrv4:"آئی پی وی 4 رینج",cidrv6:"آئی پی وی 6 رینج",base64:"بیس 64 ان کوڈڈ سٹرنگ",base64url:"بیس 64 یو آر ایل ان کوڈڈ سٹرنگ",json_string:"جے ایس او این سٹرنگ",e164:"ای 164 نمبر",jwt:"جے ڈبلیو ٹی",template_literal:"ان پٹ"},r={nan:"NaN",number:"نمبر",array:"آرے",null:"نل"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`غلط ان پٹ: instanceof ${i.expected} متوقع تھا، ${s} موصول ہوا`;return`غلط ان پٹ: ${a} متوقع تھا، ${s} موصول ہوا`}case"invalid_value":if(i.values.length===1)return`غلط ان پٹ: ${k(i.values[0])} متوقع تھا`;return`غلط آپشن: ${h(i.values,"|")} میں سے ایک متوقع تھا`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`بہت بڑا: ${i.origin??"ویلیو"} کے ${a}${i.maximum.toString()} ${o.unit??"عناصر"} ہونے متوقع تھے`;return`بہت بڑا: ${i.origin??"ویلیو"} کا ${a}${i.maximum.toString()} ہونا متوقع تھا`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`بہت چھوٹا: ${i.origin} کے ${a}${i.minimum.toString()} ${o.unit} ہونے متوقع تھے`;return`بہت چھوٹا: ${i.origin} کا ${a}${i.minimum.toString()} ہونا متوقع تھا`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`غلط سٹرنگ: "${a.prefix}" سے شروع ہونا چاہیے`;if(a.format==="ends_with")return`غلط سٹرنگ: "${a.suffix}" پر ختم ہونا چاہیے`;if(a.format==="includes")return`غلط سٹرنگ: "${a.includes}" شامل ہونا چاہیے`;if(a.format==="regex")return`غلط سٹرنگ: پیٹرن ${a.pattern} سے میچ ہونا چاہیے`;return`غلط ${n[a.format]??i.format}`}case"not_multiple_of":return`غلط نمبر: ${i.divisor} کا مضاعف ہونا چاہیے`;case"unrecognized_keys":return`غیر تسلیم شدہ کی${i.keys.length>1?"ز":""}: ${h(i.keys,"، ")}`;case"invalid_key":return`${i.origin} میں غلط کی`;case"invalid_union":return"غلط ان پٹ";case"invalid_element":return`${i.origin} میں غلط ویلیو`;default:return"غلط ان پٹ"}}},kk=()=>{let e={string:{unit:"belgi",verb:"bo‘lishi kerak"},file:{unit:"bayt",verb:"bo‘lishi kerak"},array:{unit:"element",verb:"bo‘lishi kerak"},set:{unit:"element",verb:"bo‘lishi kerak"},map:{unit:"yozuv",verb:"bo‘lishi kerak"}};function t(i){return e[i]??null}let n={regex:"kirish",email:"elektron pochta manzili",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},r={nan:"NaN",number:"raqam",array:"massiv"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Noto‘g‘ri kirish: kutilgan instanceof ${i.expected}, qabul qilingan ${s}`;return`Noto‘g‘ri kirish: kutilgan ${a}, qabul qilingan ${s}`}case"invalid_value":if(i.values.length===1)return`Noto‘g‘ri kirish: kutilgan ${k(i.values[0])}`;return`Noto‘g‘ri variant: quyidagilardan biri kutilgan ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Juda katta: kutilgan ${i.origin??"qiymat"} ${a}${i.maximum.toString()} ${o.unit} ${o.verb}`;return`Juda katta: kutilgan ${i.origin??"qiymat"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Juda kichik: kutilgan ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Juda kichik: kutilgan ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Noto‘g‘ri satr: "${a.prefix}" bilan boshlanishi kerak`;if(a.format==="ends_with")return`Noto‘g‘ri satr: "${a.suffix}" bilan tugashi kerak`;if(a.format==="includes")return`Noto‘g‘ri satr: "${a.includes}" ni o‘z ichiga olishi kerak`;if(a.format==="regex")return`Noto‘g‘ri satr: ${a.pattern} shabloniga mos kelishi kerak`;return`Noto‘g‘ri ${n[a.format]??i.format}`}case"not_multiple_of":return`Noto‘g‘ri raqam: ${i.divisor} ning karralisi bo‘lishi kerak`;case"unrecognized_keys":return`Noma’lum kalit${i.keys.length>1?"lar":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} dagi kalit noto‘g‘ri`;case"invalid_union":return"Noto‘g‘ri kirish";case"invalid_element":return`${i.origin} da noto‘g‘ri qiymat`;default:return"Noto‘g‘ri kirish"}}},Sk=()=>{let e={string:{unit:"ký tự",verb:"có"},file:{unit:"byte",verb:"có"},array:{unit:"phần tử",verb:"có"},set:{unit:"phần tử",verb:"có"}};function t(i){return e[i]??null}let n={regex:"đầu vào",email:"địa chỉ email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ngày giờ ISO",date:"ngày ISO",time:"giờ ISO",duration:"khoảng thời gian ISO",ipv4:"địa chỉ IPv4",ipv6:"địa chỉ IPv6",cidrv4:"dải IPv4",cidrv6:"dải IPv6",base64:"chuỗi mã hóa base64",base64url:"chuỗi mã hóa base64url",json_string:"chuỗi JSON",e164:"số E.164",jwt:"JWT",template_literal:"đầu vào"},r={nan:"NaN",number:"số",array:"mảng"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Đầu vào không hợp lệ: mong đợi instanceof ${i.expected}, nhận được ${s}`;return`Đầu vào không hợp lệ: mong đợi ${a}, nhận được ${s}`}case"invalid_value":if(i.values.length===1)return`Đầu vào không hợp lệ: mong đợi ${k(i.values[0])}`;return`Tùy chọn không hợp lệ: mong đợi một trong các giá trị ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"phần tử"}`;return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Quá nhỏ: mong đợi ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Quá nhỏ: mong đợi ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chuỗi không hợp lệ: phải bắt đầu bằng "${a.prefix}"`;if(a.format==="ends_with")return`Chuỗi không hợp lệ: phải kết thúc bằng "${a.suffix}"`;if(a.format==="includes")return`Chuỗi không hợp lệ: phải bao gồm "${a.includes}"`;if(a.format==="regex")return`Chuỗi không hợp lệ: phải khớp với mẫu ${a.pattern}`;return`${n[a.format]??i.format} không hợp lệ`}case"not_multiple_of":return`Số không hợp lệ: phải là bội số của ${i.divisor}`;case"unrecognized_keys":return`Khóa không được nhận dạng: ${h(i.keys,", ")}`;case"invalid_key":return`Khóa không hợp lệ trong ${i.origin}`;case"invalid_union":return"Đầu vào không hợp lệ";case"invalid_element":return`Giá trị không hợp lệ trong ${i.origin}`;default:return"Đầu vào không hợp lệ"}}},xk=()=>{let e={string:{unit:"字符",verb:"包含"},file:{unit:"字节",verb:"包含"},array:{unit:"项",verb:"包含"},set:{unit:"项",verb:"包含"}};function t(i){return e[i]??null}let n={regex:"输入",email:"电子邮件",url:"URL",emoji:"表情符号",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日期时间",date:"ISO日期",time:"ISO时间",duration:"ISO时长",ipv4:"IPv4地址",ipv6:"IPv6地址",cidrv4:"IPv4网段",cidrv6:"IPv6网段",base64:"base64编码字符串",base64url:"base64url编码字符串",json_string:"JSON字符串",e164:"E.164号码",jwt:"JWT",template_literal:"输入"},r={nan:"NaN",number:"数字",array:"数组",null:"空值(null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`无效输入:期望 instanceof ${i.expected},实际接收 ${s}`;return`无效输入:期望 ${a},实际接收 ${s}`}case"invalid_value":if(i.values.length===1)return`无效输入:期望 ${k(i.values[0])}`;return`无效选项:期望以下之一 ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`数值过大:期望 ${i.origin??"值"} ${a}${i.maximum.toString()} ${o.unit??"个元素"}`;return`数值过大:期望 ${i.origin??"值"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`数值过小:期望 ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`数值过小:期望 ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`无效字符串:必须以 "${a.prefix}" 开头`;if(a.format==="ends_with")return`无效字符串:必须以 "${a.suffix}" 结尾`;if(a.format==="includes")return`无效字符串:必须包含 "${a.includes}"`;if(a.format==="regex")return`无效字符串:必须满足正则表达式 ${a.pattern}`;return`无效${n[a.format]??i.format}`}case"not_multiple_of":return`无效数字:必须是 ${i.divisor} 的倍数`;case"unrecognized_keys":return`出现未知的键(key): ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} 中的键(key)无效`;case"invalid_union":return"无效输入";case"invalid_element":return`${i.origin} 中包含无效值(value)`;default:return"无效输入"}}},Uk=()=>{let e={string:{unit:"字元",verb:"擁有"},file:{unit:"位元組",verb:"擁有"},array:{unit:"項目",verb:"擁有"},set:{unit:"項目",verb:"擁有"}};function t(i){return e[i]??null}let n={regex:"輸入",email:"郵件地址",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 日期時間",date:"ISO 日期",time:"ISO 時間",duration:"ISO 期間",ipv4:"IPv4 位址",ipv6:"IPv6 位址",cidrv4:"IPv4 範圍",cidrv6:"IPv6 範圍",base64:"base64 編碼字串",base64url:"base64url 編碼字串",json_string:"JSON 字串",e164:"E.164 數值",jwt:"JWT",template_literal:"輸入"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`無效的輸入值:預期為 instanceof ${i.expected},但收到 ${s}`;return`無效的輸入值:預期為 ${a},但收到 ${s}`}case"invalid_value":if(i.values.length===1)return`無效的輸入值:預期為 ${k(i.values[0])}`;return`無效的選項:預期為以下其中之一 ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`數值過大:預期 ${i.origin??"值"} 應為 ${a}${i.maximum.toString()} ${o.unit??"個元素"}`;return`數值過大:預期 ${i.origin??"值"} 應為 ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`數值過小:預期 ${i.origin} 應為 ${a}${i.minimum.toString()} ${o.unit}`;return`數值過小:預期 ${i.origin} 應為 ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`無效的字串:必須以 "${a.prefix}" 開頭`;if(a.format==="ends_with")return`無效的字串:必須以 "${a.suffix}" 結尾`;if(a.format==="includes")return`無效的字串:必須包含 "${a.includes}"`;if(a.format==="regex")return`無效的字串:必須符合格式 ${a.pattern}`;return`無效的 ${n[a.format]??i.format}`}case"not_multiple_of":return`無效的數字:必須為 ${i.divisor} 的倍數`;case"unrecognized_keys":return`無法識別的鍵值${i.keys.length>1?"們":""}:${h(i.keys,"、")}`;case"invalid_key":return`${i.origin} 中有無效的鍵值`;case"invalid_union":return"無效的輸入值";case"invalid_element":return`${i.origin} 中有無效的值`;default:return"無效的輸入值"}}},jk=()=>{let e={string:{unit:"àmi",verb:"ní"},file:{unit:"bytes",verb:"ní"},array:{unit:"nkan",verb:"ní"},set:{unit:"nkan",verb:"ní"}};function t(i){return e[i]??null}let n={regex:"ẹ̀rọ ìbáwọlé",email:"àdírẹ́sì ìmẹ́lì",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"àkókò ISO",date:"ọjọ́ ISO",time:"àkókò ISO",duration:"àkókò tó pé ISO",ipv4:"àdírẹ́sì IPv4",ipv6:"àdírẹ́sì IPv6",cidrv4:"àgbègbè IPv4",cidrv6:"àgbègbè IPv6",base64:"ọ̀rọ̀ tí a kọ́ ní base64",base64url:"ọ̀rọ̀ base64url",json_string:"ọ̀rọ̀ JSON",e164:"nọ́mbà E.164",jwt:"JWT",template_literal:"ẹ̀rọ ìbáwọlé"},r={nan:"NaN",number:"nọ́mbà",array:"akopọ"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ìbáwọlé aṣìṣe: a ní láti fi instanceof ${i.expected}, àmọ̀ a rí ${s}`;return`Ìbáwọlé aṣìṣe: a ní láti fi ${a}, àmọ̀ a rí ${s}`}case"invalid_value":if(i.values.length===1)return`Ìbáwọlé aṣìṣe: a ní láti fi ${k(i.values[0])}`;return`Àṣàyàn aṣìṣe: yan ọ̀kan lára ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tó pọ̀ jù: a ní láti jẹ́ pé ${i.origin??"iye"} ${o.verb} ${a}${i.maximum} ${o.unit}`;return`Tó pọ̀ jù: a ní láti jẹ́ ${a}${i.maximum}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Kéré ju: a ní láti jẹ́ pé ${i.origin} ${o.verb} ${a}${i.minimum} ${o.unit}`;return`Kéré ju: a ní láti jẹ́ ${a}${i.minimum}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú "${a.prefix}"`;if(a.format==="ends_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ parí pẹ̀lú "${a.suffix}"`;if(a.format==="includes")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ ní "${a.includes}"`;if(a.format==="regex")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bá àpẹẹrẹ mu ${a.pattern}`;return`Aṣìṣe: ${n[a.format]??i.format}`}case"not_multiple_of":return`Nọ́mbà aṣìṣe: gbọ́dọ̀ jẹ́ èyà pípín ti ${i.divisor}`;case"unrecognized_keys":return`Bọtìnì àìmọ̀: ${h(i.keys,", ")}`;case"invalid_key":return`Bọtìnì aṣìṣe nínú ${i.origin}`;case"invalid_union":return"Ìbáwọlé aṣìṣe";case"invalid_element":return`Iye aṣìṣe nínú ${i.origin}`;default:return"Ìbáwọlé aṣìṣe"}}},Uu,Kc,Hc,de,Qc,Pm=(e,t={})=>(n)=>{let r=It({...n,processors:t});return P(e,r),xt(r,e),zt(r,e)},ei=(e,t,n={})=>(r)=>{let{libraryOptions:i,target:a}=r??{},o=It({...i??{},target:a,io:t,processors:n});return P(e,o),xt(o,e),zt(o,e)},tw,Am=(e,t,n,r)=>{let i=n;i.type="string";let{minimum:a,maximum:o,format:s,patterns:d,contentEncoding:l}=e._zod.bag;if(typeof a==="number")i.minLength=a;if(typeof o==="number")i.maxLength=o;if(s){if(i.format=tw[s]??s,i.format==="")delete i.format;if(s==="time")delete i.format}if(l)i.contentEncoding=l;if(d&&d.size>0){let c=[...d];if(c.length===1)i.pattern=c[0].source;else if(c.length>1)i.allOf=[...c.map((m)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:m.source}))]}},Dm=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:d,exclusiveMaximum:l,exclusiveMinimum:c}=e._zod.bag;if(typeof s==="string"&&s.includes("int"))i.type="integer";else i.type="number";let m=typeof c==="number"&&c>=(a??Number.NEGATIVE_INFINITY),v=typeof l==="number"&&l<=(o??Number.POSITIVE_INFINITY),p=t.target==="draft-04"||t.target==="openapi-3.0";if(m)if(p)i.minimum=c,i.exclusiveMinimum=!0;else i.exclusiveMinimum=c;else if(typeof a==="number")i.minimum=a;if(v)if(p)i.maximum=l,i.exclusiveMaximum=!0;else i.exclusiveMaximum=l;else if(typeof o==="number")i.maximum=o;if(typeof d==="number")i.multipleOf=d},Zm=(e,t,n,r)=>{n.type="boolean"},Cm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Rm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},Lm=(e,t,n,r)=>{if(t.target==="openapi-3.0")n.type="string",n.nullable=!0,n.enum=[null];else n.type="null"},Jm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},Mm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},Fm=(e,t,n,r)=>{n.not={}},Bm=(e,t,n,r)=>{},Wm=(e,t,n,r)=>{},Km=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},Hm=(e,t,n,r)=>{let i=e._zod.def,a=Yr(i.entries);if(a.every((o)=>typeof o==="number"))n.type="number";if(a.every((o)=>typeof o==="string"))n.type="string";n.enum=a},Gm=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let o of i.values)if(o===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else a.push(Number(o));else a.push(o);if(a.length===0);else if(a.length===1){let o=a[0];if(n.type=o===null?"null":typeof o,t.target==="draft-04"||t.target==="openapi-3.0")n.enum=[o];else n.const=o}else{if(a.every((o)=>typeof o==="number"))n.type="number";if(a.every((o)=>typeof o==="string"))n.type="string";if(a.every((o)=>typeof o==="boolean"))n.type="boolean";if(a.every((o)=>o===null))n.type="null";n.enum=a}},Xm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Ym=(e,t,n,r)=>{let i=n,a=e._zod.pattern;if(!a)throw Error("Pattern not found in template literal");i.type="string",i.pattern=a.source},Qm=(e,t,n,r)=>{let i=n,a={type:"string",format:"binary",contentEncoding:"binary"},{minimum:o,maximum:s,mime:d}=e._zod.bag;if(o!==void 0)a.minLength=o;if(s!==void 0)a.maxLength=s;if(d)if(d.length===1)a.contentMediaType=d[0],Object.assign(i,a);else Object.assign(i,a),i.anyOf=d.map((l)=>({contentMediaType:l}));else Object.assign(i,a)},Vm=(e,t,n,r)=>{n.type="boolean"},qm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},ef=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},tf=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},nf=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},rf=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},af=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;if(typeof o==="number")i.minItems=o;if(typeof s==="number")i.maxItems=s;i.type="array",i.items=P(a.element,t,{...r,path:[...r.path,"items"]})},of=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="object",i.properties={};let o=a.shape;for(let l in o)i.properties[l]=P(o[l],t,{...r,path:[...r.path,"properties",l]});let s=new Set(Object.keys(o)),d=new Set([...s].filter((l)=>{let c=a.shape[l]._zod;if(t.io==="input")return c.optin===void 0;else return c.optout===void 0}));if(d.size>0)i.required=Array.from(d);if(a.catchall?._zod.def.type==="never")i.additionalProperties=!1;else if(!a.catchall){if(t.io==="output")i.additionalProperties=!1}else if(a.catchall)i.additionalProperties=P(a.catchall,t,{...r,path:[...r.path,"additionalProperties"]})},Ya=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((s,d)=>P(s,t,{...r,path:[...r.path,a?"oneOf":"anyOf",d]}));if(a)n.oneOf=o;else n.anyOf=o},sf=(e,t,n,r)=>{let i=e._zod.def,a=P(i.left,t,{...r,path:[...r.path,"allOf",0]}),o=P(i.right,t,{...r,path:[...r.path,"allOf",1]}),s=(l)=>("allOf"in l)&&Object.keys(l).length===1,d=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]];n.allOf=d},uf=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="array";let o=t.target==="draft-2020-12"?"prefixItems":"items",s=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",d=a.items.map((v,p)=>P(v,t,{...r,path:[...r.path,o,p]})),l=a.rest?P(a.rest,t,{...r,path:[...r.path,s,...t.target==="openapi-3.0"?[a.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(i.prefixItems=d,l)i.items=l}else if(t.target==="openapi-3.0"){if(i.items={anyOf:d},l)i.items.anyOf.push(l);if(i.minItems=d.length,!l)i.maxItems=d.length}else if(i.items=d,l)i.additionalItems=l;let{minimum:c,maximum:m}=e._zod.bag;if(typeof c==="number")i.minItems=c;if(typeof m==="number")i.maxItems=m},lf=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="object";let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode==="loose"&&s&&s.size>0){let l=P(a.valueType,t,{...r,path:[...r.path,"patternProperties","*"]});i.patternProperties={};for(let c of s)i.patternProperties[c.source]=l}else{if(t.target==="draft-07"||t.target==="draft-2020-12")i.propertyNames=P(a.keyType,t,{...r,path:[...r.path,"propertyNames"]});i.additionalProperties=P(a.valueType,t,{...r,path:[...r.path,"additionalProperties"]})}let d=o._zod.values;if(d){let l=[...d].filter((c)=>typeof c==="string"||typeof c==="number");if(l.length>0)i.required=l}},df=(e,t,n,r)=>{let i=e._zod.def,a=P(i.innerType,t,r),o=t.seen.get(e);if(t.target==="openapi-3.0")o.ref=i.innerType,n.nullable=!0;else n.anyOf=[a,{type:"null"}]},cf=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},mf=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},ff=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);if(a.ref=i.innerType,t.io==="input")n._prefault=JSON.parse(JSON.stringify(i.defaultValue))},pf=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}n.default=o},vf=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has("$ZodTransform"),o=t.io==="input"?a?i.out:i.in:i.out;P(o,t,r);let s=t.seen.get(e);s.ref=o},hf=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},gf=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Qa=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},yf=(e,t,n,r)=>{let i=e._zod.innerType;P(i,t,r);let a=t.seen.get(e);a.ref=i},Dr,iw,_f,kf,Va,qa,eo,to,io,zf=(e,t)=>{Vr.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(n)=>ea(e,n)},flatten:{value:(n)=>qr(e,n)},addIssue:{value:(n)=>{e.issues.push(n),e.message=JSON.stringify(e.issues,Vi,2)}},addIssues:{value:(n)=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,Vi,2)}},isEmpty:{get(){return e.issues.length===0}}})},nw,ae,Uf,Tf,jf,Of,Ef,Nf,Pf,Af,Df,Zf,Cf,Rf,Tu,U,In,$i,C,xn,ii,ke,_i,zn,Un,Tn,jn,On,En,Nn,Pn,no,An,Dn,Zn,Cn,Rn,Ln,Jn,Ot,ki,at,wi,Si,Mn,oo,so,uo,co,mo,fo,po,Bn,vo,xi,zi,ho,go,yo,$o,Ut,wo,So,Tt,Io,xo,zo,Gn,Uo,jo,Oo,No,Xn,Do,Zo,Ro,Ui,Ti,Lo,Jo,Fo,Bo,Ko,Ho,ji,Gp,Xp,Qp=(...e)=>Nm({Codec:Ti,Boolean:wi,String:$i},...e),rw,Zr,b,sw,tv,Yo,iv,nv,rv,av,ov,sv,uv,lv,dv,cv,mv,fv,pv,hw,vv,hv,Cr,Xi,gv,yv,gw,yw,bv,bw,$v,_v,kv,wv,Sv,Qo,Iv,xv,zv,$w,Uv,_w,Tv,jv,Ov,kw,ww,Sw,Ev,Pv,Av,Ow,Ew,Dw,Rv,Zw,Cw,Lv,it,Rw,Lw,Jw,Mw,Fw,Bw,Ww,Kw,Jv,Gw="v1",Xw="v1",Yw="v1",Qw,Mv=30000,qw=5000,Bv,tS,nS="tool_executor.",rS="custom_tool.",aS="hook.",oS="compaction.compact",sS="checkpoint.create",uS="mistake_limit.decide",lS="user_instructions.snapshot",Ue="[media omitted: invalid or exceeds size limit]",qo,gS=5242880,q=5242880,me=6291456,yS=8388608,Rr="ERROR: EMPTY CONTENT",SS="[image attached]",US,Vt,jS=void 0,NS,AS=3,DS,Qe,Du,Zu,RS,BS,Fu=12,Wu,GS,QS,qS,vI=`You are Cline, an AI coding agent. Your primary goal is to assist users with various coding tasks by leveraging your knowledge and the tools at your disposal. Given the user's prompt, you should use the tools available to you to answer user's question.
|
|
40
|
+
Re-record the cassette if the request change is intentional.`)}function U0(e,t){if(!s0(e))process.stderr.write(`[VCR] Cassette file not found: ${e}
|
|
41
|
+
`),process.exit(1);let n=JSON.parse(l0(e,"utf-8")),r=Number.parseInt(process.env.CLINE_VCR_SSE_DELAY??"100",10),i=Array(n.length).fill(!1),a=globalThis.fetch;globalThis.fetch=Object.assign(async(s,d)=>{let l=Th(s),c=jh(s,d),{path:m}=Uh(l),v=Gr(m);if(t&&!m.includes(t))return a(s,d);let p=n.findIndex((g,$)=>{if(i[$])return!1;let E=Gr(g.path);return g.method.toUpperCase()===c&&E===v});if(p>=0){let g=n[p];if(!g)return a(s,d);await z0({recording:g,requestInput:s,requestInit:d,method:c,path:v}),i[p]=!0;let $=typeof g.response==="string"?g.response:JSON.stringify(g.response),E=new Headers;if(g.contentType)E.set("content-type",g.contentType);else if(typeof g.response==="string"&&g.response.trimStart().startsWith("data:"))E.set("content-type","text/event-stream");else if(typeof g.response==="object")E.set("content-type","application/json");let T=E.get("content-type")?.includes("text/event-stream")??!1;if(T)E.set("cache-control","no-cache"),E.set("connection","keep-alive");if(T&&typeof g.response==="string"){let A=I0(g.response);if(A.length>1){let I=x0(A,r);return new Response(I,{status:g.status,headers:E})}}return new Response($,{status:g.status,headers:E})}if(!t)throw Error(`[VCR] No matching recording for ${c} ${l} (path: ${v}). ${n.length} recording(s) loaded from ${e}.`);return a(s,d)},{preconnect:(s)=>{}});let o=t?`(only paths matching "*${t}*", all other requests go through normally)`:"(all requests intercepted)";process.stderr.write(`[VCR] Playing back ${n.length} recorded HTTP interaction(s) from ${e} ${o}
|
|
42
|
+
`)}function T0(e){let t=w0(e);if(!t)return;if(t.mode==="record")S0(t.cassettePath,t.filter,t.includeRequestBody);else U0(t.cassettePath,t.filter)}var nb,rb=(e)=>e,je=(e,t)=>{for(var n in t)nb(e,n,{get:t[n],enumerable:!0,configurable:!0,set:ab.bind(t,n)})},Or,lb,db,tu,el="enterprise.blobUpload",Qi,wb="remote://",zb="remote-config",u,cl,su,ml,fl,Re,ai,qt,j,uu,Qr,hl,Kb=(e)=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(e))return"array";if(e===null)return"null";if(e.then&&typeof e.then==="function"&&e.catch&&typeof e.catch==="function")return"promise";if(typeof Map<"u"&&e instanceof Map)return"map";if(typeof Set<"u"&&e instanceof Set)return"set";if(typeof Date<"u"&&e instanceof Date)return"date";if(typeof File<"u"&&e instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${t}`)}},qi,yl,$l,_l,xl=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Vi,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Vr,re,si=(e)=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Re;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((d)=>ne(d,a,W())));throw Qr(s,i?.callee),s}return o.value},Nr,ui=(e)=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)o=await o;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((d)=>ne(d,a,W())));throw Qr(s,i?.callee),s}return o.value},Pr,li=(e)=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Re;return a.issues.length?{success:!1,error:new(e??Vr)(a.issues.map((o)=>ne(o,i,W())))}:{success:!0,data:a.value}},jl,di=(e)=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)a=await a;return a.issues.length?{success:!1,error:new e(a.issues.map((o)=>ne(o,i,W())))}:{success:!0,data:a.value}},Ol,ta=(e)=>(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return si(e)(t,n,i)},o$,ia=(e)=>(t,n,r)=>{return si(e)(t,n,r)},s$,na=(e)=>async(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return ui(e)(t,n,i)},u$,ra=(e)=>async(t,n,r)=>{return ui(e)(t,n,r)},l$,aa=(e)=>(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return li(e)(t,n,i)},d$,oa=(e)=>(t,n,r)=>{return li(e)(t,n,r)},c$,sa=(e)=>async(t,n,r)=>{let i=r?{...r,direction:"backward"}:{direction:"backward"};return di(e)(t,n,i)},m$,ua=(e)=>async(t,n,r)=>{return di(e)(t,n,r)},f$,Le,El,Nl,Pl,Al,Dl,Zl,Cl,p$,Rl,wt=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)},v$,h$,g$,Ll,y$,b$,Jl,$$,_$,k$="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Fl,Bl,Wl=(e)=>{let t=Te(e??":");return new RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},Kl,Hl,Gl,la,w$,S$,Xl,Yl,Ql="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Vl,id=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},nd,rd,da,ad,od,sd,ud,ld,I$,x$,z$,U$,T$,j$,O$,E$,N$,P$,A$,D$,Z$,C$,R$,L$,J,dd,ca,ma,cd,md,fd,pd,vd,hd,gd,yd,bd,fi,$d,_d,kd,wd,Sd,Id,xd,zd,Ud,Td,z,pi,Z,jd,Od,Ed,Nd,Pd,Ad,Dd,Zd,Cd,Rd,Ld,Jd,Md,Fd,Bd,Wd,Kd,Hd,Gd,Xd,Yd,Vd,qd,tc,ic,va,nc,ha,ga,rc,ac,oc,sc,uc,lc,dc,cc,mc,fc,hc,gc,cn,yc,bc,$c,ya,_c,kc,wc,Sc,Ic,xc,zc,ba,Uc,Tc,jc,Oc,Ec,Nc,Pc,Ac,$a,_a,Dc,Zc,Cc,Rc,Lc,Jc,Mc,ka,J$=()=>{let e={string:{unit:"حرف",verb:"أن يحوي"},file:{unit:"بايت",verb:"أن يحوي"},array:{unit:"عنصر",verb:"أن يحوي"},set:{unit:"عنصر",verb:"أن يحوي"}};function t(i){return e[i]??null}let n={regex:"مدخل",email:"بريد إلكتروني",url:"رابط",emoji:"إيموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاريخ ووقت بمعيار ISO",date:"تاريخ بمعيار ISO",time:"وقت بمعيار ISO",duration:"مدة بمعيار ISO",ipv4:"عنوان IPv4",ipv6:"عنوان IPv6",cidrv4:"مدى عناوين بصيغة IPv4",cidrv6:"مدى عناوين بصيغة IPv6",base64:"نَص بترميز base64-encoded",base64url:"نَص بترميز base64url-encoded",json_string:"نَص على هيئة JSON",e164:"رقم هاتف بمعيار E.164",jwt:"JWT",template_literal:"مدخل"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`مدخلات غير مقبولة: يفترض إدخال instanceof ${i.expected}، ولكن تم إدخال ${s}`;return`مدخلات غير مقبولة: يفترض إدخال ${a}، ولكن تم إدخال ${s}`}case"invalid_value":if(i.values.length===1)return`مدخلات غير مقبولة: يفترض إدخال ${k(i.values[0])}`;return`اختيار غير مقبول: يتوقع انتقاء أحد هذه الخيارات: ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return` أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${a} ${i.maximum.toString()} ${o.unit??"عنصر"}`;return`أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${a} ${i.minimum.toString()} ${o.unit}`;return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`نَص غير مقبول: يجب أن يبدأ بـ "${i.prefix}"`;if(a.format==="ends_with")return`نَص غير مقبول: يجب أن ينتهي بـ "${a.suffix}"`;if(a.format==="includes")return`نَص غير مقبول: يجب أن يتضمَّن "${a.includes}"`;if(a.format==="regex")return`نَص غير مقبول: يجب أن يطابق النمط ${a.pattern}`;return`${n[a.format]??i.format} غير مقبول`}case"not_multiple_of":return`رقم غير مقبول: يجب أن يكون من مضاعفات ${i.divisor}`;case"unrecognized_keys":return`معرف${i.keys.length>1?"ات":""} غريب${i.keys.length>1?"ة":""}: ${h(i.keys,"، ")}`;case"invalid_key":return`معرف غير مقبول في ${i.origin}`;case"invalid_union":return"مدخل غير مقبول";case"invalid_element":return`مدخل غير مقبول في ${i.origin}`;default:return"مدخل غير مقبول"}}},F$=()=>{let e={string:{unit:"simvol",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"element",verb:"olmalıdır"},set:{unit:"element",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Yanlış dəyər: gözlənilən instanceof ${i.expected}, daxil olan ${s}`;return`Yanlış dəyər: gözlənilən ${a}, daxil olan ${s}`}case"invalid_value":if(i.values.length===1)return`Yanlış dəyər: gözlənilən ${k(i.values[0])}`;return`Yanlış seçim: aşağıdakılardan biri olmalıdır: ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${a}${i.maximum.toString()} ${o.unit??"element"}`;return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çox kiçik: gözlənilən ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`Çox kiçik: gözlənilən ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Yanlış mətn: "${a.prefix}" ilə başlamalıdır`;if(a.format==="ends_with")return`Yanlış mətn: "${a.suffix}" ilə bitməlidir`;if(a.format==="includes")return`Yanlış mətn: "${a.includes}" daxil olmalıdır`;if(a.format==="regex")return`Yanlış mətn: ${a.pattern} şablonuna uyğun olmalıdır`;return`Yanlış ${n[a.format]??i.format}`}case"not_multiple_of":return`Yanlış ədəd: ${i.divisor} ilə bölünə bilən olmalıdır`;case"unrecognized_keys":return`Tanınmayan açar${i.keys.length>1?"lar":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} daxilində yanlış açar`;case"invalid_union":return"Yanlış dəyər";case"invalid_element":return`${i.origin} daxilində yanlış dəyər`;default:return"Yanlış dəyər"}}},W$=()=>{let e={string:{unit:{one:"сімвал",few:"сімвалы",many:"сімвалаў"},verb:"мець"},array:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},set:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},file:{unit:{one:"байт",few:"байты",many:"байтаў"},verb:"мець"}};function t(i){return e[i]??null}let n={regex:"увод",email:"email адрас",url:"URL",emoji:"эмодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата і час",date:"ISO дата",time:"ISO час",duration:"ISO працягласць",ipv4:"IPv4 адрас",ipv6:"IPv6 адрас",cidrv4:"IPv4 дыяпазон",cidrv6:"IPv6 дыяпазон",base64:"радок у фармаце base64",base64url:"радок у фармаце base64url",json_string:"JSON радок",e164:"нумар E.164",jwt:"JWT",template_literal:"увод"},r={nan:"NaN",number:"лік",array:"масіў"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Няправільны ўвод: чакаўся instanceof ${i.expected}, атрымана ${s}`;return`Няправільны ўвод: чакаўся ${a}, атрымана ${s}`}case"invalid_value":if(i.values.length===1)return`Няправільны ўвод: чакалася ${k(i.values[0])}`;return`Няправільны варыянт: чакаўся адзін з ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=Su(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна ${o.verb} ${a}${i.maximum.toString()} ${d}`}return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна быць ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=Su(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта малы: чакалася, што ${i.origin} павінна ${o.verb} ${a}${i.minimum.toString()} ${d}`}return`Занадта малы: чакалася, што ${i.origin} павінна быць ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Няправільны радок: павінен пачынацца з "${a.prefix}"`;if(a.format==="ends_with")return`Няправільны радок: павінен заканчвацца на "${a.suffix}"`;if(a.format==="includes")return`Няправільны радок: павінен змяшчаць "${a.includes}"`;if(a.format==="regex")return`Няправільны радок: павінен адпавядаць шаблону ${a.pattern}`;return`Няправільны ${n[a.format]??i.format}`}case"not_multiple_of":return`Няправільны лік: павінен быць кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспазнаны ${i.keys.length>1?"ключы":"ключ"}: ${h(i.keys,", ")}`;case"invalid_key":return`Няправільны ключ у ${i.origin}`;case"invalid_union":return"Няправільны ўвод";case"invalid_element":return`Няправільнае значэнне ў ${i.origin}`;default:return"Няправільны ўвод"}}},H$=()=>{let e={string:{unit:"символа",verb:"да съдържа"},file:{unit:"байта",verb:"да съдържа"},array:{unit:"елемента",verb:"да съдържа"},set:{unit:"елемента",verb:"да съдържа"}};function t(i){return e[i]??null}let n={regex:"вход",email:"имейл адрес",url:"URL",emoji:"емоджи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO време",date:"ISO дата",time:"ISO време",duration:"ISO продължителност",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"base64-кодиран низ",base64url:"base64url-кодиран низ",json_string:"JSON низ",e164:"E.164 номер",jwt:"JWT",template_literal:"вход"},r={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Невалиден вход: очакван instanceof ${i.expected}, получен ${s}`;return`Невалиден вход: очакван ${a}, получен ${s}`}case"invalid_value":if(i.values.length===1)return`Невалиден вход: очакван ${k(i.values[0])}`;return`Невалидна опция: очаквано едно от ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Твърде голямо: очаква се ${i.origin??"стойност"} да съдържа ${a}${i.maximum.toString()} ${o.unit??"елемента"}`;return`Твърде голямо: очаква се ${i.origin??"стойност"} да бъде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Твърде малко: очаква се ${i.origin} да съдържа ${a}${i.minimum.toString()} ${o.unit}`;return`Твърде малко: очаква се ${i.origin} да бъде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Невалиден низ: трябва да започва с "${a.prefix}"`;if(a.format==="ends_with")return`Невалиден низ: трябва да завършва с "${a.suffix}"`;if(a.format==="includes")return`Невалиден низ: трябва да включва "${a.includes}"`;if(a.format==="regex")return`Невалиден низ: трябва да съвпада с ${a.pattern}`;let o="Невалиден";if(a.format==="emoji")o="Невалидно";if(a.format==="datetime")o="Невалидно";if(a.format==="date")o="Невалидна";if(a.format==="time")o="Невалидно";if(a.format==="duration")o="Невалидна";return`${o} ${n[a.format]??i.format}`}case"not_multiple_of":return`Невалидно число: трябва да бъде кратно на ${i.divisor}`;case"unrecognized_keys":return`Неразпознат${i.keys.length>1?"и":""} ключ${i.keys.length>1?"ове":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Невалиден ключ в ${i.origin}`;case"invalid_union":return"Невалиден вход";case"invalid_element":return`Невалидна стойност в ${i.origin}`;default:return"Невалиден вход"}}},X$=()=>{let e={string:{unit:"caràcters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"adreça electrònica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adreça IPv4",ipv6:"adreça IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipus invàlid: s'esperava instanceof ${i.expected}, s'ha rebut ${s}`;return`Tipus invàlid: s'esperava ${a}, s'ha rebut ${s}`}case"invalid_value":if(i.values.length===1)return`Valor invàlid: s'esperava ${k(i.values[0])}`;return`Opció invàlida: s'esperava una de ${h(i.values," o ")}`;case"too_big":{let a=i.inclusive?"com a màxim":"menys de",o=t(i.origin);if(o)return`Massa gran: s'esperava que ${i.origin??"el valor"} contingués ${a} ${i.maximum.toString()} ${o.unit??"elements"}`;return`Massa gran: s'esperava que ${i.origin??"el valor"} fos ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"com a mínim":"més de",o=t(i.origin);if(o)return`Massa petit: s'esperava que ${i.origin} contingués ${a} ${i.minimum.toString()} ${o.unit}`;return`Massa petit: s'esperava que ${i.origin} fos ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Format invàlid: ha de començar amb "${a.prefix}"`;if(a.format==="ends_with")return`Format invàlid: ha d'acabar amb "${a.suffix}"`;if(a.format==="includes")return`Format invàlid: ha d'incloure "${a.includes}"`;if(a.format==="regex")return`Format invàlid: ha de coincidir amb el patró ${a.pattern}`;return`Format invàlid per a ${n[a.format]??i.format}`}case"not_multiple_of":return`Número invàlid: ha de ser múltiple de ${i.divisor}`;case"unrecognized_keys":return`Clau${i.keys.length>1?"s":""} no reconeguda${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Clau invàlida a ${i.origin}`;case"invalid_union":return"Entrada invàlida";case"invalid_element":return`Element invàlid a ${i.origin}`;default:return"Entrada invàlida"}}},Q$=()=>{let e={string:{unit:"znaků",verb:"mít"},file:{unit:"bajtů",verb:"mít"},array:{unit:"prvků",verb:"mít"},set:{unit:"prvků",verb:"mít"}};function t(i){return e[i]??null}let n={regex:"regulární výraz",email:"e-mailová adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a čas ve formátu ISO",date:"datum ve formátu ISO",time:"čas ve formátu ISO",duration:"doba trvání ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"řetězec zakódovaný ve formátu base64",base64url:"řetězec zakódovaný ve formátu base64url",json_string:"řetězec ve formátu JSON",e164:"číslo E.164",jwt:"JWT",template_literal:"vstup"},r={nan:"NaN",number:"číslo",string:"řetězec",function:"funkce",array:"pole"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neplatný vstup: očekáváno instanceof ${i.expected}, obdrženo ${s}`;return`Neplatný vstup: očekáváno ${a}, obdrženo ${s}`}case"invalid_value":if(i.values.length===1)return`Neplatný vstup: očekáváno ${k(i.values[0])}`;return`Neplatná možnost: očekávána jedna z hodnot ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí mít ${a}${i.maximum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí být ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí mít ${a}${i.minimum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí být ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neplatný řetězec: musí začínat na "${a.prefix}"`;if(a.format==="ends_with")return`Neplatný řetězec: musí končit na "${a.suffix}"`;if(a.format==="includes")return`Neplatný řetězec: musí obsahovat "${a.includes}"`;if(a.format==="regex")return`Neplatný řetězec: musí odpovídat vzoru ${a.pattern}`;return`Neplatný formát ${n[a.format]??i.format}`}case"not_multiple_of":return`Neplatné číslo: musí být násobkem ${i.divisor}`;case"unrecognized_keys":return`Neznámé klíče: ${h(i.keys,", ")}`;case"invalid_key":return`Neplatný klíč v ${i.origin}`;case"invalid_union":return"Neplatný vstup";case"invalid_element":return`Neplatná hodnota v ${i.origin}`;default:return"Neplatný vstup"}}},q$=()=>{let e={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslæt",date:"ISO-dato",time:"ISO-klokkeslæt",duration:"ISO-varighed",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},r={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"sæt",file:"fil"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldigt input: forventede instanceof ${i.expected}, fik ${s}`;return`Ugyldigt input: forventede ${a}, fik ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig værdi: forventede ${k(i.values[0])}`;return`Ugyldigt valg: forventede en af følgende ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`For stor: forventede ${s??"value"} ${o.verb} ${a} ${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor: forventede ${s??"value"} havde ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`For lille: forventede ${s} ${o.verb} ${a} ${i.minimum.toString()} ${o.unit}`;return`For lille: forventede ${s} havde ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ugyldig streng: skal starte med "${a.prefix}"`;if(a.format==="ends_with")return`Ugyldig streng: skal ende med "${a.suffix}"`;if(a.format==="includes")return`Ugyldig streng: skal indeholde "${a.includes}"`;if(a.format==="regex")return`Ugyldig streng: skal matche mønsteret ${a.pattern}`;return`Ugyldig ${n[a.format]??i.format}`}case"not_multiple_of":return`Ugyldigt tal: skal være deleligt med ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukendte nøgler":"Ukendt nøgle"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøgle i ${i.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig værdi i ${i.origin}`;default:return"Ugyldigt input"}}},t_=()=>{let e={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function t(i){return e[i]??null}let n={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},r={nan:"NaN",number:"Zahl",array:"Array"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ungültige Eingabe: erwartet instanceof ${i.expected}, erhalten ${s}`;return`Ungültige Eingabe: erwartet ${a}, erhalten ${s}`}case"invalid_value":if(i.values.length===1)return`Ungültige Eingabe: erwartet ${k(i.values[0])}`;return`Ungültige Option: erwartet eine von ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${a}${i.maximum.toString()} ${o.unit??"Elemente"} hat`;return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${a}${i.maximum.toString()} ist`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Zu klein: erwartet, dass ${i.origin} ${a}${i.minimum.toString()} ${o.unit} hat`;return`Zu klein: erwartet, dass ${i.origin} ${a}${i.minimum.toString()} ist`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ungültiger String: muss mit "${a.prefix}" beginnen`;if(a.format==="ends_with")return`Ungültiger String: muss mit "${a.suffix}" enden`;if(a.format==="includes")return`Ungültiger String: muss "${a.includes}" enthalten`;if(a.format==="regex")return`Ungültiger String: muss dem Muster ${a.pattern} entsprechen`;return`Ungültig: ${n[a.format]??i.format}`}case"not_multiple_of":return`Ungültige Zahl: muss ein Vielfaches von ${i.divisor} sein`;case"unrecognized_keys":return`${i.keys.length>1?"Unbekannte Schlüssel":"Unbekannter Schlüssel"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ungültiger Schlüssel in ${i.origin}`;case"invalid_union":return"Ungültige Eingabe";case"invalid_element":return`Ungültiger Wert in ${i.origin}`;default:return"Ungültige Eingabe"}}},n_=()=>{let e={string:{unit:"χαρακτήρες",verb:"να έχει"},file:{unit:"bytes",verb:"να έχει"},array:{unit:"στοιχεία",verb:"να έχει"},set:{unit:"στοιχεία",verb:"να έχει"},map:{unit:"καταχωρήσεις",verb:"να έχει"}};function t(i){return e[i]??null}let n={regex:"είσοδος",email:"διεύθυνση email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ημερομηνία και ώρα",date:"ISO ημερομηνία",time:"ISO ώρα",duration:"ISO διάρκεια",ipv4:"διεύθυνση IPv4",ipv6:"διεύθυνση IPv6",mac:"διεύθυνση MAC",cidrv4:"εύρος IPv4",cidrv6:"εύρος IPv6",base64:"συμβολοσειρά κωδικοποιημένη σε base64",base64url:"συμβολοσειρά κωδικοποιημένη σε base64url",json_string:"συμβολοσειρά JSON",e164:"αριθμός E.164",jwt:"JWT",template_literal:"είσοδος"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(typeof i.expected==="string"&&/^[A-Z]/.test(i.expected))return`Μη έγκυρη είσοδος: αναμενόταν instanceof ${i.expected}, λήφθηκε ${s}`;return`Μη έγκυρη είσοδος: αναμενόταν ${a}, λήφθηκε ${s}`}case"invalid_value":if(i.values.length===1)return`Μη έγκυρη είσοδος: αναμενόταν ${k(i.values[0])}`;return`Μη έγκυρη επιλογή: αναμενόταν ένα από ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να έχει ${a}${i.maximum.toString()} ${o.unit??"στοιχεία"}`;return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να είναι ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Πολύ μικρό: αναμενόταν ${i.origin} να έχει ${a}${i.minimum.toString()} ${o.unit}`;return`Πολύ μικρό: αναμενόταν ${i.origin} να είναι ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να ξεκινά με "${a.prefix}"`;if(a.format==="ends_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να τελειώνει με "${a.suffix}"`;if(a.format==="includes")return`Μη έγκυρη συμβολοσειρά: πρέπει να περιέχει "${a.includes}"`;if(a.format==="regex")return`Μη έγκυρη συμβολοσειρά: πρέπει να ταιριάζει με το μοτίβο ${a.pattern}`;return`Μη έγκυρο: ${n[a.format]??i.format}`}case"not_multiple_of":return`Μη έγκυρος αριθμός: πρέπει να είναι πολλαπλάσιο του ${i.divisor}`;case"unrecognized_keys":return`Άγνωστ${i.keys.length>1?"α":"ο"} κλειδ${i.keys.length>1?"ιά":"ί"}: ${h(i.keys,", ")}`;case"invalid_key":return`Μη έγκυρο κλειδί στο ${i.origin}`;case"invalid_union":return"Μη έγκυρη είσοδος";case"invalid_element":return`Μη έγκυρη τιμή στο ${i.origin}`;default:return"Μη έγκυρη είσοδος"}}},a_=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;return`Invalid input: expected ${a}, received ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${k(i.values[0])}`;return`Invalid option: expected one of ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Too big: expected ${i.origin??"value"} to have ${a}${i.maximum.toString()} ${o.unit??"elements"}`;return`Too big: expected ${i.origin??"value"} to be ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Too small: expected ${i.origin} to have ${a}${i.minimum.toString()} ${o.unit}`;return`Too small: expected ${i.origin} to be ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Invalid string: must start with "${a.prefix}"`;if(a.format==="ends_with")return`Invalid string: must end with "${a.suffix}"`;if(a.format==="includes")return`Invalid string: must include "${a.includes}"`;if(a.format==="regex")return`Invalid string: must match pattern ${a.pattern}`;return`Invalid ${n[a.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":if(i.options&&Array.isArray(i.options)&&i.options.length>0)return`Invalid discriminator value. Expected ${i.options.map((a)=>`'${a}'`).join(" | ")}`;return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}},o_=()=>{let e={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function t(i){return e[i]??null}let n={regex:"enigo",email:"retadreso",url:"URL",emoji:"emoĝio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-daŭro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},r={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Nevalida enigo: atendiĝis instanceof ${i.expected}, riceviĝis ${s}`;return`Nevalida enigo: atendiĝis ${a}, riceviĝis ${s}`}case"invalid_value":if(i.values.length===1)return`Nevalida enigo: atendiĝis ${k(i.values[0])}`;return`Nevalida opcio: atendiĝis unu el ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${a}${i.maximum.toString()} ${o.unit??"elementojn"}`;return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Tro malgranda: atendiĝis ke ${i.origin} havu ${a}${i.minimum.toString()} ${o.unit}`;return`Tro malgranda: atendiĝis ke ${i.origin} estu ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Nevalida karaktraro: devas komenciĝi per "${a.prefix}"`;if(a.format==="ends_with")return`Nevalida karaktraro: devas finiĝi per "${a.suffix}"`;if(a.format==="includes")return`Nevalida karaktraro: devas inkluzivi "${a.includes}"`;if(a.format==="regex")return`Nevalida karaktraro: devas kongrui kun la modelo ${a.pattern}`;return`Nevalida ${n[a.format]??i.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${i.divisor}`;case"unrecognized_keys":return`Nekonata${i.keys.length>1?"j":""} ŝlosilo${i.keys.length>1?"j":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Nevalida ŝlosilo en ${i.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${i.origin}`;default:return"Nevalida enigo"}}},u_=()=>{let e={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"dirección de correo electrónico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duración ISO",ipv4:"dirección IPv4",ipv6:"dirección IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN",string:"texto",number:"número",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"número grande",symbol:"símbolo",undefined:"indefinido",null:"nulo",function:"función",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeración",union:"unión",literal:"literal",promise:"promesa",void:"vacío",never:"nunca",unknown:"desconocido",any:"cualquiera"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrada inválida: se esperaba instanceof ${i.expected}, recibido ${s}`;return`Entrada inválida: se esperaba ${a}, recibido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: se esperaba ${k(i.values[0])}`;return`Opción inválida: se esperaba una de ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Demasiado grande: se esperaba que ${s??"valor"} tuviera ${a}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Demasiado grande: se esperaba que ${s??"valor"} fuera ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Demasiado pequeño: se esperaba que ${s} tuviera ${a}${i.minimum.toString()} ${o.unit}`;return`Demasiado pequeño: se esperaba que ${s} fuera ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Cadena inválida: debe comenzar con "${a.prefix}"`;if(a.format==="ends_with")return`Cadena inválida: debe terminar en "${a.suffix}"`;if(a.format==="includes")return`Cadena inválida: debe incluir "${a.includes}"`;if(a.format==="regex")return`Cadena inválida: debe coincidir con el patrón ${a.pattern}`;return`Inválido ${n[a.format]??i.format}`}case"not_multiple_of":return`Número inválido: debe ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Llave${i.keys.length>1?"s":""} desconocida${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Llave inválida en ${r[i.origin]??i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido en ${r[i.origin]??i.origin}`;default:return"Entrada inválida"}}},d_=()=>{let e={string:{unit:"کاراکتر",verb:"داشته باشد"},file:{unit:"بایت",verb:"داشته باشد"},array:{unit:"آیتم",verb:"داشته باشد"},set:{unit:"آیتم",verb:"داشته باشد"}};function t(i){return e[i]??null}let n={regex:"ورودی",email:"آدرس ایمیل",url:"URL",emoji:"ایموجی",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاریخ و زمان ایزو",date:"تاریخ ایزو",time:"زمان ایزو",duration:"مدت زمان ایزو",ipv4:"IPv4 آدرس",ipv6:"IPv6 آدرس",cidrv4:"IPv4 دامنه",cidrv6:"IPv6 دامنه",base64:"base64-encoded رشته",base64url:"base64url-encoded رشته",json_string:"JSON رشته",e164:"E.164 عدد",jwt:"JWT",template_literal:"ورودی"},r={nan:"NaN",number:"عدد",array:"آرایه"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ورودی نامعتبر: میبایست instanceof ${i.expected} میبود، ${s} دریافت شد`;return`ورودی نامعتبر: میبایست ${a} میبود، ${s} دریافت شد`}case"invalid_value":if(i.values.length===1)return`ورودی نامعتبر: میبایست ${k(i.values[0])} میبود`;return`گزینه نامعتبر: میبایست یکی از ${h(i.values,"|")} میبود`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${a}${i.maximum.toString()} ${o.unit??"عنصر"} باشد`;return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${a}${i.maximum.toString()} باشد`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`خیلی کوچک: ${i.origin} باید ${a}${i.minimum.toString()} ${o.unit} باشد`;return`خیلی کوچک: ${i.origin} باید ${a}${i.minimum.toString()} باشد`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`رشته نامعتبر: باید با "${a.prefix}" شروع شود`;if(a.format==="ends_with")return`رشته نامعتبر: باید با "${a.suffix}" تمام شود`;if(a.format==="includes")return`رشته نامعتبر: باید شامل "${a.includes}" باشد`;if(a.format==="regex")return`رشته نامعتبر: باید با الگوی ${a.pattern} مطابقت داشته باشد`;return`${n[a.format]??i.format} نامعتبر`}case"not_multiple_of":return`عدد نامعتبر: باید مضرب ${i.divisor} باشد`;case"unrecognized_keys":return`کلید${i.keys.length>1?"های":""} ناشناس: ${h(i.keys,", ")}`;case"invalid_key":return`کلید ناشناس در ${i.origin}`;case"invalid_union":return"ورودی نامعتبر";case"invalid_element":return`مقدار نامعتبر در ${i.origin}`;default:return"ورودی نامعتبر"}}},m_=()=>{let e={string:{unit:"merkkiä",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"päivämäärän"}};function t(i){return e[i]??null}let n={regex:"säännöllinen lauseke",email:"sähköpostiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-päivämäärä",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Virheellinen tyyppi: odotettiin instanceof ${i.expected}, oli ${s}`;return`Virheellinen tyyppi: odotettiin ${a}, oli ${s}`}case"invalid_value":if(i.values.length===1)return`Virheellinen syöte: täytyy olla ${k(i.values[0])}`;return`Virheellinen valinta: täytyy olla yksi seuraavista: ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Liian suuri: ${o.subject} täytyy olla ${a}${i.maximum.toString()} ${o.unit}`.trim();return`Liian suuri: arvon täytyy olla ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Liian pieni: ${o.subject} täytyy olla ${a}${i.minimum.toString()} ${o.unit}`.trim();return`Liian pieni: arvon täytyy olla ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Virheellinen syöte: täytyy alkaa "${a.prefix}"`;if(a.format==="ends_with")return`Virheellinen syöte: täytyy loppua "${a.suffix}"`;if(a.format==="includes")return`Virheellinen syöte: täytyy sisältää "${a.includes}"`;if(a.format==="regex")return`Virheellinen syöte: täytyy vastata säännöllistä lauseketta ${a.pattern}`;return`Virheellinen ${n[a.format]??i.format}`}case"not_multiple_of":return`Virheellinen luku: täytyy olla luvun ${i.divisor} monikerta`;case"unrecognized_keys":return`${i.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${h(i.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen syöte"}}},p_=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},r={string:"chaîne",number:"nombre",int:"entier",boolean:"booléen",bigint:"grand entier",symbol:"symbole",undefined:"indéfini",null:"null",never:"jamais",void:"vide",date:"date",array:"tableau",object:"objet",tuple:"tuple",record:"enregistrement",map:"carte",set:"ensemble",file:"fichier",nonoptional:"non-optionnel",nan:"NaN",function:"fonction"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : instanceof ${i.expected} attendu, ${s} reçu`;return`Entrée invalide : ${a} attendu, ${s} reçu`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : ${k(i.values[0])} attendu`;return`Option invalide : une valeur parmi ${h(i.values,"|")} attendue`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Trop grand : ${r[i.origin]??"valeur"} doit ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"élément(s)"}`;return`Trop grand : ${r[i.origin]??"valeur"} doit être ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Trop petit : ${r[i.origin]??"valeur"} doit ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Trop petit : ${r[i.origin]??"valeur"} doit être ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chaîne invalide : doit commencer par "${a.prefix}"`;if(a.format==="ends_with")return`Chaîne invalide : doit se terminer par "${a.suffix}"`;if(a.format==="includes")return`Chaîne invalide : doit inclure "${a.includes}"`;if(a.format==="regex")return`Chaîne invalide : doit correspondre au modèle ${a.pattern}`;return`${n[a.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${h(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},h_=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : attendu instanceof ${i.expected}, reçu ${s}`;return`Entrée invalide : attendu ${a}, reçu ${s}`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : attendu ${k(i.values[0])}`;return`Option invalide : attendu l'une des valeurs suivantes ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"≤":"<",o=t(i.origin);if(o)return`Trop grand : attendu que ${i.origin??"la valeur"} ait ${a}${i.maximum.toString()} ${o.unit}`;return`Trop grand : attendu que ${i.origin??"la valeur"} soit ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"≥":">",o=t(i.origin);if(o)return`Trop petit : attendu que ${i.origin} ait ${a}${i.minimum.toString()} ${o.unit}`;return`Trop petit : attendu que ${i.origin} soit ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chaîne invalide : doit commencer par "${a.prefix}"`;if(a.format==="ends_with")return`Chaîne invalide : doit se terminer par "${a.suffix}"`;if(a.format==="includes")return`Chaîne invalide : doit inclure "${a.includes}"`;if(a.format==="regex")return`Chaîne invalide : doit correspondre au motif ${a.pattern}`;return`${n[a.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${h(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},y_=()=>{let e={string:{label:"מחרוזת",gender:"f"},number:{label:"מספר",gender:"m"},boolean:{label:"ערך בוליאני",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"תאריך",gender:"m"},array:{label:"מערך",gender:"m"},object:{label:"אובייקט",gender:"m"},null:{label:"ערך ריק (null)",gender:"m"},undefined:{label:"ערך לא מוגדר (undefined)",gender:"m"},symbol:{label:"סימבול (Symbol)",gender:"m"},function:{label:"פונקציה",gender:"f"},map:{label:"מפה (Map)",gender:"f"},set:{label:"קבוצה (Set)",gender:"f"},file:{label:"קובץ",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"ערך לא ידוע",gender:"m"},value:{label:"ערך",gender:"m"}},t={string:{unit:"תווים",shortLabel:"קצר",longLabel:"ארוך"},file:{unit:"בייטים",shortLabel:"קטן",longLabel:"גדול"},array:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},set:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},number:{unit:"",shortLabel:"קטן",longLabel:"גדול"}},n=(l)=>l?e[l]:void 0,r=(l)=>{let c=n(l);if(c)return c.label;return l??e.unknown.label},i=(l)=>`ה${r(l)}`,a=(l)=>{return(n(l)?.gender??"m")==="f"?"צריכה להיות":"צריך להיות"},o=(l)=>{if(!l)return null;return t[l]??null},s={regex:{label:"קלט",gender:"m"},email:{label:"כתובת אימייל",gender:"f"},url:{label:"כתובת רשת",gender:"f"},emoji:{label:"אימוג'י",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"תאריך וזמן ISO",gender:"m"},date:{label:"תאריך ISO",gender:"m"},time:{label:"זמן ISO",gender:"m"},duration:{label:"משך זמן ISO",gender:"m"},ipv4:{label:"כתובת IPv4",gender:"f"},ipv6:{label:"כתובת IPv6",gender:"f"},cidrv4:{label:"טווח IPv4",gender:"m"},cidrv6:{label:"טווח IPv6",gender:"m"},base64:{label:"מחרוזת בבסיס 64",gender:"f"},base64url:{label:"מחרוזת בבסיס 64 לכתובות רשת",gender:"f"},json_string:{label:"מחרוזת JSON",gender:"f"},e164:{label:"מספר E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"קלט",gender:"m"},includes:{label:"קלט",gender:"m"},lowercase:{label:"קלט",gender:"m"},starts_with:{label:"קלט",gender:"m"},uppercase:{label:"קלט",gender:"m"}},d={nan:"NaN"};return(l)=>{switch(l.code){case"invalid_type":{let c=l.expected,m=d[c??""]??r(c),v=S(l.input),p=d[v]??e[v]?.label??v;if(/^[A-Z]/.test(l.expected))return`קלט לא תקין: צריך להיות instanceof ${l.expected}, התקבל ${p}`;return`קלט לא תקין: צריך להיות ${m}, התקבל ${p}`}case"invalid_value":{if(l.values.length===1)return`ערך לא תקין: הערך חייב להיות ${k(l.values[0])}`;let c=l.values.map((v)=>k(v));if(l.values.length===2)return`ערך לא תקין: האפשרויות המתאימות הן ${c[0]} או ${c[1]}`;let m=c[c.length-1];return`ערך לא תקין: האפשרויות המתאימות הן ${c.slice(0,-1).join(", ")} או ${m}`}case"too_big":{let c=o(l.origin),m=i(l.origin??"value");if(l.origin==="string")return`${c?.longLabel??"ארוך"} מדי: ${m} צריכה להכיל ${l.maximum.toString()} ${c?.unit??""} ${l.inclusive?"או פחות":"לכל היותר"}`.trim();if(l.origin==="number"){let g=l.inclusive?`קטן או שווה ל-${l.maximum}`:`קטן מ-${l.maximum}`;return`גדול מדי: ${m} צריך להיות ${g}`}if(l.origin==="array"||l.origin==="set"){let g=l.origin==="set"?"צריכה":"צריך",$=l.inclusive?`${l.maximum} ${c?.unit??""} או פחות`:`פחות מ-${l.maximum} ${c?.unit??""}`;return`גדול מדי: ${m} ${g} להכיל ${$}`.trim()}let v=l.inclusive?"<=":"<",p=a(l.origin??"value");if(c?.unit)return`${c.longLabel} מדי: ${m} ${p} ${v}${l.maximum.toString()} ${c.unit}`;return`${c?.longLabel??"גדול"} מדי: ${m} ${p} ${v}${l.maximum.toString()}`}case"too_small":{let c=o(l.origin),m=i(l.origin??"value");if(l.origin==="string")return`${c?.shortLabel??"קצר"} מדי: ${m} צריכה להכיל ${l.minimum.toString()} ${c?.unit??""} ${l.inclusive?"או יותר":"לפחות"}`.trim();if(l.origin==="number"){let g=l.inclusive?`גדול או שווה ל-${l.minimum}`:`גדול מ-${l.minimum}`;return`קטן מדי: ${m} צריך להיות ${g}`}if(l.origin==="array"||l.origin==="set"){let g=l.origin==="set"?"צריכה":"צריך";if(l.minimum===1&&l.inclusive){let E=l.origin==="set"?"לפחות פריט אחד":"לפחות פריט אחד";return`קטן מדי: ${m} ${g} להכיל ${E}`}let $=l.inclusive?`${l.minimum} ${c?.unit??""} או יותר`:`יותר מ-${l.minimum} ${c?.unit??""}`;return`קטן מדי: ${m} ${g} להכיל ${$}`.trim()}let v=l.inclusive?">=":">",p=a(l.origin??"value");if(c?.unit)return`${c.shortLabel} מדי: ${m} ${p} ${v}${l.minimum.toString()} ${c.unit}`;return`${c?.shortLabel??"קטן"} מדי: ${m} ${p} ${v}${l.minimum.toString()}`}case"invalid_format":{let c=l;if(c.format==="starts_with")return`המחרוזת חייבת להתחיל ב "${c.prefix}"`;if(c.format==="ends_with")return`המחרוזת חייבת להסתיים ב "${c.suffix}"`;if(c.format==="includes")return`המחרוזת חייבת לכלול "${c.includes}"`;if(c.format==="regex")return`המחרוזת חייבת להתאים לתבנית ${c.pattern}`;let m=s[c.format],v=m?.label??c.format,p=(m?.gender??"m")==="f"?"תקינה":"תקין";return`${v} לא ${p}`}case"not_multiple_of":return`מספר לא תקין: חייב להיות מכפלה של ${l.divisor}`;case"unrecognized_keys":return`מפתח${l.keys.length>1?"ות":""} לא מזוה${l.keys.length>1?"ים":"ה"}: ${h(l.keys,", ")}`;case"invalid_key":return"שדה לא תקין באובייקט";case"invalid_union":return"קלט לא תקין";case"invalid_element":return`ערך לא תקין ב${i(l.origin??"array")}`;default:return"קלט לא תקין"}}},$_=()=>{let e={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function t(i){return e[i]??null}let n={regex:"unos",email:"email adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum i vrijeme",date:"ISO datum",time:"ISO vrijeme",duration:"ISO trajanje",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"IPv4 raspon",cidrv6:"IPv6 raspon",base64:"base64 kodirani tekst",base64url:"base64url kodirani tekst",json_string:"JSON tekst",e164:"E.164 broj",jwt:"JWT",template_literal:"unos"},r={nan:"NaN",string:"tekst",number:"broj",boolean:"boolean",array:"niz",object:"objekt",set:"skup",file:"datoteka",date:"datum",bigint:"bigint",symbol:"simbol",undefined:"undefined",null:"null",function:"funkcija",map:"mapa"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neispravan unos: očekuje se instanceof ${i.expected}, a primljeno je ${s}`;return`Neispravan unos: očekuje se ${a}, a primljeno je ${s}`}case"invalid_value":if(i.values.length===1)return`Neispravna vrijednost: očekivano ${k(i.values[0])}`;return`Neispravna opcija: očekivano jedno od ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Preveliko: očekivano da ${s??"vrijednost"} ima ${a}${i.maximum.toString()} ${o.unit??"elemenata"}`;return`Preveliko: očekivano da ${s??"vrijednost"} bude ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=r[i.origin]??i.origin;if(o)return`Premalo: očekivano da ${s} ima ${a}${i.minimum.toString()} ${o.unit}`;return`Premalo: očekivano da ${s} bude ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neispravan tekst: mora započinjati s "${a.prefix}"`;if(a.format==="ends_with")return`Neispravan tekst: mora završavati s "${a.suffix}"`;if(a.format==="includes")return`Neispravan tekst: mora sadržavati "${a.includes}"`;if(a.format==="regex")return`Neispravan tekst: mora odgovarati uzorku ${a.pattern}`;return`Neispravna ${n[a.format]??i.format}`}case"not_multiple_of":return`Neispravan broj: mora biti višekratnik od ${i.divisor}`;case"unrecognized_keys":return`Neprepoznat${i.keys.length>1?"i ključevi":" ključ"}: ${h(i.keys,", ")}`;case"invalid_key":return`Neispravan ključ u ${r[i.origin]??i.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${r[i.origin]??i.origin}`;default:return"Neispravan unos"}}},k_=()=>{let e={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function t(i){return e[i]??null}let n={regex:"bemenet",email:"email cím",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO időbélyeg",date:"ISO dátum",time:"ISO idő",duration:"ISO időintervallum",ipv4:"IPv4 cím",ipv6:"IPv6 cím",cidrv4:"IPv4 tartomány",cidrv6:"IPv6 tartomány",base64:"base64-kódolt string",base64url:"base64url-kódolt string",json_string:"JSON string",e164:"E.164 szám",jwt:"JWT",template_literal:"bemenet"},r={nan:"NaN",number:"szám",array:"tömb"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Érvénytelen bemenet: a várt érték instanceof ${i.expected}, a kapott érték ${s}`;return`Érvénytelen bemenet: a várt érték ${a}, a kapott érték ${s}`}case"invalid_value":if(i.values.length===1)return`Érvénytelen bemenet: a várt érték ${k(i.values[0])}`;return`Érvénytelen opció: valamelyik érték várt ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Túl nagy: ${i.origin??"érték"} mérete túl nagy ${a}${i.maximum.toString()} ${o.unit??"elem"}`;return`Túl nagy: a bemeneti érték ${i.origin??"érték"} túl nagy: ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Túl kicsi: a bemeneti érték ${i.origin} mérete túl kicsi ${a}${i.minimum.toString()} ${o.unit}`;return`Túl kicsi: a bemeneti érték ${i.origin} túl kicsi ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Érvénytelen string: "${a.prefix}" értékkel kell kezdődnie`;if(a.format==="ends_with")return`Érvénytelen string: "${a.suffix}" értékkel kell végződnie`;if(a.format==="includes")return`Érvénytelen string: "${a.includes}" értéket kell tartalmaznia`;if(a.format==="regex")return`Érvénytelen string: ${a.pattern} mintának kell megfelelnie`;return`Érvénytelen ${n[a.format]??i.format}`}case"not_multiple_of":return`Érvénytelen szám: ${i.divisor} többszörösének kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Érvénytelen kulcs ${i.origin}`;case"invalid_union":return"Érvénytelen bemenet";case"invalid_element":return`Érvénytelen érték: ${i.origin}`;default:return"Érvénytelen bemenet"}}},S_=()=>{let e={string:{unit:{one:"նշան",many:"նշաններ"},verb:"ունենալ"},file:{unit:{one:"բայթ",many:"բայթեր"},verb:"ունենալ"},array:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"},set:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"}};function t(i){return e[i]??null}let n={regex:"մուտք",email:"էլ. հասցե",url:"URL",emoji:"էմոջի",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ամսաթիվ և ժամ",date:"ISO ամսաթիվ",time:"ISO ժամ",duration:"ISO տևողություն",ipv4:"IPv4 հասցե",ipv6:"IPv6 հասցե",cidrv4:"IPv4 միջակայք",cidrv6:"IPv6 միջակայք",base64:"base64 ձևաչափով տող",base64url:"base64url ձևաչափով տող",json_string:"JSON տող",e164:"E.164 համար",jwt:"JWT",template_literal:"մուտք"},r={nan:"NaN",number:"թիվ",array:"զանգված"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Սխալ մուտքագրում․ սպասվում էր instanceof ${i.expected}, ստացվել է ${s}`;return`Սխալ մուտքագրում․ սպասվում էր ${a}, ստացվել է ${s}`}case"invalid_value":if(i.values.length===1)return`Սխալ մուտքագրում․ սպասվում էր ${k(i.values[1])}`;return`Սխալ տարբերակ․ սպասվում էր հետևյալներից մեկը՝ ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=Iu(s,o.unit.one,o.unit.many);return`Չափազանց մեծ արժեք․ սպասվում է, որ ${ht(i.origin??"արժեք")} կունենա ${a}${i.maximum.toString()} ${d}`}return`Չափազանց մեծ արժեք․ սպասվում է, որ ${ht(i.origin??"արժեք")} լինի ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=Iu(s,o.unit.one,o.unit.many);return`Չափազանց փոքր արժեք․ սպասվում է, որ ${ht(i.origin)} կունենա ${a}${i.minimum.toString()} ${d}`}return`Չափազանց փոքր արժեք․ սպասվում է, որ ${ht(i.origin)} լինի ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Սխալ տող․ պետք է սկսվի "${a.prefix}"-ով`;if(a.format==="ends_with")return`Սխալ տող․ պետք է ավարտվի "${a.suffix}"-ով`;if(a.format==="includes")return`Սխալ տող․ պետք է պարունակի "${a.includes}"`;if(a.format==="regex")return`Սխալ տող․ պետք է համապատասխանի ${a.pattern} ձևաչափին`;return`Սխալ ${n[a.format]??i.format}`}case"not_multiple_of":return`Սխալ թիվ․ պետք է բազմապատիկ լինի ${i.divisor}-ի`;case"unrecognized_keys":return`Չճանաչված բանալի${i.keys.length>1?"ներ":""}. ${h(i.keys,", ")}`;case"invalid_key":return`Սխալ բանալի ${ht(i.origin)}-ում`;case"invalid_union":return"Սխալ մուտքագրում";case"invalid_element":return`Սխալ արժեք ${ht(i.origin)}-ում`;default:return"Սխալ մուտքագրում"}}},x_=()=>{let e={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak valid: diharapkan instanceof ${i.expected}, diterima ${s}`;return`Input tidak valid: diharapkan ${a}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak valid: diharapkan ${k(i.values[0])}`;return`Pilihan tidak valid: diharapkan salah satu dari ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: diharapkan ${i.origin??"value"} memiliki ${a}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: diharapkan ${i.origin??"value"} menjadi ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: diharapkan ${i.origin} memiliki ${a}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: diharapkan ${i.origin} menjadi ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`String tidak valid: harus dimulai dengan "${a.prefix}"`;if(a.format==="ends_with")return`String tidak valid: harus berakhir dengan "${a.suffix}"`;if(a.format==="includes")return`String tidak valid: harus menyertakan "${a.includes}"`;if(a.format==="regex")return`String tidak valid: harus sesuai pola ${a.pattern}`;return`${n[a.format]??i.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${i.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${i.origin}`;default:return"Input tidak valid"}}},U_=()=>{let e={string:{unit:"stafi",verb:"að hafa"},file:{unit:"bæti",verb:"að hafa"},array:{unit:"hluti",verb:"að hafa"},set:{unit:"hluti",verb:"að hafa"}};function t(i){return e[i]??null}let n={regex:"gildi",email:"netfang",url:"vefslóð",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og tími",date:"ISO dagsetning",time:"ISO tími",duration:"ISO tímalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 tölugildi",jwt:"JWT",template_literal:"gildi"},r={nan:"NaN",number:"númer",array:"fylki"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera instanceof ${i.expected}`;return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera ${a}`}case"invalid_value":if(i.values.length===1)return`Rangt gildi: gert ráð fyrir ${k(i.values[0])}`;return`Ógilt val: má vera eitt af eftirfarandi ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} hafi ${a}${i.maximum.toString()} ${o.unit??"hluti"}`;return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} sé ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Of lítið: gert er ráð fyrir að ${i.origin} hafi ${a}${i.minimum.toString()} ${o.unit}`;return`Of lítið: gert er ráð fyrir að ${i.origin} sé ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ógildur strengur: verður að byrja á "${a.prefix}"`;if(a.format==="ends_with")return`Ógildur strengur: verður að enda á "${a.suffix}"`;if(a.format==="includes")return`Ógildur strengur: verður að innihalda "${a.includes}"`;if(a.format==="regex")return`Ógildur strengur: verður að fylgja mynstri ${a.pattern}`;return`Rangt ${n[a.format]??i.format}`}case"not_multiple_of":return`Röng tala: verður að vera margfeldi af ${i.divisor}`;case"unrecognized_keys":return`Óþekkt ${i.keys.length>1?"ir lyklar":"ur lykill"}: ${h(i.keys,", ")}`;case"invalid_key":return`Rangur lykill í ${i.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi í ${i.origin}`;default:return"Rangt gildi"}}},j_=()=>{let e={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function t(i){return e[i]??null}let n={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"numero",array:"vettore"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input non valido: atteso instanceof ${i.expected}, ricevuto ${s}`;return`Input non valido: atteso ${a}, ricevuto ${s}`}case"invalid_value":if(i.values.length===1)return`Input non valido: atteso ${k(i.values[0])}`;return`Opzione non valida: atteso uno tra ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Troppo grande: ${i.origin??"valore"} deve avere ${a}${i.maximum.toString()} ${o.unit??"elementi"}`;return`Troppo grande: ${i.origin??"valore"} deve essere ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Troppo piccolo: ${i.origin} deve avere ${a}${i.minimum.toString()} ${o.unit}`;return`Troppo piccolo: ${i.origin} deve essere ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Stringa non valida: deve iniziare con "${a.prefix}"`;if(a.format==="ends_with")return`Stringa non valida: deve terminare con "${a.suffix}"`;if(a.format==="includes")return`Stringa non valida: deve includere "${a.includes}"`;if(a.format==="regex")return`Stringa non valida: deve corrispondere al pattern ${a.pattern}`;return`Input non valido: ${n[a.format]??i.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${i.divisor}`;case"unrecognized_keys":return`Chiav${i.keys.length>1?"i":"e"} non riconosciut${i.keys.length>1?"e":"a"}: ${h(i.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${i.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${i.origin}`;default:return"Input non valido"}}},E_=()=>{let e={string:{unit:"文字",verb:"である"},file:{unit:"バイト",verb:"である"},array:{unit:"要素",verb:"である"},set:{unit:"要素",verb:"である"}};function t(i){return e[i]??null}let n={regex:"入力値",email:"メールアドレス",url:"URL",emoji:"絵文字",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日時",date:"ISO日付",time:"ISO時刻",duration:"ISO期間",ipv4:"IPv4アドレス",ipv6:"IPv6アドレス",cidrv4:"IPv4範囲",cidrv6:"IPv6範囲",base64:"base64エンコード文字列",base64url:"base64urlエンコード文字列",json_string:"JSON文字列",e164:"E.164番号",jwt:"JWT",template_literal:"入力値"},r={nan:"NaN",number:"数値",array:"配列"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`無効な入力: instanceof ${i.expected}が期待されましたが、${s}が入力されました`;return`無効な入力: ${a}が期待されましたが、${s}が入力されました`}case"invalid_value":if(i.values.length===1)return`無効な入力: ${k(i.values[0])}が期待されました`;return`無効な選択: ${h(i.values,"、")}のいずれかである必要があります`;case"too_big":{let a=i.inclusive?"以下である":"より小さい",o=t(i.origin);if(o)return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${o.unit??"要素"}${a}必要があります`;return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${a}必要があります`}case"too_small":{let a=i.inclusive?"以上である":"より大きい",o=t(i.origin);if(o)return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${o.unit}${a}必要があります`;return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${a}必要があります`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`無効な文字列: "${a.prefix}"で始まる必要があります`;if(a.format==="ends_with")return`無効な文字列: "${a.suffix}"で終わる必要があります`;if(a.format==="includes")return`無効な文字列: "${a.includes}"を含む必要があります`;if(a.format==="regex")return`無効な文字列: パターン${a.pattern}に一致する必要があります`;return`無効な${n[a.format]??i.format}`}case"not_multiple_of":return`無効な数値: ${i.divisor}の倍数である必要があります`;case"unrecognized_keys":return`認識されていないキー${i.keys.length>1?"群":""}: ${h(i.keys,"、")}`;case"invalid_key":return`${i.origin}内の無効なキー`;case"invalid_union":return"無効な入力";case"invalid_element":return`${i.origin}内の無効な値`;default:return"無効な入力"}}},P_=()=>{let e={string:{unit:"სიმბოლო",verb:"უნდა შეიცავდეს"},file:{unit:"ბაიტი",verb:"უნდა შეიცავდეს"},array:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"},set:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"}};function t(i){return e[i]??null}let n={regex:"შეყვანა",email:"ელ-ფოსტის მისამართი",url:"URL",emoji:"ემოჯი",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"თარიღი-დრო",date:"თარიღი",time:"დრო",duration:"ხანგრძლივობა",ipv4:"IPv4 მისამართი",ipv6:"IPv6 მისამართი",cidrv4:"IPv4 დიაპაზონი",cidrv6:"IPv6 დიაპაზონი",base64:"base64-კოდირებული ველი",base64url:"base64url-კოდირებული ველი",json_string:"JSON ველი",e164:"E.164 ნომერი",jwt:"JWT",template_literal:"შეყვანა"},r={nan:"NaN",number:"რიცხვი",string:"ველი",boolean:"ბულეანი",function:"ფუნქცია",array:"მასივი"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`არასწორი შეყვანა: მოსალოდნელი instanceof ${i.expected}, მიღებული ${s}`;return`არასწორი შეყვანა: მოსალოდნელი ${a}, მიღებული ${s}`}case"invalid_value":if(i.values.length===1)return`არასწორი შეყვანა: მოსალოდნელი ${k(i.values[0])}`;return`არასწორი ვარიანტი: მოსალოდნელია ერთ-ერთი ${h(i.values,"|")}-დან`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit}`;return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} იყოს ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} იყოს ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`არასწორი ველი: უნდა იწყებოდეს "${a.prefix}"-ით`;if(a.format==="ends_with")return`არასწორი ველი: უნდა მთავრდებოდეს "${a.suffix}"-ით`;if(a.format==="includes")return`არასწორი ველი: უნდა შეიცავდეს "${a.includes}"-ს`;if(a.format==="regex")return`არასწორი ველი: უნდა შეესაბამებოდეს შაბლონს ${a.pattern}`;return`არასწორი ${n[a.format]??i.format}`}case"not_multiple_of":return`არასწორი რიცხვი: უნდა იყოს ${i.divisor}-ის ჯერადი`;case"unrecognized_keys":return`უცნობი გასაღებ${i.keys.length>1?"ები":"ი"}: ${h(i.keys,", ")}`;case"invalid_key":return`არასწორი გასაღები ${i.origin}-ში`;case"invalid_union":return"არასწორი შეყვანა";case"invalid_element":return`არასწორი მნიშვნელობა ${i.origin}-ში`;default:return"არასწორი შეყვანა"}}},D_=()=>{let e={string:{unit:"តួអក្សរ",verb:"គួរមាន"},file:{unit:"បៃ",verb:"គួរមាន"},array:{unit:"ធាតុ",verb:"គួរមាន"},set:{unit:"ធាតុ",verb:"គួរមាន"}};function t(i){return e[i]??null}let n={regex:"ទិន្នន័យបញ្ចូល",email:"អាសយដ្ឋានអ៊ីមែល",url:"URL",emoji:"សញ្ញាអារម្មណ៍",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"កាលបរិច្ឆេទ និងម៉ោង ISO",date:"កាលបរិច្ឆេទ ISO",time:"ម៉ោង ISO",duration:"រយៈពេល ISO",ipv4:"អាសយដ្ឋាន IPv4",ipv6:"អាសយដ្ឋាន IPv6",cidrv4:"ដែនអាសយដ្ឋាន IPv4",cidrv6:"ដែនអាសយដ្ឋាន IPv6",base64:"ខ្សែអក្សរអ៊ិកូដ base64",base64url:"ខ្សែអក្សរអ៊ិកូដ base64url",json_string:"ខ្សែអក្សរ JSON",e164:"លេខ E.164",jwt:"JWT",template_literal:"ទិន្នន័យបញ្ចូល"},r={nan:"NaN",number:"លេខ",array:"អារេ (Array)",null:"គ្មានតម្លៃ (null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ instanceof ${i.expected} ប៉ុន្តែទទួលបាន ${s}`;return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${a} ប៉ុន្តែទទួលបាន ${s}`}case"invalid_value":if(i.values.length===1)return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${k(i.values[0])}`;return`ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${a} ${i.maximum.toString()} ${o.unit??"ធាតុ"}`;return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`តូចពេក៖ ត្រូវការ ${i.origin} ${a} ${i.minimum.toString()} ${o.unit}`;return`តូចពេក៖ ត្រូវការ ${i.origin} ${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${a.prefix}"`;if(a.format==="ends_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${a.suffix}"`;if(a.format==="includes")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${a.includes}"`;if(a.format==="regex")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${a.pattern}`;return`មិនត្រឹមត្រូវ៖ ${n[a.format]??i.format}`}case"not_multiple_of":return`លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${i.divisor}`;case"unrecognized_keys":return`រកឃើញសោមិនស្គាល់៖ ${h(i.keys,", ")}`;case"invalid_key":return`សោមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;case"invalid_union":return"ទិន្នន័យមិនត្រឹមត្រូវ";case"invalid_element":return`ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;default:return"ទិន្នន័យមិនត្រឹមត្រូវ"}}},C_=()=>{let e={string:{unit:"문자",verb:"to have"},file:{unit:"바이트",verb:"to have"},array:{unit:"개",verb:"to have"},set:{unit:"개",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"입력",email:"이메일 주소",url:"URL",emoji:"이모지",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 날짜시간",date:"ISO 날짜",time:"ISO 시간",duration:"ISO 기간",ipv4:"IPv4 주소",ipv6:"IPv6 주소",cidrv4:"IPv4 범위",cidrv6:"IPv6 범위",base64:"base64 인코딩 문자열",base64url:"base64url 인코딩 문자열",json_string:"JSON 문자열",e164:"E.164 번호",jwt:"JWT",template_literal:"입력"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`잘못된 입력: 예상 타입은 instanceof ${i.expected}, 받은 타입은 ${s}입니다`;return`잘못된 입력: 예상 타입은 ${a}, 받은 타입은 ${s}입니다`}case"invalid_value":if(i.values.length===1)return`잘못된 입력: 값은 ${k(i.values[0])} 이어야 합니다`;return`잘못된 옵션: ${h(i.values,"또는 ")} 중 하나여야 합니다`;case"too_big":{let a=i.inclusive?"이하":"미만",o=a==="미만"?"이어야 합니다":"여야 합니다",s=t(i.origin),d=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()}${d} ${a}${o}`;return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()} ${a}${o}`}case"too_small":{let a=i.inclusive?"이상":"초과",o=a==="이상"?"이어야 합니다":"여야 합니다",s=t(i.origin),d=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()}${d} ${a}${o}`;return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()} ${a}${o}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`잘못된 문자열: "${a.prefix}"(으)로 시작해야 합니다`;if(a.format==="ends_with")return`잘못된 문자열: "${a.suffix}"(으)로 끝나야 합니다`;if(a.format==="includes")return`잘못된 문자열: "${a.includes}"을(를) 포함해야 합니다`;if(a.format==="regex")return`잘못된 문자열: 정규식 ${a.pattern} 패턴과 일치해야 합니다`;return`잘못된 ${n[a.format]??i.format}`}case"not_multiple_of":return`잘못된 숫자: ${i.divisor}의 배수여야 합니다`;case"unrecognized_keys":return`인식할 수 없는 키: ${h(i.keys,", ")}`;case"invalid_key":return`잘못된 키: ${i.origin}`;case"invalid_union":return"잘못된 입력";case"invalid_element":return`잘못된 값: ${i.origin}`;default:return"잘못된 입력"}}},Kt=(e)=>{return e.charAt(0).toUpperCase()+e.slice(1)},L_=()=>{let e={string:{unit:{one:"simbolis",few:"simboliai",many:"simbolių"},verb:{smaller:{inclusive:"turi būti ne ilgesnė kaip",notInclusive:"turi būti trumpesnė kaip"},bigger:{inclusive:"turi būti ne trumpesnė kaip",notInclusive:"turi būti ilgesnė kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"baitų"},verb:{smaller:{inclusive:"turi būti ne didesnis kaip",notInclusive:"turi būti mažesnis kaip"},bigger:{inclusive:"turi būti ne mažesnis kaip",notInclusive:"turi būti didesnis kaip"}}},array:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}},set:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}}};function t(i,a,o,s){let d=e[i]??null;if(d===null)return d;return{unit:d.unit[a],verb:d.verb[s][o?"inclusive":"notInclusive"]}}let n={regex:"įvestis",email:"el. pašto adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukmė",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 užkoduota eilutė",base64url:"base64url užkoduota eilutė",json_string:"JSON eilutė",e164:"E.164 numeris",jwt:"JWT",template_literal:"įvestis"},r={nan:"NaN",number:"skaičius",bigint:"sveikasis skaičius",string:"eilutė",boolean:"loginė reikšmė",undefined:"neapibrėžta reikšmė",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulinė reikšmė"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Gautas tipas ${s}, o tikėtasi - instanceof ${i.expected}`;return`Gautas tipas ${s}, o tikėtasi - ${a}`}case"invalid_value":if(i.values.length===1)return`Privalo būti ${k(i.values[0])}`;return`Privalo būti vienas iš ${h(i.values,"|")} pasirinkimų`;case"too_big":{let a=r[i.origin]??i.origin,o=t(i.origin,xu(Number(i.maximum)),i.inclusive??!1,"smaller");if(o?.verb)return`${Kt(a??i.origin??"reikšmė")} ${o.verb} ${i.maximum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne didesnis kaip":"mažesnis kaip";return`${Kt(a??i.origin??"reikšmė")} turi būti ${s} ${i.maximum.toString()} ${o?.unit}`}case"too_small":{let a=r[i.origin]??i.origin,o=t(i.origin,xu(Number(i.minimum)),i.inclusive??!1,"bigger");if(o?.verb)return`${Kt(a??i.origin??"reikšmė")} ${o.verb} ${i.minimum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne mažesnis kaip":"didesnis kaip";return`${Kt(a??i.origin??"reikšmė")} turi būti ${s} ${i.minimum.toString()} ${o?.unit}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Eilutė privalo prasidėti "${a.prefix}"`;if(a.format==="ends_with")return`Eilutė privalo pasibaigti "${a.suffix}"`;if(a.format==="includes")return`Eilutė privalo įtraukti "${a.includes}"`;if(a.format==="regex")return`Eilutė privalo atitikti ${a.pattern}`;return`Neteisingas ${n[a.format]??i.format}`}case"not_multiple_of":return`Skaičius privalo būti ${i.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpažint${i.keys.length>1?"i":"as"} rakt${i.keys.length>1?"ai":"as"}: ${h(i.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga įvestis";case"invalid_element":{let a=r[i.origin]??i.origin;return`${Kt(a??i.origin??"reikšmė")} turi klaidingą įvestį`}default:return"Klaidinga įvestis"}}},M_=()=>{let e={string:{unit:"знаци",verb:"да имаат"},file:{unit:"бајти",verb:"да имаат"},array:{unit:"ставки",verb:"да имаат"},set:{unit:"ставки",verb:"да имаат"}};function t(i){return e[i]??null}let n={regex:"внес",email:"адреса на е-пошта",url:"URL",emoji:"емоџи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO датум и време",date:"ISO датум",time:"ISO време",duration:"ISO времетраење",ipv4:"IPv4 адреса",ipv6:"IPv6 адреса",cidrv4:"IPv4 опсег",cidrv6:"IPv6 опсег",base64:"base64-енкодирана низа",base64url:"base64url-енкодирана низа",json_string:"JSON низа",e164:"E.164 број",jwt:"JWT",template_literal:"внес"},r={nan:"NaN",number:"број",array:"низа"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Грешен внес: се очекува instanceof ${i.expected}, примено ${s}`;return`Грешен внес: се очекува ${a}, примено ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${k(i.values[0])}`;return`Грешана опција: се очекува една ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Премногу голем: се очекува ${i.origin??"вредноста"} да има ${a}${i.maximum.toString()} ${o.unit??"елементи"}`;return`Премногу голем: се очекува ${i.origin??"вредноста"} да биде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Премногу мал: се очекува ${i.origin} да има ${a}${i.minimum.toString()} ${o.unit}`;return`Премногу мал: се очекува ${i.origin} да биде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неважечка низа: мора да започнува со "${a.prefix}"`;if(a.format==="ends_with")return`Неважечка низа: мора да завршува со "${a.suffix}"`;if(a.format==="includes")return`Неважечка низа: мора да вклучува "${a.includes}"`;if(a.format==="regex")return`Неважечка низа: мора да одгоара на патернот ${a.pattern}`;return`Invalid ${n[a.format]??i.format}`}case"not_multiple_of":return`Грешен број: мора да биде делив со ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Непрепознаени клучеви":"Непрепознаен клуч"}: ${h(i.keys,", ")}`;case"invalid_key":return`Грешен клуч во ${i.origin}`;case"invalid_union":return"Грешен внес";case"invalid_element":return`Грешна вредност во ${i.origin}`;default:return"Грешен внес"}}},B_=()=>{let e={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"nombor"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak sah: dijangka instanceof ${i.expected}, diterima ${s}`;return`Input tidak sah: dijangka ${a}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak sah: dijangka ${k(i.values[0])}`;return`Pilihan tidak sah: dijangka salah satu daripada ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: dijangka ${i.origin??"nilai"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: dijangka ${i.origin??"nilai"} adalah ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: dijangka ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: dijangka ${i.origin} adalah ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`String tidak sah: mesti bermula dengan "${a.prefix}"`;if(a.format==="ends_with")return`String tidak sah: mesti berakhir dengan "${a.suffix}"`;if(a.format==="includes")return`String tidak sah: mesti mengandungi "${a.includes}"`;if(a.format==="regex")return`String tidak sah: mesti sepadan dengan corak ${a.pattern}`;return`${n[a.format]??i.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${h(i.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${i.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${i.origin}`;default:return"Input tidak sah"}}},K_=()=>{let e={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function t(i){return e[i]??null}let n={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},r={nan:"NaN",number:"getal"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ongeldige invoer: verwacht instanceof ${i.expected}, ontving ${s}`;return`Ongeldige invoer: verwacht ${a}, ontving ${s}`}case"invalid_value":if(i.values.length===1)return`Ongeldige invoer: verwacht ${k(i.values[0])}`;return`Ongeldige optie: verwacht één van ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin),s=i.origin==="date"?"laat":i.origin==="string"?"lang":"groot";if(o)return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${a}${i.maximum.toString()} ${o.unit??"elementen"} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${a}${i.maximum.toString()} is`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin),s=i.origin==="date"?"vroeg":i.origin==="string"?"kort":"klein";if(o)return`Te ${s}: verwacht dat ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin} ${a}${i.minimum.toString()} is`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ongeldige tekst: moet met "${a.prefix}" beginnen`;if(a.format==="ends_with")return`Ongeldige tekst: moet op "${a.suffix}" eindigen`;if(a.format==="includes")return`Ongeldige tekst: moet "${a.includes}" bevatten`;if(a.format==="regex")return`Ongeldige tekst: moet overeenkomen met patroon ${a.pattern}`;return`Ongeldig: ${n[a.format]??i.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${i.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${i.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${i.origin}`;default:return"Ongeldige invoer"}}},G_=()=>{let e={string:{unit:"tegn",verb:"å ha"},file:{unit:"bytes",verb:"å ha"},array:{unit:"elementer",verb:"å inneholde"},set:{unit:"elementer",verb:"å inneholde"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"tall",array:"liste"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldig input: forventet instanceof ${i.expected}, fikk ${s}`;return`Ugyldig input: forventet ${a}, fikk ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig verdi: forventet ${k(i.values[0])}`;return`Ugyldig valg: forventet en av ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`For stor(t): forventet ${i.origin??"value"} til å ha ${a}${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor(t): forventet ${i.origin??"value"} til å ha ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`For lite(n): forventet ${i.origin} til å ha ${a}${i.minimum.toString()} ${o.unit}`;return`For lite(n): forventet ${i.origin} til å ha ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ugyldig streng: må starte med "${a.prefix}"`;if(a.format==="ends_with")return`Ugyldig streng: må ende med "${a.suffix}"`;if(a.format==="includes")return`Ugyldig streng: må inneholde "${a.includes}"`;if(a.format==="regex")return`Ugyldig streng: må matche mønsteret ${a.pattern}`;return`Ugyldig ${n[a.format]??i.format}`}case"not_multiple_of":return`Ugyldig tall: må være et multiplum av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukjente nøkler":"Ukjent nøkkel"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøkkel i ${i.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${i.origin}`;default:return"Ugyldig input"}}},Y_=()=>{let e={string:{unit:"harf",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"unsur",verb:"olmalıdır"},set:{unit:"unsur",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"giren",email:"epostagâh",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO hengâmı",date:"ISO tarihi",time:"ISO zamanı",duration:"ISO müddeti",ipv4:"IPv4 nişânı",ipv6:"IPv6 nişânı",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-şifreli metin",base64url:"base64url-şifreli metin",json_string:"JSON metin",e164:"E.164 sayısı",jwt:"JWT",template_literal:"giren"},r={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Fâsit giren: umulan instanceof ${i.expected}, alınan ${s}`;return`Fâsit giren: umulan ${a}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Fâsit giren: umulan ${k(i.values[0])}`;return`Fâsit tercih: mûteberler ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Fazla büyük: ${i.origin??"value"}, ${a}${i.maximum.toString()} ${o.unit??"elements"} sahip olmalıydı.`;return`Fazla büyük: ${i.origin??"value"}, ${a}${i.maximum.toString()} olmalıydı.`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Fazla küçük: ${i.origin}, ${a}${i.minimum.toString()} ${o.unit} sahip olmalıydı.`;return`Fazla küçük: ${i.origin}, ${a}${i.minimum.toString()} olmalıydı.`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Fâsit metin: "${a.prefix}" ile başlamalı.`;if(a.format==="ends_with")return`Fâsit metin: "${a.suffix}" ile bitmeli.`;if(a.format==="includes")return`Fâsit metin: "${a.includes}" ihtivâ etmeli.`;if(a.format==="regex")return`Fâsit metin: ${a.pattern} nakşına uymalı.`;return`Fâsit ${n[a.format]??i.format}`}case"not_multiple_of":return`Fâsit sayı: ${i.divisor} katı olmalıydı.`;case"unrecognized_keys":return`Tanınmayan anahtar ${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} için tanınmayan anahtar var.`;case"invalid_union":return"Giren tanınamadı.";case"invalid_element":return`${i.origin} için tanınmayan kıymet var.`;default:return"Kıymet tanınamadı."}}},V_=()=>{let e={string:{unit:"توکي",verb:"ولري"},file:{unit:"بایټس",verb:"ولري"},array:{unit:"توکي",verb:"ولري"},set:{unit:"توکي",verb:"ولري"}};function t(i){return e[i]??null}let n={regex:"ورودي",email:"بریښنالیک",url:"یو آر ال",emoji:"ایموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"نیټه او وخت",date:"نېټه",time:"وخت",duration:"موده",ipv4:"د IPv4 پته",ipv6:"د IPv6 پته",cidrv4:"د IPv4 ساحه",cidrv6:"د IPv6 ساحه",base64:"base64-encoded متن",base64url:"base64url-encoded متن",json_string:"JSON متن",e164:"د E.164 شمېره",jwt:"JWT",template_literal:"ورودي"},r={nan:"NaN",number:"عدد",array:"ارې"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ناسم ورودي: باید instanceof ${i.expected} وای, مګر ${s} ترلاسه شو`;return`ناسم ورودي: باید ${a} وای, مګر ${s} ترلاسه شو`}case"invalid_value":if(i.values.length===1)return`ناسم ورودي: باید ${k(i.values[0])} وای`;return`ناسم انتخاب: باید یو له ${h(i.values,"|")} څخه وای`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ډیر لوی: ${i.origin??"ارزښت"} باید ${a}${i.maximum.toString()} ${o.unit??"عنصرونه"} ولري`;return`ډیر لوی: ${i.origin??"ارزښت"} باید ${a}${i.maximum.toString()} وي`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`ډیر کوچنی: ${i.origin} باید ${a}${i.minimum.toString()} ${o.unit} ولري`;return`ډیر کوچنی: ${i.origin} باید ${a}${i.minimum.toString()} وي`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`ناسم متن: باید د "${a.prefix}" سره پیل شي`;if(a.format==="ends_with")return`ناسم متن: باید د "${a.suffix}" سره پای ته ورسيږي`;if(a.format==="includes")return`ناسم متن: باید "${a.includes}" ولري`;if(a.format==="regex")return`ناسم متن: باید د ${a.pattern} سره مطابقت ولري`;return`${n[a.format]??i.format} ناسم دی`}case"not_multiple_of":return`ناسم عدد: باید د ${i.divisor} مضرب وي`;case"unrecognized_keys":return`ناسم ${i.keys.length>1?"کلیډونه":"کلیډ"}: ${h(i.keys,", ")}`;case"invalid_key":return`ناسم کلیډ په ${i.origin} کې`;case"invalid_union":return"ناسمه ورودي";case"invalid_element":return`ناسم عنصر په ${i.origin} کې`;default:return"ناسمه ورودي"}}},ek=()=>{let e={string:{unit:"znaków",verb:"mieć"},file:{unit:"bajtów",verb:"mieć"},array:{unit:"elementów",verb:"mieć"},set:{unit:"elementów",verb:"mieć"}};function t(i){return e[i]??null}let n={regex:"wyrażenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ciąg znaków zakodowany w formacie base64",base64url:"ciąg znaków zakodowany w formacie base64url",json_string:"ciąg znaków w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wejście"},r={nan:"NaN",number:"liczba",array:"tablica"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Nieprawidłowe dane wejściowe: oczekiwano instanceof ${i.expected}, otrzymano ${s}`;return`Nieprawidłowe dane wejściowe: oczekiwano ${a}, otrzymano ${s}`}case"invalid_value":if(i.values.length===1)return`Nieprawidłowe dane wejściowe: oczekiwano ${k(i.values[0])}`;return`Nieprawidłowa opcja: oczekiwano jednej z wartości ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Za duża wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${a}${i.maximum.toString()} ${o.unit??"elementów"}`;return`Zbyt duż(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Za mała wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${a}${i.minimum.toString()} ${o.unit??"elementów"}`;return`Zbyt mał(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Nieprawidłowy ciąg znaków: musi zaczynać się od "${a.prefix}"`;if(a.format==="ends_with")return`Nieprawidłowy ciąg znaków: musi kończyć się na "${a.suffix}"`;if(a.format==="includes")return`Nieprawidłowy ciąg znaków: musi zawierać "${a.includes}"`;if(a.format==="regex")return`Nieprawidłowy ciąg znaków: musi odpowiadać wzorcowi ${a.pattern}`;return`Nieprawidłow(y/a/e) ${n[a.format]??i.format}`}case"not_multiple_of":return`Nieprawidłowa liczba: musi być wielokrotnością ${i.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Nieprawidłowy klucz w ${i.origin}`;case"invalid_union":return"Nieprawidłowe dane wejściowe";case"invalid_element":return`Nieprawidłowa wartość w ${i.origin}`;default:return"Nieprawidłowe dane wejściowe"}}},ik=()=>{let e={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function t(i){return e[i]??null}let n={regex:"padrão",email:"endereço de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"duração ISO",ipv4:"endereço IPv4",ipv6:"endereço IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},r={nan:"NaN",number:"número",null:"nulo"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipo inválido: esperado instanceof ${i.expected}, recebido ${s}`;return`Tipo inválido: esperado ${a}, recebido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: esperado ${k(i.values[0])}`;return`Opção inválida: esperada uma das ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Muito grande: esperado que ${i.origin??"valor"} tivesse ${a}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Muito grande: esperado que ${i.origin??"valor"} fosse ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Muito pequeno: esperado que ${i.origin} tivesse ${a}${i.minimum.toString()} ${o.unit}`;return`Muito pequeno: esperado que ${i.origin} fosse ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Texto inválido: deve começar com "${a.prefix}"`;if(a.format==="ends_with")return`Texto inválido: deve terminar com "${a.suffix}"`;if(a.format==="includes")return`Texto inválido: deve incluir "${a.includes}"`;if(a.format==="regex")return`Texto inválido: deve corresponder ao padrão ${a.pattern}`;return`${n[a.format]??i.format} inválido`}case"not_multiple_of":return`Número inválido: deve ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Chave${i.keys.length>1?"s":""} desconhecida${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Chave inválida em ${i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido em ${i.origin}`;default:return"Campo inválido"}}},rk=()=>{let e={string:{unit:"caractere",verb:"să aibă"},file:{unit:"octeți",verb:"să aibă"},array:{unit:"elemente",verb:"să aibă"},set:{unit:"elemente",verb:"să aibă"},map:{unit:"intrări",verb:"să aibă"}};function t(i){return e[i]??null}let n={regex:"intrare",email:"adresă de email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"dată și oră ISO",date:"dată ISO",time:"oră ISO",duration:"durată ISO",ipv4:"adresă IPv4",ipv6:"adresă IPv6",mac:"adresă MAC",cidrv4:"interval IPv4",cidrv6:"interval IPv6",base64:"șir codat base64",base64url:"șir codat base64url",json_string:"șir JSON",e164:"număr E.164",jwt:"JWT",template_literal:"intrare"},r={nan:"NaN",string:"șir",number:"număr",boolean:"boolean",function:"funcție",array:"matrice",object:"obiect",undefined:"nedefinit",symbol:"simbol",bigint:"număr mare",void:"void",never:"never",map:"hartă",set:"set"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;return`Intrare invalidă: așteptat ${a}, primit ${s}`}case"invalid_value":if(i.values.length===1)return`Intrare invalidă: așteptat ${k(i.values[0])}`;return`Opțiune invalidă: așteptat una dintre ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Prea mare: așteptat ca ${i.origin??"valoarea"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"elemente"}`;return`Prea mare: așteptat ca ${i.origin??"valoarea"} să fie ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Prea mic: așteptat ca ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Prea mic: așteptat ca ${i.origin} să fie ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Șir invalid: trebuie să înceapă cu "${a.prefix}"`;if(a.format==="ends_with")return`Șir invalid: trebuie să se termine cu "${a.suffix}"`;if(a.format==="includes")return`Șir invalid: trebuie să includă "${a.includes}"`;if(a.format==="regex")return`Șir invalid: trebuie să se potrivească cu modelul ${a.pattern}`;return`Format invalid: ${n[a.format]??i.format}`}case"not_multiple_of":return`Număr invalid: trebuie să fie multiplu de ${i.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${h(i.keys,", ")}`;case"invalid_key":return`Cheie invalidă în ${i.origin}`;case"invalid_union":return"Intrare invalidă";case"invalid_element":return`Valoare invalidă în ${i.origin}`;default:return"Intrare invalidă"}}},ok=()=>{let e={string:{unit:{one:"символ",few:"символа",many:"символов"},verb:"иметь"},file:{unit:{one:"байт",few:"байта",many:"байт"},verb:"иметь"},array:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"},set:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"}};function t(i){return e[i]??null}let n={regex:"ввод",email:"email адрес",url:"URL",emoji:"эмодзи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата и время",date:"ISO дата",time:"ISO время",duration:"ISO длительность",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"строка в формате base64",base64url:"строка в формате base64url",json_string:"JSON строка",e164:"номер E.164",jwt:"JWT",template_literal:"ввод"},r={nan:"NaN",number:"число",array:"массив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Неверный ввод: ожидалось instanceof ${i.expected}, получено ${s}`;return`Неверный ввод: ожидалось ${a}, получено ${s}`}case"invalid_value":if(i.values.length===1)return`Неверный ввод: ожидалось ${k(i.values[0])}`;return`Неверный вариант: ожидалось одно из ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),d=zu(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет иметь ${a}${i.maximum.toString()} ${d}`}return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),d=zu(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком маленькое значение: ожидалось, что ${i.origin} будет иметь ${a}${i.minimum.toString()} ${d}`}return`Слишком маленькое значение: ожидалось, что ${i.origin} будет ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неверная строка: должна начинаться с "${a.prefix}"`;if(a.format==="ends_with")return`Неверная строка: должна заканчиваться на "${a.suffix}"`;if(a.format==="includes")return`Неверная строка: должна содержать "${a.includes}"`;if(a.format==="regex")return`Неверная строка: должна соответствовать шаблону ${a.pattern}`;return`Неверный ${n[a.format]??i.format}`}case"not_multiple_of":return`Неверное число: должно быть кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспознанн${i.keys.length>1?"ые":"ый"} ключ${i.keys.length>1?"и":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Неверный ключ в ${i.origin}`;case"invalid_union":return"Неверные входные данные";case"invalid_element":return`Неверное значение в ${i.origin}`;default:return"Неверные входные данные"}}},uk=()=>{let e={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function t(i){return e[i]??null}let n={regex:"vnos",email:"e-poštni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in čas",date:"ISO datum",time:"ISO čas",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 številka",jwt:"JWT",template_literal:"vnos"},r={nan:"NaN",number:"število",array:"tabela"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Neveljaven vnos: pričakovano instanceof ${i.expected}, prejeto ${s}`;return`Neveljaven vnos: pričakovano ${a}, prejeto ${s}`}case"invalid_value":if(i.values.length===1)return`Neveljaven vnos: pričakovano ${k(i.values[0])}`;return`Neveljavna možnost: pričakovano eno izmed ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} imelo ${a}${i.maximum.toString()} ${o.unit??"elementov"}`;return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Premajhno: pričakovano, da bo ${i.origin} imelo ${a}${i.minimum.toString()} ${o.unit}`;return`Premajhno: pričakovano, da bo ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Neveljaven niz: mora se začeti z "${a.prefix}"`;if(a.format==="ends_with")return`Neveljaven niz: mora se končati z "${a.suffix}"`;if(a.format==="includes")return`Neveljaven niz: mora vsebovati "${a.includes}"`;if(a.format==="regex")return`Neveljaven niz: mora ustrezati vzorcu ${a.pattern}`;return`Neveljaven ${n[a.format]??i.format}`}case"not_multiple_of":return`Neveljavno število: mora biti večkratnik ${i.divisor}`;case"unrecognized_keys":return`Neprepoznan${i.keys.length>1?"i ključi":" ključ"}: ${h(i.keys,", ")}`;case"invalid_key":return`Neveljaven ključ v ${i.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${i.origin}`;default:return"Neveljaven vnos"}}},dk=()=>{let e={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att innehålla"},set:{unit:"objekt",verb:"att innehålla"}};function t(i){return e[i]??null}let n={regex:"reguljärt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad sträng",base64url:"base64url-kodad sträng",json_string:"JSON-sträng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},r={nan:"NaN",number:"antal",array:"lista"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ogiltig inmatning: förväntat instanceof ${i.expected}, fick ${s}`;return`Ogiltig inmatning: förväntat ${a}, fick ${s}`}case"invalid_value":if(i.values.length===1)return`Ogiltig inmatning: förväntat ${k(i.values[0])}`;return`Ogiltigt val: förväntade en av ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`För stor(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.maximum.toString()} ${o.unit??"element"}`;return`För stor(t): förväntat ${i.origin??"värdet"} att ha ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.minimum.toString()} ${o.unit}`;return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ogiltig sträng: måste börja med "${a.prefix}"`;if(a.format==="ends_with")return`Ogiltig sträng: måste sluta med "${a.suffix}"`;if(a.format==="includes")return`Ogiltig sträng: måste innehålla "${a.includes}"`;if(a.format==="regex")return`Ogiltig sträng: måste matcha mönstret "${a.pattern}"`;return`Ogiltig(t) ${n[a.format]??i.format}`}case"not_multiple_of":return`Ogiltigt tal: måste vara en multipel av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Okända nycklar":"Okänd nyckel"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${i.origin??"värdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt värde i ${i.origin??"värdet"}`;default:return"Ogiltig input"}}},mk=()=>{let e={string:{unit:"எழுத்துக்கள்",verb:"கொண்டிருக்க வேண்டும்"},file:{unit:"பைட்டுகள்",verb:"கொண்டிருக்க வேண்டும்"},array:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"},set:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"}};function t(i){return e[i]??null}let n={regex:"உள்ளீடு",email:"மின்னஞ்சல் முகவரி",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO தேதி நேரம்",date:"ISO தேதி",time:"ISO நேரம்",duration:"ISO கால அளவு",ipv4:"IPv4 முகவரி",ipv6:"IPv6 முகவரி",cidrv4:"IPv4 வரம்பு",cidrv6:"IPv6 வரம்பு",base64:"base64-encoded சரம்",base64url:"base64url-encoded சரம்",json_string:"JSON சரம்",e164:"E.164 எண்",jwt:"JWT",template_literal:"input"},r={nan:"NaN",number:"எண்",array:"அணி",null:"வெறுமை"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது instanceof ${i.expected}, பெறப்பட்டது ${s}`;return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${a}, பெறப்பட்டது ${s}`}case"invalid_value":if(i.values.length===1)return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${k(i.values[0])}`;return`தவறான விருப்பம்: எதிர்பார்க்கப்பட்டது ${h(i.values,"|")} இல் ஒன்று`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${a}${i.maximum.toString()} ${o.unit??"உறுப்புகள்"} ஆக இருக்க வேண்டும்`;return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${a}${i.maximum.toString()} ஆக இருக்க வேண்டும்`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ஆக இருக்க வேண்டும்`;return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${a}${i.minimum.toString()} ஆக இருக்க வேண்டும்`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`தவறான சரம்: "${a.prefix}" இல் தொடங்க வேண்டும்`;if(a.format==="ends_with")return`தவறான சரம்: "${a.suffix}" இல் முடிவடைய வேண்டும்`;if(a.format==="includes")return`தவறான சரம்: "${a.includes}" ஐ உள்ளடக்க வேண்டும்`;if(a.format==="regex")return`தவறான சரம்: ${a.pattern} முறைபாட்டுடன் பொருந்த வேண்டும்`;return`தவறான ${n[a.format]??i.format}`}case"not_multiple_of":return`தவறான எண்: ${i.divisor} இன் பலமாக இருக்க வேண்டும்`;case"unrecognized_keys":return`அடையாளம் தெரியாத விசை${i.keys.length>1?"கள்":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} இல் தவறான விசை`;case"invalid_union":return"தவறான உள்ளீடு";case"invalid_element":return`${i.origin} இல் தவறான மதிப்பு`;default:return"தவறான உள்ளீடு"}}},pk=()=>{let e={string:{unit:"ตัวอักษร",verb:"ควรมี"},file:{unit:"ไบต์",verb:"ควรมี"},array:{unit:"รายการ",verb:"ควรมี"},set:{unit:"รายการ",verb:"ควรมี"}};function t(i){return e[i]??null}let n={regex:"ข้อมูลที่ป้อน",email:"ที่อยู่อีเมล",url:"URL",emoji:"อิโมจิ",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"วันที่เวลาแบบ ISO",date:"วันที่แบบ ISO",time:"เวลาแบบ ISO",duration:"ช่วงเวลาแบบ ISO",ipv4:"ที่อยู่ IPv4",ipv6:"ที่อยู่ IPv6",cidrv4:"ช่วง IP แบบ IPv4",cidrv6:"ช่วง IP แบบ IPv6",base64:"ข้อความแบบ Base64",base64url:"ข้อความแบบ Base64 สำหรับ URL",json_string:"ข้อความแบบ JSON",e164:"เบอร์โทรศัพท์ระหว่างประเทศ (E.164)",jwt:"โทเคน JWT",template_literal:"ข้อมูลที่ป้อน"},r={nan:"NaN",number:"ตัวเลข",array:"อาร์เรย์ (Array)",null:"ไม่มีค่า (null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น instanceof ${i.expected} แต่ได้รับ ${s}`;return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น ${a} แต่ได้รับ ${s}`}case"invalid_value":if(i.values.length===1)return`ค่าไม่ถูกต้อง: ควรเป็น ${k(i.values[0])}`;return`ตัวเลือกไม่ถูกต้อง: ควรเป็นหนึ่งใน ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"ไม่เกิน":"น้อยกว่า",o=t(i.origin);if(o)return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${a} ${i.maximum.toString()} ${o.unit??"รายการ"}`;return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${a} ${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?"อย่างน้อย":"มากกว่า",o=t(i.origin);if(o)return`น้อยกว่ากำหนด: ${i.origin} ควรมี${a} ${i.minimum.toString()} ${o.unit}`;return`น้อยกว่ากำหนด: ${i.origin} ควรมี${a} ${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องขึ้นต้นด้วย "${a.prefix}"`;if(a.format==="ends_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องลงท้ายด้วย "${a.suffix}"`;if(a.format==="includes")return`รูปแบบไม่ถูกต้อง: ข้อความต้องมี "${a.includes}" อยู่ในข้อความ`;if(a.format==="regex")return`รูปแบบไม่ถูกต้อง: ต้องตรงกับรูปแบบที่กำหนด ${a.pattern}`;return`รูปแบบไม่ถูกต้อง: ${n[a.format]??i.format}`}case"not_multiple_of":return`ตัวเลขไม่ถูกต้อง: ต้องเป็นจำนวนที่หารด้วย ${i.divisor} ได้ลงตัว`;case"unrecognized_keys":return`พบคีย์ที่ไม่รู้จัก: ${h(i.keys,", ")}`;case"invalid_key":return`คีย์ไม่ถูกต้องใน ${i.origin}`;case"invalid_union":return"ข้อมูลไม่ถูกต้อง: ไม่ตรงกับรูปแบบยูเนียนที่กำหนดไว้";case"invalid_element":return`ข้อมูลไม่ถูกต้องใน ${i.origin}`;default:return"ข้อมูลไม่ถูกต้อง"}}},hk=()=>{let e={string:{unit:"karakter",verb:"olmalı"},file:{unit:"bayt",verb:"olmalı"},array:{unit:"öğe",verb:"olmalı"},set:{unit:"öğe",verb:"olmalı"}};function t(i){return e[i]??null}let n={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO süre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aralığı",cidrv6:"IPv6 aralığı",base64:"base64 ile şifrelenmiş metin",base64url:"base64url ile şifrelenmiş metin",json_string:"JSON dizesi",e164:"E.164 sayısı",jwt:"JWT",template_literal:"Şablon dizesi"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Geçersiz değer: beklenen instanceof ${i.expected}, alınan ${s}`;return`Geçersiz değer: beklenen ${a}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Geçersiz değer: beklenen ${k(i.values[0])}`;return`Geçersiz seçenek: aşağıdakilerden biri olmalı: ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çok büyük: beklenen ${i.origin??"değer"} ${a}${i.maximum.toString()} ${o.unit??"öğe"}`;return`Çok büyük: beklenen ${i.origin??"değer"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çok küçük: beklenen ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`Çok küçük: beklenen ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Geçersiz metin: "${a.prefix}" ile başlamalı`;if(a.format==="ends_with")return`Geçersiz metin: "${a.suffix}" ile bitmeli`;if(a.format==="includes")return`Geçersiz metin: "${a.includes}" içermeli`;if(a.format==="regex")return`Geçersiz metin: ${a.pattern} desenine uymalı`;return`Geçersiz ${n[a.format]??i.format}`}case"not_multiple_of":return`Geçersiz sayı: ${i.divisor} ile tam bölünebilmeli`;case"unrecognized_keys":return`Tanınmayan anahtar${i.keys.length>1?"lar":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} içinde geçersiz anahtar`;case"invalid_union":return"Geçersiz değer";case"invalid_element":return`${i.origin} içinde geçersiz değer`;default:return"Geçersiz değer"}}},yk=()=>{let e={string:{unit:"символів",verb:"матиме"},file:{unit:"байтів",verb:"матиме"},array:{unit:"елементів",verb:"матиме"},set:{unit:"елементів",verb:"матиме"}};function t(i){return e[i]??null}let n={regex:"вхідні дані",email:"адреса електронної пошти",url:"URL",emoji:"емодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"дата та час ISO",date:"дата ISO",time:"час ISO",duration:"тривалість ISO",ipv4:"адреса IPv4",ipv6:"адреса IPv6",cidrv4:"діапазон IPv4",cidrv6:"діапазон IPv6",base64:"рядок у кодуванні base64",base64url:"рядок у кодуванні base64url",json_string:"рядок JSON",e164:"номер E.164",jwt:"JWT",template_literal:"вхідні дані"},r={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Неправильні вхідні дані: очікується instanceof ${i.expected}, отримано ${s}`;return`Неправильні вхідні дані: очікується ${a}, отримано ${s}`}case"invalid_value":if(i.values.length===1)return`Неправильні вхідні дані: очікується ${k(i.values[0])}`;return`Неправильна опція: очікується одне з ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Занадто велике: очікується, що ${i.origin??"значення"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"елементів"}`;return`Занадто велике: очікується, що ${i.origin??"значення"} буде ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Занадто мале: очікується, що ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Занадто мале: очікується, що ${i.origin} буде ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Неправильний рядок: повинен починатися з "${a.prefix}"`;if(a.format==="ends_with")return`Неправильний рядок: повинен закінчуватися на "${a.suffix}"`;if(a.format==="includes")return`Неправильний рядок: повинен містити "${a.includes}"`;if(a.format==="regex")return`Неправильний рядок: повинен відповідати шаблону ${a.pattern}`;return`Неправильний ${n[a.format]??i.format}`}case"not_multiple_of":return`Неправильне число: повинно бути кратним ${i.divisor}`;case"unrecognized_keys":return`Нерозпізнаний ключ${i.keys.length>1?"і":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Неправильний ключ у ${i.origin}`;case"invalid_union":return"Неправильні вхідні дані";case"invalid_element":return`Неправильне значення у ${i.origin}`;default:return"Неправильні вхідні дані"}}},$k=()=>{let e={string:{unit:"حروف",verb:"ہونا"},file:{unit:"بائٹس",verb:"ہونا"},array:{unit:"آئٹمز",verb:"ہونا"},set:{unit:"آئٹمز",verb:"ہونا"}};function t(i){return e[i]??null}let n={regex:"ان پٹ",email:"ای میل ایڈریس",url:"یو آر ایل",emoji:"ایموجی",uuid:"یو یو آئی ڈی",uuidv4:"یو یو آئی ڈی وی 4",uuidv6:"یو یو آئی ڈی وی 6",nanoid:"نینو آئی ڈی",guid:"جی یو آئی ڈی",cuid:"سی یو آئی ڈی",cuid2:"سی یو آئی ڈی 2",ulid:"یو ایل آئی ڈی",xid:"ایکس آئی ڈی",ksuid:"کے ایس یو آئی ڈی",datetime:"آئی ایس او ڈیٹ ٹائم",date:"آئی ایس او تاریخ",time:"آئی ایس او وقت",duration:"آئی ایس او مدت",ipv4:"آئی پی وی 4 ایڈریس",ipv6:"آئی پی وی 6 ایڈریس",cidrv4:"آئی پی وی 4 رینج",cidrv6:"آئی پی وی 6 رینج",base64:"بیس 64 ان کوڈڈ سٹرنگ",base64url:"بیس 64 یو آر ایل ان کوڈڈ سٹرنگ",json_string:"جے ایس او این سٹرنگ",e164:"ای 164 نمبر",jwt:"جے ڈبلیو ٹی",template_literal:"ان پٹ"},r={nan:"NaN",number:"نمبر",array:"آرے",null:"نل"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`غلط ان پٹ: instanceof ${i.expected} متوقع تھا، ${s} موصول ہوا`;return`غلط ان پٹ: ${a} متوقع تھا، ${s} موصول ہوا`}case"invalid_value":if(i.values.length===1)return`غلط ان پٹ: ${k(i.values[0])} متوقع تھا`;return`غلط آپشن: ${h(i.values,"|")} میں سے ایک متوقع تھا`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`بہت بڑا: ${i.origin??"ویلیو"} کے ${a}${i.maximum.toString()} ${o.unit??"عناصر"} ہونے متوقع تھے`;return`بہت بڑا: ${i.origin??"ویلیو"} کا ${a}${i.maximum.toString()} ہونا متوقع تھا`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`بہت چھوٹا: ${i.origin} کے ${a}${i.minimum.toString()} ${o.unit} ہونے متوقع تھے`;return`بہت چھوٹا: ${i.origin} کا ${a}${i.minimum.toString()} ہونا متوقع تھا`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`غلط سٹرنگ: "${a.prefix}" سے شروع ہونا چاہیے`;if(a.format==="ends_with")return`غلط سٹرنگ: "${a.suffix}" پر ختم ہونا چاہیے`;if(a.format==="includes")return`غلط سٹرنگ: "${a.includes}" شامل ہونا چاہیے`;if(a.format==="regex")return`غلط سٹرنگ: پیٹرن ${a.pattern} سے میچ ہونا چاہیے`;return`غلط ${n[a.format]??i.format}`}case"not_multiple_of":return`غلط نمبر: ${i.divisor} کا مضاعف ہونا چاہیے`;case"unrecognized_keys":return`غیر تسلیم شدہ کی${i.keys.length>1?"ز":""}: ${h(i.keys,"، ")}`;case"invalid_key":return`${i.origin} میں غلط کی`;case"invalid_union":return"غلط ان پٹ";case"invalid_element":return`${i.origin} میں غلط ویلیو`;default:return"غلط ان پٹ"}}},kk=()=>{let e={string:{unit:"belgi",verb:"bo‘lishi kerak"},file:{unit:"bayt",verb:"bo‘lishi kerak"},array:{unit:"element",verb:"bo‘lishi kerak"},set:{unit:"element",verb:"bo‘lishi kerak"},map:{unit:"yozuv",verb:"bo‘lishi kerak"}};function t(i){return e[i]??null}let n={regex:"kirish",email:"elektron pochta manzili",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},r={nan:"NaN",number:"raqam",array:"massiv"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Noto‘g‘ri kirish: kutilgan instanceof ${i.expected}, qabul qilingan ${s}`;return`Noto‘g‘ri kirish: kutilgan ${a}, qabul qilingan ${s}`}case"invalid_value":if(i.values.length===1)return`Noto‘g‘ri kirish: kutilgan ${k(i.values[0])}`;return`Noto‘g‘ri variant: quyidagilardan biri kutilgan ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Juda katta: kutilgan ${i.origin??"qiymat"} ${a}${i.maximum.toString()} ${o.unit} ${o.verb}`;return`Juda katta: kutilgan ${i.origin??"qiymat"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Juda kichik: kutilgan ${i.origin} ${a}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Juda kichik: kutilgan ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Noto‘g‘ri satr: "${a.prefix}" bilan boshlanishi kerak`;if(a.format==="ends_with")return`Noto‘g‘ri satr: "${a.suffix}" bilan tugashi kerak`;if(a.format==="includes")return`Noto‘g‘ri satr: "${a.includes}" ni o‘z ichiga olishi kerak`;if(a.format==="regex")return`Noto‘g‘ri satr: ${a.pattern} shabloniga mos kelishi kerak`;return`Noto‘g‘ri ${n[a.format]??i.format}`}case"not_multiple_of":return`Noto‘g‘ri raqam: ${i.divisor} ning karralisi bo‘lishi kerak`;case"unrecognized_keys":return`Noma’lum kalit${i.keys.length>1?"lar":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} dagi kalit noto‘g‘ri`;case"invalid_union":return"Noto‘g‘ri kirish";case"invalid_element":return`${i.origin} da noto‘g‘ri qiymat`;default:return"Noto‘g‘ri kirish"}}},Sk=()=>{let e={string:{unit:"ký tự",verb:"có"},file:{unit:"byte",verb:"có"},array:{unit:"phần tử",verb:"có"},set:{unit:"phần tử",verb:"có"}};function t(i){return e[i]??null}let n={regex:"đầu vào",email:"địa chỉ email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ngày giờ ISO",date:"ngày ISO",time:"giờ ISO",duration:"khoảng thời gian ISO",ipv4:"địa chỉ IPv4",ipv6:"địa chỉ IPv6",cidrv4:"dải IPv4",cidrv6:"dải IPv6",base64:"chuỗi mã hóa base64",base64url:"chuỗi mã hóa base64url",json_string:"chuỗi JSON",e164:"số E.164",jwt:"JWT",template_literal:"đầu vào"},r={nan:"NaN",number:"số",array:"mảng"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Đầu vào không hợp lệ: mong đợi instanceof ${i.expected}, nhận được ${s}`;return`Đầu vào không hợp lệ: mong đợi ${a}, nhận được ${s}`}case"invalid_value":if(i.values.length===1)return`Đầu vào không hợp lệ: mong đợi ${k(i.values[0])}`;return`Tùy chọn không hợp lệ: mong đợi một trong các giá trị ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${o.verb} ${a}${i.maximum.toString()} ${o.unit??"phần tử"}`;return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Quá nhỏ: mong đợi ${i.origin} ${o.verb} ${a}${i.minimum.toString()} ${o.unit}`;return`Quá nhỏ: mong đợi ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Chuỗi không hợp lệ: phải bắt đầu bằng "${a.prefix}"`;if(a.format==="ends_with")return`Chuỗi không hợp lệ: phải kết thúc bằng "${a.suffix}"`;if(a.format==="includes")return`Chuỗi không hợp lệ: phải bao gồm "${a.includes}"`;if(a.format==="regex")return`Chuỗi không hợp lệ: phải khớp với mẫu ${a.pattern}`;return`${n[a.format]??i.format} không hợp lệ`}case"not_multiple_of":return`Số không hợp lệ: phải là bội số của ${i.divisor}`;case"unrecognized_keys":return`Khóa không được nhận dạng: ${h(i.keys,", ")}`;case"invalid_key":return`Khóa không hợp lệ trong ${i.origin}`;case"invalid_union":return"Đầu vào không hợp lệ";case"invalid_element":return`Giá trị không hợp lệ trong ${i.origin}`;default:return"Đầu vào không hợp lệ"}}},xk=()=>{let e={string:{unit:"字符",verb:"包含"},file:{unit:"字节",verb:"包含"},array:{unit:"项",verb:"包含"},set:{unit:"项",verb:"包含"}};function t(i){return e[i]??null}let n={regex:"输入",email:"电子邮件",url:"URL",emoji:"表情符号",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日期时间",date:"ISO日期",time:"ISO时间",duration:"ISO时长",ipv4:"IPv4地址",ipv6:"IPv6地址",cidrv4:"IPv4网段",cidrv6:"IPv6网段",base64:"base64编码字符串",base64url:"base64url编码字符串",json_string:"JSON字符串",e164:"E.164号码",jwt:"JWT",template_literal:"输入"},r={nan:"NaN",number:"数字",array:"数组",null:"空值(null)"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`无效输入:期望 instanceof ${i.expected},实际接收 ${s}`;return`无效输入:期望 ${a},实际接收 ${s}`}case"invalid_value":if(i.values.length===1)return`无效输入:期望 ${k(i.values[0])}`;return`无效选项:期望以下之一 ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`数值过大:期望 ${i.origin??"值"} ${a}${i.maximum.toString()} ${o.unit??"个元素"}`;return`数值过大:期望 ${i.origin??"值"} ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`数值过小:期望 ${i.origin} ${a}${i.minimum.toString()} ${o.unit}`;return`数值过小:期望 ${i.origin} ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`无效字符串:必须以 "${a.prefix}" 开头`;if(a.format==="ends_with")return`无效字符串:必须以 "${a.suffix}" 结尾`;if(a.format==="includes")return`无效字符串:必须包含 "${a.includes}"`;if(a.format==="regex")return`无效字符串:必须满足正则表达式 ${a.pattern}`;return`无效${n[a.format]??i.format}`}case"not_multiple_of":return`无效数字:必须是 ${i.divisor} 的倍数`;case"unrecognized_keys":return`出现未知的键(key): ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} 中的键(key)无效`;case"invalid_union":return"无效输入";case"invalid_element":return`${i.origin} 中包含无效值(value)`;default:return"无效输入"}}},Uk=()=>{let e={string:{unit:"字元",verb:"擁有"},file:{unit:"位元組",verb:"擁有"},array:{unit:"項目",verb:"擁有"},set:{unit:"項目",verb:"擁有"}};function t(i){return e[i]??null}let n={regex:"輸入",email:"郵件地址",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 日期時間",date:"ISO 日期",time:"ISO 時間",duration:"ISO 期間",ipv4:"IPv4 位址",ipv6:"IPv6 位址",cidrv4:"IPv4 範圍",cidrv6:"IPv6 範圍",base64:"base64 編碼字串",base64url:"base64url 編碼字串",json_string:"JSON 字串",e164:"E.164 數值",jwt:"JWT",template_literal:"輸入"},r={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`無效的輸入值:預期為 instanceof ${i.expected},但收到 ${s}`;return`無效的輸入值:預期為 ${a},但收到 ${s}`}case"invalid_value":if(i.values.length===1)return`無效的輸入值:預期為 ${k(i.values[0])}`;return`無效的選項:預期為以下其中之一 ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`數值過大:預期 ${i.origin??"值"} 應為 ${a}${i.maximum.toString()} ${o.unit??"個元素"}`;return`數值過大:預期 ${i.origin??"值"} 應為 ${a}${i.maximum.toString()}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`數值過小:預期 ${i.origin} 應為 ${a}${i.minimum.toString()} ${o.unit}`;return`數值過小:預期 ${i.origin} 應為 ${a}${i.minimum.toString()}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`無效的字串:必須以 "${a.prefix}" 開頭`;if(a.format==="ends_with")return`無效的字串:必須以 "${a.suffix}" 結尾`;if(a.format==="includes")return`無效的字串:必須包含 "${a.includes}"`;if(a.format==="regex")return`無效的字串:必須符合格式 ${a.pattern}`;return`無效的 ${n[a.format]??i.format}`}case"not_multiple_of":return`無效的數字:必須為 ${i.divisor} 的倍數`;case"unrecognized_keys":return`無法識別的鍵值${i.keys.length>1?"們":""}:${h(i.keys,"、")}`;case"invalid_key":return`${i.origin} 中有無效的鍵值`;case"invalid_union":return"無效的輸入值";case"invalid_element":return`${i.origin} 中有無效的值`;default:return"無效的輸入值"}}},jk=()=>{let e={string:{unit:"àmi",verb:"ní"},file:{unit:"bytes",verb:"ní"},array:{unit:"nkan",verb:"ní"},set:{unit:"nkan",verb:"ní"}};function t(i){return e[i]??null}let n={regex:"ẹ̀rọ ìbáwọlé",email:"àdírẹ́sì ìmẹ́lì",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"àkókò ISO",date:"ọjọ́ ISO",time:"àkókò ISO",duration:"àkókò tó pé ISO",ipv4:"àdírẹ́sì IPv4",ipv6:"àdírẹ́sì IPv6",cidrv4:"àgbègbè IPv4",cidrv6:"àgbègbè IPv6",base64:"ọ̀rọ̀ tí a kọ́ ní base64",base64url:"ọ̀rọ̀ base64url",json_string:"ọ̀rọ̀ JSON",e164:"nọ́mbà E.164",jwt:"JWT",template_literal:"ẹ̀rọ ìbáwọlé"},r={nan:"NaN",number:"nọ́mbà",array:"akopọ"};return(i)=>{switch(i.code){case"invalid_type":{let a=r[i.expected]??i.expected,o=S(i.input),s=r[o]??o;if(/^[A-Z]/.test(i.expected))return`Ìbáwọlé aṣìṣe: a ní láti fi instanceof ${i.expected}, àmọ̀ a rí ${s}`;return`Ìbáwọlé aṣìṣe: a ní láti fi ${a}, àmọ̀ a rí ${s}`}case"invalid_value":if(i.values.length===1)return`Ìbáwọlé aṣìṣe: a ní láti fi ${k(i.values[0])}`;return`Àṣàyàn aṣìṣe: yan ọ̀kan lára ${h(i.values,"|")}`;case"too_big":{let a=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tó pọ̀ jù: a ní láti jẹ́ pé ${i.origin??"iye"} ${o.verb} ${a}${i.maximum} ${o.unit}`;return`Tó pọ̀ jù: a ní láti jẹ́ ${a}${i.maximum}`}case"too_small":{let a=i.inclusive?">=":">",o=t(i.origin);if(o)return`Kéré ju: a ní láti jẹ́ pé ${i.origin} ${o.verb} ${a}${i.minimum} ${o.unit}`;return`Kéré ju: a ní láti jẹ́ ${a}${i.minimum}`}case"invalid_format":{let a=i;if(a.format==="starts_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú "${a.prefix}"`;if(a.format==="ends_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ parí pẹ̀lú "${a.suffix}"`;if(a.format==="includes")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ ní "${a.includes}"`;if(a.format==="regex")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bá àpẹẹrẹ mu ${a.pattern}`;return`Aṣìṣe: ${n[a.format]??i.format}`}case"not_multiple_of":return`Nọ́mbà aṣìṣe: gbọ́dọ̀ jẹ́ èyà pípín ti ${i.divisor}`;case"unrecognized_keys":return`Bọtìnì àìmọ̀: ${h(i.keys,", ")}`;case"invalid_key":return`Bọtìnì aṣìṣe nínú ${i.origin}`;case"invalid_union":return"Ìbáwọlé aṣìṣe";case"invalid_element":return`Iye aṣìṣe nínú ${i.origin}`;default:return"Ìbáwọlé aṣìṣe"}}},Uu,Kc,Hc,de,Qc,Pm=(e,t={})=>(n)=>{let r=It({...n,processors:t});return P(e,r),xt(r,e),zt(r,e)},ei=(e,t,n={})=>(r)=>{let{libraryOptions:i,target:a}=r??{},o=It({...i??{},target:a,io:t,processors:n});return P(e,o),xt(o,e),zt(o,e)},tw,Am=(e,t,n,r)=>{let i=n;i.type="string";let{minimum:a,maximum:o,format:s,patterns:d,contentEncoding:l}=e._zod.bag;if(typeof a==="number")i.minLength=a;if(typeof o==="number")i.maxLength=o;if(s){if(i.format=tw[s]??s,i.format==="")delete i.format;if(s==="time")delete i.format}if(l)i.contentEncoding=l;if(d&&d.size>0){let c=[...d];if(c.length===1)i.pattern=c[0].source;else if(c.length>1)i.allOf=[...c.map((m)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:m.source}))]}},Dm=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:d,exclusiveMaximum:l,exclusiveMinimum:c}=e._zod.bag;if(typeof s==="string"&&s.includes("int"))i.type="integer";else i.type="number";let m=typeof c==="number"&&c>=(a??Number.NEGATIVE_INFINITY),v=typeof l==="number"&&l<=(o??Number.POSITIVE_INFINITY),p=t.target==="draft-04"||t.target==="openapi-3.0";if(m)if(p)i.minimum=c,i.exclusiveMinimum=!0;else i.exclusiveMinimum=c;else if(typeof a==="number")i.minimum=a;if(v)if(p)i.maximum=l,i.exclusiveMaximum=!0;else i.exclusiveMaximum=l;else if(typeof o==="number")i.maximum=o;if(typeof d==="number")i.multipleOf=d},Zm=(e,t,n,r)=>{n.type="boolean"},Cm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Rm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},Lm=(e,t,n,r)=>{if(t.target==="openapi-3.0")n.type="string",n.nullable=!0,n.enum=[null];else n.type="null"},Jm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},Mm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},Fm=(e,t,n,r)=>{n.not={}},Bm=(e,t,n,r)=>{},Wm=(e,t,n,r)=>{},Km=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},Hm=(e,t,n,r)=>{let i=e._zod.def,a=Yr(i.entries);if(a.every((o)=>typeof o==="number"))n.type="number";if(a.every((o)=>typeof o==="string"))n.type="string";n.enum=a},Gm=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let o of i.values)if(o===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else a.push(Number(o));else a.push(o);if(a.length===0);else if(a.length===1){let o=a[0];if(n.type=o===null?"null":typeof o,t.target==="draft-04"||t.target==="openapi-3.0")n.enum=[o];else n.const=o}else{if(a.every((o)=>typeof o==="number"))n.type="number";if(a.every((o)=>typeof o==="string"))n.type="string";if(a.every((o)=>typeof o==="boolean"))n.type="boolean";if(a.every((o)=>o===null))n.type="null";n.enum=a}},Xm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Ym=(e,t,n,r)=>{let i=n,a=e._zod.pattern;if(!a)throw Error("Pattern not found in template literal");i.type="string",i.pattern=a.source},Qm=(e,t,n,r)=>{let i=n,a={type:"string",format:"binary",contentEncoding:"binary"},{minimum:o,maximum:s,mime:d}=e._zod.bag;if(o!==void 0)a.minLength=o;if(s!==void 0)a.maxLength=s;if(d)if(d.length===1)a.contentMediaType=d[0],Object.assign(i,a);else Object.assign(i,a),i.anyOf=d.map((l)=>({contentMediaType:l}));else Object.assign(i,a)},Vm=(e,t,n,r)=>{n.type="boolean"},qm=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},ef=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},tf=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},nf=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},rf=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},af=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;if(typeof o==="number")i.minItems=o;if(typeof s==="number")i.maxItems=s;i.type="array",i.items=P(a.element,t,{...r,path:[...r.path,"items"]})},of=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="object",i.properties={};let o=a.shape;for(let l in o)i.properties[l]=P(o[l],t,{...r,path:[...r.path,"properties",l]});let s=new Set(Object.keys(o)),d=new Set([...s].filter((l)=>{let c=a.shape[l]._zod;if(t.io==="input")return c.optin===void 0;else return c.optout===void 0}));if(d.size>0)i.required=Array.from(d);if(a.catchall?._zod.def.type==="never")i.additionalProperties=!1;else if(!a.catchall){if(t.io==="output")i.additionalProperties=!1}else if(a.catchall)i.additionalProperties=P(a.catchall,t,{...r,path:[...r.path,"additionalProperties"]})},Ya=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((s,d)=>P(s,t,{...r,path:[...r.path,a?"oneOf":"anyOf",d]}));if(a)n.oneOf=o;else n.anyOf=o},sf=(e,t,n,r)=>{let i=e._zod.def,a=P(i.left,t,{...r,path:[...r.path,"allOf",0]}),o=P(i.right,t,{...r,path:[...r.path,"allOf",1]}),s=(l)=>("allOf"in l)&&Object.keys(l).length===1,d=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]];n.allOf=d},uf=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="array";let o=t.target==="draft-2020-12"?"prefixItems":"items",s=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",d=a.items.map((v,p)=>P(v,t,{...r,path:[...r.path,o,p]})),l=a.rest?P(a.rest,t,{...r,path:[...r.path,s,...t.target==="openapi-3.0"?[a.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(i.prefixItems=d,l)i.items=l}else if(t.target==="openapi-3.0"){if(i.items={anyOf:d},l)i.items.anyOf.push(l);if(i.minItems=d.length,!l)i.maxItems=d.length}else if(i.items=d,l)i.additionalItems=l;let{minimum:c,maximum:m}=e._zod.bag;if(typeof c==="number")i.minItems=c;if(typeof m==="number")i.maxItems=m},lf=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type="object";let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode==="loose"&&s&&s.size>0){let l=P(a.valueType,t,{...r,path:[...r.path,"patternProperties","*"]});i.patternProperties={};for(let c of s)i.patternProperties[c.source]=l}else{if(t.target==="draft-07"||t.target==="draft-2020-12")i.propertyNames=P(a.keyType,t,{...r,path:[...r.path,"propertyNames"]});i.additionalProperties=P(a.valueType,t,{...r,path:[...r.path,"additionalProperties"]})}let d=o._zod.values;if(d){let l=[...d].filter((c)=>typeof c==="string"||typeof c==="number");if(l.length>0)i.required=l}},df=(e,t,n,r)=>{let i=e._zod.def,a=P(i.innerType,t,r),o=t.seen.get(e);if(t.target==="openapi-3.0")o.ref=i.innerType,n.nullable=!0;else n.anyOf=[a,{type:"null"}]},cf=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},mf=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},ff=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);if(a.ref=i.innerType,t.io==="input")n._prefault=JSON.parse(JSON.stringify(i.defaultValue))},pf=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}n.default=o},vf=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has("$ZodTransform"),o=t.io==="input"?a?i.out:i.in:i.out;P(o,t,r);let s=t.seen.get(e);s.ref=o},hf=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},gf=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Qa=(e,t,n,r)=>{let i=e._zod.def;P(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},yf=(e,t,n,r)=>{let i=e._zod.innerType;P(i,t,r);let a=t.seen.get(e);a.ref=i},Dr,iw,_f,kf,Va,qa,eo,to,io,zf=(e,t)=>{Vr.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(n)=>ea(e,n)},flatten:{value:(n)=>qr(e,n)},addIssue:{value:(n)=>{e.issues.push(n),e.message=JSON.stringify(e.issues,Vi,2)}},addIssues:{value:(n)=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,Vi,2)}},isEmpty:{get(){return e.issues.length===0}}})},nw,ae,Uf,Tf,jf,Of,Ef,Nf,Pf,Af,Df,Zf,Cf,Rf,Tu,U,In,$i,C,xn,ii,ke,_i,zn,Un,Tn,jn,On,En,Nn,Pn,no,An,Dn,Zn,Cn,Rn,Ln,Jn,Ot,ki,at,wi,Si,Mn,oo,so,uo,co,mo,fo,po,Bn,vo,xi,zi,ho,go,yo,$o,Ut,wo,So,Tt,Io,xo,zo,Gn,Uo,jo,Oo,No,Xn,Do,Zo,Ro,Ui,Ti,Lo,Jo,Fo,Bo,Ko,Ho,ji,Gp,Xp,Qp=(...e)=>Nm({Codec:Ti,Boolean:wi,String:$i},...e),rw,Zr,b,sw,tv,Yo,iv,nv,rv,av,ov,sv,uv,lv,dv,cv,mv,fv,pv,hw,vv,hv,Cr,Xi,gv,yv,gw,yw,bv,bw,$v,_v,kv,wv,Sv,Qo,Iv,xv,zv,$w,Uv,_w,Tv,jv,Ov,kw,ww,Sw,Ev,Pv,Av,Ow,Ew,Dw,Rv,Zw,Cw,Lv,it,Rw,Lw,Jw,Mw,Fw,Bw,Ww,Kw,Jv,Gw="v1",Xw="v1",Yw="v1",Qw,Mv=30000,qw=5000,Bv,tS,nS="tool_executor.",rS="custom_tool.",aS="hook.",oS="compaction.compact",sS="checkpoint.create",uS="mistake_limit.decide",lS="user_instructions.snapshot",mS,Ue="[media omitted: invalid or exceeds size limit]",qo,bS=5242880,q=5242880,me=6291456,$S=8388608,Rr="ERROR: EMPTY CONTENT",xS="[image attached]",jS,Vt,ES=void 0,AS,ZS=3,CS,Qe,Du,Zu,JS,KS,Fu=12,Wu,YS,qS,tI,gI=`You are Cline, an AI coding agent. Your primary goal is to assist users with various coding tasks by leveraging your knowledge and the tools at your disposal. Given the user's prompt, you should use the tools available to you to answer user's question.
|
|
43
43
|
|
|
44
44
|
Always gather all the necessary context before starting to work on a task. For example, if you are generating a unit test or new code, make sure you understand the requirement, the naming conventions, frameworks and libraries used and aligned in the current codebase, and the environment and commands used to run and test the code etc. Always validate the new unit test at the end including running the code if possible for live feedback.
|
|
45
45
|
Review each question carefully and answer it with detailed, accurate information.
|
|
@@ -74,7 +74,7 @@ When you have completed the task, please provide a summary of what you did and a
|
|
|
74
74
|
|
|
75
75
|
If user asked a simple question without any coding context, answer it directly without using any tools.
|
|
76
76
|
{{CLINE_RULES}}
|
|
77
|
-
{{CLINE_METADATA}}`,
|
|
77
|
+
{{CLINE_METADATA}}`,yI=`You are Cline, a careful and helpful coding agent that works in the background.
|
|
78
78
|
You are tasked to solve an issue reported by the user who you cannot communicate with directly.
|
|
79
79
|
Your goal is to utilize the tools at your disposal to investigate and answer the question according to user's instructions with the aim to verify that the issue is resolved.
|
|
80
80
|
|
|
@@ -104,7 +104,7 @@ IMPORTANT:
|
|
|
104
104
|
- Always includes tool calls in your response until the task is completed. You should only end the task when all the requirements are met by calling the 'submit_and_exit' tool.
|
|
105
105
|
- Response without the submit_and_exit tool call will considered not completed and the task will continue.
|
|
106
106
|
{{CLINE_RULES}}
|
|
107
|
-
{{CLINE_METADATA}}`,Wr="# Workspace Configuration",bI=25463,$I=25466,_I=4317,kI="127.0.0.1:4317",wI,SI,II,xI="runtime.team.progress.v1",zI="runtime.team.lifecycle.v1",sn="CLINE_BUILD_ENV",sh="CLINE_DEBUG_HOST",uh="CLINE_DEBUG_PORT_BASE",CI="CLINE_ENVIRONMENT",RI="CLINE_ENVIRONMENT_OVERRIDE",Kr,LI="production",FI="CLINE_RUN_AS_HUB_DAEMON",WI="agent.reasoning.unexpected_tokens",KI="sdk.error",rx=128,Ze,bt,dx,rs,hh,cx,yh,bh,$h,hx=3600000,gx=240,yx=400,ye,$t,_h,Qn,bx,$x,_x,kx,wx,Sx,Ix,xx,zx,Ux,Tx,jx,Ox,Ex,Nx,Px,Ax,Dx,Zx,Cx,Rx,Lx,Jx,kh,Mx,Fx,wh,Bx,Wx,Kx,Hx,Gx,Xx,Yx,Qx,Vx,qx,e0,t0,Sh,Ih,c0,m0,p0,h0;var we=F(()=>{nb=Object.defineProperty;Or=new TextEncoder,lb={appstream2:"appstream",cloudhsmv2:"cloudhsm",email:"ses",marketplace:"aws-marketplace",mobile:"AWSMobileHubService",pinpoint:"mobiletargeting",queue:"sqs","git-codecommit":"codecommit","mturk-requester-sandbox":"mturk-requester","personalize-runtime":"personalize"},db=new Set(["authorization","content-type","content-length","user-agent","presigned-expires","expect","x-amzn-trace-id","range","connection"]);tu=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];Qi=new Map;u={};je(u,{xor:()=>jp,xid:()=>qf,void:()=>Sp,uuidv7:()=>Wf,uuidv6:()=>Bf,uuidv4:()=>Ff,uuid:()=>Mf,util:()=>j,url:()=>Kf,uppercase:()=>vn,unknown:()=>tt,union:()=>Wn,undefined:()=>kp,ulid:()=>Vf,uint64:()=>$p,uint32:()=>gp,tuple:()=>_o,trim:()=>_n,treeifyError:()=>zl,transform:()=>Hn,toUpperCase:()=>wn,toLowerCase:()=>kn,toJSONSchema:()=>bf,templateLiteral:()=>Bp,symbol:()=>_p,superRefine:()=>Xo,success:()=>Lp,stringbool:()=>Qp,stringFormat:()=>dp,string:()=>ti,strictObject:()=>Up,startsWith:()=>gn,slugify:()=>Sn,size:()=>vi,setErrorMap:()=>aw,set:()=>Ap,safeParseAsync:()=>Of,safeParse:()=>jf,safeEncodeAsync:()=>Cf,safeEncode:()=>Df,safeDecodeAsync:()=>Rf,safeDecode:()=>Zf,registry:()=>Sa,regexes:()=>Le,regex:()=>fn,refine:()=>Go,record:()=>ko,readonly:()=>Mo,property:()=>Xa,promise:()=>Wp,prettifyError:()=>Tl,preprocess:()=>qp,prefault:()=>Po,positive:()=>Wa,pipe:()=>an,partialRecord:()=>Ep,parseAsync:()=>Tf,parse:()=>Uf,overwrite:()=>Ee,optional:()=>ni,object:()=>zp,number:()=>ro,nullish:()=>Rp,nullable:()=>ri,null:()=>lo,normalize:()=>$n,nonpositive:()=>Ha,nonoptional:()=>Ao,nonnegative:()=>Ga,never:()=>Fn,negative:()=>Ka,nativeEnum:()=>Dp,nanoid:()=>Xf,nan:()=>Jp,multipleOf:()=>St,minSize:()=>Fe,minLength:()=>et,mime:()=>bn,meta:()=>Xp,maxSize:()=>jt,maxLength:()=>hi,map:()=>Pp,mac:()=>ip,lte:()=>ce,lt:()=>Je,lowercase:()=>pn,looseRecord:()=>Np,looseObject:()=>Tp,locales:()=>ka,literal:()=>Zp,length:()=>gi,lazy:()=>Wo,ksuid:()=>ep,keyof:()=>xp,jwt:()=>lp,json:()=>Vp,iso:()=>Va,ipv6:()=>np,ipv4:()=>tp,invertCodec:()=>Fp,intersection:()=>bo,int64:()=>bp,int32:()=>hp,int:()=>rn,instanceof:()=>Yp,includes:()=>hn,httpUrl:()=>Hf,hostname:()=>cp,hex:()=>mp,hash:()=>fp,guid:()=>Jf,gte:()=>Q,gt:()=>Me,globalRegistry:()=>de,getErrorMap:()=>ow,function:()=>on,fromJSONSchema:()=>dw,formatError:()=>ea,float64:()=>vp,float32:()=>pp,flattenError:()=>qr,file:()=>Cp,exactOptional:()=>To,enum:()=>Kn,endsWith:()=>yn,encodeAsync:()=>Pf,encode:()=>Ef,emoji:()=>Gf,email:()=>Lf,e164:()=>up,discriminatedUnion:()=>Op,describe:()=>Gp,decodeAsync:()=>Af,decode:()=>Nf,date:()=>Ip,custom:()=>Hp,cuid2:()=>Qf,cuid:()=>Yf,core:()=>cl,config:()=>W,coerce:()=>tv,codec:()=>Mp,clone:()=>fe,cidrv6:()=>ap,cidrv4:()=>rp,check:()=>Kp,catch:()=>Co,boolean:()=>ao,bigint:()=>yp,base64url:()=>sp,base64:()=>op,array:()=>Ii,any:()=>wp,_function:()=>on,_default:()=>Eo,_ZodString:()=>In,ZodXor:()=>ho,ZodXID:()=>En,ZodVoid:()=>po,ZodUnknown:()=>mo,ZodUnion:()=>zi,ZodUndefined:()=>so,ZodUUID:()=>ke,ZodURL:()=>_i,ZodULID:()=>On,ZodType:()=>U,ZodTuple:()=>$o,ZodTransform:()=>zo,ZodTemplateLiteral:()=>Fo,ZodSymbol:()=>oo,ZodSuccess:()=>Do,ZodStringFormat:()=>C,ZodString:()=>$i,ZodSet:()=>So,ZodRecord:()=>Ut,ZodRealError:()=>ae,ZodReadonly:()=>Jo,ZodPromise:()=>Ko,ZodPreprocess:()=>Lo,ZodPrefault:()=>No,ZodPipe:()=>Ui,ZodOptional:()=>Gn,ZodObject:()=>xi,ZodNumberFormat:()=>at,ZodNumber:()=>ki,ZodNullable:()=>jo,ZodNull:()=>uo,ZodNonOptional:()=>Xn,ZodNever:()=>fo,ZodNanoID:()=>Un,ZodNaN:()=>Ro,ZodMap:()=>wo,ZodMAC:()=>no,ZodLiteral:()=>Io,ZodLazy:()=>Bo,ZodKSUID:()=>Nn,ZodJWT:()=>Jn,ZodIssueCode:()=>rw,ZodIntersection:()=>yo,ZodISOTime:()=>to,ZodISODuration:()=>io,ZodISODateTime:()=>qa,ZodISODate:()=>eo,ZodIPv6:()=>An,ZodIPv4:()=>Pn,ZodGUID:()=>ii,ZodFunction:()=>Ho,ZodFirstPartyTypeKind:()=>Zr,ZodFile:()=>xo,ZodExactOptional:()=>Uo,ZodError:()=>nw,ZodEnum:()=>Tt,ZodEmoji:()=>zn,ZodEmail:()=>xn,ZodE164:()=>Ln,ZodDiscriminatedUnion:()=>go,ZodDefault:()=>Oo,ZodDate:()=>Bn,ZodCustomStringFormat:()=>Ot,ZodCustom:()=>ji,ZodCodec:()=>Ti,ZodCatch:()=>Zo,ZodCUID2:()=>jn,ZodCUID:()=>Tn,ZodCIDRv6:()=>Zn,ZodCIDRv4:()=>Dn,ZodBoolean:()=>wi,ZodBigIntFormat:()=>Mn,ZodBigInt:()=>Si,ZodBase64URL:()=>Rn,ZodBase64:()=>Cn,ZodArray:()=>vo,ZodAny:()=>co,TimePrecision:()=>Qc,NEVER:()=>ml,$output:()=>Kc,$input:()=>Hc,$brand:()=>fl});cl={};je(cl,{version:()=>Td,util:()=>j,treeifyError:()=>zl,toJSONSchema:()=>bf,toDotPath:()=>Ul,safeParseAsync:()=>Ol,safeParse:()=>jl,safeEncodeAsync:()=>m$,safeEncode:()=>d$,safeDecodeAsync:()=>f$,safeDecode:()=>c$,registry:()=>Sa,regexes:()=>Le,process:()=>P,prettifyError:()=>Tl,parseAsync:()=>Pr,parse:()=>Nr,meta:()=>Em,locales:()=>ka,isValidJWT:()=>ec,isValidBase64URL:()=>Qd,isValidBase64:()=>pa,initializeContext:()=>It,globalRegistry:()=>de,globalConfig:()=>qt,formatError:()=>ea,flattenError:()=>qr,finalize:()=>zt,extractDefs:()=>xt,encodeAsync:()=>u$,encode:()=>o$,describe:()=>Om,decodeAsync:()=>l$,decode:()=>s$,createToJSONSchemaMethod:()=>Pm,createStandardJSONSchemaMethod:()=>ei,config:()=>W,clone:()=>fe,_xor:()=>Nk,_xid:()=>Aa,_void:()=>_m,_uuidv7:()=>Ta,_uuidv6:()=>Ua,_uuidv4:()=>za,_uuid:()=>xa,_url:()=>mn,_uppercase:()=>vn,_unknown:()=>bm,_union:()=>Ek,_undefined:()=>hm,_ulid:()=>Pa,_uint64:()=>pm,_uint32:()=>um,_tuple:()=>Dk,_trim:()=>_n,_transform:()=>Fk,_toUpperCase:()=>wn,_toLowerCase:()=>kn,_templateLiteral:()=>Vk,_symbol:()=>vm,_superRefine:()=>Tm,_success:()=>Gk,_stringbool:()=>Nm,_stringFormat:()=>yi,_string:()=>Gc,_startsWith:()=>gn,_slugify:()=>Sn,_size:()=>vi,_set:()=>Rk,_safeParseAsync:()=>di,_safeParse:()=>li,_safeEncodeAsync:()=>sa,_safeEncode:()=>aa,_safeDecodeAsync:()=>ua,_safeDecode:()=>oa,_regex:()=>fn,_refine:()=>Um,_record:()=>Zk,_readonly:()=>Qk,_property:()=>Xa,_promise:()=>ew,_positive:()=>Wa,_pipe:()=>Yk,_parseAsync:()=>ui,_parse:()=>si,_overwrite:()=>Ee,_optional:()=>Bk,_number:()=>im,_nullable:()=>Wk,_null:()=>gm,_normalize:()=>$n,_nonpositive:()=>Ha,_nonoptional:()=>Hk,_nonnegative:()=>Ga,_never:()=>$m,_negative:()=>Ka,_nativeEnum:()=>Jk,_nanoid:()=>Oa,_nan:()=>Sm,_multipleOf:()=>St,_minSize:()=>Fe,_minLength:()=>et,_min:()=>Q,_mime:()=>bn,_maxSize:()=>jt,_maxLength:()=>hi,_max:()=>ce,_map:()=>Ck,_mac:()=>Yc,_lte:()=>ce,_lt:()=>Je,_lowercase:()=>pn,_literal:()=>Mk,_length:()=>gi,_lazy:()=>qk,_ksuid:()=>Da,_jwt:()=>Ba,_isoTime:()=>em,_isoDuration:()=>tm,_isoDateTime:()=>Vc,_isoDate:()=>qc,_ipv6:()=>Ca,_ipv4:()=>Za,_intersection:()=>Ak,_int64:()=>fm,_int32:()=>sm,_int:()=>rm,_includes:()=>hn,_guid:()=>nn,_gte:()=>Q,_gt:()=>Me,_float64:()=>om,_float32:()=>am,_file:()=>xm,_enum:()=>Lk,_endsWith:()=>yn,_encodeAsync:()=>na,_encode:()=>ta,_emoji:()=>ja,_email:()=>Ia,_e164:()=>Fa,_discriminatedUnion:()=>Pk,_default:()=>Kk,_decodeAsync:()=>ra,_decode:()=>ia,_date:()=>km,_custom:()=>zm,_cuid2:()=>Na,_cuid:()=>Ea,_coercedString:()=>Xc,_coercedNumber:()=>nm,_coercedDate:()=>wm,_coercedBoolean:()=>dm,_coercedBigint:()=>mm,_cidrv6:()=>La,_cidrv4:()=>Ra,_check:()=>jm,_catch:()=>Xk,_boolean:()=>lm,_bigint:()=>cm,_base64url:()=>Ma,_base64:()=>Ja,_array:()=>Im,_any:()=>ym,TimePrecision:()=>Qc,NEVER:()=>ml,JSONSchemaGenerator:()=>$f,JSONSchema:()=>iw,Doc:()=>fa,$output:()=>Kc,$input:()=>Hc,$constructor:()=>f,$brand:()=>fl,$ZodXor:()=>yc,$ZodXID:()=>Rd,$ZodVoid:()=>cc,$ZodUnknown:()=>lc,$ZodUnion:()=>cn,$ZodUndefined:()=>oc,$ZodUUID:()=>Od,$ZodURL:()=>Nd,$ZodULID:()=>Cd,$ZodType:()=>z,$ZodTuple:()=>ya,$ZodTransform:()=>zc,$ZodTemplateLiteral:()=>Cc,$ZodSymbol:()=>ac,$ZodSuccess:()=>Nc,$ZodStringFormat:()=>Z,$ZodString:()=>pi,$ZodSet:()=>wc,$ZodRegistry:()=>wa,$ZodRecord:()=>_c,$ZodRealError:()=>re,$ZodReadonly:()=>Zc,$ZodPromise:()=>Lc,$ZodPreprocess:()=>Dc,$ZodPrefault:()=>Oc,$ZodPipe:()=>$a,$ZodOptional:()=>ba,$ZodObjectJIT:()=>gc,$ZodObject:()=>hc,$ZodNumberFormat:()=>nc,$ZodNumber:()=>va,$ZodNullable:()=>Tc,$ZodNull:()=>sc,$ZodNonOptional:()=>Ec,$ZodNever:()=>dc,$ZodNanoID:()=>Ad,$ZodNaN:()=>Ac,$ZodMap:()=>kc,$ZodMAC:()=>Hd,$ZodLiteral:()=>Ic,$ZodLazy:()=>Jc,$ZodKSUID:()=>Ld,$ZodJWT:()=>tc,$ZodIntersection:()=>$c,$ZodISOTime:()=>Fd,$ZodISODuration:()=>Bd,$ZodISODateTime:()=>Jd,$ZodISODate:()=>Md,$ZodIPv6:()=>Kd,$ZodIPv4:()=>Wd,$ZodGUID:()=>jd,$ZodFunction:()=>Rc,$ZodFile:()=>xc,$ZodExactOptional:()=>Uc,$ZodError:()=>Vr,$ZodEnum:()=>Sc,$ZodEncodeError:()=>ai,$ZodEmoji:()=>Pd,$ZodEmail:()=>Ed,$ZodE164:()=>qd,$ZodDiscriminatedUnion:()=>bc,$ZodDefault:()=>jc,$ZodDate:()=>mc,$ZodCustomStringFormat:()=>ic,$ZodCustom:()=>Mc,$ZodCodec:()=>_a,$ZodCheckUpperCase:()=>kd,$ZodCheckStringFormat:()=>fi,$ZodCheckStartsWith:()=>Sd,$ZodCheckSizeEquals:()=>hd,$ZodCheckRegex:()=>$d,$ZodCheckProperty:()=>xd,$ZodCheckOverwrite:()=>Ud,$ZodCheckNumberFormat:()=>md,$ZodCheckMultipleOf:()=>cd,$ZodCheckMinSize:()=>vd,$ZodCheckMinLength:()=>yd,$ZodCheckMimeType:()=>zd,$ZodCheckMaxSize:()=>pd,$ZodCheckMaxLength:()=>gd,$ZodCheckLowerCase:()=>_d,$ZodCheckLessThan:()=>ca,$ZodCheckLengthEquals:()=>bd,$ZodCheckIncludes:()=>wd,$ZodCheckGreaterThan:()=>ma,$ZodCheckEndsWith:()=>Id,$ZodCheckBigIntFormat:()=>fd,$ZodCheck:()=>J,$ZodCatch:()=>Pc,$ZodCUID2:()=>Zd,$ZodCUID:()=>Dd,$ZodCIDRv6:()=>Xd,$ZodCIDRv4:()=>Gd,$ZodBoolean:()=>ha,$ZodBigIntFormat:()=>rc,$ZodBigInt:()=>ga,$ZodBase64URL:()=>Vd,$ZodBase64:()=>Yd,$ZodAsyncError:()=>Re,$ZodArray:()=>fc,$ZodAny:()=>uc});ml=Object.freeze({status:"aborted"});fl=Symbol("zod_brand");Re=class Re extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}};ai=class ai extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}};(su=globalThis).__zod_globalConfig??(su.__zod_globalConfig={});qt=globalThis.__zod_globalConfig;j={};je(j,{unwrapMessage:()=>Xt,uint8ArrayToHex:()=>a$,uint8ArrayToBase64url:()=>n$,uint8ArrayToBase64:()=>Sl,stringifyPrimitive:()=>k,slugify:()=>vl,shallowClone:()=>gl,safeExtend:()=>Qb,required:()=>e$,randomString:()=>Bb,propertyKeyTypes:()=>qi,promiseAllObject:()=>Fb,primitiveTypes:()=>yl,prefixIssues:()=>le,pick:()=>Gb,partial:()=>qb,parsedType:()=>S,optionalKeys:()=>bl,omit:()=>Xb,objectClone:()=>Lb,numKeys:()=>Wb,nullish:()=>rt,normalizeParams:()=>y,mergeDefs:()=>Oe,merge:()=>Vb,jsonStringifyReplacer:()=>Vi,joinValues:()=>h,issue:()=>en,isPlainObject:()=>qe,isObject:()=>kt,hexToUint8Array:()=>r$,getSizableOrigin:()=>ln,getParsedType:()=>Kb,getLengthableOrigin:()=>dn,getEnumValues:()=>Yr,getElementAtPath:()=>Mb,floatSafeRemainder:()=>pl,finalizeIssue:()=>ne,extend:()=>Yb,explicitlyAborted:()=>kl,escapeRegex:()=>Te,esc:()=>Er,defineLazy:()=>O,createTransparentProxy:()=>Hb,cloneDef:()=>Jb,clone:()=>fe,cleanRegex:()=>un,cleanEnum:()=>t$,captureStackTrace:()=>Qr,cached:()=>oi,base64urlToUint8Array:()=>i$,base64ToUint8Array:()=>wl,assignProp:()=>Be,assertNotEqual:()=>Db,assertNever:()=>Cb,assertIs:()=>Zb,assertEqual:()=>Ab,assert:()=>Rb,allowsEval:()=>hl,aborted:()=>Ve,NUMBER_FORMAT_RANGES:()=>$l,Class:()=>Il,BIGINT_FORMAT_RANGES:()=>_l});uu=Symbol("evaluating");Qr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};hl=oi(()=>{if(qt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return Function(""),!0}catch(e){return!1}});qi=new Set(["string","number","symbol"]),yl=new Set(["string","number","bigint","boolean","symbol","undefined"]);$l={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},_l={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};Vr=f("$ZodError",xl),re=f("$ZodError",xl,{Parent:Error});Nr=si(re),Pr=ui(re),jl=li(re),Ol=di(re),o$=ta(re),s$=ia(re),u$=na(re),l$=ra(re),d$=aa(re),c$=oa(re),m$=sa(re),f$=ua(re),Le={};je(Le,{xid:()=>Al,uuid7:()=>g$,uuid6:()=>h$,uuid4:()=>v$,uuid:()=>wt,uppercase:()=>ld,unicodeEmail:()=>Jl,undefined:()=>sd,ulid:()=>Pl,time:()=>ed,string:()=>id,sha512_hex:()=>C$,sha512_base64url:()=>L$,sha512_base64:()=>R$,sha384_hex:()=>A$,sha384_base64url:()=>Z$,sha384_base64:()=>D$,sha256_hex:()=>E$,sha256_base64url:()=>P$,sha256_base64:()=>N$,sha1_hex:()=>T$,sha1_base64url:()=>O$,sha1_base64:()=>j$,rfc5322Email:()=>b$,number:()=>da,null:()=>od,nanoid:()=>Zl,md5_hex:()=>x$,md5_base64url:()=>U$,md5_base64:()=>z$,mac:()=>Wl,lowercase:()=>ud,ksuid:()=>Dl,ipv6:()=>Bl,ipv4:()=>Fl,integer:()=>rd,idnEmail:()=>$$,httpProtocol:()=>Xl,html5Email:()=>y$,hostname:()=>w$,hex:()=>I$,guid:()=>Rl,extendedDuration:()=>p$,emoji:()=>Ml,email:()=>Ll,e164:()=>Yl,duration:()=>Cl,domain:()=>S$,datetime:()=>td,date:()=>Vl,cuid2:()=>Nl,cuid:()=>El,cidrv6:()=>Hl,cidrv4:()=>Kl,browserEmail:()=>_$,boolean:()=>ad,bigint:()=>nd,base64url:()=>la,base64:()=>Gl});El=/^[cC][0-9a-z]{6,}$/,Nl=/^[0-9a-z]+$/,Pl=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Al=/^[0-9a-vA-V]{20}$/,Dl=/^[A-Za-z0-9]{27}$/,Zl=/^[a-zA-Z0-9_-]{21}$/,Cl=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,p$=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Rl=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,v$=wt(4),h$=wt(6),g$=wt(7),Ll=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,y$=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,b$=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,Jl=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,$$=Jl,_$=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;Fl=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Bl=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Kl=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Hl=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Gl=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,la=/^[A-Za-z0-9_-]*$/,w$=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,S$=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,Xl=/^https?$/,Yl=/^\+[1-9]\d{6,14}$/,Vl=new RegExp(`^${Ql}$`);nd=/^-?\d+n?$/,rd=/^-?\d+$/,da=/^-?\d+(?:\.\d+)?$/,ad=/^(?:true|false)$/i,od=/^null$/i,sd=/^undefined$/i,ud=/^[^A-Z]*$/,ld=/^[^a-z]*$/,I$=/^[0-9a-fA-F]*$/;x$=/^[0-9a-fA-F]{32}$/,z$=ci(22,"=="),U$=mi(22),T$=/^[0-9a-fA-F]{40}$/,j$=ci(27,"="),O$=mi(27),E$=/^[0-9a-fA-F]{64}$/,N$=ci(43,"="),P$=mi(43),A$=/^[0-9a-fA-F]{96}$/,D$=ci(64,""),Z$=mi(64),C$=/^[0-9a-fA-F]{128}$/,R$=ci(86,"=="),L$=mi(86),J=f("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),dd={number:"number",bigint:"bigint",object:"date"},ca=f("$ZodCheckLessThan",(e,t)=>{J.init(e,t);let n=dd[typeof t.value];e._zod.onattach.push((r)=>{let i=r._zod.bag,a=(t.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<a)if(t.inclusive)i.maximum=t.value;else i.exclusiveMaximum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value<=t.value:r.value<t.value)return;r.issues.push({origin:n,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),ma=f("$ZodCheckGreaterThan",(e,t)=>{J.init(e,t);let n=dd[typeof t.value];e._zod.onattach.push((r)=>{let i=r._zod.bag,a=(t.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>a)if(t.inclusive)i.minimum=t.value;else i.exclusiveMinimum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value>=t.value:r.value>t.value)return;r.issues.push({origin:n,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),cd=f("$ZodCheckMultipleOf",(e,t)=>{J.init(e,t),e._zod.onattach.push((n)=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=t.value)}),e._zod.check=(n)=>{if(typeof n.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof n.value==="bigint"?n.value%t.value===BigInt(0):pl(n.value,t.value)===0)return;n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),md=f("$ZodCheckNumberFormat",(e,t)=>{J.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),r=n?"int":"number",[i,a]=$l[t.format];e._zod.onattach.push((o)=>{let s=o._zod.bag;if(s.format=t.format,s.minimum=i,s.maximum=a,n)s.pattern=rd}),e._zod.check=(o)=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){if(s>0)o.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});else o.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}if(s<i)o.issues.push({origin:"number",input:s,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort});if(s>a)o.issues.push({origin:"number",input:s,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),fd=f("$ZodCheckBigIntFormat",(e,t)=>{J.init(e,t);let[n,r]=_l[t.format];e._zod.onattach.push((i)=>{let a=i._zod.bag;a.format=t.format,a.minimum=n,a.maximum=r}),e._zod.check=(i)=>{let a=i.value;if(a<n)i.issues.push({origin:"bigint",input:a,code:"too_small",minimum:n,inclusive:!0,inst:e,continue:!t.abort});if(a>r)i.issues.push({origin:"bigint",input:a,code:"too_big",maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),pd=f("$ZodCheckMaxSize",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let i=r.value;if(i.size<=t.maximum)return;r.issues.push({origin:ln(i),code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),vd=f("$ZodCheckMinSize",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let i=r.value;if(i.size>=t.minimum)return;r.issues.push({origin:ln(i),code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),hd=f("$ZodCheckSizeEquals",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.minimum=t.size,i.maximum=t.size,i.size=t.size}),e._zod.check=(r)=>{let i=r.value,a=i.size;if(a===t.size)return;let o=a>t.size;r.issues.push({origin:ln(i),...o?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),gd=f("$ZodCheckMaxLength",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let i=r.value;if(i.length<=t.maximum)return;let a=dn(i);r.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),yd=f("$ZodCheckMinLength",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let i=r.value;if(i.length>=t.minimum)return;let a=dn(i);r.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),bd=f("$ZodCheckLengthEquals",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.minimum=t.length,i.maximum=t.length,i.length=t.length}),e._zod.check=(r)=>{let i=r.value,a=i.length;if(a===t.length)return;let o=dn(i),s=a>t.length;r.issues.push({origin:o,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),fi=f("$ZodCheckStringFormat",(e,t)=>{var n,r;if(J.init(e,t),e._zod.onattach.push((i)=>{let a=i._zod.bag;if(a.format=t.format,t.pattern)a.patterns??(a.patterns=new Set),a.patterns.add(t.pattern)}),t.pattern)(n=e._zod).check??(n.check=(i)=>{if(t.pattern.lastIndex=0,t.pattern.test(i.value))return;i.issues.push({origin:"string",code:"invalid_format",format:t.format,input:i.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(r=e._zod).check??(r.check=()=>{})}),$d=f("$ZodCheckRegex",(e,t)=>{fi.init(e,t),e._zod.check=(n)=>{if(t.pattern.lastIndex=0,t.pattern.test(n.value))return;n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),_d=f("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=ud),fi.init(e,t)}),kd=f("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=ld),fi.init(e,t)}),wd=f("$ZodCheckIncludes",(e,t)=>{J.init(e,t);let n=Te(t.includes),r=new RegExp(typeof t.position==="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push((i)=>{let a=i._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(r)}),e._zod.check=(i)=>{if(i.value.includes(t.includes,t.position))return;i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:i.value,inst:e,continue:!t.abort})}}),Sd=f("$ZodCheckStartsWith",(e,t)=>{J.init(e,t);let n=new RegExp(`^${Te(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.startsWith(t.prefix))return;r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),Id=f("$ZodCheckEndsWith",(e,t)=>{J.init(e,t);let n=new RegExp(`.*${Te(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.endsWith(t.suffix))return;r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}});xd=f("$ZodCheckProperty",(e,t)=>{J.init(e,t),e._zod.check=(n)=>{let r=t.schema._zod.run({value:n.value[t.property],issues:[]},{});if(r instanceof Promise)return r.then((i)=>lu(i,n,t.property));lu(r,n,t.property);return}}),zd=f("$ZodCheckMimeType",(e,t)=>{J.init(e,t);let n=new Set(t.mime);e._zod.onattach.push((r)=>{r._zod.bag.mime=t.mime}),e._zod.check=(r)=>{if(n.has(r.value.type))return;r.issues.push({code:"invalid_value",values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),Ud=f("$ZodCheckOverwrite",(e,t)=>{J.init(e,t),e._zod.check=(n)=>{n.value=t.tx(n.value)}});Td={major:4,minor:4,patch:3},z=f("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Td;let r=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))r.unshift(e);for(let i of r)for(let a of i._zod.onattach)a(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let i=(o,s,d)=>{let l=Ve(o),c;for(let m of s){if(m._zod.def.when){if(kl(o))continue;if(!m._zod.def.when(o))continue}else if(l)continue;let v=o.issues.length,p=m._zod.check(o);if(p instanceof Promise&&d?.async===!1)throw new Re;if(c||p instanceof Promise)c=(c??Promise.resolve()).then(async()=>{if(await p,o.issues.length===v)return;if(!l)l=Ve(o,v)});else{if(o.issues.length===v)continue;if(!l)l=Ve(o,v)}}if(c)return c.then(()=>{return o});return o},a=(o,s,d)=>{if(Ve(o))return o.aborted=!0,o;let l=i(s,r,d);if(l instanceof Promise){if(d.async===!1)throw new Re;return l.then((c)=>e._zod.parse(c,d))}return e._zod.parse(l,d)};e._zod.run=(o,s)=>{if(s.skipChecks)return e._zod.parse(o,s);if(s.direction==="backward"){let l=e._zod.parse({value:o.value,issues:[]},{...s,skipChecks:!0});if(l instanceof Promise)return l.then((c)=>{return a(c,o,s)});return a(l,o,s)}let d=e._zod.parse(o,s);if(d instanceof Promise){if(s.async===!1)throw new Re;return d.then((l)=>i(l,r,s))}return i(d,r,s)}}O(e,"~standard",()=>({validate:(i)=>{try{let a=jl(e,i);return a.success?{value:a.data}:{issues:a.error?.issues}}catch(a){return Ol(e,i).then((o)=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}))}),pi=f("$ZodString",(e,t)=>{z.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??id(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch(i){}if(typeof n.value==="string")return n;return n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),Z=f("$ZodStringFormat",(e,t)=>{fi.init(e,t),pi.init(e,t)}),jd=f("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Rl),Z.init(e,t)}),Od=f("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=wt(n))}else t.pattern??(t.pattern=wt());Z.init(e,t)}),Ed=f("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Ll),Z.init(e,t)}),Nd=f("$ZodURL",(e,t)=>{Z.init(e,t),e._zod.check=(n)=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===Xl.source){if(!/^https?:\/\//i.test(r)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}}let i=new URL(r);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(i.hostname))n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol))n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})}if(t.normalize)n.value=i.href;else n.value=r;return}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Pd=f("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Ml()),Z.init(e,t)}),Ad=f("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Zl),Z.init(e,t)}),Dd=f("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=El),Z.init(e,t)}),Zd=f("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Nl),Z.init(e,t)}),Cd=f("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Pl),Z.init(e,t)}),Rd=f("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Al),Z.init(e,t)}),Ld=f("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Dl),Z.init(e,t)}),Jd=f("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=td(t)),Z.init(e,t)}),Md=f("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Vl),Z.init(e,t)}),Fd=f("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=ed(t)),Z.init(e,t)}),Bd=f("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Cl),Z.init(e,t)}),Wd=f("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Fl),Z.init(e,t),e._zod.bag.format="ipv4"}),Kd=f("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Bl),Z.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(n)=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),Hd=f("$ZodMAC",(e,t)=>{t.pattern??(t.pattern=Wl(t.delimiter)),Z.init(e,t),e._zod.bag.format="mac"}),Gd=f("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Kl),Z.init(e,t)}),Xd=f("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Hl),Z.init(e,t),e._zod.check=(n)=>{let r=n.value.split("/");try{if(r.length!==2)throw Error();let[i,a]=r;if(!a)throw Error();let o=Number(a);if(`${o}`!==a)throw Error();if(o<0||o>128)throw Error();new URL(`http://[${i}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});Yd=f("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Gl),Z.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(n)=>{if(pa(n.value))return;n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});Vd=f("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=la),Z.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(n)=>{if(Qd(n.value))return;n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),qd=f("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Yl),Z.init(e,t)});tc=f("$ZodJWT",(e,t)=>{Z.init(e,t),e._zod.check=(n)=>{if(ec(n.value,t.alg))return;n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),ic=f("$ZodCustomStringFormat",(e,t)=>{Z.init(e,t),e._zod.check=(n)=>{if(t.fn(n.value))return;n.issues.push({code:"invalid_format",format:t.format,input:n.value,inst:e,continue:!t.abort})}}),va=f("$ZodNumber",(e,t)=>{z.init(e,t),e._zod.pattern=e._zod.bag.pattern??da,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch(o){}let i=n.value;if(typeof i==="number"&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==="number"?Number.isNaN(i)?"NaN":!Number.isFinite(i)?"Infinity":void 0:void 0;return n.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...a?{received:a}:{}}),n}}),nc=f("$ZodNumberFormat",(e,t)=>{md.init(e,t),va.init(e,t)}),ha=f("$ZodBoolean",(e,t)=>{z.init(e,t),e._zod.pattern=ad,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(a){}let i=n.value;if(typeof i==="boolean")return n;return n.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),n}}),ga=f("$ZodBigInt",(e,t)=>{z.init(e,t),e._zod.pattern=nd,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch(i){}if(typeof n.value==="bigint")return n;return n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),rc=f("$ZodBigIntFormat",(e,t)=>{fd.init(e,t),ga.init(e,t)}),ac=f("$ZodSymbol",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i==="symbol")return n;return n.issues.push({expected:"symbol",code:"invalid_type",input:i,inst:e}),n}}),oc=f("$ZodUndefined",(e,t)=>{z.init(e,t),e._zod.pattern=sd,e._zod.values=new Set([void 0]),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"undefined",code:"invalid_type",input:i,inst:e}),n}}),sc=f("$ZodNull",(e,t)=>{z.init(e,t),e._zod.pattern=od,e._zod.values=new Set([null]),e._zod.parse=(n,r)=>{let i=n.value;if(i===null)return n;return n.issues.push({expected:"null",code:"invalid_type",input:i,inst:e}),n}}),uc=f("$ZodAny",(e,t)=>{z.init(e,t),e._zod.parse=(n)=>n}),lc=f("$ZodUnknown",(e,t)=>{z.init(e,t),e._zod.parse=(n)=>n}),dc=f("$ZodNever",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{return n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n}}),cc=f("$ZodVoid",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"void",code:"invalid_type",input:i,inst:e}),n}}),mc=f("$ZodDate",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(o){}let i=n.value,a=i instanceof Date;if(a&&!Number.isNaN(i.getTime()))return n;return n.issues.push({expected:"date",code:"invalid_type",input:i,...a?{received:"Invalid Date"}:{},inst:e}),n}});fc=f("$ZodArray",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let o=0;o<i.length;o++){let s=i[o],d=t.element._zod.run({value:s,issues:[]},r);if(d instanceof Promise)a.push(d.then((l)=>du(l,n,o)));else du(d,n,o)}if(a.length)return Promise.all(a).then(()=>n);return n}});hc=f("$ZodObject",(e,t)=>{if(z.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let o=t.shape;Object.defineProperty(t,"shape",{get:()=>{let s={...o};return Object.defineProperty(t,"shape",{value:s}),s}})}let n=oi(()=>pc(t));O(e._zod,"propValues",()=>{let o=t.shape,s={};for(let d in o){let l=o[d]._zod;if(l.values){s[d]??(s[d]=new Set);for(let c of l.values)s[d].add(c)}}return s});let r=kt,i=t.catchall,a;e._zod.parse=(o,s)=>{a??(a=n.value);let d=o.value;if(!r(d))return o.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),o;o.value={};let l=[],c=a.shape;for(let m of a.keys){let v=c[m],p=v._zod.optin==="optional",g=v._zod.optout==="optional",$=v._zod.run({value:d[m],issues:[]},s);if($ instanceof Promise)l.push($.then((E)=>tn(E,o,m,d,p,g)));else tn($,o,m,d,p,g)}if(!i)return l.length?Promise.all(l).then(()=>o):o;return vc(l,d,o,s,n.value,e)}}),gc=f("$ZodObjectJIT",(e,t)=>{hc.init(e,t);let n=e._zod.parse,r=oi(()=>pc(t)),i=(m)=>{let v=new fa(["shape","payload","ctx"]),p=r.value,g=(A)=>{let I=Er(A);return`shape[${I}]._zod.run({ value: input[${I}], issues: [] }, ctx)`};v.write("const input = payload.value;");let $=Object.create(null),E=0;for(let A of p.keys)$[A]=`key_${E++}`;v.write("const newResult = {};");for(let A of p.keys){let I=$[A],R=Er(A),Y=m[A],$e=Y?._zod?.optin==="optional",ft=Y?._zod?.optout==="optional";if(v.write(`const ${I} = ${g(A)};`),$e&&ft)v.write(`
|
|
107
|
+
{{CLINE_METADATA}}`,Wr="# Workspace Configuration",_I=25463,kI=25466,wI=4317,SI="127.0.0.1:4317",II,xI,zI,UI="runtime.team.progress.v1",TI="runtime.team.lifecycle.v1",sn="CLINE_BUILD_ENV",sh="CLINE_DEBUG_HOST",uh="CLINE_DEBUG_PORT_BASE",LI="CLINE_ENVIRONMENT",JI="CLINE_ENVIRONMENT_OVERRIDE",Kr,MI="production",WI="CLINE_RUN_AS_HUB_DAEMON",HI="agent.reasoning.unexpected_tokens",GI="sdk.error",ox=128,Ze,bt,mx,rs,hh,fx,yh,bh,$h,yx=3600000,bx=240,$x=400,ye,$t,_h,Qn,_x,kx,wx,Sx,Ix,xx,zx,Ux,Tx,jx,Ox,Ex,Nx,Px,Ax,Dx,Zx,Cx,Rx,Lx,Jx,Mx,Fx,kh,Bx,Wx,wh,Kx,Hx,Gx,Xx,Yx,Qx,Vx,qx,e0,t0,i0,n0,Sh,Ih,f0,p0,h0,y0;var we=F(()=>{nb=Object.defineProperty;Or=new TextEncoder,lb={appstream2:"appstream",cloudhsmv2:"cloudhsm",email:"ses",marketplace:"aws-marketplace",mobile:"AWSMobileHubService",pinpoint:"mobiletargeting",queue:"sqs","git-codecommit":"codecommit","mturk-requester-sandbox":"mturk-requester","personalize-runtime":"personalize"},db=new Set(["authorization","content-type","content-length","user-agent","presigned-expires","expect","x-amzn-trace-id","range","connection"]);tu=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];Qi=new Map;u={};je(u,{xor:()=>jp,xid:()=>qf,void:()=>Sp,uuidv7:()=>Wf,uuidv6:()=>Bf,uuidv4:()=>Ff,uuid:()=>Mf,util:()=>j,url:()=>Kf,uppercase:()=>vn,unknown:()=>tt,union:()=>Wn,undefined:()=>kp,ulid:()=>Vf,uint64:()=>$p,uint32:()=>gp,tuple:()=>_o,trim:()=>_n,treeifyError:()=>zl,transform:()=>Hn,toUpperCase:()=>wn,toLowerCase:()=>kn,toJSONSchema:()=>bf,templateLiteral:()=>Bp,symbol:()=>_p,superRefine:()=>Xo,success:()=>Lp,stringbool:()=>Qp,stringFormat:()=>dp,string:()=>ti,strictObject:()=>Up,startsWith:()=>gn,slugify:()=>Sn,size:()=>vi,setErrorMap:()=>aw,set:()=>Ap,safeParseAsync:()=>Of,safeParse:()=>jf,safeEncodeAsync:()=>Cf,safeEncode:()=>Df,safeDecodeAsync:()=>Rf,safeDecode:()=>Zf,registry:()=>Sa,regexes:()=>Le,regex:()=>fn,refine:()=>Go,record:()=>ko,readonly:()=>Mo,property:()=>Xa,promise:()=>Wp,prettifyError:()=>Tl,preprocess:()=>qp,prefault:()=>Po,positive:()=>Wa,pipe:()=>an,partialRecord:()=>Ep,parseAsync:()=>Tf,parse:()=>Uf,overwrite:()=>Ee,optional:()=>ni,object:()=>zp,number:()=>ro,nullish:()=>Rp,nullable:()=>ri,null:()=>lo,normalize:()=>$n,nonpositive:()=>Ha,nonoptional:()=>Ao,nonnegative:()=>Ga,never:()=>Fn,negative:()=>Ka,nativeEnum:()=>Dp,nanoid:()=>Xf,nan:()=>Jp,multipleOf:()=>St,minSize:()=>Fe,minLength:()=>et,mime:()=>bn,meta:()=>Xp,maxSize:()=>jt,maxLength:()=>hi,map:()=>Pp,mac:()=>ip,lte:()=>ce,lt:()=>Je,lowercase:()=>pn,looseRecord:()=>Np,looseObject:()=>Tp,locales:()=>ka,literal:()=>Zp,length:()=>gi,lazy:()=>Wo,ksuid:()=>ep,keyof:()=>xp,jwt:()=>lp,json:()=>Vp,iso:()=>Va,ipv6:()=>np,ipv4:()=>tp,invertCodec:()=>Fp,intersection:()=>bo,int64:()=>bp,int32:()=>hp,int:()=>rn,instanceof:()=>Yp,includes:()=>hn,httpUrl:()=>Hf,hostname:()=>cp,hex:()=>mp,hash:()=>fp,guid:()=>Jf,gte:()=>Q,gt:()=>Me,globalRegistry:()=>de,getErrorMap:()=>ow,function:()=>on,fromJSONSchema:()=>dw,formatError:()=>ea,float64:()=>vp,float32:()=>pp,flattenError:()=>qr,file:()=>Cp,exactOptional:()=>To,enum:()=>Kn,endsWith:()=>yn,encodeAsync:()=>Pf,encode:()=>Ef,emoji:()=>Gf,email:()=>Lf,e164:()=>up,discriminatedUnion:()=>Op,describe:()=>Gp,decodeAsync:()=>Af,decode:()=>Nf,date:()=>Ip,custom:()=>Hp,cuid2:()=>Qf,cuid:()=>Yf,core:()=>cl,config:()=>W,coerce:()=>tv,codec:()=>Mp,clone:()=>fe,cidrv6:()=>ap,cidrv4:()=>rp,check:()=>Kp,catch:()=>Co,boolean:()=>ao,bigint:()=>yp,base64url:()=>sp,base64:()=>op,array:()=>Ii,any:()=>wp,_function:()=>on,_default:()=>Eo,_ZodString:()=>In,ZodXor:()=>ho,ZodXID:()=>En,ZodVoid:()=>po,ZodUnknown:()=>mo,ZodUnion:()=>zi,ZodUndefined:()=>so,ZodUUID:()=>ke,ZodURL:()=>_i,ZodULID:()=>On,ZodType:()=>U,ZodTuple:()=>$o,ZodTransform:()=>zo,ZodTemplateLiteral:()=>Fo,ZodSymbol:()=>oo,ZodSuccess:()=>Do,ZodStringFormat:()=>C,ZodString:()=>$i,ZodSet:()=>So,ZodRecord:()=>Ut,ZodRealError:()=>ae,ZodReadonly:()=>Jo,ZodPromise:()=>Ko,ZodPreprocess:()=>Lo,ZodPrefault:()=>No,ZodPipe:()=>Ui,ZodOptional:()=>Gn,ZodObject:()=>xi,ZodNumberFormat:()=>at,ZodNumber:()=>ki,ZodNullable:()=>jo,ZodNull:()=>uo,ZodNonOptional:()=>Xn,ZodNever:()=>fo,ZodNanoID:()=>Un,ZodNaN:()=>Ro,ZodMap:()=>wo,ZodMAC:()=>no,ZodLiteral:()=>Io,ZodLazy:()=>Bo,ZodKSUID:()=>Nn,ZodJWT:()=>Jn,ZodIssueCode:()=>rw,ZodIntersection:()=>yo,ZodISOTime:()=>to,ZodISODuration:()=>io,ZodISODateTime:()=>qa,ZodISODate:()=>eo,ZodIPv6:()=>An,ZodIPv4:()=>Pn,ZodGUID:()=>ii,ZodFunction:()=>Ho,ZodFirstPartyTypeKind:()=>Zr,ZodFile:()=>xo,ZodExactOptional:()=>Uo,ZodError:()=>nw,ZodEnum:()=>Tt,ZodEmoji:()=>zn,ZodEmail:()=>xn,ZodE164:()=>Ln,ZodDiscriminatedUnion:()=>go,ZodDefault:()=>Oo,ZodDate:()=>Bn,ZodCustomStringFormat:()=>Ot,ZodCustom:()=>ji,ZodCodec:()=>Ti,ZodCatch:()=>Zo,ZodCUID2:()=>jn,ZodCUID:()=>Tn,ZodCIDRv6:()=>Zn,ZodCIDRv4:()=>Dn,ZodBoolean:()=>wi,ZodBigIntFormat:()=>Mn,ZodBigInt:()=>Si,ZodBase64URL:()=>Rn,ZodBase64:()=>Cn,ZodArray:()=>vo,ZodAny:()=>co,TimePrecision:()=>Qc,NEVER:()=>ml,$output:()=>Kc,$input:()=>Hc,$brand:()=>fl});cl={};je(cl,{version:()=>Td,util:()=>j,treeifyError:()=>zl,toJSONSchema:()=>bf,toDotPath:()=>Ul,safeParseAsync:()=>Ol,safeParse:()=>jl,safeEncodeAsync:()=>m$,safeEncode:()=>d$,safeDecodeAsync:()=>f$,safeDecode:()=>c$,registry:()=>Sa,regexes:()=>Le,process:()=>P,prettifyError:()=>Tl,parseAsync:()=>Pr,parse:()=>Nr,meta:()=>Em,locales:()=>ka,isValidJWT:()=>ec,isValidBase64URL:()=>Qd,isValidBase64:()=>pa,initializeContext:()=>It,globalRegistry:()=>de,globalConfig:()=>qt,formatError:()=>ea,flattenError:()=>qr,finalize:()=>zt,extractDefs:()=>xt,encodeAsync:()=>u$,encode:()=>o$,describe:()=>Om,decodeAsync:()=>l$,decode:()=>s$,createToJSONSchemaMethod:()=>Pm,createStandardJSONSchemaMethod:()=>ei,config:()=>W,clone:()=>fe,_xor:()=>Nk,_xid:()=>Aa,_void:()=>_m,_uuidv7:()=>Ta,_uuidv6:()=>Ua,_uuidv4:()=>za,_uuid:()=>xa,_url:()=>mn,_uppercase:()=>vn,_unknown:()=>bm,_union:()=>Ek,_undefined:()=>hm,_ulid:()=>Pa,_uint64:()=>pm,_uint32:()=>um,_tuple:()=>Dk,_trim:()=>_n,_transform:()=>Fk,_toUpperCase:()=>wn,_toLowerCase:()=>kn,_templateLiteral:()=>Vk,_symbol:()=>vm,_superRefine:()=>Tm,_success:()=>Gk,_stringbool:()=>Nm,_stringFormat:()=>yi,_string:()=>Gc,_startsWith:()=>gn,_slugify:()=>Sn,_size:()=>vi,_set:()=>Rk,_safeParseAsync:()=>di,_safeParse:()=>li,_safeEncodeAsync:()=>sa,_safeEncode:()=>aa,_safeDecodeAsync:()=>ua,_safeDecode:()=>oa,_regex:()=>fn,_refine:()=>Um,_record:()=>Zk,_readonly:()=>Qk,_property:()=>Xa,_promise:()=>ew,_positive:()=>Wa,_pipe:()=>Yk,_parseAsync:()=>ui,_parse:()=>si,_overwrite:()=>Ee,_optional:()=>Bk,_number:()=>im,_nullable:()=>Wk,_null:()=>gm,_normalize:()=>$n,_nonpositive:()=>Ha,_nonoptional:()=>Hk,_nonnegative:()=>Ga,_never:()=>$m,_negative:()=>Ka,_nativeEnum:()=>Jk,_nanoid:()=>Oa,_nan:()=>Sm,_multipleOf:()=>St,_minSize:()=>Fe,_minLength:()=>et,_min:()=>Q,_mime:()=>bn,_maxSize:()=>jt,_maxLength:()=>hi,_max:()=>ce,_map:()=>Ck,_mac:()=>Yc,_lte:()=>ce,_lt:()=>Je,_lowercase:()=>pn,_literal:()=>Mk,_length:()=>gi,_lazy:()=>qk,_ksuid:()=>Da,_jwt:()=>Ba,_isoTime:()=>em,_isoDuration:()=>tm,_isoDateTime:()=>Vc,_isoDate:()=>qc,_ipv6:()=>Ca,_ipv4:()=>Za,_intersection:()=>Ak,_int64:()=>fm,_int32:()=>sm,_int:()=>rm,_includes:()=>hn,_guid:()=>nn,_gte:()=>Q,_gt:()=>Me,_float64:()=>om,_float32:()=>am,_file:()=>xm,_enum:()=>Lk,_endsWith:()=>yn,_encodeAsync:()=>na,_encode:()=>ta,_emoji:()=>ja,_email:()=>Ia,_e164:()=>Fa,_discriminatedUnion:()=>Pk,_default:()=>Kk,_decodeAsync:()=>ra,_decode:()=>ia,_date:()=>km,_custom:()=>zm,_cuid2:()=>Na,_cuid:()=>Ea,_coercedString:()=>Xc,_coercedNumber:()=>nm,_coercedDate:()=>wm,_coercedBoolean:()=>dm,_coercedBigint:()=>mm,_cidrv6:()=>La,_cidrv4:()=>Ra,_check:()=>jm,_catch:()=>Xk,_boolean:()=>lm,_bigint:()=>cm,_base64url:()=>Ma,_base64:()=>Ja,_array:()=>Im,_any:()=>ym,TimePrecision:()=>Qc,NEVER:()=>ml,JSONSchemaGenerator:()=>$f,JSONSchema:()=>iw,Doc:()=>fa,$output:()=>Kc,$input:()=>Hc,$constructor:()=>f,$brand:()=>fl,$ZodXor:()=>yc,$ZodXID:()=>Rd,$ZodVoid:()=>cc,$ZodUnknown:()=>lc,$ZodUnion:()=>cn,$ZodUndefined:()=>oc,$ZodUUID:()=>Od,$ZodURL:()=>Nd,$ZodULID:()=>Cd,$ZodType:()=>z,$ZodTuple:()=>ya,$ZodTransform:()=>zc,$ZodTemplateLiteral:()=>Cc,$ZodSymbol:()=>ac,$ZodSuccess:()=>Nc,$ZodStringFormat:()=>Z,$ZodString:()=>pi,$ZodSet:()=>wc,$ZodRegistry:()=>wa,$ZodRecord:()=>_c,$ZodRealError:()=>re,$ZodReadonly:()=>Zc,$ZodPromise:()=>Lc,$ZodPreprocess:()=>Dc,$ZodPrefault:()=>Oc,$ZodPipe:()=>$a,$ZodOptional:()=>ba,$ZodObjectJIT:()=>gc,$ZodObject:()=>hc,$ZodNumberFormat:()=>nc,$ZodNumber:()=>va,$ZodNullable:()=>Tc,$ZodNull:()=>sc,$ZodNonOptional:()=>Ec,$ZodNever:()=>dc,$ZodNanoID:()=>Ad,$ZodNaN:()=>Ac,$ZodMap:()=>kc,$ZodMAC:()=>Hd,$ZodLiteral:()=>Ic,$ZodLazy:()=>Jc,$ZodKSUID:()=>Ld,$ZodJWT:()=>tc,$ZodIntersection:()=>$c,$ZodISOTime:()=>Fd,$ZodISODuration:()=>Bd,$ZodISODateTime:()=>Jd,$ZodISODate:()=>Md,$ZodIPv6:()=>Kd,$ZodIPv4:()=>Wd,$ZodGUID:()=>jd,$ZodFunction:()=>Rc,$ZodFile:()=>xc,$ZodExactOptional:()=>Uc,$ZodError:()=>Vr,$ZodEnum:()=>Sc,$ZodEncodeError:()=>ai,$ZodEmoji:()=>Pd,$ZodEmail:()=>Ed,$ZodE164:()=>qd,$ZodDiscriminatedUnion:()=>bc,$ZodDefault:()=>jc,$ZodDate:()=>mc,$ZodCustomStringFormat:()=>ic,$ZodCustom:()=>Mc,$ZodCodec:()=>_a,$ZodCheckUpperCase:()=>kd,$ZodCheckStringFormat:()=>fi,$ZodCheckStartsWith:()=>Sd,$ZodCheckSizeEquals:()=>hd,$ZodCheckRegex:()=>$d,$ZodCheckProperty:()=>xd,$ZodCheckOverwrite:()=>Ud,$ZodCheckNumberFormat:()=>md,$ZodCheckMultipleOf:()=>cd,$ZodCheckMinSize:()=>vd,$ZodCheckMinLength:()=>yd,$ZodCheckMimeType:()=>zd,$ZodCheckMaxSize:()=>pd,$ZodCheckMaxLength:()=>gd,$ZodCheckLowerCase:()=>_d,$ZodCheckLessThan:()=>ca,$ZodCheckLengthEquals:()=>bd,$ZodCheckIncludes:()=>wd,$ZodCheckGreaterThan:()=>ma,$ZodCheckEndsWith:()=>Id,$ZodCheckBigIntFormat:()=>fd,$ZodCheck:()=>J,$ZodCatch:()=>Pc,$ZodCUID2:()=>Zd,$ZodCUID:()=>Dd,$ZodCIDRv6:()=>Xd,$ZodCIDRv4:()=>Gd,$ZodBoolean:()=>ha,$ZodBigIntFormat:()=>rc,$ZodBigInt:()=>ga,$ZodBase64URL:()=>Vd,$ZodBase64:()=>Yd,$ZodAsyncError:()=>Re,$ZodArray:()=>fc,$ZodAny:()=>uc});ml=Object.freeze({status:"aborted"});fl=Symbol("zod_brand");Re=class Re extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}};ai=class ai extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}};(su=globalThis).__zod_globalConfig??(su.__zod_globalConfig={});qt=globalThis.__zod_globalConfig;j={};je(j,{unwrapMessage:()=>Xt,uint8ArrayToHex:()=>a$,uint8ArrayToBase64url:()=>n$,uint8ArrayToBase64:()=>Sl,stringifyPrimitive:()=>k,slugify:()=>vl,shallowClone:()=>gl,safeExtend:()=>Qb,required:()=>e$,randomString:()=>Bb,propertyKeyTypes:()=>qi,promiseAllObject:()=>Fb,primitiveTypes:()=>yl,prefixIssues:()=>le,pick:()=>Gb,partial:()=>qb,parsedType:()=>S,optionalKeys:()=>bl,omit:()=>Xb,objectClone:()=>Lb,numKeys:()=>Wb,nullish:()=>rt,normalizeParams:()=>y,mergeDefs:()=>Oe,merge:()=>Vb,jsonStringifyReplacer:()=>Vi,joinValues:()=>h,issue:()=>en,isPlainObject:()=>qe,isObject:()=>kt,hexToUint8Array:()=>r$,getSizableOrigin:()=>ln,getParsedType:()=>Kb,getLengthableOrigin:()=>dn,getEnumValues:()=>Yr,getElementAtPath:()=>Mb,floatSafeRemainder:()=>pl,finalizeIssue:()=>ne,extend:()=>Yb,explicitlyAborted:()=>kl,escapeRegex:()=>Te,esc:()=>Er,defineLazy:()=>O,createTransparentProxy:()=>Hb,cloneDef:()=>Jb,clone:()=>fe,cleanRegex:()=>un,cleanEnum:()=>t$,captureStackTrace:()=>Qr,cached:()=>oi,base64urlToUint8Array:()=>i$,base64ToUint8Array:()=>wl,assignProp:()=>Be,assertNotEqual:()=>Db,assertNever:()=>Cb,assertIs:()=>Zb,assertEqual:()=>Ab,assert:()=>Rb,allowsEval:()=>hl,aborted:()=>Ve,NUMBER_FORMAT_RANGES:()=>$l,Class:()=>Il,BIGINT_FORMAT_RANGES:()=>_l});uu=Symbol("evaluating");Qr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};hl=oi(()=>{if(qt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return Function(""),!0}catch(e){return!1}});qi=new Set(["string","number","symbol"]),yl=new Set(["string","number","bigint","boolean","symbol","undefined"]);$l={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},_l={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};Vr=f("$ZodError",xl),re=f("$ZodError",xl,{Parent:Error});Nr=si(re),Pr=ui(re),jl=li(re),Ol=di(re),o$=ta(re),s$=ia(re),u$=na(re),l$=ra(re),d$=aa(re),c$=oa(re),m$=sa(re),f$=ua(re),Le={};je(Le,{xid:()=>Al,uuid7:()=>g$,uuid6:()=>h$,uuid4:()=>v$,uuid:()=>wt,uppercase:()=>ld,unicodeEmail:()=>Jl,undefined:()=>sd,ulid:()=>Pl,time:()=>ed,string:()=>id,sha512_hex:()=>C$,sha512_base64url:()=>L$,sha512_base64:()=>R$,sha384_hex:()=>A$,sha384_base64url:()=>Z$,sha384_base64:()=>D$,sha256_hex:()=>E$,sha256_base64url:()=>P$,sha256_base64:()=>N$,sha1_hex:()=>T$,sha1_base64url:()=>O$,sha1_base64:()=>j$,rfc5322Email:()=>b$,number:()=>da,null:()=>od,nanoid:()=>Zl,md5_hex:()=>x$,md5_base64url:()=>U$,md5_base64:()=>z$,mac:()=>Wl,lowercase:()=>ud,ksuid:()=>Dl,ipv6:()=>Bl,ipv4:()=>Fl,integer:()=>rd,idnEmail:()=>$$,httpProtocol:()=>Xl,html5Email:()=>y$,hostname:()=>w$,hex:()=>I$,guid:()=>Rl,extendedDuration:()=>p$,emoji:()=>Ml,email:()=>Ll,e164:()=>Yl,duration:()=>Cl,domain:()=>S$,datetime:()=>td,date:()=>Vl,cuid2:()=>Nl,cuid:()=>El,cidrv6:()=>Hl,cidrv4:()=>Kl,browserEmail:()=>_$,boolean:()=>ad,bigint:()=>nd,base64url:()=>la,base64:()=>Gl});El=/^[cC][0-9a-z]{6,}$/,Nl=/^[0-9a-z]+$/,Pl=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Al=/^[0-9a-vA-V]{20}$/,Dl=/^[A-Za-z0-9]{27}$/,Zl=/^[a-zA-Z0-9_-]{21}$/,Cl=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,p$=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Rl=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,v$=wt(4),h$=wt(6),g$=wt(7),Ll=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,y$=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,b$=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,Jl=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,$$=Jl,_$=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;Fl=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Bl=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Kl=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Hl=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Gl=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,la=/^[A-Za-z0-9_-]*$/,w$=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,S$=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,Xl=/^https?$/,Yl=/^\+[1-9]\d{6,14}$/,Vl=new RegExp(`^${Ql}$`);nd=/^-?\d+n?$/,rd=/^-?\d+$/,da=/^-?\d+(?:\.\d+)?$/,ad=/^(?:true|false)$/i,od=/^null$/i,sd=/^undefined$/i,ud=/^[^A-Z]*$/,ld=/^[^a-z]*$/,I$=/^[0-9a-fA-F]*$/;x$=/^[0-9a-fA-F]{32}$/,z$=ci(22,"=="),U$=mi(22),T$=/^[0-9a-fA-F]{40}$/,j$=ci(27,"="),O$=mi(27),E$=/^[0-9a-fA-F]{64}$/,N$=ci(43,"="),P$=mi(43),A$=/^[0-9a-fA-F]{96}$/,D$=ci(64,""),Z$=mi(64),C$=/^[0-9a-fA-F]{128}$/,R$=ci(86,"=="),L$=mi(86),J=f("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),dd={number:"number",bigint:"bigint",object:"date"},ca=f("$ZodCheckLessThan",(e,t)=>{J.init(e,t);let n=dd[typeof t.value];e._zod.onattach.push((r)=>{let i=r._zod.bag,a=(t.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<a)if(t.inclusive)i.maximum=t.value;else i.exclusiveMaximum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value<=t.value:r.value<t.value)return;r.issues.push({origin:n,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),ma=f("$ZodCheckGreaterThan",(e,t)=>{J.init(e,t);let n=dd[typeof t.value];e._zod.onattach.push((r)=>{let i=r._zod.bag,a=(t.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>a)if(t.inclusive)i.minimum=t.value;else i.exclusiveMinimum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value>=t.value:r.value>t.value)return;r.issues.push({origin:n,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),cd=f("$ZodCheckMultipleOf",(e,t)=>{J.init(e,t),e._zod.onattach.push((n)=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=t.value)}),e._zod.check=(n)=>{if(typeof n.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof n.value==="bigint"?n.value%t.value===BigInt(0):pl(n.value,t.value)===0)return;n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),md=f("$ZodCheckNumberFormat",(e,t)=>{J.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),r=n?"int":"number",[i,a]=$l[t.format];e._zod.onattach.push((o)=>{let s=o._zod.bag;if(s.format=t.format,s.minimum=i,s.maximum=a,n)s.pattern=rd}),e._zod.check=(o)=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){if(s>0)o.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});else o.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}if(s<i)o.issues.push({origin:"number",input:s,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort});if(s>a)o.issues.push({origin:"number",input:s,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),fd=f("$ZodCheckBigIntFormat",(e,t)=>{J.init(e,t);let[n,r]=_l[t.format];e._zod.onattach.push((i)=>{let a=i._zod.bag;a.format=t.format,a.minimum=n,a.maximum=r}),e._zod.check=(i)=>{let a=i.value;if(a<n)i.issues.push({origin:"bigint",input:a,code:"too_small",minimum:n,inclusive:!0,inst:e,continue:!t.abort});if(a>r)i.issues.push({origin:"bigint",input:a,code:"too_big",maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),pd=f("$ZodCheckMaxSize",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let i=r.value;if(i.size<=t.maximum)return;r.issues.push({origin:ln(i),code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),vd=f("$ZodCheckMinSize",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let i=r.value;if(i.size>=t.minimum)return;r.issues.push({origin:ln(i),code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),hd=f("$ZodCheckSizeEquals",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.size!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.minimum=t.size,i.maximum=t.size,i.size=t.size}),e._zod.check=(r)=>{let i=r.value,a=i.size;if(a===t.size)return;let o=a>t.size;r.issues.push({origin:ln(i),...o?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),gd=f("$ZodCheckMaxLength",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let i=r.value;if(i.length<=t.maximum)return;let a=dn(i);r.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),yd=f("$ZodCheckMinLength",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let i=r.value;if(i.length>=t.minimum)return;let a=dn(i);r.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),bd=f("$ZodCheckLengthEquals",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let i=r.value;return!rt(i)&&i.length!==void 0}),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.minimum=t.length,i.maximum=t.length,i.length=t.length}),e._zod.check=(r)=>{let i=r.value,a=i.length;if(a===t.length)return;let o=dn(i),s=a>t.length;r.issues.push({origin:o,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),fi=f("$ZodCheckStringFormat",(e,t)=>{var n,r;if(J.init(e,t),e._zod.onattach.push((i)=>{let a=i._zod.bag;if(a.format=t.format,t.pattern)a.patterns??(a.patterns=new Set),a.patterns.add(t.pattern)}),t.pattern)(n=e._zod).check??(n.check=(i)=>{if(t.pattern.lastIndex=0,t.pattern.test(i.value))return;i.issues.push({origin:"string",code:"invalid_format",format:t.format,input:i.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(r=e._zod).check??(r.check=()=>{})}),$d=f("$ZodCheckRegex",(e,t)=>{fi.init(e,t),e._zod.check=(n)=>{if(t.pattern.lastIndex=0,t.pattern.test(n.value))return;n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),_d=f("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=ud),fi.init(e,t)}),kd=f("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=ld),fi.init(e,t)}),wd=f("$ZodCheckIncludes",(e,t)=>{J.init(e,t);let n=Te(t.includes),r=new RegExp(typeof t.position==="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push((i)=>{let a=i._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(r)}),e._zod.check=(i)=>{if(i.value.includes(t.includes,t.position))return;i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:i.value,inst:e,continue:!t.abort})}}),Sd=f("$ZodCheckStartsWith",(e,t)=>{J.init(e,t);let n=new RegExp(`^${Te(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.startsWith(t.prefix))return;r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),Id=f("$ZodCheckEndsWith",(e,t)=>{J.init(e,t);let n=new RegExp(`.*${Te(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let i=r._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.endsWith(t.suffix))return;r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}});xd=f("$ZodCheckProperty",(e,t)=>{J.init(e,t),e._zod.check=(n)=>{let r=t.schema._zod.run({value:n.value[t.property],issues:[]},{});if(r instanceof Promise)return r.then((i)=>lu(i,n,t.property));lu(r,n,t.property);return}}),zd=f("$ZodCheckMimeType",(e,t)=>{J.init(e,t);let n=new Set(t.mime);e._zod.onattach.push((r)=>{r._zod.bag.mime=t.mime}),e._zod.check=(r)=>{if(n.has(r.value.type))return;r.issues.push({code:"invalid_value",values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),Ud=f("$ZodCheckOverwrite",(e,t)=>{J.init(e,t),e._zod.check=(n)=>{n.value=t.tx(n.value)}});Td={major:4,minor:4,patch:3},z=f("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Td;let r=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))r.unshift(e);for(let i of r)for(let a of i._zod.onattach)a(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let i=(o,s,d)=>{let l=Ve(o),c;for(let m of s){if(m._zod.def.when){if(kl(o))continue;if(!m._zod.def.when(o))continue}else if(l)continue;let v=o.issues.length,p=m._zod.check(o);if(p instanceof Promise&&d?.async===!1)throw new Re;if(c||p instanceof Promise)c=(c??Promise.resolve()).then(async()=>{if(await p,o.issues.length===v)return;if(!l)l=Ve(o,v)});else{if(o.issues.length===v)continue;if(!l)l=Ve(o,v)}}if(c)return c.then(()=>{return o});return o},a=(o,s,d)=>{if(Ve(o))return o.aborted=!0,o;let l=i(s,r,d);if(l instanceof Promise){if(d.async===!1)throw new Re;return l.then((c)=>e._zod.parse(c,d))}return e._zod.parse(l,d)};e._zod.run=(o,s)=>{if(s.skipChecks)return e._zod.parse(o,s);if(s.direction==="backward"){let l=e._zod.parse({value:o.value,issues:[]},{...s,skipChecks:!0});if(l instanceof Promise)return l.then((c)=>{return a(c,o,s)});return a(l,o,s)}let d=e._zod.parse(o,s);if(d instanceof Promise){if(s.async===!1)throw new Re;return d.then((l)=>i(l,r,s))}return i(d,r,s)}}O(e,"~standard",()=>({validate:(i)=>{try{let a=jl(e,i);return a.success?{value:a.data}:{issues:a.error?.issues}}catch(a){return Ol(e,i).then((o)=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}))}),pi=f("$ZodString",(e,t)=>{z.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??id(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch(i){}if(typeof n.value==="string")return n;return n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),Z=f("$ZodStringFormat",(e,t)=>{fi.init(e,t),pi.init(e,t)}),jd=f("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Rl),Z.init(e,t)}),Od=f("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=wt(n))}else t.pattern??(t.pattern=wt());Z.init(e,t)}),Ed=f("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Ll),Z.init(e,t)}),Nd=f("$ZodURL",(e,t)=>{Z.init(e,t),e._zod.check=(n)=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===Xl.source){if(!/^https?:\/\//i.test(r)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}}let i=new URL(r);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(i.hostname))n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol))n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})}if(t.normalize)n.value=i.href;else n.value=r;return}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Pd=f("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Ml()),Z.init(e,t)}),Ad=f("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Zl),Z.init(e,t)}),Dd=f("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=El),Z.init(e,t)}),Zd=f("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Nl),Z.init(e,t)}),Cd=f("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Pl),Z.init(e,t)}),Rd=f("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Al),Z.init(e,t)}),Ld=f("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Dl),Z.init(e,t)}),Jd=f("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=td(t)),Z.init(e,t)}),Md=f("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Vl),Z.init(e,t)}),Fd=f("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=ed(t)),Z.init(e,t)}),Bd=f("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Cl),Z.init(e,t)}),Wd=f("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Fl),Z.init(e,t),e._zod.bag.format="ipv4"}),Kd=f("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Bl),Z.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(n)=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),Hd=f("$ZodMAC",(e,t)=>{t.pattern??(t.pattern=Wl(t.delimiter)),Z.init(e,t),e._zod.bag.format="mac"}),Gd=f("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Kl),Z.init(e,t)}),Xd=f("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Hl),Z.init(e,t),e._zod.check=(n)=>{let r=n.value.split("/");try{if(r.length!==2)throw Error();let[i,a]=r;if(!a)throw Error();let o=Number(a);if(`${o}`!==a)throw Error();if(o<0||o>128)throw Error();new URL(`http://[${i}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});Yd=f("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Gl),Z.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(n)=>{if(pa(n.value))return;n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});Vd=f("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=la),Z.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(n)=>{if(Qd(n.value))return;n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),qd=f("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Yl),Z.init(e,t)});tc=f("$ZodJWT",(e,t)=>{Z.init(e,t),e._zod.check=(n)=>{if(ec(n.value,t.alg))return;n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),ic=f("$ZodCustomStringFormat",(e,t)=>{Z.init(e,t),e._zod.check=(n)=>{if(t.fn(n.value))return;n.issues.push({code:"invalid_format",format:t.format,input:n.value,inst:e,continue:!t.abort})}}),va=f("$ZodNumber",(e,t)=>{z.init(e,t),e._zod.pattern=e._zod.bag.pattern??da,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch(o){}let i=n.value;if(typeof i==="number"&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==="number"?Number.isNaN(i)?"NaN":!Number.isFinite(i)?"Infinity":void 0:void 0;return n.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...a?{received:a}:{}}),n}}),nc=f("$ZodNumberFormat",(e,t)=>{md.init(e,t),va.init(e,t)}),ha=f("$ZodBoolean",(e,t)=>{z.init(e,t),e._zod.pattern=ad,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(a){}let i=n.value;if(typeof i==="boolean")return n;return n.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),n}}),ga=f("$ZodBigInt",(e,t)=>{z.init(e,t),e._zod.pattern=nd,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch(i){}if(typeof n.value==="bigint")return n;return n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),rc=f("$ZodBigIntFormat",(e,t)=>{fd.init(e,t),ga.init(e,t)}),ac=f("$ZodSymbol",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i==="symbol")return n;return n.issues.push({expected:"symbol",code:"invalid_type",input:i,inst:e}),n}}),oc=f("$ZodUndefined",(e,t)=>{z.init(e,t),e._zod.pattern=sd,e._zod.values=new Set([void 0]),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"undefined",code:"invalid_type",input:i,inst:e}),n}}),sc=f("$ZodNull",(e,t)=>{z.init(e,t),e._zod.pattern=od,e._zod.values=new Set([null]),e._zod.parse=(n,r)=>{let i=n.value;if(i===null)return n;return n.issues.push({expected:"null",code:"invalid_type",input:i,inst:e}),n}}),uc=f("$ZodAny",(e,t)=>{z.init(e,t),e._zod.parse=(n)=>n}),lc=f("$ZodUnknown",(e,t)=>{z.init(e,t),e._zod.parse=(n)=>n}),dc=f("$ZodNever",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{return n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n}}),cc=f("$ZodVoid",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"void",code:"invalid_type",input:i,inst:e}),n}}),mc=f("$ZodDate",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(o){}let i=n.value,a=i instanceof Date;if(a&&!Number.isNaN(i.getTime()))return n;return n.issues.push({expected:"date",code:"invalid_type",input:i,...a?{received:"Invalid Date"}:{},inst:e}),n}});fc=f("$ZodArray",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let o=0;o<i.length;o++){let s=i[o],d=t.element._zod.run({value:s,issues:[]},r);if(d instanceof Promise)a.push(d.then((l)=>du(l,n,o)));else du(d,n,o)}if(a.length)return Promise.all(a).then(()=>n);return n}});hc=f("$ZodObject",(e,t)=>{if(z.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let o=t.shape;Object.defineProperty(t,"shape",{get:()=>{let s={...o};return Object.defineProperty(t,"shape",{value:s}),s}})}let n=oi(()=>pc(t));O(e._zod,"propValues",()=>{let o=t.shape,s={};for(let d in o){let l=o[d]._zod;if(l.values){s[d]??(s[d]=new Set);for(let c of l.values)s[d].add(c)}}return s});let r=kt,i=t.catchall,a;e._zod.parse=(o,s)=>{a??(a=n.value);let d=o.value;if(!r(d))return o.issues.push({expected:"object",code:"invalid_type",input:d,inst:e}),o;o.value={};let l=[],c=a.shape;for(let m of a.keys){let v=c[m],p=v._zod.optin==="optional",g=v._zod.optout==="optional",$=v._zod.run({value:d[m],issues:[]},s);if($ instanceof Promise)l.push($.then((E)=>tn(E,o,m,d,p,g)));else tn($,o,m,d,p,g)}if(!i)return l.length?Promise.all(l).then(()=>o):o;return vc(l,d,o,s,n.value,e)}}),gc=f("$ZodObjectJIT",(e,t)=>{hc.init(e,t);let n=e._zod.parse,r=oi(()=>pc(t)),i=(m)=>{let v=new fa(["shape","payload","ctx"]),p=r.value,g=(A)=>{let I=Er(A);return`shape[${I}]._zod.run({ value: input[${I}], issues: [] }, ctx)`};v.write("const input = payload.value;");let $=Object.create(null),E=0;for(let A of p.keys)$[A]=`key_${E++}`;v.write("const newResult = {};");for(let A of p.keys){let I=$[A],R=Er(A),Y=m[A],$e=Y?._zod?.optin==="optional",ft=Y?._zod?.optout==="optional";if(v.write(`const ${I} = ${g(A)};`),$e&&ft)v.write(`
|
|
108
108
|
if (${I}.issues.length) {
|
|
109
109
|
if (${R} in input) {
|
|
110
110
|
payload.issues = payload.issues.concat(${I}.issues.map(iss => ({
|
|
@@ -163,7 +163,7 @@ IMPORTANT:
|
|
|
163
163
|
newResult[${R}] = ${I}.value;
|
|
164
164
|
}
|
|
165
165
|
|
|
166
|
-
`)}v.write("payload.value = newResult;"),v.write("return payload;");let T=v.compile();return(A,I)=>T(m,A,I)},a,o=kt,s=!qt.jitless,d=s&&hl.value,l=t.catchall,c;e._zod.parse=(m,v)=>{c??(c=r.value);let p=m.value;if(!o(p))return m.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),m;if(s&&d&&v?.async===!1&&v.jitless!==!0){if(!a)a=i(t.shape);if(m=a(m,v),!l)return m;return vc([],p,m,v,c,e)}return n(m,v)}});cn=f("$ZodUnion",(e,t)=>{z.init(e,t),O(e._zod,"optin",()=>t.options.some((r)=>r._zod.optin==="optional")?"optional":void 0),O(e._zod,"optout",()=>t.options.some((r)=>r._zod.optout==="optional")?"optional":void 0),O(e._zod,"values",()=>{if(t.options.every((r)=>r._zod.values))return new Set(t.options.flatMap((r)=>Array.from(r._zod.values)));return}),O(e._zod,"pattern",()=>{if(t.options.every((r)=>r._zod.pattern)){let r=t.options.map((i)=>i._zod.pattern);return new RegExp(`^(${r.map((i)=>un(i.source)).join("|")})$`)}return});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let s of t.options){let d=s._zod.run({value:r.value,issues:[]},i);if(d instanceof Promise)o.push(d),a=!0;else{if(d.issues.length===0)return d;o.push(d)}}if(!a)return cu(o,r,e,i);return Promise.all(o).then((s)=>{return cu(s,r,e,i)})}});yc=f("$ZodXor",(e,t)=>{cn.init(e,t),t.inclusive=!1;let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let s of t.options){let d=s._zod.run({value:r.value,issues:[]},i);if(d instanceof Promise)o.push(d),a=!0;else o.push(d)}if(!a)return mu(o,r,e,i);return Promise.all(o).then((s)=>{return mu(s,r,e,i)})}}),bc=f("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,cn.init(e,t);let n=e._zod.parse;O(e._zod,"propValues",()=>{let i={};for(let a of t.options){let o=a._zod.propValues;if(!o||Object.keys(o).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let[s,d]of Object.entries(o)){if(!i[s])i[s]=new Set;for(let l of d)i[s].add(l)}}return i});let r=oi(()=>{let i=t.options,a=new Map;for(let o of i){let s=o._zod.propValues?.[t.discriminator];if(!s||s.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(let d of s){if(a.has(d))throw Error(`Duplicate discriminator value "${String(d)}"`);a.set(d,o)}}return a});e._zod.parse=(i,a)=>{let o=i.value;if(!kt(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);if(s)return s._zod.run(i,a);if(t.unionFallback||a.direction==="backward")return n(i,a);return i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i}}),$c=f("$ZodIntersection",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value,a=t.left._zod.run({value:i,issues:[]},r),o=t.right._zod.run({value:i,issues:[]},r);if(a instanceof Promise||o instanceof Promise)return Promise.all([a,o]).then(([s,d])=>{return fu(n,s,d)});return fu(n,a,o)}});ya=f("$ZodTuple",(e,t)=>{z.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:"tuple",code:"invalid_type"}),r;r.value=[];let o=[],s=pu(n,"optin"),d=pu(n,"optout");if(!t.rest){if(a.length<s)return r.issues.push({code:"too_small",minimum:s,inclusive:!0,input:a,inst:e,origin:"array"}),r;if(a.length>n.length)r.issues.push({code:"too_big",maximum:n.length,inclusive:!0,input:a,inst:e,origin:"array"})}let l=Array(n.length);for(let c=0;c<n.length;c++){let m=n[c]._zod.run({value:a[c],issues:[]},i);if(m instanceof Promise)o.push(m.then((v)=>{l[c]=v}));else l[c]=m}if(t.rest){let c=n.length-1,m=a.slice(n.length);for(let v of m){c++;let p=t.rest._zod.run({value:v,issues:[]},i);if(p instanceof Promise)o.push(p.then((g)=>vu(g,r,c)));else vu(p,r,c)}}if(o.length)return Promise.all(o).then(()=>hu(l,r,n,a,d));return hu(l,r,n,a,d)}});_c=f("$ZodRecord",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!qe(i))return n.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let l of o)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){s.add(typeof l==="number"?l.toString():l);let c=t.keyType._zod.run({value:l,issues:[]},r);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map((p)=>ne(p,r,W())),input:l,path:[l],inst:e});continue}let m=c.value,v=t.valueType._zod.run({value:i[l],issues:[]},r);if(v instanceof Promise)a.push(v.then((p)=>{if(p.issues.length)n.issues.push(...le(l,p.issues));n.value[m]=p.value}));else{if(v.issues.length)n.issues.push(...le(l,v.issues));n.value[m]=v.value}}let d;for(let l in i)if(!s.has(l))d=d??[],d.push(l);if(d&&d.length>0)n.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:d})}else{n.value={};for(let s of Reflect.ownKeys(i)){if(s==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(i,s))continue;let d=t.keyType._zod.run({value:s,issues:[]},r);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof s==="string"&&da.test(s)&&d.issues.length){let c=t.keyType._zod.run({value:Number(s),issues:[]},r);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length===0)d=c}if(d.issues.length){if(t.mode==="loose")n.value[s]=i[s];else n.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map((c)=>ne(c,r,W())),input:s,path:[s],inst:e});continue}let l=t.valueType._zod.run({value:i[s],issues:[]},r);if(l instanceof Promise)a.push(l.then((c)=>{if(c.issues.length)n.issues.push(...le(s,c.issues));n.value[d.value]=c.value}));else{if(l.issues.length)n.issues.push(...le(s,l.issues));n.value[d.value]=l.value}}}if(a.length)return Promise.all(a).then(()=>n);return n}}),kc=f("$ZodMap",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:i,inst:e}),n;let a=[];n.value=new Map;for(let[o,s]of i){let d=t.keyType._zod.run({value:o,issues:[]},r),l=t.valueType._zod.run({value:s,issues:[]},r);if(d instanceof Promise||l instanceof Promise)a.push(Promise.all([d,l]).then(([c,m])=>{gu(c,m,n,o,i,e,r)}));else gu(d,l,n,o,i,e,r)}if(a.length)return Promise.all(a).then(()=>n);return n}});wc=f("$ZodSet",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Set))return n.issues.push({input:i,inst:e,expected:"set",code:"invalid_type"}),n;let a=[];n.value=new Set;for(let o of i){let s=t.valueType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)a.push(s.then((d)=>yu(d,n)));else yu(s,n)}if(a.length)return Promise.all(a).then(()=>n);return n}});Sc=f("$ZodEnum",(e,t)=>{z.init(e,t);let n=Yr(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter((i)=>qi.has(typeof i)).map((i)=>typeof i==="string"?Te(i):i.toString()).join("|")})$`),e._zod.parse=(i,a)=>{let o=i.value;if(r.has(o))return i;return i.issues.push({code:"invalid_value",values:n,input:o,inst:e}),i}}),Ic=f("$ZodLiteral",(e,t)=>{if(z.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map((r)=>typeof r==="string"?Te(r):r?Te(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,i)=>{let a=r.value;if(n.has(a))return r;return r.issues.push({code:"invalid_value",values:t.values,input:a,inst:e}),r}}),xc=f("$ZodFile",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(i instanceof File)return n;return n.issues.push({expected:"file",code:"invalid_type",input:i,inst:e}),n}}),zc=f("$ZodTransform",(e,t)=>{z.init(e,t),e._zod.optin="optional",e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new ai(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then((a)=>{return n.value=a,n.fallback=!0,n});if(i instanceof Promise)throw new Re;return n.value=i,n.fallback=!0,n}});ba=f("$ZodOptional",(e,t)=>{z.init(e,t),e._zod.optin="optional",e._zod.optout="optional",O(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0}),O(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${un(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){let i=n.value,a=t.innerType._zod.run(n,r);if(a instanceof Promise)return a.then((o)=>bu(o,i));return bu(a,i)}if(n.value===void 0)return n;return t.innerType._zod.run(n,r)}}),Uc=f("$ZodExactOptional",(e,t)=>{ba.init(e,t),O(e._zod,"values",()=>t.innerType._zod.values),O(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,r)=>{return t.innerType._zod.run(n,r)}}),Tc=f("$ZodNullable",(e,t)=>{z.init(e,t),O(e._zod,"optin",()=>t.innerType._zod.optin),O(e._zod,"optout",()=>t.innerType._zod.optout),O(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${un(n.source)}|null)$`):void 0}),O(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0}),e._zod.parse=(n,r)=>{if(n.value===null)return n;return t.innerType._zod.run(n,r)}}),jc=f("$ZodDefault",(e,t)=>{z.init(e,t),e._zod.optin="optional",O(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>$u(a,t));return $u(i,t)}});Oc=f("$ZodPrefault",(e,t)=>{z.init(e,t),e._zod.optin="optional",O(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)n.value=t.defaultValue;return t.innerType._zod.run(n,r)}}),Ec=f("$ZodNonOptional",(e,t)=>{z.init(e,t),O(e._zod,"values",()=>{let n=t.innerType._zod.values;return n?new Set([...n].filter((r)=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>_u(a,e));return _u(i,e)}});Nc=f("$ZodSuccess",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new ai("ZodSuccess");let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>{return n.value=a.issues.length===0,n});return n.value=i.issues.length===0,n}}),Pc=f("$ZodCatch",(e,t)=>{z.init(e,t),e._zod.optin="optional",O(e._zod,"optout",()=>t.innerType._zod.optout),O(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>{if(n.value=a.value,a.issues.length)n.value=t.catchValue({...n,error:{issues:a.issues.map((o)=>ne(o,r,W()))},input:n.value}),n.issues=[],n.fallback=!0;return n});if(n.value=i.value,i.issues.length)n.value=t.catchValue({...n,error:{issues:i.issues.map((a)=>ne(a,r,W()))},input:n.value}),n.issues=[],n.fallback=!0;return n}}),Ac=f("$ZodNaN",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{if(typeof n.value!=="number"||!Number.isNaN(n.value))return n.issues.push({input:n.value,inst:e,expected:"nan",code:"invalid_type"}),n;return n}}),$a=f("$ZodPipe",(e,t)=>{z.init(e,t),O(e._zod,"values",()=>t.in._zod.values),O(e._zod,"optin",()=>t.in._zod.optin),O(e._zod,"optout",()=>t.out._zod.optout),O(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){let a=t.out._zod.run(n,r);if(a instanceof Promise)return a.then((o)=>Wi(o,t.in,r));return Wi(a,t.in,r)}let i=t.in._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Wi(a,t.out,r));return Wi(i,t.out,r)}});_a=f("$ZodCodec",(e,t)=>{z.init(e,t),O(e._zod,"values",()=>t.in._zod.values),O(e._zod,"optin",()=>t.in._zod.optin),O(e._zod,"optout",()=>t.out._zod.optout),O(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if((r.direction||"forward")==="forward"){let i=t.in._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Ki(a,t,r));return Ki(i,t,r)}else{let i=t.out._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Ki(a,t,r));return Ki(i,t,r)}}});Dc=f("$ZodPreprocess",(e,t)=>{$a.init(e,t)}),Zc=f("$ZodReadonly",(e,t)=>{z.init(e,t),O(e._zod,"propValues",()=>t.innerType._zod.propValues),O(e._zod,"values",()=>t.innerType._zod.values),O(e._zod,"optin",()=>t.innerType?._zod?.optin),O(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then(ku);return ku(i)}});Cc=f("$ZodTemplateLiteral",(e,t)=>{z.init(e,t);let n=[];for(let r of t.parts)if(typeof r==="object"&&r!==null){if(!r._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...r._zod.traits].shift()}`);let i=r._zod.pattern instanceof RegExp?r._zod.pattern.source:r._zod.pattern;if(!i)throw Error(`Invalid template literal part: ${r._zod.traits}`);let a=i.startsWith("^")?1:0,o=i.endsWith("$")?i.length-1:i.length;n.push(i.slice(a,o))}else if(r===null||yl.has(typeof r))n.push(Te(`${r}`));else throw Error(`Invalid template literal part: ${r}`);e._zod.pattern=new RegExp(`^${n.join("")}$`),e._zod.parse=(r,i)=>{if(typeof r.value!=="string")return r.issues.push({input:r.value,inst:e,expected:"string",code:"invalid_type"}),r;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(r.value))return r.issues.push({input:r.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),r;return r}}),Rc=f("$ZodFunction",(e,t)=>{return z.init(e,t),e._def=t,e._zod.def=t,e.implement=(n)=>{if(typeof n!=="function")throw Error("implement() must be called with a function");return function(...r){let i=e._def.input?Nr(e._def.input,r):r,a=Reflect.apply(n,this,i);if(e._def.output)return Nr(e._def.output,a);return a}},e.implementAsync=(n)=>{if(typeof n!=="function")throw Error("implementAsync() must be called with a function");return async function(...r){let i=e._def.input?await Pr(e._def.input,r):r,a=await Reflect.apply(n,this,i);if(e._def.output)return await Pr(e._def.output,a);return a}},e._zod.parse=(n,r)=>{if(typeof n.value!=="function")return n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:e}),n;if(e._def.output&&e._def.output._zod.def.type==="promise")n.value=e.implementAsync(n.value);else n.value=e.implement(n.value);return n},e.input=(...n)=>{let r=e.constructor;if(Array.isArray(n[0]))return new r({type:"function",input:new ya({type:"tuple",items:n[0],rest:n[1]}),output:e._def.output});return new r({type:"function",input:n[0],output:e._def.output})},e.output=(n)=>{return new e.constructor({type:"function",input:e._def.input,output:n})},e}),Lc=f("$ZodPromise",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{return Promise.resolve(n.value).then((i)=>t.innerType._zod.run({value:i,issues:[]},r))}}),Jc=f("$ZodLazy",(e,t)=>{z.init(e,t),O(e._zod,"innerType",()=>{let n=t;if(!n._cachedInner)n._cachedInner=t.getter();return n._cachedInner}),O(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),O(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),O(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),O(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,r)=>{return e._zod.innerType._zod.run(n,r)}}),Mc=f("$ZodCustom",(e,t)=>{J.init(e,t),z.init(e,t),e._zod.parse=(n,r)=>{return n},e._zod.check=(n)=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then((a)=>wu(a,n,r,e));wu(i,n,r,e);return}});ka={};je(ka,{zhTW:()=>Tk,zhCN:()=>zk,yo:()=>Ok,vi:()=>Ik,uz:()=>wk,ur:()=>_k,uk:()=>Wc,ua:()=>bk,tr:()=>gk,th:()=>vk,ta:()=>fk,sv:()=>ck,sl:()=>lk,ru:()=>sk,ro:()=>ak,pt:()=>nk,ps:()=>q_,pl:()=>tk,ota:()=>Q_,no:()=>X_,nl:()=>H_,ms:()=>W_,mk:()=>F_,lt:()=>J_,ko:()=>R_,km:()=>Bc,kh:()=>Z_,ka:()=>A_,ja:()=>N_,it:()=>O_,is:()=>T_,id:()=>z_,hy:()=>I_,hu:()=>w_,hr:()=>__,he:()=>b_,frCA:()=>g_,fr:()=>v_,fi:()=>f_,fa:()=>c_,es:()=>l_,eo:()=>s_,en:()=>Fc,el:()=>r_,de:()=>i_,da:()=>e_,cs:()=>V$,ca:()=>Y$,bg:()=>G$,be:()=>K$,az:()=>B$,ar:()=>M$});Kc=Symbol("ZodOutput"),Hc=Symbol("ZodInput");(Uu=globalThis).__zod_globalRegistry??(Uu.__zod_globalRegistry=Sa());de=globalThis.__zod_globalRegistry;Qc={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};tw={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Dr={string:Am,number:Dm,boolean:Zm,bigint:Cm,symbol:Rm,null:Lm,undefined:Jm,void:Mm,never:Fm,any:Bm,unknown:Wm,date:Km,enum:Hm,literal:Gm,nan:Xm,template_literal:Ym,file:Qm,success:Vm,custom:qm,function:ef,transform:tf,map:nf,set:rf,array:af,object:of,union:Ya,intersection:sf,tuple:uf,record:lf,nullable:df,nonoptional:cf,default:mf,prefault:ff,catch:pf,pipe:vf,readonly:hf,promise:gf,optional:Qa,lazy:yf};iw={},_f={};je(_f,{xor:()=>jp,xid:()=>qf,void:()=>Sp,uuidv7:()=>Wf,uuidv6:()=>Bf,uuidv4:()=>Ff,uuid:()=>Mf,url:()=>Kf,unknown:()=>tt,union:()=>Wn,undefined:()=>kp,ulid:()=>Vf,uint64:()=>$p,uint32:()=>gp,tuple:()=>_o,transform:()=>Hn,templateLiteral:()=>Bp,symbol:()=>_p,superRefine:()=>Xo,success:()=>Lp,stringbool:()=>Qp,stringFormat:()=>dp,string:()=>ti,strictObject:()=>Up,set:()=>Ap,refine:()=>Go,record:()=>ko,readonly:()=>Mo,promise:()=>Wp,preprocess:()=>qp,prefault:()=>Po,pipe:()=>an,partialRecord:()=>Ep,optional:()=>ni,object:()=>zp,number:()=>ro,nullish:()=>Rp,nullable:()=>ri,null:()=>lo,nonoptional:()=>Ao,never:()=>Fn,nativeEnum:()=>Dp,nanoid:()=>Xf,nan:()=>Jp,meta:()=>Xp,map:()=>Pp,mac:()=>ip,looseRecord:()=>Np,looseObject:()=>Tp,literal:()=>Zp,lazy:()=>Wo,ksuid:()=>ep,keyof:()=>xp,jwt:()=>lp,json:()=>Vp,ipv6:()=>np,ipv4:()=>tp,invertCodec:()=>Fp,intersection:()=>bo,int64:()=>bp,int32:()=>hp,int:()=>rn,instanceof:()=>Yp,httpUrl:()=>Hf,hostname:()=>cp,hex:()=>mp,hash:()=>fp,guid:()=>Jf,function:()=>on,float64:()=>vp,float32:()=>pp,file:()=>Cp,exactOptional:()=>To,enum:()=>Kn,emoji:()=>Gf,email:()=>Lf,e164:()=>up,discriminatedUnion:()=>Op,describe:()=>Gp,date:()=>Ip,custom:()=>Hp,cuid2:()=>Qf,cuid:()=>Yf,codec:()=>Mp,cidrv6:()=>ap,cidrv4:()=>rp,check:()=>Kp,catch:()=>Co,boolean:()=>ao,bigint:()=>yp,base64url:()=>sp,base64:()=>op,array:()=>Ii,any:()=>wp,_function:()=>on,_default:()=>Eo,_ZodString:()=>In,ZodXor:()=>ho,ZodXID:()=>En,ZodVoid:()=>po,ZodUnknown:()=>mo,ZodUnion:()=>zi,ZodUndefined:()=>so,ZodUUID:()=>ke,ZodURL:()=>_i,ZodULID:()=>On,ZodType:()=>U,ZodTuple:()=>$o,ZodTransform:()=>zo,ZodTemplateLiteral:()=>Fo,ZodSymbol:()=>oo,ZodSuccess:()=>Do,ZodStringFormat:()=>C,ZodString:()=>$i,ZodSet:()=>So,ZodRecord:()=>Ut,ZodReadonly:()=>Jo,ZodPromise:()=>Ko,ZodPreprocess:()=>Lo,ZodPrefault:()=>No,ZodPipe:()=>Ui,ZodOptional:()=>Gn,ZodObject:()=>xi,ZodNumberFormat:()=>at,ZodNumber:()=>ki,ZodNullable:()=>jo,ZodNull:()=>uo,ZodNonOptional:()=>Xn,ZodNever:()=>fo,ZodNanoID:()=>Un,ZodNaN:()=>Ro,ZodMap:()=>wo,ZodMAC:()=>no,ZodLiteral:()=>Io,ZodLazy:()=>Bo,ZodKSUID:()=>Nn,ZodJWT:()=>Jn,ZodIntersection:()=>yo,ZodIPv6:()=>An,ZodIPv4:()=>Pn,ZodGUID:()=>ii,ZodFunction:()=>Ho,ZodFile:()=>xo,ZodExactOptional:()=>Uo,ZodEnum:()=>Tt,ZodEmoji:()=>zn,ZodEmail:()=>xn,ZodE164:()=>Ln,ZodDiscriminatedUnion:()=>go,ZodDefault:()=>Oo,ZodDate:()=>Bn,ZodCustomStringFormat:()=>Ot,ZodCustom:()=>ji,ZodCodec:()=>Ti,ZodCatch:()=>Zo,ZodCUID2:()=>jn,ZodCUID:()=>Tn,ZodCIDRv6:()=>Zn,ZodCIDRv4:()=>Dn,ZodBoolean:()=>wi,ZodBigIntFormat:()=>Mn,ZodBigInt:()=>Si,ZodBase64URL:()=>Rn,ZodBase64:()=>Cn,ZodArray:()=>vo,ZodAny:()=>co});kf={};je(kf,{uppercase:()=>vn,trim:()=>_n,toUpperCase:()=>wn,toLowerCase:()=>kn,startsWith:()=>gn,slugify:()=>Sn,size:()=>vi,regex:()=>fn,property:()=>Xa,positive:()=>Wa,overwrite:()=>Ee,normalize:()=>$n,nonpositive:()=>Ha,nonnegative:()=>Ga,negative:()=>Ka,multipleOf:()=>St,minSize:()=>Fe,minLength:()=>et,mime:()=>bn,maxSize:()=>jt,maxLength:()=>hi,lte:()=>ce,lt:()=>Je,lowercase:()=>pn,length:()=>gi,includes:()=>hn,gte:()=>Q,gt:()=>Me,endsWith:()=>yn});Va={};je(Va,{time:()=>If,duration:()=>xf,datetime:()=>wf,date:()=>Sf,ZodISOTime:()=>to,ZodISODuration:()=>io,ZodISODateTime:()=>qa,ZodISODate:()=>eo});qa=f("ZodISODateTime",(e,t)=>{Jd.init(e,t),C.init(e,t)});eo=f("ZodISODate",(e,t)=>{Md.init(e,t),C.init(e,t)});to=f("ZodISOTime",(e,t)=>{Fd.init(e,t),C.init(e,t)});io=f("ZodISODuration",(e,t)=>{Bd.init(e,t),C.init(e,t)});nw=f("ZodError",zf),ae=f("ZodError",zf,{Parent:Error}),Uf=si(ae),Tf=ui(ae),jf=li(ae),Of=di(ae),Ef=ta(ae),Nf=ia(ae),Pf=na(ae),Af=ra(ae),Df=aa(ae),Zf=oa(ae),Cf=sa(ae),Rf=ua(ae),Tu=new WeakMap;U=f("ZodType",(e,t)=>{return z.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:ei(e,"input"),output:ei(e,"output")}}),e.toJSONSchema=Pm(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,r)=>Uf(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>jf(e,n,r),e.parseAsync=async(n,r)=>Tf(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Of(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>Ef(e,n,r),e.decode=(n,r)=>Nf(e,n,r),e.encodeAsync=async(n,r)=>Pf(e,n,r),e.decodeAsync=async(n,r)=>Af(e,n,r),e.safeEncode=(n,r)=>Df(e,n,r),e.safeDecode=(n,r)=>Zf(e,n,r),e.safeEncodeAsync=async(n,r)=>Cf(e,n,r),e.safeDecodeAsync=async(n,r)=>Rf(e,n,r),bi(e,"ZodType",{check(...n){let r=this.def;return this.clone(j.mergeDefs(r,{checks:[...r.checks??[],...n.map((i)=>typeof i==="function"?{_zod:{check:i,def:{check:"custom"},onattach:[]}}:i)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,r){return fe(this,n,r)},brand(){return this},register(n,r){return n.add(this,r),this},refine(n,r){return this.check(Go(n,r))},superRefine(n,r){return this.check(Xo(n,r))},overwrite(n){return this.check(Ee(n))},optional(){return ni(this)},exactOptional(){return To(this)},nullable(){return ri(this)},nullish(){return ni(ri(this))},nonoptional(n){return Ao(this,n)},array(){return Ii(this)},or(n){return Wn([this,n])},and(n){return bo(this,n)},transform(n){return an(this,Hn(n))},default(n){return Eo(this,n)},prefault(n){return Po(this,n)},catch(n){return Co(this,n)},pipe(n){return an(this,n)},readonly(){return Mo(this)},describe(n){let r=this.clone();return de.add(r,{description:n}),r},meta(...n){if(n.length===0)return de.get(this);let r=this.clone();return de.add(r,n[0]),r},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return de.get(e)?.description},configurable:!0}),e}),In=f("_ZodString",(e,t)=>{pi.init(e,t),U.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Am(e,r,i,a);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,bi(e,"_ZodString",{regex(...r){return this.check(fn(...r))},includes(...r){return this.check(hn(...r))},startsWith(...r){return this.check(gn(...r))},endsWith(...r){return this.check(yn(...r))},min(...r){return this.check(et(...r))},max(...r){return this.check(hi(...r))},length(...r){return this.check(gi(...r))},nonempty(...r){return this.check(et(1,...r))},lowercase(r){return this.check(pn(r))},uppercase(r){return this.check(vn(r))},trim(){return this.check(_n())},normalize(...r){return this.check($n(...r))},toLowerCase(){return this.check(kn())},toUpperCase(){return this.check(wn())},slugify(){return this.check(Sn())}})}),$i=f("ZodString",(e,t)=>{pi.init(e,t),In.init(e,t),e.email=(n)=>e.check(Ia(xn,n)),e.url=(n)=>e.check(mn(_i,n)),e.jwt=(n)=>e.check(Ba(Jn,n)),e.emoji=(n)=>e.check(ja(zn,n)),e.guid=(n)=>e.check(nn(ii,n)),e.uuid=(n)=>e.check(xa(ke,n)),e.uuidv4=(n)=>e.check(za(ke,n)),e.uuidv6=(n)=>e.check(Ua(ke,n)),e.uuidv7=(n)=>e.check(Ta(ke,n)),e.nanoid=(n)=>e.check(Oa(Un,n)),e.guid=(n)=>e.check(nn(ii,n)),e.cuid=(n)=>e.check(Ea(Tn,n)),e.cuid2=(n)=>e.check(Na(jn,n)),e.ulid=(n)=>e.check(Pa(On,n)),e.base64=(n)=>e.check(Ja(Cn,n)),e.base64url=(n)=>e.check(Ma(Rn,n)),e.xid=(n)=>e.check(Aa(En,n)),e.ksuid=(n)=>e.check(Da(Nn,n)),e.ipv4=(n)=>e.check(Za(Pn,n)),e.ipv6=(n)=>e.check(Ca(An,n)),e.cidrv4=(n)=>e.check(Ra(Dn,n)),e.cidrv6=(n)=>e.check(La(Zn,n)),e.e164=(n)=>e.check(Fa(Ln,n)),e.datetime=(n)=>e.check(wf(n)),e.date=(n)=>e.check(Sf(n)),e.time=(n)=>e.check(If(n)),e.duration=(n)=>e.check(xf(n))});C=f("ZodStringFormat",(e,t)=>{Z.init(e,t),In.init(e,t)}),xn=f("ZodEmail",(e,t)=>{Ed.init(e,t),C.init(e,t)});ii=f("ZodGUID",(e,t)=>{jd.init(e,t),C.init(e,t)});ke=f("ZodUUID",(e,t)=>{Od.init(e,t),C.init(e,t)});_i=f("ZodURL",(e,t)=>{Nd.init(e,t),C.init(e,t)});zn=f("ZodEmoji",(e,t)=>{Pd.init(e,t),C.init(e,t)});Un=f("ZodNanoID",(e,t)=>{Ad.init(e,t),C.init(e,t)});Tn=f("ZodCUID",(e,t)=>{Dd.init(e,t),C.init(e,t)});jn=f("ZodCUID2",(e,t)=>{Zd.init(e,t),C.init(e,t)});On=f("ZodULID",(e,t)=>{Cd.init(e,t),C.init(e,t)});En=f("ZodXID",(e,t)=>{Rd.init(e,t),C.init(e,t)});Nn=f("ZodKSUID",(e,t)=>{Ld.init(e,t),C.init(e,t)});Pn=f("ZodIPv4",(e,t)=>{Wd.init(e,t),C.init(e,t)});no=f("ZodMAC",(e,t)=>{Hd.init(e,t),C.init(e,t)});An=f("ZodIPv6",(e,t)=>{Kd.init(e,t),C.init(e,t)});Dn=f("ZodCIDRv4",(e,t)=>{Gd.init(e,t),C.init(e,t)});Zn=f("ZodCIDRv6",(e,t)=>{Xd.init(e,t),C.init(e,t)});Cn=f("ZodBase64",(e,t)=>{Yd.init(e,t),C.init(e,t)});Rn=f("ZodBase64URL",(e,t)=>{Vd.init(e,t),C.init(e,t)});Ln=f("ZodE164",(e,t)=>{qd.init(e,t),C.init(e,t)});Jn=f("ZodJWT",(e,t)=>{tc.init(e,t),C.init(e,t)});Ot=f("ZodCustomStringFormat",(e,t)=>{ic.init(e,t),C.init(e,t)});ki=f("ZodNumber",(e,t)=>{va.init(e,t),U.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Dm(e,r,i,a),bi(e,"ZodNumber",{gt(r,i){return this.check(Me(r,i))},gte(r,i){return this.check(Q(r,i))},min(r,i){return this.check(Q(r,i))},lt(r,i){return this.check(Je(r,i))},lte(r,i){return this.check(ce(r,i))},max(r,i){return this.check(ce(r,i))},int(r){return this.check(rn(r))},safe(r){return this.check(rn(r))},positive(r){return this.check(Me(0,r))},nonnegative(r){return this.check(Q(0,r))},negative(r){return this.check(Je(0,r))},nonpositive(r){return this.check(ce(0,r))},multipleOf(r,i){return this.check(St(r,i))},step(r,i){return this.check(St(r,i))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??0.5),e.isFinite=!0,e.format=n.format??null});at=f("ZodNumberFormat",(e,t)=>{nc.init(e,t),ki.init(e,t)});wi=f("ZodBoolean",(e,t)=>{ha.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Zm(e,n,r,i)});Si=f("ZodBigInt",(e,t)=>{ga.init(e,t),U.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Cm(e,r,i,a),e.gte=(r,i)=>e.check(Q(r,i)),e.min=(r,i)=>e.check(Q(r,i)),e.gt=(r,i)=>e.check(Me(r,i)),e.gte=(r,i)=>e.check(Q(r,i)),e.min=(r,i)=>e.check(Q(r,i)),e.lt=(r,i)=>e.check(Je(r,i)),e.lte=(r,i)=>e.check(ce(r,i)),e.max=(r,i)=>e.check(ce(r,i)),e.positive=(r)=>e.check(Me(BigInt(0),r)),e.negative=(r)=>e.check(Je(BigInt(0),r)),e.nonpositive=(r)=>e.check(ce(BigInt(0),r)),e.nonnegative=(r)=>e.check(Q(BigInt(0),r)),e.multipleOf=(r,i)=>e.check(St(r,i));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});Mn=f("ZodBigIntFormat",(e,t)=>{rc.init(e,t),Si.init(e,t)});oo=f("ZodSymbol",(e,t)=>{ac.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Rm(e,n,r,i)});so=f("ZodUndefined",(e,t)=>{oc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Jm(e,n,r,i)});uo=f("ZodNull",(e,t)=>{sc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Lm(e,n,r,i)});co=f("ZodAny",(e,t)=>{uc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Bm(e,n,r,i)});mo=f("ZodUnknown",(e,t)=>{lc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Wm(e,n,r,i)});fo=f("ZodNever",(e,t)=>{dc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Fm(e,n,r,i)});po=f("ZodVoid",(e,t)=>{cc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Mm(e,n,r,i)});Bn=f("ZodDate",(e,t)=>{mc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Km(e,r,i,a),e.min=(r,i)=>e.check(Q(r,i)),e.max=(r,i)=>e.check(ce(r,i));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});vo=f("ZodArray",(e,t)=>{fc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>af(e,n,r,i),e.element=t.element,bi(e,"ZodArray",{min(n,r){return this.check(et(n,r))},nonempty(n){return this.check(et(1,n))},max(n,r){return this.check(hi(n,r))},length(n,r){return this.check(gi(n,r))},unwrap(){return this.element}})});xi=f("ZodObject",(e,t)=>{gc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>of(e,n,r,i),j.defineLazy(e,"shape",()=>{return t.shape}),bi(e,"ZodObject",{keyof(){return Kn(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:tt()})},loose(){return this.clone({...this._zod.def,catchall:tt()})},strict(){return this.clone({...this._zod.def,catchall:Fn()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return j.extend(this,n)},safeExtend(n){return j.safeExtend(this,n)},merge(n){return j.merge(this,n)},pick(n){return j.pick(this,n)},omit(n){return j.omit(this,n)},partial(...n){return j.partial(Gn,this,n[0])},required(...n){return j.required(Xn,this,n[0])}})});zi=f("ZodUnion",(e,t)=>{cn.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Ya(e,n,r,i),e.options=t.options});ho=f("ZodXor",(e,t)=>{zi.init(e,t),yc.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Ya(e,n,r,i),e.options=t.options});go=f("ZodDiscriminatedUnion",(e,t)=>{zi.init(e,t),bc.init(e,t)});yo=f("ZodIntersection",(e,t)=>{$c.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>sf(e,n,r,i)});$o=f("ZodTuple",(e,t)=>{ya.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>uf(e,n,r,i),e.rest=(n)=>e.clone({...e._zod.def,rest:n})});Ut=f("ZodRecord",(e,t)=>{_c.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>lf(e,n,r,i),e.keyType=t.keyType,e.valueType=t.valueType});wo=f("ZodMap",(e,t)=>{kc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>nf(e,n,r,i),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...n)=>e.check(Fe(...n)),e.nonempty=(n)=>e.check(Fe(1,n)),e.max=(...n)=>e.check(jt(...n)),e.size=(...n)=>e.check(vi(...n))});So=f("ZodSet",(e,t)=>{wc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>rf(e,n,r,i),e.min=(...n)=>e.check(Fe(...n)),e.nonempty=(n)=>e.check(Fe(1,n)),e.max=(...n)=>e.check(jt(...n)),e.size=(...n)=>e.check(vi(...n))});Tt=f("ZodEnum",(e,t)=>{Sc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Hm(e,r,i,a),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(r,i)=>{let a={};for(let o of r)if(n.has(o))a[o]=t.entries[o];else throw Error(`Key ${o} not found in enum`);return new Tt({...t,checks:[],...j.normalizeParams(i),entries:a})},e.exclude=(r,i)=>{let a={...t.entries};for(let o of r)if(n.has(o))delete a[o];else throw Error(`Key ${o} not found in enum`);return new Tt({...t,checks:[],...j.normalizeParams(i),entries:a})}});Io=f("ZodLiteral",(e,t)=>{Ic.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Gm(e,n,r,i),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});xo=f("ZodFile",(e,t)=>{xc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Qm(e,n,r,i),e.min=(n,r)=>e.check(Fe(n,r)),e.max=(n,r)=>e.check(jt(n,r)),e.mime=(n,r)=>e.check(bn(Array.isArray(n)?n:[n],r))});zo=f("ZodTransform",(e,t)=>{zc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>tf(e,n,r,i),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new ai(e.constructor.name);n.addIssue=(a)=>{if(typeof a==="string")n.issues.push(j.issue(a,n.value,t));else{let o=a;if(o.fatal)o.continue=!1;o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=e),n.issues.push(j.issue(o))}};let i=t.transform(n.value,n);if(i instanceof Promise)return i.then((a)=>{return n.value=a,n.fallback=!0,n});return n.value=i,n.fallback=!0,n}});Gn=f("ZodOptional",(e,t)=>{ba.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Qa(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Uo=f("ZodExactOptional",(e,t)=>{Uc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Qa(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});jo=f("ZodNullable",(e,t)=>{Tc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>df(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Oo=f("ZodDefault",(e,t)=>{jc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>mf(e,n,r,i),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});No=f("ZodPrefault",(e,t)=>{Oc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>ff(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Xn=f("ZodNonOptional",(e,t)=>{Ec.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>cf(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Do=f("ZodSuccess",(e,t)=>{Nc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Vm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Zo=f("ZodCatch",(e,t)=>{Pc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>pf(e,n,r,i),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});Ro=f("ZodNaN",(e,t)=>{Ac.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Xm(e,n,r,i)});Ui=f("ZodPipe",(e,t)=>{$a.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>vf(e,n,r,i),e.in=t.in,e.out=t.out});Ti=f("ZodCodec",(e,t)=>{Ui.init(e,t),_a.init(e,t)});Lo=f("ZodPreprocess",(e,t)=>{Ui.init(e,t),Dc.init(e,t)}),Jo=f("ZodReadonly",(e,t)=>{Zc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>hf(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Fo=f("ZodTemplateLiteral",(e,t)=>{Cc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Ym(e,n,r,i)});Bo=f("ZodLazy",(e,t)=>{Jc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>yf(e,n,r,i),e.unwrap=()=>e._zod.def.getter()});Ko=f("ZodPromise",(e,t)=>{Lc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>gf(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Ho=f("ZodFunction",(e,t)=>{Rc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>ef(e,n,r,i)});ji=f("ZodCustom",(e,t)=>{Mc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>qm(e,n,r,i)});Gp=Om,Xp=Em;rw={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};(function(e){})(Zr||(Zr={}));b={..._f,...kf,iso:Va},sw=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);tv={};je(tv,{string:()=>cw,number:()=>mw,date:()=>vw,boolean:()=>fw,bigint:()=>pw});W(Fc());Yo=u,iv=u.object({id:u.string(),temperature:u.number().optional(),isR1FormatRequired:u.boolean().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),inputPrice:u.number().optional(),outputPrice:u.number().optional(),supportsImages:u.boolean().optional()}),nv=u.object({models:u.array(iv).optional(),openAiBaseUrl:u.string().optional(),openAiHeaders:u.record(u.string(),u.string()).optional(),azureApiVersion:u.string().optional(),azureIdentity:u.boolean().optional()}),rv=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),av=u.object({name:u.string(),baseModelId:u.string(),thinkingBudgetTokens:u.number().optional()}),ov=u.object({models:u.array(rv).optional(),customModels:u.array(av).optional(),awsRegion:u.string().optional(),awsUseCrossRegionInference:u.boolean().optional(),awsUseGlobalInference:u.boolean().optional(),awsBedrockUsePromptCache:u.boolean().optional(),awsBedrockEndpoint:u.string().optional()}),sv=u.object({id:u.string()}),uv=u.object({models:u.array(sv).optional()}),lv=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),dv=u.object({models:u.array(lv).optional(),vertexProjectId:u.string().optional(),vertexRegion:u.string().optional()}),cv=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional(),promptCachingEnabled:u.boolean().optional()}),mv=u.object({models:u.array(cv).optional(),baseUrl:u.string().optional()}),fv=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),pv=u.object({models:u.array(fv).optional(),baseUrl:u.string().optional()}),hw=u.object({OpenAiCompatible:nv.optional(),AwsBedrock:ov.optional(),Cline:uv.optional(),Vertex:dv.optional(),LiteLLM:mv.optional(),Anthropic:pv.optional()}),vv=u.object({id:u.string()}),hv=u.object({name:u.string(),url:u.string(),alwaysEnabled:u.boolean().optional(),headers:u.record(u.string(),u.string()).optional()}),Cr=u.object({alwaysEnabled:u.boolean(),name:u.string(),contents:u.string()}),Xi=u.object({bucket:u.string(),accessKeyId:u.string(),secretAccessKey:u.string(),region:u.string().optional(),endpoint:u.string().optional(),accountId:u.string().optional()}),gv=u.object({enabled:u.boolean().optional(),type:u.union([u.literal("s3_access_keys"),u.literal("r2_access_keys"),u.literal("azure_access_keys")]).optional(),s3AccessSettings:Xi.optional(),r2AccessSettings:Xi.optional(),azureAccessSettings:Xi.optional()}),yv=u.object({promptUploading:gv.optional()}),gw=u.object({version:u.string(),providerSettings:hw.optional(),telemetryEnabled:u.boolean().optional(),kanbanEnabled:u.boolean().optional(),mcpMarketplaceEnabled:u.boolean().optional(),allowedMCPServers:u.array(vv).optional(),remoteMCPServers:u.array(hv).optional(),blockPersonalRemoteMCPServers:u.boolean().optional(),yoloModeAllowed:u.boolean().optional(),openTelemetryEnabled:u.boolean().optional(),openTelemetryMetricsExporter:u.string().optional(),openTelemetryLogsExporter:u.string().optional(),openTelemetryOtlpProtocol:u.string().optional(),openTelemetryOtlpEndpoint:u.string().optional(),openTelemetryOtlpHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpMetricsProtocol:u.string().optional(),openTelemetryOtlpMetricsEndpoint:u.string().optional(),openTelemetryOtlpMetricsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpLogsProtocol:u.string().optional(),openTelemetryOtlpLogsEndpoint:u.string().optional(),openTelemetryOtlpLogsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryMetricExportInterval:u.number().optional(),openTelemetryOtlpInsecure:u.boolean().optional(),openTelemetryLogBatchSize:u.number().optional(),openTelemetryLogBatchTimeout:u.number().optional(),openTelemetryLogMaxQueueSize:u.number().optional(),enterpriseTelemetry:yv.optional(),globalRules:u.array(Cr).optional(),globalWorkflows:u.array(Cr).optional()}),yw=u.record(u.string(),u.string()),bv=u.enum(["default","openai-responses","r1"]),bw={DEFAULT:"default",OPENAI_RESPONSES:"openai-responses",R1:"r1"},$v=u.enum(["images","tools","streaming","prompt-cache","reasoning","reasoning-effort","computer-use","global-endpoint","structured_output","temperature","files"]),_v=u.enum(["active","preview","deprecated","legacy"]),kv=u.object({input:u.number().optional(),output:u.number().optional(),cacheWrite:u.number().optional(),cacheRead:u.number().optional()}),wv=u.object({maxBudget:u.number().optional(),outputPrice:u.number().optional(),thinkingLevel:u.enum(["low","high"]).optional()}),Sv=u.object({reasoningDefaultOn:u.boolean().optional()}).catchall(u.unknown()),Qo=u.object({id:u.string(),name:u.string().optional(),description:u.string().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),maxInputTokens:u.number().optional(),capabilities:u.array($v).optional(),apiFormat:bv.optional(),systemRole:u.enum(["system","developer"]).optional(),temperature:u.number().optional(),pricing:kv.optional(),thinkingConfig:wv.optional(),status:_v.optional(),deprecationNotice:u.string().optional(),replacedBy:u.string().optional(),releaseDate:u.string().optional(),deprecationDate:u.string().optional(),family:u.string().optional(),metadata:Sv.optional()}),Iv=u.object({id:u.string(),name:u.string(),input:u.unknown(),output:u.unknown(),error:u.string().optional(),durationMs:u.number(),startedAt:u.date(),endedAt:u.date()}),xv=u.enum(["completed","max_iterations","aborted","mistake_limit","error"]),zv=u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()}),$w=u.object({text:u.string(),usage:zv,messages:u.array(u.custom()),toolCalls:u.array(Iv),iterations:u.number(),finishReason:xv,model:u.object({id:u.string(),provider:u.string(),info:Qo.optional()}),startedAt:u.date(),endedAt:u.date(),durationMs:u.number()}),Uv=u.enum(["low","medium","high","xhigh"]),_w=u.object({sessionId:u.string().optional(),providerId:u.string(),modelId:u.string(),apiKey:u.string().optional(),baseUrl:u.string().url().optional(),headers:u.record(u.string(),u.string()).optional(),knownModels:u.record(u.string(),Qo).optional(),providerConfig:u.unknown().optional(),initialMessages:u.array(u.custom()).optional(),systemPrompt:u.string(),tools:u.array(u.custom()),maxIterations:u.number().positive().optional(),maxParallelToolCalls:u.number().int().positive().default(8),maxTokensPerTurn:u.number().positive().optional(),apiTimeoutMs:u.number().positive().default(180000),userFileContentLoader:u.function().input([u.string()]).output(u.promise(u.string())).optional(),toolContextMetadata:u.record(u.string(),u.unknown()).optional(),execution:u.object({maxConsecutiveMistakes:u.number().int().positive().optional(),reminderAfterIterations:u.number().nonnegative().optional(),reminderText:u.string().optional(),loopDetection:u.union([u.literal(!1),u.object({softThreshold:u.number().int().positive().optional(),hardThreshold:u.number().int().positive().optional()})]).optional()}).optional(),reasoningEffort:Uv.optional(),thinkingBudgetTokens:u.number().positive().optional(),thinking:u.boolean().optional(),onEvent:u.function().input([u.custom()]).output(u.void()).optional(),hooks:u.custom().optional(),parentAgentId:u.string().optional(),extensions:u.array(u.custom()).optional(),hookErrorMode:u.enum(["ignore","throw"]).default("ignore"),toolPolicies:u.record(u.string(),u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()})).optional(),requestToolApproval:u.function().input([u.object({sessionId:u.string(),agentId:u.string(),conversationId:u.string(),iteration:u.number(),toolCallId:u.string(),toolName:u.string(),input:u.unknown(),policy:u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()}).default({})})]).output(u.union([u.object({approved:u.boolean(),reason:u.string().optional()}),u.promise(u.object({approved:u.boolean(),reason:u.string().optional()}))])).optional(),onConsecutiveMistakeLimitReached:u.function().input([u.object({iteration:u.number().int().positive(),consecutiveMistakes:u.number().int().positive(),maxConsecutiveMistakes:u.number().int().positive(),reason:u.enum(["api_error","invalid_tool_call","tool_execution_failed"]),details:u.string().optional()})]).output(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()}),u.promise(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()})]))])).optional(),logger:u.custom().optional(),extensionContext:u.custom().optional(),abortSignal:u.custom().optional()}),Tv=u.enum(["connector.started","connector.stopping","session.authorize","message.received","message.denied","message.completed","message.failed","session.started","session.reused","session.reset","schedule.delivery.started","schedule.delivery.sent","schedule.delivery.failed"]),jv=u.object({id:u.string().optional(),label:u.string().optional(),role:u.string().optional(),participantKey:u.string().optional(),participantLabel:u.string().optional(),platformUserId:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),Ov=u.object({source:u.string(),sourceEvent:u.string(),threadId:u.string(),channelId:u.string(),isDM:u.boolean(),sessionId:u.string().optional(),workspaceRoot:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),kw=u.object({actor:jv,context:Ov,payload:u.record(u.string(),u.unknown()).optional()}),ww=u.object({action:u.enum(["allow","deny"]).default("allow"),message:u.string().optional(),reason:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),Sw=u.object({adapter:u.string(),botUserName:u.string().optional(),event:Tv,payload:u.record(u.string(),u.unknown()),ts:u.string()}),Ev=[{name:"discord",description:"Discord interactions and gateway bridge backed by RPC runtime sessions"},{name:"gchat",description:"Google Chat webhook bridge backed by RPC runtime sessions"},{name:"linear",description:"Linear webhook bridge backed by RPC runtime sessions"},{name:"slack",description:"Slack webhook/socket bridge backed by RPC runtime sessions"},{name:"telegram",description:"Bridge Telegram bot messages into RPC chat sessions"},{name:"whatsapp",description:"Bridge WhatsApp webhook messages into RPC chat sessions"}];Pv=[{id:"telegram",name:"Telegram",type:"polling",hint:"Easiest to set up. No public URL needed.",fields:[{flag:"-k",label:"Bot token",placeholder:"7123456789:AAH...",required:!0,help:["Open Telegram and start a chat with @BotFather","Send /newbot and follow the prompts","BotFather gives you this after creating the bot","It looks like 7123456789:AAHxxx..."]}],security:{prompt:"By default, anyone who finds your bot can message it and run tasks on your machine. Restrict access to your Telegram user ID?",fields:[{key:"userId",label:"Your Telegram user ID",placeholder:"123456789",help:["Message @userinfobot on Telegram","It will reply with your numeric user ID"],requiredMessage:"User ID is required to restrict access",validate:zw}],buildArgs:({userId:e})=>["--allowed-user-id",e??""]}},{id:"slack",name:"Slack",type:"hybrid",hint:"Public URL for webhook mode; leave blank for socket mode.",fields:[{flag:"--bot-token",label:"Bot token",placeholder:"xoxb-...",required:!0,help:["Go to api.slack.com/apps and create a new app","Add Bot Token Scopes: chat:write, app_mentions:read, channels:history, channels:read, im:history, im:read, im:write, users:read","Install to workspace and copy the Bot Token"]},{flag:"--base-url",label:"Public base URL",placeholder:"leave blank for socket mode",help:["Enter a publicly accessible URL for webhook mode","Leave blank to use Slack socket mode instead"]},{flag:"--signing-secret",label:"Signing secret",required:!0,help:["Found in your app's Basic Information page"],includeWhen:{flag:"--base-url",notEquals:""}},{flag:"--app-token",label:"App-level token",placeholder:"xapp-...",required:!0,help:["Enable Socket Mode in the Slack app","Generate an app-level token with the connections:write scope"],includeWhen:{flag:"--base-url",equals:""}}],security:{prompt:"Restrict which Slack users can interact with the bot?",fields:[{key:"teamId",label:"Allowed Slack workspace ID",placeholder:"T01ABC123",help:["Open your Slack workspace URL in a browser","The workspace ID is the segment after /client/, for example T01ABC123"],requiredMessage:"Workspace ID is required to restrict access",validate:Uw},{key:"userId",label:"Allowed Slack member ID",placeholder:"U01ABC123",help:["Click a user's name in Slack, then View full profile","Click ... and Copy member ID"],requiredMessage:"Member ID is required to restrict access",validate:Tw}],buildArgs:({teamId:e,userId:t})=>["--hook-command",`jq -r ".payload.actor.participantKey" | grep -qx "slack:team:${e}:user:${t}" && echo '{"action":"allow"}' || echo '{"action":"deny"}'`]}},{id:"discord",name:"Discord",type:"webhook",hint:"Requires a Discord app and public URL.",fields:[{flag:"--application-id",label:"Application ID",required:!0,help:["Go to discord.com/developers/applications","Create a new app, copy the Application ID"]},{flag:"--bot-token",label:"Bot token",required:!0,help:["Go to Bot section, create a bot, copy the token"]},{flag:"--public-key",label:"Public key",required:!0,help:["Found in General Information of your app"]},{flag:"--base-url",label:"Public base URL",placeholder:"https://example.com",required:!0,help:["Base URL for the connector","For Discord, set the Interactions Endpoint URL to <base-url>/api/webhooks/discord"]}]},{id:"whatsapp",name:"WhatsApp",type:"webhook",hint:"Requires Meta developer account and public URL.",fields:[{flag:"--phone-number-id",label:"Phone number ID",required:!0,help:["From your WhatsApp Business account in Meta Developer portal"]},{flag:"--access-token",label:"Access token",required:!0,help:["Generate a permanent token in Meta Developer portal"]},{flag:"--app-secret",label:"App secret",required:!0,help:["Found in App Settings > Basic"]},{flag:"--verify-token",label:"Webhook verify token",placeholder:"my-verify-token",required:!0,help:["Any string you choose, used to verify webhook setup"]},{flag:"--base-url",label:"Public base URL",placeholder:"https://example.com",required:!0}]},{id:"gchat",name:"Google Chat",type:"webhook",hint:"Requires Google Cloud project and public URL.",fields:[{flag:"--credentials-json",label:"Service account credentials JSON",required:!0,help:["Create a service account in Google Cloud Console","Download the credentials JSON file","Paste the JSON content here"]},{flag:"--base-url",label:"Public base URL",placeholder:"https://example.com",required:!0}]},{id:"linear",name:"Linear",type:"webhook",hint:"React to Linear issues and comments.",fields:[{flag:"--api-key",label:"API key",required:!0,help:["Go to Linear Settings > API > Personal API keys"]},{flag:"--webhook-secret",label:"Webhook signing secret",required:!0,help:["Go to Settings > API > Webhooks, create one","Copy the signing secret"]},{flag:"--base-url",label:"Public base URL",placeholder:"https://example.com",required:!0}]}],Av=[];Ow=["hooks","tools","commands","rules","skills","messageBuilders","providers","automationEvents","mcp"],Ew=new Set(Ow);Dw=[".js",".ts"],Rv={CLINE_PASS:"ext-cline-pass"},Zw={[Rv.CLINE_PASS]:!1},Cw=Object.values(Rv),Lv=u.enum(["agent_start","agent_resume","agent_abort","agent_end","agent_error","tool_call","tool_result","prompt_submit","pre_compact","session_shutdown"]),it=u.record(u.string(),u.string()),Rw=u.object({toolName:u.string(),parameters:it}),Lw=u.object({toolName:u.string(),parameters:it,result:u.string(),success:u.boolean(),executionTimeMs:u.number()}),Jw=u.object({prompt:u.string(),attachments:u.array(u.string())}),Mw=u.object({taskMetadata:it}),Fw=u.object({taskMetadata:it,previousState:it}),Bw=u.object({taskMetadata:it}),Ww=u.object({taskMetadata:it}),Kw=u.object({taskId:u.string(),ulid:u.string(),contextSize:u.number(),compactionStrategy:u.string(),previousApiReqIndex:u.number(),tokensIn:u.number(),tokensOut:u.number(),tokensInCache:u.number(),tokensOutCache:u.number(),deletedRangeStart:u.number(),deletedRangeEnd:u.number(),contextJsonPath:u.string(),contextRawPath:u.string()}),Jv=u.object({clineVersion:u.string(),hookName:Lv,timestamp:u.string(),taskId:u.string(),sessionContext:u.object({rootSessionId:u.string().optional(),hookLogPath:u.string().optional()}).optional(),workspaceRoots:u.array(u.string()),workspaceInfo:u.custom().optional(),userId:u.string(),agent_id:u.string(),parent_agent_id:u.string().nullable(),iteration:u.number().optional(),reason:u.string().optional(),tool_call:u.object({id:u.string(),name:u.string(),input:u.unknown()}).optional(),tool_result:u.custom().optional(),turn:u.unknown().optional(),error:u.object({name:u.string(),message:u.string(),stack:u.string().optional()}).optional(),preToolUse:Rw.optional(),postToolUse:Lw.optional(),userPromptSubmit:Jw.optional(),taskStart:Mw.optional(),taskResume:Fw.optional(),taskCancel:Bw.optional(),taskComplete:Ww.optional(),preCompact:Kw.optional()}).passthrough();Qw=["client.register","client.list","session.create","session.list","session.get","session.run","session.abort","schedule.create","schedule.list","settings.get","settings.set"];Bv=["readFile","search","bash","webFetch","editor","applyPatch","skills","askQuestion","submit"],tS=new Set(Bv);qo=["image/png","image/jpeg","image/gif","image/webp"];US=["show","hide","subscription"];Vt={xhigh:0.95,high:0.8,medium:0.5,low:0.2,minimal:0.1,none:0};NS={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","X-IS-MULTIROOT":"false","X-CLIENT-TYPE":"cline-sdk"};DS={debug:()=>{},log:()=>{},error:()=>{}};Qe=class Qe extends Error{constructor(e,t){super(`${e} at position ${t}`);this.position=t}};Du=/^(http|https|ftp|mailto|file|data|irc):\/\/$/,Zu=/^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;RS=/^[[{\w-]$/;BS={""":'"',"&":"&","<":"<",">":">","'":"'"};Wu={"\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},GS={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
167
|
-
`,r:"\r",t:"\t"};QS=/^\{\s*"([A-Za-z0-9_.$-]+)"\s*:\s*([\s\S]+?)\s*\}$/;qS=[(e)=>JSON.parse(e),(e)=>JSON.parse(XS(e)),VS];wI=Yo.enum(["reasoning","prompt-cache","tools","provider-tools","oauth","temperature","files","streaming","vision","computer-use","local-auth","popular"]),SI=Yo.enum(["anthropic","gemini","openai-chat","openai-responses","openai-r1","ai-sdk"]),II=Yo.enum(["anthropic","ai-sdk","ai-sdk-community","openai","openai-compatible","openai-r1","gemini","bedrock","custom","fetch","vertex"]);Kr={production:{environment:"production",appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",mcpBaseUrl:"https://api.cline.bot/v1/mcp",workOsClientId:"client_01K3A541FN8TA3EPPHTD2325AR"},staging:{environment:"staging",appBaseUrl:"https://staging-app.cline.bot",apiBaseUrl:"https://core-api.staging.int.cline.bot",mcpBaseUrl:"https://core-api.staging.int.cline.bot/v1/mcp",workOsClientId:"client_01K3A5415VF6QBQBG3XYCW91G6"},local:{environment:"local",appBaseUrl:"http://localhost:3000",apiBaseUrl:"http://localhost:7777",mcpBaseUrl:"http://localhost:7777/v1/mcp",workOsClientId:"client_01K6XQAY7JK6T5HXVSZW2S5VYK"}};dx=["idle","running","pending","completed","failed","cancelled"],rs=["rules","skills","workflows","plugins"],hh=rs,cx=new Set(rs);yh=u.object({rootPath:u.string().min(1),hint:u.string().min(1).optional(),associatedRemoteUrls:u.array(u.string().min(1)).optional(),latestGitCommitHash:u.string().min(1).optional(),latestGitBranchName:u.string().min(1).optional()}),bh=u.object({currentWorkspacePath:u.string().min(1).optional(),workspaces:u.record(u.string().min(1),yh)});$h=["current_state","boundary_analysis","interface_proposal"],ye=u.preprocess((e)=>e instanceof Date?e.toISOString():e,u.string().datetime()),$t=u.enum(["pending","in_progress","blocked","completed"]),_h=u.enum(["queued","running","completed","failed","cancelled","interrupted"]),Qn=u.enum(["draft","in_review","finalized"]),bx=u.object({agentId:u.string(),role:u.enum(["lead","teammate"]),description:u.string().optional(),status:u.enum(["idle","running","stopped"])}),$x=u.object({agentId:u.string(),rolePrompt:u.string(),modelId:u.string().optional(),maxIterations:u.number().optional()});_x=u.object({agentId:u.string().min(1).describe("Teammate identifier"),rolePrompt:u.string().min(1).describe("System prompt describing teammate role")}).strict(),kx=u.object({agentId:u.string().min(1).describe("Teammate identifier"),reason:L(u.string().min(1)).describe("Optional shutdown reason")}),wx=u.object({}),Sx={create:["title","description"],list:[],claim:["taskId"],complete:["taskId","summary"],block:["taskId","reason"]},Ix={create:["status","taskId","summary","reason"]},xx=u.object({action:u.enum(["create","list","claim","complete","block"]),title:L(u.string().min(1)).describe("Task title"),description:L(u.string().min(1)).describe("Task details"),dependsOn:L(u.array(u.string().describe("Dependency task ID"))).describe("Array of dependency task IDs"),assignee:L(u.string().min(1)).describe("Optional assignee"),status:L(u.enum(["pending","in_progress","blocked","completed"])).describe("Optional task status filter"),taskId:L(u.string()).describe("Task ID"),summary:L(u.string().min(1)).describe("Completion summary"),reason:L(u.string().min(1)).describe("Blocking reason")}).superRefine((e,t)=>{for(let n of Sx[e.action]){if(e[n]!==void 0)continue;t.addIssue({code:"custom",path:[n],message:`Field "${n}" is required when action=${e.action}`})}}),zx=u.object({agentId:u.string().describe("Teammate agent ID"),task:u.string().min(1).describe("Task instructions for the teammate"),taskId:L(u.string()).describe("Optional shared task list ID"),runMode:L(u.enum(["sync","async"])).describe("Execution mode: 'sync' blocks until the teammate finishes and returns the result (default if omitted); 'async' queues the run and returns a runId immediately — use team_await_runs to collect results later."),continueConversation:L(u.boolean()).describe("If true, continue the teammate conversation; otherwise start fresh")}),Ux=u.object({status:L(u.enum(["queued","running","completed","failed","cancelled","interrupted"])).describe("Optional run status filter. Omit to include all statuses."),agentId:L(u.string().min(1)).describe("Optional teammate ID filter. Omit to include all teammates."),includeCompleted:L(u.boolean()).describe("Include completed/failed runs (default true)")}),Tx=u.object({runId:u.string().min(1).describe("Run ID"),reason:L(u.string().min(1)).describe("Optional cancellation reason")}),jx=u.object({runId:L(u.string().min(1)).describe("Optional async run ID to await. Omit to wait for all active async runs.")}).strict(),Ox=u.object({toAgentId:u.string().min(1).describe("Recipient agent ID"),subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:L(u.string().min(1)).describe("Optional task ID context")}),Ex=u.object({subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:L(u.string().min(1)).describe("Optional task ID context")}),Nx=u.object({unreadOnly:L(u.boolean()).describe("Only unread messages for read action (default true)")}),Px=u.object({kind:u.enum(["progress","handoff","blocked","decision","done","error"]),summary:u.string().min(1).describe("Update summary"),taskId:L(u.string().min(1)).describe("Optional task ID context"),evidence:L(u.array(u.string().min(1))).describe("Optional evidence links/snippets"),nextAction:L(u.string().min(1)).describe("Planned next step")}),Ax=u.object({}),Dx=u.object({title:u.string().describe("Outcome title"),requiredSections:u.array(u.string()).default($h).describe("Required sections for finalization gate (defaults to current_state,boundary_analysis,interface_proposal)")}),Zx=u.object({outcomeId:u.string().describe("Outcome ID"),section:u.string().describe("Section name"),sourceRunId:L(u.string()).describe("Optional source run ID"),content:u.string().describe("Section fragment content")}),Cx=u.object({fragmentId:u.string().describe("Fragment ID"),approved:u.boolean().describe("Review decision")}),Rx=u.object({outcomeId:u.string().describe("Outcome ID")}),Lx=u.object({}),Jx=u.object({teamId:u.string(),teamName:u.string(),members:u.array(bx),taskCounts:u.record($t,u.number()),unreadMessages:u.number(),missionLogEntries:u.number(),activeRuns:u.number(),queuedRuns:u.number(),outcomeCounts:u.record(Qn,u.number())}),kh=u.object({id:u.string(),title:u.string(),description:u.string(),status:$t,createdAt:ye,updatedAt:ye,createdBy:u.string(),assignee:u.string().optional(),dependsOn:u.array(u.string()),summary:u.string().optional(),isReady:u.boolean(),blockedBy:u.array(u.string())}),Mx=u.discriminatedUnion("action",[u.object({action:u.literal("create"),taskId:u.string(),status:$t,ignoredFields:u.array(u.string()).optional(),note:u.string().optional()}),u.object({action:u.literal("list"),tasks:u.array(kh)}),u.object({action:u.literal("claim"),taskId:u.string(),status:$t,nextStep:u.string()}),u.object({action:u.literal("complete"),taskId:u.string(),status:$t}),u.object({action:u.literal("block"),taskId:u.string(),status:$t})]),Fx=u.object({agentId:u.string(),mode:u.enum(["sync","async"]),status:u.enum(["dispatched","running","queued","joined"]),dispatched:u.boolean(),message:u.string(),deduped:u.boolean().optional(),runId:u.string().optional(),text:u.string().optional(),iterations:u.number().optional()}),wh=u.object({textPreview:u.string(),iterations:u.number(),finishReason:u.string(),durationMs:u.number(),usage:u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()})}),Bx=u.object({id:u.string(),agentId:u.string(),taskId:u.string().optional(),status:_h,messagePreview:u.string(),priority:u.number(),retryCount:u.number(),maxRetries:u.number(),nextAttemptAt:ye.optional(),continueConversation:u.boolean().optional(),startedAt:ye,endedAt:ye.optional(),leaseOwner:u.string().optional(),heartbeatAt:ye.optional(),lastProgressAt:ye.optional(),lastProgressMessage:u.string().optional(),currentActivity:u.string().optional(),error:u.string().optional(),resultSummary:wh.optional()}),Wx=u.object({id:u.string(),teamId:u.string(),fromAgentId:u.string(),toAgentId:u.string(),subject:u.string(),body:u.string(),taskId:u.string().optional(),sentAt:ye,readAt:ye.optional()}),Kx=u.object({id:u.string(),teamId:u.string(),title:u.string(),status:Qn,requiredSections:u.array(u.string()),createdBy:u.string(),createdAt:ye,finalizedAt:ye.optional()}),Hx=u.object({outcomeId:u.string(),status:Qn,requiredSections:u.array(u.string())}),Gx=u.object({agentId:u.string(),status:u.string()}),Xx=u.object({runId:u.string(),status:_h}),Yx=u.object({id:u.string(),toAgentId:u.string()}),Qx=u.object({delivered:u.number()}),Vx=u.object({id:u.string()}),qx=u.object({status:u.string()}),e0=u.object({fragmentId:u.string(),status:u.string()}),t0=u.object({outcomeId:u.string(),status:Qn});((e)=>{e.TaskStart="task_start",e.TaskEnd="task_end",e.AgentEvent="agent_event",e.TeammateSpawned="teammate_spawned",e.TeammateShutdown="teammate_shutdown",e.TeamTaskUpdated="team_task_updated",e.TeamMessage="team_message",e.TeamMissionLog="team_mission_log",e.TeamTaskCompleted="team_task_completed",e.RunStarted="run_started",e.RunQueued="run_queued",e.RunProgress="run_progress",e.RunCompleted="run_completed",e.RunFailed="run_failed",e.RunCancelled="run_cancelled",e.RunInterrupted="run_interrupted",e.OutcomeCreated="outcome_created",e.OutcomeFragmentAttached="outcome_fragment_attached",e.OutcomeFragmentReviewed="outcome_fragment_reviewed",e.OutcomeFinalized="outcome_finalized"})(Sh||={});Ih=["401","403","unauthorized","forbidden","invalid token","expired token","authentication"];c0=new Set(["accesskeyid","secretaccesskey","idtoken","refreshtoken","accesstoken","access_token","refresh_token","apikey","api_key","authorization","password","secret","token","email","displayname","display_name","userinfo"]),m0=["id","balance","cost","secret"];p0=[{pattern:/AKIA[A-Z0-9]{16}/g,replacement:"AKIA_REDACTED"},{pattern:/\/Users\/[A-Za-z0-9._-]+/g,replacement:"/Users/REDACTED_USER"},{pattern:/\/home\/[A-Za-z0-9._-]+/g,replacement:"/home/REDACTED_USER"}];h0=[{pattern:/tasks\/[A-Za-z0-9._-]+\/[A-Za-z0-9._-]+\/api_conversation_history/g,replacement:"tasks/usr-test/taskid/api_conversation_history"},{pattern:/\/(org|usr|mbr|ses|gen|req|msg|tsk|sch|exe|srv|cli|wkr|evt|sub|tkn)-[A-Za-z0-9]{10,}(?=[/?#]|$)/g,replacement:"/$1-REDACTED"}]});function ut(e){let t=new Set(["no output generated. check the stream for errors."]),n=(o)=>t.has(o.trim().toLowerCase()),r=(o)=>{let s=o;if(typeof s.error==="string"&&s.error.trim())return s.error;if(s.error&&typeof s.error==="object"&&typeof s.error.message==="string"&&s.error.message.trim())return s.error.message;if(typeof s.detail==="string"&&s.detail.trim())return s.detail;if(Array.isArray(s.errors))for(let d of s.errors){let l=i(d);if(l)return l}if("responseBody"in s&&s.responseBody!==o){let d=i(s.responseBody);if(d)return d}return},i=(o)=>{if(!o)return;if(typeof o==="string")try{return i(JSON.parse(o))}catch{return o.trim()||void 0}if(typeof o!=="object")return;if(o instanceof Error){let l=o.message.trim(),c=r(o),m=o.cause,v=i(m);if(l&&n(l))return c??v??void 0;if(c&&c!==l)return c;if(v&&l&&v!==l){let p=m instanceof Error&&m.name&&m.name!=="Error"?`${m.name}: `:"",g=m&&typeof m==="object"&&"code"in m?m.code:void 0,$=typeof g==="string"&&g.trim()?` (${g})`:"";return`${l}: ${p}${v}${$}`}return v??(l||void 0)}let s=r(o);if(s)return s;let d=o;if("cause"in d&&d.cause!==o){let l=i(d.cause);if(l)return l}if(typeof d.message==="string"&&d.message.trim())return d.message;return},a=i(e);if(a)return a;return String(e)}function B(e){let t=e.model.metadata?.family;return typeof t==="string"?t:void 0}function pe(e){let t=e?.trim().toLowerCase();return t?t:void 0}function os(e){return pe(B(e))??""}function Vn(e){return pe(e.modelId)??""}function qn(e){return[e.request.modelId,e.context.model.id,e.context.model.name,e.context.model.metadata?.family].filter(Boolean).join(" ").toLowerCase()}function U0(e,t){let n=pe(e.config.baseUrl??e.provider.api)?.replace(/\/+$/,"");if(!n)return!1;try{return new URL(n).origin.toLowerCase()===t}catch{return n===t||n.startsWith(`${t}/`)}}function Ph(e){let t=pe(e);return t?t.includes("anthropic")||t.includes("claude"):!1}function T0(e){return pe(e)?.includes("claude")??!1}function as(e){let t=pe(e);return t?/(^|[/:._-])qwen(?:$|[/:._-]|\d)/.test(t):!1}function ee(e){let t=pe(e.family);if(t)return Ph(t);return j0(e.modelId)}function j0(e){if(!e)return!1;return Ph(e)}function Ah(e){if(!e)return!1;return T0(e)}function Nt(e){let t=pe(e.family);if(as(t))return!0;return as(e.modelId)}function ss(e){return/(^|[/\s])gemini-3([.-]|$)/.test(qn(e))}function Dh(e){return/(^|[/\s])gemini-2\.5-pro([-\s]|$)/.test(qn(e))}function Zh(e){let t=qn(e);return/(^|[/\s])gemini-(?:\d(?:\.\d)?-)?flash(?:-lite|-image)?([-\s]|$)/.test(t)||t.includes("gemini-flash")}function Ch(e){let t=qn(e);return ss(e)||/(^|[/\s])gemini-2\.5([-\s]|$)/.test(t)||t.includes("gemini-flash-latest")}function O0(e,t){let n=pe(e),r=pe(t);if(!n||!r)return!1;if(n===r)return!0;return r==="qwen"?as(n):!1}function er(e,t){if("requiredCapability"in e&&e.requiredCapability&&!t.capabilities?.includes(e.requiredCapability))return!1;switch(e.matcher){case"anthropic-compatible":return ee(t);case"model-family":return O0(t.family,e.family);case"model-id":return pe(t.modelId)===pe(e.modelId)}}function us(e,t,n){let r=n.provider.metadata?.routing?.reasoning;if(r?.format!==e)return!1;return r.routes.some((i)=>er(i,{modelId:t.modelId,family:B(n),capabilities:n.model.capabilities}))}function tr(e,t){return os(t).includes("glm")||Vn(e).includes("glm")}function Rh(e,t){let n=Vn(e);return n==="minimax-m3"||n==="minimax/minimax-m3"}function Lh(e){return os(e)==="kimi-k2.6"}function Jh(e){return Vn(e).includes("moonshotai/kimi-")}function Mh(e){return os(e).includes("deepseek")}function E0(e){let t=e.model.metadata?.reasoningDefaultOn;return typeof t==="boolean"?t:void 0}function N0(e){return e.providerId==="ollama"&&Vn(e).includes("qwen3")}function Fh(e,t){return[e.providerId,t.config.providerId,t.provider.id].map((r)=>r.toLowerCase()).includes("cerebras")||U0(t,"https://api.cerebras.ai")}function Bh(e){return E0(e.context)??N0(e.request)}import{createHash as P0}from"node:crypto";import{existsSync as A0,mkdirSync as D0,readdirSync as Z0,renameSync as C0,rmSync as Xh,statSync as R0,writeFileSync as L0}from"node:fs";import{join as Yh,resolve as Wh}from"node:path";function M0(){let e=process.env.CLINE_CAPTURE_PROVIDER_REQUEST?.trim().toLowerCase();if(e==="summary"||e==="full")return e;return"off"}function F0(){return process.env.CLINE_CAPTURE_WIRE?.trim().toLowerCase()==="true"}function B0(){let e=Number(process.env.CLINE_CAPTURE_MAX_PREVIEW_BYTES);return Number.isFinite(e)&&e>0?Math.floor(e):Qh}function W0(){return process.env.CLINE_CAPTURE_CLEANUP?.trim().toLowerCase()!=="off"}function K0(){let e=process.env.CLINE_CAPTURE_DIR?.trim();if(e)return Wh(e);let t=process.env.CLINE_DATA_DIR?.trim();if(t)return Wh(t,"provider-request-captures");return}function Pt(e){let t=new WeakSet;try{return JSON.stringify(e,(n,r)=>{if(typeof r==="bigint")return r.toString();if(typeof r!=="object"||r===null)return r;if(t.has(r))return"[Circular]";return t.add(r),r})??""}catch{return String(e??"")}}function Ei(e){return P0("sha256").update(e).digest("hex")}function Ne(e){return Buffer.byteLength(e,"utf8")}function H0(e,t=Qh){let n=Pt(e);if(Ne(n)<=t)return e;let i=Buffer.from(n,"utf8").subarray(0,t).toString("utf8");while(Ne(i)>t)i=i.slice(0,-1);return{truncated:!0,bytes:Ne(n),sha256:Ei(n),preview:i}}function Gh(e){let t=typeof e==="string"?e:Pt(e);return{bytes:Ne(t),estimatedTokens:ot(Ne(t)),sha256:Ei(t),kind:Array.isArray(e)?"array":typeof e}}function G0(e){if(!Array.isArray(e))return Gh(e);let t={},n=0,r=0,i=e.map((s,d)=>{let l=s&&typeof s==="object"?s:{},c=typeof l.role==="string"?l.role:"unknown";t[c]=(t[c]??0)+1;let m=l.content,v=Array.isArray(m)?m:[m];for(let g of v){if(!g||typeof g!=="object")continue;let $=g.type;if($==="reasoning")n+=1;if($==="tool-result"||c==="tool")r+=1}let p=Gh(m);return{index:d,role:c,contentParts:v.length,contentBytes:p.bytes,estimatedTokens:p.estimatedTokens,sha256:p.sha256}}),a=[...i].sort((s,d)=>d.contentBytes-s.contentBytes).slice(0,5).map((s)=>({...s})),o=Pt(e);return{messageCount:e.length,roleCounts:t,totalBytes:Ne(o),estimatedTokens:ot(Ne(o)),sha256:Ei(o),reasoningBlockCount:n,toolResultCount:r,largestMessages:a,messages:i}}function X0(e){if(typeof e!=="string")return;let t=e.trim();if(!t.startsWith("{")&&!t.startsWith("["))return;try{return JSON.parse(t)}catch{return}}function Y0(e){if("messages"in e)return e.messages;let t=e.body,n=X0(t);if(n&&typeof n==="object"){let r=n;if("messages"in r)return r.messages;if("prompt"in r)return r.prompt;if("contents"in r)return r.contents}return}function Q0(e){return{...e.metadata&&typeof e.metadata==="object"?e.metadata:{},providerId:e.providerId,modelId:e.modelId}}function ls(e){if(typeof e!=="string"&&typeof e!=="number")return;let t=String(e).trim();if(!t)return;return t.replace(/[^a-zA-Z0-9_-]+/g,"_").replace(/^_+|_+$/g,"")||void 0}function V0(e){let t=ls(e.captureId);if(t)return t;let n=Ei(Pt(e)).slice(0,16),r=ls(e.runId),i=ls(e.iteration);return["cap",r,i,n].filter(Boolean).join("_")}function q0(e,t){let n=`${e}:${t}`,r=(Hh.get(n)??0)+1;return Hh.set(n,r),r}function e4(e){if(!W0()||Kh.has(e))return;Kh.add(e);try{let t=Date.now()-J0;for(let n of Z0(e)){if(!n.endsWith(ds)&&!(n.includes(ds)&&n.endsWith(Vh)))continue;let r=Yh(e,n);if(R0(r).mtimeMs<t)Xh(r,{force:!0})}}catch{}}function t4(e){try{let t=K0();if(!t)return;D0(t,{recursive:!0}),e4(t);let n=e.correlation&&typeof e.correlation==="object"?e.correlation:{},r=V0(n),i=e.captureStage==="ai_sdk_prompt"||e.captureStage==="wire_request"?e.captureStage:"ai_sdk_prompt",a=q0(r,i),o=Yh(t,`${r}.${i}.${a}${ds}`),s=`${o}.${process.pid}.${Date.now()}${Vh}`;if(L0(s,`${Pt({...e,attempt:a})}
|
|
168
|
-
`,{encoding:"utf8",mode:384}),C0(s,o),A0(s))Xh(s,{force:!0})}catch{}}function cs(e){try{let t=M0();if(t==="off")return;let n=e.payload&&typeof e.payload==="object"?e.payload:{value:e.payload},r=Y0(n),i=Pt(e.payload);t4({timestamp:new Date().toISOString(),captureStage:e.stage,mode:t,correlation:Q0(e.request),summary:{payloadBytes:Ne(i),estimatedTokens:ot(Ne(i)),sha256:Ei(i),messages:G0(r)},...t==="full"?{payload:H0(e.payload,B0())}:{}})}catch{}}async function i4(e,t){let n=t?.body;if(n!==void 0&&n!==null){if(typeof n==="string")return n;if(n instanceof URLSearchParams)return n.toString();if(n instanceof ArrayBuffer)return Buffer.from(n).toString("utf8");if(ArrayBuffer.isView(n))return Buffer.from(n.buffer,n.byteOffset,n.byteLength).toString("utf8");return{type:n.constructor?.name??typeof n}}if(e instanceof Request)try{return await e.clone().text()}catch{return{type:"Request",bodyReadable:!1}}return}function qh(e,t){if(!F0())return e;let n=e??globalThis.fetch;if(!n)return e;let r=async(a,o)=>{return i4(a,o).then((s)=>{cs({stage:"wire_request",request:t,payload:{url:a instanceof Request?a.url:String(a),method:o?.method??(a instanceof Request?a.method:void 0)??"GET",body:s}})}).catch(()=>{}),n(a,o)},i=n;if(typeof i.preconnect==="function")r.preconnect=i.preconnect.bind(n);return r}var Qh=65536,ds=".provider-request.json",Vh=".tmp",J0=86400000,Kh,Hh;var eg=F(()=>{we();Kh=new Set,Hh=new Map});function ir(e){return e.replace(/-([a-z0-9])/gi,(t,n)=>n.toUpperCase())}function Ke(){return{cache_control:{type:"ephemeral"}}}function He(e){let{providerId:t,providerOptionsKey:n,bucketOptions:r}=e,i=n!==t&&n!=="anthropic";return{[t]:r,...i?{[n]:r}:{}}}function nr(e){let t={thinking:{type:e.thinkingType}};return{...He({providerId:e.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t}),openaiCompatible:t}}function fs(e){let t=e?.promptCacheRoutes??[ms],n=e?.reasoningRoutes??[ms];return{routing:{...t.length>0?{promptCache:{format:"anthropic-cache-control",routes:t.map((r)=>({...r}))}}:{},...n.length>0?{reasoning:{format:"anthropic-thinking",routes:n.map((r)=>({...r}))}}:{}}}}function tg(e,t){let n={openaiCompatible:Ke(),[e]:Ke()},r=ir(e);if(r!==e)n[r]=Ke();if(t)n.anthropic=Ke();return n}function ng(e,t,n){if(!e)return;let r=e.content;if(typeof r==="string"){let a=[{type:"text",text:r,providerOptions:tg(t,n)}];if(!n)a.push({type:"text",text:" "});e.content=a;return}if(!Array.isArray(r))return;let i=r.filter((a)=>a&&typeof a==="object"&&a.type==="text").length;for(let a=r.length-1;a>=0;a--){let o=r[a];if(o&&typeof o==="object"&&o.type==="text"){let s=i===1&&!n;if(r[a]={...o,providerOptions:tg(t,n)},s)r.push({type:"text",text:" "});return}}}function Dt(e,t){return ag(e,t)!==void 0}function a4(e,t){return ag(e,t)?.matcher==="anthropic-compatible"}function rg(e){return e.metadata?.promptCacheStrategy==="anthropic-automatic"?"anthropic-automatic":void 0}function o4(e,t){if(rg(t.provider)!=="anthropic-automatic")return;let n=B(t);if(ee({modelId:e.modelId,family:n}))return{matcher:"anthropic-compatible"};if(Nt({modelId:e.modelId,family:n}))return n?{matcher:"model-family",family:n}:{matcher:"model-id",modelId:e.modelId};return}function s4(e,t){if(rg(t.provider)!=="anthropic-automatic")return;let n=B(t);return ee({modelId:e.modelId,family:n})?{matcher:"anthropic-compatible"}:void 0}function u4(e,t){if(t.provider.metadata?.routing)return;let n=B(t);return ee({modelId:e.modelId,family:n})?{matcher:"anthropic-compatible"}:void 0}function ag(e,t){let n=t.provider.metadata?.routing?.promptCache;if(n){if(n.format!=="anthropic-cache-control")return;return n.routes.find((r)=>er(r,{modelId:e.modelId,family:B(t),capabilities:t.model.capabilities}))}return o4(e,t)}function Ni(e,t){let n=t.provider.metadata?.routing?.reasoning;if(!n)return s4(e,t)??u4(e,t);if(n.format!=="anthropic-thinking")return;return n.routes.find((r)=>er(r,{modelId:e.modelId,family:B(t),capabilities:t.model.capabilities}))}function l4(e){let t=e.model.capabilities;return!t||t.includes("reasoning")}function d4(e,t){let n=t?.toLowerCase()??"",r=e?.toLowerCase()??"";if(n.includes("opus")||r.includes("opus"))return"opus";if(n.includes("sonnet")||r.includes("sonnet"))return"sonnet";if(n.includes("haiku")||r.includes("haiku"))return"haiku";return}function c4(e){let t=e?.toLowerCase()??"",n=/claude-(\d+)[.-](\d{1,2})-(?:opus|sonnet|haiku)/i.exec(t),i=/claude-(?:opus|sonnet|haiku)-(.+)/i.exec(t)?.[1]?.match(/\d+/g)??[],a=n?.[1]??i[0],o=n?.[2]??(i[1]?.length<=2?i[1]:void 0);if(!a||!o)return;let s=Number.parseInt(a,10),d=Number.parseInt(o,10);if(!Number.isFinite(s)||!Number.isFinite(d))return;return{major:s,minor:d}}function m4(e){let t=d4(e.modelId,e.family),n=c4(e.modelId);if(!t||!n)return!1;if(n.major!==4)return n.major>4;return(t==="opus"||t==="sonnet")&&n.minor>=6}function Ge(e,t){let n=B(t);if(!Ni(e,t)||!l4(t))return{kind:"none"};return m4({modelId:e.modelId,family:n})?{kind:"anthropic-adaptive"}:{kind:"anthropic-manual"}}function og(e,t){let n=Ge(e,t),i=e.reasoning?.enabled===!0||e.reasoning?.effort!==void 0||typeof e.reasoning?.budgetTokens==="number"&&e.reasoning.budgetTokens>0?n.kind==="anthropic-adaptive"?{type:"adaptive"}:n.kind==="anthropic-manual"?{type:"enabled",budgetTokens:vs({modelId:e.modelId,family:B(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens})}:void 0:void 0;return{...n.kind==="anthropic-adaptive"&&e.reasoning?.effort?{effort:e.reasoning.effort}:{},...i?{thinking:i}:{},...a4(e,t)?Ke():{}}}function vs(e){if(typeof e.explicitBudgetTokens==="number"&&e.explicitBudgetTokens>0)return e.explicitBudgetTokens;if(!e.modelId&&!e.family||!ee({modelId:e.modelId,family:e.family}))return;if(!e.effort)return At;if(typeof e.maxTokens!=="number")return At;if(e.maxTokens<=At)return At;let t=r4[e.effort];if(!t)return At;let n=Math.min(e.maxTokens-1,n4);return Math.max(At,Math.floor(n*t))}function sg(e,t){let n=Ge(e,t);if(n.kind==="none"||!e.reasoning?.enabled&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let r=vs({modelId:e.modelId,family:B(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}),i={};if(e.reasoning?.enabled===!0)i.enabled=!0;if(n.kind==="anthropic-adaptive"&&e.reasoning?.effort)i.effort=e.reasoning.effort;if(typeof e.reasoning?.budgetTokens==="number")i.max_tokens=e.reasoning.budgetTokens;else if(n.kind==="anthropic-manual"&&typeof r==="number"&&r>=0)i.max_tokens=r;return Object.keys(i).length>0?i:void 0}function ug(e,t){if(e.reasoning?.enabled===void 0&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let n=Ge(e,t),r=Ni(e,t),i=B(t),a=n.kind==="none"&&r!==void 0,o=n.kind==="none"&&r===void 0&&(Dt(e,t)||Nt({modelId:e.modelId,family:i})||ee({modelId:e.modelId,family:i}));if(a||o)return;let s=n.kind==="anthropic-manual"?vs({modelId:e.modelId,family:i,effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}):e.reasoning?.budgetTokens,d=e.reasoning?.enabled===!1&&!f4(e.modelId),l={...e.reasoning?.enabled===!0?{enabled:!0}:d?{enabled:!1}:e.reasoning?.effort?{enabled:!0}:{},...e.reasoning?.effort&&n.kind!=="anthropic-manual"?{effort:e.reasoning.effort}:{}};if(typeof s==="number"&&s>=0)l.max_tokens=s;return Object.keys(l).length>0?l:void 0}function f4(e){let t=e.toLowerCase();return t.includes("claude-fable")||t.includes("stepfun/step-3.7-flash")}var At=1024,n4=128000,r4,ms,ig,lt,ps,rr;var Zt=F(()=>{r4={low:0.2,medium:0.5,high:0.8},ms={matcher:"anthropic-compatible"},ig={matcher:"model-family",family:"qwen",requiredCapability:"prompt-cache"};lt=fs(),ps=fs({promptCacheRoutes:[ig],reasoningRoutes:[]}),rr=fs({promptCacheRoutes:[ms,ig]})});function hs(e){return["openai-native","openai"].includes(e.providerId)?{truncation:"auto"}:{}}function p4(e){let{request:t,context:n,suppressions:r}=e;if(r.genericThinking)return{};if(t.reasoning?.enabled!==!0)return{};let i=B(n),a=Ge(t,n),o=Ni(t,n)!==void 0,s=Dt(t,n),d=ee({modelId:t.modelId,family:i}),l=Nt({modelId:t.modelId,family:i});if(!o&&(s||l||d))return{};if(o&&a.kind!=="anthropic-adaptive")return{};return{thinking:{type:"adaptive"}}}function v4(e){let t=e.reasoning?.effort;if(e.suppressions.genericEffort||!t||e.reasoning?.enabled===!1||e.suppressEffortOptions)return{};if(!(!e.usesAnthropicReasoningRoute||e.anthropicReasoningPolicyKind==="anthropic-adaptive"))return{};return{effort:t,reasoningEffort:t,...e.usesAnthropicReasoningRoute?{}:{reasoningSummary:"auto"}}}function lg(e){let{request:t,context:n,target:r,suppressions:i}=e,a=B(n),o=Ge(t,n),s=Ni(t,n)!==void 0,d=Dt(t,n),l=ee({modelId:t.modelId,family:a}),c=Nt({modelId:t.modelId,family:a}),m=!s&&(d||c||l),v=sg(t,n),p=d?Ke():{};return{...r==="openai-compatible"?{strictJsonSchema:!1}:{},...p4({request:t,context:n,suppressions:i}),...v4({reasoning:t.reasoning,usesAnthropicReasoningRoute:s,suppressEffortOptions:m,suppressions:i,anthropicReasoningPolicyKind:o.kind}),...v?{reasoning:v}:{},...p,...hs(t)}}var gs=F(()=>{Zt()});function h4(e){if(e.reasoning?.enabled===void 0)return;return{thinking:{type:e.reasoning.enabled?"enabled":"disabled"}}}function g4(e){if(e.reasoning?.enabled===!0)return{reasoning:{enabled:!0}};if(e.reasoning?.enabled===!1)return{reasoning:{exclude:!0}};return}function dg(e,t){let n=h4(e);return n?{openaiCompatible:n,[e.providerId]:n,...t!==e.providerId?{[t]:n}:{}}:void 0}function cg(e,t,n,r){if(!tr(e,t))return;let i=g4(e);if(!i)return;return{openaiCompatible:i,...r?.includeProviderBuckets===!1?{}:{[e.providerId]:i,...n!==e.providerId?{[n]:i}:{}}}}var ys;var bs=F(()=>{ys={routing:{reasoning:{format:"glm-thinking",routes:[{matcher:"model-family",family:"glm"},{matcher:"model-family",family:"glm-air"},{matcher:"model-family",family:"glm-flash"}]}}}});function y4(e){if(e.reasoning?.enabled===!0)return{thinking:{type:"adaptive"}};if(e.reasoning?.enabled===!1)return{thinking:{type:"disabled"}};return}function b4(e){if(e.reasoning?.enabled===!0)return{reasoning:{enabled:!0}};if(e.reasoning?.enabled===!1)return{reasoning:{exclude:!0}};return}function fg(e,t){let n=y4(e);if(!n)return;return{openaiCompatible:n,[e.providerId]:n,...t!==e.providerId?{[t]:n}:{}}}function pg(e,t){let n=b4(e);return n?He({providerId:e.providerId,providerOptionsKey:t,bucketOptions:n}):void 0}var mg;var $s=F(()=>{mg={routing:{promptCache:{format:"anthropic-cache-control",routes:[{matcher:"anthropic-compatible"}]},reasoning:{format:"minimax-thinking",routes:[{matcher:"model-id",modelId:"MiniMax-M3",requiredCapability:"reasoning"}]}}}});function $4(e){return e?.enabled!==void 0||!!e?.effort||typeof e?.budgetTokens==="number"}function vg(e){let t=e.reasoning;if(!$4(t))return;if(t?.enabled===!1)return{effort:"none"};if(typeof t?.budgetTokens==="number")return{max_tokens:t.budgetTokens};if(t?.effort)return{effort:t.effort};if(t?.enabled===!0)return{enabled:!0};return}function hg(e){return Lh(e.context)}function _4(e){return Jh(e.request)}function k4(e){return Mh(e.context)||e.request.providerId==="deepseek"}function gg(e){return Rh(e.request,e.context)}function yg(e){return e.request.providerId==="ollama"&&e.request.reasoning?.enabled===!1&&Bh({request:e.request,context:e.context})}function _s(e){return us("glm-thinking",e.request,e.context)}function w4(e){return e.context.provider.metadata?.routing?.reasoning?.format==="glm-thinking"}function S4(e){return us("minimax-thinking",e.request,e.context)}function bg(e,t){let n=e.request.reasoning?.enabled;if(n===!0)return"enabled";if(n===!1)return"disabled";return t}function $g(e,t){if(!t)return;return He({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:{reasoning:t}})}function x4(e){let t=e.request.reasoning;if(!t)return;if(ss(e)){if(t.enabled===!1)return{thinkingLevel:Zh(e)?"minimal":"low",includeThoughts:!1};if(!t.effort)return;return{thinkingLevel:t.effort,includeThoughts:!0}}if(t.enabled===!1)return{thinkingBudget:Dh(e)?128:0,includeThoughts:!1};if(typeof t.budgetTokens==="number")return{thinkingBudget:t.budgetTokens,includeThoughts:!0};if(!t.effort)return;return{thinkingBudget:I4[t.effort],includeThoughts:!0}}function kg(e,t){let n=[];for(let r of e)if(r.applies(t))n.push({rule:r});return n}function wg(e){return e.reduce((t,{rule:n})=>{if(!n.suppresses)return t;return{genericThinking:t.genericThinking||n.suppresses.genericThinking||void 0,genericEffort:t.genericEffort||n.suppresses.genericEffort||void 0,genericFanout:t.genericFanout||n.suppresses.genericFanout||void 0}},{})}function Sg(e,t){return e.map(({rule:n})=>n.build(t))}var I4,z4,U4,T4,j4,O4,E4,N4,P4,A4,D4,Z4,C4,R4,L4,J4,M4,F4,B4,_g;var Ig=F(()=>{we();Zt();gs();bs();$s();I4={low:1024,medium:8192,high:24576};z4={id:"provider.anthropic.direct",phase:"provider",description:"Direct Anthropic owns the anthropic bucket built by the base patch.",applies:(e)=>e.request.providerId==="anthropic",suppresses:{genericFanout:!0},build:()=>{return}},U4={id:"provider.google.direct",phase:"provider",description:"Direct Google owns the google bucket through Gemini thinkingConfig.",applies:(e)=>e.request.providerId==="google",suppresses:{genericFanout:!0},build:()=>{return}},T4={id:"adapter.openai",phase:"adapter",description:"OpenAI adapter targets the AI SDK openai bucket, not provider-id buckets.",applies:(e)=>e.target==="openai",build:(e)=>({openai:{strictJsonSchema:!1,...hs(e.request)}})},j4={id:"provider.openai-codex",phase:"provider",description:"Codex CLI uses OpenAI Responses options plus provider-id aliases.",applies:(e)=>e.request.providerId==="openai-codex",suppresses:{genericFanout:!0},build:(e)=>{let t={...e.compatibleOptions,instructions:e.request.systemPrompt,store:!1,strictJsonSchema:!1,systemMessageMode:"remove"};return{openai:t,...He({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t})}}},O4={id:"provider.generic-fanout",phase:"provider-fanout",description:"Default OpenAI-compatible providers receive provider-id and camelCase alias buckets.",applies:(e)=>e.target!=="openai",build:(e)=>e.suppressions.genericFanout?void 0:He({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:e.compatibleOptions})},E4={id:"provider.cline.reasoning",phase:"provider-reasoning",description:"Cline gateway accepts the shared gateway reasoning shape.",applies:(e)=>Et(e.request.providerId),build:(e)=>$g(e,ug(e.request,e.context))},N4={id:"provider.openrouter.reasoning",phase:"provider-reasoning",description:"OpenRouter expects reasoning controls under its first-class reasoning object.",applies:(e)=>e.request.providerId==="openrouter",suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>$g(e,vg(e.request))},P4={id:"provider.cline.minimax-m3.gateway-reasoning",phase:"provider-reasoning",description:"Cline-routed MiniMax M3 keeps the gateway reasoning shape instead of leaking generic thinking.",applies:(e)=>Et(e.request.providerId)&&gg(e),suppresses:{genericThinking:!0,genericEffort:!0},build:()=>{return}},A4={id:"provider.vercel-ai-gateway.minimax-m3.gateway-reasoning",phase:"provider-reasoning",description:"Vercel-routed MiniMax M3 uses the gateway reasoning include/exclude shape.",applies:(e)=>e.request.providerId==="vercel-ai-gateway"&&gg(e),suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>pg(e.request,e.providerOptionsKey)},D4={id:"provider.google-gemini.thinking-config",phase:"provider",description:"Google/Gemini/Vertex maps reasoning to thinkingConfig.",suppresses:{genericThinking:!0,genericEffort:!0},applies:(e)=>(e.request.providerId==="google"||e.request.providerId==="gemini"||e.request.providerId==="vertex")&&Ch(e)&&(!!e.request.reasoning?.effort||typeof e.request.reasoning?.budgetTokens==="number"||e.request.reasoning?.enabled===!1),build:(e)=>{let t=e.request.providerId==="vertex"?"vertex":"google",n=x4(e);if(!n)return;return{[t]:{thinkingConfig:n}}}},Z4={id:"provider.cline.disable-thinking",phase:"provider",description:"Cline-routed non-Kimi-K2.6 Moonshot Kimi models use thinking.type=disabled when reasoning is disabled.",applies:(e)=>Et(e.request.providerId)&&_4(e)&&e.request.reasoning?.enabled===!1&&!hg(e),build:(e)=>nr({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:"disabled"})},C4={id:"family.kimi-k2.6.thinking",phase:"model-family",description:"Kimi K2.6 uses thinking.type and defaults to enabled when reasoning is unset.",applies:(e)=>hg(e)&&e.request.providerId!=="openrouter",suppresses:{genericThinking:!0},build:(e)=>{let t=bg(e,"enabled");return t?nr({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:t}):void 0}},R4={id:"family.deepseek.thinking",phase:"model-family",description:"DeepSeek models use thinking.type only for explicit reasoning enabled/disabled.",applies:(e)=>e.request.providerId!=="openrouter"&&k4(e)&&!yg(e),suppresses:{genericThinking:!0},build:(e)=>{let t=bg(e,void 0);return t?nr({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:t}):void 0}},L4={id:"provider.ollama.reasoning-default-on.disable-none",phase:"provider-reasoning",description:"Ollama models whose reasoning defaults on need reasoningEffort=none when request reasoning is disabled.",applies:yg,build:(e)=>{let t={reasoningEffort:"none",reasoning:{effort:"none"}};return{...He({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t}),openaiCompatible:t}}},J4={id:"provider.routing.glm-thinking.non-glm.suppress-generic-thinking",phase:"provider",description:"Providers with GLM thinking routing should not apply generic adaptive thinking to non-GLM models.",applies:(e)=>w4(e)&&e.request.reasoning?.enabled!==void 0&&!_s(e),suppresses:{genericThinking:!0},build:()=>{return}},M4={id:"provider.routing.glm-thinking",phase:"model-overlay",description:"Providers routed to the GLM thinking format use thinking.type.",applies:_s,suppresses:{genericThinking:!0},build:(e)=>dg(e.request,e.providerOptionsKey)},F4={id:"provider.routing.minimax-thinking",phase:"model-overlay",description:"Direct MiniMax M3 uses thinking.type adaptive/disabled.",applies:S4,suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>fg(e.request,e.providerOptionsKey)},B4={id:"family.glm.routed-reasoning",phase:"model-overlay",description:"Routed GLM models use the generic reasoning include/exclude shape, not thinking.type.",applies:(e)=>!_s(e)&&tr(e.request,e.context),suppresses:{genericThinking:!0},build:(e)=>cg(e.request,e.context,e.providerOptionsKey,{includeProviderBuckets:e.request.providerId!=="openrouter"})},_g=[z4,U4,T4,j4,O4,E4,N4,P4,A4,D4,Z4,C4,R4,L4,J4,M4,F4,B4]});function xg(e){switch(e){case"openai-native":return"openai";case"anthropic":return"anthropic";case"google":case"gemini":return"google";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":return"mistral";case"claude-code":return"claude-code";case"openai-codex":return"openai-codex";case"opencode":return"opencode";case"dify":return"dify";case"sapaicore":return"sapaicore";default:return"openai-compatible"}}function W4(e){let t={};for(let n of e){if(!n)continue;for(let[r,i]of Object.entries(n))t[r]={...t[r]??{},...i}}return t}function K4(e,t){return{anthropic:t,openaiCompatible:e}}function zg(e,t,n=xg(e.providerId)){let r=ir(e.providerId),i=B(t),a=ee({modelId:e.modelId,family:i}),o=a?Ge(e,t):void 0,s={request:e,context:t,providerOptionsKey:r,target:n,isAnthropicCompatibleModelId:a,anthropicReasoningPolicyKind:o?.kind},d=kg(_g,s),l=wg(d),c=lg({request:e,context:t,target:n,suppressions:l}),m=og(e,t),v={...s,compatibleOptions:c,anthropicOptions:m,suppressions:l};return W4([K4(c,m),...Sg(d,v)])}var Ug=F(()=>{Zt();gs();Ig()});var Ng={};he(Ng,{resetLangfuseTelemetryForTests:()=>Q4,hasLangfuseTelemetryConfig:()=>Og,ensureLangfuseTelemetry:()=>H4,disposeLangfuseTelemetry:()=>Eg,debugLangfuse:()=>be});function jg(){let e=process?.env,t=e?.LANGFUSE_BASE_URL?.trim(),n=e?.LANGFUSE_PUBLIC_KEY?.trim(),r=e?.LANGFUSE_SECRET_KEY?.trim();if(!t||!n||!r)return;return{baseUrl:t,publicKey:n,secretKey:r}}function Og(){return jg()!==void 0}async function H4(e){if(!Og())return!1;if(dt!==void 0)return be(`cached readiness=${String(dt)}`),dt;if(!ar)ar=G4();return dt=await ar,be(`initialized readiness=${String(dt)}`),dt}async function G4(){let{registerDisposable:e}=await Promise.resolve().then(() => (we(),Nh));e(Eg);let t=jg();if(!t)return!1;try{let[{LangfuseSpanProcessor:n},{trace:r},{NodeTracerProvider:i}]=await Promise.all([import("@langfuse/otel"),import("@opentelemetry/api"),import("@opentelemetry/sdk-trace-node")]),a=new n({baseUrl:t.baseUrl,publicKey:t.publicKey,secretKey:t.secretKey});be(`creating span processor baseUrl=${t.baseUrl}`);let o=r.getTracerProvider();if(typeof o?.addSpanProcessor==="function"){o.addSpanProcessor(a);let c=Tg(r);return be(`attached processor to existing tracer provider delegateReady=${String(c)}`),c}let s=o?.constructor?.name;if(s&&s!=="ProxyTracerProvider"&&s!=="NoopTracerProvider")return!1;new i({spanProcessors:[a]}).register();let l=Tg(r);return be(`registered NodeTracerProvider delegateReady=${String(l)}`),l}catch(n){return be(`initialization failed error=${n instanceof Error?n.message:String(n)}`),!1}}function Tg(e){let r=e.getTracerProvider().getDelegate?.()?.constructor?.name;return Boolean(r&&r!=="NoopTracerProvider")}async function X4(){try{let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.forceFlush?.(),be("forceFlush completed")}catch(e){be(`forceFlush failed error=${e instanceof Error?e.message:String(e)}`)}}async function Eg(){try{await X4();let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.shutdown?.(),be("shutdown completed")}catch(e){be(`shutdown failed error=${e instanceof Error?e.message:String(e)}`)}}function be(e){if(!Y4())return;console.warn(`[langfuse-debug] ${e}`)}function Y4(){let e=process.env.CLINE_DEBUG_LANGFUSE;if(!e)return!1;let t=e.trim().toLowerCase();return t==="1"||t==="true"||t==="yes"}function Q4(){dt=void 0,ar=void 0}var dt,ar;function or(e){let t=e??globalThis.fetch;if(!t)throw Error("No fetch implementation is available. Pass one in the gateway or provider config.");return t}async function te(e){let t=e.apiKey?.trim();if(t)return t;let r=(await e.apiKeyResolver?.())?.trim();if(r)return r;for(let i of e.apiKeyEnv??[]){let a=V4(i);if(a)return a}return}function V4(e){let t=globalThis.process?.env;if(!t)return;let n=t[e];if(typeof n!=="string")return;let r=n.trim();return r.length>0?r:void 0}var Pg={};he(Pg,{createOpenAIProviderModule:()=>e6});import{createOpenAI as q4}from"@ai-sdk/openai";async function e6(e,t){let n=await te(e),r=q4({apiKey:n,baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>r.responses(i)}}var Ag=()=>{};function i6(e){switch(e.type){case"image-data":case"image-url":case"file-data":case"file-url":case"image-file-id":return!0;default:return!1}}function n6(e){switch(e.type){case"image-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-url":return{type:"file",data:e.url,mediaType:"image/*",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.filename?{filename:e.filename}:{},...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-url":return{type:"file",data:e.url,mediaType:"application/octet-stream",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-file-id":return null}}function sr(){return{type:"text",text:Ue}}function Dg(e,t){let n;try{n=new URL(e)}catch{return!1}if(n.protocol==="data:"){let r=e.indexOf(",");if(r===-1)return!1;if(!e.slice(5,r).toLowerCase().endsWith(";base64"))return!1;let a=e.slice(r+1);if(!es(a))return!1;return We(a.length,0,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t)===null}if(n.protocol!=="http:"&&n.protocol!=="https:")return!1;return We(q,0,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t)===null}function r6(e){try{return new URL(e).protocol==="data:"}catch{return!1}}function a6(e){if(typeof e==="string")return e.length;if(e instanceof Uint8Array)return e.byteLength;if(e instanceof ArrayBuffer)return e.byteLength;return Number.POSITIVE_INFINITY}function o6(e,t){return We(a6(e),0,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t)===null}function s6(e,t){if(e.type!=="content")return null;let n=[],r=[],i=!1;for(let a of e.value){if(!i6(a)){r.push(a);continue}let o=a;if(o.type==="image-data"){let l=nt(o.mediaType,o.data,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t);if(!l.ok){r.push({type:"text",text:Ue}),i=!0;continue}o={...o,data:l.base64,mediaType:l.mediaType}}else if(o.type==="image-url"){if(r6(o.url)){let l=nt(void 0,o.url,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t);if(!l.ok){r.push(sr()),i=!0;continue}o={...o,url:`data:${l.mediaType};base64,${l.base64}`}}else if(!Dg(o.url,t)){r.push(sr()),i=!0;continue}}else if(o.type==="file-url"){if(!Dg(o.url,t)){r.push(sr()),i=!0;continue}}else if(o.type==="file-data"){if(!o6(o.data,t)){r.push(sr()),i=!0;continue}}let s=n6(o);if(!s){r.push(o);continue}n.push(s),i=!0;let d={type:"text",text:t6};r.push(d)}if(!i)return null;return{stripped:{type:"content",value:r},media:n}}function u6(e){let t=[],n=!1,r=Oi();for(let i of e){if(i.role!=="tool"){t.push(i);continue}let a=[],o=i.content.map((s)=>{if(s.type!=="tool-result")return s;let d=s6(s.output,r);if(!d)return s;return a.push(...d.media),n=!0,{...s,output:d.stripped}});if(t.push({...i,content:o}),a.length>0)t.push({role:"user",content:a})}return{prompt:t,mutated:n}}var t6="(see following user message for image)",ur;var ks=F(()=>{we();ur={specificationVersion:"v3",transformParams:async({params:e})=>{let{prompt:t,mutated:n}=u6(e.prompt);if(!n)return e;return{...e,prompt:t}}}});var Zg={};he(Zg,{createOpenAICompatibleProviderModule:()=>g6});import{createOpenAICompatible as l6}from"@ai-sdk/openai-compatible";import{wrapLanguageModel as d6}from"ai";function c6(e){let t=e.options?.apiVersion;if(typeof t!=="string")return;let n=t.trim();return n.length>0?n:void 0}function m6(e){return e.pathname.startsWith("/openai/deployments/")&&!e.searchParams.has("api-version")}function f6(e,t){let n;try{n=new URL(e instanceof Request?e.url:e.toString())}catch{return e}if(!m6(n))return e;if(n.searchParams.set("api-version",t),e instanceof Request)return new Request(n.toString(),e);return typeof e==="string"?n.toString():n}function p6(e){let t=c6(e);if(!t)return e.fetch;let n=e.fetch??globalThis.fetch;if(!n)return e.fetch;let r=(a,o)=>n(f6(a,t),o),i=n;return r.preconnect=typeof i.preconnect==="function"?i.preconnect.bind(n):()=>{return},r}function v6(e){let t=e.options?.onResponseError;return typeof t==="function"?t:void 0}function h6(e){let t=async(r,i)=>{let a=await e.fetch(r,i);return await e.onResponseError(a),a},n=e.fetch;return t.preconnect=typeof n.preconnect==="function"?n.preconnect.bind(e.fetch):()=>{return},t}async function g6(e,t){let n=await te(e),r=p6(e),i=v6(e),a=i?h6({fetch:or(r),onResponseError:i}):r,o=l6({name:t.provider.id,apiKey:n,...e.baseUrl?{baseURL:e.baseUrl}:{},...e.headers?{headers:e.headers}:{},...a?{fetch:a}:{},includeUsage:!0});return{model:(s)=>d6({model:o(s),middleware:ur})}}var Cg=F(()=>{ks()});function y6(e){let t=e&&typeof e==="object"?e:{},n=t.minimax&&typeof t.minimax==="object"?t.minimax:void 0,r=n?.thinking&&typeof n.thinking==="object"?n.thinking:void 0;return typeof r?.type==="string"?r.type:void 0}async function b6(e){if(typeof e==="string")return JSON.parse(e);if(e instanceof Uint8Array)return JSON.parse(new TextDecoder().decode(e));if(e instanceof ArrayBuffer)return JSON.parse(new TextDecoder().decode(e));return}function $6(e){return JSON.stringify(e)}function Lg(e=fetch){let t=async(r,i)=>{let a=new Headers(i?.headers);if(a.get("x-cline-minimax-thinking-disabled")!=="1")return e(r,i);a.delete("x-cline-minimax-thinking-disabled");let s=await b6(i?.body),d=s&&typeof s==="object"&&!Array.isArray(s)?s:void 0,l=d&&d.thinking===void 0?$6({...d,thinking:{type:"disabled"}}):i?.body;return e(r,{...i,headers:a,body:l})},n=e;return t.preconnect=typeof n.preconnect==="function"?n.preconnect.bind(e):()=>{},t}var Rg;var Jg=F(()=>{Rg={specificationVersion:"v3",transformParams:async({params:e})=>{if(y6(e.providerOptions)!=="disabled")return e;return{...e,headers:{...e.headers,["x-cline-minimax-thinking-disabled"]:"1"}}}}});var Mg={};he(Mg,{createAnthropicProviderModule:()=>w6});import{createAnthropic as _6}from"@ai-sdk/anthropic";import{wrapLanguageModel as k6}from"ai";async function w6(e,t){let n=await te(e),r=t.provider.id==="minimax",i=_6({apiKey:n,baseURL:e.baseUrl,headers:e.headers,fetch:r?Lg(e.fetch):e.fetch,name:t.provider.id});return{model:(a)=>{let o=i(a);return r?k6({model:o,middleware:Rg}):o}}}var Fg=F(()=>{Jg()});var Bg={};he(Bg,{createGoogleProviderModule:()=>I6});import{createGoogleGenerativeAI as S6}from"@ai-sdk/google";async function I6(e,t){let n=await te(e),r=S6({apiKey:n,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>r(i)}}var Wg=()=>{};var Hg={};he(Hg,{createVertexProviderModule:()=>U6});import{createVertex as x6}from"@ai-sdk/google-vertex";import{createVertexAnthropic as z6}from"@ai-sdk/google-vertex/anthropic";function lr(e,t){let n=e?.[t];return typeof n==="string"&&n.trim().length>0?n:void 0}function Kg(e,t,n){let r=e?.[t];if(!r||typeof r!=="object"||Array.isArray(r))return;let i=r[n];return typeof i==="string"&&i.trim().length>0?i:void 0}async function U6(e,t){let n=lr(e.options,"project")??lr(e.options,"projectId")??Kg(e.options,"gcp","projectId")??"",r=lr(e.options,"location")??lr(e.options,"region")??Kg(e.options,"gcp","region")??"us-central1",i=n||void 0,a=or(e.fetch);if(Ah(t.model.id)){let s=z6({project:n,location:r,baseURL:e.baseUrl,headers:e.headers,fetch:a});return{model:(d)=>s(d)}}let o=x6({project:n,location:r,apiKey:i?void 0:await te(e),googleAuthOptions:i?{projectId:i}:void 0,baseURL:e.baseUrl,headers:e.headers,fetch:a});return{model:(s)=>o(s)}}var Gg=()=>{};var Xg={};he(Xg,{createBedrockProviderModule:()=>O6});import{createAmazonBedrock as T6}from"@ai-sdk/amazon-bedrock";import{fromNodeProviderChain as ws}from"@aws-sdk/credential-providers";async function O6(e){let t=P6(e.options?.authentication),n=t==="api-key"||t==="apikey",r=K(e.options?.accessKeyId)!==void 0&&K(e.options?.secretAccessKey)!==void 0,i=K(e.options?.profile)!==void 0,o=!n&&(t==="iam"||t==="profile"||i)?void 0:await N6(e,{includeEnvironment:n||!r}),s=E6(e,{authentication:t,apiKey:o,hasDirectCredentials:r,hasProfile:i}),d=t==="iam"||t==="profile"||r||s!==void 0,l=T6({region:K(e.options?.region),apiKey:n?o??"":o??(d?"":void 0),accessKeyId:s?void 0:K(e.options?.accessKeyId),secretAccessKey:s?void 0:K(e.options?.secretAccessKey),sessionToken:s?void 0:K(e.options?.sessionToken),baseURL:e.baseUrl??K(e.options?.endpoint),headers:e.headers,fetch:e.fetch,credentialProvider:s});return{model:(c)=>l(c)}}function E6(e,t){let n=K(e.options?.region);if(typeof e.options?.credentialProvider==="function")return e.options.credentialProvider;if(t.authentication==="api-key"||t.authentication==="apikey"||t.apiKey)return;if(t.authentication==="profile"||t.hasProfile){let r=K(e.options?.profile);return ws({ignoreCache:!0,...r?{profile:r}:{},...n?{clientConfig:{region:n}}:{}})}if(t.hasDirectCredentials)return;return n?ws({clientConfig:{region:n}}):ws()}async function N6(e,t){let n=K(e.apiKey)??K(e.options?.apiKey)??K(e.options?.bedrockApiKey)??K(e.options?.awsBedrockApiKey);if(n)return n;let r=K(await e.apiKeyResolver?.());if(r)return r;if(!t.includeEnvironment)return;for(let i of e.apiKeyEnv??[]){if(j6.has(i))continue;let a=K(process.env[i]);if(a)return a}return K(process.env.AWS_BEARER_TOKEN_BEDROCK)}function P6(e){return e==="iam"||e==="api-key"||e==="apikey"||e==="profile"?e:void 0}function K(e){if(typeof e!=="string")return;let t=e.trim();return t.length>0?t:void 0}var j6;var Yg=F(()=>{j6=new Set(["AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","AWS_REGION","AWS_DEFAULT_REGION","AWS_PROFILE"])});var Qg={};he(Qg,{createMistralProviderModule:()=>Z6});import{createMistral as A6}from"@ai-sdk/mistral";import{wrapLanguageModel as D6}from"ai";async function Z6(e){let t=A6({apiKey:await te(e),baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch});return{model:(n)=>D6({model:t(n),middleware:ur})}}var Vg=F(()=>{ks()});var Ct={};he(Ct,{createSapAiCoreProviderModule:()=>iz,createOpenCodeProviderModule:()=>K6,createOpenAICodexProviderModule:()=>B6,createDifyProviderModule:()=>H6,createClaudeCodeProviderModule:()=>F6});import{createSAPAIProvider as C6}from"@jerome-benoit/sap-ai-provider";import{createClaudeCode as R6}from"ai-sdk-provider-claude-code";import{createCodexExec as L6}from"ai-sdk-provider-codex-cli";import{createDifyProvider as J6}from"dify-ai-provider";function Pi(e){return e.options??{}}async function F6(e){let t=R6(Pi(e));return{model:(n)=>t(n)}}async function B6(e){let t=L6(Pi(e));return{model:(n)=>t(n)}}async function W6(e){let t=["SIGINT","SIGTERM"],n=new Map(t.map((i)=>[i,new Set(process.listeners(i))])),r=await e();for(let i of t)for(let a of process.listeners(i))if(!n.get(i)?.has(a))process.removeListener(i,a);return r}async function K6(e){let t=await W6(async()=>{let{createOpencode:n}=await import("ai-sdk-provider-opencode-sdk");return n(Pi(e))});return{model:(n)=>t(n)}}async function H6(e){let t=await te(e),n=J6({baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,...Pi(e)});return{model:(r)=>n(r,{apiKey:t})}}function Xe(e,t){let n=e[t];return typeof n==="string"&&n.trim().length>0?n.trim():void 0}function G6(e){return e.replace(/\/+$/,"").replace(/\/oauth\/token$/i,"")}function X6(e,t){return Boolean(e.apiKey?.trim()||e.baseUrl?.trim()||Xe(t,"clientId")||Xe(t,"clientSecret")||Xe(t,"tokenUrl"))}function Y6(e,t){let n=Xe(t,"clientId"),r=Xe(t,"clientSecret")??e.apiKey?.trim(),i=Xe(t,"tokenUrl"),a=e.baseUrl?.trim();if(!n||!r||!i||!a){if(!X6(e,t))return;let o=[!n?"sap.clientId":void 0,!r?"sap.clientSecret":void 0,!i?"sap.tokenUrl":void 0,!a?"baseUrl":void 0].filter(Boolean);throw Error(`SAP AI Core provider is missing required configuration: ${o.join(", ")}.`)}return JSON.stringify({clientid:n,clientsecret:r,serviceurls:{AI_API_URL:a.replace(/\/+$/,"")},url:G6(i)})}function Q6(e){let t=e.api;if(t==="orchestration"||t==="foundation-models")return t;if(e.useOrchestrationMode===!1)return"foundation-models";return"orchestration"}async function V6(e,t){if(!e)return await t();let n=qg.catch(()=>{}),r;qg=new Promise((a)=>{r=a}),await n;let i=process.env.AICORE_SERVICE_KEY;process.env.AICORE_SERVICE_KEY=e;try{return await t()}catch(a){throw a}finally{ez(i),r()}}function q6(e){return M6.has(e)}function ez(e){if(e===void 0){delete process.env.AICORE_SERVICE_KEY;return}process.env.AICORE_SERVICE_KEY=e}function tz(e,t){if(!t||!e||typeof e!=="object")return e;return new Proxy(e,{get(n,r,i){let a=Reflect.get(n,r,i);if(typeof a!=="function"||!q6(r))return a;return(...o)=>V6(t,()=>a.apply(n,o))}})}async function iz(e){let t=Pi(e),n=Y6(e,t),r=Xe(t,"deploymentId"),i=C6({name:e.providerId,...r?{deploymentId:r}:{resourceGroup:Xe(t,"resourceGroup")},api:Q6(t),...typeof t.defaultSettings==="object"&&t.defaultSettings!==null&&!Array.isArray(t.defaultSettings)?{defaultSettings:t.defaultSettings}:{}});return{model:(a)=>tz(i(a),n)}}var M6,qg;var Rt=F(()=>{M6=new Set(["doGenerate","doStream","doEmbed"]),qg=Promise.resolve()});var ue={};he(ue,{repairMalformedToolCall:()=>ry,normalizeUsage:()=>uy,createVertexProvider:()=>pr,createSapAiCoreProvider:()=>js,createOpenCodeProvider:()=>Us,createOpenAIProvider:()=>dr,createOpenAICompatibleProvider:()=>cr,createOpenAICodexProvider:()=>zs,createMistralProvider:()=>Is,createGoogleProvider:()=>fr,createDifyProvider:()=>Ts,createClaudeCodeProvider:()=>xs,createBedrockProvider:()=>vr,createAnthropicProvider:()=>mr});import{jsonSchema as nz,NoSuchToolError as rz,streamText as az}from"ai";import{nanoid as ey}from"nanoid";function oz(e,t,n){let r=ny(e.messages,n,{includeReasoning:iy(e,t)}),i=ee({modelId:e.modelId,family:B(t)});for(let a=r.length-1;a>=0;a--)if(r[a]?.role==="user"){ng(r[a],e.providerId,i);break}return r}function sz(e,t){let n=t.provider.metadata?.stickySession;if(!n)return;let r=e.metadata,i=r&&typeof r==="object"?r[n.metadataKey]:void 0;if(typeof i!=="string")return;let a=i.trim();if(!a)return;return{transport:n.transport,field:n.field,value:a}}async function uz(e,t){let n=t?.body;if(n===null)return;if(typeof n==="string")return{source:"init-body",text:n};if(n instanceof URLSearchParams)return{source:"init-body",text:n.toString()};if(n instanceof ArrayBuffer)return{source:"init-body",text:Buffer.from(n).toString("utf8")};if(ArrayBuffer.isView(n))return{source:"init-body",text:Buffer.from(n.buffer,n.byteOffset,n.byteLength).toString("utf8")};if(n!==void 0)return;if(e instanceof Request)try{return{request:e,source:"request",text:await e.clone().text()}}catch{return}return}async function lz(e,t,n){let r=await uz(e,t);if(!r?.text.trim().startsWith("{"))return[e,t];let i;try{i=JSON.parse(r.text)}catch{return[e,t]}if(!i||typeof i!=="object"||Array.isArray(i))return[e,t];let a=i,o=a[n.field];if(typeof o!=="string"||!o.trim())a[n.field]=n.value;let s=JSON.stringify(a);if(r.source==="init-body")return[e,{...t,body:s}];return[new Request(r.request,{body:s}),t]}function dz(e,t,n){let r=new Headers(e instanceof Request?e.headers:void 0);if(new Headers(t?.headers).forEach((i,a)=>{r.set(a,i)}),!r.get(n.field)?.trim())r.set(n.field,n.value);return[e,{...t,headers:r}]}function cz(e,t,n){let r=sz(t,n);if(!r)return e;let i=e??globalThis.fetch;if(!i)return e;let a=async(s,d)=>{let[l,c]=r.transport==="json-body"?await lz(s,d,r):dz(s,d,r);return i(l,c)},o=i;if(typeof o.preconnect==="function")a.preconnect=o.preconnect.bind(i);return a}function iy(e,t){return!Fh(e,t)}async function mz(e){try{return(await Promise.resolve().then(() => Ng)).ensureLangfuseTelemetry(e)}catch{return!1}}function ny(e,t,n){let r=n?.includeReasoning??!0,i=[];for(let a of e){let o=[],s=!1;for(let d of a.content){if(d.type==="text"){o.push({type:"text",text:V(d.text)});continue}if(d.type==="reasoning"){if(!r){s=!0;continue}let l=d.metadata,c=l?.signature,m=l?.redactedData;o.push({type:"reasoning",text:V(d.text),...typeof c==="string"||typeof m==="string"?{providerOptions:{anthropic:{...typeof c==="string"?{signature:c}:{},...typeof m==="string"?{redactedData:m}:{}}}}:{}});continue}if(d.type==="file"){o.push({type:"file",path:d.path,content:d.content});continue}if(d.type==="image"){o.push({type:"image",image:d.image,mediaType:d.mediaType});continue}if(d.type==="tool-call"){let l=d.metadata,c=l?.thoughtSignature??l?.signature??l?.thought_signature;o.push({type:"tool-call",toolCallId:d.toolCallId,toolName:d.toolName,input:d.input,...typeof c==="string"?{providerOptions:{google:{thoughtSignature:c}}}:{}});continue}if(d.type==="tool-result")o.push({type:"tool-result",toolCallId:d.toolCallId,toolName:d.toolName,output:d.output,isError:d.isError??!1})}if(o.length>0)i.push({role:a.role,content:o});else if(!r&&s)continue;else if(a.role==="user"||a.role==="assistant")i.push({role:a.role,content:""})}return ts(t,i,{assistantToolCallArgKey:"input"})}function fz(e){if(!e.tools?.length)return;return Object.fromEntries(e.tools.map((t)=>[t.name,{description:t.description,inputSchema:nz(pz(t.inputSchema))}]))}async function ry({toolCall:e,error:t}){if(rz.isInstance(t))return null;if(typeof e.input!=="string"||e.input.trim()==="")return null;try{return JSON.parse(e.input),null}catch{}let n=is(e.input);if(n===e.input||typeof n==="string")return null;return{...e,input:JSON.stringify(n)}}function pz(e){if(e.type==="object")return e;return{type:"object",...e}}function ay(e){return e.provider.capabilities?.includes("provider-tools")??!1}function oy(e,t){if(!e||typeof e!=="object"||Array.isArray(e))return t;return{...e,...t}}function sy(e){return oy(e.metadata,{toolSource:{providerId:e.request.providerId,modelId:e.request.modelId,executionMode:ay(e.context)?"provider":"runtime"}})}function vz(e){return sy({metadata:oy(Ss(e.part),{inputParseError:`Tool call ${e.toolName} was rejected before execution: ${e.errorMessage}`,aiSdkToolError:e.errorMessage}),request:e.request,context:e.context})}function hz(e){return e.providerId==="openai-codex"?void 0:e.systemPrompt}function gz(e,t){if(e==="tool-calls"||e==="tool_calls"||t)return"tool-calls";if(e==="length"||e==="max_tokens")return"max-tokens";if(e==="error")return"error";return"stop"}function Se(e,...t){for(let n of t){let r=e[n];if(typeof r==="number"&&Number.isFinite(r))return r;if(typeof r==="string"&&r.trim().length>0&&Number.isFinite(Number(r)))return Number(r)}return 0}function se(e){if(typeof e==="number"&&Number.isFinite(e))return e;if(typeof e==="string"&&e.trim().length>0&&Number.isFinite(Number(e)))return Number(e);return}function Ie(e,...t){let n=e;for(let r of t){if(!n||typeof n!=="object")return 0;n=n[r]}return se(n)??0}function bz(e,t){let n=e;for(let r of t){if(!n||typeof n!=="object")return 0;n=n[r]}return se(n)??0}function $z(e,t){for(let n of e)for(let r of t){let i=bz(n,r);if(i>0)return i}return 0}function _z(e){if(!e||typeof e!=="object")return;let t=e;for(let n of Object.values(t)){if(!n||typeof n!=="object")continue;let r=n;if(r.usage&&typeof r.usage==="object")return r.usage}return}function kz(e,t){if(!t||typeof t!=="object")return;let n=t,r=se(n.input),i=se(n.output);if(r===void 0||i===void 0)return;let a=se(n.cacheRead)??0,o=se(n.cacheWrite)??r*1.25;return Math.max(0,e.inputTokens-e.cacheReadTokens-e.cacheWriteTokens)/1e6*r+e.outputTokens/1e6*i+e.cacheReadTokens/1e6*a+e.cacheWriteTokens/1e6*o}function uy(e,t,n){let r=e&&typeof e==="object"?e:{},i=_z(t),a=t&&typeof t==="object"?t:{},o=a.gateway&&typeof a.gateway==="object"?a.gateway:{},s=r.raw&&typeof r.raw==="object"?r.raw:r,d=se(s.cost_details?.upstream_inference_cost)??se(s.upstream_inference_cost),l=se(s.market_cost)??se(s.marketCost)??se(o.marketCost),c=se(s.cost)??se(o.cost),m=l!==void 0||c!==void 0||d!==void 0,p=(s.is_byok===!0||s.isByok===!0||o.is_byok===!0||o.isByok===!0)&&c!==void 0&&d!==void 0,g=c!==void 0&&c>0?c:d??c,$=l??(p?c+d:g),E={inputTokens:Ie(r,"inputTokens","total")||Se(r,"inputTokens","input_tokens","prompt_tokens")||Se(s,"promptTokenCount","prompt_token_count"),outputTokens:Ie(r,"outputTokens","total")||Se(r,"outputTokens","output_tokens","completion_tokens")||Se(s,"candidatesTokenCount","candidates_token_count"),cacheReadTokens:Ie(r,"inputTokens","cacheRead")||Ie(r,"inputTokenDetails","cacheReadTokens")||Se(r,"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens")||Ie(r,"prompt_tokens_details","cached_tokens")||Ie(s,"prompt_tokens_details","cached_tokens")||Se(s,"cachedContentTokenCount")||Se(i??{},"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens"),cacheWriteTokens:Ie(r,"inputTokens","cacheWrite")||Ie(r,"inputTokenDetails","cacheWriteTokens")||Ie(r,"prompt_tokens_details","cache_write_tokens")||Se(r,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||Ie(s,"prompt_tokens_details","cache_write_tokens")||Se(s,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||Se(i??{},"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")},T=$z([r,s,i??{}],yz),A=$!==void 0?$:m?void 0:kz(E,n);return{...E,...T>0?{reasoningTokenCount:T}:{},...typeof A==="number"?{totalCost:A}:{}}}function ty(e){if(!e)return;let t=()=>{},n=(i)=>{if(i&&typeof i.catch==="function")i.catch(t)},r=e;for(let i of Object.keys(e))try{n(r[i])}catch{}}function Ss(e){let t={};if(typeof e.thoughtSignature==="string")t.thoughtSignature=e.thoughtSignature;if(typeof e.thought_signature==="string")t.thought_signature=e.thought_signature;let n=e.providerMetadata&&typeof e.providerMetadata==="object"?e.providerMetadata:void 0,r=n?.google&&typeof n.google==="object"?n.google:void 0,i=n?.vertex&&typeof n.vertex==="object"?n.vertex:void 0;if(typeof t.thoughtSignature!=="string"&&typeof(r?.thoughtSignature??i?.thoughtSignature)==="string")t.thoughtSignature=r?.thoughtSignature??i?.thoughtSignature;if(typeof t.thought_signature!=="string"&&typeof r?.thought_signature==="string")t.thought_signature=r.thought_signature;return Object.keys(t).length>0?t:void 0}async function*wz(e,t,n,r,i){let a=!1,o=new Set,s,d,l,c;try{if(e.fullStream)for await(let p of e.fullStream){if(p.type==="text-delta"){let g=p.textDelta??p.text??p.delta;if(g)yield{type:"text-delta",text:g};continue}if(p.type==="reasoning-delta"||p.type==="reasoning"){let g=p.textDelta??p.text??p.reasoning;if(g)yield{type:"reasoning-delta",text:g,metadata:Ss(p)};continue}if(p.type==="tool-call"){a=!0;let g=p.toolCallId??p.id??`tool_${ey()}`;o.add(g);let $=p.input??p.args??{},E=typeof $==="string"?$:JSON.stringify($);yield{type:"tool-call-delta",toolCallId:g,toolName:p.toolName??p.name??"tool",input:typeof $==="string"?void 0:$,inputText:E,metadata:sy({metadata:Ss(p),request:t,context:n})};continue}if(p.type==="tool-error"){a=!0;let g=p.toolCallId??p.id??`tool_${ey()}`,$=o.has(g);o.add(g);let E=p.toolName??p.name??"tool",T=p.input??p.args??{},A=typeof T==="string"?T:JSON.stringify(T),I=p.error===void 0?"Tool input was rejected by the model adapter":ut(p.error);yield{type:"tool-call-delta",toolCallId:g,toolName:E,input:$?void 0:typeof T==="string"?void 0:T,inputText:$?void 0:A,metadata:vz({part:p,errorMessage:I,request:t,context:n,toolName:E})};continue}if(p.type==="finish")l=p.usage??p.totalUsage,c=p.providerMetadata,s=p.finishReason??p.rawFinishReason??p.reason;if(p.type==="error"){d=i?.current??ut(p.error);break}if(p.type==="abort")break}else if(e.textStream)for await(let p of e.textStream)yield{type:"text-delta",text:p}}catch(p){d=i?.current??ut(p)}let m,v;if(d)m=l,v=c;else if(e.usage)try{m=await e.usage}catch(p){if(!d)d=i?.current??ut(p);m=l,v=c}else m=l,v=c;if(m)yield{type:"usage",usage:uy(m,v,r)};yield{type:"finish",reason:d?"error":gz(s,a),error:d}}async function Sz(e,t,n){switch(e){case"openai":{let{createOpenAIProviderModule:r}=await Promise.resolve().then(() => (Ag(),Pg));return r(t,n)}case"openai-compatible":{let{createOpenAICompatibleProviderModule:r}=await Promise.resolve().then(() => (Cg(),Zg));return r(t,n)}case"anthropic":{let{createAnthropicProviderModule:r}=await Promise.resolve().then(() => (Fg(),Mg));return r(t,n)}case"google":{let{createGoogleProviderModule:r}=await Promise.resolve().then(() => (Wg(),Bg));return r(t,n)}case"vertex":{let{createVertexProviderModule:r}=await Promise.resolve().then(() => (Gg(),Hg));return r(t,n)}case"bedrock":{let{createBedrockProviderModule:r}=await Promise.resolve().then(() => (Yg(),Xg));return r(t)}case"mistral":{let{createMistralProviderModule:r}=await Promise.resolve().then(() => (Vg(),Qg));return r(t)}case"claude-code":{let{createClaudeCodeProviderModule:r}=await Promise.resolve().then(() => (Rt(),Ct));return r(t)}case"openai-codex":{let{createOpenAICodexProviderModule:r}=await Promise.resolve().then(() => (Rt(),Ct));return r(t)}case"opencode":{let{createOpenCodeProviderModule:r}=await Promise.resolve().then(() => (Rt(),Ct));return r(t)}case"dify":{let{createDifyProviderModule:r}=await Promise.resolve().then(() => (Rt(),Ct));return r(t)}case"sapaicore":{let{createSapAiCoreProviderModule:r}=await Promise.resolve().then(() => (Rt(),Ct));return r(t)}}}function ve(e){return async(t)=>({async*stream(n,r){let i=r.logger,a,o={current:void 0};try{let s=await Sz(e,{...t,fetch:cz(qh(t.fetch,n),n,r)},r),d=await mz(t.providerId),l=ay(r)?void 0:fz(n),c=hz(n),m=typeof c==="string"&&c.trim().length>0,v=m?void 0:c,p=Dt(n,r)?oz(n,r,v):ny(n.messages,v,{includeReasoning:iy(n,r)}),g=zg(n,r,e);cs({stage:"ai_sdk_prompt",request:n,payload:{messages:p,...m?{system:c}:{},tools:l,providerOptions:g,maxOutputTokens:n.maxTokens,temperature:n.temperature}}),a=az({model:s.model(r.model.id),messages:p,...m?{system:c}:{},tools:l,temperature:n.temperature,...n.maxTokens!==void 0?{maxOutputTokens:n.maxTokens}:{},abortSignal:n.signal,experimental_repairToolCall:ry,experimental_telemetry:{isEnabled:d},providerOptions:g,onError:({error:$})=>{let E=ut($);if(o.current=E,i?.error)i.error("[ai-sdk] stream error",{providerId:n.providerId,error:$,severity:"error"});else if(i)i.log(`[ai-sdk] stream error: ${E}`,{providerId:n.providerId,severity:"error"});Yn(r.telemetry,{component:"llms",operation:"provider.stream",error:$,severity:"error",handled:!0,context:{providerId:n.providerId,modelId:n.modelId,providerKind:e}})}}),ty(a),yield*wz(a,n,r,r.model.metadata?.pricing,o)}catch(s){ty(a);let d=o.current??ut(s);if(i?.error)i.error("[ai-sdk] provider error",{providerId:n.providerId,error:s,severity:"error"});else if(i)i.log(`[ai-sdk] provider error: ${d}`,{providerId:n.providerId,severity:"error"});Yn(r.telemetry,{component:"llms",operation:"provider.create_or_stream",error:s,severity:"error",handled:!0,context:{providerId:n.providerId,modelId:n.modelId,providerKind:e}}),yield{type:"finish",reason:"error",error:d}}}})}var yz,dr,cr,mr,fr,pr,vr,Is,xs,zs,Us,Ts,js;var ie=F(()=>{we();eg();Zt();Ug();yz=[["outputTokenDetails","reasoningTokens"],["output_tokens_details","reasoning_tokens"],["completion_tokens_details","reasoning_tokens"],["reasoningTokens"],["reasoning_tokens"]];dr=ve("openai"),cr=ve("openai-compatible"),mr=ve("anthropic"),fr=ve("google"),pr=ve("vertex"),vr=ve("bedrock"),Is=ve("mistral"),xs=ve("claude-code"),zs=ve("openai-codex"),Us=ve("opencode"),Ts=ve("dify"),js=ve("sapaicore")});var Bt;((x)=>{x.ANTHROPIC="anthropic";x.CLAUDE_CODE="claude-code";x.CLINE="cline";x.CLINE_PASS="cline-pass";x.OPENAI_COMPATIBLE="openai-compatible";x.OPENAI_NATIVE="openai-native";x.OPENAI_CODEX="openai-codex";x.OPENAI_CODEX_CLI="openai-codex-cli";x.OPENCODE="opencode";x.BEDROCK="bedrock";x.VERTEX="vertex";x.GEMINI="gemini";x.OLLAMA="ollama";x.LMSTUDIO="lmstudio";x.DEEPSEEK="deepseek";x.XAI="xai";x.TOGETHER="together";x.FIREWORKS="fireworks";x.GROQ="groq";x.POOLSIDE="poolside";x.CEREBRAS="cerebras";x.SAMBANOVA="sambanova";x.NEBIUS="nebius";x.BASETEN="baseten";x.REQUESTY="requesty";x.LITELLM="litellm";x.HUGGINGFACE="huggingface";x.VERCEL_AI_GATEWAY="vercel-ai-gateway";x.V0="v0";x.AIHUBMIX="aihubmix";x.HICAP="hicap";x.NOUS_RESEARCH="nousResearch";x.HUAWEI_CLOUD_MAAS="huawei-cloud-maas";x.WANDB="wandb";x.XIAOMI="xiaomi";x.TENCENT_TOKENHUB="tencent-tokenhub";x.KILO="kilo";x.ZAI="zai";x.ZAI_CODING_PLAN="zai-coding-plan";x.QWEN="qwen";x.QWEN_CODE="qwen-code";x.DOUBAO="doubao";x.MISTRAL="mistral";x.MOONSHOT="moonshot";x.ASKSAGE="asksage";x.MINIMAX="minimax";x.DIFY="dify";x.OCA="oca";x.SAPAICORE="sapaicore";x.OPENROUTER="openrouter"})(Bt||={});var ib={openai:"openai-compatible",togetherai:"together","sap-ai-core":"sapaicore"},Mi=Object.values(Bt);function wr(e){return Mi.includes(e)}function G(e){let t=e.trim();return ib[t]??t}function Fi(e){return G(e.routingProviderId??e.providerId)}ie();import{nanoid as Bs}from"nanoid";we();var Os={version:1783097653299,providers:{aihubmix:{"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1268,output:3.9438,cacheRead:0.2817,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"qwen3.7-plus":{id:"qwen3.7-plus",name:"Qwen3.7 Plus",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.282,output:1.128,cacheRead:0.0564,cacheWrite:0.3525},releaseDate:"2026-06-02",family:"qwen"},"claude-opus-4-8":{id:"claude-opus-4-8",name:"Claude Opus 4.8",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"claude-opus-4-8-think":{id:"claude-opus-4-8-think",name:"Claude Opus 4.8",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"qwen3.7-max":{id:"qwen3.7-max",name:"Qwen3.7 Max",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.69,output:5.07,cacheRead:0.169,cacheWrite:2.1125},releaseDate:"2026-05-21",family:"qwen"},"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM 5 Vision Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.7042,output:3.09848,cacheRead:0.169008,cacheWrite:0},releaseDate:"2026-05-09",family:"glmv"},"qwen3.6-max-preview":{id:"qwen3.6-max-preview",name:"Qwen3.6 Max Preview",contextWindow:240000,maxInputTokens:240000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.27,output:7.61,cacheRead:0.1268,cacheWrite:1.585},releaseDate:"2026-05-09",family:"qwen3.6"},"qwen3.6-plus":{id:"qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.28,output:1.69,cacheRead:0.0282,cacheWrite:0.3525},releaseDate:"2026-05-09",family:"qwen3.6"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:1},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01",family:"grok"},"doubao-seed-2-0-lite-260428":{id:"doubao-seed-2-0-lite-260428",name:"Doubao Seed 2.0 Lite 260428",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.08,output:0.51,cacheRead:0.01692,cacheWrite:0},releaseDate:"2026-04-28",family:"seed"},"doubao-seed-2-0-mini-260428":{id:"doubao-seed-2-0-mini-260428",name:"Doubao Seed 2.0 Mini 260428",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.03,output:0.28,cacheRead:0.00564,cacheWrite:0},releaseDate:"2026-04-28",family:"seed"},"alicloud-deepseek-v4-flash":{id:"alicloud-deepseek-v4-flash",name:"DeepSeek V4 Flash (Alibaba Cloud)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"alicloud-deepseek-v4-pro":{id:"alicloud-deepseek-v4-pro",name:"DeepSeek V4 Pro (Alibaba Cloud)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.69,output:3.38,cacheRead:0.13,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"deep-deepseek-v4-flash":{id:"deep-deepseek-v4-flash",name:"DeepSeek V4 Flash (DeepSeek)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.154,output:0.308,cacheRead:0.0308,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deep-deepseek-v4-pro":{id:"deep-deepseek-v4-pro",name:"DeepSeek V4 Pro (DeepSeek)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.478,output:0.956,cacheRead:0.004302,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"coding-xiaomi-mimo-v2.5":{id:"coding-xiaomi-mimo-v2.5",name:"Coding Xiaomi MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.4,cacheRead:0.016,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"coding-xiaomi-mimo-v2.5-pro":{id:"coding-xiaomi-mimo-v2.5-pro",name:"Coding Xiaomi MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.6,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"xiaomi-mimo-v2.5":{id:"xiaomi-mimo-v2.5",name:"Xiaomi MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.44,output:2.2,cacheRead:0.088,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi-mimo-v2.5-free":{id:"xiaomi-mimo-v2.5-free",name:"Xiaomi MiMo-V2.5 (free)",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi-mimo-v2.5-pro":{id:"xiaomi-mimo-v2.5-pro",name:"Xiaomi MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.1,output:3.3,cacheRead:0.22,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"xiaomi-mimo-v2.5-pro-free":{id:"xiaomi-mimo-v2.5-pro-free",name:"Xiaomi MiMo-V2.5-Pro (free)",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2"},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-opus-4-7-think":{id:"claude-opus-4-7-think",name:"Claude Opus 4.7 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"coding-glm-5.1":{id:"coding-glm-5.1",name:"Coding GLM 5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.22,cacheRead:0.013,cacheWrite:0},releaseDate:"2026-04-11",family:"glm"},"coding-glm-5.1-free":{id:"coding-glm-5.1-free",name:"Coding GLM 5.1 (free)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-11",family:"glm-free"},"qwen3.6-flash":{id:"qwen3.6-flash",name:"Qwen3.6 Flash",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.17,output:1.01,cacheRead:0.0169,cacheWrite:0.21125},releaseDate:"2026-04-02",family:"qwen3.6"},"alicloud-glm-5.1":{id:"alicloud-glm-5.1",name:"GLM-5.1 (Alibaba Cloud)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.84,output:3.38,cacheRead:0.169,cacheWrite:1.05625},releaseDate:"2026-03-27",family:"glm"},"zai-glm-5.1":{id:"zai-glm-5.1",name:"GLM-5.1 (Z.ai)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.845,output:3.38,cacheRead:0.183112,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"coding-minimax-m2.7":{id:"coding-minimax-m2.7",name:"Coding MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"coding-minimax-m2.7-free":{id:"coding-minimax-m2.7-free",name:"Coding MiniMax M2.7 (Free)",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax-free"},"coding-minimax-m2.7-highspeed":{id:"coding-minimax-m2.7-highspeed",name:"Coding MiniMax M2.7 Highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"minimax-m2.7":{id:"minimax-m2.7",name:"MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-sonnet-4-6-think":{id:"claude-sonnet-4-6-think",name:"Claude Sonnet 4.6 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"doubao-seed-2-0-code-preview":{id:"doubao-seed-2-0-code-preview",name:"Doubao Seed 2.0 Code Preview",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.48,output:2.41,cacheRead:0.09644,cacheWrite:0},releaseDate:"2026-02-14",family:"seed"},"doubao-seed-2-0-pro":{id:"doubao-seed-2-0-pro",name:"Doubao Seed 2.0 Pro",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.48,output:2.41,cacheRead:0.09644,cacheWrite:0},releaseDate:"2026-02-14",family:"seed"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-6-think":{id:"claude-opus-4-6-think",name:"Claude Opus 4.6 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"}},anthropic:{"claude-sonnet-5":{id:"claude-sonnet-5",name:"Claude Sonnet 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"claude-fable-5":{id:"claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"claude-opus-4-8":{id:"claude-opus-4-8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-5":{id:"claude-opus-4-5",name:"Claude Opus 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"claude-opus-4-5-20251101":{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5":{id:"claude-haiku-4-5",name:"Claude Haiku 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-haiku-4-5-20251001":{id:"claude-haiku-4-5-20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-sonnet-4-5-20250929":{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-opus-4-1":{id:"claude-opus-4-1",name:"Claude Opus 4.1 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4-1-20250805":{id:"claude-opus-4-1-20250805",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4-0":{id:"claude-opus-4-0",name:"Claude Opus 4 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-opus-4-20250514":{id:"claude-opus-4-20250514",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-sonnet-4-0":{id:"claude-sonnet-4-0",name:"Claude Sonnet 4 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-sonnet-4-20250514":{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"}},baseten:{"zai-org/GLM-5.2":{id:"zai-org/GLM-5.2",name:"GLM 5.2",contextWindow:202720,maxInputTokens:202720,maxTokens:202720,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.3,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"moonshotai/Kimi-K2.7-Code":{id:"moonshotai/Kimi-K2.7-Code",name:"Kimi K2.7 Code",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B":{id:"nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B",name:"Nemotron Ultra",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"Deepseek V4 Pro",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.3,output:4.3,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"nvidia/Nemotron-120B-A12B":{id:"nvidia/Nemotron-120B-A12B",name:"Nemotron Super",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.75,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM 5",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:3.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-01-30",family:"kimi-k2"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM 4.7",contextWindow:200000,maxInputTokens:200000,maxTokens:200000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.12,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI GPT 120B",contextWindow:128072,maxInputTokens:128072,maxTokens:128072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},bedrock:{"anthropic.claude-sonnet-5":{id:"anthropic.claude-sonnet-5",name:"Claude Sonnet 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"au.anthropic.claude-sonnet-5":{id:"au.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (AU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-5":{id:"eu.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.2,output:11,cacheRead:0.22,cacheWrite:2.75},releaseDate:"2026-06-30",family:"claude-sonnet"},"global.anthropic.claude-sonnet-5":{id:"global.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"jp.anthropic.claude-sonnet-5":{id:"jp.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"us.anthropic.claude-sonnet-5":{id:"us.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"anthropic.claude-fable-5":{id:"anthropic.claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"eu.anthropic.claude-fable-5":{id:"eu.anthropic.claude-fable-5",name:"Claude Fable 5 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:11,output:55,cacheRead:1.1,cacheWrite:13.75},releaseDate:"2026-06-09",family:"claude-fable"},"global.anthropic.claude-fable-5":{id:"global.anthropic.claude-fable-5",name:"Claude Fable 5 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"us.anthropic.claude-fable-5":{id:"us.anthropic.claude-fable-5",name:"Claude Fable 5 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"anthropic.claude-opus-4-8":{id:"anthropic.claude-opus-4-8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"au.anthropic.claude-opus-4-8":{id:"au.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (AU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"eu.anthropic.claude-opus-4-8":{id:"eu.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-05-28",family:"claude-opus"},"global.anthropic.claude-opus-4-8":{id:"global.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"jp.anthropic.claude-opus-4-8":{id:"jp.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"us.anthropic.claude-opus-4-8":{id:"us.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"openai.gpt-5.5":{id:"openai.gpt-5.5",name:"GPT-5.5",contextWindow:272000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5.5,output:33,cacheRead:0.55,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"xai.grok-4.3":{id:"xai.grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-17",family:"grok"},"anthropic.claude-opus-4-7":{id:"anthropic.claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"eu.anthropic.claude-opus-4-7":{id:"eu.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-04-16",family:"claude-opus"},"global.anthropic.claude-opus-4-7":{id:"global.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"jp.anthropic.claude-opus-4-7":{id:"jp.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"us.anthropic.claude-opus-4-7":{id:"us.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"minimax.minimax-m2.5":{id:"minimax.minimax-m2.5",name:"MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"zai.glm-5":{id:"zai.glm-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:101376,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"glm"},"nvidia.nemotron-super-3-120b":{id:"nvidia.nemotron-super-3-120b",name:"NVIDIA Nemotron 3 Super 120B A12B",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.65,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"openai.gpt-5.4":{id:"openai.gpt-5.4",name:"GPT-5.4",contextWindow:272000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.75,output:16.5,cacheRead:0.275,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"anthropic.claude-sonnet-4-6":{id:"anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"au.anthropic.claude-sonnet-4-6":{id:"au.anthropic.claude-sonnet-4-6",name:"AU Anthropic Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2026-02-17",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-6":{id:"eu.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2026-02-17",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-6":{id:"global.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"jp.anthropic.claude-sonnet-4-6":{id:"jp.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"mistral.devstral-2-123b":{id:"mistral.devstral-2-123b",name:"Devstral 2 123B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17",family:"devstral"},"us.anthropic.claude-sonnet-4-6":{id:"us.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"deepseek.v3.2":{id:"deepseek.v3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.62,output:1.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"deepseek"},"moonshotai.kimi-k2.5":{id:"moonshotai.kimi-k2.5",name:"Kimi K2.5",contextWindow:262143,maxInputTokens:262143,maxTokens:16000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"kimi"},"qwen.qwen3-coder-next":{id:"qwen.qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"qwen"},"anthropic.claude-opus-4-6-v1":{id:"anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"au.anthropic.claude-opus-4-6-v1":{id:"au.anthropic.claude-opus-4-6-v1",name:"AU Anthropic Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:16.5,output:82.5,cacheRead:1.65,cacheWrite:20.625},releaseDate:"2026-02-05",family:"claude-opus"},"eu.anthropic.claude-opus-4-6-v1":{id:"eu.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-02-05",family:"claude-opus"},"global.anthropic.claude-opus-4-6-v1":{id:"global.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"us.anthropic.claude-opus-4-6-v1":{id:"us.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"zai.glm-4.7-flash":{id:"zai.glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"minimax.minimax-m2.1":{id:"minimax.minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"nvidia.nemotron-nano-3-30b":{id:"nvidia.nemotron-nano-3-30b",name:"NVIDIA Nemotron Nano 3 30B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"nemotron"},"zai.glm-4.7":{id:"zai.glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"mistral.magistral-small-2509":{id:"mistral.magistral-small-2509",name:"Magistral Small 1.2",contextWindow:128000,maxInputTokens:128000,maxTokens:40000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"magistral"},"mistral.ministral-3-3b-instruct":{id:"mistral.ministral-3-3b-instruct",name:"Ministral 3 3B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistral.mistral-large-3-675b-instruct":{id:"mistral.mistral-large-3-675b-instruct",name:"Mistral Large 3",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral"},"moonshot.kimi-k2-thinking":{id:"moonshot.kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262143,maxInputTokens:262143,maxTokens:16000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"kimi-thinking"},"anthropic.claude-opus-4-5-20251101-v1:0":{id:"anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2025-11-24",family:"claude-opus"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"openai.gpt-oss-safeguard-120b":{id:"openai.gpt-oss-safeguard-120b",name:"GPT OSS Safeguard 120B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"openai.gpt-oss-safeguard-20b":{id:"openai.gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"minimax.minimax-m2":{id:"minimax.minimax-m2",name:"MiniMax M2",contextWindow:204608,maxInputTokens:204608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"anthropic.claude-haiku-4-5-20251001-v1:0":{id:"anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:5.5,cacheRead:0.11,cacheWrite:1.375},releaseDate:"2025-10-15",family:"claude-haiku"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"qwen.qwen3-vl-235b-a22b":{id:"qwen.qwen3-vl-235b-a22b",name:"Qwen/Qwen3-VL-235B-A22B-Instruct",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.3,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-04",family:"qwen"},"anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2025-09-29",family:"claude-sonnet"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek.v3-v1:0":{id:"deepseek.v3-v1:0",name:"DeepSeek-V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.58,output:1.68,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"deepseek"},"qwen.qwen3-235b-a22b-2507-v1:0":{id:"qwen.qwen3-235b-a22b-2507-v1:0",name:"Qwen3 235B A22B 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-32b-v1:0":{id:"qwen.qwen3-32b-v1:0",name:"Qwen3 32B (dense)",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-30b-a3b-v1:0":{id:"qwen.qwen3-coder-30b-a3b-v1:0",name:"Qwen3 Coder 30B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-480b-a35b-v1:0":{id:"qwen.qwen3-coder-480b-a35b-v1:0",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-next-80b-a3b":{id:"qwen.qwen3-next-80b-a3b",name:"Qwen/Qwen3-Next-80B-A3B-Instruct",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.14,output:1.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"anthropic.claude-opus-4-1-20250805-v1:0":{id:"anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai.gpt-oss-120b":{id:"openai.gpt-oss-120b",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-120b-1:0":{id:"openai.gpt-oss-120b-1:0",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-20b":{id:"openai.gpt-oss-20b",name:"gpt-oss-20b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-20b-1:0":{id:"openai.gpt-oss-20b-1:0",name:"gpt-oss-20b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google.gemma-3-27b-it":{id:"google.gemma-3-27b-it",name:"Google Gemma 3 27B Instruct",contextWindow:202752,maxInputTokens:202752,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.12,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-27",family:"gemma"},"mistral.voxtral-small-24b-2507":{id:"mistral.voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01",family:"mistral"},"writer.palmyra-x4-v1:0":{id:"writer.palmyra-x4-v1:0",name:"Palmyra X4",contextWindow:122880,maxInputTokens:122880,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"writer.palmyra-x5-v1:0":{id:"writer.palmyra-x5-v1:0",name:"Palmyra X5",contextWindow:1040000,maxInputTokens:1040000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"mistral.pixtral-large-2502-v1:0":{id:"mistral.pixtral-large-2502-v1:0",name:"Pixtral Large (25.02)",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-08",family:"mistral"},"meta.llama4-maverick-17b-instruct-v1:0":{id:"meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct",contextWindow:1e6,maxInputTokens:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta.llama4-scout-17b-instruct-v1:0":{id:"meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct",contextWindow:3500000,maxInputTokens:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"us.meta.llama4-maverick-17b-instruct-v1:0":{id:"us.meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"us.meta.llama4-scout-17b-instruct-v1:0":{id:"us.meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct (US)",contextWindow:3500000,maxInputTokens:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"deepseek.r1-v1:0":{id:"deepseek.r1-v1:0",name:"DeepSeek-R1",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"us.deepseek.r1-v1:0":{id:"us.deepseek.r1-v1:0",name:"DeepSeek-R1 (US)",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"meta.llama3-3-70b-instruct-v1:0":{id:"meta.llama3-3-70b-instruct-v1:0",name:"Llama 3.3 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"amazon.nova-lite-v1:0":{id:"amazon.nova-lite-v1:0",name:"Nova Lite",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon.nova-micro-v1:0":{id:"amazon.nova-micro-v1:0",name:"Nova Micro",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon.nova-pro-v1:0":{id:"amazon.nova-pro-v1:0",name:"Nova Pro",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"amazon.nova-2-lite-v1:0":{id:"amazon.nova-2-lite-v1:0",name:"Nova 2 Lite",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.33,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nova"},"google.gemma-3-4b-it":{id:"google.gemma-3-4b-it",name:"Gemma 3 4B IT",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0.04,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gemma"},"mistral.ministral-3-14b-instruct":{id:"mistral.ministral-3-14b-instruct",name:"Ministral 14B 3.0",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.ministral-3-8b-instruct":{id:"mistral.ministral-3-8b-instruct",name:"Ministral 3 8B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.voxtral-mini-3b-2507":{id:"mistral.voxtral-mini-3b-2507",name:"Voxtral Mini 3B 2507",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"mistral"},"nvidia.nemotron-nano-12b-v2":{id:"nvidia.nemotron-nano-12b-v2",name:"NVIDIA Nemotron Nano 12B v2 VL BF16",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"nvidia.nemotron-nano-9b-v2":{id:"nvidia.nemotron-nano-9b-v2",name:"NVIDIA Nemotron Nano 9B v2",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.06,output:0.23,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"meta.llama3-1-70b-instruct-v1:0":{id:"meta.llama3-1-70b-instruct-v1:0",name:"Llama 3.1 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta.llama3-1-8b-instruct-v1:0":{id:"meta.llama3-1-8b-instruct-v1:0",name:"Llama 3.1 8B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},cerebras:{"gemma-4-31b":{id:"gemma-4-31b",name:"Gemma 4 31B IT",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.99,output:1.49,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"zai-glm-4.7":{id:"zai-glm-4.7",name:"Z.AI GLM-4.7",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:2.25,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-07"},"gpt-oss-120b":{id:"gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.35,output:0.75,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},"cline-pass":{"cline-pass/qwen3.7-max":{name:"Qwen3.7 Max",id:"cline-pass/qwen3.7-max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:3.75,cacheRead:0.25,cacheWrite:1.5625},releaseDate:"2026-05-21",family:"qwen",description:""},"cline-pass/qwen3.7-plus":{name:"Qwen3.7 Plus",id:"cline-pass/qwen3.7-plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.32,output:1.28,cacheRead:0.064,cacheWrite:0.4},releaseDate:"2026-06-02",family:"qwen",description:""},"cline-pass/minimax-m3":{name:"MiniMax-M3",id:"cline-pass/minimax-m3",contextWindow:524288,maxInputTokens:524288,maxTokens:512000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax",description:""},"cline-pass/mimo-v2.5-pro":{name:"MiMo-V2.5-Pro",id:"cline-pass/mimo-v2.5-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo",description:""},"cline-pass/glm-5.2":{name:"GLM-5.2",id:"cline-pass/glm-5.2",contextWindow:1048576,maxInputTokens:1048576,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.93,output:3,cacheRead:0.18,cacheWrite:0},releaseDate:"2026-06-13",family:"glm",description:""},"cline-pass/mimo-v2.5":{name:"MiMo-V2.5",id:"cline-pass/mimo-v2.5",contextWindow:32000,maxInputTokens:32000,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.105,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo",description:""},"cline-pass/kimi-k2.7-code":{name:"Kimi K2.7 Code",id:"cline-pass/kimi-k2.7-code",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.74,output:3.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2",description:""},"cline-pass/deepseek-v4-flash":{name:"DeepSeek V4 Flash",id:"cline-pass/deepseek-v4-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.09,output:0.18,cacheRead:0.018,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash",description:""},"cline-pass/deepseek-v4-pro":{name:"DeepSeek V4 Pro",id:"cline-pass/deepseek-v4-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking",description:""},"cline-pass/kimi-k2.6":{name:"Kimi K2.6",id:"cline-pass/kimi-k2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.66,output:3.41,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2",description:""}},deepseek:{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"deepseek-chat":{id:"deepseek-chat",name:"DeepSeek Chat",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek-reasoner":{id:"deepseek-reasoner",name:"DeepSeek Reasoner",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"}},fireworks:{"accounts/fireworks/routers/glm-5p2-fast":{id:"accounts/fireworks/routers/glm-5p2-fast",name:"GLM 5.2 Fast",contextWindow:1048575,maxInputTokens:1048575,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2.1,output:6.6,cacheRead:0.21,cacheWrite:0},releaseDate:"2026-06-26",family:"glm"},"accounts/fireworks/models/glm-5p2":{id:"accounts/fireworks/models/glm-5p2",name:"GLM 5.2",contextWindow:1048575,maxInputTokens:1048575,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-06-16",family:"glm"},"accounts/fireworks/models/kimi-k2p7-code":{id:"accounts/fireworks/models/kimi-k2p7-code",name:"Kimi K2.7 Code",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.19,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"accounts/fireworks/models/minimax-m3":{id:"accounts/fireworks/models/minimax-m3",name:"MiniMax-M3",contextWindow:512000,maxInputTokens:512000,maxTokens:512000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-12",family:"minimax"},"accounts/fireworks/models/qwen3p7-plus":{id:"accounts/fireworks/models/qwen3p7-plus",name:"Qwen 3.7 Plus",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-06-12",family:"qwen"},"accounts/fireworks/routers/kimi-k2p7-code-fast":{id:"accounts/fireworks/routers/kimi-k2p7-code-fast",name:"Kimi K2.7 Code Fast",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.9,output:8,cacheRead:0.38,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"accounts/fireworks/models/deepseek-v4-flash":{id:"accounts/fireworks/models/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"accounts/fireworks/models/deepseek-v4-pro":{id:"accounts/fireworks/models/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"accounts/fireworks/models/kimi-k2p6":{id:"accounts/fireworks/models/kimi-k2p6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/routers/kimi-k2p6-fast":{id:"accounts/fireworks/routers/kimi-k2p6-fast",name:"Kimi K2.6 Fast",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.3,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/routers/kimi-k2p6-turbo":{id:"accounts/fireworks/routers/kimi-k2p6-turbo",name:"Kimi K2.6 Turbo",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.3,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/models/minimax-m2p7":{id:"accounts/fireworks/models/minimax-m2p7",name:"MiniMax-M2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-12",family:"minimax"},"accounts/fireworks/models/glm-5p1":{id:"accounts/fireworks/models/glm-5p1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"accounts/fireworks/routers/glm-5p1-fast":{id:"accounts/fireworks/routers/glm-5p1-fast",name:"GLM 5.1 Fast",contextWindow:202800,maxInputTokens:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2.8,output:8.8,cacheRead:0.52,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"accounts/fireworks/models/gpt-oss-120b":{id:"accounts/fireworks/models/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"accounts/fireworks/models/gpt-oss-20b":{id:"accounts/fireworks/models/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.07,output:0.3,cacheRead:0.035,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},gemini:{"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini-flash"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"gemma-4-26b-a4b-it":{id:"gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemma-4-31b-it":{id:"gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-pro"}},groq:{"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"Safety GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen3-32B",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["tools","reasoning","temperature"],pricing:{input:0.29,output:0.59,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-11",family:"qwen"},"meta-llama/llama-4-scout-17b-16e-instruct":{id:"meta-llama/llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout 17B 16E",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.11,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"llama-3.3-70b-versatile":{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.59,output:0.79,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"llama-3.1-8b-instant":{id:"llama-3.1-8b-instant",name:"Llama 3.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},huggingface:{"zai-org/GLM-5.2":{id:"zai-org/GLM-5.2",name:"GLM-5.2",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"moonshotai/Kimi-K2.7-Code":{id:"moonshotai/Kimi-K2.7-Code",name:"Kimi K2.7 Code",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:0.95,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"MiniMaxAI/MiniMax-M3":{id:"MiniMaxAI/MiniMax-M3",name:"MiniMax-M3",contextWindow:524288,maxInputTokens:524288,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax"},"stepfun-ai/Step-3.7-Flash":{id:"stepfun-ai/Step-3.7-Flash",name:"Step 3.7 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:256000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:1.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-29"},"deepseek-ai/DeepSeek-V4-Flash":{id:"deepseek-ai/DeepSeek-V4-Flash",name:"DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:393216,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"Qwen/Qwen3.6-27B":{id:"Qwen/Qwen3.6-27B",name:"Qwen3.6 27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.47,output:3.19,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen"},"XiaomiMiMo/MiMo-V2.5-Pro":{id:"XiaomiMiMo/MiMo-V2.5-Pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi-K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi-k2"},"Qwen/Qwen3.6-35B-A3B":{id:"Qwen/Qwen3.6-35B-A3B",name:"Qwen3.6 35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.95,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-17",family:"qwen"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-03",family:"glm"},"google/gemma-4-26B-A4B-it":{id:"google/gemma-4-26B-A4B-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.13,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31B-it":{id:"google/gemma-4-31B-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"Qwen/Qwen3.5-122B-A10B":{id:"Qwen/Qwen3.5-122B-A10B",name:"Qwen3.5 122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.4,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"Qwen/Qwen3.5-27B":{id:"Qwen/Qwen3.5-27B",name:"Qwen3.5 27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"Qwen/Qwen3.5-35B-A3B":{id:"Qwen/Qwen3.5-35B-A3B",name:"Qwen3.5 35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"Qwen/Qwen3.5-9B":{id:"Qwen/Qwen3.5-9B",name:"Qwen3.5 9B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.17,output:0.25,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"Qwen/Qwen3-Coder-Next":{id:"Qwen/Qwen3-Coder-Next",name:"Qwen3-Coder-Next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0.2,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-03",family:"qwen"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01",family:"qwen"},"stepfun-ai/Step-3.5-Flash":{id:"stepfun-ai/Step-3.5-Flash",name:"Step 3.5 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-29"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-01",family:"kimi-k2"},"MiniMaxAI/MiniMax-M2.1":{id:"MiniMaxAI/MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"XiaomiMiMo/MiMo-V2-Flash":{id:"XiaomiMiMo/MiMo-V2-Flash",name:"MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:4096,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.28,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"moonshotai/Kimi-K2-Thinking":{id:"moonshotai/Kimi-K2-Thinking",name:"Kimi-K2-Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"MiniMaxAI/MiniMax-M2":{id:"MiniMaxAI/MiniMax-M2",name:"MiniMax-M2",contextWindow:204800,maxInputTokens:204800,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"zai-org/GLM-4.6":{id:"zai-org/GLM-4.6",name:"GLM-4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.55,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"Qwen/Qwen3-Next-80B-A3B-Instruct":{id:"Qwen/Qwen3-Next-80B-A3B-Instruct",name:"Qwen3-Next-80B-A3B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.3,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"moonshotai/Kimi-K2-Instruct-0905":{id:"moonshotai/Kimi-K2-Instruct-0905",name:"Kimi-K2-Instruct-0905",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"kimi-k2"},"zai-org/GLM-4.5V":{id:"zai-org/GLM-4.5V",name:"GLM-4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"zai-org/GLM-4.7-Flash":{id:"zai-org/GLM-4.7-Flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-08",family:"glm"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:0.69,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"zai-org/GLM-4.5":{id:"zai-org/GLM-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"zai-org/GLM-4.5-Air":{id:"zai-org/GLM-4.5-Air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0.13,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:2,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"moonshotai/Kimi-K2-Instruct":{id:"moonshotai/Kimi-K2-Instruct",name:"Kimi-K2-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi-k2"},"deepseek-ai/DeepSeek-R1-0528":{id:"deepseek-ai/DeepSeek-R1-0528",name:"DeepSeek-R1-0528",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","reasoning","temperature"],pricing:{input:3,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-28",family:"deepseek-thinking"},"Qwen/Qwen3-235B-A22B":{id:"Qwen/Qwen3-235B-A22B",name:"Qwen3 235B-A22B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"Qwen/Qwen3-32B":{id:"Qwen/Qwen3-32B",name:"Qwen3 32B",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.29,output:0.59,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"Qwen/Qwen3-Coder-30B-A3B-Instruct":{id:"Qwen/Qwen3-Coder-30B-A3B-Instruct",name:"Qwen3-Coder 30B-A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.26,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"deepseek-ai/DeepSeek-R1":{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek-R1",contextWindow:64000,maxInputTokens:64000,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.59,output:0.79,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"}},kilo:{"x-ai/grok-build-0.1":{id:"x-ai/grok-build-0.1",name:"xAI: Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-20"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Google: Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.08333},releaseDate:"2026-05-19"},"anthropic/claude-opus-4.7-fast":{id:"anthropic/claude-opus-4.7-fast",name:"Anthropic: Claude Opus 4.7 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-05-12"},"inclusionai/ring-2.6-1t":{id:"inclusionai/ring-2.6-1t",name:"inclusionAI: Ring-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-05-08"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Google: Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.08333},releaseDate:"2026-05-07"},"baidu/cobuddy:free":{id:"baidu/cobuddy:free",name:"Baidu: CoBuddy (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-06"},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"OpenAI: GPT Chat Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-05-05"},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"xAI: Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:4096,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01"},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"IBM: Granite 4.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.05,output:0.1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-30"},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral: Mistral Medium 3.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30"},"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)",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"nemotron"},"openrouter/owl-alpha":{id:"openrouter/owl-alpha",name:"Owl Alpha",contextWindow:1048756,maxInputTokens:1048756,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Poolside: Laguna M.1 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Poolside: Laguna XS.2 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic: Claude Haiku Latest",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-04-27"},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic: Claude Sonnet Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-04-27"},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google: Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.08333333333333334},releaseDate:"2026-04-27"},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google: Gemini Pro Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-04-27"},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI: Kimi Latest",contextWindow:262142,maxInputTokens:262142,maxTokens:262142,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.74,output:3.49,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI: GPT Latest",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI: GPT Mini Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen: Qwen3.5 Plus 2026-04-20",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.4,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen: Qwen3.6 27B",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.325,output:3.25,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen: Qwen3.6 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0.3125},releaseDate:"2026-04-27"},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen: Qwen3.6 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.04,output:6.24,cacheRead:0,cacheWrite:1.3},releaseDate:"2026-04-27"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek: DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-24"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek: DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"OpenAI: GPT-5.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"OpenAI: GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24"},"inclusionai/ling-2.6-1t":{id:"inclusionai/ling-2.6-1t",name:"inclusionAI: Ling-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-23"},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Tencent: Hy3 Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.066,output:0.26,cacheRead:0.029,cacheWrite:0},releaseDate:"2026-04-22"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo V2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"inclusionAI: Ling-2.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.016,cacheWrite:0},releaseDate:"2026-04-21"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"MoonshotAI: Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:65535,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:3.5,cacheRead:0.375,cacheWrite:0},releaseDate:"2026-04-20"},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Anthropic: Claude Opus Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Anthropic: Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"stealth/claude-opus-4.7":{id:"stealth/claude-opus-4.7",name:"Stealth: Claude Opus 4.7 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:4,output:20,cacheRead:0.4,cacheWrite:5},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.6-fast":{id:"anthropic/claude-opus-4.6-fast",name:"Anthropic: Claude Opus 4.6 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-04-07"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Google: Gemma 4 26B A4B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.12,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-03"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Google: Gemma 4 31B",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Arcee AI: Trinity Large Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01"},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"Z.ai: GLM 5V Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01"},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"xAI: Grok 4.20",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-31"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kwaipilot: KAT-Coder-Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:80000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"Z.ai: GLM 5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:1.26,output:3.96,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27"},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-20"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax: MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax-m2.7"},"xiaomi/mimo-v2-omni":{id:"xiaomi/mimo-v2-omni",name:"Xiaomi: MiMo-V2-Omni",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"Xiaomi: MiMo-V2-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"OpenAI: GPT-5.4 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"OpenAI: GPT-5.4 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral: Mistral Small 4",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-03-16"},"kilo-auto/balanced":{id:"kilo-auto/balanced",name:"Kilo Auto Balanced",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/free":{id:"kilo-auto/free",name:"Kilo Auto Free",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/frontier":{id:"kilo-auto/frontier",name:"Kilo Auto Frontier",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:5,output:25,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/small":{id:"kilo-auto/small",name:"Kilo Auto Small",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",contextWindow:2000000,maxInputTokens:2000000,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"Z.ai: GLM 5 Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"NVIDIA: Nemotron 3 Super (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-12",family:"nemotron"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA: Nemotron 3 Super",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.5,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"ByteDance Seed: Seed-2.0-Lite",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen: Qwen3.5-9B",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"OpenAI: GPT-5.4",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:2.5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"OpenAI: GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"OpenAI: GPT-5.3 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-04"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Google: Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-03"},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"ByteDance Seed: Seed-2.0-Mini",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-27"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Google: Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen: Qwen3.5-122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.08,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen: Qwen3.5-27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen: Qwen3.5-35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1625,output:1.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"OpenAI: GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25"},"inception/mercury-2":{id:"inception/mercury-2",name:"Inception: Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:50000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-02-24"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Google: Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-19"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Anthropic: Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17"},"stealth/claude-sonnet-4.6":{id:"stealth/claude-sonnet-4.6",name:"Stealth: Claude Sonnet 4.6 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2.4,output:12,cacheRead:0.24,cacheWrite:3},releaseDate:"2026-02-17"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen: Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.39,output:2.34,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen: Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax: MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.2,cacheRead:0.029,cacheWrite:0},releaseDate:"2026-02-12"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"Z.ai: GLM 5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.72,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Anthropic: Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05"},"stealth/claude-opus-4.6":{id:"stealth/claude-opus-4.6",name:"Stealth: Claude Opus 4.6 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:4,output:20,cacheRead:0.4,cacheWrite:5},releaseDate:"2026-02-05"},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen: Qwen3 Coder Next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.12,output:0.75,cacheRead:0.035,cacheWrite:0},releaseDate:"2026-02-02"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxInputTokens:200000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun: Step 3.5 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"MoonshotAI: Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:65535,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.45,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Upstage: Solar Pro 3",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen: Qwen3 Max Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.78,output:3.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-23"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"Z.ai: GLM 4.7 Flash",contextWindow:202752,maxInputTokens:202752,maxTokens:40551,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"OpenAI: GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14"},"mistralai/mistral-small-24b-instruct-2501":{id:"mistralai/mistral-small-24b-instruct-2501",name:"Mistral: Mistral Small 3",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-29"},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"ByteDance Seed: Seed 1.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax: MiniMax M2.1",contextWindow:196608,maxInputTokens:196608,maxTokens:39322,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:0.95,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"Z.ai: GLM 4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.38,output:1.98,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-12-22"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Google: Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.083333},releaseDate:"2025-12-17"},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Mistral: Ministral 3 14B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"Xiaomi: MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.29,cacheRead:0.045,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"OpenAI: GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"OpenAI: GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"OpenAI: GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11"},"relace/relace-search":{id:"relace/relace-search",name:"Relace: Relace Search",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09"},"essentialai/rnj-1-instruct":{id:"essentialai/rnj-1-instruct",name:"EssentialAI: Rnj 1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05"},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Mistral: Ministral 3 3B 2512",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Mistral: Ministral 3 8B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Arcee AI: Trinity Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.045,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek: DeepSeek V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.26,output:0.38,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-12-01"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"Prime Intellect: INTELLECT-3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-26"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Anthropic: Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"OpenAI: GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"OpenAI: GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"OpenAI: GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"OpenAI: GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"OpenAI: GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"MoonshotAI: Kimi K2 Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.47,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-06"},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Amazon: Nova Premier 1.0",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32000,capabilities:["images","tools","temperature"],pricing:{input:2.5,output:12.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-01"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"OpenAI: gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-10-29"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax: MiniMax M2",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.255,output:1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-10-23"},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen: Qwen3 VL 32B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.104,output:0.416,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-21"},"openai/gpt-5-image-mini":{id:"openai/gpt-5-image-mini",name:"OpenAI: GPT-5 Image Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2.5,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-16"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Anthropic: Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen: Qwen3 VL 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen: Qwen3 VL 8B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.117,output:1.365,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"OpenAI: GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:10,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14"},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen: Qwen3 VL 30B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-11"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"OpenAI: GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06"},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen: Qwen3 VL 30B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.13,output:0.52,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-05"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"Z.ai: GLM 4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:204800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.39,output:1.9,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-09-30"},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"Z.ai: GLM 4.6V",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Anthropic: Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Google: Gemini 2.5 Flash Lite Preview 09-2025",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-09-25"},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen: Qwen3 VL 235B A22B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24"},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen: Qwen3 VL 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.88,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-23"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek: DeepSeek V3.1 Terminus",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.21,output:0.79,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-09-22"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"OpenAI: GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15"},"mistralai/devstral-2512":{id:"mistralai/devstral-2512",name:"Mistral: Devstral 2 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-12"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen: Qwen3 Next 80B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:52429,capabilities:["tools","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen: Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.0975,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen: Qwen Plus 0728",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen: Qwen Plus 0728 (thinking)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"MoonshotAI: Kimi K2 0905",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen: Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-05"},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"ByteDance Seed: Seed 1.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen: Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0.0325,cacheWrite:0.40625},releaseDate:"2025-08-26"},"qwen/qwen3.7-max":{id:"qwen/qwen3.7-max",name:"Qwen: Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.625,output:4.875,cacheRead:0.1625,cacheWrite:2.03125},releaseDate:"2025-08-26"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek: DeepSeek V3.1",contextWindow:32768,maxInputTokens:32768,maxTokens:7168,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.75,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"NVIDIA: Nemotron Nano 9B V2",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"openai/gpt-4o-audio-preview":{id:"openai/gpt-4o-audio-preview",name:"OpenAI: GPT-4o Audio",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-15"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral: Mistral Medium 3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-12"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"Z.ai: GLM 4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11"},"ai21/jamba-large-1.7":{id:"ai21/jamba-large-1.7",name:"AI21: Jamba Large 1.7",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2,output:8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-09"},"openai/gpt-5":{id:"openai/gpt-5",name:"OpenAI: GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"OpenAI: GPT-5 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"OpenAI: GPT-5 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Anthropic: Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI: gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.039,output:0.19,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"OpenAI: gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.03,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Mistral: Codestral 2508",contextWindow:256000,maxInputTokens:256000,maxTokens:51200,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-01"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen: Qwen3 Coder 30B A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-31"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen: Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-07-29"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen: Qwen3 30B A3B Thinking 2507",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","reasoning","temperature"],pricing:{input:0.051,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"Z.ai: GLM 4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-07-28"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"Z.ai: GLM 4.5 Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.13,output:0.85,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-07-28"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen: Qwen3 235B A22B Thinking 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.11,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"z-ai/glm-4-32b":{id:"z-ai/glm-4-32b",name:"Z.ai: GLM 4 32B ",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen: Qwen3 Coder 480B A35B",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.22,output:1,cacheRead:0.022,cacheWrite:0},releaseDate:"2025-07-23"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen: Qwen3 Coder Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.195,output:0.975,cacheRead:0.06,cacheWrite:0},releaseDate:"2025-07-23"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Google: Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.083333},releaseDate:"2025-07-17"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"MoonshotAI: Kimi K2 0711",contextWindow:131000,maxInputTokens:131000,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.55,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11"},"mistralai/devstral-medium":{id:"mistralai/devstral-medium",name:"Mistral: Devstral Medium",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-10"},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Mistral: Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen: Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-07-01"},"baidu/ernie-4.5-21b-a3b":{id:"baidu/ernie-4.5-21b-a3b",name:"Baidu: ERNIE 4.5 21B A3B",contextWindow:120000,maxInputTokens:120000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"baidu/ernie-4.5-vl-28b-a3b":{id:"baidu/ernie-4.5-vl-28b-a3b",name:"Baidu: ERNIE 4.5 VL 28B A3B",contextWindow:30000,maxInputTokens:30000,maxTokens:8000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral: Mistral Small 3.2 24B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.18,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-06-20"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Google: Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-06-17"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax: MiniMax M1",contextWindow:1e6,maxInputTokens:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17"},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Google: Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-05"},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"DeepSeek: R1 0528",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.45,output:2.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-05-28"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Anthropic: Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Anthropic: Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22"},"mistralai/devstral-small":{id:"mistralai/devstral-small",name:"Mistral: Devstral Small 1.1",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral: Mistral Medium 3",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Arcee AI: Virtuoso Large",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.75,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-06"},"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",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-05-06"},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"OpenAI: o4 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:1.1,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-17"},"openai/o3":{id:"openai/o3",name:"OpenAI: o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o3-pro":{id:"openai/o3-pro",name:"OpenAI: o3 Pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o4-mini":{id:"openai/o4-mini",name:"OpenAI: o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"OpenAI: GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"OpenAI: GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"OpenAI: GPT-4.1 Nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14"},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Meta: Llama 4 Maverick",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Meta: Llama 4 Scout",contextWindow:327680,maxInputTokens:327680,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen: Qwen3 14B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen: Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","temperature"],pricing:{input:0.071,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen: Qwen3 30B A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.28,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen: Qwen3 8B",contextWindow:40960,maxInputTokens:40960,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-04"},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek: DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.77,cacheRead:0.095,cacheWrite:0},releaseDate:"2025-03-24"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Google: Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-03-20"},"nvidia/llama-3.3-nemotron-super-49b-v1.5":{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"NVIDIA: Llama 3.3 Nemotron Super 49B V1.5",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-16",family:"nemotron"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Google: Gemma 3 27B",contextWindow:128000,maxInputTokens:128000,maxTokens:65536,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.03,output:0.11,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-03-12"},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Mistral: Saba",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-17"},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"OpenAI: o3 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2025-01-31"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",contextWindow:64000,maxInputTokens:64000,maxTokens:16000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek: DeepSeek V3.2 Exp",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"nex-agi/deepseek-v3.1-nex-n1":{id:"nex-agi/deepseek-v3.1-nex-n1",name:"Nex AGI: DeepSeek V3.1 Nex N1",contextWindow:131072,maxInputTokens:131072,maxTokens:163840,capabilities:["tools","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"openai/o3-mini":{id:"openai/o3-mini",name:"OpenAI: o3 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20"},"google/gemini-2.0-flash-001":{id:"google/gemini-2.0-flash-001",name:"Google: Gemini 2.0 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2024-12-11"},"google/gemini-2.0-flash-lite-001":{id:"google/gemini-2.0-flash-lite-001",name:"Google: Gemini 2.0 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11"},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Amazon: Nova Lite 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Amazon: Nova Micro 1.0",contextWindow:128000,maxInputTokens:128000,maxTokens:5120,capabilities:["tools","temperature"],pricing:{input:0.035,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"openai/o1":{id:"openai/o1",name:"OpenAI: o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05"},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Amazon: Nova Pro 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-03"},"cohere/command-r7b-12-2024":{id:"cohere/command-r7b-12-2024",name:"Cohere: Command R7B (12-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.0375,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-02"},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Amazon: Nova 2 Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01"},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek: DeepSeek V3",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.32,output:0.89,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"NVIDIA: Nemotron 3 Nano 30B A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12",family:"nemotron"},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen: Qwen3 235B A22B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.455,output:1.82,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen: Qwen3 32B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.04,cacheWrite:0},releaseDate:"2024-12-01"},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"OpenAI: GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20"},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"mistralai/pixtral-large-2411":{id:"mistralai/pixtral-large-2411",name:"Mistral: Pixtral Large 2411",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"TheDrummer: UnslopNemo 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-09"},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral: Mistral Large 3 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Anthropic: Claude 3.5 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22"},"thedrummer/rocinante-12b":{id:"thedrummer/rocinante-12b",name:"TheDrummer: Rocinante 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.17,output:0.43,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-30"},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.12,output:0.39,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"qwen/qwen-2.5-7b-instruct":{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen: Qwen2.5 7B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Cohere: Command R (08-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Cohere: Command R+ (08-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Sao10K: Llama 3.1 Euryale 70B v2.2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.85,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-28"},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"OpenAI: GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06"},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Meta: Llama 3.3 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.32,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-01"},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",contextWindow:128000,maxInputTokens:128000,maxTokens:25600,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"mistralai/mistral-large-2411":{id:"mistralai/mistral-large-2411",name:"Mistral Large 2411",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Meta: Llama 3.1 8B Instruct",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.05,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"OpenAI: GPT-4o-mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18"},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"OpenAI: GPT-4o-mini (2024-07-18)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-18"},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Meta: Llama 3.1 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-16"},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral: Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"OpenAI: o3 Deep Research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26"},"openai/o4-mini-deep-research":{id:"openai/o4-mini-deep-research",name:"OpenAI: o4 Mini Deep Research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26"},"sao10k/l3-euryale-70b":{id:"sao10k/l3-euryale-70b",name:"Sao10k: Llama 3 Euryale 70B v2.1",contextWindow:8192,maxInputTokens:8192,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:1.48,output:1.48,cacheRead:0,cacheWrite:0},releaseDate:"2024-06-18"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"OpenAI: GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13"},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"OpenAI: GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","files","tools","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13"},"meta-llama/llama-3-8b-instruct":{id:"meta-llama/llama-3-8b-instruct",name:"Meta: Llama 3 8B Instruct",contextWindow:8192,maxInputTokens:8192,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.03,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-25"},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mistral: Mixtral 8x22B Instruct",contextWindow:65536,maxInputTokens:65536,maxTokens:13108,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-17"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Anthropic: Claude 3 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-07"},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"OpenAI: GPT-4 Turbo Preview",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.2,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-01-25"},"openai/gpt-4-1106-preview":{id:"openai/gpt-4-1106-preview",name:"OpenAI: GPT-4 Turbo (older v1106)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"OpenAI: GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-09-13"},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"OpenAI: GPT-3.5 Turbo 16k",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:3,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2023-08-28"},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"OpenAI: GPT-3.5 Turbo (older v0613)",contextWindow:4095,maxInputTokens:4095,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:1,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2023-06-13"},"openai/gpt-4-0314":{id:"openai/gpt-4-0314",name:"OpenAI: GPT-4 (older v0314)",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-05-28"},"openai/gpt-4":{id:"openai/gpt-4",name:"OpenAI: GPT-4",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-14"},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"OpenAI: GPT-3.5 Turbo",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-01"}},lmstudio:{"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen/qwen3-30b-a3b-2507":{id:"qwen/qwen3-30b-a3b-2507",name:"Qwen3 30B A3B 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-30",family:"qwen"},"qwen/qwen3-coder-30b":{id:"qwen/qwen3-coder-30b",name:"Qwen3 Coder 30B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"}},minimax:{"MiniMax-M3":{id:"MiniMax-M3",name:"MiniMax-M3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax"},"MiniMax-M2.7":{id:"MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.7-highspeed":{id:"MiniMax-M2.7-highspeed",name:"MiniMax-M2.7-highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.5-highspeed":{id:"MiniMax-M2.5-highspeed",name:"MiniMax-M2.5-highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-02-13",family:"minimax"},"MiniMax-M2.5":{id:"MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"MiniMax-M2.1":{id:"MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"MiniMax-M2":{id:"MiniMax-M2",name:"MiniMax-M2",contextWindow:196608,maxInputTokens:196608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"}},moonshot:{"kimi-k2.7-code":{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.19,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"kimi-k2.7-code-highspeed":{id:"kimi-k2.7-code-highspeed",name:"Kimi K2.7 Code HighSpeed",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.9,output:8,cacheRead:0.38,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2"},"kimi-k2-thinking":{id:"kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-thinking-turbo":{id:"kimi-k2-thinking-turbo",name:"Kimi K2 Thinking Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-0905-preview":{id:"kimi-k2-0905-preview",name:"Kimi K2 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi-k2"},"kimi-k2-turbo-preview":{id:"kimi-k2-turbo-preview",name:"Kimi K2 Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2.4,output:10,cacheRead:0.6,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi-k2"},"kimi-k2-0711-preview":{id:"kimi-k2-0711-preview",name:"Kimi K2 0711",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi-k2"}},nebius:{"zai-org/GLM-5.2":{id:"zai-org/GLM-5.2",name:"GLM-5.2",contextWindow:432000,maxInputTokens:432000,maxTokens:432000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:3.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron-3-Super-120B-A12B",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"NousResearch/Hermes-4-405B":{id:"NousResearch/Hermes-4-405B",name:"Hermes-4-405B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-01-30"},"NousResearch/Hermes-4-70B":{id:"NousResearch/Hermes-4-70B",name:"Hermes-4-70B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2026-01-30"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3-30B-A3B-Instruct-2507",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-32B":{id:"Qwen/Qwen3-32B",name:"Qwen3-32B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:128000,maxInputTokens:120000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:1.2,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-28"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma-3-27b-it",contextWindow:110000,maxInputTokens:1e5,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-20"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:124000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-10"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2025-12-05"},"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B":{id:"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B",name:"Nemotron-3-Nano-30B-A3B",contextWindow:32000,maxInputTokens:30000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-08-10",family:"nemotron"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxInputTokens:250000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-07-15"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:190000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-01-20"},"nvidia/Nemotron-3-Nano-Omni":{id:"nvidia/Nemotron-3-Nano-Omni",name:"Nemotron-3-Nano-Omni",contextWindow:65536,maxInputTokens:60000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-01-20",family:"nemotron"},"Qwen/Qwen2.5-VL-72B-Instruct":{id:"Qwen/Qwen2.5-VL-72B-Instruct",name:"Qwen2.5-VL-72B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0.31},releaseDate:"2025-01-20"},"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1":{id:"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1",name:"Llama-3.1-Nemotron-Ultra-253B-v1",contextWindow:128000,maxInputTokens:120000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-01-15",family:"nemotron"}},ollama:{"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",contextWindow:976000,maxInputTokens:976000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"kimi-k2.7-code":{id:"kimi-k2.7-code",name:"kimi-k2.7-code",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"nemotron-3-ultra":{id:"nemotron-3-ultra",name:"nemotron-3-ultra",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"minimax-m3":{id:"minimax-m3",name:"minimax-m3",contextWindow:512000,maxInputTokens:512000,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-31",family:"minimax-m3"},"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"deepseek-v4-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:1048576,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"deepseek-v4-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:1048576,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"kimi-k2.6":{id:"kimi-k2.6",name:"kimi-k2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi-k2"},"gemma4:31b":{id:"gemma4:31b",name:"gemma4:31b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"glm-5.1":{id:"glm-5.1",name:"glm-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"minimax-m2.7":{id:"minimax-m2.7",name:"minimax-m2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"nemotron-3-super":{id:"nemotron-3-super",name:"nemotron-3-super",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"qwen3.5:397b":{id:"qwen3.5:397b",name:"qwen3.5:397b",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15",family:"qwen"},"minimax-m2.5":{id:"minimax-m2.5",name:"minimax-m2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"glm-5":{id:"glm-5",name:"glm-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"qwen3-coder-next":{id:"qwen3-coder-next",name:"qwen3-coder-next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-02",family:"qwen"},"kimi-k2.5":{id:"kimi-k2.5",name:"kimi-k2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi-k2"},"minimax-m2.1":{id:"minimax-m2.1",name:"minimax-m2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"glm-4.7":{id:"glm-4.7",name:"glm-4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"gemini-3-flash-preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"nemotron-3-nano:30b":{id:"nemotron-3-nano:30b",name:"nemotron-3-nano:30b",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"devstral-2:123b":{id:"devstral-2:123b",name:"devstral-2:123b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"devstral-small-2:24b":{id:"devstral-small-2:24b",name:"devstral-small-2:24b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"rnj-1:8b":{id:"rnj-1:8b",name:"rnj-1:8b",contextWindow:32768,maxInputTokens:32768,maxTokens:4096,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-06",family:"rnj"},"mistral-large-3:675b":{id:"mistral-large-3:675b",name:"mistral-large-3:675b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral-large"},"deepseek-v3.1:671b":{id:"deepseek-v3.1:671b",name:"deepseek-v3.1:671b",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"gpt-oss:120b":{id:"gpt-oss:120b",name:"gpt-oss:120b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"gpt-oss:20b":{id:"gpt-oss:20b",name:"gpt-oss:20b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen3-coder:480b":{id:"qwen3-coder:480b",name:"qwen3-coder:480b",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"deepseek-v3.2":{id:"deepseek-v3.2",name:"deepseek-v3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-15",family:"deepseek"},"ministral-3:14b":{id:"ministral-3:14b",name:"ministral-3:14b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:8b":{id:"ministral-3:8b",name:"ministral-3:8b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:3b":{id:"ministral-3:3b",name:"ministral-3:3b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-22",family:"ministral"}},"openai-native":{"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"gpt-5.3-chat-latest":{id:"gpt-5.3-chat-latest",name:"GPT-5.3 Chat (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",contextWindow:128000,maxInputTokens:1e5,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex-spark"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.2-chat-latest":{id:"gpt-5.2-chat-latest",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-pro":{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"gpt-5.1-chat-latest":{id:"gpt-5.1-chat-latest",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5-pro":{id:"gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"gpt-5-codex":{id:"gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"gpt-5":{id:"gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"o3-pro":{id:"o3-pro",name:"o3-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},o3:{id:"o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"o4-mini":{id:"o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gpt-4.1-nano":{id:"gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"o1-pro":{id:"o1-pro",name:"o1-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:150,output:600,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-19",family:"o-pro"},"o3-mini":{id:"o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},o1:{id:"o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"gpt-4o-2024-11-20":{id:"gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20",family:"gpt"},"gpt-4o-2024-08-06":{id:"gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06",family:"gpt"},"gpt-4o-mini":{id:"gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"o3-deep-research":{id:"o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"o4-mini-deep-research":{id:"o4-mini-deep-research",name:"o4-mini-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o-mini"},"gpt-4o":{id:"gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4o-2024-05-13":{id:"gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4":{id:"gpt-4",name:"GPT-4",contextWindow:8192,maxInputTokens:8192,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"gpt-4-turbo":{id:"gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},openrouter:{"poolside/laguna-xs-2.1":{id:"poolside/laguna-xs-2.1",name:"Laguna XS 2.1",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.12,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-07-02"},"poolside/laguna-xs-2.1:free":{id:"poolside/laguna-xs-2.1:free",name:"Laguna XS 2.1 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-07-02"},"anthropic/claude-sonnet-5":{id:"anthropic/claude-sonnet-5",name:"Claude Sonnet 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"sakana/fugu-ultra":{id:"sakana/fugu-ultra",name:"Fugu Ultra",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-06-24",family:"fugu"},"google/gemini-3-pro-image":{id:"google/gemini-3-pro-image",name:"Nano Banana Pro (Gemini 3 Pro Image)",contextWindow:65536,maxInputTokens:65536,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-06-18",family:"gemini"},"cohere/north-mini-code:free":{id:"cohere/north-mini-code:free",name:"North Mini Code (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-17",family:"north"},"z-ai/glm-5.2":{id:"z-ai/glm-5.2",name:"GLM-5.2",contextWindow:1048576,maxInputTokens:1048576,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.93,output:3,cacheRead:0.18,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"moonshotai/kimi-k2.7-code":{id:"moonshotai/kimi-k2.7-code",name:"Kimi K2.7 Code",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.74,output:3.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"~anthropic/claude-fable-latest":{id:"~anthropic/claude-fable-latest",name:"Claude Fable Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"anthropic/claude-fable-5":{id:"anthropic/claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra 550B A55B",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.2,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"nvidia/nemotron-3-ultra-550b-a55b:free":{id:"nvidia/nemotron-3-ultra-550b-a55b:free",name:"Nemotron 3 Ultra (free)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"qwen/qwen3.7-plus":{id:"qwen/qwen3.7-plus",name:"Qwen3.7 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.32,output:1.28,cacheRead:0.064,cacheWrite:0.4},releaseDate:"2026-06-02",family:"qwen"},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax-M3",contextWindow:524288,maxInputTokens:524288,maxTokens:512000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax"},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"Step 3.7 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.15,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-05-29"},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"anthropic/claude-opus-4.8-fast":{id:"anthropic/claude-opus-4.8-fast",name:"Claude Opus 4.8 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-05-27",family:"claude-opus"},"qwen/qwen3.7-max":{id:"qwen/qwen3.7-max",name:"Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:3.75,cacheRead:0.25,cacheWrite:1.5625},releaseDate:"2026-05-21",family:"qwen"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.083333},releaseDate:"2026-05-19",family:"gemini-flash"},"anthropic/claude-opus-4.7-fast":{id:"anthropic/claude-opus-4.7-fast",name:"Claude Opus 4.7 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-05-12",family:"claude-opus"},"inclusionai/ring-2.6-1t":{id:"inclusionai/ring-2.6-1t",name:"Ring-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-05-08",family:"ring"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"GPT Chat Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-05-05",family:"gpt"},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"Granite 4.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.05,output:0.1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-30",family:"granite"},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral Medium 3.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30",family:"mistral-medium"},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"Nemotron 3 Nano Omni (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"nemotron"},"poolside/laguna-m.1":{id:"poolside/laguna-m.1",name:"Laguna M.1",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.4,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Laguna M.1 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2":{id:"poolside/laguna-xs.2",name:"Laguna XS.2",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.2,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Laguna XS.2 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic Claude Haiku Latest",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-04-27",family:"claude-haiku"},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic Claude Sonnet Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-04-27",family:"claude-sonnet"},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.083333},releaseDate:"2026-04-27",family:"gemini-flash"},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google Gemini Pro Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-04-27",family:"gemini-pro"},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI Kimi Latest",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.66,output:3.41,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-27",family:"kimi"},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI GPT Latest",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-27",family:"gpt"},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI GPT Mini Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-04-27",family:"gpt-mini"},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen3.5 Plus 2026-04-20",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.8,cacheRead:0,cacheWrite:0.375},releaseDate:"2026-04-27",family:"qwen3.5"},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen3.6 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1875,output:1.125,cacheRead:0,cacheWrite:0.234375},releaseDate:"2026-04-27",family:"qwen3.6"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.09,output:0.18,cacheRead:0.018,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"inclusionai/ling-2.6-1t":{id:"inclusionai/ling-2.6-1t",name:"Ling-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-04-23",family:"ling"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen3.6 27B",contextWindow:262140,maxInputTokens:262140,maxTokens:262140,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.285,output:2.4,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo-V2.5",contextWindow:32000,maxInputTokens:32000,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.105,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Claude Opus Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-21",family:"claude-opus"},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"Ling-2.6-flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.01,output:0.03,cacheRead:0.002,cacheWrite:0},releaseDate:"2026-04-21",family:"ling"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.66,output:3.41,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2"},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen3.6 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.04,output:6.24,cacheRead:0,cacheWrite:1.3},releaseDate:"2026-04-20",family:"qwen"},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Hy3 preview",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.063,output:0.21,cacheRead:0.021,cacheWrite:0},releaseDate:"2026-04-20",family:"Hy"},"qwen/qwen3.6-35b-a3b":{id:"qwen/qwen3.6-35b-a3b",name:"Qwen3.6 35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-17",family:"qwen"},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-17",family:"grok"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"x-ai/grok-build-0.1":{id:"x-ai/grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-16",family:"grok-build"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.966,output:3.036,cacheRead:0.1794,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.06,output:0.33,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-26b-a4b-it:free":{id:"google/gemma-4-26b-a4b-it:free",name:"Gemma 4 26B A4B (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.12,output:0.35,cacheRead:0.09,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it:free":{id:"google/gemma-4-31b-it:free",name:"Gemma 4 31B (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0,cacheWrite:0.40625},releaseDate:"2026-04-02",family:"qwen"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:80000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.8,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"Grok 4.20",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-31",family:"grok"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"KAT-Coder-Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:80000,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27",family:"kat-coder"},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-20",family:"reka"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax-M2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.18,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT-5.4 nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral Small 4",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-03-16",family:"mistral-small"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"GLM-5-Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron 3 Super 120B A12B",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.085,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"Nemotron 3 Super (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"Seed-2.0-Lite",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10",family:"seed"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:50000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-03-04",family:"mercury"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"GPT-5.3 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"Seed-2.0-Mini",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26",family:"seed"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen3.5-Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.065,output:0.26,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25",family:"qwen"},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen3.5 122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.26,output:2.08,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen3.5 27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen3.5 35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:81920,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen3.5 9B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-02-19",family:"gemini-pro"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-02-19",family:"gemini-pro"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.26,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen3.5 397B-A17B",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.385,output:2.45,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.12,output:0.48,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.92,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen3 Max Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.78,output:3.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-09",family:"qwen"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.11,output:0.8,cacheRead:0.07,cacheWrite:0},releaseDate:"2026-02-04",family:"qwen"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxInputTokens:200000,maxTokens:8000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"Step 3.5 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-29"},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Solar Pro 3",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-01-27",family:"solar-pro"},"liquid/lfm-2.5-1.2b-thinking:free":{id:"liquid/lfm-2.5-1.2b-thinking:free",name:"LFM2.5-1.2B-Thinking (free)",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-20",family:"liquid"},"openai/gpt-audio":{id:"openai/gpt-audio",name:"GPT Audio",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"gpt"},"openai/gpt-audio-mini":{id:"openai/gpt-audio-mini",name:"GPT Audio Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"o-mini"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:202752,maxInputTokens:202752,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.375,output:2.025,cacheRead:0,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2"},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"Seed 1.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"seed"},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"Seed 1.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"seed"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"GLM-4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.75,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.083333},releaseDate:"2025-12-17",family:"gemini-flash"},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"Nemotron 3 Nano 30B A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:228000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"nvidia/nemotron-3-nano-30b-a3b:free":{id:"nvidia/nemotron-3-nano-30b-a3b:free",name:"Nemotron 3 Nano 30B A3B (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-10",family:"gpt-codex"},"relace/relace-search":{id:"relace/relace-search",name:"Relace Search",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-08"},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"GLM-4.6V",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.055,cacheWrite:0},releaseDate:"2025-12-08",family:"glm"},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Nova 2 Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"nova"},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Ministral 3 14B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.2,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Ministral 3 3B 2512",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.1,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Ministral 3 8B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.15,cacheRead:0.015,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Trinity Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.045,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"trinity-mini"},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2002,output:0.8001,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek V3.2",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2288,output:0.3432,cacheRead:0.02288,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:100352,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Nova Premier 1.0",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2.5,output:12.5,cacheRead:0.625,cacheWrite:0},releaseDate:"2025-10-31",family:"nova"},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:32000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-10-30",family:"mistral"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"nvidia/nemotron-nano-12b-v2-vl:free":{id:"nvidia/nemotron-nano-12b-v2-vl:free",name:"Nemotron Nano 12B 2 VL (free)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-28",family:"nemotron"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax-M2",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.255,output:1.02,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen3 VL 32B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.104,output:0.416,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-23",family:"qwen"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen3 VL 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.117,output:0.455,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14",family:"qwen"},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen3 VL 8B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.117,output:1.365,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14",family:"qwen"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen3 VL 30B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.13,output:0.52,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"qwen"},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen3 VL 30B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"qwen"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"GLM-4.6",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.43,output:1.74,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5 (latest)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek V3.2 Exp",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-29",family:"deepseek"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-2025",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.78,output:3.9,cacheRead:0.156,cacheWrite:0.975},releaseDate:"2025-09-23",family:"qwen"},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen3 VL 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.88,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen3 VL 235B A22B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.26,output:2.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.27,output:0.95,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen Plus 0728",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-08",family:"qwen"},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen Plus 0728 (thinking)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0.325},releaseDate:"2025-09-08",family:"qwen"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"Kimi K2 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:100352,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"kimi-k2"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen3-Next 80B-A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-next-80b-a3b-instruct:free":{id:"qwen/qwen3-next-80b-a3b-instruct:free",name:"Qwen3 Next 80B A3B Instruct (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen3-Next 80B-A3B (Thinking)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.0975,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen3 30B A3B Thinking 2507",contextWindow:81920,maxInputTokens:81920,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-28",family:"qwen"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.21,output:0.79,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"nvidia/nemotron-nano-9b-v2:free":{id:"nvidia/nemotron-nano-9b-v2:free",name:"Nemotron Nano 9B V2 (free)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral Medium 3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:262144,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-08-13",family:"mistral-medium"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"GLM-4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"ai21/jamba-large-1.7":{id:"ai21/jamba-large-1.7",name:"Jamba Large 1.7",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2,output:8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-08",family:"jamba"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4.1 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.03,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-120b:free":{id:"openai/gpt-oss-120b:free",name:"gpt-oss-120b (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.029,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b:free":{id:"openai/gpt-oss-20b:free",name:"gpt-oss-20b (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Codestral 2508",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-08-01",family:"codestral"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04815,output:0.19305,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen3 Coder Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.195,output:0.975,cacheRead:0.039,cacheWrite:0.24375},releaseDate:"2025-07-28",family:"qwen"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.13,output:0.85,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"nvidia/llama-3.3-nemotron-super-49b-v1.5":{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"Llama 3.3 Nemotron Super 49B v1.5",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"nemotron"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking 2507",contextWindow:131072,maxInputTokens:131072,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1495,output:1.495,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen3 Coder 480B A35B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.13,cacheWrite:0.8125},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder:free":{id:"qwen/qwen3-coder:free",name:"Qwen3 Coder 480B A35B (free)",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.09,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-21",family:"qwen"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"Kimi K2 0711",contextWindow:131072,maxInputTokens:131072,maxTokens:100352,capabilities:["tools","temperature"],pricing:{input:0.57,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi-k2"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral Small 3.2 24B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.075,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-20",family:"mistral-small"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.083333},releaseDate:"2025-06-17",family:"gemini-flash"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-17",family:"gemini-pro"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax M1",contextWindow:1e6,maxInputTokens:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17",family:"minimax"},"openai/o3-pro":{id:"openai/o3-pro",name:"o3-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-05",family:"gemini"},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"R1 0528",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.15,cacheRead:0.35,cacheWrite:0},releaseDate:"2025-05-28",family:"deepseek"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-05-07",family:"gemini-pro"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral Medium 3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Virtuoso Large",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.75,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-05"},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen3 14B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen3 30B A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.12,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen3 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.117,output:0.455,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"openai/o3":{id:"openai/o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"o4 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Llama 4 Maverick",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Llama 4 Scout",contextWindow:327680,maxInputTokens:327680,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen3 235B-A22B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.455,output:1.82,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen3 32B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.08,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen3-Coder 30B-A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:16384,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.24,output:0.9,cacheRead:0.135,cacheWrite:0},releaseDate:"2025-03-24",family:"deepseek"},"google/gemma-3-12b-it":{id:"google/gemma-3-12b-it",name:"Gemma 3 12B",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.05,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-13",family:"gemma"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma 3 27B",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.08,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-12",family:"gemma"},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Saba",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.6,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-02-17",family:"mistral"},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"o3 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2025-02-12",family:"o"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",contextWindow:64000,maxInputTokens:64000,maxTokens:16000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Llama-3.3-70B-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.32,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"meta-llama/llama-3.3-70b-instruct:free":{id:"meta-llama/llama-3.3-70b-instruct:free",name:"Llama 3.3 70B Instruct (free)",contextWindow:65536,maxInputTokens:65536,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Nova Lite 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-lite"},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Nova Micro 1.0",contextWindow:128000,maxInputTokens:128000,maxTokens:5120,capabilities:["tools","temperature"],pricing:{input:0.035,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-micro"},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Nova Pro 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-pro"},"openai/o1":{id:"openai/o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20",family:"gpt"},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-11-19",family:"mistral-large"},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"UnslopNemo 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-08"},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral Large 3",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:1.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2024-11-01",family:"mistral-large"},"qwen/qwen-2.5-7b-instruct":{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen2.5 7B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-16",family:"qwen"},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.36,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-19",family:"qwen"},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Command R",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30",family:"command-r"},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Command R+",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30",family:"command-r"},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Llama 3.1 Euryale 70B v2.2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.85,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-28",family:"llama"},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06",family:"gpt"},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Llama 3.1 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Llama 3.1 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.02,output:0.03,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"GPT-4o-mini (2024-07-18)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"o-mini"},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.02,output:0.03,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01",family:"mistral-nemo"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"openai/o4-mini-deep-research":{id:"openai/o4-mini-deep-research",name:"o4-mini-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o-mini"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mixtral 8x22B Instruct",contextWindow:65536,maxInputTokens:65536,maxTokens:65536,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-04-17",family:"mistral"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Claude 3 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude"},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-02-26",family:"mistral-large"},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"GPT-3.5 Turbo (older v0613)",contextWindow:4095,maxInputTokens:4095,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25",family:"gpt"},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"GPT-4 Turbo Preview",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25",family:"gpt"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.26,output:0.78,cacheRead:0.052,cacheWrite:0.325},releaseDate:"2024-01-25",family:"qwen"},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-08",family:"auto"},"openai/gpt-4":{id:"openai/gpt-4",name:"GPT-4",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"GPT-3.5 Turbo 16k",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:3,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2023-08-28",family:"gpt"},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"GPT-3.5-turbo",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-01",family:"gpt"}},requesty:{"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:180,cacheRead:30,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt-codex"},"anthropic/claude-sonnet-4-6":{id:"anthropic/claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic/claude-opus-4-6":{id:"anthropic/claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14",family:"gpt-codex"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:1},releaseDate:"2025-12-17"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"anthropic/claude-opus-4-5":{id:"anthropic/claude-opus-4-5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:4.5},releaseDate:"2025-11-18",family:"gemini-pro"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:9,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"anthropic/claude-haiku-4-5":{id:"anthropic/claude-haiku-4-5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:62000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-10-14",family:"gpt"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"anthropic/claude-sonnet-4-5":{id:"anthropic/claude-sonnet-4-5",name:"Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"xai/grok-4-fast":{id:"xai/grok-4-fast",name:"Grok 4 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0.2},releaseDate:"2025-09-19",family:"grok"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"xai/grok-4":{id:"xai/grok-4",name:"Grok 4",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:3},releaseDate:"2025-09-09",family:"grok"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:16000,maxInputTokens:16000,maxTokens:4000,capabilities:["tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4-1":{id:"anthropic/claude-opus-4-1",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.55},releaseDate:"2025-06-17",family:"gemini-flash"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:2.375},releaseDate:"2025-06-17",family:"gemini-pro"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"anthropic/claude-3-7-sonnet":{id:"anthropic/claude-3-7-sonnet",name:"Claude Sonnet 3.7",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"}},sapaicore:{"gpt-5.5":{id:"gpt-5.5",name:"gpt-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"anthropic--claude-4.7-opus":{id:"anthropic--claude-4.7-opus",name:"anthropic--claude-4.7-opus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"gpt-5.4":{id:"gpt-5.4",name:"gpt-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"anthropic--claude-4.6-sonnet":{id:"anthropic--claude-4.6-sonnet",name:"anthropic--claude-4.6-sonnet",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic--claude-4.6-opus":{id:"anthropic--claude-4.6-opus",name:"anthropic--claude-4.6-opus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"anthropic--claude-4.5-opus":{id:"anthropic--claude-4.5-opus",name:"anthropic--claude-4.5-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"anthropic--claude-4.5-haiku":{id:"anthropic--claude-4.5-haiku",name:"anthropic--claude-4.5-haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"anthropic--claude-4.5-sonnet":{id:"anthropic--claude-4.5-sonnet",name:"anthropic--claude-4.5-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"gpt-5":{id:"gpt-5",name:"gpt-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"gpt-5-mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"gpt-5-nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"gemini-2.5-flash-lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"anthropic--claude-4-opus":{id:"anthropic--claude-4-opus",name:"anthropic--claude-4-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic--claude-4-sonnet":{id:"anthropic--claude-4-sonnet",name:"anthropic--claude-4-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"gemini-2.5-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04-17",family:"gemini-flash"},"gpt-4.1":{id:"gpt-4.1",name:"gpt-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"gpt-4.1-mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"gemini-2.5-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-25",family:"gemini-pro"},"anthropic--claude-3.7-sonnet":{id:"anthropic--claude-3.7-sonnet",name:"anthropic--claude-3.7-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-24",family:"claude-sonnet"},"anthropic--claude-3.5-sonnet":{id:"anthropic--claude-3.5-sonnet",name:"anthropic--claude-3.5-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"anthropic--claude-3-haiku":{id:"anthropic--claude-3-haiku",name:"anthropic--claude-3-haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"anthropic--claude-3-sonnet":{id:"anthropic--claude-3-sonnet",name:"anthropic--claude-3-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-03-04",family:"claude-sonnet"},"anthropic--claude-3-opus":{id:"anthropic--claude-3-opus",name:"anthropic--claude-3-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2024-02-29",family:"claude-opus"}},"tencent-tokenhub":{hy3:{id:"hy3",name:"Hy3",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-07-06",family:"Hy"},"hy3-preview":{id:"hy3-preview",name:"Hy3 preview",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-20",family:"Hy"}},together:{"zai-org/GLM-5.2":{id:"zai-org/GLM-5.2",name:"GLM-5.2",contextWindow:262144,maxInputTokens:262144,maxTokens:164000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-06-16",family:"glm"},"moonshotai/Kimi-K2.7-Code":{id:"moonshotai/Kimi-K2.7-Code",name:"Kimi K2.7 Code",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.19,cacheWrite:0},releaseDate:"2026-06-14",family:"kimi-k2"},"MiniMaxAI/MiniMax-M3":{id:"MiniMaxAI/MiniMax-M3",name:"MiniMax-M3",contextWindow:524288,maxInputTokens:524288,maxTokens:250000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-12",family:"minimax"},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra 550B A55B",contextWindow:512300,maxInputTokens:512300,maxTokens:512300,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"Qwen/Qwen3.7-Max":{id:"Qwen/Qwen3.7-Max",name:"Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:500000,capabilities:["tools","temperature"],pricing:{input:1.25,output:3.75,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-21",family:"qwen"},"Qwen/Qwen3.6-Plus":{id:"Qwen/Qwen3.6-Plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:500000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30",family:"qwen"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:512000,maxInputTokens:512000,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:131000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2"},"google/gemma-4-31B-it":{id:"google/gemma-4-31B-it",name:"Gemma 4 31B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.39,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"gemma"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"Qwen/Qwen3.5-9B":{id:"Qwen/Qwen3.5-9B",name:"Qwen3.5 9B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.17,output:0.25,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-03",family:"qwen"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:130000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"essentialai/Rnj-1-Instruct":{id:"essentialai/Rnj-1-Instruct",name:"Rnj-1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05",family:"rnj"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-235B-A22B-Instruct-2507-tput":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507-tput",name:"Qwen3 235B A22B Instruct 2507 FP8",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"meta-llama/Llama-3.3-70B-Instruct-Turbo":{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:1.04,output:1.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"Qwen/Qwen2.5-7B-Instruct-Turbo":{id:"Qwen/Qwen2.5-7B-Instruct-Turbo",name:"Qwen 2.5 7B Instruct Turbo",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.3,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-19",family:"qwen"}},v0:{"v0-1.5-lg":{id:"v0-1.5-lg",name:"v0-1.5-lg",contextWindow:512000,maxInputTokens:512000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:15,output:75,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.5-md":{id:"v0-1.5-md",name:"v0-1.5-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.0-md":{id:"v0-1.0-md",name:"v0-1.0-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-22",family:"v0"}},"vercel-ai-gateway":{"anthropic/claude-fable-5":{id:"anthropic/claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-07-01",family:"claude-fable"},"anthropic/claude-sonnet-5":{id:"anthropic/claude-sonnet-5",name:"Claude Sonnet 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-29",family:"claude-sonnet"},"sakana/fugu-ultra":{id:"sakana/fugu-ultra",name:"Fugu Ultra",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-06-21",family:"aura"},"zai/glm-5.2":{id:"zai/glm-5.2",name:"GLM 5.2",contextWindow:1040000,maxInputTokens:1040000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-06-16",family:"glm"},"zai/glm-5.2-fast":{id:"zai/glm-5.2-fast",name:"GLM 5.2 Fast",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:10.25,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-06-16",family:"glm"},"moonshotai/kimi-k2.7-code-highspeed":{id:"moonshotai/kimi-k2.7-code-highspeed",name:"Kimi K2.7 Code High Speed",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.9,output:8,cacheRead:0.38,cacheWrite:0},releaseDate:"2026-06-15",family:"kimi-k2"},"moonshotai/kimi-k2.7-code":{id:"moonshotai/kimi-k2.7-code",name:"Kimi K2.7 Code",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.19,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"alibaba/qwen3.7-plus":{id:"alibaba/qwen3.7-plus",name:"Qwen 3.7 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.08,cacheWrite:0.5},releaseDate:"2026-06-02",family:"qwen3.7-plus"},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax M3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-05-31",family:"minimax-m3"},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"Step 3.7 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.15,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-05-28",family:"step"},"alibaba/qwen3.7-max":{id:"alibaba/qwen3.7-max",name:"Qwen 3.7 Max",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:3.75,cacheRead:0.25,cacheWrite:1.5625},releaseDate:"2026-05-21",family:"qwen"},"xai/grok-build-0.1":{id:"xai/grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-20",family:"grok-build"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini"},"xai/grok-4.3":{id:"xai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-30",family:"grok"},"mistral/mistral-medium-3.5":{id:"mistral/mistral-medium-3.5",name:"Mistral Medium Latest",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-29",family:"mistral-medium"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT 5.5",contextWindow:1e6,maxInputTokens:872000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT 5.5 Pro",contextWindow:1e6,maxInputTokens:872000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"alibaba/qwen3.6-27b":{id:"alibaba/qwen3.6-27b",name:"Qwen 3.6 27B",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen3.6"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo M2.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:131100,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo V2.5 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:131000,capabilities:["files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"alibaba/qwen-3.6-max-preview":{id:"alibaba/qwen-3.6-max-preview",name:"Qwen 3.6 Max Preview",contextWindow:240000,maxInputTokens:240000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.3,output:7.8,cacheRead:0.26,cacheWrite:1.625},releaseDate:"2026-04-20",family:"qwen"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi-k2"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"zai/glm-5.1":{id:"zai/glm-5.1",name:"GLM 5.1",contextWindow:202000,maxInputTokens:202000,maxTokens:202000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.3,output:4.3,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"alibaba/qwen3.6-plus":{id:"alibaba/qwen3.6-plus",name:"Qwen 3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.1,cacheWrite:0.625},releaseDate:"2026-04-02",family:"qwen"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262100,maxInputTokens:262100,maxTokens:80000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.25,output:0.8999999999999999,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"zai/glm-5v-turbo":{id:"zai/glm-5v-turbo",name:"GLM 5V Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kat Coder Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27",family:"kat-coder"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"Minimax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"minimax/minimax-m2.7-highspeed":{id:"minimax/minimax-m2.7-highspeed",name:"MiniMax M2.7 High Speed",contextWindow:204800,maxInputTokens:204800,maxTokens:131100,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"MiMo V2 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT 5.4 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT 5.4 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"zai/glm-5-turbo":{id:"zai/glm-5-turbo",name:"GLM 5 Turbo",contextWindow:202800,maxInputTokens:202800,maxTokens:131100,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15",family:"glm"},"xai/grok-4.20-multi-agent-beta":{id:"xai/grok-4.20-multi-agent-beta",name:"Grok 4.20 Multi Agent Beta",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-non-reasoning-beta":{id:"xai/grok-4.20-non-reasoning-beta",name:"Grok 4.20 Beta Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.4,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-reasoning-beta":{id:"xai/grok-4.20-reasoning-beta",name:"Grok 4.20 Beta Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-multi-agent":{id:"xai/grok-4.20-multi-agent",name:"Grok 4.20 Multi-Agent",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-10",family:"grok"},"xai/grok-4.20-non-reasoning":{id:"xai/grok-4.20-non-reasoning",name:"Grok 4.20 Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-10",family:"grok"},"xai/grok-4.20-reasoning":{id:"xai/grok-4.20-reasoning",name:"Grok 4.20 Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-10",family:"grok"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT 5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT 5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-03-03",family:"gemini"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"GPT-5.3 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"alibaba/qwen3.5-flash":{id:"alibaba/qwen3.5-flash",name:"Qwen 3.5 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.001,cacheWrite:0.125},releaseDate:"2026-02-24",family:"qwen"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.024999999999999998,cacheWrite:0},releaseDate:"2026-02-24",family:"mercury"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"alibaba/qwen3.5-plus":{id:"alibaba/qwen3.5-plus",name:"Qwen 3.5 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2.4,cacheRead:0.04,cacheWrite:0.5},releaseDate:"2026-02-16",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"minimax/minimax-m2.5-highspeed":{id:"minimax/minimax-m2.5-highspeed",name:"MiniMax M2.5 High Speed",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"zai/glm-5":{id:"zai/glm-5",name:"GLM-5",contextWindow:202800,maxInputTokens:202800,maxTokens:131100,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:3.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT 5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun 3.5 Flash",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29",family:"step"},"arcee-ai/trinity-large-preview":{id:"arcee-ai/trinity-large-preview",name:"Trinity Large Preview",contextWindow:131000,maxInputTokens:131000,maxTokens:131000,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"trinity"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-26",family:"kimi-k2"},"alibaba/qwen3-max-thinking":{id:"alibaba/qwen3-max-thinking",name:"Qwen 3 Max Thinking",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-01-23",family:"qwen"},"zai/glm-4.7-flash":{id:"zai/glm-4.7-flash",name:"GLM 4.7 Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm"},"zai/glm-4.7-flashx":{id:"zai/glm-4.7-flashx",name:"GLM 4.7 FlashX",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-12-23",family:"minimax"},"minimax/minimax-m2.1-lightning":{id:"minimax/minimax-m2.1-lightning",name:"MiniMax M2.1 Lightning",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.4,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-12-23",family:"minimax"},"zai/glm-4.7":{id:"zai/glm-4.7",name:"GLM 4.7",contextWindow:200000,maxInputTokens:200000,maxTokens:120000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.12,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-18",family:"gpt-codex"},"google/gemini-3-flash":{id:"google/gemini-3-flash",name:"Gemini 3 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"MiMo V2 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT 5.2 ",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"mistral/devstral-2":{id:"mistral/devstral-2",name:"Devstral 2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"mistral/devstral-small-2":{id:"mistral/devstral-small-2",name:"Devstral Small 2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"deepseek/deepseek-v3.2-thinking":{id:"deepseek/deepseek-v3.2-thinking",name:"DeepSeek V3.2 Thinking",contextWindow:128000,maxInputTokens:128000,maxTokens:8000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.62,output:1.85,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT 5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-19",family:"gpt"},"xai/grok-4.1-fast-non-reasoning":{id:"xai/grok-4.1-fast-non-reasoning",name:"Grok 4.1 Fast Non-Reasoning",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-11-19",family:"grok"},"xai/grok-4.1-fast-reasoning":{id:"xai/grok-4.1-fast-reasoning",name:"Grok 4.1 Fast Reasoning",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-11-19",family:"grok"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini-pro"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-instant":{id:"openai/gpt-5.1-instant",name:"GPT-5.1 Instant",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-thinking":{id:"openai/gpt-5.1-thinking",name:"GPT 5.1 Thinking",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:216144,maxInputTokens:216144,maxTokens:216144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.47,output:2,cacheRead:0.141,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:65536,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"nvidia/nemotron-nano-12b-v2-vl":{id:"nvidia/nemotron-nano-12b-v2-vl",name:"Nvidia Nemotron Nano 12B V2 VL",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-28",family:"nemotron"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax M2",contextWindow:205000,maxInputTokens:205000,maxTokens:205000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-10-27",family:"minimax"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 pro",contextWindow:400000,maxInputTokens:128000,maxTokens:272000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt"},"zai/glm-4.6":{id:"zai/glm-4.6",name:"GLM 4.6",contextWindow:200000,maxInputTokens:200000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v":{id:"zai/glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxInputTokens:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v-flash":{id:"zai/glm-4.6v-flash",name:"GLM-4.6V-Flash",contextWindow:128000,maxInputTokens:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"alibaba/qwen3-235b-a22b-thinking":{id:"alibaba/qwen3-235b-a22b-thinking",name:"Qwen3 235B A22B Thinking 2507",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.4,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"alibaba/qwen3-max":{id:"alibaba/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"alibaba/qwen3-vl-instruct":{id:"alibaba/qwen3-vl-instruct",name:"Qwen3 VL Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:129024,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:1.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"alibaba/qwen3-vl-thinking":{id:"alibaba/qwen3-vl-thinking",name:"Qwen3 VL Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.4,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:1,cacheRead:0.135,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"alibaba/qwen3-next-80b-a3b-instruct":{id:"alibaba/qwen3-next-80b-a3b-instruct",name:"Qwen3 Next 80B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.15,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"alibaba/qwen3-next-80b-a3b-thinking":{id:"alibaba/qwen3-next-80b-a3b-thinking",name:"Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"alibaba/qwen3-max-preview":{id:"alibaba/qwen3-max-preview",name:"Qwen3 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-05",family:"qwen"},"bytedance/seed-1.6":{id:"bytedance/seed-1.6",name:"Seed 1.6",contextWindow:256000,maxInputTokens:256000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-01",family:"seed"},"bytedance/seed-1.8":{id:"bytedance/seed-1.8",name:"Seed 1.8",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-01",family:"seed"},"meituan/longcat-flash-chat":{id:"meituan/longcat-flash-chat",name:"LongCat Flash Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:1e5,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-01",family:"longcat"},"deepseek/deepseek-v3.1":{id:"deepseek/deepseek-v3.1",name:"DeepSeek-V3.1",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:1.7,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"Nvidia Nemotron Nano 9B V2",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.06,output:0.23,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"zai/glm-4.5v":{id:"zai/glm-4.5v",name:"GLM 4.5V",contextWindow:66000,maxInputTokens:66000,maxTokens:16000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-chat":{id:"openai/gpt-5-chat",name:"GPT-5 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:122880,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"alibaba/qwen3-coder-30b-a3b":{id:"alibaba/qwen3-coder-30b-a3b",name:"Qwen 3 Coder 30B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-31",family:"qwen"},"zai/glm-4.5":{id:"zai/glm-4.5",name:"GLM 4.5",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"zai/glm-4.5-air":{id:"zai/glm-4.5-air",name:"GLM 4.5 Air",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"alibaba/qwen3-coder-plus":{id:"alibaba/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"alibaba/qwen3-coder":{id:"alibaba/qwen3-coder",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.5,output:7.5,cacheRead:0.3,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"alibaba/qwen3-coder-next":{id:"alibaba/qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"Kimi K2 Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.57,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi-k2"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2025-06-26",family:"o"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-pro"},"openai/o3-pro":{id:"openai/o3-pro",name:"o3 Pro",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"mistral/devstral-small":{id:"mistral/devstral-small",name:"Devstral Small 1.1",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-21",family:"devstral"},"mistral/mistral-medium":{id:"mistral/mistral-medium",name:"Mistral Medium 3.1",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"alibaba/qwen-3-14b":{id:"alibaba/qwen-3-14b",name:"Qwen3-14B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.12,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"alibaba/qwen-3-235b":{id:"alibaba/qwen-3-235b",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"alibaba/qwen-3-30b":{id:"alibaba/qwen-3-30b",name:"Qwen3-30B-A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.12,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"alibaba/qwen-3-32b":{id:"alibaba/qwen-3-32b",name:"Qwen 3.32B",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.16,output:0.64,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"openai/o3":{id:"openai/o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"meta/llama-4-maverick":{id:"meta/llama-4-maverick",name:"Llama-4-Maverick-17B-128E-Instruct-FP8",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta/llama-4-scout":{id:"meta/llama-4-scout",name:"Llama-4-Scout-17B-16E-Instruct-FP8",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"mistral/magistral-medium":{id:"mistral/magistral-medium",name:"Magistral Medium (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:2,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-medium"},"mistral/magistral-small":{id:"mistral/magistral-small",name:"Magistral Small",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-small"},"cohere/command-a":{id:"cohere/command-a",name:"Command A",contextWindow:256000,maxInputTokens:256000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-13",family:"command"},"inception/mercury-coder-small":{id:"inception/mercury-coder-small",name:"Mercury Coder Small Beta",contextWindow:32000,maxInputTokens:32000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-26",family:"mercury"},"perplexity/sonar":{id:"perplexity/sonar",name:"Sonar",contextWindow:127000,maxInputTokens:127000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar"},"perplexity/sonar-pro":{id:"perplexity/sonar-pro",name:"Sonar Pro",contextWindow:200000,maxInputTokens:200000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar-pro"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"deepseek/deepseek-v3":{id:"deepseek/deepseek-v3",name:"DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.27,output:1.12,cacheRead:0.135,cacheWrite:0},releaseDate:"2024-12-26",family:"deepseek"},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},"meta/llama-3.3-70b":{id:"meta/llama-3.3-70b",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"openai/o1":{id:"openai/o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"amazon/nova-lite":{id:"amazon/nova-lite",name:"Nova Lite",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon/nova-micro":{id:"amazon/nova-micro",name:"Nova Micro",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon/nova-pro":{id:"amazon/nova-pro",name:"Nova Pro",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Claude 3.5 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-11-04",family:"claude-haiku"},"mistral/pixtral-large":{id:"mistral/pixtral-large",name:"Pixtral Large (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01",family:"pixtral"},"mistral/ministral-3b":{id:"mistral/ministral-3b",name:"Ministral 3B (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"mistral/ministral-8b":{id:"mistral/ministral-8b",name:"Ministral 8B (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"meta/llama-3.2-11b":{id:"meta/llama-3.2-11b",name:"Llama 3.2 11B Vision Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.16,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"meta/llama-3.2-90b":{id:"meta/llama-3.2-90b",name:"Llama 3.2 90B Vision Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"mistral/mistral-small":{id:"mistral/mistral-small",name:"Mistral Small (latest)",contextWindow:32000,maxInputTokens:32000,maxTokens:4000,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-17",family:"mistral-small"},"mistral/pixtral-12b":{id:"mistral/pixtral-12b",name:"Pixtral 12B",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-01",family:"pixtral"},"meta/llama-3.1-70b":{id:"meta/llama-3.1-70b",name:"Llama 3.1 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta/llama-3.1-8b":{id:"meta/llama-3.1-8b",name:"Llama 3.1 8B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"mistral/mistral-nemo":{id:"mistral/mistral-nemo",name:"Mistral Nemo",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-18",family:"mistral-nemo"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"mistral/codestral":{id:"mistral/codestral",name:"Codestral (latest)",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-29",family:"codestral"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},vertex:{"claude-sonnet-5@default":{id:"claude-sonnet-5@default",name:"Claude Sonnet 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"claude-opus-4-8@default":{id:"claude-opus-4-8@default",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini-flash"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"claude-opus-4-7@default":{id:"claude-opus-4-7@default",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"claude-sonnet-4-6@default":{id:"claude-sonnet-4-6@default",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"zai-org/glm-5-maas":{id:"zai-org/glm-5-maas",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"claude-opus-4-6@default":{id:"claude-opus-4-6@default",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"zai-org/glm-4.7-maas":{id:"zai-org/glm-4.7-maas",name:"GLM-4.7",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-06",family:"glm"},"deepseek-ai/deepseek-v3.2-maas":{id:"deepseek-ai/deepseek-v3.2-maas",name:"DeepSeek V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.56,output:1.68,cacheRead:0.056,cacheWrite:0},releaseDate:"2025-12-17",family:"deepseek"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"moonshotai/kimi-k2-thinking-maas":{id:"moonshotai/kimi-k2-thinking-maas",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-13",family:"kimi-thinking"},"claude-opus-4-5@20251101":{id:"claude-opus-4-5@20251101",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5@20251001":{id:"claude-haiku-4-5@20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5@20250929":{id:"claude-sonnet-4-5@20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.383},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"deepseek-ai/deepseek-v3.1-maas":{id:"deepseek-ai/deepseek-v3.1-maas",name:"DeepSeek V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:1.7,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-28",family:"deepseek"},"qwen/qwen3-235b-a22b-instruct-2507-maas":{id:"qwen/qwen3-235b-a22b-instruct-2507-maas",name:"Qwen3 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-13",family:"qwen"},"openai/gpt-oss-120b-maas":{id:"openai/gpt-oss-120b-maas",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.09,output:0.36,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b-maas":{id:"openai/gpt-oss-20b-maas",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.25,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.383},releaseDate:"2025-06-17",family:"gemini-flash"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-pro"},"meta/llama-3.3-70b-instruct-maas":{id:"meta/llama-3.3-70b-instruct-maas",name:"Llama 3.3 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"llama"},"meta/llama-4-maverick-17b-128e-instruct-maas":{id:"meta/llama-4-maverick-17b-128e-instruct-maas",name:"Llama 4 Maverick 17B 128E Instruct",contextWindow:524288,maxInputTokens:524288,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.35,output:1.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"llama"}},wandb:{"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8":{id:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",name:"NVIDIA Nemotron 3 Super 120B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5-FP8":{id:"zai-org/GLM-5-FP8",name:"GLM 5",contextWindow:200000,maxInputTokens:200000,maxTokens:200000,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:2.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi-k2"},"deepseek-ai/DeepSeek-V3.1":{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1",contextWindow:161000,maxInputTokens:161000,maxTokens:161000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.55,output:1.65,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"OpenPipe/Qwen3-14B-Instruct":{id:"OpenPipe/Qwen3-14B-Instruct",name:"OpenPipe Qwen3 14B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.05,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"meta-llama/Llama-4-Scout-17B-16E-Instruct":{id:"meta-llama/Llama-4-Scout-17B-16E-Instruct",name:"Llama 4 Scout 17B 16E Instruct",contextWindow:64000,maxInputTokens:64000,maxTokens:64000,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-31",family:"llama"},"microsoft/Phi-4-mini-instruct":{id:"microsoft/Phi-4-mini-instruct",name:"Phi-4-mini-instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.08,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11",family:"phi"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.71,output:0.71,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"meta-llama/Llama-3.1-70B-Instruct":{id:"meta-llama/Llama-3.1-70B-Instruct",name:"Llama 3.1 70B",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.8,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta-llama/Llama-3.1-8B-Instruct":{id:"meta-llama/Llama-3.1-8B-Instruct",name:"Meta-Llama-3.1-8B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},xai:{"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-17",family:"grok"},"grok-build-0.1":{id:"grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-16",family:"grok-build"},"grok-4.20-0309-non-reasoning":{id:"grok-4.20-0309-non-reasoning",name:"Grok 4.20 (Non-Reasoning)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"grok-4.20-0309-reasoning":{id:"grok-4.20-0309-reasoning",name:"Grok 4.20 (Reasoning)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"}},xiaomi:{"mimo-v2.5-pro-ultraspeed":{id:"mimo-v2.5-pro-ultraspeed",name:"MiMo-V2.5-Pro-UltraSpeed",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.305,output:2.61,cacheRead:0.0108,cacheWrite:0},releaseDate:"2026-06-08",family:"mimo"},"mimo-v2.5":{id:"mimo-v2.5",name:"MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"mimo-v2.5-pro":{id:"mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"}},zai:{"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",contextWindow:1e6,maxInputTokens:1e6,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-5":{id:"glm-5",name:"GLM-5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"glm-4.7-flash":{id:"glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7-flashx":{id:"glm-4.7-flashx",name:"GLM-4.7-FlashX",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.07,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.6v":{id:"glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-08",family:"glm"},"glm-4.6":{id:"glm-4.6",name:"GLM-4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"glm-4.5v":{id:"glm-4.5v",name:"GLM-4.5V",contextWindow:64000,maxInputTokens:64000,maxTokens:16384,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"glm-4.5":{id:"glm-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"glm-4.5-flash":{id:"glm-4.5-flash",name:"GLM-4.5-Flash",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-flash"}},"zai-coding-plan":{"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",contextWindow:1e6,maxInputTokens:1e6,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"}}}};var dy=[{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-native"},{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-codex-cli"},{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-codex"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic",runtimeProviderId:"claude-code"},{modelsDevKey:"google",generatedProviderId:"gemini"},{modelsDevKey:"deepseek",generatedProviderId:"deepseek",runtimeProviderId:"deepseek"},{modelsDevKey:"xai",generatedProviderId:"xai"},{modelsDevKey:"togetherai",generatedProviderId:"together",runtimeProviderId:"together"},{modelsDevKey:"sap-ai-core",generatedProviderId:"sapaicore",runtimeProviderId:"sapaicore"},{modelsDevKey:"ollama",runtimeProviderId:"ollama-cloud"},{modelsDevKey:"ollama-cloud",generatedProviderId:"ollama"},{modelsDevKey:"fireworks-ai",generatedProviderId:"fireworks",runtimeProviderId:"fireworks"},{modelsDevKey:"groq",generatedProviderId:"groq",runtimeProviderId:"groq"},{modelsDevKey:"cerebras",generatedProviderId:"cerebras",runtimeProviderId:"cerebras"},{modelsDevKey:"sambanova",generatedProviderId:"sambanova",runtimeProviderId:"sambanova"},{modelsDevKey:"nebius",generatedProviderId:"nebius",runtimeProviderId:"nebius"},{modelsDevKey:"huggingface",generatedProviderId:"huggingface",runtimeProviderId:"huggingface"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway",runtimeProviderId:"dify"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter",runtimeProviderId:"cline"},{modelsDevKey:"aihubmix",generatedProviderId:"aihubmix",runtimeProviderId:"aihubmix"},{modelsDevKey:"hicap",runtimeProviderId:"hicap"},{modelsDevKey:"nous-research",runtimeProviderId:"nousResearch"},{modelsDevKey:"huawei-cloud-maas",runtimeProviderId:"huawei-cloud-maas"},{modelsDevKey:"baseten",generatedProviderId:"baseten",runtimeProviderId:"baseten"},{modelsDevKey:"zai-coding-plan",generatedProviderId:"zai-coding-plan"},{modelsDevKey:"google-vertex",generatedProviderId:"vertex"},{modelsDevKey:"lmstudio",generatedProviderId:"lmstudio"},{modelsDevKey:"zai",generatedProviderId:"zai"},{modelsDevKey:"requesty",generatedProviderId:"requesty"},{modelsDevKey:"amazon-bedrock",generatedProviderId:"bedrock"},{modelsDevKey:"moonshotai",generatedProviderId:"moonshot"},{modelsDevKey:"minimax",generatedProviderId:"minimax"},{modelsDevKey:"wandb",generatedProviderId:"wandb"},{modelsDevKey:"kilo",generatedProviderId:"kilo"},{modelsDevKey:"xiaomi",generatedProviderId:"xiaomi"},{modelsDevKey:"tencent-tokenhub",generatedProviderId:"tencent-tokenhub"},{modelsDevKey:"v0",generatedProviderId:"v0"}];function ly(e){return[...new Set(e)]}var cy=Object.fromEntries(dy.flatMap((e)=>e.generatedProviderId?[[e.modelsDevKey,e.generatedProviderId]]:[]));function bT(e){let t=dy.flatMap((n)=>{if(!n.generatedProviderId)return[];if(n.generatedProviderId===e||n.runtimeProviderId===e)return[n.generatedProviderId];return[]});if(e==="nousResearch")return ly([...t,"nousresearch",e]);return ly([...t,e])}we();var Iz="cline-pass",my={contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0}};function xz(e,t){if(!t)return my;let n=e.id.split("/").at(-1)??e.id;return t[n]||my}function zz(e){let t={};for(let n of Object.values(e)){let r=n.id.split("/").at(-1)??n.id;t[r]=n}return t}function fy(e,t){let n=e.clinePass??[];if(n.length===0)return{};let r={},i=zz(t);if(n.forEach((a)=>{let o=xz(a,i);r[a.id]={name:a.name,...o,id:a.id,description:a.description}}),Object.keys(r).length===0)return{};return{[Iz]:r}}async function py(e=fetch){let t=`${st().apiBaseUrl}/api/v1/ai/cline/recommended-models`,n=await e(t);if(!n.ok)throw Error(`Failed to load Cline recommended models from ${t}: HTTP ${n.status}`);return await n.json()}var Uz=4096,Tz=4096;function vy(e){if(!e)return Number.NEGATIVE_INFINITY;let t=Date.parse(e);return Number.isNaN(t)?Number.NEGATIVE_INFINITY:t}function hr(e){return Object.fromEntries(Object.entries(e).sort(([t,n],[r,i])=>{let a=vy(n.releaseDate),o=vy(i.releaseDate);if(a!==o)return o-a;return t.localeCompare(r)}))}function jz(e){let t=[];if(e.modalities?.input?.includes("image"))t.push("images");if(e.modalities?.input?.includes("pdf"))t.push("files");if(e.tool_call===!0)t.push("tools");if(e.reasoning===!0)t.push("reasoning");if(e.structured_output===!0)t.push("structured_output");if(e.temperature===!0)t.push("temperature");if(e.cost?.cache_read&&e.cost?.cache_read>=0||e.cost?.cache_write&&e.cost?.cache_write>=0)t.push("prompt-cache");return Array.from(new Set(t))}function Oz(e){if(e==="active"||e==="preview"||e==="deprecated"||e==="legacy")return e;return}function Ez(e){let t=e?.context,n=e?.input;if(typeof t==="number"&&typeof n==="number")return Math.min(t,n);return n??t??Uz}function Nz(e,t){let n=Ez(t.limit),r=t.limit?.output??Tz,i=t.limit?.context;return{id:e,name:t.name||e,contextWindow:i,maxInputTokens:n,maxTokens:Math.floor(r),capabilities:jz(t),pricing:{input:t.cost?.input??0,output:t.cost?.output??0,cacheRead:t.cost?.cache_read??0,cacheWrite:t.cost?.cache_write??0},status:Oz(t.status),releaseDate:t.release_date,family:t.family}}function Pz(e){return e.status==="deprecated"}function Az(e){let t={};for(let[n,r]of Object.entries(cy)){let i=e[n];if(!i?.models)continue;let a={};for(let[o,s]of Object.entries(i.models)){if(s.tool_call!==!0||Pz(s))continue;a[o]=Nz(o,s)}if(Object.keys(a).length>0)t[r]=hr(a)}return t}async function Dz(e,t=fetch){let n=await t(e);if(!n.ok)throw Error(`Failed to load model catalog from ${e}: HTTP ${n.status}`);let r=await n.json();return Az(r)}async function IT(e,t=fetch){let n={},[r,i]=await Promise.all([Dz(e,t).catch(()=>n),py(t).catch(()=>{return})]),a=i?fy(i,r.openrouter??{}):{};return{...r,...a}}var hy,gy=new Map;function TT(){return hy??=Object.fromEntries(Object.entries(Os.providers).map(([e,t])=>[e,hr(t)])),hy}function yy(e){let t=gy.get(e);if(t)return t;let n=hr(Os.providers[e]??{});return gy.set(e,n),n}var Es=[{canonicalPrefix:"zai/",aliasPrefix:"z-ai/"}];function by(e,t){return t.some((n)=>e.startsWith(n.canonicalPrefix))}function $y(e,t){return Object.fromEntries(Object.entries(e).filter(([n])=>{for(let r of t){if(!n.startsWith(r.aliasPrefix))continue;if(`${r.canonicalPrefix}${n.slice(r.aliasPrefix.length)}`in e)return!1}return!0}))}we();var Zz="the user is not subscribed to required model plan",Cz="no access to clinepass subscription models yet. subscribe to clinepass",Rz="organization accounts cannot use individual model inference subscriptions";function _y(){return`${new URL("/dashboard/subscription?personal=true",st().appBaseUrl).toString()}`}function ky(){return`No access to ClinePass subscription models yet. Subscribe to ClinePass, the low cost open weights model coding plan: ${_y()}`}class Ai extends Error{providerId;constructor(e){super(ky());this.name="ClineNotSubscribedError",this.providerId=e}}function wy(){return"Organization accounts cannot use ClinePass subscriptions. Go to /account -> change account to switch to your personal account for ClinePass"}class Di extends Error{providerId;constructor(e){super(wy());this.name="ClineOrgIndividualInferenceSubscriptionError",this.providerId=e}}function Lz(e){return e instanceof Ai}function Jz(e){return e instanceof Di}function Ns(e){let t=e.trim().toLowerCase();return t.includes(Zz)||t.includes(Cz)}function Ps(e){return e.toLowerCase().includes(Rz)}var Mz=new Set(["gpt-5.5","gpt-5.4","gpt-5.4-mini"]);function Fz(e){if(Mz.has(e))return!0;let t=e.match(/^gpt-(\d+\.\d+)/);return t?Number.parseFloat(t[1])>5.4:!1}function Bz(e,t){if(!e.includes("gpt-5.5"))return t;return{...t,contextWindow:400000,maxInputTokens:272000,maxTokens:128000}}function Sy(e){return Object.fromEntries(Object.entries(e).filter(([t])=>Fz(t)).map(([t,n])=>[t,Bz(t,n)]))}Zt();bs();$s();var Wz="https://code.aiservice.us-chicago-1.oci.oraclecloud.com/20250206/app/litellm",Kz="anthropic/claude-sonnet-4.6",gr="cline-pass",Hz="gpt-5.4",Gz={stickySession:{transport:"json-body",field:"session_id",metadataKey:"sessionId"}},yr={path:"apiKey",label:"API Key",type:"password",placeholder:"Enter API key...",description:"API key issued by the provider.",secret:!0},xy={path:"baseUrl",label:"Base URL",type:"url",placeholder:"https://...",description:"Base endpoint used for provider requests."},Xz=[{path:"gcp.projectId",label:"Google Cloud Project ID",type:"text",placeholder:"my-gcp-project",description:"Google Cloud project that owns the Vertex AI resources.",required:!0},{path:"gcp.region",label:"Vertex Region",type:"text",placeholder:"us-central1",description:"Vertex AI location to run models in.",defaultValue:"us-central1"},{...yr,label:"API Key",description:"Optional Google API key for Gemini models. Vertex Anthropic models use Google Cloud credentials."}],Yz=[{path:"aws.authentication",label:"Authentication",type:"select",description:"Credential source for Amazon Bedrock requests.",options:[{label:"AWS SDK / IAM",value:"iam"},{label:"AWS Profile",value:"profile"},{label:"API Key",value:"api-key"}],defaultValue:"iam"},{path:"aws.region",label:"AWS Region",type:"text",placeholder:"us-east-1",description:"AWS region for Bedrock runtime requests."},{path:"aws.profile",label:"AWS Profile",type:"text",placeholder:"default",description:"Named AWS profile when using profile authentication."},{path:"aws.accessKey",label:"Access Key ID",type:"password",placeholder:"AKIA...",secret:!0},{path:"aws.secretKey",label:"Secret Access Key",type:"password",secret:!0},{path:"aws.sessionToken",label:"Session Token",type:"password",secret:!0},{path:"apiKey",label:"Bedrock API Key",type:"password",description:"Optional Bedrock bearer token for API key authentication.",secret:!0},{path:"aws.endpoint",label:"Endpoint URL",type:"url",placeholder:"https://bedrock-runtime.us-east-1.amazonaws.com",description:"Optional custom Bedrock runtime endpoint."},{path:"aws.useCrossRegionInference",label:"Cross-Region Inference",type:"boolean"},{path:"aws.useGlobalInference",label:"Global Inference",type:"boolean"},{path:"aws.usePromptCache",label:"Prompt Cache",type:"boolean"}],Qz=[{path:"oca.mode",label:"OCA Mode",type:"select",options:[{label:"External",value:"external"},{label:"Internal",value:"internal"}],defaultValue:"external"},yr,{path:"oca.usePromptCache",label:"Prompt Cache",type:"boolean"}],Iy=[yr,xy,{path:"apiLine",label:"API Line",type:"select",description:"Regional API line for Qwen routing.",options:[{label:"International",value:"international"},{label:"China",value:"china"}]}];function Vz(e){let t=[];if(e.apiKeyEnv?.length)t.push(yr);if(e.defaults?.baseUrl?.trim())t.push(xy);return t}function qz(e){return Object.fromEntries(Object.entries(e).map(([t,n])=>[t,{...n}]))}function e1(e){if(!e?.length)return;return[...new Set(e)]}function zy(e){return e1([...e.capabilities??[],...e.popular!==void 0?["popular"]:[]])}function Uy(e){let t=e.configFields??Vz(e),n={...e.metadata,configFields:t};if(e.popular!==void 0)n.popularRank=e.popular;return n}function Lt(e){return qz(yy(e))}function t1(e){let t=Object.keys(Lt(e));if(!t.length)return"";return t[0]}function As(e){let t=Object.entries(Lt("anthropic")).find(([n])=>e(n));if(t)return t[1];return{id:"sonnet",name:"Claude Sonnet",capabilities:["streaming","reasoning"]}}function i1(){function e(t){return{...t==="opus"?As((r)=>r.includes("opus")):t==="haiku"?As((r)=>r.includes("haiku")):As((r)=>r.includes("sonnet")),id:t,name:`Claude ${t.charAt(0).toUpperCase()}${t.slice(1)}`}}return{opus:e("opus"),sonnet:e("sonnet"),haiku:e("haiku")}}function n1(){return Sy(Lt("openai-native"))}function r1(){let e=Object.fromEntries(Object.entries(Lt("vercel-ai-gateway")).filter(([t])=>by(t,Es)));return $y({...Lt("openrouter"),...e},Es)}function a1(e,t){let n={id:e,name:e};if(t?.family==="openai-compatible")n.contextWindow=128000,n.maxInputTokens=128000,n.capabilities=["streaming","tools","images"];if(t?.id==="qwen"||t?.id==="qwen-code")n.family="qwen",n.capabilities=["prompt-cache"];return n}function o1(e,t){let n=new Set(["text"]);for(let i of t.capabilities??[])switch(i){case"tools":n.add("tools");break;case"reasoning":n.add("reasoning");break;case"prompt-cache":n.add("prompt-cache");break;case"images":n.add("images");break;case"structured_output":n.add("structured-output");break}let r={};if(t.family)r.family=t.family;if(t.pricing)r.pricing=t.pricing;if(t.status)r.status=t.status;if(t.releaseDate)r.releaseDate=t.releaseDate;if(typeof t.metadata?.reasoningDefaultOn==="boolean")r.reasoningDefaultOn=t.metadata.reasoningDefaultOn;return{id:t.id,name:t.name??t.id,providerId:e,description:t.description,contextWindow:t.contextWindow,maxInputTokens:t.maxInputTokens,maxOutputTokens:t.maxTokens,capabilities:[...n],metadata:Object.keys(r).length>0?r:void 0}}function s1(e){if(e.client==="openai")return"openai-responses";switch(e.family){case"openai":return"openai-responses";case"anthropic":case"bedrock":return"anthropic";case"google":case"vertex":return"gemini";default:return"openai-chat"}}function u1(e){if(e.protocol==="openai-responses")return"openai";switch(e.family){case"openai":return"openai";case"anthropic":return"anthropic";case"google":return"gemini";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":case"claude-code":case"openai-codex":case"opencode":case"dify":case"sap-ai-core":return"ai-sdk-community";default:return"openai-compatible"}}function Ty(e){return{id:e.id,name:e.name,description:e.description??"Cline API endpoint",family:"openai-compatible",popular:e.popular,capabilities:["reasoning","prompt-cache","tools","oauth"],modelsProviderId:e.modelsProviderId,modelsFactory:e.modelsFactory,defaultModelId:e.defaultModelId,apiKeyEnv:["CLINE_API_KEY"],defaults:{get baseUrl(){return`${st().apiBaseUrl}/api/v1`},...e.defaults},metadata:{...rr,...e.metadata}}}async function jy(e,t){if(e.status!==403)return;let n=await e.clone().text().catch(()=>"");if(Ps(n))throw new Di(t);if(Ns(n))throw new Ai(t)}var l1=Ty({id:"cline",name:"Cline Usage-Billing",popular:1,modelsFactory:r1,defaultModelId:Kz,defaults:{options:{onResponseError:async(e)=>{await jy(e,"cline")}}}}),d1=Ty({id:gr,name:"ClinePass",popular:2,description:"Cline API endpoint with ClinePass models",modelsProviderId:gr,defaultModelId:t1(gr),metadata:{usageCostDisplay:"subscription"},defaults:{options:{onResponseError:async(e)=>{await jy(e,gr)}}}}),c1=[{id:"openai-compatible",name:"OpenAI Compatible",description:"OpenAI-compatible chat completions endpoint",family:"openai-compatible",popular:35,capabilities:["tools"],defaultModelId:"gpt-4o",apiKeyEnv:["OPENAI_API_KEY"],defaults:{baseUrl:"https://api.openai.com/v1"}},l1,d1,{id:"deepseek",name:"DeepSeek",description:"Advanced AI models with reasoning capabilities",family:"openai-compatible",popular:10,capabilities:["reasoning","prompt-cache"],defaultModelId:"deepseek-v4-flash",apiKeyEnv:["DEEPSEEK_API_KEY"],defaults:{baseUrl:"https://api.deepseek.com/v1"}},{id:"xai",name:"xAI",description:"Creator of Grok AI assistant",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"grok-4.20-0309-non-reasoning",apiKeyEnv:["XAI_API_KEY"],defaults:{baseUrl:"https://api.x.ai/v1"}},{id:"together",name:"Together AI",description:"Fast inference for open-source models",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"Qwen/Qwen3.5-397B-A17B",apiKeyEnv:["TOGETHER_API_KEY"],defaults:{baseUrl:"https://api.together.xyz/v1"}},{id:"fireworks",name:"Fireworks AI",description:"High-performance inference platform",family:"openai-compatible",defaultModelId:"accounts/fireworks/models/kimi-k2p6",apiKeyEnv:["FIREWORKS_API_KEY"],defaults:{baseUrl:"https://api.fireworks.ai/inference/v1"}},{id:"groq",name:"Groq",description:"Ultra-fast LPU inference",family:"openai-compatible",defaultModelId:"moonshotai/kimi-k2-instruct-0905",apiKeyEnv:["GROQ_API_KEY"],defaults:{baseUrl:"https://api.groq.com/openai/v1"}},{id:"poolside",name:"Poolside",description:"OpenAI-compatible code intelligence models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"poolside/laguna-m.1",apiKeyEnv:["POOLSIDE_API_KEY"],defaults:{baseUrl:"https://inference.poolside.ai/v1"}},{id:"cerebras",name:"Cerebras",description:"Fast inference on Cerebras wafer-scale chips",family:"openai-compatible",defaultModelId:"zai-glm-4.7",apiKeyEnv:["CEREBRAS_API_KEY"],defaults:{baseUrl:"https://api.cerebras.ai/v1"}},{id:"sambanova",name:"SambaNova",description:"High-performance AI inference",family:"openai-compatible",apiKeyEnv:["SAMBANOVA_API_KEY"],modelsProviderId:"sambanova",defaults:{baseUrl:"https://api.sambanova.ai/v1"}},{id:"nebius",name:"Nebius",description:"European cloud AI infrastructure",family:"openai-compatible",defaultModelId:"nvidia/nemotron-3-super-120b-a12b",apiKeyEnv:["NEBIUS_API_KEY"],defaults:{baseUrl:"https://api.studio.nebius.ai/v1"}},{id:"baseten",name:"Baseten",description:"ML inference platform",family:"openai-compatible",apiKeyEnv:["BASETEN_API_KEY"],modelsProviderId:"baseten",defaults:{baseUrl:"https://model-api.baseten.co/v1"}},{id:"requesty",name:"Requesty",description:"AI router with multiple provider support",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"openai/gpt-5.4",apiKeyEnv:["REQUESTY_API_KEY"],modelsProviderId:"requesty",defaults:{baseUrl:"https://router.requesty.ai/v1"}},{id:"litellm",name:"LiteLLM",description:"Self-hosted LLM proxy",family:"openai-compatible",protocol:"openai-responses",popular:40,capabilities:["prompt-cache"],defaultModelId:"gpt-5.4",apiKeyEnv:["LITELLM_API_KEY"],defaults:{baseUrl:"http://localhost:4000/v1"}},{id:"huggingface",name:"Hugging Face",description:"Hugging Face inference API",family:"openai-compatible",defaultModelId:"MiniMaxAI/MiniMax-M2.5",apiKeyEnv:["HF_TOKEN"],modelsProviderId:"huggingface",defaults:{baseUrl:"https://router.huggingface.co/v1"}},{id:"vercel-ai-gateway",name:"Vercel AI Gateway",description:"Vercel's AI gateway service",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"alibaba/qwen3.6-plus",apiKeyEnv:["AI_GATEWAY_API_KEY"],modelsProviderId:"vercel-ai-gateway",defaults:{baseUrl:"https://ai-gateway.vercel.sh/v1"},metadata:rr},{id:"v0",name:"Vercel V0",description:"The Vercel provider gives you access to the v0 API, designed for building modern web applications.",family:"openai-compatible",capabilities:["reasoning","tools"],defaultModelId:"v0-1.5-md",apiKeyEnv:["V0_API_KEY"],modelsProviderId:"v0",defaults:{baseUrl:"https://api.v0.dev/v1"}},{id:"aihubmix",name:"AI Hub Mix",description:"AI model aggregator",family:"openai-compatible",defaultModelId:"gpt-4o",apiKeyEnv:["AIHUBMIX_API_KEY"],modelsProviderId:"aihubmix",defaults:{baseUrl:"https://api.aihubmix.com/v1"},metadata:lt},{id:"hicap",name:"HiCap",description:"HiCap AI platform",family:"openai-compatible",defaultModelId:"hicap-pro",apiKeyEnv:["HICAP_API_KEY"],defaults:{baseUrl:"https://api.hicap.ai/v1"}},{id:"nousResearch",name:"Nous Research",description:"Open-source AI research lab",family:"openai-compatible",defaultModelId:"DeepHermes-3-Llama-3-3-70B-Preview",apiKeyEnv:["NOUS_RESEARCH_API_KEY","NOUSRESEARCH_API_KEY"],modelsProviderId:"nousResearch",defaults:{baseUrl:"https://inference-api.nousresearch.com/v1"}},{id:"huawei-cloud-maas",name:"Huawei Cloud MaaS",description:"Huawei's model-as-a-service platform",family:"openai-compatible",defaultModelId:"DeepSeek-R1",apiKeyEnv:["HUAWEI_CLOUD_MAAS_API_KEY"],defaults:{baseUrl:"https://infer-modelarts.cn-southwest-2.myhuaweicloud.com/v1"}},{id:"qwen",name:"Alibaba Qwen",description:"Alibaba Qwen platform models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen-plus-latest",apiKeyEnv:["QWEN_API_KEY"],modelsProviderId:"qwen",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},configFields:Iy,metadata:ps},{id:"qwen-code",name:"Alibaba Qwen Code",description:"Qwen OAuth coding models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen3-coder-plus",modelsProviderId:"qwen-code",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},configFields:Iy,metadata:ps},{id:"doubao",name:"Doubao",description:"Volcengine Ark platform models",family:"openai-compatible",capabilities:["tools"],defaultModelId:"doubao-1-5-pro-256k-250115",apiKeyEnv:["DOUBAO_API_KEY"],modelsProviderId:"doubao",defaults:{baseUrl:"https://ark.cn-beijing.volces.com/api/v3"}},{id:"zai",name:"Z.AI",description:"Z.AI's family of LLMs",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"glm-5v-turbo",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai",defaults:{baseUrl:"https://api.z.ai/api/paas/v4"},metadata:ys},{id:"zai-coding-plan",name:"Z.AI Coding Plan",description:"Z.AI's coding-focused models",family:"openai-compatible",capabilities:["reasoning","tools"],defaultModelId:"glm-5.2",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai-coding-plan",defaults:{baseUrl:"https://api.z.ai/api/coding/paas/v4"},metadata:ys},{id:"moonshot",name:"Moonshot",description:"Moonshot AI Studio models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"kimi-k2-0905-preview",apiKeyEnv:["MOONSHOT_API_KEY"],modelsProviderId:"moonshot",defaults:{baseUrl:"https://api.moonshot.ai/v1"}},{id:"wandb",name:"W&B by CoreWeave",description:"Weights & Biases",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",apiKeyEnv:["WANDB_API_KEY"],modelsProviderId:"wandb",defaults:{baseUrl:"https://api.inference.wandb.ai/v1"}},{id:"xiaomi",name:"Xiaomi",description:"Xiaomi",family:"openai-compatible",capabilities:["prompt-cache","tools","reasoning"],defaultModelId:"mimo-v2.5",apiKeyEnv:["XIAOMI_API_KEY"],modelsProviderId:"xiaomi",defaults:{baseUrl:"https://api.xiaomimimo.com/v1"}},{id:"tencent-tokenhub",name:"Tencent TokenHub",description:"Tencent TokenHub AI models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"hy3-preview",apiKeyEnv:["TENCENT_TOKENHUB_API_KEY"],modelsProviderId:"tencent-tokenhub",docsUrl:"https://cloud.tencent.com/document/product/1823/130050",defaults:{baseUrl:"https://tokenhub.tencentmaas.com/v1"}},{id:"kilo",name:"Kilo Gateway",description:"Kilo Gateway",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache","reasoning","tools"],defaultModelId:"gpt-4o",apiKeyEnv:["KILO_GATEWAY_API_KEY"],modelsProviderId:"kilo",defaults:{baseUrl:"https://api.kilo.ai/api/gateway"}},{id:"openrouter",name:"OpenRouter",description:"OpenRouter AI platform",family:"openai-compatible",popular:20,capabilities:["reasoning","prompt-cache"],defaultModelId:"anthropic/claude-sonnet-4.6",apiKeyEnv:["OPENROUTER_API_KEY"],modelsProviderId:"openrouter",docsUrl:"https://openrouter.ai/models",defaults:{baseUrl:"https://openrouter.ai/api/v1"},metadata:{...rr,...Gz}},{id:"ollama",name:"Ollama",description:"Ollama Cloud and local LLM hosting",family:"openai-compatible",popular:25,defaultModelId:"",apiKeyEnv:["OLLAMA_API_KEY"],defaults:{baseUrl:"http://localhost:11434/v1"},modelsSourceUrl:"http://localhost:11434/api/tags"},{id:"lmstudio",name:"LM Studio",description:"Local model inference with LM Studio",family:"openai-compatible",defaultModelId:"",apiKeyEnv:["LMSTUDIO_API_KEY"],modelsProviderId:"lmstudio",defaults:{baseUrl:"http://localhost:1234/v1"},modelsSourceUrl:"http://localhost:1234/v1/models"},{id:"oca",name:"Oracle Code Assist",description:"Oracle Code Assist (OCA) LiteLLM gateway",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"anthropic/claude-3-7-sonnet-20250219",apiKeyEnv:["OCA_API_KEY"],modelsProviderId:"oca",defaults:{baseUrl:Wz},configFields:Qz,metadata:lt},{id:"asksage",name:"AskSage",description:"AskSage platform",family:"openai-compatible",client:"fetch",capabilities:["tools"],defaultModelId:"gpt-4o",apiKeyEnv:["ASKSAGE_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.asksage.ai/server"}}],Ds=[{id:"openai-native",name:"OpenAI",description:"Creator of GPT and ChatGPT",family:"openai",capabilities:["reasoning"],modelsProviderId:"openai-native",defaultModelId:"gpt-5.4",apiKeyEnv:["OPENAI_API_KEY"],defaults:{baseUrl:"https://api.openai.com/v1"}},{id:"openai-codex",name:"OpenAI ChatGPT Subscription",description:"OpenAI ChatGPT subscription access uses an OAuth device code flow.",family:"openai",popular:5,capabilities:["reasoning","oauth"],defaultModelId:Hz,modelsFactory:n1,defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},configFields:[],metadata:{usageCostDisplay:"subscription"}},{id:"openai-codex-cli",name:"OpenAI Codex CLI",description:"OpenAI Codex via the local Codex CLI provider",family:"openai-codex",capabilities:["reasoning","provider-tools","local-auth"],defaultModelId:"gpt-5.3-codex",modelsProviderId:"openai",defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},configFields:[],metadata:{usageCostDisplay:"subscription"}},{id:"anthropic",name:"Anthropic",description:"Creator of Claude, the AI assistant",family:"anthropic",popular:15,capabilities:["reasoning","prompt-cache"],defaultModelId:"claude-sonnet-4-6",apiKeyEnv:["ANTHROPIC_API_KEY"],modelsProviderId:"anthropic",defaults:{baseUrl:"https://api.anthropic.com/v1"},metadata:lt},{id:"claude-code",name:"Claude Code",description:"Use Claude Code SDK with Claude Pro/Max subscription",family:"claude-code",capabilities:["reasoning"],defaultModelId:"sonnet",modelsFactory:i1,defaults:{baseUrl:""},configFields:[]},{id:"gemini",name:"Google Gemini",description:"Google Gemini API",family:"google",popular:45,capabilities:["reasoning","prompt-cache"],defaultModelId:"gemma-4-26b",apiKeyEnv:["GOOGLE_GENERATIVE_AI_API_KEY","GEMINI_API_KEY"],modelsProviderId:"gemini",defaults:{baseUrl:"https://generativelanguage.googleapis.com/v1beta"}},{id:"vertex",name:"Google Vertex AI",description:"Google Cloud Vertex AI",family:"vertex",capabilities:["reasoning","prompt-cache"],apiKeyEnv:["GCP_PROJECT_ID","GOOGLE_CLOUD_PROJECT","GOOGLE_APPLICATION_CREDENTIALS","GEMINI_API_KEY","GOOGLE_API_KEY","GOOGLE_VERTEX_PROJECT","GOOGLE_VERTEX_LOCATION"],modelsProviderId:"vertex",configFields:Xz,metadata:lt},{id:"bedrock",name:"AWS Bedrock",description:"Amazon Bedrock managed foundation models",family:"bedrock",popular:30,capabilities:["reasoning","prompt-cache"],defaultModelId:"minimax.minimax-m2.5",apiKeyEnv:["AWS_BEARER_TOKEN_BEDROCK","AWS_REGION","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN"],modelsProviderId:"bedrock",configFields:Yz,metadata:lt},{id:"mistral",name:"Mistral",description:"Mistral AI models via AI SDK provider",family:"mistral",capabilities:["reasoning"],defaultModelId:"mistral-medium-latest",apiKeyEnv:["MISTRAL_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.mistral.ai/v1"}},{id:"minimax",name:"MiniMax",description:"MiniMax models via Anthropic-compatible API",family:"anthropic",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"MiniMax-M2.5",apiKeyEnv:["MINIMAX_API_KEY"],modelsProviderId:"minimax",defaults:{baseUrl:"https://api.minimax.io/anthropic/v1"},metadata:mg},{id:"opencode",name:"OpenCode",description:"OpenCode SDK multi-provider runtime",family:"opencode",capabilities:["reasoning","oauth"],defaultModelId:"openai/gpt-5.4",modelsProviderId:"opencode",defaults:{baseUrl:""},configFields:[]},{id:"dify",name:"Dify",description:"Dify workflow/application provider via AI SDK",family:"dify",defaultModelId:"default",apiKeyEnv:["DIFY_API_KEY"],modelsFactory:()=>({})},{id:"sapaicore",name:"SAP AI Core",description:"SAP AI Core inference and orchestration platform",family:"sap-ai-core",client:"ai-sdk-community",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"anthropic--claude-3.5-sonnet",apiKeyEnv:["AICORE_SERVICE_KEY","VCAP_SERVICES"],modelsProviderId:"sapaicore",metadata:lt},...c1];function m1(e){if(e.modelsFactory)return e.modelsFactory();if(e.modelsProviderId)return Lt(e.modelsProviderId);return{}}function Oy(e){let t=m1(e),n=zy(e),r=Uy(e),i=Object.keys(t).length>0?t:e.defaultModelId?{[e.defaultModelId]:a1(e.defaultModelId,e)}:{},a=Object.keys(i),o=e.defaultModelId||a[0]||"default";return{provider:{id:e.id,name:e.name,description:e.description,protocol:e.protocol??s1(e),baseUrl:e.defaults?.baseUrl,modelsSourceUrl:e.modelsSourceUrl,defaultModelId:o,capabilities:n,env:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,client:e.client??u1(e),source:"system",metadata:r},models:i}}function Ey(e){let t=Oy(e),n=zy(e),r=Uy(e),i=Object.values(t.models).map((o)=>o1(e.id,o)),a=i.length>0?i:[{id:t.provider.defaultModelId||"default",name:t.provider.defaultModelId||"Default",providerId:e.id,capabilities:["text"]}];return{id:e.id,name:e.name,description:e.description,defaultModelId:t.provider.defaultModelId||a[0]?.id||"default",models:a,capabilities:n,env:e.env??["browser","node"],api:e.defaults?.baseUrl,apiKeyEnv:e.apiKeyEnv,docsUrl:e.docsUrl,metadata:r}}var Zs=Ds.map(Oy),FT=Object.fromEntries(Zs.map((e)=>[e.provider.id,e]));var Ny=new Map;async function f1(e){let t=Ny.get(e);if(t)return t;let n=(async()=>{switch(e){case"openai":return(await Promise.resolve().then(() => (ie(),ue))).createOpenAIProvider;case"openai-compatible":return(await Promise.resolve().then(() => (ie(),ue))).createOpenAICompatibleProvider;case"anthropic":return(await Promise.resolve().then(() => (ie(),ue))).createAnthropicProvider;case"google":return(await Promise.resolve().then(() => (ie(),ue))).createGoogleProvider;case"vertex":return(await Promise.resolve().then(() => (ie(),ue))).createVertexProvider;case"bedrock":return(await Promise.resolve().then(() => (ie(),ue))).createBedrockProvider;case"mistral":return(await Promise.resolve().then(() => (ie(),ue))).createMistralProvider;case"claude-code":return(await Promise.resolve().then(() => (ie(),ue))).createClaudeCodeProvider;case"openai-codex":return(await Promise.resolve().then(() => (ie(),ue))).createOpenAICodexProvider;case"opencode":return(await Promise.resolve().then(() => (ie(),ue))).createOpenCodeProvider;case"dify":return(await Promise.resolve().then(() => (ie(),ue))).createDifyProvider;case"sap-ai-core":return(await Promise.resolve().then(() => (ie(),ue))).createSapAiCoreProvider}})();return Ny.set(e,n),n}function p1(e){if(e.family==="openai"||e.protocol==="openai-responses"||e.client==="openai")return"openai";return e.family}var Zi=Ds.map((e)=>({manifest:Ey(e),defaults:{...e.defaults,apiKeyEnv:e.apiKeyEnv,baseUrl:e.defaults?.baseUrl},loadProvider:async()=>({createProvider:await f1(p1(e))})}));we();async function*Py(e){for await(let t of e)yield t}function Ay(e){return{...e,models:e.models.map((t)=>({...t})),capabilities:e.capabilities?[...e.capabilities]:void 0,env:e.env?[...e.env]:void 0,api:e.api,apiKeyEnv:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,docsUrl:e.docsUrl,metadata:e.metadata?{...e.metadata}:void 0}}function v1(e,t){let n=new Map;for(let r of e.models)n.set(r.id,{...r});for(let r of t?.models??[])n.set(r.id,{...r,providerId:e.id});return Array.from(n.values())}function Dy(e,t){let n=e?.routing||t?.routing?{...e?.routing??{},...t?.routing??{}}:void 0,r={...e??{},...t??{},...n?{routing:n}:{}};return Object.keys(r).length>0?r:void 0}function h1(e,t){return{id:t,name:t,providerId:e.id}}class Cs{providers=new Map;providerConfigs=new Map;fallbackFetch;constructor(e){this.fallbackFetch=e}registerProvider(e){if(!e.createProvider&&!e.loadProvider)throw Error(`Provider "${e.manifest.id}" must include createProvider or loadProvider.`);this.providers.set(e.manifest.id,{manifest:Ay(e.manifest),defaults:e.defaults?{providerId:e.manifest.id,apiKey:e.defaults.apiKey,apiKeyResolver:e.defaults.apiKeyResolver,apiKeyEnv:e.defaults.apiKeyEnv,baseUrl:e.defaults.baseUrl,headers:e.defaults.headers?{...e.defaults.headers}:void 0,timeoutMs:e.defaults.timeoutMs,fetch:e.defaults.fetch,options:e.defaults.options?{...e.defaults.options}:void 0,metadata:e.defaults.metadata?{...e.defaults.metadata}:void 0}:void 0,createProvider:e.createProvider,loadProvider:e.loadProvider})}configureProvider(e){this.providerConfigs.set(e.providerId,{providerId:e.providerId,apiKey:e.apiKey,apiKeyResolver:e.apiKeyResolver,apiKeyEnv:e.apiKeyEnv,baseUrl:e.baseUrl,headers:e.headers?{...e.headers}:void 0,timeoutMs:e.timeoutMs,fetch:e.fetch,options:e.options?{...e.options}:void 0,metadata:e.metadata?{...e.metadata}:void 0,enabled:e.enabled??!0,defaultModelId:e.defaultModelId,models:e.models?.map((t)=>({...t}))})}listProviders(){return Array.from(this.providers.values()).map((e)=>this.getManifest(e.manifest.id)).filter((e)=>e!==void 0)}listModels(e){if(e)return[...this.getManifest(e)?.models??[]];return this.listProviders().flatMap((t)=>t.models.map((n)=>({...n})))}getManifest(e){let t=this.providers.get(e);if(!t)return;let n=this.providerConfigs.get(e);if(n&&!n.enabled)return;let r=v1(t.manifest,n),i=n?.defaultModelId??t.manifest.defaultModelId??r[0]?.id;if(!i)return;return{...Ay(t.manifest),defaultModelId:i,models:r,metadata:Dy(t.manifest.metadata,n?.metadata)}}resolveModel(e){let t=this.getManifest(e.providerId);if(!t)throw Error(`Unknown or disabled provider "${e.providerId}".`);let n=e.modelId??t.defaultModelId,r=t.models.find((i)=>i.id===n)??h1(t,n);return{provider:t,model:r}}async createProvider(e){let t=this.providers.get(e);if(!t)throw Error(`Unknown provider "${e}".`);if(!t.createProvider){let a=await t.loadProvider?.();if(!a?.createProvider)throw Error(`Provider "${e}" could not be loaded.`);t.createProvider=a.createProvider}let n=this.getManifest(e);if(!n)throw Error(`Provider "${e}" is disabled.`);let r=this.providerConfigs.get(e),i=Dy(t.defaults?.metadata,r?.metadata);return{manifest:n,config:{providerId:e,apiKey:r?.apiKey??t.defaults?.apiKey,apiKeyResolver:r?.apiKeyResolver??t.defaults?.apiKeyResolver,apiKeyEnv:r?.apiKeyEnv??t.defaults?.apiKeyEnv,baseUrl:r?.baseUrl??t.defaults?.baseUrl,headers:{...t.defaults?.headers??{},...r?.headers??{}},timeoutMs:r?.timeoutMs??t.defaults?.timeoutMs,fetch:r?.fetch??t.defaults?.fetch??this.fallbackFetch,options:{...t.defaults?.options??{},...r?.options??{}},metadata:i},createProvider:t.createProvider}}}var g1=1024;function y1(e,t){if(!e&&!t)return;return{...e??{},...t??{}}}class Zy{gateway;selection;defaults;constructor(e,t,n){this.gateway=e;this.selection=t;this.defaults=n}stream(e){let t=e.options?.reasoning,n=e.options?.thinking,r=e.options?.reasoningEffort,i=e.options?.thinkingBudgetTokens,a=r==="low"||r==="medium"||r==="high"?r:void 0,o=typeof n==="boolean"||a!==void 0||typeof i==="number"?{enabled:typeof n==="boolean"?n:void 0,effort:a,budgetTokens:typeof i==="number"?i:void 0}:void 0;return this.gateway.stream({providerId:this.selection.providerId,modelId:this.selection.modelId??"",systemPrompt:e.systemPrompt,messages:e.messages,tools:this.defaults?.tools??e.tools,temperature:e.options?.temperature??this.defaults?.temperature,maxTokens:e.options?.maxTokens??this.defaults?.maxTokens,metadata:y1(this.defaults?.metadata,e.options?.metadata),reasoning:t??o??this.defaults?.reasoning,signal:e.signal??this.defaults?.signal})}}function br(e){return typeof e==="number"&&Number.isFinite(e)&&e>0}function Rs(e){let t=new WeakSet;try{return JSON.stringify(e,(n,r)=>{if(typeof r==="bigint")return r.toString();if(typeof r!=="object"||r===null)return r;if(t.has(r))return"[Circular]";return t.add(r),r})??""}catch{return String(e??"")}}function b1(e){let t;try{t=JSON.stringify({systemPrompt:e.systemPrompt,messages:e.messages,tools:e.tools})}catch{t=[Rs(e.systemPrompt),Rs(e.messages),Rs(e.tools)].join(`
|
|
169
|
-
`)}return ot(t.length)}function $1(e){if(!br(e.requestedMaxTokens))return;let t=[Math.floor(e.requestedMaxTokens)];if(br(e.model.maxOutputTokens))t.push(Math.floor(e.model.maxOutputTokens));if(br(e.model.contextWindow)){let n=e.outputReserveTokens??g1,r=e.model.contextWindow-e.estimatedInputTokens-n;if(r<=0){e.onContextOverflow?.({contextWindow:e.model.contextWindow,estimatedInputTokens:e.estimatedInputTokens,reserveTokens:n});return}t.push(Math.floor(r))}if(t.length===0)return;return Math.max(1,Math.floor(Math.min(...t)))}class Cy{registry;logger;telemetry;constructor(e={}){if(this.registry=new Cs(e.fetch),this.logger=e.logger,this.telemetry=e.telemetry,e.builtins!==!1){let t=new Set(e.builtins??Zi.map((n)=>n.manifest.id));for(let n of Zi)if(t.has(n.manifest.id))this.registry.registerProvider(n)}for(let t of e.providers??[])this.registry.registerProvider(t);for(let t of e.providerConfigs??[])this.registry.configureProvider(t)}registerProvider(e){return this.registry.registerProvider(e),this}configureProvider(e){return this.registry.configureProvider(e),this}listProviders(){return this.registry.listProviders()}listModels(e){return this.registry.listModels(e)}createAgentModel(e,t){return new Zy(this,e,t)}async stream(e){let t=this.registry.resolveModel({providerId:e.providerId,modelId:e.modelId||void 0}),n=await this.registry.createProvider(e.providerId),r=await n.createProvider(n.config),i=br(e.maxTokens)?$1({requestedMaxTokens:e.maxTokens,model:t.model,estimatedInputTokens:b1(e),onContextOverflow:(o)=>{this.logger?.log("Estimated prompt tokens exceed model context window",{severity:"warn",providerId:t.provider.id,modelId:t.model.id,...o})}}):void 0,a=await r.stream({...e,modelId:t.model.id,providerId:t.provider.id,maxTokens:i},{provider:t.provider,model:t.model,config:n.config,signal:e.signal,logger:this.logger,telemetry:this.telemetry});return Py(a)}}function Ls(e){return new Cy(e)}function _1(){let e=new Map;for(let t of Zs)e.set(t.provider.id,{provider:{...t.provider},models:Object.fromEntries(Object.entries(t.models).map(([n,r])=>[n,{...r}]))});return e}var Ci=_1(),Jt=new Map,mt=new Map;function ct(e){return mt.get(e)??Ci.get(e)}function Ry(){let e=Array.from(Ci.keys()),t=Array.from(mt.keys()).filter((n)=>!Ci.has(n));return[...e,...t]}function tj(e){return Ci.has(e)||mt.has(e)}async function ij(e){return ct(e)?.provider}function Js(e){return ct(e)}async function Ms(e){return ct(e)}async function nj(e){let n=ct(e)?.models??{},r=Jt.get(e);if(r)return{...n,...Object.fromEntries(r)};return n}async function rj(){return Ry().map((e)=>ct(e)?.provider).filter((e)=>e!==void 0)}function aj(e){mt.set(e.provider.id,e)}function oj(e,t,n){if(!Jt.has(e))Jt.set(e,new Map);Jt.get(e)?.set(t,{...n,id:t})}function sj(e){return Jt.delete(e),mt.delete(e)}function uj(){Jt.clear(),mt.clear()}var lj=new Proxy({},{get(e,t){return ct(t)},has(e,t){return Ci.has(t)||mt.has(t)},ownKeys(){return Ry()},getOwnPropertyDescriptor(e,t){let n=ct(t);if(n===void 0)return;return{configurable:!0,enumerable:!0,value:n}}});var Mt=new Map(Zi.map((e)=>[e.manifest.id,e]));function k1(e){if(!e?.length)return;let t=new Set;for(let n of e)switch(n){case"tools":case"reasoning":case"prompt-cache":case"images":case"audio":t.add(n);break;case"files":case"streaming":case"temperature":case"reasoning-effort":case"computer-use":case"global-endpoint":t.add("text");break;case"structured_output":t.add("structured-output");break;default:t.add("text")}return t.add("text"),[...t]}function Ws(e,t){return{id:t.id,name:t.name??t.id,description:t.description,providerId:e,contextWindow:t.contextWindow,maxInputTokens:t.maxInputTokens,maxOutputTokens:t.maxTokens,capabilities:k1(t.capabilities),metadata:{family:t.family,pricing:t.pricing,status:t.status,releaseDate:t.releaseDate}}}function Ly(e,t){if(t?.client==="openai"||t?.protocol==="openai-responses")return dr;switch(t?.client){case"anthropic":return mr;case"gemini":return fr;case"vertex":return pr;case"bedrock":return vr;case"openai-compatible":return cr}switch(G(e)){case"openai-codex":case"openai-native":return dr;case"anthropic":case"minimax":return mr;case"gemini":return fr;case"vertex":return pr;case"bedrock":return vr;case"mistral":return Is;case"claude-code":return xs;case"openai-codex-cli":return zs;case"opencode":return Us;case"dify":return Ts;case"sapaicore":return js;default:return cr}}async function w1(e){let t=G(e.providerId),n=G(Fi(e));if(Mt.get(t)&&t===n)return;let i=await Ms(t)??(t!==n?await Ms(n):void 0);if(!i){let o=Mt.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,name:o.manifest.name,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let a=Mt.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>Ws(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...a?.defaults??{},baseUrl:i.provider.baseUrl??a?.defaults?.baseUrl,apiKeyEnv:i.provider.env??a?.defaults?.apiKeyEnv},createProvider:a?.createProvider??Ly(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:a?.loadProvider}}function S1(e){let t=G(e.providerId),n=G(Fi(e));if(Mt.get(t)&&t===n)return;let i=Js(t)??(t!==n?Js(n):void 0);if(!i){let o=Mt.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let a=Mt.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>Ws(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...a?.defaults??{},baseUrl:i.provider.baseUrl??a?.defaults?.baseUrl,apiKeyEnv:i.provider.env??a?.defaults?.apiKeyEnv},createProvider:a?.createProvider??Ly(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:a?.loadProvider}}function I1(e){let t=new Map;for(let n of e){if(!Array.isArray(n.content))continue;for(let r of n.content)if(r.type==="tool_use"){if(t.set(r.id,r.name),r.call_id)t.set(r.call_id,r.name)}}return e.map((n)=>{let r=typeof n.content==="string"?[{type:"text",text:n.content}]:n.content.flatMap((i)=>{switch(i.type){case"text":return[{type:"text",text:i.text}];case"thinking":return[{type:"reasoning",text:i.thinking,metadata:i.signature||i.call_id?{signature:i.signature,callId:i.call_id,details:i.details}:void 0}];case"tool_use":return[{type:"tool-call",toolCallId:i.call_id??i.id,toolName:i.name,input:i.input,metadata:i.signature?{thoughtSignature:i.signature}:void 0}];case"tool_result":return[{type:"tool-result",toolCallId:i.tool_use_id,toolName:t.get(i.tool_use_id)??"tool",output:i.content,isError:i.is_error??!1}];case"image":return[{type:"image",image:`data:${i.mediaType};base64,${i.data}`,mediaType:i.mediaType}];case"file":return[{type:"text",text:i.content}];case"redacted_thinking":return[];default:return[]}});return{id:Bs(),role:n.role,content:r,createdAt:Date.now()}})}function x1(e){return e?.map((t)=>({name:t.name,description:t.description,inputSchema:t.inputSchema}))}function Fs(e,t,n,r,i){return{providerId:G(e.providerId),modelId:e.modelId,systemPrompt:t,messages:I1(n),tools:x1(r),maxTokens:e.maxOutputTokens,reasoning:e.thinking!==void 0||e.reasoningEffort||e.thinkingBudgetTokens!==void 0?{enabled:e.thinking,effort:e.reasoningEffort==="xhigh"?"high":e.reasoningEffort==="low"||e.reasoningEffort==="medium"||e.reasoningEffort==="high"?e.reasoningEffort:void 0,budgetTokens:e.thinkingBudgetTokens}:void 0,signal:i}}function Jy(e){let t=G(e.providerId);return{providerId:t,apiKey:e.apiKey??e.accessToken,baseUrl:e.baseUrl,headers:e.headers,timeoutMs:e.timeoutMs,fetch:e.fetch,defaultModelId:e.modelId,models:e.knownModels?Object.values(e.knownModels).map((n)=>{let r=Ws(t,n),{providerId:i,...a}=r;return a}):void 0,options:{region:e.region??e.gcp?.region,project:e.gcp?.projectId,projectId:e.gcp?.projectId,location:e.region??e.gcp?.region,accessKeyId:e.aws?.accessKey,secretAccessKey:e.aws?.secretKey,sessionToken:e.aws?.sessionToken,authentication:e.aws?.authentication,profile:e.aws?.profile,endpoint:e.aws?.endpoint,customModelBaseId:e.aws?.customModelBaseId,apiVersion:e.azure?.apiVersion,useIdentity:e.azure?.useIdentity,mode:e.oca?.mode,usePromptCache:e.aws?.usePromptCache??e.oca?.usePromptCache,...e.codex,...e.claudeCode,...e.opencode,...e.sap}}}function My(e,t){switch(t.type){case"text-delta":return{type:"text",id:e,text:t.text};case"reasoning-delta":{let n=t.metadata;return{type:"reasoning",id:e,reasoning:t.text,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:typeof n?.signature==="string"?n.signature:void 0,details:n?.details}}case"tool-call-delta":{let n=t.metadata,r=typeof t.inputText==="string"||t.input===void 0?t.inputText:t.input;return{type:"tool_calls",id:e,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:void 0,tool_call:{call_id:t.toolCallId,function:{id:t.toolCallId,name:t.toolName,arguments:r}}}}case"usage":return{type:"usage",id:e,inputTokens:t.usage.inputTokens??0,outputTokens:t.usage.outputTokens??0,cacheReadTokens:t.usage.cacheReadTokens,cacheWriteTokens:t.usage.cacheWriteTokens,thoughtsTokenCount:t.usage.reasoningTokenCount,totalCost:t.usage.totalCost};case"finish":return{type:"done",id:e,success:t.reason!=="error",error:t.error,incompleteReason:t.reason==="max-tokens"?"max_tokens":void 0}}}function z1(e){return e.modelInfo??(e.modelId?e.knownModels?.[e.modelId]:void 0)??{id:e.modelId,name:e.modelId,capabilities:["streaming"]}}class Ks{config;abortSignal;constructor(e){this.config=e;this.abortSignal=e.abortSignal}getMessages(e,t){return Fs(this.config,e,t,void 0,this.abortSignal)}createMessage(e,t,n){let r=Ls({providerConfigs:[Jy(this.config)],fetch:this.config.fetch,logger:this.config.logger??this.config.extensionContext?.logger,telemetry:this.config.extensionContext?.telemetry}),i=S1(this.config);if(i)r.registerProvider(i);let a=Fs(this.config,e,t,n,this.abortSignal),o=`gw_${Bs(10)}`,s=async function*(){for await(let d of await r.stream(a))yield My(o,d)}();return s.id=o,s}getModel(){return{id:this.config.modelId,info:z1(this.config)}}abort(){}setAbortSignal(e){this.abortSignal=e}}function Fy(e){return new Ks(e)}async function By(e){let t=Ls({providerConfigs:[Jy(e)],fetch:e.fetch,logger:e.logger??e.extensionContext?.logger,telemetry:e.extensionContext?.telemetry}),n=await w1(e);if(n)t.registerProvider(n);return new class extends Ks{createMessage(r,i,a){let o=Fs(e,r,i,a,e.abortSignal),s=`gw_${Bs(10)}`,d=async function*(){for await(let l of await t.stream(o))yield My(s,l)}();return d.id=s,d}}(e)}var Ft=new Map;function U1(e,t){Ft.set(e,{factory:t,isAsync:!1})}function T1(e,t){Ft.set(e,{factory:t,isAsync:!0})}function $r(e){return Ft.has(e)}function Hs(e,t){let n=Ft.get(e);if(!n)return;if(n.isAsync)throw Error(`Handler for "${e}" is registered as async. Use getRegisteredHandlerAsync() or createHandlerAsync() instead.`);return n.factory(t)}async function Gs(e,t){let n=Ft.get(e);if(!n)return;if(n.isAsync)return n.factory(t);return n.factory(t)}function Xs(e){return Ft.get(e)?.isAsync??!1}function Wy(e){let t=G(e.providerId),n=e.routingProviderId?G(e.routingProviderId):void 0;if(t===e.providerId&&n===e.routingProviderId)return e;return{...e,providerId:t,routingProviderId:n}}function wj(e){let t=Wy(e),{providerId:n}=t;if($r(n)){if(Xs(n))throw Error(`Handler for "${n}" is registered as async. Use createHandlerAsync() instead.`);let r=Hs(n,t);if(r)return r}return Fy(t)}async function Sj(e){let t=Wy(e),{providerId:n}=t;if($r(n)){let r=await Gs(n,t);if(r)return r}return By(t)}export{U1 as registerHandler,T1 as registerAsyncHandler,G as normalizeProviderId,Xs as isRegisteredHandlerAsync,Ps as isClineOrgIndividualInferenceSubscriptionMessage,Jz as isClineOrgIndividualInferenceSubscriptionError,Ns as isClineNotSubscribedMessage,Lz as isClineNotSubscribedError,wr as isBuiltInProviderId,$r as hasRegisteredHandler,Gs as getRegisteredHandlerAsync,Hs as getRegisteredHandler,_y as getClinePassSubscriptionUrl,wy as getClineOrgIndividualInferenceSubscriptionMessage,ky as getClineNotSubscribedMessage,Sj as createHandlerAsync,wj as createHandler,Di as ClineOrgIndividualInferenceSubscriptionError,Ai as ClineNotSubscribedError,Mi as BUILT_IN_PROVIDER_IDS,Bt as BUILT_IN_PROVIDER};
|
|
166
|
+
`)}v.write("payload.value = newResult;"),v.write("return payload;");let T=v.compile();return(A,I)=>T(m,A,I)},a,o=kt,s=!qt.jitless,d=s&&hl.value,l=t.catchall,c;e._zod.parse=(m,v)=>{c??(c=r.value);let p=m.value;if(!o(p))return m.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),m;if(s&&d&&v?.async===!1&&v.jitless!==!0){if(!a)a=i(t.shape);if(m=a(m,v),!l)return m;return vc([],p,m,v,c,e)}return n(m,v)}});cn=f("$ZodUnion",(e,t)=>{z.init(e,t),O(e._zod,"optin",()=>t.options.some((r)=>r._zod.optin==="optional")?"optional":void 0),O(e._zod,"optout",()=>t.options.some((r)=>r._zod.optout==="optional")?"optional":void 0),O(e._zod,"values",()=>{if(t.options.every((r)=>r._zod.values))return new Set(t.options.flatMap((r)=>Array.from(r._zod.values)));return}),O(e._zod,"pattern",()=>{if(t.options.every((r)=>r._zod.pattern)){let r=t.options.map((i)=>i._zod.pattern);return new RegExp(`^(${r.map((i)=>un(i.source)).join("|")})$`)}return});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let s of t.options){let d=s._zod.run({value:r.value,issues:[]},i);if(d instanceof Promise)o.push(d),a=!0;else{if(d.issues.length===0)return d;o.push(d)}}if(!a)return cu(o,r,e,i);return Promise.all(o).then((s)=>{return cu(s,r,e,i)})}});yc=f("$ZodXor",(e,t)=>{cn.init(e,t),t.inclusive=!1;let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let s of t.options){let d=s._zod.run({value:r.value,issues:[]},i);if(d instanceof Promise)o.push(d),a=!0;else o.push(d)}if(!a)return mu(o,r,e,i);return Promise.all(o).then((s)=>{return mu(s,r,e,i)})}}),bc=f("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,cn.init(e,t);let n=e._zod.parse;O(e._zod,"propValues",()=>{let i={};for(let a of t.options){let o=a._zod.propValues;if(!o||Object.keys(o).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let[s,d]of Object.entries(o)){if(!i[s])i[s]=new Set;for(let l of d)i[s].add(l)}}return i});let r=oi(()=>{let i=t.options,a=new Map;for(let o of i){let s=o._zod.propValues?.[t.discriminator];if(!s||s.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(let d of s){if(a.has(d))throw Error(`Duplicate discriminator value "${String(d)}"`);a.set(d,o)}}return a});e._zod.parse=(i,a)=>{let o=i.value;if(!kt(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);if(s)return s._zod.run(i,a);if(t.unionFallback||a.direction==="backward")return n(i,a);return i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i}}),$c=f("$ZodIntersection",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value,a=t.left._zod.run({value:i,issues:[]},r),o=t.right._zod.run({value:i,issues:[]},r);if(a instanceof Promise||o instanceof Promise)return Promise.all([a,o]).then(([s,d])=>{return fu(n,s,d)});return fu(n,a,o)}});ya=f("$ZodTuple",(e,t)=>{z.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:"tuple",code:"invalid_type"}),r;r.value=[];let o=[],s=pu(n,"optin"),d=pu(n,"optout");if(!t.rest){if(a.length<s)return r.issues.push({code:"too_small",minimum:s,inclusive:!0,input:a,inst:e,origin:"array"}),r;if(a.length>n.length)r.issues.push({code:"too_big",maximum:n.length,inclusive:!0,input:a,inst:e,origin:"array"})}let l=Array(n.length);for(let c=0;c<n.length;c++){let m=n[c]._zod.run({value:a[c],issues:[]},i);if(m instanceof Promise)o.push(m.then((v)=>{l[c]=v}));else l[c]=m}if(t.rest){let c=n.length-1,m=a.slice(n.length);for(let v of m){c++;let p=t.rest._zod.run({value:v,issues:[]},i);if(p instanceof Promise)o.push(p.then((g)=>vu(g,r,c)));else vu(p,r,c)}}if(o.length)return Promise.all(o).then(()=>hu(l,r,n,a,d));return hu(l,r,n,a,d)}});_c=f("$ZodRecord",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!qe(i))return n.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let l of o)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){s.add(typeof l==="number"?l.toString():l);let c=t.keyType._zod.run({value:l,issues:[]},r);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map((p)=>ne(p,r,W())),input:l,path:[l],inst:e});continue}let m=c.value,v=t.valueType._zod.run({value:i[l],issues:[]},r);if(v instanceof Promise)a.push(v.then((p)=>{if(p.issues.length)n.issues.push(...le(l,p.issues));n.value[m]=p.value}));else{if(v.issues.length)n.issues.push(...le(l,v.issues));n.value[m]=v.value}}let d;for(let l in i)if(!s.has(l))d=d??[],d.push(l);if(d&&d.length>0)n.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:d})}else{n.value={};for(let s of Reflect.ownKeys(i)){if(s==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(i,s))continue;let d=t.keyType._zod.run({value:s,issues:[]},r);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof s==="string"&&da.test(s)&&d.issues.length){let c=t.keyType._zod.run({value:Number(s),issues:[]},r);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length===0)d=c}if(d.issues.length){if(t.mode==="loose")n.value[s]=i[s];else n.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map((c)=>ne(c,r,W())),input:s,path:[s],inst:e});continue}let l=t.valueType._zod.run({value:i[s],issues:[]},r);if(l instanceof Promise)a.push(l.then((c)=>{if(c.issues.length)n.issues.push(...le(s,c.issues));n.value[d.value]=c.value}));else{if(l.issues.length)n.issues.push(...le(s,l.issues));n.value[d.value]=l.value}}}if(a.length)return Promise.all(a).then(()=>n);return n}}),kc=f("$ZodMap",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:i,inst:e}),n;let a=[];n.value=new Map;for(let[o,s]of i){let d=t.keyType._zod.run({value:o,issues:[]},r),l=t.valueType._zod.run({value:s,issues:[]},r);if(d instanceof Promise||l instanceof Promise)a.push(Promise.all([d,l]).then(([c,m])=>{gu(c,m,n,o,i,e,r)}));else gu(d,l,n,o,i,e,r)}if(a.length)return Promise.all(a).then(()=>n);return n}});wc=f("$ZodSet",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Set))return n.issues.push({input:i,inst:e,expected:"set",code:"invalid_type"}),n;let a=[];n.value=new Set;for(let o of i){let s=t.valueType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)a.push(s.then((d)=>yu(d,n)));else yu(s,n)}if(a.length)return Promise.all(a).then(()=>n);return n}});Sc=f("$ZodEnum",(e,t)=>{z.init(e,t);let n=Yr(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter((i)=>qi.has(typeof i)).map((i)=>typeof i==="string"?Te(i):i.toString()).join("|")})$`),e._zod.parse=(i,a)=>{let o=i.value;if(r.has(o))return i;return i.issues.push({code:"invalid_value",values:n,input:o,inst:e}),i}}),Ic=f("$ZodLiteral",(e,t)=>{if(z.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map((r)=>typeof r==="string"?Te(r):r?Te(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,i)=>{let a=r.value;if(n.has(a))return r;return r.issues.push({code:"invalid_value",values:t.values,input:a,inst:e}),r}}),xc=f("$ZodFile",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(i instanceof File)return n;return n.issues.push({expected:"file",code:"invalid_type",input:i,inst:e}),n}}),zc=f("$ZodTransform",(e,t)=>{z.init(e,t),e._zod.optin="optional",e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new ai(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then((a)=>{return n.value=a,n.fallback=!0,n});if(i instanceof Promise)throw new Re;return n.value=i,n.fallback=!0,n}});ba=f("$ZodOptional",(e,t)=>{z.init(e,t),e._zod.optin="optional",e._zod.optout="optional",O(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0}),O(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${un(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){let i=n.value,a=t.innerType._zod.run(n,r);if(a instanceof Promise)return a.then((o)=>bu(o,i));return bu(a,i)}if(n.value===void 0)return n;return t.innerType._zod.run(n,r)}}),Uc=f("$ZodExactOptional",(e,t)=>{ba.init(e,t),O(e._zod,"values",()=>t.innerType._zod.values),O(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,r)=>{return t.innerType._zod.run(n,r)}}),Tc=f("$ZodNullable",(e,t)=>{z.init(e,t),O(e._zod,"optin",()=>t.innerType._zod.optin),O(e._zod,"optout",()=>t.innerType._zod.optout),O(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${un(n.source)}|null)$`):void 0}),O(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0}),e._zod.parse=(n,r)=>{if(n.value===null)return n;return t.innerType._zod.run(n,r)}}),jc=f("$ZodDefault",(e,t)=>{z.init(e,t),e._zod.optin="optional",O(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>$u(a,t));return $u(i,t)}});Oc=f("$ZodPrefault",(e,t)=>{z.init(e,t),e._zod.optin="optional",O(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)n.value=t.defaultValue;return t.innerType._zod.run(n,r)}}),Ec=f("$ZodNonOptional",(e,t)=>{z.init(e,t),O(e._zod,"values",()=>{let n=t.innerType._zod.values;return n?new Set([...n].filter((r)=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>_u(a,e));return _u(i,e)}});Nc=f("$ZodSuccess",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new ai("ZodSuccess");let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>{return n.value=a.issues.length===0,n});return n.value=i.issues.length===0,n}}),Pc=f("$ZodCatch",(e,t)=>{z.init(e,t),e._zod.optin="optional",O(e._zod,"optout",()=>t.innerType._zod.optout),O(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>{if(n.value=a.value,a.issues.length)n.value=t.catchValue({...n,error:{issues:a.issues.map((o)=>ne(o,r,W()))},input:n.value}),n.issues=[],n.fallback=!0;return n});if(n.value=i.value,i.issues.length)n.value=t.catchValue({...n,error:{issues:i.issues.map((a)=>ne(a,r,W()))},input:n.value}),n.issues=[],n.fallback=!0;return n}}),Ac=f("$ZodNaN",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{if(typeof n.value!=="number"||!Number.isNaN(n.value))return n.issues.push({input:n.value,inst:e,expected:"nan",code:"invalid_type"}),n;return n}}),$a=f("$ZodPipe",(e,t)=>{z.init(e,t),O(e._zod,"values",()=>t.in._zod.values),O(e._zod,"optin",()=>t.in._zod.optin),O(e._zod,"optout",()=>t.out._zod.optout),O(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){let a=t.out._zod.run(n,r);if(a instanceof Promise)return a.then((o)=>Wi(o,t.in,r));return Wi(a,t.in,r)}let i=t.in._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Wi(a,t.out,r));return Wi(i,t.out,r)}});_a=f("$ZodCodec",(e,t)=>{z.init(e,t),O(e._zod,"values",()=>t.in._zod.values),O(e._zod,"optin",()=>t.in._zod.optin),O(e._zod,"optout",()=>t.out._zod.optout),O(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if((r.direction||"forward")==="forward"){let i=t.in._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Ki(a,t,r));return Ki(i,t,r)}else{let i=t.out._zod.run(n,r);if(i instanceof Promise)return i.then((a)=>Ki(a,t,r));return Ki(i,t,r)}}});Dc=f("$ZodPreprocess",(e,t)=>{$a.init(e,t)}),Zc=f("$ZodReadonly",(e,t)=>{z.init(e,t),O(e._zod,"propValues",()=>t.innerType._zod.propValues),O(e._zod,"values",()=>t.innerType._zod.values),O(e._zod,"optin",()=>t.innerType?._zod?.optin),O(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let i=t.innerType._zod.run(n,r);if(i instanceof Promise)return i.then(ku);return ku(i)}});Cc=f("$ZodTemplateLiteral",(e,t)=>{z.init(e,t);let n=[];for(let r of t.parts)if(typeof r==="object"&&r!==null){if(!r._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...r._zod.traits].shift()}`);let i=r._zod.pattern instanceof RegExp?r._zod.pattern.source:r._zod.pattern;if(!i)throw Error(`Invalid template literal part: ${r._zod.traits}`);let a=i.startsWith("^")?1:0,o=i.endsWith("$")?i.length-1:i.length;n.push(i.slice(a,o))}else if(r===null||yl.has(typeof r))n.push(Te(`${r}`));else throw Error(`Invalid template literal part: ${r}`);e._zod.pattern=new RegExp(`^${n.join("")}$`),e._zod.parse=(r,i)=>{if(typeof r.value!=="string")return r.issues.push({input:r.value,inst:e,expected:"string",code:"invalid_type"}),r;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(r.value))return r.issues.push({input:r.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),r;return r}}),Rc=f("$ZodFunction",(e,t)=>{return z.init(e,t),e._def=t,e._zod.def=t,e.implement=(n)=>{if(typeof n!=="function")throw Error("implement() must be called with a function");return function(...r){let i=e._def.input?Nr(e._def.input,r):r,a=Reflect.apply(n,this,i);if(e._def.output)return Nr(e._def.output,a);return a}},e.implementAsync=(n)=>{if(typeof n!=="function")throw Error("implementAsync() must be called with a function");return async function(...r){let i=e._def.input?await Pr(e._def.input,r):r,a=await Reflect.apply(n,this,i);if(e._def.output)return await Pr(e._def.output,a);return a}},e._zod.parse=(n,r)=>{if(typeof n.value!=="function")return n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:e}),n;if(e._def.output&&e._def.output._zod.def.type==="promise")n.value=e.implementAsync(n.value);else n.value=e.implement(n.value);return n},e.input=(...n)=>{let r=e.constructor;if(Array.isArray(n[0]))return new r({type:"function",input:new ya({type:"tuple",items:n[0],rest:n[1]}),output:e._def.output});return new r({type:"function",input:n[0],output:e._def.output})},e.output=(n)=>{return new e.constructor({type:"function",input:e._def.input,output:n})},e}),Lc=f("$ZodPromise",(e,t)=>{z.init(e,t),e._zod.parse=(n,r)=>{return Promise.resolve(n.value).then((i)=>t.innerType._zod.run({value:i,issues:[]},r))}}),Jc=f("$ZodLazy",(e,t)=>{z.init(e,t),O(e._zod,"innerType",()=>{let n=t;if(!n._cachedInner)n._cachedInner=t.getter();return n._cachedInner}),O(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),O(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),O(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),O(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,r)=>{return e._zod.innerType._zod.run(n,r)}}),Mc=f("$ZodCustom",(e,t)=>{J.init(e,t),z.init(e,t),e._zod.parse=(n,r)=>{return n},e._zod.check=(n)=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then((a)=>wu(a,n,r,e));wu(i,n,r,e);return}});ka={};je(ka,{zhTW:()=>Tk,zhCN:()=>zk,yo:()=>Ok,vi:()=>Ik,uz:()=>wk,ur:()=>_k,uk:()=>Wc,ua:()=>bk,tr:()=>gk,th:()=>vk,ta:()=>fk,sv:()=>ck,sl:()=>lk,ru:()=>sk,ro:()=>ak,pt:()=>nk,ps:()=>q_,pl:()=>tk,ota:()=>Q_,no:()=>X_,nl:()=>H_,ms:()=>W_,mk:()=>F_,lt:()=>J_,ko:()=>R_,km:()=>Bc,kh:()=>Z_,ka:()=>A_,ja:()=>N_,it:()=>O_,is:()=>T_,id:()=>z_,hy:()=>I_,hu:()=>w_,hr:()=>__,he:()=>b_,frCA:()=>g_,fr:()=>v_,fi:()=>f_,fa:()=>c_,es:()=>l_,eo:()=>s_,en:()=>Fc,el:()=>r_,de:()=>i_,da:()=>e_,cs:()=>V$,ca:()=>Y$,bg:()=>G$,be:()=>K$,az:()=>B$,ar:()=>M$});Kc=Symbol("ZodOutput"),Hc=Symbol("ZodInput");(Uu=globalThis).__zod_globalRegistry??(Uu.__zod_globalRegistry=Sa());de=globalThis.__zod_globalRegistry;Qc={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};tw={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Dr={string:Am,number:Dm,boolean:Zm,bigint:Cm,symbol:Rm,null:Lm,undefined:Jm,void:Mm,never:Fm,any:Bm,unknown:Wm,date:Km,enum:Hm,literal:Gm,nan:Xm,template_literal:Ym,file:Qm,success:Vm,custom:qm,function:ef,transform:tf,map:nf,set:rf,array:af,object:of,union:Ya,intersection:sf,tuple:uf,record:lf,nullable:df,nonoptional:cf,default:mf,prefault:ff,catch:pf,pipe:vf,readonly:hf,promise:gf,optional:Qa,lazy:yf};iw={},_f={};je(_f,{xor:()=>jp,xid:()=>qf,void:()=>Sp,uuidv7:()=>Wf,uuidv6:()=>Bf,uuidv4:()=>Ff,uuid:()=>Mf,url:()=>Kf,unknown:()=>tt,union:()=>Wn,undefined:()=>kp,ulid:()=>Vf,uint64:()=>$p,uint32:()=>gp,tuple:()=>_o,transform:()=>Hn,templateLiteral:()=>Bp,symbol:()=>_p,superRefine:()=>Xo,success:()=>Lp,stringbool:()=>Qp,stringFormat:()=>dp,string:()=>ti,strictObject:()=>Up,set:()=>Ap,refine:()=>Go,record:()=>ko,readonly:()=>Mo,promise:()=>Wp,preprocess:()=>qp,prefault:()=>Po,pipe:()=>an,partialRecord:()=>Ep,optional:()=>ni,object:()=>zp,number:()=>ro,nullish:()=>Rp,nullable:()=>ri,null:()=>lo,nonoptional:()=>Ao,never:()=>Fn,nativeEnum:()=>Dp,nanoid:()=>Xf,nan:()=>Jp,meta:()=>Xp,map:()=>Pp,mac:()=>ip,looseRecord:()=>Np,looseObject:()=>Tp,literal:()=>Zp,lazy:()=>Wo,ksuid:()=>ep,keyof:()=>xp,jwt:()=>lp,json:()=>Vp,ipv6:()=>np,ipv4:()=>tp,invertCodec:()=>Fp,intersection:()=>bo,int64:()=>bp,int32:()=>hp,int:()=>rn,instanceof:()=>Yp,httpUrl:()=>Hf,hostname:()=>cp,hex:()=>mp,hash:()=>fp,guid:()=>Jf,function:()=>on,float64:()=>vp,float32:()=>pp,file:()=>Cp,exactOptional:()=>To,enum:()=>Kn,emoji:()=>Gf,email:()=>Lf,e164:()=>up,discriminatedUnion:()=>Op,describe:()=>Gp,date:()=>Ip,custom:()=>Hp,cuid2:()=>Qf,cuid:()=>Yf,codec:()=>Mp,cidrv6:()=>ap,cidrv4:()=>rp,check:()=>Kp,catch:()=>Co,boolean:()=>ao,bigint:()=>yp,base64url:()=>sp,base64:()=>op,array:()=>Ii,any:()=>wp,_function:()=>on,_default:()=>Eo,_ZodString:()=>In,ZodXor:()=>ho,ZodXID:()=>En,ZodVoid:()=>po,ZodUnknown:()=>mo,ZodUnion:()=>zi,ZodUndefined:()=>so,ZodUUID:()=>ke,ZodURL:()=>_i,ZodULID:()=>On,ZodType:()=>U,ZodTuple:()=>$o,ZodTransform:()=>zo,ZodTemplateLiteral:()=>Fo,ZodSymbol:()=>oo,ZodSuccess:()=>Do,ZodStringFormat:()=>C,ZodString:()=>$i,ZodSet:()=>So,ZodRecord:()=>Ut,ZodReadonly:()=>Jo,ZodPromise:()=>Ko,ZodPreprocess:()=>Lo,ZodPrefault:()=>No,ZodPipe:()=>Ui,ZodOptional:()=>Gn,ZodObject:()=>xi,ZodNumberFormat:()=>at,ZodNumber:()=>ki,ZodNullable:()=>jo,ZodNull:()=>uo,ZodNonOptional:()=>Xn,ZodNever:()=>fo,ZodNanoID:()=>Un,ZodNaN:()=>Ro,ZodMap:()=>wo,ZodMAC:()=>no,ZodLiteral:()=>Io,ZodLazy:()=>Bo,ZodKSUID:()=>Nn,ZodJWT:()=>Jn,ZodIntersection:()=>yo,ZodIPv6:()=>An,ZodIPv4:()=>Pn,ZodGUID:()=>ii,ZodFunction:()=>Ho,ZodFile:()=>xo,ZodExactOptional:()=>Uo,ZodEnum:()=>Tt,ZodEmoji:()=>zn,ZodEmail:()=>xn,ZodE164:()=>Ln,ZodDiscriminatedUnion:()=>go,ZodDefault:()=>Oo,ZodDate:()=>Bn,ZodCustomStringFormat:()=>Ot,ZodCustom:()=>ji,ZodCodec:()=>Ti,ZodCatch:()=>Zo,ZodCUID2:()=>jn,ZodCUID:()=>Tn,ZodCIDRv6:()=>Zn,ZodCIDRv4:()=>Dn,ZodBoolean:()=>wi,ZodBigIntFormat:()=>Mn,ZodBigInt:()=>Si,ZodBase64URL:()=>Rn,ZodBase64:()=>Cn,ZodArray:()=>vo,ZodAny:()=>co});kf={};je(kf,{uppercase:()=>vn,trim:()=>_n,toUpperCase:()=>wn,toLowerCase:()=>kn,startsWith:()=>gn,slugify:()=>Sn,size:()=>vi,regex:()=>fn,property:()=>Xa,positive:()=>Wa,overwrite:()=>Ee,normalize:()=>$n,nonpositive:()=>Ha,nonnegative:()=>Ga,negative:()=>Ka,multipleOf:()=>St,minSize:()=>Fe,minLength:()=>et,mime:()=>bn,maxSize:()=>jt,maxLength:()=>hi,lte:()=>ce,lt:()=>Je,lowercase:()=>pn,length:()=>gi,includes:()=>hn,gte:()=>Q,gt:()=>Me,endsWith:()=>yn});Va={};je(Va,{time:()=>If,duration:()=>xf,datetime:()=>wf,date:()=>Sf,ZodISOTime:()=>to,ZodISODuration:()=>io,ZodISODateTime:()=>qa,ZodISODate:()=>eo});qa=f("ZodISODateTime",(e,t)=>{Jd.init(e,t),C.init(e,t)});eo=f("ZodISODate",(e,t)=>{Md.init(e,t),C.init(e,t)});to=f("ZodISOTime",(e,t)=>{Fd.init(e,t),C.init(e,t)});io=f("ZodISODuration",(e,t)=>{Bd.init(e,t),C.init(e,t)});nw=f("ZodError",zf),ae=f("ZodError",zf,{Parent:Error}),Uf=si(ae),Tf=ui(ae),jf=li(ae),Of=di(ae),Ef=ta(ae),Nf=ia(ae),Pf=na(ae),Af=ra(ae),Df=aa(ae),Zf=oa(ae),Cf=sa(ae),Rf=ua(ae),Tu=new WeakMap;U=f("ZodType",(e,t)=>{return z.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:ei(e,"input"),output:ei(e,"output")}}),e.toJSONSchema=Pm(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,r)=>Uf(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>jf(e,n,r),e.parseAsync=async(n,r)=>Tf(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Of(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>Ef(e,n,r),e.decode=(n,r)=>Nf(e,n,r),e.encodeAsync=async(n,r)=>Pf(e,n,r),e.decodeAsync=async(n,r)=>Af(e,n,r),e.safeEncode=(n,r)=>Df(e,n,r),e.safeDecode=(n,r)=>Zf(e,n,r),e.safeEncodeAsync=async(n,r)=>Cf(e,n,r),e.safeDecodeAsync=async(n,r)=>Rf(e,n,r),bi(e,"ZodType",{check(...n){let r=this.def;return this.clone(j.mergeDefs(r,{checks:[...r.checks??[],...n.map((i)=>typeof i==="function"?{_zod:{check:i,def:{check:"custom"},onattach:[]}}:i)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,r){return fe(this,n,r)},brand(){return this},register(n,r){return n.add(this,r),this},refine(n,r){return this.check(Go(n,r))},superRefine(n,r){return this.check(Xo(n,r))},overwrite(n){return this.check(Ee(n))},optional(){return ni(this)},exactOptional(){return To(this)},nullable(){return ri(this)},nullish(){return ni(ri(this))},nonoptional(n){return Ao(this,n)},array(){return Ii(this)},or(n){return Wn([this,n])},and(n){return bo(this,n)},transform(n){return an(this,Hn(n))},default(n){return Eo(this,n)},prefault(n){return Po(this,n)},catch(n){return Co(this,n)},pipe(n){return an(this,n)},readonly(){return Mo(this)},describe(n){let r=this.clone();return de.add(r,{description:n}),r},meta(...n){if(n.length===0)return de.get(this);let r=this.clone();return de.add(r,n[0]),r},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return de.get(e)?.description},configurable:!0}),e}),In=f("_ZodString",(e,t)=>{pi.init(e,t),U.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Am(e,r,i,a);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,bi(e,"_ZodString",{regex(...r){return this.check(fn(...r))},includes(...r){return this.check(hn(...r))},startsWith(...r){return this.check(gn(...r))},endsWith(...r){return this.check(yn(...r))},min(...r){return this.check(et(...r))},max(...r){return this.check(hi(...r))},length(...r){return this.check(gi(...r))},nonempty(...r){return this.check(et(1,...r))},lowercase(r){return this.check(pn(r))},uppercase(r){return this.check(vn(r))},trim(){return this.check(_n())},normalize(...r){return this.check($n(...r))},toLowerCase(){return this.check(kn())},toUpperCase(){return this.check(wn())},slugify(){return this.check(Sn())}})}),$i=f("ZodString",(e,t)=>{pi.init(e,t),In.init(e,t),e.email=(n)=>e.check(Ia(xn,n)),e.url=(n)=>e.check(mn(_i,n)),e.jwt=(n)=>e.check(Ba(Jn,n)),e.emoji=(n)=>e.check(ja(zn,n)),e.guid=(n)=>e.check(nn(ii,n)),e.uuid=(n)=>e.check(xa(ke,n)),e.uuidv4=(n)=>e.check(za(ke,n)),e.uuidv6=(n)=>e.check(Ua(ke,n)),e.uuidv7=(n)=>e.check(Ta(ke,n)),e.nanoid=(n)=>e.check(Oa(Un,n)),e.guid=(n)=>e.check(nn(ii,n)),e.cuid=(n)=>e.check(Ea(Tn,n)),e.cuid2=(n)=>e.check(Na(jn,n)),e.ulid=(n)=>e.check(Pa(On,n)),e.base64=(n)=>e.check(Ja(Cn,n)),e.base64url=(n)=>e.check(Ma(Rn,n)),e.xid=(n)=>e.check(Aa(En,n)),e.ksuid=(n)=>e.check(Da(Nn,n)),e.ipv4=(n)=>e.check(Za(Pn,n)),e.ipv6=(n)=>e.check(Ca(An,n)),e.cidrv4=(n)=>e.check(Ra(Dn,n)),e.cidrv6=(n)=>e.check(La(Zn,n)),e.e164=(n)=>e.check(Fa(Ln,n)),e.datetime=(n)=>e.check(wf(n)),e.date=(n)=>e.check(Sf(n)),e.time=(n)=>e.check(If(n)),e.duration=(n)=>e.check(xf(n))});C=f("ZodStringFormat",(e,t)=>{Z.init(e,t),In.init(e,t)}),xn=f("ZodEmail",(e,t)=>{Ed.init(e,t),C.init(e,t)});ii=f("ZodGUID",(e,t)=>{jd.init(e,t),C.init(e,t)});ke=f("ZodUUID",(e,t)=>{Od.init(e,t),C.init(e,t)});_i=f("ZodURL",(e,t)=>{Nd.init(e,t),C.init(e,t)});zn=f("ZodEmoji",(e,t)=>{Pd.init(e,t),C.init(e,t)});Un=f("ZodNanoID",(e,t)=>{Ad.init(e,t),C.init(e,t)});Tn=f("ZodCUID",(e,t)=>{Dd.init(e,t),C.init(e,t)});jn=f("ZodCUID2",(e,t)=>{Zd.init(e,t),C.init(e,t)});On=f("ZodULID",(e,t)=>{Cd.init(e,t),C.init(e,t)});En=f("ZodXID",(e,t)=>{Rd.init(e,t),C.init(e,t)});Nn=f("ZodKSUID",(e,t)=>{Ld.init(e,t),C.init(e,t)});Pn=f("ZodIPv4",(e,t)=>{Wd.init(e,t),C.init(e,t)});no=f("ZodMAC",(e,t)=>{Hd.init(e,t),C.init(e,t)});An=f("ZodIPv6",(e,t)=>{Kd.init(e,t),C.init(e,t)});Dn=f("ZodCIDRv4",(e,t)=>{Gd.init(e,t),C.init(e,t)});Zn=f("ZodCIDRv6",(e,t)=>{Xd.init(e,t),C.init(e,t)});Cn=f("ZodBase64",(e,t)=>{Yd.init(e,t),C.init(e,t)});Rn=f("ZodBase64URL",(e,t)=>{Vd.init(e,t),C.init(e,t)});Ln=f("ZodE164",(e,t)=>{qd.init(e,t),C.init(e,t)});Jn=f("ZodJWT",(e,t)=>{tc.init(e,t),C.init(e,t)});Ot=f("ZodCustomStringFormat",(e,t)=>{ic.init(e,t),C.init(e,t)});ki=f("ZodNumber",(e,t)=>{va.init(e,t),U.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Dm(e,r,i,a),bi(e,"ZodNumber",{gt(r,i){return this.check(Me(r,i))},gte(r,i){return this.check(Q(r,i))},min(r,i){return this.check(Q(r,i))},lt(r,i){return this.check(Je(r,i))},lte(r,i){return this.check(ce(r,i))},max(r,i){return this.check(ce(r,i))},int(r){return this.check(rn(r))},safe(r){return this.check(rn(r))},positive(r){return this.check(Me(0,r))},nonnegative(r){return this.check(Q(0,r))},negative(r){return this.check(Je(0,r))},nonpositive(r){return this.check(ce(0,r))},multipleOf(r,i){return this.check(St(r,i))},step(r,i){return this.check(St(r,i))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??0.5),e.isFinite=!0,e.format=n.format??null});at=f("ZodNumberFormat",(e,t)=>{nc.init(e,t),ki.init(e,t)});wi=f("ZodBoolean",(e,t)=>{ha.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Zm(e,n,r,i)});Si=f("ZodBigInt",(e,t)=>{ga.init(e,t),U.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Cm(e,r,i,a),e.gte=(r,i)=>e.check(Q(r,i)),e.min=(r,i)=>e.check(Q(r,i)),e.gt=(r,i)=>e.check(Me(r,i)),e.gte=(r,i)=>e.check(Q(r,i)),e.min=(r,i)=>e.check(Q(r,i)),e.lt=(r,i)=>e.check(Je(r,i)),e.lte=(r,i)=>e.check(ce(r,i)),e.max=(r,i)=>e.check(ce(r,i)),e.positive=(r)=>e.check(Me(BigInt(0),r)),e.negative=(r)=>e.check(Je(BigInt(0),r)),e.nonpositive=(r)=>e.check(ce(BigInt(0),r)),e.nonnegative=(r)=>e.check(Q(BigInt(0),r)),e.multipleOf=(r,i)=>e.check(St(r,i));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});Mn=f("ZodBigIntFormat",(e,t)=>{rc.init(e,t),Si.init(e,t)});oo=f("ZodSymbol",(e,t)=>{ac.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Rm(e,n,r,i)});so=f("ZodUndefined",(e,t)=>{oc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Jm(e,n,r,i)});uo=f("ZodNull",(e,t)=>{sc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Lm(e,n,r,i)});co=f("ZodAny",(e,t)=>{uc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Bm(e,n,r,i)});mo=f("ZodUnknown",(e,t)=>{lc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Wm(e,n,r,i)});fo=f("ZodNever",(e,t)=>{dc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Fm(e,n,r,i)});po=f("ZodVoid",(e,t)=>{cc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Mm(e,n,r,i)});Bn=f("ZodDate",(e,t)=>{mc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Km(e,r,i,a),e.min=(r,i)=>e.check(Q(r,i)),e.max=(r,i)=>e.check(ce(r,i));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});vo=f("ZodArray",(e,t)=>{fc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>af(e,n,r,i),e.element=t.element,bi(e,"ZodArray",{min(n,r){return this.check(et(n,r))},nonempty(n){return this.check(et(1,n))},max(n,r){return this.check(hi(n,r))},length(n,r){return this.check(gi(n,r))},unwrap(){return this.element}})});xi=f("ZodObject",(e,t)=>{gc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>of(e,n,r,i),j.defineLazy(e,"shape",()=>{return t.shape}),bi(e,"ZodObject",{keyof(){return Kn(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:tt()})},loose(){return this.clone({...this._zod.def,catchall:tt()})},strict(){return this.clone({...this._zod.def,catchall:Fn()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return j.extend(this,n)},safeExtend(n){return j.safeExtend(this,n)},merge(n){return j.merge(this,n)},pick(n){return j.pick(this,n)},omit(n){return j.omit(this,n)},partial(...n){return j.partial(Gn,this,n[0])},required(...n){return j.required(Xn,this,n[0])}})});zi=f("ZodUnion",(e,t)=>{cn.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Ya(e,n,r,i),e.options=t.options});ho=f("ZodXor",(e,t)=>{zi.init(e,t),yc.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Ya(e,n,r,i),e.options=t.options});go=f("ZodDiscriminatedUnion",(e,t)=>{zi.init(e,t),bc.init(e,t)});yo=f("ZodIntersection",(e,t)=>{$c.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>sf(e,n,r,i)});$o=f("ZodTuple",(e,t)=>{ya.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>uf(e,n,r,i),e.rest=(n)=>e.clone({...e._zod.def,rest:n})});Ut=f("ZodRecord",(e,t)=>{_c.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>lf(e,n,r,i),e.keyType=t.keyType,e.valueType=t.valueType});wo=f("ZodMap",(e,t)=>{kc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>nf(e,n,r,i),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...n)=>e.check(Fe(...n)),e.nonempty=(n)=>e.check(Fe(1,n)),e.max=(...n)=>e.check(jt(...n)),e.size=(...n)=>e.check(vi(...n))});So=f("ZodSet",(e,t)=>{wc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>rf(e,n,r,i),e.min=(...n)=>e.check(Fe(...n)),e.nonempty=(n)=>e.check(Fe(1,n)),e.max=(...n)=>e.check(jt(...n)),e.size=(...n)=>e.check(vi(...n))});Tt=f("ZodEnum",(e,t)=>{Sc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(r,i,a)=>Hm(e,r,i,a),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(r,i)=>{let a={};for(let o of r)if(n.has(o))a[o]=t.entries[o];else throw Error(`Key ${o} not found in enum`);return new Tt({...t,checks:[],...j.normalizeParams(i),entries:a})},e.exclude=(r,i)=>{let a={...t.entries};for(let o of r)if(n.has(o))delete a[o];else throw Error(`Key ${o} not found in enum`);return new Tt({...t,checks:[],...j.normalizeParams(i),entries:a})}});Io=f("ZodLiteral",(e,t)=>{Ic.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Gm(e,n,r,i),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});xo=f("ZodFile",(e,t)=>{xc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Qm(e,n,r,i),e.min=(n,r)=>e.check(Fe(n,r)),e.max=(n,r)=>e.check(jt(n,r)),e.mime=(n,r)=>e.check(bn(Array.isArray(n)?n:[n],r))});zo=f("ZodTransform",(e,t)=>{zc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>tf(e,n,r,i),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new ai(e.constructor.name);n.addIssue=(a)=>{if(typeof a==="string")n.issues.push(j.issue(a,n.value,t));else{let o=a;if(o.fatal)o.continue=!1;o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=e),n.issues.push(j.issue(o))}};let i=t.transform(n.value,n);if(i instanceof Promise)return i.then((a)=>{return n.value=a,n.fallback=!0,n});return n.value=i,n.fallback=!0,n}});Gn=f("ZodOptional",(e,t)=>{ba.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Qa(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Uo=f("ZodExactOptional",(e,t)=>{Uc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Qa(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});jo=f("ZodNullable",(e,t)=>{Tc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>df(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Oo=f("ZodDefault",(e,t)=>{jc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>mf(e,n,r,i),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});No=f("ZodPrefault",(e,t)=>{Oc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>ff(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Xn=f("ZodNonOptional",(e,t)=>{Ec.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>cf(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Do=f("ZodSuccess",(e,t)=>{Nc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Vm(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Zo=f("ZodCatch",(e,t)=>{Pc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>pf(e,n,r,i),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});Ro=f("ZodNaN",(e,t)=>{Ac.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Xm(e,n,r,i)});Ui=f("ZodPipe",(e,t)=>{$a.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>vf(e,n,r,i),e.in=t.in,e.out=t.out});Ti=f("ZodCodec",(e,t)=>{Ui.init(e,t),_a.init(e,t)});Lo=f("ZodPreprocess",(e,t)=>{Ui.init(e,t),Dc.init(e,t)}),Jo=f("ZodReadonly",(e,t)=>{Zc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>hf(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Fo=f("ZodTemplateLiteral",(e,t)=>{Cc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>Ym(e,n,r,i)});Bo=f("ZodLazy",(e,t)=>{Jc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>yf(e,n,r,i),e.unwrap=()=>e._zod.def.getter()});Ko=f("ZodPromise",(e,t)=>{Lc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>gf(e,n,r,i),e.unwrap=()=>e._zod.def.innerType});Ho=f("ZodFunction",(e,t)=>{Rc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>ef(e,n,r,i)});ji=f("ZodCustom",(e,t)=>{Mc.init(e,t),U.init(e,t),e._zod.processJSONSchema=(n,r,i)=>qm(e,n,r,i)});Gp=Om,Xp=Em;rw={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};(function(e){})(Zr||(Zr={}));b={..._f,...kf,iso:Va},sw=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);tv={};je(tv,{string:()=>cw,number:()=>mw,date:()=>vw,boolean:()=>fw,bigint:()=>pw});W(Fc());Yo=u,iv=u.object({id:u.string(),temperature:u.number().optional(),isR1FormatRequired:u.boolean().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),inputPrice:u.number().optional(),outputPrice:u.number().optional(),supportsImages:u.boolean().optional()}),nv=u.object({models:u.array(iv).optional(),openAiBaseUrl:u.string().optional(),openAiHeaders:u.record(u.string(),u.string()).optional(),azureApiVersion:u.string().optional(),azureIdentity:u.boolean().optional()}),rv=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),av=u.object({name:u.string(),baseModelId:u.string(),thinkingBudgetTokens:u.number().optional()}),ov=u.object({models:u.array(rv).optional(),customModels:u.array(av).optional(),awsRegion:u.string().optional(),awsUseCrossRegionInference:u.boolean().optional(),awsUseGlobalInference:u.boolean().optional(),awsBedrockUsePromptCache:u.boolean().optional(),awsBedrockEndpoint:u.string().optional()}),sv=u.object({id:u.string()}),uv=u.object({models:u.array(sv).optional()}),lv=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),dv=u.object({models:u.array(lv).optional(),vertexProjectId:u.string().optional(),vertexRegion:u.string().optional()}),cv=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional(),promptCachingEnabled:u.boolean().optional()}),mv=u.object({models:u.array(cv).optional(),baseUrl:u.string().optional()}),fv=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),pv=u.object({models:u.array(fv).optional(),baseUrl:u.string().optional()}),hw=u.object({OpenAiCompatible:nv.optional(),AwsBedrock:ov.optional(),Cline:uv.optional(),Vertex:dv.optional(),LiteLLM:mv.optional(),Anthropic:pv.optional()}),vv=u.object({id:u.string()}),hv=u.object({name:u.string(),url:u.string(),alwaysEnabled:u.boolean().optional(),headers:u.record(u.string(),u.string()).optional()}),Cr=u.object({alwaysEnabled:u.boolean(),name:u.string(),contents:u.string()}),Xi=u.object({bucket:u.string(),accessKeyId:u.string(),secretAccessKey:u.string(),region:u.string().optional(),endpoint:u.string().optional(),accountId:u.string().optional()}),gv=u.object({enabled:u.boolean().optional(),type:u.union([u.literal("s3_access_keys"),u.literal("r2_access_keys"),u.literal("azure_access_keys")]).optional(),s3AccessSettings:Xi.optional(),r2AccessSettings:Xi.optional(),azureAccessSettings:Xi.optional()}),yv=u.object({promptUploading:gv.optional()}),gw=u.object({version:u.string(),providerSettings:hw.optional(),telemetryEnabled:u.boolean().optional(),kanbanEnabled:u.boolean().optional(),mcpMarketplaceEnabled:u.boolean().optional(),allowedMCPServers:u.array(vv).optional(),remoteMCPServers:u.array(hv).optional(),blockPersonalRemoteMCPServers:u.boolean().optional(),yoloModeAllowed:u.boolean().optional(),openTelemetryEnabled:u.boolean().optional(),openTelemetryMetricsExporter:u.string().optional(),openTelemetryLogsExporter:u.string().optional(),openTelemetryOtlpProtocol:u.string().optional(),openTelemetryOtlpEndpoint:u.string().optional(),openTelemetryOtlpHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpMetricsProtocol:u.string().optional(),openTelemetryOtlpMetricsEndpoint:u.string().optional(),openTelemetryOtlpMetricsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpLogsProtocol:u.string().optional(),openTelemetryOtlpLogsEndpoint:u.string().optional(),openTelemetryOtlpLogsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryMetricExportInterval:u.number().optional(),openTelemetryOtlpInsecure:u.boolean().optional(),openTelemetryLogBatchSize:u.number().optional(),openTelemetryLogBatchTimeout:u.number().optional(),openTelemetryLogMaxQueueSize:u.number().optional(),enterpriseTelemetry:yv.optional(),globalRules:u.array(Cr).optional(),globalWorkflows:u.array(Cr).optional()}),yw=u.record(u.string(),u.string()),bv=u.enum(["default","openai-responses","r1"]),bw={DEFAULT:"default",OPENAI_RESPONSES:"openai-responses",R1:"r1"},$v=u.enum(["images","tools","streaming","prompt-cache","reasoning","reasoning-effort","computer-use","global-endpoint","structured_output","temperature","files"]),_v=u.enum(["active","preview","deprecated","legacy"]),kv=u.object({input:u.number().optional(),output:u.number().optional(),cacheWrite:u.number().optional(),cacheRead:u.number().optional()}),wv=u.object({maxBudget:u.number().optional(),outputPrice:u.number().optional(),thinkingLevel:u.enum(["low","high"]).optional()}),Sv=u.object({reasoningDefaultOn:u.boolean().optional()}).catchall(u.unknown()),Qo=u.object({id:u.string(),name:u.string().optional(),description:u.string().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),maxInputTokens:u.number().optional(),capabilities:u.array($v).optional(),apiFormat:bv.optional(),systemRole:u.enum(["system","developer"]).optional(),temperature:u.number().optional(),pricing:kv.optional(),thinkingConfig:wv.optional(),status:_v.optional(),deprecationNotice:u.string().optional(),replacedBy:u.string().optional(),releaseDate:u.string().optional(),deprecationDate:u.string().optional(),family:u.string().optional(),metadata:Sv.optional()}),Iv=u.object({id:u.string(),name:u.string(),input:u.unknown(),output:u.unknown(),error:u.string().optional(),durationMs:u.number(),startedAt:u.date(),endedAt:u.date()}),xv=u.enum(["completed","max_iterations","aborted","mistake_limit","error"]),zv=u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()}),$w=u.object({text:u.string(),usage:zv,messages:u.array(u.custom()),toolCalls:u.array(Iv),iterations:u.number(),finishReason:xv,model:u.object({id:u.string(),provider:u.string(),info:Qo.optional()}),startedAt:u.date(),endedAt:u.date(),durationMs:u.number()}),Uv=u.enum(["low","medium","high","xhigh"]),_w=u.object({sessionId:u.string().optional(),providerId:u.string(),modelId:u.string(),apiKey:u.string().optional(),baseUrl:u.string().url().optional(),headers:u.record(u.string(),u.string()).optional(),knownModels:u.record(u.string(),Qo).optional(),providerConfig:u.unknown().optional(),initialMessages:u.array(u.custom()).optional(),systemPrompt:u.string(),tools:u.array(u.custom()),maxIterations:u.number().positive().optional(),maxParallelToolCalls:u.number().int().positive().default(8),maxTokensPerTurn:u.number().positive().optional(),apiTimeoutMs:u.number().positive().default(180000),userFileContentLoader:u.function().input([u.string()]).output(u.promise(u.string())).optional(),toolContextMetadata:u.record(u.string(),u.unknown()).optional(),execution:u.object({maxConsecutiveMistakes:u.number().int().positive().optional(),reminderAfterIterations:u.number().nonnegative().optional(),reminderText:u.string().optional(),loopDetection:u.union([u.literal(!1),u.object({softThreshold:u.number().int().positive().optional(),hardThreshold:u.number().int().positive().optional()})]).optional()}).optional(),reasoningEffort:Uv.optional(),thinkingBudgetTokens:u.number().positive().optional(),thinking:u.boolean().optional(),onEvent:u.function().input([u.custom()]).output(u.void()).optional(),hooks:u.custom().optional(),parentAgentId:u.string().optional(),extensions:u.array(u.custom()).optional(),hookErrorMode:u.enum(["ignore","throw"]).default("ignore"),toolPolicies:u.record(u.string(),u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()})).optional(),requestToolApproval:u.function().input([u.object({sessionId:u.string(),agentId:u.string(),conversationId:u.string(),iteration:u.number(),toolCallId:u.string(),toolName:u.string(),input:u.unknown(),policy:u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()}).default({})})]).output(u.union([u.object({approved:u.boolean(),reason:u.string().optional()}),u.promise(u.object({approved:u.boolean(),reason:u.string().optional()}))])).optional(),onConsecutiveMistakeLimitReached:u.function().input([u.object({iteration:u.number().int().positive(),consecutiveMistakes:u.number().int().positive(),maxConsecutiveMistakes:u.number().int().positive(),reason:u.enum(["api_error","invalid_tool_call","tool_execution_failed"]),details:u.string().optional()})]).output(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()}),u.promise(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()})]))])).optional(),logger:u.custom().optional(),extensionContext:u.custom().optional(),abortSignal:u.custom().optional()}),Tv=u.enum(["connector.started","connector.stopping","session.authorize","message.received","message.denied","message.completed","message.failed","session.started","session.reused","session.reset","schedule.delivery.started","schedule.delivery.sent","schedule.delivery.failed"]),jv=u.object({id:u.string().optional(),label:u.string().optional(),role:u.string().optional(),participantKey:u.string().optional(),participantLabel:u.string().optional(),platformUserId:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),Ov=u.object({source:u.string(),sourceEvent:u.string(),threadId:u.string(),channelId:u.string(),isDM:u.boolean(),sessionId:u.string().optional(),workspaceRoot:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),kw=u.object({actor:jv,context:Ov,payload:u.record(u.string(),u.unknown()).optional()}),ww=u.object({action:u.enum(["allow","deny"]).default("allow"),message:u.string().optional(),reason:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),Sw=u.object({adapter:u.string(),botUserName:u.string().optional(),event:Tv,payload:u.record(u.string(),u.unknown()),ts:u.string()}),Ev=[{name:"discord",description:"Discord interactions and gateway bridge backed by RPC runtime sessions"},{name:"gchat",description:"Google Chat webhook bridge backed by RPC runtime sessions"},{name:"linear",description:"Linear webhook bridge backed by RPC runtime sessions"},{name:"slack",description:"Slack webhook/socket bridge backed by RPC runtime sessions"},{name:"telegram",description:"Bridge Telegram bot messages into RPC chat sessions"},{name:"whatsapp",description:"Bridge WhatsApp webhook messages into RPC chat sessions"}];Pv=[{id:"telegram",name:"Telegram",type:"polling",hint:"Easiest to set up. No public URL needed.",fields:[{flag:"-k",label:"Bot token",placeholder:"7123456789:AAH...",required:!0,help:["Open Telegram and start a chat with @BotFather","Send /newbot and follow the prompts","BotFather gives you this after creating the bot","It looks like 7123456789:AAHxxx..."]}],security:{prompt:"By default, anyone who finds your bot can message it and run tasks on your machine. Restrict access to your Telegram user ID?",fields:[{key:"userId",label:"Your Telegram user ID",placeholder:"123456789",help:["Message @userinfobot on Telegram","It will reply with your numeric user ID"],requiredMessage:"User ID is required to restrict access",validate:zw}],buildArgs:({userId:e})=>["--allowed-user-id",e??""]}},{id:"slack",name:"Slack",type:"hybrid",hint:"Public URL for webhook mode; leave blank for socket mode.",fields:[{flag:"--bot-token",label:"Bot token",placeholder:"xoxb-...",required:!0,help:["Go to api.slack.com/apps and create a new app","Add Bot Token Scopes: chat:write, app_mentions:read, channels:history, channels:read, im:history, im:read, im:write, users:read","Install to workspace and copy the Bot Token"]},{flag:"--base-url",label:"Public base URL",placeholder:"leave blank for socket mode",help:["Enter a publicly accessible URL for webhook mode","Leave blank to use Slack socket mode instead"]},{flag:"--signing-secret",label:"Signing secret",required:!0,help:["Found in your app's Basic Information page"],includeWhen:{flag:"--base-url",notEquals:""}},{flag:"--app-token",label:"App-level token",placeholder:"xapp-...",required:!0,help:["Enable Socket Mode in the Slack app","Generate an app-level token with the connections:write scope"],includeWhen:{flag:"--base-url",equals:""}}],security:{prompt:"Restrict which Slack users can interact with the bot?",fields:[{key:"teamId",label:"Allowed Slack workspace ID",placeholder:"T01ABC123",help:["Open your Slack workspace URL in a browser","The workspace ID is the segment after /client/, for example T01ABC123"],requiredMessage:"Workspace ID is required to restrict access",validate:Uw},{key:"userId",label:"Allowed Slack member ID",placeholder:"U01ABC123",help:["Click a user's name in Slack, then View full profile","Click ... and Copy member ID"],requiredMessage:"Member ID is required to restrict access",validate:Tw}],buildArgs:({teamId:e,userId:t})=>["--hook-command",`jq -r ".payload.actor.participantKey" | grep -qx "slack:team:${e}:user:${t}" && echo '{"action":"allow"}' || echo '{"action":"deny"}'`]}},{id:"discord",name:"Discord",type:"webhook",hint:"Requires a Discord app and public URL.",fields:[{flag:"--application-id",label:"Application ID",required:!0,help:["Go to discord.com/developers/applications","Create a new app, copy the Application ID"]},{flag:"--bot-token",label:"Bot token",required:!0,help:["Go to Bot section, create a bot, copy the token"]},{flag:"--public-key",label:"Public key",required:!0,help:["Found in General Information of your app"]},{flag:"--base-url",label:"Public base URL",placeholder:"https://example.com",required:!0,help:["Base URL for the connector","For Discord, set the Interactions Endpoint URL to <base-url>/api/webhooks/discord"]}]},{id:"whatsapp",name:"WhatsApp",type:"webhook",hint:"Requires Meta developer account and public URL.",fields:[{flag:"--phone-number-id",label:"Phone number ID",required:!0,help:["From your WhatsApp Business account in Meta Developer portal"]},{flag:"--access-token",label:"Access token",required:!0,help:["Generate a permanent token in Meta Developer portal"]},{flag:"--app-secret",label:"App secret",required:!0,help:["Found in App Settings > Basic"]},{flag:"--verify-token",label:"Webhook verify token",placeholder:"my-verify-token",required:!0,help:["Any string you choose, used to verify webhook setup"]},{flag:"--base-url",label:"Public base URL",placeholder:"https://example.com",required:!0}]},{id:"gchat",name:"Google Chat",type:"webhook",hint:"Requires Google Cloud project and public URL.",fields:[{flag:"--credentials-json",label:"Service account credentials JSON",required:!0,help:["Create a service account in Google Cloud Console","Download the credentials JSON file","Paste the JSON content here"]},{flag:"--base-url",label:"Public base URL",placeholder:"https://example.com",required:!0}]},{id:"linear",name:"Linear",type:"webhook",hint:"React to Linear issues and comments.",fields:[{flag:"--api-key",label:"API key",required:!0,help:["Go to Linear Settings > API > Personal API keys"]},{flag:"--webhook-secret",label:"Webhook signing secret",required:!0,help:["Go to Settings > API > Webhooks, create one","Copy the signing secret"]},{flag:"--base-url",label:"Public base URL",placeholder:"https://example.com",required:!0}]}],Av=[];Ow=["hooks","tools","commands","rules","skills","messageBuilders","providers","automationEvents","mcp"],Ew=new Set(Ow);Dw=[".js",".ts"],Rv={CLINE_PASS:"ext-cline-pass"},Zw={[Rv.CLINE_PASS]:!1},Cw=Object.values(Rv),Lv=u.enum(["agent_start","agent_resume","agent_abort","agent_end","agent_error","tool_call","tool_result","prompt_submit","pre_compact","session_shutdown"]),it=u.record(u.string(),u.string()),Rw=u.object({toolName:u.string(),parameters:it}),Lw=u.object({toolName:u.string(),parameters:it,result:u.string(),success:u.boolean(),executionTimeMs:u.number()}),Jw=u.object({prompt:u.string(),attachments:u.array(u.string())}),Mw=u.object({taskMetadata:it}),Fw=u.object({taskMetadata:it,previousState:it}),Bw=u.object({taskMetadata:it}),Ww=u.object({taskMetadata:it}),Kw=u.object({taskId:u.string(),ulid:u.string(),contextSize:u.number(),compactionStrategy:u.string(),previousApiReqIndex:u.number(),tokensIn:u.number(),tokensOut:u.number(),tokensInCache:u.number(),tokensOutCache:u.number(),deletedRangeStart:u.number(),deletedRangeEnd:u.number(),contextJsonPath:u.string(),contextRawPath:u.string()}),Jv=u.object({clineVersion:u.string(),hookName:Lv,timestamp:u.string(),taskId:u.string(),sessionContext:u.object({rootSessionId:u.string().optional(),hookLogPath:u.string().optional()}).optional(),workspaceRoots:u.array(u.string()),workspaceInfo:u.custom().optional(),userId:u.string(),agent_id:u.string(),parent_agent_id:u.string().nullable(),iteration:u.number().optional(),reason:u.string().optional(),tool_call:u.object({id:u.string(),name:u.string(),input:u.unknown()}).optional(),tool_result:u.custom().optional(),turn:u.unknown().optional(),error:u.object({name:u.string(),message:u.string(),stack:u.string().optional()}).optional(),preToolUse:Rw.optional(),postToolUse:Lw.optional(),userPromptSubmit:Jw.optional(),taskStart:Mw.optional(),taskResume:Fw.optional(),taskCancel:Bw.optional(),taskComplete:Ww.optional(),preCompact:Kw.optional()}).passthrough();Qw=["client.register","client.list","session.create","session.list","session.get","session.run","session.abort","schedule.create","schedule.list","settings.get","settings.set"];Bv=["readFile","search","bash","webFetch","editor","applyPatch","skills","askQuestion","submit"],tS=new Set(Bv);mS=/<user_input\b[^>]*\bmode="(act|plan|yolo)"/;qo=["image/png","image/jpeg","image/gif","image/webp"];jS=["show","hide","subscription"];Vt={xhigh:0.95,high:0.8,medium:0.5,low:0.2,minimal:0.1,none:0};AS={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","X-IS-MULTIROOT":"false","X-CLIENT-TYPE":"cline-sdk"};CS={debug:()=>{},log:()=>{},error:()=>{}};Qe=class Qe extends Error{constructor(e,t){super(`${e} at position ${t}`);this.position=t}};Du=/^(http|https|ftp|mailto|file|data|irc):\/\/$/,Zu=/^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;JS=/^[[{\w-]$/;KS={""":'"',"&":"&","<":"<",">":">","'":"'"};Wu={"\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},YS={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
167
|
+
`,r:"\r",t:"\t"};qS=/^\{\s*"([A-Za-z0-9_.$-]+)"\s*:\s*([\s\S]+?)\s*\}$/;tI=[(e)=>JSON.parse(e),(e)=>JSON.parse(QS(e)),eI];II=Yo.enum(["reasoning","prompt-cache","tools","provider-tools","oauth","temperature","files","streaming","vision","computer-use","local-auth","popular"]),xI=Yo.enum(["anthropic","gemini","openai-chat","openai-responses","openai-r1","ai-sdk"]),zI=Yo.enum(["anthropic","ai-sdk","ai-sdk-community","openai","openai-compatible","openai-r1","gemini","bedrock","custom","fetch","vertex"]);Kr={production:{environment:"production",appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",mcpBaseUrl:"https://api.cline.bot/v1/mcp",workOsClientId:"client_01K3A541FN8TA3EPPHTD2325AR"},staging:{environment:"staging",appBaseUrl:"https://staging-app.cline.bot",apiBaseUrl:"https://core-api.staging.int.cline.bot",mcpBaseUrl:"https://core-api.staging.int.cline.bot/v1/mcp",workOsClientId:"client_01K3A5415VF6QBQBG3XYCW91G6"},local:{environment:"local",appBaseUrl:"http://localhost:3000",apiBaseUrl:"http://localhost:7777",mcpBaseUrl:"http://localhost:7777/v1/mcp",workOsClientId:"client_01K6XQAY7JK6T5HXVSZW2S5VYK"}};mx=["idle","running","pending","completed","failed","cancelled"],rs=["rules","skills","workflows","plugins"],hh=rs,fx=new Set(rs);yh=u.object({rootPath:u.string().min(1),hint:u.string().min(1).optional(),associatedRemoteUrls:u.array(u.string().min(1)).optional(),latestGitCommitHash:u.string().min(1).optional(),latestGitBranchName:u.string().min(1).optional()}),bh=u.object({currentWorkspacePath:u.string().min(1).optional(),workspaces:u.record(u.string().min(1),yh)});$h=["current_state","boundary_analysis","interface_proposal"],ye=u.preprocess((e)=>e instanceof Date?e.toISOString():e,u.string().datetime()),$t=u.enum(["pending","in_progress","blocked","completed"]),_h=u.enum(["queued","running","completed","failed","cancelled","interrupted"]),Qn=u.enum(["draft","in_review","finalized"]),_x=u.object({agentId:u.string(),role:u.enum(["lead","teammate"]),description:u.string().optional(),status:u.enum(["idle","running","stopped"])}),kx=u.object({agentId:u.string(),rolePrompt:u.string(),modelId:u.string().optional(),maxIterations:u.number().optional()});wx=u.object({agentId:u.string().min(1).describe("Teammate identifier"),rolePrompt:u.string().min(1).describe("System prompt describing teammate role")}).strict(),Sx=u.object({agentId:u.string().min(1).describe("Teammate identifier"),reason:L(u.string().min(1)).describe("Optional shutdown reason")}),Ix=u.object({}),xx={create:["title","description"],list:[],claim:["taskId"],complete:["taskId","summary"],block:["taskId","reason"]},zx={create:["status","taskId","summary","reason"]},Ux=u.object({action:u.enum(["create","list","claim","complete","block"]),title:L(u.string().min(1)).describe("Task title"),description:L(u.string().min(1)).describe("Task details"),dependsOn:L(u.array(u.string().describe("Dependency task ID"))).describe("Array of dependency task IDs"),assignee:L(u.string().min(1)).describe("Optional assignee"),status:L(u.enum(["pending","in_progress","blocked","completed"])).describe("Optional task status filter"),taskId:L(u.string()).describe("Task ID"),summary:L(u.string().min(1)).describe("Completion summary"),reason:L(u.string().min(1)).describe("Blocking reason")}).superRefine((e,t)=>{for(let n of xx[e.action]){if(e[n]!==void 0)continue;t.addIssue({code:"custom",path:[n],message:`Field "${n}" is required when action=${e.action}`})}}),Tx=u.object({agentId:u.string().describe("Teammate agent ID"),task:u.string().min(1).describe("Task instructions for the teammate"),taskId:L(u.string()).describe("Optional shared task list ID"),runMode:L(u.enum(["sync","async"])).describe("Execution mode: 'sync' blocks until the teammate finishes and returns the result (default if omitted); 'async' queues the run and returns a runId immediately — use team_await_runs to collect results later."),continueConversation:L(u.boolean()).describe("If true, continue the teammate conversation; otherwise start fresh")}),jx=u.object({status:L(u.enum(["queued","running","completed","failed","cancelled","interrupted"])).describe("Optional run status filter. Omit to include all statuses."),agentId:L(u.string().min(1)).describe("Optional teammate ID filter. Omit to include all teammates."),includeCompleted:L(u.boolean()).describe("Include completed/failed runs (default true)")}),Ox=u.object({runId:u.string().min(1).describe("Run ID"),reason:L(u.string().min(1)).describe("Optional cancellation reason")}),Ex=u.object({runId:L(u.string().min(1)).describe("Optional async run ID to await. Omit to wait for all active async runs.")}).strict(),Nx=u.object({toAgentId:u.string().min(1).describe("Recipient agent ID"),subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:L(u.string().min(1)).describe("Optional task ID context")}),Px=u.object({subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:L(u.string().min(1)).describe("Optional task ID context")}),Ax=u.object({unreadOnly:L(u.boolean()).describe("Only unread messages for read action (default true)")}),Dx=u.object({kind:u.enum(["progress","handoff","blocked","decision","done","error"]),summary:u.string().min(1).describe("Update summary"),taskId:L(u.string().min(1)).describe("Optional task ID context"),evidence:L(u.array(u.string().min(1))).describe("Optional evidence links/snippets"),nextAction:L(u.string().min(1)).describe("Planned next step")}),Zx=u.object({}),Cx=u.object({title:u.string().describe("Outcome title"),requiredSections:u.array(u.string()).default($h).describe("Required sections for finalization gate (defaults to current_state,boundary_analysis,interface_proposal)")}),Rx=u.object({outcomeId:u.string().describe("Outcome ID"),section:u.string().describe("Section name"),sourceRunId:L(u.string()).describe("Optional source run ID"),content:u.string().describe("Section fragment content")}),Lx=u.object({fragmentId:u.string().describe("Fragment ID"),approved:u.boolean().describe("Review decision")}),Jx=u.object({outcomeId:u.string().describe("Outcome ID")}),Mx=u.object({}),Fx=u.object({teamId:u.string(),teamName:u.string(),members:u.array(_x),taskCounts:u.record($t,u.number()),unreadMessages:u.number(),missionLogEntries:u.number(),activeRuns:u.number(),queuedRuns:u.number(),outcomeCounts:u.record(Qn,u.number())}),kh=u.object({id:u.string(),title:u.string(),description:u.string(),status:$t,createdAt:ye,updatedAt:ye,createdBy:u.string(),assignee:u.string().optional(),dependsOn:u.array(u.string()),summary:u.string().optional(),isReady:u.boolean(),blockedBy:u.array(u.string())}),Bx=u.discriminatedUnion("action",[u.object({action:u.literal("create"),taskId:u.string(),status:$t,ignoredFields:u.array(u.string()).optional(),note:u.string().optional()}),u.object({action:u.literal("list"),tasks:u.array(kh)}),u.object({action:u.literal("claim"),taskId:u.string(),status:$t,nextStep:u.string()}),u.object({action:u.literal("complete"),taskId:u.string(),status:$t}),u.object({action:u.literal("block"),taskId:u.string(),status:$t})]),Wx=u.object({agentId:u.string(),mode:u.enum(["sync","async"]),status:u.enum(["dispatched","running","queued","joined"]),dispatched:u.boolean(),message:u.string(),deduped:u.boolean().optional(),runId:u.string().optional(),text:u.string().optional(),iterations:u.number().optional()}),wh=u.object({textPreview:u.string(),iterations:u.number(),finishReason:u.string(),durationMs:u.number(),usage:u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()})}),Kx=u.object({id:u.string(),agentId:u.string(),taskId:u.string().optional(),status:_h,messagePreview:u.string(),priority:u.number(),retryCount:u.number(),maxRetries:u.number(),nextAttemptAt:ye.optional(),continueConversation:u.boolean().optional(),startedAt:ye,endedAt:ye.optional(),leaseOwner:u.string().optional(),heartbeatAt:ye.optional(),lastProgressAt:ye.optional(),lastProgressMessage:u.string().optional(),currentActivity:u.string().optional(),error:u.string().optional(),resultSummary:wh.optional()}),Hx=u.object({id:u.string(),teamId:u.string(),fromAgentId:u.string(),toAgentId:u.string(),subject:u.string(),body:u.string(),taskId:u.string().optional(),sentAt:ye,readAt:ye.optional()}),Gx=u.object({id:u.string(),teamId:u.string(),title:u.string(),status:Qn,requiredSections:u.array(u.string()),createdBy:u.string(),createdAt:ye,finalizedAt:ye.optional()}),Xx=u.object({outcomeId:u.string(),status:Qn,requiredSections:u.array(u.string())}),Yx=u.object({agentId:u.string(),status:u.string()}),Qx=u.object({runId:u.string(),status:_h}),Vx=u.object({id:u.string(),toAgentId:u.string()}),qx=u.object({delivered:u.number()}),e0=u.object({id:u.string()}),t0=u.object({status:u.string()}),i0=u.object({fragmentId:u.string(),status:u.string()}),n0=u.object({outcomeId:u.string(),status:Qn});((e)=>{e.TaskStart="task_start",e.TaskEnd="task_end",e.AgentEvent="agent_event",e.TeammateSpawned="teammate_spawned",e.TeammateShutdown="teammate_shutdown",e.TeamTaskUpdated="team_task_updated",e.TeamMessage="team_message",e.TeamMissionLog="team_mission_log",e.TeamTaskCompleted="team_task_completed",e.RunStarted="run_started",e.RunQueued="run_queued",e.RunProgress="run_progress",e.RunCompleted="run_completed",e.RunFailed="run_failed",e.RunCancelled="run_cancelled",e.RunInterrupted="run_interrupted",e.OutcomeCreated="outcome_created",e.OutcomeFragmentAttached="outcome_fragment_attached",e.OutcomeFragmentReviewed="outcome_fragment_reviewed",e.OutcomeFinalized="outcome_finalized"})(Sh||={});Ih=["401","403","unauthorized","forbidden","invalid token","expired token","authentication"];f0=new Set(["accesskeyid","secretaccesskey","idtoken","refreshtoken","accesstoken","access_token","refresh_token","apikey","api_key","authorization","password","secret","token","email","displayname","display_name","userinfo"]),p0=["id","balance","cost","secret"];h0=[{pattern:/AKIA[A-Z0-9]{16}/g,replacement:"AKIA_REDACTED"},{pattern:/\/Users\/[A-Za-z0-9._-]+/g,replacement:"/Users/REDACTED_USER"},{pattern:/\/home\/[A-Za-z0-9._-]+/g,replacement:"/home/REDACTED_USER"}];y0=[{pattern:/tasks\/[A-Za-z0-9._-]+\/[A-Za-z0-9._-]+\/api_conversation_history/g,replacement:"tasks/usr-test/taskid/api_conversation_history"},{pattern:/\/(org|usr|mbr|ses|gen|req|msg|tsk|sch|exe|srv|cli|wkr|evt|sub|tkn)-[A-Za-z0-9]{10,}(?=[/?#]|$)/g,replacement:"/$1-REDACTED"}]});function ut(e){let t=new Set(["no output generated. check the stream for errors."]),n=(o)=>t.has(o.trim().toLowerCase()),r=(o)=>{let s=o;if(typeof s.error==="string"&&s.error.trim())return s.error;if(s.error&&typeof s.error==="object"&&typeof s.error.message==="string"&&s.error.message.trim())return s.error.message;if(typeof s.detail==="string"&&s.detail.trim())return s.detail;if(Array.isArray(s.errors))for(let d of s.errors){let l=i(d);if(l)return l}if("responseBody"in s&&s.responseBody!==o){let d=i(s.responseBody);if(d)return d}return},i=(o)=>{if(!o)return;if(typeof o==="string")try{return i(JSON.parse(o))}catch{return o.trim()||void 0}if(typeof o!=="object")return;if(o instanceof Error){let l=o.message.trim(),c=r(o),m=o.cause,v=i(m);if(l&&n(l))return c??v??void 0;if(c&&c!==l)return c;if(v&&l&&v!==l){let p=m instanceof Error&&m.name&&m.name!=="Error"?`${m.name}: `:"",g=m&&typeof m==="object"&&"code"in m?m.code:void 0,$=typeof g==="string"&&g.trim()?` (${g})`:"";return`${l}: ${p}${v}${$}`}return v??(l||void 0)}let s=r(o);if(s)return s;let d=o;if("cause"in d&&d.cause!==o){let l=i(d.cause);if(l)return l}if(typeof d.message==="string"&&d.message.trim())return d.message;return},a=i(e);if(a)return a;return String(e)}function B(e){let t=e.model.metadata?.family;return typeof t==="string"?t:void 0}function pe(e){let t=e?.trim().toLowerCase();return t?t:void 0}function os(e){return pe(B(e))??""}function Vn(e){return pe(e.modelId)??""}function qn(e){return[e.request.modelId,e.context.model.id,e.context.model.name,e.context.model.metadata?.family].filter(Boolean).join(" ").toLowerCase()}function j0(e,t){let n=pe(e.config.baseUrl??e.provider.api)?.replace(/\/+$/,"");if(!n)return!1;try{return new URL(n).origin.toLowerCase()===t}catch{return n===t||n.startsWith(`${t}/`)}}function Ph(e){let t=pe(e);return t?t.includes("anthropic")||t.includes("claude"):!1}function O0(e){return pe(e)?.includes("claude")??!1}function as(e){let t=pe(e);return t?/(^|[/:._-])qwen(?:$|[/:._-]|\d)/.test(t):!1}function ee(e){let t=pe(e.family);if(t)return Ph(t);return E0(e.modelId)}function E0(e){if(!e)return!1;return Ph(e)}function Ah(e){if(!e)return!1;return O0(e)}function Nt(e){let t=pe(e.family);if(as(t))return!0;return as(e.modelId)}function ss(e){return/(^|[/\s])gemini-3([.-]|$)/.test(qn(e))}function Dh(e){return/(^|[/\s])gemini-2\.5-pro([-\s]|$)/.test(qn(e))}function Zh(e){let t=qn(e);return/(^|[/\s])gemini-(?:\d(?:\.\d)?-)?flash(?:-lite|-image)?([-\s]|$)/.test(t)||t.includes("gemini-flash")}function Ch(e){let t=qn(e);return ss(e)||/(^|[/\s])gemini-2\.5([-\s]|$)/.test(t)||t.includes("gemini-flash-latest")}function N0(e,t){let n=pe(e),r=pe(t);if(!n||!r)return!1;if(n===r)return!0;return r==="qwen"?as(n):!1}function er(e,t){if("requiredCapability"in e&&e.requiredCapability&&!t.capabilities?.includes(e.requiredCapability))return!1;switch(e.matcher){case"anthropic-compatible":return ee(t);case"model-family":return N0(t.family,e.family);case"model-id":return pe(t.modelId)===pe(e.modelId)}}function us(e,t,n){let r=n.provider.metadata?.routing?.reasoning;if(r?.format!==e)return!1;return r.routes.some((i)=>er(i,{modelId:t.modelId,family:B(n),capabilities:n.model.capabilities}))}function tr(e,t){return os(t).includes("glm")||Vn(e).includes("glm")}function Rh(e,t){let n=Vn(e);return n==="minimax-m3"||n==="minimax/minimax-m3"}function Lh(e){return os(e)==="kimi-k2.6"}function Jh(e){return Vn(e).includes("moonshotai/kimi-")}function Mh(e){return os(e).includes("deepseek")}function P0(e){let t=e.model.metadata?.reasoningDefaultOn;return typeof t==="boolean"?t:void 0}function A0(e){return e.providerId==="ollama"&&Vn(e).includes("qwen3")}function Fh(e,t){return[e.providerId,t.config.providerId,t.provider.id].map((r)=>r.toLowerCase()).includes("cerebras")||j0(t,"https://api.cerebras.ai")}function Bh(e){return P0(e.context)??A0(e.request)}import{createHash as D0}from"node:crypto";import{existsSync as Z0,mkdirSync as C0,readdirSync as R0,renameSync as L0,rmSync as Xh,statSync as J0,writeFileSync as M0}from"node:fs";import{join as Yh,resolve as Wh}from"node:path";function B0(){let e=process.env.CLINE_CAPTURE_PROVIDER_REQUEST?.trim().toLowerCase();if(e==="summary"||e==="full")return e;return"off"}function W0(){return process.env.CLINE_CAPTURE_WIRE?.trim().toLowerCase()==="true"}function K0(){let e=Number(process.env.CLINE_CAPTURE_MAX_PREVIEW_BYTES);return Number.isFinite(e)&&e>0?Math.floor(e):Qh}function H0(){return process.env.CLINE_CAPTURE_CLEANUP?.trim().toLowerCase()!=="off"}function G0(){let e=process.env.CLINE_CAPTURE_DIR?.trim();if(e)return Wh(e);let t=process.env.CLINE_DATA_DIR?.trim();if(t)return Wh(t,"provider-request-captures");return}function Pt(e){let t=new WeakSet;try{return JSON.stringify(e,(n,r)=>{if(typeof r==="bigint")return r.toString();if(typeof r!=="object"||r===null)return r;if(t.has(r))return"[Circular]";return t.add(r),r})??""}catch{return String(e??"")}}function Ei(e){return D0("sha256").update(e).digest("hex")}function Ne(e){return Buffer.byteLength(e,"utf8")}function X0(e,t=Qh){let n=Pt(e);if(Ne(n)<=t)return e;let i=Buffer.from(n,"utf8").subarray(0,t).toString("utf8");while(Ne(i)>t)i=i.slice(0,-1);return{truncated:!0,bytes:Ne(n),sha256:Ei(n),preview:i}}function Gh(e){let t=typeof e==="string"?e:Pt(e);return{bytes:Ne(t),estimatedTokens:ot(Ne(t)),sha256:Ei(t),kind:Array.isArray(e)?"array":typeof e}}function Y0(e){if(!Array.isArray(e))return Gh(e);let t={},n=0,r=0,i=e.map((s,d)=>{let l=s&&typeof s==="object"?s:{},c=typeof l.role==="string"?l.role:"unknown";t[c]=(t[c]??0)+1;let m=l.content,v=Array.isArray(m)?m:[m];for(let g of v){if(!g||typeof g!=="object")continue;let $=g.type;if($==="reasoning")n+=1;if($==="tool-result"||c==="tool")r+=1}let p=Gh(m);return{index:d,role:c,contentParts:v.length,contentBytes:p.bytes,estimatedTokens:p.estimatedTokens,sha256:p.sha256}}),a=[...i].sort((s,d)=>d.contentBytes-s.contentBytes).slice(0,5).map((s)=>({...s})),o=Pt(e);return{messageCount:e.length,roleCounts:t,totalBytes:Ne(o),estimatedTokens:ot(Ne(o)),sha256:Ei(o),reasoningBlockCount:n,toolResultCount:r,largestMessages:a,messages:i}}function Q0(e){if(typeof e!=="string")return;let t=e.trim();if(!t.startsWith("{")&&!t.startsWith("["))return;try{return JSON.parse(t)}catch{return}}function V0(e){if("messages"in e)return e.messages;let t=e.body,n=Q0(t);if(n&&typeof n==="object"){let r=n;if("messages"in r)return r.messages;if("prompt"in r)return r.prompt;if("contents"in r)return r.contents}return}function q0(e){return{...e.metadata&&typeof e.metadata==="object"?e.metadata:{},providerId:e.providerId,modelId:e.modelId}}function ls(e){if(typeof e!=="string"&&typeof e!=="number")return;let t=String(e).trim();if(!t)return;return t.replace(/[^a-zA-Z0-9_-]+/g,"_").replace(/^_+|_+$/g,"")||void 0}function e4(e){let t=ls(e.captureId);if(t)return t;let n=Ei(Pt(e)).slice(0,16),r=ls(e.runId),i=ls(e.iteration);return["cap",r,i,n].filter(Boolean).join("_")}function t4(e,t){let n=`${e}:${t}`,r=(Hh.get(n)??0)+1;return Hh.set(n,r),r}function i4(e){if(!H0()||Kh.has(e))return;Kh.add(e);try{let t=Date.now()-F0;for(let n of R0(e)){if(!n.endsWith(ds)&&!(n.includes(ds)&&n.endsWith(Vh)))continue;let r=Yh(e,n);if(J0(r).mtimeMs<t)Xh(r,{force:!0})}}catch{}}function n4(e){try{let t=G0();if(!t)return;C0(t,{recursive:!0}),i4(t);let n=e.correlation&&typeof e.correlation==="object"?e.correlation:{},r=e4(n),i=e.captureStage==="ai_sdk_prompt"||e.captureStage==="wire_request"?e.captureStage:"ai_sdk_prompt",a=t4(r,i),o=Yh(t,`${r}.${i}.${a}${ds}`),s=`${o}.${process.pid}.${Date.now()}${Vh}`;if(M0(s,`${Pt({...e,attempt:a})}
|
|
168
|
+
`,{encoding:"utf8",mode:384}),L0(s,o),Z0(s))Xh(s,{force:!0})}catch{}}function cs(e){try{let t=B0();if(t==="off")return;let n=e.payload&&typeof e.payload==="object"?e.payload:{value:e.payload},r=V0(n),i=Pt(e.payload);n4({timestamp:new Date().toISOString(),captureStage:e.stage,mode:t,correlation:q0(e.request),summary:{payloadBytes:Ne(i),estimatedTokens:ot(Ne(i)),sha256:Ei(i),messages:Y0(r)},...t==="full"?{payload:X0(e.payload,K0())}:{}})}catch{}}async function r4(e,t){let n=t?.body;if(n!==void 0&&n!==null){if(typeof n==="string")return n;if(n instanceof URLSearchParams)return n.toString();if(n instanceof ArrayBuffer)return Buffer.from(n).toString("utf8");if(ArrayBuffer.isView(n))return Buffer.from(n.buffer,n.byteOffset,n.byteLength).toString("utf8");return{type:n.constructor?.name??typeof n}}if(e instanceof Request)try{return await e.clone().text()}catch{return{type:"Request",bodyReadable:!1}}return}function qh(e,t){if(!W0())return e;let n=e??globalThis.fetch;if(!n)return e;let r=async(a,o)=>{return r4(a,o).then((s)=>{cs({stage:"wire_request",request:t,payload:{url:a instanceof Request?a.url:String(a),method:o?.method??(a instanceof Request?a.method:void 0)??"GET",body:s}})}).catch(()=>{}),n(a,o)},i=n;if(typeof i.preconnect==="function")r.preconnect=i.preconnect.bind(n);return r}var Qh=65536,ds=".provider-request.json",Vh=".tmp",F0=86400000,Kh,Hh;var eg=F(()=>{we();Kh=new Set,Hh=new Map});function ir(e){return e.replace(/-([a-z0-9])/gi,(t,n)=>n.toUpperCase())}function Ke(){return{cache_control:{type:"ephemeral"}}}function He(e){let{providerId:t,providerOptionsKey:n,bucketOptions:r}=e,i=n!==t&&n!=="anthropic";return{[t]:r,...i?{[n]:r}:{}}}function nr(e){let t={thinking:{type:e.thinkingType}};return{...He({providerId:e.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t}),openaiCompatible:t}}function fs(e){let t=e?.promptCacheRoutes??[ms],n=e?.reasoningRoutes??[ms];return{routing:{...t.length>0?{promptCache:{format:"anthropic-cache-control",routes:t.map((r)=>({...r}))}}:{},...n.length>0?{reasoning:{format:"anthropic-thinking",routes:n.map((r)=>({...r}))}}:{}}}}function tg(e,t){let n={openaiCompatible:Ke(),[e]:Ke()},r=ir(e);if(r!==e)n[r]=Ke();if(t)n.anthropic=Ke();return n}function ng(e,t,n){if(!e)return;let r=e.content;if(typeof r==="string"){let a=[{type:"text",text:r,providerOptions:tg(t,n)}];if(!n)a.push({type:"text",text:" "});e.content=a;return}if(!Array.isArray(r))return;let i=r.filter((a)=>a&&typeof a==="object"&&a.type==="text").length;for(let a=r.length-1;a>=0;a--){let o=r[a];if(o&&typeof o==="object"&&o.type==="text"){let s=i===1&&!n;if(r[a]={...o,providerOptions:tg(t,n)},s)r.push({type:"text",text:" "});return}}}function Dt(e,t){return ag(e,t)!==void 0}function s4(e,t){return ag(e,t)?.matcher==="anthropic-compatible"}function rg(e){return e.metadata?.promptCacheStrategy==="anthropic-automatic"?"anthropic-automatic":void 0}function u4(e,t){if(rg(t.provider)!=="anthropic-automatic")return;let n=B(t);if(ee({modelId:e.modelId,family:n}))return{matcher:"anthropic-compatible"};if(Nt({modelId:e.modelId,family:n}))return n?{matcher:"model-family",family:n}:{matcher:"model-id",modelId:e.modelId};return}function l4(e,t){if(rg(t.provider)!=="anthropic-automatic")return;let n=B(t);return ee({modelId:e.modelId,family:n})?{matcher:"anthropic-compatible"}:void 0}function d4(e,t){if(t.provider.metadata?.routing)return;let n=B(t);return ee({modelId:e.modelId,family:n})?{matcher:"anthropic-compatible"}:void 0}function ag(e,t){let n=t.provider.metadata?.routing?.promptCache;if(n){if(n.format!=="anthropic-cache-control")return;return n.routes.find((r)=>er(r,{modelId:e.modelId,family:B(t),capabilities:t.model.capabilities}))}return u4(e,t)}function Ni(e,t){let n=t.provider.metadata?.routing?.reasoning;if(!n)return l4(e,t)??d4(e,t);if(n.format!=="anthropic-thinking")return;return n.routes.find((r)=>er(r,{modelId:e.modelId,family:B(t),capabilities:t.model.capabilities}))}function c4(e){let t=e.model.capabilities;return!t||t.includes("reasoning")}function m4(e,t){let n=t?.toLowerCase()??"",r=e?.toLowerCase()??"";if(n.includes("opus")||r.includes("opus"))return"opus";if(n.includes("sonnet")||r.includes("sonnet"))return"sonnet";if(n.includes("haiku")||r.includes("haiku"))return"haiku";return}function f4(e){let t=e?.toLowerCase()??"",n=/claude-(\d+)[.-](\d{1,2})-(?:opus|sonnet|haiku)/i.exec(t),i=/claude-(?:opus|sonnet|haiku)-(.+)/i.exec(t)?.[1]?.match(/\d+/g)??[],a=n?.[1]??i[0],o=n?.[2]??(i[1]?.length<=2?i[1]:void 0);if(!a||!o)return;let s=Number.parseInt(a,10),d=Number.parseInt(o,10);if(!Number.isFinite(s)||!Number.isFinite(d))return;return{major:s,minor:d}}function p4(e){let t=m4(e.modelId,e.family),n=f4(e.modelId);if(!t||!n)return!1;if(n.major!==4)return n.major>4;return(t==="opus"||t==="sonnet")&&n.minor>=6}function Ge(e,t){let n=B(t);if(!Ni(e,t)||!c4(t))return{kind:"none"};return p4({modelId:e.modelId,family:n})?{kind:"anthropic-adaptive"}:{kind:"anthropic-manual"}}function og(e,t){let n=Ge(e,t),i=e.reasoning?.enabled===!0||e.reasoning?.effort!==void 0||typeof e.reasoning?.budgetTokens==="number"&&e.reasoning.budgetTokens>0?n.kind==="anthropic-adaptive"?{type:"adaptive"}:n.kind==="anthropic-manual"?{type:"enabled",budgetTokens:vs({modelId:e.modelId,family:B(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens})}:void 0:void 0;return{...n.kind==="anthropic-adaptive"&&e.reasoning?.effort?{effort:e.reasoning.effort}:{},...i?{thinking:i}:{},...s4(e,t)?Ke():{}}}function vs(e){if(typeof e.explicitBudgetTokens==="number"&&e.explicitBudgetTokens>0)return e.explicitBudgetTokens;if(!e.modelId&&!e.family||!ee({modelId:e.modelId,family:e.family}))return;if(!e.effort)return At;if(typeof e.maxTokens!=="number")return At;if(e.maxTokens<=At)return At;let t=o4[e.effort];if(!t)return At;let n=Math.min(e.maxTokens-1,a4);return Math.max(At,Math.floor(n*t))}function sg(e,t){let n=Ge(e,t);if(n.kind==="none"||!e.reasoning?.enabled&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let r=vs({modelId:e.modelId,family:B(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}),i={};if(e.reasoning?.enabled===!0)i.enabled=!0;if(n.kind==="anthropic-adaptive"&&e.reasoning?.effort)i.effort=e.reasoning.effort;if(typeof e.reasoning?.budgetTokens==="number")i.max_tokens=e.reasoning.budgetTokens;else if(n.kind==="anthropic-manual"&&typeof r==="number"&&r>=0)i.max_tokens=r;return Object.keys(i).length>0?i:void 0}function ug(e,t){if(e.reasoning?.enabled===void 0&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let n=Ge(e,t),r=Ni(e,t),i=B(t),a=n.kind==="none"&&r!==void 0,o=n.kind==="none"&&r===void 0&&(Dt(e,t)||Nt({modelId:e.modelId,family:i})||ee({modelId:e.modelId,family:i}));if(a||o)return;let s=n.kind==="anthropic-manual"?vs({modelId:e.modelId,family:i,effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}):e.reasoning?.budgetTokens,d=e.reasoning?.enabled===!1&&!v4(e.modelId),l={...e.reasoning?.enabled===!0?{enabled:!0}:d?{enabled:!1}:e.reasoning?.effort?{enabled:!0}:{},...e.reasoning?.effort&&n.kind!=="anthropic-manual"?{effort:e.reasoning.effort}:{}};if(typeof s==="number"&&s>=0)l.max_tokens=s;return Object.keys(l).length>0?l:void 0}function v4(e){let t=e.toLowerCase();return t.includes("claude-fable")||t.includes("stepfun/step-3.7-flash")}var At=1024,a4=128000,o4,ms,ig,lt,ps,rr;var Zt=F(()=>{o4={low:0.2,medium:0.5,high:0.8},ms={matcher:"anthropic-compatible"},ig={matcher:"model-family",family:"qwen",requiredCapability:"prompt-cache"};lt=fs(),ps=fs({promptCacheRoutes:[ig],reasoningRoutes:[]}),rr=fs({promptCacheRoutes:[ms,ig]})});function hs(e){return["openai-native","openai"].includes(e.providerId)?{truncation:"auto"}:{}}function h4(e){let{request:t,context:n,suppressions:r}=e;if(r.genericThinking)return{};if(t.reasoning?.enabled!==!0)return{};let i=B(n),a=Ge(t,n),o=Ni(t,n)!==void 0,s=Dt(t,n),d=ee({modelId:t.modelId,family:i}),l=Nt({modelId:t.modelId,family:i});if(!o&&(s||l||d))return{};if(o&&a.kind!=="anthropic-adaptive")return{};return{thinking:{type:"adaptive"}}}function g4(e){let t=e.reasoning?.effort;if(e.suppressions.genericEffort||!t||e.reasoning?.enabled===!1||e.suppressEffortOptions)return{};if(!(!e.usesAnthropicReasoningRoute||e.anthropicReasoningPolicyKind==="anthropic-adaptive"))return{};return{effort:t,reasoningEffort:t,...e.usesAnthropicReasoningRoute?{}:{reasoningSummary:"auto"}}}function lg(e){let{request:t,context:n,target:r,suppressions:i}=e,a=B(n),o=Ge(t,n),s=Ni(t,n)!==void 0,d=Dt(t,n),l=ee({modelId:t.modelId,family:a}),c=Nt({modelId:t.modelId,family:a}),m=!s&&(d||c||l),v=sg(t,n),p=d?Ke():{};return{...r==="openai-compatible"?{strictJsonSchema:!1}:{},...h4({request:t,context:n,suppressions:i}),...g4({reasoning:t.reasoning,usesAnthropicReasoningRoute:s,suppressEffortOptions:m,suppressions:i,anthropicReasoningPolicyKind:o.kind}),...v?{reasoning:v}:{},...p,...hs(t)}}var gs=F(()=>{Zt()});function y4(e){if(e.reasoning?.enabled===void 0)return;return{thinking:{type:e.reasoning.enabled?"enabled":"disabled"}}}function b4(e){if(e.reasoning?.enabled===!0)return{reasoning:{enabled:!0}};if(e.reasoning?.enabled===!1)return{reasoning:{exclude:!0}};return}function dg(e,t){let n=y4(e);return n?{openaiCompatible:n,[e.providerId]:n,...t!==e.providerId?{[t]:n}:{}}:void 0}function cg(e,t,n,r){if(!tr(e,t))return;let i=b4(e);if(!i)return;return{openaiCompatible:i,...r?.includeProviderBuckets===!1?{}:{[e.providerId]:i,...n!==e.providerId?{[n]:i}:{}}}}var ys;var bs=F(()=>{ys={routing:{reasoning:{format:"glm-thinking",routes:[{matcher:"model-family",family:"glm"},{matcher:"model-family",family:"glm-air"},{matcher:"model-family",family:"glm-flash"}]}}}});function $4(e){if(e.reasoning?.enabled===!0)return{thinking:{type:"adaptive"}};if(e.reasoning?.enabled===!1)return{thinking:{type:"disabled"}};return}function _4(e){if(e.reasoning?.enabled===!0)return{reasoning:{enabled:!0}};if(e.reasoning?.enabled===!1)return{reasoning:{exclude:!0}};return}function fg(e,t){let n=$4(e);if(!n)return;return{openaiCompatible:n,[e.providerId]:n,...t!==e.providerId?{[t]:n}:{}}}function pg(e,t){let n=_4(e);return n?He({providerId:e.providerId,providerOptionsKey:t,bucketOptions:n}):void 0}var mg;var $s=F(()=>{mg={routing:{promptCache:{format:"anthropic-cache-control",routes:[{matcher:"anthropic-compatible"}]},reasoning:{format:"minimax-thinking",routes:[{matcher:"model-id",modelId:"MiniMax-M3",requiredCapability:"reasoning"}]}}}});function k4(e){return e?.enabled!==void 0||!!e?.effort||typeof e?.budgetTokens==="number"}function vg(e){let t=e.reasoning;if(!k4(t))return;if(t?.enabled===!1)return{effort:"none"};if(typeof t?.budgetTokens==="number")return{max_tokens:t.budgetTokens};if(t?.effort)return{effort:t.effort};if(t?.enabled===!0)return{enabled:!0};return}function hg(e){return Lh(e.context)}function w4(e){return Jh(e.request)}function S4(e){return Mh(e.context)||e.request.providerId==="deepseek"}function gg(e){return Rh(e.request,e.context)}function yg(e){return e.request.providerId==="ollama"&&e.request.reasoning?.enabled===!1&&Bh({request:e.request,context:e.context})}function _s(e){return us("glm-thinking",e.request,e.context)}function I4(e){return e.context.provider.metadata?.routing?.reasoning?.format==="glm-thinking"}function x4(e){return us("minimax-thinking",e.request,e.context)}function bg(e,t){let n=e.request.reasoning?.enabled;if(n===!0)return"enabled";if(n===!1)return"disabled";return t}function $g(e,t){if(!t)return;return He({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:{reasoning:t}})}function U4(e){let t=e.request.reasoning;if(!t)return;if(ss(e)){if(t.enabled===!1)return{thinkingLevel:Zh(e)?"minimal":"low",includeThoughts:!1};if(!t.effort)return;return{thinkingLevel:t.effort,includeThoughts:!0}}if(t.enabled===!1)return{thinkingBudget:Dh(e)?128:0,includeThoughts:!1};if(typeof t.budgetTokens==="number")return{thinkingBudget:t.budgetTokens,includeThoughts:!0};if(!t.effort)return;return{thinkingBudget:z4[t.effort],includeThoughts:!0}}function kg(e,t){let n=[];for(let r of e)if(r.applies(t))n.push({rule:r});return n}function wg(e){return e.reduce((t,{rule:n})=>{if(!n.suppresses)return t;return{genericThinking:t.genericThinking||n.suppresses.genericThinking||void 0,genericEffort:t.genericEffort||n.suppresses.genericEffort||void 0,genericFanout:t.genericFanout||n.suppresses.genericFanout||void 0}},{})}function Sg(e,t){return e.map(({rule:n})=>n.build(t))}var z4,T4,j4,O4,E4,N4,P4,A4,D4,Z4,C4,R4,L4,J4,M4,F4,B4,W4,K4,_g;var Ig=F(()=>{we();Zt();gs();bs();$s();z4={low:1024,medium:8192,high:24576};T4={id:"provider.anthropic.direct",phase:"provider",description:"Direct Anthropic owns the anthropic bucket built by the base patch.",applies:(e)=>e.request.providerId==="anthropic",suppresses:{genericFanout:!0},build:()=>{return}},j4={id:"provider.google.direct",phase:"provider",description:"Direct Google owns the google bucket through Gemini thinkingConfig.",applies:(e)=>e.request.providerId==="google",suppresses:{genericFanout:!0},build:()=>{return}},O4={id:"adapter.openai",phase:"adapter",description:"OpenAI adapter targets the AI SDK openai bucket, not provider-id buckets.",applies:(e)=>e.target==="openai",build:(e)=>({openai:{strictJsonSchema:!1,...hs(e.request)}})},E4={id:"provider.openai-codex",phase:"provider",description:"Codex CLI uses OpenAI Responses options plus provider-id aliases.",applies:(e)=>e.request.providerId==="openai-codex",suppresses:{genericFanout:!0},build:(e)=>{let t={...e.compatibleOptions,instructions:e.request.systemPrompt,store:!1,strictJsonSchema:!1,systemMessageMode:"remove"};return{openai:t,...He({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t})}}},N4={id:"provider.generic-fanout",phase:"provider-fanout",description:"Default OpenAI-compatible providers receive provider-id and camelCase alias buckets.",applies:(e)=>e.target!=="openai",build:(e)=>e.suppressions.genericFanout?void 0:He({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:e.compatibleOptions})},P4={id:"provider.cline.reasoning",phase:"provider-reasoning",description:"Cline gateway accepts the shared gateway reasoning shape.",applies:(e)=>Et(e.request.providerId),build:(e)=>$g(e,ug(e.request,e.context))},A4={id:"provider.openrouter.reasoning",phase:"provider-reasoning",description:"OpenRouter expects reasoning controls under its first-class reasoning object.",applies:(e)=>e.request.providerId==="openrouter",suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>$g(e,vg(e.request))},D4={id:"provider.cline.minimax-m3.gateway-reasoning",phase:"provider-reasoning",description:"Cline-routed MiniMax M3 keeps the gateway reasoning shape instead of leaking generic thinking.",applies:(e)=>Et(e.request.providerId)&&gg(e),suppresses:{genericThinking:!0,genericEffort:!0},build:()=>{return}},Z4={id:"provider.vercel-ai-gateway.minimax-m3.gateway-reasoning",phase:"provider-reasoning",description:"Vercel-routed MiniMax M3 uses the gateway reasoning include/exclude shape.",applies:(e)=>e.request.providerId==="vercel-ai-gateway"&&gg(e),suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>pg(e.request,e.providerOptionsKey)},C4={id:"provider.google-gemini.thinking-config",phase:"provider",description:"Google/Gemini/Vertex maps reasoning to thinkingConfig.",suppresses:{genericThinking:!0,genericEffort:!0},applies:(e)=>(e.request.providerId==="google"||e.request.providerId==="gemini"||e.request.providerId==="vertex")&&Ch(e)&&(!!e.request.reasoning?.effort||typeof e.request.reasoning?.budgetTokens==="number"||e.request.reasoning?.enabled===!1),build:(e)=>{let t=e.request.providerId==="vertex"?"vertex":"google",n=U4(e);if(!n)return;return{[t]:{thinkingConfig:n}}}},R4={id:"provider.cline.disable-thinking",phase:"provider",description:"Cline-routed non-Kimi-K2.6 Moonshot Kimi models use thinking.type=disabled when reasoning is disabled.",applies:(e)=>Et(e.request.providerId)&&w4(e)&&e.request.reasoning?.enabled===!1&&!hg(e),build:(e)=>nr({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:"disabled"})},L4={id:"family.kimi-k2.6.thinking",phase:"model-family",description:"Kimi K2.6 uses thinking.type and defaults to enabled when reasoning is unset.",applies:(e)=>hg(e)&&e.request.providerId!=="openrouter",suppresses:{genericThinking:!0},build:(e)=>{let t=bg(e,"enabled");return t?nr({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:t}):void 0}},J4={id:"family.deepseek.thinking",phase:"model-family",description:"DeepSeek models use thinking.type only for explicit reasoning enabled/disabled.",applies:(e)=>e.request.providerId!=="openrouter"&&S4(e)&&!yg(e),suppresses:{genericThinking:!0},build:(e)=>{let t=bg(e,void 0);return t?nr({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:t}):void 0}},M4={id:"provider.ollama.reasoning-default-on.disable-none",phase:"provider-reasoning",description:"Ollama models whose reasoning defaults on need reasoningEffort=none when request reasoning is disabled.",applies:yg,build:(e)=>{let t={reasoningEffort:"none",reasoning:{effort:"none"}};return{...He({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t}),openaiCompatible:t}}},F4={id:"provider.routing.glm-thinking.non-glm.suppress-generic-thinking",phase:"provider",description:"Providers with GLM thinking routing should not apply generic adaptive thinking to non-GLM models.",applies:(e)=>I4(e)&&e.request.reasoning?.enabled!==void 0&&!_s(e),suppresses:{genericThinking:!0},build:()=>{return}},B4={id:"provider.routing.glm-thinking",phase:"model-overlay",description:"Providers routed to the GLM thinking format use thinking.type.",applies:_s,suppresses:{genericThinking:!0},build:(e)=>dg(e.request,e.providerOptionsKey)},W4={id:"provider.routing.minimax-thinking",phase:"model-overlay",description:"Direct MiniMax M3 uses thinking.type adaptive/disabled.",applies:x4,suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>fg(e.request,e.providerOptionsKey)},K4={id:"family.glm.routed-reasoning",phase:"model-overlay",description:"Routed GLM models use the generic reasoning include/exclude shape, not thinking.type.",applies:(e)=>!_s(e)&&tr(e.request,e.context),suppresses:{genericThinking:!0},build:(e)=>cg(e.request,e.context,e.providerOptionsKey,{includeProviderBuckets:e.request.providerId!=="openrouter"})},_g=[T4,j4,O4,E4,N4,P4,A4,D4,Z4,C4,R4,L4,J4,M4,F4,B4,W4,K4]});function xg(e){switch(e){case"openai-native":return"openai";case"anthropic":return"anthropic";case"google":case"gemini":return"google";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":return"mistral";case"claude-code":return"claude-code";case"openai-codex":return"openai-codex";case"opencode":return"opencode";case"dify":return"dify";case"sapaicore":return"sapaicore";default:return"openai-compatible"}}function H4(e){let t={};for(let n of e){if(!n)continue;for(let[r,i]of Object.entries(n))t[r]={...t[r]??{},...i}}return t}function G4(e,t){return{anthropic:t,openaiCompatible:e}}function zg(e,t,n=xg(e.providerId)){let r=ir(e.providerId),i=B(t),a=ee({modelId:e.modelId,family:i}),o=a?Ge(e,t):void 0,s={request:e,context:t,providerOptionsKey:r,target:n,isAnthropicCompatibleModelId:a,anthropicReasoningPolicyKind:o?.kind},d=kg(_g,s),l=wg(d),c=lg({request:e,context:t,target:n,suppressions:l}),m=og(e,t),v={...s,compatibleOptions:c,anthropicOptions:m,suppressions:l};return H4([G4(c,m),...Sg(d,v)])}var Ug=F(()=>{Zt();gs();Ig()});var Ng={};he(Ng,{resetLangfuseTelemetryForTests:()=>q4,hasLangfuseTelemetryConfig:()=>Og,ensureLangfuseTelemetry:()=>X4,disposeLangfuseTelemetry:()=>Eg,debugLangfuse:()=>be});function jg(){let e=process?.env,t=e?.LANGFUSE_BASE_URL?.trim(),n=e?.LANGFUSE_PUBLIC_KEY?.trim(),r=e?.LANGFUSE_SECRET_KEY?.trim();if(!t||!n||!r)return;return{baseUrl:t,publicKey:n,secretKey:r}}function Og(){return jg()!==void 0}async function X4(e){if(!Og())return!1;if(dt!==void 0)return be(`cached readiness=${String(dt)}`),dt;if(!ar)ar=Y4();return dt=await ar,be(`initialized readiness=${String(dt)}`),dt}async function Y4(){let{registerDisposable:e}=await Promise.resolve().then(() => (we(),Nh));e(Eg);let t=jg();if(!t)return!1;try{let[{LangfuseSpanProcessor:n},{trace:r},{NodeTracerProvider:i}]=await Promise.all([import("@langfuse/otel"),import("@opentelemetry/api"),import("@opentelemetry/sdk-trace-node")]),a=new n({baseUrl:t.baseUrl,publicKey:t.publicKey,secretKey:t.secretKey});be(`creating span processor baseUrl=${t.baseUrl}`);let o=r.getTracerProvider();if(typeof o?.addSpanProcessor==="function"){o.addSpanProcessor(a);let c=Tg(r);return be(`attached processor to existing tracer provider delegateReady=${String(c)}`),c}let s=o?.constructor?.name;if(s&&s!=="ProxyTracerProvider"&&s!=="NoopTracerProvider")return!1;new i({spanProcessors:[a]}).register();let l=Tg(r);return be(`registered NodeTracerProvider delegateReady=${String(l)}`),l}catch(n){return be(`initialization failed error=${n instanceof Error?n.message:String(n)}`),!1}}function Tg(e){let r=e.getTracerProvider().getDelegate?.()?.constructor?.name;return Boolean(r&&r!=="NoopTracerProvider")}async function Q4(){try{let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.forceFlush?.(),be("forceFlush completed")}catch(e){be(`forceFlush failed error=${e instanceof Error?e.message:String(e)}`)}}async function Eg(){try{await Q4();let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.shutdown?.(),be("shutdown completed")}catch(e){be(`shutdown failed error=${e instanceof Error?e.message:String(e)}`)}}function be(e){if(!V4())return;console.warn(`[langfuse-debug] ${e}`)}function V4(){let e=process.env.CLINE_DEBUG_LANGFUSE;if(!e)return!1;let t=e.trim().toLowerCase();return t==="1"||t==="true"||t==="yes"}function q4(){dt=void 0,ar=void 0}var dt,ar;function or(e){let t=e??globalThis.fetch;if(!t)throw Error("No fetch implementation is available. Pass one in the gateway or provider config.");return t}async function te(e){let t=e.apiKey?.trim();if(t)return t;let r=(await e.apiKeyResolver?.())?.trim();if(r)return r;for(let i of e.apiKeyEnv??[]){let a=e6(i);if(a)return a}return}function e6(e){let t=globalThis.process?.env;if(!t)return;let n=t[e];if(typeof n!=="string")return;let r=n.trim();return r.length>0?r:void 0}var Pg={};he(Pg,{createOpenAIProviderModule:()=>i6});import{createOpenAI as t6}from"@ai-sdk/openai";async function i6(e,t){let n=await te(e),r=t6({apiKey:n,baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>r.responses(i)}}var Ag=()=>{};function r6(e){switch(e.type){case"image-data":case"image-url":case"file-data":case"file-url":case"image-file-id":return!0;default:return!1}}function a6(e){switch(e.type){case"image-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-url":return{type:"file",data:e.url,mediaType:"image/*",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.filename?{filename:e.filename}:{},...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-url":return{type:"file",data:e.url,mediaType:"application/octet-stream",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-file-id":return null}}function sr(){return{type:"text",text:Ue}}function Dg(e,t){let n;try{n=new URL(e)}catch{return!1}if(n.protocol==="data:"){let r=e.indexOf(",");if(r===-1)return!1;if(!e.slice(5,r).toLowerCase().endsWith(";base64"))return!1;let a=e.slice(r+1);if(!es(a))return!1;return We(a.length,0,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t)===null}if(n.protocol!=="http:"&&n.protocol!=="https:")return!1;return We(q,0,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t)===null}function o6(e){try{return new URL(e).protocol==="data:"}catch{return!1}}function s6(e){if(typeof e==="string")return e.length;if(e instanceof Uint8Array)return e.byteLength;if(e instanceof ArrayBuffer)return e.byteLength;return Number.POSITIVE_INFINITY}function u6(e,t){return We(s6(e),0,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t)===null}function l6(e,t){if(e.type!=="content")return null;let n=[],r=[],i=!1;for(let a of e.value){if(!r6(a)){r.push(a);continue}let o=a;if(o.type==="image-data"){let l=nt(o.mediaType,o.data,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t);if(!l.ok){r.push({type:"text",text:Ue}),i=!0;continue}o={...o,data:l.base64,mediaType:l.mediaType}}else if(o.type==="image-url"){if(o6(o.url)){let l=nt(void 0,o.url,{maxImageEncodedBytes:q,maxImageDecodedBytes:me},t);if(!l.ok){r.push(sr()),i=!0;continue}o={...o,url:`data:${l.mediaType};base64,${l.base64}`}}else if(!Dg(o.url,t)){r.push(sr()),i=!0;continue}}else if(o.type==="file-url"){if(!Dg(o.url,t)){r.push(sr()),i=!0;continue}}else if(o.type==="file-data"){if(!u6(o.data,t)){r.push(sr()),i=!0;continue}}let s=a6(o);if(!s){r.push(o);continue}n.push(s),i=!0;let d={type:"text",text:n6};r.push(d)}if(!i)return null;return{stripped:{type:"content",value:r},media:n}}function d6(e){let t=[],n=!1,r=Oi();for(let i of e){if(i.role!=="tool"){t.push(i);continue}let a=[],o=i.content.map((s)=>{if(s.type!=="tool-result")return s;let d=l6(s.output,r);if(!d)return s;return a.push(...d.media),n=!0,{...s,output:d.stripped}});if(t.push({...i,content:o}),a.length>0)t.push({role:"user",content:a})}return{prompt:t,mutated:n}}var n6="(see following user message for image)",ur;var ks=F(()=>{we();ur={specificationVersion:"v3",transformParams:async({params:e})=>{let{prompt:t,mutated:n}=d6(e.prompt);if(!n)return e;return{...e,prompt:t}}}});var Zg={};he(Zg,{createOpenAICompatibleProviderModule:()=>b6});import{createOpenAICompatible as c6}from"@ai-sdk/openai-compatible";import{wrapLanguageModel as m6}from"ai";function f6(e){let t=e.options?.apiVersion;if(typeof t!=="string")return;let n=t.trim();return n.length>0?n:void 0}function p6(e){return e.pathname.startsWith("/openai/deployments/")&&!e.searchParams.has("api-version")}function v6(e,t){let n;try{n=new URL(e instanceof Request?e.url:e.toString())}catch{return e}if(!p6(n))return e;if(n.searchParams.set("api-version",t),e instanceof Request)return new Request(n.toString(),e);return typeof e==="string"?n.toString():n}function h6(e){let t=f6(e);if(!t)return e.fetch;let n=e.fetch??globalThis.fetch;if(!n)return e.fetch;let r=(a,o)=>n(v6(a,t),o),i=n;return r.preconnect=typeof i.preconnect==="function"?i.preconnect.bind(n):()=>{return},r}function g6(e){let t=e.options?.onResponseError;return typeof t==="function"?t:void 0}function y6(e){let t=async(r,i)=>{let a=await e.fetch(r,i);return await e.onResponseError(a),a},n=e.fetch;return t.preconnect=typeof n.preconnect==="function"?n.preconnect.bind(e.fetch):()=>{return},t}async function b6(e,t){let n=await te(e),r=h6(e),i=g6(e),a=i?y6({fetch:or(r),onResponseError:i}):r,o=c6({name:t.provider.id,apiKey:n,...e.baseUrl?{baseURL:e.baseUrl}:{},...e.headers?{headers:e.headers}:{},...a?{fetch:a}:{},includeUsage:!0});return{model:(s)=>m6({model:o(s),middleware:ur})}}var Cg=F(()=>{ks()});function $6(e){let t=e&&typeof e==="object"?e:{},n=t.minimax&&typeof t.minimax==="object"?t.minimax:void 0,r=n?.thinking&&typeof n.thinking==="object"?n.thinking:void 0;return typeof r?.type==="string"?r.type:void 0}async function _6(e){if(typeof e==="string")return JSON.parse(e);if(e instanceof Uint8Array)return JSON.parse(new TextDecoder().decode(e));if(e instanceof ArrayBuffer)return JSON.parse(new TextDecoder().decode(e));return}function k6(e){return JSON.stringify(e)}function Lg(e=fetch){let t=async(r,i)=>{let a=new Headers(i?.headers);if(a.get("x-cline-minimax-thinking-disabled")!=="1")return e(r,i);a.delete("x-cline-minimax-thinking-disabled");let s=await _6(i?.body),d=s&&typeof s==="object"&&!Array.isArray(s)?s:void 0,l=d&&d.thinking===void 0?k6({...d,thinking:{type:"disabled"}}):i?.body;return e(r,{...i,headers:a,body:l})},n=e;return t.preconnect=typeof n.preconnect==="function"?n.preconnect.bind(e):()=>{},t}var Rg;var Jg=F(()=>{Rg={specificationVersion:"v3",transformParams:async({params:e})=>{if($6(e.providerOptions)!=="disabled")return e;return{...e,headers:{...e.headers,["x-cline-minimax-thinking-disabled"]:"1"}}}}});var Mg={};he(Mg,{createAnthropicProviderModule:()=>I6});import{createAnthropic as w6}from"@ai-sdk/anthropic";import{wrapLanguageModel as S6}from"ai";async function I6(e,t){let n=await te(e),r=t.provider.id==="minimax",i=w6({apiKey:n,baseURL:e.baseUrl,headers:e.headers,fetch:r?Lg(e.fetch):e.fetch,name:t.provider.id});return{model:(a)=>{let o=i(a);return r?S6({model:o,middleware:Rg}):o}}}var Fg=F(()=>{Jg()});var Bg={};he(Bg,{createGoogleProviderModule:()=>z6});import{createGoogleGenerativeAI as x6}from"@ai-sdk/google";async function z6(e,t){let n=await te(e),r=x6({apiKey:n,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>r(i)}}var Wg=()=>{};var Hg={};he(Hg,{createVertexProviderModule:()=>j6});import{createVertex as U6}from"@ai-sdk/google-vertex";import{createVertexAnthropic as T6}from"@ai-sdk/google-vertex/anthropic";function lr(e,t){let n=e?.[t];return typeof n==="string"&&n.trim().length>0?n:void 0}function Kg(e,t,n){let r=e?.[t];if(!r||typeof r!=="object"||Array.isArray(r))return;let i=r[n];return typeof i==="string"&&i.trim().length>0?i:void 0}async function j6(e,t){let n=lr(e.options,"project")??lr(e.options,"projectId")??Kg(e.options,"gcp","projectId")??"",r=lr(e.options,"location")??lr(e.options,"region")??Kg(e.options,"gcp","region")??"us-central1",i=n||void 0,a=or(e.fetch);if(Ah(t.model.id)){let s=T6({project:n,location:r,baseURL:e.baseUrl,headers:e.headers,fetch:a});return{model:(d)=>s(d)}}let o=U6({project:n,location:r,apiKey:i?void 0:await te(e),googleAuthOptions:i?{projectId:i}:void 0,baseURL:e.baseUrl,headers:e.headers,fetch:a});return{model:(s)=>o(s)}}var Gg=()=>{};var Xg={};he(Xg,{createBedrockProviderModule:()=>N6});import{createAmazonBedrock as O6}from"@ai-sdk/amazon-bedrock";import{fromNodeProviderChain as ws}from"@aws-sdk/credential-providers";async function N6(e){let t=D6(e.options?.authentication),n=t==="api-key"||t==="apikey",r=K(e.options?.accessKeyId)!==void 0&&K(e.options?.secretAccessKey)!==void 0,i=K(e.options?.profile)!==void 0,o=!n&&(t==="iam"||t==="profile"||i)?void 0:await A6(e,{includeEnvironment:n||!r}),s=P6(e,{authentication:t,apiKey:o,hasDirectCredentials:r,hasProfile:i}),d=t==="iam"||t==="profile"||r||s!==void 0,l=O6({region:K(e.options?.region),apiKey:n?o??"":o??(d?"":void 0),accessKeyId:s?void 0:K(e.options?.accessKeyId),secretAccessKey:s?void 0:K(e.options?.secretAccessKey),sessionToken:s?void 0:K(e.options?.sessionToken),baseURL:e.baseUrl??K(e.options?.endpoint),headers:e.headers,fetch:e.fetch,credentialProvider:s});return{model:(c)=>l(c)}}function P6(e,t){let n=K(e.options?.region);if(typeof e.options?.credentialProvider==="function")return e.options.credentialProvider;if(t.authentication==="api-key"||t.authentication==="apikey"||t.apiKey)return;if(t.authentication==="profile"||t.hasProfile){let r=K(e.options?.profile);return ws({ignoreCache:!0,...r?{profile:r}:{},...n?{clientConfig:{region:n}}:{}})}if(t.hasDirectCredentials)return;return n?ws({clientConfig:{region:n}}):ws()}async function A6(e,t){let n=K(e.apiKey)??K(e.options?.apiKey)??K(e.options?.bedrockApiKey)??K(e.options?.awsBedrockApiKey);if(n)return n;let r=K(await e.apiKeyResolver?.());if(r)return r;if(!t.includeEnvironment)return;for(let i of e.apiKeyEnv??[]){if(E6.has(i))continue;let a=K(process.env[i]);if(a)return a}return K(process.env.AWS_BEARER_TOKEN_BEDROCK)}function D6(e){return e==="iam"||e==="api-key"||e==="apikey"||e==="profile"?e:void 0}function K(e){if(typeof e!=="string")return;let t=e.trim();return t.length>0?t:void 0}var E6;var Yg=F(()=>{E6=new Set(["AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","AWS_REGION","AWS_DEFAULT_REGION","AWS_PROFILE"])});var Qg={};he(Qg,{createMistralProviderModule:()=>R6});import{createMistral as Z6}from"@ai-sdk/mistral";import{wrapLanguageModel as C6}from"ai";async function R6(e){let t=Z6({apiKey:await te(e),baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch});return{model:(n)=>C6({model:t(n),middleware:ur})}}var Vg=F(()=>{ks()});var Ct={};he(Ct,{createSapAiCoreProviderModule:()=>rz,createOpenCodeProviderModule:()=>G6,createOpenAICodexProviderModule:()=>K6,createDifyProviderModule:()=>X6,createClaudeCodeProviderModule:()=>W6});import{createSAPAIProvider as L6}from"@jerome-benoit/sap-ai-provider";import{createClaudeCode as J6}from"ai-sdk-provider-claude-code";import{createCodexExec as M6}from"ai-sdk-provider-codex-cli";import{createDifyProvider as F6}from"dify-ai-provider";function Pi(e){return e.options??{}}async function W6(e){let t=J6(Pi(e));return{model:(n)=>t(n)}}async function K6(e){let t=M6(Pi(e));return{model:(n)=>t(n)}}async function H6(e){let t=["SIGINT","SIGTERM"],n=new Map(t.map((i)=>[i,new Set(process.listeners(i))])),r=await e();for(let i of t)for(let a of process.listeners(i))if(!n.get(i)?.has(a))process.removeListener(i,a);return r}async function G6(e){let t=await H6(async()=>{let{createOpencode:n}=await import("ai-sdk-provider-opencode-sdk");return n(Pi(e))});return{model:(n)=>t(n)}}async function X6(e){let t=await te(e),n=F6({baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,...Pi(e)});return{model:(r)=>n(r,{apiKey:t})}}function Xe(e,t){let n=e[t];return typeof n==="string"&&n.trim().length>0?n.trim():void 0}function Y6(e){return e.replace(/\/+$/,"").replace(/\/oauth\/token$/i,"")}function Q6(e,t){return Boolean(e.apiKey?.trim()||e.baseUrl?.trim()||Xe(t,"clientId")||Xe(t,"clientSecret")||Xe(t,"tokenUrl"))}function V6(e,t){let n=Xe(t,"clientId"),r=Xe(t,"clientSecret")??e.apiKey?.trim(),i=Xe(t,"tokenUrl"),a=e.baseUrl?.trim();if(!n||!r||!i||!a){if(!Q6(e,t))return;let o=[!n?"sap.clientId":void 0,!r?"sap.clientSecret":void 0,!i?"sap.tokenUrl":void 0,!a?"baseUrl":void 0].filter(Boolean);throw Error(`SAP AI Core provider is missing required configuration: ${o.join(", ")}.`)}return JSON.stringify({clientid:n,clientsecret:r,serviceurls:{AI_API_URL:a.replace(/\/+$/,"")},url:Y6(i)})}function q6(e){let t=e.api;if(t==="orchestration"||t==="foundation-models")return t;if(e.useOrchestrationMode===!1)return"foundation-models";return"orchestration"}async function ez(e,t){if(!e)return await t();let n=qg.catch(()=>{}),r;qg=new Promise((a)=>{r=a}),await n;let i=process.env.AICORE_SERVICE_KEY;process.env.AICORE_SERVICE_KEY=e;try{return await t()}catch(a){throw a}finally{iz(i),r()}}function tz(e){return B6.has(e)}function iz(e){if(e===void 0){delete process.env.AICORE_SERVICE_KEY;return}process.env.AICORE_SERVICE_KEY=e}function nz(e,t){if(!t||!e||typeof e!=="object")return e;return new Proxy(e,{get(n,r,i){let a=Reflect.get(n,r,i);if(typeof a!=="function"||!tz(r))return a;return(...o)=>ez(t,()=>a.apply(n,o))}})}async function rz(e){let t=Pi(e),n=V6(e,t),r=Xe(t,"deploymentId"),i=L6({name:e.providerId,...r?{deploymentId:r}:{resourceGroup:Xe(t,"resourceGroup")},api:q6(t),...typeof t.defaultSettings==="object"&&t.defaultSettings!==null&&!Array.isArray(t.defaultSettings)?{defaultSettings:t.defaultSettings}:{}});return{model:(a)=>nz(i(a),n)}}var B6,qg;var Rt=F(()=>{B6=new Set(["doGenerate","doStream","doEmbed"]),qg=Promise.resolve()});var ue={};he(ue,{repairMalformedToolCall:()=>ry,normalizeUsage:()=>uy,createVertexProvider:()=>pr,createSapAiCoreProvider:()=>js,createOpenCodeProvider:()=>Us,createOpenAIProvider:()=>dr,createOpenAICompatibleProvider:()=>cr,createOpenAICodexProvider:()=>zs,createMistralProvider:()=>Is,createGoogleProvider:()=>fr,createDifyProvider:()=>Ts,createClaudeCodeProvider:()=>xs,createBedrockProvider:()=>vr,createAnthropicProvider:()=>mr});import{jsonSchema as az,NoSuchToolError as oz,streamText as sz}from"ai";import{nanoid as ey}from"nanoid";function uz(e,t,n){let r=ny(e.messages,n,{includeReasoning:iy(e,t)}),i=ee({modelId:e.modelId,family:B(t)});for(let a=r.length-1;a>=0;a--)if(r[a]?.role==="user"){ng(r[a],e.providerId,i);break}return r}function lz(e,t){let n=t.provider.metadata?.stickySession;if(!n)return;let r=e.metadata,i=r&&typeof r==="object"?r[n.metadataKey]:void 0;if(typeof i!=="string")return;let a=i.trim();if(!a)return;return{transport:n.transport,field:n.field,value:a}}async function dz(e,t){let n=t?.body;if(n===null)return;if(typeof n==="string")return{source:"init-body",text:n};if(n instanceof URLSearchParams)return{source:"init-body",text:n.toString()};if(n instanceof ArrayBuffer)return{source:"init-body",text:Buffer.from(n).toString("utf8")};if(ArrayBuffer.isView(n))return{source:"init-body",text:Buffer.from(n.buffer,n.byteOffset,n.byteLength).toString("utf8")};if(n!==void 0)return;if(e instanceof Request)try{return{request:e,source:"request",text:await e.clone().text()}}catch{return}return}async function cz(e,t,n){let r=await dz(e,t);if(!r?.text.trim().startsWith("{"))return[e,t];let i;try{i=JSON.parse(r.text)}catch{return[e,t]}if(!i||typeof i!=="object"||Array.isArray(i))return[e,t];let a=i,o=a[n.field];if(typeof o!=="string"||!o.trim())a[n.field]=n.value;let s=JSON.stringify(a);if(r.source==="init-body")return[e,{...t,body:s}];return[new Request(r.request,{body:s}),t]}function mz(e,t,n){let r=new Headers(e instanceof Request?e.headers:void 0);if(new Headers(t?.headers).forEach((i,a)=>{r.set(a,i)}),!r.get(n.field)?.trim())r.set(n.field,n.value);return[e,{...t,headers:r}]}function fz(e,t,n){let r=lz(t,n);if(!r)return e;let i=e??globalThis.fetch;if(!i)return e;let a=async(s,d)=>{let[l,c]=r.transport==="json-body"?await cz(s,d,r):mz(s,d,r);return i(l,c)},o=i;if(typeof o.preconnect==="function")a.preconnect=o.preconnect.bind(i);return a}function iy(e,t){return!Fh(e,t)}async function pz(e){try{return(await Promise.resolve().then(() => Ng)).ensureLangfuseTelemetry(e)}catch{return!1}}function ny(e,t,n){let r=n?.includeReasoning??!0,i=[];for(let a of e){let o=[],s=!1;for(let d of a.content){if(d.type==="text"){o.push({type:"text",text:V(d.text)});continue}if(d.type==="reasoning"){if(!r){s=!0;continue}let l=d.metadata,c=l?.signature,m=l?.redactedData;o.push({type:"reasoning",text:V(d.text),...typeof c==="string"||typeof m==="string"?{providerOptions:{anthropic:{...typeof c==="string"?{signature:c}:{},...typeof m==="string"?{redactedData:m}:{}}}}:{}});continue}if(d.type==="file"){o.push({type:"file",path:d.path,content:d.content});continue}if(d.type==="image"){o.push({type:"image",image:d.image,mediaType:d.mediaType});continue}if(d.type==="tool-call"){let l=d.metadata,c=l?.thoughtSignature??l?.signature??l?.thought_signature;o.push({type:"tool-call",toolCallId:d.toolCallId,toolName:d.toolName,input:d.input,...typeof c==="string"?{providerOptions:{google:{thoughtSignature:c}}}:{}});continue}if(d.type==="tool-result")o.push({type:"tool-result",toolCallId:d.toolCallId,toolName:d.toolName,output:d.output,isError:d.isError??!1})}if(o.length>0)i.push({role:a.role,content:o});else if(!r&&s)continue;else if(a.role==="user"||a.role==="assistant")i.push({role:a.role,content:""})}return ts(t,i,{assistantToolCallArgKey:"input"})}function vz(e){if(!e.tools?.length)return;return Object.fromEntries(e.tools.map((t)=>[t.name,{description:t.description,inputSchema:az(hz(t.inputSchema))}]))}async function ry({toolCall:e,error:t}){if(oz.isInstance(t))return null;if(typeof e.input!=="string"||e.input.trim()==="")return null;try{return JSON.parse(e.input),null}catch{}let n=is(e.input);if(n===e.input||typeof n==="string")return null;return{...e,input:JSON.stringify(n)}}function hz(e){if(e.type==="object")return e;return{type:"object",...e}}function ay(e){return e.provider.capabilities?.includes("provider-tools")??!1}function oy(e,t){if(!e||typeof e!=="object"||Array.isArray(e))return t;return{...e,...t}}function sy(e){return oy(e.metadata,{toolSource:{providerId:e.request.providerId,modelId:e.request.modelId,executionMode:ay(e.context)?"provider":"runtime"}})}function gz(e){return sy({metadata:oy(Ss(e.part),{inputParseError:`Tool call ${e.toolName} was rejected before execution: ${e.errorMessage}`,aiSdkToolError:e.errorMessage}),request:e.request,context:e.context})}function yz(e){return e.providerId==="openai-codex"?void 0:e.systemPrompt}function bz(e,t){if(e==="tool-calls"||e==="tool_calls"||t)return"tool-calls";if(e==="length"||e==="max_tokens")return"max-tokens";if(e==="error")return"error";return"stop"}function Se(e,...t){for(let n of t){let r=e[n];if(typeof r==="number"&&Number.isFinite(r))return r;if(typeof r==="string"&&r.trim().length>0&&Number.isFinite(Number(r)))return Number(r)}return 0}function se(e){if(typeof e==="number"&&Number.isFinite(e))return e;if(typeof e==="string"&&e.trim().length>0&&Number.isFinite(Number(e)))return Number(e);return}function Ie(e,...t){let n=e;for(let r of t){if(!n||typeof n!=="object")return 0;n=n[r]}return se(n)??0}function _z(e,t){let n=e;for(let r of t){if(!n||typeof n!=="object")return 0;n=n[r]}return se(n)??0}function kz(e,t){for(let n of e)for(let r of t){let i=_z(n,r);if(i>0)return i}return 0}function wz(e){if(!e||typeof e!=="object")return;let t=e;for(let n of Object.values(t)){if(!n||typeof n!=="object")continue;let r=n;if(r.usage&&typeof r.usage==="object")return r.usage}return}function Sz(e,t){if(!t||typeof t!=="object")return;let n=t,r=se(n.input),i=se(n.output);if(r===void 0||i===void 0)return;let a=se(n.cacheRead)??0,o=se(n.cacheWrite)??r*1.25;return Math.max(0,e.inputTokens-e.cacheReadTokens-e.cacheWriteTokens)/1e6*r+e.outputTokens/1e6*i+e.cacheReadTokens/1e6*a+e.cacheWriteTokens/1e6*o}function uy(e,t,n){let r=e&&typeof e==="object"?e:{},i=wz(t),a=t&&typeof t==="object"?t:{},o=a.gateway&&typeof a.gateway==="object"?a.gateway:{},s=r.raw&&typeof r.raw==="object"?r.raw:r,d=se(s.cost_details?.upstream_inference_cost)??se(s.upstream_inference_cost),l=se(s.market_cost)??se(s.marketCost)??se(o.marketCost),c=se(s.cost)??se(o.cost),m=l!==void 0||c!==void 0||d!==void 0,p=(s.is_byok===!0||s.isByok===!0||o.is_byok===!0||o.isByok===!0)&&c!==void 0&&d!==void 0,g=c!==void 0&&c>0?c:d??c,$=l??(p?c+d:g),E={inputTokens:Ie(r,"inputTokens","total")||Se(r,"inputTokens","input_tokens","prompt_tokens")||Se(s,"promptTokenCount","prompt_token_count"),outputTokens:Ie(r,"outputTokens","total")||Se(r,"outputTokens","output_tokens","completion_tokens")||Se(s,"candidatesTokenCount","candidates_token_count"),cacheReadTokens:Ie(r,"inputTokens","cacheRead")||Ie(r,"inputTokenDetails","cacheReadTokens")||Se(r,"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens")||Ie(r,"prompt_tokens_details","cached_tokens")||Ie(s,"prompt_tokens_details","cached_tokens")||Se(s,"cachedContentTokenCount")||Se(i??{},"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens"),cacheWriteTokens:Ie(r,"inputTokens","cacheWrite")||Ie(r,"inputTokenDetails","cacheWriteTokens")||Ie(r,"prompt_tokens_details","cache_write_tokens")||Se(r,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||Ie(s,"prompt_tokens_details","cache_write_tokens")||Se(s,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||Se(i??{},"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")},T=kz([r,s,i??{}],$z),A=$!==void 0?$:m?void 0:Sz(E,n);return{...E,...T>0?{reasoningTokenCount:T}:{},...typeof A==="number"?{totalCost:A}:{}}}function ty(e){if(!e)return;let t=()=>{},n=(i)=>{if(i&&typeof i.catch==="function")i.catch(t)},r=e;for(let i of Object.keys(e))try{n(r[i])}catch{}}function Ss(e){let t={};if(typeof e.thoughtSignature==="string")t.thoughtSignature=e.thoughtSignature;if(typeof e.thought_signature==="string")t.thought_signature=e.thought_signature;let n=e.providerMetadata&&typeof e.providerMetadata==="object"?e.providerMetadata:void 0,r=n?.google&&typeof n.google==="object"?n.google:void 0,i=n?.vertex&&typeof n.vertex==="object"?n.vertex:void 0;if(typeof t.thoughtSignature!=="string"&&typeof(r?.thoughtSignature??i?.thoughtSignature)==="string")t.thoughtSignature=r?.thoughtSignature??i?.thoughtSignature;if(typeof t.thought_signature!=="string"&&typeof r?.thought_signature==="string")t.thought_signature=r.thought_signature;return Object.keys(t).length>0?t:void 0}async function*Iz(e,t,n,r,i){let a=!1,o=new Set,s,d,l,c;try{if(e.fullStream)for await(let p of e.fullStream){if(p.type==="text-delta"){let g=p.textDelta??p.text??p.delta;if(g)yield{type:"text-delta",text:g};continue}if(p.type==="reasoning-delta"||p.type==="reasoning"){let g=p.textDelta??p.text??p.reasoning;if(g)yield{type:"reasoning-delta",text:g,metadata:Ss(p)};continue}if(p.type==="tool-call"){a=!0;let g=p.toolCallId??p.id??`tool_${ey()}`;o.add(g);let $=p.input??p.args??{},E=typeof $==="string"?$:JSON.stringify($);yield{type:"tool-call-delta",toolCallId:g,toolName:p.toolName??p.name??"tool",input:typeof $==="string"?void 0:$,inputText:E,metadata:sy({metadata:Ss(p),request:t,context:n})};continue}if(p.type==="tool-error"){a=!0;let g=p.toolCallId??p.id??`tool_${ey()}`,$=o.has(g);o.add(g);let E=p.toolName??p.name??"tool",T=p.input??p.args??{},A=typeof T==="string"?T:JSON.stringify(T),I=p.error===void 0?"Tool input was rejected by the model adapter":ut(p.error);yield{type:"tool-call-delta",toolCallId:g,toolName:E,input:$?void 0:typeof T==="string"?void 0:T,inputText:$?void 0:A,metadata:gz({part:p,errorMessage:I,request:t,context:n,toolName:E})};continue}if(p.type==="finish")l=p.usage??p.totalUsage,c=p.providerMetadata,s=p.finishReason??p.rawFinishReason??p.reason;if(p.type==="error"){d=i?.current??ut(p.error);break}if(p.type==="abort")break}else if(e.textStream)for await(let p of e.textStream)yield{type:"text-delta",text:p}}catch(p){d=i?.current??ut(p)}let m,v;if(d)m=l,v=c;else if(e.usage)try{m=await e.usage}catch(p){if(!d)d=i?.current??ut(p);m=l,v=c}else m=l,v=c;if(m)yield{type:"usage",usage:uy(m,v,r)};yield{type:"finish",reason:d?"error":bz(s,a),error:d}}async function xz(e,t,n){switch(e){case"openai":{let{createOpenAIProviderModule:r}=await Promise.resolve().then(() => (Ag(),Pg));return r(t,n)}case"openai-compatible":{let{createOpenAICompatibleProviderModule:r}=await Promise.resolve().then(() => (Cg(),Zg));return r(t,n)}case"anthropic":{let{createAnthropicProviderModule:r}=await Promise.resolve().then(() => (Fg(),Mg));return r(t,n)}case"google":{let{createGoogleProviderModule:r}=await Promise.resolve().then(() => (Wg(),Bg));return r(t,n)}case"vertex":{let{createVertexProviderModule:r}=await Promise.resolve().then(() => (Gg(),Hg));return r(t,n)}case"bedrock":{let{createBedrockProviderModule:r}=await Promise.resolve().then(() => (Yg(),Xg));return r(t)}case"mistral":{let{createMistralProviderModule:r}=await Promise.resolve().then(() => (Vg(),Qg));return r(t)}case"claude-code":{let{createClaudeCodeProviderModule:r}=await Promise.resolve().then(() => (Rt(),Ct));return r(t)}case"openai-codex":{let{createOpenAICodexProviderModule:r}=await Promise.resolve().then(() => (Rt(),Ct));return r(t)}case"opencode":{let{createOpenCodeProviderModule:r}=await Promise.resolve().then(() => (Rt(),Ct));return r(t)}case"dify":{let{createDifyProviderModule:r}=await Promise.resolve().then(() => (Rt(),Ct));return r(t)}case"sapaicore":{let{createSapAiCoreProviderModule:r}=await Promise.resolve().then(() => (Rt(),Ct));return r(t)}}}function ve(e){return async(t)=>({async*stream(n,r){let i=r.logger,a,o={current:void 0};try{let s=await xz(e,{...t,fetch:fz(qh(t.fetch,n),n,r)},r),d=await pz(t.providerId),l=ay(r)?void 0:vz(n),c=yz(n),m=typeof c==="string"&&c.trim().length>0,v=m?void 0:c,p=Dt(n,r)?uz(n,r,v):ny(n.messages,v,{includeReasoning:iy(n,r)}),g=zg(n,r,e);cs({stage:"ai_sdk_prompt",request:n,payload:{messages:p,...m?{system:c}:{},tools:l,providerOptions:g,maxOutputTokens:n.maxTokens,temperature:n.temperature}}),a=sz({model:s.model(r.model.id),messages:p,...m?{system:c}:{},tools:l,temperature:n.temperature,...n.maxTokens!==void 0?{maxOutputTokens:n.maxTokens}:{},abortSignal:n.signal,experimental_repairToolCall:ry,experimental_telemetry:{isEnabled:d},providerOptions:g,onError:({error:$})=>{let E=ut($);if(o.current=E,i?.error)i.error("[ai-sdk] stream error",{providerId:n.providerId,error:$,severity:"error"});else if(i)i.log(`[ai-sdk] stream error: ${E}`,{providerId:n.providerId,severity:"error"});Yn(r.telemetry,{component:"llms",operation:"provider.stream",error:$,severity:"error",handled:!0,context:{providerId:n.providerId,modelId:n.modelId,providerKind:e}})}}),ty(a),yield*Iz(a,n,r,r.model.metadata?.pricing,o)}catch(s){ty(a);let d=o.current??ut(s);if(i?.error)i.error("[ai-sdk] provider error",{providerId:n.providerId,error:s,severity:"error"});else if(i)i.log(`[ai-sdk] provider error: ${d}`,{providerId:n.providerId,severity:"error"});Yn(r.telemetry,{component:"llms",operation:"provider.create_or_stream",error:s,severity:"error",handled:!0,context:{providerId:n.providerId,modelId:n.modelId,providerKind:e}}),yield{type:"finish",reason:"error",error:d}}}})}var $z,dr,cr,mr,fr,pr,vr,Is,xs,zs,Us,Ts,js;var ie=F(()=>{we();eg();Zt();Ug();$z=[["outputTokenDetails","reasoningTokens"],["output_tokens_details","reasoning_tokens"],["completion_tokens_details","reasoning_tokens"],["reasoningTokens"],["reasoning_tokens"]];dr=ve("openai"),cr=ve("openai-compatible"),mr=ve("anthropic"),fr=ve("google"),pr=ve("vertex"),vr=ve("bedrock"),Is=ve("mistral"),xs=ve("claude-code"),zs=ve("openai-codex"),Us=ve("opencode"),Ts=ve("dify"),js=ve("sapaicore")});var Bt;((x)=>{x.ANTHROPIC="anthropic";x.CLAUDE_CODE="claude-code";x.CLINE="cline";x.CLINE_PASS="cline-pass";x.OPENAI_COMPATIBLE="openai-compatible";x.OPENAI_NATIVE="openai-native";x.OPENAI_CODEX="openai-codex";x.OPENAI_CODEX_CLI="openai-codex-cli";x.OPENCODE="opencode";x.BEDROCK="bedrock";x.VERTEX="vertex";x.GEMINI="gemini";x.OLLAMA="ollama";x.LMSTUDIO="lmstudio";x.DEEPSEEK="deepseek";x.XAI="xai";x.TOGETHER="together";x.FIREWORKS="fireworks";x.GROQ="groq";x.POOLSIDE="poolside";x.CEREBRAS="cerebras";x.SAMBANOVA="sambanova";x.NEBIUS="nebius";x.BASETEN="baseten";x.REQUESTY="requesty";x.LITELLM="litellm";x.HUGGINGFACE="huggingface";x.VERCEL_AI_GATEWAY="vercel-ai-gateway";x.V0="v0";x.AIHUBMIX="aihubmix";x.HICAP="hicap";x.NOUS_RESEARCH="nousResearch";x.HUAWEI_CLOUD_MAAS="huawei-cloud-maas";x.WANDB="wandb";x.XIAOMI="xiaomi";x.TENCENT_TOKENHUB="tencent-tokenhub";x.KILO="kilo";x.ZAI="zai";x.ZAI_CODING_PLAN="zai-coding-plan";x.QWEN="qwen";x.QWEN_CODE="qwen-code";x.DOUBAO="doubao";x.MISTRAL="mistral";x.MOONSHOT="moonshot";x.ASKSAGE="asksage";x.MINIMAX="minimax";x.DIFY="dify";x.OCA="oca";x.SAPAICORE="sapaicore";x.OPENROUTER="openrouter"})(Bt||={});var ib={openai:"openai-compatible",togetherai:"together","sap-ai-core":"sapaicore"},Mi=Object.values(Bt);function wr(e){return Mi.includes(e)}function G(e){let t=e.trim();return ib[t]??t}function Fi(e){return G(e.routingProviderId??e.providerId)}ie();import{nanoid as Bs}from"nanoid";we();var Os={version:1783386091437,providers:{aihubmix:{"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1268,output:3.9438,cacheRead:0.2817,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"qwen3.7-plus":{id:"qwen3.7-plus",name:"Qwen3.7 Plus",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.282,output:1.128,cacheRead:0.0564,cacheWrite:0.3525},releaseDate:"2026-06-02",family:"qwen"},"claude-opus-4-8":{id:"claude-opus-4-8",name:"Claude Opus 4.8",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"claude-opus-4-8-think":{id:"claude-opus-4-8-think",name:"Claude Opus 4.8",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"qwen3.7-max":{id:"qwen3.7-max",name:"Qwen3.7 Max",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.69,output:5.07,cacheRead:0.169,cacheWrite:2.1125},releaseDate:"2026-05-21",family:"qwen"},"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM 5 Vision Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.7042,output:3.09848,cacheRead:0.169008,cacheWrite:0},releaseDate:"2026-05-09",family:"glmv"},"qwen3.6-max-preview":{id:"qwen3.6-max-preview",name:"Qwen3.6 Max Preview",contextWindow:240000,maxInputTokens:240000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.27,output:7.61,cacheRead:0.1268,cacheWrite:1.585},releaseDate:"2026-05-09",family:"qwen3.6"},"qwen3.6-plus":{id:"qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.28,output:1.69,cacheRead:0.0282,cacheWrite:0.3525},releaseDate:"2026-05-09",family:"qwen3.6"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:1},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01",family:"grok"},"doubao-seed-2-0-lite-260428":{id:"doubao-seed-2-0-lite-260428",name:"Doubao Seed 2.0 Lite 260428",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.08,output:0.51,cacheRead:0.01692,cacheWrite:0},releaseDate:"2026-04-28",family:"seed"},"doubao-seed-2-0-mini-260428":{id:"doubao-seed-2-0-mini-260428",name:"Doubao Seed 2.0 Mini 260428",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.03,output:0.28,cacheRead:0.00564,cacheWrite:0},releaseDate:"2026-04-28",family:"seed"},"alicloud-deepseek-v4-flash":{id:"alicloud-deepseek-v4-flash",name:"DeepSeek V4 Flash (Alibaba Cloud)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"alicloud-deepseek-v4-pro":{id:"alicloud-deepseek-v4-pro",name:"DeepSeek V4 Pro (Alibaba Cloud)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.69,output:3.38,cacheRead:0.13,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"deep-deepseek-v4-flash":{id:"deep-deepseek-v4-flash",name:"DeepSeek V4 Flash (DeepSeek)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.154,output:0.308,cacheRead:0.0308,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deep-deepseek-v4-pro":{id:"deep-deepseek-v4-pro",name:"DeepSeek V4 Pro (DeepSeek)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.478,output:0.956,cacheRead:0.004302,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"coding-xiaomi-mimo-v2.5":{id:"coding-xiaomi-mimo-v2.5",name:"Coding Xiaomi MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.4,cacheRead:0.016,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"coding-xiaomi-mimo-v2.5-pro":{id:"coding-xiaomi-mimo-v2.5-pro",name:"Coding Xiaomi MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.6,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"xiaomi-mimo-v2.5":{id:"xiaomi-mimo-v2.5",name:"Xiaomi MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.44,output:2.2,cacheRead:0.088,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi-mimo-v2.5-free":{id:"xiaomi-mimo-v2.5-free",name:"Xiaomi MiMo-V2.5 (free)",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi-mimo-v2.5-pro":{id:"xiaomi-mimo-v2.5-pro",name:"Xiaomi MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.1,output:3.3,cacheRead:0.22,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"xiaomi-mimo-v2.5-pro-free":{id:"xiaomi-mimo-v2.5-pro-free",name:"Xiaomi MiMo-V2.5-Pro (free)",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2"},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-opus-4-7-think":{id:"claude-opus-4-7-think",name:"Claude Opus 4.7 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"coding-glm-5.1":{id:"coding-glm-5.1",name:"Coding GLM 5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.22,cacheRead:0.013,cacheWrite:0},releaseDate:"2026-04-11",family:"glm"},"coding-glm-5.1-free":{id:"coding-glm-5.1-free",name:"Coding GLM 5.1 (free)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-11",family:"glm-free"},"qwen3.6-flash":{id:"qwen3.6-flash",name:"Qwen3.6 Flash",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.17,output:1.01,cacheRead:0.0169,cacheWrite:0.21125},releaseDate:"2026-04-02",family:"qwen3.6"},"alicloud-glm-5.1":{id:"alicloud-glm-5.1",name:"GLM-5.1 (Alibaba Cloud)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.84,output:3.38,cacheRead:0.169,cacheWrite:1.05625},releaseDate:"2026-03-27",family:"glm"},"zai-glm-5.1":{id:"zai-glm-5.1",name:"GLM-5.1 (Z.ai)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.845,output:3.38,cacheRead:0.183112,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"coding-minimax-m2.7":{id:"coding-minimax-m2.7",name:"Coding MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"coding-minimax-m2.7-free":{id:"coding-minimax-m2.7-free",name:"Coding MiniMax M2.7 (Free)",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax-free"},"coding-minimax-m2.7-highspeed":{id:"coding-minimax-m2.7-highspeed",name:"Coding MiniMax M2.7 Highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:128100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"minimax-m2.7":{id:"minimax-m2.7",name:"MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-sonnet-4-6-think":{id:"claude-sonnet-4-6-think",name:"Claude Sonnet 4.6 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"doubao-seed-2-0-code-preview":{id:"doubao-seed-2-0-code-preview",name:"Doubao Seed 2.0 Code Preview",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.48,output:2.41,cacheRead:0.09644,cacheWrite:0},releaseDate:"2026-02-14",family:"seed"},"doubao-seed-2-0-pro":{id:"doubao-seed-2-0-pro",name:"Doubao Seed 2.0 Pro",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.48,output:2.41,cacheRead:0.09644,cacheWrite:0},releaseDate:"2026-02-14",family:"seed"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-6-think":{id:"claude-opus-4-6-think",name:"Claude Opus 4.6 Thinking",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"}},anthropic:{"claude-sonnet-5":{id:"claude-sonnet-5",name:"Claude Sonnet 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-29",family:"claude-sonnet"},"claude-fable-5":{id:"claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-07",family:"claude-fable"},"claude-opus-4-8":{id:"claude-opus-4-8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-14",family:"claude-opus"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-04",family:"claude-opus"},"claude-opus-4-5":{id:"claude-opus-4-5",name:"Claude Opus 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"claude-opus-4-5-20251101":{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"claude-haiku-4-5":{id:"claude-haiku-4-5",name:"Claude Haiku 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-haiku-4-5-20251001":{id:"claude-haiku-4-5-20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5 (latest)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-sonnet-4-5-20250929":{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"}},baseten:{"zai-org/GLM-5.2":{id:"zai-org/GLM-5.2",name:"GLM 5.2",contextWindow:202720,maxInputTokens:202720,maxTokens:202720,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.3,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"moonshotai/Kimi-K2.7-Code":{id:"moonshotai/Kimi-K2.7-Code",name:"Kimi K2.7 Code",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B":{id:"nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B",name:"Nemotron Ultra",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"Deepseek V4 Pro",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.3,output:4.3,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"nvidia/Nemotron-120B-A12B":{id:"nvidia/Nemotron-120B-A12B",name:"Nemotron Super",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.75,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM 5",contextWindow:202800,maxInputTokens:202800,maxTokens:202800,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:3.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-01-30",family:"kimi-k2"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM 4.7",contextWindow:200000,maxInputTokens:200000,maxTokens:200000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.12,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI GPT 120B",contextWindow:128072,maxInputTokens:128072,maxTokens:128072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},bedrock:{"anthropic.claude-sonnet-5":{id:"anthropic.claude-sonnet-5",name:"Claude Sonnet 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"au.anthropic.claude-sonnet-5":{id:"au.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (AU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-5":{id:"eu.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.2,output:11,cacheRead:0.22,cacheWrite:2.75},releaseDate:"2026-06-30",family:"claude-sonnet"},"global.anthropic.claude-sonnet-5":{id:"global.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"jp.anthropic.claude-sonnet-5":{id:"jp.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"us.anthropic.claude-sonnet-5":{id:"us.anthropic.claude-sonnet-5",name:"Claude Sonnet 5 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"anthropic.claude-fable-5":{id:"anthropic.claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"eu.anthropic.claude-fable-5":{id:"eu.anthropic.claude-fable-5",name:"Claude Fable 5 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:11,output:55,cacheRead:1.1,cacheWrite:13.75},releaseDate:"2026-06-09",family:"claude-fable"},"global.anthropic.claude-fable-5":{id:"global.anthropic.claude-fable-5",name:"Claude Fable 5 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"us.anthropic.claude-fable-5":{id:"us.anthropic.claude-fable-5",name:"Claude Fable 5 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"anthropic.claude-opus-4-8":{id:"anthropic.claude-opus-4-8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"au.anthropic.claude-opus-4-8":{id:"au.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (AU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"eu.anthropic.claude-opus-4-8":{id:"eu.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-05-28",family:"claude-opus"},"global.anthropic.claude-opus-4-8":{id:"global.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"jp.anthropic.claude-opus-4-8":{id:"jp.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"us.anthropic.claude-opus-4-8":{id:"us.anthropic.claude-opus-4-8",name:"Claude Opus 4.8 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"openai.gpt-5.5":{id:"openai.gpt-5.5",name:"GPT-5.5",contextWindow:272000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5.5,output:33,cacheRead:0.55,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"xai.grok-4.3":{id:"xai.grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-17",family:"grok"},"anthropic.claude-opus-4-7":{id:"anthropic.claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"eu.anthropic.claude-opus-4-7":{id:"eu.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-04-16",family:"claude-opus"},"global.anthropic.claude-opus-4-7":{id:"global.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"jp.anthropic.claude-opus-4-7":{id:"jp.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"us.anthropic.claude-opus-4-7":{id:"us.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"minimax.minimax-m2.5":{id:"minimax.minimax-m2.5",name:"MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"zai.glm-5":{id:"zai.glm-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:101376,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"glm"},"nvidia.nemotron-super-3-120b":{id:"nvidia.nemotron-super-3-120b",name:"NVIDIA Nemotron 3 Super 120B A12B",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.65,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"openai.gpt-5.4":{id:"openai.gpt-5.4",name:"GPT-5.4",contextWindow:272000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.75,output:16.5,cacheRead:0.275,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"anthropic.claude-sonnet-4-6":{id:"anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"au.anthropic.claude-sonnet-4-6":{id:"au.anthropic.claude-sonnet-4-6",name:"AU Anthropic Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2026-02-17",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-6":{id:"eu.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2026-02-17",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-6":{id:"global.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"jp.anthropic.claude-sonnet-4-6":{id:"jp.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"mistral.devstral-2-123b":{id:"mistral.devstral-2-123b",name:"Devstral 2 123B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17",family:"devstral"},"us.anthropic.claude-sonnet-4-6":{id:"us.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"deepseek.v3.2":{id:"deepseek.v3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.62,output:1.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"deepseek"},"moonshotai.kimi-k2.5":{id:"moonshotai.kimi-k2.5",name:"Kimi K2.5",contextWindow:262143,maxInputTokens:262143,maxTokens:16000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"kimi"},"qwen.qwen3-coder-next":{id:"qwen.qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"qwen"},"anthropic.claude-opus-4-6-v1":{id:"anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"au.anthropic.claude-opus-4-6-v1":{id:"au.anthropic.claude-opus-4-6-v1",name:"AU Anthropic Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:16.5,output:82.5,cacheRead:1.65,cacheWrite:20.625},releaseDate:"2026-02-05",family:"claude-opus"},"eu.anthropic.claude-opus-4-6-v1":{id:"eu.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2026-02-05",family:"claude-opus"},"global.anthropic.claude-opus-4-6-v1":{id:"global.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"us.anthropic.claude-opus-4-6-v1":{id:"us.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"zai.glm-4.7-flash":{id:"zai.glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"minimax.minimax-m2.1":{id:"minimax.minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"nvidia.nemotron-nano-3-30b":{id:"nvidia.nemotron-nano-3-30b",name:"NVIDIA Nemotron Nano 3 30B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"nemotron"},"zai.glm-4.7":{id:"zai.glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"mistral.magistral-small-2509":{id:"mistral.magistral-small-2509",name:"Magistral Small 1.2",contextWindow:128000,maxInputTokens:128000,maxTokens:40000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"magistral"},"mistral.ministral-3-3b-instruct":{id:"mistral.ministral-3-3b-instruct",name:"Ministral 3 3B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistral.mistral-large-3-675b-instruct":{id:"mistral.mistral-large-3-675b-instruct",name:"Mistral Large 3",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral"},"moonshot.kimi-k2-thinking":{id:"moonshot.kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262143,maxInputTokens:262143,maxTokens:16000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"kimi-thinking"},"anthropic.claude-opus-4-5-20251101-v1:0":{id:"anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5.5,output:27.5,cacheRead:0.55,cacheWrite:6.875},releaseDate:"2025-11-24",family:"claude-opus"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"openai.gpt-oss-safeguard-120b":{id:"openai.gpt-oss-safeguard-120b",name:"GPT OSS Safeguard 120B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"openai.gpt-oss-safeguard-20b":{id:"openai.gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"minimax.minimax-m2":{id:"minimax.minimax-m2",name:"MiniMax M2",contextWindow:204608,maxInputTokens:204608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"anthropic.claude-haiku-4-5-20251001-v1:0":{id:"anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:5.5,cacheRead:0.11,cacheWrite:1.375},releaseDate:"2025-10-15",family:"claude-haiku"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"qwen.qwen3-vl-235b-a22b":{id:"qwen.qwen3-vl-235b-a22b",name:"Qwen/Qwen3-VL-235B-A22B-Instruct",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.3,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-04",family:"qwen"},"anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2025-09-29",family:"claude-sonnet"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek.v3-v1:0":{id:"deepseek.v3-v1:0",name:"DeepSeek-V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.58,output:1.68,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"deepseek"},"qwen.qwen3-235b-a22b-2507-v1:0":{id:"qwen.qwen3-235b-a22b-2507-v1:0",name:"Qwen3 235B A22B 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-32b-v1:0":{id:"qwen.qwen3-32b-v1:0",name:"Qwen3 32B (dense)",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-30b-a3b-v1:0":{id:"qwen.qwen3-coder-30b-a3b-v1:0",name:"Qwen3 Coder 30B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-480b-a35b-v1:0":{id:"qwen.qwen3-coder-480b-a35b-v1:0",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-next-80b-a3b":{id:"qwen.qwen3-next-80b-a3b",name:"Qwen/Qwen3-Next-80B-A3B-Instruct",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.14,output:1.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"anthropic.claude-opus-4-1-20250805-v1:0":{id:"anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai.gpt-oss-120b":{id:"openai.gpt-oss-120b",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-120b-1:0":{id:"openai.gpt-oss-120b-1:0",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-20b":{id:"openai.gpt-oss-20b",name:"gpt-oss-20b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai.gpt-oss-20b-1:0":{id:"openai.gpt-oss-20b-1:0",name:"gpt-oss-20b",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"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)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google.gemma-3-27b-it":{id:"google.gemma-3-27b-it",name:"Google Gemma 3 27B Instruct",contextWindow:202752,maxInputTokens:202752,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.12,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-27",family:"gemma"},"mistral.voxtral-small-24b-2507":{id:"mistral.voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01",family:"mistral"},"writer.palmyra-x4-v1:0":{id:"writer.palmyra-x4-v1:0",name:"Palmyra X4",contextWindow:122880,maxInputTokens:122880,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"writer.palmyra-x5-v1:0":{id:"writer.palmyra-x5-v1:0",name:"Palmyra X5",contextWindow:1040000,maxInputTokens:1040000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"mistral.pixtral-large-2502-v1:0":{id:"mistral.pixtral-large-2502-v1:0",name:"Pixtral Large (25.02)",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-08",family:"mistral"},"meta.llama4-maverick-17b-instruct-v1:0":{id:"meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct",contextWindow:1e6,maxInputTokens:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta.llama4-scout-17b-instruct-v1:0":{id:"meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct",contextWindow:3500000,maxInputTokens:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"us.meta.llama4-maverick-17b-instruct-v1:0":{id:"us.meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"us.meta.llama4-scout-17b-instruct-v1:0":{id:"us.meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct (US)",contextWindow:3500000,maxInputTokens:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"deepseek.r1-v1:0":{id:"deepseek.r1-v1:0",name:"DeepSeek-R1",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"us.deepseek.r1-v1:0":{id:"us.deepseek.r1-v1:0",name:"DeepSeek-R1 (US)",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"meta.llama3-3-70b-instruct-v1:0":{id:"meta.llama3-3-70b-instruct-v1:0",name:"Llama 3.3 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"amazon.nova-lite-v1:0":{id:"amazon.nova-lite-v1:0",name:"Nova Lite",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon.nova-micro-v1:0":{id:"amazon.nova-micro-v1:0",name:"Nova Micro",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon.nova-pro-v1:0":{id:"amazon.nova-pro-v1:0",name:"Nova Pro",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"amazon.nova-2-lite-v1:0":{id:"amazon.nova-2-lite-v1:0",name:"Nova 2 Lite",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.33,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nova"},"google.gemma-3-4b-it":{id:"google.gemma-3-4b-it",name:"Gemma 3 4B IT",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0.04,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gemma"},"mistral.ministral-3-14b-instruct":{id:"mistral.ministral-3-14b-instruct",name:"Ministral 14B 3.0",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.ministral-3-8b-instruct":{id:"mistral.ministral-3-8b-instruct",name:"Ministral 3 8B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.voxtral-mini-3b-2507":{id:"mistral.voxtral-mini-3b-2507",name:"Voxtral Mini 3B 2507",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"mistral"},"nvidia.nemotron-nano-12b-v2":{id:"nvidia.nemotron-nano-12b-v2",name:"NVIDIA Nemotron Nano 12B v2 VL BF16",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"nvidia.nemotron-nano-9b-v2":{id:"nvidia.nemotron-nano-9b-v2",name:"NVIDIA Nemotron Nano 9B v2",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.06,output:0.23,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"meta.llama3-1-70b-instruct-v1:0":{id:"meta.llama3-1-70b-instruct-v1:0",name:"Llama 3.1 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta.llama3-1-8b-instruct-v1:0":{id:"meta.llama3-1-8b-instruct-v1:0",name:"Llama 3.1 8B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},cerebras:{"gemma-4-31b":{id:"gemma-4-31b",name:"Gemma 4 31B IT",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.99,output:1.49,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"zai-glm-4.7":{id:"zai-glm-4.7",name:"Z.AI GLM-4.7",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:2.25,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-07"},"gpt-oss-120b":{id:"gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.35,output:0.75,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},"cline-pass":{"cline-pass/qwen3.7-max":{name:"Qwen3.7 Max",id:"cline-pass/qwen3.7-max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:3.75,cacheRead:0.25,cacheWrite:1.5625},releaseDate:"2026-05-21",family:"qwen",description:""},"cline-pass/qwen3.7-plus":{name:"Qwen3.7 Plus",id:"cline-pass/qwen3.7-plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.32,output:1.28,cacheRead:0.064,cacheWrite:0.4},releaseDate:"2026-06-02",family:"qwen",description:""},"cline-pass/minimax-m3":{name:"MiniMax-M3",id:"cline-pass/minimax-m3",contextWindow:524288,maxInputTokens:524288,maxTokens:512000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax",description:""},"cline-pass/mimo-v2.5-pro":{name:"MiMo-V2.5-Pro",id:"cline-pass/mimo-v2.5-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo",description:""},"cline-pass/glm-5.2":{name:"GLM-5.2",id:"cline-pass/glm-5.2",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.9086,output:2.8556,cacheRead:0.16874,cacheWrite:0},releaseDate:"2026-06-13",family:"glm",description:""},"cline-pass/mimo-v2.5":{name:"MiMo-V2.5",id:"cline-pass/mimo-v2.5",contextWindow:32000,maxInputTokens:32000,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.105,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo",description:""},"cline-pass/kimi-k2.7-code":{name:"Kimi K2.7 Code",id:"cline-pass/kimi-k2.7-code",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.74,output:3.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2",description:""},"cline-pass/deepseek-v4-flash":{name:"DeepSeek V4 Flash",id:"cline-pass/deepseek-v4-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.09,output:0.18,cacheRead:0.018,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash",description:""},"cline-pass/deepseek-v4-pro":{name:"DeepSeek V4 Pro",id:"cline-pass/deepseek-v4-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking",description:""},"cline-pass/kimi-k2.6":{name:"Kimi K2.6",id:"cline-pass/kimi-k2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.66,output:3.41,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2",description:""}},deepseek:{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"deepseek-chat":{id:"deepseek-chat",name:"DeepSeek Chat",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek-reasoner":{id:"deepseek-reasoner",name:"DeepSeek Reasoner",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"}},fireworks:{"accounts/fireworks/routers/glm-5p2-fast":{id:"accounts/fireworks/routers/glm-5p2-fast",name:"GLM 5.2 Fast",contextWindow:1048575,maxInputTokens:1048575,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2.1,output:6.6,cacheRead:0.21,cacheWrite:0},releaseDate:"2026-06-26",family:"glm"},"accounts/fireworks/models/glm-5p2":{id:"accounts/fireworks/models/glm-5p2",name:"GLM 5.2",contextWindow:1048575,maxInputTokens:1048575,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-06-16",family:"glm"},"accounts/fireworks/models/kimi-k2p7-code":{id:"accounts/fireworks/models/kimi-k2p7-code",name:"Kimi K2.7 Code",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.19,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"accounts/fireworks/models/minimax-m3":{id:"accounts/fireworks/models/minimax-m3",name:"MiniMax-M3",contextWindow:512000,maxInputTokens:512000,maxTokens:512000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-12",family:"minimax"},"accounts/fireworks/models/qwen3p7-plus":{id:"accounts/fireworks/models/qwen3p7-plus",name:"Qwen 3.7 Plus",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-06-12",family:"qwen"},"accounts/fireworks/routers/kimi-k2p7-code-fast":{id:"accounts/fireworks/routers/kimi-k2p7-code-fast",name:"Kimi K2.7 Code Fast",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.9,output:8,cacheRead:0.38,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"accounts/fireworks/models/deepseek-v4-flash":{id:"accounts/fireworks/models/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"accounts/fireworks/models/deepseek-v4-pro":{id:"accounts/fireworks/models/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"accounts/fireworks/models/kimi-k2p6":{id:"accounts/fireworks/models/kimi-k2p6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/routers/kimi-k2p6-fast":{id:"accounts/fireworks/routers/kimi-k2p6-fast",name:"Kimi K2.6 Fast",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.3,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/routers/kimi-k2p6-turbo":{id:"accounts/fireworks/routers/kimi-k2p6-turbo",name:"Kimi K2.6 Turbo",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.3,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/models/minimax-m2p7":{id:"accounts/fireworks/models/minimax-m2p7",name:"MiniMax-M2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-12",family:"minimax"},"accounts/fireworks/models/glm-5p1":{id:"accounts/fireworks/models/glm-5p1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"accounts/fireworks/routers/glm-5p1-fast":{id:"accounts/fireworks/routers/glm-5p1-fast",name:"GLM 5.1 Fast",contextWindow:202800,maxInputTokens:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2.8,output:8.8,cacheRead:0.52,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"accounts/fireworks/models/gpt-oss-120b":{id:"accounts/fireworks/models/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"accounts/fireworks/models/gpt-oss-20b":{id:"accounts/fireworks/models/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.07,output:0.3,cacheRead:0.035,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"}},gemini:{"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini-flash"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"gemma-4-26b-a4b-it":{id:"gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemma-4-31b-it":{id:"gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-pro"}},groq:{"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"Safety GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen3-32B",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["tools","reasoning","temperature"],pricing:{input:0.29,output:0.59,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-11",family:"qwen"},"meta-llama/llama-4-scout-17b-16e-instruct":{id:"meta-llama/llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout 17B 16E",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.11,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"llama-3.3-70b-versatile":{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.59,output:0.79,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"llama-3.1-8b-instant":{id:"llama-3.1-8b-instant",name:"Llama 3.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},huggingface:{"zai-org/GLM-5.2":{id:"zai-org/GLM-5.2",name:"GLM-5.2",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"moonshotai/Kimi-K2.7-Code":{id:"moonshotai/Kimi-K2.7-Code",name:"Kimi K2.7 Code",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:0.95,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"MiniMaxAI/MiniMax-M3":{id:"MiniMaxAI/MiniMax-M3",name:"MiniMax-M3",contextWindow:524288,maxInputTokens:524288,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax"},"stepfun-ai/Step-3.7-Flash":{id:"stepfun-ai/Step-3.7-Flash",name:"Step 3.7 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:256000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:1.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-29"},"deepseek-ai/DeepSeek-V4-Flash":{id:"deepseek-ai/DeepSeek-V4-Flash",name:"DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:393216,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"Qwen/Qwen3.6-27B":{id:"Qwen/Qwen3.6-27B",name:"Qwen3.6 27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.47,output:3.19,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen"},"XiaomiMiMo/MiMo-V2.5-Pro":{id:"XiaomiMiMo/MiMo-V2.5-Pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi-K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi-k2"},"Qwen/Qwen3.6-35B-A3B":{id:"Qwen/Qwen3.6-35B-A3B",name:"Qwen3.6 35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.95,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-17",family:"qwen"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-03",family:"glm"},"google/gemma-4-26B-A4B-it":{id:"google/gemma-4-26B-A4B-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.13,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31B-it":{id:"google/gemma-4-31B-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"Qwen/Qwen3.5-122B-A10B":{id:"Qwen/Qwen3.5-122B-A10B",name:"Qwen3.5 122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.4,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"Qwen/Qwen3.5-27B":{id:"Qwen/Qwen3.5-27B",name:"Qwen3.5 27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"Qwen/Qwen3.5-35B-A3B":{id:"Qwen/Qwen3.5-35B-A3B",name:"Qwen3.5 35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"Qwen/Qwen3.5-9B":{id:"Qwen/Qwen3.5-9B",name:"Qwen3.5 9B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.17,output:0.25,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"Qwen/Qwen3-Coder-Next":{id:"Qwen/Qwen3-Coder-Next",name:"Qwen3-Coder-Next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0.2,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-03",family:"qwen"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01",family:"qwen"},"stepfun-ai/Step-3.5-Flash":{id:"stepfun-ai/Step-3.5-Flash",name:"Step 3.5 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-29"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-01",family:"kimi-k2"},"MiniMaxAI/MiniMax-M2.1":{id:"MiniMaxAI/MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"XiaomiMiMo/MiMo-V2-Flash":{id:"XiaomiMiMo/MiMo-V2-Flash",name:"MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:4096,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.28,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"moonshotai/Kimi-K2-Thinking":{id:"moonshotai/Kimi-K2-Thinking",name:"Kimi-K2-Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"MiniMaxAI/MiniMax-M2":{id:"MiniMaxAI/MiniMax-M2",name:"MiniMax-M2",contextWindow:204800,maxInputTokens:204800,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"zai-org/GLM-4.6":{id:"zai-org/GLM-4.6",name:"GLM-4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.55,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"Qwen/Qwen3-Next-80B-A3B-Instruct":{id:"Qwen/Qwen3-Next-80B-A3B-Instruct",name:"Qwen3-Next-80B-A3B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.3,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"moonshotai/Kimi-K2-Instruct-0905":{id:"moonshotai/Kimi-K2-Instruct-0905",name:"Kimi-K2-Instruct-0905",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"kimi-k2"},"zai-org/GLM-4.5V":{id:"zai-org/GLM-4.5V",name:"GLM-4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"zai-org/GLM-4.7-Flash":{id:"zai-org/GLM-4.7-Flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-08",family:"glm"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:0.69,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"zai-org/GLM-4.5":{id:"zai-org/GLM-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"zai-org/GLM-4.5-Air":{id:"zai-org/GLM-4.5-Air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0.13,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:2,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"moonshotai/Kimi-K2-Instruct":{id:"moonshotai/Kimi-K2-Instruct",name:"Kimi-K2-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi-k2"},"deepseek-ai/DeepSeek-R1-0528":{id:"deepseek-ai/DeepSeek-R1-0528",name:"DeepSeek-R1-0528",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","reasoning","temperature"],pricing:{input:3,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-28",family:"deepseek-thinking"},"Qwen/Qwen3-235B-A22B":{id:"Qwen/Qwen3-235B-A22B",name:"Qwen3 235B-A22B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"Qwen/Qwen3-32B":{id:"Qwen/Qwen3-32B",name:"Qwen3 32B",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.29,output:0.59,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"Qwen/Qwen3-Coder-30B-A3B-Instruct":{id:"Qwen/Qwen3-Coder-30B-A3B-Instruct",name:"Qwen3-Coder 30B-A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.26,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"deepseek-ai/DeepSeek-R1":{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek-R1",contextWindow:64000,maxInputTokens:64000,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.59,output:0.79,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"}},kilo:{"x-ai/grok-build-0.1":{id:"x-ai/grok-build-0.1",name:"xAI: Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-20"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Google: Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.08333},releaseDate:"2026-05-19"},"anthropic/claude-opus-4.7-fast":{id:"anthropic/claude-opus-4.7-fast",name:"Anthropic: Claude Opus 4.7 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-05-12"},"inclusionai/ring-2.6-1t":{id:"inclusionai/ring-2.6-1t",name:"inclusionAI: Ring-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-05-08"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Google: Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.08333},releaseDate:"2026-05-07"},"baidu/cobuddy:free":{id:"baidu/cobuddy:free",name:"Baidu: CoBuddy (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-06"},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"OpenAI: GPT Chat Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-05-05"},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"xAI: Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:4096,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01"},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"IBM: Granite 4.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.05,output:0.1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-30"},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral: Mistral Medium 3.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30"},"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)",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"nemotron"},"openrouter/owl-alpha":{id:"openrouter/owl-alpha",name:"Owl Alpha",contextWindow:1048756,maxInputTokens:1048756,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Poolside: Laguna M.1 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Poolside: Laguna XS.2 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic: Claude Haiku Latest",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-04-27"},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic: Claude Sonnet Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-04-27"},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google: Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.08333333333333334},releaseDate:"2026-04-27"},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google: Gemini Pro Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-04-27"},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI: Kimi Latest",contextWindow:262142,maxInputTokens:262142,maxTokens:262142,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.74,output:3.49,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI: GPT Latest",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI: GPT Mini Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen: Qwen3.5 Plus 2026-04-20",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.4,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen: Qwen3.6 27B",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.325,output:3.25,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen: Qwen3.6 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0.3125},releaseDate:"2026-04-27"},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen: Qwen3.6 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.04,output:6.24,cacheRead:0,cacheWrite:1.3},releaseDate:"2026-04-27"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek: DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-24"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek: DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"OpenAI: GPT-5.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"OpenAI: GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24"},"inclusionai/ling-2.6-1t":{id:"inclusionai/ling-2.6-1t",name:"inclusionAI: Ling-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-23"},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Tencent: Hy3 Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.066,output:0.26,cacheRead:0.029,cacheWrite:0},releaseDate:"2026-04-22"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo V2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"inclusionAI: Ling-2.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.016,cacheWrite:0},releaseDate:"2026-04-21"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"MoonshotAI: Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:65535,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:3.5,cacheRead:0.375,cacheWrite:0},releaseDate:"2026-04-20"},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Anthropic: Claude Opus Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Anthropic: Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"stealth/claude-opus-4.7":{id:"stealth/claude-opus-4.7",name:"Stealth: Claude Opus 4.7 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:4,output:20,cacheRead:0.4,cacheWrite:5},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.6-fast":{id:"anthropic/claude-opus-4.6-fast",name:"Anthropic: Claude Opus 4.6 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-04-07"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Google: Gemma 4 26B A4B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.12,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-03"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Google: Gemma 4 31B",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Arcee AI: Trinity Large Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01"},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"Z.ai: GLM 5V Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01"},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"xAI: Grok 4.20",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-31"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kwaipilot: KAT-Coder-Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:80000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"Z.ai: GLM 5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:1.26,output:3.96,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27"},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-20"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax: MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax-m2.7"},"xiaomi/mimo-v2-omni":{id:"xiaomi/mimo-v2-omni",name:"Xiaomi: MiMo-V2-Omni",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"Xiaomi: MiMo-V2-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"OpenAI: GPT-5.4 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"OpenAI: GPT-5.4 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral: Mistral Small 4",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-03-16"},"kilo-auto/balanced":{id:"kilo-auto/balanced",name:"Kilo Auto Balanced",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/free":{id:"kilo-auto/free",name:"Kilo Auto Free",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/frontier":{id:"kilo-auto/frontier",name:"Kilo Auto Frontier",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:5,output:25,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/small":{id:"kilo-auto/small",name:"Kilo Auto Small",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",contextWindow:2000000,maxInputTokens:2000000,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"Z.ai: GLM 5 Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"NVIDIA: Nemotron 3 Super (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-12",family:"nemotron"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA: Nemotron 3 Super",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.5,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"ByteDance Seed: Seed-2.0-Lite",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen: Qwen3.5-9B",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"OpenAI: GPT-5.4",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:2.5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"OpenAI: GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"OpenAI: GPT-5.3 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-04"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Google: Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-03"},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"ByteDance Seed: Seed-2.0-Mini",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-27"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Google: Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen: Qwen3.5-122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.08,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen: Qwen3.5-27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen: Qwen3.5-35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1625,output:1.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"OpenAI: GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25"},"inception/mercury-2":{id:"inception/mercury-2",name:"Inception: Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:50000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-02-24"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Google: Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-19"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Anthropic: Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17"},"stealth/claude-sonnet-4.6":{id:"stealth/claude-sonnet-4.6",name:"Stealth: Claude Sonnet 4.6 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2.4,output:12,cacheRead:0.24,cacheWrite:3},releaseDate:"2026-02-17"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen: Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.39,output:2.34,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen: Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax: MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.2,cacheRead:0.029,cacheWrite:0},releaseDate:"2026-02-12"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"Z.ai: GLM 5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.72,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Anthropic: Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05"},"stealth/claude-opus-4.6":{id:"stealth/claude-opus-4.6",name:"Stealth: Claude Opus 4.6 (20% off)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:4,output:20,cacheRead:0.4,cacheWrite:5},releaseDate:"2026-02-05"},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen: Qwen3 Coder Next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.12,output:0.75,cacheRead:0.035,cacheWrite:0},releaseDate:"2026-02-02"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxInputTokens:200000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun: Step 3.5 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"MoonshotAI: Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:65535,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.45,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Upstage: Solar Pro 3",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen: Qwen3 Max Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.78,output:3.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-23"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"Z.ai: GLM 4.7 Flash",contextWindow:202752,maxInputTokens:202752,maxTokens:40551,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"OpenAI: GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14"},"mistralai/mistral-small-24b-instruct-2501":{id:"mistralai/mistral-small-24b-instruct-2501",name:"Mistral: Mistral Small 3",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-29"},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"ByteDance Seed: Seed 1.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax: MiniMax M2.1",contextWindow:196608,maxInputTokens:196608,maxTokens:39322,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:0.95,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"Z.ai: GLM 4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.38,output:1.98,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-12-22"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Google: Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.083333},releaseDate:"2025-12-17"},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Mistral: Ministral 3 14B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"Xiaomi: MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.29,cacheRead:0.045,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"OpenAI: GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"OpenAI: GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"OpenAI: GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11"},"relace/relace-search":{id:"relace/relace-search",name:"Relace: Relace Search",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09"},"essentialai/rnj-1-instruct":{id:"essentialai/rnj-1-instruct",name:"EssentialAI: Rnj 1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05"},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Mistral: Ministral 3 3B 2512",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Mistral: Ministral 3 8B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Arcee AI: Trinity Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.045,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek: DeepSeek V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.26,output:0.38,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-12-01"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"Prime Intellect: INTELLECT-3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-26"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Anthropic: Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"OpenAI: GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"OpenAI: GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"OpenAI: GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"OpenAI: GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"OpenAI: GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"MoonshotAI: Kimi K2 Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.47,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-06"},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Amazon: Nova Premier 1.0",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32000,capabilities:["images","tools","temperature"],pricing:{input:2.5,output:12.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-01"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"OpenAI: gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-10-29"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax: MiniMax M2",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.255,output:1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-10-23"},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen: Qwen3 VL 32B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.104,output:0.416,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-21"},"openai/gpt-5-image-mini":{id:"openai/gpt-5-image-mini",name:"OpenAI: GPT-5 Image Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2.5,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-16"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Anthropic: Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen: Qwen3 VL 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen: Qwen3 VL 8B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.117,output:1.365,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"OpenAI: GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:10,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14"},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen: Qwen3 VL 30B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-11"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"OpenAI: GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06"},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen: Qwen3 VL 30B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.13,output:0.52,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-05"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"Z.ai: GLM 4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:204800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.39,output:1.9,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-09-30"},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"Z.ai: GLM 4.6V",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Anthropic: Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Google: Gemini 2.5 Flash Lite Preview 09-2025",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-09-25"},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen: Qwen3 VL 235B A22B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24"},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen: Qwen3 VL 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.88,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-23"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek: DeepSeek V3.1 Terminus",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.21,output:0.79,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-09-22"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"OpenAI: GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15"},"mistralai/devstral-2512":{id:"mistralai/devstral-2512",name:"Mistral: Devstral 2 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-12"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen: Qwen3 Next 80B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:52429,capabilities:["tools","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen: Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.0975,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen: Qwen Plus 0728",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen: Qwen Plus 0728 (thinking)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"MoonshotAI: Kimi K2 0905",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen: Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-05"},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"ByteDance Seed: Seed 1.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen: Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0.0325,cacheWrite:0.40625},releaseDate:"2025-08-26"},"qwen/qwen3.7-max":{id:"qwen/qwen3.7-max",name:"Qwen: Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.625,output:4.875,cacheRead:0.1625,cacheWrite:2.03125},releaseDate:"2025-08-26"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek: DeepSeek V3.1",contextWindow:32768,maxInputTokens:32768,maxTokens:7168,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.75,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"NVIDIA: Nemotron Nano 9B V2",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"openai/gpt-4o-audio-preview":{id:"openai/gpt-4o-audio-preview",name:"OpenAI: GPT-4o Audio",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-15"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral: Mistral Medium 3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-12"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"Z.ai: GLM 4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11"},"ai21/jamba-large-1.7":{id:"ai21/jamba-large-1.7",name:"AI21: Jamba Large 1.7",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2,output:8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-09"},"openai/gpt-5":{id:"openai/gpt-5",name:"OpenAI: GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"OpenAI: GPT-5 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"OpenAI: GPT-5 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Anthropic: Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI: gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.039,output:0.19,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"OpenAI: gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.03,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Mistral: Codestral 2508",contextWindow:256000,maxInputTokens:256000,maxTokens:51200,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-01"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen: Qwen3 Coder 30B A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-31"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen: Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-07-29"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen: Qwen3 30B A3B Thinking 2507",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","reasoning","temperature"],pricing:{input:0.051,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"Z.ai: GLM 4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-07-28"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"Z.ai: GLM 4.5 Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.13,output:0.85,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-07-28"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen: Qwen3 235B A22B Thinking 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.11,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"z-ai/glm-4-32b":{id:"z-ai/glm-4-32b",name:"Z.ai: GLM 4 32B ",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen: Qwen3 Coder 480B A35B",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.22,output:1,cacheRead:0.022,cacheWrite:0},releaseDate:"2025-07-23"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen: Qwen3 Coder Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.195,output:0.975,cacheRead:0.06,cacheWrite:0},releaseDate:"2025-07-23"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Google: Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.083333},releaseDate:"2025-07-17"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"MoonshotAI: Kimi K2 0711",contextWindow:131000,maxInputTokens:131000,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.55,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11"},"mistralai/devstral-medium":{id:"mistralai/devstral-medium",name:"Mistral: Devstral Medium",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-10"},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Mistral: Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen: Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-07-01"},"baidu/ernie-4.5-21b-a3b":{id:"baidu/ernie-4.5-21b-a3b",name:"Baidu: ERNIE 4.5 21B A3B",contextWindow:120000,maxInputTokens:120000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"baidu/ernie-4.5-vl-28b-a3b":{id:"baidu/ernie-4.5-vl-28b-a3b",name:"Baidu: ERNIE 4.5 VL 28B A3B",contextWindow:30000,maxInputTokens:30000,maxTokens:8000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral: Mistral Small 3.2 24B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.18,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-06-20"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Google: Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-06-17"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax: MiniMax M1",contextWindow:1e6,maxInputTokens:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17"},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Google: Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-05"},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"DeepSeek: R1 0528",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.45,output:2.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-05-28"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Anthropic: Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Anthropic: Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22"},"mistralai/devstral-small":{id:"mistralai/devstral-small",name:"Mistral: Devstral Small 1.1",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral: Mistral Medium 3",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Arcee AI: Virtuoso Large",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.75,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-06"},"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",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-05-06"},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"OpenAI: o4 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:1.1,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-17"},"openai/o3":{id:"openai/o3",name:"OpenAI: o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o3-pro":{id:"openai/o3-pro",name:"OpenAI: o3 Pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o4-mini":{id:"openai/o4-mini",name:"OpenAI: o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"OpenAI: GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"OpenAI: GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"OpenAI: GPT-4.1 Nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14"},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Meta: Llama 4 Maverick",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Meta: Llama 4 Scout",contextWindow:327680,maxInputTokens:327680,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen: Qwen3 14B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen: Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","temperature"],pricing:{input:0.071,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen: Qwen3 30B A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.28,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen: Qwen3 8B",contextWindow:40960,maxInputTokens:40960,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-04"},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek: DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.77,cacheRead:0.095,cacheWrite:0},releaseDate:"2025-03-24"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Google: Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-03-20"},"nvidia/llama-3.3-nemotron-super-49b-v1.5":{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"NVIDIA: Llama 3.3 Nemotron Super 49B V1.5",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-16",family:"nemotron"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Google: Gemma 3 27B",contextWindow:128000,maxInputTokens:128000,maxTokens:65536,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.03,output:0.11,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-03-12"},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Mistral: Saba",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-17"},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"OpenAI: o3 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2025-01-31"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",contextWindow:64000,maxInputTokens:64000,maxTokens:16000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek: DeepSeek V3.2 Exp",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"nex-agi/deepseek-v3.1-nex-n1":{id:"nex-agi/deepseek-v3.1-nex-n1",name:"Nex AGI: DeepSeek V3.1 Nex N1",contextWindow:131072,maxInputTokens:131072,maxTokens:163840,capabilities:["tools","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"openai/o3-mini":{id:"openai/o3-mini",name:"OpenAI: o3 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20"},"google/gemini-2.0-flash-001":{id:"google/gemini-2.0-flash-001",name:"Google: Gemini 2.0 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2024-12-11"},"google/gemini-2.0-flash-lite-001":{id:"google/gemini-2.0-flash-lite-001",name:"Google: Gemini 2.0 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11"},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Amazon: Nova Lite 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Amazon: Nova Micro 1.0",contextWindow:128000,maxInputTokens:128000,maxTokens:5120,capabilities:["tools","temperature"],pricing:{input:0.035,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"openai/o1":{id:"openai/o1",name:"OpenAI: o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05"},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Amazon: Nova Pro 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-03"},"cohere/command-r7b-12-2024":{id:"cohere/command-r7b-12-2024",name:"Cohere: Command R7B (12-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.0375,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-02"},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Amazon: Nova 2 Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01"},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek: DeepSeek V3",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.32,output:0.89,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"NVIDIA: Nemotron 3 Nano 30B A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12",family:"nemotron"},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen: Qwen3 235B A22B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.455,output:1.82,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen: Qwen3 32B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.04,cacheWrite:0},releaseDate:"2024-12-01"},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"OpenAI: GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20"},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"mistralai/pixtral-large-2411":{id:"mistralai/pixtral-large-2411",name:"Mistral: Pixtral Large 2411",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"TheDrummer: UnslopNemo 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-09"},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral: Mistral Large 3 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Anthropic: Claude 3.5 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22"},"thedrummer/rocinante-12b":{id:"thedrummer/rocinante-12b",name:"TheDrummer: Rocinante 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.17,output:0.43,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-30"},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.12,output:0.39,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"qwen/qwen-2.5-7b-instruct":{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen: Qwen2.5 7B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Cohere: Command R (08-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Cohere: Command R+ (08-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Sao10K: Llama 3.1 Euryale 70B v2.2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.85,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-28"},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"OpenAI: GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06"},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Meta: Llama 3.3 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.32,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-01"},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",contextWindow:128000,maxInputTokens:128000,maxTokens:25600,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"mistralai/mistral-large-2411":{id:"mistralai/mistral-large-2411",name:"Mistral Large 2411",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Meta: Llama 3.1 8B Instruct",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.05,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"OpenAI: GPT-4o-mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18"},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"OpenAI: GPT-4o-mini (2024-07-18)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-18"},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Meta: Llama 3.1 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-16"},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral: Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"OpenAI: o3 Deep Research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26"},"openai/o4-mini-deep-research":{id:"openai/o4-mini-deep-research",name:"OpenAI: o4 Mini Deep Research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26"},"sao10k/l3-euryale-70b":{id:"sao10k/l3-euryale-70b",name:"Sao10k: Llama 3 Euryale 70B v2.1",contextWindow:8192,maxInputTokens:8192,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:1.48,output:1.48,cacheRead:0,cacheWrite:0},releaseDate:"2024-06-18"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"OpenAI: GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13"},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"OpenAI: GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","files","tools","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13"},"meta-llama/llama-3-8b-instruct":{id:"meta-llama/llama-3-8b-instruct",name:"Meta: Llama 3 8B Instruct",contextWindow:8192,maxInputTokens:8192,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.03,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-25"},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mistral: Mixtral 8x22B Instruct",contextWindow:65536,maxInputTokens:65536,maxTokens:13108,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-17"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Anthropic: Claude 3 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-07"},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"OpenAI: GPT-4 Turbo Preview",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.2,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-01-25"},"openai/gpt-4-1106-preview":{id:"openai/gpt-4-1106-preview",name:"OpenAI: GPT-4 Turbo (older v1106)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"OpenAI: GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-09-13"},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"OpenAI: GPT-3.5 Turbo 16k",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:3,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2023-08-28"},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"OpenAI: GPT-3.5 Turbo (older v0613)",contextWindow:4095,maxInputTokens:4095,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:1,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2023-06-13"},"openai/gpt-4-0314":{id:"openai/gpt-4-0314",name:"OpenAI: GPT-4 (older v0314)",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-05-28"},"openai/gpt-4":{id:"openai/gpt-4",name:"OpenAI: GPT-4",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-14"},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"OpenAI: GPT-3.5 Turbo",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-01"}},lmstudio:{"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen/qwen3-30b-a3b-2507":{id:"qwen/qwen3-30b-a3b-2507",name:"Qwen3 30B A3B 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-30",family:"qwen"},"qwen/qwen3-coder-30b":{id:"qwen/qwen3-coder-30b",name:"Qwen3 Coder 30B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"}},minimax:{"MiniMax-M3":{id:"MiniMax-M3",name:"MiniMax-M3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax"},"MiniMax-M2.7":{id:"MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.7-highspeed":{id:"MiniMax-M2.7-highspeed",name:"MiniMax-M2.7-highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.5-highspeed":{id:"MiniMax-M2.5-highspeed",name:"MiniMax-M2.5-highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-02-13",family:"minimax"},"MiniMax-M2.5":{id:"MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"MiniMax-M2.1":{id:"MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"MiniMax-M2":{id:"MiniMax-M2",name:"MiniMax-M2",contextWindow:196608,maxInputTokens:196608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"}},moonshot:{"kimi-k2.7-code":{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.19,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"kimi-k2.7-code-highspeed":{id:"kimi-k2.7-code-highspeed",name:"Kimi K2.7 Code HighSpeed",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.9,output:8,cacheRead:0.38,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2"},"kimi-k2-thinking":{id:"kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-thinking-turbo":{id:"kimi-k2-thinking-turbo",name:"Kimi K2 Thinking Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-0905-preview":{id:"kimi-k2-0905-preview",name:"Kimi K2 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi-k2"},"kimi-k2-turbo-preview":{id:"kimi-k2-turbo-preview",name:"Kimi K2 Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2.4,output:10,cacheRead:0.6,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi-k2"},"kimi-k2-0711-preview":{id:"kimi-k2-0711-preview",name:"Kimi K2 0711",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi-k2"}},nebius:{"zai-org/GLM-5.2":{id:"zai-org/GLM-5.2",name:"GLM-5.2",contextWindow:432000,maxInputTokens:432000,maxTokens:432000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:3.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron-3-Super-120B-A12B",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"NousResearch/Hermes-4-405B":{id:"NousResearch/Hermes-4-405B",name:"Hermes-4-405B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-01-30"},"NousResearch/Hermes-4-70B":{id:"NousResearch/Hermes-4-70B",name:"Hermes-4-70B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2026-01-30"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3-30B-A3B-Instruct-2507",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-32B":{id:"Qwen/Qwen3-32B",name:"Qwen3-32B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:128000,maxInputTokens:120000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:1.2,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-28"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma-3-27b-it",contextWindow:110000,maxInputTokens:1e5,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-20"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:124000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-10"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2025-12-05"},"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B":{id:"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B",name:"Nemotron-3-Nano-30B-A3B",contextWindow:32000,maxInputTokens:30000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-08-10",family:"nemotron"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxInputTokens:250000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-07-15"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:190000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-01-20"},"nvidia/Nemotron-3-Nano-Omni":{id:"nvidia/Nemotron-3-Nano-Omni",name:"Nemotron-3-Nano-Omni",contextWindow:65536,maxInputTokens:60000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-01-20",family:"nemotron"},"Qwen/Qwen2.5-VL-72B-Instruct":{id:"Qwen/Qwen2.5-VL-72B-Instruct",name:"Qwen2.5-VL-72B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0.31},releaseDate:"2025-01-20"},"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1":{id:"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1",name:"Llama-3.1-Nemotron-Ultra-253B-v1",contextWindow:128000,maxInputTokens:120000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-01-15",family:"nemotron"}},ollama:{"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",contextWindow:976000,maxInputTokens:976000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"kimi-k2.7-code":{id:"kimi-k2.7-code",name:"kimi-k2.7-code",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"nemotron-3-ultra":{id:"nemotron-3-ultra",name:"nemotron-3-ultra",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"minimax-m3":{id:"minimax-m3",name:"minimax-m3",contextWindow:512000,maxInputTokens:512000,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-31",family:"minimax-m3"},"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"deepseek-v4-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:1048576,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"deepseek-v4-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:1048576,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"kimi-k2.6":{id:"kimi-k2.6",name:"kimi-k2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi-k2"},"gemma4:31b":{id:"gemma4:31b",name:"gemma4:31b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"glm-5.1":{id:"glm-5.1",name:"glm-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"minimax-m2.7":{id:"minimax-m2.7",name:"minimax-m2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"nemotron-3-super":{id:"nemotron-3-super",name:"nemotron-3-super",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"qwen3.5:397b":{id:"qwen3.5:397b",name:"qwen3.5:397b",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15",family:"qwen"},"minimax-m2.5":{id:"minimax-m2.5",name:"minimax-m2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"glm-5":{id:"glm-5",name:"glm-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"qwen3-coder-next":{id:"qwen3-coder-next",name:"qwen3-coder-next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-02",family:"qwen"},"kimi-k2.5":{id:"kimi-k2.5",name:"kimi-k2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi-k2"},"minimax-m2.1":{id:"minimax-m2.1",name:"minimax-m2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"glm-4.7":{id:"glm-4.7",name:"glm-4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"gemini-3-flash-preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"nemotron-3-nano:30b":{id:"nemotron-3-nano:30b",name:"nemotron-3-nano:30b",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"devstral-2:123b":{id:"devstral-2:123b",name:"devstral-2:123b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"devstral-small-2:24b":{id:"devstral-small-2:24b",name:"devstral-small-2:24b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"rnj-1:8b":{id:"rnj-1:8b",name:"rnj-1:8b",contextWindow:32768,maxInputTokens:32768,maxTokens:4096,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-06",family:"rnj"},"mistral-large-3:675b":{id:"mistral-large-3:675b",name:"mistral-large-3:675b",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral-large"},"deepseek-v3.1:671b":{id:"deepseek-v3.1:671b",name:"deepseek-v3.1:671b",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"gpt-oss:120b":{id:"gpt-oss:120b",name:"gpt-oss:120b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"gpt-oss:20b":{id:"gpt-oss:20b",name:"gpt-oss:20b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen3-coder:480b":{id:"qwen3-coder:480b",name:"qwen3-coder:480b",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"deepseek-v3.2":{id:"deepseek-v3.2",name:"deepseek-v3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-15",family:"deepseek"},"ministral-3:14b":{id:"ministral-3:14b",name:"ministral-3:14b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:8b":{id:"ministral-3:8b",name:"ministral-3:8b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:3b":{id:"ministral-3:3b",name:"ministral-3:3b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-22",family:"ministral"}},"openai-native":{"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"gpt-5.3-chat-latest":{id:"gpt-5.3-chat-latest",name:"GPT-5.3 Chat (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",contextWindow:128000,maxInputTokens:1e5,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex-spark"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.2-chat-latest":{id:"gpt-5.2-chat-latest",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-pro":{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"gpt-5.1-chat-latest":{id:"gpt-5.1-chat-latest",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5-pro":{id:"gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"gpt-5-codex":{id:"gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"gpt-5":{id:"gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"o3-pro":{id:"o3-pro",name:"o3-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},o3:{id:"o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"o4-mini":{id:"o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gpt-4.1-nano":{id:"gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"o1-pro":{id:"o1-pro",name:"o1-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:150,output:600,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-19",family:"o-pro"},"o3-mini":{id:"o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},o1:{id:"o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"gpt-4o-2024-11-20":{id:"gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20",family:"gpt"},"gpt-4o-2024-08-06":{id:"gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06",family:"gpt"},"gpt-4o-mini":{id:"gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"o3-deep-research":{id:"o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"o4-mini-deep-research":{id:"o4-mini-deep-research",name:"o4-mini-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o-mini"},"gpt-4o":{id:"gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4o-2024-05-13":{id:"gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4":{id:"gpt-4",name:"GPT-4",contextWindow:8192,maxInputTokens:8192,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"gpt-4-turbo":{id:"gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},openrouter:{"tencent/hy3":{id:"tencent/hy3",name:"Hy3",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.58,cacheRead:0.035,cacheWrite:0},releaseDate:"2026-07-06",family:"hy3"},"tencent/hy3:free":{id:"tencent/hy3:free",name:"Hy3 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-07-06",family:"hy3"},"poolside/laguna-xs-2.1":{id:"poolside/laguna-xs-2.1",name:"Laguna XS 2.1",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.12,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-07-02"},"poolside/laguna-xs-2.1:free":{id:"poolside/laguna-xs-2.1:free",name:"Laguna XS 2.1 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-07-02"},"anthropic/claude-sonnet-5":{id:"anthropic/claude-sonnet-5",name:"Claude Sonnet 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"nex-agi/nex-n2-mini":{id:"nex-agi/nex-n2-mini",name:"Nex-N2-Mini",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.025,output:0.1,cacheRead:0.0025,cacheWrite:0},releaseDate:"2026-06-24",family:"agi"},"sakana/fugu-ultra":{id:"sakana/fugu-ultra",name:"Fugu Ultra",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-06-24",family:"fugu"},"google/gemini-3-pro-image":{id:"google/gemini-3-pro-image",name:"Nano Banana Pro (Gemini 3 Pro Image)",contextWindow:65536,maxInputTokens:65536,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-06-18",family:"gemini"},"cohere/north-mini-code:free":{id:"cohere/north-mini-code:free",name:"North Mini Code (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-17",family:"north"},"z-ai/glm-5.2":{id:"z-ai/glm-5.2",name:"GLM-5.2",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.9086,output:2.8556,cacheRead:0.16874,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"moonshotai/kimi-k2.7-code":{id:"moonshotai/kimi-k2.7-code",name:"Kimi K2.7 Code",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.74,output:3.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"~anthropic/claude-fable-latest":{id:"~anthropic/claude-fable-latest",name:"Claude Fable Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"anthropic/claude-fable-5":{id:"anthropic/claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-06-09",family:"claude-fable"},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra 550B A55B",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.2,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"nvidia/nemotron-3-ultra-550b-a55b:free":{id:"nvidia/nemotron-3-ultra-550b-a55b:free",name:"Nemotron 3 Ultra (free)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"qwen/qwen3.7-plus":{id:"qwen/qwen3.7-plus",name:"Qwen3.7 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.32,output:1.28,cacheRead:0.064,cacheWrite:0.4},releaseDate:"2026-06-02",family:"qwen"},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax-M3",contextWindow:524288,maxInputTokens:524288,maxTokens:512000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-01",family:"minimax"},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"Step 3.7 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.15,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-05-29"},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"anthropic/claude-opus-4.8-fast":{id:"anthropic/claude-opus-4.8-fast",name:"Claude Opus 4.8 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-05-27",family:"claude-opus"},"qwen/qwen3.7-max":{id:"qwen/qwen3.7-max",name:"Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:3.75,cacheRead:0.25,cacheWrite:1.5625},releaseDate:"2026-05-21",family:"qwen"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.083333},releaseDate:"2026-05-19",family:"gemini-flash"},"anthropic/claude-opus-4.7-fast":{id:"anthropic/claude-opus-4.7-fast",name:"Claude Opus 4.7 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-05-12",family:"claude-opus"},"inclusionai/ring-2.6-1t":{id:"inclusionai/ring-2.6-1t",name:"Ring-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-05-08",family:"ring"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"GPT Chat Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-05-05",family:"gpt"},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"Granite 4.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.05,output:0.1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-30",family:"granite"},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral Medium 3.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30",family:"mistral-medium"},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"Nemotron 3 Nano Omni (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"nemotron"},"poolside/laguna-m.1":{id:"poolside/laguna-m.1",name:"Laguna M.1",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.4,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Laguna M.1 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2":{id:"poolside/laguna-xs.2",name:"Laguna XS.2",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.2,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Laguna XS.2 (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic Claude Haiku Latest",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-04-27",family:"claude-haiku"},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic Claude Sonnet Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-04-27",family:"claude-sonnet"},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0.083333},releaseDate:"2026-04-27",family:"gemini-flash"},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google Gemini Pro Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-04-27",family:"gemini-pro"},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI Kimi Latest",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.66,output:3.41,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-27",family:"kimi"},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI GPT Latest",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-27",family:"gpt"},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI GPT Mini Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-04-27",family:"gpt-mini"},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen3.5 Plus 2026-04-20",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.8,cacheRead:0,cacheWrite:0.375},releaseDate:"2026-04-27",family:"qwen3.5"},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen3.6 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1875,output:1.125,cacheRead:0,cacheWrite:0.234375},releaseDate:"2026-04-27",family:"qwen3.6"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.09,output:0.18,cacheRead:0.018,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"inclusionai/ling-2.6-1t":{id:"inclusionai/ling-2.6-1t",name:"Ling-2.6-1T",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.075,output:0.625,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-04-23",family:"ling"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen3.6 27B",contextWindow:262140,maxInputTokens:262140,maxTokens:262140,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.285,output:2.4,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo-V2.5",contextWindow:32000,maxInputTokens:32000,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.105,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Claude Opus Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-21",family:"claude-opus"},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"Ling-2.6-flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.01,output:0.03,cacheRead:0.002,cacheWrite:0},releaseDate:"2026-04-21",family:"ling"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.66,output:3.41,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2"},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen3.6 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.04,output:6.24,cacheRead:0,cacheWrite:1.3},releaseDate:"2026-04-20",family:"qwen"},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Hy3 preview",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.063,output:0.21,cacheRead:0.021,cacheWrite:0},releaseDate:"2026-04-20",family:"Hy"},"qwen/qwen3.6-35b-a3b":{id:"qwen/qwen3.6-35b-a3b",name:"Qwen3.6 35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-17",family:"qwen"},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-17",family:"grok"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"x-ai/grok-build-0.1":{id:"x-ai/grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-16",family:"grok-build"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.966,output:3.036,cacheRead:0.1794,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.06,output:0.33,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-26b-a4b-it:free":{id:"google/gemma-4-26b-a4b-it:free",name:"Gemma 4 26B A4B (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.12,output:0.35,cacheRead:0.09,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it:free":{id:"google/gemma-4-31b-it:free",name:"Gemma 4 31B (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0,cacheWrite:0.40625},releaseDate:"2026-04-02",family:"qwen"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:80000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.8,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"Grok 4.20",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-31",family:"grok"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"KAT-Coder-Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:80000,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27",family:"kat-coder"},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",contextWindow:16384,maxInputTokens:16384,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-20",family:"reka"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax-M2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.18,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT-5.4 nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral Small 4",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-03-16",family:"mistral-small"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"GLM-5-Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron 3 Super 120B A12B",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.08,output:0.45,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"Nemotron 3 Super (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"Seed-2.0-Lite",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10",family:"seed"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:50000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-03-04",family:"mercury"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"GPT-5.3 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"Seed-2.0-Mini",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26",family:"seed"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen3.5-Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.065,output:0.26,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25",family:"qwen"},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen3.5 122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.26,output:2.08,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen3.5 27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen3.5 35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:81920,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen3.5 9B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-23",family:"qwen"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-02-19",family:"gemini-pro"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-02-19",family:"gemini-pro"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.26,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen3.5 397B-A17B",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.385,output:2.45,cacheRead:0.111,cacheWrite:0},releaseDate:"2026-02-15",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.12,output:0.48,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.92,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen3 Max Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.78,output:3.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-09",family:"qwen"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.11,output:0.8,cacheRead:0.07,cacheWrite:0},releaseDate:"2026-02-04",family:"qwen"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxInputTokens:200000,maxTokens:8000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"Step 3.5 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-29"},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Solar Pro 3",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-01-27",family:"solar-pro"},"liquid/lfm-2.5-1.2b-thinking:free":{id:"liquid/lfm-2.5-1.2b-thinking:free",name:"LFM2.5-1.2B-Thinking (free)",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-20",family:"liquid"},"openai/gpt-audio":{id:"openai/gpt-audio",name:"GPT Audio",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"gpt"},"openai/gpt-audio-mini":{id:"openai/gpt-audio-mini",name:"GPT Audio Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"o-mini"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:202752,maxInputTokens:202752,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.375,output:2.025,cacheRead:0.203,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2"},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"Seed 1.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"seed"},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"Seed 1.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"seed"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"GLM-4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.75,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.083333},releaseDate:"2025-12-17",family:"gemini-flash"},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"Nemotron 3 Nano 30B A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:228000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"nvidia/nemotron-3-nano-30b-a3b:free":{id:"nvidia/nemotron-3-nano-30b-a3b:free",name:"Nemotron 3 Nano 30B A3B (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-10",family:"gpt-codex"},"relace/relace-search":{id:"relace/relace-search",name:"Relace Search",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-08"},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"GLM-4.6V",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.055,cacheWrite:0},releaseDate:"2025-12-08",family:"glm"},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Nova 2 Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"nova"},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Ministral 3 14B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.2,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Ministral 3 3B 2512",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.1,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Ministral 3 8B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.15,cacheRead:0.015,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Trinity Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.045,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"trinity-mini"},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2002,output:0.8001,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek V3.2",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2288,output:0.3432,cacheRead:0.02288,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","files","tools","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:100352,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Nova Premier 1.0",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2.5,output:12.5,cacheRead:0.625,cacheWrite:0},releaseDate:"2025-10-31",family:"nova"},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:32000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-10-30",family:"mistral"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"nvidia/nemotron-nano-12b-v2-vl:free":{id:"nvidia/nemotron-nano-12b-v2-vl:free",name:"Nemotron Nano 12B 2 VL (free)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-28",family:"nemotron"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax-M2",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.255,output:1.02,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen3 VL 32B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.104,output:0.416,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-23",family:"qwen"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen3 VL 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.117,output:0.455,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14",family:"qwen"},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen3 VL 8B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.117,output:1.365,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14",family:"qwen"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen3 VL 30B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.13,output:0.52,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"qwen"},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen3 VL 30B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"qwen"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"GLM-4.6",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.43,output:1.74,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5 (latest)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek V3.2 Exp",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-29",family:"deepseek"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-2025",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.78,output:3.9,cacheRead:0.156,cacheWrite:0.975},releaseDate:"2025-09-23",family:"qwen"},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen3 VL 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.88,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen3 VL 235B A22B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.26,output:2.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.27,output:0.95,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen Plus 0728",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-08",family:"qwen"},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen Plus 0728 (thinking)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0.325},releaseDate:"2025-09-08",family:"qwen"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"Kimi K2 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:100352,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"kimi-k2"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen3-Next 80B-A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-next-80b-a3b-instruct:free":{id:"qwen/qwen3-next-80b-a3b-instruct:free",name:"Qwen3 Next 80B A3B Instruct (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen3-Next 80B-A3B (Thinking)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.0975,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09",family:"qwen"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen3 30B A3B Thinking 2507",contextWindow:81920,maxInputTokens:81920,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-28",family:"qwen"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.21,output:0.79,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"nvidia/nemotron-nano-9b-v2:free":{id:"nvidia/nemotron-nano-9b-v2:free",name:"Nemotron Nano 9B V2 (free)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral Medium 3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:262144,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-08-13",family:"mistral-medium"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"GLM-4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"ai21/jamba-large-1.7":{id:"ai21/jamba-large-1.7",name:"Jamba Large 1.7",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2,output:8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-08",family:"jamba"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4.1 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.03,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-120b:free":{id:"openai/gpt-oss-120b:free",name:"gpt-oss-120b (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.029,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b:free":{id:"openai/gpt-oss-20b:free",name:"gpt-oss-20b (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Codestral 2508",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-08-01",family:"codestral"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04815,output:0.19305,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen3 Coder Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.195,output:0.975,cacheRead:0.039,cacheWrite:0.24375},releaseDate:"2025-07-28",family:"qwen"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.13,output:0.85,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"nvidia/llama-3.3-nemotron-super-49b-v1.5":{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"Llama 3.3 Nemotron Super 49B v1.5",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"nemotron"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking 2507",contextWindow:131072,maxInputTokens:131072,maxTokens:262144,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1495,output:1.495,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen3 Coder 480B A35B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.13,cacheWrite:0.8125},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder:free":{id:"qwen/qwen3-coder:free",name:"Qwen3 Coder 480B A35B (free)",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.09,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-21",family:"qwen"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"Kimi K2 0711",contextWindow:131072,maxInputTokens:131072,maxTokens:100352,capabilities:["tools","temperature"],pricing:{input:0.57,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi-k2"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral Small 3.2 24B",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.075,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-20",family:"mistral-small"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.083333},releaseDate:"2025-06-17",family:"gemini-flash"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-17",family:"gemini-pro"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax M1",contextWindow:1e6,maxInputTokens:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17",family:"minimax"},"openai/o3-pro":{id:"openai/o3-pro",name:"o3-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-05",family:"gemini"},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"R1 0528",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.15,cacheRead:0.35,cacheWrite:0},releaseDate:"2025-05-28",family:"deepseek"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-05-07",family:"gemini-pro"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral Medium 3",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Virtuoso Large",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.75,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-05"},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen3 14B",contextWindow:40960,maxInputTokens:40960,maxTokens:40960,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen3 30B A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.12,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen3 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.117,output:0.455,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"openai/o3":{id:"openai/o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"o4 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Llama 4 Maverick",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Llama 4 Scout",contextWindow:327680,maxInputTokens:327680,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen3 235B-A22B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.455,output:1.82,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen3 32B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.08,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen3-Coder 30B-A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:16384,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.24,output:0.9,cacheRead:0.135,cacheWrite:0},releaseDate:"2025-03-24",family:"deepseek"},"google/gemma-3-12b-it":{id:"google/gemma-3-12b-it",name:"Gemma 3 12B",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.05,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-13",family:"gemma"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma 3 27B",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.08,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-12",family:"gemma"},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Saba",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.6,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-02-17",family:"mistral"},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"o3 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2025-02-12",family:"o"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",contextWindow:64000,maxInputTokens:64000,maxTokens:16000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Llama-3.3-70B-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.32,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"meta-llama/llama-3.3-70b-instruct:free":{id:"meta-llama/llama-3.3-70b-instruct:free",name:"Llama 3.3 70B Instruct (free)",contextWindow:65536,maxInputTokens:65536,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Nova Lite 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-lite"},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Nova Micro 1.0",contextWindow:128000,maxInputTokens:128000,maxTokens:5120,capabilities:["tools","temperature"],pricing:{input:0.035,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-micro"},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Nova Pro 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-05",family:"nova-pro"},"openai/o1":{id:"openai/o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20",family:"gpt"},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-11-19",family:"mistral-large"},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"UnslopNemo 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-08"},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral Large 3",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:1.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2024-11-01",family:"mistral-large"},"qwen/qwen-2.5-7b-instruct":{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen2.5 7B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-16",family:"qwen"},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.36,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-19",family:"qwen"},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Command R",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30",family:"command-r"},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Command R+",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30",family:"command-r"},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Llama 3.1 Euryale 70B v2.2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.85,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-28",family:"llama"},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06",family:"gpt"},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Llama 3.1 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Llama 3.1 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.02,output:0.03,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"GPT-4o-mini (2024-07-18)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"o-mini"},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.02,output:0.03,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01",family:"mistral-nemo"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"openai/o4-mini-deep-research":{id:"openai/o4-mini-deep-research",name:"o4-mini-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o-mini"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mixtral 8x22B Instruct",contextWindow:65536,maxInputTokens:65536,maxTokens:65536,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-04-17",family:"mistral"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Claude 3 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude"},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-02-26",family:"mistral-large"},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"GPT-3.5 Turbo (older v0613)",contextWindow:4095,maxInputTokens:4095,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25",family:"gpt"},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"GPT-4 Turbo Preview",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25",family:"gpt"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.26,output:0.78,cacheRead:0.052,cacheWrite:0.325},releaseDate:"2024-01-25",family:"qwen"},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-08",family:"auto"},"openai/gpt-4":{id:"openai/gpt-4",name:"GPT-4",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"GPT-3.5 Turbo 16k",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:3,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2023-08-28",family:"gpt"},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"GPT-3.5-turbo",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-01",family:"gpt"}},requesty:{"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:180,cacheRead:30,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt-codex"},"anthropic/claude-sonnet-4-6":{id:"anthropic/claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic/claude-opus-4-6":{id:"anthropic/claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14",family:"gpt-codex"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:1},releaseDate:"2025-12-17"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"anthropic/claude-opus-4-5":{id:"anthropic/claude-opus-4-5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:4.5},releaseDate:"2025-11-18",family:"gemini-pro"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:9,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"anthropic/claude-haiku-4-5":{id:"anthropic/claude-haiku-4-5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:62000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-10-14",family:"gpt"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"anthropic/claude-sonnet-4-5":{id:"anthropic/claude-sonnet-4-5",name:"Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"xai/grok-4-fast":{id:"xai/grok-4-fast",name:"Grok 4 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0.2},releaseDate:"2025-09-19",family:"grok"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"xai/grok-4":{id:"xai/grok-4",name:"Grok 4",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:3},releaseDate:"2025-09-09",family:"grok"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:16000,maxInputTokens:16000,maxTokens:4000,capabilities:["tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4-1":{id:"anthropic/claude-opus-4-1",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.55},releaseDate:"2025-06-17",family:"gemini-flash"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:2.375},releaseDate:"2025-06-17",family:"gemini-pro"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"anthropic/claude-3-7-sonnet":{id:"anthropic/claude-3-7-sonnet",name:"Claude Sonnet 3.7",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"}},sapaicore:{"gpt-5.5":{id:"gpt-5.5",name:"gpt-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"anthropic--claude-4.7-opus":{id:"anthropic--claude-4.7-opus",name:"anthropic--claude-4.7-opus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"gpt-5.4":{id:"gpt-5.4",name:"gpt-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"anthropic--claude-4.6-sonnet":{id:"anthropic--claude-4.6-sonnet",name:"anthropic--claude-4.6-sonnet",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic--claude-4.6-opus":{id:"anthropic--claude-4.6-opus",name:"anthropic--claude-4.6-opus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"anthropic--claude-4.5-opus":{id:"anthropic--claude-4.5-opus",name:"anthropic--claude-4.5-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"anthropic--claude-4.5-haiku":{id:"anthropic--claude-4.5-haiku",name:"anthropic--claude-4.5-haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"anthropic--claude-4.5-sonnet":{id:"anthropic--claude-4.5-sonnet",name:"anthropic--claude-4.5-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"gpt-5":{id:"gpt-5",name:"gpt-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"gpt-5-mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"gpt-5-nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"gemini-2.5-flash-lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"anthropic--claude-4-opus":{id:"anthropic--claude-4-opus",name:"anthropic--claude-4-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic--claude-4-sonnet":{id:"anthropic--claude-4-sonnet",name:"anthropic--claude-4-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"gemini-2.5-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04-17",family:"gemini-flash"},"gpt-4.1":{id:"gpt-4.1",name:"gpt-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"gpt-4.1-mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"gemini-2.5-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-25",family:"gemini-pro"},"anthropic--claude-3.7-sonnet":{id:"anthropic--claude-3.7-sonnet",name:"anthropic--claude-3.7-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-24",family:"claude-sonnet"},"anthropic--claude-3.5-sonnet":{id:"anthropic--claude-3.5-sonnet",name:"anthropic--claude-3.5-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"anthropic--claude-3-haiku":{id:"anthropic--claude-3-haiku",name:"anthropic--claude-3-haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"anthropic--claude-3-sonnet":{id:"anthropic--claude-3-sonnet",name:"anthropic--claude-3-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-03-04",family:"claude-sonnet"},"anthropic--claude-3-opus":{id:"anthropic--claude-3-opus",name:"anthropic--claude-3-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2024-02-29",family:"claude-opus"}},"tencent-tokenhub":{hy3:{id:"hy3",name:"Hy3",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-07-06",family:"Hy"},"hy3-preview":{id:"hy3-preview",name:"Hy3 preview",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-20",family:"Hy"}},together:{"zai-org/GLM-5.2":{id:"zai-org/GLM-5.2",name:"GLM-5.2",contextWindow:262144,maxInputTokens:262144,maxTokens:164000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-06-16",family:"glm"},"moonshotai/Kimi-K2.7-Code":{id:"moonshotai/Kimi-K2.7-Code",name:"Kimi K2.7 Code",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.19,cacheWrite:0},releaseDate:"2026-06-14",family:"kimi-k2"},"MiniMaxAI/MiniMax-M3":{id:"MiniMaxAI/MiniMax-M3",name:"MiniMax-M3",contextWindow:524288,maxInputTokens:524288,maxTokens:250000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-06-12",family:"minimax"},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra 550B A55B",contextWindow:512300,maxInputTokens:512300,maxTokens:512300,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"Qwen/Qwen3.7-Max":{id:"Qwen/Qwen3.7-Max",name:"Qwen3.7 Max",contextWindow:1e6,maxInputTokens:1e6,maxTokens:500000,capabilities:["tools","temperature"],pricing:{input:1.25,output:3.75,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-21",family:"qwen"},"Qwen/Qwen3.6-Plus":{id:"Qwen/Qwen3.6-Plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:500000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30",family:"qwen"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:512000,maxInputTokens:512000,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:131000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2"},"google/gemma-4-31B-it":{id:"google/gemma-4-31B-it",name:"Gemma 4 31B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.39,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"gemma"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"Qwen/Qwen3.5-9B":{id:"Qwen/Qwen3.5-9B",name:"Qwen3.5 9B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.17,output:0.25,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-03",family:"qwen"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:130000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"essentialai/Rnj-1-Instruct":{id:"essentialai/Rnj-1-Instruct",name:"Rnj-1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05",family:"rnj"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-235B-A22B-Instruct-2507-tput":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507-tput",name:"Qwen3 235B A22B Instruct 2507 FP8",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"meta-llama/Llama-3.3-70B-Instruct-Turbo":{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:1.04,output:1.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"Qwen/Qwen2.5-7B-Instruct-Turbo":{id:"Qwen/Qwen2.5-7B-Instruct-Turbo",name:"Qwen 2.5 7B Instruct Turbo",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.3,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-19",family:"qwen"}},v0:{"v0-1.5-lg":{id:"v0-1.5-lg",name:"v0-1.5-lg",contextWindow:512000,maxInputTokens:512000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:15,output:75,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.5-md":{id:"v0-1.5-md",name:"v0-1.5-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.0-md":{id:"v0-1.0-md",name:"v0-1.0-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-22",family:"v0"}},"vercel-ai-gateway":{"anthropic/claude-fable-5":{id:"anthropic/claude-fable-5",name:"Claude Fable 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:50,cacheRead:1,cacheWrite:12.5},releaseDate:"2026-07-01",family:"claude-fable"},"anthropic/claude-sonnet-5":{id:"anthropic/claude-sonnet-5",name:"Claude Sonnet 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-29",family:"claude-sonnet"},"sakana/fugu-ultra":{id:"sakana/fugu-ultra",name:"Fugu Ultra",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-06-21",family:"aura"},"zai/glm-5.2":{id:"zai/glm-5.2",name:"GLM 5.2",contextWindow:1040000,maxInputTokens:1040000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-06-16",family:"glm"},"zai/glm-5.2-fast":{id:"zai/glm-5.2-fast",name:"GLM 5.2 Fast",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:10.25,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-06-16",family:"glm"},"moonshotai/kimi-k2.7-code-highspeed":{id:"moonshotai/kimi-k2.7-code-highspeed",name:"Kimi K2.7 Code High Speed",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.9,output:8,cacheRead:0.38,cacheWrite:0},releaseDate:"2026-06-15",family:"kimi-k2"},"moonshotai/kimi-k2.7-code":{id:"moonshotai/kimi-k2.7-code",name:"Kimi K2.7 Code",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.19,cacheWrite:0},releaseDate:"2026-06-12",family:"kimi-k2"},"nvidia/nemotron-3-ultra-550b-a55b":{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.12,cacheWrite:0},releaseDate:"2026-06-04",family:"nemotron"},"alibaba/qwen3.7-plus":{id:"alibaba/qwen3.7-plus",name:"Qwen 3.7 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.08,cacheWrite:0.5},releaseDate:"2026-06-02",family:"qwen3.7-plus"},"minimax/minimax-m3":{id:"minimax/minimax-m3",name:"MiniMax M3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-05-31",family:"minimax-m3"},"anthropic/claude-opus-4.8":{id:"anthropic/claude-opus-4.8",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"stepfun/step-3.7-flash":{id:"stepfun/step-3.7-flash",name:"Step 3.7 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.15,cacheRead:0.04,cacheWrite:0},releaseDate:"2026-05-28",family:"step"},"alibaba/qwen3.7-max":{id:"alibaba/qwen3.7-max",name:"Qwen 3.7 Max",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:3.75,cacheRead:0.25,cacheWrite:1.5625},releaseDate:"2026-05-21",family:"qwen"},"xai/grok-build-0.1":{id:"xai/grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-20",family:"grok-build"},"google/gemini-3.5-flash":{id:"google/gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini"},"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini"},"xai/grok-4.3":{id:"xai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-30",family:"grok"},"mistral/mistral-medium-3.5":{id:"mistral/mistral-medium-3.5",name:"Mistral Medium Latest",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-29",family:"mistral-medium"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT 5.5",contextWindow:1e6,maxInputTokens:872000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT 5.5 Pro",contextWindow:1e6,maxInputTokens:872000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"alibaba/qwen3.6-27b":{id:"alibaba/qwen3.6-27b",name:"Qwen 3.6 27B",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen3.6"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo M2.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:131100,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo V2.5 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:131000,capabilities:["files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"alibaba/qwen-3.6-max-preview":{id:"alibaba/qwen-3.6-max-preview",name:"Qwen 3.6 Max Preview",contextWindow:240000,maxInputTokens:240000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.3,output:7.8,cacheRead:0.26,cacheWrite:1.625},releaseDate:"2026-04-20",family:"qwen"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:262000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi-k2"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"zai/glm-5.1":{id:"zai/glm-5.1",name:"GLM 5.1",contextWindow:202000,maxInputTokens:202000,maxTokens:202000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.3,output:4.3,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"alibaba/qwen3.6-plus":{id:"alibaba/qwen3.6-plus",name:"Qwen 3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.1,cacheWrite:0.625},releaseDate:"2026-04-02",family:"qwen"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262100,maxInputTokens:262100,maxTokens:80000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.25,output:0.8999999999999999,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"zai/glm-5v-turbo":{id:"zai/glm-5v-turbo",name:"GLM 5V Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kat Coder Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27",family:"kat-coder"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"Minimax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"minimax/minimax-m2.7-highspeed":{id:"minimax/minimax-m2.7-highspeed",name:"MiniMax M2.7 High Speed",contextWindow:204800,maxInputTokens:204800,maxTokens:131100,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"MiMo V2 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT 5.4 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT 5.4 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"zai/glm-5-turbo":{id:"zai/glm-5-turbo",name:"GLM 5 Turbo",contextWindow:202800,maxInputTokens:202800,maxTokens:131100,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15",family:"glm"},"xai/grok-4.20-multi-agent-beta":{id:"xai/grok-4.20-multi-agent-beta",name:"Grok 4.20 Multi Agent Beta",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-non-reasoning-beta":{id:"xai/grok-4.20-non-reasoning-beta",name:"Grok 4.20 Beta Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.4,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-reasoning-beta":{id:"xai/grok-4.20-reasoning-beta",name:"Grok 4.20 Beta Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-multi-agent":{id:"xai/grok-4.20-multi-agent",name:"Grok 4.20 Multi-Agent",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-10",family:"grok"},"xai/grok-4.20-non-reasoning":{id:"xai/grok-4.20-non-reasoning",name:"Grok 4.20 Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-10",family:"grok"},"xai/grok-4.20-reasoning":{id:"xai/grok-4.20-reasoning",name:"Grok 4.20 Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:2000000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-10",family:"grok"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT 5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT 5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-03-03",family:"gemini"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"GPT-5.3 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"alibaba/qwen3.5-flash":{id:"alibaba/qwen3.5-flash",name:"Qwen 3.5 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.001,cacheWrite:0.125},releaseDate:"2026-02-24",family:"qwen"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.024999999999999998,cacheWrite:0},releaseDate:"2026-02-24",family:"mercury"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"alibaba/qwen3.5-plus":{id:"alibaba/qwen3.5-plus",name:"Qwen 3.5 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2.4,cacheRead:0.04,cacheWrite:0.5},releaseDate:"2026-02-16",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"minimax/minimax-m2.5-highspeed":{id:"minimax/minimax-m2.5-highspeed",name:"MiniMax M2.5 High Speed",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"zai/glm-5":{id:"zai/glm-5",name:"GLM-5",contextWindow:202800,maxInputTokens:202800,maxTokens:131100,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:3.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT 5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun 3.5 Flash",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29",family:"step"},"arcee-ai/trinity-large-preview":{id:"arcee-ai/trinity-large-preview",name:"Trinity Large Preview",contextWindow:131000,maxInputTokens:131000,maxTokens:131000,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"trinity"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:262114,maxInputTokens:262114,maxTokens:262114,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-26",family:"kimi-k2"},"alibaba/qwen3-max-thinking":{id:"alibaba/qwen3-max-thinking",name:"Qwen 3 Max Thinking",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-01-23",family:"qwen"},"zai/glm-4.7-flash":{id:"zai/glm-4.7-flash",name:"GLM 4.7 Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm"},"zai/glm-4.7-flashx":{id:"zai/glm-4.7-flashx",name:"GLM 4.7 FlashX",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-12-23",family:"minimax"},"minimax/minimax-m2.1-lightning":{id:"minimax/minimax-m2.1-lightning",name:"MiniMax M2.1 Lightning",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.4,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-12-23",family:"minimax"},"zai/glm-4.7":{id:"zai/glm-4.7",name:"GLM 4.7",contextWindow:200000,maxInputTokens:200000,maxTokens:120000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.12,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-18",family:"gpt-codex"},"google/gemini-3-flash":{id:"google/gemini-3-flash",name:"Gemini 3 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"MiMo V2 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT 5.2 ",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"mistral/devstral-2":{id:"mistral/devstral-2",name:"Devstral 2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"mistral/devstral-small-2":{id:"mistral/devstral-small-2",name:"Devstral Small 2",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"deepseek/deepseek-v3.2-thinking":{id:"deepseek/deepseek-v3.2-thinking",name:"DeepSeek V3.2 Thinking",contextWindow:128000,maxInputTokens:128000,maxTokens:8000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.62,output:1.85,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT 5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-19",family:"gpt"},"xai/grok-4.1-fast-non-reasoning":{id:"xai/grok-4.1-fast-non-reasoning",name:"Grok 4.1 Fast Non-Reasoning",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-11-19",family:"grok"},"xai/grok-4.1-fast-reasoning":{id:"xai/grok-4.1-fast-reasoning",name:"Grok 4.1 Fast Reasoning",contextWindow:1e6,maxInputTokens:1e6,maxTokens:1e6,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-11-19",family:"grok"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini-pro"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-instant":{id:"openai/gpt-5.1-instant",name:"GPT-5.1 Instant",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"openai/gpt-5.1-thinking":{id:"openai/gpt-5.1-thinking",name:"GPT 5.1 Thinking",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-12",family:"gpt"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:216144,maxInputTokens:216144,maxTokens:216144,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.47,output:2,cacheRead:0.141,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:65536,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"nvidia/nemotron-nano-12b-v2-vl":{id:"nvidia/nemotron-nano-12b-v2-vl",name:"Nvidia Nemotron Nano 12B V2 VL",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-28",family:"nemotron"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax M2",contextWindow:205000,maxInputTokens:205000,maxTokens:205000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-10-27",family:"minimax"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 pro",contextWindow:400000,maxInputTokens:128000,maxTokens:272000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt"},"zai/glm-4.6":{id:"zai/glm-4.6",name:"GLM 4.6",contextWindow:200000,maxInputTokens:200000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v":{id:"zai/glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxInputTokens:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v-flash":{id:"zai/glm-4.6v-flash",name:"GLM-4.6V-Flash",contextWindow:128000,maxInputTokens:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"alibaba/qwen3-235b-a22b-thinking":{id:"alibaba/qwen3-235b-a22b-thinking",name:"Qwen3 235B A22B Thinking 2507",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.4,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"alibaba/qwen3-max":{id:"alibaba/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"alibaba/qwen3-vl-instruct":{id:"alibaba/qwen3-vl-instruct",name:"Qwen3 VL Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:129024,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:1.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"alibaba/qwen3-vl-thinking":{id:"alibaba/qwen3-vl-thinking",name:"Qwen3 VL Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.4,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:1,cacheRead:0.135,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"alibaba/qwen3-next-80b-a3b-instruct":{id:"alibaba/qwen3-next-80b-a3b-instruct",name:"Qwen3 Next 80B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.15,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"alibaba/qwen3-next-80b-a3b-thinking":{id:"alibaba/qwen3-next-80b-a3b-thinking",name:"Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"alibaba/qwen3-max-preview":{id:"alibaba/qwen3-max-preview",name:"Qwen3 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-05",family:"qwen"},"bytedance/seed-1.6":{id:"bytedance/seed-1.6",name:"Seed 1.6",contextWindow:256000,maxInputTokens:256000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-01",family:"seed"},"bytedance/seed-1.8":{id:"bytedance/seed-1.8",name:"Seed 1.8",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-01",family:"seed"},"meituan/longcat-flash-chat":{id:"meituan/longcat-flash-chat",name:"LongCat Flash Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:1e5,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-01",family:"longcat"},"deepseek/deepseek-v3.1":{id:"deepseek/deepseek-v3.1",name:"DeepSeek-V3.1",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:1.7,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"Nvidia Nemotron Nano 9B V2",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.06,output:0.23,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"zai/glm-4.5v":{id:"zai/glm-4.5v",name:"GLM 4.5V",contextWindow:66000,maxInputTokens:66000,maxTokens:16000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-chat":{id:"openai/gpt-5-chat",name:"GPT-5 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:122880,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"alibaba/qwen3-coder-30b-a3b":{id:"alibaba/qwen3-coder-30b-a3b",name:"Qwen 3 Coder 30B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-31",family:"qwen"},"zai/glm-4.5":{id:"zai/glm-4.5",name:"GLM 4.5",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"zai/glm-4.5-air":{id:"zai/glm-4.5-air",name:"GLM 4.5 Air",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"alibaba/qwen3-coder-plus":{id:"alibaba/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"alibaba/qwen3-coder":{id:"alibaba/qwen3-coder",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.5,output:7.5,cacheRead:0.3,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"alibaba/qwen3-coder-next":{id:"alibaba/qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"Kimi K2 Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.57,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi-k2"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2025-06-26",family:"o"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-pro"},"openai/o3-pro":{id:"openai/o3-pro",name:"o3 Pro",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"mistral/devstral-small":{id:"mistral/devstral-small",name:"Devstral Small 1.1",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-21",family:"devstral"},"mistral/mistral-medium":{id:"mistral/mistral-medium",name:"Mistral Medium 3.1",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"alibaba/qwen-3-14b":{id:"alibaba/qwen-3-14b",name:"Qwen3-14B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.12,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"alibaba/qwen-3-235b":{id:"alibaba/qwen-3-235b",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"alibaba/qwen-3-30b":{id:"alibaba/qwen-3-30b",name:"Qwen3-30B-A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.12,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"alibaba/qwen-3-32b":{id:"alibaba/qwen-3-32b",name:"Qwen 3.32B",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.16,output:0.64,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"openai/o3":{id:"openai/o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"meta/llama-4-maverick":{id:"meta/llama-4-maverick",name:"Llama-4-Maverick-17B-128E-Instruct-FP8",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta/llama-4-scout":{id:"meta/llama-4-scout",name:"Llama-4-Scout-17B-16E-Instruct-FP8",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"mistral/magistral-medium":{id:"mistral/magistral-medium",name:"Magistral Medium (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:2,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-medium"},"mistral/magistral-small":{id:"mistral/magistral-small",name:"Magistral Small",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-small"},"cohere/command-a":{id:"cohere/command-a",name:"Command A",contextWindow:256000,maxInputTokens:256000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-13",family:"command"},"inception/mercury-coder-small":{id:"inception/mercury-coder-small",name:"Mercury Coder Small Beta",contextWindow:32000,maxInputTokens:32000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-26",family:"mercury"},"perplexity/sonar":{id:"perplexity/sonar",name:"Sonar",contextWindow:127000,maxInputTokens:127000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar"},"perplexity/sonar-pro":{id:"perplexity/sonar-pro",name:"Sonar Pro",contextWindow:200000,maxInputTokens:200000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar-pro"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"deepseek/deepseek-v3":{id:"deepseek/deepseek-v3",name:"DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:163840,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.27,output:1.12,cacheRead:0.135,cacheWrite:0},releaseDate:"2024-12-26",family:"deepseek"},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},"meta/llama-3.3-70b":{id:"meta/llama-3.3-70b",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"openai/o1":{id:"openai/o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"amazon/nova-lite":{id:"amazon/nova-lite",name:"Nova Lite",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon/nova-micro":{id:"amazon/nova-micro",name:"Nova Micro",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon/nova-pro":{id:"amazon/nova-pro",name:"Nova Pro",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Claude 3.5 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-11-04",family:"claude-haiku"},"mistral/pixtral-large":{id:"mistral/pixtral-large",name:"Pixtral Large (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01",family:"pixtral"},"mistral/ministral-3b":{id:"mistral/ministral-3b",name:"Ministral 3B (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"mistral/ministral-8b":{id:"mistral/ministral-8b",name:"Ministral 8B (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"meta/llama-3.2-11b":{id:"meta/llama-3.2-11b",name:"Llama 3.2 11B Vision Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.16,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"meta/llama-3.2-90b":{id:"meta/llama-3.2-90b",name:"Llama 3.2 90B Vision Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"mistral/mistral-small":{id:"mistral/mistral-small",name:"Mistral Small (latest)",contextWindow:32000,maxInputTokens:32000,maxTokens:4000,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-17",family:"mistral-small"},"mistral/pixtral-12b":{id:"mistral/pixtral-12b",name:"Pixtral 12B",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-01",family:"pixtral"},"meta/llama-3.1-70b":{id:"meta/llama-3.1-70b",name:"Llama 3.1 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta/llama-3.1-8b":{id:"meta/llama-3.1-8b",name:"Llama 3.1 8B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"mistral/mistral-nemo":{id:"mistral/mistral-nemo",name:"Mistral Nemo",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-18",family:"mistral-nemo"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"mistral/codestral":{id:"mistral/codestral",name:"Codestral (latest)",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-29",family:"codestral"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Claude Haiku 3",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},vertex:{"claude-sonnet-5@default":{id:"claude-sonnet-5@default",name:"Claude Sonnet 5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:2,output:10,cacheRead:0.2,cacheWrite:2.5},releaseDate:"2026-06-30",family:"claude-sonnet"},"claude-opus-4-8@default":{id:"claude-opus-4-8@default",name:"Claude Opus 4.8",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-05-28",family:"claude-opus"},"gemini-3.5-flash":{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.5,output:9,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-05-19",family:"gemini-flash"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"claude-opus-4-7@default":{id:"claude-opus-4-7@default",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"claude-sonnet-4-6@default":{id:"claude-sonnet-4-6@default",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"zai-org/glm-5-maas":{id:"zai-org/glm-5-maas",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"claude-opus-4-6@default":{id:"claude-opus-4-6@default",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"zai-org/glm-4.7-maas":{id:"zai-org/glm-4.7-maas",name:"GLM-4.7",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-06",family:"glm"},"deepseek-ai/deepseek-v3.2-maas":{id:"deepseek-ai/deepseek-v3.2-maas",name:"DeepSeek V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.56,output:1.68,cacheRead:0.056,cacheWrite:0},releaseDate:"2025-12-17",family:"deepseek"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"moonshotai/kimi-k2-thinking-maas":{id:"moonshotai/kimi-k2-thinking-maas",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-13",family:"kimi-thinking"},"claude-opus-4-5@20251101":{id:"claude-opus-4-5@20251101",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5@20251001":{id:"claude-haiku-4-5@20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5@20250929":{id:"claude-sonnet-4-5@20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.383},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"deepseek-ai/deepseek-v3.1-maas":{id:"deepseek-ai/deepseek-v3.1-maas",name:"DeepSeek V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["files","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:1.7,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-28",family:"deepseek"},"qwen/qwen3-235b-a22b-instruct-2507-maas":{id:"qwen/qwen3-235b-a22b-instruct-2507-maas",name:"Qwen3 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-13",family:"qwen"},"openai/gpt-oss-120b-maas":{id:"openai/gpt-oss-120b-maas",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.09,output:0.36,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b-maas":{id:"openai/gpt-oss-20b-maas",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.25,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.383},releaseDate:"2025-06-17",family:"gemini-flash"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-pro"},"meta/llama-3.3-70b-instruct-maas":{id:"meta/llama-3.3-70b-instruct-maas",name:"Llama 3.3 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"llama"},"meta/llama-4-maverick-17b-128e-instruct-maas":{id:"meta/llama-4-maverick-17b-128e-instruct-maas",name:"Llama 4 Maverick 17B 128E Instruct",contextWindow:524288,maxInputTokens:524288,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.35,output:1.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"llama"}},wandb:{"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8":{id:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",name:"NVIDIA Nemotron 3 Super 120B",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:196608,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5-FP8":{id:"zai-org/GLM-5-FP8",name:"GLM 5",contextWindow:200000,maxInputTokens:200000,maxTokens:200000,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:2.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi-k2"},"deepseek-ai/DeepSeek-V3.1":{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1",contextWindow:161000,maxInputTokens:161000,maxTokens:161000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.55,output:1.65,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"OpenPipe/Qwen3-14B-Instruct":{id:"OpenPipe/Qwen3-14B-Instruct",name:"OpenPipe Qwen3 14B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.05,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:262144,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"meta-llama/Llama-4-Scout-17B-16E-Instruct":{id:"meta-llama/Llama-4-Scout-17B-16E-Instruct",name:"Llama 4 Scout 17B 16E Instruct",contextWindow:64000,maxInputTokens:64000,maxTokens:64000,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-31",family:"llama"},"microsoft/Phi-4-mini-instruct":{id:"microsoft/Phi-4-mini-instruct",name:"Phi-4-mini-instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.08,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11",family:"phi"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.71,output:0.71,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"meta-llama/Llama-3.1-70B-Instruct":{id:"meta-llama/Llama-3.1-70B-Instruct",name:"Llama 3.1 70B",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.8,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta-llama/Llama-3.1-8B-Instruct":{id:"meta-llama/Llama-3.1-8B-Instruct",name:"Meta-Llama-3.1-8B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:128000,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},xai:{"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-17",family:"grok"},"grok-build-0.1":{id:"grok-build-0.1",name:"Grok Build 0.1",contextWindow:256000,maxInputTokens:256000,maxTokens:256000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-16",family:"grok-build"},"grok-4.20-0309-non-reasoning":{id:"grok-4.20-0309-non-reasoning",name:"Grok 4.20 (Non-Reasoning)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"grok-4.20-0309-reasoning":{id:"grok-4.20-0309-reasoning",name:"Grok 4.20 (Reasoning)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"}},xiaomi:{"mimo-v2.5-pro-ultraspeed":{id:"mimo-v2.5-pro-ultraspeed",name:"MiMo-V2.5-Pro-UltraSpeed",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.305,output:2.61,cacheRead:0.0108,cacheWrite:0},releaseDate:"2026-06-08",family:"mimo"},"mimo-v2.5":{id:"mimo-v2.5",name:"MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"mimo-v2.5-pro":{id:"mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.0036,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"}},zai:{"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",contextWindow:1e6,maxInputTokens:1e6,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-5":{id:"glm-5",name:"GLM-5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"glm-4.7-flash":{id:"glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7-flashx":{id:"glm-4.7-flashx",name:"GLM-4.7-FlashX",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.07,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.6v":{id:"glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-08",family:"glm"},"glm-4.6":{id:"glm-4.6",name:"GLM-4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"glm-4.5v":{id:"glm-4.5v",name:"GLM-4.5V",contextWindow:64000,maxInputTokens:64000,maxTokens:16384,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"glm-4.5":{id:"glm-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"glm-4.5-flash":{id:"glm-4.5-flash",name:"GLM-4.5-Flash",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-flash"}},"zai-coding-plan":{"glm-5.2":{id:"glm-5.2",name:"GLM-5.2",contextWindow:1e6,maxInputTokens:1e6,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-06-13",family:"glm"},"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"}}}};var dy=[{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-native"},{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-codex-cli"},{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-codex"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic",runtimeProviderId:"claude-code"},{modelsDevKey:"google",generatedProviderId:"gemini"},{modelsDevKey:"deepseek",generatedProviderId:"deepseek",runtimeProviderId:"deepseek"},{modelsDevKey:"xai",generatedProviderId:"xai"},{modelsDevKey:"togetherai",generatedProviderId:"together",runtimeProviderId:"together"},{modelsDevKey:"sap-ai-core",generatedProviderId:"sapaicore",runtimeProviderId:"sapaicore"},{modelsDevKey:"ollama",runtimeProviderId:"ollama-cloud"},{modelsDevKey:"ollama-cloud",generatedProviderId:"ollama"},{modelsDevKey:"fireworks-ai",generatedProviderId:"fireworks",runtimeProviderId:"fireworks"},{modelsDevKey:"groq",generatedProviderId:"groq",runtimeProviderId:"groq"},{modelsDevKey:"cerebras",generatedProviderId:"cerebras",runtimeProviderId:"cerebras"},{modelsDevKey:"sambanova",generatedProviderId:"sambanova",runtimeProviderId:"sambanova"},{modelsDevKey:"nebius",generatedProviderId:"nebius",runtimeProviderId:"nebius"},{modelsDevKey:"huggingface",generatedProviderId:"huggingface",runtimeProviderId:"huggingface"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway",runtimeProviderId:"dify"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter",runtimeProviderId:"cline"},{modelsDevKey:"aihubmix",generatedProviderId:"aihubmix",runtimeProviderId:"aihubmix"},{modelsDevKey:"hicap",runtimeProviderId:"hicap"},{modelsDevKey:"nous-research",runtimeProviderId:"nousResearch"},{modelsDevKey:"huawei-cloud-maas",runtimeProviderId:"huawei-cloud-maas"},{modelsDevKey:"baseten",generatedProviderId:"baseten",runtimeProviderId:"baseten"},{modelsDevKey:"zai-coding-plan",generatedProviderId:"zai-coding-plan"},{modelsDevKey:"google-vertex",generatedProviderId:"vertex"},{modelsDevKey:"lmstudio",generatedProviderId:"lmstudio"},{modelsDevKey:"zai",generatedProviderId:"zai"},{modelsDevKey:"requesty",generatedProviderId:"requesty"},{modelsDevKey:"amazon-bedrock",generatedProviderId:"bedrock"},{modelsDevKey:"moonshotai",generatedProviderId:"moonshot"},{modelsDevKey:"minimax",generatedProviderId:"minimax"},{modelsDevKey:"wandb",generatedProviderId:"wandb"},{modelsDevKey:"kilo",generatedProviderId:"kilo"},{modelsDevKey:"xiaomi",generatedProviderId:"xiaomi"},{modelsDevKey:"tencent-tokenhub",generatedProviderId:"tencent-tokenhub"},{modelsDevKey:"v0",generatedProviderId:"v0"}];function ly(e){return[...new Set(e)]}var cy=Object.fromEntries(dy.flatMap((e)=>e.generatedProviderId?[[e.modelsDevKey,e.generatedProviderId]]:[]));function _T(e){let t=dy.flatMap((n)=>{if(!n.generatedProviderId)return[];if(n.generatedProviderId===e||n.runtimeProviderId===e)return[n.generatedProviderId];return[]});if(e==="nousResearch")return ly([...t,"nousresearch",e]);return ly([...t,e])}we();var zz="cline-pass",my={contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0}};function Uz(e,t){if(!t)return my;let n=e.id.split("/").at(-1)??e.id;return t[n]||my}function Tz(e){let t={};for(let n of Object.values(e)){let r=n.id.split("/").at(-1)??n.id;t[r]=n}return t}function fy(e,t){let n=e.clinePass??[];if(n.length===0)return{};let r={},i=Tz(t);if(n.forEach((a)=>{let o=Uz(a,i);r[a.id]={name:a.name,...o,id:a.id,description:a.description}}),Object.keys(r).length===0)return{};return{[zz]:r}}async function py(e=fetch){let t=`${st().apiBaseUrl}/api/v1/ai/cline/recommended-models`,n=await e(t);if(!n.ok)throw Error(`Failed to load Cline recommended models from ${t}: HTTP ${n.status}`);return await n.json()}var jz=128000,Oz=4096;function vy(e){if(!e)return Number.NEGATIVE_INFINITY;let t=Date.parse(e);return Number.isNaN(t)?Number.NEGATIVE_INFINITY:t}function hr(e){return Object.fromEntries(Object.entries(e).sort(([t,n],[r,i])=>{let a=vy(n.releaseDate),o=vy(i.releaseDate);if(a!==o)return o-a;return t.localeCompare(r)}))}function Ez(e){let t=[];if(e.modalities?.input?.includes("image"))t.push("images");if(e.modalities?.input?.includes("pdf"))t.push("files");if(e.tool_call===!0)t.push("tools");if(e.reasoning===!0)t.push("reasoning");if(e.structured_output===!0)t.push("structured_output");if(e.temperature===!0)t.push("temperature");if(e.cost?.cache_read&&e.cost?.cache_read>=0||e.cost?.cache_write&&e.cost?.cache_write>=0)t.push("prompt-cache");return Array.from(new Set(t))}function Nz(e){if(e==="active"||e==="preview"||e==="deprecated"||e==="legacy")return e;return}function Pz(e){let t=e?.context,n=e?.input;if(typeof t==="number"&&typeof n==="number")return Math.min(t,n);return n??t??jz}function Az(e,t){let n=Pz(t.limit),r=t.limit?.output??Oz,i=t.limit?.context;return{id:e,name:t.name||e,contextWindow:i,maxInputTokens:n,maxTokens:Math.floor(r),capabilities:Ez(t),pricing:{input:t.cost?.input??0,output:t.cost?.output??0,cacheRead:t.cost?.cache_read??0,cacheWrite:t.cost?.cache_write??0},status:Nz(t.status),releaseDate:t.release_date,family:t.family}}function Dz(e){return e.status==="deprecated"}function Zz(e){let t={};for(let[n,r]of Object.entries(cy)){let i=e[n];if(!i?.models)continue;let a={};for(let[o,s]of Object.entries(i.models)){if(s.tool_call!==!0||Dz(s))continue;a[o]=Az(o,s)}if(Object.keys(a).length>0)t[r]=hr(a)}return t}async function Cz(e,t=fetch){let n=await t(e);if(!n.ok)throw Error(`Failed to load model catalog from ${e}: HTTP ${n.status}`);let r=await n.json();return Zz(r)}async function zT(e,t=fetch){let n={},[r,i]=await Promise.all([Cz(e,t).catch(()=>n),py(t).catch(()=>{return})]),a=i?fy(i,r.openrouter??{}):{};return{...r,...a}}var hy,gy=new Map;function OT(){return hy??=Object.fromEntries(Object.entries(Os.providers).map(([e,t])=>[e,hr(t)])),hy}function yy(e){let t=gy.get(e);if(t)return t;let n=hr(Os.providers[e]??{});return gy.set(e,n),n}var Es=[{canonicalPrefix:"zai/",aliasPrefix:"z-ai/"}];function by(e,t){return t.some((n)=>e.startsWith(n.canonicalPrefix))}function $y(e,t){return Object.fromEntries(Object.entries(e).filter(([n])=>{for(let r of t){if(!n.startsWith(r.aliasPrefix))continue;if(`${r.canonicalPrefix}${n.slice(r.aliasPrefix.length)}`in e)return!1}return!0}))}we();var Rz="the user is not subscribed to required model plan",Lz="no access to clinepass subscription models yet. subscribe to clinepass",Jz="organization accounts cannot use individual model inference subscriptions";function _y(){return`${new URL("/dashboard/subscription?personal=true",st().appBaseUrl).toString()}`}function ky(){return`No access to ClinePass subscription models yet. Subscribe to ClinePass, the low cost open weights model coding plan: ${_y()}`}class Ai extends Error{providerId;constructor(e){super(ky());this.name="ClineNotSubscribedError",this.providerId=e}}function wy(){return"Organization accounts cannot use ClinePass subscriptions. Go to /account -> change account to switch to your personal account for ClinePass"}class Di extends Error{providerId;constructor(e){super(wy());this.name="ClineOrgIndividualInferenceSubscriptionError",this.providerId=e}}function Mz(e){return e instanceof Ai}function Fz(e){return e instanceof Di}function Ns(e){let t=e.trim().toLowerCase();return t.includes(Rz)||t.includes(Lz)}function Ps(e){return e.toLowerCase().includes(Jz)}var Bz=new Set(["gpt-5.5","gpt-5.4","gpt-5.4-mini"]);function Wz(e){if(Bz.has(e))return!0;let t=e.match(/^gpt-(\d+\.\d+)/);return t?Number.parseFloat(t[1])>5.4:!1}function Kz(e,t){if(!e.includes("gpt-5.5"))return t;return{...t,contextWindow:400000,maxInputTokens:272000,maxTokens:128000}}function Sy(e){return Object.fromEntries(Object.entries(e).filter(([t])=>Wz(t)).map(([t,n])=>[t,Kz(t,n)]))}Zt();bs();$s();var Hz="https://code.aiservice.us-chicago-1.oci.oraclecloud.com/20250206/app/litellm",Gz="anthropic/claude-sonnet-4.6",gr="cline-pass",Xz="gpt-5.4",Yz={stickySession:{transport:"json-body",field:"session_id",metadataKey:"sessionId"}},yr={path:"apiKey",label:"API Key",type:"password",placeholder:"Enter API key...",description:"API key issued by the provider.",secret:!0},xy={path:"baseUrl",label:"Base URL",type:"url",placeholder:"https://...",description:"Base endpoint used for provider requests."},Qz=[{path:"gcp.projectId",label:"Google Cloud Project ID",type:"text",placeholder:"my-gcp-project",description:"Google Cloud project that owns the Vertex AI resources.",required:!0},{path:"gcp.region",label:"Vertex Region",type:"text",placeholder:"us-central1",description:"Vertex AI location to run models in.",defaultValue:"us-central1"},{...yr,label:"API Key",description:"Optional Google API key for Gemini models. Vertex Anthropic models use Google Cloud credentials."}],Vz=[{path:"aws.authentication",label:"Authentication",type:"select",description:"Credential source for Amazon Bedrock requests.",options:[{label:"AWS SDK / IAM",value:"iam"},{label:"AWS Profile",value:"profile"},{label:"API Key",value:"api-key"}],defaultValue:"iam"},{path:"aws.region",label:"AWS Region",type:"text",placeholder:"us-east-1",description:"AWS region for Bedrock runtime requests."},{path:"aws.profile",label:"AWS Profile",type:"text",placeholder:"default",description:"Named AWS profile when using profile authentication."},{path:"aws.accessKey",label:"Access Key ID",type:"password",placeholder:"AKIA...",secret:!0},{path:"aws.secretKey",label:"Secret Access Key",type:"password",secret:!0},{path:"aws.sessionToken",label:"Session Token",type:"password",secret:!0},{path:"apiKey",label:"Bedrock API Key",type:"password",description:"Optional Bedrock bearer token for API key authentication.",secret:!0},{path:"aws.endpoint",label:"Endpoint URL",type:"url",placeholder:"https://bedrock-runtime.us-east-1.amazonaws.com",description:"Optional custom Bedrock runtime endpoint."},{path:"aws.useCrossRegionInference",label:"Cross-Region Inference",type:"boolean"},{path:"aws.useGlobalInference",label:"Global Inference",type:"boolean"},{path:"aws.usePromptCache",label:"Prompt Cache",type:"boolean"}],qz=[{path:"oca.mode",label:"OCA Mode",type:"select",options:[{label:"External",value:"external"},{label:"Internal",value:"internal"}],defaultValue:"external"},yr,{path:"oca.usePromptCache",label:"Prompt Cache",type:"boolean"}],Iy=[yr,xy,{path:"apiLine",label:"API Line",type:"select",description:"Regional API line for Qwen routing.",options:[{label:"International",value:"international"},{label:"China",value:"china"}]}];function e1(e){let t=[];if(e.apiKeyEnv?.length)t.push(yr);if(e.defaults?.baseUrl?.trim())t.push(xy);return t}function t1(e){return Object.fromEntries(Object.entries(e).map(([t,n])=>[t,{...n}]))}function i1(e){if(!e?.length)return;return[...new Set(e)]}function zy(e){return i1([...e.capabilities??[],...e.popular!==void 0?["popular"]:[]])}function Uy(e){let t=e.configFields??e1(e),n={...e.metadata,configFields:t};if(e.popular!==void 0)n.popularRank=e.popular;return n}function Lt(e){return t1(yy(e))}function n1(e){let t=Object.keys(Lt(e));if(!t.length)return"";return t[0]}function As(e){let t=Object.entries(Lt("anthropic")).find(([n])=>e(n));if(t)return t[1];return{id:"sonnet",name:"Claude Sonnet",capabilities:["streaming","reasoning"]}}function r1(){function e(t){return{...t==="opus"?As((r)=>r.includes("opus")):t==="haiku"?As((r)=>r.includes("haiku")):As((r)=>r.includes("sonnet")),id:t,name:`Claude ${t.charAt(0).toUpperCase()}${t.slice(1)}`}}return{opus:e("opus"),sonnet:e("sonnet"),haiku:e("haiku")}}function a1(){return Sy(Lt("openai-native"))}function o1(){let e=Object.fromEntries(Object.entries(Lt("vercel-ai-gateway")).filter(([t])=>by(t,Es)));return $y({...Lt("openrouter"),...e},Es)}function s1(e,t){let n={id:e,name:e};if(t?.family==="openai-compatible")n.contextWindow=128000,n.maxInputTokens=128000,n.capabilities=["streaming","tools","images"];if(t?.id==="qwen"||t?.id==="qwen-code")n.family="qwen",n.capabilities=["prompt-cache"];return n}function u1(e,t){let n=new Set(["text"]);for(let i of t.capabilities??[])switch(i){case"tools":n.add("tools");break;case"reasoning":n.add("reasoning");break;case"prompt-cache":n.add("prompt-cache");break;case"images":n.add("images");break;case"structured_output":n.add("structured-output");break}let r={};if(t.family)r.family=t.family;if(t.pricing)r.pricing=t.pricing;if(t.status)r.status=t.status;if(t.releaseDate)r.releaseDate=t.releaseDate;if(typeof t.metadata?.reasoningDefaultOn==="boolean")r.reasoningDefaultOn=t.metadata.reasoningDefaultOn;return{id:t.id,name:t.name??t.id,providerId:e,description:t.description,contextWindow:t.contextWindow,maxInputTokens:t.maxInputTokens,maxOutputTokens:t.maxTokens,capabilities:[...n],metadata:Object.keys(r).length>0?r:void 0}}function l1(e){if(e.client==="openai")return"openai-responses";switch(e.family){case"openai":return"openai-responses";case"anthropic":case"bedrock":return"anthropic";case"google":case"vertex":return"gemini";default:return"openai-chat"}}function d1(e){if(e.protocol==="openai-responses")return"openai";switch(e.family){case"openai":return"openai";case"anthropic":return"anthropic";case"google":return"gemini";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":case"claude-code":case"openai-codex":case"opencode":case"dify":case"sap-ai-core":return"ai-sdk-community";default:return"openai-compatible"}}function Ty(e){return{id:e.id,name:e.name,description:e.description??"Cline API endpoint",family:"openai-compatible",popular:e.popular,capabilities:["reasoning","prompt-cache","tools","oauth"],modelsProviderId:e.modelsProviderId,modelsFactory:e.modelsFactory,defaultModelId:e.defaultModelId,apiKeyEnv:["CLINE_API_KEY"],defaults:{get baseUrl(){return`${st().apiBaseUrl}/api/v1`},...e.defaults},metadata:{...rr,...e.metadata}}}async function jy(e,t){if(e.status!==403)return;let n=await e.clone().text().catch(()=>"");if(Ps(n))throw new Di(t);if(Ns(n))throw new Ai(t)}var c1=Ty({id:"cline",name:"Cline Usage-Billing",popular:1,modelsFactory:o1,defaultModelId:Gz,defaults:{options:{onResponseError:async(e)=>{await jy(e,"cline")}}}}),m1=Ty({id:gr,name:"ClinePass",popular:2,description:"Cline API endpoint with ClinePass models",modelsProviderId:gr,defaultModelId:n1(gr),metadata:{usageCostDisplay:"subscription"},defaults:{options:{onResponseError:async(e)=>{await jy(e,gr)}}}}),f1=[{id:"openai-compatible",name:"OpenAI Compatible",description:"OpenAI-compatible chat completions endpoint",family:"openai-compatible",popular:35,capabilities:["tools"],defaultModelId:"gpt-4o",apiKeyEnv:["OPENAI_API_KEY"],defaults:{baseUrl:"https://api.openai.com/v1"}},c1,m1,{id:"deepseek",name:"DeepSeek",description:"Advanced AI models with reasoning capabilities",family:"openai-compatible",popular:10,capabilities:["reasoning","prompt-cache"],defaultModelId:"deepseek-v4-flash",apiKeyEnv:["DEEPSEEK_API_KEY"],defaults:{baseUrl:"https://api.deepseek.com/v1"}},{id:"xai",name:"xAI",description:"Creator of Grok AI assistant",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"grok-4.20-0309-non-reasoning",apiKeyEnv:["XAI_API_KEY"],defaults:{baseUrl:"https://api.x.ai/v1"}},{id:"together",name:"Together AI",description:"Fast inference for open-source models",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"Qwen/Qwen3.5-397B-A17B",apiKeyEnv:["TOGETHER_API_KEY"],defaults:{baseUrl:"https://api.together.xyz/v1"}},{id:"fireworks",name:"Fireworks AI",description:"High-performance inference platform",family:"openai-compatible",defaultModelId:"accounts/fireworks/models/kimi-k2p6",apiKeyEnv:["FIREWORKS_API_KEY"],defaults:{baseUrl:"https://api.fireworks.ai/inference/v1"}},{id:"groq",name:"Groq",description:"Ultra-fast LPU inference",family:"openai-compatible",defaultModelId:"moonshotai/kimi-k2-instruct-0905",apiKeyEnv:["GROQ_API_KEY"],defaults:{baseUrl:"https://api.groq.com/openai/v1"}},{id:"poolside",name:"Poolside",description:"OpenAI-compatible code intelligence models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"poolside/laguna-m.1",apiKeyEnv:["POOLSIDE_API_KEY"],defaults:{baseUrl:"https://inference.poolside.ai/v1"}},{id:"cerebras",name:"Cerebras",description:"Fast inference on Cerebras wafer-scale chips",family:"openai-compatible",defaultModelId:"zai-glm-4.7",apiKeyEnv:["CEREBRAS_API_KEY"],defaults:{baseUrl:"https://api.cerebras.ai/v1"}},{id:"sambanova",name:"SambaNova",description:"High-performance AI inference",family:"openai-compatible",apiKeyEnv:["SAMBANOVA_API_KEY"],modelsProviderId:"sambanova",defaults:{baseUrl:"https://api.sambanova.ai/v1"}},{id:"nebius",name:"Nebius",description:"European cloud AI infrastructure",family:"openai-compatible",defaultModelId:"nvidia/nemotron-3-super-120b-a12b",apiKeyEnv:["NEBIUS_API_KEY"],defaults:{baseUrl:"https://api.studio.nebius.ai/v1"}},{id:"baseten",name:"Baseten",description:"ML inference platform",family:"openai-compatible",apiKeyEnv:["BASETEN_API_KEY"],modelsProviderId:"baseten",defaults:{baseUrl:"https://model-api.baseten.co/v1"}},{id:"requesty",name:"Requesty",description:"AI router with multiple provider support",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"openai/gpt-5.4",apiKeyEnv:["REQUESTY_API_KEY"],modelsProviderId:"requesty",defaults:{baseUrl:"https://router.requesty.ai/v1"}},{id:"litellm",name:"LiteLLM",description:"Self-hosted LLM proxy",family:"openai-compatible",protocol:"openai-responses",popular:40,capabilities:["prompt-cache"],defaultModelId:"gpt-5.4",apiKeyEnv:["LITELLM_API_KEY"],defaults:{baseUrl:"http://localhost:4000/v1"}},{id:"huggingface",name:"Hugging Face",description:"Hugging Face inference API",family:"openai-compatible",defaultModelId:"MiniMaxAI/MiniMax-M2.5",apiKeyEnv:["HF_TOKEN"],modelsProviderId:"huggingface",defaults:{baseUrl:"https://router.huggingface.co/v1"}},{id:"vercel-ai-gateway",name:"Vercel AI Gateway",description:"Vercel's AI gateway service",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"alibaba/qwen3.6-plus",apiKeyEnv:["AI_GATEWAY_API_KEY"],modelsProviderId:"vercel-ai-gateway",defaults:{baseUrl:"https://ai-gateway.vercel.sh/v1"},metadata:rr},{id:"v0",name:"Vercel V0",description:"The Vercel provider gives you access to the v0 API, designed for building modern web applications.",family:"openai-compatible",capabilities:["reasoning","tools"],defaultModelId:"v0-1.5-md",apiKeyEnv:["V0_API_KEY"],modelsProviderId:"v0",defaults:{baseUrl:"https://api.v0.dev/v1"}},{id:"aihubmix",name:"AI Hub Mix",description:"AI model aggregator",family:"openai-compatible",defaultModelId:"gpt-4o",apiKeyEnv:["AIHUBMIX_API_KEY"],modelsProviderId:"aihubmix",defaults:{baseUrl:"https://api.aihubmix.com/v1"},metadata:lt},{id:"hicap",name:"HiCap",description:"HiCap AI platform",family:"openai-compatible",defaultModelId:"hicap-pro",apiKeyEnv:["HICAP_API_KEY"],defaults:{baseUrl:"https://api.hicap.ai/v1"}},{id:"nousResearch",name:"Nous Research",description:"Open-source AI research lab",family:"openai-compatible",defaultModelId:"DeepHermes-3-Llama-3-3-70B-Preview",apiKeyEnv:["NOUS_RESEARCH_API_KEY","NOUSRESEARCH_API_KEY"],modelsProviderId:"nousResearch",defaults:{baseUrl:"https://inference-api.nousresearch.com/v1"}},{id:"huawei-cloud-maas",name:"Huawei Cloud MaaS",description:"Huawei's model-as-a-service platform",family:"openai-compatible",defaultModelId:"DeepSeek-R1",apiKeyEnv:["HUAWEI_CLOUD_MAAS_API_KEY"],defaults:{baseUrl:"https://infer-modelarts.cn-southwest-2.myhuaweicloud.com/v1"}},{id:"qwen",name:"Alibaba Qwen",description:"Alibaba Qwen platform models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen-plus-latest",apiKeyEnv:["QWEN_API_KEY"],modelsProviderId:"qwen",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},configFields:Iy,metadata:ps},{id:"qwen-code",name:"Alibaba Qwen Code",description:"Qwen OAuth coding models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen3-coder-plus",modelsProviderId:"qwen-code",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},configFields:Iy,metadata:ps},{id:"doubao",name:"Doubao",description:"Volcengine Ark platform models",family:"openai-compatible",capabilities:["tools"],defaultModelId:"doubao-1-5-pro-256k-250115",apiKeyEnv:["DOUBAO_API_KEY"],modelsProviderId:"doubao",defaults:{baseUrl:"https://ark.cn-beijing.volces.com/api/v3"}},{id:"zai",name:"Z.AI",description:"Z.AI's family of LLMs",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"glm-5v-turbo",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai",defaults:{baseUrl:"https://api.z.ai/api/paas/v4"},metadata:ys},{id:"zai-coding-plan",name:"Z.AI Coding Plan",description:"Z.AI's coding-focused models",family:"openai-compatible",capabilities:["reasoning","tools"],defaultModelId:"glm-5.2",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai-coding-plan",defaults:{baseUrl:"https://api.z.ai/api/coding/paas/v4"},metadata:ys},{id:"moonshot",name:"Moonshot",description:"Moonshot AI Studio models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"kimi-k2-0905-preview",apiKeyEnv:["MOONSHOT_API_KEY"],modelsProviderId:"moonshot",defaults:{baseUrl:"https://api.moonshot.ai/v1"}},{id:"wandb",name:"W&B by CoreWeave",description:"Weights & Biases",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",apiKeyEnv:["WANDB_API_KEY"],modelsProviderId:"wandb",defaults:{baseUrl:"https://api.inference.wandb.ai/v1"}},{id:"xiaomi",name:"Xiaomi",description:"Xiaomi",family:"openai-compatible",capabilities:["prompt-cache","tools","reasoning"],defaultModelId:"mimo-v2.5",apiKeyEnv:["XIAOMI_API_KEY"],modelsProviderId:"xiaomi",defaults:{baseUrl:"https://api.xiaomimimo.com/v1"}},{id:"tencent-tokenhub",name:"Tencent TokenHub",description:"Tencent TokenHub AI models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"hy3-preview",apiKeyEnv:["TENCENT_TOKENHUB_API_KEY"],modelsProviderId:"tencent-tokenhub",docsUrl:"https://cloud.tencent.com/document/product/1823/130050",defaults:{baseUrl:"https://tokenhub.tencentmaas.com/v1"}},{id:"kilo",name:"Kilo Gateway",description:"Kilo Gateway",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache","reasoning","tools"],defaultModelId:"gpt-4o",apiKeyEnv:["KILO_GATEWAY_API_KEY"],modelsProviderId:"kilo",defaults:{baseUrl:"https://api.kilo.ai/api/gateway"}},{id:"openrouter",name:"OpenRouter",description:"OpenRouter AI platform",family:"openai-compatible",popular:20,capabilities:["reasoning","prompt-cache"],defaultModelId:"anthropic/claude-sonnet-4.6",apiKeyEnv:["OPENROUTER_API_KEY"],modelsProviderId:"openrouter",docsUrl:"https://openrouter.ai/models",defaults:{baseUrl:"https://openrouter.ai/api/v1"},metadata:{...rr,...Yz}},{id:"ollama",name:"Ollama",description:"Ollama Cloud and local LLM hosting",family:"openai-compatible",popular:25,defaultModelId:"",apiKeyEnv:["OLLAMA_API_KEY"],defaults:{baseUrl:"http://localhost:11434/v1"},modelsSourceUrl:"http://localhost:11434/api/tags"},{id:"lmstudio",name:"LM Studio",description:"Local model inference with LM Studio",family:"openai-compatible",defaultModelId:"",apiKeyEnv:["LMSTUDIO_API_KEY"],modelsProviderId:"lmstudio",defaults:{baseUrl:"http://localhost:1234/v1"},modelsSourceUrl:"http://localhost:1234/v1/models"},{id:"oca",name:"Oracle Code Assist",description:"Oracle Code Assist (OCA) LiteLLM gateway",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"anthropic/claude-3-7-sonnet-20250219",apiKeyEnv:["OCA_API_KEY"],modelsProviderId:"oca",defaults:{baseUrl:Hz},configFields:qz,metadata:lt},{id:"asksage",name:"AskSage",description:"AskSage platform",family:"openai-compatible",client:"fetch",capabilities:["tools"],defaultModelId:"gpt-4o",apiKeyEnv:["ASKSAGE_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.asksage.ai/server"}}],Ds=[{id:"openai-native",name:"OpenAI",description:"Creator of GPT and ChatGPT",family:"openai",capabilities:["reasoning"],modelsProviderId:"openai-native",defaultModelId:"gpt-5.4",apiKeyEnv:["OPENAI_API_KEY"],defaults:{baseUrl:"https://api.openai.com/v1"}},{id:"openai-codex",name:"OpenAI ChatGPT Subscription",description:"OpenAI ChatGPT subscription access uses an OAuth device code flow.",family:"openai",popular:5,capabilities:["reasoning","oauth"],defaultModelId:Xz,modelsFactory:a1,defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},configFields:[],metadata:{usageCostDisplay:"subscription"}},{id:"openai-codex-cli",name:"OpenAI Codex CLI",description:"OpenAI Codex via the local Codex CLI provider",family:"openai-codex",capabilities:["reasoning","provider-tools","local-auth"],defaultModelId:"gpt-5.3-codex",modelsProviderId:"openai",defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},configFields:[],metadata:{usageCostDisplay:"subscription"}},{id:"anthropic",name:"Anthropic",description:"Creator of Claude, the AI assistant",family:"anthropic",popular:15,capabilities:["reasoning","prompt-cache"],defaultModelId:"claude-sonnet-4-6",apiKeyEnv:["ANTHROPIC_API_KEY"],modelsProviderId:"anthropic",defaults:{baseUrl:"https://api.anthropic.com/v1"},metadata:lt},{id:"claude-code",name:"Claude Code",description:"Use Claude Code SDK with Claude Pro/Max subscription",family:"claude-code",capabilities:["reasoning"],defaultModelId:"sonnet",modelsFactory:r1,defaults:{baseUrl:""},configFields:[]},{id:"gemini",name:"Google Gemini",description:"Google Gemini API",family:"google",popular:45,capabilities:["reasoning","prompt-cache"],defaultModelId:"gemma-4-26b",apiKeyEnv:["GOOGLE_GENERATIVE_AI_API_KEY","GEMINI_API_KEY"],modelsProviderId:"gemini",defaults:{baseUrl:"https://generativelanguage.googleapis.com/v1beta"}},{id:"vertex",name:"Google Vertex AI",description:"Google Cloud Vertex AI",family:"vertex",capabilities:["reasoning","prompt-cache"],apiKeyEnv:["GCP_PROJECT_ID","GOOGLE_CLOUD_PROJECT","GOOGLE_APPLICATION_CREDENTIALS","GEMINI_API_KEY","GOOGLE_API_KEY","GOOGLE_VERTEX_PROJECT","GOOGLE_VERTEX_LOCATION"],modelsProviderId:"vertex",configFields:Qz,metadata:lt},{id:"bedrock",name:"AWS Bedrock",description:"Amazon Bedrock managed foundation models",family:"bedrock",popular:30,capabilities:["reasoning","prompt-cache"],defaultModelId:"minimax.minimax-m2.5",apiKeyEnv:["AWS_BEARER_TOKEN_BEDROCK","AWS_REGION","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN"],modelsProviderId:"bedrock",configFields:Vz,metadata:lt},{id:"mistral",name:"Mistral",description:"Mistral AI models via AI SDK provider",family:"mistral",capabilities:["reasoning"],defaultModelId:"mistral-medium-latest",apiKeyEnv:["MISTRAL_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.mistral.ai/v1"}},{id:"minimax",name:"MiniMax",description:"MiniMax models via Anthropic-compatible API",family:"anthropic",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"MiniMax-M2.5",apiKeyEnv:["MINIMAX_API_KEY"],modelsProviderId:"minimax",defaults:{baseUrl:"https://api.minimax.io/anthropic/v1"},metadata:mg},{id:"opencode",name:"OpenCode",description:"OpenCode SDK multi-provider runtime",family:"opencode",capabilities:["reasoning","oauth"],defaultModelId:"openai/gpt-5.4",modelsProviderId:"opencode",defaults:{baseUrl:""},configFields:[]},{id:"dify",name:"Dify",description:"Dify workflow/application provider via AI SDK",family:"dify",defaultModelId:"default",apiKeyEnv:["DIFY_API_KEY"],modelsFactory:()=>({})},{id:"sapaicore",name:"SAP AI Core",description:"SAP AI Core inference and orchestration platform",family:"sap-ai-core",client:"ai-sdk-community",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"anthropic--claude-3.5-sonnet",apiKeyEnv:["AICORE_SERVICE_KEY","VCAP_SERVICES"],modelsProviderId:"sapaicore",metadata:lt},...f1];function p1(e){if(e.modelsFactory)return e.modelsFactory();if(e.modelsProviderId)return Lt(e.modelsProviderId);return{}}function Oy(e){let t=p1(e),n=zy(e),r=Uy(e),i=Object.keys(t).length>0?t:e.defaultModelId?{[e.defaultModelId]:s1(e.defaultModelId,e)}:{},a=Object.keys(i),o=e.defaultModelId||a[0]||"default";return{provider:{id:e.id,name:e.name,description:e.description,protocol:e.protocol??l1(e),baseUrl:e.defaults?.baseUrl,modelsSourceUrl:e.modelsSourceUrl,defaultModelId:o,capabilities:n,env:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,client:e.client??d1(e),source:"system",metadata:r},models:i}}function Ey(e){let t=Oy(e),n=zy(e),r=Uy(e),i=Object.values(t.models).map((o)=>u1(e.id,o)),a=i.length>0?i:[{id:t.provider.defaultModelId||"default",name:t.provider.defaultModelId||"Default",providerId:e.id,capabilities:["text"]}];return{id:e.id,name:e.name,description:e.description,defaultModelId:t.provider.defaultModelId||a[0]?.id||"default",models:a,capabilities:n,env:e.env??["browser","node"],api:e.defaults?.baseUrl,apiKeyEnv:e.apiKeyEnv,docsUrl:e.docsUrl,metadata:r}}var Zs=Ds.map(Oy),WT=Object.fromEntries(Zs.map((e)=>[e.provider.id,e]));var Ny=new Map;async function v1(e){let t=Ny.get(e);if(t)return t;let n=(async()=>{switch(e){case"openai":return(await Promise.resolve().then(() => (ie(),ue))).createOpenAIProvider;case"openai-compatible":return(await Promise.resolve().then(() => (ie(),ue))).createOpenAICompatibleProvider;case"anthropic":return(await Promise.resolve().then(() => (ie(),ue))).createAnthropicProvider;case"google":return(await Promise.resolve().then(() => (ie(),ue))).createGoogleProvider;case"vertex":return(await Promise.resolve().then(() => (ie(),ue))).createVertexProvider;case"bedrock":return(await Promise.resolve().then(() => (ie(),ue))).createBedrockProvider;case"mistral":return(await Promise.resolve().then(() => (ie(),ue))).createMistralProvider;case"claude-code":return(await Promise.resolve().then(() => (ie(),ue))).createClaudeCodeProvider;case"openai-codex":return(await Promise.resolve().then(() => (ie(),ue))).createOpenAICodexProvider;case"opencode":return(await Promise.resolve().then(() => (ie(),ue))).createOpenCodeProvider;case"dify":return(await Promise.resolve().then(() => (ie(),ue))).createDifyProvider;case"sap-ai-core":return(await Promise.resolve().then(() => (ie(),ue))).createSapAiCoreProvider}})();return Ny.set(e,n),n}function h1(e){if(e.family==="openai"||e.protocol==="openai-responses"||e.client==="openai")return"openai";return e.family}var Zi=Ds.map((e)=>({manifest:Ey(e),defaults:{...e.defaults,apiKeyEnv:e.apiKeyEnv,baseUrl:e.defaults?.baseUrl},loadProvider:async()=>({createProvider:await v1(h1(e))})}));we();async function*Py(e){for await(let t of e)yield t}function Ay(e){return{...e,models:e.models.map((t)=>({...t})),capabilities:e.capabilities?[...e.capabilities]:void 0,env:e.env?[...e.env]:void 0,api:e.api,apiKeyEnv:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,docsUrl:e.docsUrl,metadata:e.metadata?{...e.metadata}:void 0}}function g1(e,t){let n=new Map;for(let r of e.models)n.set(r.id,{...r});for(let r of t?.models??[])n.set(r.id,{...r,providerId:e.id});return Array.from(n.values())}function Dy(e,t){let n=e?.routing||t?.routing?{...e?.routing??{},...t?.routing??{}}:void 0,r={...e??{},...t??{},...n?{routing:n}:{}};return Object.keys(r).length>0?r:void 0}function y1(e,t){return{id:t,name:t,providerId:e.id}}class Cs{providers=new Map;providerConfigs=new Map;fallbackFetch;constructor(e){this.fallbackFetch=e}registerProvider(e){if(!e.createProvider&&!e.loadProvider)throw Error(`Provider "${e.manifest.id}" must include createProvider or loadProvider.`);this.providers.set(e.manifest.id,{manifest:Ay(e.manifest),defaults:e.defaults?{providerId:e.manifest.id,apiKey:e.defaults.apiKey,apiKeyResolver:e.defaults.apiKeyResolver,apiKeyEnv:e.defaults.apiKeyEnv,baseUrl:e.defaults.baseUrl,headers:e.defaults.headers?{...e.defaults.headers}:void 0,timeoutMs:e.defaults.timeoutMs,fetch:e.defaults.fetch,options:e.defaults.options?{...e.defaults.options}:void 0,metadata:e.defaults.metadata?{...e.defaults.metadata}:void 0}:void 0,createProvider:e.createProvider,loadProvider:e.loadProvider})}configureProvider(e){this.providerConfigs.set(e.providerId,{providerId:e.providerId,apiKey:e.apiKey,apiKeyResolver:e.apiKeyResolver,apiKeyEnv:e.apiKeyEnv,baseUrl:e.baseUrl,headers:e.headers?{...e.headers}:void 0,timeoutMs:e.timeoutMs,fetch:e.fetch,options:e.options?{...e.options}:void 0,metadata:e.metadata?{...e.metadata}:void 0,enabled:e.enabled??!0,defaultModelId:e.defaultModelId,models:e.models?.map((t)=>({...t}))})}listProviders(){return Array.from(this.providers.values()).map((e)=>this.getManifest(e.manifest.id)).filter((e)=>e!==void 0)}listModels(e){if(e)return[...this.getManifest(e)?.models??[]];return this.listProviders().flatMap((t)=>t.models.map((n)=>({...n})))}getManifest(e){let t=this.providers.get(e);if(!t)return;let n=this.providerConfigs.get(e);if(n&&!n.enabled)return;let r=g1(t.manifest,n),i=n?.defaultModelId??t.manifest.defaultModelId??r[0]?.id;if(!i)return;return{...Ay(t.manifest),defaultModelId:i,models:r,metadata:Dy(t.manifest.metadata,n?.metadata)}}resolveModel(e){let t=this.getManifest(e.providerId);if(!t)throw Error(`Unknown or disabled provider "${e.providerId}".`);let n=e.modelId??t.defaultModelId,r=t.models.find((i)=>i.id===n)??y1(t,n);return{provider:t,model:r}}async createProvider(e){let t=this.providers.get(e);if(!t)throw Error(`Unknown provider "${e}".`);if(!t.createProvider){let a=await t.loadProvider?.();if(!a?.createProvider)throw Error(`Provider "${e}" could not be loaded.`);t.createProvider=a.createProvider}let n=this.getManifest(e);if(!n)throw Error(`Provider "${e}" is disabled.`);let r=this.providerConfigs.get(e),i=Dy(t.defaults?.metadata,r?.metadata);return{manifest:n,config:{providerId:e,apiKey:r?.apiKey??t.defaults?.apiKey,apiKeyResolver:r?.apiKeyResolver??t.defaults?.apiKeyResolver,apiKeyEnv:r?.apiKeyEnv??t.defaults?.apiKeyEnv,baseUrl:r?.baseUrl??t.defaults?.baseUrl,headers:{...t.defaults?.headers??{},...r?.headers??{}},timeoutMs:r?.timeoutMs??t.defaults?.timeoutMs,fetch:r?.fetch??t.defaults?.fetch??this.fallbackFetch,options:{...t.defaults?.options??{},...r?.options??{}},metadata:i},createProvider:t.createProvider}}}var b1=1024;function $1(e,t){if(!e&&!t)return;return{...e??{},...t??{}}}class Zy{gateway;selection;defaults;constructor(e,t,n){this.gateway=e;this.selection=t;this.defaults=n}stream(e){let t=e.options?.reasoning,n=e.options?.thinking,r=e.options?.reasoningEffort,i=e.options?.thinkingBudgetTokens,a=r==="low"||r==="medium"||r==="high"?r:void 0,o=typeof n==="boolean"||a!==void 0||typeof i==="number"?{enabled:typeof n==="boolean"?n:void 0,effort:a,budgetTokens:typeof i==="number"?i:void 0}:void 0;return this.gateway.stream({providerId:this.selection.providerId,modelId:this.selection.modelId??"",systemPrompt:e.systemPrompt,messages:e.messages,tools:this.defaults?.tools??e.tools,temperature:e.options?.temperature??this.defaults?.temperature,maxTokens:e.options?.maxTokens??this.defaults?.maxTokens,metadata:$1(this.defaults?.metadata,e.options?.metadata),reasoning:t??o??this.defaults?.reasoning,signal:e.signal??this.defaults?.signal})}}function br(e){return typeof e==="number"&&Number.isFinite(e)&&e>0}function Rs(e){let t=new WeakSet;try{return JSON.stringify(e,(n,r)=>{if(typeof r==="bigint")return r.toString();if(typeof r!=="object"||r===null)return r;if(t.has(r))return"[Circular]";return t.add(r),r})??""}catch{return String(e??"")}}function _1(e){let t;try{t=JSON.stringify({systemPrompt:e.systemPrompt,messages:e.messages,tools:e.tools})}catch{t=[Rs(e.systemPrompt),Rs(e.messages),Rs(e.tools)].join(`
|
|
169
|
+
`)}return ot(t.length)}function k1(e){if(!br(e.requestedMaxTokens))return;let t=[Math.floor(e.requestedMaxTokens)];if(br(e.model.maxOutputTokens))t.push(Math.floor(e.model.maxOutputTokens));if(br(e.model.contextWindow)){let n=e.outputReserveTokens??b1,r=e.model.contextWindow-e.estimatedInputTokens-n;if(r<=0){e.onContextOverflow?.({contextWindow:e.model.contextWindow,estimatedInputTokens:e.estimatedInputTokens,reserveTokens:n});return}t.push(Math.floor(r))}if(t.length===0)return;return Math.max(1,Math.floor(Math.min(...t)))}class Cy{registry;logger;telemetry;constructor(e={}){if(this.registry=new Cs(e.fetch),this.logger=e.logger,this.telemetry=e.telemetry,e.builtins!==!1){let t=new Set(e.builtins??Zi.map((n)=>n.manifest.id));for(let n of Zi)if(t.has(n.manifest.id))this.registry.registerProvider(n)}for(let t of e.providers??[])this.registry.registerProvider(t);for(let t of e.providerConfigs??[])this.registry.configureProvider(t)}registerProvider(e){return this.registry.registerProvider(e),this}configureProvider(e){return this.registry.configureProvider(e),this}listProviders(){return this.registry.listProviders()}listModels(e){return this.registry.listModels(e)}createAgentModel(e,t){return new Zy(this,e,t)}async stream(e){let t=this.registry.resolveModel({providerId:e.providerId,modelId:e.modelId||void 0}),n=await this.registry.createProvider(e.providerId),r=await n.createProvider(n.config),i=br(e.maxTokens)?k1({requestedMaxTokens:e.maxTokens,model:t.model,estimatedInputTokens:_1(e),onContextOverflow:(o)=>{this.logger?.log("Estimated prompt tokens exceed model context window",{severity:"warn",providerId:t.provider.id,modelId:t.model.id,...o})}}):void 0,a=await r.stream({...e,modelId:t.model.id,providerId:t.provider.id,maxTokens:i},{provider:t.provider,model:t.model,config:n.config,signal:e.signal,logger:this.logger,telemetry:this.telemetry});return Py(a)}}function Ls(e){return new Cy(e)}function w1(){let e=new Map;for(let t of Zs)e.set(t.provider.id,{provider:{...t.provider},models:Object.fromEntries(Object.entries(t.models).map(([n,r])=>[n,{...r}]))});return e}var Ci=w1(),Jt=new Map,mt=new Map;function ct(e){return mt.get(e)??Ci.get(e)}function Ry(){let e=Array.from(Ci.keys()),t=Array.from(mt.keys()).filter((n)=>!Ci.has(n));return[...e,...t]}function nj(e){return Ci.has(e)||mt.has(e)}async function rj(e){return ct(e)?.provider}function Js(e){return ct(e)}async function Ms(e){return ct(e)}async function aj(e){let n=ct(e)?.models??{},r=Jt.get(e);if(r)return{...n,...Object.fromEntries(r)};return n}async function oj(){return Ry().map((e)=>ct(e)?.provider).filter((e)=>e!==void 0)}function sj(e){mt.set(e.provider.id,e)}function uj(e,t,n){if(!Jt.has(e))Jt.set(e,new Map);Jt.get(e)?.set(t,{...n,id:t})}function lj(e){return Jt.delete(e),mt.delete(e)}function dj(){Jt.clear(),mt.clear()}var cj=new Proxy({},{get(e,t){return ct(t)},has(e,t){return Ci.has(t)||mt.has(t)},ownKeys(){return Ry()},getOwnPropertyDescriptor(e,t){let n=ct(t);if(n===void 0)return;return{configurable:!0,enumerable:!0,value:n}}});var Mt=new Map(Zi.map((e)=>[e.manifest.id,e]));function S1(e){if(!e?.length)return;let t=new Set;for(let n of e)switch(n){case"tools":case"reasoning":case"prompt-cache":case"images":case"audio":t.add(n);break;case"files":case"streaming":case"temperature":case"reasoning-effort":case"computer-use":case"global-endpoint":t.add("text");break;case"structured_output":t.add("structured-output");break;default:t.add("text")}return t.add("text"),[...t]}function Ws(e,t){return{id:t.id,name:t.name??t.id,description:t.description,providerId:e,contextWindow:t.contextWindow,maxInputTokens:t.maxInputTokens,maxOutputTokens:t.maxTokens,capabilities:S1(t.capabilities),metadata:{family:t.family,pricing:t.pricing,status:t.status,releaseDate:t.releaseDate}}}function Ly(e,t){if(t?.client==="openai"||t?.protocol==="openai-responses")return dr;switch(t?.client){case"anthropic":return mr;case"gemini":return fr;case"vertex":return pr;case"bedrock":return vr;case"openai-compatible":return cr}switch(G(e)){case"openai-codex":case"openai-native":return dr;case"anthropic":case"minimax":return mr;case"gemini":return fr;case"vertex":return pr;case"bedrock":return vr;case"mistral":return Is;case"claude-code":return xs;case"openai-codex-cli":return zs;case"opencode":return Us;case"dify":return Ts;case"sapaicore":return js;default:return cr}}async function I1(e){let t=G(e.providerId),n=G(Fi(e));if(Mt.get(t)&&t===n)return;let i=await Ms(t)??(t!==n?await Ms(n):void 0);if(!i){let o=Mt.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,name:o.manifest.name,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let a=Mt.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>Ws(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...a?.defaults??{},baseUrl:i.provider.baseUrl??a?.defaults?.baseUrl,apiKeyEnv:i.provider.env??a?.defaults?.apiKeyEnv},createProvider:a?.createProvider??Ly(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:a?.loadProvider}}function x1(e){let t=G(e.providerId),n=G(Fi(e));if(Mt.get(t)&&t===n)return;let i=Js(t)??(t!==n?Js(n):void 0);if(!i){let o=Mt.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let a=Mt.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>Ws(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...a?.defaults??{},baseUrl:i.provider.baseUrl??a?.defaults?.baseUrl,apiKeyEnv:i.provider.env??a?.defaults?.apiKeyEnv},createProvider:a?.createProvider??Ly(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:a?.loadProvider}}function z1(e){let t=new Map;for(let n of e){if(!Array.isArray(n.content))continue;for(let r of n.content)if(r.type==="tool_use"){if(t.set(r.id,r.name),r.call_id)t.set(r.call_id,r.name)}}return e.map((n)=>{let r=typeof n.content==="string"?[{type:"text",text:n.content}]:n.content.flatMap((i)=>{switch(i.type){case"text":return[{type:"text",text:i.text}];case"thinking":return[{type:"reasoning",text:i.thinking,metadata:i.signature||i.call_id?{signature:i.signature,callId:i.call_id,details:i.details}:void 0}];case"tool_use":return[{type:"tool-call",toolCallId:i.call_id??i.id,toolName:i.name,input:i.input,metadata:i.signature?{thoughtSignature:i.signature}:void 0}];case"tool_result":return[{type:"tool-result",toolCallId:i.tool_use_id,toolName:t.get(i.tool_use_id)??"tool",output:i.content,isError:i.is_error??!1}];case"image":return[{type:"image",image:`data:${i.mediaType};base64,${i.data}`,mediaType:i.mediaType}];case"file":return[{type:"text",text:i.content}];case"redacted_thinking":return[];default:return[]}});return{id:Bs(),role:n.role,content:r,createdAt:Date.now()}})}function U1(e){return e?.map((t)=>({name:t.name,description:t.description,inputSchema:t.inputSchema}))}function Fs(e,t,n,r,i){return{providerId:G(e.providerId),modelId:e.modelId,systemPrompt:t,messages:z1(n),tools:U1(r),maxTokens:e.maxOutputTokens,reasoning:e.thinking!==void 0||e.reasoningEffort||e.thinkingBudgetTokens!==void 0?{enabled:e.thinking,effort:e.reasoningEffort==="xhigh"?"high":e.reasoningEffort==="low"||e.reasoningEffort==="medium"||e.reasoningEffort==="high"?e.reasoningEffort:void 0,budgetTokens:e.thinkingBudgetTokens}:void 0,signal:i}}function Jy(e){let t=G(e.providerId);return{providerId:t,apiKey:e.apiKey??e.accessToken,baseUrl:e.baseUrl,headers:e.headers,timeoutMs:e.timeoutMs,fetch:e.fetch,defaultModelId:e.modelId,models:e.knownModels?Object.values(e.knownModels).map((n)=>{let r=Ws(t,n),{providerId:i,...a}=r;return a}):void 0,options:{region:e.region??e.gcp?.region,project:e.gcp?.projectId,projectId:e.gcp?.projectId,location:e.region??e.gcp?.region,accessKeyId:e.aws?.accessKey,secretAccessKey:e.aws?.secretKey,sessionToken:e.aws?.sessionToken,authentication:e.aws?.authentication,profile:e.aws?.profile,endpoint:e.aws?.endpoint,customModelBaseId:e.aws?.customModelBaseId,apiVersion:e.azure?.apiVersion,useIdentity:e.azure?.useIdentity,mode:e.oca?.mode,usePromptCache:e.aws?.usePromptCache??e.oca?.usePromptCache,...e.codex,...e.claudeCode,...e.opencode,...e.sap}}}function My(e,t){switch(t.type){case"text-delta":return{type:"text",id:e,text:t.text};case"reasoning-delta":{let n=t.metadata;return{type:"reasoning",id:e,reasoning:t.text,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:typeof n?.signature==="string"?n.signature:void 0,details:n?.details}}case"tool-call-delta":{let n=t.metadata,r=typeof t.inputText==="string"||t.input===void 0?t.inputText:t.input;return{type:"tool_calls",id:e,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:void 0,tool_call:{call_id:t.toolCallId,function:{id:t.toolCallId,name:t.toolName,arguments:r}}}}case"usage":return{type:"usage",id:e,inputTokens:t.usage.inputTokens??0,outputTokens:t.usage.outputTokens??0,cacheReadTokens:t.usage.cacheReadTokens,cacheWriteTokens:t.usage.cacheWriteTokens,thoughtsTokenCount:t.usage.reasoningTokenCount,totalCost:t.usage.totalCost};case"finish":return{type:"done",id:e,success:t.reason!=="error",error:t.error,incompleteReason:t.reason==="max-tokens"?"max_tokens":void 0}}}function T1(e){return e.modelInfo??(e.modelId?e.knownModels?.[e.modelId]:void 0)??{id:e.modelId,name:e.modelId,capabilities:["streaming"]}}class Ks{config;abortSignal;constructor(e){this.config=e;this.abortSignal=e.abortSignal}getMessages(e,t){return Fs(this.config,e,t,void 0,this.abortSignal)}createMessage(e,t,n){let r=Ls({providerConfigs:[Jy(this.config)],fetch:this.config.fetch,logger:this.config.logger??this.config.extensionContext?.logger,telemetry:this.config.extensionContext?.telemetry}),i=x1(this.config);if(i)r.registerProvider(i);let a=Fs(this.config,e,t,n,this.abortSignal),o=`gw_${Bs(10)}`,s=async function*(){for await(let d of await r.stream(a))yield My(o,d)}();return s.id=o,s}getModel(){return{id:this.config.modelId,info:T1(this.config)}}abort(){}setAbortSignal(e){this.abortSignal=e}}function Fy(e){return new Ks(e)}async function By(e){let t=Ls({providerConfigs:[Jy(e)],fetch:e.fetch,logger:e.logger??e.extensionContext?.logger,telemetry:e.extensionContext?.telemetry}),n=await I1(e);if(n)t.registerProvider(n);return new class extends Ks{createMessage(r,i,a){let o=Fs(e,r,i,a,e.abortSignal),s=`gw_${Bs(10)}`,d=async function*(){for await(let l of await t.stream(o))yield My(s,l)}();return d.id=s,d}}(e)}var Ft=new Map;function j1(e,t){Ft.set(e,{factory:t,isAsync:!1})}function O1(e,t){Ft.set(e,{factory:t,isAsync:!0})}function $r(e){return Ft.has(e)}function Hs(e,t){let n=Ft.get(e);if(!n)return;if(n.isAsync)throw Error(`Handler for "${e}" is registered as async. Use getRegisteredHandlerAsync() or createHandlerAsync() instead.`);return n.factory(t)}async function Gs(e,t){let n=Ft.get(e);if(!n)return;if(n.isAsync)return n.factory(t);return n.factory(t)}function Xs(e){return Ft.get(e)?.isAsync??!1}function Wy(e){let t=G(e.providerId),n=e.routingProviderId?G(e.routingProviderId):void 0;if(t===e.providerId&&n===e.routingProviderId)return e;return{...e,providerId:t,routingProviderId:n}}function Ij(e){let t=Wy(e),{providerId:n}=t;if($r(n)){if(Xs(n))throw Error(`Handler for "${n}" is registered as async. Use createHandlerAsync() instead.`);let r=Hs(n,t);if(r)return r}return Fy(t)}async function xj(e){let t=Wy(e),{providerId:n}=t;if($r(n)){let r=await Gs(n,t);if(r)return r}return By(t)}export{j1 as registerHandler,O1 as registerAsyncHandler,G as normalizeProviderId,Xs as isRegisteredHandlerAsync,Ps as isClineOrgIndividualInferenceSubscriptionMessage,Fz as isClineOrgIndividualInferenceSubscriptionError,Ns as isClineNotSubscribedMessage,Mz as isClineNotSubscribedError,wr as isBuiltInProviderId,$r as hasRegisteredHandler,Gs as getRegisteredHandlerAsync,Hs as getRegisteredHandler,_y as getClinePassSubscriptionUrl,wy as getClineOrgIndividualInferenceSubscriptionMessage,ky as getClineNotSubscribedMessage,xj as createHandlerAsync,Ij as createHandler,Di as ClineOrgIndividualInferenceSubscriptionError,Ai as ClineNotSubscribedError,Mi as BUILT_IN_PROVIDER_IDS,Bt as BUILT_IN_PROVIDER};
|