@kortix/sdk 0.10.10 → 0.10.11

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.
Files changed (35) hide show
  1. package/README.md +7 -0
  2. package/dist/core/client/kortix.d.ts +10 -1
  3. package/dist/core/client/kortix.d.ts.map +1 -1
  4. package/dist/core/client/kortix.js +9 -1
  5. package/dist/core/client/kortix.js.map +1 -1
  6. package/dist/core/rest/projects-client/connectors.d.ts +93 -1
  7. package/dist/core/rest/projects-client/connectors.d.ts.map +1 -1
  8. package/dist/core/rest/projects-client/connectors.js +16 -0
  9. package/dist/core/rest/projects-client/connectors.js.map +1 -1
  10. package/dist/core/rest/projects-client/gateway.d.ts +43 -2
  11. package/dist/core/rest/projects-client/gateway.d.ts.map +1 -1
  12. package/dist/core/rest/projects-client/gateway.js +12 -2
  13. package/dist/core/rest/projects-client/gateway.js.map +1 -1
  14. package/dist/core/rest/projects-client/projects.d.ts +30 -1
  15. package/dist/core/rest/projects-client/projects.d.ts.map +1 -1
  16. package/dist/core/rest/projects-client/projects.js +19 -3
  17. package/dist/core/rest/projects-client/projects.js.map +1 -1
  18. package/dist/index.d.ts +1 -1
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js.map +1 -1
  21. package/dist/kortix.esm.min.js +26 -26
  22. package/dist/kortix.global.js +28 -28
  23. package/dist/react/model-flatten.d.ts +24 -0
  24. package/dist/react/model-flatten.d.ts.map +1 -1
  25. package/dist/react/model-flatten.js +5 -0
  26. package/dist/react/model-flatten.js.map +1 -1
  27. package/dist/react/provider-selection.d.ts +11 -6
  28. package/dist/react/provider-selection.d.ts.map +1 -1
  29. package/dist/react/provider-selection.js +17 -15
  30. package/dist/react/provider-selection.js.map +1 -1
  31. package/dist/react/use-model-store.d.ts +10 -0
  32. package/dist/react/use-model-store.d.ts.map +1 -1
  33. package/dist/react/use-model-store.js +10 -3
  34. package/dist/react/use-model-store.js.map +1 -1
  35. package/package.json +2 -2
@@ -1,19 +1,19 @@
1
- "use strict";var Kortix=(()=>{var Dt=Object.defineProperty;var Cl=Object.getOwnPropertyDescriptor;var Rl=Object.getOwnPropertyNames;var Tl=Object.prototype.hasOwnProperty;var Il=(e,t)=>{for(var n in t)Dt(e,n,{get:t[n],enumerable:!0})},jl=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Rl(t))!Tl.call(e,s)&&s!==n&&Dt(e,s,{get:()=>t[s],enumerable:!(r=Cl(t,s))||r.enumerable});return e};var Al=e=>jl(Dt({},"__esModule",{value:!0}),e);var Of={};Il(Of,{ACTIVE_INSTANCE_COOKIE:()=>He,ApiError:()=>C,AuthError:()=>de,BillingError:()=>ne,COST_MARKUP:()=>Ga,DEFAULT_TRANSCRIPT_OPTIONS:()=>Ma,DESTRUCTIVE_PHASES:()=>wl,INSTANCE_SCOPED_ROUTES:()=>dl,PublicSessionShareError:()=>Pt,RequestTooLargeError:()=>ge,RuntimeNotReadyError:()=>at,SANDBOX_PORTS:()=>V,SessionNotReadyError:()=>Fe,SessionStartError:()=>kt,__getConfigResolver:()=>$l,__setConfigResolver:()=>ql,acceptAccountInvite:()=>Dr,acceptInvite:()=>af,actReviewItem:()=>oa,activateConnectionProfile:()=>Ms,addMarketplaceSource:()=>Aa,addSandboxMember:()=>zm,allDescendantIds:()=>tl,appendPreviewToken:()=>Uf,approveProjectAccessRequest:()=>is,approveTask:()=>uu,archiveProject:()=>bt,assignTicket:()=>bu,attachGroupToProject:()=>fs,authenticatedFetch:()=>R,backendApi:()=>o,buildInstancePath:()=>ml,buildPreviewAuthEndpoint:()=>Df,buildSandboxTemplate:()=>ai,buildWebProxyUrl:()=>xd,bulkActReviewItems:()=>aa,cancelAccountInvite:()=>Er,cancelSandbox:()=>Hm,cancelSandboxUpdate:()=>Pf,cancelScheduledChange:()=>fo,cancelSubscription:()=>po,childMapByParent:()=>Og,claimComputer:()=>Cf,classifyPart:()=>Oa,classifyTurn:()=>zc,clearModelDefault:()=>Qi,clearSessionFresh:()=>Gp,closeChangeRequest:()=>vi,closeMilestone:()=>Wu,collectTurnParts:()=>$g,commentTicket:()=>ku,commitSessionChanges:()=>Ti,computeStatusFromPart:()=>Fa,configureAutoTopup:()=>xo,configureKortix:()=>Qe,confirmCheckoutSession:()=>lo,connectEmail:()=>jo,connectSlack:()=>Po,createAccount:()=>Cr,createAccountAuditWebhook:()=>ka,createAccountToken:()=>da,createBackup:()=>uf,createCheckoutSession:()=>co,createConnector:()=>Ws,createGatewayKey:()=>Zo,createInstance:()=>_f,createKortix:()=>Bc,createKortixPty:()=>ur,createMilestone:()=>Nu,createPortalSession:()=>uo,createProject:()=>Hr,createProjectAgent:()=>ju,createProjectCliToken:()=>fa,createProjectRepo:()=>Wr,createProjectResourceGrant:()=>xs,createProjectSession:()=>xe,createProjectTrigger:()=>Ki,createSandbox:()=>Om,createSandboxShare:()=>la,createSandboxTemplate:()=>si,createSessionPublicShare:()=>Di,createTask:()=>au,createTicket:()=>fu,declineAccountInvite:()=>Mr,declineInvite:()=>cf,deleteBackup:()=>df,deleteConnector:()=>Vs,deleteCredential:()=>Zu,deleteEnv:()=>cr,deleteGatewayBudget:()=>Qo,deleteGitHubInstallation:()=>rs,deleteInstance:()=>Sf,deleteKortixProject:()=>Lu,deleteMilestone:()=>zu,deletePersonalProjectSecret:()=>As,deleteProjectAgent:()=>Eu,deleteProjectResourceGrant:()=>ks,deleteProjectSecret:()=>Is,deleteProjectSession:()=>Gi,deleteProjectTrigger:()=>Hi,deleteSandboxTemplate:()=>oi,deleteTask:()=>pu,deleteTicket:()=>Pu,describeAccountInvite:()=>$r,detachGroupFromProject:()=>hs,detectLocalhostUrls:()=>Dc,disconnectEmail:()=>Ao,disconnectGitHubApp:()=>qf,disconnectSlack:()=>So,discoverLocalSandbox:()=>Bm,dropClientForUrl:()=>cp,dropPublicClientForUrl:()=>pp,ensurePmSession:()=>Tu,ensureSandbox:()=>Pl,env:()=>fc,exportAccountAudit:()=>ba,extractGatewayErrorDetails:()=>ee,extractInstanceRoute:()=>_e,featureFlags:()=>vm,fetchAccountStateWithToken:()=>Vp,fetchAccountsWithToken:()=>qp,fetchProjectArchive:()=>di,fetchProjectsForAccountWithToken:()=>Up,files:()=>_c,findLastTextPart:()=>Dg,fireProjectTrigger:()=>Vi,fixSandboxWithAgent:()=>ri,formatBillingErrorForUI:()=>mc,formatCost:()=>Xg,formatDuration:()=>Vg,formatOpenCodeRuntimeError:()=>qm,formatTokens:()=>Qg,formatTranscript:()=>Nc,generateSessionId:()=>Kc,getAccount:()=>Rr,getAccountState:()=>to,getAccountStateMinimal:()=>no,getActiveInstanceIdFromCookie:()=>yl,getAgentCardLabel:()=>el,getAgentConfig:()=>Hp,getAgentPersona:()=>qu,getAllVersions:()=>bf,getAnsweredQuestionParts:()=>Ug,getAuthToken:()=>Ae,getAuthTokenWithRetry:()=>rr,getAutoTopupSettings:()=>bo,getBillingCreditBreakdown:()=>io,getBillingTierConfigurations:()=>ao,getBillingTransactionsSummary:()=>so,getBillingUsageHistory:()=>oo,getChangeRequest:()=>ki,getChangeRequestDiff:()=>Pi,getChangeRequestMergePreview:()=>wi,getChildSessionError:()=>Sg,getChildSessionId:()=>_g,getChildSessionToolParts:()=>vg,getClient:()=>X,getClientForUrl:()=>se,getConnectStatus:()=>Js,getConnectorConfig:()=>Ks,getConnectorPolicies:()=>Gs,getCurrentInstanceIdFromPathname:()=>fl,getCurrentInstanceIdFromWindow:()=>Tm,getDefaultAccountState:()=>eo,getDiagnostics:()=>Tg,getDirectory:()=>Zc,getEmailInstallation:()=>To,getEmailMode:()=>Io,getFileWithDir:()=>La,getFilename:()=>Yc,getFullChangelog:()=>_l,getGatewayBreakdown:()=>Wo,getGatewayBudgets:()=>Jo,getGatewayErrors:()=>zo,getGatewayKeys:()=>Yo,getGatewayLog:()=>Ko,getGatewayOverview:()=>No,getGatewayRoutingPolicy:()=>Oo,getGatewaySeries:()=>Ho,getGatewaySessions:()=>Vo,getGitHubAppStatus:()=>If,getGitHubInstallation:()=>Yr,getHiddenToolParts:()=>kg,getInvite:()=>of,getJustavpsServerTypes:()=>wf,getKortixProject:()=>Mu,getKortixProjectBySession:()=>Uu,getKortixPtyWebSocketUrl:()=>gr,getLatestSandboxVersion:()=>hf,getManagedGitStatus:()=>Dp,getMarketplaceCatalogItem:()=>Ta,getMarketplaceCatalogItemFile:()=>Ia,getMeetVoices:()=>qo,getMilestone:()=>Bu,getModelDefaults:()=>Ji,getOpenCodeConfigInvalidError:()=>Na,getPartText:()=>bg,getPermissionForTool:()=>Ig,getProject:()=>gt,getProjectActivity:()=>$u,getProjectCommit:()=>fi,getProjectCommitDiff:()=>yi,getProjectDetail:()=>mt,getProjectFileHistory:()=>hi,getProjectGitToken:()=>Nr,getProjectLlmCatalog:()=>ft,getProjectModelPicker:()=>yt,getProjectSandboxHealth:()=>xt,getProjectSession:()=>Ui,getProrationPreview:()=>yo,getProviders:()=>Mm,getProxyBaseUrl:()=>fd,getPublicClientForUrl:()=>up,getPublicSessionShare:()=>Yp,getPublicSessionShareMessages:()=>Zp,getQuestionForTool:()=>jg,getRetryInfo:()=>Yg,getRetryMessage:()=>Zg,getReviewItem:()=>sa,getSSHConnection:()=>mf,getSandbox:()=>Um,getSandboxById:()=>Lm,getSandboxMemberScopes:()=>Zm,getSandboxPortUrl:()=>Dm,getSandboxProvisionStatus:()=>Rf,getSandboxProvisionStreamUrl:()=>Tf,getSandboxUpdateStatus:()=>yf,getSandboxUrl:()=>Va,getServiceLogs:()=>sp,getSessionAudit:()=>Oi,getSessionCost:()=>Jg,getSessionHealth:()=>qa,getSessionPreviewCandidates:()=>qi,getSessionTranscript:()=>Li,getShellModePart:()=>Fg,getSlackChannelFile:()=>vo,getSlackInstallation:()=>ko,getSlackManifest:()=>_o,getSlackMode:()=>wo,getSupabaseAccessToken:()=>rt,getSupabaseAccessTokenWithRetry:()=>ue,getTask:()=>su,getTaskStatus:()=>ou,getTemplate:()=>ed,getTicket:()=>gu,getToolInfo:()=>Cg,getTranscriptFilename:()=>Hc,getTurnCost:()=>zg,getTurnError:()=>Ng,getTurnErrorDetails:()=>Hg,getTurnStatus:()=>Wg,getVersionDiff:()=>bi,getViewerSandboxScopes:()=>Ym,getWorkingState:()=>Bg,grantSandboxProjectAccess:()=>nf,groupMessagesIntoTurns:()=>qg,hasDiffs:()=>em,hasLocalhostUrls:()=>gd,heartbeatGapEvent:()=>Lc,humanizeToolName:()=>Ct,installTemplate:()=>td,invalidateTokenCache:()=>je,inviteAccountMember:()=>jr,inviteProjectMember:()=>us,inviteRepoCollaborator:()=>Br,isAdminBypassEnabled:()=>Ap,isAgentPart:()=>mg,isAppRouteUrl:()=>$c,isAttachment:()=>Xc,isBillingError:()=>gc,isCompactionPart:()=>fg,isConfigured:()=>Ye,isDestructivePhase:()=>ff,isExternalUrl:()=>wd,isFilePart:()=>Jc,isInstanceDetailPath:()=>Cm,isInstanceScopedAppPath:()=>gl,isInviteSent:()=>Fp,isLastUserMessage:()=>Gg,isManagedGithubProject:()=>$p,isOpenCodeConfigInvalidError:()=>Em,isPatchPart:()=>hg,isPreviewUrl:()=>bd,isProxiableLocalhostUrl:()=>Mc,isReasoningPart:()=>Tt,isRuntimeReady:()=>nd,isSessionFresh:()=>Ai,isSessionStartError:()=>Bp,isShellMode:()=>nl,isSnapshotPart:()=>yg,isSubdomainPreviewUrl:()=>Mf,isTextPart:()=>te,isToolPart:()=>z,isToolPartHidden:()=>Pg,isWebProxyUrl:()=>Pd,kortixPty:()=>hc,leaveAccount:()=>Lr,linkRepository:()=>Qr,listAccountAudit:()=>ha,listAccountAuditWebhooks:()=>xa,listAccountInvites:()=>Ar,listAccountMembers:()=>Ir,listAccountTokens:()=>pa,listAccounts:()=>vr,listBackups:()=>lf,listBillingTransactions:()=>ro,listChangeRequests:()=>xi,listChannelBindings:()=>Xp,listColumns:()=>wu,listConnectionProfiles:()=>Es,listConnectors:()=>Us,listCredentialEvents:()=>Xu,listCredentials:()=>Ju,listEnv:()=>or,listFeaturedMarketplaces:()=>Ra,listFields:()=>Su,listGatewayLogs:()=>Bo,listGitHubInstallations:()=>Zr,listGitHubRepositories:()=>es,listGitHubRepositoryBranches:()=>ts,listKortixProjectSessions:()=>Ou,listKortixProjects:()=>Du,listKortixPty:()=>lr,listMarketplaceCatalogItems:()=>va,listMarketplaceSources:()=>ja,listMarketplaces:()=>Ca,listMilestoneEvents:()=>Ku,listMilestones:()=>Gu,listPendingApprovals:()=>Ps,listPendingProjectInvites:()=>ps,listPipedreamApps:()=>zs,listProjectAccess:()=>as,listProjectAccessRequests:()=>ss,listProjectAgents:()=>Iu,listProjectBranches:()=>gi,listProjectCliTokens:()=>ma,listProjectCommits:()=>mi,listProjectFiles:()=>li,listProjectGroupGrants:()=>ms,listProjectPolicies:()=>Ys,listProjectResourceGrants:()=>bs,listProjectSandboxTemplates:()=>ei,listProjectSandboxes:()=>ci,listProjectSecrets:()=>Ss,listProjectSessions:()=>be,listProjectSnapshots:()=>ti,listProjectTriggers:()=>Bi,listProjects:()=>oe,listProjectsForAccount:()=>Gr,listReviewItems:()=>ra,listSandboxMembers:()=>Vm,listSandboxProjectMembers:()=>tf,listSandboxShares:()=>ca,listSandboxes:()=>Gm,listServiceTemplates:()=>rp,listServices:()=>np,listSessionPublicShares:()=>$i,listSessionsNeedingInput:()=>ws,listTaskEvents:()=>iu,listTasks:()=>ru,listTemplates:()=>Cu,listTicketEvents:()=>mu,listTickets:()=>du,markInstanceError:()=>vf,markSessionFresh:()=>ji,mergeChangeRequest:()=>Si,narrowChatEvent:()=>Fc,normalizeAppPathname:()=>Am,normalizeExternalInput:()=>_d,normalizeToolName:()=>Be,openChangeRequest:()=>_i,openEventStream:()=>St,parseBillingError:()=>me,parseFlagOverride:()=>Sm,parseLocalhostUrl:()=>Le,parseOpenCodeErrorPayload:()=>bl,parseSubdomainUrl:()=>Da,parseWebProxyUrl:()=>kd,patchKortixProject:()=>Fu,pipedreamConnect:()=>Hs,pipedreamFinalize:()=>Qs,platformConfig:()=>T,pollProjectProviderOAuth:()=>Rs,previewGatewayRoute:()=>Go,previewMeetVoice:()=>Mo,provisionProject:()=>Vr,provisionProjectWithToken:()=>Op,proxyLocalhostUrl:()=>$a,proxyUrlToInternal:()=>hd,purchaseCredits:()=>ho,reactivateSandbox:()=>Wm,reactivateSubscription:()=>go,readProjectFile:()=>pi,rebuildProjectSnapshot:()=>ni,reconcileConnectionProfile:()=>qs,reconcileServices:()=>op,registerService:()=>ap,rejectProjectAccessRequest:()=>os,relativizePath:()=>Rg,removeAccountAuditWebhook:()=>wa,removeAccountMember:()=>Ur,removeKortixPty:()=>dr,removeMarketplaceSource:()=>Ea,removeSandboxMember:()=>Jm,renameSandbox:()=>Fm,reopenChangeRequest:()=>Ci,reopenMilestone:()=>Vu,replaceColumns:()=>_u,replaceFields:()=>vu,replaceTemplates:()=>Ru,requestChangesOnChangeRequest:()=>Ri,requestProjectAccess:()=>Lp,requestProjectConnector:()=>Sa,requestProjectSecret:()=>_a,resendAccountInvite:()=>qr,resendPendingProjectInvite:()=>gs,resetClient:()=>lp,resetGatewayRoutingPolicy:()=>Fo,resetPublicClient:()=>dp,resetSandboxUpdateStatus:()=>kf,resolveApproval:()=>_s,restartProjectSession:()=>Me,restartSandbox:()=>Km,restoreBackup:()=>pf,revealCredential:()=>Yu,revokeAccountToken:()=>ga,revokeConnectionProfile:()=>Ds,revokeGatewayKey:()=>ea,revokePendingProjectInvite:()=>ds,revokeProjectAccess:()=>ls,revokeProjectCliToken:()=>ya,revokeSandboxInvite:()=>sf,revokeSandboxProjectAccess:()=>rf,revokeSandboxShare:()=>ua,revokeSessionPublicShare:()=>Mi,rewriteLocalhostUrl:()=>Pe,runGatewayPlayground:()=>ta,saveGitHubInstallation:()=>ns,scheduleDowngrade:()=>mo,searchProjectFiles:()=>ui,serviceAction:()=>ip,sessionStartKey:()=>Np,setActiveInstanceCookie:()=>Im,setAdminBypass:()=>jp,setAgentScope:()=>Yi,setBootstrapAuthToken:()=>Zl,setCachedAuthToken:()=>Yl,setConnectorCredential:()=>Xs,setConnectorCredentialMode:()=>Ls,setConnectorName:()=>Ns,setConnectorPolicies:()=>Bs,setConnectorSensitive:()=>Fs,setEnv:()=>ar,setGatewayBudget:()=>Xo,setGatewayRoutingPolicy:()=>Lo,setGitHubAppFromExisting:()=>Af,setGitHubAppPat:()=>Ef,setMeetBotName:()=>Do,setMeetVoice:()=>$o,setModelDefault:()=>Xi,setPersonalProjectSecret:()=>js,setProjectOnboardingComplete:()=>Xr,setProjectPolicies:()=>Zs,setProjectSessionSharing:()=>Ei,setProjectTriggersActivation:()=>Wi,setupSSH:()=>gf,shouldHideResponsePart:()=>Kg,shouldShowToolPart:()=>Qc,sortSessions:()=>Lg,speakInMeeting:()=>Uo,splitUserParts:()=>xg,startGitHubAppManifest:()=>jf,startProjectProviderOAuth:()=>Cs,startProjectSession:()=>ke,startTask:()=>lu,stopProjectSession:()=>Ue,stopSandbox:()=>Nm,stripAnsi:()=>Eg,stripInstancePrefix:()=>Rm,stripTrailingSlashes:()=>re,submitReviewItem:()=>ia,supabaseClient:()=>Ep,syncConnectors:()=>Os,systemReload:()=>mp,toInstanceAwarePath:()=>jm,toInternalUrl:()=>yd,toolInfo:()=>Rt,toolViewModel:()=>ul,transcribeAudio:()=>na,triggerSandboxUpdate:()=>xf,triggersRequest:()=>yc,turnHasSteps:()=>Mg,unassignTicket:()=>xu,unwrapError:()=>K,updateAccountAuditWebhook:()=>Pa,updateAccountMemberRole:()=>Or,updateAccountName:()=>Tr,updateAgentConfig:()=>Wp,updateChannelBinding:()=>Qp,updateConnectionProfileCredential:()=>$s,updateEmailPolicy:()=>Eo,updateExperimentalFeature:()=>zr,updateKortixPty:()=>pr,updateMilestone:()=>Hu,updateProject:()=>ht,updateProjectAccess:()=>cs,updateProjectAgent:()=>Au,updateProjectDefaultAgent:()=>Zi,updateProjectGroupGrant:()=>ys,updateProjectSandboxProvider:()=>Jr,updateProjectSession:()=>Fi,updateProjectTrigger:()=>Ni,updateSandboxMemberRole:()=>Xm,updateSandboxMemberScope:()=>ef,updateSandboxMemberSpendCap:()=>Qm,updateSandboxTemplate:()=>ii,updateTask:()=>cu,updateTemplateWarmPool:()=>Mp,updateTicket:()=>yu,updateTicketStatus:()=>hu,uploadSlackChannelFile:()=>Co,upsertCredential:()=>Qu,upsertProjectGitCredential:()=>Ts,upsertProjectSecret:()=>vs,validateProjectManifest:()=>Kr,validateToken:()=>Fr});var El={backendUrl:"",getToken:async()=>null},Mt=null,Xe=null;function ql(e){Xe=e}function $l(){return Xe}function Qe(e,t){t?.global!==!1&&(Mt=e)}function T(){return Xe?.()??Mt??El}function Ye(){return Mt!==null||Xe?.()!==void 0}var Ja=({onRequest:e,onSseError:t,onSseEvent:n,responseTransformer:r,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 Il=Object.getOwnPropertyDescriptor;var Al=Object.getOwnPropertyNames;var jl=Object.prototype.hasOwnProperty;var El=(e,t)=>{for(var r in t)Dt(e,r,{get:t[r],enumerable:!0})},ql=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Al(t))!jl.call(e,s)&&s!==r&&Dt(e,s,{get:()=>t[s],enumerable:!(n=Il(t,s))||n.enumerable});return e};var $l=e=>ql(Dt({},"__esModule",{value:!0}),e);var Kf={};El(Kf,{ACTIVE_INSTANCE_COOKIE:()=>He,ApiError:()=>C,AuthError:()=>de,BillingError:()=>re,COST_MARKUP:()=>Na,DEFAULT_TRANSCRIPT_OPTIONS:()=>La,DESTRUCTIVE_PHASES:()=>vl,INSTANCE_SCOPED_ROUTES:()=>fl,PublicSessionShareError:()=>Pt,RequestTooLargeError:()=>ge,RuntimeNotReadyError:()=>at,SANDBOX_PORTS:()=>W,SessionNotReadyError:()=>Fe,SessionStartError:()=>kt,__getConfigResolver:()=>Ul,__setConfigResolver:()=>Ml,acceptAccountInvite:()=>Dn,acceptInvite:()=>df,actReviewItem:()=>la,activateConnectionProfile:()=>Ms,addMarketplaceSource:()=>$a,addSandboxMember:()=>Zm,allDescendantIds:()=>sl,appendPreviewToken:()=>Bf,approveProjectAccessRequest:()=>is,approveTask:()=>gu,archiveProject:()=>bt,assignTicket:()=>Pu,attachGroupToProject:()=>fs,authenticatedFetch:()=>R,backendApi:()=>o,buildInstancePath:()=>hl,buildPreviewAuthEndpoint:()=>Ff,buildSandboxTemplate:()=>ui,buildWebProxyUrl:()=>Sd,bulkActReviewItems:()=>ua,cancelAccountInvite:()=>En,cancelSandbox:()=>Xm,cancelSandboxUpdate:()=>Cf,cancelScheduledChange:()=>bo,cancelSubscription:()=>fo,childMapByParent:()=>Kg,claimComputer:()=>jf,classifyPart:()=>Ga,classifyTurn:()=>Qc,clearModelDefault:()=>eo,clearSessionFresh:()=>Hp,closeChangeRequest:()=>Ti,closeMilestone:()=>Ju,collectTurnParts:()=>Lg,commentTicket:()=>_u,commitSessionChanges:()=>ji,computeStatusFromPart:()=>Ka,configureAutoTopup:()=>wo,configureKortix:()=>Qe,confirmCheckoutSession:()=>go,connectEmail:()=>qo,connectSlack:()=>So,createAccount:()=>Cn,createAccountAuditWebhook:()=>_a,createAccountToken:()=>fa,createBackup:()=>ff,createCheckoutSession:()=>po,createConnector:()=>Vs,createGatewayKey:()=>ra,createInstance:()=>Tf,createKortix:()=>Hc,createKortixPty:()=>un,createMilestone:()=>Wu,createPortalSession:()=>mo,createProject:()=>Hn,createProjectAgent:()=>qu,createProjectCliToken:()=>ba,createProjectRepo:()=>Vn,createProjectResourceGrant:()=>xs,createProjectSession:()=>xe,createProjectTrigger:()=>Vi,createSandbox:()=>Km,createSandboxShare:()=>da,createSandboxTemplate:()=>ai,createSessionPublicShare:()=>Oi,createTask:()=>uu,createTicket:()=>bu,declineAccountInvite:()=>Mn,declineInvite:()=>gf,deleteBackup:()=>hf,deleteConnector:()=>zs,deleteCredential:()=>rp,deleteEnv:()=>cn,deleteGatewayBudget:()=>ea,deleteGitHubInstallation:()=>ns,deleteInstance:()=>If,deleteKortixProject:()=>Bu,deleteMilestone:()=>Qu,deletePersonalProjectSecret:()=>js,deleteProjectAgent:()=>Du,deleteProjectResourceGrant:()=>ks,deleteProjectSecret:()=>Is,deleteProjectSession:()=>Ni,deleteProjectTrigger:()=>zi,deleteSandboxTemplate:()=>li,deleteTask:()=>mu,deleteTicket:()=>Su,describeAccountInvite:()=>$n,detachGroupFromProject:()=>hs,detectLocalhostUrls:()=>Oc,disconnectEmail:()=>$o,disconnectGitHubApp:()=>Of,disconnectSlack:()=>Ro,discoverConnectorAuth:()=>Ws,discoverLocalSandbox:()=>Wm,dropClientForUrl:()=>pp,dropPublicClientForUrl:()=>mp,ensurePmSession:()=>ju,ensureSandbox:()=>Sl,env:()=>bc,exportAccountAudit:()=>Pa,extractGatewayErrorDetails:()=>ee,extractInstanceRoute:()=>_e,featureFlags:()=>Am,fetchAccountStateWithToken:()=>Qp,fetchAccountsWithToken:()=>Mp,fetchProjectArchive:()=>fi,fetchProjectsForAccountWithToken:()=>Gp,files:()=>Cc,findLastTextPart:()=>Fg,fireProjectTrigger:()=>Xi,fixSandboxWithAgent:()=>oi,formatBillingErrorForUI:()=>hc,formatCost:()=>tm,formatDuration:()=>Yg,formatOpenCodeRuntimeError:()=>Om,formatTokens:()=>rm,formatTranscript:()=>Wc,generateSessionId:()=>Vc,getAccount:()=>Rn,getAccountState:()=>so,getAccountStateMinimal:()=>io,getActiveInstanceIdFromCookie:()=>xl,getAgentCardLabel:()=>nl,getAgentConfig:()=>Jp,getAgentPersona:()=>Mu,getAllVersions:()=>_f,getAnsweredQuestionParts:()=>Bg,getAuthToken:()=>je,getAuthTokenWithRetry:()=>rn,getAutoTopupSettings:()=>Po,getBillingCreditBreakdown:()=>co,getBillingTierConfigurations:()=>uo,getBillingTransactionsSummary:()=>ao,getBillingUsageHistory:()=>lo,getChangeRequest:()=>_i,getChangeRequestDiff:()=>Si,getChangeRequestMergePreview:()=>vi,getChildSessionError:()=>Ig,getChildSessionId:()=>Tg,getChildSessionToolParts:()=>Ag,getClient:()=>X,getClientForUrl:()=>se,getConnectStatus:()=>Ys,getConnectorConfig:()=>Ks,getConnectorPolicies:()=>Gs,getCurrentInstanceIdFromPathname:()=>bl,getCurrentInstanceIdFromWindow:()=>qm,getDefaultAccountState:()=>no,getDiagnostics:()=>qg,getDirectory:()=>rl,getDiscoverIntegration:()=>Qs,getEmailInstallation:()=>jo,getEmailMode:()=>Eo,getFileWithDir:()=>Ba,getFilename:()=>tl,getFullChangelog:()=>Cl,getGatewayBreakdown:()=>Jo,getGatewayBudgets:()=>Yo,getGatewayErrors:()=>Qo,getGatewayKeys:()=>ta,getGatewayLog:()=>Vo,getGatewayOverview:()=>Wo,getGatewayRoutingPolicy:()=>Go,getGatewaySeries:()=>zo,getGatewaySessions:()=>Xo,getGitHubAppStatus:()=>$f,getGitHubInstallation:()=>Yn,getHiddenToolParts:()=>vg,getInvite:()=>pf,getJustavpsServerTypes:()=>Rf,getKortixProject:()=>Lu,getKortixProjectBySession:()=>Fu,getKortixPtyWebSocketUrl:()=>gn,getLatestSandboxVersion:()=>wf,getManagedGitStatus:()=>Lp,getMarketplaceCatalogItem:()=>ja,getMarketplaceCatalogItemFile:()=>Ea,getMeetVoices:()=>Mo,getMilestone:()=>Hu,getModelDefaults:()=>Yi,getOpenCodeConfigInvalidError:()=>Wa,getPartText:()=>_g,getPermissionForTool:()=>$g,getProject:()=>gt,getProjectActivity:()=>Uu,getProjectCommit:()=>bi,getProjectCommitDiff:()=>xi,getProjectDetail:()=>mt,getProjectFileHistory:()=>ki,getProjectGitToken:()=>Nn,getProjectLlmCatalog:()=>ft,getProjectLlmCatalogProviders:()=>Op,getProjectModelPicker:()=>yt,getProjectSandboxHealth:()=>xt,getProjectSession:()=>Fi,getProrationPreview:()=>xo,getProviders:()=>Gm,getProxyBaseUrl:()=>kd,getPublicClientForUrl:()=>gp,getPublicSessionShare:()=>nd,getPublicSessionShareMessages:()=>sd,getQuestionForTool:()=>Dg,getRetryInfo:()=>nm,getRetryMessage:()=>sm,getReviewItem:()=>aa,getSSHConnection:()=>xf,getSandbox:()=>Bm,getSandboxById:()=>Nm,getSandboxMemberScopes:()=>sf,getSandboxPortUrl:()=>Fm,getSandboxProvisionStatus:()=>Ef,getSandboxProvisionStreamUrl:()=>qf,getSandboxUpdateStatus:()=>Pf,getSandboxUrl:()=>Xa,getServiceLogs:()=>ap,getSessionAudit:()=>Gi,getSessionCost:()=>em,getSessionHealth:()=>Ma,getSessionPreviewCandidates:()=>Mi,getSessionTranscript:()=>Bi,getShellModePart:()=>Hg,getSlackChannelFile:()=>To,getSlackInstallation:()=>_o,getSlackManifest:()=>Co,getSlackMode:()=>vo,getSupabaseAccessToken:()=>nt,getSupabaseAccessTokenWithRetry:()=>ue,getTask:()=>au,getTaskStatus:()=>lu,getTemplate:()=>id,getTicket:()=>yu,getToolInfo:()=>jg,getTranscriptFilename:()=>zc,getTurnCost:()=>Zg,getTurnError:()=>Jg,getTurnErrorDetails:()=>Xg,getTurnStatus:()=>Qg,getVersionDiff:()=>Pi,getViewerSandboxScopes:()=>nf,getWorkingState:()=>Wg,grantSandboxProjectAccess:()=>cf,groupMessagesIntoTurns:()=>Og,hasDiffs:()=>im,hasLocalhostUrls:()=>bd,heartbeatGapEvent:()=>Bc,humanizeToolName:()=>Ct,installTemplate:()=>od,invalidateTokenCache:()=>Ae,inviteAccountMember:()=>An,inviteProjectMember:()=>us,inviteRepoCollaborator:()=>Bn,isAdminBypassEnabled:()=>$p,isAgentPart:()=>xg,isAppRouteUrl:()=>Uc,isAttachment:()=>Zc,isBillingError:()=>yc,isCompactionPart:()=>kg,isConfigured:()=>Ye,isDestructivePhase:()=>kf,isExternalUrl:()=>Rd,isFilePart:()=>Yc,isInstanceDetailPath:()=>jm,isInstanceScopedAppPath:()=>yl,isInviteSent:()=>Np,isLastUserMessage:()=>Vg,isManagedGithubProject:()=>Up,isOpenCodeConfigInvalidError:()=>Um,isPatchPart:()=>wg,isPreviewUrl:()=>_d,isProxiableLocalhostUrl:()=>Lc,isReasoningPart:()=>Tt,isRuntimeReady:()=>ad,isSessionFresh:()=>$i,isSessionStartError:()=>Vp,isShellMode:()=>il,isSnapshotPart:()=>Pg,isSubdomainPreviewUrl:()=>Gf,isTextPart:()=>te,isToolPart:()=>z,isToolPartHidden:()=>Cg,isWebProxyUrl:()=>Cd,kortixPty:()=>kc,leaveAccount:()=>Ln,linkRepository:()=>Qn,listAccountAudit:()=>ka,listAccountAuditWebhooks:()=>wa,listAccountInvites:()=>jn,listAccountMembers:()=>In,listAccountTokens:()=>ma,listAccounts:()=>vn,listBackups:()=>mf,listBillingTransactions:()=>oo,listChangeRequests:()=>wi,listChannelBindings:()=>ed,listColumns:()=>vu,listConnectionProfiles:()=>Es,listConnectors:()=>Us,listCredentialEvents:()=>Zu,listCredentials:()=>Yu,listDiscoverIntegrations:()=>Xs,listEnv:()=>on,listFeaturedMarketplaces:()=>Aa,listFields:()=>Ru,listGatewayLogs:()=>Ho,listGitHubInstallations:()=>Zn,listGitHubRepositories:()=>es,listGitHubRepositoryBranches:()=>ts,listKortixProjectSessions:()=>Gu,listKortixProjects:()=>Ou,listKortixPty:()=>ln,listMarketplaceCatalogItems:()=>Ta,listMarketplaceSources:()=>qa,listMarketplaces:()=>Ia,listMilestoneEvents:()=>Vu,listMilestones:()=>Nu,listPendingApprovals:()=>Ps,listPendingProjectInvites:()=>ps,listPipedreamApps:()=>Js,listProjectAccess:()=>as,listProjectAccessRequests:()=>ss,listProjectAgents:()=>Eu,listProjectBranches:()=>yi,listProjectCliTokens:()=>ha,listProjectCommits:()=>hi,listProjectFiles:()=>di,listProjectGroupGrants:()=>ms,listProjectPolicies:()=>ti,listProjectResourceGrants:()=>bs,listProjectSandboxTemplates:()=>ni,listProjectSandboxes:()=>pi,listProjectSecrets:()=>Ss,listProjectSessions:()=>be,listProjectSnapshots:()=>si,listProjectTriggers:()=>Hi,listProjects:()=>oe,listProjectsForAccount:()=>Gn,listReviewItems:()=>oa,listSandboxMembers:()=>Ym,listSandboxProjectMembers:()=>af,listSandboxShares:()=>pa,listSandboxes:()=>Vm,listServiceTemplates:()=>op,listServices:()=>ip,listSessionPublicShares:()=>Ui,listSessionsNeedingInput:()=>ws,listTaskEvents:()=>cu,listTasks:()=>ou,listTemplates:()=>Iu,listTicketEvents:()=>hu,listTickets:()=>fu,markInstanceError:()=>Af,markSessionFresh:()=>qi,mergeChangeRequest:()=>Ri,narrowChatEvent:()=>Kc,normalizeAppPathname:()=>Mm,normalizeExternalInput:()=>Td,normalizeToolName:()=>Be,openChangeRequest:()=>Ci,openEventStream:()=>St,parseBillingError:()=>me,parseFlagOverride:()=>Im,parseLocalhostUrl:()=>Le,parseOpenCodeErrorPayload:()=>Pl,parseSubdomainUrl:()=>Oa,parseWebProxyUrl:()=>vd,patchKortixProject:()=>Ku,pipedreamConnect:()=>Hs,pipedreamFinalize:()=>ei,platformConfig:()=>T,pollProjectProviderOAuth:()=>Rs,previewGatewayRoute:()=>No,previewMeetVoice:()=>Lo,provisionProject:()=>Wn,provisionProjectWithToken:()=>Bp,proxyLocalhostUrl:()=>Ua,proxyUrlToInternal:()=>wd,purchaseCredits:()=>ko,reactivateSandbox:()=>Qm,reactivateSubscription:()=>yo,readProjectFile:()=>mi,rebuildProjectSnapshot:()=>ii,reconcileConnectionProfile:()=>qs,reconcileServices:()=>lp,registerService:()=>up,rejectProjectAccessRequest:()=>os,relativizePath:()=>Eg,removeAccountAuditWebhook:()=>va,removeAccountMember:()=>Un,removeKortixPty:()=>dn,removeMarketplaceSource:()=>Da,removeSandboxMember:()=>ef,renameSandbox:()=>Hm,reopenChangeRequest:()=>Ii,reopenMilestone:()=>Xu,replaceColumns:()=>Cu,replaceFields:()=>Tu,replaceTemplates:()=>Au,requestChangesOnChangeRequest:()=>Ai,requestProjectAccess:()=>Kp,requestProjectConnector:()=>Ra,requestProjectSecret:()=>Ca,resendAccountInvite:()=>qn,resendPendingProjectInvite:()=>gs,resetClient:()=>dp,resetGatewayRoutingPolicy:()=>Ko,resetPublicClient:()=>fp,resetSandboxUpdateStatus:()=>vf,resolveApproval:()=>_s,restartProjectSession:()=>Me,restartSandbox:()=>zm,restoreBackup:()=>yf,revealCredential:()=>tp,revokeAccountToken:()=>ya,revokeConnectionProfile:()=>Ds,revokeGatewayKey:()=>na,revokePendingProjectInvite:()=>ds,revokeProjectAccess:()=>ls,revokeProjectCliToken:()=>xa,revokeSandboxInvite:()=>uf,revokeSandboxProjectAccess:()=>lf,revokeSandboxShare:()=>ga,revokeSessionPublicShare:()=>Li,rewriteLocalhostUrl:()=>Pe,runGatewayPlayground:()=>sa,saveGitHubInstallation:()=>rs,scheduleDowngrade:()=>ho,searchProjectFiles:()=>gi,serviceAction:()=>cp,sessionStartKey:()=>zp,setActiveInstanceCookie:()=>$m,setAdminBypass:()=>qp,setAgentScope:()=>to,setBootstrapAuthToken:()=>ru,setCachedAuthToken:()=>tu,setConnectorCredential:()=>Zs,setConnectorCredentialMode:()=>Ls,setConnectorName:()=>Ns,setConnectorPolicies:()=>Bs,setConnectorSensitive:()=>Fs,setEnv:()=>an,setGatewayBudget:()=>Zo,setGatewayRoutingPolicy:()=>Bo,setGitHubAppFromExisting:()=>Mf,setGitHubAppPat:()=>Uf,setMeetBotName:()=>Oo,setMeetVoice:()=>Uo,setModelDefault:()=>Zi,setPersonalProjectSecret:()=>As,setProjectOnboardingComplete:()=>Xn,setProjectPolicies:()=>ri,setProjectSessionSharing:()=>Di,setProjectTriggersActivation:()=>Ji,setupSSH:()=>bf,shouldHideResponsePart:()=>zg,shouldShowToolPart:()=>el,sortSessions:()=>Ng,speakInMeeting:()=>Fo,splitUserParts:()=>Sg,startGitHubAppManifest:()=>Df,startProjectProviderOAuth:()=>Cs,startProjectSession:()=>ke,startTask:()=>du,stopProjectSession:()=>Ue,stopSandbox:()=>Jm,stripAnsi:()=>Ug,stripInstancePrefix:()=>Em,stripTrailingSlashes:()=>ne,submitReviewItem:()=>ca,supabaseClient:()=>Dp,syncConnectors:()=>Os,systemReload:()=>hp,toInstanceAwarePath:()=>Dm,toInternalUrl:()=>Pd,toolInfo:()=>Rt,toolViewModel:()=>gl,transcribeAudio:()=>ia,triggerSandboxUpdate:()=>Sf,triggersRequest:()=>xc,turnHasSteps:()=>Gg,unassignTicket:()=>wu,unwrapError:()=>K,updateAccountAuditWebhook:()=>Sa,updateAccountMemberRole:()=>On,updateAccountName:()=>Tn,updateAgentConfig:()=>Xp,updateChannelBinding:()=>td,updateConnectionProfileCredential:()=>$s,updateEmailPolicy:()=>Do,updateExperimentalFeature:()=>zn,updateKortixPty:()=>pn,updateMilestone:()=>zu,updateProject:()=>ht,updateProjectAccess:()=>cs,updateProjectAgent:()=>$u,updateProjectDefaultAgent:()=>ro,updateProjectGroupGrant:()=>ys,updateProjectSandboxProvider:()=>Jn,updateProjectSession:()=>Ki,updateProjectTrigger:()=>Wi,updateSandboxMemberRole:()=>tf,updateSandboxMemberScope:()=>of,updateSandboxMemberSpendCap:()=>rf,updateSandboxTemplate:()=>ci,updateTask:()=>pu,updateTemplateWarmPool:()=>Fp,updateTicket:()=>xu,updateTicketStatus:()=>ku,uploadSlackChannelFile:()=>Io,upsertCredential:()=>ep,upsertProjectGitCredential:()=>Ts,upsertProjectSecret:()=>vs,validateProjectManifest:()=>Kn,validateToken:()=>Fn,verifyGatewayProvider:()=>rd});var Dl={backendUrl:"",getToken:async()=>null},Mt=null,Xe=null;function Ml(e){Xe=e}function Ul(){return Xe}function Qe(e,t){t?.global!==!1&&(Mt=e)}function T(){return Xe?.()??Mt??Dl}function Ye(){return Mt!==null||Xe?.()!==void 0}var Ya=({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 j={redirect:"follow",...m,body:m.serializedBody,headers:D,signal:_},v=new Request(h,j);e&&(v=await e(h,j));let A=await(m.fetch??globalThis.fetch)(v);if(!A.ok)throw new Error(`SSE failed: ${A.status} ${A.statusText}`);if(!A.body)throw new Error("No body in SSE response");let f=A.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 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),r&&(H=await r(H))),n?.({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 Dl=e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},Ml=e=>{switch(e){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},Ul=e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},Ze=({allowReserved:e,explode:t,name:n,style:r,value:s})=>{if(!t){let d=(e?s:s.map(g=>encodeURIComponent(g))).join(Ml(r));switch(r){case"label":return`.${d}`;case"matrix":return`;${n}=${d}`;case"simple":return d;default:return`${n}=${d}`}}let c=Dl(r),u=s.map(d=>r==="label"||r==="simple"?e?d:encodeURIComponent(d):le({allowReserved:e,name:n,value:d})).join(c);return r==="label"||r==="matrix"?c+u:u},le=({allowReserved:e,name:t,value:n})=>{if(n==null)return"";if(typeof n=="object")throw new Error("Deeply-nested arrays/objects aren\u2019t supported. Provide your own `querySerializer()` to handle these.");return`${t}=${e?n:encodeURIComponent(n)}`},et=({allowReserved:e,explode:t,name:n,style:r,value:s,valueOnly:c})=>{if(s instanceof Date)return c?s.toISOString():`${n}=${s.toISOString()}`;if(r!=="deepObject"&&!t){let g=[];Object.entries(s).forEach(([m,x])=>{g=[...g,m,e?x:encodeURIComponent(x)]});let h=g.join(",");switch(r){case"form":return`${n}=${h}`;case"label":return`.${h}`;case"matrix":return`;${n}=${h}`;default:return h}}let u=Ul(r),d=Object.entries(s).map(([g,h])=>le({allowReserved:e,name:r==="deepObject"?`${n}[${g}]`:g,value:h})).join(u);return r==="label"||r==="matrix"?u+d:d};var Ol=/\{[^{}]+\}/g,Ll=({path:e,url:t})=>{let n=t,r=t.match(Ol);if(r)for(let s of r){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)){n=n.replace(s,Ze({explode:c,name:u,style:d,value:g}));continue}if(typeof g=="object"){n=n.replace(s,et({explode:c,name:u,style:d,value:g,valueOnly:!0}));continue}if(d==="matrix"){n=n.replace(s,`;${le({name:u,value:g})}`);continue}let h=encodeURIComponent(d==="label"?`.${g}`:g);n=n.replace(s,h)}return n},Xa=({baseUrl:e,path:t,query:n,querySerializer:r,url:s})=>{let c=s.startsWith("/")?s:`/${s}`,u=(e??"")+c;t&&(u=Ll({path:t,url:u}));let d=n?r(n):"";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 Qa=async(e,t)=>{let n=typeof t=="function"?await t(e):t;if(n)return e.scheme==="bearer"?`Bearer ${n}`:e.scheme==="basic"?`Basic ${btoa(n)}`:n};var Ot={bodySerializer:e=>JSON.stringify(e,(t,n)=>typeof n=="bigint"?n.toString():n)};var Ya=({parameters:e={},...t}={})=>r=>{let s=[];if(r&&typeof r=="object")for(let c in r){let u=r[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("&")},Za=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(n=>t.startsWith(n)))return"blob";if(t.startsWith("text/"))return"text"}},Fl=(e,t)=>t?!!(e.headers.has(t)||e.query?.[t]||e.headers.get("Cookie")?.includes(`${t}=`)):!1,ec=async({security:e,...t})=>{for(let n of e){if(Fl(t,n.name))continue;let r=await Qa(n,t.auth);if(!r)continue;let s=n.name??"Authorization";switch(n.in){case"query":t.query||(t.query={}),t.query[s]=r;break;case"cookie":t.headers.append("Cookie",`${s}=${r}`);break;default:t.headers.set(s,r);break}}},Lt=e=>Xa({baseUrl:e.baseUrl,path:e.path,query:e.query,querySerializer:typeof e.querySerializer=="function"?e.querySerializer:Ya(e.querySerializer),url:e.url}),Ft=(e,t)=>{let n={...e,...t};return n.baseUrl?.endsWith("/")&&(n.baseUrl=n.baseUrl.substring(0,n.baseUrl.length-1)),n.headers=tt(e.headers,t.headers),n},Gl=e=>{let t=[];return e.forEach((n,r)=>{t.push([r,n])}),t},tt=(...e)=>{let t=new Headers;for(let n of e){if(!n)continue;let r=n instanceof Headers?Gl(n):Object.entries(n);for(let[s,c]of r)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 n=this.getInterceptorIndex(t);this.fns[n]&&(this.fns[n]=null)}exists(t){let n=this.getInterceptorIndex(t);return!!this.fns[n]}getInterceptorIndex(t){return typeof t=="number"?this.fns[t]?t:-1:this.fns.indexOf(t)}update(t,n){let r=this.getInterceptorIndex(t);return this.fns[r]?(this.fns[r]=n,t):!1}use(t){return this.fns.push(t),this.fns.length-1}},tc=()=>({error:new Re,request:new Re,response:new Re}),Bl=Ya({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),Kl={"Content-Type":"application/json"},Te=(e={})=>({...Ot,headers:Kl,parseAs:"auto",querySerializer:Bl,...e});var Ie=(e={})=>{let t=Ft(Te(),e),n=()=>({...t}),r=h=>(t=Ft(t,h),n()),s=tc(),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 ec({...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"?Za(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 Ja({...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:n,head:d("HEAD"),interceptors:s,options:d("OPTIONS"),patch:d("PATCH"),post:d("POST"),put:d("PUT"),request:u,setConfig:r,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 Nl={$body_:"body",$headers_:"headers",$path_:"path",$query_:"query"},Hl=Object.entries(Nl),nc=(e,t)=>{t||(t=new Map);for(let n of e)"in"in n?n.key&&t.set(n.key,{in:n.in,map:n.map}):"key"in n?t.set(n.key,{map:n.map}):n.args&&nc(n.args,t);return t},Wl=e=>{for(let[t,n]of Object.entries(e))n&&typeof n=="object"&&!Object.keys(n).length&&delete e[t]},p=(e,t)=>{let n={body:{},headers:{},path:{},query:{}},r=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=r.get(s.key),g=d.map||s.key;d.in&&(n[d.in][g]=u)}else n.body=u;else for(let[d,g]of Object.entries(u??{})){let h=r.get(d);if(h)if(h.in){let m=h.map||d;n[h.in][m]=g}else n[h.map]=g;else{let m=Hl.find(([x])=>d.startsWith(x));if(m){let[x,w]=m;n[w][d.slice(x.length)]=g}else if("allowExtra"in s&&s.allowExtra){for(let[x,w]of Object.entries(s.allowExtra))if(w){n[x][d]=g;break}}}}return Wl(n),n};var rc=Ie(Te({baseUrl:"http://localhost:4096"}));var y=class{client;constructor(t){this.client=t?.client??rc}},Gt=class{defaultKey="default";instances=new Map;get(t){let n=this.instances.get(t??this.defaultKey);if(!n)throw new Error('No SDK client found. Create one with "new OpencodeClient()" to fix this error.');return n}set(t,n){this.instances.set(n??this.defaultKey,t)}},Bt=class extends y{remove(t,n){let r=p([t],[{args:[{in:"path",key:"providerID"}]}]);return(n?.client??this.client).delete({url:"/auth/{providerID}",...n,...r})}set(t,n){let r=p([t],[{args:[{in:"path",key:"providerID"},{key:"auth",map:"body"}]}]);return(n?.client??this.client).put({url:"/auth/{providerID}",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},Kt=class extends y{log(t,n){let r=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(n?.client??this.client).post({url:"/log",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}agents(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/agent",...n,...r})}skills(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/skill",...n,...r})}},Nt=class extends y{moveSession(t,n){let r=p([t],[{args:[{in:"body",key:"sessionID"},{in:"body",key:"destination"},{in:"body",key:"moveChanges"}]}]);return(n?.client??this.client).post({url:"/experimental/control-plane/move-session",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},Ht=class extends y{get(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/capabilities",...n,...r})}},Wt=class extends y{get(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/console",...n,...r})}listOrgs(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/console/orgs",...n,...r})}switchOrg(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"accountID"},{in:"body",key:"orgID"}]}]);return(n?.client??this.client).post({url:"/experimental/console/switch",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},Vt=class extends y{list(t,n){let r=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(n?.client??this.client).get({url:"/experimental/session",...n,...r})}background(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/experimental/session/{sessionID}/background",...n,...r})}},zt=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/resource",...n,...r})}},Jt=class extends y{generateName(t,n){let r=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"context"}]}]);return(n?.client??this.client).post({url:"/experimental/project/{projectID}/copy/generate-name",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},Xt=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace/adapter",...n,...r})}},Qt=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace",...n,...r})}create(t,n){let r=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(n?.client??this.client).post({url:"/experimental/workspace",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}syncList(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/experimental/workspace/sync-list",...n,...r})}status(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace/status",...n,...r})}remove(t,n){let r=p([t],[{args:[{in:"path",key:"id"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).delete({url:"/experimental/workspace/{id}",...n,...r})}warp(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"id"},{in:"body",key:"sessionID"},{in:"body",key:"copyChanges"}]}]);return(n?.client??this.client).post({url:"/experimental/workspace/warp",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.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,n){let r=p([t],[{args:[{key:"config",map:"body"}]}]);return(n?.client??this.client).patch({url:"/global/config",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},en=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,n){let r=p([t],[{args:[{in:"body",key:"target"}]}]);return(n?.client??this.client).post({url:"/global/upgrade",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}_config;get config(){return this._config??=new Zt({client:this.client})}},tn=class extends y{subscribe(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).sse.get({url:"/event",...n,...r})}},nn=class extends y{get(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/config",...n,...r})}update(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"config",map:"body"}]}]);return(n?.client??this.client).patch({url:"/config",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}providers(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/config/providers",...n,...r})}},rn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"provider"},{in:"query",key:"model"}]}]);return(n?.client??this.client).get({url:"/experimental/tool",...n,...r})}ids(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/tool/ids",...n,...r})}},sn=class extends y{remove(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"worktreeRemoveInput",map:"body"}]}]);return(n?.client??this.client).delete({url:"/experimental/worktree",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/worktree",...n,...r})}create(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"worktreeCreateInput",map:"body"}]}]);return(n?.client??this.client).post({url:"/experimental/worktree",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}reset(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"worktreeResetInput",map:"body"}]}]);return(n?.client??this.client).post({url:"/experimental/worktree/reset",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},on=class extends y{text(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"pattern"}]}]);return(n?.client??this.client).get({url:"/find",...n,...r})}files(t,n){let r=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(n?.client??this.client).get({url:"/find/file",...n,...r})}symbols(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"query"}]}]);return(n?.client??this.client).get({url:"/find/symbol",...n,...r})}},an=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"path"}]}]);return(n?.client??this.client).get({url:"/file",...n,...r})}read(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"path"}]}]);return(n?.client??this.client).get({url:"/file/content",...n,...r})}status(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/file/status",...n,...r})}},cn=class extends y{dispose(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/instance/dispose",...n,...r})}},ln=class extends y{get(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/path",...n,...r})}},un=class extends y{raw(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs/diff/raw",...n,...r})}},pn=class extends y{get(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs",...n,...r})}status(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs/status",...n,...r})}diff(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"mode"},{in:"query",key:"context"}]}]);return(n?.client??this.client).get({url:"/vcs/diff",...n,...r})}apply(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"patch"}]}]);return(n?.client??this.client).post({url:"/vcs/apply",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}_diff;get diff2(){return this._diff??=new un({client:this.client})}},dn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/command",...n,...r})}},gn=class extends y{status(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/lsp",...n,...r})}},mn=class extends y{status(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/formatter",...n,...r})}},fn=class extends y{remove(t,n){let r=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).delete({url:"/mcp/{name}/auth",...n,...r})}start(t,n){let r=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/mcp/{name}/auth",...n,...r})}callback(t,n){let r=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"code"}]}]);return(n?.client??this.client).post({url:"/mcp/{name}/auth/callback",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}authenticate(t,n){let r=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/mcp/{name}/auth/authenticate",...n,...r})}},yn=class extends y{status(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/mcp",...n,...r})}add(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"name"},{in:"body",key:"config"}]}]);return(n?.client??this.client).post({url:"/mcp",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}connect(t,n){let r=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/mcp/{name}/connect",...n,...r})}disconnect(t,n){let r=p([t],[{args:[{in:"path",key:"name"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/mcp/{name}/disconnect",...n,...r})}_auth;get auth(){return this._auth??=new fn({client:this.client})}},hn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/project",...n,...r})}current(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/project/current",...n,...r})}initGit(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/project/git/init",...n,...r})}update(t,n){let r=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(n?.client??this.client).patch({url:"/project/{projectID}",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}directories(t,n){let r=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/project/{projectID}/directories",...n,...r})}},bn=class extends y{shells(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/pty/shells",...n,...r})}list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/pty",...n,...r})}create(t,n){let r=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(n?.client??this.client).post({url:"/pty",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}remove(t,n){let r=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).delete({url:"/pty/{ptyID}",...n,...r})}get(t,n){let r=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/pty/{ptyID}",...n,...r})}update(t,n){let r=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"title"},{in:"body",key:"size"}]}]);return(n?.client??this.client).put({url:"/pty/{ptyID}",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}connectToken(t,n){let r=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/pty/{ptyID}/connect-token",...n,...r})}connect(t,n){let r=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"cursor"},{in:"query",key:"ticket"}]}]);return(n?.client??this.client).get({url:"/pty/{ptyID}/connect",...n,...r})}},xn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/question",...n,...r})}reply(t,n){let r=p([t],[{args:[{in:"path",key:"requestID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"answers"}]}]);return(n?.client??this.client).post({url:"/question/{requestID}/reply",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}reject(t,n){let r=p([t],[{args:[{in:"path",key:"requestID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/question/{requestID}/reject",...n,...r})}},kn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/permission",...n,...r})}reply(t,n){let r=p([t],[{args:[{in:"path",key:"requestID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"reply"},{in:"body",key:"message"}]}]);return(n?.client??this.client).post({url:"/permission/{requestID}/reply",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}respond(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"permissionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"response"}]}]);return(n?.client??this.client).post({url:"/session/{sessionID}/permissions/{permissionID}",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},Pn=class extends y{authorize(t,n){let r=p([t],[{args:[{in:"path",key:"providerID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"method"},{in:"body",key:"inputs"}]}]);return(n?.client??this.client).post({url:"/provider/{providerID}/oauth/authorize",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}callback(t,n){let r=p([t],[{args:[{in:"path",key:"providerID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"method"},{in:"body",key:"code"}]}]);return(n?.client??this.client).post({url:"/provider/{providerID}/oauth/callback",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},wn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/provider",...n,...r})}auth(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/provider/auth",...n,...r})}_oauth;get oauth(){return this._oauth??=new Pn({client:this.client})}},_n=class extends y{list(t,n){let r=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(n?.client??this.client).get({url:"/session",...n,...r})}create(t,n){let r=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(n?.client??this.client).post({url:"/session",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}status(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/session/status",...n,...r})}delete(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).delete({url:"/session/{sessionID}",...n,...r})}get(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/session/{sessionID}",...n,...r})}update(t,n){let r=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(n?.client??this.client).patch({url:"/session/{sessionID}",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}children(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/session/{sessionID}/children",...n,...r})}todo(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/session/{sessionID}/todo",...n,...r})}diff(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"messageID"}]}]);return(n?.client??this.client).get({url:"/session/{sessionID}/diff",...n,...r})}messages(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"limit"},{in:"query",key:"before"}]}]);return(n?.client??this.client).get({url:"/session/{sessionID}/message",...n,...r})}prompt(t,n){let r=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(n?.client??this.client).post({url:"/session/{sessionID}/message",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}deleteMessage(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).delete({url:"/session/{sessionID}/message/{messageID}",...n,...r})}message(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/session/{sessionID}/message/{messageID}",...n,...r})}fork(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"}]}]);return(n?.client??this.client).post({url:"/session/{sessionID}/fork",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}abort(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/session/{sessionID}/abort",...n,...r})}init(t,n){let r=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(n?.client??this.client).post({url:"/session/{sessionID}/init",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}unshare(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).delete({url:"/session/{sessionID}/share",...n,...r})}share(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/session/{sessionID}/share",...n,...r})}summarize(t,n){let r=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(n?.client??this.client).post({url:"/session/{sessionID}/summarize",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}promptAsync(t,n){let r=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(n?.client??this.client).post({url:"/session/{sessionID}/prompt_async",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}command(t,n){let r=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(n?.client??this.client).post({url:"/session/{sessionID}/command",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}shell(t,n){let r=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(n?.client??this.client).post({url:"/session/{sessionID}/shell",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}revert(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"messageID"},{in:"body",key:"partID"}]}]);return(n?.client??this.client).post({url:"/session/{sessionID}/revert",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}unrevert(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/session/{sessionID}/unrevert",...n,...r})}},Sn=class extends y{delete(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"},{in:"path",key:"partID"},{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).delete({url:"/session/{sessionID}/message/{messageID}/part/{partID}",...n,...r})}update(t,n){let r=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(n?.client??this.client).patch({url:"/session/{sessionID}/message/{messageID}/part/{partID}",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},vn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"body",map:"body"}]}]);return(n?.client??this.client).post({url:"/sync/history",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},Cn=class extends y{start(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/sync/start",...n,...r})}replay(t,n){let r=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(n?.client??this.client).post({url:"/sync/replay",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}steal(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/sync/steal",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}_history;get history(){return this._history??=new vn({client:this.client})}},Rn=class extends y{next(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/tui/control/next",...n,...r})}response(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"body",map:"body"}]}]);return(n?.client??this.client).post({url:"/tui/control/response",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},Tn=class extends y{appendPrompt(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"text"}]}]);return(n?.client??this.client).post({url:"/tui/append-prompt",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}openHelp(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-help",...n,...r})}openSessions(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-sessions",...n,...r})}openThemes(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-themes",...n,...r})}openModels(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-models",...n,...r})}submitPrompt(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/submit-prompt",...n,...r})}clearPrompt(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/clear-prompt",...n,...r})}executeCommand(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"command"}]}]);return(n?.client??this.client).post({url:"/tui/execute-command",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}showToast(t,n){let r=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(n?.client??this.client).post({url:"/tui/show-toast",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}publish(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{key:"body",map:"body"}]}]);return(n?.client??this.client).post({url:"/tui/publish",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}selectSession(t,n){let r=p([t],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"body",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/tui/select-session",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}_control;get control(){return this._control??=new Rn({client:this.client})}},In=class extends y{get(t){return(t?.client??this.client).get({url:"/api/health",...t})}},jn=class extends y{get(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/location",...n,...r})}},An=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/agent",...n,...r})}},En=class extends y{stage(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"messageID"},{in:"body",key:"files"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/revert/stage",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}clear(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/revert/clear",...n,...r})}commit(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/revert/commit",...n,...r})}},qn=class extends y{list(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/permission",...n,...r})}reply(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"},{in:"body",key:"reply"},{in:"body",key:"message"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/permission/{requestID}/reply",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},$n=class extends y{list(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/question",...n,...r})}reply(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"},{key:"questionV2Reply",map:"body"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/question/{requestID}/reply",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}reject(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/question/{requestID}/reject",...n,...r})}},Dn=class extends y{list(t,n){let r=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(n?.client??this.client).get({url:"/api/session",...n,...r})}create(t,n){let r=p([t],[{args:[{in:"body",key:"id"},{in:"body",key:"agent"},{in:"body",key:"model"},{in:"body",key:"location"}]}]);return(n?.client??this.client).post({url:"/api/session",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}get(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}",...n,...r})}switchAgent(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"agent"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/agent",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}switchModel(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"model"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/model",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}prompt(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"id"},{in:"body",key:"prompt"},{in:"body",key:"delivery"},{in:"body",key:"resume"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/prompt",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}compact(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/compact",...n,...r})}wait(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/wait",...n,...r})}context(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/context",...n,...r})}messages(t,n){let r=p([t],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"limit"},{in:"query",key:"order"},{in:"query",key:"cursor"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/message",...n,...r})}_revert;get revert(){return this._revert??=new En({client:this.client})}_permission;get permission(){return this._permission??=new qn({client:this.client})}_question;get question(){return this._question??=new $n({client:this.client})}},Mn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/model",...n,...r})}},Un=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/provider",...n,...r})}get(t,n){let r=p([t],[{args:[{in:"path",key:"providerID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/provider/{providerID}",...n,...r})}},On=class extends y{key(t,n){let r=p([t],[{args:[{in:"path",key:"integrationID"},{in:"query",key:"location"},{in:"body",key:"key"},{in:"body",key:"label"}]}]);return(n?.client??this.client).post({url:"/api/integration/{integrationID}/connect/key",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}oauth(t,n){let r=p([t],[{args:[{in:"path",key:"integrationID"},{in:"query",key:"location"},{in:"body",key:"methodID"},{in:"body",key:"inputs"},{in:"body",key:"label"}]}]);return(n?.client??this.client).post({url:"/api/integration/{integrationID}/connect/oauth",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},Ln=class extends y{cancel(t,n){let r=p([t],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).delete({url:"/api/integration/attempt/{attemptID}",...n,...r})}status(t,n){let r=p([t],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/integration/attempt/{attemptID}",...n,...r})}complete(t,n){let r=p([t],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"},{in:"body",key:"code"}]}]);return(n?.client??this.client).post({url:"/api/integration/attempt/{attemptID}/complete",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},Fn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/integration",...n,...r})}get(t,n){let r=p([t],[{args:[{in:"path",key:"integrationID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/integration/{integrationID}",...n,...r})}_connect;get connect(){return this._connect??=new On({client:this.client})}_attempt;get attempt(){return this._attempt??=new Ln({client:this.client})}},Gn=class extends y{remove(t,n){let r=p([t],[{args:[{in:"path",key:"credentialID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).delete({url:"/api/credential/{credentialID}",...n,...r})}update(t,n){let r=p([t],[{args:[{in:"path",key:"credentialID"},{in:"query",key:"location"},{in:"body",key:"label"}]}]);return(n?.client??this.client).patch({url:"/api/credential/{credentialID}",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}},Bn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/permission/request",...n,...r})}},Kn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"projectID"}]}]);return(n?.client??this.client).get({url:"/api/permission/saved",...n,...r})}remove(t,n){let r=p([t],[{args:[{in:"path",key:"id"}]}]);return(n?.client??this.client).delete({url:"/api/permission/saved/{id}",...n,...r})}},Nn=class extends y{_request;get request(){return this._request??=new Bn({client:this.client})}_saved;get saved(){return this._saved??=new Kn({client:this.client})}},Hn=class extends y{read(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/fs/read/*",...n,...r})}list(t,n){let r=p([t],[{args:[{in:"query",key:"location"},{in:"query",key:"path"}]}]);return(n?.client??this.client).get({url:"/api/fs/list",...n,...r})}find(t,n){let r=p([t],[{args:[{in:"query",key:"location"},{in:"query",key:"query"},{in:"query",key:"type"},{in:"query",key:"limit"}]}]);return(n?.client??this.client).get({url:"/api/fs/find",...n,...r})}},Wn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/command",...n,...r})}},Vn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/skill",...n,...r})}},zn=class extends y{subscribe(t){return(t?.client??this.client).sse.get({url:"/api/event",...t})}},Jn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/pty",...n,...r})}create(t,n){let r=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(n?.client??this.client).post({url:"/api/pty",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}remove(t,n){let r=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).delete({url:"/api/pty/{ptyID}",...n,...r})}get(t,n){let r=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/pty/{ptyID}",...n,...r})}update(t,n){let r=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"},{in:"body",key:"title"},{in:"body",key:"size"}]}]);return(n?.client??this.client).put({url:"/api/pty/{ptyID}",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}connectToken(t,n){let r=p([t],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).post({url:"/api/pty/{ptyID}/connect-token",...n,...r})}connect(t,n){let r=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(n?.client??this.client).get({url:"/api/pty/{ptyID}/connect",...n,...r})}},Xn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/question/request",...n,...r})}},Qn=class extends y{_request;get request(){return this._request??=new Xn({client:this.client})}},Yn=class extends y{list(t,n){let r=p([t],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/reference",...n,...r})}},Zn=class extends y{remove(t,n){let r=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"},{in:"body",key:"directory"},{in:"body",key:"force"}]}]);return(n?.client??this.client).delete({url:"/experimental/project/{projectID}/copy",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}create(t,n){let r=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"},{in:"body",key:"strategy"},{in:"body",key:"directory"},{in:"body",key:"name"}]}]);return(n?.client??this.client).post({url:"/experimental/project/{projectID}/copy",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}refresh(t,n){let r=p([t],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).post({url:"/experimental/project/{projectID}/copy/refresh",...n,...r})}},er=class extends y{_health;get health(){return this._health??=new In({client:this.client})}_location;get location(){return this._location??=new jn({client:this.client})}_agent;get agent(){return this._agent??=new An({client:this.client})}_session;get session(){return this._session??=new Dn({client:this.client})}_model;get model(){return this._model??=new Mn({client:this.client})}_provider;get provider(){return this._provider??=new Un({client:this.client})}_integration;get integration(){return this._integration??=new Fn({client:this.client})}_credential;get credential(){return this._credential??=new Gn({client:this.client})}_permission;get permission(){return this._permission??=new Nn({client:this.client})}_fs;get fs(){return this._fs??=new Hn({client:this.client})}_command;get command(){return this._command??=new Wn({client:this.client})}_skill;get skill(){return this._skill??=new Vn({client:this.client})}_event;get event(){return this._event??=new zn({client:this.client})}_pty;get pty(){return this._pty??=new Jn({client:this.client})}_question;get question(){return this._question??=new Qn({client:this.client})}_reference;get reference(){return this._reference??=new Yn({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new Zn({client:this.client})}},nt=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 en({client:this.client})}_event;get event(){return this._event??=new tn({client:this.client})}_config;get config(){return this._config??=new nn({client:this.client})}_tool;get tool(){return this._tool??=new rn({client:this.client})}_worktree;get worktree(){return this._worktree??=new sn({client:this.client})}_find;get find(){return this._find??=new on({client:this.client})}_file;get file(){return this._file??=new an({client:this.client})}_instance;get instance(){return this._instance??=new cn({client:this.client})}_path;get path(){return this._path??=new ln({client:this.client})}_vcs;get vcs(){return this._vcs??=new pn({client:this.client})}_command;get command(){return this._command??=new dn({client:this.client})}_lsp;get lsp(){return this._lsp??=new gn({client:this.client})}_formatter;get formatter(){return this._formatter??=new mn({client:this.client})}_mcp;get mcp(){return this._mcp??=new yn({client:this.client})}_project;get project(){return this._project??=new hn({client:this.client})}_pty;get pty(){return this._pty??=new bn({client:this.client})}_question;get question(){return this._question??=new xn({client:this.client})}_permission;get permission(){return this._permission??=new kn({client:this.client})}_provider;get provider(){return this._provider??=new wn({client:this.client})}_session;get session(){return this._session??=new _n({client:this.client})}_part;get part(){return this._part??=new Sn({client:this.client})}_sync;get sync(){return this._sync??=new Cn({client:this.client})}_tui;get tui(){return this._tui??=new Tn({client:this.client})}_v2;get v2(){return this._v2??=new er({client:this.client})}};function ic(e,t,n,r){if(!r?.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||sc(n,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 ${sc(n,t)}: ${s}`,{cause:{body:e,status:t?.status}})}function sc(e,t){let n=e?.method??"?",r=e?.url??"?",s=t?.status,c=t?.statusText;return`${n} ${r}${s?" \u2192 "+s:""}${c?" "+c:""}`}function Vl(e,t,n){if(e)return t&&(e===t||n&&e===n(t))?t:e}function zl(e,t){if(e.method!=="GET"&&e.method!=="HEAD")return e;let n=new URL(e.url),r=!1;for(let[c,u]of[["x-opencode-directory","directory"],["x-opencode-workspace","workspace"]]){let d=Vl(e.headers.get(c),u==="directory"?t.directory:t.workspace,u==="directory"?encodeURIComponent:void 0);if(d){for(let g of n.pathname.startsWith("/api/")?[u,`location[${u}]`]:[u])n.searchParams.has(g)||n.searchParams.set(g,d);r=!0}}if(!r)return e;let s=new Request(n,e);return s.headers.delete("x-opencode-directory"),s.headers.delete("x-opencode-workspace"),s}function tr(e){e?.fetch||(e={...e,fetch:r=>(r.timeout=!1,fetch(r))}),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(n=>zl(n,{directory:e?.directory,workspace:e?.experimental_workspaceID})),t.interceptors.response.use(n=>{if(n.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 n}),t.interceptors.error.use(ic),new nt({client:t})}function Jl(e){return new Promise(t=>setTimeout(t,e))}async function oc(e,t,n){let r=Math.max(1,t?.attempts??1),s=t?.baseDelayMs??0,c=t?.invalidateBetweenAttempts??!1,u=null;for(let d=0;d<r;d++)if(d>0&&(c&&n?.(),s>0&&await Jl(s)),u=await e(),u)return u;return u}var Xl=3e4;function Ql(e){return(e instanceof Request?e.url:String(e)).includes("/global/event")}function ac(e,t,n=Xl){let r=e instanceof Request?e.signal:t?.signal;if(Ql(e))return r??void 0;let s=AbortSignal.timeout(n);return r?typeof AbortSignal.any=="function"?AbortSignal.any([r,s]):r:s}function nr(e,t,n){let r=new Headers(e instanceof Request?e.headers:void 0);return t?.headers&&new Headers(t.headers).forEach((s,c)=>{r.set(c,s)}),n&&!r.has("Authorization")&&r.set("Authorization",`Bearer ${n}`),r}function cc(){return new Response(JSON.stringify({error:"Not authenticated"}),{status:401,headers:{"Content-Type":"application/json"}})}async function rt(){return T().getToken()}async function ue(e){return oc(()=>T().getToken(),e,je)}function je(){}function Yl(e){}function Zl(e){}async function Ae(){return rt()}async function rr(e){return ue(e)}function lc(e,t,n,r){if(e instanceof Request){let s=new Request(e,{headers:n,...r?{signal:r}:{}});return fetch(s)}return fetch(e,{...t,headers:n,...r?{signal:r}:{}})}async function R(e,t,n){let{retryOnAuthError:r=!0}=n??{},s=await rr();if(!s)return cc();let c=nr(e,t,s),u=ac(e,t),d=await lc(e,t,c,u);if(d.status===401&&r&&s){je();let g=await rr({attempts:2,baseDelayMs:200});if(g&&g!==s){let h=nr(e,t,g);return lc(e,t,h,u)}}return d}var pe={url:null,sandboxId:null,dbSandboxId:null,version:0},eu=new Set;function uc(e,t=null,n=null){if(!(pe.url===e&&pe.sandboxId===t&&pe.dbSandboxId===n)){pe={url:e,sandboxId:t,dbSandboxId:n,version:pe.version+1};for(let r of eu)r()}}function pc(){return pe.url}function tu(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function Ee(){return tu(T().backendUrl||"http://localhost:8008/v1")}function dc(){let e=T().sandboxId||"";return`${Ee()}/p/${e}/8000`}function nu(e){return`${Ee()}/p/${e}/8000`}function st(e){return nu(e)}function q(){let e=pc();return e||(T().billingEnabled??!1?"":dc())}var C=class extends Error{status;code;details;data;detail;response;url;endpoint;timeout;constructor(t,n={}){super(t),this.name="ApiError";let{name:r,stack:s,...c}=n;Object.assign(this,c),r&&(this.name=r),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"}},ne=class e extends Error{status;detail;constructor(t,n,r){super(r||n.message||`Billing Error: ${t}`),this.name="BillingError",this.status=t,this.detail=n,Object.setPrototypeOf(this,e.prototype)}},ge=class e extends Error{status;detail;constructor(t=431,n,r){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(r||n?.message||s),this.name="RequestTooLargeError",this.status=t,this.detail={message:n?.message||s,suggestion:n?.suggestion||c},Object.setPrototypeOf(this,e.prototype)}};function me(e){let t=e.response?.status||e.status;if(t!==402)return e;let n=e.response?.data||e.data||e.detail||{},r=n?.detail||n;return new ne(t,{message:r?.message||e.message||"Billing error",...r})}function gc(e){return e instanceof ne}function mc(e){if(!(e instanceof ne))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 sr(e,t){return(await e.json().catch(()=>({})))?.error||e.statusText||t}function ir(e){if(!e)throw new Error("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading");return e}async function or(e){let t=ir(e),n=await R(`${t}/env`);if(!n.ok)throw new Error(await sr(n,"Failed to load secrets"));return(await n.json()).secrets??{}}async function ar(e,t,n){let r=ir(e),s=await R(`${r}/env/${encodeURIComponent(t)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:n})});if(!s.ok)throw new Error(await sr(s,"Failed to save secret"))}async function cr(e,t){let n=ir(e),r=await R(`${n}/env/${encodeURIComponent(t)}`,{method:"DELETE"});if(!r.ok)throw new Error(await sr(r,"Failed to delete secret"))}var fc={list:or,set:ar,delete:cr};async function yc(e,t,n){let r=e;for(;r.endsWith("/");)r=r.slice(0,-1);let s=await R(`${r}/kortix/triggers${t}`,{...n,headers:{"Content-Type":"application/json",...n?.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 it(e,t){let n=await e.json().catch(()=>({}));return n?.error||n?.message||e.statusText||t}function qe(e){if(!e)throw new Error("[kortix-pty] Server URL not ready \u2014 sandbox is still loading");return re(e)}async function lr(e){let t=qe(e),n=await R(`${t}/kortix/pty`);if(!n.ok)throw new Error(await it(n,"Failed to list terminals"));return n.json()}async function ur(e,t){let n=qe(e),r=await R(`${n}/kortix/pty`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t??{})});if(!r.ok)throw new Error(await it(r,"Failed to create terminal"));return r.json()}async function pr(e,t,n){let r=qe(e),s=await R(`${r}/kortix/pty/${encodeURIComponent(t)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!s.ok)throw new Error(await it(s,"Failed to update terminal"));return s.json()}async function dr(e,t){let n=qe(e),r=await R(`${n}/kortix/pty/${encodeURIComponent(t)}`,{method:"DELETE"});if(!r.ok)throw new Error(await it(r,"Failed to remove terminal"))}async function gr(e,t){let n=qe(t),s=`${(()=>{try{let d=new URL(n);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 n.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 hc={list:lr,create:ur,update:pr,remove:dr,webSocketUrl:gr};async function b(e,t,n,r){let s=e;for(;s.endsWith("/");)s=s.slice(0,-1);let c=await R(`${s}${t}`,{...n,headers:{"Content-Type":"application/json",...n?.headers}},r),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 ru(e,t={}){let n=new URLSearchParams;t.projectId&&n.set("project_id",t.projectId),t.status&&n.set("status",t.status);let r=n.toString()?`?${n}`:"";return b(e,`/kortix/tasks${r}`)}async function su(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`)}async function iu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/events`)}async function ou(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/status`)}async function au(e,t){return b(e,"/kortix/tasks",{method:"POST",body:JSON.stringify(t)})}async function cu(e,t,n){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)})}async function lu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/start`,{method:"POST"})}async function uu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/approve`,{method:"POST"})}async function pu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`,{method:"DELETE"})}async function du(e,t){let n=t?`?project_id=${encodeURIComponent(t)}`:"";return b(e,`/kortix/tickets${n}`)}async function gu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`)}async function mu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/events`)}async function fu(e,t){return b(e,"/kortix/tickets",{method:"POST",body:JSON.stringify(t)})}async function yu(e,t,n){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)})}async function hu(e,t,n){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/status`,{method:"POST",body:JSON.stringify(n)})}async function bu(e,t,n){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/assign`,{method:"POST",body:JSON.stringify(n)})}async function xu(e,t,n){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/unassign`,{method:"POST",body:JSON.stringify(n)})}async function ku(e,t,n){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/comments`,{method:"POST",body:JSON.stringify(n)})}async function Pu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`,{method:"DELETE"})}async function wu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/columns`)}async function _u(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/columns`,{method:"PUT",body:JSON.stringify({columns:n})})}async function Su(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/fields`)}async function vu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/fields`,{method:"PUT",body:JSON.stringify({fields:n})})}async function Cu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/templates`)}async function Ru(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/templates`,{method:"PUT",body:JSON.stringify({templates:n})})}async function Tu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/pm-session`,{method:"POST"})}async function Iu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents`)}async function ju(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents`,{method:"POST",body:JSON.stringify(n)})}async function Au(e,t,n,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Eu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(n)}`,{method:"DELETE"})}async function qu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(n)}/persona`)}async function $u(e,t,n=200){return b(e,`/kortix/projects/${encodeURIComponent(t)}/activity?limit=${n}`)}async function Du(e){return b(e,"/kortix/projects")}async function Mu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}`)}async function Uu(e,t){return b(e,`/kortix/projects/by-session/${encodeURIComponent(t)}`)}async function Ou(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/sessions`)}async function Lu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}`,{method:"DELETE"})}async function Fu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Gu(e,t,n="all"){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones?status=${n}`)}async function Bu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}`)}async function Ku(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}/events`)}async function Nu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones`,{method:"POST",body:JSON.stringify(n)})}async function Hu(e,t,n,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Wu(e,t,n,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}/close`,{method:"POST",body:JSON.stringify(r)})}async function Vu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}/reopen`,{method:"POST"})}async function zu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}`,{method:"DELETE"})}async function Ju(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials`)}async function Xu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(n)}/events`)}async function Qu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials`,{method:"POST",body:JSON.stringify(n)})}async function Yu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(n)}`)}async function Zu(e,t,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(n)}`,{method:"DELETE"})}var ep=1e4,tp={retryOnAuthError:!1};function fe(e,t,n){return b(e,t,{signal:AbortSignal.timeout(ep),...n},tp)}async function np(e,t=!1){return(await fe(e,`/kortix/services${t?"?all=true":""}`)).services??[]}async function rp(e){return(await fe(e,"/kortix/services/templates")).templates??[]}async function sp(e,t){return(await fe(e,`/kortix/services/${encodeURIComponent(t)}/logs`)).logs??[]}async function ip(e,t,n){let r=n==="delete",s=r?`/kortix/services/${encodeURIComponent(t)}`:`/kortix/services/${encodeURIComponent(t)}/${n}`;return fe(e,s,{method:r?"DELETE":"POST"})}async function op(e,t){return fe(e,`/kortix/services/reconcile${t?"?reload=true":""}`,{method:"POST"})}async function ap(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=q();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 n=tr({baseUrl:e,fetch:R});return ot.set(e,n),n}function cp(e){ot.delete(e)}function lp(){ot.clear()}var ct=new Map;function up(e){if(!e)throw new Error("[opencode-sdk] getPublicClientForUrl called without a url");let t=ct.get(e);if(t)return t;let n=tr({baseUrl:e,fetch});return ct.set(e,n),n}function pp(e){ct.delete(e)}function dp(){ct.clear()}async function gp(e){let t=await e.text().catch(()=>"");try{let n=JSON.parse(t);return n?.error||n?.message||t||e.statusText||`HTTP ${e.status}`}catch{return t||e.statusText||`HTTP ${e.status}`}}async function mp(e){let t=q();if(!t)throw new C("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading",{code:"RUNTIME_UNAVAILABLE"});let n=await R(`${t}/kortix/services/system/reload`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:e})});if(!n.ok)throw new C(`System reload failed (${n.status}): ${await gp(n)}`,{status:n.status,response:n,code:"RUNTIME_UNAVAILABLE"});return n.json()}function xc(e){if(e.error){let t=e.error,n=t?.data?.message||t?.message||(typeof t?.error=="string"?t.error:null)||"SDK request failed";throw new C(n,{status:t?.response?.status??t?.status,response:t?.response,details:t})}return e.data}async function ye(e){let t=await e.text().catch(()=>""),n=null;try{n=JSON.parse(t)}catch{}return n?.error||t||e.statusText||`HTTP ${e.status}`}async function lt(e,t=q()){let n=await R(`${t}${e}`);if(!n.ok)throw new C(await ye(n),{status:n.status,response:n});return n.json()}var kc=["/workspace","/tmp","/home","/opt"],fp=kc.filter(e=>e!=="/workspace");function yp(e){return kc.some(t=>e===t||e.startsWith(`${t}/`))}function hp(e){return yp(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(fp.some(n=>t===n||t.startsWith(`${n}/`)))return t;for(;t.startsWith("/");)t=t.slice(1);return t}var bp=De;async function mr(e,t=q()){let n=De(e)||".";return(await lt(`/file?path=${encodeURIComponent(n)}`,t)).map(s=>({...s,path:s.absolute||`/workspace/${s.path}`}))}async function ut(e,t=q()){let n=De(e),r=await R(`${t}/file/content?path=${encodeURIComponent(n)}`);if(!r.ok)throw new C(await ye(r),{status:r.status,response:r});return r.json()}async function xp(e,t,n=q()){let r=De(e),s=await R(`${n}/file/raw?path=${encodeURIComponent(r)}`);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=q()){try{return await xp(e,void 0,t)}catch{}let n=await ut(e,t);if(n.encoding==="base64"&&n.content){let r=Uint8Array.from(atob(n.content),s=>s.charCodeAt(0));return new Blob([r],{type:n.mimeType||"application/octet-stream"})}return new Blob([n.content??""],{type:n.mimeType||"text/plain;charset=utf-8"})}function fr(e=q()){return lt("/file/status",e)}async function yr(e,t,n=q()){let r=new URLSearchParams({query:e});return t?.type&&r.set("type",t.type),t?.limit&&r.set("limit",String(t.limit)),lt(`/find/file?${r.toString()}`,n)}async function hr(e,t=q()){return(await lt(`/find?pattern=${encodeURIComponent(e)}`,t)).map(r=>({path:typeof r.path=="string"?r.path:r.path?.text??"",lines:typeof r.lines=="string"?r.lines:r.lines?.text??"",line_number:r.line_number,absolute_offset:r.absolute_offset,submatches:(r.submatches??[]).map(s=>({start:s.start,end:s.end}))}))}var $e=[400,1200],kp=e=>e===408||e===429||e===502||e===503||e===504,bc=e=>new Promise(t=>setTimeout(t,e));async function Pp(e){let t=await e.text().catch(()=>""),n=null;try{n=t?JSON.parse(t):null}catch{}let r=n?.error||n?.message||n?.data?.message;return typeof r=="string"&&r.trim()?r.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 Pc(e,t){let n;for(let s=0;s<=$e.length;s++){let c;try{c=await t(e())}catch(d){if(n=d,s===$e.length)break;await bc($e[s]);continue}if(c.ok)return c.json();let u=await Pp(c);if(n=new C(`Upload failed (${c.status}): ${u}`,{status:c.status,response:c}),!kp(c.status)||s===$e.length)throw n;await bc($e[s])}if(n instanceof C)throw n;let r=n instanceof Error?n.message:String(n||"request failed");throw new C(`Upload failed: ${r}`)}function dt(e,t,n,r=q()){return Pc(()=>{let s=new FormData,c=(t??"").trim();return c&&s.append("path",c.startsWith("/")?c:`/${c}`),n?s.append("file",e,n):s.append("file",e),s},s=>R(`${r}/file/upload`,{method:"POST",body:s}))}function wp(e,t,n=q()){return Pc(()=>{let r=new FormData;return r.append(e,t,e.split("/").pop()||"file"),r},async r=>{let s={},c=await Ae();return c&&(s.Authorization=`Bearer ${c}`),fetch(`${n}/file/upload`,{method:"POST",body:r,headers:s})})}function br(e,t=q()){let n=e.trim(),s=(n.startsWith("/")?n:`/${n}`).split("/"),c=s.pop()||"untitled",u=s.join("/")||"/workspace";return dt(new File([" "],c,{type:"application/octet-stream"}),u,void 0,t)}async function xr(e,t,n=q()){return wp(t,await pt(e,n),n)}async function kr(e,t=q()){let n=await R(`${t}/file`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!n.ok)throw new C(`Delete failed (${n.status}): ${await ye(n)}`,{status:n.status,response:n});return n.json()}async function Pr(e,t=q()){let n=await R(`${t}/file/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!n.ok)throw new C(`Mkdir failed (${n.status}): ${await ye(n)}`,{status:n.status,response:n});return n.json()}async function wr(e,t,n=q()){let r=await R(`${n}/file/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({from:e,to:t})});if(!r.ok)throw new C(`Rename failed (${r.status}): ${await ye(r)}`,{status:r.status,response:r});return r.json()}async function _p(){return xc(await X().project.current())}async function wc(){return xc(await X().global.health())}async function Sp(){try{return(await wc()).healthy===!0}catch{return!1}}var _c={list:mr,read:ut,readBlob:pt,status:fr,findFiles:yr,findText:hr,upload:dt,create:br,copy:xr,remove:kr,mkdir:Pr,rename:wr,currentProject:_p,health:wc,isReachable:Sp,toDaemonPath:De,toSandboxAbsolutePath:hp,toWorkspaceRelative:bp};var Q=()=>T().backendUrl||"",Cp=e=>new Promise(t=>setTimeout(t,e)),Rp=new Set([502,503,504]),Sc=e=>Rp.has(e),Tp=e=>{let t=(e??"GET").toUpperCase();return t==="GET"||t==="HEAD"},Ip=2,_r=!1;function jp(e){_r=e}function Ap(){return _r}async function ie(e,t={}){let{showErrors:n=!0,errorContext:r,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),_r&&(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&&Tp(c.method)&&Sc(k.status))for(let P=0;P<Ip;P++){try{await k.arrayBuffer()}catch{}await Cp(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||!Sc(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."})),n&&T().onError?.(D,r),{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}),n&&T().onError?.(w,r)}else m instanceof Error?(w=new C(m.message,{name:m.name||"ApiError",stack:m.stack}),n&&T().onError?.(w,r)):(w=new C(String(m)),n&&T().onError?.(w,r));return{error:w,success:!1}}}var Ep={async execute(e,t){try{let{data:n,error:r}=await e();if(r){let s=new C(r.message||"Database error",{code:r.code,details:r});return T().onError?.(s,t),{error:s,success:!1}}return{data:n,success:!0}}catch(n){let r=n instanceof Error?new C(n.message,{name:n.name||"ApiError",stack:n.stack}):new C(String(n));return T().onError?.(r,t),{error:r,success:!1}}}},o={get:(e,t)=>ie(`${Q()}${e}`,{...t,method:"GET"}),post:(e,t,n)=>ie(`${Q()}${e}`,{...n,method:"POST",body:t?JSON.stringify(t):void 0}),put:(e,t,n)=>ie(`${Q()}${e}`,{...n,method:"PUT",body:t?JSON.stringify(t):void 0}),patch:(e,t,n)=>ie(`${Q()}${e}`,{...n,method:"PATCH",body:t?JSON.stringify(t):void 0}),delete:(e,t)=>ie(`${Q()}${e}`,{...t,method:"DELETE"}),upload:(e,t,n)=>{let{headers:r,...s}=n||{},c={...r};return delete c["Content-Type"],ie(`${Q()}${e}`,{...s,method:"POST",body:t,headers:c})},uploadPut:(e,t,n)=>{let{headers:r,...s}=n||{},c={...r};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 Sr(e){return e.replace(/\/v1\/?$/,"")}async function he(e,t){if(!e.backendUrl||!e.accessToken)return null;let n=Sr(e.backendUrl);try{let r=await fetch(`${n}${t}`,{headers:{Authorization:`Bearer ${e.accessToken}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(e.timeoutMs??8e3)});return r.ok?await r.json():null}catch{return null}}async function vr(){return a(await o.get("/accounts"))}async function Cr(e){return a(await o.post("/accounts",e))}async function Rr(e){return a(await o.get(`/accounts/${e}`))}async function Tr(e,t){return a(await o.patch(`/accounts/${e}`,{name:t}))}async function Ir(e){return a(await o.get(`/accounts/${e}/members`))}async function jr(e,t){return a(await o.post(`/accounts/${e}/members`,t,{showErrors:!1}))}async function Ar(e){return a(await o.get(`/accounts/${e}/invites`))}async function Er(e,t){return a(await o.delete(`/accounts/${e}/invites/${t}`))}async function qr(e,t){return a(await o.post(`/accounts/${e}/invites/${t}/resend`,{}))}async function $r(e){return a(await o.get(`/account-invites/${e}`,{showErrors:!1}))}async function Dr(e){return a(await o.post(`/account-invites/${e}/accept`,{}))}async function Mr(e){return a(await o.post(`/account-invites/${e}/decline`,{}))}async function Ur(e,t){return a(await o.delete(`/accounts/${e}/members/${t}`))}async function Or(e,t,n){return a(await o.patch(`/accounts/${e}/members/${t}`,{role:n}))}async function Lr(e){return a(await o.post(`/accounts/${e}/leave`,{}))}async function qp(e){return he(e,"/v1/accounts")}async function Fr(){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 Gr(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 Br(e,t,n="write"){return a(await o.post(`/projects/${e}/git/collaborators`,{github_username:t,permission:n}))}async function Kr(e,t){return a(await o.post(`/projects/${e}/manifest/validate`,{raw:t}),"Failed to validate manifest")}async function Nr(e){return a(await o.post(`/projects/${e}/git-token`,{}),"Failed to mint git token")}function $p(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 Hr(e){return a(await o.post("/projects",e))}async function Wr(e){return a(await o.post("/projects/create-repo",e))}async function Vr(e){return a(await o.post("/projects/provision",{seed_starter:!0,...e}))}async function Dp(){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 zr(e,t,n){return a(await o.patch(`/projects/${e}/experimental`,{feature:t,enabled:n}))}async function Jr(e,t){return a(await o.patch(`/projects/${e}/sandbox-provider`,{provider:t}))}async function Mp(e,t){return a(await o.patch(`/projects/${e}/warm-pool`,t))}async function Xr(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 Up(e,t){return he(e,`/v1/projects?account_id=${encodeURIComponent(t)}`)}async function Op(e,t){if(!e.backendUrl||!e.accessToken)return{ok:!1,limitReached:!1};let n=Sr(e.backendUrl);try{let r=await fetch(`${n}/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(r.ok){let s=await r.json().catch(()=>null);return s?.project_id?{ok:!0,project:s}:{ok:!1,limitReached:!1}}return r.status===403?{ok:!1,limitReached:(await r.json().catch(()=>null))?.code==="project_limit_reached"}:{ok:!1,limitReached:!1}}catch{return{ok:!1,limitReached:!1}}}async function Qr(e){return a(await o.post("/projects/link-repository",e,{showErrors:!1}))}async function Yr(e){return a(await o.get(`/projects/github/installation?account_id=${encodeURIComponent(e)}`,{showErrors:!1}))}async function Zr(e){return a(await o.get(`/projects/github/installations?account_id=${encodeURIComponent(e)}`,{showErrors:!1}))}async function es(e,t){let n=new URLSearchParams({account_id:e});return t&&n.set("installation_id",t),a(await o.get(`/projects/github/repositories?${n.toString()}`,{showErrors:!1}))}async function ts(e,t,n){let r=new URLSearchParams({account_id:e,installation_id:t,repo_full_name:n});return a(await o.get(`/projects/github/repository-branches?${r.toString()}`,{showErrors:!1}))}async function ns(e){return a(await o.post("/projects/github/installation",e,{showErrors:!1}))}async function rs(e,t){let n=new URLSearchParams({account_id:e});return t&&n.set("installation_id",t),a(await o.delete(`/projects/github/installation?${n.toString()}`))}async function Lp(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,n="member"){return a(await o.post(`/projects/${e}/access-requests/${t}/approve`,{role:n}))}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,n){return a(await o.put(`/projects/${e}/access/${t}`,{role:n}))}async function ls(e,t){return a(await o.delete(`/projects/${e}/access/${t}`))}function Fp(e){return"status"in e&&e.status==="invited"}async function us(e,t,n,r){return a(await o.post(`/projects/${e}/access/invite`,{email:t,role:n,...r!==void 0?{expires_at:r}:{}}))}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,n,r){return a(await o.post(`/projects/${e}/group-grants`,r===void 0?{group_id:t,role:n}:{group_id:t,role:n,expires_at:r}))}async function ys(e,t,n,r){return a(await o.patch(`/projects/${e}/group-grants/${t}`,r===void 0?{role:n}:{role:n,expires_at:r}))}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,n,r="once"){return a(await o.post(`/projects/${e}/approvals/${t}`,{decision:n,scope:r}))}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,n){return a(await o.post(`/projects/${e}/oauth/${t}/start`,{sharing:n?.sharing}))}async function Rs(e,t,n){return a(await o.post(`/projects/${e}/oauth/${t}/poll`,{flow_id:n}))}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,n){return a(await o.put(`/projects/${e}/secrets/${encodeURIComponent(t)}/personal`,n))}async function As(e,t){return a(await o.delete(`/projects/${e}/secrets/${encodeURIComponent(t)}/personal`))}async function Es(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 $s(e,t,n){return a(await o.put(`/projects/${e}/connector-profiles/${t}/credential`,n))}async function Ds(e,t){return a(await o.put(`/projects/${e}/connector-profiles/${t}/revoke`,{}))}async function Ms(e,t){return a(await o.put(`/projects/${e}/connector-profiles/${t}/activate`,{}))}async function Us(e){return a(await o.get(`/executor/projects/${e}/connectors`,{showErrors:!1}))}async function Os(e){return a(await o.post(`/executor/projects/${e}/connectors/sync`,{}))}async function Ls(e,t,n){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/credential-mode`,{mode:n}))}async function Fs(e,t,n){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/sensitive`,{sensitive:n}))}async function Gs(e,t){return a(await o.get(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/policies`))}async function Bs(e,t,n){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/policies`,{policies:n}))}async function Ks(e,t){return a(await o.get(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/config`))}async function Ns(e,t,n){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/name`,{name:n}))}async function Hs(e,t){return a(await o.post(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/connect`,{}))}async function Ws(e,t){return a(await o.post(`/executor/projects/${e}/connectors`,t))}async function Vs(e,t){return a(await o.delete(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}`))}async function zs(e,t,n){let r=new URLSearchParams;t&&r.set("q",t),n&&r.set("cursor",n);let s=r.toString();return a(await o.get(`/executor/projects/${e}/pipedream/apps${s?`?${s}`:""}`))}async function Js(){return a(await o.get("/executor/connect-status"))}async function Xs(e,t,n){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/credential`,{value:n}))}async function Qs(e,t){return a(await o.post(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/connect/finalize`,{}))}async function Ys(e){return a(await o.get(`/executor/projects/${e}/policies`))}async function Zs(e,t,n){return a(await o.put(`/executor/projects/${e}/policies`,{policies:t,defaultMode:n}))}async function ei(e){return a(await o.get(`/projects/${e}/sandboxes`))}async function ti(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 ri(e){return a(await o.post(`/projects/${e}/snapshots/fix-with-agent`,{}))}async function si(e,t){return a(await o.post(`/projects/${e}/sandbox-templates`,t))}async function ii(e,t,n){return a(await o.patch(`/projects/${e}/sandbox-templates/${t}`,n))}async function oi(e,t){return a(await o.delete(`/projects/${e}/sandbox-templates/${t}`))}async function ai(e,t){return a(await o.post(`/projects/${e}/sandbox-templates/${t}/build`,{}))}async function ci(e){return a(await o.get(`/projects/${e}/sandboxes`))}async function li(e,t){let n=new URLSearchParams;t?.ref&&n.set("ref",t.ref),t?.path&&n.set("path",t.path);let r=n.toString()?`?${n.toString()}`:"";return a(await o.get(`/projects/${e}/files${r}`,{showErrors:!1}))}async function ui(e,t,n){let r=new URLSearchParams({q:t});return n?.content&&r.set("content","1"),n?.ref&&r.set("ref",n.ref),n?.limit&&r.set("limit",String(n.limit)),a(await o.get(`/projects/${e}/files/search?${r.toString()}`))}async function pi(e,t,n){let r=new URLSearchParams({path:t});return n&&r.set("ref",n),a(await o.get(`/projects/${e}/files/content?${r.toString()}`))}async function di(e,t,n){let r=new URLSearchParams;t&&r.set("ref",t),n&&r.set("path",n);let s=r.toString()?`?${r.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 gi(e){return a(await o.get(`/projects/${e}/branches`))}async function mi(e,t){let n=new URLSearchParams;t?.ref&&n.set("ref",t.ref),t?.path&&n.set("path",t.path),t?.limit!=null&&n.set("limit",String(t.limit)),t?.skip!=null&&n.set("skip",String(t.skip));let r=n.toString()?`?${n.toString()}`:"";return a(await o.get(`/projects/${e}/commits${r}`))}async function fi(e,t){return a(await o.get(`/projects/${e}/commits/${encodeURIComponent(t)}`))}async function yi(e,t,n){let r=new URLSearchParams;n?.path&&r.set("path",n.path);let s=r.toString()?`?${r.toString()}`:"";return a(await o.get(`/projects/${e}/commits/${encodeURIComponent(t)}/diff${s}`))}async function hi(e,t,n){let r=new URLSearchParams({path:t});return n?.ref&&r.set("ref",n.ref),n?.limit!=null&&r.set("limit",String(n.limit)),n?.skip!=null&&r.set("skip",String(n.skip)),a(await o.get(`/projects/${e}/files/history?${r.toString()}`))}async function bi(e,t){let n=new URLSearchParams({from:t.from,into:t.into});return a(await o.get(`/projects/${e}/version-diff?${n.toString()}`))}async function xi(e,t){let n=t?`?status=${t}`:"";return a(await o.get(`/projects/${e}/change-requests${n}`,{showErrors:!1,timeout:15e3}))}async function ki(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}`))}async function Pi(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}/diff`))}async function wi(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}/merge-preview`))}async function _i(e,t){return a(await o.post(`/projects/${e}/change-requests`,t))}async function Si(e,t,n){return a(await o.post(`/projects/${e}/change-requests/${t}/merge`,n??{},{showErrors:!1}))}async function vi(e,t){return a(await o.post(`/projects/${e}/change-requests/${t}/close`,{}))}async function Ci(e,t){return a(await o.post(`/projects/${e}/change-requests/${t}/reopen`,{}))}async function Ri(e,t,n){return a(await o.post(`/projects/${e}/change-requests/${t}/request-changes`,{feedback:n}))}async function Ti(e,t,n){return a(await o.post(`/projects/${e}/sessions/${t}/commit-push`,n??{}))}var Ii=new Set;function ji(e){e&&Ii.add(e)}function Ai(e){return!!e&&Ii.has(e)}function Gp(e){e&&Ii.delete(e)}async function be(e){return a(await o.get(`/projects/${e}/sessions`))}async function Ei(e,t,n){return a(await o.put(`/projects/${e}/sessions/${t}/sharing`,n))}async function qi(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 Di(e,t,n){return a(await o.post(`/projects/${e}/sessions/${t}/public-shares`,n))}async function Mi(e,t,n){return a(await o.delete(`/projects/${e}/sessions/${t}/public-shares/${n}`))}async function xe(e,t){let n=a(await o.post(`/projects/${e}/sessions`,t??{}));return t?.initial_prompt||ji(n?.session_id),n}async function Ui(e,t,n){return a(await o.get(`/projects/${e}/sessions/${t}`,{showErrors:n?.showErrors}))}async function Oi(e,t,n,r){let s=n?`?limit=${n}`:"";return a(await o.get(`/projects/${e}/sessions/${t}/audit${s}`,{showErrors:r?.showErrors}))}async function Li(e,t,n){let r=new URLSearchParams;n?.limit!=null&&r.set("limit",String(n.limit)),n?.chars!=null&&r.set("chars",String(n.chars));let s=r.toString();return a(await o.get(`/projects/${e}/sessions/${t}/transcript${s?`?${s}`:""}`))}async function Fi(e,t,n){return a(await o.patch(`/projects/${e}/sessions/${t}`,n))}async function Gi(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 Bi(e){return a(await o.get(`/projects/${e}/triggers`))}async function Ki(e,t){return a(await o.post(`/projects/${e}/triggers`,t))}async function Ni(e,t,n){return a(await o.patch(`/projects/${e}/triggers/${t}`,n))}async function Hi(e,t){return a(await o.delete(`/projects/${e}/triggers/${t}`))}async function Wi(e,t){return a(await o.patch(`/projects/${e}/triggers/activation`,{paused:t}))}async function Vi(e,t){return a(await o.post(`/projects/${e}/triggers/${t}/fire`,{}))}var Y=new Map;function zi(e,t){return`${e}::${t}`}function vc(e,t){Y.delete(e),Y.set(e,t)}function Cc(e,t){let n=zi(e,t),r=Y.get(n);return r&&vc(n,r),r}function Rc(e,t,n){let r=zi(e,t);if(!Y.has(r)&&Y.size>=512){let s=Y.keys().next().value;s!==void 0&&Y.delete(s)}vc(r,n)}function Tc(e,t){Y.delete(zi(e,t))}var kt=class extends Error{status;code;terminal;constructor(t,n){super(t),this.name="SessionStartError",this.status=n.status,this.code=n.code,this.terminal=n.terminal}};function Bp(e){return e instanceof Error&&e.name==="SessionStartError"}function Kp(e){let t=e,n=t?.status,r=t?.code??t?.details?.code??t?.details?.error,s=t?.message||"Unable to start this session";return n&&n>=400&&n<500&&n!==408&&n!==429?new kt(s,{status:n,code:r,terminal:!0}):null}async function ke(e,t,n){let r=n&&n>0?`?wait_ms=${Math.floor(n)}`:"",s=await o.post(`/projects/${e}/sessions/${t}/start${r}`,{},{showErrors:!1});if(!s.success||!s.data){let d=Kp(s.error);if(d&&!(d.status===404&&Ai(t)))throw d;return null}let c=s.data,u=c.sandbox?.external_id;return c.stage==="ready"&&u&&c.opencode_session_id&&Rc(e,t,{opencodeSessionId:c.opencode_session_id,runtimeUrl:st(u),sandboxId:u}),c}function Np(e,t){return["session-start",e,t]}async function Ji(e){return a(await o.get(`/projects/${e}/model-defaults`))}async function Xi(e,t){return a(await o.put(`/projects/${e}/model-defaults`,t))}async function Qi(e,t){let n=new URLSearchParams({scope:t.scope,...t.agentName?{agentName:t.agentName}:{}}).toString();return a(await o.delete(`/projects/${e}/model-defaults?${n}`))}async function Yi(e,t,n){return a(await o.put(`/projects/${e}/agents/${encodeURIComponent(t)}/scope`,n))}async function Hp(e,t){return a(await o.get(`/projects/${e}/agents/${encodeURIComponent(t)}/config`))}async function Wp(e,t,n){return a(await o.put(`/projects/${e}/agents/${encodeURIComponent(t)}/config`,n))}async function Zi(e,t){return a(await o.put(`/projects/${e}/default-agent`,{agent:t}))}function eo(){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 to(e){let t=new URLSearchParams;e?.skipCache&&t.set("skip_cache","true"),e?.accountId&&t.set("account_id",e.accountId);let n=t.toString(),r=n?`?${n}`:"",s=await o.get(`/billing/account-state${r}`,{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?eo():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 n=t.toString(),r=n?`?${n}`:"",s=await o.get(`/billing/account-state/minimal${r}`,{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?eo():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 n=t.toString();return a(await o.get(`/billing/transactions${n?`?${n}`:""}`))}async function so(e){let t=new URLSearchParams;e?.accountId&&t.set("account_id",e.accountId),e?.days!=null&&t.set("days",String(e.days));let n=t.toString();return a(await o.get(`/billing/transactions/summary${n?`?${n}`:""}`))}async function io(){return a(await o.get("/billing/credit-breakdown"))}async function oo(e){let t=e!=null?`?days=${e}`:"";return a(await o.get(`/billing/usage-history${t}`))}async function ao(){return a(await o.get("/billing/tier-configurations"))}async function Vp(e){let t=e.accountId?`?account_id=${encodeURIComponent(e.accountId)}`:"";return he(e,`/v1/billing/account-state${t}`)}async function co(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 lo(e,t){return a(await o.post("/billing/confirm-checkout-session",{account_id:t,session_id:e}),"Failed to confirm checkout session")}async function uo(e,t){return a(await o.post("/billing/create-portal-session",{account_id:t,return_url:e}),"Failed to create portal session")}async function po(e,t){return a(await o.post("/billing/cancel-subscription",{account_id:t,feedback:e}),"Failed to cancel subscription")}async function go(e){return a(await o.post("/billing/reactivate-subscription",{account_id:e}),"Failed to reactivate subscription")}async function mo(e,t,n){return a(await o.post("/billing/schedule-downgrade",{account_id:n,target_tier_key:e,commitment_type:t}),"Failed to schedule downgrade")}async function fo(e){return a(await o.post("/billing/cancel-scheduled-change",{account_id:e}),"Failed to cancel scheduled change")}async function yo(e,t){let n=new URLSearchParams({new_price_id:e});return t&&n.set("account_id",t),a(await o.get(`/billing/proration-preview?${n.toString()}`),"Failed to load proration preview")}async function ho(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 bo(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 xo(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 ko(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/slack/installation`,{showErrors:!1});return t.success?t.data??null:null}async function Po(e,t){return a(await o.post(`/projects/${encodeURIComponent(e)}/channels/slack/connect`,t,{showErrors:!1}),"Failed to connect")}var zp={oauth_available:!1,install_url:null};async function wo(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/slack/mode`,{showErrors:!1});return!t.success||!t.data?zp:t.data}async function _o(e){return a(await o.get(`/webhooks/slack/${encodeURIComponent(e)}/manifest`,{showErrors:!1}),"Failed to load Slack manifest")}async function So(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 vo(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 Co(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 Ro(e){return{...e,profileId:e.profileId??e.profile_id??null}}var Jp={provider:"agentmail",managed_available:!1};async function To(e,t){let n=t?`?connector_slug=${encodeURIComponent(t)}`:"",r=await o.get(`/projects/${encodeURIComponent(e)}/channels/email/installation${n}`,{showErrors:!1});return r.success&&r.data?Ro(r.data):null}async function Io(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/email/mode`,{showErrors:!1});return!t.success||!t.data?Jp:t.data}async function jo(e,t){let n=a(await o.post(`/projects/${encodeURIComponent(e)}/channels/email/connect`,t,{showErrors:!1}),"Failed to connect email");return Ro(n)}async function Ao(e,t){let n=t?`?connector_slug=${encodeURIComponent(t)}`:"",r=await o.delete(`/projects/${encodeURIComponent(e)}/channels/email/installation${n}`,{showErrors:!1});if(!r.success)throw new Error(r.error?.message??"Failed to disconnect email")}async function Eo(e,t,n){let r=a(await o.patch(`/projects/${encodeURIComponent(e)}/channels/email/installation`,{connector_slug:t??"kortix_email",sender_policy:n},{showErrors:!1}),"Failed to update email policy");return Ro(r)}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 $o(e,t){return a(await o.put(`/projects/${encodeURIComponent(e)}/channels/meet/voice`,{voice:t},{showErrors:!1}),"Failed to save voice")}async function Do(e,t){return a(await o.put(`/projects/${encodeURIComponent(e)}/channels/meet/name`,{name:t},{showErrors:!1}),"Failed to save name")}async function Mo(e,t){let n=await o.post(`/projects/${encodeURIComponent(e)}/channels/meet/voices/${encodeURIComponent(t)}/preview`,{},{showErrors:!1});return!n.success||!n.data?.b64?null:n.data.b64}async function Xp(e){return a(await o.get(`/projects/${encodeURIComponent(e)}/channels/bindings`,{showErrors:!1}),"Failed to load channel bindings")}async function Qp(e,t,n){return a(await o.patch(`/projects/${encodeURIComponent(e)}/channels/bindings/${encodeURIComponent(t)}`,n,{showErrors:!1}),"Failed to update channel binding")}async function Uo(e,t,n,r){return a(await o.post(`/projects/${encodeURIComponent(e)}/channels/meet/speak`,{bot_id:t,text:n,voice:r},{showErrors:!1}),"Failed to speak in meeting")}async function Oo(e){return a(await o.get(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Lo(e,t){return a(await o.put(`/projects/${e}/gateway/routing-policy`,t),"Gateway routing policy request failed")}async function Fo(e){return a(await o.delete(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Go(e,t){return a(await o.post(`/projects/${e}/gateway/routing-policy/preview`,t),"Gateway route preview failed")}async function Bo(e,t){let n=new URLSearchParams;t?.limit&&n.set("limit",String(t.limit)),t?.offset&&n.set("offset",String(t.offset)),t?.ok!==void 0&&n.set("ok",String(t.ok));let r=n.toString();return a(await o.get(`/projects/${e}/gateway/logs${r?`?${r}`:""}`),"Gateway request failed")}async function Ko(e,t){return a(await o.get(`/projects/${e}/gateway/logs/${t}`),"Gateway request failed")}async function No(e,t){return a(await o.get(`/projects/${e}/gateway/overview${t?`?days=${t}`:""}`),"Gateway request failed")}async function Ho(e,t){return a(await o.get(`/projects/${e}/gateway/series${t?`?days=${t}`:""}`),"Gateway request failed")}async function Wo(e,t){return a(await o.get(`/projects/${e}/gateway/breakdown${t?`?days=${t}`:""}`),"Gateway request failed")}async function Vo(e,t){return a(await o.get(`/projects/${e}/gateway/sessions${t?`?days=${t}`:""}`),"Gateway request failed")}async function zo(e,t){return a(await o.get(`/projects/${e}/gateway/errors${t?`?days=${t}`:""}`),"Gateway request failed")}async function Jo(e){return a(await o.get(`/projects/${e}/gateway/budgets`),"Gateway request failed")}async function Xo(e,t){return a(await o.put(`/projects/${e}/gateway/budgets`,t),"Gateway request failed")}async function Qo(e,t){return a(await o.delete(`/projects/${e}/gateway/budgets/${t}`),"Gateway request failed")}async function Yo(e){return a(await o.get(`/projects/${e}/gateway/keys`),"Gateway request failed")}async function Zo(e,t){return a(await o.post(`/projects/${e}/gateway/keys`,{name:t}),"Gateway request failed")}async function ea(e,t){return a(await o.delete(`/projects/${e}/gateway/keys/${t}`),"Gateway request failed")}async function ta(e,t,n){return a(await o.post(`/projects/${e}/gateway/playground`,{prompt:t,models:n}),"Gateway request failed")}async function na(e){let t=new FormData;t.append("audio_file",e);let n=await o.upload("/transcription",t,{showErrors:!0});if(n.error)throw new Error(`Error transcribing audio: ${n.error.message} (${n.error.status})`);return n.data}async function ra(e,t){let n=new URLSearchParams;t?.segment&&n.set("segment",t.segment),t?.kind&&n.set("kind",t.kind);let r=n.toString();return a(await o.get(`/projects/${e}/review/items${r?`?${r}`:""}`,{showErrors:!1}))}async function sa(e,t){return a(await o.get(`/projects/${e}/review/items/${t}`))}async function ia(e,t){return a(await o.post(`/projects/${e}/review/items`,t))}async function oa(e,t,n){return a(await o.post(`/projects/${e}/review/items/${t}/act`,n))}async function aa(e,t){return a(await o.post(`/projects/${e}/review/bulk`,t))}async function ca(e){return a(await o.get(`/p/share?sandbox_id=${encodeURIComponent(e)}`),"Failed to load public links").shares??[]}async function la(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 ua(e,t){let n=await o.delete(`/p/share/${encodeURIComponent(t)}?sandbox_id=${encodeURIComponent(e)}`);if(!n.success)throw new Error(n.error?.message??"Failed to revoke public link")}var Pt=class extends Error{constructor(n,r){super(n);this.status=r;this.name="PublicSessionShareError"}status};function Ic(e,t=""){return`${Ee()}/public/session-shares/${encodeURIComponent(e)}${t}`}async function jc(e){let t=await fetch(e,{method:"GET",headers:{Accept:"application/json"}}),n=await t.text().catch(()=>""),r=null;try{r=n?JSON.parse(n):null}catch{}if(!t.ok){let s=(r&&typeof r=="object"&&"error"in r&&typeof r.error=="string"?r.error:null)||t.statusText||`HTTP ${t.status}`;throw new Pt(s,t.status)}return r}async function Yp(e){return jc(Ic(e))}async function Zp(e){return jc(Ic(e,"/messages"))}async function pa(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return a(await o.get(`/accounts/tokens${t}`))}async function da(e){let{accountId:t,expiresAt:n,projectId:r,name:s}=e;return a(await o.post("/accounts/tokens",{name:s,...t?{account_id:t}:{},...n?{expires_at:n}:{},...r?{project_id:r}:{}}))}async function ga(e,t){let n=t?`?account_id=${encodeURIComponent(t)}`:"";return a(await o.delete(`/accounts/tokens/${e}${n}`))}async function ma(e){return a(await o.get(`/projects/${e}/cli-token`))}async function fa(e,t){return a(await o.post(`/projects/${e}/cli-token`,t??{}))}async function ya(e,t){return a(await o.delete(`/projects/${e}/cli-token/${t}`))}async function ha(e,t){let n=new URLSearchParams;t?.action&&n.set("action",t.action),t?.since&&n.set("since",t.since),t?.cursor&&n.set("cursor",t.cursor),t?.limit!=null&&n.set("limit",String(t.limit));let r=n.toString();return a(await o.get(`/accounts/${e}/audit${r?`?${r}`:""}`))}async function ba(e,t){let n=new URLSearchParams;t?.format&&n.set("format",t.format),t?.action&&n.set("action",t.action),t?.since&&n.set("since",t.since);let r=n.toString();return a(await o.get(`/accounts/${e}/audit/export${r?`?${r}`:""}`))}async function xa(e){return a(await o.get(`/accounts/${e}/audit/webhooks`))}async function ka(e,t){return a(await o.post(`/accounts/${e}/audit/webhooks`,t))}async function Pa(e,t,n){return a(await o.patch(`/accounts/${e}/audit/webhooks/${t}`,n))}async function wa(e,t){return a(await o.delete(`/accounts/${e}/audit/webhooks/${t}`))}async function _a(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 Sa(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 va(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 n=t.toString()?`?${t.toString()}`:"";return a(await o.get(`/marketplace/items${n}`))}async function Ca(){return a(await o.get("/marketplace/marketplaces"))}async function Ra(){return a(await o.get("/marketplace/marketplaces/featured"))}async function Ta(e){return a(await o.get(`/marketplace/items/${encodeURIComponent(e)}`),"Item not found")}async function Ia(e,t){return a(await o.get(`/marketplace/items/${encodeURIComponent(e)}/file?path=${encodeURIComponent(t)}`),"File not found")}async function ja(){return a(await o.get("/marketplace/sources"))}async function Aa(e){return a(await o.post("/marketplace/sources",e),"Failed to add marketplace source")}async function Ea(e){return a(await o.delete(`/marketplace/sources/${encodeURIComponent(e)}`),"Failed to remove marketplace source")}async function ed(e){return a(await o.get(`/templates/${encodeURIComponent(e)}`))}async function td(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 n=(e===void 0?q():e)||null;if(!n)return{status:0,ok:!1,health:null,body:""};let r=await R(`${n}/kortix/health`,{method:"GET",...t},{retryOnAuthError:!1}),s=await r.text().catch(()=>""),c=null;try{c=s?JSON.parse(s):null}catch{c=null}return{status:r.status,ok:r.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 Ac=/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s)"'<>]*/g,Ec=/^https?:\/\/p(\d+)-([^.]+)\.localhost(?::(\d+))?(\/.*)?$/,qc=new Set([22,4096,parseInt(V.KORTIX_MASTER,10)]);function rd(e){return Ec.test(e)}function wt(e){if(!e)return"/";let t=e,n=t.indexOf("](");n!==-1&&(t=t.slice(0,n));let r=t.toLowerCase().indexOf("%5d(");return r!==-1&&(t=t.slice(0,r)),t?t.startsWith("/")?t:`/${t}`:"/"}function sd(e){let t=e.indexOf("](");return t===-1?e:e.slice(0,t)}var id=new Set(["'",'"',"`","<","(","["]),od=new Set([">","'",'"',"`",")","]",",",";",".","!","?"]);function ad(e){let t=0,n=e.length;for(;t<n&&(e[t]===" "||e[t]===" ");)t++;for(;n>t&&(e[n-1]===" "||e[n-1]===" ");)n--;for(;t<n&&id.has(e[t]);)t++;for(;n>t&&od.has(e[n-1]);)n--;return e.slice(t,n)}function cd(e){return e.match(/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s"'<>)]*/i)?.[0]??null}var ld=/^\/proxy\/(\d{1,5})(\/.*)?$/,ud=/^\/(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 $c(e){if(!e)return!1;try{let t=new URL(e);return t.hostname!=="localhost"&&t.hostname!=="127.0.0.1"?!1:ud.test(t.pathname)}catch{return!1}}function Le(e){if(!e)return null;let t=ad(sd(e.trim())),n=Da(t);if(n){let r=wt(n.path||"/");return{originalUrl:`http://localhost:${n.port}${r}`,port:n.port,path:r}}try{let r=new URL(t);if(r.protocol!=="http:"&&r.protocol!=="https:"||r.hostname!=="localhost"&&r.hostname!=="127.0.0.1"||!r.port)return null;let s=parseInt(r.port,10);if(!Number.isInteger(s)||s<1||s>65535)return null;let c=`${r.pathname||"/"}${r.search}${r.hash}`,u=parseInt(V.KORTIX_MASTER,10);if(s===u){let g=r.pathname.match(ld);if(g){let h=parseInt(g[1],10);if(h>=1&&h<=65535)return s=h,c=wt(`${g[2]||"/"}${r.search}${r.hash}`),{originalUrl:`http://localhost:${s}${c}`,port:s,path:c}}}let d=wt(c);return{originalUrl:`${r.protocol}//${r.hostname}:${s}${d}`,port:s,path:d}}catch{let r=cd(e);return r&&r!==e?Le(r):null}}function pd(e){let t=[],n=/```[\s\S]*?```/g,r;for(;(r=n.exec(e))!==null;)t.push([r.index,r.index+r[0].length]);let s=/`[^`\n]+`/g;for(;(r=s.exec(e))!==null;){let c=r.index,u=c+r[0].length;t.some(([g,h])=>c>=g&&u<=h)||t.push([c,u])}return t}function dd(e,t){return t.some(([n,r])=>e>=n&&e<r)}function Dc(e){let t=[],n=new Set,r=pd(e);Ac.lastIndex=0;let s;for(;(s=Ac.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)||n.has(u)||(n.add(u),t.push({originalUrl:u,port:d,path:g,startIndex:s.index,endIndex:s.index+u.length,inCodeBlock:dd(s.index,r)}))}return t}function gd(e){return Dc(e).length>0}function md(e){try{let{hostname:t}=new URL(e);return t==="localhost"||t==="127.0.0.1"}catch{return!1}}function Pe(e,t,n){let r=wt(t);if(!md(n.apiBaseUrl)){let s=n.apiBaseUrl.length;for(;s>0&&n.apiBaseUrl.charCodeAt(s-1)===47;)s--;return`${n.apiBaseUrl.slice(0,s)}/p/${n.sandboxId}/${e}${r}`}return`http://p${e}-${n.sandboxId}.localhost:${n.backendPort}${r}`}function fd(e,t){return Pe(e,"/",t)}function Mc(e){let t=Le(e);return!(!t||qc.has(t.port)||$c(e))}function $a(e,t){if(!e)return e;let n=Le(e);return n?Mc(n.originalUrl)?Pe(n.port,n.path,t):n.originalUrl:e}function yd(e,t="/"){return`http://localhost:${e}${t}`}var Uc=/^https?:\/\/[^/]+\/v1\/p\/([^/]+)\/(\d+)(\/.*)?$/;function Da(e){let t=e.match(Ec);if(t)return{port:parseInt(t[1],10),sandboxId:t[2],backendPort:t[3]?parseInt(t[3],10):80,path:t[4]||"/"};let n=e.match(Uc);if(n)try{let r=new URL(e);return{port:parseInt(n[2],10),sandboxId:n[1],backendPort:parseInt(r.port,10)||(r.protocol==="https:"?443:80),path:n[3]||"/"}}catch{return null}return null}function hd(e){try{let t=Da(e);return t?`http://localhost:${t.port}${t.path}`:null}catch{return null}}function bd(e){return rd(e)||Uc.test(e)}var Oe="/web-proxy/";function xd(e,t){try{let n=new URL(e);if(n.protocol!=="http:"&&n.protocol!=="https:")return null;let r=n.protocol.replace(":",""),s=`${Oe}${r}/${n.host}${n.pathname}${n.search}${n.hash}`,c=parseInt(V.KORTIX_MASTER,10);return`${Pe(c,"/",t).replace(/\/$/,"")}${s}`}catch{return null}}function kd(e){try{let t=new URL(e),n=t.pathname.indexOf(Oe);if(n===-1)return null;let s=t.pathname.slice(n+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 Pd(e){try{return new URL(e).pathname.includes(Oe)}catch{return e.includes(Oe)}}function wd(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 _d(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 Oc="frontend";function _t(e,t,n){(e==="error"?console.error:e==="warn"?console.warn:e==="debug"?console.debug:console.log)(`[${Oc}] ${t}`,...n?[n]:[]);try{X().app.log({service:Oc,level:e,message:t,extra:n})}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 Lc(e){return{type:"heartbeat-gap",gapMs:e}}function Fc(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 Sd={now:()=>Date.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e)},vd=16,Cd=8,Rd=6e4,Td=5e3,Id=250,jd=1e3,Ad=3e4,Ed=5,qd=3e3,$d=3e4,Dd=2e4,Md=2e3,Ud=8;function Od(e){if(e.type==="session.status")return`session.status:${e.properties.sessionID}`;if(e.type==="lsp.updated")return"lsp.updated"}function Gc(e){if(e.aborted)return{promise:Promise.resolve(),cleanup:()=>{}};let t=()=>{};return{promise:new Promise(r=>{t=()=>r(),e.addEventListener("abort",t,{once:!0})}),cleanup:()=>e.removeEventListener("abort",t)}}function St(e){let{client:t,onEvent:n,onGapRehydrate:r,onParked:s,signal:c}=e,u=e.timers??Sd,d=e.connectTimeoutMs??Dd,g=e.heartbeatTimeoutMs??Rd,h=e.maxConsecutiveHardFailures??Ud,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{n(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,vd-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=Gc(m.signal);O.promise.then(()=>M.abort());try{let F=await new Promise((qt,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:$d,sseMaxRetryAttempts:1}).then(W=>{G||(G=!0,u.clearTimeout(S),qt(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(),vl=E[Symbol.asyncIterator]();for(;!M.signal.aborted;){let qt=vl.next().then(J=>({kind:"next",result:J}),J=>({kind:"error",error:J})),Ce=Gc(M.signal),G=await Promise.race([qt,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 $t=Od(Je);if($t){let J=P.get($t);J!==void 0&&(k[J]=void 0),P.set($t,k.length)}k.push({type:Je.type,event:Je}),D(),!(u.now()-ze<Cd)&&(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 rt(),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<Md)?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>Td&&r?.(ve),j?A=0:(A++,A>1&&Z.warn("SSE event stream reconnecting",{retryCount:A}));let H=j?Id:Math.min(jd*2**Math.min(A-1,Ed),Ad);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 Ld(){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 Bc(e,t){Qe(e,t);function n(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 r(l){let i=T().backendUrl??e.backendUrl,P=80,_=n(i);return _&&(P=_.port?Number(_.port):_.protocol==="https:"?443:80),{sandboxId:l,backendPort:P,apiBaseUrl:i}}let s={list:vr,get:Rr,create:Cr,updateName:Tr,leave:Lr,members:Ir,invite:jr,removeMember:Ur,updateMemberRole:Or,invites:Ar,cancelInvite:Er,resendInvite:qr,tokens:{list:pa,create:da,revoke:ga},audit:{log:ha,export:ba,webhooks:{list:xa,create:ka,update:Pa,remove:wa}}},c={accountState:to,accountStateMinimal:no,transactions:ro,transactionsSummary:so,creditBreakdown:io,usageHistory:oo,tierConfigurations:ao,checkout:{createSession:l=>co(l),confirmSession:(l,i)=>lo(l,i)},subscription:{createPortalSession:(l,i)=>uo(l,i),cancel:(l,i)=>po(l,i),reactivate:l=>go(l),scheduleDowngrade:(l,i,P)=>mo(l,i,P),cancelScheduledChange:l=>fo(l),prorationPreview:(l,i)=>yo(l,i)},credits:{purchase:l=>ho(l),autoTopupSettings:l=>bo(l),configureAutoTopup:l=>xo(l)}},u={describe:$r,accept:Dr,decline:Mr},d={list:oe,listForAccount:Gr,get:gt,detail:mt,create:Hr,createRepo:Wr,provision:Vr,update:ht,archive:bt,llmCatalog:ft,modelPicker:yt,sandboxHealth:xt,sandboxTemplates:ei,sessions:be,createSession:xe},g={linkRepository:Qr,getInstallation:Yr,listInstallations:Zr,listRepositories:es,listRepositoryBranches:ts,saveInstallation:ns,deleteInstallation:rs},h={list:ca,create:la,revoke:ua},m=Js,x={items:l=>va(l),item:l=>Ta(l),itemFile:(l,i)=>Ia(l,i),marketplaces:()=>Ca(),featured:()=>Ra(),sources:{list:()=>ja(),add:l=>Aa(l),remove:l=>Ea(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)=>Xr(l,...i),tokens:{list:()=>ma(l),create:i=>fa(l,i),revoke:i=>ya(l,i)},setupLinks:{requestSecret:i=>_a(l,i),requestConnector:i=>Sa(l,i)},validateManifest:i=>Kr(l,i),gitToken:()=>Nr(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),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:()=>Us(l),config:(...i)=>Ks(l,...i),create:(...i)=>Ws(l,...i),remove:(...i)=>Vs(l,...i),sync:()=>Os(l),setName:(...i)=>Ns(l,...i),setCredentialMode:(...i)=>Ls(l,...i),setCredential:(...i)=>Xs(l,...i),setSensitive:(...i)=>Fs(l,...i),profiles:{list:()=>Es(l),reconcile:(...i)=>qs(l,...i),updateCredential:(...i)=>$s(l,...i),revoke:(...i)=>Ds(l,...i),activate:(...i)=>Ms(l,...i)},policies:{get:(...i)=>Gs(l,...i),set:(...i)=>Bs(l,...i)},pipedream:{listApps:(...i)=>zs(l,...i),connect:(...i)=>Hs(l,...i),finalize:(...i)=>Qs(l,...i)}},policies:{list:()=>Ys(l),set:(...i)=>Zs(l,...i)},triggers:{list:()=>Bi(l),create:(...i)=>Ki(l,...i),update:(...i)=>Ni(l,...i),remove:(...i)=>Hi(l,...i),fire:(...i)=>Vi(l,...i),setActivation:(...i)=>Wi(l,...i)},files:{list:i=>li(l,i),read:(i,P)=>pi(l,i,P),search:(...i)=>ui(l,...i),archive:(...i)=>di(l,...i),history:(...i)=>hi(l,...i)},git:{commits:()=>mi(l),commit:i=>fi(l,i),commitDiff:i=>yi(l,i),branches:()=>gi(l),versionDiff:(...i)=>bi(l,...i),inviteCollaborator:(...i)=>Br(l,...i)},changeRequests:{list:()=>xi(l),get:i=>ki(l,i),diff:i=>Pi(l,i),mergePreview:i=>wi(l,i),open:(...i)=>_i(l,...i),merge:(...i)=>Si(l,...i),close:(...i)=>vi(l,...i),reopen:(...i)=>Ci(l,...i),requestChanges:(...i)=>Ri(l,...i)},sessions:{list:()=>be(l),create:i=>xe(l,i)},review:{list:i=>ra(l,i),get:i=>sa(l,i),submit:i=>ia(l,i),act:(...i)=>oa(l,...i),bulkAct:i=>aa(l,i)},approvals:{list:i=>Ps(l,i),resolve:(...i)=>_s(l,...i),sessionsNeedingInput:i=>ws(l,i)},gateway:{logs:i=>Bo(l,i),log:i=>Ko(l,i),overview:i=>No(l,i),series:i=>Ho(l,i),breakdown:i=>Wo(l,i),sessions:i=>Vo(l,i),errors:i=>zo(l,i),budgets:()=>Jo(l),setBudget:i=>Xo(l,i),deleteBudget:i=>Qo(l,i),keys:()=>Yo(l),createKey:i=>Zo(l,i),revokeKey:i=>ea(l,i),routing:{get:()=>Oo(l),set:i=>Lo(l,i),reset:()=>Fo(l),preview:i=>Go(l,i)},playground:(i,P)=>ta(l,i,P)},channels:{slack:{installation:()=>ko(l),connect:i=>Po(l,i),mode:()=>wo(l),manifest:()=>_o(l),disconnect:()=>So(l),getFile:i=>vo(l,i),uploadFile:i=>Co(l,i)},email:{installation:i=>To(l,i),mode:()=>Io(l),connect:i=>jo(l,i),disconnect:i=>Ao(l,i),updatePolicy:(...i)=>Eo(l,...i)},meet:{voices:()=>qo(l),setVoice:i=>$o(l,i),setBotName:i=>Do(l,i),previewVoice:i=>Mo(l,i),speak:(i,P,_)=>Uo(l,i,P,_)}},updateExperimentalFeature:(...i)=>zr(l,...i),modelDefaults:{get:()=>Ji(l),set:i=>Xi(l,i),clear:i=>Qi(l,i)},setDefaultAgent:i=>Zi(l,i),sandbox:{list:()=>ci(l),snapshots:()=>ti(l),rebuildSnapshot:i=>ni(l,i),fixWithAgent:()=>ri(l),createTemplate:i=>si(l,i),updateTemplate:(...i)=>ii(l,...i),removeTemplate:i=>oi(l,i),buildTemplate:i=>ai(l,i),setProvider:i=>Jr(l,i)},setAgentScope:(...i)=>Yi(l,...i),session:i=>k(l,i)}}function k(l,i){let P=null,_,D;function A(){if(P)return P;let f=Cc(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 uc(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,Tc(l,i)}return{get:f=>Ui(l,i,f),update:f=>Fi(l,i,f),delete:()=>(j(),Gi(l,i)),start:(...f)=>ke(l,i,...f),restart:()=>(j(),Me(l,i)),stop:()=>(j(),Ue(l,i)),setSharing:f=>Ei(l,i,f),previews:()=>qi(l,i),commit:f=>Ti(l,i,f),publicShares:{list:()=>$i(l,i),create:(...f)=>Di(l,i,...f),revoke:(...f)=>Mi(l,i,...f)},audit:(f,S)=>Oi(l,i,f,S),transcript:f=>Li(l,i,f),ensureReady:v,health:f=>qa(A()?.runtimeUrl??null,f),previewUrl:(f,S="/")=>Pe(f,S,r(I("previewUrl").sandboxId)),proxyUrl:f=>$a(f,r(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=>mr(f,(await v()).runtimeUrl),read:async f=>ut(f,(await v()).runtimeUrl),readBlob:async f=>pt(f,(await v()).runtimeUrl),status:async()=>fr((await v()).runtimeUrl),findFiles:async(f,S)=>yr(f,S,(await v()).runtimeUrl),findText:async f=>hr(f,(await v()).runtimeUrl),upload:async(f,S,U)=>dt(f,S,U,(await v()).runtimeUrl),create:async f=>br(f,(await v()).runtimeUrl),copy:async(f,S)=>xr(f,S,(await v()).runtimeUrl),remove:async f=>kr(f,(await v()).runtimeUrl),mkdir:async f=>Pr(f,(await v()).runtimeUrl),rename:async(f,S)=>wr(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:Fr,runtime:Ld}}function Kc(){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 r=0;r<16;r++)t[r]=Math.floor(Math.random()*256);t[6]=t[6]&15|64,t[8]=t[8]&63|128;let n=[...t].map(r=>r.toString(16).padStart(2,"0"));return`${n[0]}${n[1]}${n[2]}${n[3]}-${n[4]}${n[5]}-${n[6]}${n[7]}-${n[8]}${n[9]}-${n.slice(10).join("")}`}var Ma={thinking:!1,toolDetails:!0,assistantMetadata:!0};function Fd(e){return e&&e.charAt(0).toUpperCase()+e.slice(1)}function Gd(e){let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let n=Math.floor(t/60),r=t%60;return`${n}m ${r.toFixed(0)}s`}function Bd(e,t){if(e.type==="text"&&!("synthetic"in e&&e.synthetic))return`${e.text}
5
+ `);S=O.pop()??"";for(let ce of O){let We=ce.split(`
6
+ `),Se=[],ve;for(let E of We)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(j){if(t?.(j),u!==void 0&&P>=u)break;let v=Math.min(i*2**(P-1),d??3e4);await w(v)}}}()}};var Ol=e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},Ll=e=>{switch(e){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},Fl=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(Ll(n));switch(n){case"label":return`.${d}`;case"matrix":return`;${r}=${d}`;case"simple":return d;default:return`${r}=${d}`}}let c=Ol(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=Fl(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 Gl=/\{[^{}]+\}/g,Bl=({path:e,url:t})=>{let r=t,n=t.match(Gl);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},Za=({baseUrl:e,path:t,query:r,querySerializer:n,url:s})=>{let c=s.startsWith("/")?s:`/${s}`,u=(e??"")+c;t&&(u=Bl({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 ec=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 tc=({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("&")},rc=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"}},Kl=(e,t)=>t?!!(e.headers.has(t)||e.query?.[t]||e.headers.get("Cookie")?.includes(`${t}=`)):!1,nc=async({security:e,...t})=>{for(let r of e){if(Kl(t,r.name))continue;let n=await ec(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=>Za({baseUrl:e.baseUrl,path:e.path,query:e.query,querySerializer:typeof e.querySerializer=="function"?e.querySerializer:tc(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},Nl=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?Nl(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}},sc=()=>({error:new Re,request:new Re,response:new Re}),Hl=tc({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),Vl={"Content-Type":"application/json"},Te=(e={})=>({...Ot,headers:Vl,parseAs:"auto",querySerializer:Hl,...e});var Ie=(e={})=>{let t=Ft(Te(),e),r=()=>({...t}),n=h=>(t=Ft(t,h),r()),s=sc(),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 nc({...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 A=I;for(let f of s.error.fns)f&&(A=await f(I,void 0,k,m));if(A=A||{},m.throwOnError)throw A;return m.responseStyle==="data"?void 0:{error:A,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"?rc(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 A;switch(I){case"arrayBuffer":case"blob":case"formData":case"text":A=await i[I]();break;case"json":{let f=await i.text();A=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(A),m.responseTransformer&&(A=await m.responseTransformer(A))),m.responseStyle==="data"?A:{data:A,...P}}let _=await i.text(),D;try{D=JSON.parse(_)}catch{}let j=D??_,v=j;for(let I of s.error.fns)I&&(v=await I(j,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 Ya({...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 Wl={$body_:"body",$headers_:"headers",$path_:"path",$query_:"query"},zl=Object.entries(Wl),ic=(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&&ic(r.args,t);return t},Jl=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=ic(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=zl.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 Jl(r),r};var oc=Ie(Te({baseUrl:"http://localhost:4096"}));var y=class{client;constructor(t){this.client=t?.client??oc}},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})}},Vt=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})}},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 Vt({client:this.client})}_session;get session(){return this._session??=new Wt({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})}},Ar=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})}},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}})}},qr=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 Er({client:this.client})}_question;get question(){return this._question??=new qr({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})}},Vr=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})}},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 Ar({client:this.client})}_session;get session(){return this._session??=new $r({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 Vr({client:this.client})}_event;get event(){return this._event??=new Wr({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 cc(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||ac(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 ${ac(r,t)}: ${s}`,{cause:{body:e,status:t?.status}})}function ac(e,t){let r=e?.method??"?",n=e?.url??"?",s=t?.status,c=t?.statusText;return`${r} ${n}${s?" \u2192 "+s:""}${c?" "+c:""}`}function Xl(e,t,r){if(e)return t&&(e===t||r&&e===r(t))?t:e}function Ql(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=Xl(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=>Ql(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(cc),new rt({client:t})}function Yl(e){return new Promise(t=>setTimeout(t,e))}async function lc(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 Yl(s)),u=await e(),u)return u;return u}var Zl=3e4;function eu(e){return(e instanceof Request?e.url:String(e)).includes("/global/event")}function uc(e,t,r=Zl){let n=e instanceof Request?e.signal:t?.signal;if(eu(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 pc(){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 lc(()=>T().getToken(),e,Ae)}function Ae(){}function tu(e){}function ru(e){}async function je(){return nt()}async function rn(e){return ue(e)}function dc(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 pc();let c=tn(e,t,s),u=uc(e,t),d=await dc(e,t,c,u);if(d.status===401&&n&&s){Ae();let g=await rn({attempts:2,baseDelayMs:200});if(g&&g!==s){let h=tn(e,t,g);return dc(e,t,h,u)}}return d}var pe={url:null,sandboxId:null,dbSandboxId:null,version:0},nu=new Set;function gc(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 nu)n()}}function mc(){return pe.url}function su(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function Ee(){return su(T().backendUrl||"http://localhost:8008/v1")}function fc(){let e=T().sandboxId||"";return`${Ee()}/p/${e}/8000`}function iu(e){return`${Ee()}/p/${e}/8000`}function st(e){return iu(e)}function q(){let e=mc();return e||(T().billingEnabled??!1?"":fc())}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 yc(e){return e instanceof re}function hc(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 bc={list:on,set:an,delete:cn};async function xc(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 qe(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=qe(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=qe(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=qe(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=qe(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=qe(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 je();if(!c)return s;let u=s.includes("?")?"&":"?";return`${s}${u}token=${encodeURIComponent(c)}`}var kc={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 ou(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 au(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`)}async function cu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/events`)}async function lu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/status`)}async function uu(e,t){return b(e,"/kortix/tasks",{method:"POST",body:JSON.stringify(t)})}async function pu(e,t,r){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(r)})}async function du(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/start`,{method:"POST"})}async function gu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}/approve`,{method:"POST"})}async function mu(e,t){return b(e,`/kortix/tasks/${encodeURIComponent(t)}`,{method:"DELETE"})}async function fu(e,t){let r=t?`?project_id=${encodeURIComponent(t)}`:"";return b(e,`/kortix/tickets${r}`)}async function yu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`)}async function hu(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/events`)}async function bu(e,t){return b(e,"/kortix/tickets",{method:"POST",body:JSON.stringify(t)})}async function xu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(r)})}async function ku(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/status`,{method:"POST",body:JSON.stringify(r)})}async function Pu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/assign`,{method:"POST",body:JSON.stringify(r)})}async function wu(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/unassign`,{method:"POST",body:JSON.stringify(r)})}async function _u(e,t,r){return b(e,`/kortix/tickets/${encodeURIComponent(t)}/comments`,{method:"POST",body:JSON.stringify(r)})}async function Su(e,t){return b(e,`/kortix/tickets/${encodeURIComponent(t)}`,{method:"DELETE"})}async function vu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/columns`)}async function Cu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/columns`,{method:"PUT",body:JSON.stringify({columns:r})})}async function Ru(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/fields`)}async function Tu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/fields`,{method:"PUT",body:JSON.stringify({fields:r})})}async function Iu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/templates`)}async function Au(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/templates`,{method:"PUT",body:JSON.stringify({templates:r})})}async function ju(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/pm-session`,{method:"POST"})}async function Eu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents`)}async function qu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents`,{method:"POST",body:JSON.stringify(r)})}async function $u(e,t,r,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(r)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Du(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(r)}`,{method:"DELETE"})}async function Mu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(r)}/persona`)}async function Uu(e,t,r=200){return b(e,`/kortix/projects/${encodeURIComponent(t)}/activity?limit=${r}`)}async function Ou(e){return b(e,"/kortix/projects")}async function Lu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}`)}async function Fu(e,t){return b(e,`/kortix/projects/by-session/${encodeURIComponent(t)}`)}async function Gu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/sessions`)}async function Bu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}`,{method:"DELETE"})}async function Ku(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Nu(e,t,r="all"){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones?status=${r}`)}async function Hu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}`)}async function Vu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}/events`)}async function Wu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones`,{method:"POST",body:JSON.stringify(r)})}async function zu(e,t,r,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Ju(e,t,r,n){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}/close`,{method:"POST",body:JSON.stringify(n)})}async function Xu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}/reopen`,{method:"POST"})}async function Qu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(r)}`,{method:"DELETE"})}async function Yu(e,t){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials`)}async function Zu(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(r)}/events`)}async function ep(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials`,{method:"POST",body:JSON.stringify(r)})}async function tp(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(r)}`)}async function rp(e,t,r){return b(e,`/kortix/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(r)}`,{method:"DELETE"})}var np=1e4,sp={retryOnAuthError:!1};function fe(e,t,r){return b(e,t,{signal:AbortSignal.timeout(np),...r},sp)}async function ip(e,t=!1){return(await fe(e,`/kortix/services${t?"?all=true":""}`)).services??[]}async function op(e){return(await fe(e,"/kortix/services/templates")).templates??[]}async function ap(e,t){return(await fe(e,`/kortix/services/${encodeURIComponent(t)}/logs`)).logs??[]}async function cp(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 lp(e,t){return fe(e,`/kortix/services/reconcile${t?"?reload=true":""}`,{method:"POST"})}async function up(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=q();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 pp(e){ot.delete(e)}function dp(){ot.clear()}var ct=new Map;function gp(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 mp(e){ct.delete(e)}function fp(){ct.clear()}async function yp(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 hp(e){let t=q();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 yp(r)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});return r.json()}function wc(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=q()){let r=await R(`${t}${e}`);if(!r.ok)throw new C(await ye(r),{status:r.status,response:r});return r.json()}var _c=["/workspace","/tmp","/home","/opt"],bp=_c.filter(e=>e!=="/workspace");function xp(e){return _c.some(t=>e===t||e.startsWith(`${t}/`))}function kp(e){return xp(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(bp.some(r=>t===r||t.startsWith(`${r}/`)))return t;for(;t.startsWith("/");)t=t.slice(1);return t}var Pp=De;async function mn(e,t=q()){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=q()){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 wp(e,t,r=q()){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=q()){try{return await wp(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=q()){return lt("/file/status",e)}async function yn(e,t,r=q()){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=q()){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 $e=[400,1200],_p=e=>e===408||e===429||e===502||e===503||e===504,Pc=e=>new Promise(t=>setTimeout(t,e));async function Sp(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 Sc(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 Pc($e[s]);continue}if(c.ok)return c.json();let u=await Sp(c);if(r=new C(`Upload failed (${c.status}): ${u}`,{status:c.status,response:c}),!_p(c.status)||s===$e.length)throw r;await Pc($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 dt(e,t,r,n=q()){return Sc(()=>{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 vp(e,t,r=q()){return Sc(()=>{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 bn(e,t=q()){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=q()){return vp(t,await pt(e,r),r)}async function kn(e,t=q()){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=q()){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=q()){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 Cp(){return wc(await X().project.current())}async function vc(){return wc(await X().global.health())}async function Rp(){try{return(await vc()).healthy===!0}catch{return!1}}var Cc={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:Cp,health:vc,isReachable:Rp,toDaemonPath:De,toSandboxAbsolutePath:kp,toWorkspaceRelative:Pp};var Q=()=>T().backendUrl||"",Ip=e=>new Promise(t=>setTimeout(t,e)),Ap=new Set([502,503,504]),Rc=e=>Ap.has(e),jp=e=>{let t=(e??"GET").toUpperCase();return t==="GET"||t==="HEAD"},Ep=2,_n=!1;function qp(e){_n=e}function $p(){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&&jp(c.method)&&Rc(k.status))for(let P=0;P<Ep;P++){try{await k.arrayBuffer()}catch{}await Ip(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||!Rc(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 Dp={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 An(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 En(e,t){return a(await o.delete(`/accounts/${e}/invites/${t}`))}async function qn(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 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 Mp(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 Up(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 Op(e,t){return a(await o.get(`/projects/${e}/llm-catalog/providers`,{showErrors:!1,...t}))}async function Hn(e){return a(await o.post("/projects",e))}async function Vn(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 Lp(){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 Fp(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 Gp(e,t){return he(e,`/v1/projects?account_id=${encodeURIComponent(t)}`)}async function Bp(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 Kp(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 Np(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 As(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 Es(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 $s(e,t,r){return a(await o.put(`/projects/${e}/connector-profiles/${t}/credential`,r))}async function Ds(e,t){return a(await o.put(`/projects/${e}/connector-profiles/${t}/revoke`,{}))}async function Ms(e,t){return a(await o.put(`/projects/${e}/connector-profiles/${t}/activate`,{}))}async function Us(e){return a(await o.get(`/executor/projects/${e}/connectors`,{showErrors:!1}))}async function Os(e){return a(await o.post(`/executor/projects/${e}/connectors/sync`,{}))}async function Ls(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/credential-mode`,{mode:r}))}async function Fs(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/sensitive`,{sensitive:r}))}async function Gs(e,t){return a(await o.get(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/policies`))}async function Bs(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/policies`,{policies:r}))}async function Ks(e,t){return a(await o.get(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/config`))}async function Ns(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/name`,{name:r}))}async function Hs(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 Ws(e,t){return a(await o.post(`/executor/projects/${e}/connectors/auth-discovery`,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(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}/discover/integrations${s?`?${s}`:""}`))}async function Qs(e,t){let r=new URLSearchParams({id:t});return a(await o.get(`/executor/projects/${e}/discover/integrations/detail?${r.toString()}`))}async function Ys(){return a(await o.get("/executor/connect-status"))}async function Zs(e,t,r){return a(await o.put(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/credential`,{value:r}))}async function ei(e,t){return a(await o.post(`/executor/projects/${e}/connectors/${encodeURIComponent(t)}/connect/finalize`,{}))}async function ti(e){return a(await o.get(`/executor/projects/${e}/policies`))}async function ri(e,t,r){return a(await o.put(`/executor/projects/${e}/policies`,{policies:t,defaultMode:r}))}async function ni(e){return a(await o.get(`/projects/${e}/sandboxes`))}async function si(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 ii(e,t){return a(await o.post(`/projects/${e}/snapshots/rebuild`,t?{slug:t}:{}))}async function oi(e){return a(await o.post(`/projects/${e}/snapshots/fix-with-agent`,{}))}async function ai(e,t){return a(await o.post(`/projects/${e}/sandbox-templates`,t))}async function ci(e,t,r){return a(await o.patch(`/projects/${e}/sandbox-templates/${t}`,r))}async function li(e,t){return a(await o.delete(`/projects/${e}/sandbox-templates/${t}`))}async function ui(e,t){return a(await o.post(`/projects/${e}/sandbox-templates/${t}/build`,{}))}async function pi(e){return a(await o.get(`/projects/${e}/sandboxes`))}async function di(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 gi(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 mi(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 fi(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 yi(e){return a(await o.get(`/projects/${e}/branches`))}async function hi(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 bi(e,t){return a(await o.get(`/projects/${e}/commits/${encodeURIComponent(t)}`))}async function xi(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 ki(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 Pi(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 wi(e,t){let r=t?`?status=${t}`:"";return a(await o.get(`/projects/${e}/change-requests${r}`,{showErrors:!1,timeout:15e3}))}async function _i(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}`))}async function Si(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}/diff`))}async function vi(e,t){return a(await o.get(`/projects/${e}/change-requests/${t}/merge-preview`))}async function Ci(e,t){return a(await o.post(`/projects/${e}/change-requests`,t))}async function Ri(e,t,r){return a(await o.post(`/projects/${e}/change-requests/${t}/merge`,r??{},{showErrors:!1}))}async function Ti(e,t){return a(await o.post(`/projects/${e}/change-requests/${t}/close`,{}))}async function Ii(e,t){return a(await o.post(`/projects/${e}/change-requests/${t}/reopen`,{}))}async function Ai(e,t,r){return a(await o.post(`/projects/${e}/change-requests/${t}/request-changes`,{feedback:r}))}async function ji(e,t,r){return a(await o.post(`/projects/${e}/sessions/${t}/commit-push`,r??{}))}var Ei=new Set;function qi(e){e&&Ei.add(e)}function $i(e){return!!e&&Ei.has(e)}function Hp(e){e&&Ei.delete(e)}async function be(e){return a(await o.get(`/projects/${e}/sessions`))}async function Di(e,t,r){return a(await o.put(`/projects/${e}/sessions/${t}/sharing`,r))}async function Mi(e,t){return a(await o.get(`/projects/${e}/sessions/${t}/previews`))}async function Ui(e,t){return a(await o.get(`/projects/${e}/sessions/${t}/public-shares`,{showErrors:!1}))}async function Oi(e,t,r){return a(await o.post(`/projects/${e}/sessions/${t}/public-shares`,r))}async function Li(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||qi(r?.session_id),r}async function Fi(e,t,r){return a(await o.get(`/projects/${e}/sessions/${t}`,{showErrors:r?.showErrors}))}async function Gi(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 Bi(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 Ki(e,t,r){return a(await o.patch(`/projects/${e}/sessions/${t}`,r))}async function Ni(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 Hi(e){return a(await o.get(`/projects/${e}/triggers`))}async function Vi(e,t){return a(await o.post(`/projects/${e}/triggers`,t))}async function Wi(e,t,r){return a(await o.patch(`/projects/${e}/triggers/${t}`,r))}async function zi(e,t){return a(await o.delete(`/projects/${e}/triggers/${t}`))}async function Ji(e,t){return a(await o.patch(`/projects/${e}/triggers/activation`,{paused:t}))}async function Xi(e,t){return a(await o.post(`/projects/${e}/triggers/${t}/fire`,{}))}var Y=new Map;function Qi(e,t){return`${e}::${t}`}function Tc(e,t){Y.delete(e),Y.set(e,t)}function Ic(e,t){let r=Qi(e,t),n=Y.get(r);return n&&Tc(r,n),n}function Ac(e,t,r){let n=Qi(e,t);if(!Y.has(n)&&Y.size>=512){let s=Y.keys().next().value;s!==void 0&&Y.delete(s)}Tc(n,r)}function jc(e,t){Y.delete(Qi(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 Vp(e){return e instanceof Error&&e.name==="SessionStartError"}function Wp(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=Wp(s.error);if(d&&!(d.status===404&&$i(t)))throw d;return null}let c=s.data,u=c.sandbox?.external_id;return c.stage==="ready"&&u&&c.opencode_session_id&&Ac(e,t,{opencodeSessionId:c.opencode_session_id,runtimeUrl:st(u),sandboxId:u}),c}function zp(e,t){return["session-start",e,t]}async function Yi(e){return a(await o.get(`/projects/${e}/model-defaults`))}async function Zi(e,t){return a(await o.put(`/projects/${e}/model-defaults`,t))}async function eo(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 to(e,t,r){return a(await o.put(`/projects/${e}/agents/${encodeURIComponent(t)}/scope`,r))}async function Jp(e,t){return a(await o.get(`/projects/${e}/agents/${encodeURIComponent(t)}/config`))}async function Xp(e,t,r){return a(await o.put(`/projects/${e}/agents/${encodeURIComponent(t)}/config`,r))}async function ro(e,t){return a(await o.put(`/projects/${e}/default-agent`,{agent:t}))}function no(){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 so(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?no():s.data}async function io(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?no():s.data}async function oo(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 ao(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 co(){return a(await o.get("/billing/credit-breakdown"))}async function lo(e){let t=e!=null?`?days=${e}`:"";return a(await o.get(`/billing/usage-history${t}`))}async function uo(){return a(await o.get("/billing/tier-configurations"))}async function Qp(e){let t=e.accountId?`?account_id=${encodeURIComponent(e.accountId)}`:"";return he(e,`/v1/billing/account-state${t}`)}async function po(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 go(e,t){return a(await o.post("/billing/confirm-checkout-session",{account_id:t,session_id:e}),"Failed to confirm checkout session")}async function mo(e,t){return a(await o.post("/billing/create-portal-session",{account_id:t,return_url:e}),"Failed to create portal session")}async function fo(e,t){return a(await o.post("/billing/cancel-subscription",{account_id:t,feedback:e}),"Failed to cancel subscription")}async function yo(e){return a(await o.post("/billing/reactivate-subscription",{account_id:e}),"Failed to reactivate subscription")}async function ho(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 bo(e){return a(await o.post("/billing/cancel-scheduled-change",{account_id:e}),"Failed to cancel scheduled change")}async function xo(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 ko(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 Po(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 wo(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 _o(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/slack/installation`,{showErrors:!1});return t.success?t.data??null:null}async function So(e,t){return a(await o.post(`/projects/${encodeURIComponent(e)}/channels/slack/connect`,t,{showErrors:!1}),"Failed to connect")}var Yp={oauth_available:!1,install_url:null};async function vo(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/slack/mode`,{showErrors:!1});return!t.success||!t.data?Yp:t.data}async function Co(e){return a(await o.get(`/webhooks/slack/${encodeURIComponent(e)}/manifest`,{showErrors:!1}),"Failed to load Slack manifest")}async function Ro(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 To(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 Io(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 Ao(e){return{...e,profileId:e.profileId??e.profile_id??null}}var Zp={provider:"agentmail",managed_available:!1};async function jo(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?Ao(n.data):null}async function Eo(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/email/mode`,{showErrors:!1});return!t.success||!t.data?Zp:t.data}async function qo(e,t){let r=a(await o.post(`/projects/${encodeURIComponent(e)}/channels/email/connect`,t,{showErrors:!1}),"Failed to connect email");return Ao(r)}async function $o(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 Do(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 Ao(n)}async function Mo(e){let t=await o.get(`/projects/${encodeURIComponent(e)}/channels/meet/voices`,{showErrors:!1});return t.success?t.data??null:null}async function Uo(e,t){return a(await o.put(`/projects/${encodeURIComponent(e)}/channels/meet/voice`,{voice:t},{showErrors:!1}),"Failed to save voice")}async function Oo(e,t){return a(await o.put(`/projects/${encodeURIComponent(e)}/channels/meet/name`,{name:t},{showErrors:!1}),"Failed to save name")}async function Lo(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 ed(e){return a(await o.get(`/projects/${encodeURIComponent(e)}/channels/bindings`,{showErrors:!1}),"Failed to load channel bindings")}async function td(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 Fo(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 Go(e){return a(await o.get(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Bo(e,t){return a(await o.put(`/projects/${e}/gateway/routing-policy`,t),"Gateway routing policy request failed")}async function Ko(e){return a(await o.delete(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function No(e,t){return a(await o.post(`/projects/${e}/gateway/routing-policy/preview`,t),"Gateway route preview failed")}async function Ho(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 Vo(e,t){return a(await o.get(`/projects/${e}/gateway/logs/${t}`),"Gateway request failed")}async function Wo(e,t){return a(await o.get(`/projects/${e}/gateway/overview${t?`?days=${t}`:""}`),"Gateway request failed")}async function zo(e,t){return a(await o.get(`/projects/${e}/gateway/series${t?`?days=${t}`:""}`),"Gateway request failed")}async function Jo(e,t){return a(await o.get(`/projects/${e}/gateway/breakdown${t?`?days=${t}`:""}`),"Gateway request failed")}async function Xo(e,t){return a(await o.get(`/projects/${e}/gateway/sessions${t?`?days=${t}`:""}`),"Gateway request failed")}async function Qo(e,t){return a(await o.get(`/projects/${e}/gateway/errors${t?`?days=${t}`:""}`),"Gateway request failed")}async function Yo(e){return a(await o.get(`/projects/${e}/gateway/budgets`),"Gateway request failed")}async function Zo(e,t){return a(await o.put(`/projects/${e}/gateway/budgets`,t),"Gateway request failed")}async function ea(e,t){return a(await o.delete(`/projects/${e}/gateway/budgets/${t}`),"Gateway request failed")}async function ta(e){return a(await o.get(`/projects/${e}/gateway/keys`),"Gateway request failed")}async function ra(e,t){return a(await o.post(`/projects/${e}/gateway/keys`,{name:t}),"Gateway request failed")}async function na(e,t){return a(await o.delete(`/projects/${e}/gateway/keys/${t}`),"Gateway request failed")}async function sa(e,t,r,n,s){return a(await o.post(`/projects/${e}/gateway/playground`,{prompt:t,models:r,...n?{system:n}:{},...s&&Object.keys(s).length?{generationConfig:s}:{}}),"Gateway request failed")}async function rd(e,t){return a(await o.post(`/projects/${e}/gateway/providers/${encodeURIComponent(t)}/verify`,{}),"Gateway provider verification failed")}async function ia(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 oa(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 aa(e,t){return a(await o.get(`/projects/${e}/review/items/${t}`))}async function ca(e,t){return a(await o.post(`/projects/${e}/review/items`,t))}async function la(e,t,r){return a(await o.post(`/projects/${e}/review/items/${t}/act`,r))}async function ua(e,t){return a(await o.post(`/projects/${e}/review/bulk`,t))}async function pa(e){return a(await o.get(`/p/share?sandbox_id=${encodeURIComponent(e)}`),"Failed to load public links").shares??[]}async function da(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 ga(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 Ec(e,t=""){return`${Ee()}/public/session-shares/${encodeURIComponent(e)}${t}`}async function qc(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 nd(e){return qc(Ec(e))}async function sd(e){return qc(Ec(e,"/messages"))}async function ma(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return a(await o.get(`/accounts/tokens${t}`))}async function fa(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 ya(e,t){let r=t?`?account_id=${encodeURIComponent(t)}`:"";return a(await o.delete(`/accounts/tokens/${e}${r}`))}async function ha(e){return a(await o.get(`/projects/${e}/cli-token`))}async function ba(e,t){return a(await o.post(`/projects/${e}/cli-token`,t??{}))}async function xa(e,t){return a(await o.delete(`/projects/${e}/cli-token/${t}`))}async function ka(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 Pa(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 wa(e){return a(await o.get(`/accounts/${e}/audit/webhooks`))}async function _a(e,t){return a(await o.post(`/accounts/${e}/audit/webhooks`,t))}async function Sa(e,t,r){return a(await o.patch(`/accounts/${e}/audit/webhooks/${t}`,r))}async function va(e,t){return a(await o.delete(`/accounts/${e}/audit/webhooks/${t}`))}async function Ca(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 Ra(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 Ta(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 Ia(){return a(await o.get("/marketplace/marketplaces"))}async function Aa(){return a(await o.get("/marketplace/marketplaces/featured"))}async function ja(e){return a(await o.get(`/marketplace/items/${encodeURIComponent(e)}`),"Item not found")}async function Ea(e,t){return a(await o.get(`/marketplace/items/${encodeURIComponent(e)}/file?path=${encodeURIComponent(t)}`),"File not found")}async function qa(){return a(await o.get("/marketplace/sources"))}async function $a(e){return a(await o.post("/marketplace/sources",e),"Failed to add marketplace source")}async function Da(e){return a(await o.delete(`/marketplace/sources/${encodeURIComponent(e)}`),"Failed to remove marketplace source")}async function id(e){return a(await o.get(`/templates/${encodeURIComponent(e)}`))}async function od(e,t){return a(await o.post(`/templates/${encodeURIComponent(e)}/install`,t))}function ad(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 Ma(e,t){let r=(e===void 0?q():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 W={DESKTOP:"6080",DESKTOP_HTTPS:"6081",PRESENTATION_VIEWER:"3210",STATIC_FILE_SERVER:"3211",KORTIX_MASTER:"8000",BROWSER_STREAM:"9223",BROWSER_VIEWER:"9224",SSH:"22"};var $c=/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s)"'<>]*/g,Dc=/^https?:\/\/p(\d+)-([^.]+)\.localhost(?::(\d+))?(\/.*)?$/,Mc=new Set([22,4096,parseInt(W.KORTIX_MASTER,10)]);function cd(e){return Dc.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 ld(e){let t=e.indexOf("](");return t===-1?e:e.slice(0,t)}var ud=new Set(["'",'"',"`","<","(","["]),pd=new Set([">","'",'"',"`",")","]",",",";",".","!","?"]);function dd(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&&ud.has(e[t]);)t++;for(;r>t&&pd.has(e[r-1]);)r--;return e.slice(t,r)}function gd(e){return e.match(/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s"'<>)]*/i)?.[0]??null}var md=/^\/proxy\/(\d{1,5})(\/.*)?$/,fd=/^\/(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 Uc(e){if(!e)return!1;try{let t=new URL(e);return t.hostname!=="localhost"&&t.hostname!=="127.0.0.1"?!1:fd.test(t.pathname)}catch{return!1}}function Le(e){if(!e)return null;let t=dd(ld(e.trim())),r=Oa(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(W.KORTIX_MASTER,10);if(s===u){let g=n.pathname.match(md);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=gd(e);return n&&n!==e?Le(n):null}}function yd(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 hd(e,t){return t.some(([r,n])=>e>=r&&e<n)}function Oc(e){let t=[],r=new Set,n=yd(e);$c.lastIndex=0;let s;for(;(s=$c.exec(e))!==null;){let c=Le(s[0]);if(!c)continue;let{originalUrl:u,port:d,path:g}=c;d<1||d>65535||Mc.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:hd(s.index,n)}))}return t}function bd(e){return Oc(e).length>0}function xd(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(!xd(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 kd(e,t){return Pe(e,"/",t)}function Lc(e){let t=Le(e);return!(!t||Mc.has(t.port)||Uc(e))}function Ua(e,t){if(!e)return e;let r=Le(e);return r?Lc(r.originalUrl)?Pe(r.port,r.path,t):r.originalUrl:e}function Pd(e,t="/"){return`http://localhost:${e}${t}`}var Fc=/^https?:\/\/[^/]+\/v1\/p\/([^/]+)\/(\d+)(\/.*)?$/;function Oa(e){let t=e.match(Dc);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(Fc);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 wd(e){try{let t=Oa(e);return t?`http://localhost:${t.port}${t.path}`:null}catch{return null}}function _d(e){return cd(e)||Fc.test(e)}var Oe="/web-proxy/";function Sd(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(W.KORTIX_MASTER,10);return`${Pe(c,"/",t).replace(/\/$/,"")}${s}`}catch{return null}}function vd(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 Cd(e){try{return new URL(e).pathname.includes(Oe)}catch{return e.includes(Oe)}}function Rd(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 Td(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 Gc="frontend";function _t(e,t,r){(e==="error"?console.error:e==="warn"?console.warn:e==="debug"?console.debug:console.log)(`[${Gc}] ${t}`,...r?[r]:[]);try{X().app.log({service:Gc,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 Bc(e){return{type:"heartbeat-gap",gapMs:e}}function Kc(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 Id={now:()=>Date.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e)},Ad=16,jd=8,Ed=6e4,qd=5e3,$d=250,Dd=1e3,Md=3e4,Ud=5,Od=3e3,Ld=3e4,Fd=2e4,Gd=2e3,Bd=8;function Kd(e){if(e.type==="session.status")return`session.status:${e.properties.sessionID}`;if(e.type==="lsp.updated")return"lsp.updated"}function Nc(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??Id,d=e.connectTimeoutMs??Fd,g=e.heartbeatTimeoutMs??Ed,h=e.maxConsecutiveHardFailures??Bd,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 j=k;k=[],P.clear(),i=u.now(),w=u.now();for(let v of j)if(v)try{r(v.event)}catch(I){console.warn("[opencode-events] event handler threw, skipping",I)}},D=()=>{if(l)return;let j=u.now()-i;l=u.setTimeout(_,Math.max(0,Ad-j))};return(async()=>{let j=0,v=0;for(;!m.signal.aborted;){let I=!1,A=!1,f,S,U=null,N=u.now(),M=new AbortController,O=Nc(m.signal);O.promise.then(()=>M.abort());try{let F=await new Promise((qt,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:Od,sseMaxRetryDelay:Ld,sseMaxRetryAttempts:1}).then(V=>{G||(G=!0,u.clearTimeout(S),qt(V))},V=>{G||(G=!0,u.clearTimeout(S),Ce(V))})}),{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(),Tl=E[Symbol.asyncIterator]();for(;!M.signal.aborted;){let qt=Tl.next().then(J=>({kind:"next",result:J}),J=>({kind:"error",error:J})),Ce=Nc(M.signal),G=await Promise.race([qt,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 V=G.result.value,Je=V&&typeof V=="object"&&"payload"in V?V.payload:V;if(!Je?.type)continue;let $t=Kd(Je);if($t){let J=P.get($t);J!==void 0&&(k[J]=void 0),P.set($t,k.length)}k.push({type:Je.type,event:Je}),D(),!(u.now()-ze<jd)&&(ze=u.now(),await new Promise(J=>u.setTimeout(J,0)))}A=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:j,isAuthError:B}),B)try{Ae(),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,We=U?.cause?.status;if(v=!I&&(typeof We=="number"&&We>=400||ce<Gd)?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>qd&&n?.(ve),A?j=0:(j++,j>1&&Z.warn("SSE event stream reconnecting",{retryCount:j}));let H=A?$d:Math.min(Dd*2**Math.min(j-1,Ud),Md);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 Nd(){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 Hc(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:An,removeMember:Un,updateMemberRole:On,invites:jn,cancelInvite:En,resendInvite:qn,tokens:{list:ma,create:fa,revoke:ya},audit:{log:ka,export:Pa,webhooks:{list:wa,create:_a,update:Sa,remove:va}}},c={accountState:so,accountStateMinimal:io,transactions:oo,transactionsSummary:ao,creditBreakdown:co,usageHistory:lo,tierConfigurations:uo,checkout:{createSession:l=>po(l),confirmSession:(l,i)=>go(l,i)},subscription:{createPortalSession:(l,i)=>mo(l,i),cancel:(l,i)=>fo(l,i),reactivate:l=>yo(l),scheduleDowngrade:(l,i,P)=>ho(l,i,P),cancelScheduledChange:l=>bo(l),prorationPreview:(l,i)=>xo(l,i)},credits:{purchase:l=>ko(l),autoTopupSettings:l=>Po(l),configureAutoTopup:l=>wo(l)}},u={describe:$n,accept:Dn,decline:Mn},d={list:oe,listForAccount:Gn,get:gt,detail:mt,create:Hn,createRepo:Vn,provision:Wn,update:ht,archive:bt,llmCatalog:ft,modelPicker:yt,sandboxHealth:xt,sandboxTemplates:ni,sessions:be,createSession:xe},g={linkRepository:Qn,getInstallation:Yn,listInstallations:Zn,listRepositories:es,listRepositoryBranches:ts,saveInstallation:rs,deleteInstallation:ns},h={list:pa,create:da,revoke:ga},m=Ys,x={items:l=>Ta(l),item:l=>ja(l),itemFile:(l,i)=>Ea(l,i),marketplaces:()=>Ia(),featured:()=>Aa(),sources:{list:()=>qa(),add:l=>$a(l),remove:l=>Da(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:()=>ha(l),create:i=>ba(l,i),revoke:i=>xa(l,i)},setupLinks:{requestSecret:i=>Ca(l,i),requestConnector:i=>Ra(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)=>As(l,...i),removePersonal:i=>js(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:()=>Us(l),config:(...i)=>Ks(l,...i),create:(...i)=>Vs(l,...i),remove:(...i)=>zs(l,...i),sync:()=>Os(l),auth:{discover:(...i)=>Ws(l,...i)},setName:(...i)=>Ns(l,...i),setCredentialMode:(...i)=>Ls(l,...i),setCredential:(...i)=>Zs(l,...i),setSensitive:(...i)=>Fs(l,...i),profiles:{list:()=>Es(l),reconcile:(...i)=>qs(l,...i),updateCredential:(...i)=>$s(l,...i),revoke:(...i)=>Ds(l,...i),activate:(...i)=>Ms(l,...i)},policies:{get:(...i)=>Gs(l,...i),set:(...i)=>Bs(l,...i)},pipedream:{listApps:(...i)=>Js(l,...i),connect:(...i)=>Hs(l,...i),finalize:(...i)=>ei(l,...i)},discover:{list:(...i)=>Xs(l,...i),detail:(...i)=>Qs(l,...i)}},policies:{list:()=>ti(l),set:(...i)=>ri(l,...i)},triggers:{list:()=>Hi(l),create:(...i)=>Vi(l,...i),update:(...i)=>Wi(l,...i),remove:(...i)=>zi(l,...i),fire:(...i)=>Xi(l,...i),setActivation:(...i)=>Ji(l,...i)},files:{list:i=>di(l,i),read:(i,P)=>mi(l,i,P),search:(...i)=>gi(l,...i),archive:(...i)=>fi(l,...i),history:(...i)=>ki(l,...i)},git:{commits:()=>hi(l),commit:i=>bi(l,i),commitDiff:i=>xi(l,i),branches:()=>yi(l),versionDiff:(...i)=>Pi(l,...i),inviteCollaborator:(...i)=>Bn(l,...i)},changeRequests:{list:()=>wi(l),get:i=>_i(l,i),diff:i=>Si(l,i),mergePreview:i=>vi(l,i),open:(...i)=>Ci(l,...i),merge:(...i)=>Ri(l,...i),close:(...i)=>Ti(l,...i),reopen:(...i)=>Ii(l,...i),requestChanges:(...i)=>Ai(l,...i)},sessions:{list:()=>be(l),create:i=>xe(l,i)},review:{list:i=>oa(l,i),get:i=>aa(l,i),submit:i=>ca(l,i),act:(...i)=>la(l,...i),bulkAct:i=>ua(l,i)},approvals:{list:i=>Ps(l,i),resolve:(...i)=>_s(l,...i),sessionsNeedingInput:i=>ws(l,i)},gateway:{logs:i=>Ho(l,i),log:i=>Vo(l,i),overview:i=>Wo(l,i),series:i=>zo(l,i),breakdown:i=>Jo(l,i),sessions:i=>Xo(l,i),errors:i=>Qo(l,i),budgets:()=>Yo(l),setBudget:i=>Zo(l,i),deleteBudget:i=>ea(l,i),keys:()=>ta(l),createKey:i=>ra(l,i),revokeKey:i=>na(l,i),routing:{get:()=>Go(l),set:i=>Bo(l,i),reset:()=>Ko(l),preview:i=>No(l,i)},playground:(i,P,_)=>sa(l,i,P,_)},channels:{slack:{installation:()=>_o(l),connect:i=>So(l,i),mode:()=>vo(l),manifest:()=>Co(l),disconnect:()=>Ro(l),getFile:i=>To(l,i),uploadFile:i=>Io(l,i)},email:{installation:i=>jo(l,i),mode:()=>Eo(l),connect:i=>qo(l,i),disconnect:i=>$o(l,i),updatePolicy:(...i)=>Do(l,...i)},meet:{voices:()=>Mo(l),setVoice:i=>Uo(l,i),setBotName:i=>Oo(l,i),previewVoice:i=>Lo(l,i),speak:(i,P,_)=>Fo(l,i,P,_)}},updateExperimentalFeature:(...i)=>zn(l,...i),modelDefaults:{get:()=>Yi(l),set:i=>Zi(l,i),clear:i=>eo(l,i)},setDefaultAgent:i=>ro(l,i),sandbox:{list:()=>pi(l),snapshots:()=>si(l),rebuildSnapshot:i=>ii(l,i),fixWithAgent:()=>oi(l),createTemplate:i=>ai(l,i),updateTemplate:(...i)=>ci(l,...i),removeTemplate:i=>li(l,i),buildTemplate:i=>ui(l,i),setProvider:i=>Jn(l,i)},setAgentScope:(...i)=>to(l,...i),session:i=>k(l,i)}}function k(l,i){let P=null,_,D;function j(){if(P)return P;let f=Ic(l,i);return f&&(P=f),P}async function v(){let f=j();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 gc(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=j();if(!S)throw new Fe(f);return S}function A(){P=null,jc(l,i)}return{get:f=>Fi(l,i,f),update:f=>Ki(l,i,f),delete:()=>(A(),Ni(l,i)),start:(...f)=>ke(l,i,...f),restart:()=>(A(),Me(l,i)),stop:()=>(A(),Ue(l,i)),setSharing:f=>Di(l,i,f),previews:()=>Mi(l,i),commit:f=>ji(l,i,f),publicShares:{list:()=>Ui(l,i),create:(...f)=>Oi(l,i,...f),revoke:(...f)=>Li(l,i,...f)},audit:(f,S)=>Gi(l,i,f,S),transcript:f=>Bi(l,i,f),ensureReady:v,health:f=>Ma(j()?.runtimeUrl??null,f),previewUrl:(f,S="/")=>Pe(f,S,n(I("previewUrl").sandboxId)),proxyUrl:f=>Ua(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:ia,connectStatus:m,marketplace:x,validateToken:Fn,runtime:Nd}}function Vc(){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 La={thinking:!1,toolDetails:!0,assistantMetadata:!0};function Hd(e){return e&&e.charAt(0).toUpperCase()+e.slice(1)}function Vd(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 Wd(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
  >
12
12
  > ${(e.text||"").replace(/\n/g,`
13
13
  > `)}
14
14
 
15
- `:"";if(e.type==="tool"){let n=e,r=`**Tool: ${n.tool}**
16
- `;if(t.toolDetails&&n.state?.input)try{let s=typeof n.state.input=="string"?n.state.input:JSON.stringify(n.state.input,null,2);r+=`
15
+ `:"";if(e.type==="tool"){let r=e,n=`**Tool: ${r.tool}**
16
+ `;if(t.toolDetails&&r.state?.input)try{let s=typeof r.state.input=="string"?r.state.input:JSON.stringify(r.state.input,null,2);n+=`
17
17
  <details>
18
18
  <summary>Input</summary>
19
19
 
@@ -22,8 +22,8 @@ ${s}
22
22
  \`\`\`
23
23
 
24
24
  </details>
25
- `}catch{}if(t.toolDetails&&n.state?.status==="completed"&&n.state?.output){let s=n.state.output,c=s.length>2e3?s.slice(0,2e3)+`
26
- ... (truncated)`:s;r+=`
25
+ `}catch{}if(t.toolDetails&&r.state?.status==="completed"&&r.state?.output){let s=r.state.output,c=s.length>2e3?s.slice(0,2e3)+`
26
+ ... (truncated)`:s;n+=`
27
27
  <details>
28
28
  <summary>Output</summary>
29
29
 
@@ -32,33 +32,33 @@ ${c}
32
32
  \`\`\`
33
33
 
34
34
  </details>
35
- `}return t.toolDetails&&n.state?.status==="error"&&n.state?.error&&(r+=`
35
+ `}return t.toolDetails&&r.state?.status==="error"&&r.state?.error&&(n+=`
36
36
  **Error:**
37
37
  \`\`\`
38
- ${n.state.error}
38
+ ${r.state.error}
39
39
  \`\`\`
40
- `),r+=`
41
- `,r}return""}function Kd(e,t){if(!t)return`## Assistant
40
+ `),n+=`
41
+ `,n}return""}function zd(e,t){if(!t)return`## Assistant
42
42
 
43
- `;let n=e.agent?Fd(e.agent):"Assistant",r=e.modelID||"",s="";e.time?.completed&&e.time?.created&&(s=Gd(e.time.completed-e.time.created));let c=[r,s].filter(Boolean).join(" \xB7 ");return c?`## ${n} (${c})
43
+ `;let r=e.agent?Hd(e.agent):"Assistant",n=e.modelID||"",s="";e.time?.completed&&e.time?.created&&(s=Vd(e.time.completed-e.time.created));let c=[n,s].filter(Boolean).join(" \xB7 ");return c?`## ${r} (${c})
44
44
 
45
- `:`## ${n}
45
+ `:`## ${r}
46
46
 
47
- `}function Nd(e,t,n){let r="";e.role==="user"?r+=`## User
47
+ `}function Jd(e,t,r){let n="";e.role==="user"?n+=`## User
48
48
 
49
- `:r+=Kd(e,n.assistantMetadata);for(let s of t)r+=Bd(s,n);return r}function Nc(e,t,n=Ma){let r=`# ${e.title||"Untitled Session"}
49
+ `:n+=zd(e,r.assistantMetadata);for(let s of t)n+=Wd(s,r);return n}function Wc(e,t,r=La){let n=`# ${e.title||"Untitled Session"}
50
50
 
51
- `;r+=`**Session ID:** \`${e.id}\`
52
- `,r+=`**Created:** ${new Date(e.time.created).toLocaleString()}
53
- `,r+=`**Updated:** ${new Date(e.time.updated).toLocaleString()}
51
+ `;n+=`**Session ID:** \`${e.id}\`
52
+ `,n+=`**Created:** ${new Date(e.time.created).toLocaleString()}
53
+ `,n+=`**Updated:** ${new Date(e.time.updated).toLocaleString()}
54
54
 
55
- `,r+=`---
55
+ `,n+=`---
56
56
 
57
- `;for(let s of t)r+=Nd(s.info,s.parts,n),r+=`---
57
+ `;for(let s of t)n+=Jd(s.info,s.parts,r),n+=`---
58
58
 
59
- `;return r}function Hc(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 n=JSON.parse(t);if(typeof n=="string"){t=n;try{let r=JSON.parse(t);return Ge(r)||t}catch{return t}}return Ge(n)||t}catch{return Hd(t)??t}}return typeof e=="object"?Ge(e)||"An error occurred":String(e)}function Vc(e){let t=e.indexOf("{"),n=e.lastIndexOf("}");if(!(t===-1||n===-1||n<=t))return e.slice(t,n+1)}function Hd(e){let t=Vc(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 n=t.data;if(typeof n?.message=="string")return n.message;let r=t.error;if(typeof r?.message=="string")return r.message}function Ua(e){if(!(typeof e!="string"||!e))try{return JSON.parse(e)}catch{return}}function Wc(e){let t=typeof e.provider=="string"&&e.provider?e.provider:void 0,n=typeof e.code=="string"&&e.code?e.code:void 0,r=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&&!n&&!r&&s===void 0&&!c?void 0:{message:typeof e.message=="string"&&e.message||Ge(e)||"",provider:t,code:n,suggestion:r,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=Ua(u)??Ua(Vc(u));return d!==void 0?ee(d):void 0}if(typeof e!="object")return;let t=e,n=Wc(t);if(n)return n;let r=t.error;if(r&&typeof r=="object"&&!Array.isArray(r)){let u=Wc(r);if(u)return u}let s=t.data;if(s&&typeof s.responseBody=="string"){let u=Ua(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 Wd={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"}},Vd=[{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 zd(e){return e.replace(/^oc[-_]/,"")}function Be(e){return zd(e).replace(/-/g,"_")}function Ct(e){return Be(e).split(/[_\s]+/).filter(Boolean).map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" ")}function Rt(e){let t=Be(e),n=Wd[t];if(n)return n;for(let{prefix:r,category:s}of Vd)if(t.startsWith(r))return{label:Ct(e),category:s};return{label:Ct(e),category:"other"}}var Jd=256*1024;function Xd(e){switch(e.status){case"pending":return"pending";case"running":return"running";case"completed":return"done";case"error":return"error";default:return e}}function Qd(e){if(e===void 0)return{};if(e.length>Jd)return{outputText:e};try{return{outputParsed:JSON.parse(e),outputText:e}}catch{return{outputText:e}}}function Yd(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e,n=t.success===!1,r=t.error,s=typeof r=="string"&&r.length>0||typeof r=="object"&&r!==null;if(!(!n&&!s))return s?K(r):typeof t.message=="string"&&t.message?t.message:"Tool reported failure"}function Zd(e,t){let n="title"in t?t.title:void 0,r=t.status==="completed"?t.output:void 0,{outputParsed:s,outputText:c}=Qd(r),u=Xd(t),d=t.status==="error"?t.error:void 0;if(u==="done"){let g=Yd(s);g&&(u="error",d=g)}return{name:e,title:n||Rt(e).label,status:u,input:t.input,output:r,outputParsed:s,outputText:c,error:d}}function eg(e){return{kind:"text",id:e.id,text:e.text,synthetic:!!e.synthetic}}function tg(e){return{kind:"reasoning",id:e.id,text:e.text}}function ng(e){return{kind:"tool",id:e.id,tool:Zd(e.tool,e.state)}}function rg(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 sg(e){return{kind:"subtask",id:e.id,description:e.description,agent:e.agent,prompt:e.prompt,model:e.model}}function ig(e){return{kind:"patch",id:e.id,hash:e.hash,files:e.files,fileCount:e.files.length}}function og(e){return{kind:"snapshot",id:e.id,snapshot:e.snapshot}}function ag(e){return{kind:"agent",id:e.id,name:e.name}}function cg(e){return{kind:"retry",id:e.id,attempt:e.attempt,message:K(e.error),createdAt:e.time.created}}function lg(e){return{kind:"compaction",id:e.id,auto:e.auto,overflow:!!e.overflow,tailStartId:e.tail_start_id}}function ug(e){return{kind:"step",id:e.id,phase:"start",snapshot:e.snapshot}}function pg(e){return{kind:"step",id:e.id,phase:"finish",snapshot:e.snapshot,reason:e.reason,cost:e.cost,tokens:e.tokens}}function Oa(e){switch(e.type){case"text":return eg(e);case"reasoning":return tg(e);case"tool":return ng(e);case"file":return rg(e);case"subtask":return sg(e);case"patch":return ig(e);case"snapshot":return og(e);case"agent":return ag(e);case"retry":return cg(e);case"compaction":return lg(e);case"step-start":return ug(e);case"step-finish":return pg(e);default:return{kind:"unknown",raw:e}}}function dg(e){if(!e)return;let t=typeof e=="object"&&"name"in e&&typeof e.name=="string"?e.name:"Error",n=ee(e);return{name:t,message:n?.message||K(e),provider:n?.provider,code:n?.code,suggestion:n?.suggestion,upstreamStatus:n?.upstreamStatus,requestId:n?.requestId}}function gg(e){switch(e.kind){case"text":case"reasoning":return e.text.trim().length>0;case"step":return!1;default:return!0}}function zc(e){let t=e.parts.map(Oa),n=e.info.role==="assistant"?e.info.error:void 0,r=dg(n),s=!r&&!t.some(gg);return{parts:t,error:r,isEmpty:s}}function te(e){return e.type==="text"}function Tt(e){return e.type==="reasoning"}function z(e){return e.type==="tool"}function Jc(e){return e.type==="file"}function mg(e){return e.type==="agent"}function fg(e){return e.type==="compaction"}function yg(e){return e.type==="snapshot"}function hg(e){return e.type==="patch"}function bg(e){if(te(e)||Tt(e))return e.text}function Xc(e){if(!Jc(e))return!1;let t=e.mime;return t.startsWith("image/")||t==="application/pdf"}function xg(e){let t=[],n=[];for(let r of e)Xc(r)?t.push(r):n.push(r);return{attachments:t,stickyParts:n}}function kg(e,t){let n=[];return e?.tool&&n.push(e.tool),t?.tool&&n.push(t.tool),n}function Pg(e,t,n){return n.some(r=>r.messageID===t&&r.callID===e.callID)}var wg=new Set(["todoread","context_info"]);function Qc(e){return!wg.has(e.tool)}function _g(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 r=e.state?.metadata?.sessionId;if(typeof r=="string"&&r)return r;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 n=e.tool?.replace(/-/g,"_")||"";if(n==="session_spawn"||n==="session_start_background"){let r=e.state?.output;if(r){let s=r.match(/\*?\*?Session:?\*?\*?\s*(ses_[a-zA-Z0-9]+)/);if(s)return s[1]}return}}function Sg(e){if(e)for(let t=e.length-1;t>=0;t--){let n=e[t]?.info;if(n?.role==="assistant"&&n.error)return K(n.error)}}function vg(e){let t=[];for(let n of e)if(n.info.role==="assistant")for(let r of n.parts)z(r)&&Qc(r)&&t.push(r);return t}function Cg(e,t={}){switch(e){case"read":return{icon:"glasses",title:"Read",subtitle:Yc(t.filePath)};case"list":return{icon:"list",title:"List",subtitle:Zc(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 n=t.action||"";return{icon:"presentation",title:{create_slide:"Create Slide",list_slides:"List Slides",preview:"Preview",export_pdf:"Export PDF",export_pptx:"Export PPTX"}[n]||"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:el(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:La(t.filePath)};case"write":return{icon:"file-pen",title:"Write",subtitle:La(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 Yc(e){if(!e)return;let t=e.split("/");return t[t.length-1]||e}function La(e){if(!e)return;let t=e.split("/"),n=t[t.length-1]||e;if(t.length<=1)return n;let r=t[t.length-2];return r?`${n} /${r}`:n}function Zc(e){if(!e)return;let t=e.lastIndexOf("/");if(!(t<0))return e.slice(0,t)||"/"}function Rg(e,t){if(!t)return e;if(e.startsWith(t)){let n=e.slice(t.length);return n.startsWith("/")?n.slice(1):n}return e}function Ke(e,t=120){if(typeof e!="string")return"";let n=e.split(`
60
- `).map(r=>r.trim()).find(Boolean);return n?n.length>t?`${n.slice(0,t).trim()}\u2026`:n:""}function el(e){let t=Ke(e.description);if(t)return t;let n=Ke(e.title,80);if(n)return n;let r=Ke(e.message);if(r)return r;let s=Ke(e.prompt);if(s)return s;let c=Ke(e.agent_id,40);return c?`Agent ${c}`:"Worker task"}function Tg(e,t){return!e||!t?[]:(e[t]??[]).filter(r=>r.severity===1).slice(0,3)}function Ig(e,t){return e.find(n=>n.tool?.callID===t)}function jg(e,t){return e.find(n=>n.tool?.callID===t)}var Ag=/\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 Eg(e){return e?e.replace(Ag,""):""}function qg(e){let t=[],n=new Map;for(let s of e)if(s.info.role==="user"){if(n.has(s.info.id))continue;let c={userMessage:s,assistantMessages:[]};t.push(c),n.set(s.info.id,c)}let r=null;for(let s of e){if(s.info.role==="user"){r=n.get(s.info.id)??null;continue}if(s.info.role!=="assistant")continue;let c=s.info;if(c.parentID){let d=n.get(c.parentID);if(d){d.assistantMessages.push(s);continue}}if(r){r.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 $g(e){let t=[];for(let n of e.assistantMessages)for(let r of n.parts)t.push({part:r,message:n});return t}function Dg(e){for(let t=e.length-1;t>=0;t--){let n=e[t].part;if(te(n)&&n.text?.trim())return n}}function Mg(e){return e.some(({part:t})=>t.type==="tool"||t.type==="compaction"||t.type==="snapshot"||t.type==="patch")}function Ug(e,t,n){if(n)return[];let r=[];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&&r.push({part:c,message:s})}return r}function Og(e){let t=new Map;for(let n of e){if(!n.parentID)continue;let r=t.get(n.parentID);r?r.push(n.id):t.set(n.parentID,[n.id])}return t}function Lg(e){let t=e-6e4;return(n,r)=>{let s=n.time.updated??n.time.created,c=r.time.updated??r.time.created,u=s>t,d=c>t;return u&&d?n.id<r.id?-1:n.id>r.id?1:0:u&&!d?-1:!u&&d?1:c-s}}function tl(e,t){let n=e.get(t);if(!n||n.length===0)return[];let r=[];for(let s of n)r.push(s),r.push(...tl(e,s));return r}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 r=e.assistantMessages[0].parts;if(r.length!==1)return!1;let s=r[0];return z(s)&&s.tool==="bash"}function Fg(e){if(nl(e))return e.assistantMessages[0].parts[0]}function Gg(e,t){for(let n=t.length-1;n>=0;n--)if(t[n].info.role==="user")return t[n].info.id===e;return!1}function Bg(e,t){return!t||!e?!1:e.type!=="idle"}function Kg(e,t){return!e&&!!t}function Ng(e){for(let t of e.assistantMessages){let n=t.info;if(n.error)return K(n.error)}}function Hg(e){for(let t of e.assistantMessages){let n=t.info;if(n.error)return ee(n.error)}}function Fa(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 n=t.match(/^\*\*(.+?)\*\*/);if(n)return`Thinking about ${n[1].trim()}...`}return"Thinking..."}if(te(e))return"Gathering thoughts..."}}function Wg(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n].part,s=z(r)?r: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=Fa(d.parts[g]);if(h)return h}}return"Delegating to agent..."}let c=Fa(r);if(c)return c}return"Considering next steps..."}function Vg(e){if(!Number.isFinite(e)||e<1e3)return"";let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60),r=t%60;return r>0?`${n}m ${r}s`:`${n}m`}var Ga=1.2;function rl(e,t){if(!e)return 0;let n=e.input??0,r=(e.output??0)+(e.reasoning??0),s=e.cache?.read??0,c=e.cache?.write??0,d=Math.max(0,n-s-c)/1e6*t.inputPer1M;return d+=r/1e6*t.outputPer1M,s>0&&(d+=s/1e6*(t.cacheReadPer1M??t.inputPer1M)),c>0&&(d+=c/1e6*t.inputPer1M),d}function sl(e,t,n,r){let s=e.cost||0;if(s>0)return s;if(!r||!t||!n)return 0;let c=r(t,n);return c?rl(e.tokens,c):0}function il(e){if(e.role!=="assistant")return{};let t=e;return{providerID:t.providerID,modelID:t.modelID}}function zg(e,t){let n=0,r=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}=il(m.info);n+=sl(x,w,k,t),r+=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=ol(m,t);if(x<=0)continue;g=!0,n+=x;let w=m.tokens;w&&(r+=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:n*Ga,tokens:{input:r,output:s,reasoning:c,cacheRead:u,cacheWrite:d}}}function ol(e,t){if(!t||!e.providerID||!e.modelID||!e.tokens)return 0;let n=t(e.providerID,e.modelID);return n?rl({input:e.tokens.input,output:e.tokens.output,reasoning:e.tokens.reasoning,cache:e.tokens.cache},n):0}function Jg(e,t){let n=0;for(let r of e){if(r.info?.role!=="assistant")continue;let s=r.info,{providerID:c,modelID:u}=il(s),d=0,g=!1;for(let h of r.parts)h.type==="step-finish"&&(g=!0,d+=sl(h,c,u,t));g||(d+=ol(s,t)),n+=d}return n*Ga}function Xg(e){return e===0?"$0.00":e<.001?`$${e.toFixed(4)}`:e<.01?`$${e.toFixed(3)}`:`$${e.toFixed(2)}`}function Qg(e){return e<1e3?String(e):e<1e4?`${(e/1e3).toFixed(1)}k`:`${Math.round(e/1e3)}k`}function Yg(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 Zg(e){if(!(!e||e.type!=="retry"))return K(e.message)}function em(e){return(e.info.summary?.diffs?.length??0)>0}var tm=4e3;function Ne(e,t=tm){return e.length>t?`${e.slice(0,t)}
61
- \u2026`:e}function al(e){if(e!==void 0)try{return Ne(JSON.stringify(e,null,2))}catch{return}}function $(...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=$(e.input?.query)??"";if(e.status==="error")return{kind:"web-search",query:t,error:e.error??"Search failed"};let n=we(e.outputParsed);if(!n)return{kind:"web-search",query:t};let s=(Array.isArray(n.results)?n.results:Array.isArray(n.images)?n.images:[]).slice(0,50).map(c=>{let u=we(c)??{};return{title:$(u.title)??"",url:$(u.url,u.link)??"",snippet:$(u.snippet,u.description,u.source)}});return{kind:"web-search",query:$(n.query)??t,results:s.length>0?s:void 0,answer:$(n.answer)}}var rm=/<exit_code>\s*(-?\d+)\s*<\/exit_code>/;function sm(e,t,n){let r="",s=0;for(;;){let c=e.indexOf(t,s);if(c===-1)return r+e.slice(s);let u=e.indexOf(n,c+t.length);if(u===-1)return r+e.slice(s);r+=e.slice(s,c),s=u+n.length}}var im=["<system_info>","</system_info>","<exit_code>","</exit_code>","<stderr_note>","</stderr_note>"];function om(e){let t=-1;for(let n of im){let r=e.indexOf(n);r!==-1&&(t===-1||r<t)&&(t=r)}return t===-1?e:e.slice(0,t)}var am=/\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 cm(e){return e.replace(am,"")}function lm(e){let t=$(e.input?.command)??"",n=e.output??"",r=n.match(rm),s=r?Number(r[1]):void 0,u=cm(om(sm(n,"<bash_metadata>","</bash_metadata>"))).trim()||(e.status==="error"?e.error:void 0);return{kind:"shell",command:t,stdout:u||void 0,exitCode:s}}function Ka(e){return $(e.input?.filePath,e.input?.file_path,e.input?.path)??""}function um(e){let t=e.status==="error"?e.error:e.output&&Ne(e.output)||void 0;return{kind:"file-read",path:Ka(e),preview:t}}function pm(e){let t=$(e.input?.content),n=e.status==="error"?e.error:Ne(t??e.output??"")||void 0;return{kind:"file-write",path:Ka(e),preview:n}}var dm=256*1024;function gm(e,t){if(e.length+t.length>dm)return;let n=e.split(`
62
- `),r=t.split(`
63
- `),s=0;for(;s<n.length&&s<r.length&&n[s]===r[s];)s++;let c=n.length,u=r.length;for(;c>s&&u>s&&n[c-1]===r[u-1];)c--,u--;let d=[];for(let g=0;g<s;g++)d.push({type:"unchanged",text:n[g]});for(let g=s;g<c;g++)d.push({type:"removed",text:n[g]});for(let g=s;g<u;g++)d.push({type:"added",text:r[g]});for(let g=c;g<n.length;g++)d.push({type:"unchanged",text:n[g]});return d}function mm(e){let t=$(e.input?.oldString),n=$(e.input?.newString),r=t!==void 0&&n!==void 0?gm(t,n):void 0;return{kind:"file-edit",path:Ka(e),diff:r}}var ll=/^Found\s+(\d+)\s+match/i,fm=/^(\/[^:]+?):\s*/,cl=/Line\s+(\d+):/g;function ym(e){let t=e.trim(),n=t.match(ll),r=n?t.slice(n[0].length).trim():t;if(!r)return[];let s=[];for(let c of r.split(/\n\n+/)){let u=c.trim();if(!u)continue;let d=u.match(fm);if(!d)continue;let g=d[1],h=u.slice(d[0].length),m=[],x;for(cl.lastIndex=0;(x=cl.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 hm(e){return e.trim().split(`
64
- `).map(t=>t.trim()).filter(t=>t.startsWith("/")||t.startsWith("./")||t.startsWith("~")).map(t=>({path:t}))}function bm(e){let t=$(e.input?.pattern,e.input?.query)??"";if(e.status==="error"||!e.output)return{kind:"search",pattern:t};let n=ll.test(e.output.trim())?ym(e.output):hm(e.output);return{kind:"search",pattern:t,matches:n.length>0?n.slice(0,200):void 0}}function xm(e){let t=$(e.input?.description,e.input?.title,e.input?.prompt)??e.title,n=$(e.input?.subagent_type,e.input?.agent);return{kind:"task",description:t,agent:n}}function Ba(e){let t=we(e)??{};return{content:$(t.content)??"",status:$(t.status)??"pending",priority:$(t.priority)}}function km(e){let t=e.input?.todos;if(Array.isArray(t))return{kind:"todo",items:t.map(Ba)};if(Array.isArray(e.outputParsed))return{kind:"todo",items:e.outputParsed.map(Ba)};let n=we(e.outputParsed);return n&&Array.isArray(n.todos)?{kind:"todo",items:n.todos.map(Ba)}:{kind:"todo",items:[]}}function Pm(e){return{kind:"question",questions:(Array.isArray(e.input?.questions)?e.input.questions:[]).map(r=>{let s=we(r)??{},u=(Array.isArray(s.options)?s.options:[]).flatMap(d=>{let g=we(d),h=g&&$(g.label);return h?[{label:h,description:g?$(g.description):void 0}]:[]});return{question:$(s.question)??"",header:$(s.header),options:u}})}}function wm(e){let n=e.input&&Object.keys(e.input).length>0?al(e.input):void 0,r;return e.outputParsed!==void 0?r=typeof e.outputParsed=="string"?Ne(e.outputParsed):al(e.outputParsed):e.outputText!==void 0?r=Ne(e.outputText):r=e.error,{kind:"generic",label:e.title,inputPretty:n,outputPretty:r}}function ul(e){switch(Be(e.name)){case"web_search":case"websearch":case"image_search":return nm(e);case"bash":return lm(e);case"read":return um(e);case"write":return pm(e);case"edit":case"morph_edit":return mm(e);case"grep":case"glob":return bm(e);case"task":return xm(e);case"todowrite":return km(e);case"question":case"ask":return Pm(e);default:return wm(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}}],Ox=new Map(It.map(e=>[e.id,e]));var Lx=It.map(e=>e.id),Fx=(It.find(e=>e.tier==="flagship")??It[0]).id;var pl=!1;function jt(e){try{return typeof process<"u"?process.env?.[e]:void 0}catch{return}}function _m(e,t){if(e==null)return t;let n=e.trim().toLowerCase();return["1","true","yes","y","on"].includes(n)?!0:["0","false","no","n","off"].includes(n)?!1:t}function Sm(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,n){return e!==void 0?e:_m(jt(t),n)}var vm={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",pl)}};var He="kortix-active-instance",dl=["/dashboard","/agents","/p","/workspace","/settings","/browser","/desktop","/services","/sessions","/terminal","/files","/scheduled-tasks","/commands","/tools","/configuration","/changelog","/legacy","/credits-explained"];function gl(e){return dl.some(t=>e===t||e.startsWith(`${t}/`))}function _e(e){let t=e.match(/^\/instances\/([^/]+)(?:\/(.*))?$/);if(!t)return null;let n=decodeURIComponent(t[1]),r=t[2]??"";return{instanceId:n,innerPath:r?`/${r}`:""}}function Cm(e){let t=_e(e);return!!t&&t.innerPath===""}function Rm(e){let t=_e(e);return!t||!t.innerPath?e:t.innerPath}function ml(e,t){if(!e)return t;if(t.startsWith("/")||(t=`/${t}`),t.startsWith("/instances/")){let n=_e(t);return n?`/instances/${encodeURIComponent(e)}${n.innerPath}`:t}return gl(t)?`/instances/${encodeURIComponent(e)}${t}`:t}function fl(e){return e?_e(e)?.instanceId??null:null}function Tm(){return typeof window>"u"?null:fl(window.location.pathname)||yl()}function yl(){if(typeof document>"u")return null;let e=document.cookie.match(new RegExp(`(?:^|; )${He}=([^;]+)`));return e?decodeURIComponent(e[1]):null}function Im(e){if(typeof document>"u")return;let t=n=>{document.cookie=n};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 jm(e,t){return t?ml(t,e):e}function Am(e){let t=_e(e);return t?t.innerPath||"/dashboard":e}function hl(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 bl(e){let t=hl(e).trim();if(!t)return null;let n=[t,t.replace(/^Failed to perform action:\s*/i,"").trim()],r=t.indexOf("{");r>=0&&n.push(t.slice(r));for(let s of n)if(s)try{return JSON.parse(s)}catch{}return null}function Na(e){let t=bl(e);if(!t||typeof t!="object")return null;let n=t;return n.name==="ConfigInvalidError"?n:null}function Em(e){return Na(e)!==null}function qm(e){let t=Na(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:hl(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 n=We(t);if(n)return n}return}if(e&&typeof e=="object"){let t=e;return We(t.sandboxId??t.id??t.slug??Object.values(t)[0])}}var xl=["http://localhost:8008/v1","http://127.0.0.1:8008/v1"];function kl(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return`${e.slice(0,t)}/platform/local-bridge/status`}function $m(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 Ha(e,t,n){let r=n?.external_id||t.sandbox_url?.match(/\/p\/([^/]+)\//)?.[1]||t.sandbox_id;return{sandbox_id:n?.sandbox_id||t.sandbox_id||t.session_id,external_id:r,name:t.name||`${e.name} session`,provider:n?.provider||t.sandbox_provider||"daytona",base_url:n?.base_url||t.sandbox_url||(n?.external_id?`${L()}/p/${n.external_id}/${V.KORTIX_MASTER}`:""),status:$m(n?.status||t.status),metadata:{...t.metadata??{},project_id:e.project_id,session_id:t.session_id,project_name:e.name,runtime_status:n?.status,error:t.error},created_at:n?.created_at||t.created_at,updated_at:n?.updated_at||t.updated_at}}async function Wa(){let e=await oe(),t=[];for(let n of e){let r=await be(n.project_id).catch(()=>[]);for(let s of r)t.push({project:n,session:s,runtime:null,sandbox:Ha(n,s,null)})}return t.sort((n,r)=>{let s={active:0,provisioning:1,stopped:2,error:3},c=(s[n.sandbox.status]??99)-(s[r.sandbox.status]??99);return c!==0?c:Date.parse(r.sandbox.updated_at)-Date.parse(n.sandbox.updated_at)})}async function ae(e){let t=await Wa();return e?t.find(n=>n.sandbox.sandbox_id===e||n.sandbox.external_id===e||n.session.session_id===e||n.runtime?.external_id===e)??null:t[0]??null}async function Et(e,t={}){let n={"Content-Type":"application/json",...t.headers},r=t.signal??AbortSignal.timeout(3e4),s=await R(`${L()}${e}`,{...t,headers:n,signal:r}),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 Va(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 Dm(e,t){return e.external_id?`${L()}/p/${e.external_id}/${t}`:null}async function Mm(){let e=await o.get("/setup/sandbox-providers");if(e.error)throw e.error;return e.data}async function Pl(e){let t=await ae();if(t)return{sandbox:t.sandbox,created:!1};let r=(await oe())[0];if(!r)throw new Error("Create a project before starting a sandbox");let s=await xe(r.project_id,{...e?.provider?{provider:e.provider}:{}}),c=(await ke(r.project_id,s.session_id))?.sandbox??null;return{sandbox:Ha(r,s,c),created:!0}}async function Um(){return(await ae().catch(()=>null))?.sandbox??null}async function Om(e){return{sandbox:(await Pl(e)).sandbox}}async function Lm(e){let t=We(e);return t?(await ae(t).catch(()=>null))?.sandbox??null:null}async function Fm(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 Gm(e){let t=We(e);return(await Wa().catch(()=>[])).map(r=>r.sandbox).filter(r=>!t||r.sandbox_id===t||r.external_id===t)}async function Bm(){if(typeof window>"u")return null;let e=L(),t=Array.from(new Set([e,...xl]));for(let n of t)try{let r=await fetch(kl(n),{method:"GET",signal:AbortSignal.timeout(1500),headers:{Accept:"application/json"}});if(!r.ok)continue;let s=await r.json();if(!s.success||s.status!=="ready"||!s.data?.sandbox_id)continue;return s.data}catch{continue}return null}async function Km(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 Nm(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 Hm(e){throw new Error("Cancellation is not exposed for project-session sandboxes")}async function Wm(e){throw new Error("Reactivation is not exposed for project-session sandboxes")}async function Vm(e){throw new Error("Sandbox members moved to project access; use project members for project-session sandboxes")}async function zm(e,t,n="member"){throw new Error("Sandbox members moved to project access; invite the user to the project instead")}async function Jm(e,t){throw new Error("Sandbox members moved to project access; update project access instead")}async function Xm(e,t,n){throw new Error("Sandbox members moved to project access; update project access instead")}async function Qm(e,t,n){throw new Error("Sandbox member spend caps are not exposed for project-session sandboxes")}async function Ym(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 ef(e,t,n,r){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function za(e,t,n){let r=Va(e),s=await R(`${re(r)}${t}`,{signal:AbortSignal.timeout(8e3),headers:{"Content-Type":"application/json"},...n});if(!s.ok){let c=await s.text().catch(()=>"");throw new Error(c||`Request failed (${s.status})`)}return await s.json()}async function tf(e,t){return za(e,`/kortix/projects/${encodeURIComponent(t)}/members`,{method:"GET"})}async function nf(e,t,n,r="member"){await za(e,`/kortix/projects/${encodeURIComponent(t)}/members`,{method:"POST",body:JSON.stringify({user_id:n,role:r})})}async function rf(e,t,n){await za(e,`/kortix/projects/${encodeURIComponent(t)}/members/${encodeURIComponent(n)}`,{method:"DELETE"})}async function sf(e,t){throw new Error("Sandbox invites moved to project access for project-session sandboxes")}async function of(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 af(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 cf(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 lf(e){throw new Error("Backups are not exposed for project-session sandboxes")}async function uf(e,t){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){throw new Error("SSH setup is not exposed for project-session sandboxes")}async function mf(e){throw new Error("SSH connection details are not exposed for project-session sandboxes")}var wl=["pulling","patching","stopping","removing","recreating","restarting","verifying","starting","health_check"];function ff(e){return wl.includes(e)}async function yf(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 hf(e){let t=e?`?channel=${e}`:"",n=await fetch(`${L()}/platform/sandbox/version/latest${t}`,{headers:{Accept:"application/json"}});if(!n.ok)throw new Error(`Version check failed: ${n.status}`);let r=await n.json();try{let s=await _l(e||"stable");r.changelog=s.find(c=>c.version===r.version)??s[0]??null}catch{r.changelog=null}return r}async function _l(e){let t=e?`?channel=${e}`:"",n=await fetch(`${L()}/platform/sandbox/version/changelog${t}`,{headers:{Accept:"application/json"}});if(!n.ok)throw new Error(`Changelog fetch failed: ${n.status}`);return(await n.json()).changelog}async function bf(){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 xf(e,t){throw new Error("Sandbox image updates are managed by project-session provisioning")}async function kf(e){}async function Pf(e){}async function wf(e){return{serverTypes:[],location:e||"hel1"}}async function _f(e){throw new Error("Retired instance provisioning is unavailable. Create a project session with daytona, platinum, or e2b.")}async function Sf(e){let t=await o.delete(`/platform/sandbox?sandbox_id=${e}`);if(t.error)throw t.error;return t.data}async function vf(e,t){await o.post("/platform/sandbox/mark-error",{sandbox_id:e,error_message:t},{showErrors:!1,timeout:1e4})}async function Cf(){let e=await o.post("/platform/sandbox/claim-computer",{},{timeout:6e4});if(e.error)throw e.error;return e.data}async function Rf(e){let t=await o.get(`/platform/sandbox/${e}/status`,{showErrors:!1,timeout:1e4});return t.success?t.data??null:null}function Tf(e,t){return`${L()}/platform/sandbox/${e}/provision-stream?token=${encodeURIComponent(t)}`}async function If(){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 jf(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 Af(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 Ef(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 Sl(e){try{let t=new URL(e);if(/^\/proxy\/\d+(?:\/|$)/.test(t.pathname))return`${t.origin}/v1/p/auth`;let n=t.pathname.indexOf("/p/");return n!==-1?`${t.origin}${t.pathname.slice(0,n)}/p/auth`:`${t.origin}/v1/p/auth`}catch{return null}}function $f(e,t){try{let n=new URL(e),r=n.pathname;if(!(/^\/v1\/p\/[^/]+\/\d+(?:\/|$)/.test(r)||/^\/proxy\/\d+(?:\/|$)/.test(r)))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(n.origin)}catch{return!1}}function Df(e,t){return $f(e,t)?(t?Sl(t):null)??Sl(e):null}function Mf(e){try{return/^p\d+-[^.]+\./.test(new URL(e).hostname)}catch{return!1}}function Uf(e,t){try{let n=new URL(e);return n.searchParams.set("token",t),n.toString()}catch{return e}}return Al(Of);})();
59
+ `;return n}function zc(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 Xd(t)??t}}return typeof e=="object"?Ge(e)||"An error occurred":String(e)}function Xc(e){let t=e.indexOf("{"),r=e.lastIndexOf("}");if(!(t===-1||r===-1||r<=t))return e.slice(t,r+1)}function Xd(e){let t=Xc(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 Fa(e){if(!(typeof e!="string"||!e))try{return JSON.parse(e)}catch{return}}function Jc(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=Fa(u)??Fa(Xc(u));return d!==void 0?ee(d):void 0}if(typeof e!="object")return;let t=e,r=Jc(t);if(r)return r;let n=t.error;if(n&&typeof n=="object"&&!Array.isArray(n)){let u=Jc(n);if(u)return u}let s=t.data;if(s&&typeof s.responseBody=="string"){let u=Fa(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 Qd={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"}},Yd=[{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 Zd(e){return e.replace(/^oc[-_]/,"")}function Be(e){return Zd(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=Qd[t];if(r)return r;for(let{prefix:n,category:s}of Yd)if(t.startsWith(n))return{label:Ct(e),category:s};return{label:Ct(e),category:"other"}}var eg=256*1024;function tg(e){switch(e.status){case"pending":return"pending";case"running":return"running";case"completed":return"done";case"error":return"error";default:return e}}function rg(e){if(e===void 0)return{};if(e.length>eg)return{outputText:e};try{return{outputParsed:JSON.parse(e),outputText:e}}catch{return{outputText:e}}}function ng(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 sg(e,t){let r="title"in t?t.title:void 0,n=t.status==="completed"?t.output:void 0,{outputParsed:s,outputText:c}=rg(n),u=tg(t),d=t.status==="error"?t.error:void 0;if(u==="done"){let g=ng(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 ig(e){return{kind:"text",id:e.id,text:e.text,synthetic:!!e.synthetic}}function og(e){return{kind:"reasoning",id:e.id,text:e.text}}function ag(e){return{kind:"tool",id:e.id,tool:sg(e.tool,e.state)}}function cg(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 lg(e){return{kind:"subtask",id:e.id,description:e.description,agent:e.agent,prompt:e.prompt,model:e.model}}function ug(e){return{kind:"patch",id:e.id,hash:e.hash,files:e.files,fileCount:e.files.length}}function pg(e){return{kind:"snapshot",id:e.id,snapshot:e.snapshot}}function dg(e){return{kind:"agent",id:e.id,name:e.name}}function gg(e){return{kind:"retry",id:e.id,attempt:e.attempt,message:K(e.error),createdAt:e.time.created}}function mg(e){return{kind:"compaction",id:e.id,auto:e.auto,overflow:!!e.overflow,tailStartId:e.tail_start_id}}function fg(e){return{kind:"step",id:e.id,phase:"start",snapshot:e.snapshot}}function yg(e){return{kind:"step",id:e.id,phase:"finish",snapshot:e.snapshot,reason:e.reason,cost:e.cost,tokens:e.tokens}}function Ga(e){switch(e.type){case"text":return ig(e);case"reasoning":return og(e);case"tool":return ag(e);case"file":return cg(e);case"subtask":return lg(e);case"patch":return ug(e);case"snapshot":return pg(e);case"agent":return dg(e);case"retry":return gg(e);case"compaction":return mg(e);case"step-start":return fg(e);case"step-finish":return yg(e);default:return{kind:"unknown",raw:e}}}function hg(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 bg(e){switch(e.kind){case"text":case"reasoning":return e.text.trim().length>0;case"step":return!1;default:return!0}}function Qc(e){let t=e.parts.map(Ga),r=e.info.role==="assistant"?e.info.error:void 0,n=hg(r),s=!n&&!t.some(bg);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 Yc(e){return e.type==="file"}function xg(e){return e.type==="agent"}function kg(e){return e.type==="compaction"}function Pg(e){return e.type==="snapshot"}function wg(e){return e.type==="patch"}function _g(e){if(te(e)||Tt(e))return e.text}function Zc(e){if(!Yc(e))return!1;let t=e.mime;return t.startsWith("image/")||t==="application/pdf"}function Sg(e){let t=[],r=[];for(let n of e)Zc(n)?t.push(n):r.push(n);return{attachments:t,stickyParts:r}}function vg(e,t){let r=[];return e?.tool&&r.push(e.tool),t?.tool&&r.push(t.tool),r}function Cg(e,t,r){return r.some(n=>n.messageID===t&&n.callID===e.callID)}var Rg=new Set(["todoread","context_info"]);function el(e){return!Rg.has(e.tool)}function Tg(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 Ig(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 Ag(e){let t=[];for(let r of e)if(r.info.role==="assistant")for(let n of r.parts)z(n)&&el(n)&&t.push(n);return t}function jg(e,t={}){switch(e){case"read":return{icon:"glasses",title:"Read",subtitle:tl(t.filePath)};case"list":return{icon:"list",title:"List",subtitle:rl(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:nl(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:Ba(t.filePath)};case"write":return{icon:"file-pen",title:"Write",subtitle:Ba(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 tl(e){if(!e)return;let t=e.split("/");return t[t.length-1]||e}function Ba(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 rl(e){if(!e)return;let t=e.lastIndexOf("/");if(!(t<0))return e.slice(0,t)||"/"}function Eg(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 nl(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 qg(e,t){return!e||!t?[]:(e[t]??[]).filter(n=>n.severity===1).slice(0,3)}function $g(e,t){return e.find(r=>r.tool?.callID===t)}function Dg(e,t){return e.find(r=>r.tool?.callID===t)}var Mg=/\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 Ug(e){return e?e.replace(Mg,""):""}function Og(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 Lg(e){let t=[];for(let r of e.assistantMessages)for(let n of r.parts)t.push({part:n,message:r});return t}function Fg(e){for(let t=e.length-1;t>=0;t--){let r=e[t].part;if(te(r)&&r.text?.trim())return r}}function Gg(e){return e.some(({part:t})=>t.type==="tool"||t.type==="compaction"||t.type==="snapshot"||t.type==="patch")}function Bg(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 Kg(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 Ng(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 sl(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(...sl(e,s));return n}function il(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 Hg(e){if(il(e))return e.assistantMessages[0].parts[0]}function Vg(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 Wg(e,t){return!t||!e?!1:e.type!=="idle"}function zg(e,t){return!e&&!!t}function Jg(e){for(let t of e.assistantMessages){let r=t.info;if(r.error)return K(r.error)}}function Xg(e){for(let t of e.assistantMessages){let r=t.info;if(r.error)return ee(r.error)}}function Ka(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 Qg(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=Ka(d.parts[g]);if(h)return h}}return"Delegating to agent..."}let c=Ka(n);if(c)return c}return"Considering next steps..."}function Yg(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 Na=1.2;function ol(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 al(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?ol(e.tokens,c):0}function cl(e){if(e.role!=="assistant")return{};let t=e;return{providerID:t.providerID,modelID:t.modelID}}function Zg(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}=cl(m.info);r+=al(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=ll(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*Na,tokens:{input:n,output:s,reasoning:c,cacheRead:u,cacheWrite:d}}}function ll(e,t){if(!t||!e.providerID||!e.modelID||!e.tokens)return 0;let r=t(e.providerID,e.modelID);return r?ol({input:e.tokens.input,output:e.tokens.output,reasoning:e.tokens.reasoning,cache:e.tokens.cache},r):0}function em(e,t){let r=0;for(let n of e){if(n.info?.role!=="assistant")continue;let s=n.info,{providerID:c,modelID:u}=cl(s),d=0,g=!1;for(let h of n.parts)h.type==="step-finish"&&(g=!0,d+=al(h,c,u,t));g||(d+=ll(s,t)),r+=d}return r*Na}function tm(e){return e===0?"$0.00":e<.001?`$${e.toFixed(4)}`:e<.01?`$${e.toFixed(3)}`:`$${e.toFixed(2)}`}function rm(e){return e<1e3?String(e):e<1e4?`${(e/1e3).toFixed(1)}k`:`${Math.round(e/1e3)}k`}function nm(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 sm(e){if(!(!e||e.type!=="retry"))return K(e.message)}function im(e){return(e.info.summary?.diffs?.length??0)>0}var om=4e3;function Ne(e,t=om){return e.length>t?`${e.slice(0,t)}
61
+ \u2026`:e}function ul(e){if(e!==void 0)try{return Ne(JSON.stringify(e,null,2))}catch{return}}function $(...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 am(e){let t=$(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:$(u.title)??"",url:$(u.url,u.link)??"",snippet:$(u.snippet,u.description,u.source)}});return{kind:"web-search",query:$(r.query)??t,results:s.length>0?s:void 0,answer:$(r.answer)}}var cm=/<exit_code>\s*(-?\d+)\s*<\/exit_code>/;function lm(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 um=["<system_info>","</system_info>","<exit_code>","</exit_code>","<stderr_note>","</stderr_note>"];function pm(e){let t=-1;for(let r of um){let n=e.indexOf(r);n!==-1&&(t===-1||n<t)&&(t=n)}return t===-1?e:e.slice(0,t)}var dm=/\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 gm(e){return e.replace(dm,"")}function mm(e){let t=$(e.input?.command)??"",r=e.output??"",n=r.match(cm),s=n?Number(n[1]):void 0,u=gm(pm(lm(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 Va(e){return $(e.input?.filePath,e.input?.file_path,e.input?.path)??""}function fm(e){let t=e.status==="error"?e.error:e.output&&Ne(e.output)||void 0;return{kind:"file-read",path:Va(e),preview:t}}function ym(e){let t=$(e.input?.content),r=e.status==="error"?e.error:Ne(t??e.output??"")||void 0;return{kind:"file-write",path:Va(e),preview:r}}var hm=256*1024;function bm(e,t){if(e.length+t.length>hm)return;let r=e.split(`
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 xm(e){let t=$(e.input?.oldString),r=$(e.input?.newString),n=t!==void 0&&r!==void 0?bm(t,r):void 0;return{kind:"file-edit",path:Va(e),diff:n}}var dl=/^Found\s+(\d+)\s+match/i,km=/^(\/[^:]+?):\s*/,pl=/Line\s+(\d+):/g;function Pm(e){let t=e.trim(),r=t.match(dl),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(km);if(!d)continue;let g=d[1],h=u.slice(d[0].length),m=[],x;for(pl.lastIndex=0;(x=pl.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 wm(e){return e.trim().split(`
64
+ `).map(t=>t.trim()).filter(t=>t.startsWith("/")||t.startsWith("./")||t.startsWith("~")).map(t=>({path:t}))}function _m(e){let t=$(e.input?.pattern,e.input?.query)??"";if(e.status==="error"||!e.output)return{kind:"search",pattern:t};let r=dl.test(e.output.trim())?Pm(e.output):wm(e.output);return{kind:"search",pattern:t,matches:r.length>0?r.slice(0,200):void 0}}function Sm(e){let t=$(e.input?.description,e.input?.title,e.input?.prompt)??e.title,r=$(e.input?.subagent_type,e.input?.agent);return{kind:"task",description:t,agent:r}}function Ha(e){let t=we(e)??{};return{content:$(t.content)??"",status:$(t.status)??"pending",priority:$(t.priority)}}function vm(e){let t=e.input?.todos;if(Array.isArray(t))return{kind:"todo",items:t.map(Ha)};if(Array.isArray(e.outputParsed))return{kind:"todo",items:e.outputParsed.map(Ha)};let r=we(e.outputParsed);return r&&Array.isArray(r.todos)?{kind:"todo",items:r.todos.map(Ha)}:{kind:"todo",items:[]}}function Cm(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&&$(g.label);return h?[{label:h,description:g?$(g.description):void 0}]:[]});return{question:$(s.question)??"",header:$(s.header),options:u}})}}function Rm(e){let r=e.input&&Object.keys(e.input).length>0?ul(e.input):void 0,n;return e.outputParsed!==void 0?n=typeof e.outputParsed=="string"?Ne(e.outputParsed):ul(e.outputParsed):e.outputText!==void 0?n=Ne(e.outputText):n=e.error,{kind:"generic",label:e.title,inputPretty:r,outputPretty:n}}function gl(e){switch(Be(e.name)){case"web_search":case"websearch":case"image_search":return am(e);case"bash":return mm(e);case"read":return fm(e);case"write":return ym(e);case"edit":case"morph_edit":return xm(e);case"grep":case"glob":return _m(e);case"task":return Sm(e);case"todowrite":return vm(e);case"question":case"ask":return Cm(e);default:return Rm(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}}],Kx=new Map(It.map(e=>[e.id,e]));var Nx=It.map(e=>e.id),Hx=(It.find(e=>e.tier==="flagship")??It[0]).id;var ml=!1;function At(e){try{return typeof process<"u"?process.env?.[e]:void 0}catch{return}}function Tm(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 Im(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:Tm(At(t),r)}var Am={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",ml)}};var He="kortix-active-instance",fl=["/dashboard","/agents","/p","/workspace","/settings","/browser","/desktop","/services","/sessions","/terminal","/files","/scheduled-tasks","/commands","/tools","/configuration","/changelog","/legacy","/credits-explained"];function yl(e){return fl.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 jm(e){let t=_e(e);return!!t&&t.innerPath===""}function Em(e){let t=_e(e);return!t||!t.innerPath?e:t.innerPath}function hl(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 yl(t)?`/instances/${encodeURIComponent(e)}${t}`:t}function bl(e){return e?_e(e)?.instanceId??null:null}function qm(){return typeof window>"u"?null:bl(window.location.pathname)||xl()}function xl(){if(typeof document>"u")return null;let e=document.cookie.match(new RegExp(`(?:^|; )${He}=([^;]+)`));return e?decodeURIComponent(e[1]):null}function $m(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 Dm(e,t){return t?hl(t,e):e}function Mm(e){let t=_e(e);return t?t.innerPath||"/dashboard":e}function kl(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 Pl(e){let t=kl(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 Wa(e){let t=Pl(e);if(!t||typeof t!="object")return null;let r=t;return r.name==="ConfigInvalidError"?r:null}function Um(e){return Wa(e)!==null}function Om(e){let t=Wa(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:kl(e)||"The sandbox is running, but OpenCode returned an error."}}function L(){let e=At("BACKEND_URL")||T().backendUrl;return e||"http://localhost:8008/v1"}function Ve(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=Ve(t);if(r)return r}return}if(e&&typeof e=="object"){let t=e;return Ve(t.sandboxId??t.id??t.slug??Object.values(t)[0])}}var wl=["http://localhost:8008/v1","http://127.0.0.1:8008/v1"];function _l(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return`${e.slice(0,t)}/platform/local-bridge/status`}function Lm(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 za(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}/${W.KORTIX_MASTER}`:""),status:Lm(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 Ja(){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:za(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 Ja();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 Xa(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}/${W.KORTIX_MASTER}`}function Fm(e,t){return e.external_id?`${L()}/p/${e.external_id}/${t}`:null}async function Gm(){let e=await o.get("/setup/sandbox-providers");if(e.error)throw e.error;return e.data}async function Sl(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:za(n,s,c),created:!0}}async function Bm(){return(await ae().catch(()=>null))?.sandbox??null}async function Km(e){return{sandbox:(await Sl(e)).sandbox}}async function Nm(e){let t=Ve(e);return t?(await ae(t).catch(()=>null))?.sandbox??null:null}async function Hm(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 Vm(e){let t=Ve(e);return(await Ja().catch(()=>[])).map(n=>n.sandbox).filter(n=>!t||n.sandbox_id===t||n.external_id===t)}async function Wm(){if(typeof window>"u")return null;let e=L(),t=Array.from(new Set([e,...wl]));for(let r of t)try{let n=await fetch(_l(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 zm(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 Jm(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 Xm(e){throw new Error("Cancellation is not exposed for project-session sandboxes")}async function Qm(e){throw new Error("Reactivation is not exposed for project-session sandboxes")}async function Ym(e){throw new Error("Sandbox members moved to project access; use project members for project-session sandboxes")}async function Zm(e,t,r="member"){throw new Error("Sandbox members moved to project access; invite the user to the project instead")}async function ef(e,t){throw new Error("Sandbox members moved to project access; update project access instead")}async function tf(e,t,r){throw new Error("Sandbox members moved to project access; update project access instead")}async function rf(e,t,r){throw new Error("Sandbox member spend caps are not exposed for project-session sandboxes")}async function nf(e){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function sf(e,t){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function of(e,t,r,n){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function Qa(e,t,r){let n=Xa(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 af(e,t){return Qa(e,`/kortix/projects/${encodeURIComponent(t)}/members`,{method:"GET"})}async function cf(e,t,r,n="member"){await Qa(e,`/kortix/projects/${encodeURIComponent(t)}/members`,{method:"POST",body:JSON.stringify({user_id:r,role:n})})}async function lf(e,t,r){await Qa(e,`/kortix/projects/${encodeURIComponent(t)}/members/${encodeURIComponent(r)}`,{method:"DELETE"})}async function uf(e,t){throw new Error("Sandbox invites moved to project access for project-session sandboxes")}async function pf(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 df(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 gf(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 mf(e){throw new Error("Backups are not exposed for project-session sandboxes")}async function ff(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function yf(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function hf(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function bf(e){throw new Error("SSH setup is not exposed for project-session sandboxes")}async function xf(e){throw new Error("SSH connection details are not exposed for project-session sandboxes")}var vl=["pulling","patching","stopping","removing","recreating","restarting","verifying","starting","health_check"];function kf(e){return vl.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 wf(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 Cl(e||"stable");n.changelog=s.find(c=>c.version===n.version)??s[0]??null}catch{n.changelog=null}return n}async function Cl(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 _f(){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 Sf(e,t){throw new Error("Sandbox image updates are managed by project-session provisioning")}async function vf(e){}async function Cf(e){}async function Rf(e){return{serverTypes:[],location:e||"hel1"}}async function Tf(e){throw new Error("Retired instance provisioning is unavailable. Create a project session with daytona, platinum, or e2b.")}async function If(e){let t=await o.delete(`/platform/sandbox?sandbox_id=${e}`);if(t.error)throw t.error;return t.data}async function Af(e,t){await o.post("/platform/sandbox/mark-error",{sandbox_id:e,error_message:t},{showErrors:!1,timeout:1e4})}async function jf(){let e=await o.post("/platform/sandbox/claim-computer",{},{timeout:6e4});if(e.error)throw e.error;return e.data}async function Ef(e){let t=await o.get(`/platform/sandbox/${e}/status`,{showErrors:!1,timeout:1e4});return t.success?t.data??null:null}function qf(e,t){return`${L()}/platform/sandbox/${e}/provision-stream?token=${encodeURIComponent(t)}`}async function $f(){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 Df(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 Mf(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 Uf(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 Of(){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 Rl(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 Lf(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 Ff(e,t){return Lf(e,t)?(t?Rl(t):null)??Rl(e):null}function Gf(e){try{return/^p\d+-[^.]+\./.test(new URL(e).hostname)}catch{return!1}}function Bf(e,t){try{let r=new URL(e);return r.searchParams.set("token",t),r.toString()}catch{return e}}return $l(Kf);})();