@kortix/sdk 0.10.5 → 0.10.7
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/core/client/kortix.d.ts +2 -0
- package/dist/core/client/kortix.d.ts.map +1 -1
- package/dist/core/client/kortix.js +2 -0
- package/dist/core/client/kortix.js.map +1 -1
- package/dist/core/rest/projects-client/sandbox.d.ts +3 -1
- package/dist/core/rest/projects-client/sandbox.d.ts.map +1 -1
- package/dist/core/rest/projects-client/sandbox.js.map +1 -1
- package/dist/core/rest/projects-client/secrets.d.ts +6 -0
- package/dist/core/rest/projects-client/secrets.d.ts.map +1 -1
- package/dist/core/rest/projects-client/secrets.js +8 -0
- package/dist/core/rest/projects-client/secrets.js.map +1 -1
- package/dist/core/turns/classify.d.ts +12 -1
- package/dist/core/turns/classify.d.ts.map +1 -1
- package/dist/core/turns/classify.js +11 -2
- package/dist/core/turns/classify.js.map +1 -1
- package/dist/core/turns/errors.d.ts +33 -0
- package/dist/core/turns/errors.d.ts.map +1 -1
- package/dist/core/turns/errors.js +106 -9
- package/dist/core/turns/errors.js.map +1 -1
- package/dist/core/turns/state.d.ts +8 -0
- package/dist/core/turns/state.d.ts.map +1 -1
- package/dist/core/turns/state.js +15 -1
- package/dist/core/turns/state.js.map +1 -1
- package/dist/kortix.esm.min.js +15 -15
- package/dist/kortix.global.js +15 -15
- package/dist/react/use-session.d.ts +13 -0
- package/dist/react/use-session.d.ts.map +1 -1
- package/dist/react/use-session.js +20 -1
- package/dist/react/use-session.js.map +1 -1
- package/package.json +2 -2
package/dist/kortix.global.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
"use strict";var Kortix=(()=>{var qt=Object.defineProperty;var wl=Object.getOwnPropertyDescriptor;var _l=Object.getOwnPropertyNames;var Sl=Object.prototype.hasOwnProperty;var vl=(e,t)=>{for(var r in t)qt(e,r,{get:t[r],enumerable:!0})},Cl=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of _l(t))!Sl.call(e,s)&&s!==r&&qt(e,s,{get:()=>t[s],enumerable:!(n=wl(t,s))||n.enumerable});return e};var Rl=e=>Cl(qt({},"__esModule",{value:!0}),e);var $f={};vl($f,{ACTIVE_INSTANCE_COOKIE:()=>Ke,ApiError:()=>C,AuthError:()=>pe,BillingError:()=>te,COST_MARKUP:()=>La,DEFAULT_TRANSCRIPT_OPTIONS:()=>Da,DESTRUCTIVE_PHASES:()=>bl,INSTANCE_SCOPED_ROUTES:()=>cl,PublicSessionShareError:()=>xt,RequestTooLargeError:()=>de,RuntimeNotReadyError:()=>it,SANDBOX_PORTS:()=>V,SessionNotReadyError:()=>Le,SessionStartError:()=>bt,__getConfigResolver:()=>jl,__setConfigResolver:()=>Il,acceptAccountInvite:()=>qn,acceptInvite:()=>tf,actReviewItem:()=>ia,activateConnectionProfile:()=>Ds,addMarketplaceSource:()=>ja,addSandboxMember:()=>Km,allDescendantIds:()=>Qc,appendPreviewToken:()=>Ef,approveProjectAccessRequest:()=>ss,approveTask:()=>ou,archiveProject:()=>yt,assignTicket:()=>mu,attachGroupToProject:()=>ms,authenticatedFetch:()=>R,backendApi:()=>o,buildInstancePath:()=>ul,buildPreviewAuthEndpoint:()=>jf,buildSandboxTemplate:()=>oi,buildWebProxyUrl:()=>fd,bulkActReviewItems:()=>oa,cancelAccountInvite:()=>An,cancelSandbox:()=>Fm,cancelSandboxUpdate:()=>yf,cancelScheduledChange:()=>mo,cancelSubscription:()=>uo,childMapByParent:()=>qg,claimComputer:()=>Pf,classifyPart:()=>Ma,classifyTurn:()=>Nc,clearModelDefault:()=>Xi,clearSessionFresh:()=>Up,closeChangeRequest:()=>Si,closeMilestone:()=>Bu,collectTurnParts:()=>jg,commentTicket:()=>yu,commitSessionChanges:()=>Ri,computeStatusFromPart:()=>Oa,configureAutoTopup:()=>bo,configureKortix:()=>Je,confirmCheckoutSession:()=>co,connectEmail:()=>Io,connectSlack:()=>ko,createAccount:()=>vn,createAccountAuditWebhook:()=>xa,createAccountToken:()=>pa,createBackup:()=>sf,createCheckoutSession:()=>ao,createConnector:()=>Hs,createGatewayKey:()=>Yo,createInstance:()=>bf,createKortix:()=>Fc,createKortixPty:()=>ln,createMilestone:()=>Fu,createPortalSession:()=>lo,createProject:()=>Nn,createProjectAgent:()=>Cu,createProjectCliToken:()=>ma,createProjectRepo:()=>Hn,createProjectResourceGrant:()=>bs,createProjectSession:()=>be,createProjectTrigger:()=>Bi,createSandbox:()=>$m,createSandboxShare:()=>ca,createSandboxTemplate:()=>ni,createSessionPublicShare:()=>qi,createTask:()=>nu,createTicket:()=>pu,declineAccountInvite:()=>Dn,declineInvite:()=>rf,deleteBackup:()=>af,deleteConnector:()=>Ws,deleteCredential:()=>Ju,deleteEnv:()=>an,deleteGatewayBudget:()=>Xo,deleteGitHubInstallation:()=>rs,deleteInstance:()=>xf,deleteKortixProject:()=>Du,deleteMilestone:()=>Nu,deletePersonalProjectSecret:()=>js,deleteProjectAgent:()=>Tu,deleteProjectResourceGrant:()=>xs,deleteProjectSecret:()=>Ts,deleteProjectSession:()=>Fi,deleteProjectTrigger:()=>Ni,deleteSandboxTemplate:()=>ii,deleteTask:()=>au,deleteTicket:()=>hu,describeAccountInvite:()=>$n,detachGroupFromProject:()=>ys,detectLocalhostUrls:()=>$c,disconnectEmail:()=>jo,disconnectGitHubApp:()=>Tf,disconnectSlack:()=>_o,discoverLocalSandbox:()=>Um,dropClientForUrl:()=>sp,dropPublicClientForUrl:()=>ap,ensurePmSession:()=>Su,ensureSandbox:()=>hl,env:()=>gc,exportAccountAudit:()=>ha,extractInstanceRoute:()=>we,featureFlags:()=>km,fetchAccountStateWithToken:()=>Kp,fetchAccountsWithToken:()=>Ip,fetchProjectArchive:()=>pi,fetchProjectsForAccountWithToken:()=>$p,files:()=>Pc,findLastTextPart:()=>Ag,fireProjectTrigger:()=>Wi,fixSandboxWithAgent:()=>ri,formatBillingErrorForUI:()=>dc,formatCost:()=>Hg,formatDuration:()=>Bg,formatOpenCodeRuntimeError:()=>Tm,formatTokens:()=>Wg,formatTranscript:()=>Bc,generateSessionId:()=>Gc,getAccount:()=>Cn,getAccountState:()=>eo,getAccountStateMinimal:()=>to,getActiveInstanceIdFromCookie:()=>dl,getAgentCardLabel:()=>Xc,getAgentConfig:()=>Gp,getAgentPersona:()=>Iu,getAllVersions:()=>gf,getAnsweredQuestionParts:()=>$g,getAuthToken:()=>je,getAuthTokenWithRetry:()=>tn,getAutoTopupSettings:()=>ho,getBillingCreditBreakdown:()=>so,getBillingTierConfigurations:()=>oo,getBillingTransactionsSummary:()=>no,getBillingUsageHistory:()=>io,getChangeRequest:()=>xi,getChangeRequestDiff:()=>ki,getChangeRequestMergePreview:()=>Pi,getChildSessionError:()=>kg,getChildSessionId:()=>xg,getChildSessionToolParts:()=>Pg,getClient:()=>X,getClientForUrl:()=>ne,getConnectStatus:()=>zs,getConnectorConfig:()=>Bs,getConnectorPolicies:()=>Fs,getCurrentInstanceIdFromPathname:()=>pl,getCurrentInstanceIdFromWindow:()=>_m,getDefaultAccountState:()=>Zi,getDiagnostics:()=>Sg,getDirectory:()=>Jc,getEmailInstallation:()=>Ro,getEmailMode:()=>To,getFileWithDir:()=>Ua,getFilename:()=>zc,getFullChangelog:()=>xl,getGatewayBreakdown:()=>Ho,getGatewayBudgets:()=>zo,getGatewayErrors:()=>Vo,getGatewayKeys:()=>Qo,getGatewayLog:()=>Bo,getGatewayOverview:()=>Ko,getGatewayRoutingPolicy:()=>Uo,getGatewaySeries:()=>No,getGatewaySessions:()=>Wo,getGitHubAppStatus:()=>Sf,getGitHubInstallation:()=>Qn,getHiddenToolParts:()=>yg,getInvite:()=>ef,getJustavpsServerTypes:()=>hf,getKortixProject:()=>Eu,getKortixProjectBySession:()=>$u,getKortixPtyWebSocketUrl:()=>dn,getLatestSandboxVersion:()=>df,getManagedGitStatus:()=>Ap,getMarketplaceCatalogItem:()=>Ra,getMarketplaceCatalogItemFile:()=>Ta,getMeetVoices:()=>Eo,getMilestone:()=>Ou,getModelDefaults:()=>zi,getOpenCodeConfigInvalidError:()=>Ba,getPartText:()=>mg,getPermissionForTool:()=>vg,getProject:()=>pt,getProjectActivity:()=>ju,getProjectCommit:()=>mi,getProjectCommitDiff:()=>fi,getProjectDetail:()=>dt,getProjectFileHistory:()=>yi,getProjectGitToken:()=>Kn,getProjectLlmCatalog:()=>gt,getProjectModelPicker:()=>mt,getProjectSandboxHealth:()=>ht,getProjectSession:()=>Mi,getProrationPreview:()=>fo,getProviders:()=>Am,getProxyBaseUrl:()=>pd,getPublicClientForUrl:()=>op,getPublicSessionShare:()=>zp,getPublicSessionShareMessages:()=>Jp,getQuestionForTool:()=>Cg,getRetryInfo:()=>Vg,getRetryMessage:()=>zg,getReviewItem:()=>na,getSSHConnection:()=>lf,getSandbox:()=>Em,getSandboxById:()=>qm,getSandboxMemberScopes:()=>zm,getSandboxPortUrl:()=>jm,getSandboxProvisionStatus:()=>wf,getSandboxProvisionStreamUrl:()=>_f,getSandboxUpdateStatus:()=>pf,getSandboxUrl:()=>Ha,getServiceLogs:()=>ep,getSessionAudit:()=>Ui,getSessionCost:()=>Ng,getSessionHealth:()=>Ea,getSessionPreviewCandidates:()=>Ei,getSessionTranscript:()=>Oi,getShellModePart:()=>Mg,getSlackChannelFile:()=>So,getSlackInstallation:()=>xo,getSlackManifest:()=>wo,getSlackMode:()=>Po,getSupabaseAccessToken:()=>tt,getSupabaseAccessTokenWithRetry:()=>le,getTask:()=>eu,getTaskStatus:()=>ru,getTemplate:()=>Xp,getTicket:()=>lu,getToolInfo:()=>wg,getTranscriptFilename:()=>Kc,getTurnCost:()=>Kg,getTurnError:()=>Fg,getTurnStatus:()=>Gg,getVersionDiff:()=>hi,getViewerSandboxScopes:()=>Vm,getWorkingState:()=>Og,grantSandboxProjectAccess:()=>Qm,groupMessagesIntoTurns:()=>Ig,hasDiffs:()=>Jg,hasLocalhostUrls:()=>ld,heartbeatGapEvent:()=>Uc,humanizeToolName:()=>vt,installTemplate:()=>Qp,invalidateTokenCache:()=>Ie,inviteAccountMember:()=>In,inviteProjectMember:()=>ls,inviteRepoCollaborator:()=>Gn,isAdminBypassEnabled:()=>Rp,isAgentPart:()=>ug,isAppRouteUrl:()=>Ec,isAttachment:()=>Wc,isBillingError:()=>pc,isCompactionPart:()=>pg,isConfigured:()=>Xe,isDestructivePhase:()=>uf,isExternalUrl:()=>bd,isFilePart:()=>Hc,isInstanceDetailPath:()=>Pm,isInstanceScopedAppPath:()=>ll,isInviteSent:()=>Mp,isLastUserMessage:()=>Ug,isManagedGithubProject:()=>jp,isOpenCodeConfigInvalidError:()=>Rm,isPatchPart:()=>gg,isPreviewUrl:()=>md,isProxiableLocalhostUrl:()=>qc,isReasoningPart:()=>Rt,isRuntimeReady:()=>Yp,isSessionFresh:()=>ji,isSessionStartError:()=>Op,isShellMode:()=>Yc,isSnapshotPart:()=>dg,isSubdomainPreviewUrl:()=>Af,isTextPart:()=>ee,isToolPart:()=>z,isToolPartHidden:()=>hg,isWebProxyUrl:()=>hd,kortixPty:()=>fc,leaveAccount:()=>On,linkRepository:()=>Xn,listAccountAudit:()=>ya,listAccountAuditWebhooks:()=>ba,listAccountInvites:()=>jn,listAccountMembers:()=>Tn,listAccountTokens:()=>ua,listAccounts:()=>Sn,listBackups:()=>nf,listBillingTransactions:()=>ro,listChangeRequests:()=>bi,listChannelBindings:()=>Wp,listColumns:()=>bu,listConnectionProfiles:()=>As,listConnectors:()=>Ms,listCredentialEvents:()=>Wu,listCredentials:()=>Hu,listEnv:()=>sn,listFeaturedMarketplaces:()=>Ca,listFields:()=>ku,listGatewayLogs:()=>Go,listGitHubInstallations:()=>Yn,listGitHubRepositories:()=>Zn,listGitHubRepositoryBranches:()=>es,listKortixProjectSessions:()=>qu,listKortixProjects:()=>Au,listKortixPty:()=>cn,listMarketplaceCatalogItems:()=>Sa,listMarketplaceSources:()=>Ia,listMarketplaces:()=>va,listMilestoneEvents:()=>Lu,listMilestones:()=>Uu,listPendingApprovals:()=>ks,listPendingProjectInvites:()=>us,listPipedreamApps:()=>Vs,listProjectAccess:()=>os,listProjectAccessRequests:()=>ns,listProjectAgents:()=>vu,listProjectBranches:()=>di,listProjectCliTokens:()=>ga,listProjectCommits:()=>gi,listProjectFiles:()=>ci,listProjectGroupGrants:()=>gs,listProjectPolicies:()=>Qs,listProjectResourceGrants:()=>hs,listProjectSandboxTemplates:()=>Zs,listProjectSandboxes:()=>ai,listProjectSecrets:()=>_s,listProjectSessions:()=>he,listProjectSnapshots:()=>ei,listProjectTriggers:()=>Gi,listProjects:()=>ie,listProjectsForAccount:()=>Fn,listReviewItems:()=>ra,listSandboxMembers:()=>Bm,listSandboxProjectMembers:()=>Xm,listSandboxShares:()=>aa,listSandboxes:()=>Mm,listServiceTemplates:()=>Zu,listServices:()=>Yu,listSessionPublicShares:()=>$i,listSessionsNeedingInput:()=>Ps,listTaskEvents:()=>tu,listTasks:()=>Zl,listTemplates:()=>wu,listTicketEvents:()=>uu,listTickets:()=>cu,markInstanceError:()=>kf,markSessionFresh:()=>Ii,mergeChangeRequest:()=>_i,narrowChatEvent:()=>Oc,normalizeAppPathname:()=>Cm,normalizeExternalInput:()=>xd,normalizeToolName:()=>Fe,openChangeRequest:()=>wi,openEventStream:()=>wt,parseBillingError:()=>ge,parseFlagOverride:()=>xm,parseLocalhostUrl:()=>Oe,parseOpenCodeErrorPayload:()=>ml,parseSubdomainUrl:()=>qa,parseWebProxyUrl:()=>yd,patchKortixProject:()=>Mu,pipedreamConnect:()=>Ns,pipedreamFinalize:()=>Xs,platformConfig:()=>T,pollProjectProviderOAuth:()=>Cs,previewGatewayRoute:()=>Fo,previewMeetVoice:()=>Do,provisionProject:()=>Wn,provisionProjectWithToken:()=>qp,proxyLocalhostUrl:()=>$a,proxyUrlToInternal:()=>gd,purchaseCredits:()=>yo,reactivateSandbox:()=>Gm,reactivateSubscription:()=>po,readProjectFile:()=>ui,rebuildProjectSnapshot:()=>ti,reconcileConnectionProfile:()=>Es,reconcileServices:()=>rp,registerService:()=>np,rejectProjectAccessRequest:()=>is,relativizePath:()=>_g,removeAccountAuditWebhook:()=>Pa,removeAccountMember:()=>Mn,removeKortixPty:()=>pn,removeMarketplaceSource:()=>Aa,removeSandboxMember:()=>Nm,renameSandbox:()=>Dm,reopenChangeRequest:()=>vi,reopenMilestone:()=>Ku,replaceColumns:()=>xu,replaceFields:()=>Pu,replaceTemplates:()=>_u,requestChangesOnChangeRequest:()=>Ci,requestProjectAccess:()=>Dp,requestProjectConnector:()=>_a,requestProjectSecret:()=>wa,resendAccountInvite:()=>En,resendPendingProjectInvite:()=>ds,resetClient:()=>ip,resetGatewayRoutingPolicy:()=>Lo,resetPublicClient:()=>cp,resetSandboxUpdateStatus:()=>ff,resolveApproval:()=>ws,restartProjectSession:()=>De,restartSandbox:()=>Om,restoreBackup:()=>of,revealCredential:()=>zu,revokeAccountToken:()=>da,revokeConnectionProfile:()=>qs,revokeGatewayKey:()=>Zo,revokePendingProjectInvite:()=>ps,revokeProjectAccess:()=>cs,revokeProjectCliToken:()=>fa,revokeSandboxInvite:()=>Zm,revokeSandboxProjectAccess:()=>Ym,revokeSandboxShare:()=>la,revokeSessionPublicShare:()=>Di,rewriteLocalhostUrl:()=>ke,runGatewayPlayground:()=>ea,saveGitHubInstallation:()=>ts,scheduleDowngrade:()=>go,searchProjectFiles:()=>li,serviceAction:()=>tp,sessionStartKey:()=>Fp,setActiveInstanceCookie:()=>Sm,setAdminBypass:()=>Cp,setAgentScope:()=>Qi,setBootstrapAuthToken:()=>Jl,setCachedAuthToken:()=>zl,setConnectorCredential:()=>Js,setConnectorCredentialMode:()=>Os,setConnectorName:()=>Ks,setConnectorPolicies:()=>Gs,setConnectorSensitive:()=>Ls,setEnv:()=>on,setGatewayBudget:()=>Jo,setGatewayRoutingPolicy:()=>Oo,setGitHubAppFromExisting:()=>Cf,setGitHubAppPat:()=>Rf,setMeetBotName:()=>qo,setMeetVoice:()=>$o,setModelDefault:()=>Ji,setPersonalProjectSecret:()=>Is,setProjectOnboardingComplete:()=>Jn,setProjectPolicies:()=>Ys,setProjectSessionSharing:()=>Ai,setProjectTriggersActivation:()=>Hi,setupSSH:()=>cf,shouldHideResponsePart:()=>Lg,shouldShowToolPart:()=>Vc,sortSessions:()=>Dg,speakInMeeting:()=>Mo,splitUserParts:()=>fg,startGitHubAppManifest:()=>vf,startProjectProviderOAuth:()=>vs,startProjectSession:()=>xe,startTask:()=>iu,stopProjectSession:()=>Me,stopSandbox:()=>Lm,stripAnsi:()=>Tg,stripInstancePrefix:()=>wm,stripTrailingSlashes:()=>re,submitReviewItem:()=>sa,supabaseClient:()=>Tp,syncConnectors:()=>Us,systemReload:()=>up,toInstanceAwarePath:()=>vm,toInternalUrl:()=>dd,toolInfo:()=>Ct,toolViewModel:()=>ol,transcribeAudio:()=>ta,triggerSandboxUpdate:()=>mf,triggersRequest:()=>mc,turnHasSteps:()=>Eg,unassignTicket:()=>fu,unwrapError:()=>K,updateAccountAuditWebhook:()=>ka,updateAccountMemberRole:()=>Un,updateAccountName:()=>Rn,updateAgentConfig:()=>Bp,updateChannelBinding:()=>Vp,updateConnectionProfileCredential:()=>$s,updateEmailPolicy:()=>Ao,updateExperimentalFeature:()=>Vn,updateKortixPty:()=>un,updateMilestone:()=>Gu,updateProject:()=>ft,updateProjectAccess:()=>as,updateProjectAgent:()=>Ru,updateProjectDefaultAgent:()=>Yi,updateProjectGroupGrant:()=>fs,updateProjectSandboxProvider:()=>zn,updateProjectSession:()=>Li,updateProjectTrigger:()=>Ki,updateSandboxMemberRole:()=>Hm,updateSandboxMemberScope:()=>Jm,updateSandboxMemberSpendCap:()=>Wm,updateSandboxTemplate:()=>si,updateTask:()=>su,updateTemplateWarmPool:()=>Ep,updateTicket:()=>du,updateTicketStatus:()=>gu,uploadSlackChannelFile:()=>vo,upsertCredential:()=>Vu,upsertProjectGitCredential:()=>Rs,upsertProjectSecret:()=>Ss,validateProjectManifest:()=>Bn,validateToken:()=>Ln});var Tl={backendUrl:"",getToken:async()=>null},Dt=null,ze=null;function Il(e){ze=e}function jl(){return ze}function Je(e,t){t?.global!==!1&&(Dt=e)}function T(){return ze?.()??Dt??Tl}function Xe(){return Dt!==null||ze?.()!==void 0}var Va=({onRequest:e,onSseError:t,onSseEvent:r,responseTransformer:n,responseValidator:s,sseDefaultRetryDelay:c,sseMaxRetryAttempts:u,sseMaxRetryDelay:d,sseSleepFn:g,url:h,...m})=>{let x,w=g??(i=>new Promise(P=>setTimeout(P,i)));return{stream:async function*(){let i=c??3e3,P=0,_=m.signal??new AbortController().signal;for(;!_.aborted;){P++;let D=m.headers instanceof Headers?m.headers:new Headers(m.headers);x!==void 0&&D.set("Last-Event-ID",x);try{let A={redirect:"follow",...m,body:m.serializedBody,headers:D,signal:_},v=new Request(h,A);e&&(v=await e(h,A));let j=await(m.fetch??globalThis.fetch)(v);if(!j.ok)throw new Error(`SSE failed: ${j.status} ${j.statusText}`);if(!j.body)throw new Error("No body in SSE response");let f=j.body.pipeThrough(new TextDecoderStream).getReader(),S="",U=()=>{try{f.cancel()}catch{}};_.addEventListener("abort",U);try{for(;;){let{done:N,value:M}=await f.read();if(N)break;S+=M,S=S.replace(/\r\n/g,`
|
|
1
|
+
"use strict";var Kortix=(()=>{var Dt=Object.defineProperty;var Rl=Object.getOwnPropertyDescriptor;var Tl=Object.getOwnPropertyNames;var Il=Object.prototype.hasOwnProperty;var jl=(e,t)=>{for(var r in t)Dt(e,r,{get:t[r],enumerable:!0})},Al=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Tl(t))!Il.call(e,s)&&s!==r&&Dt(e,s,{get:()=>t[s],enumerable:!(n=Rl(t,s))||n.enumerable});return e};var El=e=>Al(Dt({},"__esModule",{value:!0}),e);var Lf={};jl(Lf,{ACTIVE_INSTANCE_COOKIE:()=>He,ApiError:()=>C,AuthError:()=>de,BillingError:()=>re,COST_MARKUP:()=>Ba,DEFAULT_TRANSCRIPT_OPTIONS:()=>Ua,DESTRUCTIVE_PHASES:()=>_l,INSTANCE_SCOPED_ROUTES:()=>gl,PublicSessionShareError:()=>Pt,RequestTooLargeError:()=>ge,RuntimeNotReadyError:()=>at,SANDBOX_PORTS:()=>V,SessionNotReadyError:()=>Fe,SessionStartError:()=>kt,__getConfigResolver:()=>Dl,__setConfigResolver:()=>ql,acceptAccountInvite:()=>Dn,acceptInvite:()=>cf,actReviewItem:()=>aa,activateConnectionProfile:()=>Us,addMarketplaceSource:()=>Ea,addSandboxMember:()=>Jm,allDescendantIds:()=>rl,appendPreviewToken:()=>Of,approveProjectAccessRequest:()=>is,approveTask:()=>pu,archiveProject:()=>bt,assignTicket:()=>xu,attachGroupToProject:()=>fs,authenticatedFetch:()=>R,backendApi:()=>o,buildInstancePath:()=>fl,buildPreviewAuthEndpoint:()=>Mf,buildSandboxTemplate:()=>ci,buildWebProxyUrl:()=>kd,bulkActReviewItems:()=>ca,cancelAccountInvite:()=>En,cancelSandbox:()=>Wm,cancelSandboxUpdate:()=>wf,cancelScheduledChange:()=>yo,cancelSubscription:()=>go,childMapByParent:()=>Lg,claimComputer:()=>Rf,classifyPart:()=>La,classifyTurn:()=>Jc,clearModelDefault:()=>Yi,clearSessionFresh:()=>Bp,closeChangeRequest:()=>Ci,closeMilestone:()=>Vu,collectTurnParts:()=>Dg,commentTicket:()=>Pu,commitSessionChanges:()=>Ii,computeStatusFromPart:()=>Ga,configureAutoTopup:()=>ko,configureKortix:()=>Qe,confirmCheckoutSession:()=>uo,connectEmail:()=>Ao,connectSlack:()=>wo,createAccount:()=>Cn,createAccountAuditWebhook:()=>Pa,createAccountToken:()=>ga,createBackup:()=>pf,createCheckoutSession:()=>lo,createConnector:()=>Vs,createGatewayKey:()=>ea,createInstance:()=>Sf,createKortix:()=>Kc,createKortixPty:()=>un,createMilestone:()=>Hu,createPortalSession:()=>po,createProject:()=>Hn,createProjectAgent:()=>Au,createProjectCliToken:()=>ya,createProjectRepo:()=>Wn,createProjectResourceGrant:()=>xs,createProjectSession:()=>xe,createProjectTrigger:()=>Ni,createSandbox:()=>Lm,createSandboxShare:()=>ua,createSandboxTemplate:()=>ii,createSessionPublicShare:()=>Mi,createTask:()=>cu,createTicket:()=>yu,declineAccountInvite:()=>Mn,declineInvite:()=>lf,deleteBackup:()=>gf,deleteConnector:()=>zs,deleteCredential:()=>ep,deleteEnv:()=>cn,deleteGatewayBudget:()=>Yo,deleteGitHubInstallation:()=>ns,deleteInstance:()=>vf,deleteKortixProject:()=>Fu,deleteMilestone:()=>Ju,deletePersonalProjectSecret:()=>As,deleteProjectAgent:()=>$u,deleteProjectResourceGrant:()=>ks,deleteProjectSecret:()=>Is,deleteProjectSession:()=>Bi,deleteProjectTrigger:()=>Wi,deleteSandboxTemplate:()=>ai,deleteTask:()=>du,deleteTicket:()=>wu,describeAccountInvite:()=>qn,detachGroupFromProject:()=>hs,detectLocalhostUrls:()=>Mc,disconnectEmail:()=>Eo,disconnectGitHubApp:()=>qf,disconnectSlack:()=>vo,discoverLocalSandbox:()=>Km,dropClientForUrl:()=>lp,dropPublicClientForUrl:()=>dp,ensurePmSession:()=>Iu,ensureSandbox:()=>wl,env:()=>yc,exportAccountAudit:()=>xa,extractGatewayErrorDetails:()=>ee,extractInstanceRoute:()=>_e,featureFlags:()=>Cm,fetchAccountStateWithToken:()=>zp,fetchAccountsWithToken:()=>qp,fetchProjectArchive:()=>gi,fetchProjectsForAccountWithToken:()=>Op,files:()=>Sc,findLastTextPart:()=>Mg,fireProjectTrigger:()=>zi,fixSandboxWithAgent:()=>si,formatBillingErrorForUI:()=>fc,formatCost:()=>Qg,formatDuration:()=>zg,formatOpenCodeRuntimeError:()=>qm,formatTokens:()=>Yg,formatTranscript:()=>Hc,generateSessionId:()=>Nc,getAccount:()=>Rn,getAccountState:()=>ro,getAccountStateMinimal:()=>no,getActiveInstanceIdFromCookie:()=>hl,getAgentCardLabel:()=>tl,getAgentConfig:()=>Wp,getAgentPersona:()=>qu,getAllVersions:()=>xf,getAnsweredQuestionParts:()=>Og,getAuthToken:()=>Ae,getAuthTokenWithRetry:()=>rn,getAutoTopupSettings:()=>xo,getBillingCreditBreakdown:()=>oo,getBillingTierConfigurations:()=>co,getBillingTransactionsSummary:()=>io,getBillingUsageHistory:()=>ao,getChangeRequest:()=>Pi,getChangeRequestDiff:()=>wi,getChangeRequestMergePreview:()=>_i,getChildSessionError:()=>vg,getChildSessionId:()=>Sg,getChildSessionToolParts:()=>Cg,getClient:()=>X,getClientForUrl:()=>se,getConnectStatus:()=>Xs,getConnectorConfig:()=>Ns,getConnectorPolicies:()=>Bs,getCurrentInstanceIdFromPathname:()=>yl,getCurrentInstanceIdFromWindow:()=>Im,getDefaultAccountState:()=>to,getDiagnostics:()=>Ig,getDirectory:()=>el,getEmailInstallation:()=>Io,getEmailMode:()=>jo,getFileWithDir:()=>Fa,getFilename:()=>Zc,getFullChangelog:()=>Sl,getGatewayBreakdown:()=>Vo,getGatewayBudgets:()=>Xo,getGatewayErrors:()=>Jo,getGatewayKeys:()=>Zo,getGatewayLog:()=>No,getGatewayOverview:()=>Ho,getGatewayRoutingPolicy:()=>Lo,getGatewaySeries:()=>Wo,getGatewaySessions:()=>zo,getGitHubAppStatus:()=>jf,getGitHubInstallation:()=>Yn,getHiddenToolParts:()=>Pg,getInvite:()=>af,getJustavpsServerTypes:()=>_f,getKortixProject:()=>Uu,getKortixProjectBySession:()=>Ou,getKortixPtyWebSocketUrl:()=>gn,getLatestSandboxVersion:()=>bf,getManagedGitStatus:()=>Mp,getMarketplaceCatalogItem:()=>Ia,getMarketplaceCatalogItemFile:()=>ja,getMeetVoices:()=>qo,getMilestone:()=>Ku,getModelDefaults:()=>Xi,getOpenCodeConfigInvalidError:()=>Ha,getPartText:()=>xg,getPermissionForTool:()=>jg,getProject:()=>gt,getProjectActivity:()=>Du,getProjectCommit:()=>yi,getProjectCommitDiff:()=>hi,getProjectDetail:()=>mt,getProjectFileHistory:()=>bi,getProjectGitToken:()=>Nn,getProjectLlmCatalog:()=>ft,getProjectModelPicker:()=>yt,getProjectSandboxHealth:()=>xt,getProjectSession:()=>Oi,getProrationPreview:()=>ho,getProviders:()=>Um,getProxyBaseUrl:()=>yd,getPublicClientForUrl:()=>pp,getPublicSessionShare:()=>Zp,getPublicSessionShareMessages:()=>ed,getQuestionForTool:()=>Ag,getRetryInfo:()=>Zg,getRetryMessage:()=>em,getReviewItem:()=>ia,getSSHConnection:()=>ff,getSandbox:()=>Om,getSandboxById:()=>Fm,getSandboxMemberScopes:()=>ef,getSandboxPortUrl:()=>Mm,getSandboxProvisionStatus:()=>Tf,getSandboxProvisionStreamUrl:()=>If,getSandboxUpdateStatus:()=>hf,getSandboxUrl:()=>za,getServiceLogs:()=>ip,getSessionAudit:()=>Li,getSessionCost:()=>Xg,getSessionHealth:()=>qa,getSessionPreviewCandidates:()=>qi,getSessionTranscript:()=>Fi,getShellModePart:()=>Gg,getSlackChannelFile:()=>Co,getSlackInstallation:()=>Po,getSlackManifest:()=>So,getSlackMode:()=>_o,getSupabaseAccessToken:()=>nt,getSupabaseAccessTokenWithRetry:()=>ue,getTask:()=>iu,getTaskStatus:()=>au,getTemplate:()=>td,getTicket:()=>mu,getToolInfo:()=>Rg,getTranscriptFilename:()=>Wc,getTurnCost:()=>Jg,getTurnError:()=>Hg,getTurnErrorDetails:()=>Wg,getTurnStatus:()=>Vg,getVersionDiff:()=>xi,getViewerSandboxScopes:()=>Zm,getWorkingState:()=>Kg,grantSandboxProjectAccess:()=>nf,groupMessagesIntoTurns:()=>qg,hasDiffs:()=>tm,hasLocalhostUrls:()=>md,heartbeatGapEvent:()=>Fc,humanizeToolName:()=>Ct,installTemplate:()=>rd,invalidateTokenCache:()=>je,inviteAccountMember:()=>jn,inviteProjectMember:()=>us,inviteRepoCollaborator:()=>Bn,isAdminBypassEnabled:()=>Ep,isAgentPart:()=>fg,isAppRouteUrl:()=>Dc,isAttachment:()=>Qc,isBillingError:()=>mc,isCompactionPart:()=>yg,isConfigured:()=>Ye,isDestructivePhase:()=>yf,isExternalUrl:()=>_d,isFilePart:()=>Xc,isInstanceDetailPath:()=>Rm,isInstanceScopedAppPath:()=>ml,isInviteSent:()=>Gp,isLastUserMessage:()=>Bg,isManagedGithubProject:()=>Dp,isOpenCodeConfigInvalidError:()=>$m,isPatchPart:()=>bg,isPreviewUrl:()=>xd,isProxiableLocalhostUrl:()=>Uc,isReasoningPart:()=>Tt,isRuntimeReady:()=>nd,isSessionFresh:()=>Ei,isSessionStartError:()=>Kp,isShellMode:()=>nl,isSnapshotPart:()=>hg,isSubdomainPreviewUrl:()=>Uf,isTextPart:()=>te,isToolPart:()=>z,isToolPartHidden:()=>wg,isWebProxyUrl:()=>wd,kortixPty:()=>bc,leaveAccount:()=>Ln,linkRepository:()=>Qn,listAccountAudit:()=>ba,listAccountAuditWebhooks:()=>ka,listAccountInvites:()=>An,listAccountMembers:()=>In,listAccountTokens:()=>da,listAccounts:()=>vn,listBackups:()=>uf,listBillingTransactions:()=>so,listChangeRequests:()=>ki,listChannelBindings:()=>Qp,listColumns:()=>_u,listConnectionProfiles:()=>$s,listConnectors:()=>Os,listCredentialEvents:()=>Qu,listCredentials:()=>Xu,listEnv:()=>on,listFeaturedMarketplaces:()=>Ta,listFields:()=>vu,listGatewayLogs:()=>Ko,listGitHubInstallations:()=>Zn,listGitHubRepositories:()=>es,listGitHubRepositoryBranches:()=>ts,listKortixProjectSessions:()=>Lu,listKortixProjects:()=>Mu,listKortixPty:()=>ln,listMarketplaceCatalogItems:()=>Ca,listMarketplaceSources:()=>Aa,listMarketplaces:()=>Ra,listMilestoneEvents:()=>Nu,listMilestones:()=>Bu,listPendingApprovals:()=>Ps,listPendingProjectInvites:()=>ps,listPipedreamApps:()=>Js,listProjectAccess:()=>as,listProjectAccessRequests:()=>ss,listProjectAgents:()=>ju,listProjectBranches:()=>mi,listProjectCliTokens:()=>fa,listProjectCommits:()=>fi,listProjectFiles:()=>ui,listProjectGroupGrants:()=>ms,listProjectPolicies:()=>Zs,listProjectResourceGrants:()=>bs,listProjectSandboxTemplates:()=>ti,listProjectSandboxes:()=>li,listProjectSecrets:()=>Ss,listProjectSessions:()=>be,listProjectSnapshots:()=>ri,listProjectTriggers:()=>Ki,listProjects:()=>oe,listProjectsForAccount:()=>Gn,listReviewItems:()=>sa,listSandboxMembers:()=>zm,listSandboxProjectMembers:()=>rf,listSandboxShares:()=>la,listSandboxes:()=>Bm,listServiceTemplates:()=>sp,listServices:()=>np,listSessionPublicShares:()=>Di,listSessionsNeedingInput:()=>ws,listTaskEvents:()=>ou,listTasks:()=>su,listTemplates:()=>Ru,listTicketEvents:()=>fu,listTickets:()=>gu,markInstanceError:()=>Cf,markSessionFresh:()=>Ai,mergeChangeRequest:()=>vi,narrowChatEvent:()=>Gc,normalizeAppPathname:()=>Em,normalizeExternalInput:()=>Sd,normalizeToolName:()=>Be,openChangeRequest:()=>Si,openEventStream:()=>St,parseBillingError:()=>me,parseFlagOverride:()=>vm,parseLocalhostUrl:()=>Le,parseOpenCodeErrorPayload:()=>xl,parseSubdomainUrl:()=>Ma,parseWebProxyUrl:()=>Pd,patchKortixProject:()=>Gu,pipedreamConnect:()=>Ws,pipedreamFinalize:()=>Ys,platformConfig:()=>T,pollProjectProviderOAuth:()=>Rs,previewGatewayRoute:()=>Bo,previewMeetVoice:()=>Uo,promoteProjectSecretToShared:()=>Es,provisionProject:()=>Vn,provisionProjectWithToken:()=>Lp,proxyLocalhostUrl:()=>Da,proxyUrlToInternal:()=>bd,purchaseCredits:()=>bo,reactivateSandbox:()=>Vm,reactivateSubscription:()=>mo,readProjectFile:()=>di,rebuildProjectSnapshot:()=>ni,reconcileConnectionProfile:()=>qs,reconcileServices:()=>ap,registerService:()=>cp,rejectProjectAccessRequest:()=>os,relativizePath:()=>Tg,removeAccountAuditWebhook:()=>_a,removeAccountMember:()=>Un,removeKortixPty:()=>dn,removeMarketplaceSource:()=>$a,removeSandboxMember:()=>Xm,renameSandbox:()=>Gm,reopenChangeRequest:()=>Ri,reopenMilestone:()=>zu,replaceColumns:()=>Su,replaceFields:()=>Cu,replaceTemplates:()=>Tu,requestChangesOnChangeRequest:()=>Ti,requestProjectAccess:()=>Fp,requestProjectConnector:()=>va,requestProjectSecret:()=>Sa,resendAccountInvite:()=>$n,resendPendingProjectInvite:()=>gs,resetClient:()=>up,resetGatewayRoutingPolicy:()=>Go,resetPublicClient:()=>gp,resetSandboxUpdateStatus:()=>Pf,resolveApproval:()=>_s,restartProjectSession:()=>Me,restartSandbox:()=>Nm,restoreBackup:()=>df,revealCredential:()=>Zu,revokeAccountToken:()=>ma,revokeConnectionProfile:()=>Ms,revokeGatewayKey:()=>ta,revokePendingProjectInvite:()=>ds,revokeProjectAccess:()=>ls,revokeProjectCliToken:()=>ha,revokeSandboxInvite:()=>of,revokeSandboxProjectAccess:()=>sf,revokeSandboxShare:()=>pa,revokeSessionPublicShare:()=>Ui,rewriteLocalhostUrl:()=>Pe,runGatewayPlayground:()=>ra,saveGitHubInstallation:()=>rs,scheduleDowngrade:()=>fo,searchProjectFiles:()=>pi,serviceAction:()=>op,sessionStartKey:()=>Hp,setActiveInstanceCookie:()=>jm,setAdminBypass:()=>Ap,setAgentScope:()=>Zi,setBootstrapAuthToken:()=>eu,setCachedAuthToken:()=>Zl,setConnectorCredential:()=>Qs,setConnectorCredentialMode:()=>Fs,setConnectorName:()=>Hs,setConnectorPolicies:()=>Ks,setConnectorSensitive:()=>Gs,setEnv:()=>an,setGatewayBudget:()=>Qo,setGatewayRoutingPolicy:()=>Fo,setGitHubAppFromExisting:()=>Ef,setGitHubAppPat:()=>$f,setMeetBotName:()=>Mo,setMeetVoice:()=>Do,setModelDefault:()=>Qi,setPersonalProjectSecret:()=>js,setProjectOnboardingComplete:()=>Xn,setProjectPolicies:()=>ei,setProjectSessionSharing:()=>$i,setProjectTriggersActivation:()=>Vi,setupSSH:()=>mf,shouldHideResponsePart:()=>Ng,shouldShowToolPart:()=>Yc,sortSessions:()=>Fg,speakInMeeting:()=>Oo,splitUserParts:()=>kg,startGitHubAppManifest:()=>Af,startProjectProviderOAuth:()=>Cs,startProjectSession:()=>ke,startTask:()=>uu,stopProjectSession:()=>Ue,stopSandbox:()=>Hm,stripAnsi:()=>$g,stripInstancePrefix:()=>Tm,stripTrailingSlashes:()=>ne,submitReviewItem:()=>oa,supabaseClient:()=>$p,syncConnectors:()=>Ls,systemReload:()=>fp,toInstanceAwarePath:()=>Am,toInternalUrl:()=>hd,toolInfo:()=>Rt,toolViewModel:()=>pl,transcribeAudio:()=>na,triggerSandboxUpdate:()=>kf,triggersRequest:()=>hc,turnHasSteps:()=>Ug,unassignTicket:()=>ku,unwrapError:()=>K,updateAccountAuditWebhook:()=>wa,updateAccountMemberRole:()=>On,updateAccountName:()=>Tn,updateAgentConfig:()=>Vp,updateChannelBinding:()=>Yp,updateConnectionProfileCredential:()=>Ds,updateEmailPolicy:()=>$o,updateExperimentalFeature:()=>zn,updateKortixPty:()=>pn,updateMilestone:()=>Wu,updateProject:()=>ht,updateProjectAccess:()=>cs,updateProjectAgent:()=>Eu,updateProjectDefaultAgent:()=>eo,updateProjectGroupGrant:()=>ys,updateProjectSandboxProvider:()=>Jn,updateProjectSession:()=>Gi,updateProjectTrigger:()=>Hi,updateSandboxMemberRole:()=>Qm,updateSandboxMemberScope:()=>tf,updateSandboxMemberSpendCap:()=>Ym,updateSandboxTemplate:()=>oi,updateTask:()=>lu,updateTemplateWarmPool:()=>Up,updateTicket:()=>hu,updateTicketStatus:()=>bu,uploadSlackChannelFile:()=>Ro,upsertCredential:()=>Yu,upsertProjectGitCredential:()=>Ts,upsertProjectSecret:()=>vs,validateProjectManifest:()=>Kn,validateToken:()=>Fn});var $l={backendUrl:"",getToken:async()=>null},Mt=null,Xe=null;function ql(e){Xe=e}function Dl(){return Xe}function Qe(e,t){t?.global!==!1&&(Mt=e)}function T(){return Xe?.()??Mt??$l}function Ye(){return Mt!==null||Xe?.()!==void 0}var Xa=({onRequest:e,onSseError:t,onSseEvent:r,responseTransformer:n,responseValidator:s,sseDefaultRetryDelay:c,sseMaxRetryAttempts:u,sseMaxRetryDelay:d,sseSleepFn:g,url:h,...m})=>{let x,w=g??(i=>new Promise(P=>setTimeout(P,i)));return{stream:async function*(){let i=c??3e3,P=0,_=m.signal??new AbortController().signal;for(;!_.aborted;){P++;let D=m.headers instanceof Headers?m.headers:new Headers(m.headers);x!==void 0&&D.set("Last-Event-ID",x);try{let A={redirect:"follow",...m,body:m.serializedBody,headers:D,signal:_},v=new Request(h,A);e&&(v=await e(h,A));let j=await(m.fetch??globalThis.fetch)(v);if(!j.ok)throw new Error(`SSE failed: ${j.status} ${j.statusText}`);if(!j.body)throw new Error("No body in SSE response");let f=j.body.pipeThrough(new TextDecoderStream).getReader(),S="",U=()=>{try{f.cancel()}catch{}};_.addEventListener("abort",U);try{for(;;){let{done:N,value:M}=await f.read();if(N)break;S+=M,S=S.replace(/\r\n/g,`
|
|
2
2
|
`).replace(/\r/g,`
|
|
3
3
|
`);let O=S.split(`
|
|
4
4
|
|
|
5
|
-
`);S=O.pop()??"";for(let
|
|
6
|
-
`),
|
|
7
|
-
`);try{H=JSON.parse(E),F=!0}catch{H=E}}F&&(s&&await s(H),n&&(H=await n(H))),r?.({data:H,event:Se,id:x,retry:i}),_e.length&&(yield H)}}}finally{_.removeEventListener("abort",U),f.releaseLock()}break}catch(A){if(t?.(A),u!==void 0&&P>=u)break;let v=Math.min(i*2**(P-1),d??3e4);await w(v)}}}()}};var Al=e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},El=e=>{switch(e){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},$l=e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},Qe=({allowReserved:e,explode:t,name:r,style:n,value:s})=>{if(!t){let d=(e?s:s.map(g=>encodeURIComponent(g))).join(El(n));switch(n){case"label":return`.${d}`;case"matrix":return`;${r}=${d}`;case"simple":return d;default:return`${r}=${d}`}}let c=Al(n),u=s.map(d=>n==="label"||n==="simple"?e?d:encodeURIComponent(d):ce({allowReserved:e,name:r,value:d})).join(c);return n==="label"||n==="matrix"?c+u:u},ce=({allowReserved:e,name:t,value:r})=>{if(r==null)return"";if(typeof r=="object")throw new Error("Deeply-nested arrays/objects aren\u2019t supported. Provide your own `querySerializer()` to handle these.");return`${t}=${e?r:encodeURIComponent(r)}`},Ye=({allowReserved:e,explode:t,name:r,style:n,value:s,valueOnly:c})=>{if(s instanceof Date)return c?s.toISOString():`${r}=${s.toISOString()}`;if(n!=="deepObject"&&!t){let g=[];Object.entries(s).forEach(([m,x])=>{g=[...g,m,e?x:encodeURIComponent(x)]});let h=g.join(",");switch(n){case"form":return`${r}=${h}`;case"label":return`.${h}`;case"matrix":return`;${r}=${h}`;default:return h}}let u=$l(n),d=Object.entries(s).map(([g,h])=>ce({allowReserved:e,name:n==="deepObject"?`${r}[${g}]`:g,value:h})).join(u);return n==="label"||n==="matrix"?u+d:d};var ql=/\{[^{}]+\}/g,Dl=({path:e,url:t})=>{let r=t,n=t.match(ql);if(n)for(let s of n){let c=!1,u=s.substring(1,s.length-1),d="simple";u.endsWith("*")&&(c=!0,u=u.substring(0,u.length-1)),u.startsWith(".")?(u=u.substring(1),d="label"):u.startsWith(";")&&(u=u.substring(1),d="matrix");let g=e[u];if(g==null)continue;if(Array.isArray(g)){r=r.replace(s,Qe({explode:c,name:u,style:d,value:g}));continue}if(typeof g=="object"){r=r.replace(s,Ye({explode:c,name:u,style:d,value:g,valueOnly:!0}));continue}if(d==="matrix"){r=r.replace(s,`;${ce({name:u,value:g})}`);continue}let h=encodeURIComponent(d==="label"?`.${g}`:g);r=r.replace(s,h)}return r},za=({baseUrl:e,path:t,query:r,querySerializer:n,url:s})=>{let c=s.startsWith("/")?s:`/${s}`,u=(e??"")+c;t&&(u=Dl({path:t,url:u}));let d=r?n(r):"";return d.startsWith("?")&&(d=d.substring(1)),d&&(u+=`?${d}`),u};function Mt(e){let t=e.body!==void 0;if(t&&e.bodySerializer)return"serializedBody"in e?e.serializedBody!==void 0&&e.serializedBody!==""?e.serializedBody:null:e.body!==""?e.body:null;if(t)return e.body}var Ja=async(e,t)=>{let r=typeof t=="function"?await t(e):t;if(r)return e.scheme==="bearer"?`Bearer ${r}`:e.scheme==="basic"?`Basic ${btoa(r)}`:r};var Ut={bodySerializer:e=>JSON.stringify(e,(t,r)=>typeof r=="bigint"?r.toString():r)};var Xa=({parameters:e={},...t}={})=>n=>{let s=[];if(n&&typeof n=="object")for(let c in n){let u=n[c];if(u==null)continue;let d=e[c]||t;if(Array.isArray(u)){let g=Qe({allowReserved:d.allowReserved,explode:!0,name:c,style:"form",value:u,...d.array});g&&s.push(g)}else if(typeof u=="object"){let g=Ye({allowReserved:d.allowReserved,explode:!0,name:c,style:"deepObject",value:u,...d.object});g&&s.push(g)}else{let g=ce({allowReserved:d.allowReserved,name:c,value:u});g&&s.push(g)}}return s.join("&")},Qa=e=>{if(!e)return"stream";let t=e.split(";")[0]?.trim();if(t){if(t.startsWith("application/json")||t.endsWith("+json"))return"json";if(t==="multipart/form-data")return"formData";if(["application/","audio/","image/","video/"].some(r=>t.startsWith(r)))return"blob";if(t.startsWith("text/"))return"text"}},Ml=(e,t)=>t?!!(e.headers.has(t)||e.query?.[t]||e.headers.get("Cookie")?.includes(`${t}=`)):!1,Ya=async({security:e,...t})=>{for(let r of e){if(Ml(t,r.name))continue;let n=await Ja(r,t.auth);if(!n)continue;let s=r.name??"Authorization";switch(r.in){case"query":t.query||(t.query={}),t.query[s]=n;break;case"cookie":t.headers.append("Cookie",`${s}=${n}`);break;default:t.headers.set(s,n);break}}},Ot=e=>za({baseUrl:e.baseUrl,path:e.path,query:e.query,querySerializer:typeof e.querySerializer=="function"?e.querySerializer:Xa(e.querySerializer),url:e.url}),Lt=(e,t)=>{let r={...e,...t};return r.baseUrl?.endsWith("/")&&(r.baseUrl=r.baseUrl.substring(0,r.baseUrl.length-1)),r.headers=Ze(e.headers,t.headers),r},Ul=e=>{let t=[];return e.forEach((r,n)=>{t.push([n,r])}),t},Ze=(...e)=>{let t=new Headers;for(let r of e){if(!r)continue;let n=r instanceof Headers?Ul(r):Object.entries(r);for(let[s,c]of n)if(c===null)t.delete(s);else if(Array.isArray(c))for(let u of c)t.append(s,u);else c!==void 0&&t.set(s,typeof c=="object"?JSON.stringify(c):c)}return t},Ce=class{fns=[];clear(){this.fns=[]}eject(t){let r=this.getInterceptorIndex(t);this.fns[r]&&(this.fns[r]=null)}exists(t){let r=this.getInterceptorIndex(t);return!!this.fns[r]}getInterceptorIndex(t){return typeof t=="number"?this.fns[t]?t:-1:this.fns.indexOf(t)}update(t,r){let n=this.getInterceptorIndex(t);return this.fns[n]?(this.fns[n]=r,t):!1}use(t){return this.fns.push(t),this.fns.length-1}},Za=()=>({error:new Ce,request:new Ce,response:new Ce}),Ol=Xa({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),Ll={"Content-Type":"application/json"},Re=(e={})=>({...Ut,headers:Ll,parseAs:"auto",querySerializer:Ol,...e});var Te=(e={})=>{let t=Lt(Re(),e),r=()=>({...t}),n=h=>(t=Lt(t,h),r()),s=Za(),c=async h=>{let m={...t,...h,fetch:h.fetch??t.fetch??globalThis.fetch,headers:Ze(t.headers,h.headers),serializedBody:void 0};m.security&&await Ya({...m,security:m.security}),m.requestValidator&&await m.requestValidator(m),m.body!==void 0&&m.bodySerializer&&(m.serializedBody=m.bodySerializer(m.body)),(m.body===void 0||m.serializedBody==="")&&m.headers.delete("Content-Type");let x=Ot(m);return{opts:m,url:x}},u=async h=>{let{opts:m,url:x}=await c(h),w={redirect:"follow",...m,body:Mt(m)},k=new Request(x,w);for(let I of s.request.fns)I&&(k=await I(k,m));let l=m.fetch,i;try{i=await l(k)}catch(I){let j=I;for(let f of s.error.fns)f&&(j=await f(I,void 0,k,m));if(j=j||{},m.throwOnError)throw j;return m.responseStyle==="data"?void 0:{error:j,request:k,response:void 0}}for(let I of s.response.fns)I&&(i=await I(i,k,m));let P={request:k,response:i};if(i.ok){let I=(m.parseAs==="auto"?Qa(i.headers.get("Content-Type")):m.parseAs)??"json";if(i.status===204||i.headers.get("Content-Length")==="0"){let f;switch(I){case"arrayBuffer":case"blob":case"text":f=await i[I]();break;case"formData":f=new FormData;break;case"stream":f=i.body;break;default:f={};break}return m.responseStyle==="data"?f:{data:f,...P}}let j;switch(I){case"arrayBuffer":case"blob":case"formData":case"text":j=await i[I]();break;case"json":{let f=await i.text();j=f?JSON.parse(f):{};break}case"stream":return m.responseStyle==="data"?i.body:{data:i.body,...P}}return I==="json"&&(m.responseValidator&&await m.responseValidator(j),m.responseTransformer&&(j=await m.responseTransformer(j))),m.responseStyle==="data"?j:{data:j,...P}}let _=await i.text(),D;try{D=JSON.parse(_)}catch{}let A=D??_,v=A;for(let I of s.error.fns)I&&(v=await I(A,i,k,m));if(v=v||{},m.throwOnError)throw v;return m.responseStyle==="data"?void 0:{error:v,...P}},d=h=>m=>u({...m,method:h}),g=h=>async m=>{let{opts:x,url:w}=await c(m);return Va({...x,body:x.body,headers:x.headers,method:h,onRequest:async(k,l)=>{let i=new Request(k,l);for(let P of s.request.fns)P&&(i=await P(i,x));return i},serializedBody:Mt(x),url:w})};return{buildUrl:Ot,connect:d("CONNECT"),delete:d("DELETE"),get:d("GET"),getConfig:r,head:d("HEAD"),interceptors:s,options:d("OPTIONS"),patch:d("PATCH"),post:d("POST"),put:d("PUT"),request:u,setConfig:n,sse:{connect:g("CONNECT"),delete:g("DELETE"),get:g("GET"),head:g("HEAD"),options:g("OPTIONS"),patch:g("PATCH"),post:g("POST"),put:g("PUT"),trace:g("TRACE")},trace:d("TRACE")}};var Fl={$body_:"body",$headers_:"headers",$path_:"path",$query_:"query"},Gl=Object.entries(Fl),ec=(e,t)=>{t||(t=new Map);for(let r of e)"in"in r?r.key&&t.set(r.key,{in:r.in,map:r.map}):"key"in r?t.set(r.key,{map:r.map}):r.args&&ec(r.args,t);return t},Bl=e=>{for(let[t,r]of Object.entries(e))r&&typeof r=="object"&&!Object.keys(r).length&&delete e[t]},p=(e,t)=>{let r={body:{},headers:{},path:{},query:{}},n=ec(t),s;for(let[c,u]of e.entries())if(t[c]&&(s=t[c]),!!s)if("in"in s)if(s.key){let d=n.get(s.key),g=d.map||s.key;d.in&&(r[d.in][g]=u)}else r.body=u;else for(let[d,g]of Object.entries(u??{})){let h=n.get(d);if(h)if(h.in){let m=h.map||d;r[h.in][m]=g}else r[h.map]=g;else{let m=Gl.find(([x])=>d.startsWith(x));if(m){let[x,w]=m;r[w][d.slice(x.length)]=g}else if("allowExtra"in s&&s.allowExtra){for(let[x,w]of Object.entries(s.allowExtra))if(w){r[x][d]=g;break}}}}return Bl(r),r};var tc=Te(Re({baseUrl:"http://localhost:4096"}));var y=class{client;constructor(t){this.client=t?.client??tc}},Ft=class{defaultKey="default";instances=new Map;get(t){let r=this.instances.get(t??this.defaultKey);if(!r)throw new Error('No SDK client found. Create one with "new OpencodeClient()" to fix this error.');return r}set(t,r){this.instances.set(r??this.defaultKey,t)}},Gt=class extends y{remove(t,r){let n=p([t],[{args:[{in:"path",key:"providerID"}]}]);return(r?.client??this.client).delete({url:"/auth/{providerID}",...r,...n})}set(t,r){let n=p([t],[{args:[{in:"path",key:"providerID"},{key:"auth",map:"body"}]}]);return(r?.client??this.client).put({url:"/auth/{providerID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Bt=class extends y{log(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"service"},{in:"body",key:"level"},{in:"body",key:"message"},{in:"body",key:"extra"}]}]);return(r?.client??this.client).post({url:"/log",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}agents(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/agent",...r,...n})}skills(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/skill",...r,...n})}},Kt=class extends y{moveSession(t,r){let n=p([t],[{args:[{in:"body",key:"sessionID"},{in:"body",key:"destination"},{in:"body",key:"moveChanges"}]}]);return(r?.client??this.client).post({url:"/experimental/control-plane/move-session",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Nt=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/capabilities",...r,...n})}},Ht=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/console",...r,...n})}listOrgs(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/console/orgs",...r,...n})}switchOrg(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"accountID"},{in:"body",key:"orgID"}]}]);return(r?.client??this.client).post({url:"/experimental/console/switch",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Wt=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"roots"},{in:"query",key:"start"},{in:"query",key:"cursor"},{in:"query",key:"search"},{in:"query",key:"limit"},{in:"query",key:"archived"}]}]);return(r?.client??this.client).get({url:"/experimental/session",...r,...n})}background(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/experimental/session/{sessionID}/background",...r,...n})}},Vt=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/resource",...r,...n})}},zt=class extends y{generateName(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"context"}]}]);return(r?.client??this.client).post({url:"/experimental/project/{projectID}/copy/generate-name",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Jt=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/workspace/adapter",...r,...n})}},Xt=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/workspace",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"id"},{in:"body",key:"type"},{in:"body",key:"branch"},{in:"body",key:"extra"}]}]);return(r?.client??this.client).post({url:"/experimental/workspace",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}syncList(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/experimental/workspace/sync-list",...r,...n})}status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/workspace/status",...r,...n})}remove(t,r){let n=p([t],[{args:[{in:"path",key:"id"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/experimental/workspace/{id}",...r,...n})}warp(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"id"},{in:"body",key:"sessionID"},{in:"body",key:"copyChanges"}]}]);return(r?.client??this.client).post({url:"/experimental/workspace/warp",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}_adapter;get adapter(){return this._adapter??=new Jt({client:this.client})}},Qt=class extends y{_controlPlane;get controlPlane(){return this._controlPlane??=new Kt({client:this.client})}_capabilities;get capabilities(){return this._capabilities??=new Nt({client:this.client})}_console;get console(){return this._console??=new Ht({client:this.client})}_session;get session(){return this._session??=new Wt({client:this.client})}_resource;get resource(){return this._resource??=new Vt({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new zt({client:this.client})}_workspace;get workspace(){return this._workspace??=new Xt({client:this.client})}},Yt=class extends y{get(t){return(t?.client??this.client).get({url:"/global/config",...t})}update(t,r){let n=p([t],[{args:[{key:"config",map:"body"}]}]);return(r?.client??this.client).patch({url:"/global/config",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Zt=class extends y{health(t){return(t?.client??this.client).get({url:"/global/health",...t})}event(t){return(t?.client??this.client).sse.get({url:"/global/event",...t})}dispose(t){return(t?.client??this.client).post({url:"/global/dispose",...t})}upgrade(t,r){let n=p([t],[{args:[{in:"body",key:"target"}]}]);return(r?.client??this.client).post({url:"/global/upgrade",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}_config;get config(){return this._config??=new Yt({client:this.client})}},er=class extends y{subscribe(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).sse.get({url:"/event",...r,...n})}},tr=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/config",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"config",map:"body"}]}]);return(r?.client??this.client).patch({url:"/config",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}providers(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/config/providers",...r,...n})}},rr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"provider"},{in:"query",key:"model"}]}]);return(r?.client??this.client).get({url:"/experimental/tool",...r,...n})}ids(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/tool/ids",...r,...n})}},nr=class extends y{remove(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"worktreeRemoveInput",map:"body"}]}]);return(r?.client??this.client).delete({url:"/experimental/worktree",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/worktree",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"worktreeCreateInput",map:"body"}]}]);return(r?.client??this.client).post({url:"/experimental/worktree",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}reset(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"worktreeResetInput",map:"body"}]}]);return(r?.client??this.client).post({url:"/experimental/worktree/reset",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},sr=class extends y{text(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"pattern"}]}]);return(r?.client??this.client).get({url:"/find",...r,...n})}files(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"query"},{in:"query",key:"dirs"},{in:"query",key:"type"},{in:"query",key:"limit"}]}]);return(r?.client??this.client).get({url:"/find/file",...r,...n})}symbols(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"query"}]}]);return(r?.client??this.client).get({url:"/find/symbol",...r,...n})}},ir=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"path"}]}]);return(r?.client??this.client).get({url:"/file",...r,...n})}read(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"path"}]}]);return(r?.client??this.client).get({url:"/file/content",...r,...n})}status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/file/status",...r,...n})}},or=class extends y{dispose(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/instance/dispose",...r,...n})}},ar=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/path",...r,...n})}},cr=class extends y{raw(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/vcs/diff/raw",...r,...n})}},lr=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/vcs",...r,...n})}status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/vcs/status",...r,...n})}diff(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"mode"},{in:"query",key:"context"}]}]);return(r?.client??this.client).get({url:"/vcs/diff",...r,...n})}apply(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"patch"}]}]);return(r?.client??this.client).post({url:"/vcs/apply",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}_diff;get diff2(){return this._diff??=new cr({client:this.client})}},ur=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/command",...r,...n})}},pr=class extends y{status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/lsp",...r,...n})}},dr=class extends y{status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/formatter",...r,...n})}},gr=class extends y{remove(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/mcp/{name}/auth",...r,...n})}start(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/mcp/{name}/auth",...r,...n})}callback(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"code"}]}]);return(r?.client??this.client).post({url:"/mcp/{name}/auth/callback",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}authenticate(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/mcp/{name}/auth/authenticate",...r,...n})}},mr=class extends y{status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/mcp",...r,...n})}add(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"name"},{in:"body",key:"config"}]}]);return(r?.client??this.client).post({url:"/mcp",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}connect(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/mcp/{name}/connect",...r,...n})}disconnect(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/mcp/{name}/disconnect",...r,...n})}_auth;get auth(){return this._auth??=new gr({client:this.client})}},fr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/project",...r,...n})}current(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/project/current",...r,...n})}initGit(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/project/git/init",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"name"},{in:"body",key:"icon"},{in:"body",key:"commands"}]}]);return(r?.client??this.client).patch({url:"/project/{projectID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}directories(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/project/{projectID}/directories",...r,...n})}},yr=class extends y{shells(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/pty/shells",...r,...n})}list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/pty",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"command"},{in:"body",key:"args"},{in:"body",key:"cwd"},{in:"body",key:"title"},{in:"body",key:"env"}]}]);return(r?.client??this.client).post({url:"/pty",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}remove(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/pty/{ptyID}",...r,...n})}get(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/pty/{ptyID}",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"title"},{in:"body",key:"size"}]}]);return(r?.client??this.client).put({url:"/pty/{ptyID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}connectToken(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/pty/{ptyID}/connect-token",...r,...n})}connect(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"cursor"},{in:"query",key:"ticket"}]}]);return(r?.client??this.client).get({url:"/pty/{ptyID}/connect",...r,...n})}},hr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/question",...r,...n})}reply(t,r){let n=p([t],[{args:[{in:"path",key:"requestID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"answers"}]}]);return(r?.client??this.client).post({url:"/question/{requestID}/reply",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}reject(t,r){let n=p([t],[{args:[{in:"path",key:"requestID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/question/{requestID}/reject",...r,...n})}},br=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/permission",...r,...n})}reply(t,r){let n=p([t],[{args:[{in:"path",key:"requestID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"reply"},{in:"body",key:"message"}]}]);return(r?.client??this.client).post({url:"/permission/{requestID}/reply",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}respond(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"permissionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"response"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/permissions/{permissionID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},xr=class extends y{authorize(t,r){let n=p([t],[{args:[{in:"path",key:"providerID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"method"},{in:"body",key:"inputs"}]}]);return(r?.client??this.client).post({url:"/provider/{providerID}/oauth/authorize",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}callback(t,r){let n=p([t],[{args:[{in:"path",key:"providerID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"method"},{in:"body",key:"code"}]}]);return(r?.client??this.client).post({url:"/provider/{providerID}/oauth/callback",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},kr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/provider",...r,...n})}auth(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/provider/auth",...r,...n})}_oauth;get oauth(){return this._oauth??=new xr({client:this.client})}},Pr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"scope"},{in:"query",key:"path"},{in:"query",key:"roots"},{in:"query",key:"start"},{in:"query",key:"search"},{in:"query",key:"limit"}]}]);return(r?.client??this.client).get({url:"/session",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"parentID"},{in:"body",key:"title"},{in:"body",key:"agent"},{in:"body",key:"model"},{in:"body",key:"metadata"},{in:"body",key:"permission"},{in:"body",key:"workspaceID"}]}]);return(r?.client??this.client).post({url:"/session",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/session/status",...r,...n})}delete(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/session/{sessionID}",...r,...n})}get(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"title"},{in:"body",key:"metadata"},{in:"body",key:"permission"},{in:"body",key:"time"}]}]);return(r?.client??this.client).patch({url:"/session/{sessionID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}children(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}/children",...r,...n})}todo(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}/todo",...r,...n})}diff(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"messageID"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}/diff",...r,...n})}messages(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"limit"},{in:"query",key:"before"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}/message",...r,...n})}prompt(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"model"},{in:"body",key:"agent"},{in:"body",key:"noReply"},{in:"body",key:"tools"},{in:"body",key:"format"},{in:"body",key:"system"},{in:"body",key:"variant"},{in:"body",key:"parts"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/message",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}deleteMessage(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/session/{sessionID}/message/{messageID}",...r,...n})}message(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}/message/{messageID}",...r,...n})}fork(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/fork",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}abort(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/abort",...r,...n})}init(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"modelID"},{in:"body",key:"providerID"},{in:"body",key:"messageID"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/init",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}unshare(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/session/{sessionID}/share",...r,...n})}share(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/share",...r,...n})}summarize(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"providerID"},{in:"body",key:"modelID"},{in:"body",key:"auto"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/summarize",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}promptAsync(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"model"},{in:"body",key:"agent"},{in:"body",key:"noReply"},{in:"body",key:"tools"},{in:"body",key:"format"},{in:"body",key:"system"},{in:"body",key:"variant"},{in:"body",key:"parts"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/prompt_async",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}command(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"agent"},{in:"body",key:"model"},{in:"body",key:"arguments"},{in:"body",key:"command"},{in:"body",key:"variant"},{in:"body",key:"parts"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/command",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}shell(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"agent"},{in:"body",key:"model"},{in:"body",key:"command"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/shell",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}revert(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"partID"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/revert",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}unrevert(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/unrevert",...r,...n})}},wr=class extends y{delete(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"path",key:"partID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/session/{sessionID}/message/{messageID}/part/{partID}",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"path",key:"partID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"part",map:"body"}]}]);return(r?.client??this.client).patch({url:"/session/{sessionID}/message/{messageID}/part/{partID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},_r=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"body",map:"body"}]}]);return(r?.client??this.client).post({url:"/sync/history",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Sr=class extends y{start(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/sync/start",...r,...n})}replay(t,r){let n=p([t],[{args:[{in:"query",key:"query_directory",map:"directory"},{in:"query",key:"workspace"},{in:"body",key:"body_directory",map:"directory"},{in:"body",key:"events"}]}]);return(r?.client??this.client).post({url:"/sync/replay",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}steal(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/sync/steal",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}_history;get history(){return this._history??=new _r({client:this.client})}},vr=class extends y{next(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/tui/control/next",...r,...n})}response(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"body",map:"body"}]}]);return(r?.client??this.client).post({url:"/tui/control/response",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Cr=class extends y{appendPrompt(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"text"}]}]);return(r?.client??this.client).post({url:"/tui/append-prompt",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}openHelp(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/open-help",...r,...n})}openSessions(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/open-sessions",...r,...n})}openThemes(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/open-themes",...r,...n})}openModels(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/open-models",...r,...n})}submitPrompt(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/submit-prompt",...r,...n})}clearPrompt(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/clear-prompt",...r,...n})}executeCommand(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"command"}]}]);return(r?.client??this.client).post({url:"/tui/execute-command",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}showToast(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"title"},{in:"body",key:"message"},{in:"body",key:"variant"},{in:"body",key:"duration"}]}]);return(r?.client??this.client).post({url:"/tui/show-toast",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}publish(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"body",map:"body"}]}]);return(r?.client??this.client).post({url:"/tui/publish",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}selectSession(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/tui/select-session",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}_control;get control(){return this._control??=new vr({client:this.client})}},Rr=class extends y{get(t){return(t?.client??this.client).get({url:"/api/health",...t})}},Tr=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/location",...r,...n})}},Ir=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/agent",...r,...n})}},jr=class extends y{stage(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"messageID"},{in:"body",key:"files"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/revert/stage",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}clear(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/revert/clear",...r,...n})}commit(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/revert/commit",...r,...n})}},Ar=class extends y{list(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).get({url:"/api/session/{sessionID}/permission",...r,...n})}reply(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"},{in:"body",key:"reply"},{in:"body",key:"message"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/permission/{requestID}/reply",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Er=class extends y{list(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).get({url:"/api/session/{sessionID}/question",...r,...n})}reply(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"},{key:"questionV2Reply",map:"body"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/question/{requestID}/reply",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}reject(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/question/{requestID}/reject",...r,...n})}},$r=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"workspace"},{in:"query",key:"limit"},{in:"query",key:"order"},{in:"query",key:"search"},{in:"query",key:"directory"},{in:"query",key:"project"},{in:"query",key:"subpath"},{in:"query",key:"cursor"}]}]);return(r?.client??this.client).get({url:"/api/session",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"body",key:"id"},{in:"body",key:"agent"},{in:"body",key:"model"},{in:"body",key:"location"}]}]);return(r?.client??this.client).post({url:"/api/session",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}get(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).get({url:"/api/session/{sessionID}",...r,...n})}switchAgent(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"agent"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/agent",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}switchModel(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"model"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/model",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}prompt(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"id"},{in:"body",key:"prompt"},{in:"body",key:"delivery"},{in:"body",key:"resume"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/prompt",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}compact(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/compact",...r,...n})}wait(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/wait",...r,...n})}context(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).get({url:"/api/session/{sessionID}/context",...r,...n})}messages(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"limit"},{in:"query",key:"order"},{in:"query",key:"cursor"}]}]);return(r?.client??this.client).get({url:"/api/session/{sessionID}/message",...r,...n})}_revert;get revert(){return this._revert??=new jr({client:this.client})}_permission;get permission(){return this._permission??=new Ar({client:this.client})}_question;get question(){return this._question??=new Er({client:this.client})}},qr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/model",...r,...n})}},Dr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/provider",...r,...n})}get(t,r){let n=p([t],[{args:[{in:"path",key:"providerID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/provider/{providerID}",...r,...n})}},Mr=class extends y{key(t,r){let n=p([t],[{args:[{in:"path",key:"integrationID"},{in:"query",key:"location"},{in:"body",key:"key"},{in:"body",key:"label"}]}]);return(r?.client??this.client).post({url:"/api/integration/{integrationID}/connect/key",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}oauth(t,r){let n=p([t],[{args:[{in:"path",key:"integrationID"},{in:"query",key:"location"},{in:"body",key:"methodID"},{in:"body",key:"inputs"},{in:"body",key:"label"}]}]);return(r?.client??this.client).post({url:"/api/integration/{integrationID}/connect/oauth",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Ur=class extends y{cancel(t,r){let n=p([t],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).delete({url:"/api/integration/attempt/{attemptID}",...r,...n})}status(t,r){let n=p([t],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/integration/attempt/{attemptID}",...r,...n})}complete(t,r){let n=p([t],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"},{in:"body",key:"code"}]}]);return(r?.client??this.client).post({url:"/api/integration/attempt/{attemptID}/complete",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Or=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/integration",...r,...n})}get(t,r){let n=p([t],[{args:[{in:"path",key:"integrationID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/integration/{integrationID}",...r,...n})}_connect;get connect(){return this._connect??=new Mr({client:this.client})}_attempt;get attempt(){return this._attempt??=new Ur({client:this.client})}},Lr=class extends y{remove(t,r){let n=p([t],[{args:[{in:"path",key:"credentialID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).delete({url:"/api/credential/{credentialID}",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"credentialID"},{in:"query",key:"location"},{in:"body",key:"label"}]}]);return(r?.client??this.client).patch({url:"/api/credential/{credentialID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Fr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/permission/request",...r,...n})}},Gr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"projectID"}]}]);return(r?.client??this.client).get({url:"/api/permission/saved",...r,...n})}remove(t,r){let n=p([t],[{args:[{in:"path",key:"id"}]}]);return(r?.client??this.client).delete({url:"/api/permission/saved/{id}",...r,...n})}},Br=class extends y{_request;get request(){return this._request??=new Fr({client:this.client})}_saved;get saved(){return this._saved??=new Gr({client:this.client})}},Kr=class extends y{read(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/fs/read/*",...r,...n})}list(t,r){let n=p([t],[{args:[{in:"query",key:"location"},{in:"query",key:"path"}]}]);return(r?.client??this.client).get({url:"/api/fs/list",...r,...n})}find(t,r){let n=p([t],[{args:[{in:"query",key:"location"},{in:"query",key:"query"},{in:"query",key:"type"},{in:"query",key:"limit"}]}]);return(r?.client??this.client).get({url:"/api/fs/find",...r,...n})}},Nr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/command",...r,...n})}},Hr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/skill",...r,...n})}},Wr=class extends y{subscribe(t){return(t?.client??this.client).sse.get({url:"/api/event",...t})}},Vr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/pty",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"query",key:"location"},{in:"body",key:"command"},{in:"body",key:"args"},{in:"body",key:"cwd"},{in:"body",key:"title"},{in:"body",key:"env"}]}]);return(r?.client??this.client).post({url:"/api/pty",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}remove(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).delete({url:"/api/pty/{ptyID}",...r,...n})}get(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/pty/{ptyID}",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"},{in:"body",key:"title"},{in:"body",key:"size"}]}]);return(r?.client??this.client).put({url:"/api/pty/{ptyID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}connectToken(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).post({url:"/api/pty/{ptyID}/connect-token",...r,...n})}connect(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location[directory]"},{in:"query",key:"location[workspace]"},{in:"query",key:"cursor"},{in:"query",key:"ticket"}]}]);return(r?.client??this.client).get({url:"/api/pty/{ptyID}/connect",...r,...n})}},zr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/question/request",...r,...n})}},Jr=class extends y{_request;get request(){return this._request??=new zr({client:this.client})}},Xr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/reference",...r,...n})}},Qr=class extends y{remove(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"},{in:"body",key:"directory"},{in:"body",key:"force"}]}]);return(r?.client??this.client).delete({url:"/experimental/project/{projectID}/copy",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}create(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"},{in:"body",key:"strategy"},{in:"body",key:"directory"},{in:"body",key:"name"}]}]);return(r?.client??this.client).post({url:"/experimental/project/{projectID}/copy",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}refresh(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).post({url:"/experimental/project/{projectID}/copy/refresh",...r,...n})}},Yr=class extends y{_health;get health(){return this._health??=new Rr({client:this.client})}_location;get location(){return this._location??=new Tr({client:this.client})}_agent;get agent(){return this._agent??=new Ir({client:this.client})}_session;get session(){return this._session??=new $r({client:this.client})}_model;get model(){return this._model??=new qr({client:this.client})}_provider;get provider(){return this._provider??=new Dr({client:this.client})}_integration;get integration(){return this._integration??=new Or({client:this.client})}_credential;get credential(){return this._credential??=new Lr({client:this.client})}_permission;get permission(){return this._permission??=new Br({client:this.client})}_fs;get fs(){return this._fs??=new Kr({client:this.client})}_command;get command(){return this._command??=new Nr({client:this.client})}_skill;get skill(){return this._skill??=new Hr({client:this.client})}_event;get event(){return this._event??=new Wr({client:this.client})}_pty;get pty(){return this._pty??=new Vr({client:this.client})}_question;get question(){return this._question??=new Jr({client:this.client})}_reference;get reference(){return this._reference??=new Xr({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new Qr({client:this.client})}},et=class e extends y{static __registry=new Ft;constructor(t){super(t),e.__registry.set(this,t?.key)}_auth;get auth(){return this._auth??=new Gt({client:this.client})}_app;get app(){return this._app??=new Bt({client:this.client})}_experimental;get experimental(){return this._experimental??=new Qt({client:this.client})}_global;get global(){return this._global??=new Zt({client:this.client})}_event;get event(){return this._event??=new er({client:this.client})}_config;get config(){return this._config??=new tr({client:this.client})}_tool;get tool(){return this._tool??=new rr({client:this.client})}_worktree;get worktree(){return this._worktree??=new nr({client:this.client})}_find;get find(){return this._find??=new sr({client:this.client})}_file;get file(){return this._file??=new ir({client:this.client})}_instance;get instance(){return this._instance??=new or({client:this.client})}_path;get path(){return this._path??=new ar({client:this.client})}_vcs;get vcs(){return this._vcs??=new lr({client:this.client})}_command;get command(){return this._command??=new ur({client:this.client})}_lsp;get lsp(){return this._lsp??=new pr({client:this.client})}_formatter;get formatter(){return this._formatter??=new dr({client:this.client})}_mcp;get mcp(){return this._mcp??=new mr({client:this.client})}_project;get project(){return this._project??=new fr({client:this.client})}_pty;get pty(){return this._pty??=new yr({client:this.client})}_question;get question(){return this._question??=new hr({client:this.client})}_permission;get permission(){return this._permission??=new br({client:this.client})}_provider;get provider(){return this._provider??=new kr({client:this.client})}_session;get session(){return this._session??=new Pr({client:this.client})}_part;get part(){return this._part??=new wr({client:this.client})}_sync;get sync(){return this._sync??=new Sr({client:this.client})}_tui;get tui(){return this._tui??=new Cr({client:this.client})}_v2;get v2(){return this._v2??=new Yr({client:this.client})}};function nc(e,t,r,n){if(!n?.throwOnError||e instanceof Error)return e;if(typeof e=="object"&&e!==null&&Object.keys(e).length>0){let c=e,u=typeof c.data?.message=="string"&&c.data.message||typeof c.message=="string"&&c.message||typeof c.name=="string"&&c.name||rc(r,t);return new Error(u,{cause:{body:e,status:t?.status}})}if(typeof e=="string"&&e.length>0)return new Error(e,{cause:{body:e,status:t?.status}});let s=t?"(empty response body)":"network error (no response)";return new Error(`opencode server ${rc(r,t)}: ${s}`,{cause:{body:e,status:t?.status}})}function rc(e,t){let r=e?.method??"?",n=e?.url??"?",s=t?.status,c=t?.statusText;return`${r} ${n}${s?" \u2192 "+s:""}${c?" "+c:""}`}function Kl(e,t,r){if(e)return t&&(e===t||r&&e===r(t))?t:e}function Nl(e,t){if(e.method!=="GET"&&e.method!=="HEAD")return e;let r=new URL(e.url),n=!1;for(let[c,u]of[["x-opencode-directory","directory"],["x-opencode-workspace","workspace"]]){let d=Kl(e.headers.get(c),u==="directory"?t.directory:t.workspace,u==="directory"?encodeURIComponent:void 0);if(d){for(let g of r.pathname.startsWith("/api/")?[u,`location[${u}]`]:[u])r.searchParams.has(g)||r.searchParams.set(g,d);n=!0}}if(!n)return e;let s=new Request(r,e);return s.headers.delete("x-opencode-directory"),s.headers.delete("x-opencode-workspace"),s}function Zr(e){e?.fetch||(e={...e,fetch:n=>(n.timeout=!1,fetch(n))}),e?.directory&&(e.headers={...e.headers,"x-opencode-directory":encodeURIComponent(e.directory)}),e?.experimental_workspaceID&&(e.headers={...e.headers,"x-opencode-workspace":e.experimental_workspaceID});let t=Te(e);return t.interceptors.request.use(r=>Nl(r,{directory:e?.directory,workspace:e?.experimental_workspaceID})),t.interceptors.response.use(r=>{if(r.headers.get("content-type")==="text/html")throw new Error("Request is not supported by this version of OpenCode Server (Server responded with text/html)");return r}),t.interceptors.error.use(nc),new et({client:t})}function Hl(e){return new Promise(t=>setTimeout(t,e))}async function sc(e,t,r){let n=Math.max(1,t?.attempts??1),s=t?.baseDelayMs??0,c=t?.invalidateBetweenAttempts??!1,u=null;for(let d=0;d<n;d++)if(d>0&&(c&&r?.(),s>0&&await Hl(s)),u=await e(),u)return u;return u}var Wl=3e4;function Vl(e){return(e instanceof Request?e.url:String(e)).includes("/global/event")}function ic(e,t,r=Wl){let n=e instanceof Request?e.signal:t?.signal;if(Vl(e))return n??void 0;let s=AbortSignal.timeout(r);return n?typeof AbortSignal.any=="function"?AbortSignal.any([n,s]):n:s}function en(e,t,r){let n=new Headers(e instanceof Request?e.headers:void 0);return t?.headers&&new Headers(t.headers).forEach((s,c)=>{n.set(c,s)}),r&&!n.has("Authorization")&&n.set("Authorization",`Bearer ${r}`),n}function oc(){return new Response(JSON.stringify({error:"Not authenticated"}),{status:401,headers:{"Content-Type":"application/json"}})}async function tt(){return T().getToken()}async function le(e){return sc(()=>T().getToken(),e,Ie)}function Ie(){}function zl(e){}function Jl(e){}async function je(){return tt()}async function tn(e){return le(e)}function ac(e,t,r,n){if(e instanceof Request){let s=new Request(e,{headers:r,...n?{signal:n}:{}});return fetch(s)}return fetch(e,{...t,headers:r,...n?{signal:n}:{}})}async function R(e,t,r){let{retryOnAuthError:n=!0}=r??{},s=await tn();if(!s)return oc();let c=en(e,t,s),u=ic(e,t),d=await ac(e,t,c,u);if(d.status===401&&n&&s){Ie();let g=await tn({attempts:2,baseDelayMs:200});if(g&&g!==s){let h=en(e,t,g);return ac(e,t,h,u)}}return d}var ue={url:null,sandboxId:null,dbSandboxId:null,version:0},Xl=new Set;function cc(e,t=null,r=null){if(!(ue.url===e&&ue.sandboxId===t&&ue.dbSandboxId===r)){ue={url:e,sandboxId:t,dbSandboxId:r,version:ue.version+1};for(let n of Xl)n()}}function lc(){return ue.url}function Ql(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function Ae(){return Ql(T().backendUrl||"http://localhost:8008/v1")}function uc(){let e=T().sandboxId||"";return`${Ae()}/p/${e}/8000`}function Yl(e){return`${Ae()}/p/${e}/8000`}function rt(e){return Yl(e)}function $(){let e=lc();return e||(T().billingEnabled??!1?"":uc())}var C=class extends Error{status;code;details;data;detail;response;url;endpoint;timeout;constructor(t,r={}){super(t),this.name="ApiError";let{name:n,stack:s,...c}=r;Object.assign(this,c),n&&(this.name=n),s&&(this.stack=s);let u=typeof t=="string"?t:t==null?"":String(t);Object.defineProperty(this,"message",{value:u,enumerable:!0,writable:!0,configurable:!0}),Object.setPrototypeOf(this,new.target.prototype)}},pe=class extends C{constructor(t="Not authenticated"){super(t,{code:"NO_SESSION"}),this.name="AuthError"}},te=class e extends Error{status;detail;constructor(t,r,n){super(n||r.message||`Billing Error: ${t}`),this.name="BillingError",this.status=t,this.detail=r,Object.setPrototypeOf(this,e.prototype)}},de=class e extends Error{status;detail;constructor(t=431,r,n){let s="Request headers are too large",c="Try uploading files one at a time, or reduce the number of files in a single request.";super(n||r?.message||s),this.name="RequestTooLargeError",this.status=t,this.detail={message:r?.message||s,suggestion:r?.suggestion||c},Object.setPrototypeOf(this,e.prototype)}};function ge(e){let t=e.response?.status||e.status;if(t!==402)return e;let r=e.response?.data||e.data||e.detail||{},n=r?.detail||r;return new te(t,{message:n?.message||e.message||"Billing error",...n})}function pc(e){return e instanceof te}function dc(e){if(!(e instanceof te))return null;let t=e.detail?.message?.toLowerCase()||"";return t.includes("credit")||t.includes("balance")||t.includes("insufficient")?{alertTitle:"You ran out of credits",alertSubtitle:"Upgrade your plan to get more credits and continue using the AI assistant."}:{alertTitle:"Billing check failed",alertSubtitle:e.detail?.message||"Please upgrade to continue."}}async function rn(e,t){return(await e.json().catch(()=>({})))?.error||e.statusText||t}function nn(e){if(!e)throw new Error("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading");return e}async function sn(e){let t=nn(e),r=await R(`${t}/env`);if(!r.ok)throw new Error(await rn(r,"Failed to load secrets"));return(await r.json()).secrets??{}}async function on(e,t,r){let n=nn(e),s=await R(`${n}/env/${encodeURIComponent(t)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:r})});if(!s.ok)throw new Error(await rn(s,"Failed to save secret"))}async function an(e,t){let r=nn(e),n=await R(`${r}/env/${encodeURIComponent(t)}`,{method:"DELETE"});if(!n.ok)throw new Error(await rn(n,"Failed to delete secret"))}var gc={list:sn,set:on,delete:an};async function mc(e,t,r){let n=e;for(;n.endsWith("/");)n=n.slice(0,-1);let s=await R(`${n}/kortix/triggers${t}`,{...r,headers:{"Content-Type":"application/json",...r?.headers}}),c=await s.json();if(!s.ok)throw new Error(c?.error||c?.message||`Request failed with ${s.status}`);return c}function re(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return t===e.length?e:e.slice(0,t)}async function nt(e,t){let r=await e.json().catch(()=>({}));return r?.error||r?.message||e.statusText||t}function Ee(e){if(!e)throw new Error("[kortix-pty] Server URL not ready \u2014 sandbox is still loading");return re(e)}async function cn(e){let t=Ee(e),r=await R(`${t}/kortix/pty`);if(!r.ok)throw new Error(await nt(r,"Failed to list terminals"));return r.json()}async function ln(e,t){let r=Ee(e),n=await R(`${r}/kortix/pty`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t??{})});if(!n.ok)throw new Error(await nt(n,"Failed to create terminal"));return n.json()}async function un(e,t,r){let n=Ee(e),s=await R(`${n}/kortix/pty/${encodeURIComponent(t)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});if(!s.ok)throw new Error(await nt(s,"Failed to update terminal"));return s.json()}async function pn(e,t){let r=Ee(e),n=await R(`${r}/kortix/pty/${encodeURIComponent(t)}`,{method:"DELETE"});if(!n.ok)throw new Error(await nt(n,"Failed to remove terminal"))}async function dn(e,t){let r=Ee(t),s=`${(()=>{try{let d=new URL(r);return d.protocol==="https:"?d.protocol="wss:":d.protocol==="http:"&&(d.protocol="ws:"),typeof window<"u"&&window.location.protocol==="https:"&&d.protocol==="ws:"&&(d.protocol="wss:"),re(d.toString())}catch{return r.replace("https://","wss://").replace("http://","ws://")}})()}/kortix/pty/${encodeURIComponent(e)}/connect`,c=await je();if(!c)return s;let u=s.includes("?")?"&":"?";return`${s}${u}token=${encodeURIComponent(c)}`}var fc={list:cn,create:ln,update:un,remove:pn,webSocketUrl:dn};async function b(e,t,r,n){let s=e;for(;s.endsWith("/");)s=s.slice(0,-1);let c=await R(`${s}${t}`,{...r,headers:{"Content-Type":"application/json",...r?.headers}},n),u=await c.text(),d={};try{d=u?JSON.parse(u):{}}catch{d={}}if(!c.ok)throw new Error(d?.error||d?.message||d?.details||u.slice(0,200)||`Request failed with ${c.status}`);return d}async function Zl(e,t={}){let r=new URLSearchParams;t.projectId&&r.set("project_id",t.projectId),t.status&&r.set("status",t.status);let n=r.toString()?`?${r}`:"";return b(e,`/kortix/tasks${n}`)}async function eu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`)}async function tu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/events`)}async function ru(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/status`)}async function nu(e,t){return b(e,"/kortix/tasks",{method:"POST",body:JSON.stringify(t)})}async function su(e,t,r){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(r)})}async function iu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/start`,{method:"POST"})}async function ou(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/approve`,{method:"POST"})}async function au(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`,{method:"DELETE"})}async function cu(e,t){let r=t?`?project_id=${encodeURIComponent(t)}`:"";return b(e,`/kortix/tickets${r}`)}async function lu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`)}async function uu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/events`)}async function pu(e,t){return b(e,"/kortix/tickets",{method:"POST",body:JSON.stringify(t)})}async function du(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(r)})}async function gu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/status`,{method:"POST",body:JSON.stringify(r)})}async function mu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/assign`,{method:"POST",body:JSON.stringify(r)})}async function fu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/unassign`,{method:"POST",body:JSON.stringify(r)})}async function yu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/comments`,{method:"POST",body:JSON.stringify(r)})}async function hu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`,{method:"DELETE"})}async function bu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/columns`)}async function xu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/columns`,{method:"PUT",body:JSON.stringify({columns:r})})}async function ku(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/fields`)}async function Pu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/fields`,{method:"PUT",body:JSON.stringify({fields:r})})}async function wu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/templates`)}async function _u(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/templates`,{method:"PUT",body:JSON.stringify({templates:r})})}async function Su(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/pm-session`,{method:"POST"})}async function vu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents`)}async function Cu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents`,{method:"POST",body:JSON.stringify(r)})}async function Ru(e,t,r,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(r)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Tu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(r)}`,{method:"DELETE"})}async function Iu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(r)}/persona`)}async function ju(e,t,r=200){return b(e,`/kortix/projects/${encodeURIComponent(t)}/activity?limit=${r}`)}async function Au(e){return b(e,"/kortix/projects")}async function Eu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}`)}async function $u(e,t){return b(e,`/kortix/projects/by-session/${encodeURIComponent(t)}`)}async function qu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/sessions`)}async function Du(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}`,{method:"DELETE"})}async function Mu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Uu(e,t,r="all"){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones?status=${r}`)}async function Ou(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}`)}async function Lu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}/events`)}async function Fu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones`,{method:"POST",body:JSON.stringify(r)})}async function Gu(e,t,r,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Bu(e,t,r,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}/close`,{method:"POST",body:JSON.stringify(n)})}async function Ku(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}/reopen`,{method:"POST"})}async function Nu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}`,{method:"DELETE"})}async function Hu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials`)}async function Wu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(r)}/events`)}async function Vu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials`,{method:"POST",body:JSON.stringify(r)})}async function zu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(r)}`)}async function Ju(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(r)}`,{method:"DELETE"})}var Xu=1e4,Qu={retryOnAuthError:!1};function me(e,t,r){return b(e,t,{signal:AbortSignal.timeout(Xu),...r},Qu)}async function Yu(e,t=!1){return(await me(e,`/kortix/services${t?"?all=true":""}`)).services??[]}async function Zu(e){return(await me(e,"/kortix/services/templates")).templates??[]}async function ep(e,t){return(await me(e,`/kortix/services/${encodeURIComponent(t)}/logs`)).logs??[]}async function tp(e,t,r){let n=r==="delete",s=n?`/kortix/services/${encodeURIComponent(t)}`:`/kortix/services/${encodeURIComponent(t)}/${r}`;return me(e,s,{method:n?"DELETE":"POST"})}async function rp(e,t){return me(e,`/kortix/services/reconcile${t?"?reload=true":""}`,{method:"POST"})}async function np(e,t){return me(e,"/kortix/services/register",{method:"POST",body:JSON.stringify(t)})}var st=new Map,it=class extends Error{constructor(t="[opencode-sdk] Server URL not ready \u2014 sandbox is still loading"){super(t),this.name="RuntimeNotReadyError"}};function X(){let e=$();if(!e)throw new it;return ne(e)}function ne(e){if(!e)throw new Error("[opencode-sdk] getClientForUrl called without a url");let t=st.get(e);if(t)return t;if(!Xe())throw new Error("[opencode-sdk] No auth token provider configured \u2014 call configureKortix()/createKortix() before talking to a sandbox runtime.");let r=Zr({baseUrl:e,fetch:R});return st.set(e,r),r}function sp(e){st.delete(e)}function ip(){st.clear()}var ot=new Map;function op(e){if(!e)throw new Error("[opencode-sdk] getPublicClientForUrl called without a url");let t=ot.get(e);if(t)return t;let r=Zr({baseUrl:e,fetch});return ot.set(e,r),r}function ap(e){ot.delete(e)}function cp(){ot.clear()}async function lp(e){let t=await e.text().catch(()=>"");try{let r=JSON.parse(t);return r?.error||r?.message||t||e.statusText||`HTTP ${e.status}`}catch{return t||e.statusText||`HTTP ${e.status}`}}async function up(e){let t=$();if(!t)throw new C("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading",{code:"RUNTIME_UNAVAILABLE"});let r=await R(`${t}/kortix/services/system/reload`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:e})});if(!r.ok)throw new C(`System reload failed (${r.status}): ${await lp(r)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});return r.json()}function hc(e){if(e.error){let t=e.error,r=t?.data?.message||t?.message||(typeof t?.error=="string"?t.error:null)||"SDK request failed";throw new C(r,{status:t?.response?.status??t?.status,response:t?.response,details:t})}return e.data}async function fe(e){let t=await e.text().catch(()=>""),r=null;try{r=JSON.parse(t)}catch{}return r?.error||t||e.statusText||`HTTP ${e.status}`}async function at(e,t=$()){let r=await R(`${t}${e}`);if(!r.ok)throw new C(await fe(r),{status:r.status,response:r});return r.json()}var bc=["/workspace","/tmp","/home","/opt"],pp=bc.filter(e=>e!=="/workspace");function dp(e){return bc.some(t=>e===t||e.startsWith(`${t}/`))}function gp(e){return dp(e)?e:`/workspace/${e.replace(/^\/+/,"")}`}function qe(e){let t=e||"";if(t==="/workspace"||t==="/workspace/")return"";if(t.startsWith("/workspace/"))t=t.slice(11);else if(pp.some(r=>t===r||t.startsWith(`${r}/`)))return t;for(;t.startsWith("/");)t=t.slice(1);return t}var mp=qe;async function gn(e,t=$()){let r=qe(e)||".";return(await at(`/file?path=${encodeURIComponent(r)}`,t)).map(s=>({...s,path:s.absolute||`/workspace/${s.path}`}))}async function ct(e,t=$()){let r=qe(e),n=await R(`${t}/file/content?path=${encodeURIComponent(r)}`);if(!n.ok)throw new C(await fe(n),{status:n.status,response:n});return n.json()}async function fp(e,t,r=$()){let n=qe(e),s=await R(`${r}/file/raw?path=${encodeURIComponent(n)}`);if(!s.ok)throw new C(await fe(s),{status:s.status,response:s});if((s.headers.get("content-type")||"").includes("text/html"))throw new C("File could not be loaded (raw byte route unavailable)",{status:s.status,response:s,code:"INVALID_CONTENT_TYPE"});let c=await s.blob();return t&&(!c.type||c.type==="application/octet-stream")?new Blob([c],{type:t}):c}async function lt(e,t=$()){try{return await fp(e,void 0,t)}catch{}let r=await ct(e,t);if(r.encoding==="base64"&&r.content){let n=Uint8Array.from(atob(r.content),s=>s.charCodeAt(0));return new Blob([n],{type:r.mimeType||"application/octet-stream"})}return new Blob([r.content??""],{type:r.mimeType||"text/plain;charset=utf-8"})}function mn(e=$()){return at("/file/status",e)}async function fn(e,t,r=$()){let n=new URLSearchParams({query:e});return t?.type&&n.set("type",t.type),t?.limit&&n.set("limit",String(t.limit)),at(`/find/file?${n.toString()}`,r)}async function yn(e,t=$()){return(await at(`/find?pattern=${encodeURIComponent(e)}`,t)).map(n=>({path:typeof n.path=="string"?n.path:n.path?.text??"",lines:typeof n.lines=="string"?n.lines:n.lines?.text??"",line_number:n.line_number,absolute_offset:n.absolute_offset,submatches:(n.submatches??[]).map(s=>({start:s.start,end:s.end}))}))}var $e=[400,1200],yp=e=>e===408||e===429||e===502||e===503||e===504,yc=e=>new Promise(t=>setTimeout(t,e));async function hp(e){let t=await e.text().catch(()=>""),r=null;try{r=t?JSON.parse(t):null}catch{}let n=r?.error||r?.message||r?.data?.message;return typeof n=="string"&&n.trim()?n.trim():(e.headers.get("content-type")||"").includes("text/html")||/<html[\s>]/i.test(t)?e.status===502||/bad gateway/i.test(t)?"Bad gateway while reaching the sandbox upload service. Please retry.":e.statusText||`HTTP ${e.status}`:t.replace(/\s+/g," ").trim().slice(0,500)||e.statusText||`HTTP ${e.status}`}async function xc(e,t){let r;for(let s=0;s<=$e.length;s++){let c;try{c=await t(e())}catch(d){if(r=d,s===$e.length)break;await yc($e[s]);continue}if(c.ok)return c.json();let u=await hp(c);if(r=new C(`Upload failed (${c.status}): ${u}`,{status:c.status,response:c}),!yp(c.status)||s===$e.length)throw r;await yc($e[s])}if(r instanceof C)throw r;let n=r instanceof Error?r.message:String(r||"request failed");throw new C(`Upload failed: ${n}`)}function ut(e,t,r,n=$()){return xc(()=>{let s=new FormData,c=(t??"").trim();return c&&s.append("path",c.startsWith("/")?c:`/${c}`),r?s.append("file",e,r):s.append("file",e),s},s=>R(`${n}/file/upload`,{method:"POST",body:s}))}function bp(e,t,r=$()){return xc(()=>{let n=new FormData;return n.append(e,t,e.split("/").pop()||"file"),n},async n=>{let s={},c=await je();return c&&(s.Authorization=`Bearer ${c}`),fetch(`${r}/file/upload`,{method:"POST",body:n,headers:s})})}function hn(e,t=$()){let r=e.trim(),s=(r.startsWith("/")?r:`/${r}`).split("/"),c=s.pop()||"untitled",u=s.join("/")||"/workspace";return ut(new File([" "],c,{type:"application/octet-stream"}),u,void 0,t)}async function bn(e,t,r=$()){return bp(t,await lt(e,r),r)}async function xn(e,t=$()){let r=await R(`${t}/file`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!r.ok)throw new C(`Delete failed (${r.status}): ${await fe(r)}`,{status:r.status,response:r});return r.json()}async function kn(e,t=$()){let r=await R(`${t}/file/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!r.ok)throw new C(`Mkdir failed (${r.status}): ${await fe(r)}`,{status:r.status,response:r});return r.json()}async function Pn(e,t,r=$()){let n=await R(`${r}/file/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({from:e,to:t})});if(!n.ok)throw new C(`Rename failed (${n.status}): ${await fe(n)}`,{status:n.status,response:n});return n.json()}async function xp(){return hc(await X().project.current())}async function kc(){return hc(await X().global.health())}async function kp(){try{return(await kc()).healthy===!0}catch{return!1}}var Pc={list:gn,read:ct,readBlob:lt,status:mn,findFiles:fn,findText:yn,upload:ut,create:hn,copy:bn,remove:xn,mkdir:kn,rename:Pn,currentProject:xp,health:kc,isReachable:kp,toDaemonPath:qe,toSandboxAbsolutePath:gp,toWorkspaceRelative:mp};var Q=()=>T().backendUrl||"",wp=e=>new Promise(t=>setTimeout(t,e)),_p=new Set([502,503,504]),wc=e=>_p.has(e),Sp=e=>{let t=(e??"GET").toUpperCase();return t==="GET"||t==="HEAD"},vp=2,wn=!1;function Cp(e){wn=e}function Rp(){return wn}async function se(e,t={}){let{showErrors:r=!0,errorContext:n,timeout:s=3e4,...c}=t,u=new AbortController,d=null,g=!1,h=!1;try{d=setTimeout(()=>{!g&&!u.signal.aborted&&(g=!0,h=!0,u.abort())},s);let m=await le(),x=c.body instanceof FormData,w={};if(x||(w["Content-Type"]="application/json"),Object.assign(w,c.headers),wn&&(w["x-kortix-admin-bypass"]="1"),m)w.Authorization=`Bearer ${m}`;else return{error:new pe,success:!1};let k=await fetch(e,{...c,headers:w,signal:u.signal,credentials:c.credentials??"omit"});if(d&&(clearTimeout(d),d=null),!k.ok&&Sp(c.method)&&wc(k.status))for(let P=0;P<vp;P++){try{await k.arrayBuffer()}catch{}await wp(250*2**P);let _=new AbortController,D=setTimeout(()=>{_.abort()},s);try{k=await fetch(e,{...c,headers:w,signal:_.signal,credentials:c.credentials??"omit"})}catch{break}finally{D&&(clearTimeout(D),D=null)}if(k.ok||!wc(k.status))break}if(!k.ok){let P=`HTTP ${k.status}: ${k.statusText}`,_=null;try{_=await k.json(),typeof _.message=="string"?P=_.message:_.error&&typeof _.error=="string"?P=_.error:typeof _.detail=="string"?P=_.detail:typeof _.detail?.message=="string"&&(P=_.detail.message)}catch{}let D=new C(P,{status:k.status,response:k,details:_||void 0,data:_,detail:_?.detail,code:_?.code||_?.error_code||_?.detail?.error_code||k.status.toString()});if(k.status===402&&(D=ge(D)),k.status===403&&_?.code==="account_mfa_required"&&typeof window<"u"&&typeof window.dispatchEvent=="function")try{window.dispatchEvent(new CustomEvent("kortix:mfa-required"))}catch{}return k.status===431&&(D=new de(431,{message:"Request is too large to process",suggestion:"Try uploading files one at a time, or reduce the number of files attached to your message."})),r&&T().onError?.(D,n),{error:D,success:!1}}let l,i=k.headers.get("content-type");return i?.includes("application/json")?l=await k.json():i?.includes("text/")?l=await k.text():l=await k.blob(),{data:l,success:!0}}catch(m){d&&(clearTimeout(d),d=null);let x=m?.name==="AbortError"||m?.name==="AbortSignal"||m instanceof Error&&m.message.includes("aborted");x&&(g=!0);let w;if(x){if(!h)return{error:new C("Request aborted",{name:"AbortError",code:"ABORTED"}),success:!1};let k=e.replace(Q(),"")||e;w=new C(`Request timed out after ${Math.round(s/1e3)}s: ${k}`,{code:"TIMEOUT",url:e,endpoint:k,timeout:s}),r&&T().onError?.(w,n)}else m instanceof Error?(w=new C(m.message,{name:m.name||"ApiError",stack:m.stack}),r&&T().onError?.(w,n)):(w=new C(String(m)),r&&T().onError?.(w,n));return{error:w,success:!1}}}var Tp={async execute(e,t){try{let{data:r,error:n}=await e();if(n){let s=new C(n.message||"Database error",{code:n.code,details:n});return T().onError?.(s,t),{error:s,success:!1}}return{data:r,success:!0}}catch(r){let n=r instanceof Error?new C(r.message,{name:r.name||"ApiError",stack:r.stack}):new C(String(r));return T().onError?.(n,t),{error:n,success:!1}}}},o={get:(e,t)=>se(`${Q()}${e}`,{...t,method:"GET"}),post:(e,t,r)=>se(`${Q()}${e}`,{...r,method:"POST",body:t?JSON.stringify(t):void 0}),put:(e,t,r)=>se(`${Q()}${e}`,{...r,method:"PUT",body:t?JSON.stringify(t):void 0}),patch:(e,t,r)=>se(`${Q()}${e}`,{...r,method:"PATCH",body:t?JSON.stringify(t):void 0}),delete:(e,t)=>se(`${Q()}${e}`,{...t,method:"DELETE"}),upload:(e,t,r)=>{let{headers:n,...s}=r||{},c={...n};return delete c["Content-Type"],se(`${Q()}${e}`,{...s,method:"POST",body:t,headers:c})},uploadPut:(e,t,r)=>{let{headers:n,...s}=r||{},c={...n};return delete c["Content-Type"],se(`${Q()}${e}`,{...s,method:"PUT",body:t,headers:c})}};function a(e,t="Project request failed"){if(!e.success||e.data===void 0)throw e.error??new Error(t);return e.data}function _n(e){return e.replace(/\/v1\/?$/,"")}async function ye(e,t){if(!e.backendUrl||!e.accessToken)return null;let r=_n(e.backendUrl);try{let n=await fetch(`${r}${t}`,{headers:{Authorization:`Bearer ${e.accessToken}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(e.timeoutMs??8e3)});return n.ok?await n.json():null}catch{return null}}async function Sn(){return a(await o.get("/accounts"))}async function vn(e){return a(await o.post("/accounts",e))}async function Cn(e){return a(await o.get(`/accounts/${e}`))}async function Rn(e,t){return a(await o.patch(`/accounts/${e}`,{name:t}))}async function Tn(e){return a(await o.get(`/accounts/${e}/members`))}async function In(e,t){return a(await o.post(`/accounts/${e}/members`,t,{showErrors:!1}))}async function jn(e){return a(await o.get(`/accounts/${e}/invites`))}async function An(e,t){return a(await o.delete(`/accounts/${e}/invites/${t}`))}async function En(e,t){return a(await o.post(`/accounts/${e}/invites/${t}/resend`,{}))}async function $n(e){return a(await o.get(`/account-invites/${e}`,{showErrors:!1}))}async function qn(e){return a(await o.post(`/account-invites/${e}/accept`,{}))}async function Dn(e){return a(await o.post(`/account-invites/${e}/decline`,{}))}async function Mn(e,t){return a(await o.delete(`/accounts/${e}/members/${t}`))}async function Un(e,t,r){return a(await o.patch(`/accounts/${e}/members/${t}`,{role:r}))}async function On(e){return a(await o.post(`/accounts/${e}/leave`,{}))}async function Ip(e){return ye(e,"/v1/accounts")}async function Ln(){let e=await o.get("/accounts/me",{showErrors:!1});return!e.success||!e.data?{valid:!1,error:e.error}:{valid:!0,identity:e.data}}async function ie(){return a(await o.get("/projects"))}async function Fn(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return a(await o.get(`/projects${t}`))}async function pt(e,t){return a(await o.get(`/projects/${e}`,t))}async function Gn(e,t,r="write"){return a(await o.post(`/projects/${e}/git/collaborators`,{github_username:t,permission:r}))}async function Bn(e,t){return a(await o.post(`/projects/${e}/manifest/validate`,{raw:t}),"Failed to validate manifest")}async function Kn(e){return a(await o.post(`/projects/${e}/git-token`,{}),"Failed to mint git token")}function jp(e){let t=e.metadata?.git;return t?.provider==="github"&&t?.managed===!0}async function dt(e,t){return a(await o.get(`/projects/${e}/detail`,{showErrors:!1,...t}))}async function gt(e,t){return a(await o.get(`/projects/${e}/llm-catalog`,{showErrors:!1,...t}))}async function mt(e,t){return a(await o.get(`/projects/${e}/model-picker`,{showErrors:!1,...t}))}async function Nn(e){return a(await o.post("/projects",e))}async function Hn(e){return a(await o.post("/projects/create-repo",e))}async function Wn(e){return a(await o.post("/projects/provision",{seed_starter:!0,...e}))}async function Ap(){try{return a(await o.get("/projects/managed-git/status",{showErrors:!1}))}catch{return{configured:!1,provider:"github"}}}async function ft(e,t){return a(await o.patch(`/projects/${e}`,t))}async function Vn(e,t,r){return a(await o.patch(`/projects/${e}/experimental`,{feature:t,enabled:r}))}async function zn(e,t){return a(await o.patch(`/projects/${e}/sandbox-provider`,{provider:t}))}async function Ep(e,t){return a(await o.patch(`/projects/${e}/warm-pool`,t))}async function Jn(e,t){return a(await o.patch(`/projects/${e}/onboarding`,{completed:t}))}async function yt(e){return a(await o.delete(`/projects/${e}`))}async function $p(e,t){return ye(e,`/v1/projects?account_id=${encodeURIComponent(t)}`)}async function qp(e,t){if(!e.backendUrl||!e.accessToken)return{ok:!1,limitReached:!1};let r=_n(e.backendUrl);try{let n=await fetch(`${r}/v1/projects/provision`,{method:"POST",headers:{Authorization:`Bearer ${e.accessToken}`,"Content-Type":"application/json"},body:JSON.stringify({seed_starter:!0,...t}),signal:AbortSignal.timeout(e.timeoutMs??9e4)});if(n.ok){let s=await n.json().catch(()=>null);return s?.project_id?{ok:!0,project:s}:{ok:!1,limitReached:!1}}return n.status===403?{ok:!1,limitReached:(await n.json().catch(()=>null))?.code==="project_limit_reached"}:{ok:!1,limitReached:!1}}catch{return{ok:!1,limitReached:!1}}}async function Xn(e){return a(await o.post("/projects/link-repository",e,{showErrors:!1}))}async function Qn(e){return a(await o.get(`/projects/github/installation?account_id=${encodeURIComponent(e)}`,{showErrors:!1}))}async function Yn(e){return a(await o.get(`/projects/github/installations?account_id=${encodeURIComponent(e)}`,{showErrors:!1}))}async function Zn(e,t){let r=new URLSearchParams({account_id:e});return t&&r.set("installation_id",t),a(await o.get(`/projects/github/repositories?${r.toString()}`,{showErrors:!1}))}async function es(e,t,r){let n=new URLSearchParams({account_id:e,installation_id:t,repo_full_name:r});return a(await o.get(`/projects/github/repository-branches?${n.toString()}`,{showErrors:!1}))}async function ts(e){return a(await o.post("/projects/github/installation",e,{showErrors:!1}))}async function rs(e,t){let r=new URLSearchParams({account_id:e});return t&&r.set("installation_id",t),a(await o.delete(`/projects/github/installation?${r.toString()}`))}async function Dp(e,t){return a(await o.post(`/projects/${e}/access-requests`,{message:t?.trim()||void 0},{showErrors:!1}))}async function ns(e,t){return a(await o.get(`/projects/${e}/access-requests`,t))}async function ss(e,t,r="member"){return a(await o.post(`/projects/${e}/access-requests/${t}/approve`,{role:r}))}async function is(e,t){return a(await o.post(`/projects/${e}/access-requests/${t}/reject`,{}))}async function os(e){return a(await o.get(`/projects/${e}/access`))}async function as(e,t,r){return a(await o.put(`/projects/${e}/access/${t}`,{role:r}))}async function cs(e,t){return a(await o.delete(`/projects/${e}/access/${t}`))}function Mp(e){return"status"in e&&e.status==="invited"}async function ls(e,t,r,n){return a(await o.post(`/projects/${e}/access/invite`,{email:t,role:r,...n!==void 0?{expires_at:n}:{}}))}async function us(e){return a(await o.get(`/projects/${e}/access/pending-invites`))}async function ps(e,t){return a(await o.delete(`/projects/${e}/access/pending-invites/${t}`))}async function ds(e,t){return a(await o.post(`/projects/${e}/access/pending-invites/${t}/resend`))}async function gs(e){return a(await o.get(`/projects/${e}/group-grants`))}async function ms(e,t,r,n){return a(await o.post(`/projects/${e}/group-grants`,n===void 0?{group_id:t,role:r}:{group_id:t,role:r,expires_at:n}))}async function fs(e,t,r,n){return a(await o.patch(`/projects/${e}/group-grants/${t}`,n===void 0?{role:r}:{role:r,expires_at:n}))}async function ys(e,t){return a(await o.delete(`/projects/${e}/group-grants/${t}`))}async function hs(e){return a(await o.get(`/projects/${e}/resource-grants`))}async function bs(e,t){return a(await o.post(`/projects/${e}/resource-grants`,{resource_type:t.resourceType,resource_id:t.resourceId,principal_type:t.principalType,principal_id:t.principalId,...t.expiresAt!==void 0?{expires_at:t.expiresAt}:{}}))}async function xs(e,t){return a(await o.delete(`/projects/${e}/resource-grants/${t}`))}async function ks(e,t){return a(await o.get(`/projects/${e}/approvals`,{showErrors:t?.showErrors}))}async function Ps(e,t){return a(await o.get(`/projects/${e}/approvals/needs-input`,{showErrors:t?.showErrors}))}async function ws(e,t,r,n="once"){return a(await o.post(`/projects/${e}/approvals/${t}`,{decision:r,scope:n}))}async function _s(e){return a(await o.get(`/projects/${e}/secrets`,{showErrors:!1}))}async function Ss(e,t){return a(await o.post(`/projects/${e}/secrets`,t))}async function vs(e,t,r){return a(await o.post(`/projects/${e}/oauth/${t}/start`,{sharing:r?.sharing}))}async function Cs(e,t,r){return a(await o.post(`/projects/${e}/oauth/${t}/poll`,{flow_id:r}))}async function Rs(e,t){return a(await o.put(`/projects/${e}/git-credential`,t))}async function Ts(e,t){return a(await o.delete(`/projects/${e}/secrets/${encodeURIComponent(t)}`))}async function Is(e,t,r){return a(await o.put(`/projects/${e}/secrets/${encodeURIComponent(t)}/personal`,r))}async function js(e,t){return a(await o.delete(`/projects/${e}/secrets/${encodeURIComponent(t)}/personal`))}async function As(e){return a(await o.get(`/projects/${e}/connector-profiles`))}async function Es(e,t){return a(await o.post(`/projects/${e}/connector-profiles`,t))}async function $s(e,t,r){return a(await o.put(`/projects/${e}/connector-profiles/${t}/credential`,r))}async function qs(e,t){return a(await o.put(`/projects/${e}/connector-profiles/${t}/revoke`,{}))}async function Ds(e,t){return a(await o.put(`/projects/${e}/connector-profiles/${t}/activate`,{}))}async function Ms(e){return a(await o.get(`/executor/projects/${e}/connectors`,{showErrors:!1}))}async function Us(e){return a(await o.post(`/executor/projects/${e}/connectors/sync`,{}))}async function Os(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/credential-mode`,{mode:r}))}async function Ls(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/sensitive`,{sensitive:r}))}async function Fs(e,t){return a(await o.get(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/policies`))}async function Gs(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/policies`,{policies:r}))}async function Bs(e,t){return a(await o.get(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/config`))}async function Ks(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/name`,{name:r}))}async function Ns(e,t){return a(await o.post(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/connect`,{}))}async function Hs(e,t){return a(await o.post(`/executor/projects/${e}/connectors`,t))}async function Ws(e,t){return a(await o.delete(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}`))}async function Vs(e,t,r){let n=new URLSearchParams;t&&n.set("q",t),r&&n.set("cursor",r);let s=n.toString();return a(await o.get(`/executor/projects/${e}/pipedream/apps${s?`?${s}`:""}`))}async function zs(){return a(await o.get("/executor/connect-status"))}async function Js(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/credential`,{value:r}))}async function Xs(e,t){return a(await o.post(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/connect/finalize`,{}))}async function Qs(e){return a(await o.get(`/executor/projects/${e}/policies`))}async function Ys(e,t,r){return a(await o.put(`/executor/projects/${e}/policies`,{policies:t,defaultMode:r}))}async function Zs(e){return a(await o.get(`/projects/${e}/sandboxes`))}async function ei(e){return a(await o.get(`/projects/${e}/snapshots`))}async function ht(e){return a(await o.get(`/projects/${e}/sandbox-health`,{showErrors:!1,timeout:15e3}))}async function ti(e,t){return a(await o.post(`/projects/${e}/snapshots/rebuild`,t?{slug:t}:{}))}async function ri(e){return a(await o.post(`/projects/${e}/snapshots/fix-with-agent`,{}))}async function ni(e,t){return a(await o.post(`/projects/${e}/sandbox-templates`,t))}async function si(e,t,r){return a(await o.patch(`/projects/${e}/sandbox-templates/${t}`,r))}async function ii(e,t){return a(await o.delete(`/projects/${e}/sandbox-templates/${t}`))}async function oi(e,t){return a(await o.post(`/projects/${e}/sandbox-templates/${t}/build`,{}))}async function ai(e){return a(await o.get(`/projects/${e}/sandboxes`))}async function ci(e,t){let r=new URLSearchParams;t?.ref&&r.set("ref",t.ref),t?.path&&r.set("path",t.path);let n=r.toString()?`?${r.toString()}`:"";return a(await o.get(`/projects/${e}/files${n}`,{showErrors:!1}))}async function li(e,t,r){let n=new URLSearchParams({q:t});return r?.content&&n.set("content","1"),r?.ref&&n.set("ref",r.ref),r?.limit&&n.set("limit",String(r.limit)),a(await o.get(`/projects/${e}/files/search?${n.toString()}`))}async function ui(e,t,r){let n=new URLSearchParams({path:t});return r&&n.set("ref",r),a(await o.get(`/projects/${e}/files/content?${n.toString()}`))}async function pi(e,t,r){let n=new URLSearchParams;t&&n.set("ref",t),r&&n.set("path",r);let s=n.toString()?`?${n.toString()}`:"",c=await le(),u=`${T().backendUrl||""}/projects/${e}/files/archive${s}`,d=await fetch(u,{method:"GET",headers:c?{Authorization:`Bearer ${c}`}:{}});if(!d.ok){let g=await d.text().catch(()=>"");throw new Error(g||`Failed to download (HTTP ${d.status})`)}return await d.blob()}async function di(e){return a(await o.get(`/projects/${e}/branches`))}async function gi(e,t){let r=new URLSearchParams;t?.ref&&r.set("ref",t.ref),t?.path&&r.set("path",t.path),t?.limit!=null&&r.set("limit",String(t.limit)),t?.skip!=null&&r.set("skip",String(t.skip));let n=r.toString()?`?${r.toString()}`:"";return a(await o.get(`/projects/${e}/commits${n}`))}async function mi(e,t){return a(await o.get(`/projects/${e}/commits/${encodeURIComponent(t)}`))}async function fi(e,t,r){let n=new URLSearchParams;r?.path&&n.set("path",r.path);let s=n.toString()?`?${n.toString()}`:"";return a(await o.get(`/projects/${e}/commits/${encodeURIComponent(t)}/diff${s}`))}async function yi(e,t,r){let n=new URLSearchParams({path:t});return r?.ref&&n.set("ref",r.ref),r?.limit!=null&&n.set("limit",String(r.limit)),r?.skip!=null&&n.set("skip",String(r.skip)),a(await o.get(`/projects/${e}/files/history?${n.toString()}`))}async function hi(e,t){let r=new URLSearchParams({from:t.from,into:t.into});return a(await o.get(`/projects/${e}/version-diff?${r.toString()}`))}async function bi(e,t){let r=t?`?status=${t}`:"";return a(await o.get(`/projects/${e}/change-requests${r}`,{showErrors:!1,timeout:15e3}))}async function xi(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}`))}async function ki(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}/diff`))}async function Pi(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}/merge-preview`))}async function wi(e,t){return a(await o.post(`/projects/${e}/change-requests`,t))}async function _i(e,t,r){return a(await o.post(`/projects/${e}/change-requests/${t}/merge`,r??{},{showErrors:!1}))}async function Si(e,t){return a(await o.post(`/projects/${e}/change-requests/${t}/close`,{}))}async function vi(e,t){return a(await o.post(`/projects/${e}/change-requests/${t}/reopen`,{}))}async function Ci(e,t,r){return a(await o.post(`/projects/${e}/change-requests/${t}/request-changes`,{feedback:r}))}async function Ri(e,t,r){return a(await o.post(`/projects/${e}/sessions/${t}/commit-push`,r??{}))}var Ti=new Set;function Ii(e){e&&Ti.add(e)}function ji(e){return!!e&&Ti.has(e)}function Up(e){e&&Ti.delete(e)}async function he(e){return a(await o.get(`/projects/${e}/sessions`))}async function Ai(e,t,r){return a(await o.put(`/projects/${e}/sessions/${t}/sharing`,r))}async function Ei(e,t){return a(await o.get(`/projects/${e}/sessions/${t}/previews`))}async function $i(e,t){return a(await o.get(`/projects/${e}/sessions/${t}/public-shares`,{showErrors:!1}))}async function qi(e,t,r){return a(await o.post(`/projects/${e}/sessions/${t}/public-shares`,r))}async function Di(e,t,r){return a(await o.delete(`/projects/${e}/sessions/${t}/public-shares/${r}`))}async function be(e,t){let r=a(await o.post(`/projects/${e}/sessions`,t??{}));return t?.initial_prompt||Ii(r?.session_id),r}async function Mi(e,t,r){return a(await o.get(`/projects/${e}/sessions/${t}`,{showErrors:r?.showErrors}))}async function Ui(e,t,r,n){let s=r?`?limit=${r}`:"";return a(await o.get(`/projects/${e}/sessions/${t}/audit${s}`,{showErrors:n?.showErrors}))}async function Oi(e,t,r){let n=new URLSearchParams;r?.limit!=null&&n.set("limit",String(r.limit)),r?.chars!=null&&n.set("chars",String(r.chars));let s=n.toString();return a(await o.get(`/projects/${e}/sessions/${t}/transcript${s?`?${s}`:""}`))}async function Li(e,t,r){return a(await o.patch(`/projects/${e}/sessions/${t}`,r))}async function Fi(e,t){return a(await o.delete(`/projects/${e}/sessions/${t}`))}async function De(e,t){return a(await o.post(`/projects/${e}/sessions/${t}/restart`,{}))}async function Me(e,t){return a(await o.post(`/projects/${e}/sessions/${t}/stop`,{}))}async function Gi(e){return a(await o.get(`/projects/${e}/triggers`))}async function Bi(e,t){return a(await o.post(`/projects/${e}/triggers`,t))}async function Ki(e,t,r){return a(await o.patch(`/projects/${e}/triggers/${t}`,r))}async function Ni(e,t){return a(await o.delete(`/projects/${e}/triggers/${t}`))}async function Hi(e,t){return a(await o.patch(`/projects/${e}/triggers/activation`,{paused:t}))}async function Wi(e,t){return a(await o.post(`/projects/${e}/triggers/${t}/fire`,{}))}var Y=new Map;function Vi(e,t){return`${e}::${t}`}function _c(e,t){Y.delete(e),Y.set(e,t)}function Sc(e,t){let r=Vi(e,t),n=Y.get(r);return n&&_c(r,n),n}function vc(e,t,r){let n=Vi(e,t);if(!Y.has(n)&&Y.size>=512){let s=Y.keys().next().value;s!==void 0&&Y.delete(s)}_c(n,r)}function Cc(e,t){Y.delete(Vi(e,t))}var bt=class extends Error{status;code;terminal;constructor(t,r){super(t),this.name="SessionStartError",this.status=r.status,this.code=r.code,this.terminal=r.terminal}};function Op(e){return e instanceof Error&&e.name==="SessionStartError"}function Lp(e){let t=e,r=t?.status,n=t?.code??t?.details?.code??t?.details?.error,s=t?.message||"Unable to start this session";return r&&r>=400&&r<500&&r!==408&&r!==429?new bt(s,{status:r,code:n,terminal:!0}):null}async function xe(e,t,r){let n=r&&r>0?`?wait_ms=${Math.floor(r)}`:"",s=await o.post(`/projects/${e}/sessions/${t}/start${n}`,{},{showErrors:!1});if(!s.success||!s.data){let d=Lp(s.error);if(d&&!(d.status===404&&ji(t)))throw d;return null}let c=s.data,u=c.sandbox?.external_id;return c.stage==="ready"&&u&&c.opencode_session_id&&vc(e,t,{opencodeSessionId:c.opencode_session_id,runtimeUrl:rt(u),sandboxId:u}),c}function Fp(e,t){return["session-start",e,t]}async function zi(e){return a(await o.get(`/projects/${e}/model-defaults`))}async function Ji(e,t){return a(await o.put(`/projects/${e}/model-defaults`,t))}async function Xi(e,t){let r=new URLSearchParams({scope:t.scope,...t.agentName?{agentName:t.agentName}:{}}).toString();return a(await o.delete(`/projects/${e}/model-defaults?${r}`))}async function Qi(e,t,r){return a(await o.put(`/projects/${e}/agents/${encodeURIComponent(t)}/scope`,r))}async function Gp(e,t){return a(await o.get(`/projects/${e}/agents/${encodeURIComponent(t)}/config`))}async function Bp(e,t,r){return a(await o.put(`/projects/${e}/agents/${encodeURIComponent(t)}/config`,r))}async function Yi(e,t){return a(await o.put(`/projects/${e}/default-agent`,{agent:t}))}function Zi(){return{credits:{total:0,daily:0,monthly:0,extra:0,can_run:!1,daily_refresh:null},subscription:{tier_key:"none",tier_display_name:"No Plan",status:"no_subscription",billing_period:null,provider:"stripe",subscription_id:null,current_period_end:null,cancel_at_period_end:!1,is_cancelled:!1,cancellation_effective_date:null,has_scheduled_change:!1,scheduled_change:null,commitment:{has_commitment:!1,can_cancel:!0,commitment_type:null,months_remaining:null,commitment_end_date:null},can_purchase_credits:!1},models:[],limits:{concurrent_runs:{running_count:0,limit:0,can_start:!1,tier_name:"none"},ai_worker_count:{current_count:0,limit:0,can_create:!1,tier_name:"none"},custom_mcp_count:{current_count:0,limit:0,can_create:!1,tier_name:"none"}},tier:{name:"none",display_name:"No Plan",monthly_credits:0,can_purchase_credits:!1}}}async function eo(e){let t=new URLSearchParams;e?.skipCache&&t.set("skip_cache","true"),e?.accountId&&t.set("account_id",e.accountId);let r=t.toString(),n=r?`?${r}`:"",s=await o.get(`/billing/account-state${n}`,{showErrors:!1}),c=s.error?.status===404&&/billing is not enabled/i.test(s.error.message||"");if(s.error&&s.error.status!==401&&!c)throw s.error;return s.error?Zi():s.data}async function to(e){let t=new URLSearchParams;e?.skipCache&&t.set("skip_cache","true"),e?.accountId&&t.set("account_id",e.accountId);let r=t.toString(),n=r?`?${r}`:"",s=await o.get(`/billing/account-state/minimal${n}`,{showErrors:!1}),c=s.error?.status===404&&/billing is not enabled/i.test(s.error.message||"");if(s.error&&s.error.status!==401&&!c)throw s.error;return s.error?Zi():s.data}async function ro(e){let t=new URLSearchParams;e?.accountId&&t.set("account_id",e.accountId),e?.limit!=null&&t.set("limit",String(e.limit)),e?.offset!=null&&t.set("offset",String(e.offset)),e?.typeFilter&&t.set("type_filter",Array.isArray(e.typeFilter)?e.typeFilter.join(","):e.typeFilter);let r=t.toString();return a(await o.get(`/billing/transactions${r?`?${r}`:""}`))}async function no(e){let t=new URLSearchParams;e?.accountId&&t.set("account_id",e.accountId),e?.days!=null&&t.set("days",String(e.days));let r=t.toString();return a(await o.get(`/billing/transactions/summary${r?`?${r}`:""}`))}async function so(){return a(await o.get("/billing/credit-breakdown"))}async function io(e){let t=e!=null?`?days=${e}`:"";return a(await o.get(`/billing/usage-history${t}`))}async function oo(){return a(await o.get("/billing/tier-configurations"))}async function Kp(e){let t=e.accountId?`?account_id=${encodeURIComponent(e.accountId)}`:"";return ye(e,`/v1/billing/account-state${t}`)}async function ao(e){return a(await o.post("/billing/create-checkout-session",{account_id:e.accountId,tier_key:e.tierKey,success_url:e.successUrl,cancel_url:e.cancelUrl,commitment_type:e.commitmentType,locale:e.locale,server_type:e.serverType,location:e.location}),"Failed to create checkout session")}async function co(e,t){return a(await o.post("/billing/confirm-checkout-session",{account_id:t,session_id:e}),"Failed to confirm checkout session")}async function lo(e,t){return a(await o.post("/billing/create-portal-session",{account_id:t,return_url:e}),"Failed to create portal session")}async function uo(e,t){return a(await o.post("/billing/cancel-subscription",{account_id:t,feedback:e}),"Failed to cancel subscription")}async function po(e){return a(await o.post("/billing/reactivate-subscription",{account_id:e}),"Failed to reactivate subscription")}async function go(e,t,r){return a(await o.post("/billing/schedule-downgrade",{account_id:r,target_tier_key:e,commitment_type:t}),"Failed to schedule downgrade")}async function mo(e){return a(await o.post("/billing/cancel-scheduled-change",{account_id:e}),"Failed to cancel scheduled change")}async function fo(e,t){let r=new URLSearchParams({new_price_id:e});return t&&r.set("account_id",t),a(await o.get(`/billing/proration-preview?${r.toString()}`),"Failed to load proration preview")}async function yo(e){return a(await o.post("/billing/purchase-credits",{amount:e.amount,account_id:e.accountId,success_url:e.successUrl,cancel_url:e.cancelUrl}),"Failed to purchase credits")}async function ho(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return a(await o.get(`/billing/auto-topup/settings${t}`),"Failed to load auto-topup settings")}async function bo(e){return a(await o.post("/billing/auto-topup/configure",{account_id:e.accountId,enabled:e.enabled,threshold:e.threshold,amount:e.amount}),"Failed to configure auto-topup")}async function xo(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/slack/installation`,{showErrors:!1});return t.success?t.data??null:null}async function ko(e,t){return a(await o.post(`/projects/${encodeURIComponent(e)}/channels/slack/connect`,t,{showErrors:!1}),"Failed to connect")}var Np={oauth_available:!1,install_url:null};async function Po(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/slack/mode`,{showErrors:!1});return!t.success||!t.data?Np:t.data}async function wo(e){return a(await o.get(`/webhooks/slack/${encodeURIComponent(e)}/manifest`,{showErrors:!1}),"Failed to load Slack manifest")}async function _o(e){let t=await o.delete(`/projects/${encodeURIComponent(e)}/channels/slack/installation`,{showErrors:!1});if(!t.success)throw new Error(t.error?.message??"Failed to disconnect")}async function So(e,t){return a(await o.get(`/projects/${encodeURIComponent(e)}/channels/slack/file?url=${encodeURIComponent(t)}`,{showErrors:!1}),"Failed to download Slack file")}async function vo(e,t){return a(await o.post(`/projects/${encodeURIComponent(e)}/channels/slack/file/upload`,{channel:t.channel,filename:t.filename,content_base64:t.contentBase64,comment:t.comment,thread_ts:t.threadTs},{showErrors:!1}),"Failed to upload Slack file")}function Co(e){return{...e,profileId:e.profileId??e.profile_id??null}}var Hp={provider:"agentmail",managed_available:!1};async function Ro(e,t){let r=t?`?connector_slug=${encodeURIComponent(t)}`:"",n=await o.get(`/projects/${encodeURIComponent(e)}/channels/email/installation${r}`,{showErrors:!1});return n.success&&n.data?Co(n.data):null}async function To(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/email/mode`,{showErrors:!1});return!t.success||!t.data?Hp:t.data}async function Io(e,t){let r=a(await o.post(`/projects/${encodeURIComponent(e)}/channels/email/connect`,t,{showErrors:!1}),"Failed to connect email");return Co(r)}async function jo(e,t){let r=t?`?connector_slug=${encodeURIComponent(t)}`:"",n=await o.delete(`/projects/${encodeURIComponent(e)}/channels/email/installation${r}`,{showErrors:!1});if(!n.success)throw new Error(n.error?.message??"Failed to disconnect email")}async function Ao(e,t,r){let n=a(await o.patch(`/projects/${encodeURIComponent(e)}/channels/email/installation`,{connector_slug:t??"kortix_email",sender_policy:r},{showErrors:!1}),"Failed to update email policy");return Co(n)}async function Eo(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/meet/voices`,{showErrors:!1});return t.success?t.data??null:null}async function $o(e,t){return a(await o.put(`/projects/${encodeURIComponent(e)}/channels/meet/voice`,{voice:t},{showErrors:!1}),"Failed to save voice")}async function qo(e,t){return a(await o.put(`/projects/${encodeURIComponent(e)}/channels/meet/name`,{name:t},{showErrors:!1}),"Failed to save name")}async function Do(e,t){let r=await o.post(`/projects/${encodeURIComponent(e)}/channels/meet/voices/${encodeURIComponent(t)}/preview`,{},{showErrors:!1});return!r.success||!r.data?.b64?null:r.data.b64}async function Wp(e){return a(await o.get(`/projects/${encodeURIComponent(e)}/channels/bindings`,{showErrors:!1}),"Failed to load channel bindings")}async function Vp(e,t,r){return a(await o.patch(`/projects/${encodeURIComponent(e)}/channels/bindings/${encodeURIComponent(t)}`,r,{showErrors:!1}),"Failed to update channel binding")}async function Mo(e,t,r,n){return a(await o.post(`/projects/${encodeURIComponent(e)}/channels/meet/speak`,{bot_id:t,text:r,voice:n},{showErrors:!1}),"Failed to speak in meeting")}async function Uo(e){return a(await o.get(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Oo(e,t){return a(await o.put(`/projects/${e}/gateway/routing-policy`,t),"Gateway routing policy request failed")}async function Lo(e){return a(await o.delete(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Fo(e,t){return a(await o.post(`/projects/${e}/gateway/routing-policy/preview`,t),"Gateway route preview failed")}async function Go(e,t){let r=new URLSearchParams;t?.limit&&r.set("limit",String(t.limit)),t?.offset&&r.set("offset",String(t.offset)),t?.ok!==void 0&&r.set("ok",String(t.ok));let n=r.toString();return a(await o.get(`/projects/${e}/gateway/logs${n?`?${n}`:""}`),"Gateway request failed")}async function Bo(e,t){return a(await o.get(`/projects/${e}/gateway/logs/${t}`),"Gateway request failed")}async function Ko(e,t){return a(await o.get(`/projects/${e}/gateway/overview${t?`?days=${t}`:""}`),"Gateway request failed")}async function No(e,t){return a(await o.get(`/projects/${e}/gateway/series${t?`?days=${t}`:""}`),"Gateway request failed")}async function Ho(e,t){return a(await o.get(`/projects/${e}/gateway/breakdown${t?`?days=${t}`:""}`),"Gateway request failed")}async function Wo(e,t){return a(await o.get(`/projects/${e}/gateway/sessions${t?`?days=${t}`:""}`),"Gateway request failed")}async function Vo(e,t){return a(await o.get(`/projects/${e}/gateway/errors${t?`?days=${t}`:""}`),"Gateway request failed")}async function zo(e){return a(await o.get(`/projects/${e}/gateway/budgets`),"Gateway request failed")}async function Jo(e,t){return a(await o.put(`/projects/${e}/gateway/budgets`,t),"Gateway request failed")}async function Xo(e,t){return a(await o.delete(`/projects/${e}/gateway/budgets/${t}`),"Gateway request failed")}async function Qo(e){return a(await o.get(`/projects/${e}/gateway/keys`),"Gateway request failed")}async function Yo(e,t){return a(await o.post(`/projects/${e}/gateway/keys`,{name:t}),"Gateway request failed")}async function Zo(e,t){return a(await o.delete(`/projects/${e}/gateway/keys/${t}`),"Gateway request failed")}async function ea(e,t,r){return a(await o.post(`/projects/${e}/gateway/playground`,{prompt:t,models:r}),"Gateway request failed")}async function ta(e){let t=new FormData;t.append("audio_file",e);let r=await o.upload("/transcription",t,{showErrors:!0});if(r.error)throw new Error(`Error transcribing audio: ${r.error.message} (${r.error.status})`);return r.data}async function ra(e,t){let r=new URLSearchParams;t?.segment&&r.set("segment",t.segment),t?.kind&&r.set("kind",t.kind);let n=r.toString();return a(await o.get(`/projects/${e}/review/items${n?`?${n}`:""}`,{showErrors:!1}))}async function na(e,t){return a(await o.get(`/projects/${e}/review/items/${t}`))}async function sa(e,t){return a(await o.post(`/projects/${e}/review/items`,t))}async function ia(e,t,r){return a(await o.post(`/projects/${e}/review/items/${t}/act`,r))}async function oa(e,t){return a(await o.post(`/projects/${e}/review/bulk`,t))}async function aa(e){return a(await o.get(`/p/share?sandbox_id=${encodeURIComponent(e)}`),"Failed to load public links").shares??[]}async function ca(e){return a(await o.post("/p/share",{sandbox_id:e.sandboxId,port:e.port,ttl:e.ttl,label:e.label}),"Failed to generate public URL")}async function la(e,t){let r=await o.delete(`/p/share/${encodeURIComponent(t)}?sandbox_id=${encodeURIComponent(e)}`);if(!r.success)throw new Error(r.error?.message??"Failed to revoke public link")}var xt=class extends Error{constructor(r,n){super(r);this.status=n;this.name="PublicSessionShareError"}status};function Rc(e,t=""){return`${Ae()}/public/session-shares/${encodeURIComponent(e)}${t}`}async function Tc(e){let t=await fetch(e,{method:"GET",headers:{Accept:"application/json"}}),r=await t.text().catch(()=>""),n=null;try{n=r?JSON.parse(r):null}catch{}if(!t.ok){let s=(n&&typeof n=="object"&&"error"in n&&typeof n.error=="string"?n.error:null)||t.statusText||`HTTP ${t.status}`;throw new xt(s,t.status)}return n}async function zp(e){return Tc(Rc(e))}async function Jp(e){return Tc(Rc(e,"/messages"))}async function ua(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return a(await o.get(`/accounts/tokens${t}`))}async function pa(e){let{accountId:t,expiresAt:r,projectId:n,name:s}=e;return a(await o.post("/accounts/tokens",{name:s,...t?{account_id:t}:{},...r?{expires_at:r}:{},...n?{project_id:n}:{}}))}async function da(e,t){let r=t?`?account_id=${encodeURIComponent(t)}`:"";return a(await o.delete(`/accounts/tokens/${e}${r}`))}async function ga(e){return a(await o.get(`/projects/${e}/cli-token`))}async function ma(e,t){return a(await o.post(`/projects/${e}/cli-token`,t??{}))}async function fa(e,t){return a(await o.delete(`/projects/${e}/cli-token/${t}`))}async function ya(e,t){let r=new URLSearchParams;t?.action&&r.set("action",t.action),t?.since&&r.set("since",t.since),t?.cursor&&r.set("cursor",t.cursor),t?.limit!=null&&r.set("limit",String(t.limit));let n=r.toString();return a(await o.get(`/accounts/${e}/audit${n?`?${n}`:""}`))}async function ha(e,t){let r=new URLSearchParams;t?.format&&r.set("format",t.format),t?.action&&r.set("action",t.action),t?.since&&r.set("since",t.since);let n=r.toString();return a(await o.get(`/accounts/${e}/audit/export${n?`?${n}`:""}`))}async function ba(e){return a(await o.get(`/accounts/${e}/audit/webhooks`))}async function xa(e,t){return a(await o.post(`/accounts/${e}/audit/webhooks`,t))}async function ka(e,t,r){return a(await o.patch(`/accounts/${e}/audit/webhooks/${t}`,r))}async function Pa(e,t){return a(await o.delete(`/accounts/${e}/audit/webhooks/${t}`))}async function wa(e,t){return a(await o.post(`/projects/${e}/secret-requests`,{names:t.names,labels:t.labels,descriptions:t.descriptions,scope:t.scope,expires_in_minutes:t.expiresInMinutes}),"Failed to mint secret-entry link")}async function _a(e,t){return a(await o.post(`/projects/${e}/connect-requests`,{slug:t.slug,expires_in_minutes:t.expiresInMinutes}),"Failed to mint connect link")}async function Sa(e){let t=new URLSearchParams;e?.query&&t.set("query",e.query),e?.type&&t.set("type",e.type),e?.source&&t.set("source",e.source);let r=t.toString()?`?${t.toString()}`:"";return a(await o.get(`/marketplace/items${r}`))}async function va(){return a(await o.get("/marketplace/marketplaces"))}async function Ca(){return a(await o.get("/marketplace/marketplaces/featured"))}async function Ra(e){return a(await o.get(`/marketplace/items/${encodeURIComponent(e)}`),"Item not found")}async function Ta(e,t){return a(await o.get(`/marketplace/items/${encodeURIComponent(e)}/file?path=${encodeURIComponent(t)}`),"File not found")}async function Ia(){return a(await o.get("/marketplace/sources"))}async function ja(e){return a(await o.post("/marketplace/sources",e),"Failed to add marketplace source")}async function Aa(e){return a(await o.delete(`/marketplace/sources/${encodeURIComponent(e)}`),"Failed to remove marketplace source")}async function Xp(e){return a(await o.get(`/templates/${encodeURIComponent(e)}`))}async function Qp(e,t){return a(await o.post(`/templates/${encodeURIComponent(e)}/install`,t))}function Yp(e){return e?e.runtimeReady!==void 0?e.runtimeReady===!0:e.opencode!==void 0?e.opencode==="ok"||e.opencode===!0:e.status!=="starting"&&e.status!=="down"&&e.status!=="error":!1}async function Ea(e,t){let r=(e===void 0?$():e)||null;if(!r)return{status:0,ok:!1,health:null,body:""};let n=await R(`${r}/kortix/health`,{method:"GET",...t},{retryOnAuthError:!1}),s=await n.text().catch(()=>""),c=null;try{c=s?JSON.parse(s):null}catch{c=null}return{status:n.status,ok:n.ok,health:c,body:s}}var V={DESKTOP:"6080",DESKTOP_HTTPS:"6081",PRESENTATION_VIEWER:"3210",STATIC_FILE_SERVER:"3211",KORTIX_MASTER:"8000",BROWSER_STREAM:"9223",BROWSER_VIEWER:"9224",SSH:"22"};var Ic=/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s)"'<>]*/g,jc=/^https?:\/\/p(\d+)-([^.]+)\.localhost(?::(\d+))?(\/.*)?$/,Ac=new Set([22,4096,parseInt(V.KORTIX_MASTER,10)]);function Zp(e){return jc.test(e)}function kt(e){if(!e)return"/";let t=e,r=t.indexOf("](");r!==-1&&(t=t.slice(0,r));let n=t.toLowerCase().indexOf("%5d(");return n!==-1&&(t=t.slice(0,n)),t?t.startsWith("/")?t:`/${t}`:"/"}function ed(e){let t=e.indexOf("](");return t===-1?e:e.slice(0,t)}var td=new Set(["'",'"',"`","<","(","["]),rd=new Set([">","'",'"',"`",")","]",",",";",".","!","?"]);function nd(e){let t=0,r=e.length;for(;t<r&&(e[t]===" "||e[t]===" ");)t++;for(;r>t&&(e[r-1]===" "||e[r-1]===" ");)r--;for(;t<r&&td.has(e[t]);)t++;for(;r>t&&rd.has(e[r-1]);)r--;return e.slice(t,r)}function sd(e){return e.match(/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s"'<>)]*/i)?.[0]??null}var id=/^\/proxy\/(\d{1,5})(\/.*)?$/,od=/^\/(connectors|settings|dashboard|projects|agents|skills|tools|commands|support|changelog|files|p|browser|desktop|terminal|sessions|services|workspace|channels|scheduled-tasks|marketplace|templates|tunnel|admin|auth)(\/|$|\?)/;function Ec(e){if(!e)return!1;try{let t=new URL(e);return t.hostname!=="localhost"&&t.hostname!=="127.0.0.1"?!1:od.test(t.pathname)}catch{return!1}}function Oe(e){if(!e)return null;let t=nd(ed(e.trim())),r=qa(t);if(r){let n=kt(r.path||"/");return{originalUrl:`http://localhost:${r.port}${n}`,port:r.port,path:n}}try{let n=new URL(t);if(n.protocol!=="http:"&&n.protocol!=="https:"||n.hostname!=="localhost"&&n.hostname!=="127.0.0.1"||!n.port)return null;let s=parseInt(n.port,10);if(!Number.isInteger(s)||s<1||s>65535)return null;let c=`${n.pathname||"/"}${n.search}${n.hash}`,u=parseInt(V.KORTIX_MASTER,10);if(s===u){let g=n.pathname.match(id);if(g){let h=parseInt(g[1],10);if(h>=1&&h<=65535)return s=h,c=kt(`${g[2]||"/"}${n.search}${n.hash}`),{originalUrl:`http://localhost:${s}${c}`,port:s,path:c}}}let d=kt(c);return{originalUrl:`${n.protocol}//${n.hostname}:${s}${d}`,port:s,path:d}}catch{let n=sd(e);return n&&n!==e?Oe(n):null}}function ad(e){let t=[],r=/```[\s\S]*?```/g,n;for(;(n=r.exec(e))!==null;)t.push([n.index,n.index+n[0].length]);let s=/`[^`\n]+`/g;for(;(n=s.exec(e))!==null;){let c=n.index,u=c+n[0].length;t.some(([g,h])=>c>=g&&u<=h)||t.push([c,u])}return t}function cd(e,t){return t.some(([r,n])=>e>=r&&e<n)}function $c(e){let t=[],r=new Set,n=ad(e);Ic.lastIndex=0;let s;for(;(s=Ic.exec(e))!==null;){let c=Oe(s[0]);if(!c)continue;let{originalUrl:u,port:d,path:g}=c;d<1||d>65535||Ac.has(d)||r.has(u)||(r.add(u),t.push({originalUrl:u,port:d,path:g,startIndex:s.index,endIndex:s.index+u.length,inCodeBlock:cd(s.index,n)}))}return t}function ld(e){return $c(e).length>0}function ud(e){try{let{hostname:t}=new URL(e);return t==="localhost"||t==="127.0.0.1"}catch{return!1}}function ke(e,t,r){let n=kt(t);if(!ud(r.apiBaseUrl)){let s=r.apiBaseUrl.length;for(;s>0&&r.apiBaseUrl.charCodeAt(s-1)===47;)s--;return`${r.apiBaseUrl.slice(0,s)}/p/${r.sandboxId}/${e}${n}`}return`http://p${e}-${r.sandboxId}.localhost:${r.backendPort}${n}`}function pd(e,t){return ke(e,"/",t)}function qc(e){let t=Oe(e);return!(!t||Ac.has(t.port)||Ec(e))}function $a(e,t){if(!e)return e;let r=Oe(e);return r?qc(r.originalUrl)?ke(r.port,r.path,t):r.originalUrl:e}function dd(e,t="/"){return`http://localhost:${e}${t}`}var Dc=/^https?:\/\/[^/]+\/v1\/p\/([^/]+)\/(\d+)(\/.*)?$/;function qa(e){let t=e.match(jc);if(t)return{port:parseInt(t[1],10),sandboxId:t[2],backendPort:t[3]?parseInt(t[3],10):80,path:t[4]||"/"};let r=e.match(Dc);if(r)try{let n=new URL(e);return{port:parseInt(r[2],10),sandboxId:r[1],backendPort:parseInt(n.port,10)||(n.protocol==="https:"?443:80),path:r[3]||"/"}}catch{return null}return null}function gd(e){try{let t=qa(e);return t?`http://localhost:${t.port}${t.path}`:null}catch{return null}}function md(e){return Zp(e)||Dc.test(e)}var Ue="/web-proxy/";function fd(e,t){try{let r=new URL(e);if(r.protocol!=="http:"&&r.protocol!=="https:")return null;let n=r.protocol.replace(":",""),s=`${Ue}${n}/${r.host}${r.pathname}${r.search}${r.hash}`,c=parseInt(V.KORTIX_MASTER,10);return`${ke(c,"/",t).replace(/\/$/,"")}${s}`}catch{return null}}function yd(e){try{let t=new URL(e),r=t.pathname.indexOf(Ue);if(r===-1)return null;let s=t.pathname.slice(r+Ue.length).match(/^(https?)\/([\w.\-]+(?::\d+)?)(\/.*)?$/);if(!s)return null;let c=s[1],u=s[2],d=s[3]||"/";return`${c}://${u}${d}${t.search}${t.hash}`}catch{return null}}function hd(e){try{return new URL(e).pathname.includes(Ue)}catch{return e.includes(Ue)}}function bd(e){if(!e)return!1;let t=e.trim();return!!(/^https?:\/\/(?!localhost|127\.0\.0\.1)/i.test(t)||/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(t))}function xd(e){let t=e.trim();return t?/^https?:\/\//i.test(t)?t:/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(t)?`https://${t}`:null:null}var Mc="frontend";function Pt(e,t,r){(e==="error"?console.error:e==="warn"?console.warn:e==="debug"?console.debug:console.log)(`[${Mc}] ${t}`,...r?[r]:[]);try{X().app.log({service:Mc,level:e,message:t,extra:r})}catch{}}var Z={debug:(e,t)=>Pt("debug",e,t),info:(e,t)=>Pt("info",e,t),warn:(e,t)=>Pt("warn",e,t),error:(e,t)=>Pt("error",e,t)};function Uc(e){return{type:"heartbeat-gap",gapMs:e}}function Oc(e){switch(e.type){case"message.updated":return{type:"message.updated",sessionID:e.properties.sessionID,message:e.properties.info};case"message.removed":return{type:"message.removed",sessionID:e.properties.sessionID,messageID:e.properties.messageID};case"message.part.updated":return{type:"message.part.updated",sessionID:e.properties.sessionID,part:e.properties.part};case"message.part.removed":return{type:"message.part.removed",sessionID:e.properties.sessionID,messageID:e.properties.messageID,partID:e.properties.partID};case"session.status":return{type:"session.status",sessionID:e.properties.sessionID,status:e.properties.status};case"session.idle":return{type:"session.idle",sessionID:e.properties.sessionID};case"session.error":return{type:"session.error",sessionID:e.properties.sessionID,error:e.properties.error};case"question.asked":return{type:"question.asked",sessionID:e.properties.sessionID,requestID:e.properties.id,questions:e.properties.questions,tool:e.properties.tool};case"question.replied":return{type:"question.answered",sessionID:e.properties.sessionID,requestID:e.properties.requestID,outcome:"replied",answers:e.properties.answers};case"question.rejected":return{type:"question.answered",sessionID:e.properties.sessionID,requestID:e.properties.requestID,outcome:"rejected"};case"permission.asked":return{type:"permission.asked",sessionID:e.properties.sessionID,requestID:e.properties.id,permission:e.properties.permission,patterns:e.properties.patterns,tool:e.properties.tool};case"permission.replied":return{type:"permission.replied",sessionID:e.properties.sessionID,requestID:e.properties.requestID,reply:e.properties.reply};case"todo.updated":return{type:"todo.updated",sessionID:e.properties.sessionID,todos:e.properties.todos};case"server.connected":return{type:"connection",status:"connected"};default:return null}}var kd={now:()=>Date.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e)},Pd=16,wd=8,_d=6e4,Sd=5e3,vd=250,Cd=1e3,Rd=3e4,Td=5,Id=3e3,jd=3e4,Ad=2e4,Ed=2e3,$d=8;function qd(e){if(e.type==="session.status")return`session.status:${e.properties.sessionID}`;if(e.type==="lsp.updated")return"lsp.updated"}function Lc(e){if(e.aborted)return{promise:Promise.resolve(),cleanup:()=>{}};let t=()=>{};return{promise:new Promise(n=>{t=()=>n(),e.addEventListener("abort",t,{once:!0})}),cleanup:()=>e.removeEventListener("abort",t)}}function wt(e){let{client:t,onEvent:r,onGapRehydrate:n,onParked:s,signal:c}=e,u=e.timers??kd,d=e.connectTimeoutMs??Ad,g=e.heartbeatTimeoutMs??_d,h=e.maxConsecutiveHardFailures??$d,m=new AbortController,x=()=>m.abort();c&&(c.aborted?m.abort():c.addEventListener("abort",x,{once:!0}));let w=u.now(),k=[],l,i=0,P=new Map,_=()=>{if(l&&u.clearTimeout(l),l=void 0,k.length===0)return;let A=k;k=[],P.clear(),i=u.now(),w=u.now();for(let v of A)if(v)try{r(v.event)}catch(I){console.warn("[opencode-events] event handler threw, skipping",I)}},D=()=>{if(l)return;let A=u.now()-i;l=u.setTimeout(_,Math.max(0,Pd-A))};return(async()=>{let A=0,v=0;for(;!m.signal.aborted;){let I=!1,j=!1,f,S,U=null,N=u.now(),M=new AbortController,O=Lc(m.signal);O.promise.then(()=>M.abort());try{let F=await new Promise((Et,ve)=>{let G=!1;S=u.setTimeout(()=>{G||(G=!0,Z.warn("SSE connect timed out, forcing reconnect",{connectTimeoutMs:d}),M.abort(),ve(new Error(`SSE connect timed out after ${d}ms`)))},d),t.global.event({signal:M.signal,sseDefaultRetryDelay:Id,sseMaxRetryDelay:jd,sseMaxRetryAttempts:1}).then(W=>{G||(G=!0,u.clearTimeout(S),Et(W))},W=>{G||(G=!0,u.clearTimeout(S),ve(W))})}),{stream:E}=F;w=u.now();let B=()=>{u.clearTimeout(f),f=u.setTimeout(()=>{Z.warn("SSE heartbeat timeout, forcing reconnect"),M.abort()},g)};B();let We=u.now(),Pl=E[Symbol.asyncIterator]();for(;!M.signal.aborted;){let Et=Pl.next().then(J=>({kind:"next",result:J}),J=>({kind:"error",error:J})),ve=Lc(M.signal),G=await Promise.race([Et,ve.promise.then(()=>({kind:"aborted"}))]);if(ve.cleanup(),G.kind==="aborted")break;if(G.kind==="error")throw G.error;if(G.result.done)break;I=!0,B();let W=G.result.value,Ve=W&&typeof W=="object"&&"payload"in W?W.payload:W;if(!Ve?.type)continue;let $t=qd(Ve);if($t){let J=P.get($t);J!==void 0&&(k[J]=void 0),P.set($t,k.length)}k.push({type:Ve.type,event:Ve}),D(),!(u.now()-We<wd)&&(We=u.now(),await new Promise(J=>u.setTimeout(J,0)))}j=I}catch(F){if(m.signal.aborted)break;U=F;let E=String(F),B=E.includes("401")||E.includes("403")||E.includes("Unauthorized")||E.includes("Token refresh failed");if(Z.error("SSE event stream error",{error:E,retryCount:A,isAuthError:B}),B)try{Ie(),await tt(),Z.info("SSE: refreshed auth token after auth error")}catch(We){Z.error("SSE: failed to refresh auth token",{error:String(We)})}}finally{u.clearTimeout(f),u.clearTimeout(S),M.abort(),O.cleanup(),_()}if(m.signal.aborted)break;let ae=u.now()-N,He=U?.cause?.status;if(v=!I&&(typeof He=="number"&&He>=400||ae<Ed)?v+1:0,v>=h){Z.error("SSE event stream parked \u2014 giving up after consecutive hard failures",{consecutiveFailures:v,lastError:String(U)});try{s?.({consecutiveFailures:v,lastError:U})}catch(F){console.warn("[opencode-events] onParked handler threw",F)}break}let Se=u.now()-w;Se>Sd&&n?.(Se),j?A=0:(A++,A>1&&Z.warn("SSE event stream reconnecting",{retryCount:A}));let H=j?vd:Math.min(Cd*2**Math.min(A-1,Td),Rd);await new Promise(F=>{let E=u.setTimeout(F,H),B=()=>{u.clearTimeout(E),F()};m.signal.addEventListener("abort",B,{once:!0})})}})(),{close:()=>{m.abort(),c&&c.removeEventListener("abort",x),l&&u.clearTimeout(l)}}}function Dd(){return X()}var _t=new Map,Le=class extends Error{constructor(t){super(`Session runtime not ready \u2014 call \`await session.ensureReady()\` (it drives \`start()\` to completion and resolves this session's own sandbox runtime) before calling \`${t}\`.`),this.name="SessionNotReadyError"}};function Fc(e,t){Je(e,t);function r(l){try{return new URL(l)}catch{if(typeof window<"u"&&window.location?.origin)try{return new URL(l,window.location.origin)}catch{return null}throw new C(`Kortix SDK: backendUrl must be an absolute URL outside the browser (got ${JSON.stringify(l)}). Relative paths like "/api/kortix" only resolve against a page origin \u2014 configure an absolute backendUrl for server-side hosts.`,{code:"INVALID_BACKEND_URL"})}}function n(l){let i=T().backendUrl??e.backendUrl,P=80,_=r(i);return _&&(P=_.port?Number(_.port):_.protocol==="https:"?443:80),{sandboxId:l,backendPort:P,apiBaseUrl:i}}let s={list:Sn,get:Cn,create:vn,updateName:Rn,leave:On,members:Tn,invite:In,removeMember:Mn,updateMemberRole:Un,invites:jn,cancelInvite:An,resendInvite:En,tokens:{list:ua,create:pa,revoke:da},audit:{log:ya,export:ha,webhooks:{list:ba,create:xa,update:ka,remove:Pa}}},c={accountState:eo,accountStateMinimal:to,transactions:ro,transactionsSummary:no,creditBreakdown:so,usageHistory:io,tierConfigurations:oo,checkout:{createSession:l=>ao(l),confirmSession:(l,i)=>co(l,i)},subscription:{createPortalSession:(l,i)=>lo(l,i),cancel:(l,i)=>uo(l,i),reactivate:l=>po(l),scheduleDowngrade:(l,i,P)=>go(l,i,P),cancelScheduledChange:l=>mo(l),prorationPreview:(l,i)=>fo(l,i)},credits:{purchase:l=>yo(l),autoTopupSettings:l=>ho(l),configureAutoTopup:l=>bo(l)}},u={describe:$n,accept:qn,decline:Dn},d={list:ie,listForAccount:Fn,get:pt,detail:dt,create:Nn,createRepo:Hn,provision:Wn,update:ft,archive:yt,llmCatalog:gt,modelPicker:mt,sandboxHealth:ht,sandboxTemplates:Zs,sessions:he,createSession:be},g={linkRepository:Xn,getInstallation:Qn,listInstallations:Yn,listRepositories:Zn,listRepositoryBranches:es,saveInstallation:ts,deleteInstallation:rs},h={list:aa,create:ca,revoke:la},m=zs,x={items:l=>Sa(l),item:l=>Ra(l),itemFile:(l,i)=>Ta(l,i),marketplaces:()=>va(),featured:()=>Ca(),sources:{list:()=>Ia(),add:l=>ja(l),remove:l=>Aa(l)}};function w(l){return{get:i=>pt(l,i),detail:()=>dt(l),update:i=>ft(l,i),archive:()=>yt(l),llmCatalog:()=>gt(l),modelPicker:()=>mt(l),sandboxHealth:()=>ht(l),onboardingComplete:(...i)=>Jn(l,...i),tokens:{list:()=>ga(l),create:i=>ma(l,i),revoke:i=>fa(l,i)},setupLinks:{requestSecret:i=>wa(l,i),requestConnector:i=>_a(l,i)},validateManifest:i=>Bn(l,i),gitToken:()=>Kn(l),secrets:{list:()=>_s(l),upsert:i=>Ss(l,i),remove:i=>Ts(l,i),setPersonal:(...i)=>Is(l,...i),removePersonal:i=>js(l,i),setGitCredential:i=>Rs(l,i),startProviderOAuth:(...i)=>vs(l,...i),pollProviderOAuth:(...i)=>Cs(l,...i)},access:{list:()=>os(l),invite:(...i)=>ls(l,...i),update:(...i)=>as(l,...i),revoke:i=>cs(l,i),pendingInvites:()=>us(l),resendInvite:(...i)=>ds(l,...i),revokeInvite:(...i)=>ps(l,...i),requests:()=>ns(l),approveRequest:(...i)=>ss(l,...i),rejectRequest:(...i)=>is(l,...i),groupGrants:()=>gs(l),attachGroupGrant:(...i)=>ms(l,...i),updateGroupGrant:(...i)=>fs(l,...i),detachGroupGrant:i=>ys(l,i),resourceGrants:{list:()=>hs(l),create:i=>bs(l,i),remove:i=>xs(l,i)}},connectors:{list:()=>Ms(l),config:(...i)=>Bs(l,...i),create:(...i)=>Hs(l,...i),remove:(...i)=>Ws(l,...i),sync:()=>Us(l),setName:(...i)=>Ks(l,...i),setCredentialMode:(...i)=>Os(l,...i),setCredential:(...i)=>Js(l,...i),setSensitive:(...i)=>Ls(l,...i),profiles:{list:()=>As(l),reconcile:(...i)=>Es(l,...i),updateCredential:(...i)=>$s(l,...i),revoke:(...i)=>qs(l,...i),activate:(...i)=>Ds(l,...i)},policies:{get:(...i)=>Fs(l,...i),set:(...i)=>Gs(l,...i)},pipedream:{listApps:(...i)=>Vs(l,...i),connect:(...i)=>Ns(l,...i),finalize:(...i)=>Xs(l,...i)}},policies:{list:()=>Qs(l),set:(...i)=>Ys(l,...i)},triggers:{list:()=>Gi(l),create:(...i)=>Bi(l,...i),update:(...i)=>Ki(l,...i),remove:(...i)=>Ni(l,...i),fire:(...i)=>Wi(l,...i),setActivation:(...i)=>Hi(l,...i)},files:{list:i=>ci(l,i),read:(i,P)=>ui(l,i,P),search:(...i)=>li(l,...i),archive:(...i)=>pi(l,...i),history:(...i)=>yi(l,...i)},git:{commits:()=>gi(l),commit:i=>mi(l,i),commitDiff:i=>fi(l,i),branches:()=>di(l),versionDiff:(...i)=>hi(l,...i),inviteCollaborator:(...i)=>Gn(l,...i)},changeRequests:{list:()=>bi(l),get:i=>xi(l,i),diff:i=>ki(l,i),mergePreview:i=>Pi(l,i),open:(...i)=>wi(l,...i),merge:(...i)=>_i(l,...i),close:(...i)=>Si(l,...i),reopen:(...i)=>vi(l,...i),requestChanges:(...i)=>Ci(l,...i)},sessions:{list:()=>he(l),create:i=>be(l,i)},review:{list:i=>ra(l,i),get:i=>na(l,i),submit:i=>sa(l,i),act:(...i)=>ia(l,...i),bulkAct:i=>oa(l,i)},approvals:{list:i=>ks(l,i),resolve:(...i)=>ws(l,...i),sessionsNeedingInput:i=>Ps(l,i)},gateway:{logs:i=>Go(l,i),log:i=>Bo(l,i),overview:i=>Ko(l,i),series:i=>No(l,i),breakdown:i=>Ho(l,i),sessions:i=>Wo(l,i),errors:i=>Vo(l,i),budgets:()=>zo(l),setBudget:i=>Jo(l,i),deleteBudget:i=>Xo(l,i),keys:()=>Qo(l),createKey:i=>Yo(l,i),revokeKey:i=>Zo(l,i),routing:{get:()=>Uo(l),set:i=>Oo(l,i),reset:()=>Lo(l),preview:i=>Fo(l,i)},playground:(i,P)=>ea(l,i,P)},channels:{slack:{installation:()=>xo(l),connect:i=>ko(l,i),mode:()=>Po(l),manifest:()=>wo(l),disconnect:()=>_o(l),getFile:i=>So(l,i),uploadFile:i=>vo(l,i)},email:{installation:i=>Ro(l,i),mode:()=>To(l),connect:i=>Io(l,i),disconnect:i=>jo(l,i),updatePolicy:(...i)=>Ao(l,...i)},meet:{voices:()=>Eo(l),setVoice:i=>$o(l,i),setBotName:i=>qo(l,i),previewVoice:i=>Do(l,i),speak:(i,P,_)=>Mo(l,i,P,_)}},updateExperimentalFeature:(...i)=>Vn(l,...i),modelDefaults:{get:()=>zi(l),set:i=>Ji(l,i),clear:i=>Xi(l,i)},setDefaultAgent:i=>Yi(l,i),sandbox:{list:()=>ai(l),snapshots:()=>ei(l),rebuildSnapshot:i=>ti(l,i),fixWithAgent:()=>ri(l),createTemplate:i=>ni(l,i),updateTemplate:(...i)=>si(l,...i),removeTemplate:i=>ii(l,i),buildTemplate:i=>oi(l,i),setProvider:i=>zn(l,i)},setAgentScope:(...i)=>Qi(l,...i),session:i=>k(l,i)}}function k(l,i){let P=null,_,D;function A(){if(P)return P;let f=Sc(l,i);return f&&(P=f),P}async function v(){let f=A();if(f)return f;let S=`${l}
|
|
8
|
-
${i}`,U=
|
|
5
|
+
`);S=O.pop()??"";for(let ce of O){let Ve=ce.split(`
|
|
6
|
+
`),Se=[],ve;for(let E of Ve)if(E.startsWith("data:"))Se.push(E.replace(/^data:\s*/,""));else if(E.startsWith("event:"))ve=E.replace(/^event:\s*/,"");else if(E.startsWith("id:"))x=E.replace(/^id:\s*/,"");else if(E.startsWith("retry:")){let B=Number.parseInt(E.replace(/^retry:\s*/,""),10);Number.isNaN(B)||(i=B)}let H,F=!1;if(Se.length){let E=Se.join(`
|
|
7
|
+
`);try{H=JSON.parse(E),F=!0}catch{H=E}}F&&(s&&await s(H),n&&(H=await n(H))),r?.({data:H,event:ve,id:x,retry:i}),Se.length&&(yield H)}}}finally{_.removeEventListener("abort",U),f.releaseLock()}break}catch(A){if(t?.(A),u!==void 0&&P>=u)break;let v=Math.min(i*2**(P-1),d??3e4);await w(v)}}}()}};var Ml=e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},Ul=e=>{switch(e){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},Ol=e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},Ze=({allowReserved:e,explode:t,name:r,style:n,value:s})=>{if(!t){let d=(e?s:s.map(g=>encodeURIComponent(g))).join(Ul(n));switch(n){case"label":return`.${d}`;case"matrix":return`;${r}=${d}`;case"simple":return d;default:return`${r}=${d}`}}let c=Ml(n),u=s.map(d=>n==="label"||n==="simple"?e?d:encodeURIComponent(d):le({allowReserved:e,name:r,value:d})).join(c);return n==="label"||n==="matrix"?c+u:u},le=({allowReserved:e,name:t,value:r})=>{if(r==null)return"";if(typeof r=="object")throw new Error("Deeply-nested arrays/objects aren\u2019t supported. Provide your own `querySerializer()` to handle these.");return`${t}=${e?r:encodeURIComponent(r)}`},et=({allowReserved:e,explode:t,name:r,style:n,value:s,valueOnly:c})=>{if(s instanceof Date)return c?s.toISOString():`${r}=${s.toISOString()}`;if(n!=="deepObject"&&!t){let g=[];Object.entries(s).forEach(([m,x])=>{g=[...g,m,e?x:encodeURIComponent(x)]});let h=g.join(",");switch(n){case"form":return`${r}=${h}`;case"label":return`.${h}`;case"matrix":return`;${r}=${h}`;default:return h}}let u=Ol(n),d=Object.entries(s).map(([g,h])=>le({allowReserved:e,name:n==="deepObject"?`${r}[${g}]`:g,value:h})).join(u);return n==="label"||n==="matrix"?u+d:d};var Ll=/\{[^{}]+\}/g,Fl=({path:e,url:t})=>{let r=t,n=t.match(Ll);if(n)for(let s of n){let c=!1,u=s.substring(1,s.length-1),d="simple";u.endsWith("*")&&(c=!0,u=u.substring(0,u.length-1)),u.startsWith(".")?(u=u.substring(1),d="label"):u.startsWith(";")&&(u=u.substring(1),d="matrix");let g=e[u];if(g==null)continue;if(Array.isArray(g)){r=r.replace(s,Ze({explode:c,name:u,style:d,value:g}));continue}if(typeof g=="object"){r=r.replace(s,et({explode:c,name:u,style:d,value:g,valueOnly:!0}));continue}if(d==="matrix"){r=r.replace(s,`;${le({name:u,value:g})}`);continue}let h=encodeURIComponent(d==="label"?`.${g}`:g);r=r.replace(s,h)}return r},Qa=({baseUrl:e,path:t,query:r,querySerializer:n,url:s})=>{let c=s.startsWith("/")?s:`/${s}`,u=(e??"")+c;t&&(u=Fl({path:t,url:u}));let d=r?n(r):"";return d.startsWith("?")&&(d=d.substring(1)),d&&(u+=`?${d}`),u};function Ut(e){let t=e.body!==void 0;if(t&&e.bodySerializer)return"serializedBody"in e?e.serializedBody!==void 0&&e.serializedBody!==""?e.serializedBody:null:e.body!==""?e.body:null;if(t)return e.body}var Ya=async(e,t)=>{let r=typeof t=="function"?await t(e):t;if(r)return e.scheme==="bearer"?`Bearer ${r}`:e.scheme==="basic"?`Basic ${btoa(r)}`:r};var Ot={bodySerializer:e=>JSON.stringify(e,(t,r)=>typeof r=="bigint"?r.toString():r)};var Za=({parameters:e={},...t}={})=>n=>{let s=[];if(n&&typeof n=="object")for(let c in n){let u=n[c];if(u==null)continue;let d=e[c]||t;if(Array.isArray(u)){let g=Ze({allowReserved:d.allowReserved,explode:!0,name:c,style:"form",value:u,...d.array});g&&s.push(g)}else if(typeof u=="object"){let g=et({allowReserved:d.allowReserved,explode:!0,name:c,style:"deepObject",value:u,...d.object});g&&s.push(g)}else{let g=le({allowReserved:d.allowReserved,name:c,value:u});g&&s.push(g)}}return s.join("&")},ec=e=>{if(!e)return"stream";let t=e.split(";")[0]?.trim();if(t){if(t.startsWith("application/json")||t.endsWith("+json"))return"json";if(t==="multipart/form-data")return"formData";if(["application/","audio/","image/","video/"].some(r=>t.startsWith(r)))return"blob";if(t.startsWith("text/"))return"text"}},Gl=(e,t)=>t?!!(e.headers.has(t)||e.query?.[t]||e.headers.get("Cookie")?.includes(`${t}=`)):!1,tc=async({security:e,...t})=>{for(let r of e){if(Gl(t,r.name))continue;let n=await Ya(r,t.auth);if(!n)continue;let s=r.name??"Authorization";switch(r.in){case"query":t.query||(t.query={}),t.query[s]=n;break;case"cookie":t.headers.append("Cookie",`${s}=${n}`);break;default:t.headers.set(s,n);break}}},Lt=e=>Qa({baseUrl:e.baseUrl,path:e.path,query:e.query,querySerializer:typeof e.querySerializer=="function"?e.querySerializer:Za(e.querySerializer),url:e.url}),Ft=(e,t)=>{let r={...e,...t};return r.baseUrl?.endsWith("/")&&(r.baseUrl=r.baseUrl.substring(0,r.baseUrl.length-1)),r.headers=tt(e.headers,t.headers),r},Bl=e=>{let t=[];return e.forEach((r,n)=>{t.push([n,r])}),t},tt=(...e)=>{let t=new Headers;for(let r of e){if(!r)continue;let n=r instanceof Headers?Bl(r):Object.entries(r);for(let[s,c]of n)if(c===null)t.delete(s);else if(Array.isArray(c))for(let u of c)t.append(s,u);else c!==void 0&&t.set(s,typeof c=="object"?JSON.stringify(c):c)}return t},Re=class{fns=[];clear(){this.fns=[]}eject(t){let r=this.getInterceptorIndex(t);this.fns[r]&&(this.fns[r]=null)}exists(t){let r=this.getInterceptorIndex(t);return!!this.fns[r]}getInterceptorIndex(t){return typeof t=="number"?this.fns[t]?t:-1:this.fns.indexOf(t)}update(t,r){let n=this.getInterceptorIndex(t);return this.fns[n]?(this.fns[n]=r,t):!1}use(t){return this.fns.push(t),this.fns.length-1}},rc=()=>({error:new Re,request:new Re,response:new Re}),Kl=Za({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),Nl={"Content-Type":"application/json"},Te=(e={})=>({...Ot,headers:Nl,parseAs:"auto",querySerializer:Kl,...e});var Ie=(e={})=>{let t=Ft(Te(),e),r=()=>({...t}),n=h=>(t=Ft(t,h),r()),s=rc(),c=async h=>{let m={...t,...h,fetch:h.fetch??t.fetch??globalThis.fetch,headers:tt(t.headers,h.headers),serializedBody:void 0};m.security&&await tc({...m,security:m.security}),m.requestValidator&&await m.requestValidator(m),m.body!==void 0&&m.bodySerializer&&(m.serializedBody=m.bodySerializer(m.body)),(m.body===void 0||m.serializedBody==="")&&m.headers.delete("Content-Type");let x=Lt(m);return{opts:m,url:x}},u=async h=>{let{opts:m,url:x}=await c(h),w={redirect:"follow",...m,body:Ut(m)},k=new Request(x,w);for(let I of s.request.fns)I&&(k=await I(k,m));let l=m.fetch,i;try{i=await l(k)}catch(I){let j=I;for(let f of s.error.fns)f&&(j=await f(I,void 0,k,m));if(j=j||{},m.throwOnError)throw j;return m.responseStyle==="data"?void 0:{error:j,request:k,response:void 0}}for(let I of s.response.fns)I&&(i=await I(i,k,m));let P={request:k,response:i};if(i.ok){let I=(m.parseAs==="auto"?ec(i.headers.get("Content-Type")):m.parseAs)??"json";if(i.status===204||i.headers.get("Content-Length")==="0"){let f;switch(I){case"arrayBuffer":case"blob":case"text":f=await i[I]();break;case"formData":f=new FormData;break;case"stream":f=i.body;break;default:f={};break}return m.responseStyle==="data"?f:{data:f,...P}}let j;switch(I){case"arrayBuffer":case"blob":case"formData":case"text":j=await i[I]();break;case"json":{let f=await i.text();j=f?JSON.parse(f):{};break}case"stream":return m.responseStyle==="data"?i.body:{data:i.body,...P}}return I==="json"&&(m.responseValidator&&await m.responseValidator(j),m.responseTransformer&&(j=await m.responseTransformer(j))),m.responseStyle==="data"?j:{data:j,...P}}let _=await i.text(),D;try{D=JSON.parse(_)}catch{}let A=D??_,v=A;for(let I of s.error.fns)I&&(v=await I(A,i,k,m));if(v=v||{},m.throwOnError)throw v;return m.responseStyle==="data"?void 0:{error:v,...P}},d=h=>m=>u({...m,method:h}),g=h=>async m=>{let{opts:x,url:w}=await c(m);return Xa({...x,body:x.body,headers:x.headers,method:h,onRequest:async(k,l)=>{let i=new Request(k,l);for(let P of s.request.fns)P&&(i=await P(i,x));return i},serializedBody:Ut(x),url:w})};return{buildUrl:Lt,connect:d("CONNECT"),delete:d("DELETE"),get:d("GET"),getConfig:r,head:d("HEAD"),interceptors:s,options:d("OPTIONS"),patch:d("PATCH"),post:d("POST"),put:d("PUT"),request:u,setConfig:n,sse:{connect:g("CONNECT"),delete:g("DELETE"),get:g("GET"),head:g("HEAD"),options:g("OPTIONS"),patch:g("PATCH"),post:g("POST"),put:g("PUT"),trace:g("TRACE")},trace:d("TRACE")}};var Hl={$body_:"body",$headers_:"headers",$path_:"path",$query_:"query"},Wl=Object.entries(Hl),nc=(e,t)=>{t||(t=new Map);for(let r of e)"in"in r?r.key&&t.set(r.key,{in:r.in,map:r.map}):"key"in r?t.set(r.key,{map:r.map}):r.args&&nc(r.args,t);return t},Vl=e=>{for(let[t,r]of Object.entries(e))r&&typeof r=="object"&&!Object.keys(r).length&&delete e[t]},p=(e,t)=>{let r={body:{},headers:{},path:{},query:{}},n=nc(t),s;for(let[c,u]of e.entries())if(t[c]&&(s=t[c]),!!s)if("in"in s)if(s.key){let d=n.get(s.key),g=d.map||s.key;d.in&&(r[d.in][g]=u)}else r.body=u;else for(let[d,g]of Object.entries(u??{})){let h=n.get(d);if(h)if(h.in){let m=h.map||d;r[h.in][m]=g}else r[h.map]=g;else{let m=Wl.find(([x])=>d.startsWith(x));if(m){let[x,w]=m;r[w][d.slice(x.length)]=g}else if("allowExtra"in s&&s.allowExtra){for(let[x,w]of Object.entries(s.allowExtra))if(w){r[x][d]=g;break}}}}return Vl(r),r};var sc=Ie(Te({baseUrl:"http://localhost:4096"}));var y=class{client;constructor(t){this.client=t?.client??sc}},Gt=class{defaultKey="default";instances=new Map;get(t){let r=this.instances.get(t??this.defaultKey);if(!r)throw new Error('No SDK client found. Create one with "new OpencodeClient()" to fix this error.');return r}set(t,r){this.instances.set(r??this.defaultKey,t)}},Bt=class extends y{remove(t,r){let n=p([t],[{args:[{in:"path",key:"providerID"}]}]);return(r?.client??this.client).delete({url:"/auth/{providerID}",...r,...n})}set(t,r){let n=p([t],[{args:[{in:"path",key:"providerID"},{key:"auth",map:"body"}]}]);return(r?.client??this.client).put({url:"/auth/{providerID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Kt=class extends y{log(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"service"},{in:"body",key:"level"},{in:"body",key:"message"},{in:"body",key:"extra"}]}]);return(r?.client??this.client).post({url:"/log",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}agents(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/agent",...r,...n})}skills(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/skill",...r,...n})}},Nt=class extends y{moveSession(t,r){let n=p([t],[{args:[{in:"body",key:"sessionID"},{in:"body",key:"destination"},{in:"body",key:"moveChanges"}]}]);return(r?.client??this.client).post({url:"/experimental/control-plane/move-session",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Ht=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/capabilities",...r,...n})}},Wt=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/console",...r,...n})}listOrgs(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/console/orgs",...r,...n})}switchOrg(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"accountID"},{in:"body",key:"orgID"}]}]);return(r?.client??this.client).post({url:"/experimental/console/switch",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Vt=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"roots"},{in:"query",key:"start"},{in:"query",key:"cursor"},{in:"query",key:"search"},{in:"query",key:"limit"},{in:"query",key:"archived"}]}]);return(r?.client??this.client).get({url:"/experimental/session",...r,...n})}background(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/experimental/session/{sessionID}/background",...r,...n})}},zt=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/resource",...r,...n})}},Jt=class extends y{generateName(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"context"}]}]);return(r?.client??this.client).post({url:"/experimental/project/{projectID}/copy/generate-name",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Xt=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/workspace/adapter",...r,...n})}},Qt=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/workspace",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"id"},{in:"body",key:"type"},{in:"body",key:"branch"},{in:"body",key:"extra"}]}]);return(r?.client??this.client).post({url:"/experimental/workspace",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}syncList(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/experimental/workspace/sync-list",...r,...n})}status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/workspace/status",...r,...n})}remove(t,r){let n=p([t],[{args:[{in:"path",key:"id"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/experimental/workspace/{id}",...r,...n})}warp(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"id"},{in:"body",key:"sessionID"},{in:"body",key:"copyChanges"}]}]);return(r?.client??this.client).post({url:"/experimental/workspace/warp",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}_adapter;get adapter(){return this._adapter??=new Xt({client:this.client})}},Yt=class extends y{_controlPlane;get controlPlane(){return this._controlPlane??=new Nt({client:this.client})}_capabilities;get capabilities(){return this._capabilities??=new Ht({client:this.client})}_console;get console(){return this._console??=new Wt({client:this.client})}_session;get session(){return this._session??=new Vt({client:this.client})}_resource;get resource(){return this._resource??=new zt({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new Jt({client:this.client})}_workspace;get workspace(){return this._workspace??=new Qt({client:this.client})}},Zt=class extends y{get(t){return(t?.client??this.client).get({url:"/global/config",...t})}update(t,r){let n=p([t],[{args:[{key:"config",map:"body"}]}]);return(r?.client??this.client).patch({url:"/global/config",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},er=class extends y{health(t){return(t?.client??this.client).get({url:"/global/health",...t})}event(t){return(t?.client??this.client).sse.get({url:"/global/event",...t})}dispose(t){return(t?.client??this.client).post({url:"/global/dispose",...t})}upgrade(t,r){let n=p([t],[{args:[{in:"body",key:"target"}]}]);return(r?.client??this.client).post({url:"/global/upgrade",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}_config;get config(){return this._config??=new Zt({client:this.client})}},tr=class extends y{subscribe(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).sse.get({url:"/event",...r,...n})}},rr=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/config",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"config",map:"body"}]}]);return(r?.client??this.client).patch({url:"/config",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}providers(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/config/providers",...r,...n})}},nr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"provider"},{in:"query",key:"model"}]}]);return(r?.client??this.client).get({url:"/experimental/tool",...r,...n})}ids(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/tool/ids",...r,...n})}},sr=class extends y{remove(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"worktreeRemoveInput",map:"body"}]}]);return(r?.client??this.client).delete({url:"/experimental/worktree",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/experimental/worktree",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"worktreeCreateInput",map:"body"}]}]);return(r?.client??this.client).post({url:"/experimental/worktree",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}reset(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"worktreeResetInput",map:"body"}]}]);return(r?.client??this.client).post({url:"/experimental/worktree/reset",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},ir=class extends y{text(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"pattern"}]}]);return(r?.client??this.client).get({url:"/find",...r,...n})}files(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"query"},{in:"query",key:"dirs"},{in:"query",key:"type"},{in:"query",key:"limit"}]}]);return(r?.client??this.client).get({url:"/find/file",...r,...n})}symbols(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"query"}]}]);return(r?.client??this.client).get({url:"/find/symbol",...r,...n})}},or=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"path"}]}]);return(r?.client??this.client).get({url:"/file",...r,...n})}read(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"path"}]}]);return(r?.client??this.client).get({url:"/file/content",...r,...n})}status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/file/status",...r,...n})}},ar=class extends y{dispose(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/instance/dispose",...r,...n})}},cr=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/path",...r,...n})}},lr=class extends y{raw(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/vcs/diff/raw",...r,...n})}},ur=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/vcs",...r,...n})}status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/vcs/status",...r,...n})}diff(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"mode"},{in:"query",key:"context"}]}]);return(r?.client??this.client).get({url:"/vcs/diff",...r,...n})}apply(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"patch"}]}]);return(r?.client??this.client).post({url:"/vcs/apply",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}_diff;get diff2(){return this._diff??=new lr({client:this.client})}},pr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/command",...r,...n})}},dr=class extends y{status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/lsp",...r,...n})}},gr=class extends y{status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/formatter",...r,...n})}},mr=class extends y{remove(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/mcp/{name}/auth",...r,...n})}start(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/mcp/{name}/auth",...r,...n})}callback(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"code"}]}]);return(r?.client??this.client).post({url:"/mcp/{name}/auth/callback",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}authenticate(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/mcp/{name}/auth/authenticate",...r,...n})}},fr=class extends y{status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/mcp",...r,...n})}add(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"name"},{in:"body",key:"config"}]}]);return(r?.client??this.client).post({url:"/mcp",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}connect(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/mcp/{name}/connect",...r,...n})}disconnect(t,r){let n=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/mcp/{name}/disconnect",...r,...n})}_auth;get auth(){return this._auth??=new mr({client:this.client})}},yr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/project",...r,...n})}current(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/project/current",...r,...n})}initGit(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/project/git/init",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"name"},{in:"body",key:"icon"},{in:"body",key:"commands"}]}]);return(r?.client??this.client).patch({url:"/project/{projectID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}directories(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/project/{projectID}/directories",...r,...n})}},hr=class extends y{shells(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/pty/shells",...r,...n})}list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/pty",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"command"},{in:"body",key:"args"},{in:"body",key:"cwd"},{in:"body",key:"title"},{in:"body",key:"env"}]}]);return(r?.client??this.client).post({url:"/pty",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}remove(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/pty/{ptyID}",...r,...n})}get(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/pty/{ptyID}",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"title"},{in:"body",key:"size"}]}]);return(r?.client??this.client).put({url:"/pty/{ptyID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}connectToken(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/pty/{ptyID}/connect-token",...r,...n})}connect(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"cursor"},{in:"query",key:"ticket"}]}]);return(r?.client??this.client).get({url:"/pty/{ptyID}/connect",...r,...n})}},br=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/question",...r,...n})}reply(t,r){let n=p([t],[{args:[{in:"path",key:"requestID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"answers"}]}]);return(r?.client??this.client).post({url:"/question/{requestID}/reply",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}reject(t,r){let n=p([t],[{args:[{in:"path",key:"requestID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/question/{requestID}/reject",...r,...n})}},xr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/permission",...r,...n})}reply(t,r){let n=p([t],[{args:[{in:"path",key:"requestID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"reply"},{in:"body",key:"message"}]}]);return(r?.client??this.client).post({url:"/permission/{requestID}/reply",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}respond(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"permissionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"response"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/permissions/{permissionID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},kr=class extends y{authorize(t,r){let n=p([t],[{args:[{in:"path",key:"providerID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"method"},{in:"body",key:"inputs"}]}]);return(r?.client??this.client).post({url:"/provider/{providerID}/oauth/authorize",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}callback(t,r){let n=p([t],[{args:[{in:"path",key:"providerID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"method"},{in:"body",key:"code"}]}]);return(r?.client??this.client).post({url:"/provider/{providerID}/oauth/callback",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Pr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/provider",...r,...n})}auth(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/provider/auth",...r,...n})}_oauth;get oauth(){return this._oauth??=new kr({client:this.client})}},wr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"scope"},{in:"query",key:"path"},{in:"query",key:"roots"},{in:"query",key:"start"},{in:"query",key:"search"},{in:"query",key:"limit"}]}]);return(r?.client??this.client).get({url:"/session",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"parentID"},{in:"body",key:"title"},{in:"body",key:"agent"},{in:"body",key:"model"},{in:"body",key:"metadata"},{in:"body",key:"permission"},{in:"body",key:"workspaceID"}]}]);return(r?.client??this.client).post({url:"/session",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}status(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/session/status",...r,...n})}delete(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/session/{sessionID}",...r,...n})}get(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"title"},{in:"body",key:"metadata"},{in:"body",key:"permission"},{in:"body",key:"time"}]}]);return(r?.client??this.client).patch({url:"/session/{sessionID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}children(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}/children",...r,...n})}todo(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}/todo",...r,...n})}diff(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"messageID"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}/diff",...r,...n})}messages(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"limit"},{in:"query",key:"before"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}/message",...r,...n})}prompt(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"model"},{in:"body",key:"agent"},{in:"body",key:"noReply"},{in:"body",key:"tools"},{in:"body",key:"format"},{in:"body",key:"system"},{in:"body",key:"variant"},{in:"body",key:"parts"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/message",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}deleteMessage(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/session/{sessionID}/message/{messageID}",...r,...n})}message(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/session/{sessionID}/message/{messageID}",...r,...n})}fork(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/fork",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}abort(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/abort",...r,...n})}init(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"modelID"},{in:"body",key:"providerID"},{in:"body",key:"messageID"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/init",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}unshare(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/session/{sessionID}/share",...r,...n})}share(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/share",...r,...n})}summarize(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"providerID"},{in:"body",key:"modelID"},{in:"body",key:"auto"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/summarize",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}promptAsync(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"model"},{in:"body",key:"agent"},{in:"body",key:"noReply"},{in:"body",key:"tools"},{in:"body",key:"format"},{in:"body",key:"system"},{in:"body",key:"variant"},{in:"body",key:"parts"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/prompt_async",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}command(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"agent"},{in:"body",key:"model"},{in:"body",key:"arguments"},{in:"body",key:"command"},{in:"body",key:"variant"},{in:"body",key:"parts"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/command",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}shell(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"agent"},{in:"body",key:"model"},{in:"body",key:"command"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/shell",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}revert(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"partID"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/revert",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}unrevert(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/session/{sessionID}/unrevert",...r,...n})}},_r=class extends y{delete(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"path",key:"partID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).delete({url:"/session/{sessionID}/message/{messageID}/part/{partID}",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"path",key:"partID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"part",map:"body"}]}]);return(r?.client??this.client).patch({url:"/session/{sessionID}/message/{messageID}/part/{partID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Sr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"body",map:"body"}]}]);return(r?.client??this.client).post({url:"/sync/history",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},vr=class extends y{start(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/sync/start",...r,...n})}replay(t,r){let n=p([t],[{args:[{in:"query",key:"query_directory",map:"directory"},{in:"query",key:"workspace"},{in:"body",key:"body_directory",map:"directory"},{in:"body",key:"events"}]}]);return(r?.client??this.client).post({url:"/sync/replay",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}steal(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/sync/steal",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}_history;get history(){return this._history??=new Sr({client:this.client})}},Cr=class extends y{next(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).get({url:"/tui/control/next",...r,...n})}response(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"body",map:"body"}]}]);return(r?.client??this.client).post({url:"/tui/control/response",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Rr=class extends y{appendPrompt(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"text"}]}]);return(r?.client??this.client).post({url:"/tui/append-prompt",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}openHelp(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/open-help",...r,...n})}openSessions(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/open-sessions",...r,...n})}openThemes(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/open-themes",...r,...n})}openModels(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/open-models",...r,...n})}submitPrompt(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/submit-prompt",...r,...n})}clearPrompt(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(r?.client??this.client).post({url:"/tui/clear-prompt",...r,...n})}executeCommand(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"command"}]}]);return(r?.client??this.client).post({url:"/tui/execute-command",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}showToast(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"title"},{in:"body",key:"message"},{in:"body",key:"variant"},{in:"body",key:"duration"}]}]);return(r?.client??this.client).post({url:"/tui/show-toast",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}publish(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"body",map:"body"}]}]);return(r?.client??this.client).post({url:"/tui/publish",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}selectSession(t,r){let n=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/tui/select-session",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}_control;get control(){return this._control??=new Cr({client:this.client})}},Tr=class extends y{get(t){return(t?.client??this.client).get({url:"/api/health",...t})}},Ir=class extends y{get(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/location",...r,...n})}},jr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/agent",...r,...n})}},Ar=class extends y{stage(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"messageID"},{in:"body",key:"files"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/revert/stage",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}clear(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/revert/clear",...r,...n})}commit(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/revert/commit",...r,...n})}},Er=class extends y{list(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).get({url:"/api/session/{sessionID}/permission",...r,...n})}reply(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"},{in:"body",key:"reply"},{in:"body",key:"message"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/permission/{requestID}/reply",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},$r=class extends y{list(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).get({url:"/api/session/{sessionID}/question",...r,...n})}reply(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"},{key:"questionV2Reply",map:"body"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/question/{requestID}/reply",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}reject(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/question/{requestID}/reject",...r,...n})}},qr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"workspace"},{in:"query",key:"limit"},{in:"query",key:"order"},{in:"query",key:"search"},{in:"query",key:"directory"},{in:"query",key:"project"},{in:"query",key:"subpath"},{in:"query",key:"cursor"}]}]);return(r?.client??this.client).get({url:"/api/session",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"body",key:"id"},{in:"body",key:"agent"},{in:"body",key:"model"},{in:"body",key:"location"}]}]);return(r?.client??this.client).post({url:"/api/session",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}get(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).get({url:"/api/session/{sessionID}",...r,...n})}switchAgent(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"agent"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/agent",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}switchModel(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"model"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/model",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}prompt(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"id"},{in:"body",key:"prompt"},{in:"body",key:"delivery"},{in:"body",key:"resume"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/prompt",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}compact(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/compact",...r,...n})}wait(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).post({url:"/api/session/{sessionID}/wait",...r,...n})}context(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(r?.client??this.client).get({url:"/api/session/{sessionID}/context",...r,...n})}messages(t,r){let n=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"limit"},{in:"query",key:"order"},{in:"query",key:"cursor"}]}]);return(r?.client??this.client).get({url:"/api/session/{sessionID}/message",...r,...n})}_revert;get revert(){return this._revert??=new Ar({client:this.client})}_permission;get permission(){return this._permission??=new Er({client:this.client})}_question;get question(){return this._question??=new $r({client:this.client})}},Dr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/model",...r,...n})}},Mr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/provider",...r,...n})}get(t,r){let n=p([t],[{args:[{in:"path",key:"providerID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/provider/{providerID}",...r,...n})}},Ur=class extends y{key(t,r){let n=p([t],[{args:[{in:"path",key:"integrationID"},{in:"query",key:"location"},{in:"body",key:"key"},{in:"body",key:"label"}]}]);return(r?.client??this.client).post({url:"/api/integration/{integrationID}/connect/key",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}oauth(t,r){let n=p([t],[{args:[{in:"path",key:"integrationID"},{in:"query",key:"location"},{in:"body",key:"methodID"},{in:"body",key:"inputs"},{in:"body",key:"label"}]}]);return(r?.client??this.client).post({url:"/api/integration/{integrationID}/connect/oauth",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Or=class extends y{cancel(t,r){let n=p([t],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).delete({url:"/api/integration/attempt/{attemptID}",...r,...n})}status(t,r){let n=p([t],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/integration/attempt/{attemptID}",...r,...n})}complete(t,r){let n=p([t],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"},{in:"body",key:"code"}]}]);return(r?.client??this.client).post({url:"/api/integration/attempt/{attemptID}/complete",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Lr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/integration",...r,...n})}get(t,r){let n=p([t],[{args:[{in:"path",key:"integrationID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/integration/{integrationID}",...r,...n})}_connect;get connect(){return this._connect??=new Ur({client:this.client})}_attempt;get attempt(){return this._attempt??=new Or({client:this.client})}},Fr=class extends y{remove(t,r){let n=p([t],[{args:[{in:"path",key:"credentialID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).delete({url:"/api/credential/{credentialID}",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"credentialID"},{in:"query",key:"location"},{in:"body",key:"label"}]}]);return(r?.client??this.client).patch({url:"/api/credential/{credentialID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}},Gr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/permission/request",...r,...n})}},Br=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"projectID"}]}]);return(r?.client??this.client).get({url:"/api/permission/saved",...r,...n})}remove(t,r){let n=p([t],[{args:[{in:"path",key:"id"}]}]);return(r?.client??this.client).delete({url:"/api/permission/saved/{id}",...r,...n})}},Kr=class extends y{_request;get request(){return this._request??=new Gr({client:this.client})}_saved;get saved(){return this._saved??=new Br({client:this.client})}},Nr=class extends y{read(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/fs/read/*",...r,...n})}list(t,r){let n=p([t],[{args:[{in:"query",key:"location"},{in:"query",key:"path"}]}]);return(r?.client??this.client).get({url:"/api/fs/list",...r,...n})}find(t,r){let n=p([t],[{args:[{in:"query",key:"location"},{in:"query",key:"query"},{in:"query",key:"type"},{in:"query",key:"limit"}]}]);return(r?.client??this.client).get({url:"/api/fs/find",...r,...n})}},Hr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/command",...r,...n})}},Wr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/skill",...r,...n})}},Vr=class extends y{subscribe(t){return(t?.client??this.client).sse.get({url:"/api/event",...t})}},zr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/pty",...r,...n})}create(t,r){let n=p([t],[{args:[{in:"query",key:"location"},{in:"body",key:"command"},{in:"body",key:"args"},{in:"body",key:"cwd"},{in:"body",key:"title"},{in:"body",key:"env"}]}]);return(r?.client??this.client).post({url:"/api/pty",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}remove(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).delete({url:"/api/pty/{ptyID}",...r,...n})}get(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/pty/{ptyID}",...r,...n})}update(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"},{in:"body",key:"title"},{in:"body",key:"size"}]}]);return(r?.client??this.client).put({url:"/api/pty/{ptyID}",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}connectToken(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).post({url:"/api/pty/{ptyID}/connect-token",...r,...n})}connect(t,r){let n=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location[directory]"},{in:"query",key:"location[workspace]"},{in:"query",key:"cursor"},{in:"query",key:"ticket"}]}]);return(r?.client??this.client).get({url:"/api/pty/{ptyID}/connect",...r,...n})}},Jr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/question/request",...r,...n})}},Xr=class extends y{_request;get request(){return this._request??=new Jr({client:this.client})}},Qr=class extends y{list(t,r){let n=p([t],[{args:[{in:"query",key:"location"}]}]);return(r?.client??this.client).get({url:"/api/reference",...r,...n})}},Yr=class extends y{remove(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"},{in:"body",key:"directory"},{in:"body",key:"force"}]}]);return(r?.client??this.client).delete({url:"/experimental/project/{projectID}/copy",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}create(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"},{in:"body",key:"strategy"},{in:"body",key:"directory"},{in:"body",key:"name"}]}]);return(r?.client??this.client).post({url:"/experimental/project/{projectID}/copy",...r,...n,headers:{"Content-Type":"application/json",...r?.headers,...n.headers}})}refresh(t,r){let n=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"}]}]);return(r?.client??this.client).post({url:"/experimental/project/{projectID}/copy/refresh",...r,...n})}},Zr=class extends y{_health;get health(){return this._health??=new Tr({client:this.client})}_location;get location(){return this._location??=new Ir({client:this.client})}_agent;get agent(){return this._agent??=new jr({client:this.client})}_session;get session(){return this._session??=new qr({client:this.client})}_model;get model(){return this._model??=new Dr({client:this.client})}_provider;get provider(){return this._provider??=new Mr({client:this.client})}_integration;get integration(){return this._integration??=new Lr({client:this.client})}_credential;get credential(){return this._credential??=new Fr({client:this.client})}_permission;get permission(){return this._permission??=new Kr({client:this.client})}_fs;get fs(){return this._fs??=new Nr({client:this.client})}_command;get command(){return this._command??=new Hr({client:this.client})}_skill;get skill(){return this._skill??=new Wr({client:this.client})}_event;get event(){return this._event??=new Vr({client:this.client})}_pty;get pty(){return this._pty??=new zr({client:this.client})}_question;get question(){return this._question??=new Xr({client:this.client})}_reference;get reference(){return this._reference??=new Qr({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new Yr({client:this.client})}},rt=class e extends y{static __registry=new Gt;constructor(t){super(t),e.__registry.set(this,t?.key)}_auth;get auth(){return this._auth??=new Bt({client:this.client})}_app;get app(){return this._app??=new Kt({client:this.client})}_experimental;get experimental(){return this._experimental??=new Yt({client:this.client})}_global;get global(){return this._global??=new er({client:this.client})}_event;get event(){return this._event??=new tr({client:this.client})}_config;get config(){return this._config??=new rr({client:this.client})}_tool;get tool(){return this._tool??=new nr({client:this.client})}_worktree;get worktree(){return this._worktree??=new sr({client:this.client})}_find;get find(){return this._find??=new ir({client:this.client})}_file;get file(){return this._file??=new or({client:this.client})}_instance;get instance(){return this._instance??=new ar({client:this.client})}_path;get path(){return this._path??=new cr({client:this.client})}_vcs;get vcs(){return this._vcs??=new ur({client:this.client})}_command;get command(){return this._command??=new pr({client:this.client})}_lsp;get lsp(){return this._lsp??=new dr({client:this.client})}_formatter;get formatter(){return this._formatter??=new gr({client:this.client})}_mcp;get mcp(){return this._mcp??=new fr({client:this.client})}_project;get project(){return this._project??=new yr({client:this.client})}_pty;get pty(){return this._pty??=new hr({client:this.client})}_question;get question(){return this._question??=new br({client:this.client})}_permission;get permission(){return this._permission??=new xr({client:this.client})}_provider;get provider(){return this._provider??=new Pr({client:this.client})}_session;get session(){return this._session??=new wr({client:this.client})}_part;get part(){return this._part??=new _r({client:this.client})}_sync;get sync(){return this._sync??=new vr({client:this.client})}_tui;get tui(){return this._tui??=new Rr({client:this.client})}_v2;get v2(){return this._v2??=new Zr({client:this.client})}};function oc(e,t,r,n){if(!n?.throwOnError||e instanceof Error)return e;if(typeof e=="object"&&e!==null&&Object.keys(e).length>0){let c=e,u=typeof c.data?.message=="string"&&c.data.message||typeof c.message=="string"&&c.message||typeof c.name=="string"&&c.name||ic(r,t);return new Error(u,{cause:{body:e,status:t?.status}})}if(typeof e=="string"&&e.length>0)return new Error(e,{cause:{body:e,status:t?.status}});let s=t?"(empty response body)":"network error (no response)";return new Error(`opencode server ${ic(r,t)}: ${s}`,{cause:{body:e,status:t?.status}})}function ic(e,t){let r=e?.method??"?",n=e?.url??"?",s=t?.status,c=t?.statusText;return`${r} ${n}${s?" \u2192 "+s:""}${c?" "+c:""}`}function zl(e,t,r){if(e)return t&&(e===t||r&&e===r(t))?t:e}function Jl(e,t){if(e.method!=="GET"&&e.method!=="HEAD")return e;let r=new URL(e.url),n=!1;for(let[c,u]of[["x-opencode-directory","directory"],["x-opencode-workspace","workspace"]]){let d=zl(e.headers.get(c),u==="directory"?t.directory:t.workspace,u==="directory"?encodeURIComponent:void 0);if(d){for(let g of r.pathname.startsWith("/api/")?[u,`location[${u}]`]:[u])r.searchParams.has(g)||r.searchParams.set(g,d);n=!0}}if(!n)return e;let s=new Request(r,e);return s.headers.delete("x-opencode-directory"),s.headers.delete("x-opencode-workspace"),s}function en(e){e?.fetch||(e={...e,fetch:n=>(n.timeout=!1,fetch(n))}),e?.directory&&(e.headers={...e.headers,"x-opencode-directory":encodeURIComponent(e.directory)}),e?.experimental_workspaceID&&(e.headers={...e.headers,"x-opencode-workspace":e.experimental_workspaceID});let t=Ie(e);return t.interceptors.request.use(r=>Jl(r,{directory:e?.directory,workspace:e?.experimental_workspaceID})),t.interceptors.response.use(r=>{if(r.headers.get("content-type")==="text/html")throw new Error("Request is not supported by this version of OpenCode Server (Server responded with text/html)");return r}),t.interceptors.error.use(oc),new rt({client:t})}function Xl(e){return new Promise(t=>setTimeout(t,e))}async function ac(e,t,r){let n=Math.max(1,t?.attempts??1),s=t?.baseDelayMs??0,c=t?.invalidateBetweenAttempts??!1,u=null;for(let d=0;d<n;d++)if(d>0&&(c&&r?.(),s>0&&await Xl(s)),u=await e(),u)return u;return u}var Ql=3e4;function Yl(e){return(e instanceof Request?e.url:String(e)).includes("/global/event")}function cc(e,t,r=Ql){let n=e instanceof Request?e.signal:t?.signal;if(Yl(e))return n??void 0;let s=AbortSignal.timeout(r);return n?typeof AbortSignal.any=="function"?AbortSignal.any([n,s]):n:s}function tn(e,t,r){let n=new Headers(e instanceof Request?e.headers:void 0);return t?.headers&&new Headers(t.headers).forEach((s,c)=>{n.set(c,s)}),r&&!n.has("Authorization")&&n.set("Authorization",`Bearer ${r}`),n}function lc(){return new Response(JSON.stringify({error:"Not authenticated"}),{status:401,headers:{"Content-Type":"application/json"}})}async function nt(){return T().getToken()}async function ue(e){return ac(()=>T().getToken(),e,je)}function je(){}function Zl(e){}function eu(e){}async function Ae(){return nt()}async function rn(e){return ue(e)}function uc(e,t,r,n){if(e instanceof Request){let s=new Request(e,{headers:r,...n?{signal:n}:{}});return fetch(s)}return fetch(e,{...t,headers:r,...n?{signal:n}:{}})}async function R(e,t,r){let{retryOnAuthError:n=!0}=r??{},s=await rn();if(!s)return lc();let c=tn(e,t,s),u=cc(e,t),d=await uc(e,t,c,u);if(d.status===401&&n&&s){je();let g=await rn({attempts:2,baseDelayMs:200});if(g&&g!==s){let h=tn(e,t,g);return uc(e,t,h,u)}}return d}var pe={url:null,sandboxId:null,dbSandboxId:null,version:0},tu=new Set;function pc(e,t=null,r=null){if(!(pe.url===e&&pe.sandboxId===t&&pe.dbSandboxId===r)){pe={url:e,sandboxId:t,dbSandboxId:r,version:pe.version+1};for(let n of tu)n()}}function dc(){return pe.url}function ru(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function Ee(){return ru(T().backendUrl||"http://localhost:8008/v1")}function gc(){let e=T().sandboxId||"";return`${Ee()}/p/${e}/8000`}function nu(e){return`${Ee()}/p/${e}/8000`}function st(e){return nu(e)}function $(){let e=dc();return e||(T().billingEnabled??!1?"":gc())}var C=class extends Error{status;code;details;data;detail;response;url;endpoint;timeout;constructor(t,r={}){super(t),this.name="ApiError";let{name:n,stack:s,...c}=r;Object.assign(this,c),n&&(this.name=n),s&&(this.stack=s);let u=typeof t=="string"?t:t==null?"":String(t);Object.defineProperty(this,"message",{value:u,enumerable:!0,writable:!0,configurable:!0}),Object.setPrototypeOf(this,new.target.prototype)}},de=class extends C{constructor(t="Not authenticated"){super(t,{code:"NO_SESSION"}),this.name="AuthError"}},re=class e extends Error{status;detail;constructor(t,r,n){super(n||r.message||`Billing Error: ${t}`),this.name="BillingError",this.status=t,this.detail=r,Object.setPrototypeOf(this,e.prototype)}},ge=class e extends Error{status;detail;constructor(t=431,r,n){let s="Request headers are too large",c="Try uploading files one at a time, or reduce the number of files in a single request.";super(n||r?.message||s),this.name="RequestTooLargeError",this.status=t,this.detail={message:r?.message||s,suggestion:r?.suggestion||c},Object.setPrototypeOf(this,e.prototype)}};function me(e){let t=e.response?.status||e.status;if(t!==402)return e;let r=e.response?.data||e.data||e.detail||{},n=r?.detail||r;return new re(t,{message:n?.message||e.message||"Billing error",...n})}function mc(e){return e instanceof re}function fc(e){if(!(e instanceof re))return null;let t=e.detail?.message?.toLowerCase()||"";return t.includes("credit")||t.includes("balance")||t.includes("insufficient")?{alertTitle:"You ran out of credits",alertSubtitle:"Upgrade your plan to get more credits and continue using the AI assistant."}:{alertTitle:"Billing check failed",alertSubtitle:e.detail?.message||"Please upgrade to continue."}}async function nn(e,t){return(await e.json().catch(()=>({})))?.error||e.statusText||t}function sn(e){if(!e)throw new Error("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading");return e}async function on(e){let t=sn(e),r=await R(`${t}/env`);if(!r.ok)throw new Error(await nn(r,"Failed to load secrets"));return(await r.json()).secrets??{}}async function an(e,t,r){let n=sn(e),s=await R(`${n}/env/${encodeURIComponent(t)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:r})});if(!s.ok)throw new Error(await nn(s,"Failed to save secret"))}async function cn(e,t){let r=sn(e),n=await R(`${r}/env/${encodeURIComponent(t)}`,{method:"DELETE"});if(!n.ok)throw new Error(await nn(n,"Failed to delete secret"))}var yc={list:on,set:an,delete:cn};async function hc(e,t,r){let n=e;for(;n.endsWith("/");)n=n.slice(0,-1);let s=await R(`${n}/kortix/triggers${t}`,{...r,headers:{"Content-Type":"application/json",...r?.headers}}),c=await s.json();if(!s.ok)throw new Error(c?.error||c?.message||`Request failed with ${s.status}`);return c}function ne(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return t===e.length?e:e.slice(0,t)}async function it(e,t){let r=await e.json().catch(()=>({}));return r?.error||r?.message||e.statusText||t}function $e(e){if(!e)throw new Error("[kortix-pty] Server URL not ready \u2014 sandbox is still loading");return ne(e)}async function ln(e){let t=$e(e),r=await R(`${t}/kortix/pty`);if(!r.ok)throw new Error(await it(r,"Failed to list terminals"));return r.json()}async function un(e,t){let r=$e(e),n=await R(`${r}/kortix/pty`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t??{})});if(!n.ok)throw new Error(await it(n,"Failed to create terminal"));return n.json()}async function pn(e,t,r){let n=$e(e),s=await R(`${n}/kortix/pty/${encodeURIComponent(t)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});if(!s.ok)throw new Error(await it(s,"Failed to update terminal"));return s.json()}async function dn(e,t){let r=$e(e),n=await R(`${r}/kortix/pty/${encodeURIComponent(t)}`,{method:"DELETE"});if(!n.ok)throw new Error(await it(n,"Failed to remove terminal"))}async function gn(e,t){let r=$e(t),s=`${(()=>{try{let d=new URL(r);return d.protocol==="https:"?d.protocol="wss:":d.protocol==="http:"&&(d.protocol="ws:"),typeof window<"u"&&window.location.protocol==="https:"&&d.protocol==="ws:"&&(d.protocol="wss:"),ne(d.toString())}catch{return r.replace("https://","wss://").replace("http://","ws://")}})()}/kortix/pty/${encodeURIComponent(e)}/connect`,c=await Ae();if(!c)return s;let u=s.includes("?")?"&":"?";return`${s}${u}token=${encodeURIComponent(c)}`}var bc={list:ln,create:un,update:pn,remove:dn,webSocketUrl:gn};async function b(e,t,r,n){let s=e;for(;s.endsWith("/");)s=s.slice(0,-1);let c=await R(`${s}${t}`,{...r,headers:{"Content-Type":"application/json",...r?.headers}},n),u=await c.text(),d={};try{d=u?JSON.parse(u):{}}catch{d={}}if(!c.ok)throw new Error(d?.error||d?.message||d?.details||u.slice(0,200)||`Request failed with ${c.status}`);return d}async function su(e,t={}){let r=new URLSearchParams;t.projectId&&r.set("project_id",t.projectId),t.status&&r.set("status",t.status);let n=r.toString()?`?${r}`:"";return b(e,`/kortix/tasks${n}`)}async function iu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`)}async function ou(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/events`)}async function au(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/status`)}async function cu(e,t){return b(e,"/kortix/tasks",{method:"POST",body:JSON.stringify(t)})}async function lu(e,t,r){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(r)})}async function uu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/start`,{method:"POST"})}async function pu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/approve`,{method:"POST"})}async function du(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`,{method:"DELETE"})}async function gu(e,t){let r=t?`?project_id=${encodeURIComponent(t)}`:"";return b(e,`/kortix/tickets${r}`)}async function mu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`)}async function fu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/events`)}async function yu(e,t){return b(e,"/kortix/tickets",{method:"POST",body:JSON.stringify(t)})}async function hu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(r)})}async function bu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/status`,{method:"POST",body:JSON.stringify(r)})}async function xu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/assign`,{method:"POST",body:JSON.stringify(r)})}async function ku(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/unassign`,{method:"POST",body:JSON.stringify(r)})}async function Pu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/comments`,{method:"POST",body:JSON.stringify(r)})}async function wu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`,{method:"DELETE"})}async function _u(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/columns`)}async function Su(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/columns`,{method:"PUT",body:JSON.stringify({columns:r})})}async function vu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/fields`)}async function Cu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/fields`,{method:"PUT",body:JSON.stringify({fields:r})})}async function Ru(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/templates`)}async function Tu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/templates`,{method:"PUT",body:JSON.stringify({templates:r})})}async function Iu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/pm-session`,{method:"POST"})}async function ju(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents`)}async function Au(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents`,{method:"POST",body:JSON.stringify(r)})}async function Eu(e,t,r,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(r)}`,{method:"PATCH",body:JSON.stringify(n)})}async function $u(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(r)}`,{method:"DELETE"})}async function qu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(r)}/persona`)}async function Du(e,t,r=200){return b(e,`/kortix/projects/${encodeURIComponent(t)}/activity?limit=${r}`)}async function Mu(e){return b(e,"/kortix/projects")}async function Uu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}`)}async function Ou(e,t){return b(e,`/kortix/projects/by-session/${encodeURIComponent(t)}`)}async function Lu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/sessions`)}async function Fu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}`,{method:"DELETE"})}async function Gu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Bu(e,t,r="all"){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones?status=${r}`)}async function Ku(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}`)}async function Nu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}/events`)}async function Hu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones`,{method:"POST",body:JSON.stringify(r)})}async function Wu(e,t,r,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Vu(e,t,r,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}/close`,{method:"POST",body:JSON.stringify(n)})}async function zu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}/reopen`,{method:"POST"})}async function Ju(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}`,{method:"DELETE"})}async function Xu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials`)}async function Qu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(r)}/events`)}async function Yu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials`,{method:"POST",body:JSON.stringify(r)})}async function Zu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(r)}`)}async function ep(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(r)}`,{method:"DELETE"})}var tp=1e4,rp={retryOnAuthError:!1};function fe(e,t,r){return b(e,t,{signal:AbortSignal.timeout(tp),...r},rp)}async function np(e,t=!1){return(await fe(e,`/kortix/services${t?"?all=true":""}`)).services??[]}async function sp(e){return(await fe(e,"/kortix/services/templates")).templates??[]}async function ip(e,t){return(await fe(e,`/kortix/services/${encodeURIComponent(t)}/logs`)).logs??[]}async function op(e,t,r){let n=r==="delete",s=n?`/kortix/services/${encodeURIComponent(t)}`:`/kortix/services/${encodeURIComponent(t)}/${r}`;return fe(e,s,{method:n?"DELETE":"POST"})}async function ap(e,t){return fe(e,`/kortix/services/reconcile${t?"?reload=true":""}`,{method:"POST"})}async function cp(e,t){return fe(e,"/kortix/services/register",{method:"POST",body:JSON.stringify(t)})}var ot=new Map,at=class extends Error{constructor(t="[opencode-sdk] Server URL not ready \u2014 sandbox is still loading"){super(t),this.name="RuntimeNotReadyError"}};function X(){let e=$();if(!e)throw new at;return se(e)}function se(e){if(!e)throw new Error("[opencode-sdk] getClientForUrl called without a url");let t=ot.get(e);if(t)return t;if(!Ye())throw new Error("[opencode-sdk] No auth token provider configured \u2014 call configureKortix()/createKortix() before talking to a sandbox runtime.");let r=en({baseUrl:e,fetch:R});return ot.set(e,r),r}function lp(e){ot.delete(e)}function up(){ot.clear()}var ct=new Map;function pp(e){if(!e)throw new Error("[opencode-sdk] getPublicClientForUrl called without a url");let t=ct.get(e);if(t)return t;let r=en({baseUrl:e,fetch});return ct.set(e,r),r}function dp(e){ct.delete(e)}function gp(){ct.clear()}async function mp(e){let t=await e.text().catch(()=>"");try{let r=JSON.parse(t);return r?.error||r?.message||t||e.statusText||`HTTP ${e.status}`}catch{return t||e.statusText||`HTTP ${e.status}`}}async function fp(e){let t=$();if(!t)throw new C("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading",{code:"RUNTIME_UNAVAILABLE"});let r=await R(`${t}/kortix/services/system/reload`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:e})});if(!r.ok)throw new C(`System reload failed (${r.status}): ${await mp(r)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});return r.json()}function kc(e){if(e.error){let t=e.error,r=t?.data?.message||t?.message||(typeof t?.error=="string"?t.error:null)||"SDK request failed";throw new C(r,{status:t?.response?.status??t?.status,response:t?.response,details:t})}return e.data}async function ye(e){let t=await e.text().catch(()=>""),r=null;try{r=JSON.parse(t)}catch{}return r?.error||t||e.statusText||`HTTP ${e.status}`}async function lt(e,t=$()){let r=await R(`${t}${e}`);if(!r.ok)throw new C(await ye(r),{status:r.status,response:r});return r.json()}var Pc=["/workspace","/tmp","/home","/opt"],yp=Pc.filter(e=>e!=="/workspace");function hp(e){return Pc.some(t=>e===t||e.startsWith(`${t}/`))}function bp(e){return hp(e)?e:`/workspace/${e.replace(/^\/+/,"")}`}function De(e){let t=e||"";if(t==="/workspace"||t==="/workspace/")return"";if(t.startsWith("/workspace/"))t=t.slice(11);else if(yp.some(r=>t===r||t.startsWith(`${r}/`)))return t;for(;t.startsWith("/");)t=t.slice(1);return t}var xp=De;async function mn(e,t=$()){let r=De(e)||".";return(await lt(`/file?path=${encodeURIComponent(r)}`,t)).map(s=>({...s,path:s.absolute||`/workspace/${s.path}`}))}async function ut(e,t=$()){let r=De(e),n=await R(`${t}/file/content?path=${encodeURIComponent(r)}`);if(!n.ok)throw new C(await ye(n),{status:n.status,response:n});return n.json()}async function kp(e,t,r=$()){let n=De(e),s=await R(`${r}/file/raw?path=${encodeURIComponent(n)}`);if(!s.ok)throw new C(await ye(s),{status:s.status,response:s});if((s.headers.get("content-type")||"").includes("text/html"))throw new C("File could not be loaded (raw byte route unavailable)",{status:s.status,response:s,code:"INVALID_CONTENT_TYPE"});let c=await s.blob();return t&&(!c.type||c.type==="application/octet-stream")?new Blob([c],{type:t}):c}async function pt(e,t=$()){try{return await kp(e,void 0,t)}catch{}let r=await ut(e,t);if(r.encoding==="base64"&&r.content){let n=Uint8Array.from(atob(r.content),s=>s.charCodeAt(0));return new Blob([n],{type:r.mimeType||"application/octet-stream"})}return new Blob([r.content??""],{type:r.mimeType||"text/plain;charset=utf-8"})}function fn(e=$()){return lt("/file/status",e)}async function yn(e,t,r=$()){let n=new URLSearchParams({query:e});return t?.type&&n.set("type",t.type),t?.limit&&n.set("limit",String(t.limit)),lt(`/find/file?${n.toString()}`,r)}async function hn(e,t=$()){return(await lt(`/find?pattern=${encodeURIComponent(e)}`,t)).map(n=>({path:typeof n.path=="string"?n.path:n.path?.text??"",lines:typeof n.lines=="string"?n.lines:n.lines?.text??"",line_number:n.line_number,absolute_offset:n.absolute_offset,submatches:(n.submatches??[]).map(s=>({start:s.start,end:s.end}))}))}var qe=[400,1200],Pp=e=>e===408||e===429||e===502||e===503||e===504,xc=e=>new Promise(t=>setTimeout(t,e));async function wp(e){let t=await e.text().catch(()=>""),r=null;try{r=t?JSON.parse(t):null}catch{}let n=r?.error||r?.message||r?.data?.message;return typeof n=="string"&&n.trim()?n.trim():(e.headers.get("content-type")||"").includes("text/html")||/<html[\s>]/i.test(t)?e.status===502||/bad gateway/i.test(t)?"Bad gateway while reaching the sandbox upload service. Please retry.":e.statusText||`HTTP ${e.status}`:t.replace(/\s+/g," ").trim().slice(0,500)||e.statusText||`HTTP ${e.status}`}async function wc(e,t){let r;for(let s=0;s<=qe.length;s++){let c;try{c=await t(e())}catch(d){if(r=d,s===qe.length)break;await xc(qe[s]);continue}if(c.ok)return c.json();let u=await wp(c);if(r=new C(`Upload failed (${c.status}): ${u}`,{status:c.status,response:c}),!Pp(c.status)||s===qe.length)throw r;await xc(qe[s])}if(r instanceof C)throw r;let n=r instanceof Error?r.message:String(r||"request failed");throw new C(`Upload failed: ${n}`)}function dt(e,t,r,n=$()){return wc(()=>{let s=new FormData,c=(t??"").trim();return c&&s.append("path",c.startsWith("/")?c:`/${c}`),r?s.append("file",e,r):s.append("file",e),s},s=>R(`${n}/file/upload`,{method:"POST",body:s}))}function _p(e,t,r=$()){return wc(()=>{let n=new FormData;return n.append(e,t,e.split("/").pop()||"file"),n},async n=>{let s={},c=await Ae();return c&&(s.Authorization=`Bearer ${c}`),fetch(`${r}/file/upload`,{method:"POST",body:n,headers:s})})}function bn(e,t=$()){let r=e.trim(),s=(r.startsWith("/")?r:`/${r}`).split("/"),c=s.pop()||"untitled",u=s.join("/")||"/workspace";return dt(new File([" "],c,{type:"application/octet-stream"}),u,void 0,t)}async function xn(e,t,r=$()){return _p(t,await pt(e,r),r)}async function kn(e,t=$()){let r=await R(`${t}/file`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!r.ok)throw new C(`Delete failed (${r.status}): ${await ye(r)}`,{status:r.status,response:r});return r.json()}async function Pn(e,t=$()){let r=await R(`${t}/file/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!r.ok)throw new C(`Mkdir failed (${r.status}): ${await ye(r)}`,{status:r.status,response:r});return r.json()}async function wn(e,t,r=$()){let n=await R(`${r}/file/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({from:e,to:t})});if(!n.ok)throw new C(`Rename failed (${n.status}): ${await ye(n)}`,{status:n.status,response:n});return n.json()}async function Sp(){return kc(await X().project.current())}async function _c(){return kc(await X().global.health())}async function vp(){try{return(await _c()).healthy===!0}catch{return!1}}var Sc={list:mn,read:ut,readBlob:pt,status:fn,findFiles:yn,findText:hn,upload:dt,create:bn,copy:xn,remove:kn,mkdir:Pn,rename:wn,currentProject:Sp,health:_c,isReachable:vp,toDaemonPath:De,toSandboxAbsolutePath:bp,toWorkspaceRelative:xp};var Q=()=>T().backendUrl||"",Rp=e=>new Promise(t=>setTimeout(t,e)),Tp=new Set([502,503,504]),vc=e=>Tp.has(e),Ip=e=>{let t=(e??"GET").toUpperCase();return t==="GET"||t==="HEAD"},jp=2,_n=!1;function Ap(e){_n=e}function Ep(){return _n}async function ie(e,t={}){let{showErrors:r=!0,errorContext:n,timeout:s=3e4,...c}=t,u=new AbortController,d=null,g=!1,h=!1;try{d=setTimeout(()=>{!g&&!u.signal.aborted&&(g=!0,h=!0,u.abort())},s);let m=await ue(),x=c.body instanceof FormData,w={};if(x||(w["Content-Type"]="application/json"),Object.assign(w,c.headers),_n&&(w["x-kortix-admin-bypass"]="1"),m)w.Authorization=`Bearer ${m}`;else return{error:new de,success:!1};let k=await fetch(e,{...c,headers:w,signal:u.signal,credentials:c.credentials??"omit"});if(d&&(clearTimeout(d),d=null),!k.ok&&Ip(c.method)&&vc(k.status))for(let P=0;P<jp;P++){try{await k.arrayBuffer()}catch{}await Rp(250*2**P);let _=new AbortController,D=setTimeout(()=>{_.abort()},s);try{k=await fetch(e,{...c,headers:w,signal:_.signal,credentials:c.credentials??"omit"})}catch{break}finally{D&&(clearTimeout(D),D=null)}if(k.ok||!vc(k.status))break}if(!k.ok){let P=`HTTP ${k.status}: ${k.statusText}`,_=null;try{_=await k.json(),typeof _.message=="string"?P=_.message:_.error&&typeof _.error=="string"?P=_.error:typeof _.detail=="string"?P=_.detail:typeof _.detail?.message=="string"&&(P=_.detail.message)}catch{}let D=new C(P,{status:k.status,response:k,details:_||void 0,data:_,detail:_?.detail,code:_?.code||_?.error_code||_?.detail?.error_code||k.status.toString()});if(k.status===402&&(D=me(D)),k.status===403&&_?.code==="account_mfa_required"&&typeof window<"u"&&typeof window.dispatchEvent=="function")try{window.dispatchEvent(new CustomEvent("kortix:mfa-required"))}catch{}return k.status===431&&(D=new ge(431,{message:"Request is too large to process",suggestion:"Try uploading files one at a time, or reduce the number of files attached to your message."})),r&&T().onError?.(D,n),{error:D,success:!1}}let l,i=k.headers.get("content-type");return i?.includes("application/json")?l=await k.json():i?.includes("text/")?l=await k.text():l=await k.blob(),{data:l,success:!0}}catch(m){d&&(clearTimeout(d),d=null);let x=m?.name==="AbortError"||m?.name==="AbortSignal"||m instanceof Error&&m.message.includes("aborted");x&&(g=!0);let w;if(x){if(!h)return{error:new C("Request aborted",{name:"AbortError",code:"ABORTED"}),success:!1};let k=e.replace(Q(),"")||e;w=new C(`Request timed out after ${Math.round(s/1e3)}s: ${k}`,{code:"TIMEOUT",url:e,endpoint:k,timeout:s}),r&&T().onError?.(w,n)}else m instanceof Error?(w=new C(m.message,{name:m.name||"ApiError",stack:m.stack}),r&&T().onError?.(w,n)):(w=new C(String(m)),r&&T().onError?.(w,n));return{error:w,success:!1}}}var $p={async execute(e,t){try{let{data:r,error:n}=await e();if(n){let s=new C(n.message||"Database error",{code:n.code,details:n});return T().onError?.(s,t),{error:s,success:!1}}return{data:r,success:!0}}catch(r){let n=r instanceof Error?new C(r.message,{name:r.name||"ApiError",stack:r.stack}):new C(String(r));return T().onError?.(n,t),{error:n,success:!1}}}},o={get:(e,t)=>ie(`${Q()}${e}`,{...t,method:"GET"}),post:(e,t,r)=>ie(`${Q()}${e}`,{...r,method:"POST",body:t?JSON.stringify(t):void 0}),put:(e,t,r)=>ie(`${Q()}${e}`,{...r,method:"PUT",body:t?JSON.stringify(t):void 0}),patch:(e,t,r)=>ie(`${Q()}${e}`,{...r,method:"PATCH",body:t?JSON.stringify(t):void 0}),delete:(e,t)=>ie(`${Q()}${e}`,{...t,method:"DELETE"}),upload:(e,t,r)=>{let{headers:n,...s}=r||{},c={...n};return delete c["Content-Type"],ie(`${Q()}${e}`,{...s,method:"POST",body:t,headers:c})},uploadPut:(e,t,r)=>{let{headers:n,...s}=r||{},c={...n};return delete c["Content-Type"],ie(`${Q()}${e}`,{...s,method:"PUT",body:t,headers:c})}};function a(e,t="Project request failed"){if(!e.success||e.data===void 0)throw e.error??new Error(t);return e.data}function Sn(e){return e.replace(/\/v1\/?$/,"")}async function he(e,t){if(!e.backendUrl||!e.accessToken)return null;let r=Sn(e.backendUrl);try{let n=await fetch(`${r}${t}`,{headers:{Authorization:`Bearer ${e.accessToken}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(e.timeoutMs??8e3)});return n.ok?await n.json():null}catch{return null}}async function vn(){return a(await o.get("/accounts"))}async function Cn(e){return a(await o.post("/accounts",e))}async function Rn(e){return a(await o.get(`/accounts/${e}`))}async function Tn(e,t){return a(await o.patch(`/accounts/${e}`,{name:t}))}async function In(e){return a(await o.get(`/accounts/${e}/members`))}async function jn(e,t){return a(await o.post(`/accounts/${e}/members`,t,{showErrors:!1}))}async function An(e){return a(await o.get(`/accounts/${e}/invites`))}async function En(e,t){return a(await o.delete(`/accounts/${e}/invites/${t}`))}async function $n(e,t){return a(await o.post(`/accounts/${e}/invites/${t}/resend`,{}))}async function qn(e){return a(await o.get(`/account-invites/${e}`,{showErrors:!1}))}async function Dn(e){return a(await o.post(`/account-invites/${e}/accept`,{}))}async function Mn(e){return a(await o.post(`/account-invites/${e}/decline`,{}))}async function Un(e,t){return a(await o.delete(`/accounts/${e}/members/${t}`))}async function On(e,t,r){return a(await o.patch(`/accounts/${e}/members/${t}`,{role:r}))}async function Ln(e){return a(await o.post(`/accounts/${e}/leave`,{}))}async function qp(e){return he(e,"/v1/accounts")}async function Fn(){let e=await o.get("/accounts/me",{showErrors:!1});return!e.success||!e.data?{valid:!1,error:e.error}:{valid:!0,identity:e.data}}async function oe(){return a(await o.get("/projects"))}async function Gn(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return a(await o.get(`/projects${t}`))}async function gt(e,t){return a(await o.get(`/projects/${e}`,t))}async function Bn(e,t,r="write"){return a(await o.post(`/projects/${e}/git/collaborators`,{github_username:t,permission:r}))}async function Kn(e,t){return a(await o.post(`/projects/${e}/manifest/validate`,{raw:t}),"Failed to validate manifest")}async function Nn(e){return a(await o.post(`/projects/${e}/git-token`,{}),"Failed to mint git token")}function Dp(e){let t=e.metadata?.git;return t?.provider==="github"&&t?.managed===!0}async function mt(e,t){return a(await o.get(`/projects/${e}/detail`,{showErrors:!1,...t}))}async function ft(e,t){return a(await o.get(`/projects/${e}/llm-catalog`,{showErrors:!1,...t}))}async function yt(e,t){return a(await o.get(`/projects/${e}/model-picker`,{showErrors:!1,...t}))}async function Hn(e){return a(await o.post("/projects",e))}async function Wn(e){return a(await o.post("/projects/create-repo",e))}async function Vn(e){return a(await o.post("/projects/provision",{seed_starter:!0,...e}))}async function Mp(){try{return a(await o.get("/projects/managed-git/status",{showErrors:!1}))}catch{return{configured:!1,provider:"github"}}}async function ht(e,t){return a(await o.patch(`/projects/${e}`,t))}async function zn(e,t,r){return a(await o.patch(`/projects/${e}/experimental`,{feature:t,enabled:r}))}async function Jn(e,t){return a(await o.patch(`/projects/${e}/sandbox-provider`,{provider:t}))}async function Up(e,t){return a(await o.patch(`/projects/${e}/warm-pool`,t))}async function Xn(e,t){return a(await o.patch(`/projects/${e}/onboarding`,{completed:t}))}async function bt(e){return a(await o.delete(`/projects/${e}`))}async function Op(e,t){return he(e,`/v1/projects?account_id=${encodeURIComponent(t)}`)}async function Lp(e,t){if(!e.backendUrl||!e.accessToken)return{ok:!1,limitReached:!1};let r=Sn(e.backendUrl);try{let n=await fetch(`${r}/v1/projects/provision`,{method:"POST",headers:{Authorization:`Bearer ${e.accessToken}`,"Content-Type":"application/json"},body:JSON.stringify({seed_starter:!0,...t}),signal:AbortSignal.timeout(e.timeoutMs??9e4)});if(n.ok){let s=await n.json().catch(()=>null);return s?.project_id?{ok:!0,project:s}:{ok:!1,limitReached:!1}}return n.status===403?{ok:!1,limitReached:(await n.json().catch(()=>null))?.code==="project_limit_reached"}:{ok:!1,limitReached:!1}}catch{return{ok:!1,limitReached:!1}}}async function Qn(e){return a(await o.post("/projects/link-repository",e,{showErrors:!1}))}async function Yn(e){return a(await o.get(`/projects/github/installation?account_id=${encodeURIComponent(e)}`,{showErrors:!1}))}async function Zn(e){return a(await o.get(`/projects/github/installations?account_id=${encodeURIComponent(e)}`,{showErrors:!1}))}async function es(e,t){let r=new URLSearchParams({account_id:e});return t&&r.set("installation_id",t),a(await o.get(`/projects/github/repositories?${r.toString()}`,{showErrors:!1}))}async function ts(e,t,r){let n=new URLSearchParams({account_id:e,installation_id:t,repo_full_name:r});return a(await o.get(`/projects/github/repository-branches?${n.toString()}`,{showErrors:!1}))}async function rs(e){return a(await o.post("/projects/github/installation",e,{showErrors:!1}))}async function ns(e,t){let r=new URLSearchParams({account_id:e});return t&&r.set("installation_id",t),a(await o.delete(`/projects/github/installation?${r.toString()}`))}async function Fp(e,t){return a(await o.post(`/projects/${e}/access-requests`,{message:t?.trim()||void 0},{showErrors:!1}))}async function ss(e,t){return a(await o.get(`/projects/${e}/access-requests`,t))}async function is(e,t,r="member"){return a(await o.post(`/projects/${e}/access-requests/${t}/approve`,{role:r}))}async function os(e,t){return a(await o.post(`/projects/${e}/access-requests/${t}/reject`,{}))}async function as(e){return a(await o.get(`/projects/${e}/access`))}async function cs(e,t,r){return a(await o.put(`/projects/${e}/access/${t}`,{role:r}))}async function ls(e,t){return a(await o.delete(`/projects/${e}/access/${t}`))}function Gp(e){return"status"in e&&e.status==="invited"}async function us(e,t,r,n){return a(await o.post(`/projects/${e}/access/invite`,{email:t,role:r,...n!==void 0?{expires_at:n}:{}}))}async function ps(e){return a(await o.get(`/projects/${e}/access/pending-invites`))}async function ds(e,t){return a(await o.delete(`/projects/${e}/access/pending-invites/${t}`))}async function gs(e,t){return a(await o.post(`/projects/${e}/access/pending-invites/${t}/resend`))}async function ms(e){return a(await o.get(`/projects/${e}/group-grants`))}async function fs(e,t,r,n){return a(await o.post(`/projects/${e}/group-grants`,n===void 0?{group_id:t,role:r}:{group_id:t,role:r,expires_at:n}))}async function ys(e,t,r,n){return a(await o.patch(`/projects/${e}/group-grants/${t}`,n===void 0?{role:r}:{role:r,expires_at:n}))}async function hs(e,t){return a(await o.delete(`/projects/${e}/group-grants/${t}`))}async function bs(e){return a(await o.get(`/projects/${e}/resource-grants`))}async function xs(e,t){return a(await o.post(`/projects/${e}/resource-grants`,{resource_type:t.resourceType,resource_id:t.resourceId,principal_type:t.principalType,principal_id:t.principalId,...t.expiresAt!==void 0?{expires_at:t.expiresAt}:{}}))}async function ks(e,t){return a(await o.delete(`/projects/${e}/resource-grants/${t}`))}async function Ps(e,t){return a(await o.get(`/projects/${e}/approvals`,{showErrors:t?.showErrors}))}async function ws(e,t){return a(await o.get(`/projects/${e}/approvals/needs-input`,{showErrors:t?.showErrors}))}async function _s(e,t,r,n="once"){return a(await o.post(`/projects/${e}/approvals/${t}`,{decision:r,scope:n}))}async function Ss(e){return a(await o.get(`/projects/${e}/secrets`,{showErrors:!1}))}async function vs(e,t){return a(await o.post(`/projects/${e}/secrets`,t))}async function Cs(e,t,r){return a(await o.post(`/projects/${e}/oauth/${t}/start`,{sharing:r?.sharing}))}async function Rs(e,t,r){return a(await o.post(`/projects/${e}/oauth/${t}/poll`,{flow_id:r}))}async function Ts(e,t){return a(await o.put(`/projects/${e}/git-credential`,t))}async function Is(e,t){return a(await o.delete(`/projects/${e}/secrets/${encodeURIComponent(t)}`))}async function js(e,t,r){return a(await o.put(`/projects/${e}/secrets/${encodeURIComponent(t)}/personal`,r))}async function As(e,t){return a(await o.delete(`/projects/${e}/secrets/${encodeURIComponent(t)}/personal`))}async function Es(e,t){return a(await o.post(`/projects/${e}/secrets/${encodeURIComponent(t)}/promote-to-shared`,{}))}async function $s(e){return a(await o.get(`/projects/${e}/connector-profiles`))}async function qs(e,t){return a(await o.post(`/projects/${e}/connector-profiles`,t))}async function Ds(e,t,r){return a(await o.put(`/projects/${e}/connector-profiles/${t}/credential`,r))}async function Ms(e,t){return a(await o.put(`/projects/${e}/connector-profiles/${t}/revoke`,{}))}async function Us(e,t){return a(await o.put(`/projects/${e}/connector-profiles/${t}/activate`,{}))}async function Os(e){return a(await o.get(`/executor/projects/${e}/connectors`,{showErrors:!1}))}async function Ls(e){return a(await o.post(`/executor/projects/${e}/connectors/sync`,{}))}async function Fs(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/credential-mode`,{mode:r}))}async function Gs(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/sensitive`,{sensitive:r}))}async function Bs(e,t){return a(await o.get(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/policies`))}async function Ks(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/policies`,{policies:r}))}async function Ns(e,t){return a(await o.get(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/config`))}async function Hs(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/name`,{name:r}))}async function Ws(e,t){return a(await o.post(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/connect`,{}))}async function Vs(e,t){return a(await o.post(`/executor/projects/${e}/connectors`,t))}async function zs(e,t){return a(await o.delete(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}`))}async function Js(e,t,r){let n=new URLSearchParams;t&&n.set("q",t),r&&n.set("cursor",r);let s=n.toString();return a(await o.get(`/executor/projects/${e}/pipedream/apps${s?`?${s}`:""}`))}async function Xs(){return a(await o.get("/executor/connect-status"))}async function Qs(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/credential`,{value:r}))}async function Ys(e,t){return a(await o.post(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/connect/finalize`,{}))}async function Zs(e){return a(await o.get(`/executor/projects/${e}/policies`))}async function ei(e,t,r){return a(await o.put(`/executor/projects/${e}/policies`,{policies:t,defaultMode:r}))}async function ti(e){return a(await o.get(`/projects/${e}/sandboxes`))}async function ri(e){return a(await o.get(`/projects/${e}/snapshots`))}async function xt(e){return a(await o.get(`/projects/${e}/sandbox-health`,{showErrors:!1,timeout:15e3}))}async function ni(e,t){return a(await o.post(`/projects/${e}/snapshots/rebuild`,t?{slug:t}:{}))}async function si(e){return a(await o.post(`/projects/${e}/snapshots/fix-with-agent`,{}))}async function ii(e,t){return a(await o.post(`/projects/${e}/sandbox-templates`,t))}async function oi(e,t,r){return a(await o.patch(`/projects/${e}/sandbox-templates/${t}`,r))}async function ai(e,t){return a(await o.delete(`/projects/${e}/sandbox-templates/${t}`))}async function ci(e,t){return a(await o.post(`/projects/${e}/sandbox-templates/${t}/build`,{}))}async function li(e){return a(await o.get(`/projects/${e}/sandboxes`))}async function ui(e,t){let r=new URLSearchParams;t?.ref&&r.set("ref",t.ref),t?.path&&r.set("path",t.path);let n=r.toString()?`?${r.toString()}`:"";return a(await o.get(`/projects/${e}/files${n}`,{showErrors:!1}))}async function pi(e,t,r){let n=new URLSearchParams({q:t});return r?.content&&n.set("content","1"),r?.ref&&n.set("ref",r.ref),r?.limit&&n.set("limit",String(r.limit)),a(await o.get(`/projects/${e}/files/search?${n.toString()}`))}async function di(e,t,r){let n=new URLSearchParams({path:t});return r&&n.set("ref",r),a(await o.get(`/projects/${e}/files/content?${n.toString()}`))}async function gi(e,t,r){let n=new URLSearchParams;t&&n.set("ref",t),r&&n.set("path",r);let s=n.toString()?`?${n.toString()}`:"",c=await ue(),u=`${T().backendUrl||""}/projects/${e}/files/archive${s}`,d=await fetch(u,{method:"GET",headers:c?{Authorization:`Bearer ${c}`}:{}});if(!d.ok){let g=await d.text().catch(()=>"");throw new Error(g||`Failed to download (HTTP ${d.status})`)}return await d.blob()}async function mi(e){return a(await o.get(`/projects/${e}/branches`))}async function fi(e,t){let r=new URLSearchParams;t?.ref&&r.set("ref",t.ref),t?.path&&r.set("path",t.path),t?.limit!=null&&r.set("limit",String(t.limit)),t?.skip!=null&&r.set("skip",String(t.skip));let n=r.toString()?`?${r.toString()}`:"";return a(await o.get(`/projects/${e}/commits${n}`))}async function yi(e,t){return a(await o.get(`/projects/${e}/commits/${encodeURIComponent(t)}`))}async function hi(e,t,r){let n=new URLSearchParams;r?.path&&n.set("path",r.path);let s=n.toString()?`?${n.toString()}`:"";return a(await o.get(`/projects/${e}/commits/${encodeURIComponent(t)}/diff${s}`))}async function bi(e,t,r){let n=new URLSearchParams({path:t});return r?.ref&&n.set("ref",r.ref),r?.limit!=null&&n.set("limit",String(r.limit)),r?.skip!=null&&n.set("skip",String(r.skip)),a(await o.get(`/projects/${e}/files/history?${n.toString()}`))}async function xi(e,t){let r=new URLSearchParams({from:t.from,into:t.into});return a(await o.get(`/projects/${e}/version-diff?${r.toString()}`))}async function ki(e,t){let r=t?`?status=${t}`:"";return a(await o.get(`/projects/${e}/change-requests${r}`,{showErrors:!1,timeout:15e3}))}async function Pi(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}`))}async function wi(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}/diff`))}async function _i(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}/merge-preview`))}async function Si(e,t){return a(await o.post(`/projects/${e}/change-requests`,t))}async function vi(e,t,r){return a(await o.post(`/projects/${e}/change-requests/${t}/merge`,r??{},{showErrors:!1}))}async function Ci(e,t){return a(await o.post(`/projects/${e}/change-requests/${t}/close`,{}))}async function Ri(e,t){return a(await o.post(`/projects/${e}/change-requests/${t}/reopen`,{}))}async function Ti(e,t,r){return a(await o.post(`/projects/${e}/change-requests/${t}/request-changes`,{feedback:r}))}async function Ii(e,t,r){return a(await o.post(`/projects/${e}/sessions/${t}/commit-push`,r??{}))}var ji=new Set;function Ai(e){e&&ji.add(e)}function Ei(e){return!!e&&ji.has(e)}function Bp(e){e&&ji.delete(e)}async function be(e){return a(await o.get(`/projects/${e}/sessions`))}async function $i(e,t,r){return a(await o.put(`/projects/${e}/sessions/${t}/sharing`,r))}async function qi(e,t){return a(await o.get(`/projects/${e}/sessions/${t}/previews`))}async function Di(e,t){return a(await o.get(`/projects/${e}/sessions/${t}/public-shares`,{showErrors:!1}))}async function Mi(e,t,r){return a(await o.post(`/projects/${e}/sessions/${t}/public-shares`,r))}async function Ui(e,t,r){return a(await o.delete(`/projects/${e}/sessions/${t}/public-shares/${r}`))}async function xe(e,t){let r=a(await o.post(`/projects/${e}/sessions`,t??{}));return t?.initial_prompt||Ai(r?.session_id),r}async function Oi(e,t,r){return a(await o.get(`/projects/${e}/sessions/${t}`,{showErrors:r?.showErrors}))}async function Li(e,t,r,n){let s=r?`?limit=${r}`:"";return a(await o.get(`/projects/${e}/sessions/${t}/audit${s}`,{showErrors:n?.showErrors}))}async function Fi(e,t,r){let n=new URLSearchParams;r?.limit!=null&&n.set("limit",String(r.limit)),r?.chars!=null&&n.set("chars",String(r.chars));let s=n.toString();return a(await o.get(`/projects/${e}/sessions/${t}/transcript${s?`?${s}`:""}`))}async function Gi(e,t,r){return a(await o.patch(`/projects/${e}/sessions/${t}`,r))}async function Bi(e,t){return a(await o.delete(`/projects/${e}/sessions/${t}`))}async function Me(e,t){return a(await o.post(`/projects/${e}/sessions/${t}/restart`,{}))}async function Ue(e,t){return a(await o.post(`/projects/${e}/sessions/${t}/stop`,{}))}async function Ki(e){return a(await o.get(`/projects/${e}/triggers`))}async function Ni(e,t){return a(await o.post(`/projects/${e}/triggers`,t))}async function Hi(e,t,r){return a(await o.patch(`/projects/${e}/triggers/${t}`,r))}async function Wi(e,t){return a(await o.delete(`/projects/${e}/triggers/${t}`))}async function Vi(e,t){return a(await o.patch(`/projects/${e}/triggers/activation`,{paused:t}))}async function zi(e,t){return a(await o.post(`/projects/${e}/triggers/${t}/fire`,{}))}var Y=new Map;function Ji(e,t){return`${e}::${t}`}function Cc(e,t){Y.delete(e),Y.set(e,t)}function Rc(e,t){let r=Ji(e,t),n=Y.get(r);return n&&Cc(r,n),n}function Tc(e,t,r){let n=Ji(e,t);if(!Y.has(n)&&Y.size>=512){let s=Y.keys().next().value;s!==void 0&&Y.delete(s)}Cc(n,r)}function Ic(e,t){Y.delete(Ji(e,t))}var kt=class extends Error{status;code;terminal;constructor(t,r){super(t),this.name="SessionStartError",this.status=r.status,this.code=r.code,this.terminal=r.terminal}};function Kp(e){return e instanceof Error&&e.name==="SessionStartError"}function Np(e){let t=e,r=t?.status,n=t?.code??t?.details?.code??t?.details?.error,s=t?.message||"Unable to start this session";return r&&r>=400&&r<500&&r!==408&&r!==429?new kt(s,{status:r,code:n,terminal:!0}):null}async function ke(e,t,r){let n=r&&r>0?`?wait_ms=${Math.floor(r)}`:"",s=await o.post(`/projects/${e}/sessions/${t}/start${n}`,{},{showErrors:!1});if(!s.success||!s.data){let d=Np(s.error);if(d&&!(d.status===404&&Ei(t)))throw d;return null}let c=s.data,u=c.sandbox?.external_id;return c.stage==="ready"&&u&&c.opencode_session_id&&Tc(e,t,{opencodeSessionId:c.opencode_session_id,runtimeUrl:st(u),sandboxId:u}),c}function Hp(e,t){return["session-start",e,t]}async function Xi(e){return a(await o.get(`/projects/${e}/model-defaults`))}async function Qi(e,t){return a(await o.put(`/projects/${e}/model-defaults`,t))}async function Yi(e,t){let r=new URLSearchParams({scope:t.scope,...t.agentName?{agentName:t.agentName}:{}}).toString();return a(await o.delete(`/projects/${e}/model-defaults?${r}`))}async function Zi(e,t,r){return a(await o.put(`/projects/${e}/agents/${encodeURIComponent(t)}/scope`,r))}async function Wp(e,t){return a(await o.get(`/projects/${e}/agents/${encodeURIComponent(t)}/config`))}async function Vp(e,t,r){return a(await o.put(`/projects/${e}/agents/${encodeURIComponent(t)}/config`,r))}async function eo(e,t){return a(await o.put(`/projects/${e}/default-agent`,{agent:t}))}function to(){return{credits:{total:0,daily:0,monthly:0,extra:0,can_run:!1,daily_refresh:null},subscription:{tier_key:"none",tier_display_name:"No Plan",status:"no_subscription",billing_period:null,provider:"stripe",subscription_id:null,current_period_end:null,cancel_at_period_end:!1,is_cancelled:!1,cancellation_effective_date:null,has_scheduled_change:!1,scheduled_change:null,commitment:{has_commitment:!1,can_cancel:!0,commitment_type:null,months_remaining:null,commitment_end_date:null},can_purchase_credits:!1},models:[],limits:{concurrent_runs:{running_count:0,limit:0,can_start:!1,tier_name:"none"},ai_worker_count:{current_count:0,limit:0,can_create:!1,tier_name:"none"},custom_mcp_count:{current_count:0,limit:0,can_create:!1,tier_name:"none"}},tier:{name:"none",display_name:"No Plan",monthly_credits:0,can_purchase_credits:!1}}}async function ro(e){let t=new URLSearchParams;e?.skipCache&&t.set("skip_cache","true"),e?.accountId&&t.set("account_id",e.accountId);let r=t.toString(),n=r?`?${r}`:"",s=await o.get(`/billing/account-state${n}`,{showErrors:!1}),c=s.error?.status===404&&/billing is not enabled/i.test(s.error.message||"");if(s.error&&s.error.status!==401&&!c)throw s.error;return s.error?to():s.data}async function no(e){let t=new URLSearchParams;e?.skipCache&&t.set("skip_cache","true"),e?.accountId&&t.set("account_id",e.accountId);let r=t.toString(),n=r?`?${r}`:"",s=await o.get(`/billing/account-state/minimal${n}`,{showErrors:!1}),c=s.error?.status===404&&/billing is not enabled/i.test(s.error.message||"");if(s.error&&s.error.status!==401&&!c)throw s.error;return s.error?to():s.data}async function so(e){let t=new URLSearchParams;e?.accountId&&t.set("account_id",e.accountId),e?.limit!=null&&t.set("limit",String(e.limit)),e?.offset!=null&&t.set("offset",String(e.offset)),e?.typeFilter&&t.set("type_filter",Array.isArray(e.typeFilter)?e.typeFilter.join(","):e.typeFilter);let r=t.toString();return a(await o.get(`/billing/transactions${r?`?${r}`:""}`))}async function io(e){let t=new URLSearchParams;e?.accountId&&t.set("account_id",e.accountId),e?.days!=null&&t.set("days",String(e.days));let r=t.toString();return a(await o.get(`/billing/transactions/summary${r?`?${r}`:""}`))}async function oo(){return a(await o.get("/billing/credit-breakdown"))}async function ao(e){let t=e!=null?`?days=${e}`:"";return a(await o.get(`/billing/usage-history${t}`))}async function co(){return a(await o.get("/billing/tier-configurations"))}async function zp(e){let t=e.accountId?`?account_id=${encodeURIComponent(e.accountId)}`:"";return he(e,`/v1/billing/account-state${t}`)}async function lo(e){return a(await o.post("/billing/create-checkout-session",{account_id:e.accountId,tier_key:e.tierKey,success_url:e.successUrl,cancel_url:e.cancelUrl,commitment_type:e.commitmentType,locale:e.locale,server_type:e.serverType,location:e.location}),"Failed to create checkout session")}async function uo(e,t){return a(await o.post("/billing/confirm-checkout-session",{account_id:t,session_id:e}),"Failed to confirm checkout session")}async function po(e,t){return a(await o.post("/billing/create-portal-session",{account_id:t,return_url:e}),"Failed to create portal session")}async function go(e,t){return a(await o.post("/billing/cancel-subscription",{account_id:t,feedback:e}),"Failed to cancel subscription")}async function mo(e){return a(await o.post("/billing/reactivate-subscription",{account_id:e}),"Failed to reactivate subscription")}async function fo(e,t,r){return a(await o.post("/billing/schedule-downgrade",{account_id:r,target_tier_key:e,commitment_type:t}),"Failed to schedule downgrade")}async function yo(e){return a(await o.post("/billing/cancel-scheduled-change",{account_id:e}),"Failed to cancel scheduled change")}async function ho(e,t){let r=new URLSearchParams({new_price_id:e});return t&&r.set("account_id",t),a(await o.get(`/billing/proration-preview?${r.toString()}`),"Failed to load proration preview")}async function bo(e){return a(await o.post("/billing/purchase-credits",{amount:e.amount,account_id:e.accountId,success_url:e.successUrl,cancel_url:e.cancelUrl}),"Failed to purchase credits")}async function xo(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return a(await o.get(`/billing/auto-topup/settings${t}`),"Failed to load auto-topup settings")}async function ko(e){return a(await o.post("/billing/auto-topup/configure",{account_id:e.accountId,enabled:e.enabled,threshold:e.threshold,amount:e.amount}),"Failed to configure auto-topup")}async function Po(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/slack/installation`,{showErrors:!1});return t.success?t.data??null:null}async function wo(e,t){return a(await o.post(`/projects/${encodeURIComponent(e)}/channels/slack/connect`,t,{showErrors:!1}),"Failed to connect")}var Jp={oauth_available:!1,install_url:null};async function _o(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/slack/mode`,{showErrors:!1});return!t.success||!t.data?Jp:t.data}async function So(e){return a(await o.get(`/webhooks/slack/${encodeURIComponent(e)}/manifest`,{showErrors:!1}),"Failed to load Slack manifest")}async function vo(e){let t=await o.delete(`/projects/${encodeURIComponent(e)}/channels/slack/installation`,{showErrors:!1});if(!t.success)throw new Error(t.error?.message??"Failed to disconnect")}async function Co(e,t){return a(await o.get(`/projects/${encodeURIComponent(e)}/channels/slack/file?url=${encodeURIComponent(t)}`,{showErrors:!1}),"Failed to download Slack file")}async function Ro(e,t){return a(await o.post(`/projects/${encodeURIComponent(e)}/channels/slack/file/upload`,{channel:t.channel,filename:t.filename,content_base64:t.contentBase64,comment:t.comment,thread_ts:t.threadTs},{showErrors:!1}),"Failed to upload Slack file")}function To(e){return{...e,profileId:e.profileId??e.profile_id??null}}var Xp={provider:"agentmail",managed_available:!1};async function Io(e,t){let r=t?`?connector_slug=${encodeURIComponent(t)}`:"",n=await o.get(`/projects/${encodeURIComponent(e)}/channels/email/installation${r}`,{showErrors:!1});return n.success&&n.data?To(n.data):null}async function jo(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/email/mode`,{showErrors:!1});return!t.success||!t.data?Xp:t.data}async function Ao(e,t){let r=a(await o.post(`/projects/${encodeURIComponent(e)}/channels/email/connect`,t,{showErrors:!1}),"Failed to connect email");return To(r)}async function Eo(e,t){let r=t?`?connector_slug=${encodeURIComponent(t)}`:"",n=await o.delete(`/projects/${encodeURIComponent(e)}/channels/email/installation${r}`,{showErrors:!1});if(!n.success)throw new Error(n.error?.message??"Failed to disconnect email")}async function $o(e,t,r){let n=a(await o.patch(`/projects/${encodeURIComponent(e)}/channels/email/installation`,{connector_slug:t??"kortix_email",sender_policy:r},{showErrors:!1}),"Failed to update email policy");return To(n)}async function qo(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/meet/voices`,{showErrors:!1});return t.success?t.data??null:null}async function Do(e,t){return a(await o.put(`/projects/${encodeURIComponent(e)}/channels/meet/voice`,{voice:t},{showErrors:!1}),"Failed to save voice")}async function Mo(e,t){return a(await o.put(`/projects/${encodeURIComponent(e)}/channels/meet/name`,{name:t},{showErrors:!1}),"Failed to save name")}async function Uo(e,t){let r=await o.post(`/projects/${encodeURIComponent(e)}/channels/meet/voices/${encodeURIComponent(t)}/preview`,{},{showErrors:!1});return!r.success||!r.data?.b64?null:r.data.b64}async function Qp(e){return a(await o.get(`/projects/${encodeURIComponent(e)}/channels/bindings`,{showErrors:!1}),"Failed to load channel bindings")}async function Yp(e,t,r){return a(await o.patch(`/projects/${encodeURIComponent(e)}/channels/bindings/${encodeURIComponent(t)}`,r,{showErrors:!1}),"Failed to update channel binding")}async function Oo(e,t,r,n){return a(await o.post(`/projects/${encodeURIComponent(e)}/channels/meet/speak`,{bot_id:t,text:r,voice:n},{showErrors:!1}),"Failed to speak in meeting")}async function Lo(e){return a(await o.get(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Fo(e,t){return a(await o.put(`/projects/${e}/gateway/routing-policy`,t),"Gateway routing policy request failed")}async function Go(e){return a(await o.delete(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Bo(e,t){return a(await o.post(`/projects/${e}/gateway/routing-policy/preview`,t),"Gateway route preview failed")}async function Ko(e,t){let r=new URLSearchParams;t?.limit&&r.set("limit",String(t.limit)),t?.offset&&r.set("offset",String(t.offset)),t?.ok!==void 0&&r.set("ok",String(t.ok));let n=r.toString();return a(await o.get(`/projects/${e}/gateway/logs${n?`?${n}`:""}`),"Gateway request failed")}async function No(e,t){return a(await o.get(`/projects/${e}/gateway/logs/${t}`),"Gateway request failed")}async function Ho(e,t){return a(await o.get(`/projects/${e}/gateway/overview${t?`?days=${t}`:""}`),"Gateway request failed")}async function Wo(e,t){return a(await o.get(`/projects/${e}/gateway/series${t?`?days=${t}`:""}`),"Gateway request failed")}async function Vo(e,t){return a(await o.get(`/projects/${e}/gateway/breakdown${t?`?days=${t}`:""}`),"Gateway request failed")}async function zo(e,t){return a(await o.get(`/projects/${e}/gateway/sessions${t?`?days=${t}`:""}`),"Gateway request failed")}async function Jo(e,t){return a(await o.get(`/projects/${e}/gateway/errors${t?`?days=${t}`:""}`),"Gateway request failed")}async function Xo(e){return a(await o.get(`/projects/${e}/gateway/budgets`),"Gateway request failed")}async function Qo(e,t){return a(await o.put(`/projects/${e}/gateway/budgets`,t),"Gateway request failed")}async function Yo(e,t){return a(await o.delete(`/projects/${e}/gateway/budgets/${t}`),"Gateway request failed")}async function Zo(e){return a(await o.get(`/projects/${e}/gateway/keys`),"Gateway request failed")}async function ea(e,t){return a(await o.post(`/projects/${e}/gateway/keys`,{name:t}),"Gateway request failed")}async function ta(e,t){return a(await o.delete(`/projects/${e}/gateway/keys/${t}`),"Gateway request failed")}async function ra(e,t,r){return a(await o.post(`/projects/${e}/gateway/playground`,{prompt:t,models:r}),"Gateway request failed")}async function na(e){let t=new FormData;t.append("audio_file",e);let r=await o.upload("/transcription",t,{showErrors:!0});if(r.error)throw new Error(`Error transcribing audio: ${r.error.message} (${r.error.status})`);return r.data}async function sa(e,t){let r=new URLSearchParams;t?.segment&&r.set("segment",t.segment),t?.kind&&r.set("kind",t.kind);let n=r.toString();return a(await o.get(`/projects/${e}/review/items${n?`?${n}`:""}`,{showErrors:!1}))}async function ia(e,t){return a(await o.get(`/projects/${e}/review/items/${t}`))}async function oa(e,t){return a(await o.post(`/projects/${e}/review/items`,t))}async function aa(e,t,r){return a(await o.post(`/projects/${e}/review/items/${t}/act`,r))}async function ca(e,t){return a(await o.post(`/projects/${e}/review/bulk`,t))}async function la(e){return a(await o.get(`/p/share?sandbox_id=${encodeURIComponent(e)}`),"Failed to load public links").shares??[]}async function ua(e){return a(await o.post("/p/share",{sandbox_id:e.sandboxId,port:e.port,ttl:e.ttl,label:e.label}),"Failed to generate public URL")}async function pa(e,t){let r=await o.delete(`/p/share/${encodeURIComponent(t)}?sandbox_id=${encodeURIComponent(e)}`);if(!r.success)throw new Error(r.error?.message??"Failed to revoke public link")}var Pt=class extends Error{constructor(r,n){super(r);this.status=n;this.name="PublicSessionShareError"}status};function jc(e,t=""){return`${Ee()}/public/session-shares/${encodeURIComponent(e)}${t}`}async function Ac(e){let t=await fetch(e,{method:"GET",headers:{Accept:"application/json"}}),r=await t.text().catch(()=>""),n=null;try{n=r?JSON.parse(r):null}catch{}if(!t.ok){let s=(n&&typeof n=="object"&&"error"in n&&typeof n.error=="string"?n.error:null)||t.statusText||`HTTP ${t.status}`;throw new Pt(s,t.status)}return n}async function Zp(e){return Ac(jc(e))}async function ed(e){return Ac(jc(e,"/messages"))}async function da(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return a(await o.get(`/accounts/tokens${t}`))}async function ga(e){let{accountId:t,expiresAt:r,projectId:n,name:s}=e;return a(await o.post("/accounts/tokens",{name:s,...t?{account_id:t}:{},...r?{expires_at:r}:{},...n?{project_id:n}:{}}))}async function ma(e,t){let r=t?`?account_id=${encodeURIComponent(t)}`:"";return a(await o.delete(`/accounts/tokens/${e}${r}`))}async function fa(e){return a(await o.get(`/projects/${e}/cli-token`))}async function ya(e,t){return a(await o.post(`/projects/${e}/cli-token`,t??{}))}async function ha(e,t){return a(await o.delete(`/projects/${e}/cli-token/${t}`))}async function ba(e,t){let r=new URLSearchParams;t?.action&&r.set("action",t.action),t?.since&&r.set("since",t.since),t?.cursor&&r.set("cursor",t.cursor),t?.limit!=null&&r.set("limit",String(t.limit));let n=r.toString();return a(await o.get(`/accounts/${e}/audit${n?`?${n}`:""}`))}async function xa(e,t){let r=new URLSearchParams;t?.format&&r.set("format",t.format),t?.action&&r.set("action",t.action),t?.since&&r.set("since",t.since);let n=r.toString();return a(await o.get(`/accounts/${e}/audit/export${n?`?${n}`:""}`))}async function ka(e){return a(await o.get(`/accounts/${e}/audit/webhooks`))}async function Pa(e,t){return a(await o.post(`/accounts/${e}/audit/webhooks`,t))}async function wa(e,t,r){return a(await o.patch(`/accounts/${e}/audit/webhooks/${t}`,r))}async function _a(e,t){return a(await o.delete(`/accounts/${e}/audit/webhooks/${t}`))}async function Sa(e,t){return a(await o.post(`/projects/${e}/secret-requests`,{names:t.names,labels:t.labels,descriptions:t.descriptions,scope:t.scope,expires_in_minutes:t.expiresInMinutes}),"Failed to mint secret-entry link")}async function va(e,t){return a(await o.post(`/projects/${e}/connect-requests`,{slug:t.slug,expires_in_minutes:t.expiresInMinutes}),"Failed to mint connect link")}async function Ca(e){let t=new URLSearchParams;e?.query&&t.set("query",e.query),e?.type&&t.set("type",e.type),e?.source&&t.set("source",e.source);let r=t.toString()?`?${t.toString()}`:"";return a(await o.get(`/marketplace/items${r}`))}async function Ra(){return a(await o.get("/marketplace/marketplaces"))}async function Ta(){return a(await o.get("/marketplace/marketplaces/featured"))}async function Ia(e){return a(await o.get(`/marketplace/items/${encodeURIComponent(e)}`),"Item not found")}async function ja(e,t){return a(await o.get(`/marketplace/items/${encodeURIComponent(e)}/file?path=${encodeURIComponent(t)}`),"File not found")}async function Aa(){return a(await o.get("/marketplace/sources"))}async function Ea(e){return a(await o.post("/marketplace/sources",e),"Failed to add marketplace source")}async function $a(e){return a(await o.delete(`/marketplace/sources/${encodeURIComponent(e)}`),"Failed to remove marketplace source")}async function td(e){return a(await o.get(`/templates/${encodeURIComponent(e)}`))}async function rd(e,t){return a(await o.post(`/templates/${encodeURIComponent(e)}/install`,t))}function nd(e){return e?e.runtimeReady!==void 0?e.runtimeReady===!0:e.opencode!==void 0?e.opencode==="ok"||e.opencode===!0:e.status!=="starting"&&e.status!=="down"&&e.status!=="error":!1}async function qa(e,t){let r=(e===void 0?$():e)||null;if(!r)return{status:0,ok:!1,health:null,body:""};let n=await R(`${r}/kortix/health`,{method:"GET",...t},{retryOnAuthError:!1}),s=await n.text().catch(()=>""),c=null;try{c=s?JSON.parse(s):null}catch{c=null}return{status:n.status,ok:n.ok,health:c,body:s}}var V={DESKTOP:"6080",DESKTOP_HTTPS:"6081",PRESENTATION_VIEWER:"3210",STATIC_FILE_SERVER:"3211",KORTIX_MASTER:"8000",BROWSER_STREAM:"9223",BROWSER_VIEWER:"9224",SSH:"22"};var Ec=/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s)"'<>]*/g,$c=/^https?:\/\/p(\d+)-([^.]+)\.localhost(?::(\d+))?(\/.*)?$/,qc=new Set([22,4096,parseInt(V.KORTIX_MASTER,10)]);function sd(e){return $c.test(e)}function wt(e){if(!e)return"/";let t=e,r=t.indexOf("](");r!==-1&&(t=t.slice(0,r));let n=t.toLowerCase().indexOf("%5d(");return n!==-1&&(t=t.slice(0,n)),t?t.startsWith("/")?t:`/${t}`:"/"}function id(e){let t=e.indexOf("](");return t===-1?e:e.slice(0,t)}var od=new Set(["'",'"',"`","<","(","["]),ad=new Set([">","'",'"',"`",")","]",",",";",".","!","?"]);function cd(e){let t=0,r=e.length;for(;t<r&&(e[t]===" "||e[t]===" ");)t++;for(;r>t&&(e[r-1]===" "||e[r-1]===" ");)r--;for(;t<r&&od.has(e[t]);)t++;for(;r>t&&ad.has(e[r-1]);)r--;return e.slice(t,r)}function ld(e){return e.match(/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s"'<>)]*/i)?.[0]??null}var ud=/^\/proxy\/(\d{1,5})(\/.*)?$/,pd=/^\/(connectors|settings|dashboard|projects|agents|skills|tools|commands|support|changelog|files|p|browser|desktop|terminal|sessions|services|workspace|channels|scheduled-tasks|marketplace|templates|tunnel|admin|auth)(\/|$|\?)/;function Dc(e){if(!e)return!1;try{let t=new URL(e);return t.hostname!=="localhost"&&t.hostname!=="127.0.0.1"?!1:pd.test(t.pathname)}catch{return!1}}function Le(e){if(!e)return null;let t=cd(id(e.trim())),r=Ma(t);if(r){let n=wt(r.path||"/");return{originalUrl:`http://localhost:${r.port}${n}`,port:r.port,path:n}}try{let n=new URL(t);if(n.protocol!=="http:"&&n.protocol!=="https:"||n.hostname!=="localhost"&&n.hostname!=="127.0.0.1"||!n.port)return null;let s=parseInt(n.port,10);if(!Number.isInteger(s)||s<1||s>65535)return null;let c=`${n.pathname||"/"}${n.search}${n.hash}`,u=parseInt(V.KORTIX_MASTER,10);if(s===u){let g=n.pathname.match(ud);if(g){let h=parseInt(g[1],10);if(h>=1&&h<=65535)return s=h,c=wt(`${g[2]||"/"}${n.search}${n.hash}`),{originalUrl:`http://localhost:${s}${c}`,port:s,path:c}}}let d=wt(c);return{originalUrl:`${n.protocol}//${n.hostname}:${s}${d}`,port:s,path:d}}catch{let n=ld(e);return n&&n!==e?Le(n):null}}function dd(e){let t=[],r=/```[\s\S]*?```/g,n;for(;(n=r.exec(e))!==null;)t.push([n.index,n.index+n[0].length]);let s=/`[^`\n]+`/g;for(;(n=s.exec(e))!==null;){let c=n.index,u=c+n[0].length;t.some(([g,h])=>c>=g&&u<=h)||t.push([c,u])}return t}function gd(e,t){return t.some(([r,n])=>e>=r&&e<n)}function Mc(e){let t=[],r=new Set,n=dd(e);Ec.lastIndex=0;let s;for(;(s=Ec.exec(e))!==null;){let c=Le(s[0]);if(!c)continue;let{originalUrl:u,port:d,path:g}=c;d<1||d>65535||qc.has(d)||r.has(u)||(r.add(u),t.push({originalUrl:u,port:d,path:g,startIndex:s.index,endIndex:s.index+u.length,inCodeBlock:gd(s.index,n)}))}return t}function md(e){return Mc(e).length>0}function fd(e){try{let{hostname:t}=new URL(e);return t==="localhost"||t==="127.0.0.1"}catch{return!1}}function Pe(e,t,r){let n=wt(t);if(!fd(r.apiBaseUrl)){let s=r.apiBaseUrl.length;for(;s>0&&r.apiBaseUrl.charCodeAt(s-1)===47;)s--;return`${r.apiBaseUrl.slice(0,s)}/p/${r.sandboxId}/${e}${n}`}return`http://p${e}-${r.sandboxId}.localhost:${r.backendPort}${n}`}function yd(e,t){return Pe(e,"/",t)}function Uc(e){let t=Le(e);return!(!t||qc.has(t.port)||Dc(e))}function Da(e,t){if(!e)return e;let r=Le(e);return r?Uc(r.originalUrl)?Pe(r.port,r.path,t):r.originalUrl:e}function hd(e,t="/"){return`http://localhost:${e}${t}`}var Oc=/^https?:\/\/[^/]+\/v1\/p\/([^/]+)\/(\d+)(\/.*)?$/;function Ma(e){let t=e.match($c);if(t)return{port:parseInt(t[1],10),sandboxId:t[2],backendPort:t[3]?parseInt(t[3],10):80,path:t[4]||"/"};let r=e.match(Oc);if(r)try{let n=new URL(e);return{port:parseInt(r[2],10),sandboxId:r[1],backendPort:parseInt(n.port,10)||(n.protocol==="https:"?443:80),path:r[3]||"/"}}catch{return null}return null}function bd(e){try{let t=Ma(e);return t?`http://localhost:${t.port}${t.path}`:null}catch{return null}}function xd(e){return sd(e)||Oc.test(e)}var Oe="/web-proxy/";function kd(e,t){try{let r=new URL(e);if(r.protocol!=="http:"&&r.protocol!=="https:")return null;let n=r.protocol.replace(":",""),s=`${Oe}${n}/${r.host}${r.pathname}${r.search}${r.hash}`,c=parseInt(V.KORTIX_MASTER,10);return`${Pe(c,"/",t).replace(/\/$/,"")}${s}`}catch{return null}}function Pd(e){try{let t=new URL(e),r=t.pathname.indexOf(Oe);if(r===-1)return null;let s=t.pathname.slice(r+Oe.length).match(/^(https?)\/([\w.\-]+(?::\d+)?)(\/.*)?$/);if(!s)return null;let c=s[1],u=s[2],d=s[3]||"/";return`${c}://${u}${d}${t.search}${t.hash}`}catch{return null}}function wd(e){try{return new URL(e).pathname.includes(Oe)}catch{return e.includes(Oe)}}function _d(e){if(!e)return!1;let t=e.trim();return!!(/^https?:\/\/(?!localhost|127\.0\.0\.1)/i.test(t)||/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(t))}function Sd(e){let t=e.trim();return t?/^https?:\/\//i.test(t)?t:/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(t)?`https://${t}`:null:null}var Lc="frontend";function _t(e,t,r){(e==="error"?console.error:e==="warn"?console.warn:e==="debug"?console.debug:console.log)(`[${Lc}] ${t}`,...r?[r]:[]);try{X().app.log({service:Lc,level:e,message:t,extra:r})}catch{}}var Z={debug:(e,t)=>_t("debug",e,t),info:(e,t)=>_t("info",e,t),warn:(e,t)=>_t("warn",e,t),error:(e,t)=>_t("error",e,t)};function Fc(e){return{type:"heartbeat-gap",gapMs:e}}function Gc(e){switch(e.type){case"message.updated":return{type:"message.updated",sessionID:e.properties.sessionID,message:e.properties.info};case"message.removed":return{type:"message.removed",sessionID:e.properties.sessionID,messageID:e.properties.messageID};case"message.part.updated":return{type:"message.part.updated",sessionID:e.properties.sessionID,part:e.properties.part};case"message.part.removed":return{type:"message.part.removed",sessionID:e.properties.sessionID,messageID:e.properties.messageID,partID:e.properties.partID};case"session.status":return{type:"session.status",sessionID:e.properties.sessionID,status:e.properties.status};case"session.idle":return{type:"session.idle",sessionID:e.properties.sessionID};case"session.error":return{type:"session.error",sessionID:e.properties.sessionID,error:e.properties.error};case"question.asked":return{type:"question.asked",sessionID:e.properties.sessionID,requestID:e.properties.id,questions:e.properties.questions,tool:e.properties.tool};case"question.replied":return{type:"question.answered",sessionID:e.properties.sessionID,requestID:e.properties.requestID,outcome:"replied",answers:e.properties.answers};case"question.rejected":return{type:"question.answered",sessionID:e.properties.sessionID,requestID:e.properties.requestID,outcome:"rejected"};case"permission.asked":return{type:"permission.asked",sessionID:e.properties.sessionID,requestID:e.properties.id,permission:e.properties.permission,patterns:e.properties.patterns,tool:e.properties.tool};case"permission.replied":return{type:"permission.replied",sessionID:e.properties.sessionID,requestID:e.properties.requestID,reply:e.properties.reply};case"todo.updated":return{type:"todo.updated",sessionID:e.properties.sessionID,todos:e.properties.todos};case"server.connected":return{type:"connection",status:"connected"};default:return null}}var vd={now:()=>Date.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e)},Cd=16,Rd=8,Td=6e4,Id=5e3,jd=250,Ad=1e3,Ed=3e4,$d=5,qd=3e3,Dd=3e4,Md=2e4,Ud=2e3,Od=8;function Ld(e){if(e.type==="session.status")return`session.status:${e.properties.sessionID}`;if(e.type==="lsp.updated")return"lsp.updated"}function Bc(e){if(e.aborted)return{promise:Promise.resolve(),cleanup:()=>{}};let t=()=>{};return{promise:new Promise(n=>{t=()=>n(),e.addEventListener("abort",t,{once:!0})}),cleanup:()=>e.removeEventListener("abort",t)}}function St(e){let{client:t,onEvent:r,onGapRehydrate:n,onParked:s,signal:c}=e,u=e.timers??vd,d=e.connectTimeoutMs??Md,g=e.heartbeatTimeoutMs??Td,h=e.maxConsecutiveHardFailures??Od,m=new AbortController,x=()=>m.abort();c&&(c.aborted?m.abort():c.addEventListener("abort",x,{once:!0}));let w=u.now(),k=[],l,i=0,P=new Map,_=()=>{if(l&&u.clearTimeout(l),l=void 0,k.length===0)return;let A=k;k=[],P.clear(),i=u.now(),w=u.now();for(let v of A)if(v)try{r(v.event)}catch(I){console.warn("[opencode-events] event handler threw, skipping",I)}},D=()=>{if(l)return;let A=u.now()-i;l=u.setTimeout(_,Math.max(0,Cd-A))};return(async()=>{let A=0,v=0;for(;!m.signal.aborted;){let I=!1,j=!1,f,S,U=null,N=u.now(),M=new AbortController,O=Bc(m.signal);O.promise.then(()=>M.abort());try{let F=await new Promise(($t,Ce)=>{let G=!1;S=u.setTimeout(()=>{G||(G=!0,Z.warn("SSE connect timed out, forcing reconnect",{connectTimeoutMs:d}),M.abort(),Ce(new Error(`SSE connect timed out after ${d}ms`)))},d),t.global.event({signal:M.signal,sseDefaultRetryDelay:qd,sseMaxRetryDelay:Dd,sseMaxRetryAttempts:1}).then(W=>{G||(G=!0,u.clearTimeout(S),$t(W))},W=>{G||(G=!0,u.clearTimeout(S),Ce(W))})}),{stream:E}=F;w=u.now();let B=()=>{u.clearTimeout(f),f=u.setTimeout(()=>{Z.warn("SSE heartbeat timeout, forcing reconnect"),M.abort()},g)};B();let ze=u.now(),Cl=E[Symbol.asyncIterator]();for(;!M.signal.aborted;){let $t=Cl.next().then(J=>({kind:"next",result:J}),J=>({kind:"error",error:J})),Ce=Bc(M.signal),G=await Promise.race([$t,Ce.promise.then(()=>({kind:"aborted"}))]);if(Ce.cleanup(),G.kind==="aborted")break;if(G.kind==="error")throw G.error;if(G.result.done)break;I=!0,B();let W=G.result.value,Je=W&&typeof W=="object"&&"payload"in W?W.payload:W;if(!Je?.type)continue;let qt=Ld(Je);if(qt){let J=P.get(qt);J!==void 0&&(k[J]=void 0),P.set(qt,k.length)}k.push({type:Je.type,event:Je}),D(),!(u.now()-ze<Rd)&&(ze=u.now(),await new Promise(J=>u.setTimeout(J,0)))}j=I}catch(F){if(m.signal.aborted)break;U=F;let E=String(F),B=E.includes("401")||E.includes("403")||E.includes("Unauthorized")||E.includes("Token refresh failed");if(Z.error("SSE event stream error",{error:E,retryCount:A,isAuthError:B}),B)try{je(),await nt(),Z.info("SSE: refreshed auth token after auth error")}catch(ze){Z.error("SSE: failed to refresh auth token",{error:String(ze)})}}finally{u.clearTimeout(f),u.clearTimeout(S),M.abort(),O.cleanup(),_()}if(m.signal.aborted)break;let ce=u.now()-N,Ve=U?.cause?.status;if(v=!I&&(typeof Ve=="number"&&Ve>=400||ce<Ud)?v+1:0,v>=h){Z.error("SSE event stream parked \u2014 giving up after consecutive hard failures",{consecutiveFailures:v,lastError:String(U)});try{s?.({consecutiveFailures:v,lastError:U})}catch(F){console.warn("[opencode-events] onParked handler threw",F)}break}let ve=u.now()-w;ve>Id&&n?.(ve),j?A=0:(A++,A>1&&Z.warn("SSE event stream reconnecting",{retryCount:A}));let H=j?jd:Math.min(Ad*2**Math.min(A-1,$d),Ed);await new Promise(F=>{let E=u.setTimeout(F,H),B=()=>{u.clearTimeout(E),F()};m.signal.addEventListener("abort",B,{once:!0})})}})(),{close:()=>{m.abort(),c&&c.removeEventListener("abort",x),l&&u.clearTimeout(l)}}}function Fd(){return X()}var vt=new Map,Fe=class extends Error{constructor(t){super(`Session runtime not ready \u2014 call \`await session.ensureReady()\` (it drives \`start()\` to completion and resolves this session's own sandbox runtime) before calling \`${t}\`.`),this.name="SessionNotReadyError"}};function Kc(e,t){Qe(e,t);function r(l){try{return new URL(l)}catch{if(typeof window<"u"&&window.location?.origin)try{return new URL(l,window.location.origin)}catch{return null}throw new C(`Kortix SDK: backendUrl must be an absolute URL outside the browser (got ${JSON.stringify(l)}). Relative paths like "/api/kortix" only resolve against a page origin \u2014 configure an absolute backendUrl for server-side hosts.`,{code:"INVALID_BACKEND_URL"})}}function n(l){let i=T().backendUrl??e.backendUrl,P=80,_=r(i);return _&&(P=_.port?Number(_.port):_.protocol==="https:"?443:80),{sandboxId:l,backendPort:P,apiBaseUrl:i}}let s={list:vn,get:Rn,create:Cn,updateName:Tn,leave:Ln,members:In,invite:jn,removeMember:Un,updateMemberRole:On,invites:An,cancelInvite:En,resendInvite:$n,tokens:{list:da,create:ga,revoke:ma},audit:{log:ba,export:xa,webhooks:{list:ka,create:Pa,update:wa,remove:_a}}},c={accountState:ro,accountStateMinimal:no,transactions:so,transactionsSummary:io,creditBreakdown:oo,usageHistory:ao,tierConfigurations:co,checkout:{createSession:l=>lo(l),confirmSession:(l,i)=>uo(l,i)},subscription:{createPortalSession:(l,i)=>po(l,i),cancel:(l,i)=>go(l,i),reactivate:l=>mo(l),scheduleDowngrade:(l,i,P)=>fo(l,i,P),cancelScheduledChange:l=>yo(l),prorationPreview:(l,i)=>ho(l,i)},credits:{purchase:l=>bo(l),autoTopupSettings:l=>xo(l),configureAutoTopup:l=>ko(l)}},u={describe:qn,accept:Dn,decline:Mn},d={list:oe,listForAccount:Gn,get:gt,detail:mt,create:Hn,createRepo:Wn,provision:Vn,update:ht,archive:bt,llmCatalog:ft,modelPicker:yt,sandboxHealth:xt,sandboxTemplates:ti,sessions:be,createSession:xe},g={linkRepository:Qn,getInstallation:Yn,listInstallations:Zn,listRepositories:es,listRepositoryBranches:ts,saveInstallation:rs,deleteInstallation:ns},h={list:la,create:ua,revoke:pa},m=Xs,x={items:l=>Ca(l),item:l=>Ia(l),itemFile:(l,i)=>ja(l,i),marketplaces:()=>Ra(),featured:()=>Ta(),sources:{list:()=>Aa(),add:l=>Ea(l),remove:l=>$a(l)}};function w(l){return{get:i=>gt(l,i),detail:()=>mt(l),update:i=>ht(l,i),archive:()=>bt(l),llmCatalog:()=>ft(l),modelPicker:()=>yt(l),sandboxHealth:()=>xt(l),onboardingComplete:(...i)=>Xn(l,...i),tokens:{list:()=>fa(l),create:i=>ya(l,i),revoke:i=>ha(l,i)},setupLinks:{requestSecret:i=>Sa(l,i),requestConnector:i=>va(l,i)},validateManifest:i=>Kn(l,i),gitToken:()=>Nn(l),secrets:{list:()=>Ss(l),upsert:i=>vs(l,i),remove:i=>Is(l,i),setPersonal:(...i)=>js(l,...i),removePersonal:i=>As(l,i),promoteToShared:i=>Es(l,i),setGitCredential:i=>Ts(l,i),startProviderOAuth:(...i)=>Cs(l,...i),pollProviderOAuth:(...i)=>Rs(l,...i)},access:{list:()=>as(l),invite:(...i)=>us(l,...i),update:(...i)=>cs(l,...i),revoke:i=>ls(l,i),pendingInvites:()=>ps(l),resendInvite:(...i)=>gs(l,...i),revokeInvite:(...i)=>ds(l,...i),requests:()=>ss(l),approveRequest:(...i)=>is(l,...i),rejectRequest:(...i)=>os(l,...i),groupGrants:()=>ms(l),attachGroupGrant:(...i)=>fs(l,...i),updateGroupGrant:(...i)=>ys(l,...i),detachGroupGrant:i=>hs(l,i),resourceGrants:{list:()=>bs(l),create:i=>xs(l,i),remove:i=>ks(l,i)}},connectors:{list:()=>Os(l),config:(...i)=>Ns(l,...i),create:(...i)=>Vs(l,...i),remove:(...i)=>zs(l,...i),sync:()=>Ls(l),setName:(...i)=>Hs(l,...i),setCredentialMode:(...i)=>Fs(l,...i),setCredential:(...i)=>Qs(l,...i),setSensitive:(...i)=>Gs(l,...i),profiles:{list:()=>$s(l),reconcile:(...i)=>qs(l,...i),updateCredential:(...i)=>Ds(l,...i),revoke:(...i)=>Ms(l,...i),activate:(...i)=>Us(l,...i)},policies:{get:(...i)=>Bs(l,...i),set:(...i)=>Ks(l,...i)},pipedream:{listApps:(...i)=>Js(l,...i),connect:(...i)=>Ws(l,...i),finalize:(...i)=>Ys(l,...i)}},policies:{list:()=>Zs(l),set:(...i)=>ei(l,...i)},triggers:{list:()=>Ki(l),create:(...i)=>Ni(l,...i),update:(...i)=>Hi(l,...i),remove:(...i)=>Wi(l,...i),fire:(...i)=>zi(l,...i),setActivation:(...i)=>Vi(l,...i)},files:{list:i=>ui(l,i),read:(i,P)=>di(l,i,P),search:(...i)=>pi(l,...i),archive:(...i)=>gi(l,...i),history:(...i)=>bi(l,...i)},git:{commits:()=>fi(l),commit:i=>yi(l,i),commitDiff:i=>hi(l,i),branches:()=>mi(l),versionDiff:(...i)=>xi(l,...i),inviteCollaborator:(...i)=>Bn(l,...i)},changeRequests:{list:()=>ki(l),get:i=>Pi(l,i),diff:i=>wi(l,i),mergePreview:i=>_i(l,i),open:(...i)=>Si(l,...i),merge:(...i)=>vi(l,...i),close:(...i)=>Ci(l,...i),reopen:(...i)=>Ri(l,...i),requestChanges:(...i)=>Ti(l,...i)},sessions:{list:()=>be(l),create:i=>xe(l,i)},review:{list:i=>sa(l,i),get:i=>ia(l,i),submit:i=>oa(l,i),act:(...i)=>aa(l,...i),bulkAct:i=>ca(l,i)},approvals:{list:i=>Ps(l,i),resolve:(...i)=>_s(l,...i),sessionsNeedingInput:i=>ws(l,i)},gateway:{logs:i=>Ko(l,i),log:i=>No(l,i),overview:i=>Ho(l,i),series:i=>Wo(l,i),breakdown:i=>Vo(l,i),sessions:i=>zo(l,i),errors:i=>Jo(l,i),budgets:()=>Xo(l),setBudget:i=>Qo(l,i),deleteBudget:i=>Yo(l,i),keys:()=>Zo(l),createKey:i=>ea(l,i),revokeKey:i=>ta(l,i),routing:{get:()=>Lo(l),set:i=>Fo(l,i),reset:()=>Go(l),preview:i=>Bo(l,i)},playground:(i,P)=>ra(l,i,P)},channels:{slack:{installation:()=>Po(l),connect:i=>wo(l,i),mode:()=>_o(l),manifest:()=>So(l),disconnect:()=>vo(l),getFile:i=>Co(l,i),uploadFile:i=>Ro(l,i)},email:{installation:i=>Io(l,i),mode:()=>jo(l),connect:i=>Ao(l,i),disconnect:i=>Eo(l,i),updatePolicy:(...i)=>$o(l,...i)},meet:{voices:()=>qo(l),setVoice:i=>Do(l,i),setBotName:i=>Mo(l,i),previewVoice:i=>Uo(l,i),speak:(i,P,_)=>Oo(l,i,P,_)}},updateExperimentalFeature:(...i)=>zn(l,...i),modelDefaults:{get:()=>Xi(l),set:i=>Qi(l,i),clear:i=>Yi(l,i)},setDefaultAgent:i=>eo(l,i),sandbox:{list:()=>li(l),snapshots:()=>ri(l),rebuildSnapshot:i=>ni(l,i),fixWithAgent:()=>si(l),createTemplate:i=>ii(l,i),updateTemplate:(...i)=>oi(l,...i),removeTemplate:i=>ai(l,i),buildTemplate:i=>ci(l,i),setProvider:i=>Jn(l,i)},setAgentScope:(...i)=>Zi(l,...i),session:i=>k(l,i)}}function k(l,i){let P=null,_,D;function A(){if(P)return P;let f=Rc(l,i);return f&&(P=f),P}async function v(){let f=A();if(f)return f;let S=`${l}
|
|
8
|
+
${i}`,U=vt.get(S);if(U)return P=await U,P;let N=(async()=>{let M=await ke(l,i,3e4);if(!M||M.stage!=="ready"||!M.sandbox||!M.opencode_session_id)throw new C(`Session runtime not ready (stage: ${M?.stage??"unknown"})`,{code:"RUNTIME_UNAVAILABLE"});let O=M.sandbox.external_id;if(!O)throw new C("Session sandbox has no external_id \u2014 cannot resolve its runtime URL",{code:"RUNTIME_UNAVAILABLE"});let ce=st(O);return pc(ce,O),{opencodeSessionId:M.opencode_session_id,runtimeUrl:ce,sandboxId:O}})();vt.set(S,N);try{return P=await N,P}finally{vt.get(S)===N&&vt.delete(S)}}function I(f){let S=A();if(!S)throw new Fe(f);return S}function j(){P=null,Ic(l,i)}return{get:f=>Oi(l,i,f),update:f=>Gi(l,i,f),delete:()=>(j(),Bi(l,i)),start:(...f)=>ke(l,i,...f),restart:()=>(j(),Me(l,i)),stop:()=>(j(),Ue(l,i)),setSharing:f=>$i(l,i,f),previews:()=>qi(l,i),commit:f=>Ii(l,i,f),publicShares:{list:()=>Di(l,i),create:(...f)=>Mi(l,i,...f),revoke:(...f)=>Ui(l,i,...f)},audit:(f,S)=>Li(l,i,f,S),transcript:f=>Fi(l,i,f),ensureReady:v,health:f=>qa(A()?.runtimeUrl??null,f),previewUrl:(f,S="/")=>Pe(f,S,n(I("previewUrl").sandboxId)),proxyUrl:f=>Da(f,n(I("proxyUrl").sandboxId)),setModel:f=>{_=f},setAgent:f=>{D=f},send:async(f,S)=>{let{opencodeSessionId:U,runtimeUrl:N}=await v(),M=S?.model??_,O=S?.agent??D;return se(N).session.prompt({sessionID:U,parts:[{type:"text",text:f}],...M?{model:M}:{},...O?{agent:O}:{}})},abort:async()=>{let{opencodeSessionId:f,runtimeUrl:S}=await v();return se(S).session.abort({sessionID:f})},stream:async f=>{let{runtimeUrl:S}=await v();return St({client:se(S),onEvent:f.onEvent,onGapRehydrate:f.onGapRehydrate,signal:f.signal})},get runtime(){return se(I("runtime").runtimeUrl)},files:{list:async f=>mn(f,(await v()).runtimeUrl),read:async f=>ut(f,(await v()).runtimeUrl),readBlob:async f=>pt(f,(await v()).runtimeUrl),status:async()=>fn((await v()).runtimeUrl),findFiles:async(f,S)=>yn(f,S,(await v()).runtimeUrl),findText:async f=>hn(f,(await v()).runtimeUrl),upload:async(f,S,U)=>dt(f,S,U,(await v()).runtimeUrl),create:async f=>bn(f,(await v()).runtimeUrl),copy:async(f,S)=>xn(f,S,(await v()).runtimeUrl),remove:async f=>kn(f,(await v()).runtimeUrl),mkdir:async f=>Pn(f,(await v()).runtimeUrl),rename:async(f,S)=>wn(f,S,(await v()).runtimeUrl)}}}return{config:e,accounts:s,accountInvites:u,projects:d,project:w,session:k,github:g,billing:c,sandboxShares:h,transcribe:na,connectStatus:m,marketplace:x,validateToken:Fn,runtime:Fd}}function Nc(){let e=typeof crypto<"u"?crypto:void 0;if(e?.randomUUID)return e.randomUUID();let t=new Uint8Array(16);if(e?.getRandomValues)e.getRandomValues(t);else for(let n=0;n<16;n++)t[n]=Math.floor(Math.random()*256);t[6]=t[6]&15|64,t[8]=t[8]&63|128;let r=[...t].map(n=>n.toString(16).padStart(2,"0"));return`${r[0]}${r[1]}${r[2]}${r[3]}-${r[4]}${r[5]}-${r[6]}${r[7]}-${r[8]}${r[9]}-${r.slice(10).join("")}`}var Ua={thinking:!1,toolDetails:!0,assistantMetadata:!0};function Gd(e){return e&&e.charAt(0).toUpperCase()+e.slice(1)}function Bd(e){let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let r=Math.floor(t/60),n=t%60;return`${r}m ${n.toFixed(0)}s`}function Kd(e,t){if(e.type==="text"&&!("synthetic"in e&&e.synthetic))return`${e.text}
|
|
9
9
|
|
|
10
10
|
`;if(e.type==="reasoning")return t.thinking?`> _Thinking:_
|
|
11
11
|
>
|
|
@@ -38,15 +38,15 @@ ${c}
|
|
|
38
38
|
${r.state.error}
|
|
39
39
|
\`\`\`
|
|
40
40
|
`),n+=`
|
|
41
|
-
`,n}return""}function
|
|
41
|
+
`,n}return""}function Nd(e,t){if(!t)return`## Assistant
|
|
42
42
|
|
|
43
|
-
`;let r=e.agent?
|
|
43
|
+
`;let r=e.agent?Gd(e.agent):"Assistant",n=e.modelID||"",s="";e.time?.completed&&e.time?.created&&(s=Bd(e.time.completed-e.time.created));let c=[n,s].filter(Boolean).join(" \xB7 ");return c?`## ${r} (${c})
|
|
44
44
|
|
|
45
45
|
`:`## ${r}
|
|
46
46
|
|
|
47
|
-
`}function
|
|
47
|
+
`}function Hd(e,t,r){let n="";e.role==="user"?n+=`## User
|
|
48
48
|
|
|
49
|
-
`:n+=
|
|
49
|
+
`:n+=Nd(e,r.assistantMetadata);for(let s of t)n+=Kd(s,r);return n}function Hc(e,t,r=Ua){let n=`# ${e.title||"Untitled Session"}
|
|
50
50
|
|
|
51
51
|
`;n+=`**Session ID:** \`${e.id}\`
|
|
52
52
|
`,n+=`**Created:** ${new Date(e.time.created).toLocaleString()}
|
|
@@ -54,11 +54,11 @@ ${r.state.error}
|
|
|
54
54
|
|
|
55
55
|
`,n+=`---
|
|
56
56
|
|
|
57
|
-
`;for(let s of t)n+=
|
|
57
|
+
`;for(let s of t)n+=Hd(s.info,s.parts,r),n+=`---
|
|
58
58
|
|
|
59
|
-
`;return n}function Kc(e,t){return`session-${e}.md`}function K(e){if(!e)return"An error occurred";if(typeof e=="string"){let t=e.startsWith("Error: ")?e.slice(7):e;try{let r=JSON.parse(t);if(typeof r=="string"){t=r;try{let n=JSON.parse(t);return St(n)||t}catch{return t}}return St(r)||t}catch{return Gd(t)??t}}return typeof e=="object"?St(e)||"An error occurred":String(e)}function Gd(e){let t=e.indexOf("{"),r=e.lastIndexOf("}");if(!(t===-1||r===-1||r<=t))try{let n=JSON.parse(e.slice(t,r+1));return St(n)}catch{return}}function St(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e;if(typeof t.message=="string"&&t.message)return t.message;if(typeof t.error=="string"&&t.error)return t.error;let r=t.data;if(typeof r?.message=="string")return r.message;let n=t.error;if(typeof n?.message=="string")return n.message}var Bd={bash:{label:"Shell",category:"shell"},pty_spawn:{label:"Spawn Terminal",category:"shell"},pty_read:{label:"Terminal Output",category:"shell"},pty_write:{label:"Terminal Input",category:"shell"},pty_input:{label:"Terminal Input",category:"shell"},pty_kill:{label:"Kill Process",category:"shell"},read:{label:"Read File",category:"files"},list:{label:"List Directory",category:"files"},ls:{label:"List Directory",category:"files"},write:{label:"Write File",category:"edit"},edit:{label:"Edit File",category:"edit"},multiedit:{label:"Edit File",category:"edit"},morph_edit:{label:"Edit File",category:"edit"},apply_patch:{label:"Apply Patch",category:"edit"},patch:{label:"Apply Patch",category:"edit"},grep:{label:"Search Code",category:"search"},glob:{label:"Find Files",category:"search"},image_search:{label:"Image Search",category:"search"},session_search:{label:"Search Sessions",category:"search"},webfetch:{label:"Fetch Page",category:"web"},scrape_webpage:{label:"Scrape Page",category:"web"},websearch:{label:"Web Search",category:"web"},web_search:{label:"Web Search",category:"web"},image_gen:{label:"Generate Image",category:"web"},video_gen:{label:"Generate Video",category:"web"},task:{label:"Delegate to Agent",category:"task"},todowrite:{label:"Plan Tasks",category:"task"},todoread:{label:"Read Plan",category:"task"},question:{label:"Ask Question",category:"task"},presentation_gen:{label:"Presentation",category:"task"},show:{label:"Show Output",category:"task"},show_user:{label:"Show Output",category:"task"},prune:{label:"Prune Context",category:"other"},distill:{label:"Distill Context",category:"other"},compress:{label:"Compress Context",category:"other"},context_info:{label:"Context Info",category:"other"}},Kd=[{prefix:"pty_",category:"shell"},{prefix:"agent_",category:"task"},{prefix:"session_",category:"task"},{prefix:"task_",category:"task"},{prefix:"trigger_",category:"task"},{prefix:"project_",category:"task"}];function Nd(e){return e.replace(/^oc[-_]/,"")}function Fe(e){return Nd(e).replace(/-/g,"_")}function vt(e){return Fe(e).split(/[_\s]+/).filter(Boolean).map(r=>r.charAt(0).toUpperCase()+r.slice(1)).join(" ")}function Ct(e){let t=Fe(e),r=Bd[t];if(r)return r;for(let{prefix:n,category:s}of Kd)if(t.startsWith(n))return{label:vt(e),category:s};return{label:vt(e),category:"other"}}var Hd=256*1024;function Wd(e){switch(e.status){case"pending":return"pending";case"running":return"running";case"completed":return"done";case"error":return"error";default:return e}}function Vd(e){if(e===void 0)return{};if(e.length>Hd)return{outputText:e};try{return{outputParsed:JSON.parse(e),outputText:e}}catch{return{outputText:e}}}function zd(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e,r=t.success===!1,n=t.error,s=typeof n=="string"&&n.length>0||typeof n=="object"&&n!==null;if(!(!r&&!s))return s?K(n):typeof t.message=="string"&&t.message?t.message:"Tool reported failure"}function Jd(e,t){let r="title"in t?t.title:void 0,n=t.status==="completed"?t.output:void 0,{outputParsed:s,outputText:c}=Vd(n),u=Wd(t),d=t.status==="error"?t.error:void 0;if(u==="done"){let g=zd(s);g&&(u="error",d=g)}return{name:e,title:r||Ct(e).label,status:u,input:t.input,output:n,outputParsed:s,outputText:c,error:d}}function Xd(e){return{kind:"text",id:e.id,text:e.text,synthetic:!!e.synthetic}}function Qd(e){return{kind:"reasoning",id:e.id,text:e.text}}function Yd(e){return{kind:"tool",id:e.id,tool:Jd(e.tool,e.state)}}function Zd(e){let t=e.mime;return{kind:"file",id:e.id,filename:e.filename,mime:t,url:e.url,isImage:t.startsWith("image/"),isPdf:t==="application/pdf"}}function eg(e){return{kind:"subtask",id:e.id,description:e.description,agent:e.agent,prompt:e.prompt,model:e.model}}function tg(e){return{kind:"patch",id:e.id,hash:e.hash,files:e.files,fileCount:e.files.length}}function rg(e){return{kind:"snapshot",id:e.id,snapshot:e.snapshot}}function ng(e){return{kind:"agent",id:e.id,name:e.name}}function sg(e){return{kind:"retry",id:e.id,attempt:e.attempt,message:K(e.error),createdAt:e.time.created}}function ig(e){return{kind:"compaction",id:e.id,auto:e.auto,overflow:!!e.overflow,tailStartId:e.tail_start_id}}function og(e){return{kind:"step",id:e.id,phase:"start",snapshot:e.snapshot}}function ag(e){return{kind:"step",id:e.id,phase:"finish",snapshot:e.snapshot,reason:e.reason,cost:e.cost,tokens:e.tokens}}function Ma(e){switch(e.type){case"text":return Xd(e);case"reasoning":return Qd(e);case"tool":return Yd(e);case"file":return Zd(e);case"subtask":return eg(e);case"patch":return tg(e);case"snapshot":return rg(e);case"agent":return ng(e);case"retry":return sg(e);case"compaction":return ig(e);case"step-start":return og(e);case"step-finish":return ag(e);default:return{kind:"unknown",raw:e}}}function cg(e){return e?{name:typeof e=="object"&&"name"in e&&typeof e.name=="string"?e.name:"Error",message:K(e)}:void 0}function lg(e){switch(e.kind){case"text":case"reasoning":return e.text.trim().length>0;case"step":return!1;default:return!0}}function Nc(e){let t=e.parts.map(Ma),r=e.info.role==="assistant"?e.info.error:void 0,n=cg(r),s=!n&&!t.some(lg);return{parts:t,error:n,isEmpty:s}}function ee(e){return e.type==="text"}function Rt(e){return e.type==="reasoning"}function z(e){return e.type==="tool"}function Hc(e){return e.type==="file"}function ug(e){return e.type==="agent"}function pg(e){return e.type==="compaction"}function dg(e){return e.type==="snapshot"}function gg(e){return e.type==="patch"}function mg(e){if(ee(e)||Rt(e))return e.text}function Wc(e){if(!Hc(e))return!1;let t=e.mime;return t.startsWith("image/")||t==="application/pdf"}function fg(e){let t=[],r=[];for(let n of e)Wc(n)?t.push(n):r.push(n);return{attachments:t,stickyParts:r}}function yg(e,t){let r=[];return e?.tool&&r.push(e.tool),t?.tool&&r.push(t.tool),r}function hg(e,t,r){return r.some(n=>n.messageID===t&&n.callID===e.callID)}var bg=new Set(["todoread","context_info"]);function Vc(e){return!bg.has(e.tool)}function xg(e){let t=e.tool||"";if(t==="task"||t==="agent_spawn"||t==="agent-spawn"||t==="agent_message"||t==="agent-message"||t==="agent_task"||t==="agent-task"||t==="agent_task_update"||t==="agent-task-update"||t==="agent_task_message"||t==="agent-task-message"||t==="agent_task_start"||t==="agent-task-start"||t==="task_create"||t==="task-create"||t==="task_start"||t==="task-start"||t==="task_update"||t==="task-update"||t==="task_message"||t==="task-message"){let n=e.state?.metadata?.sessionId;if(typeof n=="string"&&n)return n;let s=e.state?.title;if(s){let u=s.match(/\bses_[a-zA-Z0-9]+/);if(u)return u[0]}let c=e.state?.output;if(c){let u=c.match(/\bses_[a-zA-Z0-9]+/);if(u)return u[0]}return}let r=e.tool?.replace(/-/g,"_")||"";if(r==="session_spawn"||r==="session_start_background"){let n=e.state?.output;if(n){let s=n.match(/\*?\*?Session:?\*?\*?\s*(ses_[a-zA-Z0-9]+)/);if(s)return s[1]}return}}function kg(e){if(e)for(let t=e.length-1;t>=0;t--){let r=e[t]?.info;if(r?.role==="assistant"&&r.error)return K(r.error)}}function Pg(e){let t=[];for(let r of e)if(r.info.role==="assistant")for(let n of r.parts)z(n)&&Vc(n)&&t.push(n);return t}function wg(e,t={}){switch(e){case"read":return{icon:"glasses",title:"Read",subtitle:zc(t.filePath)};case"list":return{icon:"list",title:"List",subtitle:Jc(t.path)};case"glob":return{icon:"search",title:"Glob",subtitle:t.pattern};case"grep":return{icon:"search",title:"Grep",subtitle:t.pattern};case"webfetch":return{icon:"globe",title:"Web Fetch",subtitle:t.url};case"websearch":case"web-search":case"web_search":return{icon:"search",title:"Web Search",subtitle:t.query};case"scrape-webpage":return{icon:"globe",title:"Scrape",subtitle:t.urls?.split?.(",")[0]};case"image-search":return{icon:"image",title:"Image Search",subtitle:t.query};case"image-gen":return{icon:"image",title:"Image Gen",subtitle:t.prompt?.slice?.(0,40)};case"video-gen":return{icon:"cpu",title:"Video Gen",subtitle:t.prompt?.slice?.(0,40)};case"presentation-gen":{let r=t.action||"";return{icon:"presentation",title:{create_slide:"Create Slide",list_slides:"List Slides",preview:"Preview",export_pdf:"Export PDF",export_pptx:"Export PPTX"}[r]||"Presentation",subtitle:t.slide_title||t.presentation_name}}case"show":case"show-user":return{icon:"globe",title:"Output",subtitle:t.title||t.description};case"task":return{icon:"square-kanban",title:`Agent (${t.subagent_type||"task"})`,subtitle:Xc(t)};case"session_spawn":case"session_start_background":case"session-spawn":case"session-start-background":case"oc-session_spawn":case"oc-session-spawn":case"oc-session_start_background":case"oc-session-start-background":return{icon:"square-kanban",title:`Worker (${t.agent||"KortixWorker"})`,subtitle:t.description||t.prompt?.slice(0,60)};case"bash":return{icon:"terminal",title:"Shell",subtitle:t.description};case"edit":case"morph_edit":return{icon:"file-pen",title:"Edit",subtitle:Ua(t.filePath)};case"write":return{icon:"file-pen",title:"Write",subtitle:Ua(t.filePath)};case"apply_patch":return{icon:"file-pen",title:"Patch",subtitle:t.files?.length?`${t.files.length} file${t.files.length>1?"s":""}`:void 0};case"todowrite":return{icon:"check-square",title:"Todos"};case"todoread":return{icon:"check-square",title:"Todos (read)"};case"question":return{icon:"message-circle",title:"Questions"};case"prune":return{icon:"scissors",title:"DCP Prune",subtitle:t.reason};case"distill":return{icon:"scissors",title:"DCP Distill"};case"compress":return{icon:"scissors",title:"DCP Compress",subtitle:t.topic};case"context_info":return{icon:"scissors",title:"Context Info"};case"session_read":case"session-read":case"oc-session_read":case"oc-session-read":return{icon:"glasses",title:`Session Read (${t.mode||"summary"})`,subtitle:t.session_id?.slice(-12)};case"session_search":case"session-search":case"oc-session_search":case"oc-session-search":return{icon:"search",title:"Session Search",subtitle:t.query};case"session_message":case"session-message":case"oc-session_message":case"oc-session-message":return{icon:"message-circle",title:"Message \u2192 Session",subtitle:t.session_id?.slice(-12)};case"session_lineage":case"session-lineage":case"oc-session_lineage":case"oc-session-lineage":return{icon:"list-tree",title:"Session Lineage",subtitle:t.session_id?.slice(-12)};case"session_list_background":case"session-list-background":case"session_list_spawned":case"session-list-spawned":case"oc-session_list_background":case"oc-session-list-background":case"oc-session_list_spawned":case"oc-session-list-spawned":return{icon:"layers",title:"Background Sessions",subtitle:t.project||"all"};case"session_stats":case"session-stats":case"oc-session_stats":case"oc-session-stats":return{icon:"layers",title:"Session Stats",subtitle:t.session_id?.slice(-12)||"current"};case"session_list":case"session-list":case"oc-session_list":case"oc-session-list":return{icon:"list",title:"Session List",subtitle:t.search};case"session_get":case"session-get":case"oc-session_get":case"oc-session-get":return{icon:"book-open",title:"Session Get",subtitle:t.session_id?.slice(-12)};case"session_context":case"session-context":case"oc-session_context":case"oc-session-context":return{icon:"book-open",title:"Session Context",subtitle:t.session_id?.slice(-12)};case"project_delete":case"project-delete":case"oc-project_delete":case"oc-project-delete":return{icon:"trash-2",title:"Workspace Delete Disabled",subtitle:t.project};case"project_list":case"project-list":case"oc-project_list":case"oc-project-list":return{icon:"folder",title:"Projects"};case"project_get":case"project-get":case"oc-project_get":case"oc-project-get":case"project_update":case"project-update":case"oc-project_update":case"oc-project-update":return{icon:"folder",title:"Project",subtitle:t.name||t.project};case"project_select":case"project-select":case"oc-project_select":case"oc-project-select":return{icon:"folder",title:"Project Select",subtitle:t.project};case"project_create":case"project-create":case"oc-project_create":case"oc-project-create":return{icon:"folder-plus",title:"Project Create",subtitle:t.name};case"triggers":case"trigger_create":case"trigger-create":case"oc-trigger_create":case"oc-trigger-create":return{icon:"clock",title:"Create Trigger",subtitle:t.name};case"trigger_list":case"trigger-list":case"oc-trigger_list":case"oc-trigger-list":return{icon:"clock",title:"List Triggers"};case"trigger_get":case"trigger-get":case"oc-trigger_get":case"oc-trigger-get":return{icon:"clock",title:"Trigger Details",subtitle:t.name||t.id};case"trigger_delete":case"trigger-delete":case"oc-trigger_delete":case"oc-trigger-delete":return{icon:"clock",title:"Delete Trigger",subtitle:t.name||t.id};case"trigger_update":case"trigger-update":case"oc-trigger_update":case"oc-trigger-update":return{icon:"clock",title:"Update Trigger",subtitle:t.name||t.id};case"trigger_test":case"trigger-test":case"oc-trigger_test":case"oc-trigger-test":return{icon:"clock",title:"Test Trigger",subtitle:t.name||t.id};case"trigger_pause":case"trigger-pause":case"oc-trigger_pause":case"oc-trigger-pause":return{icon:"clock",title:"Pause Trigger",subtitle:t.name||t.id};case"trigger_resume":case"trigger-resume":case"oc-trigger_resume":case"oc-trigger-resume":return{icon:"clock",title:"Resume Trigger",subtitle:t.name||t.id};case"agent_spawn":case"agent-spawn":return{icon:"cpu",title:`Agent (${t.agent_type||"worker"})`,subtitle:t.description};case"agent_message":case"agent-message":return{icon:"message-circle",title:"Agent Message",subtitle:t.agent_id};case"agent_stop":case"agent-stop":return{icon:"ban",title:"Agent Stop",subtitle:t.agent_id};case"agent_status":case"agent-status":return{icon:"layers",title:"Agent Status"};case"agent_task":case"agent-task":case"oc-agent_task":case"oc-agent-task":return{icon:"check-square",title:"Create Task",subtitle:t.title};case"agent_task_update":case"agent-task-update":case"oc-agent_task_update":case"oc-agent-task-update":return{icon:"check-square",title:"Update Task",subtitle:t.task_id};case"agent_task_list":case"agent-task-list":case"oc-agent_task_list":case"oc-agent-task-list":return{icon:"check-square",title:"List Tasks"};case"agent_task_get":case"agent-task-get":case"oc-agent_task_get":case"oc-agent-task-get":return{icon:"check-square",title:"Task Details",subtitle:t.task_id};case"task_create":case"task-create":return{icon:"plus",title:"Create Task",subtitle:t.title};case"task_list":case"task-list":return{icon:"list",title:"Tasks",subtitle:t.status||"all"};case"task_update":case"task-update":return{icon:"refresh-cw",title:"Update Task",subtitle:t.id};case"task_done":case"task-done":return{icon:"check-circle",title:"Task Done",subtitle:t.id};case"task_delete":case"task-delete":return{icon:"trash-2",title:"Delete Task",subtitle:t.id};case"pty_spawn":return{icon:"terminal",title:"Spawn",subtitle:t.title||t.command};case"pty_read":return{icon:"terminal",title:"Terminal Output",subtitle:t.id};case"pty_write":case"pty_input":return{icon:"terminal",title:"Terminal Input",subtitle:t.id};case"pty_kill":return{icon:"terminal",title:"Kill Process",subtitle:t.id};default:return{icon:"cpu",title:e}}}function zc(e){if(!e)return;let t=e.split("/");return t[t.length-1]||e}function Ua(e){if(!e)return;let t=e.split("/"),r=t[t.length-1]||e;if(t.length<=1)return r;let n=t[t.length-2];return n?`${r} /${n}`:r}function Jc(e){if(!e)return;let t=e.lastIndexOf("/");if(!(t<0))return e.slice(0,t)||"/"}function _g(e,t){if(!t)return e;if(e.startsWith(t)){let r=e.slice(t.length);return r.startsWith("/")?r.slice(1):r}return e}function Ge(e,t=120){if(typeof e!="string")return"";let r=e.split(`
|
|
60
|
-
`).map(n=>n.trim()).find(Boolean);return r?r.length>t?`${r.slice(0,t).trim()}\u2026`:r:""}function
|
|
61
|
-
\u2026`:e}function
|
|
59
|
+
`;return n}function Wc(e,t){return`session-${e}.md`}function K(e){if(!e)return"An error occurred";if(typeof e=="string"){let t=e.startsWith("Error: ")?e.slice(7):e;try{let r=JSON.parse(t);if(typeof r=="string"){t=r;try{let n=JSON.parse(t);return Ge(n)||t}catch{return t}}return Ge(r)||t}catch{return Wd(t)??t}}return typeof e=="object"?Ge(e)||"An error occurred":String(e)}function zc(e){let t=e.indexOf("{"),r=e.lastIndexOf("}");if(!(t===-1||r===-1||r<=t))return e.slice(t,r+1)}function Wd(e){let t=zc(e);if(t)try{return Ge(JSON.parse(t))}catch{return}}function Ge(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e;if(typeof t.message=="string"&&t.message)return t.message;if(typeof t.error=="string"&&t.error)return t.error;let r=t.data;if(typeof r?.message=="string")return r.message;let n=t.error;if(typeof n?.message=="string")return n.message}function Oa(e){if(!(typeof e!="string"||!e))try{return JSON.parse(e)}catch{return}}function Vc(e){let t=typeof e.provider=="string"&&e.provider?e.provider:void 0,r=typeof e.code=="string"&&e.code?e.code:void 0,n=typeof e.suggestion=="string"&&e.suggestion?e.suggestion:void 0,s=typeof e.upstream_status=="number"?e.upstream_status:void 0,c=typeof e.request_id=="string"&&e.request_id?e.request_id:void 0;return!t&&!r&&!n&&s===void 0&&!c?void 0:{message:typeof e.message=="string"&&e.message||Ge(e)||"",provider:t,code:r,suggestion:n,upstreamStatus:s,requestId:c}}function ee(e){if(e==null)return;if(typeof e=="string"){let u=e.startsWith("Error: ")?e.slice(7):e,d=Oa(u)??Oa(zc(u));return d!==void 0?ee(d):void 0}if(typeof e!="object")return;let t=e,r=Vc(t);if(r)return r;let n=t.error;if(n&&typeof n=="object"&&!Array.isArray(n)){let u=Vc(n);if(u)return u}let s=t.data;if(s&&typeof s.responseBody=="string"){let u=Oa(s.responseBody);if(u!==void 0){let d=ee(u);if(d)return d}}let c=t.cause;if(c&&typeof c=="object"){let u=c.body;if(u!==void 0){let d=ee(u);if(d)return d}}}var Vd={bash:{label:"Shell",category:"shell"},pty_spawn:{label:"Spawn Terminal",category:"shell"},pty_read:{label:"Terminal Output",category:"shell"},pty_write:{label:"Terminal Input",category:"shell"},pty_input:{label:"Terminal Input",category:"shell"},pty_kill:{label:"Kill Process",category:"shell"},read:{label:"Read File",category:"files"},list:{label:"List Directory",category:"files"},ls:{label:"List Directory",category:"files"},write:{label:"Write File",category:"edit"},edit:{label:"Edit File",category:"edit"},multiedit:{label:"Edit File",category:"edit"},morph_edit:{label:"Edit File",category:"edit"},apply_patch:{label:"Apply Patch",category:"edit"},patch:{label:"Apply Patch",category:"edit"},grep:{label:"Search Code",category:"search"},glob:{label:"Find Files",category:"search"},image_search:{label:"Image Search",category:"search"},session_search:{label:"Search Sessions",category:"search"},webfetch:{label:"Fetch Page",category:"web"},scrape_webpage:{label:"Scrape Page",category:"web"},websearch:{label:"Web Search",category:"web"},web_search:{label:"Web Search",category:"web"},image_gen:{label:"Generate Image",category:"web"},video_gen:{label:"Generate Video",category:"web"},task:{label:"Delegate to Agent",category:"task"},todowrite:{label:"Plan Tasks",category:"task"},todoread:{label:"Read Plan",category:"task"},question:{label:"Ask Question",category:"task"},presentation_gen:{label:"Presentation",category:"task"},show:{label:"Show Output",category:"task"},show_user:{label:"Show Output",category:"task"},prune:{label:"Prune Context",category:"other"},distill:{label:"Distill Context",category:"other"},compress:{label:"Compress Context",category:"other"},context_info:{label:"Context Info",category:"other"}},zd=[{prefix:"pty_",category:"shell"},{prefix:"agent_",category:"task"},{prefix:"session_",category:"task"},{prefix:"task_",category:"task"},{prefix:"trigger_",category:"task"},{prefix:"project_",category:"task"}];function Jd(e){return e.replace(/^oc[-_]/,"")}function Be(e){return Jd(e).replace(/-/g,"_")}function Ct(e){return Be(e).split(/[_\s]+/).filter(Boolean).map(r=>r.charAt(0).toUpperCase()+r.slice(1)).join(" ")}function Rt(e){let t=Be(e),r=Vd[t];if(r)return r;for(let{prefix:n,category:s}of zd)if(t.startsWith(n))return{label:Ct(e),category:s};return{label:Ct(e),category:"other"}}var Xd=256*1024;function Qd(e){switch(e.status){case"pending":return"pending";case"running":return"running";case"completed":return"done";case"error":return"error";default:return e}}function Yd(e){if(e===void 0)return{};if(e.length>Xd)return{outputText:e};try{return{outputParsed:JSON.parse(e),outputText:e}}catch{return{outputText:e}}}function Zd(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e,r=t.success===!1,n=t.error,s=typeof n=="string"&&n.length>0||typeof n=="object"&&n!==null;if(!(!r&&!s))return s?K(n):typeof t.message=="string"&&t.message?t.message:"Tool reported failure"}function eg(e,t){let r="title"in t?t.title:void 0,n=t.status==="completed"?t.output:void 0,{outputParsed:s,outputText:c}=Yd(n),u=Qd(t),d=t.status==="error"?t.error:void 0;if(u==="done"){let g=Zd(s);g&&(u="error",d=g)}return{name:e,title:r||Rt(e).label,status:u,input:t.input,output:n,outputParsed:s,outputText:c,error:d}}function tg(e){return{kind:"text",id:e.id,text:e.text,synthetic:!!e.synthetic}}function rg(e){return{kind:"reasoning",id:e.id,text:e.text}}function ng(e){return{kind:"tool",id:e.id,tool:eg(e.tool,e.state)}}function sg(e){let t=e.mime;return{kind:"file",id:e.id,filename:e.filename,mime:t,url:e.url,isImage:t.startsWith("image/"),isPdf:t==="application/pdf"}}function ig(e){return{kind:"subtask",id:e.id,description:e.description,agent:e.agent,prompt:e.prompt,model:e.model}}function og(e){return{kind:"patch",id:e.id,hash:e.hash,files:e.files,fileCount:e.files.length}}function ag(e){return{kind:"snapshot",id:e.id,snapshot:e.snapshot}}function cg(e){return{kind:"agent",id:e.id,name:e.name}}function lg(e){return{kind:"retry",id:e.id,attempt:e.attempt,message:K(e.error),createdAt:e.time.created}}function ug(e){return{kind:"compaction",id:e.id,auto:e.auto,overflow:!!e.overflow,tailStartId:e.tail_start_id}}function pg(e){return{kind:"step",id:e.id,phase:"start",snapshot:e.snapshot}}function dg(e){return{kind:"step",id:e.id,phase:"finish",snapshot:e.snapshot,reason:e.reason,cost:e.cost,tokens:e.tokens}}function La(e){switch(e.type){case"text":return tg(e);case"reasoning":return rg(e);case"tool":return ng(e);case"file":return sg(e);case"subtask":return ig(e);case"patch":return og(e);case"snapshot":return ag(e);case"agent":return cg(e);case"retry":return lg(e);case"compaction":return ug(e);case"step-start":return pg(e);case"step-finish":return dg(e);default:return{kind:"unknown",raw:e}}}function gg(e){if(!e)return;let t=typeof e=="object"&&"name"in e&&typeof e.name=="string"?e.name:"Error",r=ee(e);return{name:t,message:r?.message||K(e),provider:r?.provider,code:r?.code,suggestion:r?.suggestion,upstreamStatus:r?.upstreamStatus,requestId:r?.requestId}}function mg(e){switch(e.kind){case"text":case"reasoning":return e.text.trim().length>0;case"step":return!1;default:return!0}}function Jc(e){let t=e.parts.map(La),r=e.info.role==="assistant"?e.info.error:void 0,n=gg(r),s=!n&&!t.some(mg);return{parts:t,error:n,isEmpty:s}}function te(e){return e.type==="text"}function Tt(e){return e.type==="reasoning"}function z(e){return e.type==="tool"}function Xc(e){return e.type==="file"}function fg(e){return e.type==="agent"}function yg(e){return e.type==="compaction"}function hg(e){return e.type==="snapshot"}function bg(e){return e.type==="patch"}function xg(e){if(te(e)||Tt(e))return e.text}function Qc(e){if(!Xc(e))return!1;let t=e.mime;return t.startsWith("image/")||t==="application/pdf"}function kg(e){let t=[],r=[];for(let n of e)Qc(n)?t.push(n):r.push(n);return{attachments:t,stickyParts:r}}function Pg(e,t){let r=[];return e?.tool&&r.push(e.tool),t?.tool&&r.push(t.tool),r}function wg(e,t,r){return r.some(n=>n.messageID===t&&n.callID===e.callID)}var _g=new Set(["todoread","context_info"]);function Yc(e){return!_g.has(e.tool)}function Sg(e){let t=e.tool||"";if(t==="task"||t==="agent_spawn"||t==="agent-spawn"||t==="agent_message"||t==="agent-message"||t==="agent_task"||t==="agent-task"||t==="agent_task_update"||t==="agent-task-update"||t==="agent_task_message"||t==="agent-task-message"||t==="agent_task_start"||t==="agent-task-start"||t==="task_create"||t==="task-create"||t==="task_start"||t==="task-start"||t==="task_update"||t==="task-update"||t==="task_message"||t==="task-message"){let n=e.state?.metadata?.sessionId;if(typeof n=="string"&&n)return n;let s=e.state?.title;if(s){let u=s.match(/\bses_[a-zA-Z0-9]+/);if(u)return u[0]}let c=e.state?.output;if(c){let u=c.match(/\bses_[a-zA-Z0-9]+/);if(u)return u[0]}return}let r=e.tool?.replace(/-/g,"_")||"";if(r==="session_spawn"||r==="session_start_background"){let n=e.state?.output;if(n){let s=n.match(/\*?\*?Session:?\*?\*?\s*(ses_[a-zA-Z0-9]+)/);if(s)return s[1]}return}}function vg(e){if(e)for(let t=e.length-1;t>=0;t--){let r=e[t]?.info;if(r?.role==="assistant"&&r.error)return K(r.error)}}function Cg(e){let t=[];for(let r of e)if(r.info.role==="assistant")for(let n of r.parts)z(n)&&Yc(n)&&t.push(n);return t}function Rg(e,t={}){switch(e){case"read":return{icon:"glasses",title:"Read",subtitle:Zc(t.filePath)};case"list":return{icon:"list",title:"List",subtitle:el(t.path)};case"glob":return{icon:"search",title:"Glob",subtitle:t.pattern};case"grep":return{icon:"search",title:"Grep",subtitle:t.pattern};case"webfetch":return{icon:"globe",title:"Web Fetch",subtitle:t.url};case"websearch":case"web-search":case"web_search":return{icon:"search",title:"Web Search",subtitle:t.query};case"scrape-webpage":return{icon:"globe",title:"Scrape",subtitle:t.urls?.split?.(",")[0]};case"image-search":return{icon:"image",title:"Image Search",subtitle:t.query};case"image-gen":return{icon:"image",title:"Image Gen",subtitle:t.prompt?.slice?.(0,40)};case"video-gen":return{icon:"cpu",title:"Video Gen",subtitle:t.prompt?.slice?.(0,40)};case"presentation-gen":{let r=t.action||"";return{icon:"presentation",title:{create_slide:"Create Slide",list_slides:"List Slides",preview:"Preview",export_pdf:"Export PDF",export_pptx:"Export PPTX"}[r]||"Presentation",subtitle:t.slide_title||t.presentation_name}}case"show":case"show-user":return{icon:"globe",title:"Output",subtitle:t.title||t.description};case"task":return{icon:"square-kanban",title:`Agent (${t.subagent_type||"task"})`,subtitle:tl(t)};case"session_spawn":case"session_start_background":case"session-spawn":case"session-start-background":case"oc-session_spawn":case"oc-session-spawn":case"oc-session_start_background":case"oc-session-start-background":return{icon:"square-kanban",title:`Worker (${t.agent||"KortixWorker"})`,subtitle:t.description||t.prompt?.slice(0,60)};case"bash":return{icon:"terminal",title:"Shell",subtitle:t.description};case"edit":case"morph_edit":return{icon:"file-pen",title:"Edit",subtitle:Fa(t.filePath)};case"write":return{icon:"file-pen",title:"Write",subtitle:Fa(t.filePath)};case"apply_patch":return{icon:"file-pen",title:"Patch",subtitle:t.files?.length?`${t.files.length} file${t.files.length>1?"s":""}`:void 0};case"todowrite":return{icon:"check-square",title:"Todos"};case"todoread":return{icon:"check-square",title:"Todos (read)"};case"question":return{icon:"message-circle",title:"Questions"};case"prune":return{icon:"scissors",title:"DCP Prune",subtitle:t.reason};case"distill":return{icon:"scissors",title:"DCP Distill"};case"compress":return{icon:"scissors",title:"DCP Compress",subtitle:t.topic};case"context_info":return{icon:"scissors",title:"Context Info"};case"session_read":case"session-read":case"oc-session_read":case"oc-session-read":return{icon:"glasses",title:`Session Read (${t.mode||"summary"})`,subtitle:t.session_id?.slice(-12)};case"session_search":case"session-search":case"oc-session_search":case"oc-session-search":return{icon:"search",title:"Session Search",subtitle:t.query};case"session_message":case"session-message":case"oc-session_message":case"oc-session-message":return{icon:"message-circle",title:"Message \u2192 Session",subtitle:t.session_id?.slice(-12)};case"session_lineage":case"session-lineage":case"oc-session_lineage":case"oc-session-lineage":return{icon:"list-tree",title:"Session Lineage",subtitle:t.session_id?.slice(-12)};case"session_list_background":case"session-list-background":case"session_list_spawned":case"session-list-spawned":case"oc-session_list_background":case"oc-session-list-background":case"oc-session_list_spawned":case"oc-session-list-spawned":return{icon:"layers",title:"Background Sessions",subtitle:t.project||"all"};case"session_stats":case"session-stats":case"oc-session_stats":case"oc-session-stats":return{icon:"layers",title:"Session Stats",subtitle:t.session_id?.slice(-12)||"current"};case"session_list":case"session-list":case"oc-session_list":case"oc-session-list":return{icon:"list",title:"Session List",subtitle:t.search};case"session_get":case"session-get":case"oc-session_get":case"oc-session-get":return{icon:"book-open",title:"Session Get",subtitle:t.session_id?.slice(-12)};case"session_context":case"session-context":case"oc-session_context":case"oc-session-context":return{icon:"book-open",title:"Session Context",subtitle:t.session_id?.slice(-12)};case"project_delete":case"project-delete":case"oc-project_delete":case"oc-project-delete":return{icon:"trash-2",title:"Workspace Delete Disabled",subtitle:t.project};case"project_list":case"project-list":case"oc-project_list":case"oc-project-list":return{icon:"folder",title:"Projects"};case"project_get":case"project-get":case"oc-project_get":case"oc-project-get":case"project_update":case"project-update":case"oc-project_update":case"oc-project-update":return{icon:"folder",title:"Project",subtitle:t.name||t.project};case"project_select":case"project-select":case"oc-project_select":case"oc-project-select":return{icon:"folder",title:"Project Select",subtitle:t.project};case"project_create":case"project-create":case"oc-project_create":case"oc-project-create":return{icon:"folder-plus",title:"Project Create",subtitle:t.name};case"triggers":case"trigger_create":case"trigger-create":case"oc-trigger_create":case"oc-trigger-create":return{icon:"clock",title:"Create Trigger",subtitle:t.name};case"trigger_list":case"trigger-list":case"oc-trigger_list":case"oc-trigger-list":return{icon:"clock",title:"List Triggers"};case"trigger_get":case"trigger-get":case"oc-trigger_get":case"oc-trigger-get":return{icon:"clock",title:"Trigger Details",subtitle:t.name||t.id};case"trigger_delete":case"trigger-delete":case"oc-trigger_delete":case"oc-trigger-delete":return{icon:"clock",title:"Delete Trigger",subtitle:t.name||t.id};case"trigger_update":case"trigger-update":case"oc-trigger_update":case"oc-trigger-update":return{icon:"clock",title:"Update Trigger",subtitle:t.name||t.id};case"trigger_test":case"trigger-test":case"oc-trigger_test":case"oc-trigger-test":return{icon:"clock",title:"Test Trigger",subtitle:t.name||t.id};case"trigger_pause":case"trigger-pause":case"oc-trigger_pause":case"oc-trigger-pause":return{icon:"clock",title:"Pause Trigger",subtitle:t.name||t.id};case"trigger_resume":case"trigger-resume":case"oc-trigger_resume":case"oc-trigger-resume":return{icon:"clock",title:"Resume Trigger",subtitle:t.name||t.id};case"agent_spawn":case"agent-spawn":return{icon:"cpu",title:`Agent (${t.agent_type||"worker"})`,subtitle:t.description};case"agent_message":case"agent-message":return{icon:"message-circle",title:"Agent Message",subtitle:t.agent_id};case"agent_stop":case"agent-stop":return{icon:"ban",title:"Agent Stop",subtitle:t.agent_id};case"agent_status":case"agent-status":return{icon:"layers",title:"Agent Status"};case"agent_task":case"agent-task":case"oc-agent_task":case"oc-agent-task":return{icon:"check-square",title:"Create Task",subtitle:t.title};case"agent_task_update":case"agent-task-update":case"oc-agent_task_update":case"oc-agent-task-update":return{icon:"check-square",title:"Update Task",subtitle:t.task_id};case"agent_task_list":case"agent-task-list":case"oc-agent_task_list":case"oc-agent-task-list":return{icon:"check-square",title:"List Tasks"};case"agent_task_get":case"agent-task-get":case"oc-agent_task_get":case"oc-agent-task-get":return{icon:"check-square",title:"Task Details",subtitle:t.task_id};case"task_create":case"task-create":return{icon:"plus",title:"Create Task",subtitle:t.title};case"task_list":case"task-list":return{icon:"list",title:"Tasks",subtitle:t.status||"all"};case"task_update":case"task-update":return{icon:"refresh-cw",title:"Update Task",subtitle:t.id};case"task_done":case"task-done":return{icon:"check-circle",title:"Task Done",subtitle:t.id};case"task_delete":case"task-delete":return{icon:"trash-2",title:"Delete Task",subtitle:t.id};case"pty_spawn":return{icon:"terminal",title:"Spawn",subtitle:t.title||t.command};case"pty_read":return{icon:"terminal",title:"Terminal Output",subtitle:t.id};case"pty_write":case"pty_input":return{icon:"terminal",title:"Terminal Input",subtitle:t.id};case"pty_kill":return{icon:"terminal",title:"Kill Process",subtitle:t.id};default:return{icon:"cpu",title:e}}}function Zc(e){if(!e)return;let t=e.split("/");return t[t.length-1]||e}function Fa(e){if(!e)return;let t=e.split("/"),r=t[t.length-1]||e;if(t.length<=1)return r;let n=t[t.length-2];return n?`${r} /${n}`:r}function el(e){if(!e)return;let t=e.lastIndexOf("/");if(!(t<0))return e.slice(0,t)||"/"}function Tg(e,t){if(!t)return e;if(e.startsWith(t)){let r=e.slice(t.length);return r.startsWith("/")?r.slice(1):r}return e}function Ke(e,t=120){if(typeof e!="string")return"";let r=e.split(`
|
|
60
|
+
`).map(n=>n.trim()).find(Boolean);return r?r.length>t?`${r.slice(0,t).trim()}\u2026`:r:""}function tl(e){let t=Ke(e.description);if(t)return t;let r=Ke(e.title,80);if(r)return r;let n=Ke(e.message);if(n)return n;let s=Ke(e.prompt);if(s)return s;let c=Ke(e.agent_id,40);return c?`Agent ${c}`:"Worker task"}function Ig(e,t){return!e||!t?[]:(e[t]??[]).filter(n=>n.severity===1).slice(0,3)}function jg(e,t){return e.find(r=>r.tool?.callID===t)}function Ag(e,t){return e.find(r=>r.tool?.callID===t)}var Eg=/\x1B\[[\d;]*[A-Za-z]|\x1B\][^\x07]{0,512}\x07|\x1B[()#][A-Z0-9]|\x1B\[?[\d;]*[hl]|\x1B[>=<]|\x1B\[[?]?\d*[A-Z]|\x1B\[\d*[JKHG]|\x1B\[\d*;\d*[Hf]|\x1b\[[0-9;]*m/g;function $g(e){return e?e.replace(Eg,""):""}function qg(e){let t=[],r=new Map;for(let s of e)if(s.info.role==="user"){if(r.has(s.info.id))continue;let c={userMessage:s,assistantMessages:[]};t.push(c),r.set(s.info.id,c)}let n=null;for(let s of e){if(s.info.role==="user"){n=r.get(s.info.id)??null;continue}if(s.info.role!=="assistant")continue;let c=s.info;if(c.parentID){let d=r.get(c.parentID);if(d){d.assistantMessages.push(s);continue}}if(n){n.assistantMessages.push(s);continue}if(t.length>0){t[0].assistantMessages.unshift(s);continue}let u={userMessage:s,assistantMessages:[]};t.push(u)}return t}function Dg(e){let t=[];for(let r of e.assistantMessages)for(let n of r.parts)t.push({part:n,message:r});return t}function Mg(e){for(let t=e.length-1;t>=0;t--){let r=e[t].part;if(te(r)&&r.text?.trim())return r}}function Ug(e){return e.some(({part:t})=>t.type==="tool"||t.type==="compaction"||t.type==="snapshot"||t.type==="patch")}function Og(e,t,r){if(r)return[];let n=[];for(let s of e.assistantMessages)for(let c of s.parts){if(!z(c))continue;let u=c,d=u.state?.metadata?.answers;u.tool==="question"&&(d?.length??0)>0&&n.push({part:c,message:s})}return n}function Lg(e){let t=new Map;for(let r of e){if(!r.parentID)continue;let n=t.get(r.parentID);n?n.push(r.id):t.set(r.parentID,[r.id])}return t}function Fg(e){let t=e-6e4;return(r,n)=>{let s=r.time.updated??r.time.created,c=n.time.updated??n.time.created,u=s>t,d=c>t;return u&&d?r.id<n.id?-1:r.id>n.id?1:0:u&&!d?-1:!u&&d?1:c-s}}function rl(e,t){let r=e.get(t);if(!r||r.length===0)return[];let n=[];for(let s of r)n.push(s),n.push(...rl(e,s));return n}function nl(e){let t=e.userMessage.parts;if(t.length===0||!t.every(c=>te(c)&&c.synthetic)||e.assistantMessages.length!==1)return!1;let n=e.assistantMessages[0].parts;if(n.length!==1)return!1;let s=n[0];return z(s)&&s.tool==="bash"}function Gg(e){if(nl(e))return e.assistantMessages[0].parts[0]}function Bg(e,t){for(let r=t.length-1;r>=0;r--)if(t[r].info.role==="user")return t[r].info.id===e;return!1}function Kg(e,t){return!t||!e?!1:e.type!=="idle"}function Ng(e,t){return!e&&!!t}function Hg(e){for(let t of e.assistantMessages){let r=t.info;if(r.error)return K(r.error)}}function Wg(e){for(let t of e.assistantMessages){let r=t.info;if(r.error)return ee(r.error)}}function Ga(e){if(e){if(z(e))switch(e.tool){case"task":case"session_spawn":case"session_start_background":case"session-spawn":case"session-start-background":return"Delegating to agent...";case"agent_spawn":case"agent-spawn":case"agent_task":case"agent-task":return"Delegating to agent...";case"agent_task_update":case"agent-task-update":case"task_update":case"task-update":return"Updating task...";case"agent_message":case"agent-message":case"agent_task_message":case"agent-task-message":case"task_message":case"task-message":return"Messaging agent...";case"task_create":case"task-create":case"task_start":case"task-start":return"Creating task...";case"task_list":case"task-list":return"Listing tasks...";case"task_done":case"task-done":return"Updating task...";case"todowrite":case"todoread":return"Planning...";case"read":return"Gathering context...";case"list":case"grep":case"glob":return"Searching codebase...";case"webfetch":case"scrape-webpage":return"Fetching web page...";case"websearch":case"web-search":case"web_search":return"Searching web...";case"image-search":return"Searching images...";case"image-gen":return"Generating image...";case"video-gen":return"Generating video...";case"presentation-gen":return"Creating presentation...";case"show":case"show-user":return"Showing output...";case"edit":case"write":case"morph_edit":return"Making edits...";case"bash":return"Running commands...";case"apply_patch":return"Applying patches...";case"prune":return"Pruning context...";case"distill":return"Distilling context...";case"compress":return"Compressing context...";case"context_info":return"Updating context info...";default:return`Running ${e.tool}...`}if(Tt(e)){let t=e.text?.trimStart();if(t){let r=t.match(/^\*\*(.+?)\*\*/);if(r)return`Thinking about ${r[1].trim()}...`}return"Thinking..."}if(te(e))return"Gathering thoughts..."}}function Vg(e,t){for(let r=e.length-1;r>=0;r--){let n=e[r].part,s=z(n)?n:void 0;if(s&&(s.tool==="task"||s.tool==="agent_task"||s.tool==="agent-task"||s.tool==="task_create"||s.tool==="task-create"||s.tool==="task_start"||s.tool==="task-start")&&s.state.status==="running"&&t&&t.length>0){for(let u=t.length-1;u>=0;u--){let d=t[u];if(d.info.role==="assistant")for(let g=d.parts.length-1;g>=0;g--){let h=Ga(d.parts[g]);if(h)return h}}return"Delegating to agent..."}let c=Ga(n);if(c)return c}return"Considering next steps..."}function zg(e){if(!Number.isFinite(e)||e<1e3)return"";let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let r=Math.floor(t/60),n=t%60;return n>0?`${r}m ${n}s`:`${r}m`}var Ba=1.2;function sl(e,t){if(!e)return 0;let r=e.input??0,n=(e.output??0)+(e.reasoning??0),s=e.cache?.read??0,c=e.cache?.write??0,d=Math.max(0,r-s-c)/1e6*t.inputPer1M;return d+=n/1e6*t.outputPer1M,s>0&&(d+=s/1e6*(t.cacheReadPer1M??t.inputPer1M)),c>0&&(d+=c/1e6*t.inputPer1M),d}function il(e,t,r,n){let s=e.cost||0;if(s>0)return s;if(!n||!t||!r)return 0;let c=n(t,r);return c?sl(e.tokens,c):0}function ol(e){if(e.role!=="assistant")return{};let t=e;return{providerID:t.providerID,modelID:t.modelID}}function Jg(e,t){let r=0,n=0,s=0,c=0,u=0,d=0,g=!1;for(let{part:h,message:m}of e)if(h.type==="step-finish"){g=!0;let x=h,{providerID:w,modelID:k}=ol(m.info);r+=il(x,w,k,t),n+=x.tokens?.input||0,s+=x.tokens?.output||0,c+=x.tokens?.reasoning||0,u+=x.tokens?.cache?.read||0,d+=x.tokens?.cache?.write||0}if(!g)for(let{message:h}of e){if(h.info.role!=="assistant")continue;let m=h.info,x=al(m,t);if(x<=0)continue;g=!0,r+=x;let w=m.tokens;w&&(n+=w.input??0,s+=w.output??0,c+=w.reasoning??0,u+=w.cache?.read??0,d+=w.cache?.write??0)}if(g)return{cost:r*Ba,tokens:{input:n,output:s,reasoning:c,cacheRead:u,cacheWrite:d}}}function al(e,t){if(!t||!e.providerID||!e.modelID||!e.tokens)return 0;let r=t(e.providerID,e.modelID);return r?sl({input:e.tokens.input,output:e.tokens.output,reasoning:e.tokens.reasoning,cache:e.tokens.cache},r):0}function Xg(e,t){let r=0;for(let n of e){if(n.info?.role!=="assistant")continue;let s=n.info,{providerID:c,modelID:u}=ol(s),d=0,g=!1;for(let h of n.parts)h.type==="step-finish"&&(g=!0,d+=il(h,c,u,t));g||(d+=al(s,t)),r+=d}return r*Ba}function Qg(e){return e===0?"$0.00":e<.001?`$${e.toFixed(4)}`:e<.01?`$${e.toFixed(3)}`:`$${e.toFixed(2)}`}function Yg(e){return e<1e3?String(e):e<1e4?`${(e/1e3).toFixed(1)}k`:`${Math.round(e/1e3)}k`}function Zg(e){if(!e||e.type!=="retry")return;let t=e;return{attempt:t.attempt,message:t.message.length>60?`${t.message.slice(0,60)}...`:t.message,next:t.next}}function em(e){if(!(!e||e.type!=="retry"))return K(e.message)}function tm(e){return(e.info.summary?.diffs?.length??0)>0}var rm=4e3;function Ne(e,t=rm){return e.length>t?`${e.slice(0,t)}
|
|
61
|
+
\u2026`:e}function cl(e){if(e!==void 0)try{return Ne(JSON.stringify(e,null,2))}catch{return}}function q(...e){for(let t of e)if(typeof t=="string"&&t.length>0)return t}function we(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}function nm(e){let t=q(e.input?.query)??"";if(e.status==="error")return{kind:"web-search",query:t,error:e.error??"Search failed"};let r=we(e.outputParsed);if(!r)return{kind:"web-search",query:t};let s=(Array.isArray(r.results)?r.results:Array.isArray(r.images)?r.images:[]).slice(0,50).map(c=>{let u=we(c)??{};return{title:q(u.title)??"",url:q(u.url,u.link)??"",snippet:q(u.snippet,u.description,u.source)}});return{kind:"web-search",query:q(r.query)??t,results:s.length>0?s:void 0,answer:q(r.answer)}}var sm=/<exit_code>\s*(-?\d+)\s*<\/exit_code>/;function im(e,t,r){let n="",s=0;for(;;){let c=e.indexOf(t,s);if(c===-1)return n+e.slice(s);let u=e.indexOf(r,c+t.length);if(u===-1)return n+e.slice(s);n+=e.slice(s,c),s=u+r.length}}var om=["<system_info>","</system_info>","<exit_code>","</exit_code>","<stderr_note>","</stderr_note>"];function am(e){let t=-1;for(let r of om){let n=e.indexOf(r);n!==-1&&(t===-1||n<t)&&(t=n)}return t===-1?e:e.slice(0,t)}var cm=/\x1B\[[\d;]*[A-Za-z]|\x1B\][^\x07]{0,512}\x07|\x1B[()#][A-Z0-9]|\x1B\[?[\d;]*[hl]|\x1B[>=<]|\x1B\[[?]?\d*[A-Z]|\x1B\[\d*[JKHG]|\x1B\[\d*;\d*[Hf]|\x1b\[[0-9;]*m/g;function lm(e){return e.replace(cm,"")}function um(e){let t=q(e.input?.command)??"",r=e.output??"",n=r.match(sm),s=n?Number(n[1]):void 0,u=lm(am(im(r,"<bash_metadata>","</bash_metadata>"))).trim()||(e.status==="error"?e.error:void 0);return{kind:"shell",command:t,stdout:u||void 0,exitCode:s}}function Na(e){return q(e.input?.filePath,e.input?.file_path,e.input?.path)??""}function pm(e){let t=e.status==="error"?e.error:e.output&&Ne(e.output)||void 0;return{kind:"file-read",path:Na(e),preview:t}}function dm(e){let t=q(e.input?.content),r=e.status==="error"?e.error:Ne(t??e.output??"")||void 0;return{kind:"file-write",path:Na(e),preview:r}}var gm=256*1024;function mm(e,t){if(e.length+t.length>gm)return;let r=e.split(`
|
|
62
62
|
`),n=t.split(`
|
|
63
|
-
`),s=0;for(;s<r.length&&s<n.length&&r[s]===n[s];)s++;let c=r.length,u=n.length;for(;c>s&&u>s&&r[c-1]===n[u-1];)c--,u--;let d=[];for(let g=0;g<s;g++)d.push({type:"unchanged",text:r[g]});for(let g=s;g<c;g++)d.push({type:"removed",text:r[g]});for(let g=s;g<u;g++)d.push({type:"added",text:n[g]});for(let g=c;g<r.length;g++)d.push({type:"unchanged",text:r[g]});return d}function
|
|
64
|
-
`).map(t=>t.trim()).filter(t=>t.startsWith("/")||t.startsWith("./")||t.startsWith("~")).map(t=>({path:t}))}function gm(e){let t=q(e.input?.pattern,e.input?.query)??"";if(e.status==="error"||!e.output)return{kind:"search",pattern:t};let r=il.test(e.output.trim())?pm(e.output):dm(e.output);return{kind:"search",pattern:t,matches:r.length>0?r.slice(0,200):void 0}}function mm(e){let t=q(e.input?.description,e.input?.title,e.input?.prompt)??e.title,r=q(e.input?.subagent_type,e.input?.agent);return{kind:"task",description:t,agent:r}}function Fa(e){let t=Pe(e)??{};return{content:q(t.content)??"",status:q(t.status)??"pending",priority:q(t.priority)}}function fm(e){let t=e.input?.todos;if(Array.isArray(t))return{kind:"todo",items:t.map(Fa)};if(Array.isArray(e.outputParsed))return{kind:"todo",items:e.outputParsed.map(Fa)};let r=Pe(e.outputParsed);return r&&Array.isArray(r.todos)?{kind:"todo",items:r.todos.map(Fa)}:{kind:"todo",items:[]}}function ym(e){return{kind:"question",questions:(Array.isArray(e.input?.questions)?e.input.questions:[]).map(n=>{let s=Pe(n)??{},u=(Array.isArray(s.options)?s.options:[]).flatMap(d=>{let g=Pe(d),h=g&&q(g.label);return h?[{label:h,description:g?q(g.description):void 0}]:[]});return{question:q(s.question)??"",header:q(s.header),options:u}})}}function hm(e){let r=e.input&&Object.keys(e.input).length>0?nl(e.input):void 0,n;return e.outputParsed!==void 0?n=typeof e.outputParsed=="string"?Be(e.outputParsed):nl(e.outputParsed):e.outputText!==void 0?n=Be(e.outputText):n=e.error,{kind:"generic",label:e.title,inputPretty:r,outputPretty:n}}function ol(e){switch(Fe(e.name)){case"web_search":case"websearch":case"image_search":return Qg(e);case"bash":return sm(e);case"read":return im(e);case"write":return om(e);case"edit":case"morph_edit":return lm(e);case"grep":case"glob":return gm(e);case"task":return mm(e);case"todowrite":return fm(e);case"question":case"ask":return ym(e);default:return hm(e)}}var Tt=[{id:"claude-opus-4.8",name:"Claude Opus 4.8",upstreamModelId:"us.anthropic.claude-opus-4-8",transport:"bedrock",pricingRef:"anthropic/claude-opus-4.8",tier:"flagship",vision:!0,limit:{context:1e6,output:64e3}},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6",upstreamModelId:"us.anthropic.claude-sonnet-4-6",transport:"bedrock",pricingRef:"anthropic/claude-sonnet-4.6",tier:"balanced",vision:!0,limit:{context:1e6,output:64e3}},{id:"glm-5.2",name:"GLM 5.2",upstreamModelId:"z-ai/glm-5.2",transport:"openrouter",pricingRef:"z-ai/glm-5.2",tier:"balanced",vision:!1,limit:{context:1e6,output:131072},openrouterProvider:{order:["z-ai"],allow_fallbacks:!0}},{id:"qwen3.7-max",name:"Qwen3.7 Max",upstreamModelId:"qwen/qwen3.7-max",transport:"openrouter",pricingRef:"qwen/qwen3.7-max",tier:"balanced",vision:!1,limit:{context:1048576,output:64e3}},{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",upstreamModelId:"deepseek/deepseek-v4-pro",transport:"openrouter",pricingRef:"deepseek/deepseek-v4-pro",tier:"balanced",vision:!1,limit:{context:1048576,output:64e3}},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",upstreamModelId:"deepseek/deepseek-v4-flash",transport:"openrouter",pricingRef:"deepseek/deepseek-v4-flash",tier:"balanced",vision:!1,limit:{context:1048576,output:64e3}}],$x=new Map(Tt.map(e=>[e.id,e]));var qx=Tt.map(e=>e.id),Dx=(Tt.find(e=>e.tier==="flagship")??Tt[0]).id;var al=!1;function It(e){try{return typeof process<"u"?process.env?.[e]:void 0}catch{return}}function bm(e,t){if(e==null)return t;let r=e.trim().toLowerCase();return["1","true","yes","y","on"].includes(r)?!0:["0","false","no","n","off"].includes(r)?!1:t}function xm(e){if(e==null)return;let t=e.trim().toLowerCase();if(["1","true","yes","y","on"].includes(t))return!0;if(["0","false","no","n","off"].includes(t))return!1}function jt(e,t,r){return e!==void 0?e:bm(It(t),r)}var km={get disableMobileAdvertising(){return jt(T().featureFlags?.disableMobileAdvertising,"NEXT_PUBLIC_DISABLE_MOBILE_ADVERTISING",!1)},get enableDinoGame(){return jt(T().featureFlags?.enableDinoGame,"NEXT_PUBLIC_ENABLE_DINO_GAME",!1)},get enableProjects(){return jt(T().featureFlags?.enableProjects,"NEXT_PUBLIC_ENABLE_PROJECTS",!1)},get enableAutoModel(){return jt(T().featureFlags?.enableAutoModel,"NEXT_PUBLIC_ENABLE_AUTO_MODEL",al)}};var Ke="kortix-active-instance",cl=["/dashboard","/agents","/p","/workspace","/settings","/browser","/desktop","/services","/sessions","/terminal","/files","/scheduled-tasks","/commands","/tools","/configuration","/changelog","/legacy","/credits-explained"];function ll(e){return cl.some(t=>e===t||e.startsWith(`${t}/`))}function we(e){let t=e.match(/^\/instances\/([^/]+)(?:\/(.*))?$/);if(!t)return null;let r=decodeURIComponent(t[1]),n=t[2]??"";return{instanceId:r,innerPath:n?`/${n}`:""}}function Pm(e){let t=we(e);return!!t&&t.innerPath===""}function wm(e){let t=we(e);return!t||!t.innerPath?e:t.innerPath}function ul(e,t){if(!e)return t;if(t.startsWith("/")||(t=`/${t}`),t.startsWith("/instances/")){let r=we(t);return r?`/instances/${encodeURIComponent(e)}${r.innerPath}`:t}return ll(t)?`/instances/${encodeURIComponent(e)}${t}`:t}function pl(e){return e?we(e)?.instanceId??null:null}function _m(){return typeof window>"u"?null:pl(window.location.pathname)||dl()}function dl(){if(typeof document>"u")return null;let e=document.cookie.match(new RegExp(`(?:^|; )${Ke}=([^;]+)`));return e?decodeURIComponent(e[1]):null}function Sm(e){if(typeof document>"u")return;let t=r=>{document.cookie=r};if(typeof window<"u"&&window.location.pathname.startsWith("/projects")){t(`${Ke}=; Max-Age=0; Path=/; SameSite=Lax`);return}if(!e){t(`${Ke}=; Max-Age=0; Path=/; SameSite=Lax`);return}t(`${Ke}=${encodeURIComponent(e)}; Path=/; SameSite=Lax`)}function vm(e,t){return t?ul(t,e):e}function Cm(e){let t=we(e);return t?t.innerPath||"/dashboard":e}function gl(e){if(e instanceof Error)return e.message;if(typeof e=="string")return e;if(e&&typeof e=="object")try{return JSON.stringify(e)}catch{return String(e)}return String(e??"")}function ml(e){let t=gl(e).trim();if(!t)return null;let r=[t,t.replace(/^Failed to perform action:\s*/i,"").trim()],n=t.indexOf("{");n>=0&&r.push(t.slice(n));for(let s of r)if(s)try{return JSON.parse(s)}catch{}return null}function Ba(e){let t=ml(e);if(!t||typeof t!="object")return null;let r=t;return r.name==="ConfigInvalidError"?r:null}function Rm(e){return Ba(e)!==null}function Tm(e){let t=Ba(e);if(t){let s=(t.data?.path??"OpenCode config").replace(/^\/workspace\//,""),c=t.data?.issues?.[0]?.message,u=t.data?.issues?.[0]?.path?.join("."),d=u?.startsWith("permission")?"Remove the invalid permission frontmatter entry or replace it with valid OpenCode permission config.":"Fix the invalid config entry, then restart this session.";return{title:"OpenCode config is invalid",message:`${s} is preventing OpenCode from loading. ${d}`,detail:c?`${u?`${u}: `:""}${c}`:void 0}}return{title:"OpenCode failed to load",message:gl(e)||"The sandbox is running, but OpenCode returned an error."}}function L(){let e=It("BACKEND_URL")||T().backendUrl;return e||"http://localhost:8008/v1"}function Ne(e){if(typeof e=="string"){let t=e.trim();return t.length>0?t:void 0}if(Array.isArray(e)){for(let t of e){let r=Ne(t);if(r)return r}return}if(e&&typeof e=="object"){let t=e;return Ne(t.sandboxId??t.id??t.slug??Object.values(t)[0])}}var fl=["http://localhost:8008/v1","http://127.0.0.1:8008/v1"];function yl(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return`${e.slice(0,t)}/platform/local-bridge/status`}function Im(e){return e==="running"||e==="active"?"active":e==="queued"||e==="branching"||e==="provisioning"?"provisioning":e==="failed"||e==="error"?"error":e==="stopped"||e==="completed"||e==="archived"?"stopped":e||"unknown"}function Ka(e,t,r){let n=r?.external_id||t.sandbox_url?.match(/\/p\/([^/]+)\//)?.[1]||t.sandbox_id;return{sandbox_id:r?.sandbox_id||t.sandbox_id||t.session_id,external_id:n,name:t.name||`${e.name} session`,provider:r?.provider||t.sandbox_provider||"daytona",base_url:r?.base_url||t.sandbox_url||(r?.external_id?`${L()}/p/${r.external_id}/${V.KORTIX_MASTER}`:""),status:Im(r?.status||t.status),metadata:{...t.metadata??{},project_id:e.project_id,session_id:t.session_id,project_name:e.name,runtime_status:r?.status,error:t.error},created_at:r?.created_at||t.created_at,updated_at:r?.updated_at||t.updated_at}}async function Na(){let e=await ie(),t=[];for(let r of e){let n=await he(r.project_id).catch(()=>[]);for(let s of n)t.push({project:r,session:s,runtime:null,sandbox:Ka(r,s,null)})}return t.sort((r,n)=>{let s={active:0,provisioning:1,stopped:2,error:3},c=(s[r.sandbox.status]??99)-(s[n.sandbox.status]??99);return c!==0?c:Date.parse(n.sandbox.updated_at)-Date.parse(r.sandbox.updated_at)})}async function oe(e){let t=await Na();return e?t.find(r=>r.sandbox.sandbox_id===e||r.sandbox.external_id===e||r.session.session_id===e||r.runtime?.external_id===e)??null:t[0]??null}async function At(e,t={}){let r={"Content-Type":"application/json",...t.headers},n=t.signal??AbortSignal.timeout(3e4),s=await R(`${L()}${e}`,{...t,headers:r,signal:n}),c=await s.text().catch(()=>{}),u;if(c)try{u=JSON.parse(c)}catch{}if(!s.ok){let d=u?.error||u?.message||u?.detail||c||`Platform API error ${s.status}`,g=new C(d,{status:s.status,code:u?.code||u?.error_code||String(s.status),details:u??(c?{rawText:c}:void 0),response:s,endpoint:e});throw s.status===402&&(g=ge(Object.assign(g,{response:s,status:s.status,data:u}))),g}return u}function Ha(e){if(!e.external_id){if(e.base_url)return e.base_url;throw new Error(`Cannot build sandbox URL: missing external_id for ${e.provider} sandbox "${e.sandbox_id}"`)}return`${L()}/p/${e.external_id}/${V.KORTIX_MASTER}`}function jm(e,t){return e.external_id?`${L()}/p/${e.external_id}/${t}`:null}async function Am(){let e=await o.get("/setup/sandbox-providers");if(e.error)throw e.error;return e.data}async function hl(e){let t=await oe();if(t)return{sandbox:t.sandbox,created:!1};let n=(await ie())[0];if(!n)throw new Error("Create a project before starting a sandbox");let s=await be(n.project_id,{...e?.provider?{provider:e.provider}:{}}),c=(await xe(n.project_id,s.session_id))?.sandbox??null;return{sandbox:Ka(n,s,c),created:!0}}async function Em(){return(await oe().catch(()=>null))?.sandbox??null}async function $m(e){return{sandbox:(await hl(e)).sandbox}}async function qm(e){let t=Ne(e);return t?(await oe(t).catch(()=>null))?.sandbox??null:null}async function Dm(e,t){throw await oe(e)?new Error("Renaming project-session sandboxes is not exposed by the current API"):new Error("Project session sandbox not found")}async function Mm(e){let t=Ne(e);return(await Na().catch(()=>[])).map(n=>n.sandbox).filter(n=>!t||n.sandbox_id===t||n.external_id===t)}async function Um(){if(typeof window>"u")return null;let e=L(),t=Array.from(new Set([e,...fl]));for(let r of t)try{let n=await fetch(yl(r),{method:"GET",signal:AbortSignal.timeout(1500),headers:{Accept:"application/json"}});if(!n.ok)continue;let s=await n.json();if(!s.success||s.status!=="ready"||!s.data?.sandbox_id)continue;return s.data}catch{continue}return null}async function Om(e){if(!e)throw new Error("No sandbox selected for workload restart");let t=await oe(e);if(!t)throw new Error("Project session sandbox not found");await De(t.project.project_id,t.session.session_id)}async function Lm(e){if(!e)throw new Error("No sandbox selected to stop");let t=await oe(e);if(!t)throw new Error("Project session sandbox not found");await Me(t.project.project_id,t.session.session_id)}async function Fm(e){throw new Error("Cancellation is not exposed for project-session sandboxes")}async function Gm(e){throw new Error("Reactivation is not exposed for project-session sandboxes")}async function Bm(e){throw new Error("Sandbox members moved to project access; use project members for project-session sandboxes")}async function Km(e,t,r="member"){throw new Error("Sandbox members moved to project access; invite the user to the project instead")}async function Nm(e,t){throw new Error("Sandbox members moved to project access; update project access instead")}async function Hm(e,t,r){throw new Error("Sandbox members moved to project access; update project access instead")}async function Wm(e,t,r){throw new Error("Sandbox member spend caps are not exposed for project-session sandboxes")}async function Vm(e){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function zm(e,t){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function Jm(e,t,r,n){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function Wa(e,t,r){let n=Ha(e),s=await R(`${re(n)}${t}`,{signal:AbortSignal.timeout(8e3),headers:{"Content-Type":"application/json"},...r});if(!s.ok){let c=await s.text().catch(()=>"");throw new Error(c||`Request failed (${s.status})`)}return await s.json()}async function Xm(e,t){return Wa(e,`/kortix/projects/${encodeURIComponent(t)}/members`,{method:"GET"})}async function Qm(e,t,r,n="member"){await Wa(e,`/kortix/projects/${encodeURIComponent(t)}/members`,{method:"POST",body:JSON.stringify({user_id:r,role:n})})}async function Ym(e,t,r){await Wa(e,`/kortix/projects/${encodeURIComponent(t)}/members/${encodeURIComponent(r)}`,{method:"DELETE"})}async function Zm(e,t){throw new Error("Sandbox invites moved to project access for project-session sandboxes")}async function ef(e){let t=await At(`/platform/invites/${encodeURIComponent(e)}`,{method:"GET"});if(!t.success||!t.data)throw new Error(t.error||"Invite not found");return t.data}async function tf(e){let t=await At(`/platform/invites/${encodeURIComponent(e)}/accept`,{method:"POST"});if(!t.success||!t.data)throw new Error(t.error||"Failed to accept invite");return t.data}async function rf(e){let t=await At(`/platform/invites/${encodeURIComponent(e)}/decline`,{method:"POST"});if(!t.success)throw new Error(t.error||"Failed to decline invite")}async function nf(e){throw new Error("Backups are not exposed for project-session sandboxes")}async function sf(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function of(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function af(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function cf(e){throw new Error("SSH setup is not exposed for project-session sandboxes")}async function lf(e){throw new Error("SSH connection details are not exposed for project-session sandboxes")}var bl=["pulling","patching","stopping","removing","recreating","restarting","verifying","starting","health_check"];function uf(e){return bl.includes(e)}async function pf(e){return{phase:"idle",progress:0,message:"Sandbox image updates are managed by project-session provisioning.",targetVersion:null,previousVersion:null,currentVersion:e?.version??null,error:null,startedAt:null,updatedAt:null}}async function df(e){let t=e?`?channel=${e}`:"",r=await fetch(`${L()}/platform/sandbox/version/latest${t}`,{headers:{Accept:"application/json"}});if(!r.ok)throw new Error(`Version check failed: ${r.status}`);let n=await r.json();try{let s=await xl(e||"stable");n.changelog=s.find(c=>c.version===n.version)??s[0]??null}catch{n.changelog=null}return n}async function xl(e){let t=e?`?channel=${e}`:"",r=await fetch(`${L()}/platform/sandbox/version/changelog${t}`,{headers:{Accept:"application/json"}});if(!r.ok)throw new Error(`Changelog fetch failed: ${r.status}`);return(await r.json()).changelog}async function gf(){let e=await fetch(`${L()}/platform/sandbox/version/all`,{headers:{Accept:"application/json"}});if(!e.ok)throw new Error(`All versions fetch failed: ${e.status}`);return e.json()}async function mf(e,t){throw new Error("Sandbox image updates are managed by project-session provisioning")}async function ff(e){}async function yf(e){}async function hf(e){return{serverTypes:[],location:e||"hel1"}}async function bf(e){throw new Error("Retired instance provisioning is unavailable. Create a project session with daytona, platinum, or e2b.")}async function xf(e){let t=await o.delete(`/platform/sandbox?sandbox_id=${e}`);if(t.error)throw t.error;return t.data}async function kf(e,t){await o.post("/platform/sandbox/mark-error",{sandbox_id:e,error_message:t},{showErrors:!1,timeout:1e4})}async function Pf(){let e=await o.post("/platform/sandbox/claim-computer",{},{timeout:6e4});if(e.error)throw e.error;return e.data}async function wf(e){let t=await o.get(`/platform/sandbox/${e}/status`,{showErrors:!1,timeout:1e4});return t.success?t.data??null:null}function _f(e,t){return`${L()}/platform/sandbox/${e}/provision-stream?token=${encodeURIComponent(t)}`}async function Sf(){let e=await o.get("/platform/github-app/status",{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App status request failed");return e.data}async function vf(e={}){let t=await o.post("/platform/github-app/manifest-start",e,{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub App manifest-start request failed");return t.data}async function Cf(e){let t=await o.post("/platform/github-app/app",{app_id:e.appId,private_key:e.privateKey,installation_id:e.installationId,slug:e.slug},{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub App configuration request failed");return t.data}async function Rf(e){let t=await o.post("/platform/github-app/pat",e,{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub token configuration request failed");return t.data}async function Tf(){let e=await o.delete("/platform/github-app",{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App disconnect request failed");return e.data}function kl(e){try{let t=new URL(e);if(/^\/proxy\/\d+(?:\/|$)/.test(t.pathname))return`${t.origin}/v1/p/auth`;let r=t.pathname.indexOf("/p/");return r!==-1?`${t.origin}${t.pathname.slice(0,r)}/p/auth`:`${t.origin}/v1/p/auth`}catch{return null}}function If(e,t){try{let r=new URL(e),n=r.pathname;if(!(/^\/v1\/p\/[^/]+\/\d+(?:\/|$)/.test(n)||/^\/proxy\/\d+(?:\/|$)/.test(n)))return!1;let c=new Set;if(t)try{c.add(new URL(t).origin)}catch{}return typeof window<"u"&&c.add(window.location.origin),c.size===0||c.has(r.origin)}catch{return!1}}function jf(e,t){return If(e,t)?(t?kl(t):null)??kl(e):null}function Af(e){try{return/^p\d+-[^.]+\./.test(new URL(e).hostname)}catch{return!1}}function Ef(e,t){try{let r=new URL(e);return r.searchParams.set("token",t),r.toString()}catch{return e}}return Rl($f);})();
|
|
63
|
+
`),s=0;for(;s<r.length&&s<n.length&&r[s]===n[s];)s++;let c=r.length,u=n.length;for(;c>s&&u>s&&r[c-1]===n[u-1];)c--,u--;let d=[];for(let g=0;g<s;g++)d.push({type:"unchanged",text:r[g]});for(let g=s;g<c;g++)d.push({type:"removed",text:r[g]});for(let g=s;g<u;g++)d.push({type:"added",text:n[g]});for(let g=c;g<r.length;g++)d.push({type:"unchanged",text:r[g]});return d}function fm(e){let t=q(e.input?.oldString),r=q(e.input?.newString),n=t!==void 0&&r!==void 0?mm(t,r):void 0;return{kind:"file-edit",path:Na(e),diff:n}}var ul=/^Found\s+(\d+)\s+match/i,ym=/^(\/[^:]+?):\s*/,ll=/Line\s+(\d+):/g;function hm(e){let t=e.trim(),r=t.match(ul),n=r?t.slice(r[0].length).trim():t;if(!n)return[];let s=[];for(let c of n.split(/\n\n+/)){let u=c.trim();if(!u)continue;let d=u.match(ym);if(!d)continue;let g=d[1],h=u.slice(d[0].length),m=[],x;for(ll.lastIndex=0;(x=ll.exec(h))!==null;)m.push({line:Number(x[1]),contentStart:x.index+x[0].length,headerStart:x.index});for(let w=0;w<m.length;w++){let k=w+1<m.length?m[w+1].headerStart:h.length,l=h.slice(m[w].contentStart,k).trim();s.push({path:g,line:m[w].line,content:l.endsWith(";")?l.slice(0,-1):l})}}return s}function bm(e){return e.trim().split(`
|
|
64
|
+
`).map(t=>t.trim()).filter(t=>t.startsWith("/")||t.startsWith("./")||t.startsWith("~")).map(t=>({path:t}))}function xm(e){let t=q(e.input?.pattern,e.input?.query)??"";if(e.status==="error"||!e.output)return{kind:"search",pattern:t};let r=ul.test(e.output.trim())?hm(e.output):bm(e.output);return{kind:"search",pattern:t,matches:r.length>0?r.slice(0,200):void 0}}function km(e){let t=q(e.input?.description,e.input?.title,e.input?.prompt)??e.title,r=q(e.input?.subagent_type,e.input?.agent);return{kind:"task",description:t,agent:r}}function Ka(e){let t=we(e)??{};return{content:q(t.content)??"",status:q(t.status)??"pending",priority:q(t.priority)}}function Pm(e){let t=e.input?.todos;if(Array.isArray(t))return{kind:"todo",items:t.map(Ka)};if(Array.isArray(e.outputParsed))return{kind:"todo",items:e.outputParsed.map(Ka)};let r=we(e.outputParsed);return r&&Array.isArray(r.todos)?{kind:"todo",items:r.todos.map(Ka)}:{kind:"todo",items:[]}}function wm(e){return{kind:"question",questions:(Array.isArray(e.input?.questions)?e.input.questions:[]).map(n=>{let s=we(n)??{},u=(Array.isArray(s.options)?s.options:[]).flatMap(d=>{let g=we(d),h=g&&q(g.label);return h?[{label:h,description:g?q(g.description):void 0}]:[]});return{question:q(s.question)??"",header:q(s.header),options:u}})}}function _m(e){let r=e.input&&Object.keys(e.input).length>0?cl(e.input):void 0,n;return e.outputParsed!==void 0?n=typeof e.outputParsed=="string"?Ne(e.outputParsed):cl(e.outputParsed):e.outputText!==void 0?n=Ne(e.outputText):n=e.error,{kind:"generic",label:e.title,inputPretty:r,outputPretty:n}}function pl(e){switch(Be(e.name)){case"web_search":case"websearch":case"image_search":return nm(e);case"bash":return um(e);case"read":return pm(e);case"write":return dm(e);case"edit":case"morph_edit":return fm(e);case"grep":case"glob":return xm(e);case"task":return km(e);case"todowrite":return Pm(e);case"question":case"ask":return wm(e);default:return _m(e)}}var It=[{id:"claude-opus-4.8",name:"Claude Opus 4.8",upstreamModelId:"us.anthropic.claude-opus-4-8",transport:"bedrock",pricingRef:"anthropic/claude-opus-4.8",tier:"flagship",vision:!0,limit:{context:1e6,output:64e3}},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6",upstreamModelId:"us.anthropic.claude-sonnet-4-6",transport:"bedrock",pricingRef:"anthropic/claude-sonnet-4.6",tier:"balanced",vision:!0,limit:{context:1e6,output:64e3}},{id:"glm-5.2",name:"GLM 5.2",upstreamModelId:"z-ai/glm-5.2",transport:"openrouter",pricingRef:"z-ai/glm-5.2",tier:"balanced",vision:!1,limit:{context:1e6,output:131072},openrouterProvider:{order:["z-ai"],allow_fallbacks:!0}},{id:"qwen3.7-max",name:"Qwen3.7 Max",upstreamModelId:"qwen/qwen3.7-max",transport:"openrouter",pricingRef:"qwen/qwen3.7-max",tier:"balanced",vision:!1,limit:{context:1048576,output:64e3}},{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",upstreamModelId:"deepseek/deepseek-v4-pro",transport:"openrouter",pricingRef:"deepseek/deepseek-v4-pro",tier:"balanced",vision:!1,limit:{context:1048576,output:64e3}},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",upstreamModelId:"deepseek/deepseek-v4-flash",transport:"openrouter",pricingRef:"deepseek/deepseek-v4-flash",tier:"balanced",vision:!1,limit:{context:1048576,output:64e3}}],Lx=new Map(It.map(e=>[e.id,e]));var Fx=It.map(e=>e.id),Gx=(It.find(e=>e.tier==="flagship")??It[0]).id;var dl=!1;function jt(e){try{return typeof process<"u"?process.env?.[e]:void 0}catch{return}}function Sm(e,t){if(e==null)return t;let r=e.trim().toLowerCase();return["1","true","yes","y","on"].includes(r)?!0:["0","false","no","n","off"].includes(r)?!1:t}function vm(e){if(e==null)return;let t=e.trim().toLowerCase();if(["1","true","yes","y","on"].includes(t))return!0;if(["0","false","no","n","off"].includes(t))return!1}function At(e,t,r){return e!==void 0?e:Sm(jt(t),r)}var Cm={get disableMobileAdvertising(){return At(T().featureFlags?.disableMobileAdvertising,"NEXT_PUBLIC_DISABLE_MOBILE_ADVERTISING",!1)},get enableDinoGame(){return At(T().featureFlags?.enableDinoGame,"NEXT_PUBLIC_ENABLE_DINO_GAME",!1)},get enableProjects(){return At(T().featureFlags?.enableProjects,"NEXT_PUBLIC_ENABLE_PROJECTS",!1)},get enableAutoModel(){return At(T().featureFlags?.enableAutoModel,"NEXT_PUBLIC_ENABLE_AUTO_MODEL",dl)}};var He="kortix-active-instance",gl=["/dashboard","/agents","/p","/workspace","/settings","/browser","/desktop","/services","/sessions","/terminal","/files","/scheduled-tasks","/commands","/tools","/configuration","/changelog","/legacy","/credits-explained"];function ml(e){return gl.some(t=>e===t||e.startsWith(`${t}/`))}function _e(e){let t=e.match(/^\/instances\/([^/]+)(?:\/(.*))?$/);if(!t)return null;let r=decodeURIComponent(t[1]),n=t[2]??"";return{instanceId:r,innerPath:n?`/${n}`:""}}function Rm(e){let t=_e(e);return!!t&&t.innerPath===""}function Tm(e){let t=_e(e);return!t||!t.innerPath?e:t.innerPath}function fl(e,t){if(!e)return t;if(t.startsWith("/")||(t=`/${t}`),t.startsWith("/instances/")){let r=_e(t);return r?`/instances/${encodeURIComponent(e)}${r.innerPath}`:t}return ml(t)?`/instances/${encodeURIComponent(e)}${t}`:t}function yl(e){return e?_e(e)?.instanceId??null:null}function Im(){return typeof window>"u"?null:yl(window.location.pathname)||hl()}function hl(){if(typeof document>"u")return null;let e=document.cookie.match(new RegExp(`(?:^|; )${He}=([^;]+)`));return e?decodeURIComponent(e[1]):null}function jm(e){if(typeof document>"u")return;let t=r=>{document.cookie=r};if(typeof window<"u"&&window.location.pathname.startsWith("/projects")){t(`${He}=; Max-Age=0; Path=/; SameSite=Lax`);return}if(!e){t(`${He}=; Max-Age=0; Path=/; SameSite=Lax`);return}t(`${He}=${encodeURIComponent(e)}; Path=/; SameSite=Lax`)}function Am(e,t){return t?fl(t,e):e}function Em(e){let t=_e(e);return t?t.innerPath||"/dashboard":e}function bl(e){if(e instanceof Error)return e.message;if(typeof e=="string")return e;if(e&&typeof e=="object")try{return JSON.stringify(e)}catch{return String(e)}return String(e??"")}function xl(e){let t=bl(e).trim();if(!t)return null;let r=[t,t.replace(/^Failed to perform action:\s*/i,"").trim()],n=t.indexOf("{");n>=0&&r.push(t.slice(n));for(let s of r)if(s)try{return JSON.parse(s)}catch{}return null}function Ha(e){let t=xl(e);if(!t||typeof t!="object")return null;let r=t;return r.name==="ConfigInvalidError"?r:null}function $m(e){return Ha(e)!==null}function qm(e){let t=Ha(e);if(t){let s=(t.data?.path??"OpenCode config").replace(/^\/workspace\//,""),c=t.data?.issues?.[0]?.message,u=t.data?.issues?.[0]?.path?.join("."),d=u?.startsWith("permission")?"Remove the invalid permission frontmatter entry or replace it with valid OpenCode permission config.":"Fix the invalid config entry, then restart this session.";return{title:"OpenCode config is invalid",message:`${s} is preventing OpenCode from loading. ${d}`,detail:c?`${u?`${u}: `:""}${c}`:void 0}}return{title:"OpenCode failed to load",message:bl(e)||"The sandbox is running, but OpenCode returned an error."}}function L(){let e=jt("BACKEND_URL")||T().backendUrl;return e||"http://localhost:8008/v1"}function We(e){if(typeof e=="string"){let t=e.trim();return t.length>0?t:void 0}if(Array.isArray(e)){for(let t of e){let r=We(t);if(r)return r}return}if(e&&typeof e=="object"){let t=e;return We(t.sandboxId??t.id??t.slug??Object.values(t)[0])}}var kl=["http://localhost:8008/v1","http://127.0.0.1:8008/v1"];function Pl(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return`${e.slice(0,t)}/platform/local-bridge/status`}function Dm(e){return e==="running"||e==="active"?"active":e==="queued"||e==="branching"||e==="provisioning"?"provisioning":e==="failed"||e==="error"?"error":e==="stopped"||e==="completed"||e==="archived"?"stopped":e||"unknown"}function Wa(e,t,r){let n=r?.external_id||t.sandbox_url?.match(/\/p\/([^/]+)\//)?.[1]||t.sandbox_id;return{sandbox_id:r?.sandbox_id||t.sandbox_id||t.session_id,external_id:n,name:t.name||`${e.name} session`,provider:r?.provider||t.sandbox_provider||"daytona",base_url:r?.base_url||t.sandbox_url||(r?.external_id?`${L()}/p/${r.external_id}/${V.KORTIX_MASTER}`:""),status:Dm(r?.status||t.status),metadata:{...t.metadata??{},project_id:e.project_id,session_id:t.session_id,project_name:e.name,runtime_status:r?.status,error:t.error},created_at:r?.created_at||t.created_at,updated_at:r?.updated_at||t.updated_at}}async function Va(){let e=await oe(),t=[];for(let r of e){let n=await be(r.project_id).catch(()=>[]);for(let s of n)t.push({project:r,session:s,runtime:null,sandbox:Wa(r,s,null)})}return t.sort((r,n)=>{let s={active:0,provisioning:1,stopped:2,error:3},c=(s[r.sandbox.status]??99)-(s[n.sandbox.status]??99);return c!==0?c:Date.parse(n.sandbox.updated_at)-Date.parse(r.sandbox.updated_at)})}async function ae(e){let t=await Va();return e?t.find(r=>r.sandbox.sandbox_id===e||r.sandbox.external_id===e||r.session.session_id===e||r.runtime?.external_id===e)??null:t[0]??null}async function Et(e,t={}){let r={"Content-Type":"application/json",...t.headers},n=t.signal??AbortSignal.timeout(3e4),s=await R(`${L()}${e}`,{...t,headers:r,signal:n}),c=await s.text().catch(()=>{}),u;if(c)try{u=JSON.parse(c)}catch{}if(!s.ok){let d=u?.error||u?.message||u?.detail||c||`Platform API error ${s.status}`,g=new C(d,{status:s.status,code:u?.code||u?.error_code||String(s.status),details:u??(c?{rawText:c}:void 0),response:s,endpoint:e});throw s.status===402&&(g=me(Object.assign(g,{response:s,status:s.status,data:u}))),g}return u}function za(e){if(!e.external_id){if(e.base_url)return e.base_url;throw new Error(`Cannot build sandbox URL: missing external_id for ${e.provider} sandbox "${e.sandbox_id}"`)}return`${L()}/p/${e.external_id}/${V.KORTIX_MASTER}`}function Mm(e,t){return e.external_id?`${L()}/p/${e.external_id}/${t}`:null}async function Um(){let e=await o.get("/setup/sandbox-providers");if(e.error)throw e.error;return e.data}async function wl(e){let t=await ae();if(t)return{sandbox:t.sandbox,created:!1};let n=(await oe())[0];if(!n)throw new Error("Create a project before starting a sandbox");let s=await xe(n.project_id,{...e?.provider?{provider:e.provider}:{}}),c=(await ke(n.project_id,s.session_id))?.sandbox??null;return{sandbox:Wa(n,s,c),created:!0}}async function Om(){return(await ae().catch(()=>null))?.sandbox??null}async function Lm(e){return{sandbox:(await wl(e)).sandbox}}async function Fm(e){let t=We(e);return t?(await ae(t).catch(()=>null))?.sandbox??null:null}async function Gm(e,t){throw await ae(e)?new Error("Renaming project-session sandboxes is not exposed by the current API"):new Error("Project session sandbox not found")}async function Bm(e){let t=We(e);return(await Va().catch(()=>[])).map(n=>n.sandbox).filter(n=>!t||n.sandbox_id===t||n.external_id===t)}async function Km(){if(typeof window>"u")return null;let e=L(),t=Array.from(new Set([e,...kl]));for(let r of t)try{let n=await fetch(Pl(r),{method:"GET",signal:AbortSignal.timeout(1500),headers:{Accept:"application/json"}});if(!n.ok)continue;let s=await n.json();if(!s.success||s.status!=="ready"||!s.data?.sandbox_id)continue;return s.data}catch{continue}return null}async function Nm(e){if(!e)throw new Error("No sandbox selected for workload restart");let t=await ae(e);if(!t)throw new Error("Project session sandbox not found");await Me(t.project.project_id,t.session.session_id)}async function Hm(e){if(!e)throw new Error("No sandbox selected to stop");let t=await ae(e);if(!t)throw new Error("Project session sandbox not found");await Ue(t.project.project_id,t.session.session_id)}async function Wm(e){throw new Error("Cancellation is not exposed for project-session sandboxes")}async function Vm(e){throw new Error("Reactivation is not exposed for project-session sandboxes")}async function zm(e){throw new Error("Sandbox members moved to project access; use project members for project-session sandboxes")}async function Jm(e,t,r="member"){throw new Error("Sandbox members moved to project access; invite the user to the project instead")}async function Xm(e,t){throw new Error("Sandbox members moved to project access; update project access instead")}async function Qm(e,t,r){throw new Error("Sandbox members moved to project access; update project access instead")}async function Ym(e,t,r){throw new Error("Sandbox member spend caps are not exposed for project-session sandboxes")}async function Zm(e){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function ef(e,t){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function tf(e,t,r,n){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function Ja(e,t,r){let n=za(e),s=await R(`${ne(n)}${t}`,{signal:AbortSignal.timeout(8e3),headers:{"Content-Type":"application/json"},...r});if(!s.ok){let c=await s.text().catch(()=>"");throw new Error(c||`Request failed (${s.status})`)}return await s.json()}async function rf(e,t){return Ja(e,`/kortix/projects/${encodeURIComponent(t)}/members`,{method:"GET"})}async function nf(e,t,r,n="member"){await Ja(e,`/kortix/projects/${encodeURIComponent(t)}/members`,{method:"POST",body:JSON.stringify({user_id:r,role:n})})}async function sf(e,t,r){await Ja(e,`/kortix/projects/${encodeURIComponent(t)}/members/${encodeURIComponent(r)}`,{method:"DELETE"})}async function of(e,t){throw new Error("Sandbox invites moved to project access for project-session sandboxes")}async function af(e){let t=await Et(`/platform/invites/${encodeURIComponent(e)}`,{method:"GET"});if(!t.success||!t.data)throw new Error(t.error||"Invite not found");return t.data}async function cf(e){let t=await Et(`/platform/invites/${encodeURIComponent(e)}/accept`,{method:"POST"});if(!t.success||!t.data)throw new Error(t.error||"Failed to accept invite");return t.data}async function lf(e){let t=await Et(`/platform/invites/${encodeURIComponent(e)}/decline`,{method:"POST"});if(!t.success)throw new Error(t.error||"Failed to decline invite")}async function uf(e){throw new Error("Backups are not exposed for project-session sandboxes")}async function pf(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function df(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function gf(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function mf(e){throw new Error("SSH setup is not exposed for project-session sandboxes")}async function ff(e){throw new Error("SSH connection details are not exposed for project-session sandboxes")}var _l=["pulling","patching","stopping","removing","recreating","restarting","verifying","starting","health_check"];function yf(e){return _l.includes(e)}async function hf(e){return{phase:"idle",progress:0,message:"Sandbox image updates are managed by project-session provisioning.",targetVersion:null,previousVersion:null,currentVersion:e?.version??null,error:null,startedAt:null,updatedAt:null}}async function bf(e){let t=e?`?channel=${e}`:"",r=await fetch(`${L()}/platform/sandbox/version/latest${t}`,{headers:{Accept:"application/json"}});if(!r.ok)throw new Error(`Version check failed: ${r.status}`);let n=await r.json();try{let s=await Sl(e||"stable");n.changelog=s.find(c=>c.version===n.version)??s[0]??null}catch{n.changelog=null}return n}async function Sl(e){let t=e?`?channel=${e}`:"",r=await fetch(`${L()}/platform/sandbox/version/changelog${t}`,{headers:{Accept:"application/json"}});if(!r.ok)throw new Error(`Changelog fetch failed: ${r.status}`);return(await r.json()).changelog}async function xf(){let e=await fetch(`${L()}/platform/sandbox/version/all`,{headers:{Accept:"application/json"}});if(!e.ok)throw new Error(`All versions fetch failed: ${e.status}`);return e.json()}async function kf(e,t){throw new Error("Sandbox image updates are managed by project-session provisioning")}async function Pf(e){}async function wf(e){}async function _f(e){return{serverTypes:[],location:e||"hel1"}}async function Sf(e){throw new Error("Retired instance provisioning is unavailable. Create a project session with daytona, platinum, or e2b.")}async function vf(e){let t=await o.delete(`/platform/sandbox?sandbox_id=${e}`);if(t.error)throw t.error;return t.data}async function Cf(e,t){await o.post("/platform/sandbox/mark-error",{sandbox_id:e,error_message:t},{showErrors:!1,timeout:1e4})}async function Rf(){let e=await o.post("/platform/sandbox/claim-computer",{},{timeout:6e4});if(e.error)throw e.error;return e.data}async function Tf(e){let t=await o.get(`/platform/sandbox/${e}/status`,{showErrors:!1,timeout:1e4});return t.success?t.data??null:null}function If(e,t){return`${L()}/platform/sandbox/${e}/provision-stream?token=${encodeURIComponent(t)}`}async function jf(){let e=await o.get("/platform/github-app/status",{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App status request failed");return e.data}async function Af(e={}){let t=await o.post("/platform/github-app/manifest-start",e,{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub App manifest-start request failed");return t.data}async function Ef(e){let t=await o.post("/platform/github-app/app",{app_id:e.appId,private_key:e.privateKey,installation_id:e.installationId,slug:e.slug},{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub App configuration request failed");return t.data}async function $f(e){let t=await o.post("/platform/github-app/pat",e,{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub token configuration request failed");return t.data}async function qf(){let e=await o.delete("/platform/github-app",{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App disconnect request failed");return e.data}function vl(e){try{let t=new URL(e);if(/^\/proxy\/\d+(?:\/|$)/.test(t.pathname))return`${t.origin}/v1/p/auth`;let r=t.pathname.indexOf("/p/");return r!==-1?`${t.origin}${t.pathname.slice(0,r)}/p/auth`:`${t.origin}/v1/p/auth`}catch{return null}}function Df(e,t){try{let r=new URL(e),n=r.pathname;if(!(/^\/v1\/p\/[^/]+\/\d+(?:\/|$)/.test(n)||/^\/proxy\/\d+(?:\/|$)/.test(n)))return!1;let c=new Set;if(t)try{c.add(new URL(t).origin)}catch{}return typeof window<"u"&&c.add(window.location.origin),c.size===0||c.has(r.origin)}catch{return!1}}function Mf(e,t){return Df(e,t)?(t?vl(t):null)??vl(e):null}function Uf(e){try{return/^p\d+-[^.]+\./.test(new URL(e).hostname)}catch{return!1}}function Of(e,t){try{let r=new URL(e);return r.searchParams.set("token",t),r.toString()}catch{return e}}return El(Lf);})();
|