@kortix/sdk 0.12.7 → 0.12.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/README.md +10 -0
  2. package/dist/core/http/api-client.d.ts.map +1 -1
  3. package/dist/core/http/api-client.js +10 -0
  4. package/dist/core/http/api-client.js.map +1 -1
  5. package/dist/core/http/impersonation.d.ts +58 -0
  6. package/dist/core/http/impersonation.d.ts.map +1 -0
  7. package/dist/core/http/impersonation.js +174 -0
  8. package/dist/core/http/impersonation.js.map +1 -0
  9. package/dist/core/rest/projects-client/agent-config.d.ts +21 -0
  10. package/dist/core/rest/projects-client/agent-config.d.ts.map +1 -1
  11. package/dist/core/rest/projects-client/agent-config.js +14 -0
  12. package/dist/core/rest/projects-client/agent-config.js.map +1 -1
  13. package/dist/core/rest/projects-client/billing.d.ts +70 -0
  14. package/dist/core/rest/projects-client/billing.d.ts.map +1 -1
  15. package/dist/core/rest/projects-client/billing.js +50 -0
  16. package/dist/core/rest/projects-client/billing.js.map +1 -1
  17. package/dist/core/rest/projects-client/sessions.d.ts +27 -2
  18. package/dist/core/rest/projects-client/sessions.d.ts.map +1 -1
  19. package/dist/core/rest/projects-client/sessions.js.map +1 -1
  20. package/dist/core/turns/classify.d.ts +5 -2
  21. package/dist/core/turns/classify.d.ts.map +1 -1
  22. package/dist/core/turns/classify.js +1 -0
  23. package/dist/core/turns/classify.js.map +1 -1
  24. package/dist/core/turns/errors.d.ts +11 -0
  25. package/dist/core/turns/errors.d.ts.map +1 -1
  26. package/dist/core/turns/errors.js +49 -2
  27. package/dist/core/turns/errors.js.map +1 -1
  28. package/dist/core/turns/state.d.ts +1 -1
  29. package/dist/core/turns/state.d.ts.map +1 -1
  30. package/dist/core/turns/state.js +3 -1
  31. package/dist/core/turns/state.js.map +1 -1
  32. package/dist/core/turns/types.d.ts +3 -0
  33. package/dist/core/turns/types.d.ts.map +1 -1
  34. package/dist/index.d.ts +1 -0
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +1 -0
  37. package/dist/index.js.map +1 -1
  38. package/dist/kortix.esm.min.js +19 -19
  39. package/dist/kortix.global.js +19 -19
  40. package/dist/react/index.d.ts +1 -0
  41. package/dist/react/index.d.ts.map +1 -1
  42. package/dist/react/index.js +1 -0
  43. package/dist/react/index.js.map +1 -1
  44. package/dist/react/use-admin-accounts.d.ts +121 -0
  45. package/dist/react/use-admin-accounts.d.ts.map +1 -1
  46. package/dist/react/use-admin-accounts.js +92 -0
  47. package/dist/react/use-admin-accounts.js.map +1 -1
  48. package/dist/react/use-impersonation.d.ts +54 -0
  49. package/dist/react/use-impersonation.d.ts.map +1 -0
  50. package/dist/react/use-impersonation.js +91 -0
  51. package/dist/react/use-impersonation.js.map +1 -0
  52. package/package.json +2 -2
@@ -1,23 +1,23 @@
1
- "use strict";var Kortix=(()=>{var mn=Object.defineProperty;var _p=Object.getOwnPropertyDescriptor;var Pp=Object.getOwnPropertyNames;var kp=Object.prototype.hasOwnProperty;var wp=(t,e)=>{for(var n in e)mn(t,n,{get:e[n],enumerable:!0})},Sp=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Pp(e))!kp.call(t,s)&&s!==n&&mn(t,s,{get:()=>e[s],enumerable:!(r=_p(e,s))||r.enumerable});return t};var vp=t=>Sp(mn({},"__esModule",{value:!0}),t);var E_={};wp(E_,{ACTIVE_INSTANCE_COOKIE:()=>dt,ApiError:()=>R,AuthError:()=>ye,BillingError:()=>ae,COST_MARKUP:()=>ul,DEFAULT_TRANSCRIPT_OPTIONS:()=>il,DESTRUCTIVE_PHASES:()=>ap,FEATURE_DISABLED_CODE:()=>vt,FEATURE_FLAG_KEYS:()=>Eg,FEATURE_NOT_SUPPORTED_CODE:()=>Xl,HostBoundaryError:()=>ie,INSTANCE_SCOPED_ROUTES:()=>Xu,MODEL_NOT_SERVABLE_CODE:()=>Ql,PREVIEW_PROBE_TIMEOUT_MS:()=>S_,PROVISION_IN_FLIGHT_CODE:()=>Yl,PublicSessionShareError:()=>Jt,PublicVoiceJoinError:()=>Xt,RequestTooLargeError:()=>he,RuntimeNotReadyError:()=>Tt,SANDBOX_FS_ROOTS:()=>jt,SANDBOX_PORTS:()=>re,SessionNotReadyError:()=>at,SessionStartError:()=>Nt,__getConfigResolver:()=>Tp,__setConfigResolver:()=>Rp,acceptAccountInvite:()=>ms,acceptInvite:()=>kx,actReviewItem:()=>dc,activateConnection:()=>Ti,addGroupMembers:()=>Wm,addMarketplaceSource:()=>Oc,addSandboxMember:()=>ux,allDescendantIds:()=>Lu,appendPreviewToken:()=>k_,approveProjectAccessRequest:()=>Gs,approveTask:()=>id,archiveProject:()=>Ft,assignTicket:()=>gd,attachGroupToProject:()=>Qs,authenticatedFetch:()=>q,backendApi:()=>i,bindSlackIdentity:()=>Rm,bindTeamsIdentity:()=>Tm,brokerProjectSecretRequest:()=>li,buildInstancePath:()=>Yu,buildPresentationTemplateImageUrl:()=>R_,buildPresentationTemplatePdfUrl:()=>C_,buildPreviewAuthEndpoint:()=>Pl,buildPublicTemplateUrl:()=>lp,buildRuntimePresentationConversionUrl:()=>dp,buildSandboxTemplate:()=>io,buildStaticFileHealthPreviewUrl:()=>jy,buildStaticFileLocalUrl:()=>Iy,buildStaticFilePreviewUrl:()=>Ay,buildStaticFileServicePath:()=>bu,buildTunnelEventStreamUrl:()=>hp,buildWebProxyUrl:()=>My,bulkActReviewItems:()=>gc,bulkDeletePolicies:()=>tf,bulkImportPolicies:()=>nf,callConnector:()=>_i,cancelAccountDeletion:()=>Vf,cancelAccountInvite:()=>ps,cancelSandbox:()=>ax,cancelSandboxUpdate:()=>Mx,cancelScheduledChange:()=>Pa,cancelSubscription:()=>ba,checkAccessEmail:()=>Jx,childMapByParent:()=>tb,claimComputer:()=>Gx,claimPerSeatBilling:()=>km,claimWarmProjectSession:()=>Mo,classifyPart:()=>al,classifyPreviewProbeStatus:()=>pp,classifyTurn:()=>$u,clearModelDefault:()=>ra,clearSessionFresh:()=>am,closeChangeRequest:()=>So,closeMilestone:()=>Gd,collectTurnParts:()=>Qh,commentTicket:()=>fd,commitSessionChanges:()=>Ro,computeStatusFromPart:()=>ll,configureAutoTopup:()=>va,configureKortix:()=>yt,confirmCheckoutSession:()=>ya,connectEmail:()=>La,connectSlack:()=>ja,convertPresentationToGoogleSlides:()=>iy,convertRuntimePresentation:()=>T_,copyFile:()=>Qe,costExportUrl:()=>Ra,createAccount:()=>is,createAccountAuditWebhook:()=>Rc,createAccountToken:()=>bc,createApp:()=>Gc,createAppAccessSession:()=>zc,createAppDeployment:()=>Jc,createAuditWebhook:()=>Of,createBackup:()=>vx,createCheckoutSession:()=>fa,createConnector:()=>Bi,createFile:()=>Xe,createGatewayKey:()=>ic,createGroup:()=>Bm,createHttpSessionSyncController:()=>yp,createInstance:()=>Ox,createKortix:()=>Ru,createKortixPty:()=>zr,createMarketplaceInstallSession:()=>py,createMilestone:()=>Fd,createPerSeatCheckout:()=>Pm,createPolicy:()=>Ym,createPortalSession:()=>ha,createProject:()=>Ss,createProjectAgent:()=>vd,createProjectCliToken:()=>Pc,createProjectRepo:()=>vs,createProjectResourceGrant:()=>ti,createProjectSession:()=>Me,createProjectTrigger:()=>Jo,createRole:()=>lf,createSSEStream:()=>bp,createSandbox:()=>ex,createSandboxShare:()=>fc,createSandboxTemplate:()=>no,createScimToken:()=>ff,createServiceAccountApi:()=>qf,createSessionPublicShare:()=>$o,createSsoGroupMapping:()=>vf,createTask:()=>nd,createTicket:()=>ud,createTunnelEventStream:()=>j_,declineAccountInvite:()=>fs,declineInvite:()=>wx,deleteAccountImmediately:()=>Jf,deleteApp:()=>Hc,deleteAuditWebhook:()=>Lf,deleteBackup:()=>Rx,deleteConnector:()=>Hi,deleteCredential:()=>Vd,deleteEnv:()=>Nr,deleteFile:()=>Ye,deleteGatewayBudget:()=>rc,deleteGitHubInstallation:()=>Fs,deleteGroup:()=>Hm,deleteInstance:()=>Fx,deleteKortixProject:()=>qd,deleteMilestone:()=>Kd,deletePersonalProjectSecret:()=>yi,deletePolicy:()=>ef,deleteProjectAgent:()=>Rd,deleteProjectProviderOAuth:()=>di,deleteProjectResourceGrant:()=>ni,deleteProjectSecret:()=>mi,deleteProjectSession:()=>Go,deleteProjectTrigger:()=>Qo,deleteRole:()=>df,deleteSandboxTemplate:()=>so,deleteServiceAccountApi:()=>Mf,deleteSsoGroupMapping:()=>Cf,deleteSsoProvider:()=>wf,deleteTask:()=>od,deleteTicket:()=>yd,describeAccountInvite:()=>gs,describeConnectorTool:()=>xi,detachGroupFromProject:()=>Zs,detectLocalhostUrls:()=>yu,disableServiceAccountApi:()=>Df,disconnectEmail:()=>Ga,disconnectGitHubApp:()=>x_,disconnectSlack:()=>qa,discoverConnectionOAuth2:()=>Qg,discoverConnectorAuth:()=>Ki,discoverLocalSandbox:()=>sx,downloadAccountAudit:()=>p_,dropClientForUrl:()=>rg,dropPublicClientForUrl:()=>og,ensurePmSession:()=>wd,ensurePreviewSessionCookie:()=>w_,ensureProjectConnectorConnection:()=>Vg,ensureSandbox:()=>op,ensureWarmProjectSession:()=>Do,env:()=>Bl,exportAccountAudit:()=>vc,extractGatewayErrorDetails:()=>de,extractInstanceRoute:()=>Oe,featureDisabledKey:()=>Or,featureFlags:()=>Bb,fetchAccountStateWithToken:()=>xm,fetchAccountsWithToken:()=>jg,fetchCostExportCsv:()=>Cm,fetchProjectArchive:()=>uo,fetchProjectsForAccountWithToken:()=>Gg,files:()=>Vl,finalizeAppArtifact:()=>Yt,finalizeConnectorSetupLink:()=>n_,findFiles:()=>Ve,findLastTextPart:()=>Yh,findText:()=>Je,fireProjectTrigger:()=>Zo,fixSandboxWithAgent:()=>to,formatBillingErrorForUI:()=>Lr,formatCost:()=>gb,formatDuration:()=>ub,formatOpenCodeRuntimeError:()=>rp,formatRuntimeError:()=>rp,formatTokens:()=>mb,formatTranscript:()=>Au,generateSessionId:()=>Tu,getAccount:()=>os,getAccountDeletionStatus:()=>Wf,getAccountState:()=>ca,getAccountStateMinimal:()=>la,getActiveInstanceIdFromCookie:()=>ep,getAdminProviderAnalytics:()=>ey,getAdminProviderDistribution:()=>Qf,getAdminProviderFallback:()=>ny,getAdminRole:()=>Xf,getAgentCardLabel:()=>Fu,getAgentConfig:()=>ym,getAgentPersona:()=>Td,getAllVersions:()=>$x,getAnsweredQuestionParts:()=>eb,getApp:()=>Bc,getAppAccess:()=>Nc,getAppDeployment:()=>Qc,getAppDeploymentLogs:()=>Yc,getApprovalLink:()=>uy,getAuthToken:()=>me,getAuthTokenWithRetry:()=>Mr,getAutoTopupSettings:()=>Sa,getAutoTopupSetupStatus:()=>_m,getBillingCreditBreakdown:()=>da,getBillingTierConfigurations:()=>ma,getBillingTransactionsSummary:()=>pa,getBillingUsageHistory:()=>ga,getChangeRequest:()=>xo,getChangeRequestDiff:()=>_o,getChangeRequestMergePreview:()=>Po,getChildSessionError:()=>Gh,getChildSessionId:()=>Lh,getChildSessionToolParts:()=>Bh,getClient:()=>ce,getClientForUrl:()=>te,getConnectStatus:()=>zi,getConnectionOAuth2Application:()=>Xg,getConnectionOAuth2Status:()=>tm,getConnectionPolicies:()=>nm,getConnectorCatalog:()=>Lt,getConnectorConfig:()=>Fi,getConnectorPolicies:()=>Ui,getConnectorSetupLink:()=>e_,getCostSummary:()=>vm,getCurrentInstanceIdFromPathname:()=>Zu,getCurrentInstanceIdFromWindow:()=>Nb,getCurrentProject:()=>ts,getDefaultAccountState:()=>aa,getDiagnostics:()=>Nh,getDirectory:()=>Ou,getDiscoverConnector:()=>Bt,getDiscoverIntegration:()=>im,getEmailInstallation:()=>Oa,getEmailMode:()=>Fa,getEnterpriseDemo:()=>Hf,getFileStatus:()=>ze,getFileWithDir:()=>cl,getFilename:()=>Uu,getFullChangelog:()=>cp,getGatewayBreakdown:()=>Ya,getGatewayBudgets:()=>tc,getGatewayErrors:()=>ec,getGatewayKeys:()=>sc,getGatewayLog:()=>Ja,getGatewayOverview:()=>Xa,getGatewayRoutingPolicy:()=>Ha,getGatewaySeries:()=>Qa,getGatewaySessions:()=>Za,getGitHubAppStatus:()=>f_,getGitHubInstallation:()=>Es,getGoogleAuthUrl:()=>sy,getGroup:()=>Gm,getHiddenToolParts:()=>Uh,getInvite:()=>Px,getJustavpsServerTypes:()=>Ux,getKortixProject:()=>jd,getKortixProjectBySession:()=>Ed,getKortixPtyWebSocketUrl:()=>Xr,getLatestSandboxVersion:()=>Ex,getMaintenanceConfig:()=>a_,getManagedGitStatus:()=>Ug,getMarketplaceCatalogItem:()=>Dc,getMarketplaceCatalogItemFile:()=>Mc,getMfaRequired:()=>hf,getMilestone:()=>Ud,getModelDefaults:()=>ta,getOAuthConsentRequest:()=>Yx,getOpenCodeConfigInvalidError:()=>fl,getPartText:()=>Dh,getPatPolicy:()=>jf,getPermissionForTool:()=>Wh,getProject:()=>qt,getProjectActivity:()=>Ad,getProjectCommit:()=>mo,getProjectCommitDiff:()=>fo,getProjectDetail:()=>Dt,getProjectFileHistory:()=>yo,getProjectGitToken:()=>ws,getProjectLlmCatalog:()=>Mt,getProjectLlmCatalogProviders:()=>qg,getProjectModelPicker:()=>Ut,getProjectSandboxHealth:()=>Kt,getProjectSandboxProviderTransition:()=>Og,getProjectSession:()=>Ht,getProjectSessionConfigState:()=>Bo,getProjectSessionScope:()=>No,getProrationPreview:()=>ka,getProviders:()=>Yb,getProxyBaseUrl:()=>Ey,getPublicClientForUrl:()=>ig,getPublicMarketplaceItem:()=>zx,getPublicMarketplaceItemFile:()=>Vx,getPublicSessionShare:()=>oy,getPublicSessionShareMessages:()=>ay,getPublicShareByToken:()=>i_,getPublicTemplate:()=>m_,getPublicVoiceJoin:()=>cy,getPublicVoiceTranscript:()=>ly,getQuestionForTool:()=>zh,getReferralCode:()=>qm,getReferralStats:()=>Um,getRetryInfo:()=>fb,getRetryMessage:()=>yb,getReviewItem:()=>uc,getRolePermissions:()=>of,getRoleUsage:()=>cf,getSSHConnection:()=>Ax,getSandbox:()=>Zb,getSandboxById:()=>tx,getSandboxMemberScopes:()=>fx,getSandboxPortUrl:()=>Qb,getSandboxProvisionStatus:()=>Bx,getSandboxProvisionStreamUrl:()=>Kx,getSandboxUpdateStatus:()=>jx,getSandboxUrl:()=>bl,getSecretSetupLink:()=>r_,getServerHealth:()=>Et,getServiceLogs:()=>Zd,getSessionAudit:()=>Uo,getSessionCost:()=>db,getSessionCostRecord:()=>Vt,getSessionHealth:()=>nl,getSessionPolicy:()=>Rf,getSessionPreviewCandidates:()=>jo,getSessionTranscript:()=>Oo,getShellModePart:()=>rb,getSlackChannelFile:()=>Da,getSlackInstallation:()=>Ia,getSlackManifest:()=>$a,getSlackMode:()=>Ea,getSsoProvider:()=>_f,getStaticFileHealthPath:()=>xu,getSupabaseAccessToken:()=>wt,getSupabaseAccessTokenWithRetry:()=>ee,getTask:()=>Zp,getTaskStatus:()=>td,getTemplate:()=>dy,getTicket:()=>cd,getToolInfo:()=>Kh,getTranscriptFilename:()=>Iu,getTurnCost:()=>pb,getTurnError:()=>ab,getTurnErrorDetails:()=>cb,getTurnStatus:()=>lb,getUsageRollup:()=>Ca,getUserRolesWithToken:()=>l_,getVersionDiff:()=>ho,getViewerSandboxScopes:()=>mx,getVoiceTranscript:()=>Fo,getWorkingState:()=>ib,grantSandboxProjectAccess:()=>bx,groupMessagesIntoTurns:()=>Xh,hasDiffs:()=>hb,hasLocalhostUrls:()=>Ry,hasPreviewTarget:()=>hu,heartbeatGapEvent:()=>Su,humanizeToolName:()=>rn,importSsoProviderFromMetadata:()=>kf,installTemplate:()=>gy,invalidateTokenCache:()=>Ke,inviteAccountMember:()=>ls,inviteProjectMember:()=>Ws,inviteRepoCollaborator:()=>Ps,isAdminBypassEnabled:()=>Tg,isAgentPart:()=>jh,isAppRouteUrl:()=>fu,isAttachment:()=>Du,isBillingError:()=>Fr,isCompactionPart:()=>Eh,isConfigured:()=>ht,isDestructivePhase:()=>Ix,isExternalUrl:()=>Fy,isFeatureDisabledError:()=>Ur,isFilePart:()=>qu,isInstanceDetailPath:()=>Kb,isInstanceScopedAppPath:()=>Qu,isInternalLocalhostUrl:()=>Dy,isInviteSent:()=>Hg,isLastUserMessage:()=>sb,isManagedGithubProject:()=>$g,isOpenCodeConfigInvalidError:()=>Jb,isPatchPart:()=>qh,isPreviewUrl:()=>qy,isProxiableLocalhostUrl:()=>_u,isReasoningPart:()=>on,isRuntimeReady:()=>yy,isServerReachable:()=>ns,isSessionFresh:()=>Ao,isSessionStartError:()=>um,isShellMode:()=>Gu,isSnapshotPart:()=>$h,isSubdomainPreviewUrl:()=>P_,isTextPart:()=>ge,isToolPart:()=>se,isToolPartHidden:()=>Oh,isUnderSandboxRoot:()=>Yr,isWebProxyUrl:()=>Oy,kortixPty:()=>Hl,leaveAccount:()=>bs,linkGitHubInstallation:()=>Os,linkRepository:()=>js,listAccountAudit:()=>wc,listAccountAuditWebhooks:()=>Cc,listAccountInvites:()=>us,listAccountMembers:()=>cs,listAccountSessions:()=>Af,listAccountTokens:()=>hc,listAccounts:()=>ss,listActions:()=>af,listAdminSandboxes:()=>Yf,listAgentIdentities:()=>sf,listAllConnections:()=>wi,listAppDeployments:()=>Xc,listApps:()=>Lc,listAuditEvents:()=>Gf,listAuditWebhooks:()=>Uf,listBackups:()=>Sx,listBillingTransactions:()=>ua,listChangeRequests:()=>bo,listChannelBindings:()=>jm,listColumns:()=>hd,listConnections:()=>ki,listConnectorTools:()=>tt,listConnectors:()=>Ei,listCostByProject:()=>Sm,listCredentialEvents:()=>Nd,listCredentials:()=>Hd,listDiscoverConnectors:()=>Gt,listDiscoverIntegrations:()=>sm,listEnv:()=>Kr,listFeaturedMarketplaces:()=>qc,listFields:()=>xd,listFiles:()=>We,listGatewayLogs:()=>Va,listGitHubInstallations:()=>$s,listGitHubRepositories:()=>Ds,listGitHubRepositoryBranches:()=>Ms,listGroupMembers:()=>Nm,listGroupProjectGrants:()=>zm,listGroups:()=>Lm,listKortixProjectSessions:()=>$d,listKortixProjects:()=>Id,listKortixPty:()=>Wr,listLinkableGitHubInstallations:()=>qs,listMarketplaceCatalogItems:()=>Ec,listMarketplaceSources:()=>Uc,listMarketplaces:()=>$c,listMemberGroups:()=>Jm,listMemberProjectAccess:()=>Xm,listMilestoneEvents:()=>Od,listMilestones:()=>Md,listPendingApprovals:()=>ri,listPendingProjectInvites:()=>zs,listPipedreamApps:()=>Ni,listPipedreamSections:()=>Wi,listPolicies:()=>Qm,listProjectAccess:()=>Ks,listProjectAccessRequests:()=>Ls,listProjectAgents:()=>Sd,listProjectAudit:()=>Sc,listProjectBranches:()=>po,listProjectCliTokens:()=>_c,listProjectCommits:()=>go,listProjectFiles:()=>ao,listProjectGroupGrants:()=>Xs,listProjectPolicies:()=>Xi,listProjectResourceGrants:()=>ei,listProjectSandboxTemplates:()=>Yi,listProjectSandboxes:()=>oo,listProjectSecrets:()=>oi,listProjectSessions:()=>De,listProjectSnapshots:()=>Zi,listProjectTriggers:()=>Vo,listProjects:()=>ke,listProjectsForAccount:()=>_s,listPublicMarketplaceItems:()=>Nx,listPublicMarketplaces:()=>Wx,listReferrals:()=>Om,listReviewItems:()=>lc,listRoles:()=>rf,listSandboxMembers:()=>lx,listSandboxProjectMembers:()=>hx,listSandboxShares:()=>mc,listSandboxes:()=>rx,listScimTokens:()=>mf,listServiceAccountsApi:()=>$f,listServiceTemplates:()=>Yd,listServices:()=>Qd,listSessionCosts:()=>Aa,listSessionPublicShares:()=>Eo,listSessionsNeedingInput:()=>si,listSsoGroupMappings:()=>Sf,listTaskEvents:()=>ed,listTasks:()=>Yp,listTemplates:()=>Pd,listTicketEvents:()=>ld,listTickets:()=>ad,loadHttpSessionHistory:()=>fp,markInstanceError:()=>Lx,markSessionFresh:()=>nt,mergeChangeRequest:()=>wo,migrateAdminSandboxProvider:()=>ty,mkdir:()=>Ze,narrowChatEvent:()=>vu,normalizeAppPathname:()=>Vb,normalizeExternalInput:()=>Ly,normalizeToolName:()=>lt,openChangeRequest:()=>ko,openEventStream:()=>tn,openStressTestStream:()=>d_,parseBillingError:()=>be,parseFlagOverride:()=>Gb,parseLocalhostUrl:()=>ot,parseOpenCodeErrorPayload:()=>np,parseSubdomainUrl:()=>sl,parseWebProxyUrl:()=>Uy,patchKortixProject:()=>Dd,pipedreamConnect:()=>Gi,pipedreamConnectConnection:()=>Ii,pipedreamFinalize:()=>Ji,pipedreamFinalizeConnection:()=>ji,platformConfig:()=>E,pollConnectionOAuth2DeviceAuthorization:()=>em,pollProjectProviderOAuth:()=>pi,previewGatewayRoute:()=>za,previewMfaRequired:()=>bf,probeEffectivePermission:()=>Bf,probeEffectivePermissions:()=>Kf,probePreviewPort:()=>v_,projectSessionStartSeed:()=>lm,provisionProject:()=>Cs,provisionProjectStream:()=>Mg,provisionProjectWithToken:()=>Bg,proxyLocalhostUrl:()=>rl,proxyUrlToInternal:()=>$y,purchaseCredits:()=>wa,putConnectionOAuth2Application:()=>Jg,reactivateSandbox:()=>cx,reactivateSubscription:()=>xa,readBlob:()=>Ee,readFile:()=>je,readProjectFile:()=>lo,rebuildProjectSnapshot:()=>eo,reconcileConnection:()=>Si,reconcileMemberConnection:()=>vi,reconcileServices:()=>tg,recordPlatformLogout:()=>Qx,refreshReferralCode:()=>Dm,registerAppArtifact:()=>Qt,registerService:()=>ng,rejectProjectAccessRequest:()=>Bs,relativizePath:()=>Hh,reloadProjectSessionConfig:()=>Ko,reloadProjectSessionConfigStream:()=>Ho,removeAccountAuditWebhook:()=>Ac,removeAccountMember:()=>ys,removeGroupMember:()=>Vm,removeKortixPty:()=>Jr,removeMarketplaceSource:()=>Fc,removeSandboxMember:()=>px,renameFile:()=>et,renameSandbox:()=>nx,reopenChangeRequest:()=>vo,reopenMilestone:()=>Bd,replaceColumns:()=>bd,replaceFields:()=>_d,replaceTemplates:()=>kd,requestAccountDeletion:()=>zf,requestChangesOnChangeRequest:()=>Co,requestProjectAccess:()=>Kg,requestProjectConnector:()=>jc,requestProjectSecret:()=>Ic,resendAccountInvite:()=>ds,resendPendingProjectInvite:()=>Js,resetClient:()=>sg,resetGatewayRoutingPolicy:()=>Wa,resetPublicClient:()=>ag,resetSandboxUpdateStatus:()=>Dx,resolveApproval:()=>ii,restartProjectSession:()=>rt,restartSandbox:()=>ix,restoreBackup:()=>Cx,revealCredential:()=>zd,revokeAccountSession:()=>If,revokeAccountToken:()=>xc,revokeConnection:()=>Ri,revokeGatewayKey:()=>oc,revokePendingProjectInvite:()=>Vs,revokeProjectAccess:()=>Ns,revokeProjectCliToken:()=>kc,revokeSandboxInvite:()=>_x,revokeSandboxProjectAccess:()=>xx,revokeSandboxShare:()=>yc,revokeScimToken:()=>yf,revokeSessionPublicShare:()=>qo,rewriteLocalhostUrl:()=>ue,rollbackApp:()=>tl,runGatewayPlayground:()=>ac,saveGitHubInstallation:()=>Us,scheduleDowngrade:()=>_a,searchConnectorTools:()=>bi,searchProjectFiles:()=>co,sendReferralEmails:()=>Fm,serviceAction:()=>eg,sessionStartKey:()=>dm,setActiveInstanceCookie:()=>Wb,setAdminBypass:()=>Rg,setAdminProviderDistribution:()=>Zf,setAdminProviderFallback:()=>ry,setAgentScope:()=>sa,setBootstrapAuthToken:()=>Vp,setCachedAuthToken:()=>zp,setConnectionPolicies:()=>rm,setConnectorAuthorizationStrategy:()=>Di,setConnectorCredential:()=>Vi,setConnectorCredentialMode:()=>qi,setConnectorName:()=>Li,setConnectorPolicies:()=>Oi,setConnectorSecretBinding:()=>om,setConnectorSensitive:()=>Mi,setDefaultConnection:()=>Ai,setEnterpriseDemo:()=>Nf,setEnv:()=>Hr,setGatewayBudget:()=>nc,setGatewayRoutingPolicy:()=>Na,setGitHubAppFromExisting:()=>h_,setGitHubAppPat:()=>b_,setMaintenanceConfig:()=>c_,setMeetBotName:()=>Ka,setMemberSuperAdmin:()=>gf,setMfaRequired:()=>xf,setModelDefault:()=>na,setPersonalProjectSecret:()=>fi,setProjectModelEnablement:()=>gm,setProjectOnboardingComplete:()=>Is,setProjectOnboardingProfile:()=>Lg,setProjectPolicies:()=>Qi,setProjectSecretStrategy:()=>ci,setProjectSessionModel:()=>zo,setProjectSessionScope:()=>Wo,setProjectSessionSharing:()=>Io,setProjectTriggersActivation:()=>Yo,setupSSH:()=>Tx,shellExitCode:()=>dl,shouldHideResponsePart:()=>ob,shouldShowToolPart:()=>Mu,sortSessions:()=>nb,splitUserParts:()=>Mh,startApp:()=>Zc,startConnectionOAuth2Authorization:()=>Yg,startConnectionOAuth2DeviceAuthorization:()=>Zg,startConnectorSetupLink:()=>t_,startGitHubAppManifest:()=>y_,startProjectProviderOAuth:()=>ui,startProjectSession:()=>Se,startSessionWithToken:()=>o_,startTask:()=>sd,stopApp:()=>el,stopProjectSession:()=>st,stopSandbox:()=>ox,stripAnsi:()=>Jh,stripInstancePrefix:()=>Hb,stripTrailingSlashes:()=>xe,submitAccessRequest:()=>Xx,submitDemoRequest:()=>u_,submitOAuthConsent:()=>Zx,submitReviewItem:()=>pc,submitSecretSetupLink:()=>s_,supabaseClient:()=>Ag,syncConnectors:()=>$i,syncSubscription:()=>wm,systemReload:()=>lg,toDaemonPath:()=>_e,toInstanceAwarePath:()=>zb,toInternalUrl:()=>Pu,toSandboxAbsolutePath:()=>Zr,toWorkspaceRelative:()=>es,toolInfo:()=>sn,toolViewModel:()=>Ju,transcribeAudio:()=>cc,triggerSandboxUpdate:()=>qx,triggersRequest:()=>Kl,turnHasSteps:()=>Zh,unassignTicket:()=>md,unwrapError:()=>Y,updateAccountAuditWebhook:()=>Tc,updateAccountMemberRole:()=>hs,updateAccountName:()=>as,updateAgentConfig:()=>hm,updateApp:()=>Kc,updateAppAccess:()=>Wc,updateAuditWebhook:()=>Ff,updateChannelBinding:()=>Em,updateConnectionCredential:()=>Ci,updateEmailPolicy:()=>Ba,updateExperimentalFeature:()=>Ts,updateFeatureFlag:()=>Rs,updateGroup:()=>Km,updateKortixPty:()=>Vr,updateMilestone:()=>Ld,updatePatPolicy:()=>Ef,updatePolicy:()=>Zm,updateProject:()=>Ot,updateProjectAccess:()=>Hs,updateProjectAgent:()=>Cd,updateProjectDefaultAgent:()=>oa,updateProjectGroupGrant:()=>Ys,updateProjectSandboxProvider:()=>As,updateProjectSession:()=>Lo,updateProjectTrigger:()=>Xo,updateRole:()=>uf,updateRolePermissions:()=>pf,updateSandboxMemberRole:()=>dx,updateSandboxMemberScope:()=>yx,updateSandboxMemberSpendCap:()=>gx,updateSandboxTemplate:()=>ro,updateSessionPolicy:()=>Tf,updateTask:()=>rd,updateTemplateWarmPool:()=>Fg,updateTicket:()=>pd,updateTicketStatus:()=>dd,uploadAppArtifactArchive:()=>Vc,uploadConnectorAttachment:()=>Pi,uploadFile:()=>$e,uploadSlackChannelFile:()=>Ma,upsertCredential:()=>Wd,upsertProjectGitCredential:()=>gi,upsertProjectSecret:()=>ai,upsertSsoProvider:()=>Pf,validateProjectManifest:()=>ks,validateReferralCode:()=>Mm,validateToken:()=>xs,verifyGatewayProvider:()=>$m});var Cp={backendUrl:"",getToken:async()=>null},fn=null,ft=null;function Rp(t){ft=t}function Tp(){return ft}function yt(t,e){e?.global!==!1&&(fn=t)}function E(){return ft?.()??fn??Cp}function ht(){return fn!==null||ft?.()!==void 0}var Sl=({onRequest:t,onSseError:e,onSseEvent:n,responseTransformer:r,responseValidator:s,sseDefaultRetryDelay:c,sseMaxRetryAttempts:u,sseMaxRetryDelay:p,sseSleepFn:g,url:f,...m})=>{let _,x=g??(l=>new Promise(h=>setTimeout(h,l)));return{stream:async function*(){let l=c??3e3,h=0,a=m.signal??new AbortController().signal;for(;!a.aborted;){h++;let A=m.headers instanceof Headers?m.headers:new Headers(m.headers);_!==void 0&&A.set("Last-Event-ID",_);try{let j={redirect:"follow",...m,body:m.serializedBody,headers:A,signal:a},v=new Request(f,j);t&&(v=await t(f,j));let $=await(m.fetch??globalThis.fetch)(v);if(!$.ok)throw new Error(`SSE failed: ${$.status} ${$.statusText}`);if(!$.body)throw new Error("No body in SSE response");let w=$.body.pipeThrough(new TextDecoderStream).getReader(),F="",K=()=>{try{w.cancel()}catch{}};a.addEventListener("abort",K);try{for(;;){let{done:y,value:C}=await w.read();if(y)break;F+=C,F=F.replace(/\r\n/g,`
1
+ "use strict";var Kortix=(()=>{var bn=Object.defineProperty;var Ep=Object.getOwnPropertyDescriptor;var $p=Object.getOwnPropertyNames;var qp=Object.prototype.hasOwnProperty;var Dp=(t,e)=>{for(var n in e)bn(t,n,{get:e[n],enumerable:!0})},Mp=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of $p(e))!qp.call(t,s)&&s!==n&&bn(t,s,{get:()=>e[s],enumerable:!(r=Ep(e,s))||r.enumerable});return t};var Up=t=>Mp(bn({},"__esModule",{value:!0}),t);var Y_={};Dp(Y_,{ACTIVE_INSTANCE_COOKIE:()=>gt,ApiError:()=>R,AuthError:()=>ye,BillingError:()=>ce,COST_MARKUP:()=>hl,DEFAULT_TRANSCRIPT_OPTIONS:()=>dl,DESTRUCTIVE_PHASES:()=>xp,FEATURE_DISABLED_CODE:()=>Ct,FEATURE_FLAG_KEYS:()=>Vg,FEATURE_NOT_SUPPORTED_CODE:()=>cu,HostBoundaryError:()=>oe,IMPERSONATION_HEADER:()=>nu,INSTANCE_SCOPED_ROUTES:()=>cp,MODEL_NOT_SERVABLE_CODE:()=>lu,PREVIEW_PROBE_TIMEOUT_MS:()=>N_,PROVISION_IN_FLIGHT_CODE:()=>uu,PublicSessionShareError:()=>Zt,PublicVoiceJoinError:()=>en,RequestTooLargeError:()=>he,RuntimeNotReadyError:()=>At,SANDBOX_FS_ROOTS:()=>Et,SANDBOX_PORTS:()=>re,SessionNotReadyError:()=>ct,SessionStartError:()=>Vt,__getConfigResolver:()=>Lp,__setConfigResolver:()=>Fp,acceptAccountInvite:()=>ks,acceptInvite:()=>Bx,actReviewItem:()=>xc,activateConnection:()=>Mi,addGroupMembers:()=>df,addMarketplaceSource:()=>Hc,addSandboxMember:()=>Ix,allDescendantIds:()=>Yu,appendPreviewToken:()=>B_,approveProjectAccessRequest:()=>Js,approveTask:()=>hd,archiveProject:()=>Bt,assignTicket:()=>vd,attachGroupToProject:()=>ii,authenticatedFetch:()=>q,backendApi:()=>i,bindSlackIdentity:()=>Wm,bindTeamsIdentity:()=>zm,brokerProjectSecretRequest:()=>hi,buildInstancePath:()=>up,buildPresentationTemplateImageUrl:()=>z_,buildPresentationTemplatePdfUrl:()=>W_,buildPreviewAuthEndpoint:()=>Tl,buildPublicTemplateUrl:()=>Pp,buildRuntimePresentationConversionUrl:()=>Sp,buildSandboxTemplate:()=>mo,buildStaticFileHealthPreviewUrl:()=>Xy,buildStaticFileLocalUrl:()=>Jy,buildStaticFilePreviewUrl:()=>Vy,buildStaticFileServicePath:()=>Iu,buildTunnelEventStreamUrl:()=>Ap,buildWebProxyUrl:()=>th,bulkActReviewItems:()=>_c,bulkDeletePolicies:()=>Pf,bulkImportPolicies:()=>kf,callConnector:()=>Ti,cancelAccountDeletion:()=>gy,cancelAccountInvite:()=>xs,cancelSandbox:()=>Rx,cancelSandboxUpdate:()=>n_,cancelScheduledChange:()=>Ta,cancelSubscription:()=>va,checkAccessEmail:()=>f_,childMapByParent:()=>Pb,claimComputer:()=>a_,claimPerSeatBilling:()=>Gm,claimWarmProjectSession:()=>No,classifyPart:()=>ml,classifyPreviewProbeStatus:()=>wp,classifyTurn:()=>Hu,clearImpersonationSession:()=>us,clearModelDefault:()=>pa,clearSessionFresh:()=>wm,closeChangeRequest:()=>Eo,closeMilestone:()=>Zd,collectTurnParts:()=>hb,commentTicket:()=>Rd,commitSessionChanges:()=>Do,computeStatusFromPart:()=>yl,configureAutoTopup:()=>Ea,configureKortix:()=>ht,confirmCheckoutSession:()=>wa,connectEmail:()=>za,connectSlack:()=>Oa,convertPresentationToGoogleSlides:()=>Sy,convertRuntimePresentation:()=>V_,copyFile:()=>Ye,costExportUrl:()=>qa,createAccount:()=>gs,createAccountAuditWebhook:()=>qc,createAccountToken:()=>vc,createApp:()=>Vc,createAppAccessSession:()=>el,createAppDeployment:()=>nl,createAuditWebhook:()=>ry,createBackup:()=>Hx,createCheckoutSession:()=>ka,createConnector:()=>Xi,createFile:()=>Qe,createGatewayKey:()=>dc,createGroup:()=>cf,createHttpSessionSyncController:()=>Tp,createInstance:()=>s_,createKortix:()=>Fu,createKortixPty:()=>Qr,createMarketplaceInstallSession:()=>Iy,createMilestone:()=>Qd,createPerSeatCheckout:()=>Lm,createPolicy:()=>bf,createPortalSession:()=>Sa,createProject:()=>Es,createProjectAgent:()=>Ud,createProjectCliToken:()=>Tc,createProjectRepo:()=>$s,createProjectResourceGrant:()=>li,createProjectSession:()=>Ue,createProjectTrigger:()=>ra,createRole:()=>Tf,createSSEStream:()=>Ip,createSandbox:()=>_x,createSandboxShare:()=>kc,createSandboxTemplate:()=>uo,createScimToken:()=>qf,createServiceAccountApi:()=>Zf,createSessionPublicShare:()=>Go,createSsoGroupMapping:()=>Nf,createTask:()=>md,createTicket:()=>kd,createTunnelEventStream:()=>Q_,declineAccountInvite:()=>ws,declineInvite:()=>Kx,deleteAccountImmediately:()=>my,deleteApp:()=>Qc,deleteAuditWebhook:()=>iy,deleteBackup:()=>zx,deleteConnector:()=>Yi,deleteCredential:()=>og,deleteEnv:()=>Jr,deleteFile:()=>Ze,deleteGatewayBudget:()=>uc,deleteGitHubInstallation:()=>zs,deleteGroup:()=>uf,deleteInstance:()=>i_,deleteKortixProject:()=>Wd,deleteMilestone:()=>tg,deletePersonalProjectSecret:()=>Si,deletePolicy:()=>_f,deleteProjectAgent:()=>Fd,deleteProjectProviderOAuth:()=>_i,deleteProjectResourceGrant:()=>ui,deleteProjectSecret:()=>ki,deleteProjectSession:()=>Jo,deleteProjectTrigger:()=>ia,deleteRole:()=>jf,deleteSandboxTemplate:()=>go,deleteServiceAccountApi:()=>ty,deleteSsoGroupMapping:()=>Hf,deleteSsoProvider:()=>Bf,deleteTask:()=>bd,deleteTicket:()=>Td,describeAccountInvite:()=>Ps,describeConnectorTool:()=>Ri,detachGroupFromProject:()=>ai,detectLocalhostUrls:()=>Tu,disableServiceAccountApi:()=>ey,disconnectEmail:()=>Va,disconnectGitHubApp:()=>F_,disconnectSlack:()=>Ga,discoverConnectionOAuth2:()=>gm,discoverConnectorAuth:()=>Qi,discoverLocalSandbox:()=>Sx,downloadAccountAudit:()=>j_,dropClientForUrl:()=>fg,dropPublicClientForUrl:()=>bg,ensurePmSession:()=>Dd,ensurePreviewSessionCookie:()=>K_,ensureProjectConnectorConnection:()=>um,ensureSandbox:()=>bp,ensureWarmProjectSession:()=>Ko,env:()=>Jl,exportAccountAudit:()=>Ec,extractGatewayErrorDetails:()=>se,extractInstanceRoute:()=>Fe,featureDisabledKey:()=>Br,featureFlags:()=>cx,fetchAccountStateWithToken:()=>Om,fetchAccountsWithToken:()=>zg,fetchCostExportCsv:()=>Hm,fetchProjectArchive:()=>xo,fetchProjectsForAccountWithToken:()=>rm,files:()=>tu,finalizeAppArtifact:()=>nn,finalizeConnectorSetupLink:()=>k_,findFiles:()=>Je,findLastTextPart:()=>bb,findText:()=>Xe,fireProjectTrigger:()=>aa,fixSandboxWithAgent:()=>lo,formatBillingErrorForUI:()=>Nr,formatCost:()=>$b,formatDuration:()=>Ib,formatOpenCodeRuntimeError:()=>fp,formatRuntimeError:()=>fp,formatTokens:()=>qb,formatTranscript:()=>Gu,generateSessionId:()=>Lu,getAccount:()=>ms,getAccountDeletionStatus:()=>py,getAccountState:()=>fa,getAccountStateMinimal:()=>ya,getActiveInstanceIdFromCookie:()=>dp,getAdminProviderAnalytics:()=>xy,getAdminProviderDistribution:()=>yy,getAdminProviderFallback:()=>Py,getAdminRole:()=>fy,getAgentCardLabel:()=>Qu,getAgentConfig:()=>Em,getAgentPersona:()=>Ld,getAllVersions:()=>Zx,getAnsweredQuestionParts:()=>_b,getApp:()=>Jc,getAppAccess:()=>Yc,getAppDeployment:()=>sl,getAppDeploymentLogs:()=>il,getApprovalLink:()=>Ay,getAuthToken:()=>me,getAuthTokenWithRetry:()=>Lr,getAutoTopupSettings:()=>ja,getAutoTopupSetupStatus:()=>Fm,getBillingCreditBreakdown:()=>xa,getBillingTierConfigurations:()=>Pa,getBillingTransactionsSummary:()=>ba,getBillingUsageHistory:()=>_a,getChangeRequest:()=>Ro,getChangeRequestDiff:()=>To,getChangeRequestMergePreview:()=>Ao,getChildSessionError:()=>ab,getChildSessionId:()=>ob,getChildSessionToolParts:()=>cb,getClient:()=>le,getClientForUrl:()=>te,getConnectStatus:()=>to,getConnectionOAuth2Application:()=>dm,getConnectionOAuth2Status:()=>hm,getConnectionPolicies:()=>bm,getConnectorCatalog:()=>Kt,getConnectorConfig:()=>zi,getConnectorPolicies:()=>Hi,getConnectorSetupLink:()=>__,getCostSummary:()=>Nm,getCurrentInstanceIdFromPathname:()=>pp,getCurrentInstanceIdFromWindow:()=>px,getCurrentProject:()=>is,getDefaultAccountState:()=>Jt,getDiagnostics:()=>pb,getDirectory:()=>Xu,getDiscoverConnector:()=>Ht,getDiscoverIntegration:()=>Pm,getEmailInstallation:()=>Ha,getEmailMode:()=>Wa,getEnterpriseDemo:()=>ly,getFileStatus:()=>Ve,getFileWithDir:()=>fl,getFilename:()=>Ju,getFullChangelog:()=>_p,getGatewayBreakdown:()=>ic,getGatewayBudgets:()=>cc,getGatewayErrors:()=>ac,getGatewayKeys:()=>pc,getGatewayLog:()=>nc,getGatewayOverview:()=>rc,getGatewayRoutingPolicy:()=>Qa,getGatewaySeries:()=>sc,getGatewaySessions:()=>oc,getGitHubAppStatus:()=>D_,getGitHubInstallation:()=>Ls,getGoogleAuthUrl:()=>wy,getGroup:()=>af,getHiddenToolParts:()=>rb,getImpersonationSession:()=>iu,getInvite:()=>Gx,getJustavpsServerTypes:()=>r_,getKortixProject:()=>Kd,getKortixProjectBySession:()=>Nd,getKortixPtyWebSocketUrl:()=>es,getLatestSandboxVersion:()=>Yx,getMaintenanceConfig:()=>R_,getManagedGitStatus:()=>Zg,getMarketplaceCatalogItem:()=>Bc,getMarketplaceCatalogItemFile:()=>Kc,getMfaRequired:()=>Mf,getMilestone:()=>Jd,getModelDefaults:()=>la,getOAuthConsentRequest:()=>b_,getOpenCodeConfigInvalidError:()=>kl,getPartText:()=>tb,getPatPolicy:()=>Xf,getPermissionForTool:()=>db,getProject:()=>Ut,getProjectActivity:()=>Gd,getProjectCommit:()=>ko,getProjectCommitDiff:()=>wo,getProjectDetail:()=>Ot,getProjectFileHistory:()=>So,getProjectGitToken:()=>js,getProjectLlmCatalog:()=>Ft,getProjectLlmCatalogProviders:()=>Xg,getProjectModelPicker:()=>Lt,getProjectSandboxHealth:()=>Wt,getProjectSandboxProviderTransition:()=>em,getProjectSession:()=>zt,getProjectSessionConfigState:()=>Xo,getProjectSessionScope:()=>Zo,getProrationPreview:()=>Aa,getProviders:()=>bx,getProxyBaseUrl:()=>Qy,getPublicClientForUrl:()=>hg,getPublicMarketplaceItem:()=>g_,getPublicMarketplaceItemFile:()=>m_,getPublicSessionShare:()=>vy,getPublicSessionShareMessages:()=>Cy,getPublicShareByToken:()=>v_,getPublicTemplate:()=>q_,getPublicVoiceJoin:()=>Ry,getPublicVoiceTranscript:()=>Ty,getQuestionForTool:()=>gb,getReferralCode:()=>Zm,getReferralStats:()=>nf,getRetryInfo:()=>Db,getRetryMessage:()=>Mb,getReviewItem:()=>hc,getRolePermissions:()=>vf,getRoleUsage:()=>Rf,getSSHConnection:()=>Jx,getSandbox:()=>xx,getSandboxById:()=>Px,getSandboxMemberScopes:()=>Dx,getSandboxPortUrl:()=>hx,getSandboxProvisionStatus:()=>c_,getSandboxProvisionStreamUrl:()=>l_,getSandboxUpdateStatus:()=>Qx,getSandboxUrl:()=>vl,getSecretSetupLink:()=>w_,getServerHealth:()=>$t,getServiceLogs:()=>pg,getSessionAudit:()=>Ho,getSessionCost:()=>Eb,getSessionCostRecord:()=>Yt,getSessionHealth:()=>ll,getSessionPolicy:()=>Wf,getSessionPreviewCandidates:()=>Fo,getSessionTranscript:()=>Wo,getShellModePart:()=>wb,getSlackChannelFile:()=>Ba,getSlackInstallation:()=>Ua,getSlackManifest:()=>La,getSlackMode:()=>Fa,getSsoProvider:()=>Ff,getStaticFileHealthPath:()=>ju,getSupabaseAccessToken:()=>St,getSupabaseAccessTokenWithRetry:()=>ee,getTask:()=>pd,getTaskStatus:()=>gd,getTemplate:()=>jy,getTicket:()=>_d,getToolInfo:()=>lb,getTranscriptFilename:()=>Bu,getTurnCost:()=>jb,getTurnError:()=>Rb,getTurnErrorDetails:()=>Tb,getTurnStatus:()=>Ab,getUsageRollup:()=>$a,getUserRolesWithToken:()=>A_,getVersionDiff:()=>vo,getViewerSandboxScopes:()=>qx,getVoiceTranscript:()=>zo,getWorkingState:()=>vb,grantSandboxProjectAccess:()=>Ox,grantSecretToAgent:()=>Dm,groupMessagesIntoTurns:()=>yb,hasDiffs:()=>Ub,hasLocalhostUrls:()=>Wy,hasPreviewTarget:()=>Au,heartbeatGapEvent:()=>Mu,humanizeToolName:()=>cn,impersonationHeaders:()=>Dt,importSsoProviderFromMetadata:()=>Gf,installTemplate:()=>Ey,invalidateTokenCache:()=>Ne,inviteAccountMember:()=>hs,inviteProjectMember:()=>ei,inviteRepoCollaborator:()=>As,isAdminBypassEnabled:()=>Ng,isAgentPart:()=>Qh,isAppRouteUrl:()=>Ru,isAttachment:()=>zu,isBillingError:()=>Kr,isCompactionPart:()=>Yh,isConfigured:()=>bt,isDestructivePhase:()=>Xx,isExternalUrl:()=>sh,isFeatureDisabledError:()=>Gr,isFilePart:()=>Wu,isImpersonationSessionLive:()=>ru,isInstanceDetailPath:()=>lx,isInstanceScopedAppPath:()=>lp,isInternalLocalhostUrl:()=>eh,isInviteSent:()=>om,isLastUserMessage:()=>Sb,isManagedGithubProject:()=>Jg,isOpenCodeConfigInvalidError:()=>fx,isPatchPart:()=>eb,isPreviewUrl:()=>Zy,isProxiableLocalhostUrl:()=>Eu,isReasoningPart:()=>un,isRuntimeReady:()=>Dy,isServerReachable:()=>os,isSessionFresh:()=>Uo,isSessionStartError:()=>Cm,isShellMode:()=>Zu,isSnapshotPart:()=>Zh,isSubdomainPreviewUrl:()=>G_,isTextPart:()=>ge,isToolPart:()=>ie,isToolPartHidden:()=>sb,isUnderSandboxRoot:()=>ns,isWebProxyUrl:()=>rh,kortixPty:()=>Ql,leaveAccount:()=>Cs,linkGitHubInstallation:()=>Ws,linkRepository:()=>Fs,listAccountAudit:()=>Ic,listAccountAuditWebhooks:()=>$c,listAccountInvites:()=>bs,listAccountMembers:()=>ys,listAccountSessions:()=>Vf,listAccountTokens:()=>Sc,listAccounts:()=>ds,listActions:()=>Cf,listAdminSandboxes:()=>hy,listAgentIdentities:()=>Sf,listAllConnections:()=>ji,listAppDeployments:()=>rl,listApps:()=>zc,listAuditEvents:()=>oy,listAuditWebhooks:()=>ny,listBackups:()=>Nx,listBillingTransactions:()=>ha,listChangeRequests:()=>Co,listChannelBindings:()=>Xm,listColumns:()=>Ad,listConnections:()=>Ii,listConnectorTools:()=>nt,listConnectors:()=>Li,listCostByProject:()=>Km,listCredentialEvents:()=>rg,listCredentials:()=>ng,listDiscoverConnectors:()=>Nt,listDiscoverIntegrations:()=>_m,listEnv:()=>zr,listFeaturedMarketplaces:()=>Gc,listFields:()=>jd,listFiles:()=>ze,listGatewayLogs:()=>tc,listGitHubInstallations:()=>Gs,listGitHubRepositories:()=>Ks,listGitHubRepositoryBranches:()=>Ns,listGroupMembers:()=>pf,listGroupProjectGrants:()=>gf,listGroups:()=>of,listKortixProjectSessions:()=>Hd,listKortixProjects:()=>Bd,listKortixPty:()=>Xr,listLinkableGitHubInstallations:()=>Bs,listMarketplaceCatalogItems:()=>Fc,listMarketplaceSources:()=>Nc,listMarketplaces:()=>Lc,listMemberGroups:()=>ff,listMemberProjectAccess:()=>yf,listMilestoneEvents:()=>Xd,listMilestones:()=>Vd,listPendingApprovals:()=>pi,listPendingProjectInvites:()=>ti,listPipedreamApps:()=>Zi,listPipedreamSections:()=>eo,listPolicies:()=>hf,listProjectAccess:()=>Qs,listProjectAccessRequests:()=>Vs,listProjectAgents:()=>Md,listProjectAudit:()=>jc,listProjectBranches:()=>_o,listProjectCliTokens:()=>Rc,listProjectCommits:()=>Po,listProjectFiles:()=>yo,listProjectGroupGrants:()=>si,listProjectPolicies:()=>so,listProjectResourceGrants:()=>ci,listProjectSandboxTemplates:()=>oo,listProjectSandboxes:()=>fo,listProjectSecrets:()=>mi,listProjectSessions:()=>Me,listProjectSnapshots:()=>ao,listProjectTriggers:()=>na,listProjects:()=>we,listProjectsForAccount:()=>Ts,listPublicMarketplaceItems:()=>p_,listPublicMarketplaces:()=>d_,listReferrals:()=>rf,listReviewItems:()=>yc,listRoles:()=>wf,listSandboxMembers:()=>Ax,listSandboxProjectMembers:()=>Ux,listSandboxShares:()=>Pc,listSandboxes:()=>wx,listScimTokens:()=>$f,listServiceAccountsApi:()=>Yf,listServiceTemplates:()=>ug,listServices:()=>lg,listSessionCosts:()=>Ma,listSessionPublicShares:()=>Lo,listSessionsNeedingInput:()=>di,listSsoGroupMappings:()=>Kf,listTaskEvents:()=>dd,listTasks:()=>ud,listTemplates:()=>$d,listTicketEvents:()=>Pd,listTickets:()=>xd,loadHttpSessionHistory:()=>Rp,markInstanceError:()=>o_,markSessionFresh:()=>rt,mergeChangeRequest:()=>jo,migrateAdminSandboxProvider:()=>_y,mkdir:()=>et,narrowChatEvent:()=>Uu,normalizeAppPathname:()=>mx,normalizeExternalInput:()=>ih,normalizeToolName:()=>ut,openChangeRequest:()=>Io,openEventStream:()=>on,openStressTestStream:()=>E_,parseBillingError:()=>be,parseFlagOverride:()=>ax,parseLocalhostUrl:()=>at,parseOpenCodeErrorPayload:()=>mp,parseSubdomainUrl:()=>pl,parseWebProxyUrl:()=>nh,patchKortixProject:()=>zd,pipedreamConnect:()=>Ji,pipedreamConnectConnection:()=>Oi,pipedreamFinalize:()=>ro,pipedreamFinalizeConnection:()=>Fi,platformConfig:()=>E,pollConnectionOAuth2DeviceAuthorization:()=>ym,pollProjectProviderOAuth:()=>xi,previewGatewayRoute:()=>ec,previewMfaRequired:()=>Uf,probeEffectivePermission:()=>ay,probeEffectivePermissions:()=>cy,probePreviewPort:()=>H_,projectSessionStartSeed:()=>vm,provisionProject:()=>qs,provisionProjectStream:()=>Yg,provisionProjectWithToken:()=>sm,proxyLocalhostUrl:()=>ul,proxyUrlToInternal:()=>Yy,purchaseCredits:()=>Ia,putConnectionOAuth2Application:()=>pm,reactivateSandbox:()=>Tx,reactivateSubscription:()=>Ca,readBlob:()=>$e,readFile:()=>Ee,readProjectFile:()=>bo,rebuildProjectSnapshot:()=>co,reconcileConnection:()=>Ei,reconcileMemberConnection:()=>$i,reconcileServices:()=>gg,recordPlatformLogout:()=>h_,refreshReferralCode:()=>ef,registerAppArtifact:()=>tn,registerService:()=>mg,rejectProjectAccessRequest:()=>Xs,relativizePath:()=>ub,reloadProjectSessionConfig:()=>Qo,reloadProjectSessionConfigStream:()=>Yo,removeAccountAuditWebhook:()=>Mc,removeAccountMember:()=>Ss,removeGroupMember:()=>mf,removeKortixPty:()=>Zr,removeMarketplaceSource:()=>Wc,removeSandboxMember:()=>jx,renameFile:()=>tt,renameSandbox:()=>kx,reopenChangeRequest:()=>$o,reopenMilestone:()=>eg,replaceColumns:()=>Id,replaceFields:()=>Ed,replaceTemplates:()=>qd,requestAccountDeletion:()=>dy,requestChangesOnChangeRequest:()=>qo,requestProjectAccess:()=>im,requestProjectConnector:()=>Oc,requestProjectSecret:()=>Uc,resendAccountInvite:()=>_s,resendPendingProjectInvite:()=>ri,resetClient:()=>yg,resetGatewayRoutingPolicy:()=>Za,resetPublicClient:()=>xg,resetSandboxUpdateStatus:()=>t_,resolveApproval:()=>gi,resolvedPlan:()=>Um,restartProjectSession:()=>st,restartSandbox:()=>vx,restoreBackup:()=>Wx,revealCredential:()=>ig,revokeAccountSession:()=>Jf,revokeAccountToken:()=>Cc,revokeConnection:()=>Di,revokeGatewayKey:()=>gc,revokePendingProjectInvite:()=>ni,revokeProjectAccess:()=>Zs,revokeProjectCliToken:()=>Ac,revokeSandboxInvite:()=>Lx,revokeSandboxProjectAccess:()=>Fx,revokeSandboxShare:()=>wc,revokeScimToken:()=>Df,revokeSessionPublicShare:()=>Bo,rewriteLocalhostUrl:()=>pe,rollbackApp:()=>cl,runGatewayPlayground:()=>mc,saveGitHubInstallation:()=>Hs,scheduleDowngrade:()=>Ra,searchConnectorTools:()=>Ci,searchProjectFiles:()=>ho,sendReferralEmails:()=>sf,serviceAction:()=>dg,sessionStartKey:()=>Tm,setActiveInstanceCookie:()=>dx,setAdminBypass:()=>Kg,setAdminProviderDistribution:()=>by,setAdminProviderFallback:()=>ky,setAgentScope:()=>da,setBootstrapAuthToken:()=>od,setCachedAuthToken:()=>id,setConnectionPolicies:()=>xm,setConnectorAuthorizationStrategy:()=>Ki,setConnectorCredential:()=>no,setConnectorCredentialMode:()=>Bi,setConnectorName:()=>Vi,setConnectorPolicies:()=>Wi,setConnectorSecretBinding:()=>km,setConnectorSensitive:()=>Ni,setDefaultConnection:()=>Ui,setEnterpriseDemo:()=>uy,setEnv:()=>Vr,setGatewayBudget:()=>lc,setGatewayRoutingPolicy:()=>Ya,setGitHubAppFromExisting:()=>U_,setGitHubAppPat:()=>O_,setImpersonationSession:()=>$g,setMaintenanceConfig:()=>T_,setMeetBotName:()=>Xa,setMemberSuperAdmin:()=>Ef,setMfaRequired:()=>Of,setModelDefault:()=>ua,setPersonalProjectSecret:()=>wi,setProjectModelEnablement:()=>Am,setProjectOnboardingComplete:()=>Os,setProjectOnboardingProfile:()=>nm,setProjectPolicies:()=>io,setProjectSecretStrategy:()=>yi,setProjectSessionModel:()=>ta,setProjectSessionScope:()=>ea,setProjectSessionSharing:()=>Oo,setProjectTriggersActivation:()=>oa,setupSSH:()=>Vx,shellExitCode:()=>xl,shouldAttachImpersonation:()=>ou,shouldHideResponsePart:()=>Cb,shouldShowToolPart:()=>Vu,sortSessions:()=>kb,splitUserParts:()=>nb,startApp:()=>ol,startConnectionOAuth2Authorization:()=>mm,startConnectionOAuth2DeviceAuthorization:()=>fm,startConnectorSetupLink:()=>P_,startGitHubAppManifest:()=>M_,startProjectProviderOAuth:()=>bi,startProjectSession:()=>ve,startSessionWithToken:()=>C_,startTask:()=>yd,stopApp:()=>al,stopProjectSession:()=>it,stopSandbox:()=>Cx,stripAnsi:()=>fb,stripInstancePrefix:()=>ux,stripTrailingSlashes:()=>xe,submitAccessRequest:()=>y_,submitDemoRequest:()=>I_,submitOAuthConsent:()=>x_,submitReviewItem:()=>bc,submitSecretSetupLink:()=>S_,subscribeToImpersonation:()=>qg,supabaseClient:()=>Hg,syncConnectors:()=>Gi,syncSubscription:()=>Bm,systemReload:()=>Pg,toDaemonPath:()=>_e,toInstanceAwarePath:()=>gx,toInternalUrl:()=>$u,toSandboxAbsolutePath:()=>rs,toWorkspaceRelative:()=>ss,toolInfo:()=>ln,toolViewModel:()=>ap,transcribeAudio:()=>fc,triggerSandboxUpdate:()=>e_,triggersRequest:()=>Xl,turnHasSteps:()=>xb,unassignTicket:()=>Cd,unwrapError:()=>Y,updateAccountAuditWebhook:()=>Dc,updateAccountMemberRole:()=>vs,updateAccountName:()=>fs,updateAgentConfig:()=>$m,updateApp:()=>Xc,updateAppAccess:()=>Zc,updateAuditWebhook:()=>sy,updateChannelBinding:()=>Qm,updateConnectionCredential:()=>qi,updateEmailPolicy:()=>Ja,updateExperimentalFeature:()=>Ms,updateFeatureFlag:()=>Ds,updateGroup:()=>lf,updateKortixPty:()=>Yr,updateMilestone:()=>Yd,updatePatPolicy:()=>Qf,updatePolicy:()=>xf,updateProject:()=>Gt,updateProjectAccess:()=>Ys,updateProjectAgent:()=>Od,updateProjectDefaultAgent:()=>ma,updateProjectGroupGrant:()=>oi,updateProjectSandboxProvider:()=>Us,updateProjectSession:()=>Vo,updateProjectTrigger:()=>sa,updateRole:()=>Af,updateRolePermissions:()=>If,updateSandboxMemberRole:()=>Ex,updateSandboxMemberScope:()=>Mx,updateSandboxMemberSpendCap:()=>$x,updateSandboxTemplate:()=>po,updateSessionPolicy:()=>zf,updateTask:()=>fd,updateTemplateWarmPool:()=>tm,updateTicket:()=>wd,updateTicketStatus:()=>Sd,uploadAppArtifactArchive:()=>tl,uploadConnectorAttachment:()=>Ai,uploadFile:()=>qe,uploadSlackChannelFile:()=>Ka,upsertCredential:()=>sg,upsertProjectGitCredential:()=>Pi,upsertProjectSecret:()=>fi,upsertSsoProvider:()=>Lf,validateProjectManifest:()=>Is,validateReferralCode:()=>tf,validateToken:()=>Rs,verifyGatewayProvider:()=>Ym});var Op={backendUrl:"",getToken:async()=>null},xn=null,yt=null;function Fp(t){yt=t}function Lp(){return yt}function ht(t,e){e?.global!==!1&&(xn=t)}function E(){return yt?.()??xn??Op}function bt(){return xn!==null||yt?.()!==void 0}var jl=({onRequest:t,onSseError:e,onSseEvent:n,responseTransformer:r,responseValidator:s,sseDefaultRetryDelay:c,sseMaxRetryAttempts:u,sseMaxRetryDelay:p,sseSleepFn:g,url:f,...m})=>{let _,x=g??(l=>new Promise(h=>setTimeout(h,l)));return{stream:async function*(){let l=c??3e3,h=0,a=m.signal??new AbortController().signal;for(;!a.aborted;){h++;let A=m.headers instanceof Headers?m.headers:new Headers(m.headers);_!==void 0&&A.set("Last-Event-ID",_);try{let j={redirect:"follow",...m,body:m.serializedBody,headers:A,signal:a},v=new Request(f,j);t&&(v=await t(f,j));let $=await(m.fetch??globalThis.fetch)(v);if(!$.ok)throw new Error(`SSE failed: ${$.status} ${$.statusText}`);if(!$.body)throw new Error("No body in SSE response");let w=$.body.pipeThrough(new TextDecoderStream).getReader(),F="",K=()=>{try{w.cancel()}catch{}};a.addEventListener("abort",K);try{for(;;){let{done:y,value:C}=await w.read();if(y)break;F+=C,F=F.replace(/\r\n/g,`
2
2
  `).replace(/\r/g,`
3
3
  `);let M=F.split(`
4
4
 
5
5
  `);F=M.pop()??"";for(let z of M){let V=z.split(`
6
- `),J=[],Q;for(let U of V)if(U.startsWith("data:"))J.push(U.replace(/^data:\s*/,""));else if(U.startsWith("event:"))Q=U.replace(/^event:\s*/,"");else if(U.startsWith("id:"))_=U.replace(/^id:\s*/,"");else if(U.startsWith("retry:")){let N=Number.parseInt(U.replace(/^retry:\s*/,""),10);Number.isNaN(N)||(l=N)}let H,D=!1;if(J.length){let U=J.join(`
7
- `);try{H=JSON.parse(U),D=!0}catch{H=U}}D&&(s&&await s(H),r&&(H=await r(H))),n?.({data:H,event:Q,id:_,retry:l}),J.length&&(yield H)}}}finally{a.removeEventListener("abort",K),w.releaseLock()}break}catch(j){if(e?.(j),u!==void 0&&h>=u)break;let v=Math.min(l*2**(h-1),p??3e4);await x(v)}}}()}};var Ap=t=>{switch(t){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},Ip=t=>{switch(t){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},jp=t=>{switch(t){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},bt=({allowReserved:t,explode:e,name:n,style:r,value:s})=>{if(!e){let p=(t?s:s.map(g=>encodeURIComponent(g))).join(Ip(r));switch(r){case"label":return`.${p}`;case"matrix":return`;${n}=${p}`;case"simple":return p;default:return`${n}=${p}`}}let c=Ap(r),u=s.map(p=>r==="label"||r==="simple"?t?p:encodeURIComponent(p):Re({allowReserved:t,name:n,value:p})).join(c);return r==="label"||r==="matrix"?c+u:u},Re=({allowReserved:t,name:e,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`${e}=${t?n:encodeURIComponent(n)}`},xt=({allowReserved:t,explode:e,name:n,style:r,value:s,valueOnly:c})=>{if(s instanceof Date)return c?s.toISOString():`${n}=${s.toISOString()}`;if(r!=="deepObject"&&!e){let g=[];Object.entries(s).forEach(([m,_])=>{g=[...g,m,t?_:encodeURIComponent(_)]});let f=g.join(",");switch(r){case"form":return`${n}=${f}`;case"label":return`.${f}`;case"matrix":return`;${n}=${f}`;default:return f}}let u=jp(r),p=Object.entries(s).map(([g,f])=>Re({allowReserved:t,name:r==="deepObject"?`${n}[${g}]`:g,value:f})).join(u);return r==="label"||r==="matrix"?u+p:p};var Ep=/\{[^{}]+\}/g,$p=({path:t,url:e})=>{let n=e,r=e.match(Ep);if(r)for(let s of r){let c=!1,u=s.substring(1,s.length-1),p="simple";u.endsWith("*")&&(c=!0,u=u.substring(0,u.length-1)),u.startsWith(".")?(u=u.substring(1),p="label"):u.startsWith(";")&&(u=u.substring(1),p="matrix");let g=t[u];if(g==null)continue;if(Array.isArray(g)){n=n.replace(s,bt({explode:c,name:u,style:p,value:g}));continue}if(typeof g=="object"){n=n.replace(s,xt({explode:c,name:u,style:p,value:g,valueOnly:!0}));continue}if(p==="matrix"){n=n.replace(s,`;${Re({name:u,value:g})}`);continue}let f=encodeURIComponent(p==="label"?`.${g}`:g);n=n.replace(s,f)}return n},vl=({baseUrl:t,path:e,query:n,querySerializer:r,url:s})=>{let c=s.startsWith("/")?s:`/${s}`,u=(t??"")+c;e&&(u=$p({path:e,url:u}));let p=n?r(n):"";return p.startsWith("?")&&(p=p.substring(1)),p&&(u+=`?${p}`),u};function yn(t){let e=t.body!==void 0;if(e&&t.bodySerializer)return"serializedBody"in t?t.serializedBody!==void 0&&t.serializedBody!==""?t.serializedBody:null:t.body!==""?t.body:null;if(e)return t.body}var Cl=async(t,e)=>{let n=typeof e=="function"?await e(t):e;if(n)return t.scheme==="bearer"?`Bearer ${n}`:t.scheme==="basic"?`Basic ${btoa(n)}`:n};var hn={bodySerializer:t=>JSON.stringify(t,(e,n)=>typeof n=="bigint"?n.toString():n)};var Rl=({parameters:t={},...e}={})=>r=>{let s=[];if(r&&typeof r=="object")for(let c in r){let u=r[c];if(u==null)continue;let p=t[c]||e;if(Array.isArray(u)){let g=bt({allowReserved:p.allowReserved,explode:!0,name:c,style:"form",value:u,...p.array});g&&s.push(g)}else if(typeof u=="object"){let g=xt({allowReserved:p.allowReserved,explode:!0,name:c,style:"deepObject",value:u,...p.object});g&&s.push(g)}else{let g=Re({allowReserved:p.allowReserved,name:c,value:u});g&&s.push(g)}}return s.join("&")},Tl=t=>{if(!t)return"stream";let e=t.split(";")[0]?.trim();if(e){if(e.startsWith("application/json")||e.endsWith("+json"))return"json";if(e==="multipart/form-data")return"formData";if(["application/","audio/","image/","video/"].some(n=>e.startsWith(n)))return"blob";if(e.startsWith("text/"))return"text"}},qp=(t,e)=>e?!!(t.headers.has(e)||t.query?.[e]||t.headers.get("Cookie")?.includes(`${e}=`)):!1,Al=async({security:t,...e})=>{for(let n of t){if(qp(e,n.name))continue;let r=await Cl(n,e.auth);if(!r)continue;let s=n.name??"Authorization";switch(n.in){case"query":e.query||(e.query={}),e.query[s]=r;break;case"cookie":e.headers.append("Cookie",`${s}=${r}`);break;default:e.headers.set(s,r);break}}},bn=t=>vl({baseUrl:t.baseUrl,path:t.path,query:t.query,querySerializer:typeof t.querySerializer=="function"?t.querySerializer:Rl(t.querySerializer),url:t.url}),xn=(t,e)=>{let n={...t,...e};return n.baseUrl?.endsWith("/")&&(n.baseUrl=n.baseUrl.substring(0,n.baseUrl.length-1)),n.headers=_t(t.headers,e.headers),n},Dp=t=>{let e=[];return t.forEach((n,r)=>{e.push([r,n])}),e},_t=(...t)=>{let e=new Headers;for(let n of t){if(!n)continue;let r=n instanceof Headers?Dp(n):Object.entries(n);for(let[s,c]of r)if(c===null)e.delete(s);else if(Array.isArray(c))for(let u of c)e.append(s,u);else c!==void 0&&e.set(s,typeof c=="object"?JSON.stringify(c):c)}return e},Le=class{fns=[];clear(){this.fns=[]}eject(e){let n=this.getInterceptorIndex(e);this.fns[n]&&(this.fns[n]=null)}exists(e){let n=this.getInterceptorIndex(e);return!!this.fns[n]}getInterceptorIndex(e){return typeof e=="number"?this.fns[e]?e:-1:this.fns.indexOf(e)}update(e,n){let r=this.getInterceptorIndex(e);return this.fns[r]?(this.fns[r]=n,e):!1}use(e){return this.fns.push(e),this.fns.length-1}},Il=()=>({error:new Le,request:new Le,response:new Le}),Mp=Rl({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),Up={"Content-Type":"application/json"},Ge=(t={})=>({...hn,headers:Up,parseAs:"auto",querySerializer:Mp,...t});var Be=(t={})=>{let e=xn(Ge(),t),n=()=>({...e}),r=f=>(e=xn(e,f),n()),s=Il(),c=async f=>{let m={...e,...f,fetch:f.fetch??e.fetch??globalThis.fetch,headers:_t(e.headers,f.headers),serializedBody:void 0};m.security&&await Al({...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 _=bn(m);return{opts:m,url:_}},u=async f=>{let{opts:m,url:_}=await c(f),x={redirect:"follow",...m,body:yn(m)},I=new Request(_,x);for(let k of s.request.fns)k&&(I=await k(I,m));let T=m.fetch,l;try{l=await T(I)}catch(k){let $=k;for(let w of s.error.fns)w&&($=await w(k,void 0,I,m));if($=$||{},m.throwOnError)throw $;return m.responseStyle==="data"?void 0:{error:$,request:I,response:void 0}}for(let k of s.response.fns)k&&(l=await k(l,I,m));let h={request:I,response:l};if(l.ok){let k=(m.parseAs==="auto"?Tl(l.headers.get("Content-Type")):m.parseAs)??"json";if(l.status===204||l.headers.get("Content-Length")==="0"){let w;switch(k){case"arrayBuffer":case"blob":case"text":w=await l[k]();break;case"formData":w=new FormData;break;case"stream":w=l.body;break;default:w={};break}return m.responseStyle==="data"?w:{data:w,...h}}let $;switch(k){case"arrayBuffer":case"blob":case"formData":case"text":$=await l[k]();break;case"json":{let w=await l.text();$=w?JSON.parse(w):{};break}case"stream":return m.responseStyle==="data"?l.body:{data:l.body,...h}}return k==="json"&&(m.responseValidator&&await m.responseValidator($),m.responseTransformer&&($=await m.responseTransformer($))),m.responseStyle==="data"?$:{data:$,...h}}let a=await l.text(),A;try{A=JSON.parse(a)}catch{}let j=A??a,v=j;for(let k of s.error.fns)k&&(v=await k(j,l,I,m));if(v=v||{},m.throwOnError)throw v;return m.responseStyle==="data"?void 0:{error:v,...h}},p=f=>m=>u({...m,method:f}),g=f=>async m=>{let{opts:_,url:x}=await c(m);return Sl({..._,body:_.body,headers:_.headers,method:f,onRequest:async(I,T)=>{let l=new Request(I,T);for(let h of s.request.fns)h&&(l=await h(l,_));return l},serializedBody:yn(_),url:x})};return{buildUrl:bn,connect:p("CONNECT"),delete:p("DELETE"),get:p("GET"),getConfig:n,head:p("HEAD"),interceptors:s,options:p("OPTIONS"),patch:p("PATCH"),post:p("POST"),put:p("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:p("TRACE")}};var Op={$body_:"body",$headers_:"headers",$path_:"path",$query_:"query"},Fp=Object.entries(Op),jl=(t,e)=>{e||(e=new Map);for(let n of t)"in"in n?n.key&&e.set(n.key,{in:n.in,map:n.map}):"key"in n?e.set(n.key,{map:n.map}):n.args&&jl(n.args,e);return e},Lp=t=>{for(let[e,n]of Object.entries(t))n&&typeof n=="object"&&!Object.keys(n).length&&delete t[e]},d=(t,e)=>{let n={body:{},headers:{},path:{},query:{}},r=jl(e),s;for(let[c,u]of t.entries())if(e[c]&&(s=e[c]),!!s)if("in"in s)if(s.key){let p=r.get(s.key),g=p.map||s.key;p.in&&(n[p.in][g]=u)}else n.body=u;else for(let[p,g]of Object.entries(u??{})){let f=r.get(p);if(f)if(f.in){let m=f.map||p;n[f.in][m]=g}else n[f.map]=g;else{let m=Fp.find(([_])=>p.startsWith(_));if(m){let[_,x]=m;n[x][p.slice(_.length)]=g}else if("allowExtra"in s&&s.allowExtra){for(let[_,x]of Object.entries(s.allowExtra))if(x){n[_][p]=g;break}}}}return Lp(n),n};var El=Be(Ge({baseUrl:"http://localhost:4096"}));var b=class{client;constructor(e){this.client=e?.client??El}},_n=class{defaultKey="default";instances=new Map;get(e){let n=this.instances.get(e??this.defaultKey);if(!n)throw new Error('No SDK client found. Create one with "new OpencodeClient()" to fix this error.');return n}set(e,n){this.instances.set(n??this.defaultKey,e)}},Pn=class extends b{remove(e,n){let r=d([e],[{args:[{in:"path",key:"providerID"}]}]);return(n?.client??this.client).delete({url:"/auth/{providerID}",...n,...r})}set(e,n){let r=d([e],[{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}})}},kn=class extends b{log(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/agent",...n,...r})}skills(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/skill",...n,...r})}},wn=class extends b{moveSession(e,n){let r=d([e],[{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}})}},Sn=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/capabilities",...n,...r})}},vn=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/console",...n,...r})}listOrgs(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/console/orgs",...n,...r})}switchOrg(e,n){let r=d([e],[{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}})}},Cn=class extends b{list(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},Rn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/resource",...n,...r})}},Tn=class extends b{generateName(e,n){let r=d([e],[{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}})}},An=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace/adapter",...n,...r})}},In=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace",...n,...r})}create(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/experimental/workspace/sync-list",...n,...r})}status(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace/status",...n,...r})}remove(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 An({client:this.client})}},jn=class extends b{_controlPlane;get controlPlane(){return this._controlPlane??=new wn({client:this.client})}_capabilities;get capabilities(){return this._capabilities??=new Sn({client:this.client})}_console;get console(){return this._console??=new vn({client:this.client})}_session;get session(){return this._session??=new Cn({client:this.client})}_resource;get resource(){return this._resource??=new Rn({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new Tn({client:this.client})}_workspace;get workspace(){return this._workspace??=new In({client:this.client})}},En=class extends b{get(e){return(e?.client??this.client).get({url:"/global/config",...e})}update(e,n){let r=d([e],[{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}})}},$n=class extends b{health(e){return(e?.client??this.client).get({url:"/global/health",...e})}event(e){return(e?.client??this.client).sse.get({url:"/global/event",...e})}dispose(e){return(e?.client??this.client).post({url:"/global/dispose",...e})}upgrade(e,n){let r=d([e],[{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 En({client:this.client})}},qn=class extends b{subscribe(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).sse.get({url:"/event",...n,...r})}},Dn=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/config",...n,...r})}update(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/config/providers",...n,...r})}},Mn=class extends b{list(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/tool/ids",...n,...r})}},Un=class extends b{remove(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/worktree",...n,...r})}create(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 b{text(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"pattern"}]}]);return(n?.client??this.client).get({url:"/find",...n,...r})}files(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"query"}]}]);return(n?.client??this.client).get({url:"/find/symbol",...n,...r})}},Fn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"path"}]}]);return(n?.client??this.client).get({url:"/file",...n,...r})}read(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/file/status",...n,...r})}},Ln=class extends b{dispose(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/instance/dispose",...n,...r})}},Gn=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/path",...n,...r})}},Bn=class extends b{raw(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs/diff/raw",...n,...r})}},Kn=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs",...n,...r})}status(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs/status",...n,...r})}diff(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 Bn({client:this.client})}},Hn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/command",...n,...r})}},Nn=class extends b{status(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/lsp",...n,...r})}},Wn=class extends b{status(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/formatter",...n,...r})}},zn=class extends b{remove(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},Vn=class extends b{status(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/mcp",...n,...r})}add(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 zn({client:this.client})}},Jn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/project",...n,...r})}current(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/project/current",...n,...r})}initGit(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/project/git/init",...n,...r})}update(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},Xn=class extends b{shells(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/pty/shells",...n,...r})}list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/pty",...n,...r})}create(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},Qn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/question",...n,...r})}reply(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},Yn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/permission",...n,...r})}reply(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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}})}},Zn=class extends b{authorize(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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}})}},er=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/provider",...n,...r})}auth(e,n){let r=d([e],[{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 Zn({client:this.client})}},tr=class extends b{list(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/session/status",...n,...r})}delete(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},nr=class extends b{delete(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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}})}},rr=class extends b{list(e,n){let r=d([e],[{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}})}},sr=class extends b{start(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/sync/start",...n,...r})}replay(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 rr({client:this.client})}},ir=class extends b{next(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/tui/control/next",...n,...r})}response(e,n){let r=d([e],[{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}})}},or=class extends b{appendPrompt(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-help",...n,...r})}openSessions(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-sessions",...n,...r})}openThemes(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-themes",...n,...r})}openModels(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-models",...n,...r})}submitPrompt(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/submit-prompt",...n,...r})}clearPrompt(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/clear-prompt",...n,...r})}executeCommand(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 ir({client:this.client})}},ar=class extends b{get(e){return(e?.client??this.client).get({url:"/api/health",...e})}},cr=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/location",...n,...r})}},lr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/agent",...n,...r})}},ur=class extends b{stage(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/revert/clear",...n,...r})}commit(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/revert/commit",...n,...r})}},pr=class extends b{list(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/permission",...n,...r})}reply(e,n){let r=d([e],[{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}})}},dr=class extends b{list(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/question",...n,...r})}reply(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/question/{requestID}/reject",...n,...r})}},gr=class extends b{list(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}",...n,...r})}switchAgent(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/compact",...n,...r})}wait(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/wait",...n,...r})}context(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/context",...n,...r})}messages(e,n){let r=d([e],[{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 ur({client:this.client})}_permission;get permission(){return this._permission??=new pr({client:this.client})}_question;get question(){return this._question??=new dr({client:this.client})}},mr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/model",...n,...r})}},fr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/provider",...n,...r})}get(e,n){let r=d([e],[{args:[{in:"path",key:"providerID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/provider/{providerID}",...n,...r})}},yr=class extends b{key(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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}})}},hr=class extends b{cancel(e,n){let r=d([e],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).delete({url:"/api/integration/attempt/{attemptID}",...n,...r})}status(e,n){let r=d([e],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/integration/attempt/{attemptID}",...n,...r})}complete(e,n){let r=d([e],[{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}})}},br=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/integration",...n,...r})}get(e,n){let r=d([e],[{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 yr({client:this.client})}_attempt;get attempt(){return this._attempt??=new hr({client:this.client})}},xr=class extends b{remove(e,n){let r=d([e],[{args:[{in:"path",key:"credentialID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).delete({url:"/api/credential/{credentialID}",...n,...r})}update(e,n){let r=d([e],[{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}})}},_r=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/permission/request",...n,...r})}},Pr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"projectID"}]}]);return(n?.client??this.client).get({url:"/api/permission/saved",...n,...r})}remove(e,n){let r=d([e],[{args:[{in:"path",key:"id"}]}]);return(n?.client??this.client).delete({url:"/api/permission/saved/{id}",...n,...r})}},kr=class extends b{_request;get request(){return this._request??=new _r({client:this.client})}_saved;get saved(){return this._saved??=new Pr({client:this.client})}},wr=class extends b{read(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/fs/read/*",...n,...r})}list(e,n){let r=d([e],[{args:[{in:"query",key:"location"},{in:"query",key:"path"}]}]);return(n?.client??this.client).get({url:"/api/fs/list",...n,...r})}find(e,n){let r=d([e],[{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})}},Sr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/command",...n,...r})}},vr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/skill",...n,...r})}},Cr=class extends b{subscribe(e){return(e?.client??this.client).sse.get({url:"/api/event",...e})}},Rr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/pty",...n,...r})}create(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).delete({url:"/api/pty/{ptyID}",...n,...r})}get(e,n){let r=d([e],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/pty/{ptyID}",...n,...r})}update(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).post({url:"/api/pty/{ptyID}/connect-token",...n,...r})}connect(e,n){let r=d([e],[{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})}},Tr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/question/request",...n,...r})}},Ar=class extends b{_request;get request(){return this._request??=new Tr({client:this.client})}},Ir=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/reference",...n,...r})}},jr=class extends b{remove(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 b{_health;get health(){return this._health??=new ar({client:this.client})}_location;get location(){return this._location??=new cr({client:this.client})}_agent;get agent(){return this._agent??=new lr({client:this.client})}_session;get session(){return this._session??=new gr({client:this.client})}_model;get model(){return this._model??=new mr({client:this.client})}_provider;get provider(){return this._provider??=new fr({client:this.client})}_integration;get integration(){return this._integration??=new br({client:this.client})}_credential;get credential(){return this._credential??=new xr({client:this.client})}_permission;get permission(){return this._permission??=new kr({client:this.client})}_fs;get fs(){return this._fs??=new wr({client:this.client})}_command;get command(){return this._command??=new Sr({client:this.client})}_skill;get skill(){return this._skill??=new vr({client:this.client})}_event;get event(){return this._event??=new Cr({client:this.client})}_pty;get pty(){return this._pty??=new Rr({client:this.client})}_question;get question(){return this._question??=new Ar({client:this.client})}_reference;get reference(){return this._reference??=new Ir({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new jr({client:this.client})}},Pt=class t extends b{static __registry=new _n;constructor(e){super(e),t.__registry.set(this,e?.key)}_auth;get auth(){return this._auth??=new Pn({client:this.client})}_app;get app(){return this._app??=new kn({client:this.client})}_experimental;get experimental(){return this._experimental??=new jn({client:this.client})}_global;get global(){return this._global??=new $n({client:this.client})}_event;get event(){return this._event??=new qn({client:this.client})}_config;get config(){return this._config??=new Dn({client:this.client})}_tool;get tool(){return this._tool??=new Mn({client:this.client})}_worktree;get worktree(){return this._worktree??=new Un({client:this.client})}_find;get find(){return this._find??=new On({client:this.client})}_file;get file(){return this._file??=new Fn({client:this.client})}_instance;get instance(){return this._instance??=new Ln({client:this.client})}_path;get path(){return this._path??=new Gn({client:this.client})}_vcs;get vcs(){return this._vcs??=new Kn({client:this.client})}_command;get command(){return this._command??=new Hn({client:this.client})}_lsp;get lsp(){return this._lsp??=new Nn({client:this.client})}_formatter;get formatter(){return this._formatter??=new Wn({client:this.client})}_mcp;get mcp(){return this._mcp??=new Vn({client:this.client})}_project;get project(){return this._project??=new Jn({client:this.client})}_pty;get pty(){return this._pty??=new Xn({client:this.client})}_question;get question(){return this._question??=new Qn({client:this.client})}_permission;get permission(){return this._permission??=new Yn({client:this.client})}_provider;get provider(){return this._provider??=new er({client:this.client})}_session;get session(){return this._session??=new tr({client:this.client})}_part;get part(){return this._part??=new nr({client:this.client})}_sync;get sync(){return this._sync??=new sr({client:this.client})}_tui;get tui(){return this._tui??=new or({client:this.client})}_v2;get v2(){return this._v2??=new Er({client:this.client})}};function ql(t,e,n,r){if(!r?.throwOnError||t instanceof Error)return t;if(typeof t=="object"&&t!==null&&Object.keys(t).length>0){let c=t,u=typeof c.data?.message=="string"&&c.data.message||typeof c.message=="string"&&c.message||typeof c.name=="string"&&c.name||$l(n,e);return new Error(u,{cause:{body:t,status:e?.status}})}if(typeof t=="string"&&t.length>0)return new Error(t,{cause:{body:t,status:e?.status}});let s=e?"(empty response body)":"network error (no response)";return new Error(`opencode server ${$l(n,e)}: ${s}`,{cause:{body:t,status:e?.status}})}function $l(t,e){let n=t?.method??"?",r=t?.url??"?",s=e?.status,c=e?.statusText;return`${n} ${r}${s?" \u2192 "+s:""}${c?" "+c:""}`}function Gp(t,e,n){if(t)return e&&(t===e||n&&t===n(e))?e:t}function Bp(t,e){if(t.method!=="GET"&&t.method!=="HEAD")return t;let n=new URL(t.url),r=!1;for(let[c,u]of[["x-opencode-directory","directory"],["x-opencode-workspace","workspace"]]){let p=Gp(t.headers.get(c),u==="directory"?e.directory:e.workspace,u==="directory"?encodeURIComponent:void 0);if(p){for(let g of n.pathname.startsWith("/api/")?[u,`location[${u}]`]:[u])n.searchParams.has(g)||n.searchParams.set(g,p);r=!0}}if(!r)return t;let s=new Request(n,t);return s.headers.delete("x-opencode-directory"),s.headers.delete("x-opencode-workspace"),s}function $r(t){t?.fetch||(t={...t,fetch:r=>(r.timeout=!1,fetch(r))}),t?.directory&&(t.headers={...t.headers,"x-opencode-directory":encodeURIComponent(t.directory)}),t?.experimental_workspaceID&&(t.headers={...t.headers,"x-opencode-workspace":t.experimental_workspaceID});let e=Be(t);return e.interceptors.request.use(n=>Bp(n,{directory:t?.directory,workspace:t?.experimental_workspaceID})),e.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}),e.interceptors.error.use(ql),new Pt({client:e})}var Kp=new Set(["api","cli","mobile","web"]);function kt(t){let e=t?.trim().toLowerCase();return e&&Kp.has(e)?e:null}function Hp(t){return new Promise(e=>setTimeout(e,t))}async function Dl(t,e,n){let r=Math.max(1,e?.attempts??1),s=e?.baseDelayMs??0,c=e?.invalidateBetweenAttempts??!1,u=null;for(let p=0;p<r;p++)if(p>0&&(c&&n?.(),s>0&&await Hp(s)),u=await t(),u)return u;return u}var Np=3e4;function Wp(t){return(t instanceof Request?t.url:String(t)).includes("/global/event")}function qr(t,e,n=Np){let r=t instanceof Request?t.signal:e?.signal;if(Wp(t))return r??void 0;let s=AbortSignal.timeout(n);return r?typeof AbortSignal.any=="function"?AbortSignal.any([r,s]):r:s}function Dr(t,e,n,r){let s=new Headers(t instanceof Request?t.headers:void 0);e?.headers&&new Headers(e.headers).forEach((u,p)=>{s.set(p,u)}),n&&!s.has("Authorization")&&s.set("Authorization",`Bearer ${n}`);let c=kt(r);return c&&!s.has("X-Kortix-Client")&&s.set("X-Kortix-Client",c),s}function Ml(){return new Response(JSON.stringify({error:"Not authenticated"}),{status:401,headers:{"Content-Type":"application/json"}})}async function wt(){return E().getToken()}async function ee(t){return Dl(()=>E().getToken(),t,Ke)}function Ke(){}function zp(t){}function Vp(t){}async function me(){return wt()}async function Mr(t){return ee(t)}function Ul(t,e,n,r){let s=E().fetch??fetch;if(t instanceof Request){let c=new Request(t,{headers:n,...r?{signal:r}:{}});return s(c)}return s(t,{...e,headers:n,...r?{signal:r}:{}})}async function q(t,e,n){let{retryOnAuthError:r=!0,timeoutMs:s}=n??{},c=await Mr();if(!c)return Ml();let u=E().clientSource,p=Dr(t,e,c,u),g=s===void 0?qr(t,e):qr(t,e,s),f=await Ul(t,e,p,g);if(f.status===401&&r&&c){Ke();let m=await Mr({attempts:2,baseDelayMs:200});if(m&&m!==c){let _=Dr(t,e,m,u);return Ul(t,e,_,g)}}return f}var Te={url:null,sandboxId:null,dbSandboxId:null,version:0},Jp=new Set;function Ol(t,e=null,n=null){if(!(Te.url===t&&Te.sandboxId===e&&Te.dbSandboxId===n)){Te={url:t,sandboxId:e,dbSandboxId:n,version:Te.version+1};for(let r of Jp)r()}}function Fl(){return Te.url}function Xp(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return t.slice(0,e)}function fe(){return Xp(E().backendUrl||"http://localhost:8008/v1")}function Ll(){let t=E().sandboxId;return t?`${fe()}/p/${t}/8000`:""}function Qp(t){return`${fe()}/p/${t}/8000`}function St(t){return Qp(t)}function L(){let t=Fl();return t||(E().billingEnabled??!1?"":Ll())}var R=class extends Error{status;code;details;data;detail;response;url;endpoint;timeout;constructor(e,n={}){super(e),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 e=="string"?e:e==null?"":String(e);Object.defineProperty(this,"message",{value:u,enumerable:!0,writable:!0,configurable:!0}),Object.setPrototypeOf(this,new.target.prototype)}},ye=class extends R{constructor(e="Not authenticated"){super(e,{code:"NO_SESSION"}),this.name="AuthError"}},ae=class t extends Error{status;detail;constructor(e,n,r){super(r||n.message||`Billing Error: ${e}`),this.name="BillingError",this.status=e,this.detail=n,Object.setPrototypeOf(this,t.prototype)}},he=class t extends Error{status;detail;constructor(e=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=e,this.detail={message:n?.message||s,suggestion:n?.suggestion||c},Object.setPrototypeOf(this,t.prototype)}},vt="feature_disabled";function Gl(t){if(!(t instanceof R)||t.status!==403||t.code!==vt)return null;let e=t.details??t.data;return e&&typeof e=="object"?e:{}}function Ur(t){let e=Gl(t);return e?(typeof e.feature=="string"&&!t.feature&&(t.feature=e.feature),!0):!1}function Or(t){let e=Gl(t);if(!e)return null;let n=t.feature;return typeof n=="string"?n:typeof e.feature=="string"?e.feature:null}function be(t){let e=t.response?.status||t.status;if(e!==402)return t;let n=t.response?.data||t.data||t.detail||{},r=n?.detail||n;return new ae(e,{message:r?.message||t.message||"Billing error",...r})}function Fr(t){return t instanceof ae}function Lr(t){if(!(t instanceof ae))return null;let e=t.detail?.message?.toLowerCase()||"";return e.includes("credit")||e.includes("balance")||e.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:t.detail?.message||"Please upgrade to continue."}}async function Gr(t,e){return(await t.json().catch(()=>({})))?.error||t.statusText||e}function Br(t){if(!t)throw new Error("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading");return t}async function Kr(t){let e=Br(t),n=await q(`${e}/env`);if(!n.ok)throw new Error(await Gr(n,"Failed to load secrets"));return(await n.json()).secrets??{}}async function Hr(t,e,n){let r=Br(t),s=await q(`${r}/env/${encodeURIComponent(e)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:n})});if(!s.ok)throw new Error(await Gr(s,"Failed to save secret"))}async function Nr(t,e){let n=Br(t),r=await q(`${n}/env/${encodeURIComponent(e)}`,{method:"DELETE"});if(!r.ok)throw new Error(await Gr(r,"Failed to delete secret"))}var Bl={list:Kr,set:Hr,delete:Nr};async function Kl(t,e,n){let r=t;for(;r.endsWith("/");)r=r.slice(0,-1);let s=await q(`${r}/kortix/triggers${e}`,{...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 xe(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return e===t.length?t:t.slice(0,e)}async function Ct(t,e){let n=await t.json().catch(()=>({}));return n?.error||n?.message||t.statusText||e}function He(t){if(!t)throw new Error("[kortix-pty] Server URL not ready \u2014 sandbox is still loading");return xe(t)}async function Wr(t){let e=He(t),n=await q(`${e}/kortix/pty`);if(!n.ok)throw new Error(await Ct(n,"Failed to list terminals"));return n.json()}async function zr(t,e){let n=He(t),r=await q(`${n}/kortix/pty`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e??{})});if(!r.ok)throw new Error(await Ct(r,"Failed to create terminal"));return r.json()}async function Vr(t,e,n){let r=He(t),s=await q(`${r}/kortix/pty/${encodeURIComponent(e)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!s.ok)throw new Error(await Ct(s,"Failed to update terminal"));return s.json()}async function Jr(t,e){let n=He(t),r=await q(`${n}/kortix/pty/${encodeURIComponent(e)}`,{method:"DELETE"});if(!r.ok)throw new Error(await Ct(r,"Failed to remove terminal"))}async function Xr(t,e){let n=He(e),s=`${(()=>{try{let p=new URL(n);return p.protocol==="https:"?p.protocol="wss:":p.protocol==="http:"&&(p.protocol="ws:"),typeof window<"u"&&window.location.protocol==="https:"&&p.protocol==="ws:"&&(p.protocol="wss:"),xe(p.toString())}catch{return n.replace("https://","wss://").replace("http://","ws://")}})()}/kortix/pty/${encodeURIComponent(t)}/connect`,c=await me();if(!c)return s;let u=s.includes("?")?"&":"?";return`${s}${u}token=${encodeURIComponent(c)}`}var Hl={list:Wr,create:zr,update:Vr,remove:Jr,webSocketUrl:Xr};async function S(t,e,n,r){let s=t;for(;s.endsWith("/");)s=s.slice(0,-1);let c=await q(`${s}${e}`,{...n,headers:{"Content-Type":"application/json",...n?.headers}},r),u=await c.text(),p={};try{p=u?JSON.parse(u):{}}catch{p={}}if(!c.ok)throw new Error(p?.error||p?.message||p?.details||u.slice(0,200)||`Request failed with ${c.status}`);return p}async function Yp(t,e={}){let n=new URLSearchParams;e.projectId&&n.set("project_id",e.projectId),e.status&&n.set("status",e.status);let r=n.toString()?`?${n}`:"";return S(t,`/kortix/tasks${r}`)}async function Zp(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}`)}async function ed(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}/events`)}async function td(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}/status`)}async function nd(t,e){return S(t,"/kortix/tasks",{method:"POST",body:JSON.stringify(e)})}async function rd(t,e,n){return S(t,`/kortix/tasks/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function sd(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}/start`,{method:"POST"})}async function id(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}/approve`,{method:"POST"})}async function od(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}`,{method:"DELETE"})}async function ad(t,e){let n=e?`?project_id=${encodeURIComponent(e)}`:"";return S(t,`/kortix/tickets${n}`)}async function cd(t,e){return S(t,`/kortix/tickets/${encodeURIComponent(e)}`)}async function ld(t,e){return S(t,`/kortix/tickets/${encodeURIComponent(e)}/events`)}async function ud(t,e){return S(t,"/kortix/tickets",{method:"POST",body:JSON.stringify(e)})}async function pd(t,e,n){return S(t,`/kortix/tickets/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function dd(t,e,n){return S(t,`/kortix/tickets/${encodeURIComponent(e)}/status`,{method:"POST",body:JSON.stringify(n)})}async function gd(t,e,n){return S(t,`/kortix/tickets/${encodeURIComponent(e)}/assign`,{method:"POST",body:JSON.stringify(n)})}async function md(t,e,n){return S(t,`/kortix/tickets/${encodeURIComponent(e)}/unassign`,{method:"POST",body:JSON.stringify(n)})}async function fd(t,e,n){return S(t,`/kortix/tickets/${encodeURIComponent(e)}/comments`,{method:"POST",body:JSON.stringify(n)})}async function yd(t,e){return S(t,`/kortix/tickets/${encodeURIComponent(e)}`,{method:"DELETE"})}async function hd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/columns`)}async function bd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/columns`,{method:"PUT",body:JSON.stringify({columns:n})})}async function xd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/fields`)}async function _d(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/fields`,{method:"PUT",body:JSON.stringify({fields:n})})}async function Pd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/templates`)}async function kd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/templates`,{method:"PUT",body:JSON.stringify({templates:n})})}async function wd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/pm-session`,{method:"POST"})}async function Sd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/agents`)}async function vd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/agents`,{method:"POST",body:JSON.stringify(n)})}async function Cd(t,e,n,r){return S(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Rd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}`,{method:"DELETE"})}async function Td(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}/persona`)}async function Ad(t,e,n=200){return S(t,`/kortix/projects/${encodeURIComponent(e)}/activity?limit=${n}`)}async function Id(t){return S(t,"/kortix/projects")}async function jd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}`)}async function Ed(t,e){return S(t,`/kortix/projects/by-session/${encodeURIComponent(e)}`)}async function $d(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/sessions`)}async function qd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}`,{method:"DELETE"})}async function Dd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Md(t,e,n="all"){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones?status=${n}`)}async function Ud(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`)}async function Od(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/events`)}async function Fd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones`,{method:"POST",body:JSON.stringify(n)})}async function Ld(t,e,n,r){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Gd(t,e,n,r){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/close`,{method:"POST",body:JSON.stringify(r)})}async function Bd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/reopen`,{method:"POST"})}async function Kd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`,{method:"DELETE"})}async function Hd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/credentials`)}async function Nd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}/events`)}async function Wd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/credentials`,{method:"POST",body:JSON.stringify(n)})}async function zd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}`)}async function Vd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}`,{method:"DELETE"})}var Jd=1e4,Xd={retryOnAuthError:!1};function Ae(t,e,n){return S(t,e,{signal:AbortSignal.timeout(Jd),...n},Xd)}async function Qd(t,e=!1){return(await Ae(t,`/kortix/services${e?"?all=true":""}`)).services??[]}async function Yd(t){return(await Ae(t,"/kortix/services/templates")).templates??[]}async function Zd(t,e){return(await Ae(t,`/kortix/services/${encodeURIComponent(e)}/logs`)).logs??[]}async function eg(t,e,n){let r=n==="delete",s=r?`/kortix/services/${encodeURIComponent(e)}`:`/kortix/services/${encodeURIComponent(e)}/${n}`;return Ae(t,s,{method:r?"DELETE":"POST"})}async function tg(t,e){return Ae(t,`/kortix/services/reconcile${e?"?reload=true":""}`,{method:"POST"})}async function ng(t,e){return Ae(t,"/kortix/services/register",{method:"POST",body:JSON.stringify(e)})}var Rt=new Map,Tt=class extends Error{constructor(e="[opencode-sdk] Server URL not ready \u2014 sandbox is still loading"){super(e),this.name="RuntimeNotReadyError"}};function ce(){let t=L();if(!t)throw new Tt;return te(t)}function te(t){if(!t)throw new Error("[opencode-sdk] getClientForUrl called without a url");let e=Rt.get(t);if(e)return e;if(!ht())throw new Error("[opencode-sdk] No auth token provider configured \u2014 call configureKortix()/createKortix() before talking to a sandbox runtime.");let n=$r({baseUrl:t,fetch:q});return Rt.set(t,n),n}function rg(t){Rt.delete(t)}function sg(){Rt.clear()}var At=new Map;function ig(t){if(!t)throw new Error("[opencode-sdk] getPublicClientForUrl called without a url");let e=At.get(t);if(e)return e;let n=$r({baseUrl:t,fetch});return At.set(t,n),n}function og(t){At.delete(t)}function ag(){At.clear()}async function cg(t){let e=await t.text().catch(()=>"");try{let n=JSON.parse(e);return n?.error||n?.message||e||t.statusText||`HTTP ${t.status}`}catch{return e||t.statusText||`HTTP ${t.status}`}}async function lg(t){let e=L();if(!e)throw new R("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading",{code:"RUNTIME_UNAVAILABLE"});let n=t==="full"?"/kortix/refresh":"/global/dispose",r=await q(`${e}${n}`,{method:"POST"}),s=r.headers.get("content-type")??"",c=/^application\/([\w.+-]+\+)?json\b/i.test(s.trim());if(!r.ok)throw new R(`System reload failed (${r.status}): ${await cg(r)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});if(!c)throw new R(`System reload endpoint is unavailable on this sandbox (${n})`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});let u;try{u=await r.json()}catch(g){throw new R(`System reload returned malformed JSON from ${n}: ${g instanceof Error?g.message:String(g)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"})}let p=u===!0||typeof u=="object"&&u!==null&&u.ok===!0;return{success:p,mode:t,steps:p?[t==="full"?"refreshed workspace and restarted runtime":"reloaded config in place"]:[],errors:p?[]:[`the sandbox did not confirm the reload (${n})`]}}function Wl(t){if(t.error){let e=t.error,n=e?.data?.message||e?.message||(typeof e?.error=="string"?e.error:null)||"SDK request failed";throw new R(n,{status:e?.response?.status??e?.status,response:e?.response,details:e})}return t.data}async function Ie(t){let e=await t.text().catch(()=>""),n=null;try{n=JSON.parse(e)}catch{}return n?.error||e||t.statusText||`HTTP ${t.status}`}async function It(t,e=L()){let n=await q(`${e}${t}`);if(!n.ok)throw new R(await Ie(n),{status:n.status,response:n});return n.json()}var jt=["/workspace","/tmp","/home","/opt"],ug=jt.filter(t=>t!=="/workspace");function Yr(t){return jt.some(e=>t===e||t.startsWith(`${e}/`))}function Zr(t){return Yr(t)?t:`/workspace/${t.replace(/^\/+/,"")}`}function _e(t){let e=t||"";if(e==="/workspace"||e==="/workspace/")return"";if(e.startsWith("/workspace/"))e=e.slice(11);else if(ug.some(n=>e===n||e.startsWith(`${n}/`)))return e;for(;e.startsWith("/");)e=e.slice(1);return e}var es=_e;async function We(t,e=L()){let n=_e(t)||".";return(await It(`/file?path=${encodeURIComponent(n)}`,e)).map(s=>({...s,path:s.absolute||`/workspace/${s.path}`}))}async function je(t,e=L()){let n=_e(t),r=await q(`${e}/file/content?path=${encodeURIComponent(n)}`);if(!r.ok)throw new R(await Ie(r),{status:r.status,response:r});return r.json()}async function pg(t,e,n=L()){let r=_e(t),s=await q(`${n}/file/raw?path=${encodeURIComponent(r)}`);if(!s.ok)throw new R(await Ie(s),{status:s.status,response:s});if((s.headers.get("content-type")||"").includes("text/html"))throw new R("File could not be loaded (raw byte route unavailable)",{status:s.status,response:s,code:"INVALID_CONTENT_TYPE"});let c=await s.blob();return e&&(!c.type||c.type==="application/octet-stream")?new Blob([c],{type:e}):c}async function Ee(t,e=L()){try{return await pg(t,void 0,e)}catch{}let n=await je(t,e);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 ze(t=L()){return It("/file/status",t)}async function Ve(t,e,n=L()){let r=new URLSearchParams({query:t});return e?.type&&r.set("type",e.type),e?.limit&&r.set("limit",String(e.limit)),It(`/find/file?${r.toString()}`,n)}async function Je(t,e=L()){return(await It(`/find?pattern=${encodeURIComponent(t)}`,e)).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 Ne=[400,1200],dg=t=>t===408||t===429||t===502||t===503||t===504,Nl=t=>new Promise(e=>setTimeout(e,t));function gg(t){let e=t?.name;return e==="TimeoutError"||e==="AbortError"}var Qr=3e4,mg=15*6e4,fg=256;function yg(t){if(typeof t!="number"||!Number.isFinite(t)||t<=0)return Qr;let e=Qr+t/fg;return Math.min(mg,Math.max(Qr,Math.round(e)))}async function hg(t){let e=await t.text().catch(()=>""),n=null;try{n=e?JSON.parse(e):null}catch{}let r=n?.error||n?.message||n?.data?.message;return typeof r=="string"&&r.trim()?r.trim():(t.headers.get("content-type")||"").includes("text/html")||/<html[\s>]/i.test(e)?t.status===502||/bad gateway/i.test(e)?"Bad gateway while reaching the sandbox upload service. Please retry.":t.statusText||`HTTP ${t.status}`:e.replace(/\s+/g," ").trim().slice(0,500)||t.statusText||`HTTP ${t.status}`}async function zl(t,e){let n;for(let s=0;s<=Ne.length;s++){let c;try{c=await e(t())}catch(p){if(n=p,gg(p)||s===Ne.length)break;await Nl(Ne[s]);continue}if(c.ok)return c.json();let u=await hg(c);if(n=new R(`Upload failed (${c.status}): ${u}`,{status:c.status,response:c}),!dg(c.status)||s===Ne.length)throw n;await Nl(Ne[s])}if(n instanceof R)throw n;let r=n instanceof Error?n.message:String(n||"request failed");throw new R(`Upload failed: ${r}`)}function $e(t,e,n,r=L()){let s=yg(t.size);return zl(()=>{let c=new FormData,u=(e??"").trim();return u&&c.append("path",u.startsWith("/")?u:`/${u}`),n?c.append("file",t,n):c.append("file",t),c},c=>q(`${r}/file/upload`,{method:"POST",body:c},{timeoutMs:s}))}function bg(t,e,n=L()){return zl(()=>{let r=new FormData;return r.append(t,e,t.split("/").pop()||"file"),r},async r=>{let s={},c=await me();return c&&(s.Authorization=`Bearer ${c}`),fetch(`${n}/file/upload`,{method:"POST",body:r,headers:s})})}function Xe(t,e=L()){let n=t.trim(),s=(n.startsWith("/")?n:`/${n}`).split("/"),c=s.pop()||"untitled",u=s.join("/")||"/workspace";return $e(new File([" "],c,{type:"application/octet-stream"}),u,void 0,e)}async function Qe(t,e,n=L()){return bg(e,await Ee(t,n),n)}async function Ye(t,e=L()){let n=await q(`${e}/file`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})});if(!n.ok)throw new R(`Delete failed (${n.status}): ${await Ie(n)}`,{status:n.status,response:n});return n.json()}async function Ze(t,e=L()){let n=await q(`${e}/file/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})});if(!n.ok)throw new R(`Mkdir failed (${n.status}): ${await Ie(n)}`,{status:n.status,response:n});return n.json()}async function et(t,e,n=L()){let r=await q(`${n}/file/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({from:t,to:e})});if(!r.ok)throw new R(`Rename failed (${r.status}): ${await Ie(r)}`,{status:r.status,response:r});return r.json()}async function ts(){return Wl(await ce().project.current())}async function Et(){return Wl(await ce().global.health())}async function ns(){try{return(await Et()).healthy===!0}catch{return!1}}var Vl={list:We,read:je,readBlob:Ee,status:ze,findFiles:Ve,findText:Je,upload:$e,create:Xe,copy:Qe,remove:Ye,mkdir:Ze,rename:et,currentProject:ts,health:Et,isReachable:ns,toDaemonPath:_e,toSandboxAbsolutePath:Zr,toWorkspaceRelative:es};var ne=()=>E().backendUrl||"",Xl="feature_not_supported",Ql="model_not_servable",Yl="provision_in_flight",Zl="request_deadline",_g=/^Request exceeded the \d+s server processing deadline$/,Pg=(t,e,n)=>t!==503?!1:(typeof e=="object"&&e!==null&&"code"in e?e.code:void 0)===Zl||_g.test(n),kg=t=>new Promise(e=>setTimeout(e,t)),wg=new Set([502,503,504]),Sg=t=>wg.has(t),vg=t=>{let e=(t??"GET").toUpperCase();return e==="GET"||e==="HEAD"},Cg=2,Jl=t=>t?.name==="AbortError"||t?.name==="AbortSignal"||t instanceof Error&&t.message.includes("aborted"),$t=!1;function Rg(t){$t=t}function Tg(){return $t}async function Pe(t,e={}){let{showErrors:n=!0,errorContext:r,timeout:s=3e4,...c}=e,u=new AbortController,p=null,g=!1,f=!1;try{p=setTimeout(()=>{!g&&!u.signal.aborted&&(g=!0,f=!0,u.abort())},s);let m=await ee(),_=c.body instanceof FormData,x={};_||(x["Content-Type"]="application/json"),Object.assign(x,c.headers);let I=kt(E().clientSource),T=Object.keys(x).some(v=>v.toLowerCase()==="x-kortix-client");if(I&&!T&&(x["X-Kortix-Client"]=I),$t&&(x["x-kortix-admin-bypass"]="1"),m)x.Authorization=`Bearer ${m}`;else return{error:new ye,success:!1};let l=vg(c.method),h=l?Cg+1:1,a;for(let v=0;v<h;v++){v>0&&await kg(250*2**(v-1));let k=v===0?u:new AbortController;v>0&&(p=setTimeout(()=>{f=!0,k.abort()},s));try{a=await(E().fetch??fetch)(t,{...c,headers:x,signal:k.signal,credentials:c.credentials??"omit"})}catch(w){if(p&&(clearTimeout(p),p=null),Jl(w)||v===h-1)throw w;continue}if(p&&(clearTimeout(p),p=null),!(l&&Sg(a.status)&&v<h-1))break;try{await a.arrayBuffer()}catch{}}if(!a.ok){let v=`HTTP ${a.status}: ${a.statusText}`,k=null;try{k=await a.json(),typeof k.reason=="string"?v=k.reason:typeof k.message=="string"?v=k.message:k.error&&typeof k.error=="string"?v=k.error:typeof k.detail=="string"?v=k.detail:typeof k.detail?.message=="string"&&(v=k.detail.message)}catch{}let $=Pg(a.status,k,v),w=new R(v,{status:a.status,response:a,details:k||void 0,data:k,detail:k?.detail,code:$?Zl:k?.code||k?.error_code||k?.detail?.error_code||a.status.toString()});if(a.status===402&&(w=be(w)),a.status===403&&k?.code==="account_mfa_required"&&typeof window<"u"&&typeof window.dispatchEvent=="function")try{window.dispatchEvent(new CustomEvent("kortix:mfa-required"))}catch{}a.status===431&&(w=new he(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."}));let F=a.status===501&&k?.code===Xl,K=a.status===409&&k?.code===Ql,y=a.status===409&&k?.code===Yl;return n&&!F&&!K&&!y&&!$&&E().onError?.(w,r),{error:w,success:!1}}let A,j=a.headers.get("content-type");return j?.includes("application/json")?A=await a.json():j?.includes("text/")?A=await a.text():A=await a.blob(),{data:A,success:!0}}catch(m){p&&(clearTimeout(p),p=null);let _=Jl(m);_&&(g=!0);let x;if(_){if(!f)return{error:new R("Request aborted",{name:"AbortError",code:"ABORTED"}),success:!1};let I=t.replace(ne(),"")||t;x=new R(`Request timed out after ${Math.round(s/1e3)}s: ${I}`,{code:"TIMEOUT",url:t,endpoint:I,timeout:s})}else m instanceof Error?(x=new R(m.message,{name:m.name||"ApiError",stack:m.stack}),n&&E().onError?.(x,r)):(x=new R(String(m)),n&&E().onError?.(x,r));return{error:x,success:!1}}}var Ag={async execute(t,e){try{let{data:n,error:r}=await t();if(r){let s=new R(r.message||"Database error",{code:r.code,details:r});return E().onError?.(s,e),{error:s,success:!1}}return{data:n,success:!0}}catch(n){let r=n instanceof Error?new R(n.message,{name:n.name||"ApiError",stack:n.stack}):new R(String(n));return E().onError?.(r,e),{error:r,success:!1}}}};async function Ig(t,e,n={}){let{timeout:r=3e4,fetch:s=fetch}=n,c=await ee(),u={Accept:"text/event-stream","Content-Type":"application/json"},p=kt(E().clientSource);p&&(u["X-Kortix-Client"]=p),$t&&(u["x-kortix-admin-bypass"]="1"),c&&(u.Authorization=`Bearer ${c}`);let g=new AbortController,f=setTimeout(()=>g.abort(),r);try{return await s(`${ne()}${t}`,{method:"POST",headers:u,body:JSON.stringify(e),signal:g.signal,credentials:"omit"})}finally{clearTimeout(f)}}var i={get:(t,e)=>Pe(`${ne()}${t}`,{...e,method:"GET"}),post:(t,e,n)=>Pe(`${ne()}${t}`,{...n,method:"POST",body:e?JSON.stringify(e):void 0}),put:(t,e,n)=>Pe(`${ne()}${t}`,{...n,method:"PUT",body:e?JSON.stringify(e):void 0}),patch:(t,e,n)=>Pe(`${ne()}${t}`,{...n,method:"PATCH",body:e?JSON.stringify(e):void 0}),delete:(t,e)=>Pe(`${ne()}${t}`,{...e,method:"DELETE"}),upload:(t,e,n)=>{let{headers:r,...s}=n||{},c={...r};return delete c["Content-Type"],Pe(`${ne()}${t}`,{...s,method:"POST",body:e,headers:c})},uploadPut:(t,e,n)=>{let{headers:r,...s}=n||{},c={...r};return delete c["Content-Type"],Pe(`${ne()}${t}`,{...s,method:"PUT",body:e,headers:c})},postStream:Ig};function o(t,e="Project request failed"){if(!t.success||t.data===void 0)throw t.error??new Error(e);return t.data}function rs(t){return t.replace(/\/v1\/?$/,"")}async function qe(t,e){if(!t.backendUrl||!t.accessToken)return null;let n=rs(t.backendUrl);try{let r=await fetch(`${n}${e}`,{headers:{Authorization:`Bearer ${t.accessToken}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(t.timeoutMs??8e3)});return r.ok?await r.json():null}catch{return null}}async function ss(){return o(await i.get("/accounts"))}async function is(t){return o(await i.post("/accounts",t))}async function os(t){return o(await i.get(`/accounts/${t}`))}async function as(t,e){return o(await i.patch(`/accounts/${t}`,{name:e}))}async function cs(t){return o(await i.get(`/accounts/${t}/members`))}async function ls(t,e){return o(await i.post(`/accounts/${t}/members`,e,{showErrors:!1}))}async function us(t){return o(await i.get(`/accounts/${t}/invites`))}async function ps(t,e){return o(await i.delete(`/accounts/${t}/invites/${e}`))}async function ds(t,e){return o(await i.post(`/accounts/${t}/invites/${e}/resend`,{}))}async function gs(t){return o(await i.get(`/account-invites/${t}`,{showErrors:!1}))}async function ms(t){return o(await i.post(`/account-invites/${t}/accept`,{}))}async function fs(t){return o(await i.post(`/account-invites/${t}/decline`,{}))}async function ys(t,e){return o(await i.delete(`/accounts/${t}/members/${e}`))}async function hs(t,e,n){return o(await i.patch(`/accounts/${t}/members/${e}`,{role:n}))}async function bs(t){return o(await i.post(`/accounts/${t}/leave`,{}))}async function jg(t){return qe(t,"/v1/accounts")}async function xs(){let t=await i.get("/accounts/me",{showErrors:!1});return!t.success||!t.data?{valid:!1,error:t.error}:{valid:!0,identity:t.data}}var Eg=["agent_tunnel","marketplace","connectors_api_discover","agentmail_email","teams","voice","llm_gateway","review_center","meta_agent","apps"];async function ke(){return o(await i.get("/projects"))}async function _s(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return o(await i.get(`/projects${e}`))}async function qt(t,e){return o(await i.get(`/projects/${t}`,e))}async function Ps(t,e,n="write"){return o(await i.post(`/projects/${t}/git/collaborators`,{github_username:e,permission:n}))}async function ks(t,e){return o(await i.post(`/projects/${t}/manifest/validate`,{raw:e}),"Failed to validate manifest")}async function ws(t){return o(await i.post(`/projects/${t}/git-token`,{}),"Failed to mint git token")}function $g(t){let e=t.metadata?.git;return e?.provider==="github"&&e?.managed===!0}async function Dt(t,e){let n=o(await i.get(`/projects/${t}/detail`,{showErrors:!1,...e}));return{...n,config:{...n.config,default_agent:n.config.default_agent??n.config.open_code_default_agent??null}}}async function Mt(t,e){return o(await i.get(`/projects/${t}/llm-catalog`,{showErrors:!1,...e}))}async function Ut(t,e){return o(await i.get(`/projects/${t}/model-picker`,{showErrors:!1,...e}))}async function qg(t,e){return o(await i.get(`/projects/${t}/llm-catalog/providers`,{showErrors:!1,...e}))}async function Ss(t){return o(await i.post("/projects",t))}async function vs(t){return o(await i.post("/projects/create-repo",t))}async function Cs(t,e={}){return o(await i.post("/projects/provision",{seed_starter:!0,...t},{timeout:12e4,...e}))}var eu=200;function Dg(t){let e=t.split(`
6
+ `),J=[],Q;for(let U of V)if(U.startsWith("data:"))J.push(U.replace(/^data:\s*/,""));else if(U.startsWith("event:"))Q=U.replace(/^event:\s*/,"");else if(U.startsWith("id:"))_=U.replace(/^id:\s*/,"");else if(U.startsWith("retry:")){let H=Number.parseInt(U.replace(/^retry:\s*/,""),10);Number.isNaN(H)||(l=H)}let N,D=!1;if(J.length){let U=J.join(`
7
+ `);try{N=JSON.parse(U),D=!0}catch{N=U}}D&&(s&&await s(N),r&&(N=await r(N))),n?.({data:N,event:Q,id:_,retry:l}),J.length&&(yield N)}}}finally{a.removeEventListener("abort",K),w.releaseLock()}break}catch(j){if(e?.(j),u!==void 0&&h>=u)break;let v=Math.min(l*2**(h-1),p??3e4);await x(v)}}}()}};var Gp=t=>{switch(t){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},Bp=t=>{switch(t){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},Kp=t=>{switch(t){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},xt=({allowReserved:t,explode:e,name:n,style:r,value:s})=>{if(!e){let p=(t?s:s.map(g=>encodeURIComponent(g))).join(Bp(r));switch(r){case"label":return`.${p}`;case"matrix":return`;${n}=${p}`;case"simple":return p;default:return`${n}=${p}`}}let c=Gp(r),u=s.map(p=>r==="label"||r==="simple"?t?p:encodeURIComponent(p):Te({allowReserved:t,name:n,value:p})).join(c);return r==="label"||r==="matrix"?c+u:u},Te=({allowReserved:t,name:e,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`${e}=${t?n:encodeURIComponent(n)}`},_t=({allowReserved:t,explode:e,name:n,style:r,value:s,valueOnly:c})=>{if(s instanceof Date)return c?s.toISOString():`${n}=${s.toISOString()}`;if(r!=="deepObject"&&!e){let g=[];Object.entries(s).forEach(([m,_])=>{g=[...g,m,t?_:encodeURIComponent(_)]});let f=g.join(",");switch(r){case"form":return`${n}=${f}`;case"label":return`.${f}`;case"matrix":return`;${n}=${f}`;default:return f}}let u=Kp(r),p=Object.entries(s).map(([g,f])=>Te({allowReserved:t,name:r==="deepObject"?`${n}[${g}]`:g,value:f})).join(u);return r==="label"||r==="matrix"?u+p:p};var Np=/\{[^{}]+\}/g,Hp=({path:t,url:e})=>{let n=e,r=e.match(Np);if(r)for(let s of r){let c=!1,u=s.substring(1,s.length-1),p="simple";u.endsWith("*")&&(c=!0,u=u.substring(0,u.length-1)),u.startsWith(".")?(u=u.substring(1),p="label"):u.startsWith(";")&&(u=u.substring(1),p="matrix");let g=t[u];if(g==null)continue;if(Array.isArray(g)){n=n.replace(s,xt({explode:c,name:u,style:p,value:g}));continue}if(typeof g=="object"){n=n.replace(s,_t({explode:c,name:u,style:p,value:g,valueOnly:!0}));continue}if(p==="matrix"){n=n.replace(s,`;${Te({name:u,value:g})}`);continue}let f=encodeURIComponent(p==="label"?`.${g}`:g);n=n.replace(s,f)}return n},El=({baseUrl:t,path:e,query:n,querySerializer:r,url:s})=>{let c=s.startsWith("/")?s:`/${s}`,u=(t??"")+c;e&&(u=Hp({path:e,url:u}));let p=n?r(n):"";return p.startsWith("?")&&(p=p.substring(1)),p&&(u+=`?${p}`),u};function _n(t){let e=t.body!==void 0;if(e&&t.bodySerializer)return"serializedBody"in t?t.serializedBody!==void 0&&t.serializedBody!==""?t.serializedBody:null:t.body!==""?t.body:null;if(e)return t.body}var $l=async(t,e)=>{let n=typeof e=="function"?await e(t):e;if(n)return t.scheme==="bearer"?`Bearer ${n}`:t.scheme==="basic"?`Basic ${btoa(n)}`:n};var Pn={bodySerializer:t=>JSON.stringify(t,(e,n)=>typeof n=="bigint"?n.toString():n)};var ql=({parameters:t={},...e}={})=>r=>{let s=[];if(r&&typeof r=="object")for(let c in r){let u=r[c];if(u==null)continue;let p=t[c]||e;if(Array.isArray(u)){let g=xt({allowReserved:p.allowReserved,explode:!0,name:c,style:"form",value:u,...p.array});g&&s.push(g)}else if(typeof u=="object"){let g=_t({allowReserved:p.allowReserved,explode:!0,name:c,style:"deepObject",value:u,...p.object});g&&s.push(g)}else{let g=Te({allowReserved:p.allowReserved,name:c,value:u});g&&s.push(g)}}return s.join("&")},Dl=t=>{if(!t)return"stream";let e=t.split(";")[0]?.trim();if(e){if(e.startsWith("application/json")||e.endsWith("+json"))return"json";if(e==="multipart/form-data")return"formData";if(["application/","audio/","image/","video/"].some(n=>e.startsWith(n)))return"blob";if(e.startsWith("text/"))return"text"}},Wp=(t,e)=>e?!!(t.headers.has(e)||t.query?.[e]||t.headers.get("Cookie")?.includes(`${e}=`)):!1,Ml=async({security:t,...e})=>{for(let n of t){if(Wp(e,n.name))continue;let r=await $l(n,e.auth);if(!r)continue;let s=n.name??"Authorization";switch(n.in){case"query":e.query||(e.query={}),e.query[s]=r;break;case"cookie":e.headers.append("Cookie",`${s}=${r}`);break;default:e.headers.set(s,r);break}}},kn=t=>El({baseUrl:t.baseUrl,path:t.path,query:t.query,querySerializer:typeof t.querySerializer=="function"?t.querySerializer:ql(t.querySerializer),url:t.url}),wn=(t,e)=>{let n={...t,...e};return n.baseUrl?.endsWith("/")&&(n.baseUrl=n.baseUrl.substring(0,n.baseUrl.length-1)),n.headers=Pt(t.headers,e.headers),n},zp=t=>{let e=[];return t.forEach((n,r)=>{e.push([r,n])}),e},Pt=(...t)=>{let e=new Headers;for(let n of t){if(!n)continue;let r=n instanceof Headers?zp(n):Object.entries(n);for(let[s,c]of r)if(c===null)e.delete(s);else if(Array.isArray(c))for(let u of c)e.append(s,u);else c!==void 0&&e.set(s,typeof c=="object"?JSON.stringify(c):c)}return e},Ge=class{fns=[];clear(){this.fns=[]}eject(e){let n=this.getInterceptorIndex(e);this.fns[n]&&(this.fns[n]=null)}exists(e){let n=this.getInterceptorIndex(e);return!!this.fns[n]}getInterceptorIndex(e){return typeof e=="number"?this.fns[e]?e:-1:this.fns.indexOf(e)}update(e,n){let r=this.getInterceptorIndex(e);return this.fns[r]?(this.fns[r]=n,e):!1}use(e){return this.fns.push(e),this.fns.length-1}},Ul=()=>({error:new Ge,request:new Ge,response:new Ge}),Vp=ql({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),Jp={"Content-Type":"application/json"},Be=(t={})=>({...Pn,headers:Jp,parseAs:"auto",querySerializer:Vp,...t});var Ke=(t={})=>{let e=wn(Be(),t),n=()=>({...e}),r=f=>(e=wn(e,f),n()),s=Ul(),c=async f=>{let m={...e,...f,fetch:f.fetch??e.fetch??globalThis.fetch,headers:Pt(e.headers,f.headers),serializedBody:void 0};m.security&&await Ml({...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 _=kn(m);return{opts:m,url:_}},u=async f=>{let{opts:m,url:_}=await c(f),x={redirect:"follow",...m,body:_n(m)},I=new Request(_,x);for(let k of s.request.fns)k&&(I=await k(I,m));let T=m.fetch,l;try{l=await T(I)}catch(k){let $=k;for(let w of s.error.fns)w&&($=await w(k,void 0,I,m));if($=$||{},m.throwOnError)throw $;return m.responseStyle==="data"?void 0:{error:$,request:I,response:void 0}}for(let k of s.response.fns)k&&(l=await k(l,I,m));let h={request:I,response:l};if(l.ok){let k=(m.parseAs==="auto"?Dl(l.headers.get("Content-Type")):m.parseAs)??"json";if(l.status===204||l.headers.get("Content-Length")==="0"){let w;switch(k){case"arrayBuffer":case"blob":case"text":w=await l[k]();break;case"formData":w=new FormData;break;case"stream":w=l.body;break;default:w={};break}return m.responseStyle==="data"?w:{data:w,...h}}let $;switch(k){case"arrayBuffer":case"blob":case"formData":case"text":$=await l[k]();break;case"json":{let w=await l.text();$=w?JSON.parse(w):{};break}case"stream":return m.responseStyle==="data"?l.body:{data:l.body,...h}}return k==="json"&&(m.responseValidator&&await m.responseValidator($),m.responseTransformer&&($=await m.responseTransformer($))),m.responseStyle==="data"?$:{data:$,...h}}let a=await l.text(),A;try{A=JSON.parse(a)}catch{}let j=A??a,v=j;for(let k of s.error.fns)k&&(v=await k(j,l,I,m));if(v=v||{},m.throwOnError)throw v;return m.responseStyle==="data"?void 0:{error:v,...h}},p=f=>m=>u({...m,method:f}),g=f=>async m=>{let{opts:_,url:x}=await c(m);return jl({..._,body:_.body,headers:_.headers,method:f,onRequest:async(I,T)=>{let l=new Request(I,T);for(let h of s.request.fns)h&&(l=await h(l,_));return l},serializedBody:_n(_),url:x})};return{buildUrl:kn,connect:p("CONNECT"),delete:p("DELETE"),get:p("GET"),getConfig:n,head:p("HEAD"),interceptors:s,options:p("OPTIONS"),patch:p("PATCH"),post:p("POST"),put:p("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:p("TRACE")}};var Xp={$body_:"body",$headers_:"headers",$path_:"path",$query_:"query"},Qp=Object.entries(Xp),Ol=(t,e)=>{e||(e=new Map);for(let n of t)"in"in n?n.key&&e.set(n.key,{in:n.in,map:n.map}):"key"in n?e.set(n.key,{map:n.map}):n.args&&Ol(n.args,e);return e},Yp=t=>{for(let[e,n]of Object.entries(t))n&&typeof n=="object"&&!Object.keys(n).length&&delete t[e]},d=(t,e)=>{let n={body:{},headers:{},path:{},query:{}},r=Ol(e),s;for(let[c,u]of t.entries())if(e[c]&&(s=e[c]),!!s)if("in"in s)if(s.key){let p=r.get(s.key),g=p.map||s.key;p.in&&(n[p.in][g]=u)}else n.body=u;else for(let[p,g]of Object.entries(u??{})){let f=r.get(p);if(f)if(f.in){let m=f.map||p;n[f.in][m]=g}else n[f.map]=g;else{let m=Qp.find(([_])=>p.startsWith(_));if(m){let[_,x]=m;n[x][p.slice(_.length)]=g}else if("allowExtra"in s&&s.allowExtra){for(let[_,x]of Object.entries(s.allowExtra))if(x){n[_][p]=g;break}}}}return Yp(n),n};var Fl=Ke(Be({baseUrl:"http://localhost:4096"}));var b=class{client;constructor(e){this.client=e?.client??Fl}},Sn=class{defaultKey="default";instances=new Map;get(e){let n=this.instances.get(e??this.defaultKey);if(!n)throw new Error('No SDK client found. Create one with "new OpencodeClient()" to fix this error.');return n}set(e,n){this.instances.set(n??this.defaultKey,e)}},vn=class extends b{remove(e,n){let r=d([e],[{args:[{in:"path",key:"providerID"}]}]);return(n?.client??this.client).delete({url:"/auth/{providerID}",...n,...r})}set(e,n){let r=d([e],[{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}})}},Cn=class extends b{log(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/agent",...n,...r})}skills(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/skill",...n,...r})}},Rn=class extends b{moveSession(e,n){let r=d([e],[{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}})}},Tn=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/capabilities",...n,...r})}},An=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/console",...n,...r})}listOrgs(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/console/orgs",...n,...r})}switchOrg(e,n){let r=d([e],[{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}})}},In=class extends b{list(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},jn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/resource",...n,...r})}},En=class extends b{generateName(e,n){let r=d([e],[{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}})}},$n=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace/adapter",...n,...r})}},qn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace",...n,...r})}create(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/experimental/workspace/sync-list",...n,...r})}status(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace/status",...n,...r})}remove(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 $n({client:this.client})}},Dn=class extends b{_controlPlane;get controlPlane(){return this._controlPlane??=new Rn({client:this.client})}_capabilities;get capabilities(){return this._capabilities??=new Tn({client:this.client})}_console;get console(){return this._console??=new An({client:this.client})}_session;get session(){return this._session??=new In({client:this.client})}_resource;get resource(){return this._resource??=new jn({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new En({client:this.client})}_workspace;get workspace(){return this._workspace??=new qn({client:this.client})}},Mn=class extends b{get(e){return(e?.client??this.client).get({url:"/global/config",...e})}update(e,n){let r=d([e],[{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}})}},Un=class extends b{health(e){return(e?.client??this.client).get({url:"/global/health",...e})}event(e){return(e?.client??this.client).sse.get({url:"/global/event",...e})}dispose(e){return(e?.client??this.client).post({url:"/global/dispose",...e})}upgrade(e,n){let r=d([e],[{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 Mn({client:this.client})}},On=class extends b{subscribe(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).sse.get({url:"/event",...n,...r})}},Fn=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/config",...n,...r})}update(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/config/providers",...n,...r})}},Ln=class extends b{list(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/tool/ids",...n,...r})}},Gn=class extends b{remove(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/worktree",...n,...r})}create(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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}})}},Bn=class extends b{text(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"pattern"}]}]);return(n?.client??this.client).get({url:"/find",...n,...r})}files(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"query"}]}]);return(n?.client??this.client).get({url:"/find/symbol",...n,...r})}},Kn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"},{in:"query",key:"path"}]}]);return(n?.client??this.client).get({url:"/file",...n,...r})}read(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/file/status",...n,...r})}},Nn=class extends b{dispose(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/instance/dispose",...n,...r})}},Hn=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/path",...n,...r})}},Wn=class extends b{raw(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs/diff/raw",...n,...r})}},zn=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs",...n,...r})}status(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs/status",...n,...r})}diff(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 Wn({client:this.client})}},Vn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/command",...n,...r})}},Jn=class extends b{status(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/lsp",...n,...r})}},Xn=class extends b{status(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/formatter",...n,...r})}},Qn=class extends b{remove(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 b{status(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/mcp",...n,...r})}add(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 Qn({client:this.client})}},Zn=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/project",...n,...r})}current(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/project/current",...n,...r})}initGit(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/project/git/init",...n,...r})}update(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},er=class extends b{shells(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/pty/shells",...n,...r})}list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/pty",...n,...r})}create(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},tr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/question",...n,...r})}reply(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},nr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/permission",...n,...r})}reply(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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}})}},rr=class extends b{authorize(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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}})}},sr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/provider",...n,...r})}auth(e,n){let r=d([e],[{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 rr({client:this.client})}},ir=class extends b{list(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/session/status",...n,...r})}delete(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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})}},or=class extends b{delete(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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}})}},ar=class extends b{list(e,n){let r=d([e],[{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}})}},cr=class extends b{start(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/sync/start",...n,...r})}replay(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 ar({client:this.client})}},lr=class extends b{next(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/tui/control/next",...n,...r})}response(e,n){let r=d([e],[{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}})}},ur=class extends b{appendPrompt(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-help",...n,...r})}openSessions(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-sessions",...n,...r})}openThemes(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-themes",...n,...r})}openModels(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/open-models",...n,...r})}submitPrompt(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/submit-prompt",...n,...r})}clearPrompt(e,n){let r=d([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/tui/clear-prompt",...n,...r})}executeCommand(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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 lr({client:this.client})}},pr=class extends b{get(e){return(e?.client??this.client).get({url:"/api/health",...e})}},dr=class extends b{get(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/location",...n,...r})}},gr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/agent",...n,...r})}},mr=class extends b{stage(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/revert/clear",...n,...r})}commit(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/revert/commit",...n,...r})}},fr=class extends b{list(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/permission",...n,...r})}reply(e,n){let r=d([e],[{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}})}},yr=class extends b{list(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/question",...n,...r})}reply(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/question/{requestID}/reject",...n,...r})}},hr=class extends b{list(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}",...n,...r})}switchAgent(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/compact",...n,...r})}wait(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/wait",...n,...r})}context(e,n){let r=d([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/context",...n,...r})}messages(e,n){let r=d([e],[{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 mr({client:this.client})}_permission;get permission(){return this._permission??=new fr({client:this.client})}_question;get question(){return this._question??=new yr({client:this.client})}},br=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/model",...n,...r})}},xr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/provider",...n,...r})}get(e,n){let r=d([e],[{args:[{in:"path",key:"providerID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/provider/{providerID}",...n,...r})}},_r=class extends b{key(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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}})}},Pr=class extends b{cancel(e,n){let r=d([e],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).delete({url:"/api/integration/attempt/{attemptID}",...n,...r})}status(e,n){let r=d([e],[{args:[{in:"path",key:"attemptID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/integration/attempt/{attemptID}",...n,...r})}complete(e,n){let r=d([e],[{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}})}},kr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/integration",...n,...r})}get(e,n){let r=d([e],[{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 _r({client:this.client})}_attempt;get attempt(){return this._attempt??=new Pr({client:this.client})}},wr=class extends b{remove(e,n){let r=d([e],[{args:[{in:"path",key:"credentialID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).delete({url:"/api/credential/{credentialID}",...n,...r})}update(e,n){let r=d([e],[{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}})}},Sr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/permission/request",...n,...r})}},vr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"projectID"}]}]);return(n?.client??this.client).get({url:"/api/permission/saved",...n,...r})}remove(e,n){let r=d([e],[{args:[{in:"path",key:"id"}]}]);return(n?.client??this.client).delete({url:"/api/permission/saved/{id}",...n,...r})}},Cr=class extends b{_request;get request(){return this._request??=new Sr({client:this.client})}_saved;get saved(){return this._saved??=new vr({client:this.client})}},Rr=class extends b{read(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/fs/read/*",...n,...r})}list(e,n){let r=d([e],[{args:[{in:"query",key:"location"},{in:"query",key:"path"}]}]);return(n?.client??this.client).get({url:"/api/fs/list",...n,...r})}find(e,n){let r=d([e],[{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})}},Tr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/command",...n,...r})}},Ar=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/skill",...n,...r})}},Ir=class extends b{subscribe(e){return(e?.client??this.client).sse.get({url:"/api/event",...e})}},jr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/pty",...n,...r})}create(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).delete({url:"/api/pty/{ptyID}",...n,...r})}get(e,n){let r=d([e],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/pty/{ptyID}",...n,...r})}update(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"ptyID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).post({url:"/api/pty/{ptyID}/connect-token",...n,...r})}connect(e,n){let r=d([e],[{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})}},Er=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/question/request",...n,...r})}},$r=class extends b{_request;get request(){return this._request??=new Er({client:this.client})}},qr=class extends b{list(e,n){let r=d([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/reference",...n,...r})}},Dr=class extends b{remove(e,n){let r=d([e],[{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(e,n){let r=d([e],[{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(e,n){let r=d([e],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).post({url:"/experimental/project/{projectID}/copy/refresh",...n,...r})}},Mr=class extends b{_health;get health(){return this._health??=new pr({client:this.client})}_location;get location(){return this._location??=new dr({client:this.client})}_agent;get agent(){return this._agent??=new gr({client:this.client})}_session;get session(){return this._session??=new hr({client:this.client})}_model;get model(){return this._model??=new br({client:this.client})}_provider;get provider(){return this._provider??=new xr({client:this.client})}_integration;get integration(){return this._integration??=new kr({client:this.client})}_credential;get credential(){return this._credential??=new wr({client:this.client})}_permission;get permission(){return this._permission??=new Cr({client:this.client})}_fs;get fs(){return this._fs??=new Rr({client:this.client})}_command;get command(){return this._command??=new Tr({client:this.client})}_skill;get skill(){return this._skill??=new Ar({client:this.client})}_event;get event(){return this._event??=new Ir({client:this.client})}_pty;get pty(){return this._pty??=new jr({client:this.client})}_question;get question(){return this._question??=new $r({client:this.client})}_reference;get reference(){return this._reference??=new qr({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new Dr({client:this.client})}},kt=class t extends b{static __registry=new Sn;constructor(e){super(e),t.__registry.set(this,e?.key)}_auth;get auth(){return this._auth??=new vn({client:this.client})}_app;get app(){return this._app??=new Cn({client:this.client})}_experimental;get experimental(){return this._experimental??=new Dn({client:this.client})}_global;get global(){return this._global??=new Un({client:this.client})}_event;get event(){return this._event??=new On({client:this.client})}_config;get config(){return this._config??=new Fn({client:this.client})}_tool;get tool(){return this._tool??=new Ln({client:this.client})}_worktree;get worktree(){return this._worktree??=new Gn({client:this.client})}_find;get find(){return this._find??=new Bn({client:this.client})}_file;get file(){return this._file??=new Kn({client:this.client})}_instance;get instance(){return this._instance??=new Nn({client:this.client})}_path;get path(){return this._path??=new Hn({client:this.client})}_vcs;get vcs(){return this._vcs??=new zn({client:this.client})}_command;get command(){return this._command??=new Vn({client:this.client})}_lsp;get lsp(){return this._lsp??=new Jn({client:this.client})}_formatter;get formatter(){return this._formatter??=new Xn({client:this.client})}_mcp;get mcp(){return this._mcp??=new Yn({client:this.client})}_project;get project(){return this._project??=new Zn({client:this.client})}_pty;get pty(){return this._pty??=new er({client:this.client})}_question;get question(){return this._question??=new tr({client:this.client})}_permission;get permission(){return this._permission??=new nr({client:this.client})}_provider;get provider(){return this._provider??=new sr({client:this.client})}_session;get session(){return this._session??=new ir({client:this.client})}_part;get part(){return this._part??=new or({client:this.client})}_sync;get sync(){return this._sync??=new cr({client:this.client})}_tui;get tui(){return this._tui??=new ur({client:this.client})}_v2;get v2(){return this._v2??=new Mr({client:this.client})}};function Gl(t,e,n,r){if(!r?.throwOnError||t instanceof Error)return t;if(typeof t=="object"&&t!==null&&Object.keys(t).length>0){let c=t,u=typeof c.data?.message=="string"&&c.data.message||typeof c.message=="string"&&c.message||typeof c.name=="string"&&c.name||Ll(n,e);return new Error(u,{cause:{body:t,status:e?.status}})}if(typeof t=="string"&&t.length>0)return new Error(t,{cause:{body:t,status:e?.status}});let s=e?"(empty response body)":"network error (no response)";return new Error(`opencode server ${Ll(n,e)}: ${s}`,{cause:{body:t,status:e?.status}})}function Ll(t,e){let n=t?.method??"?",r=t?.url??"?",s=e?.status,c=e?.statusText;return`${n} ${r}${s?" \u2192 "+s:""}${c?" "+c:""}`}function Zp(t,e,n){if(t)return e&&(t===e||n&&t===n(e))?e:t}function ed(t,e){if(t.method!=="GET"&&t.method!=="HEAD")return t;let n=new URL(t.url),r=!1;for(let[c,u]of[["x-opencode-directory","directory"],["x-opencode-workspace","workspace"]]){let p=Zp(t.headers.get(c),u==="directory"?e.directory:e.workspace,u==="directory"?encodeURIComponent:void 0);if(p){for(let g of n.pathname.startsWith("/api/")?[u,`location[${u}]`]:[u])n.searchParams.has(g)||n.searchParams.set(g,p);r=!0}}if(!r)return t;let s=new Request(n,t);return s.headers.delete("x-opencode-directory"),s.headers.delete("x-opencode-workspace"),s}function Ur(t){t?.fetch||(t={...t,fetch:r=>(r.timeout=!1,fetch(r))}),t?.directory&&(t.headers={...t.headers,"x-opencode-directory":encodeURIComponent(t.directory)}),t?.experimental_workspaceID&&(t.headers={...t.headers,"x-opencode-workspace":t.experimental_workspaceID});let e=Ke(t);return e.interceptors.request.use(n=>ed(n,{directory:t?.directory,workspace:t?.experimental_workspaceID})),e.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}),e.interceptors.error.use(Gl),new kt({client:e})}var td=new Set(["api","cli","mobile","web"]);function wt(t){let e=t?.trim().toLowerCase();return e&&td.has(e)?e:null}function nd(t){return new Promise(e=>setTimeout(e,t))}async function Bl(t,e,n){let r=Math.max(1,e?.attempts??1),s=e?.baseDelayMs??0,c=e?.invalidateBetweenAttempts??!1,u=null;for(let p=0;p<r;p++)if(p>0&&(c&&n?.(),s>0&&await nd(s)),u=await t(),u)return u;return u}var rd=3e4;function sd(t){return(t instanceof Request?t.url:String(t)).includes("/global/event")}function Or(t,e,n=rd){let r=t instanceof Request?t.signal:e?.signal;if(sd(t))return r??void 0;let s=AbortSignal.timeout(n);return r?typeof AbortSignal.any=="function"?AbortSignal.any([r,s]):r:s}function Fr(t,e,n,r){let s=new Headers(t instanceof Request?t.headers:void 0);e?.headers&&new Headers(e.headers).forEach((u,p)=>{s.set(p,u)}),n&&!s.has("Authorization")&&s.set("Authorization",`Bearer ${n}`);let c=wt(r);return c&&!s.has("X-Kortix-Client")&&s.set("X-Kortix-Client",c),s}function Kl(){return new Response(JSON.stringify({error:"Not authenticated"}),{status:401,headers:{"Content-Type":"application/json"}})}async function St(){return E().getToken()}async function ee(t){return Bl(()=>E().getToken(),t,Ne)}function Ne(){}function id(t){}function od(t){}async function me(){return St()}async function Lr(t){return ee(t)}function Nl(t,e,n,r){let s=E().fetch??fetch;if(t instanceof Request){let c=new Request(t,{headers:n,...r?{signal:r}:{}});return s(c)}return s(t,{...e,headers:n,...r?{signal:r}:{}})}async function q(t,e,n){let{retryOnAuthError:r=!0,timeoutMs:s}=n??{},c=await Lr();if(!c)return Kl();let u=E().clientSource,p=Fr(t,e,c,u),g=s===void 0?Or(t,e):Or(t,e,s),f=await Nl(t,e,p,g);if(f.status===401&&r&&c){Ne();let m=await Lr({attempts:2,baseDelayMs:200});if(m&&m!==c){let _=Fr(t,e,m,u);return Nl(t,e,_,g)}}return f}var Ae={url:null,sandboxId:null,dbSandboxId:null,version:0},ad=new Set;function Hl(t,e=null,n=null){if(!(Ae.url===t&&Ae.sandboxId===e&&Ae.dbSandboxId===n)){Ae={url:t,sandboxId:e,dbSandboxId:n,version:Ae.version+1};for(let r of ad)r()}}function Wl(){return Ae.url}function cd(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return t.slice(0,e)}function fe(){return cd(E().backendUrl||"http://localhost:8008/v1")}function zl(){let t=E().sandboxId;return t?`${fe()}/p/${t}/8000`:""}function ld(t){return`${fe()}/p/${t}/8000`}function vt(t){return ld(t)}function L(){let t=Wl();return t||(E().billingEnabled??!1?"":zl())}var R=class extends Error{status;code;details;data;detail;response;url;endpoint;timeout;constructor(e,n={}){super(e),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 e=="string"?e:e==null?"":String(e);Object.defineProperty(this,"message",{value:u,enumerable:!0,writable:!0,configurable:!0}),Object.setPrototypeOf(this,new.target.prototype)}},ye=class extends R{constructor(e="Not authenticated"){super(e,{code:"NO_SESSION"}),this.name="AuthError"}},ce=class t extends Error{status;detail;constructor(e,n,r){super(r||n.message||`Billing Error: ${e}`),this.name="BillingError",this.status=e,this.detail=n,Object.setPrototypeOf(this,t.prototype)}},he=class t extends Error{status;detail;constructor(e=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=e,this.detail={message:n?.message||s,suggestion:n?.suggestion||c},Object.setPrototypeOf(this,t.prototype)}},Ct="feature_disabled";function Vl(t){if(!(t instanceof R)||t.status!==403||t.code!==Ct)return null;let e=t.details??t.data;return e&&typeof e=="object"?e:{}}function Gr(t){let e=Vl(t);return e?(typeof e.feature=="string"&&!t.feature&&(t.feature=e.feature),!0):!1}function Br(t){let e=Vl(t);if(!e)return null;let n=t.feature;return typeof n=="string"?n:typeof e.feature=="string"?e.feature:null}function be(t){let e=t.response?.status||t.status;if(e!==402)return t;let n=t.response?.data||t.data||t.detail||{},r=n?.detail||n;return new ce(e,{message:r?.message||t.message||"Billing error",...r})}function Kr(t){return t instanceof ce}function Nr(t){if(!(t instanceof ce))return null;let e=t.detail?.message?.toLowerCase()||"";return e.includes("credit")||e.includes("balance")||e.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:t.detail?.message||"Please upgrade to continue."}}async function Hr(t,e){return(await t.json().catch(()=>({})))?.error||t.statusText||e}function Wr(t){if(!t)throw new Error("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading");return t}async function zr(t){let e=Wr(t),n=await q(`${e}/env`);if(!n.ok)throw new Error(await Hr(n,"Failed to load secrets"));return(await n.json()).secrets??{}}async function Vr(t,e,n){let r=Wr(t),s=await q(`${r}/env/${encodeURIComponent(e)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:n})});if(!s.ok)throw new Error(await Hr(s,"Failed to save secret"))}async function Jr(t,e){let n=Wr(t),r=await q(`${n}/env/${encodeURIComponent(e)}`,{method:"DELETE"});if(!r.ok)throw new Error(await Hr(r,"Failed to delete secret"))}var Jl={list:zr,set:Vr,delete:Jr};async function Xl(t,e,n){let r=t;for(;r.endsWith("/");)r=r.slice(0,-1);let s=await q(`${r}/kortix/triggers${e}`,{...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 xe(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return e===t.length?t:t.slice(0,e)}async function Rt(t,e){let n=await t.json().catch(()=>({}));return n?.error||n?.message||t.statusText||e}function He(t){if(!t)throw new Error("[kortix-pty] Server URL not ready \u2014 sandbox is still loading");return xe(t)}async function Xr(t){let e=He(t),n=await q(`${e}/kortix/pty`);if(!n.ok)throw new Error(await Rt(n,"Failed to list terminals"));return n.json()}async function Qr(t,e){let n=He(t),r=await q(`${n}/kortix/pty`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e??{})});if(!r.ok)throw new Error(await Rt(r,"Failed to create terminal"));return r.json()}async function Yr(t,e,n){let r=He(t),s=await q(`${r}/kortix/pty/${encodeURIComponent(e)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!s.ok)throw new Error(await Rt(s,"Failed to update terminal"));return s.json()}async function Zr(t,e){let n=He(t),r=await q(`${n}/kortix/pty/${encodeURIComponent(e)}`,{method:"DELETE"});if(!r.ok)throw new Error(await Rt(r,"Failed to remove terminal"))}async function es(t,e){let n=He(e),s=`${(()=>{try{let p=new URL(n);return p.protocol==="https:"?p.protocol="wss:":p.protocol==="http:"&&(p.protocol="ws:"),typeof window<"u"&&window.location.protocol==="https:"&&p.protocol==="ws:"&&(p.protocol="wss:"),xe(p.toString())}catch{return n.replace("https://","wss://").replace("http://","ws://")}})()}/kortix/pty/${encodeURIComponent(t)}/connect`,c=await me();if(!c)return s;let u=s.includes("?")?"&":"?";return`${s}${u}token=${encodeURIComponent(c)}`}var Ql={list:Xr,create:Qr,update:Yr,remove:Zr,webSocketUrl:es};async function S(t,e,n,r){let s=t;for(;s.endsWith("/");)s=s.slice(0,-1);let c=await q(`${s}${e}`,{...n,headers:{"Content-Type":"application/json",...n?.headers}},r),u=await c.text(),p={};try{p=u?JSON.parse(u):{}}catch{p={}}if(!c.ok)throw new Error(p?.error||p?.message||p?.details||u.slice(0,200)||`Request failed with ${c.status}`);return p}async function ud(t,e={}){let n=new URLSearchParams;e.projectId&&n.set("project_id",e.projectId),e.status&&n.set("status",e.status);let r=n.toString()?`?${n}`:"";return S(t,`/kortix/tasks${r}`)}async function pd(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}`)}async function dd(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}/events`)}async function gd(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}/status`)}async function md(t,e){return S(t,"/kortix/tasks",{method:"POST",body:JSON.stringify(e)})}async function fd(t,e,n){return S(t,`/kortix/tasks/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function yd(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}/start`,{method:"POST"})}async function hd(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}/approve`,{method:"POST"})}async function bd(t,e){return S(t,`/kortix/tasks/${encodeURIComponent(e)}`,{method:"DELETE"})}async function xd(t,e){let n=e?`?project_id=${encodeURIComponent(e)}`:"";return S(t,`/kortix/tickets${n}`)}async function _d(t,e){return S(t,`/kortix/tickets/${encodeURIComponent(e)}`)}async function Pd(t,e){return S(t,`/kortix/tickets/${encodeURIComponent(e)}/events`)}async function kd(t,e){return S(t,"/kortix/tickets",{method:"POST",body:JSON.stringify(e)})}async function wd(t,e,n){return S(t,`/kortix/tickets/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Sd(t,e,n){return S(t,`/kortix/tickets/${encodeURIComponent(e)}/status`,{method:"POST",body:JSON.stringify(n)})}async function vd(t,e,n){return S(t,`/kortix/tickets/${encodeURIComponent(e)}/assign`,{method:"POST",body:JSON.stringify(n)})}async function Cd(t,e,n){return S(t,`/kortix/tickets/${encodeURIComponent(e)}/unassign`,{method:"POST",body:JSON.stringify(n)})}async function Rd(t,e,n){return S(t,`/kortix/tickets/${encodeURIComponent(e)}/comments`,{method:"POST",body:JSON.stringify(n)})}async function Td(t,e){return S(t,`/kortix/tickets/${encodeURIComponent(e)}`,{method:"DELETE"})}async function Ad(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/columns`)}async function Id(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/columns`,{method:"PUT",body:JSON.stringify({columns:n})})}async function jd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/fields`)}async function Ed(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/fields`,{method:"PUT",body:JSON.stringify({fields:n})})}async function $d(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/templates`)}async function qd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/templates`,{method:"PUT",body:JSON.stringify({templates:n})})}async function Dd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/pm-session`,{method:"POST"})}async function Md(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/agents`)}async function Ud(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/agents`,{method:"POST",body:JSON.stringify(n)})}async function Od(t,e,n,r){return S(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Fd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}`,{method:"DELETE"})}async function Ld(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}/persona`)}async function Gd(t,e,n=200){return S(t,`/kortix/projects/${encodeURIComponent(e)}/activity?limit=${n}`)}async function Bd(t){return S(t,"/kortix/projects")}async function Kd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}`)}async function Nd(t,e){return S(t,`/kortix/projects/by-session/${encodeURIComponent(e)}`)}async function Hd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/sessions`)}async function Wd(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}`,{method:"DELETE"})}async function zd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Vd(t,e,n="all"){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones?status=${n}`)}async function Jd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`)}async function Xd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/events`)}async function Qd(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones`,{method:"POST",body:JSON.stringify(n)})}async function Yd(t,e,n,r){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Zd(t,e,n,r){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/close`,{method:"POST",body:JSON.stringify(r)})}async function eg(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/reopen`,{method:"POST"})}async function tg(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`,{method:"DELETE"})}async function ng(t,e){return S(t,`/kortix/projects/${encodeURIComponent(e)}/credentials`)}async function rg(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}/events`)}async function sg(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/credentials`,{method:"POST",body:JSON.stringify(n)})}async function ig(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}`)}async function og(t,e,n){return S(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}`,{method:"DELETE"})}var ag=1e4,cg={retryOnAuthError:!1};function Ie(t,e,n){return S(t,e,{signal:AbortSignal.timeout(ag),...n},cg)}async function lg(t,e=!1){return(await Ie(t,`/kortix/services${e?"?all=true":""}`)).services??[]}async function ug(t){return(await Ie(t,"/kortix/services/templates")).templates??[]}async function pg(t,e){return(await Ie(t,`/kortix/services/${encodeURIComponent(e)}/logs`)).logs??[]}async function dg(t,e,n){let r=n==="delete",s=r?`/kortix/services/${encodeURIComponent(e)}`:`/kortix/services/${encodeURIComponent(e)}/${n}`;return Ie(t,s,{method:r?"DELETE":"POST"})}async function gg(t,e){return Ie(t,`/kortix/services/reconcile${e?"?reload=true":""}`,{method:"POST"})}async function mg(t,e){return Ie(t,"/kortix/services/register",{method:"POST",body:JSON.stringify(e)})}var Tt=new Map,At=class extends Error{constructor(e="[opencode-sdk] Server URL not ready \u2014 sandbox is still loading"){super(e),this.name="RuntimeNotReadyError"}};function le(){let t=L();if(!t)throw new At;return te(t)}function te(t){if(!t)throw new Error("[opencode-sdk] getClientForUrl called without a url");let e=Tt.get(t);if(e)return e;if(!bt())throw new Error("[opencode-sdk] No auth token provider configured \u2014 call configureKortix()/createKortix() before talking to a sandbox runtime.");let n=Ur({baseUrl:t,fetch:q});return Tt.set(t,n),n}function fg(t){Tt.delete(t)}function yg(){Tt.clear()}var It=new Map;function hg(t){if(!t)throw new Error("[opencode-sdk] getPublicClientForUrl called without a url");let e=It.get(t);if(e)return e;let n=Ur({baseUrl:t,fetch});return It.set(t,n),n}function bg(t){It.delete(t)}function xg(){It.clear()}async function _g(t){let e=await t.text().catch(()=>"");try{let n=JSON.parse(e);return n?.error||n?.message||e||t.statusText||`HTTP ${t.status}`}catch{return e||t.statusText||`HTTP ${t.status}`}}async function Pg(t){let e=L();if(!e)throw new R("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading",{code:"RUNTIME_UNAVAILABLE"});let n=t==="full"?"/kortix/refresh":"/global/dispose",r=await q(`${e}${n}`,{method:"POST"}),s=r.headers.get("content-type")??"",c=/^application\/([\w.+-]+\+)?json\b/i.test(s.trim());if(!r.ok)throw new R(`System reload failed (${r.status}): ${await _g(r)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});if(!c)throw new R(`System reload endpoint is unavailable on this sandbox (${n})`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});let u;try{u=await r.json()}catch(g){throw new R(`System reload returned malformed JSON from ${n}: ${g instanceof Error?g.message:String(g)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"})}let p=u===!0||typeof u=="object"&&u!==null&&u.ok===!0;return{success:p,mode:t,steps:p?[t==="full"?"refreshed workspace and restarted runtime":"reloaded config in place"]:[],errors:p?[]:[`the sandbox did not confirm the reload (${n})`]}}function Zl(t){if(t.error){let e=t.error,n=e?.data?.message||e?.message||(typeof e?.error=="string"?e.error:null)||"SDK request failed";throw new R(n,{status:e?.response?.status??e?.status,response:e?.response,details:e})}return t.data}async function je(t){let e=await t.text().catch(()=>""),n=null;try{n=JSON.parse(e)}catch{}return n?.error||e||t.statusText||`HTTP ${t.status}`}async function jt(t,e=L()){let n=await q(`${e}${t}`);if(!n.ok)throw new R(await je(n),{status:n.status,response:n});return n.json()}var Et=["/workspace","/tmp","/home","/opt"],kg=Et.filter(t=>t!=="/workspace");function ns(t){return Et.some(e=>t===e||t.startsWith(`${e}/`))}function rs(t){return ns(t)?t:`/workspace/${t.replace(/^\/+/,"")}`}function _e(t){let e=t||"";if(e==="/workspace"||e==="/workspace/")return"";if(e.startsWith("/workspace/"))e=e.slice(11);else if(kg.some(n=>e===n||e.startsWith(`${n}/`)))return e;for(;e.startsWith("/");)e=e.slice(1);return e}var ss=_e;async function ze(t,e=L()){let n=_e(t)||".";return(await jt(`/file?path=${encodeURIComponent(n)}`,e)).map(s=>({...s,path:s.absolute||`/workspace/${s.path}`}))}async function Ee(t,e=L()){let n=_e(t),r=await q(`${e}/file/content?path=${encodeURIComponent(n)}`);if(!r.ok)throw new R(await je(r),{status:r.status,response:r});return r.json()}async function wg(t,e,n=L()){let r=_e(t),s=await q(`${n}/file/raw?path=${encodeURIComponent(r)}`);if(!s.ok)throw new R(await je(s),{status:s.status,response:s});if((s.headers.get("content-type")||"").includes("text/html"))throw new R("File could not be loaded (raw byte route unavailable)",{status:s.status,response:s,code:"INVALID_CONTENT_TYPE"});let c=await s.blob();return e&&(!c.type||c.type==="application/octet-stream")?new Blob([c],{type:e}):c}async function $e(t,e=L()){try{return await wg(t,void 0,e)}catch{}let n=await Ee(t,e);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 Ve(t=L()){return jt("/file/status",t)}async function Je(t,e,n=L()){let r=new URLSearchParams({query:t});return e?.type&&r.set("type",e.type),e?.limit&&r.set("limit",String(e.limit)),jt(`/find/file?${r.toString()}`,n)}async function Xe(t,e=L()){return(await jt(`/find?pattern=${encodeURIComponent(t)}`,e)).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 We=[400,1200],Sg=t=>t===408||t===429||t===502||t===503||t===504,Yl=t=>new Promise(e=>setTimeout(e,t));function vg(t){let e=t?.name;return e==="TimeoutError"||e==="AbortError"}var ts=3e4,Cg=15*6e4,Rg=256;function Tg(t){if(typeof t!="number"||!Number.isFinite(t)||t<=0)return ts;let e=ts+t/Rg;return Math.min(Cg,Math.max(ts,Math.round(e)))}async function Ag(t){let e=await t.text().catch(()=>""),n=null;try{n=e?JSON.parse(e):null}catch{}let r=n?.error||n?.message||n?.data?.message;return typeof r=="string"&&r.trim()?r.trim():(t.headers.get("content-type")||"").includes("text/html")||/<html[\s>]/i.test(e)?t.status===502||/bad gateway/i.test(e)?"Bad gateway while reaching the sandbox upload service. Please retry.":t.statusText||`HTTP ${t.status}`:e.replace(/\s+/g," ").trim().slice(0,500)||t.statusText||`HTTP ${t.status}`}async function eu(t,e){let n;for(let s=0;s<=We.length;s++){let c;try{c=await e(t())}catch(p){if(n=p,vg(p)||s===We.length)break;await Yl(We[s]);continue}if(c.ok)return c.json();let u=await Ag(c);if(n=new R(`Upload failed (${c.status}): ${u}`,{status:c.status,response:c}),!Sg(c.status)||s===We.length)throw n;await Yl(We[s])}if(n instanceof R)throw n;let r=n instanceof Error?n.message:String(n||"request failed");throw new R(`Upload failed: ${r}`)}function qe(t,e,n,r=L()){let s=Tg(t.size);return eu(()=>{let c=new FormData,u=(e??"").trim();return u&&c.append("path",u.startsWith("/")?u:`/${u}`),n?c.append("file",t,n):c.append("file",t),c},c=>q(`${r}/file/upload`,{method:"POST",body:c},{timeoutMs:s}))}function Ig(t,e,n=L()){return eu(()=>{let r=new FormData;return r.append(t,e,t.split("/").pop()||"file"),r},async r=>{let s={},c=await me();return c&&(s.Authorization=`Bearer ${c}`),fetch(`${n}/file/upload`,{method:"POST",body:r,headers:s})})}function Qe(t,e=L()){let n=t.trim(),s=(n.startsWith("/")?n:`/${n}`).split("/"),c=s.pop()||"untitled",u=s.join("/")||"/workspace";return qe(new File([" "],c,{type:"application/octet-stream"}),u,void 0,e)}async function Ye(t,e,n=L()){return Ig(e,await $e(t,n),n)}async function Ze(t,e=L()){let n=await q(`${e}/file`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})});if(!n.ok)throw new R(`Delete failed (${n.status}): ${await je(n)}`,{status:n.status,response:n});return n.json()}async function et(t,e=L()){let n=await q(`${e}/file/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})});if(!n.ok)throw new R(`Mkdir failed (${n.status}): ${await je(n)}`,{status:n.status,response:n});return n.json()}async function tt(t,e,n=L()){let r=await q(`${n}/file/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({from:t,to:e})});if(!r.ok)throw new R(`Rename failed (${r.status}): ${await je(r)}`,{status:r.status,response:r});return r.json()}async function is(){return Zl(await le().project.current())}async function $t(){return Zl(await le().global.health())}async function os(){try{return(await $t()).healthy===!0}catch{return!1}}var tu={list:ze,read:Ee,readBlob:$e,status:Ve,findFiles:Je,findText:Xe,upload:qe,create:Qe,copy:Ye,remove:Ze,mkdir:et,rename:tt,currentProject:is,health:$t,isReachable:os,toDaemonPath:_e,toSandboxAbsolutePath:rs,toWorkspaceRelative:ss};var nu="X-Kortix-Impersonate",cs="kortix.impersonation",Pe=null,qt=!1,as=new Set;function ls(){try{return typeof sessionStorage>"u"?null:sessionStorage}catch{return null}}function ru(t,e=Date.now()){if(!t||!t.grantId||!t.accountId)return!1;let n=Date.parse(t.expiresAt);return Number.isFinite(n)&&n>e}function Eg(t){if(!t)return null;try{let e=JSON.parse(t);return typeof e?.grantId!="string"||typeof e?.accountId!="string"?null:{grantId:e.grantId,accountId:e.accountId,accountName:typeof e.accountName=="string"?e.accountName:null,expiresAt:typeof e.expiresAt=="string"?e.expiresAt:""}}catch{return null}}function su(){for(let t of as)try{t()}catch{}}function iu(){return qt||(qt=!0,Pe=Eg(ls()?.getItem(cs)??null)),Pe&&!ru(Pe)?(us(),null):Pe}function $g(t){if(qt=!0,!t){us();return}Pe=t;try{ls()?.setItem(cs,JSON.stringify(t))}catch{}su()}function us(){qt=!0;let t=Pe!==null;Pe=null;try{ls()?.removeItem(cs)}catch{}t&&su()}function qg(t){return as.add(t),()=>{as.delete(t)}}var Dg=/(^|\/)admin\/(api|analytics)(\/|$)/;function ou(t){let e=t;if(/^https?:\/\//.test(t))try{e=new URL(t).pathname}catch{e=t}return!Dg.test(e)}function Dt(t){if(t!==void 0&&!ou(t))return{};let e=iu();return e?{[nu]:e.grantId}:{}}var ne=()=>E().backendUrl||"",cu="feature_not_supported",lu="model_not_servable",uu="provision_in_flight",pu="request_deadline",Mg=/^Request exceeded the \d+s server processing deadline$/,Ug=(t,e,n)=>t!==503?!1:(typeof e=="object"&&e!==null&&"code"in e?e.code:void 0)===pu||Mg.test(n),Og=t=>new Promise(e=>setTimeout(e,t)),Fg=new Set([502,503,504]),Lg=t=>Fg.has(t),Gg=t=>{let e=(t??"GET").toUpperCase();return e==="GET"||e==="HEAD"},Bg=2,au=t=>t?.name==="AbortError"||t?.name==="AbortSignal"||t instanceof Error&&t.message.includes("aborted"),Mt=!1;function Kg(t){Mt=t}function Ng(){return Mt}async function ke(t,e={}){let{showErrors:n=!0,errorContext:r,timeout:s=3e4,...c}=e,u=new AbortController,p=null,g=!1,f=!1;try{p=setTimeout(()=>{!g&&!u.signal.aborted&&(g=!0,f=!0,u.abort())},s);let m=await ee(),_=c.body instanceof FormData,x={};_||(x["Content-Type"]="application/json"),Object.assign(x,c.headers);let I=wt(E().clientSource),T=Object.keys(x).some(v=>v.toLowerCase()==="x-kortix-client");if(I&&!T&&(x["X-Kortix-Client"]=I),Mt&&(x["x-kortix-admin-bypass"]="1"),Object.assign(x,Dt(t)),m)x.Authorization=`Bearer ${m}`;else return{error:new ye,success:!1};let l=Gg(c.method),h=l?Bg+1:1,a;for(let v=0;v<h;v++){v>0&&await Og(250*2**(v-1));let k=v===0?u:new AbortController;v>0&&(p=setTimeout(()=>{f=!0,k.abort()},s));try{a=await(E().fetch??fetch)(t,{...c,headers:x,signal:k.signal,credentials:c.credentials??"omit"})}catch(w){if(p&&(clearTimeout(p),p=null),au(w)||v===h-1)throw w;continue}if(p&&(clearTimeout(p),p=null),!(l&&Lg(a.status)&&v<h-1))break;try{await a.arrayBuffer()}catch{}}if(!a.ok){let v=`HTTP ${a.status}: ${a.statusText}`,k=null;try{k=await a.json(),typeof k.reason=="string"?v=k.reason:typeof k.message=="string"?v=k.message:k.error&&typeof k.error=="string"?v=k.error:typeof k.detail=="string"?v=k.detail:typeof k.detail?.message=="string"&&(v=k.detail.message)}catch{}let $=Ug(a.status,k,v),w=new R(v,{status:a.status,response:a,details:k||void 0,data:k,detail:k?.detail,code:$?pu:k?.code||k?.error_code||k?.detail?.error_code||a.status.toString()});if(a.status===402&&(w=be(w)),a.status===403&&k?.code==="account_mfa_required"&&typeof window<"u"&&typeof window.dispatchEvent=="function")try{window.dispatchEvent(new CustomEvent("kortix:mfa-required"))}catch{}a.status===431&&(w=new he(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."}));let F=a.status===501&&k?.code===cu,K=a.status===409&&k?.code===lu,y=a.status===409&&k?.code===uu;return n&&!F&&!K&&!y&&!$&&E().onError?.(w,r),{error:w,success:!1}}let A,j=a.headers.get("content-type");return j?.includes("application/json")?A=await a.json():j?.includes("text/")?A=await a.text():A=await a.blob(),{data:A,success:!0}}catch(m){p&&(clearTimeout(p),p=null);let _=au(m);_&&(g=!0);let x;if(_){if(!f)return{error:new R("Request aborted",{name:"AbortError",code:"ABORTED"}),success:!1};let I=t.replace(ne(),"")||t;x=new R(`Request timed out after ${Math.round(s/1e3)}s: ${I}`,{code:"TIMEOUT",url:t,endpoint:I,timeout:s})}else m instanceof Error?(x=new R(m.message,{name:m.name||"ApiError",stack:m.stack}),n&&E().onError?.(x,r)):(x=new R(String(m)),n&&E().onError?.(x,r));return{error:x,success:!1}}}var Hg={async execute(t,e){try{let{data:n,error:r}=await t();if(r){let s=new R(r.message||"Database error",{code:r.code,details:r});return E().onError?.(s,e),{error:s,success:!1}}return{data:n,success:!0}}catch(n){let r=n instanceof Error?new R(n.message,{name:n.name||"ApiError",stack:n.stack}):new R(String(n));return E().onError?.(r,e),{error:r,success:!1}}}};async function Wg(t,e,n={}){let{timeout:r=3e4,fetch:s=fetch}=n,c=await ee(),u={Accept:"text/event-stream","Content-Type":"application/json"},p=wt(E().clientSource);p&&(u["X-Kortix-Client"]=p),Mt&&(u["x-kortix-admin-bypass"]="1"),Object.assign(u,Dt(t)),c&&(u.Authorization=`Bearer ${c}`);let g=new AbortController,f=setTimeout(()=>g.abort(),r);try{return await s(`${ne()}${t}`,{method:"POST",headers:u,body:JSON.stringify(e),signal:g.signal,credentials:"omit"})}finally{clearTimeout(f)}}var i={get:(t,e)=>ke(`${ne()}${t}`,{...e,method:"GET"}),post:(t,e,n)=>ke(`${ne()}${t}`,{...n,method:"POST",body:e?JSON.stringify(e):void 0}),put:(t,e,n)=>ke(`${ne()}${t}`,{...n,method:"PUT",body:e?JSON.stringify(e):void 0}),patch:(t,e,n)=>ke(`${ne()}${t}`,{...n,method:"PATCH",body:e?JSON.stringify(e):void 0}),delete:(t,e)=>ke(`${ne()}${t}`,{...e,method:"DELETE"}),upload:(t,e,n)=>{let{headers:r,...s}=n||{},c={...r};return delete c["Content-Type"],ke(`${ne()}${t}`,{...s,method:"POST",body:e,headers:c})},uploadPut:(t,e,n)=>{let{headers:r,...s}=n||{},c={...r};return delete c["Content-Type"],ke(`${ne()}${t}`,{...s,method:"PUT",body:e,headers:c})},postStream:Wg};function o(t,e="Project request failed"){if(!t.success||t.data===void 0)throw t.error??new Error(e);return t.data}function ps(t){return t.replace(/\/v1\/?$/,"")}async function De(t,e){if(!t.backendUrl||!t.accessToken)return null;let n=ps(t.backendUrl);try{let r=await fetch(`${n}${e}`,{headers:{Authorization:`Bearer ${t.accessToken}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(t.timeoutMs??8e3)});return r.ok?await r.json():null}catch{return null}}async function ds(){return o(await i.get("/accounts"))}async function gs(t){return o(await i.post("/accounts",t))}async function ms(t){return o(await i.get(`/accounts/${t}`))}async function fs(t,e){return o(await i.patch(`/accounts/${t}`,{name:e}))}async function ys(t){return o(await i.get(`/accounts/${t}/members`))}async function hs(t,e){return o(await i.post(`/accounts/${t}/members`,e,{showErrors:!1}))}async function bs(t){return o(await i.get(`/accounts/${t}/invites`))}async function xs(t,e){return o(await i.delete(`/accounts/${t}/invites/${e}`))}async function _s(t,e){return o(await i.post(`/accounts/${t}/invites/${e}/resend`,{}))}async function Ps(t){return o(await i.get(`/account-invites/${t}`,{showErrors:!1}))}async function ks(t){return o(await i.post(`/account-invites/${t}/accept`,{}))}async function ws(t){return o(await i.post(`/account-invites/${t}/decline`,{}))}async function Ss(t,e){return o(await i.delete(`/accounts/${t}/members/${e}`))}async function vs(t,e,n){return o(await i.patch(`/accounts/${t}/members/${e}`,{role:n}))}async function Cs(t){return o(await i.post(`/accounts/${t}/leave`,{}))}async function zg(t){return De(t,"/v1/accounts")}async function Rs(){let t=await i.get("/accounts/me",{showErrors:!1});return!t.success||!t.data?{valid:!1,error:t.error}:{valid:!0,identity:t.data}}var Vg=["agent_tunnel","marketplace","connectors_api_discover","agentmail_email","teams","voice","llm_gateway","review_center","meta_agent","apps"];async function we(){return o(await i.get("/projects"))}async function Ts(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return o(await i.get(`/projects${e}`))}async function Ut(t,e){return o(await i.get(`/projects/${t}`,e))}async function As(t,e,n="write"){return o(await i.post(`/projects/${t}/git/collaborators`,{github_username:e,permission:n}))}async function Is(t,e){return o(await i.post(`/projects/${t}/manifest/validate`,{raw:e}),"Failed to validate manifest")}async function js(t){return o(await i.post(`/projects/${t}/git-token`,{}),"Failed to mint git token")}function Jg(t){let e=t.metadata?.git;return e?.provider==="github"&&e?.managed===!0}async function Ot(t,e){let n=o(await i.get(`/projects/${t}/detail`,{showErrors:!1,...e}));return{...n,config:{...n.config,default_agent:n.config.default_agent??n.config.open_code_default_agent??null}}}async function Ft(t,e){return o(await i.get(`/projects/${t}/llm-catalog`,{showErrors:!1,...e}))}async function Lt(t,e){return o(await i.get(`/projects/${t}/model-picker`,{showErrors:!1,...e}))}async function Xg(t,e){return o(await i.get(`/projects/${t}/llm-catalog/providers`,{showErrors:!1,...e}))}async function Es(t){return o(await i.post("/projects",t))}async function $s(t){return o(await i.post("/projects/create-repo",t))}async function qs(t,e={}){return o(await i.post("/projects/provision",{seed_starter:!0,...t},{timeout:12e4,...e}))}var du=200;function Qg(t){let e=t.split(`
8
8
  `).filter(r=>r.startsWith("data:")).map(r=>r.slice(5).replace(/^ /,""));if(e.length===0)return null;let n=e.join(`
9
- `);try{return JSON.parse(n)}catch(r){let s=n.length>eu?`${n.slice(0,eu)}\u2026`:n;throw new Error(`provisionProjectStream: received an unparseable SSE frame (${s})`,{cause:r})}}async function Mg(t,e,n={}){let r=await i.postStream("/projects/provision-stream",{seed_starter:!0,...t},n);if(!r.ok){let g=await r.json().catch(()=>null);throw new R(g?.error||`Provision failed: HTTP ${r.status}`,{status:r.status,code:g?.code})}let s=r.body?.getReader();if(!s)throw new Error("Provision stream is unavailable on this runtime (no response body)");let c=new TextDecoder,u="",p=null;try{for(;;){let{done:g,value:f}=await s.read();if(g)break;u+=c.decode(f,{stream:!0});let m=u.indexOf(`
9
+ `);try{return JSON.parse(n)}catch(r){let s=n.length>du?`${n.slice(0,du)}\u2026`:n;throw new Error(`provisionProjectStream: received an unparseable SSE frame (${s})`,{cause:r})}}async function Yg(t,e,n={}){let r=await i.postStream("/projects/provision-stream",{seed_starter:!0,...t},n);if(!r.ok){let g=await r.json().catch(()=>null);throw new R(g?.error||`Provision failed: HTTP ${r.status}`,{status:r.status,code:g?.code})}let s=r.body?.getReader();if(!s)throw new Error("Provision stream is unavailable on this runtime (no response body)");let c=new TextDecoder,u="",p=null;try{for(;;){let{done:g,value:f}=await s.read();if(g)break;u+=c.decode(f,{stream:!0});let m=u.indexOf(`
10
10
 
11
11
  `);for(;m!==-1;){let _=u.slice(0,m);u=u.slice(m+2),m=u.indexOf(`
12
12
 
13
- `);let x=Dg(_);if(x){if(e(x),x.type==="error")throw new R(x.error,{status:x.status,code:x.code});x.type==="done"&&(p=x.project)}}}}finally{s.cancel().catch(()=>{})}if(!p)throw new Error("Provision stream ended without a result");return p}async function Ug(){try{return o(await i.get("/projects/managed-git/status",{showErrors:!1}))}catch{return{configured:!1,provider:"github"}}}async function Ot(t,e){return o(await i.patch(`/projects/${t}`,e))}async function Rs(t,e,n){return o(await i.patch(`/projects/${t}/features`,{feature:e,enabled:n}))}async function Ts(t,e,n){return o(await i.patch(`/projects/${t}/experimental`,{feature:e,enabled:n}))}async function As(t,e){return o(await i.patch(`/projects/${t}/sandbox-provider`,{provider:e}))}async function Og(t,e){return o(await i.get(`/projects/${t}/sandbox-provider/transition`,{showErrors:!1,...e}))}async function Fg(t,e){return o(await i.patch(`/projects/${t}/warm-pool`,e))}async function Is(t,e){return o(await i.patch(`/projects/${t}/onboarding`,{completed:e}))}async function Lg(t,e){return o(await i.patch(`/projects/${t}/onboarding`,{profile:e}))}async function Ft(t){return o(await i.delete(`/projects/${t}`))}async function Gg(t,e){return qe(t,`/v1/projects?account_id=${encodeURIComponent(e)}`)}async function Bg(t,e){if(!t.backendUrl||!t.accessToken)return{ok:!1,limitReached:!1};let n=rs(t.backendUrl);try{let r=await fetch(`${n}/v1/projects/provision`,{method:"POST",headers:{Authorization:`Bearer ${t.accessToken}`,"Content-Type":"application/json"},body:JSON.stringify({seed_starter:!0,...e}),signal:AbortSignal.timeout(t.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 js(t){return o(await i.post("/projects/link-repository",t,{showErrors:!1}))}async function Es(t){return o(await i.get(`/projects/github/installation?account_id=${encodeURIComponent(t)}`,{showErrors:!1}))}async function $s(t){return o(await i.get(`/projects/github/installations?account_id=${encodeURIComponent(t)}`,{showErrors:!1}))}async function qs(t){return o(await i.post("/projects/github/installations/linkable",t,{showErrors:!1}))}async function Ds(t,e,n){let r=new URLSearchParams({account_id:t});e&&r.set("installation_id",e);let s=n?.search?.trim();return s&&r.set("search",s),n?.limit!==void 0&&r.set("limit",String(n.limit)),o(await i.get(`/projects/github/repositories?${r.toString()}`,{showErrors:!1}))}async function Ms(t,e,n){let r=new URLSearchParams({account_id:t,installation_id:e,repo_full_name:n});return o(await i.get(`/projects/github/repository-branches?${r.toString()}`,{showErrors:!1}))}async function Us(t){return o(await i.post("/projects/github/installation",t,{showErrors:!1}))}async function Os(t){return o(await i.post("/projects/github/installations/link",t,{showErrors:!1}))}async function Fs(t,e){let n=new URLSearchParams({account_id:t});return e&&n.set("installation_id",e),o(await i.delete(`/projects/github/installation?${n.toString()}`))}async function Kg(t,e){return o(await i.post(`/projects/${t}/access-requests`,{message:e?.trim()||void 0},{showErrors:!1}))}async function Ls(t,e){return o(await i.get(`/projects/${t}/access-requests`,e))}async function Gs(t,e,n="member"){return o(await i.post(`/projects/${t}/access-requests/${e}/approve`,{role:n}))}async function Bs(t,e){return o(await i.post(`/projects/${t}/access-requests/${e}/reject`,{}))}async function Ks(t){return o(await i.get(`/projects/${t}/access`))}async function Hs(t,e,n){return o(await i.put(`/projects/${t}/access/${e}`,{role:n}))}async function Ns(t,e){return o(await i.delete(`/projects/${t}/access/${e}`))}function Hg(t){return"status"in t&&t.status==="invited"}async function Ws(t,e,n,r){return o(await i.post(`/projects/${t}/access/invite`,{email:e,role:n,...r!==void 0?{expires_at:r}:{}}))}async function zs(t){return o(await i.get(`/projects/${t}/access/pending-invites`))}async function Vs(t,e){return o(await i.delete(`/projects/${t}/access/pending-invites/${e}`))}async function Js(t,e){return o(await i.post(`/projects/${t}/access/pending-invites/${e}/resend`))}async function Xs(t){return o(await i.get(`/projects/${t}/group-grants`))}async function Qs(t,e,n,r){return o(await i.post(`/projects/${t}/group-grants`,r===void 0?{group_id:e,role:n}:{group_id:e,role:n,expires_at:r}))}async function Ys(t,e,n,r){return o(await i.patch(`/projects/${t}/group-grants/${e}`,r===void 0?{role:n}:{role:n,expires_at:r}))}async function Zs(t,e){return o(await i.delete(`/projects/${t}/group-grants/${e}`))}async function ei(t){return o(await i.get(`/projects/${t}/resource-grants`))}async function ti(t,e){return o(await i.post(`/projects/${t}/resource-grants`,{resource_type:e.resourceType,resource_id:e.resourceId,principal_type:e.principalType,principal_id:e.principalId,...e.expiresAt!==void 0?{expires_at:e.expiresAt}:{}}))}async function ni(t,e){return o(await i.delete(`/projects/${t}/resource-grants/${e}`))}async function ri(t,e){return o(await i.get(`/projects/${t}/approvals`,{showErrors:e?.showErrors}))}async function si(t,e){return o(await i.get(`/projects/${t}/approvals/needs-input`,{showErrors:e?.showErrors}))}async function ii(t,e,n){return o(await i.post(`/projects/${t}/approvals/${e}`,{decision:n}))}async function oi(t){return o(await i.get(`/projects/${t}/secrets`,{showErrors:!1}))}async function ai(t,e){return o(await i.post(`/projects/${t}/secrets`,e))}async function ci(t,e,n,r={}){return o(await i.put(`/projects/${t}/secrets/${encodeURIComponent(e)}/strategy`,{strategy:n,...r}))}async function li(t,e,n){return o(await i.post(`/projects/${t}/secrets/${encodeURIComponent(e)}/broker`,n))}async function ui(t,e,n){return o(await i.post(`/projects/${t}/oauth/${e}/start`,{sharing:n?.sharing}))}async function pi(t,e,n){return o(await i.post(`/projects/${t}/oauth/${e}/poll`,{flow_id:n}))}async function di(t,e){return o(await i.delete(`/projects/${t}/oauth/${encodeURIComponent(e)}`))}async function gi(t,e){return o(await i.put(`/projects/${t}/git-credential`,e))}async function mi(t,e){return o(await i.delete(`/projects/${t}/secrets/${encodeURIComponent(e)}`))}async function fi(t,e,n){return o(await i.put(`/projects/${t}/secrets/${encodeURIComponent(e)}/personal`,n))}async function yi(t,e){return o(await i.delete(`/projects/${t}/secrets/${encodeURIComponent(e)}/personal`))}function hi(t,e){return t?`/connectors/projects/${encodeURIComponent(t)}/${e}`:`/connectors/${e}`}async function Lt(t){return o(await i.get(hi(t,"catalog"))).connectors??[]}async function tt(t){let e=[];for(let n of await Lt(t))for(let r of n.actions)e.push({tool:`${n.slug}.${r.path}`,connector:n.slug,action:r.path,risk:r.risk,description:r.description||r.name,inputSchema:r.inputSchema});return e}async function bi(t,e="",n={}){let r=e.trim().toLowerCase(),s=r.split(/\s+/).filter(Boolean),c=[],u=[];for(let p of await tt(t)){let g=`${p.tool} ${p.description}`.toLowerCase();!r||g.includes(r)?c.push(p):s.every(f=>g.includes(f))&&u.push(p)}return[...c,...u].slice(0,n.limit??20)}async function xi(t,e){return(await tt(t)).find(n=>n.tool===e)??null}function Ng(t){let e=t.indexOf("."),n=e<0?"":t.slice(0,e).trim(),r=e<0?"":t.slice(e+1).trim();if(!n||!r)throw new Error("tool must use the connector.action format");return{connector:n,action:r}}async function _i(t,e,n={}){let{connector:r,action:s}=Ng(e);return o(await i.post(hi(t,"call"),{connector:r,action:s,args:n}))}function Wg(t,e){if(t&&typeof t=="object"){let n=t;for(let r of["reason","error","message","detail"])if(typeof n[r]=="string"&&n[r])return n[r]}return`HTTP ${e}`}function zg(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e-=1;return e===t.length?t:t.slice(0,e)}async function Pi(t,e,n){let r=n.filename.trim(),s=n.contentType.trim();if(!r)throw new Error("filename is required");if(!s)throw new Error("contentType is required");let c={"Content-Type":s,"X-Kortix-Attachment-Filename":encodeURIComponent(r),"X-Kortix-Attachment-Disposition":n.contentDisposition??"attachment"};n.contentId?.trim()&&(c["X-Kortix-Attachment-Content-Id"]=encodeURIComponent(n.contentId.trim()));let u=zg(E().backendUrl),p=hi(t,"attachments"),g=await q(`${u}${p}`,{method:"POST",headers:c,body:e},{timeoutMs:6e4}),f=await g.text(),m=null;if(f)try{m=JSON.parse(f)}catch{m=f}if(!g.ok)throw new R(Wg(m,g.status),{status:g.status,code:String(m&&typeof m=="object"?m.code??g.status:g.status),details:m,response:g,endpoint:p});return m}async function ki(t){return o(await i.get(`/projects/${t}/connections`))}async function wi(t){return o(await i.get(`/projects/${t}/connections/all`))}async function Si(t,e){return o(await i.post(`/projects/${t}/connections`,e))}async function vi(t,e){return o(await i.post(`/projects/${t}/connections/me`,e))}async function Ci(t,e,n){return o(await i.put(`/projects/${t}/connections/${e}/credential`,n))}function we(t,e,n){return`/projects/${t}/connections/${e}/oauth2/${n}`}async function Vg(t,e){return o(await i.post(`/projects/${t}/connectors/${encodeURIComponent(e)}/oauth2/connection`,{}))}async function Jg(t,e,n){return o(await i.put(we(t,e,"application"),n))}async function Xg(t,e){return o(await i.get(we(t,e,"application")))}async function Qg(t,e,n){return o(await i.post(we(t,e,"discover"),n))}async function Yg(t,e,n){return o(await i.post(we(t,e,"authorize"),n))}async function Zg(t,e,n){return o(await i.post(we(t,e,"device"),n))}async function em(t,e,n){return o(await i.post(we(t,e,`device/${encodeURIComponent(n)}`),{}))}async function tm(t,e){return o(await i.get(we(t,e,"status")))}async function Ri(t,e){return o(await i.put(`/projects/${t}/connections/${e}/revoke`,{}))}async function Ti(t,e){return o(await i.put(`/projects/${t}/connections/${e}/activate`,{}))}async function Ai(t,e){return o(await i.put(`/projects/${t}/connections/${e}/default`,{}))}async function Ii(t,e,n={}){return o(await i.post(`/projects/${t}/connections/${e}/connect`,n))}async function ji(t,e){return o(await i.post(`/projects/${t}/connections/${e}/connect/finalize`,{}))}async function Ei(t){return o(await i.get(`/connectors/projects/${t}/connectors`,{showErrors:!1}))}async function $i(t){return o(await i.post(`/connectors/projects/${t}/connectors/sync`,{}))}async function qi(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/credential-mode`,{mode:n}))}async function Di(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/authorization-strategy`,{authorization_strategy:n}))}async function Mi(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/sensitive`,{sensitive:n}))}async function Ui(t,e){return o(await i.get(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/policies`))}async function Oi(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/policies`,{policies:n}))}async function nm(t,e){throw new Error("Connection-specific policies were removed. Use getConnectorPolicies(projectId, slug).")}async function rm(t,e,n){throw new Error("Connection-specific policies were removed. Use setConnectorPolicies(projectId, slug, policies).")}async function Fi(t,e){return o(await i.get(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/config`))}async function Li(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/name`,{name:n}))}async function Gi(t,e){return o(await i.post(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/connect`,{}))}async function Bi(t,e){return o(await i.post(`/connectors/projects/${t}/connectors`,e))}async function Ki(t,e){return o(await i.post(`/connectors/projects/${t}/connectors/auth-discovery`,e))}async function Hi(t,e){return o(await i.delete(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}`))}async function Ni(t,e,n){let r=typeof e=="string"||e===void 0?{...e?{q:e}:{},...n?{cursor:n}:{}}:e,s=new URLSearchParams;r.q&&s.set("q",r.q),r.category&&s.set("category",r.category),r.cursor&&s.set("cursor",r.cursor),r.limit&&s.set("limit",String(r.limit));let c=s.toString();return o(await i.get(`/connectors/projects/${t}/pipedream/apps${c?`?${c}`:""}`))}async function Wi(t,e){let n=new URLSearchParams;e?.perCategory&&n.set("perCategory",String(e.perCategory)),e?.maxCategories&&n.set("maxCategories",String(e.maxCategories));let r=n.toString();return o(await i.get(`/connectors/projects/${t}/pipedream/sections${r?`?${r}`:""}`))}async function Gt(t,e,n){let r=new URLSearchParams;e&&r.set("q",e),n&&r.set("cursor",n);let s=r.toString();return o(await i.get(`/connectors/projects/${t}/discover/connectors${s?`?${s}`:""}`))}async function Bt(t,e){let n=new URLSearchParams({id:e});return o(await i.get(`/connectors/projects/${t}/discover/connectors/detail?${n.toString()}`))}var sm=Gt,im=Bt;async function zi(){return o(await i.get("/connectors/connect-status"))}async function Vi(t,e,n){let r=typeof n=="string"?{value:n}:n;return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/credential`,r))}async function om(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/secret-binding`,{secret_identifier:n}))}async function Ji(t,e){return o(await i.post(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/connect/finalize`,{}))}async function Xi(t){return o(await i.get(`/connectors/projects/${t}/policies`))}async function Qi(t,e,n){return o(await i.put(`/connectors/projects/${t}/policies`,{policies:e,defaultMode:n}))}async function Yi(t){return o(await i.get(`/projects/${t}/sandboxes`))}async function Zi(t){return o(await i.get(`/projects/${t}/snapshots`))}async function Kt(t){return o(await i.get(`/projects/${t}/sandbox-health`,{showErrors:!1,timeout:15e3}))}async function eo(t,e){return o(await i.post(`/projects/${t}/snapshots/rebuild`,e?{slug:e}:{}))}async function to(t){return o(await i.post(`/projects/${t}/snapshots/fix-with-agent`,{}))}async function no(t,e){return o(await i.post(`/projects/${t}/sandbox-templates`,e))}async function ro(t,e,n){return o(await i.patch(`/projects/${t}/sandbox-templates/${e}`,n))}async function so(t,e){return o(await i.delete(`/projects/${t}/sandbox-templates/${e}`))}async function io(t,e){return o(await i.post(`/projects/${t}/sandbox-templates/${e}/build`,{}))}async function oo(t){return o(await i.get(`/projects/${t}/sandboxes`))}async function ao(t,e){let n=new URLSearchParams;e?.ref&&n.set("ref",e.ref),e?.path&&n.set("path",e.path);let r=n.toString()?`?${n.toString()}`:"";return o(await i.get(`/projects/${t}/files${r}`,{showErrors:!1}))}async function co(t,e,n){let r=new URLSearchParams({q:e});return n?.content&&r.set("content","1"),n?.ref&&r.set("ref",n.ref),n?.limit&&r.set("limit",String(n.limit)),o(await i.get(`/projects/${t}/files/search?${r.toString()}`))}async function lo(t,e,n){let r=new URLSearchParams({path:e});return n&&r.set("ref",n),o(await i.get(`/projects/${t}/files/content?${r.toString()}`,{showErrors:!1}))}async function uo(t,e,n){let r=new URLSearchParams;e&&r.set("ref",e),n&&r.set("path",n);let s=r.toString()?`?${r.toString()}`:"",c=await ee(),u=`${E().backendUrl||""}/projects/${t}/files/archive${s}`,p=await fetch(u,{method:"GET",headers:c?{Authorization:`Bearer ${c}`}:{}});if(!p.ok){let g=await p.text().catch(()=>"");throw new Error(g||`Failed to download (HTTP ${p.status})`)}return await p.blob()}async function po(t){return o(await i.get(`/projects/${t}/branches`))}async function go(t,e){let n=new URLSearchParams;e?.ref&&n.set("ref",e.ref),e?.path&&n.set("path",e.path),e?.limit!=null&&n.set("limit",String(e.limit)),e?.skip!=null&&n.set("skip",String(e.skip));let r=n.toString()?`?${n.toString()}`:"";return o(await i.get(`/projects/${t}/commits${r}`))}async function mo(t,e){return o(await i.get(`/projects/${t}/commits/${encodeURIComponent(e)}`))}async function fo(t,e,n){let r=new URLSearchParams;n?.path&&r.set("path",n.path);let s=r.toString()?`?${r.toString()}`:"";return o(await i.get(`/projects/${t}/commits/${encodeURIComponent(e)}/diff${s}`))}async function yo(t,e,n){let r=new URLSearchParams({path:e});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)),o(await i.get(`/projects/${t}/files/history?${r.toString()}`))}async function ho(t,e){let n=new URLSearchParams({from:e.from,into:e.into});return o(await i.get(`/projects/${t}/version-diff?${n.toString()}`))}async function bo(t,e){let n=e?`?status=${e}`:"";return o(await i.get(`/projects/${t}/change-requests${n}`,{showErrors:!1,timeout:15e3}))}async function xo(t,e){return o(await i.get(`/projects/${t}/change-requests/${e}`))}async function _o(t,e){return o(await i.get(`/projects/${t}/change-requests/${e}/diff`))}async function Po(t,e){return o(await i.get(`/projects/${t}/change-requests/${e}/merge-preview`))}async function ko(t,e){return o(await i.post(`/projects/${t}/change-requests`,e))}async function wo(t,e,n){return o(await i.post(`/projects/${t}/change-requests/${e}/merge`,n??{},{showErrors:!1}))}async function So(t,e){return o(await i.post(`/projects/${t}/change-requests/${e}/close`,{}))}async function vo(t,e){return o(await i.post(`/projects/${t}/change-requests/${e}/reopen`,{}))}async function Co(t,e,n){return o(await i.post(`/projects/${t}/change-requests/${e}/request-changes`,{feedback:n}))}async function Ro(t,e,n){return o(await i.post(`/projects/${t}/sessions/${e}/commit-push`,n??{}))}var To=new Set;function nt(t){t&&To.add(t)}function Ao(t){return!!t&&To.has(t)}function am(t){t&&To.delete(t)}async function De(t,e){let n=new URLSearchParams;e?.scope&&e.scope!=="visible"&&n.set("scope",e.scope);let r=n.size>0?`?${n}`:"";return o(await i.get(`/projects/${t}/sessions${r}`))}async function Io(t,e,n){return o(await i.put(`/projects/${t}/sessions/${e}/sharing`,n))}async function jo(t,e){return o(await i.get(`/projects/${t}/sessions/${e}/previews`))}async function Eo(t,e){return o(await i.get(`/projects/${t}/sessions/${e}/public-shares`,{showErrors:!1}))}async function $o(t,e,n){return o(await i.post(`/projects/${t}/sessions/${e}/public-shares`,n))}async function qo(t,e,n){return o(await i.delete(`/projects/${t}/sessions/${e}/public-shares/${n}`))}async function Me(t,e){let n=o(await i.post(`/projects/${t}/sessions`,e??{}));return e?.initial_prompt||nt(n?.session_id),n}async function Do(t){let e=o(await i.post(`/projects/${t}/sessions/warm`,{}));return nt(e.session.session_id),e}async function Mo(t,e){let n=o(await i.post(`/projects/${t}/sessions/warm/claim`,e,{showErrors:!1}));return nt(n.session_id),n}async function Ht(t,e,n){return o(await i.get(`/projects/${t}/sessions/${e}`,{showErrors:n?.showErrors}))}async function Uo(t,e,n,r){let s=new URLSearchParams;n&&s.set("limit",String(n)),r?.cursor&&s.set("cursor",r.cursor),r?.includeEvents!=null&&s.set("include_events",String(r.includeEvents));let c=s.toString();return o(await i.get(`/projects/${t}/sessions/${e}/audit${c?`?${c}`:""}`,{showErrors:r?.showErrors}))}async function Oo(t,e,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 o(await i.get(`/projects/${t}/sessions/${e}/transcript${s?`?${s}`:""}`))}async function Fo(t,e,n){let r=new URLSearchParams;n?.cursor!=null&&r.set("cursor",String(n.cursor)),n?.limit!=null&&r.set("limit",String(n.limit));let s=r.toString();return o(await i.get(`/projects/${t}/sessions/${e}/voice-transcript${s?`?${s}`:""}`,{showErrors:n?.showErrors}))}async function Lo(t,e,n){return o(await i.patch(`/projects/${t}/sessions/${e}`,n))}async function Go(t,e){return o(await i.delete(`/projects/${t}/sessions/${e}`))}async function rt(t,e){return o(await i.post(`/projects/${t}/sessions/${e}/restart`,{}))}async function st(t,e){return o(await i.post(`/projects/${t}/sessions/${e}/stop`,{}))}async function Bo(t,e){return o(await i.get(`/projects/${t}/sessions/${encodeURIComponent(e)}/config`,{showErrors:!1}))}function cm(t){let e=t.split(`
13
+ `);let x=Qg(_);if(x){if(e(x),x.type==="error")throw new R(x.error,{status:x.status,code:x.code});x.type==="done"&&(p=x.project)}}}}finally{s.cancel().catch(()=>{})}if(!p)throw new Error("Provision stream ended without a result");return p}async function Zg(){try{return o(await i.get("/projects/managed-git/status",{showErrors:!1}))}catch{return{configured:!1,provider:"github"}}}async function Gt(t,e){return o(await i.patch(`/projects/${t}`,e))}async function Ds(t,e,n){return o(await i.patch(`/projects/${t}/features`,{feature:e,enabled:n}))}async function Ms(t,e,n){return o(await i.patch(`/projects/${t}/experimental`,{feature:e,enabled:n}))}async function Us(t,e){return o(await i.patch(`/projects/${t}/sandbox-provider`,{provider:e}))}async function em(t,e){return o(await i.get(`/projects/${t}/sandbox-provider/transition`,{showErrors:!1,...e}))}async function tm(t,e){return o(await i.patch(`/projects/${t}/warm-pool`,e))}async function Os(t,e){return o(await i.patch(`/projects/${t}/onboarding`,{completed:e}))}async function nm(t,e){return o(await i.patch(`/projects/${t}/onboarding`,{profile:e}))}async function Bt(t){return o(await i.delete(`/projects/${t}`))}async function rm(t,e){return De(t,`/v1/projects?account_id=${encodeURIComponent(e)}`)}async function sm(t,e){if(!t.backendUrl||!t.accessToken)return{ok:!1,limitReached:!1};let n=ps(t.backendUrl);try{let r=await fetch(`${n}/v1/projects/provision`,{method:"POST",headers:{Authorization:`Bearer ${t.accessToken}`,"Content-Type":"application/json"},body:JSON.stringify({seed_starter:!0,...e}),signal:AbortSignal.timeout(t.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 Fs(t){return o(await i.post("/projects/link-repository",t,{showErrors:!1}))}async function Ls(t){return o(await i.get(`/projects/github/installation?account_id=${encodeURIComponent(t)}`,{showErrors:!1}))}async function Gs(t){return o(await i.get(`/projects/github/installations?account_id=${encodeURIComponent(t)}`,{showErrors:!1}))}async function Bs(t){return o(await i.post("/projects/github/installations/linkable",t,{showErrors:!1}))}async function Ks(t,e,n){let r=new URLSearchParams({account_id:t});e&&r.set("installation_id",e);let s=n?.search?.trim();return s&&r.set("search",s),n?.limit!==void 0&&r.set("limit",String(n.limit)),o(await i.get(`/projects/github/repositories?${r.toString()}`,{showErrors:!1}))}async function Ns(t,e,n){let r=new URLSearchParams({account_id:t,installation_id:e,repo_full_name:n});return o(await i.get(`/projects/github/repository-branches?${r.toString()}`,{showErrors:!1}))}async function Hs(t){return o(await i.post("/projects/github/installation",t,{showErrors:!1}))}async function Ws(t){return o(await i.post("/projects/github/installations/link",t,{showErrors:!1}))}async function zs(t,e){let n=new URLSearchParams({account_id:t});return e&&n.set("installation_id",e),o(await i.delete(`/projects/github/installation?${n.toString()}`))}async function im(t,e){return o(await i.post(`/projects/${t}/access-requests`,{message:e?.trim()||void 0},{showErrors:!1}))}async function Vs(t,e){return o(await i.get(`/projects/${t}/access-requests`,e))}async function Js(t,e,n="member"){return o(await i.post(`/projects/${t}/access-requests/${e}/approve`,{role:n}))}async function Xs(t,e){return o(await i.post(`/projects/${t}/access-requests/${e}/reject`,{}))}async function Qs(t){return o(await i.get(`/projects/${t}/access`))}async function Ys(t,e,n){return o(await i.put(`/projects/${t}/access/${e}`,{role:n}))}async function Zs(t,e){return o(await i.delete(`/projects/${t}/access/${e}`))}function om(t){return"status"in t&&t.status==="invited"}async function ei(t,e,n,r){return o(await i.post(`/projects/${t}/access/invite`,{email:e,role:n,...r!==void 0?{expires_at:r}:{}}))}async function ti(t){return o(await i.get(`/projects/${t}/access/pending-invites`))}async function ni(t,e){return o(await i.delete(`/projects/${t}/access/pending-invites/${e}`))}async function ri(t,e){return o(await i.post(`/projects/${t}/access/pending-invites/${e}/resend`))}async function si(t){return o(await i.get(`/projects/${t}/group-grants`))}async function ii(t,e,n,r){return o(await i.post(`/projects/${t}/group-grants`,r===void 0?{group_id:e,role:n}:{group_id:e,role:n,expires_at:r}))}async function oi(t,e,n,r){return o(await i.patch(`/projects/${t}/group-grants/${e}`,r===void 0?{role:n}:{role:n,expires_at:r}))}async function ai(t,e){return o(await i.delete(`/projects/${t}/group-grants/${e}`))}async function ci(t){return o(await i.get(`/projects/${t}/resource-grants`))}async function li(t,e){return o(await i.post(`/projects/${t}/resource-grants`,{resource_type:e.resourceType,resource_id:e.resourceId,principal_type:e.principalType,principal_id:e.principalId,...e.expiresAt!==void 0?{expires_at:e.expiresAt}:{}}))}async function ui(t,e){return o(await i.delete(`/projects/${t}/resource-grants/${e}`))}async function pi(t,e){return o(await i.get(`/projects/${t}/approvals`,{showErrors:e?.showErrors}))}async function di(t,e){return o(await i.get(`/projects/${t}/approvals/needs-input`,{showErrors:e?.showErrors}))}async function gi(t,e,n){return o(await i.post(`/projects/${t}/approvals/${e}`,{decision:n}))}async function mi(t){return o(await i.get(`/projects/${t}/secrets`,{showErrors:!1}))}async function fi(t,e){return o(await i.post(`/projects/${t}/secrets`,e))}async function yi(t,e,n,r={}){return o(await i.put(`/projects/${t}/secrets/${encodeURIComponent(e)}/strategy`,{strategy:n,...r}))}async function hi(t,e,n){return o(await i.post(`/projects/${t}/secrets/${encodeURIComponent(e)}/broker`,n))}async function bi(t,e,n){return o(await i.post(`/projects/${t}/oauth/${e}/start`,{sharing:n?.sharing}))}async function xi(t,e,n){return o(await i.post(`/projects/${t}/oauth/${e}/poll`,{flow_id:n}))}async function _i(t,e){return o(await i.delete(`/projects/${t}/oauth/${encodeURIComponent(e)}`))}async function Pi(t,e){return o(await i.put(`/projects/${t}/git-credential`,e))}async function ki(t,e){return o(await i.delete(`/projects/${t}/secrets/${encodeURIComponent(e)}`))}async function wi(t,e,n){return o(await i.put(`/projects/${t}/secrets/${encodeURIComponent(e)}/personal`,n))}async function Si(t,e){return o(await i.delete(`/projects/${t}/secrets/${encodeURIComponent(e)}/personal`))}function vi(t,e){return t?`/connectors/projects/${encodeURIComponent(t)}/${e}`:`/connectors/${e}`}async function Kt(t){return o(await i.get(vi(t,"catalog"))).connectors??[]}async function nt(t){let e=[];for(let n of await Kt(t))for(let r of n.actions)e.push({tool:`${n.slug}.${r.path}`,connector:n.slug,action:r.path,risk:r.risk,description:r.description||r.name,inputSchema:r.inputSchema});return e}async function Ci(t,e="",n={}){let r=e.trim().toLowerCase(),s=r.split(/\s+/).filter(Boolean),c=[],u=[];for(let p of await nt(t)){let g=`${p.tool} ${p.description}`.toLowerCase();!r||g.includes(r)?c.push(p):s.every(f=>g.includes(f))&&u.push(p)}return[...c,...u].slice(0,n.limit??20)}async function Ri(t,e){return(await nt(t)).find(n=>n.tool===e)??null}function am(t){let e=t.indexOf("."),n=e<0?"":t.slice(0,e).trim(),r=e<0?"":t.slice(e+1).trim();if(!n||!r)throw new Error("tool must use the connector.action format");return{connector:n,action:r}}async function Ti(t,e,n={}){let{connector:r,action:s}=am(e);return o(await i.post(vi(t,"call"),{connector:r,action:s,args:n}))}function cm(t,e){if(t&&typeof t=="object"){let n=t;for(let r of["reason","error","message","detail"])if(typeof n[r]=="string"&&n[r])return n[r]}return`HTTP ${e}`}function lm(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e-=1;return e===t.length?t:t.slice(0,e)}async function Ai(t,e,n){let r=n.filename.trim(),s=n.contentType.trim();if(!r)throw new Error("filename is required");if(!s)throw new Error("contentType is required");let c={"Content-Type":s,"X-Kortix-Attachment-Filename":encodeURIComponent(r),"X-Kortix-Attachment-Disposition":n.contentDisposition??"attachment"};n.contentId?.trim()&&(c["X-Kortix-Attachment-Content-Id"]=encodeURIComponent(n.contentId.trim()));let u=lm(E().backendUrl),p=vi(t,"attachments"),g=await q(`${u}${p}`,{method:"POST",headers:c,body:e},{timeoutMs:6e4}),f=await g.text(),m=null;if(f)try{m=JSON.parse(f)}catch{m=f}if(!g.ok)throw new R(cm(m,g.status),{status:g.status,code:String(m&&typeof m=="object"?m.code??g.status:g.status),details:m,response:g,endpoint:p});return m}async function Ii(t){return o(await i.get(`/projects/${t}/connections`))}async function ji(t){return o(await i.get(`/projects/${t}/connections/all`))}async function Ei(t,e){return o(await i.post(`/projects/${t}/connections`,e))}async function $i(t,e){return o(await i.post(`/projects/${t}/connections/me`,e))}async function qi(t,e,n){return o(await i.put(`/projects/${t}/connections/${e}/credential`,n))}function Se(t,e,n){return`/projects/${t}/connections/${e}/oauth2/${n}`}async function um(t,e){return o(await i.post(`/projects/${t}/connectors/${encodeURIComponent(e)}/oauth2/connection`,{}))}async function pm(t,e,n){return o(await i.put(Se(t,e,"application"),n))}async function dm(t,e){return o(await i.get(Se(t,e,"application")))}async function gm(t,e,n){return o(await i.post(Se(t,e,"discover"),n))}async function mm(t,e,n){return o(await i.post(Se(t,e,"authorize"),n))}async function fm(t,e,n){return o(await i.post(Se(t,e,"device"),n))}async function ym(t,e,n){return o(await i.post(Se(t,e,`device/${encodeURIComponent(n)}`),{}))}async function hm(t,e){return o(await i.get(Se(t,e,"status")))}async function Di(t,e){return o(await i.put(`/projects/${t}/connections/${e}/revoke`,{}))}async function Mi(t,e){return o(await i.put(`/projects/${t}/connections/${e}/activate`,{}))}async function Ui(t,e){return o(await i.put(`/projects/${t}/connections/${e}/default`,{}))}async function Oi(t,e,n={}){return o(await i.post(`/projects/${t}/connections/${e}/connect`,n))}async function Fi(t,e){return o(await i.post(`/projects/${t}/connections/${e}/connect/finalize`,{}))}async function Li(t){return o(await i.get(`/connectors/projects/${t}/connectors`,{showErrors:!1}))}async function Gi(t){return o(await i.post(`/connectors/projects/${t}/connectors/sync`,{}))}async function Bi(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/credential-mode`,{mode:n}))}async function Ki(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/authorization-strategy`,{authorization_strategy:n}))}async function Ni(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/sensitive`,{sensitive:n}))}async function Hi(t,e){return o(await i.get(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/policies`))}async function Wi(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/policies`,{policies:n}))}async function bm(t,e){throw new Error("Connection-specific policies were removed. Use getConnectorPolicies(projectId, slug).")}async function xm(t,e,n){throw new Error("Connection-specific policies were removed. Use setConnectorPolicies(projectId, slug, policies).")}async function zi(t,e){return o(await i.get(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/config`))}async function Vi(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/name`,{name:n}))}async function Ji(t,e){return o(await i.post(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/connect`,{}))}async function Xi(t,e){return o(await i.post(`/connectors/projects/${t}/connectors`,e))}async function Qi(t,e){return o(await i.post(`/connectors/projects/${t}/connectors/auth-discovery`,e))}async function Yi(t,e){return o(await i.delete(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}`))}async function Zi(t,e,n){let r=typeof e=="string"||e===void 0?{...e?{q:e}:{},...n?{cursor:n}:{}}:e,s=new URLSearchParams;r.q&&s.set("q",r.q),r.category&&s.set("category",r.category),r.cursor&&s.set("cursor",r.cursor),r.limit&&s.set("limit",String(r.limit));let c=s.toString();return o(await i.get(`/connectors/projects/${t}/pipedream/apps${c?`?${c}`:""}`))}async function eo(t,e){let n=new URLSearchParams;e?.perCategory&&n.set("perCategory",String(e.perCategory)),e?.maxCategories&&n.set("maxCategories",String(e.maxCategories));let r=n.toString();return o(await i.get(`/connectors/projects/${t}/pipedream/sections${r?`?${r}`:""}`))}async function Nt(t,e,n){let r=new URLSearchParams;e&&r.set("q",e),n&&r.set("cursor",n);let s=r.toString();return o(await i.get(`/connectors/projects/${t}/discover/connectors${s?`?${s}`:""}`))}async function Ht(t,e){let n=new URLSearchParams({id:e});return o(await i.get(`/connectors/projects/${t}/discover/connectors/detail?${n.toString()}`))}var _m=Nt,Pm=Ht;async function to(){return o(await i.get("/connectors/connect-status"))}async function no(t,e,n){let r=typeof n=="string"?{value:n}:n;return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/credential`,r))}async function km(t,e,n){return o(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/secret-binding`,{secret_identifier:n}))}async function ro(t,e){return o(await i.post(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/connect/finalize`,{}))}async function so(t){return o(await i.get(`/connectors/projects/${t}/policies`))}async function io(t,e,n){return o(await i.put(`/connectors/projects/${t}/policies`,{policies:e,defaultMode:n}))}async function oo(t){return o(await i.get(`/projects/${t}/sandboxes`))}async function ao(t){return o(await i.get(`/projects/${t}/snapshots`))}async function Wt(t){return o(await i.get(`/projects/${t}/sandbox-health`,{showErrors:!1,timeout:15e3}))}async function co(t,e){return o(await i.post(`/projects/${t}/snapshots/rebuild`,e?{slug:e}:{}))}async function lo(t){return o(await i.post(`/projects/${t}/snapshots/fix-with-agent`,{}))}async function uo(t,e){return o(await i.post(`/projects/${t}/sandbox-templates`,e))}async function po(t,e,n){return o(await i.patch(`/projects/${t}/sandbox-templates/${e}`,n))}async function go(t,e){return o(await i.delete(`/projects/${t}/sandbox-templates/${e}`))}async function mo(t,e){return o(await i.post(`/projects/${t}/sandbox-templates/${e}/build`,{}))}async function fo(t){return o(await i.get(`/projects/${t}/sandboxes`))}async function yo(t,e){let n=new URLSearchParams;e?.ref&&n.set("ref",e.ref),e?.path&&n.set("path",e.path);let r=n.toString()?`?${n.toString()}`:"";return o(await i.get(`/projects/${t}/files${r}`,{showErrors:!1}))}async function ho(t,e,n){let r=new URLSearchParams({q:e});return n?.content&&r.set("content","1"),n?.ref&&r.set("ref",n.ref),n?.limit&&r.set("limit",String(n.limit)),o(await i.get(`/projects/${t}/files/search?${r.toString()}`))}async function bo(t,e,n){let r=new URLSearchParams({path:e});return n&&r.set("ref",n),o(await i.get(`/projects/${t}/files/content?${r.toString()}`,{showErrors:!1}))}async function xo(t,e,n){let r=new URLSearchParams;e&&r.set("ref",e),n&&r.set("path",n);let s=r.toString()?`?${r.toString()}`:"",c=await ee(),u=`${E().backendUrl||""}/projects/${t}/files/archive${s}`,p=await fetch(u,{method:"GET",headers:c?{Authorization:`Bearer ${c}`}:{}});if(!p.ok){let g=await p.text().catch(()=>"");throw new Error(g||`Failed to download (HTTP ${p.status})`)}return await p.blob()}async function _o(t){return o(await i.get(`/projects/${t}/branches`))}async function Po(t,e){let n=new URLSearchParams;e?.ref&&n.set("ref",e.ref),e?.path&&n.set("path",e.path),e?.limit!=null&&n.set("limit",String(e.limit)),e?.skip!=null&&n.set("skip",String(e.skip));let r=n.toString()?`?${n.toString()}`:"";return o(await i.get(`/projects/${t}/commits${r}`))}async function ko(t,e){return o(await i.get(`/projects/${t}/commits/${encodeURIComponent(e)}`))}async function wo(t,e,n){let r=new URLSearchParams;n?.path&&r.set("path",n.path);let s=r.toString()?`?${r.toString()}`:"";return o(await i.get(`/projects/${t}/commits/${encodeURIComponent(e)}/diff${s}`))}async function So(t,e,n){let r=new URLSearchParams({path:e});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)),o(await i.get(`/projects/${t}/files/history?${r.toString()}`))}async function vo(t,e){let n=new URLSearchParams({from:e.from,into:e.into});return o(await i.get(`/projects/${t}/version-diff?${n.toString()}`))}async function Co(t,e){let n=e?`?status=${e}`:"";return o(await i.get(`/projects/${t}/change-requests${n}`,{showErrors:!1,timeout:15e3}))}async function Ro(t,e){return o(await i.get(`/projects/${t}/change-requests/${e}`))}async function To(t,e){return o(await i.get(`/projects/${t}/change-requests/${e}/diff`))}async function Ao(t,e){return o(await i.get(`/projects/${t}/change-requests/${e}/merge-preview`))}async function Io(t,e){return o(await i.post(`/projects/${t}/change-requests`,e))}async function jo(t,e,n){return o(await i.post(`/projects/${t}/change-requests/${e}/merge`,n??{},{showErrors:!1}))}async function Eo(t,e){return o(await i.post(`/projects/${t}/change-requests/${e}/close`,{}))}async function $o(t,e){return o(await i.post(`/projects/${t}/change-requests/${e}/reopen`,{}))}async function qo(t,e,n){return o(await i.post(`/projects/${t}/change-requests/${e}/request-changes`,{feedback:n}))}async function Do(t,e,n){return o(await i.post(`/projects/${t}/sessions/${e}/commit-push`,n??{}))}var Mo=new Set;function rt(t){t&&Mo.add(t)}function Uo(t){return!!t&&Mo.has(t)}function wm(t){t&&Mo.delete(t)}async function Me(t,e){let n=new URLSearchParams;e?.scope&&e.scope!=="visible"&&n.set("scope",e.scope);let r=n.size>0?`?${n}`:"";return o(await i.get(`/projects/${t}/sessions${r}`))}async function Oo(t,e,n){return o(await i.put(`/projects/${t}/sessions/${e}/sharing`,n))}async function Fo(t,e){return o(await i.get(`/projects/${t}/sessions/${e}/previews`))}async function Lo(t,e){return o(await i.get(`/projects/${t}/sessions/${e}/public-shares`,{showErrors:!1}))}async function Go(t,e,n){return o(await i.post(`/projects/${t}/sessions/${e}/public-shares`,n))}async function Bo(t,e,n){return o(await i.delete(`/projects/${t}/sessions/${e}/public-shares/${n}`))}async function Ue(t,e){let n=o(await i.post(`/projects/${t}/sessions`,e??{}));return e?.initial_prompt||rt(n?.session_id),n}async function Ko(t){let e=o(await i.post(`/projects/${t}/sessions/warm`,{}));return rt(e.session.session_id),e}async function No(t,e){let n=o(await i.post(`/projects/${t}/sessions/warm/claim`,e,{showErrors:!1}));return rt(n.session_id),n}async function zt(t,e,n){return o(await i.get(`/projects/${t}/sessions/${e}`,{showErrors:n?.showErrors}))}async function Ho(t,e,n,r){let s=new URLSearchParams;n&&s.set("limit",String(n)),r?.cursor&&s.set("cursor",r.cursor),r?.includeEvents!=null&&s.set("include_events",String(r.includeEvents));let c=s.toString();return o(await i.get(`/projects/${t}/sessions/${e}/audit${c?`?${c}`:""}`,{showErrors:r?.showErrors}))}async function Wo(t,e,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 o(await i.get(`/projects/${t}/sessions/${e}/transcript${s?`?${s}`:""}`))}async function zo(t,e,n){let r=new URLSearchParams;n?.cursor!=null&&r.set("cursor",String(n.cursor)),n?.limit!=null&&r.set("limit",String(n.limit));let s=r.toString();return o(await i.get(`/projects/${t}/sessions/${e}/voice-transcript${s?`?${s}`:""}`,{showErrors:n?.showErrors}))}async function Vo(t,e,n){return o(await i.patch(`/projects/${t}/sessions/${e}`,n))}async function Jo(t,e){return o(await i.delete(`/projects/${t}/sessions/${e}`))}async function st(t,e){return o(await i.post(`/projects/${t}/sessions/${e}/restart`,{}))}async function it(t,e){return o(await i.post(`/projects/${t}/sessions/${e}/stop`,{}))}async function Xo(t,e){return o(await i.get(`/projects/${t}/sessions/${encodeURIComponent(e)}/config`,{showErrors:!1}))}function Sm(t){let e=t.split(`
14
14
  `).filter(n=>n.startsWith("data:")).map(n=>n.slice(5).replace(/^ /,""));if(e.length===0)return null;try{return JSON.parse(e.join(`
15
- `))}catch(n){throw new Error("reloadProjectSessionConfigStream received an invalid SSE frame",{cause:n})}}async function Ko(t,e,n={}){return o(await i.post(`/projects/${t}/sessions/${encodeURIComponent(e)}/reload`,n,{showErrors:!1}))}async function Ho(t,e,n,r,s={}){let c=await i.postStream(`/projects/${t}/sessions/${encodeURIComponent(e)}/reload-stream`,n,s);if(!c.ok){let m=await c.json().catch(()=>null);throw new R(m?.error||`Reload failed: HTTP ${c.status}`,{status:c.status,code:m?.code,data:m})}let u=c.body?.getReader();if(!u)throw new Error("Reload stream is unavailable on this runtime (no response body)");let p=new TextDecoder,g="",f=null;try{for(;;){let{done:m,value:_}=await u.read();if(m)break;g+=p.decode(_,{stream:!0});let x=g.indexOf(`
15
+ `))}catch(n){throw new Error("reloadProjectSessionConfigStream received an invalid SSE frame",{cause:n})}}async function Qo(t,e,n={}){return o(await i.post(`/projects/${t}/sessions/${encodeURIComponent(e)}/reload`,n,{showErrors:!1}))}async function Yo(t,e,n,r,s={}){let c=await i.postStream(`/projects/${t}/sessions/${encodeURIComponent(e)}/reload-stream`,n,s);if(!c.ok){let m=await c.json().catch(()=>null);throw new R(m?.error||`Reload failed: HTTP ${c.status}`,{status:c.status,code:m?.code,data:m})}let u=c.body?.getReader();if(!u)throw new Error("Reload stream is unavailable on this runtime (no response body)");let p=new TextDecoder,g="",f=null;try{for(;;){let{done:m,value:_}=await u.read();if(m)break;g+=p.decode(_,{stream:!0});let x=g.indexOf(`
16
16
 
17
17
  `);for(;x!==-1;){let I=g.slice(0,x);g=g.slice(x+2),x=g.indexOf(`
18
18
 
19
- `);let T=cm(I);if(T){if(r(T),T.type==="error")throw new R(T.error,{status:T.status,code:T.code,data:{reason:T.reason}});T.type==="done"&&(f=T.result)}}}}finally{u.cancel().catch(()=>{})}if(!f)throw new Error("Reload stream ended without a result");return f}async function No(t,e){return o(await i.get(`/projects/${t}/sessions/${encodeURIComponent(e)}/scope`))}async function Wo(t,e,n){return o(await i.put(`/projects/${t}/sessions/${encodeURIComponent(e)}/scope`,n))}async function zo(t,e,n){return o(await i.put(`/projects/${t}/sessions/${encodeURIComponent(e)}/model`,{opencode_model:n}))}async function Vo(t){return o(await i.get(`/projects/${t}/triggers`))}async function Jo(t,e){return o(await i.post(`/projects/${t}/triggers`,e))}async function Xo(t,e,n){return o(await i.patch(`/projects/${t}/triggers/${e}`,n))}async function Qo(t,e){return o(await i.delete(`/projects/${t}/triggers/${e}`))}async function Yo(t,e){return o(await i.patch(`/projects/${t}/triggers/activation`,{paused:e}))}async function Zo(t,e){return o(await i.post(`/projects/${t}/triggers/${e}/fire`,{}))}var le=new Map;function ea(t,e){return`${t}::${e}`}function tu(t,e){le.delete(t),le.set(t,e)}function nu(t,e){let n=ea(t,e),r=le.get(n);return r&&tu(n,r),r}function ru(t,e,n){let r=ea(t,e);if(!le.has(r)&&le.size>=512){let s=le.keys().next().value;s!==void 0&&le.delete(s)}tu(r,n)}function su(t,e){le.delete(ea(t,e))}function lm(t){if(t.status!=="running"||!t.sandbox_id||!t.sandbox_provider||!t.sandbox_url||!t.opencode_session_id)return null;let e=t.sandbox_url.match(/\/p\/([^/]+)\//)?.[1];return e?{stage:"ready",agent_name:t.agent_name??"default",retriable:!0,sandbox:{sandbox_id:t.sandbox_id,session_id:t.session_id,project_id:t.project_id,account_id:t.account_id,provider:t.sandbox_provider,external_id:e,base_url:t.sandbox_url,status:"active",config:{},metadata:t.metadata,last_used_at:t.updated_at,created_at:t.created_at,updated_at:t.updated_at},opencode_session_id:t.opencode_session_id,runtime_url:t.sandbox_url}:null}var Nt=class extends Error{status;code;terminal;constructor(e,n){super(e),this.name="SessionStartError",this.status=n.status,this.code=n.code,this.terminal=n.terminal}};function um(t){return t instanceof Error&&t.name==="SessionStartError"}function pm(t){let e=t,n=e?.status,r=e?.code??e?.details?.code??e?.details?.error,s=e?.message||"Unable to start this session";return n&&n>=400&&n<500&&n!==408&&n!==429?new Nt(s,{status:n,code:r,terminal:!0}):null}async function Se(t,e,n){let r=n&&n>0?`?wait_ms=${Math.floor(n)}`:"",s=await i.post(`/projects/${t}/sessions/${e}/start${r}`,{},{showErrors:!1});if(!s.success||!s.data){let p=pm(s.error);if(p&&!(p.status===404&&Ao(e)))throw p;return null}let c=s.data,u=c.sandbox?.external_id;return c.stage==="ready"&&u&&c.opencode_session_id&&ru(t,e,{opencodeSessionId:c.opencode_session_id,runtimeUrl:St(u),sandboxId:u}),c}function dm(t,e){return["session-start",t,e]}async function ta(t){return o(await i.get(`/projects/${t}/model-defaults`))}async function na(t,e){return o(await i.put(`/projects/${t}/model-defaults`,e))}async function ra(t,e){let n=new URLSearchParams({scope:e.scope,...e.agentName?{agentName:e.agentName}:{}}).toString();return o(await i.delete(`/projects/${t}/model-defaults?${n}`))}async function gm(t,e){return o(await i.put(`/projects/${t}/model-enablement`,{modelOverrides:e}))}async function sa(t,e,n){let r=fm(n);return o(await i.put(`/projects/${t}/agents/${encodeURIComponent(e)}/scope`,r))}function iu(t){let e=[];for(let n of t){let r=n.trim();r&&!e.includes(r)&&e.push(r)}return e}function mm(t,e){if(t.length!==e.length)return!1;let n=new Set(e);return t.every(r=>n.has(r))}function fm(t){let e=t.connectors_required?iu(t.connectors_required):void 0,n=t.connectors_personal?iu(t.connectors_personal):void 0;if(e&&n&&!mm(e,n))throw new Error("connectors_personal must match connectors_required when both fields are present");let r={...t};return delete r.connectors_personal,(e!==void 0||n!==void 0)&&(r.connectors_required=e??n),r}async function ym(t,e){let n=o(await i.get(`/projects/${t}/agents/${encodeURIComponent(e)}/config`));return{...n,block:n.block?ia(n.block):null}}async function hm(t,e,n){let r=ia(n),s=o(await i.put(`/projects/${t}/agents/${encodeURIComponent(e)}/config`,r));return{...s,block:s.block?ia(s.block):null}}function ou(t){let e=[];for(let n of t){let r=n.trim();r&&!e.includes(r)&&e.push(r)}return e}function bm(t,e){if(t.length!==e.length)return!1;let n=new Set(e);return t.every(r=>n.has(r))}function ia(t){let e=t.connectors_required?ou(t.connectors_required):void 0,n=t.connectors_personal?ou(t.connectors_personal):void 0;if(e&&n&&!bm(e,n))throw new Error("connectors_personal must match connectors_required when both fields are present");let r={...t};return delete r.connectors_personal,(e!==void 0||n!==void 0)&&(r.connectors_required=e??n),r}async function oa(t,e){return o(await i.put(`/projects/${t}/default-agent`,{agent:e}))}function aa(){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 ca(t){let e=new URLSearchParams;t?.skipCache&&e.set("skip_cache","true"),t?.accountId&&e.set("account_id",t.accountId);let n=e.toString(),r=n?`?${n}`:"",s=await i.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?aa():s.data}async function la(t){let e=new URLSearchParams;t?.skipCache&&e.set("skip_cache","true"),t?.accountId&&e.set("account_id",t.accountId);let n=e.toString(),r=n?`?${n}`:"",s=await i.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?aa():s.data}async function ua(t){let e=new URLSearchParams;t?.accountId&&e.set("account_id",t.accountId),t?.limit!=null&&e.set("limit",String(t.limit)),t?.offset!=null&&e.set("offset",String(t.offset)),t?.typeFilter&&e.set("type_filter",Array.isArray(t.typeFilter)?t.typeFilter.join(","):t.typeFilter);let n=e.toString();return o(await i.get(`/billing/transactions${n?`?${n}`:""}`))}async function pa(t){let e=new URLSearchParams;t?.accountId&&e.set("account_id",t.accountId),t?.days!=null&&e.set("days",String(t.days));let n=e.toString();return o(await i.get(`/billing/transactions/summary${n?`?${n}`:""}`))}async function da(){return o(await i.get("/billing/credit-breakdown"))}async function ga(t){let e=t!=null?`?days=${t}`:"";return o(await i.get(`/billing/usage-history${e}`))}async function ma(){return o(await i.get("/billing/tier-configurations"))}async function xm(t){let e=t.accountId?`?account_id=${encodeURIComponent(t.accountId)}`:"";return qe(t,`/v1/billing/account-state${e}`)}async function fa(t){return o(await i.post("/billing/create-checkout-session",{account_id:t.accountId,tier_key:t.tierKey,success_url:t.successUrl,cancel_url:t.cancelUrl,commitment_type:t.commitmentType,locale:t.locale,server_type:t.serverType,location:t.location}),"Failed to create checkout session")}async function ya(t,e){return o(await i.post("/billing/confirm-checkout-session",{account_id:e,session_id:t}),"Failed to confirm checkout session")}async function ha(t,e){return o(await i.post("/billing/create-portal-session",{account_id:e,return_url:t}),"Failed to create portal session")}async function ba(t,e){return o(await i.post("/billing/cancel-subscription",{account_id:e,feedback:t}),"Failed to cancel subscription")}async function xa(t){return o(await i.post("/billing/reactivate-subscription",{account_id:t}),"Failed to reactivate subscription")}async function _a(t,e,n){return o(await i.post("/billing/schedule-downgrade",{account_id:n,target_tier_key:t,commitment_type:e}),"Failed to schedule downgrade")}async function Pa(t){return o(await i.post("/billing/cancel-scheduled-change",{account_id:t}),"Failed to cancel scheduled change")}async function ka(t,e){let n=new URLSearchParams({new_price_id:t});return e&&n.set("account_id",e),o(await i.get(`/billing/proration-preview?${n.toString()}`),"Failed to load proration preview")}async function wa(t){return o(await i.post("/billing/purchase-credits",{amount:t.amount,account_id:t.accountId,success_url:t.successUrl,cancel_url:t.cancelUrl}),"Failed to purchase credits")}async function Sa(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return o(await i.get(`/billing/auto-topup/settings${e}`),"Failed to load auto-topup settings")}async function va(t){return o(await i.post("/billing/auto-topup/configure",{account_id:t.accountId,enabled:t.enabled,threshold:t.threshold,amount:t.amount}),"Failed to configure auto-topup")}async function _m(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return o(await i.get(`/billing/auto-topup/setup-status${e}`,{timeout:8e3,showErrors:!1}),"Failed to load auto-topup setup status")}async function Pm(t){return o(await i.post("/billing/create-per-seat-checkout",{account_id:t.accountId,success_url:t.successUrl,cancel_url:t.cancelUrl,locale:t.locale}),"Failed to create per-seat checkout")}async function km(t){return o(await i.post("/billing/claim-per-seat",{account_id:t}),"Failed to switch to per-seat billing")}async function wm(t){return o(await i.post("/billing/sync-subscription",{account_id:t}),"Failed to sync subscription")}async function Ca(t={}){let e=new URLSearchParams;t.start&&e.set("start",t.start),t.end&&e.set("end",t.end),(t.groupBy==="model"||t.groupBy==="provider"||t.groupBy==="day")&&e.set("group_by",t.groupBy),t.accountId&&e.set("account_id",t.accountId);let n=e.toString();return o(await i.get(`/usage${n?`?${n}`:""}`))}function Ta(t,e){e.accountId&&t.set("account_id",e.accountId),e.projectId&&t.set("project_id",e.projectId)}function Wt(t,e){e.from&&t.set("from",e.from),e.to&&t.set("to",e.to)}function zt(t){return t.size>0?`?${t}`:""}async function Aa(t={}){let e=new URLSearchParams;return Ta(e,t),t.ownerId&&e.set("owner_id",t.ownerId),Wt(e,t),t.sort&&e.set("sort",t.sort),t.limit!=null&&e.set("limit",String(t.limit)),t.offset!=null&&e.set("offset",String(t.offset)),o(await i.get(`/usage/session-costs${zt(e)}`))}async function Vt(t,e={}){let n=new URLSearchParams;return Ta(n,e),o(await i.get(`/usage/session-costs/${encodeURIComponent(t)}${zt(n)}`))}async function Sm(t={}){let e=new URLSearchParams;return t.accountId&&e.set("account_id",t.accountId),Wt(e,t),t.sort&&e.set("sort",t.sort),t.limit!=null&&e.set("limit",String(t.limit)),t.offset!=null&&e.set("offset",String(t.offset)),o(await i.get(`/usage/cost-by-project${zt(e)}`))}async function vm(t={}){let e=new URLSearchParams;return Ta(e,t),t.sessionId&&e.set("session_id",t.sessionId),Wt(e,t),o(await i.get(`/usage/cost-summary${zt(e)}`))}function Ra(t,e={}){let n=new URLSearchParams;if(e.accountId&&n.set("account_id",e.accountId),t==="sessions"){let s=e;s.projectId&&n.set("project_id",s.projectId),s.ownerId&&n.set("owner_id",s.ownerId)}Wt(n,e),e.sort&&n.set("sort",e.sort),n.set("format","csv");let r=t==="projects"?"/usage/cost-by-project":"/usage/session-costs";return`${E().backendUrl||""}${r}?${n}`}async function Cm(t,e={}){let n=Ra(t==="projects"?"projects":"sessions",e),r=await ee(),s=await fetch(n,{method:"GET",headers:r?{Authorization:`Bearer ${r}`}:{}});if(!s.ok){let g=await s.text().catch(()=>"");throw new Error(g||`Failed to export CSV (HTTP ${s.status})`)}let c=s.headers.get("x-kortix-row-cap"),u=c!=null?Number(c):NaN;return{blob:await s.blob(),rowCap:Number.isFinite(u)?u:null}}async function au(t,e){return o(await i.post(`/channels/${t}/identity/bind`,{token:e}),"Failed to connect your account")}function Rm(t){return au("slack",t)}function Tm(t){return au("teams",t)}async function Ia(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/installation`,{showErrors:!1});return e.success?e.data??null:null}async function ja(t,e){return o(await i.post(`/projects/${encodeURIComponent(t)}/channels/slack/connect`,e,{showErrors:!1}),"Failed to connect")}var Am={oauth_available:!1,install_url:null};async function Ea(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/mode`,{showErrors:!1});return!e.success||!e.data?Am:e.data}async function $a(t){return o(await i.get(`/webhooks/slack/${encodeURIComponent(t)}/manifest`,{showErrors:!1}),"Failed to load Slack manifest")}async function qa(t){let e=await i.delete(`/projects/${encodeURIComponent(t)}/channels/slack/installation`,{showErrors:!1});if(!e.success)throw new Error(e.error?.message??"Failed to disconnect")}async function Da(t,e){return o(await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/file?url=${encodeURIComponent(e)}`,{showErrors:!1}),"Failed to download Slack file")}async function Ma(t,e){return o(await i.post(`/projects/${encodeURIComponent(t)}/channels/slack/file/upload`,{channel:e.channel,filename:e.filename,content_base64:e.contentBase64,comment:e.comment,thread_ts:e.threadTs},{showErrors:!1}),"Failed to upload Slack file")}function Ua(t){let e=t.connectionId??t.connection_id??null,n=t.connectorSlug??t.connector_slug??t.connectionSlug??t.connection_slug??"kortix_email";return{...t,connectionId:e,connectorSlug:n}}var Im={provider:"agentmail",managed_available:!1};async function Oa(t,e){let n=e?`?connector_slug=${encodeURIComponent(e)}`:"",r=await i.get(`/projects/${encodeURIComponent(t)}/channels/email/installation${n}`,{showErrors:!1});return r.success&&r.data?Ua(r.data):null}async function Fa(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/email/mode`,{showErrors:!1});return!e.success||!e.data?Im:e.data}async function La(t,e){let n=o(await i.post(`/projects/${encodeURIComponent(t)}/channels/email/connect`,e,{showErrors:!1}),"Failed to connect email");return Ua(n)}async function Ga(t,e){let n=e?`?connector_slug=${encodeURIComponent(e)}`:"",r=await i.delete(`/projects/${encodeURIComponent(t)}/channels/email/installation${n}`,{showErrors:!1});if(!r.success)throw new Error(r.error?.message??"Failed to disconnect email")}async function Ba(t,e,n){let r=o(await i.patch(`/projects/${encodeURIComponent(t)}/channels/email/installation`,{connector_slug:e??"kortix_email",sender_policy:n},{showErrors:!1}),"Failed to update email policy");return Ua(r)}async function Ka(t,e){return o(await i.put(`/projects/${encodeURIComponent(t)}/channels/meet/name`,{name:e},{showErrors:!1}),"Failed to save name")}async function jm(t){return o(await i.get(`/projects/${encodeURIComponent(t)}/channels/bindings`,{showErrors:!1}),"Failed to load channel bindings")}async function Em(t,e,n){return o(await i.patch(`/projects/${encodeURIComponent(t)}/channels/bindings/${encodeURIComponent(e)}`,n,{showErrors:!1}),"Failed to update channel binding")}async function Ha(t){return o(await i.get(`/projects/${t}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Na(t,e){return o(await i.put(`/projects/${t}/gateway/routing-policy`,e),"Gateway routing policy request failed")}async function Wa(t){return o(await i.delete(`/projects/${t}/gateway/routing-policy`),"Gateway routing policy request failed")}async function za(t,e){return o(await i.post(`/projects/${t}/gateway/routing-policy/preview`,e),"Gateway route preview failed")}async function Va(t,e){let n=new URLSearchParams;e?.limit&&n.set("limit",String(e.limit)),e?.offset&&n.set("offset",String(e.offset)),e?.ok!==void 0&&n.set("ok",String(e.ok));let r=n.toString();return o(await i.get(`/projects/${t}/gateway/logs${r?`?${r}`:""}`),"Gateway request failed")}async function Ja(t,e){return o(await i.get(`/projects/${t}/gateway/logs/${e}`),"Gateway request failed")}async function Xa(t,e){return o(await i.get(`/projects/${t}/gateway/overview${e?`?days=${e}`:""}`),"Gateway request failed")}async function Qa(t,e){return o(await i.get(`/projects/${t}/gateway/series${e?`?days=${e}`:""}`),"Gateway request failed")}async function Ya(t,e){return o(await i.get(`/projects/${t}/gateway/breakdown${e?`?days=${e}`:""}`),"Gateway request failed")}async function Za(t,e){return o(await i.get(`/projects/${t}/gateway/sessions${e?`?days=${e}`:""}`),"Gateway request failed")}async function ec(t,e){return o(await i.get(`/projects/${t}/gateway/errors${e?`?days=${e}`:""}`),"Gateway request failed")}async function tc(t){return o(await i.get(`/projects/${t}/gateway/budgets`),"Gateway request failed")}async function nc(t,e){return o(await i.put(`/projects/${t}/gateway/budgets`,e),"Gateway request failed")}async function rc(t,e){return o(await i.delete(`/projects/${t}/gateway/budgets/${e}`),"Gateway request failed")}async function sc(t){return o(await i.get(`/projects/${t}/gateway/keys`),"Gateway request failed")}async function ic(t,e){return o(await i.post(`/projects/${t}/gateway/keys`,{name:e}),"Gateway request failed")}async function oc(t,e){return o(await i.delete(`/projects/${t}/gateway/keys/${e}`),"Gateway request failed")}async function ac(t,e,n,r,s){return o(await i.post(`/projects/${t}/gateway/playground`,{prompt:e,models:n,...r?{system:r}:{},...s&&Object.keys(s).length?{generationConfig:s}:{}}),"Gateway request failed")}async function $m(t,e){return o(await i.post(`/projects/${t}/gateway/providers/${encodeURIComponent(e)}/verify`,{}),"Gateway provider verification failed")}async function cc(t){let e=new FormData;e.append("audio_file",t);let n=await i.upload("/transcription",e,{showErrors:!0});if(n.error)throw new Error(`Error transcribing audio: ${n.error.message} (${n.error.status})`);return n.data}async function qm(){return o(await i.get("/referrals/code"),"GET_CODE_FAILED")}async function Dm(){return o(await i.post("/referrals/code/refresh",{}),"REFRESH_CODE_FAILED")}async function Mm(t){return o(await i.post("/referrals/validate",{referral_code:t}),"VALIDATE_CODE_FAILED")}async function Um(){return o(await i.get("/referrals/stats"),"GET_STATS_FAILED")}async function Om(t={}){let e=new URLSearchParams({limit:String(t.limit??50),offset:String(t.offset??0)});return o(await i.get(`/referrals/list?${e}`),"GET_REFERRALS_FAILED")}async function Fm(t){return o(await i.post("/referrals/email",{emails:t}),"SEND_EMAILS_FAILED")}function P(t){if(!t.success||t.data===void 0)throw t.error||new Error("Unexpected empty response");return t.data}function O(t){return i.get(t,{showErrors:!1})}async function Lm(t){return P(await O(`/accounts/${t}/iam/groups`)).groups}async function Gm(t,e){return P(await O(`/accounts/${t}/iam/groups/${e}`))}async function Bm(t,e){return P(await i.post(`/accounts/${t}/iam/groups`,e,{showErrors:!1}))}async function Km(t,e,n){return P(await i.patch(`/accounts/${t}/iam/groups/${e}`,n))}async function Hm(t,e){return P(await i.delete(`/accounts/${t}/iam/groups/${e}`))}async function Nm(t,e){return P(await O(`/accounts/${t}/iam/groups/${e}/members`)).members}async function Wm(t,e,n){return P(await i.post(`/accounts/${t}/iam/groups/${e}/members`,{userIds:n}))}async function zm(t,e){return P(await O(`/accounts/${t}/iam/groups/${e}/project-grants`)).grants}async function Vm(t,e,n){return P(await i.delete(`/accounts/${t}/iam/groups/${e}/members/${n}`))}async function Jm(t,e){return P(await O(`/accounts/${t}/iam/members/${e}/groups`)).groups}async function Xm(t,e){return P(await O(`/accounts/${t}/iam/members/${e}/project-access`)).projects}async function Qm(t,e={}){let n=new URLSearchParams;e.principalType&&n.set("principalType",e.principalType),e.principalId&&n.set("principalId",e.principalId),e.scopeType&&n.set("scopeType",e.scopeType),e.scopeId!==void 0&&n.set("scopeId",e.scopeId===null?"null":e.scopeId);let r=n.toString();return P(await O(`/accounts/${t}/iam/policies${r?`?${r}`:""}`)).policies}async function Ym(t,e){return P(await i.post(`/accounts/${t}/iam/policies`,e,{showErrors:!1}))}async function Zm(t,e,n){return P(await i.patch(`/accounts/${t}/iam/policies/${e}`,n,{showErrors:!1}))}async function ef(t,e){return P(await i.delete(`/accounts/${t}/iam/policies/${e}`))}async function tf(t,e){return P(await i.post(`/accounts/${t}/iam/policies:bulk-delete`,{policy_ids:e},{showErrors:!1}))}async function nf(t,e){return P(await i.post(`/accounts/${t}/iam/policies:bulk-import`,{policies:e},{showErrors:!1}))}async function rf(t){return P(await O(`/accounts/${t}/iam/roles`)).roles}async function sf(t){return P(await O(`/accounts/${t}/iam/agent-identities`)).agents}async function of(t,e){return P(await O(`/accounts/${t}/iam/roles/${e}/permissions`))}async function af(t){return P(await O(`/accounts/${t}/iam/actions`)).actions}async function cf(t,e){return P(await O(`/accounts/${t}/iam/roles/${e}/usage`))}async function lf(t,e){return P(await i.post(`/accounts/${t}/iam/roles`,e,{showErrors:!1}))}async function uf(t,e,n){return P(await i.patch(`/accounts/${t}/iam/roles/${e}`,n,{showErrors:!1}))}async function pf(t,e,n){return P(await i.put(`/accounts/${t}/iam/roles/${e}/permissions`,{actions:n},{showErrors:!1}))}async function df(t,e){return P(await i.delete(`/accounts/${t}/iam/roles/${e}`,{showErrors:!1}))}async function gf(t,e,n){return P(await i.patch(`/accounts/${t}/iam/members/${e}/super-admin`,{isSuperAdmin:n}))}async function mf(t){return P(await O(`/accounts/${t}/iam/scim/tokens`)).tokens}async function ff(t,e){return P(await i.post(`/accounts/${t}/iam/scim/tokens`,e,{showErrors:!1}))}async function yf(t,e){return P(await i.delete(`/accounts/${t}/iam/scim/tokens/${e}`))}async function hf(t){return P(await O(`/accounts/${t}/iam/mfa-required`))}async function bf(t){return P(await O(`/accounts/${t}/iam/mfa-required/preview`))}async function xf(t,e){return P(await i.patch(`/accounts/${t}/iam/mfa-required`,{enabled:e},{showErrors:!1}))}async function _f(t){return P(await O(`/accounts/${t}/iam/sso/provider`)).provider}async function Pf(t,e){return P(await i.put(`/accounts/${t}/iam/sso/provider`,e,{showErrors:!1})).provider}async function kf(t,e){return P(await i.post(`/accounts/${t}/iam/sso/provider/from-metadata`,e,{showErrors:!1})).provider}async function wf(t){return P(await i.delete(`/accounts/${t}/iam/sso/provider`))}async function Sf(t){return P(await O(`/accounts/${t}/iam/sso/mappings`)).mappings}async function vf(t,e){return P(await i.post(`/accounts/${t}/iam/sso/mappings`,e,{showErrors:!1}))}async function Cf(t,e){return P(await i.delete(`/accounts/${t}/iam/sso/mappings/${e}`))}async function Rf(t){return P(await O(`/accounts/${t}/iam/session-policy`))}async function Tf(t,e){return P(await i.patch(`/accounts/${t}/iam/session-policy`,e,{showErrors:!1}))}async function Af(t){return P(await O(`/accounts/${t}/iam/sessions`)).sessions}async function If(t,e){return P(await i.post(`/accounts/${t}/iam/sessions/${e}/revoke`,{},{showErrors:!1}))}async function jf(t){return P(await O(`/accounts/${t}/iam/pat-policy`))}async function Ef(t,e){return P(await i.patch(`/accounts/${t}/iam/pat-policy`,e,{showErrors:!1}))}async function $f(t){return P(await O(`/accounts/${t}/iam/service-accounts`)).service_accounts}async function qf(t,e){return P(await i.post(`/accounts/${t}/iam/service-accounts`,e,{showErrors:!1}))}async function Df(t,e){return P(await i.post(`/accounts/${t}/iam/service-accounts/${e}/disable`,{},{showErrors:!1}))}async function Mf(t,e){return P(await i.delete(`/accounts/${t}/iam/service-accounts/${e}`))}async function Uf(t){return P(await O(`/accounts/${t}/audit/webhooks`)).webhooks}async function Of(t,e){return P(await i.post(`/accounts/${t}/audit/webhooks`,e,{showErrors:!1}))}async function Ff(t,e,n){return P(await i.patch(`/accounts/${t}/audit/webhooks/${e}`,n))}async function Lf(t,e){return P(await i.delete(`/accounts/${t}/audit/webhooks/${e}`))}async function Gf(t,e={}){let n=new URLSearchParams;e.action&&n.set("action",e.action),e.actor&&n.set("actor",e.actor),e.project_id&&n.set("project_id",e.project_id),e.session_id&&n.set("session_id",e.session_id),e.actor_type&&n.set("actor_type",e.actor_type),e.source&&n.set("source",e.source),e.phase&&n.set("phase",e.phase),e.outcome&&n.set("outcome",e.outcome),e.request_id&&n.set("request_id",e.request_id),e.correlation_id&&n.set("correlation_id",e.correlation_id),e.resource_type&&n.set("resource_type",e.resource_type),e.since&&n.set("since",e.since),e.until&&n.set("until",e.until),e.q&&n.set("q",e.q),e.cursor&&n.set("cursor",e.cursor),e.limit&&n.set("limit",String(e.limit));let r=n.toString();return P(await O(`/accounts/${t}/audit${r?`?${r}`:""}`))}async function Bf(t,e,n){let r=new URLSearchParams;return r.set("action",n.action),n.resourceType&&r.set("resourceType",n.resourceType),n.resourceId&&r.set("resourceId",n.resourceId),P(await O(`/accounts/${t}/iam/members/${e}/effective?${r.toString()}`))}async function Kf(t,e,n){return n.length===0?[]:P(await i.post(`/accounts/${t}/iam/members/${e}/effective:batch`,{probes:n})).results}async function Hf(t){return P(await O(`/accounts/${t}/iam/enterprise-demo`)).enabled}async function Nf(t,e){return P(await i.put(`/accounts/${t}/iam/enterprise-demo`,{enabled:e})).enabled}async function Wf(){let t=await i.get("/account/deletion-status",{showErrors:!1});return t.error?.status===404?null:o(t,"Failed to load account deletion status")}async function zf(t="User requested deletion"){return o(await i.post("/account/request-deletion",{reason:t},{showErrors:!1}),"Failed to request account deletion")}async function Vf(){return o(await i.post("/account/cancel-deletion",void 0,{showErrors:!1}),"Failed to cancel account deletion")}async function Jf(){return o(await i.delete("/account/delete-immediately",{showErrors:!1}),"Failed to delete account immediately")}async function Xf(){return(await i.get("/user-roles",{showErrors:!1})).data??{isAdmin:!1,role:null}}function Qf(){return i.get("/admin/api/provider-distribution").then(t=>o(t))}function Yf(t=300){return i.get(`/admin/api/sandboxes?limit=${t}`).then(e=>o(e))}function Zf(t){return i.put("/admin/api/provider-distribution",t).then(e=>o(e))}function ey(t){return i.get(`/admin/api/provider-analytics?days=${t}`).then(e=>o(e))}function ty(t,e){return i.post(`/admin/api/sandboxes/${encodeURIComponent(t)}/migrate`,{targetProvider:e}).then(n=>o(n))}function ny(){return i.get("/admin/api/provider-fallback").then(t=>o(t))}function ry(t){return i.put("/admin/api/provider-fallback",{enabled:t}).then(e=>o(e))}async function sy(t){return o(await i.get(`/google/auth-url?return_url=${encodeURIComponent(t)}`),"Failed to get Google auth URL")}async function iy(t,e){return o(await i.post("/presentation-tools/convert-and-upload-to-slides",{presentation_path:t,sandbox_url:e},{timeout:18e4}),"Failed to upload to Google Slides")}async function lc(t,e){let n=new URLSearchParams;e?.segment&&n.set("segment",e.segment),e?.kind&&n.set("kind",e.kind);let r=n.toString();return o(await i.get(`/projects/${t}/review/items${r?`?${r}`:""}`,{showErrors:!1}))}async function uc(t,e){return o(await i.get(`/projects/${t}/review/items/${e}`))}async function pc(t,e){return o(await i.post(`/projects/${t}/review/items`,e))}async function dc(t,e,n){return o(await i.post(`/projects/${t}/review/items/${e}/act`,n))}async function gc(t,e){return o(await i.post(`/projects/${t}/review/bulk`,e))}async function mc(t){return o(await i.get(`/p/share?sandbox_id=${encodeURIComponent(t)}`),"Failed to load public links").shares??[]}async function fc(t){return o(await i.post("/p/share",{sandbox_id:t.sandboxId,port:t.port,ttl:t.ttl,label:t.label}),"Failed to generate public URL")}async function yc(t,e){let n=await i.delete(`/p/share/${encodeURIComponent(e)}?sandbox_id=${encodeURIComponent(t)}`);if(!n.success)throw new Error(n.error?.message??"Failed to revoke public link")}var Jt=class extends Error{constructor(n,r){super(n);this.status=r;this.name="PublicSessionShareError"}status};function cu(t,e=""){return`${fe()}/public/session-shares/${encodeURIComponent(t)}${e}`}async function lu(t){let e=await fetch(t,{method:"GET",headers:{Accept:"application/json"}}),n=await e.text().catch(()=>""),r=null;try{r=n?JSON.parse(n):null}catch{}if(!e.ok){let s=(r&&typeof r=="object"&&"error"in r&&typeof r.error=="string"?r.error:null)||e.statusText||`HTTP ${e.status}`;throw new Jt(s,e.status)}return r}async function oy(t){return lu(cu(t))}async function ay(t){return lu(cu(t,"/messages"))}var Xt=class extends Error{constructor(n,r){super(n);this.status=r;this.name="PublicVoiceJoinError"}status};function uu(t){return`${fe()}/public/voice-join/${encodeURIComponent(t)}`}async function pu(t){let e=await fetch(t,{method:"GET",headers:{Accept:"application/json"}}),n=await e.text().catch(()=>""),r=null;try{r=n?JSON.parse(n):null}catch{}if(!e.ok){let s=(r&&typeof r=="object"&&"error"in r&&typeof r.error=="string"?r.error:null)||e.statusText||`HTTP ${e.status}`;throw new Xt(s,e.status)}return r}async function cy(t){return pu(uu(t))}async function ly(t,e=0){let n=`${uu(t)}/transcript?cursor=${encodeURIComponent(String(e))}`;return pu(n)}async function hc(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return o(await i.get(`/accounts/tokens${e}`))}async function bc(t){let{accountId:e,expiresAt:n,projectId:r,name:s}=t;return o(await i.post("/accounts/tokens",{name:s,...e?{account_id:e}:{},...n?{expires_at:n}:{},...r?{project_id:r}:{}}))}async function xc(t,e){let n=e?`?account_id=${encodeURIComponent(e)}`:"";return o(await i.delete(`/accounts/tokens/${t}${n}`))}async function _c(t){return o(await i.get(`/projects/${t}/cli-token`))}async function Pc(t,e){return o(await i.post(`/projects/${t}/cli-token`,e??{}))}async function kc(t,e){return o(await i.delete(`/projects/${t}/cli-token/${e}`))}async function wc(t,e){let n=new URLSearchParams;e?.action&&n.set("action",e.action),e?.actor&&n.set("actor",e.actor),e?.actorType&&n.set("actor_type",e.actorType),e?.projectId&&n.set("project_id",e.projectId),e?.sessionId&&n.set("session_id",e.sessionId),e?.source&&n.set("source",e.source),e?.phase&&n.set("phase",e.phase),e?.outcome&&n.set("outcome",e.outcome),e?.resourceType&&n.set("resource_type",e.resourceType),e?.requestId&&n.set("request_id",e.requestId),e?.correlationId&&n.set("correlation_id",e.correlationId),e?.since&&n.set("since",e.since),e?.until&&n.set("until",e.until),e?.q&&n.set("q",e.q),e?.cursor&&n.set("cursor",e.cursor),e?.limit!=null&&n.set("limit",String(e.limit));let r=n.toString();return o(await i.get(`/accounts/${t}/audit${r?`?${r}`:""}`))}async function Sc(t,e){let n=new URLSearchParams;e?.action&&n.set("action",e.action),e?.actor&&n.set("actor",e.actor),e?.actorType&&n.set("actor_type",e.actorType),e?.sessionId&&n.set("session_id",e.sessionId),e?.source&&n.set("source",e.source),e?.phase&&n.set("phase",e.phase),e?.outcome&&n.set("outcome",e.outcome),e?.resourceType&&n.set("resource_type",e.resourceType),e?.requestId&&n.set("request_id",e.requestId),e?.correlationId&&n.set("correlation_id",e.correlationId),e?.since&&n.set("since",e.since),e?.until&&n.set("until",e.until),e?.q&&n.set("q",e.q),e?.cursor&&n.set("cursor",e.cursor),e?.limit!=null&&n.set("limit",String(e.limit));let r=n.toString();return o(await i.get(`/projects/${t}/audit${r?`?${r}`:""}`))}async function vc(t,e){let n=new URLSearchParams;e?.format&&n.set("format",e.format),e?.action&&n.set("action",e.action),e?.actor&&n.set("actor",e.actor),e?.actorType&&n.set("actor_type",e.actorType),e?.projectId&&n.set("project_id",e.projectId),e?.sessionId&&n.set("session_id",e.sessionId),e?.source&&n.set("source",e.source),e?.phase&&n.set("phase",e.phase),e?.outcome&&n.set("outcome",e.outcome),e?.resourceType&&n.set("resource_type",e.resourceType),e?.requestId&&n.set("request_id",e.requestId),e?.correlationId&&n.set("correlation_id",e.correlationId),e?.since&&n.set("since",e.since),e?.until&&n.set("until",e.until),e?.q&&n.set("q",e.q),e?.cursor&&n.set("cursor",e.cursor),e?.limit!=null&&n.set("limit",String(e.limit));let r=n.toString();return o(await i.get(`/accounts/${t}/audit/export${r?`?${r}`:""}`))}async function Cc(t){return o(await i.get(`/accounts/${t}/audit/webhooks`))}async function Rc(t,e){return o(await i.post(`/accounts/${t}/audit/webhooks`,e))}async function Tc(t,e,n){return o(await i.patch(`/accounts/${t}/audit/webhooks/${e}`,n))}async function Ac(t,e){return o(await i.delete(`/accounts/${t}/audit/webhooks/${e}`))}async function Ic(t,e){return o(await i.post(`/projects/${t}/secret-requests`,{names:e.names,labels:e.labels,descriptions:e.descriptions,scope:e.scope,expires_in_minutes:e.expiresInMinutes}),"Failed to mint secret-entry link")}async function jc(t,e){return o(await i.post(`/projects/${t}/connect-requests`,{slug:e.slug,expires_in_minutes:e.expiresInMinutes}),"Failed to mint connect link")}async function uy(t){return o(await i.get(`/approval-links/${t}`),"Failed to load approval")}async function Ec(t){let e=new URLSearchParams;t?.query&&e.set("query",t.query),t?.type&&e.set("type",t.type),t?.source&&e.set("source",t.source),t?.limit!==void 0&&e.set("limit",String(t.limit)),t?.offset!==void 0&&e.set("offset",String(t.offset));let n=e.toString()?`?${e.toString()}`:"";return o(await i.get(`/marketplace/items${n}`))}async function $c(){return o(await i.get("/marketplace/marketplaces"))}async function qc(){return o(await i.get("/marketplace/marketplaces/featured"))}async function Dc(t){return o(await i.get(`/marketplace/items/${encodeURIComponent(t)}`),"Item not found")}async function Mc(t,e){return o(await i.get(`/marketplace/items/${encodeURIComponent(t)}/file?path=${encodeURIComponent(e)}`),"File not found")}async function Uc(){return o(await i.get("/marketplace/sources"))}async function Oc(t){return o(await i.post("/marketplace/sources",t),"Failed to add marketplace source")}async function Fc(t){return o(await i.delete(`/marketplace/sources/${encodeURIComponent(t)}`),"Failed to remove marketplace source")}async function py(t,e){return o(await i.post(`/projects/${encodeURIComponent(t)}/marketplace/install-session`,{id:e}),"Failed to start marketplace install session")}async function dy(t){return o(await i.get(`/templates/${encodeURIComponent(t)}`))}async function gy(t,e){return o(await i.post(`/templates/${encodeURIComponent(t)}/install`,e))}async function Lc(t){return o(await i.get(`/projects/${t}/apps`),"Failed to list Apps").apps}async function Gc(t,e){return o(await i.post(`/projects/${t}/apps`,e),"Failed to create App")}async function Bc(t,e){return o(await i.get(`/projects/${t}/apps/${e}`),"Failed to load App")}async function Kc(t,e,n){return o(await i.patch(`/projects/${t}/apps/${e}`,n),"Failed to update App")}async function Hc(t,e){return o(await i.delete(`/projects/${t}/apps/${e}`),"Failed to delete App")}async function Nc(t,e){return o(await i.get(`/projects/${t}/apps/${e}/access`),"Failed to load App access policy")}async function Wc(t,e,n){return o(await i.patch(`/projects/${t}/apps/${e}/access`,n),"Failed to update App access policy")}async function zc(t,e){return o(await i.post(`/projects/${t}/apps/${e}/access-session`,{}),"Failed to create App access session")}async function Qt(t,e){return o(await i.post(`/projects/${t}/apps/artifacts`,e),"Failed to register App artifact")}async function Yt(t,e,n){return o(await i.post(`/projects/${t}/apps/artifacts/${e}/finalize`,n),"Failed to finalize App artifact")}async function my(t){return t instanceof Uint8Array?t:new Uint8Array(await t.arrayBuffer())}async function fy(t){let e=Uint8Array.from(t),n=await globalThis.crypto.subtle.digest("SHA-256",e.buffer);return Array.from(new Uint8Array(n),r=>r.toString(16).padStart(2,"0")).join("")}async function Vc(t,e,n={}){let r=await my(e),s=n.mediaType??"application/gzip",c=await Qt(t,{kind:"archive",media_type:s});if(!c.upload)throw new Error("App artifact registration did not return an upload URL");if(r.byteLength>c.upload.max_bytes)throw new Error(`App artifact exceeds ${c.upload.max_bytes} bytes`);n.onProgress?.(0,r.byteLength);let u=await fetch(c.upload.url,{method:"PUT",body:new Blob([Uint8Array.from(r).buffer],{type:s}),signal:n.signal,headers:{"content-type":s,"x-upsert":"false"}});if(!u.ok){let p=await u.text().catch(()=>"");throw new Error(`App artifact upload failed with HTTP ${u.status}${p?`: ${p}`:""}`)}return n.onProgress?.(r.byteLength,r.byteLength),Yt(t,c.artifact.artifact_id,{sha256:await fy(r),size_bytes:r.byteLength})}async function Jc(t,e,n){return o(await i.post(`/projects/${t}/apps/${e}/deployments`,n),"Failed to create App deployment")}async function Xc(t,e){return o(await i.get(`/projects/${t}/apps/${e}/deployments`),"Failed to list App deployments").deployments}async function Qc(t,e,n){return o(await i.get(`/projects/${t}/apps/${e}/deployments/${n}`),"Failed to load App deployment")}async function Yc(t,e,n,r={}){let s=new URLSearchParams;r.after!==void 0&&s.set("after",String(r.after)),r.limit!==void 0&&s.set("limit",String(r.limit));let c=s.size?`?${s.toString()}`:"";return o(await i.get(`/projects/${t}/apps/${e}/deployments/${n}/logs${c}`),"Failed to load App logs")}async function Zc(t,e){return o(await i.post(`/projects/${t}/apps/${e}/start`,{}),"Failed to start App")}async function el(t,e){return o(await i.post(`/projects/${t}/apps/${e}/stop`,{}),"Failed to stop App")}async function tl(t,e,n){return o(await i.post(`/projects/${t}/apps/${e}/rollback`,{deployment_id:n}),"Failed to roll back App")}function yy(t){return t?t.runtimeReady!==void 0?t.runtimeReady===!0:t.opencode!==void 0?t.opencode==="ok"||t.opencode===!0:t.status!=="starting"&&t.status!=="down"&&t.status!=="error":!1}async function nl(t,e){let n=(t===void 0?L():t)||null;if(!n)return{status:0,ok:!1,health:null,body:""};let r=await q(`${n}/kortix/health`,{method:"GET",...e},{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 re={DESKTOP:"6080",DESKTOP_HTTPS:"6081",PRESENTATION_VIEWER:"3210",STATIC_FILE_SERVER:"3211",KORTIX_MASTER:"8000",BROWSER_STREAM:"9223",BROWSER_VIEWER:"9224",SSH:"22"};var du=/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s)"'<>]*/g,gu=/^https?:\/\/p(\d+)-([^.]+)\.localhost(?::(\d+))?(\/.*)?$/,mu=new Set([22,4096,parseInt(re.KORTIX_MASTER,10)]);function hy(t){return gu.test(t)}function Zt(t){if(!t)return"/";let e=t,n=e.indexOf("](");n!==-1&&(e=e.slice(0,n));let r=e.toLowerCase().indexOf("%5d(");return r!==-1&&(e=e.slice(0,r)),e?e.startsWith("/")?e:`/${e}`:"/"}function by(t){let e=t.indexOf("](");return e===-1?t:t.slice(0,e)}var xy=new Set(["'",'"',"`","<","(","["]),_y=new Set([">","'",'"',"`",")","]",",",";",".","!","?"]);function Py(t){let e=0,n=t.length;for(;e<n&&(t[e]===" "||t[e]===" ");)e++;for(;n>e&&(t[n-1]===" "||t[n-1]===" ");)n--;for(;e<n&&xy.has(t[e]);)e++;for(;n>e&&_y.has(t[n-1]);)n--;return t.slice(e,n)}function ky(t){return t.match(/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s"'<>)]*/i)?.[0]??null}var wy=/^\/proxy\/(\d{1,5})(\/.*)?$/,Sy=/^\/(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 fu(t){if(!t)return!1;try{let e=new URL(t);return e.hostname!=="localhost"&&e.hostname!=="127.0.0.1"?!1:Sy.test(e.pathname)}catch{return!1}}function ot(t){if(!t)return null;let e=Py(by(t.trim())),n=sl(e);if(n){let r=Zt(n.path||"/");return{originalUrl:`http://localhost:${n.port}${r}`,port:n.port,path:r}}try{let r=new URL(e);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(re.KORTIX_MASTER,10);if(s===u){let g=r.pathname.match(wy);if(g){let f=parseInt(g[1],10);if(f>=1&&f<=65535)return s=f,c=Zt(`${g[2]||"/"}${r.search}${r.hash}`),{originalUrl:`http://localhost:${s}${c}`,port:s,path:c}}}let p=Zt(c);return{originalUrl:`${r.protocol}//${r.hostname}:${s}${p}`,port:s,path:p}}catch{let r=ky(t);return r&&r!==t?ot(r):null}}function vy(t){let e=[],n=/```[\s\S]*?```/g,r;for(;(r=n.exec(t))!==null;)e.push([r.index,r.index+r[0].length]);let s=/`[^`\n]+`/g;for(;(r=s.exec(t))!==null;){let c=r.index,u=c+r[0].length;e.some(([g,f])=>c>=g&&u<=f)||e.push([c,u])}return e}function Cy(t,e){return e.some(([n,r])=>t>=n&&t<r)}function yu(t){let e=[],n=new Set,r=vy(t);du.lastIndex=0;let s;for(;(s=du.exec(t))!==null;){let c=ot(s[0]);if(!c)continue;let{originalUrl:u,port:p,path:g}=c;p<1||p>65535||mu.has(p)||n.has(u)||(n.add(u),e.push({originalUrl:u,port:p,path:g,startIndex:s.index,endIndex:s.index+u.length,inCodeBlock:Cy(s.index,r)}))}return e}function Ry(t){return yu(t).length>0}function Ty(t){try{let{hostname:e}=new URL(t);return e==="localhost"||e==="127.0.0.1"}catch{return!1}}function hu(t){return t.sandboxId.trim().length>0}function ue(t,e,n){let r=Zt(e);if(!hu(n))return Pu(t,r);if(!Ty(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}/${t}${r}`}return`http://p${t}-${n.sandboxId}.localhost:${n.backendPort}${r}`}function Ay(t,e){if(!t)return;let r=t.replace(/^\/workspace\//,"").replace(/^\/+/,"").split("/").filter(Boolean).map(s=>encodeURIComponent(s)).join("/");return ue(3211,`/open?path=/workspace/${r}`,e)}function bu(t){return`/open?path=/${(t.startsWith("/workspace")?t:`/workspace/${t.replace(/^\/+/,"")}`).split("/").filter(Boolean).map(r=>encodeURIComponent(r)).join("/")}`}function Iy(t){return`http://localhost:3211${bu(t)}`}function xu(){return"/health"}function jy(t){return ue(3211,xu(),t)}function Ey(t,e){return ue(t,"/",e)}function _u(t){let e=ot(t);return!(!e||mu.has(e.port)||fu(t))}function rl(t,e){if(!t)return t;let n=ot(t);return n?_u(n.originalUrl)?ue(n.port,n.path,e):n.originalUrl:t}function Pu(t,e="/"){return`http://localhost:${t}${e}`}var ku=/^https?:\/\/[^/]+\/v1\/p\/([^/]+)\/(\d+)(\/.*)?$/;function sl(t){let e=t.match(gu);if(e)return{port:parseInt(e[1],10),sandboxId:e[2],backendPort:e[3]?parseInt(e[3],10):80,path:e[4]||"/"};let n=t.match(ku);if(n)try{let r=new URL(t);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 $y(t){try{let e=sl(t);return e?`http://localhost:${e.port}${e.path}`:null}catch{return null}}function qy(t){return hy(t)||ku.test(t)}function Dy(t){try{let{hostname:e,port:n}=new URL(t);return(e==="localhost"||e==="127.0.0.1")&&n!==""}catch{return!1}}var it="/web-proxy/";function My(t,e){try{let n=new URL(t);if(n.protocol!=="http:"&&n.protocol!=="https:")return null;let r=n.protocol.replace(":",""),s=`${it}${r}/${n.host}${n.pathname}${n.search}${n.hash}`,c=parseInt(re.KORTIX_MASTER,10);return`${ue(c,"/",e).replace(/\/$/,"")}${s}`}catch{return null}}function Uy(t){try{let e=new URL(t),n=e.pathname.indexOf(it);if(n===-1)return null;let s=e.pathname.slice(n+it.length).match(/^(https?)\/([\w.\-]+(?::\d+)?)(\/.*)?$/);if(!s)return null;let c=s[1],u=s[2],p=s[3]||"/";return`${c}://${u}${p}${e.search}${e.hash}`}catch{return null}}function Oy(t){try{return new URL(t).pathname.includes(it)}catch{return t.includes(it)}}function Fy(t){if(!t)return!1;let e=t.trim();return!!(/^https?:\/\/(?!localhost|127\.0\.0\.1)/i.test(e)||/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(e))}function Ly(t){let e=t.trim();return e?/^https?:\/\//i.test(e)?e:/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(e)?`https://${e}`:null:null}var wu="frontend";function en(t,e,n){(t==="error"?console.error:t==="warn"?console.warn:t==="debug"?console.debug:console.log)(`[${wu}] ${e}`,...n?[n]:[]);try{ce().app.log({service:wu,level:t,message:e,extra:n})}catch{}}var pe={debug:(t,e)=>en("debug",t,e),info:(t,e)=>en("info",t,e),warn:(t,e)=>en("warn",t,e),error:(t,e)=>en("error",t,e)};function Su(t){return{type:"heartbeat-gap",gapMs:t}}function vu(t){switch(t.type){case"message.updated":return{type:"message.updated",sessionID:t.properties.sessionID,message:t.properties.info};case"message.removed":return{type:"message.removed",sessionID:t.properties.sessionID,messageID:t.properties.messageID};case"message.part.updated":return{type:"message.part.updated",sessionID:t.properties.sessionID,part:t.properties.part};case"message.part.removed":return{type:"message.part.removed",sessionID:t.properties.sessionID,messageID:t.properties.messageID,partID:t.properties.partID};case"session.status":return{type:"session.status",sessionID:t.properties.sessionID,status:t.properties.status};case"session.idle":return{type:"session.idle",sessionID:t.properties.sessionID};case"session.error":return{type:"session.error",sessionID:t.properties.sessionID,error:t.properties.error};case"question.asked":return{type:"question.asked",sessionID:t.properties.sessionID,requestID:t.properties.id,questions:t.properties.questions,tool:t.properties.tool};case"question.replied":return{type:"question.answered",sessionID:t.properties.sessionID,requestID:t.properties.requestID,outcome:"replied",answers:t.properties.answers};case"question.rejected":return{type:"question.answered",sessionID:t.properties.sessionID,requestID:t.properties.requestID,outcome:"rejected"};case"permission.asked":return{type:"permission.asked",sessionID:t.properties.sessionID,requestID:t.properties.id,permission:t.properties.permission,patterns:t.properties.patterns,tool:t.properties.tool};case"permission.replied":return{type:"permission.replied",sessionID:t.properties.sessionID,requestID:t.properties.requestID,reply:t.properties.reply};case"todo.updated":return{type:"todo.updated",sessionID:t.properties.sessionID,todos:t.properties.todos};case"server.connected":return{type:"connection",status:"connected"};default:return null}}var Gy={now:()=>Date.now(),setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t)},By=16,Ky=8,Hy=6e4,Ny=5e3,Wy=250,zy=1e3,Vy=3e4,Jy=5,Xy=3e3,Qy=3e4,Yy=2e4,Zy=2e3,eh=8;function th(t){if(t.type==="session.status")return`session.status:${t.properties.sessionID}`;if(t.type==="lsp.updated")return"lsp.updated"}function Cu(t){if(t.aborted)return{promise:Promise.resolve(),cleanup:()=>{}};let e=()=>{};return{promise:new Promise(r=>{e=()=>r(),t.addEventListener("abort",e,{once:!0})}),cleanup:()=>t.removeEventListener("abort",e)}}function tn(t){let{client:e,onEvent:n,onGapRehydrate:r,onParked:s,signal:c}=t,u=t.timers??Gy,p=t.connectTimeoutMs??Yy,g=t.heartbeatTimeoutMs??Hy,f=t.maxConsecutiveHardFailures??eh,m=new AbortController,_=()=>m.abort();c&&(c.aborted?m.abort():c.addEventListener("abort",_,{once:!0}));let x=u.now(),I=[],T,l=0,h=new Map,a=()=>{if(T&&u.clearTimeout(T),T=void 0,I.length===0)return;let j=I;I=[],h.clear(),l=u.now(),x=u.now();for(let v of j)if(v)try{n(v.event)}catch(k){console.warn("[opencode-events] event handler threw, skipping",k)}},A=()=>{if(T)return;let j=u.now()-l;T=u.setTimeout(a,Math.max(0,By-j))};return(async()=>{let j=0,v=0;for(;!m.signal.aborted;){let k=!1,$=!1,w,F,K=null,y=u.now(),C=new AbortController,M=Cu(m.signal);M.promise.then(()=>C.abort());try{let D=await new Promise((dn,Fe)=>{let X=!1;F=u.setTimeout(()=>{X||(X=!0,pe.warn("SSE connect timed out, forcing reconnect",{connectTimeoutMs:p}),C.abort(),Fe(new Error(`SSE connect timed out after ${p}ms`)))},p),e.global.event({signal:C.signal,sseDefaultRetryDelay:Xy,sseMaxRetryDelay:Qy,sseMaxRetryAttempts:1}).then(Z=>{X||(X=!0,u.clearTimeout(F),dn(Z))},Z=>{X||(X=!0,u.clearTimeout(F),Fe(Z))})}),{stream:U}=D;x=u.now();let N=()=>{u.clearTimeout(w),w=u.setTimeout(()=>{pe.warn("SSE heartbeat timeout, forcing reconnect"),C.abort()},g)};N();let Ce=u.now(),xp=U[Symbol.asyncIterator]();for(;!C.signal.aborted;){let dn=xp.next().then(oe=>({kind:"next",result:oe}),oe=>({kind:"error",error:oe})),Fe=Cu(C.signal),X=await Promise.race([dn,Fe.promise.then(()=>({kind:"aborted"}))]);if(Fe.cleanup(),X.kind==="aborted")break;if(X.kind==="error")throw X.error;if(X.result.done)break;k=!0,N();let Z=X.result.value,mt=Z&&typeof Z=="object"&&"payload"in Z?Z.payload:Z;if(!mt?.type)continue;let gn=th(mt);if(gn){let oe=h.get(gn);oe!==void 0&&(I[oe]=void 0),h.set(gn,I.length)}I.push({type:mt.type,event:mt}),A(),!(u.now()-Ce<Ky)&&(Ce=u.now(),await new Promise(oe=>u.setTimeout(oe,0)))}$=k}catch(D){if(m.signal.aborted)break;K=D;let U=String(D),N=U.includes("401")||U.includes("403")||U.includes("Unauthorized")||U.includes("Token refresh failed");if(pe.error("SSE event stream error",{error:U,retryCount:j,isAuthError:N}),N)try{Ke(),await wt(),pe.info("SSE: refreshed auth token after auth error")}catch(Ce){pe.error("SSE: failed to refresh auth token",{error:String(Ce)})}}finally{u.clearTimeout(w),u.clearTimeout(F),C.abort(),M.cleanup(),a()}if(m.signal.aborted)break;let z=u.now()-y,V=K?.cause?.status;if(v=!k&&(typeof V=="number"&&V>=400||z<Zy)?v+1:0,v>=f){pe.error("SSE event stream parked \u2014 giving up after consecutive hard failures",{consecutiveFailures:v,lastError:String(K)});try{s?.({consecutiveFailures:v,lastError:K})}catch(D){console.warn("[opencode-events] onParked handler threw",D)}break}let Q=u.now()-x;Q>Ny&&r?.(Q),$?j=0:(j++,j>1&&pe.warn("SSE event stream reconnecting",{retryCount:j}));let H=$?Wy:Math.min(zy*2**Math.min(j-1,Jy),Vy);await new Promise(D=>{let U=u.setTimeout(D,H),N=()=>{u.clearTimeout(U),D()};m.signal.addEventListener("abort",N,{once:!0})})}})(),{close:()=>{m.abort(),c&&c.removeEventListener("abort",_),T&&u.clearTimeout(T)}}}function nh(){return ce()}var nn=new Map,at=class extends Error{constructor(e){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 \`${e}\`.`),this.name="SessionNotReadyError"}};function Ru(t,e){yt(t,e);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 R(`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 h=E().backendUrl??t.backendUrl,a=80,A=n(h);return A&&(a=A.port?Number(A.port):A.protocol==="https:"?443:80),{sandboxId:l,backendPort:a,apiBaseUrl:h}}let s={list:ss,get:os,create:is,updateName:as,leave:bs,members:cs,invite:ls,removeMember:ys,updateMemberRole:hs,invites:us,cancelInvite:ps,resendInvite:ds,tokens:{list:hc,create:bc,revoke:xc},audit:{log:wc,export:vc,webhooks:{list:Cc,create:Rc,update:Tc,remove:Ac}}},c={accountState:ca,accountStateMinimal:la,transactions:ua,transactionsSummary:pa,creditBreakdown:da,usageHistory:ga,usageRollup:Ca,sessionCosts:{list:Aa,get:Vt},tierConfigurations:ma,checkout:{createSession:l=>fa(l),confirmSession:(l,h)=>ya(l,h)},subscription:{createPortalSession:(l,h)=>ha(l,h),cancel:(l,h)=>ba(l,h),reactivate:l=>xa(l),scheduleDowngrade:(l,h,a)=>_a(l,h,a),cancelScheduledChange:l=>Pa(l),prorationPreview:(l,h)=>ka(l,h)},credits:{purchase:l=>wa(l),autoTopupSettings:l=>Sa(l),configureAutoTopup:l=>va(l)}},u={describe:gs,accept:ms,decline:fs},p={list:ke,listForAccount:_s,get:qt,detail:Dt,create:Ss,createRepo:vs,provision:Cs,update:Ot,archive:Ft,llmCatalog:Mt,modelPicker:Ut,sandboxHealth:Kt,sandboxTemplates:Yi,sessions:De,createSession:Me},g={linkRepository:js,getInstallation:Es,listInstallations:$s,listLinkableInstallations:qs,listRepositories:Ds,listRepositoryBranches:Ms,linkInstallation:Os,saveInstallation:Us,deleteInstallation:Fs},f={list:mc,create:fc,revoke:yc},m=zi,_={items:l=>Ec(l),item:l=>Dc(l),itemFile:(l,h)=>Mc(l,h),marketplaces:()=>$c(),featured:()=>qc(),sources:{list:()=>Uc(),add:l=>Oc(l),remove:l=>Fc(l)}};function x(l){return{catalog:()=>Lt(l),tools:()=>tt(l),search:(...h)=>bi(l,...h),describe:(...h)=>xi(l,...h),call:(...h)=>_i(l,...h),uploadAttachment:(...h)=>Pi(l,...h)}}function I(l){let h={list:()=>ki(l),listAll:()=>wi(l),reconcile:(...a)=>Si(l,...a),reconcileMember:(...a)=>vi(l,...a),updateCredential:(...a)=>Ci(l,...a),revoke:(...a)=>Ri(l,...a),activate:(...a)=>Ti(l,...a),setDefault:(...a)=>Ai(l,...a),pipedreamConnect:(...a)=>Ii(l,...a),pipedreamFinalize:(...a)=>ji(l,...a)};return{get:a=>qt(l,a),detail:()=>Dt(l),audit:a=>Sc(l,a),update:a=>Ot(l,a),archive:()=>Ft(l),llmCatalog:()=>Mt(l),modelPicker:()=>Ut(l),sandboxHealth:()=>Kt(l),onboardingComplete:(...a)=>Is(l,...a),apps:{list:()=>Lc(l),create:a=>Gc(l,a),get:a=>Bc(l,a),update:(...a)=>Kc(l,...a),access:{get:(...a)=>Nc(l,...a),update:(...a)=>Wc(l,...a),session:(...a)=>zc(l,...a)},remove:a=>Hc(l,a),artifacts:{register:a=>Qt(l,a),uploadArchive:(...a)=>Vc(l,...a),finalize:(...a)=>Yt(l,...a)},deployments:{create:(...a)=>Jc(l,...a),list:a=>Xc(l,a),get:(...a)=>Qc(l,...a),logs:(...a)=>Yc(l,...a)},start:a=>Zc(l,a),stop:a=>el(l,a),rollback:(...a)=>tl(l,...a)},tokens:{list:()=>_c(l),create:a=>Pc(l,a),revoke:a=>kc(l,a)},setupLinks:{requestSecret:a=>Ic(l,a),requestConnector:a=>jc(l,a)},validateManifest:a=>ks(l,a),gitToken:()=>ws(l),secrets:{list:()=>oi(l),upsert:a=>ai(l,a),setStrategy:(...a)=>ci(l,...a),broker:(...a)=>li(l,...a),remove:a=>mi(l,a),setPersonal:(...a)=>fi(l,...a),removePersonal:a=>yi(l,a),setGitCredential:a=>gi(l,a),startProviderOAuth:(...a)=>ui(l,...a),pollProviderOAuth:(...a)=>pi(l,...a),removeProviderOAuth:a=>di(l,a)},access:{list:()=>Ks(l),invite:(...a)=>Ws(l,...a),update:(...a)=>Hs(l,...a),revoke:a=>Ns(l,a),pendingInvites:()=>zs(l),resendInvite:(...a)=>Js(l,...a),revokeInvite:(...a)=>Vs(l,...a),requests:()=>Ls(l),approveRequest:(...a)=>Gs(l,...a),rejectRequest:(...a)=>Bs(l,...a),groupGrants:()=>Xs(l),attachGroupGrant:(...a)=>Qs(l,...a),updateGroupGrant:(...a)=>Ys(l,...a),detachGroupGrant:a=>Zs(l,a),resourceGrants:{list:()=>ei(l),create:a=>ti(l,a),remove:a=>ni(l,a)}},connectors:{...x(l),list:()=>Ei(l),config:(...a)=>Fi(l,...a),create:(...a)=>Bi(l,...a),remove:(...a)=>Hi(l,...a),sync:()=>$i(l),auth:{discover:(...a)=>Ki(l,...a)},setName:(...a)=>Li(l,...a),setCredentialMode:(...a)=>qi(l,...a),setAuthorizationStrategy:(...a)=>Di(l,...a),setCredential:(...a)=>Vi(l,...a),setSensitive:(...a)=>Mi(l,...a),connections:h,policies:{get:(...a)=>Ui(l,...a),set:(...a)=>Oi(l,...a)},pipedream:{listApps:(...a)=>Ni(l,...a),listSections:(...a)=>Wi(l,...a),connect:(...a)=>Gi(l,...a),finalize:(...a)=>Ji(l,...a)},discover:{list:(...a)=>Gt(l,...a),detail:(...a)=>Bt(l,...a)}},policies:{list:()=>Xi(l),set:(...a)=>Qi(l,...a)},triggers:{list:()=>Vo(l),create:(...a)=>Jo(l,...a),update:(...a)=>Xo(l,...a),remove:(...a)=>Qo(l,...a),fire:(...a)=>Zo(l,...a),setActivation:(...a)=>Yo(l,...a)},files:{list:a=>ao(l,a),read:(a,A)=>lo(l,a,A),search:(...a)=>co(l,...a),archive:(...a)=>uo(l,...a),history:(...a)=>yo(l,...a)},git:{commits:()=>go(l),commit:a=>mo(l,a),commitDiff:a=>fo(l,a),branches:()=>po(l),versionDiff:(...a)=>ho(l,...a),inviteCollaborator:(...a)=>Ps(l,...a)},changeRequests:{list:()=>bo(l),get:a=>xo(l,a),diff:a=>_o(l,a),mergePreview:a=>Po(l,a),open:(...a)=>ko(l,...a),merge:(...a)=>wo(l,...a),close:(...a)=>So(l,...a),reopen:(...a)=>vo(l,...a),requestChanges:(...a)=>Co(l,...a)},sessions:{list:a=>De(l,a),create:a=>Me(l,a),ensureWarm:()=>Do(l),claimWarm:a=>Mo(l,a)},review:{list:a=>lc(l,a),get:a=>uc(l,a),submit:a=>pc(l,a),act:(...a)=>dc(l,...a),bulkAct:a=>gc(l,a)},approvals:{list:a=>ri(l,a),resolve:(...a)=>ii(l,...a),sessionsNeedingInput:a=>si(l,a)},gateway:{logs:a=>Va(l,a),log:a=>Ja(l,a),overview:a=>Xa(l,a),series:a=>Qa(l,a),breakdown:a=>Ya(l,a),sessions:a=>Za(l,a),errors:a=>ec(l,a),budgets:()=>tc(l),setBudget:a=>nc(l,a),deleteBudget:a=>rc(l,a),keys:()=>sc(l),createKey:a=>ic(l,a),revokeKey:a=>oc(l,a),routing:{get:()=>Ha(l),set:a=>Na(l,a),reset:()=>Wa(l),preview:a=>za(l,a)},playground:(a,A,j)=>ac(l,a,A,j)},channels:{slack:{installation:()=>Ia(l),connect:a=>ja(l,a),mode:()=>Ea(l),manifest:()=>$a(l),disconnect:()=>qa(l),getFile:a=>Da(l,a),uploadFile:a=>Ma(l,a)},email:{installation:a=>Oa(l,a),mode:()=>Fa(l),connect:a=>La(l,a),disconnect:a=>Ga(l,a),updatePolicy:(...a)=>Ba(l,...a)},voice:{setBotName:a=>Ka(l,a)}},updateFeatureFlag:(...a)=>Rs(l,...a),updateExperimentalFeature:(...a)=>Ts(l,...a),modelDefaults:{get:()=>ta(l),set:a=>na(l,a),clear:a=>ra(l,a)},setDefaultAgent:a=>oa(l,a),sandbox:{list:()=>oo(l),snapshots:()=>Zi(l),rebuildSnapshot:a=>eo(l,a),fixWithAgent:()=>to(l),createTemplate:a=>no(l,a),updateTemplate:(...a)=>ro(l,...a),removeTemplate:a=>so(l,a),buildTemplate:a=>io(l,a),setProvider:a=>As(l,a)},setAgentScope:(...a)=>sa(l,...a),session:a=>T(l,a)}}function T(l,h){let a=null,A,j,v=null;async function k(){v||(v=Ht(l,h,{showErrors:!1}).then(y=>{let C=typeof y.metadata?.opencode_model=="string"?y.metadata.opencode_model.trim():"",M=C.indexOf("/"),z=M>0&&M<C.length-1?{providerID:C.slice(0,M),modelID:C.slice(M+1)}:void 0,V=y.agent_name?.trim()||void 0;return{model:z,agent:V}}));try{return await v}catch(y){throw v=null,y}}function $(){if(a)return a;let y=nu(l,h);return y&&(a=y),a}async function w(y){let C=$();if(C)return C;let M=y?.readyTimeoutMs??18e4,z=`${l}
20
- ${h}`,V=nn.get(z);if(V)return a=await V,a;let J=(async()=>{let Q=Date.now()+M,H=()=>Math.max(0,Q-Date.now()),D=await Se(l,h,Math.min(3e4,H()));for(;Date.now()<Q&&(D==null||(D.stage==="provisioning"||D.stage==="starting")&&D.retriable);)await new Promise(Ce=>setTimeout(Ce,Math.min(1e3,H()))),D=await Se(l,h,Math.min(3e4,H()));if(!D||D.stage!=="ready"||!D.sandbox||!D.opencode_session_id)throw new R(`Session runtime not ready (stage: ${D?.stage??"unknown"})`,{code:"RUNTIME_UNAVAILABLE"});let U=D.sandbox.external_id;if(!U)throw new R("Session sandbox has no external_id \u2014 cannot resolve its runtime URL",{code:"RUNTIME_UNAVAILABLE"});let N=St(U);return Ol(N,U),{opencodeSessionId:D.opencode_session_id,runtimeUrl:N,sandboxId:U}})();nn.set(z,J);try{return a=await J,a}finally{nn.get(z)===J&&nn.delete(z)}}function F(y){let C=$();if(!C)throw new at(y);return C}function K(){a=null,su(l,h)}return{get:y=>Ht(l,h,y),cost:()=>Vt(h,{projectId:l}),update:y=>Lo(l,h,y),delete:()=>(K(),Go(l,h)),start:(...y)=>Se(l,h,...y),restart:()=>(K(),rt(l,h)),stop:()=>(K(),st(l,h)),configState:()=>Bo(l,h),reloadConfig:y=>(K(),Ko(l,h,y)),reloadConfigStream:(...y)=>(K(),Ho(l,h,...y)),setSharing:y=>Io(l,h,y),previews:()=>jo(l,h),commit:y=>Ro(l,h,y),publicShares:{list:()=>Eo(l,h),create:(...y)=>$o(l,h,...y),revoke:(...y)=>qo(l,h,...y)},audit:(y,C)=>Uo(l,h,y,C),transcript:y=>Oo(l,h,y),voiceTranscript:y=>Fo(l,h,y),ensureReady:w,health:y=>nl($()?.runtimeUrl??null,y),previewUrl:(y,C="/")=>ue(y,C,r(F("previewUrl").sandboxId)),proxyUrl:y=>rl(y,r(F("proxyUrl").sandboxId)),setModel:y=>{A=y},changeModel:async y=>{let C=await zo(l,h,y);return v=null,C},scope:()=>No(l,h),rescope:y=>Wo(l,h,y),setAgent:y=>{j=y},send:async(y,C)=>{let{opencodeSessionId:M,runtimeUrl:z}=await w(),V=C?.model??A,J=C?.agent??j,Q=V&&J?{}:await k(),H=V??Q.model,D=J??Q.agent;return te(z).session.prompt({sessionID:M,parts:[{type:"text",text:y}],...H?{model:H}:{},...D?{agent:D}:{}})},abort:async()=>{let{opencodeSessionId:y,runtimeUrl:C}=await w();return te(C).session.abort({sessionID:y})},rewind:async y=>{let{opencodeSessionId:C,runtimeUrl:M}=await w();return te(M).session.revert({sessionID:C,messageID:y})},restoreRewind:async()=>{let{opencodeSessionId:y,runtimeUrl:C}=await w();return te(C).session.unrevert({sessionID:y})},stream:async y=>{let{runtimeUrl:C}=await w();return tn({client:te(C),onEvent:y.onEvent,onGapRehydrate:y.onGapRehydrate,signal:y.signal})},get runtime(){return te(F("runtime").runtimeUrl)},files:{list:async y=>We(y,(await w()).runtimeUrl),read:async y=>je(y,(await w()).runtimeUrl),readBlob:async y=>Ee(y,(await w()).runtimeUrl),status:async()=>ze((await w()).runtimeUrl),findFiles:async(y,C)=>Ve(y,C,(await w()).runtimeUrl),findText:async y=>Je(y,(await w()).runtimeUrl),upload:async(y,C,M)=>$e(y,C,M,(await w()).runtimeUrl),create:async y=>Xe(y,(await w()).runtimeUrl),copy:async(y,C)=>Qe(y,C,(await w()).runtimeUrl),remove:async y=>Ye(y,(await w()).runtimeUrl),mkdir:async y=>Ze(y,(await w()).runtimeUrl),rename:async(y,C)=>et(y,C,(await w()).runtimeUrl)}}}return{config:t,accounts:s,accountInvites:u,projects:p,connectors:x(),project:I,session:T,github:g,billing:c,sandboxShares:f,transcribe:cc,connectStatus:m,marketplace:_,validateToken:xs,runtime:nh}}function Tu(){let t=typeof crypto<"u"?crypto:void 0;if(t?.randomUUID)return t.randomUUID();let e=new Uint8Array(16);if(t?.getRandomValues)t.getRandomValues(e);else for(let r=0;r<16;r++)e[r]=Math.floor(Math.random()*256);e[6]=e[6]&15|64,e[8]=e[8]&63|128;let n=[...e].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 il={thinking:!1,toolDetails:!0,assistantMetadata:!0};function rh(t){return t&&t.charAt(0).toUpperCase()+t.slice(1)}function sh(t){let e=t/1e3;if(e<60)return`${e.toFixed(1)}s`;let n=Math.floor(e/60),r=e%60;return`${n}m ${r.toFixed(0)}s`}function ih(t,e){if(t.type==="text"&&!t.synthetic)return`${t.text??""}
19
+ `);let T=Sm(I);if(T){if(r(T),T.type==="error")throw new R(T.error,{status:T.status,code:T.code,data:{reason:T.reason}});T.type==="done"&&(f=T.result)}}}}finally{u.cancel().catch(()=>{})}if(!f)throw new Error("Reload stream ended without a result");return f}async function Zo(t,e){return o(await i.get(`/projects/${t}/sessions/${encodeURIComponent(e)}/scope`))}async function ea(t,e,n){return o(await i.put(`/projects/${t}/sessions/${encodeURIComponent(e)}/scope`,n))}async function ta(t,e,n){return o(await i.put(`/projects/${t}/sessions/${encodeURIComponent(e)}/model`,{opencode_model:n}))}async function na(t){return o(await i.get(`/projects/${t}/triggers`))}async function ra(t,e){return o(await i.post(`/projects/${t}/triggers`,e))}async function sa(t,e,n){return o(await i.patch(`/projects/${t}/triggers/${e}`,n))}async function ia(t,e){return o(await i.delete(`/projects/${t}/triggers/${e}`))}async function oa(t,e){return o(await i.patch(`/projects/${t}/triggers/activation`,{paused:e}))}async function aa(t,e){return o(await i.post(`/projects/${t}/triggers/${e}/fire`,{}))}var ue=new Map;function ca(t,e){return`${t}::${e}`}function gu(t,e){ue.delete(t),ue.set(t,e)}function mu(t,e){let n=ca(t,e),r=ue.get(n);return r&&gu(n,r),r}function fu(t,e,n){let r=ca(t,e);if(!ue.has(r)&&ue.size>=512){let s=ue.keys().next().value;s!==void 0&&ue.delete(s)}gu(r,n)}function yu(t,e){ue.delete(ca(t,e))}function vm(t){if(t.status!=="running"||!t.sandbox_id||!t.sandbox_provider||!t.sandbox_url||!t.opencode_session_id)return null;let e=t.sandbox_url.match(/\/p\/([^/]+)\//)?.[1];return e?{stage:"ready",agent_name:t.agent_name??"default",retriable:!0,sandbox:{sandbox_id:t.sandbox_id,session_id:t.session_id,project_id:t.project_id,account_id:t.account_id,provider:t.sandbox_provider,external_id:e,base_url:t.sandbox_url,status:"active",config:{},metadata:t.metadata,last_used_at:t.updated_at,created_at:t.created_at,updated_at:t.updated_at},opencode_session_id:t.opencode_session_id,runtime_url:t.sandbox_url}:null}var Vt=class extends Error{status;code;terminal;constructor(e,n){super(e),this.name="SessionStartError",this.status=n.status,this.code=n.code,this.terminal=n.terminal}};function Cm(t){return t instanceof Error&&t.name==="SessionStartError"}function Rm(t){let e=t,n=e?.status,r=e?.code??e?.details?.code??e?.details?.error,s=e?.message||"Unable to start this session";return n&&n>=400&&n<500&&n!==408&&n!==429?new Vt(s,{status:n,code:r,terminal:!0}):null}async function ve(t,e,n){let r=n&&n>0?`?wait_ms=${Math.floor(n)}`:"",s=await i.post(`/projects/${t}/sessions/${e}/start${r}`,{},{showErrors:!1});if(!s.success||!s.data){let p=Rm(s.error);if(p&&!(p.status===404&&Uo(e)))throw p;return null}let c=s.data,u=c.sandbox?.external_id;return c.stage==="ready"&&u&&c.opencode_session_id&&fu(t,e,{opencodeSessionId:c.opencode_session_id,runtimeUrl:vt(u),sandboxId:u}),c}function Tm(t,e){return["session-start",t,e]}async function la(t){return o(await i.get(`/projects/${t}/model-defaults`))}async function ua(t,e){return o(await i.put(`/projects/${t}/model-defaults`,e))}async function pa(t,e){let n=new URLSearchParams({scope:e.scope,...e.agentName?{agentName:e.agentName}:{}}).toString();return o(await i.delete(`/projects/${t}/model-defaults?${n}`))}async function Am(t,e){return o(await i.put(`/projects/${t}/model-enablement`,{modelOverrides:e}))}async function da(t,e,n){let r=jm(n);return o(await i.put(`/projects/${t}/agents/${encodeURIComponent(e)}/scope`,r))}function hu(t){let e=[];for(let n of t){let r=n.trim();r&&!e.includes(r)&&e.push(r)}return e}function Im(t,e){if(t.length!==e.length)return!1;let n=new Set(e);return t.every(r=>n.has(r))}function jm(t){let e=t.connectors_required?hu(t.connectors_required):void 0,n=t.connectors_personal?hu(t.connectors_personal):void 0;if(e&&n&&!Im(e,n))throw new Error("connectors_personal must match connectors_required when both fields are present");let r={...t};return delete r.connectors_personal,(e!==void 0||n!==void 0)&&(r.connectors_required=e??n),r}async function Em(t,e){let n=o(await i.get(`/projects/${t}/agents/${encodeURIComponent(e)}/config`));return{...n,block:n.block?ga(n.block):null}}async function $m(t,e,n){let r=ga(n),s=o(await i.put(`/projects/${t}/agents/${encodeURIComponent(e)}/config`,r));return{...s,block:s.block?ga(s.block):null}}function bu(t){let e=[];for(let n of t){let r=n.trim();r&&!e.includes(r)&&e.push(r)}return e}function qm(t,e){if(t.length!==e.length)return!1;let n=new Set(e);return t.every(r=>n.has(r))}function ga(t){let e=t.connectors_required?bu(t.connectors_required):void 0,n=t.connectors_personal?bu(t.connectors_personal):void 0;if(e&&n&&!qm(e,n))throw new Error("connectors_personal must match connectors_required when both fields are present");let r={...t};return delete r.connectors_personal,(e!==void 0||n!==void 0)&&(r.connectors_required=e??n),r}async function Dm(t,e,n){return o(await i.post(`/projects/${t}/secrets/${encodeURIComponent(e)}/grant`,{agent:n}))}async function ma(t,e){return o(await i.put(`/projects/${t}/default-agent`,{agent:e}))}function Jt(){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}}}function Mm(t){let e=t.trim().toLowerCase();return e===""||e==="free"||e==="none"?"free":e==="enterprise"?"enterprise":"team"}function Um(t){let e=t?.plan;if(e)return{family:e.family,label:e.label,sublabel:e.sublabel??null,isGrandfathered:e.is_grandfathered===!0};let n=t??Jt(),r=(n.subscription?.tier_key||n.tier?.name||"none").toString(),s=(n.tier?.display_name||"").trim()||r;return{family:Mm(r),label:s,sublabel:null,isGrandfathered:!1}}async function fa(t){let e=new URLSearchParams;t?.skipCache&&e.set("skip_cache","true"),t?.accountId&&e.set("account_id",t.accountId);let n=e.toString(),r=n?`?${n}`:"",s=await i.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?Jt():s.data}async function ya(t){let e=new URLSearchParams;t?.skipCache&&e.set("skip_cache","true"),t?.accountId&&e.set("account_id",t.accountId);let n=e.toString(),r=n?`?${n}`:"",s=await i.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?Jt():s.data}async function ha(t){let e=new URLSearchParams;t?.accountId&&e.set("account_id",t.accountId),t?.limit!=null&&e.set("limit",String(t.limit)),t?.offset!=null&&e.set("offset",String(t.offset)),t?.typeFilter&&e.set("type_filter",Array.isArray(t.typeFilter)?t.typeFilter.join(","):t.typeFilter);let n=e.toString();return o(await i.get(`/billing/transactions${n?`?${n}`:""}`))}async function ba(t){let e=new URLSearchParams;t?.accountId&&e.set("account_id",t.accountId),t?.days!=null&&e.set("days",String(t.days));let n=e.toString();return o(await i.get(`/billing/transactions/summary${n?`?${n}`:""}`))}async function xa(){return o(await i.get("/billing/credit-breakdown"))}async function _a(t){let e=t!=null?`?days=${t}`:"";return o(await i.get(`/billing/usage-history${e}`))}async function Pa(){return o(await i.get("/billing/tier-configurations"))}async function Om(t){let e=t.accountId?`?account_id=${encodeURIComponent(t.accountId)}`:"";return De(t,`/v1/billing/account-state${e}`)}async function ka(t){return o(await i.post("/billing/create-checkout-session",{account_id:t.accountId,tier_key:t.tierKey,success_url:t.successUrl,cancel_url:t.cancelUrl,commitment_type:t.commitmentType,locale:t.locale,server_type:t.serverType,location:t.location}),"Failed to create checkout session")}async function wa(t,e){return o(await i.post("/billing/confirm-checkout-session",{account_id:e,session_id:t}),"Failed to confirm checkout session")}async function Sa(t,e){return o(await i.post("/billing/create-portal-session",{account_id:e,return_url:t}),"Failed to create portal session")}async function va(t,e){return o(await i.post("/billing/cancel-subscription",{account_id:e,feedback:t}),"Failed to cancel subscription")}async function Ca(t){return o(await i.post("/billing/reactivate-subscription",{account_id:t}),"Failed to reactivate subscription")}async function Ra(t,e,n){return o(await i.post("/billing/schedule-downgrade",{account_id:n,target_tier_key:t,commitment_type:e}),"Failed to schedule downgrade")}async function Ta(t){return o(await i.post("/billing/cancel-scheduled-change",{account_id:t}),"Failed to cancel scheduled change")}async function Aa(t,e){let n=new URLSearchParams({new_price_id:t});return e&&n.set("account_id",e),o(await i.get(`/billing/proration-preview?${n.toString()}`),"Failed to load proration preview")}async function Ia(t){return o(await i.post("/billing/purchase-credits",{amount:t.amount,account_id:t.accountId,success_url:t.successUrl,cancel_url:t.cancelUrl}),"Failed to purchase credits")}async function ja(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return o(await i.get(`/billing/auto-topup/settings${e}`),"Failed to load auto-topup settings")}async function Ea(t){return o(await i.post("/billing/auto-topup/configure",{account_id:t.accountId,enabled:t.enabled,threshold:t.threshold,amount:t.amount}),"Failed to configure auto-topup")}async function Fm(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return o(await i.get(`/billing/auto-topup/setup-status${e}`,{timeout:8e3,showErrors:!1}),"Failed to load auto-topup setup status")}async function Lm(t){return o(await i.post("/billing/create-per-seat-checkout",{account_id:t.accountId,success_url:t.successUrl,cancel_url:t.cancelUrl,locale:t.locale}),"Failed to create per-seat checkout")}async function Gm(t){return o(await i.post("/billing/claim-per-seat",{account_id:t}),"Failed to switch to per-seat billing")}async function Bm(t){return o(await i.post("/billing/sync-subscription",{account_id:t}),"Failed to sync subscription")}async function $a(t={}){let e=new URLSearchParams;t.start&&e.set("start",t.start),t.end&&e.set("end",t.end),(t.groupBy==="model"||t.groupBy==="provider"||t.groupBy==="day")&&e.set("group_by",t.groupBy),t.accountId&&e.set("account_id",t.accountId);let n=e.toString();return o(await i.get(`/usage${n?`?${n}`:""}`))}function Da(t,e){e.accountId&&t.set("account_id",e.accountId),e.projectId&&t.set("project_id",e.projectId)}function Xt(t,e){e.from&&t.set("from",e.from),e.to&&t.set("to",e.to)}function Qt(t){return t.size>0?`?${t}`:""}async function Ma(t={}){let e=new URLSearchParams;return Da(e,t),t.ownerId&&e.set("owner_id",t.ownerId),Xt(e,t),t.sort&&e.set("sort",t.sort),t.limit!=null&&e.set("limit",String(t.limit)),t.offset!=null&&e.set("offset",String(t.offset)),o(await i.get(`/usage/session-costs${Qt(e)}`))}async function Yt(t,e={}){let n=new URLSearchParams;return Da(n,e),o(await i.get(`/usage/session-costs/${encodeURIComponent(t)}${Qt(n)}`))}async function Km(t={}){let e=new URLSearchParams;return t.accountId&&e.set("account_id",t.accountId),Xt(e,t),t.sort&&e.set("sort",t.sort),t.limit!=null&&e.set("limit",String(t.limit)),t.offset!=null&&e.set("offset",String(t.offset)),o(await i.get(`/usage/cost-by-project${Qt(e)}`))}async function Nm(t={}){let e=new URLSearchParams;return Da(e,t),t.sessionId&&e.set("session_id",t.sessionId),Xt(e,t),o(await i.get(`/usage/cost-summary${Qt(e)}`))}function qa(t,e={}){let n=new URLSearchParams;if(e.accountId&&n.set("account_id",e.accountId),t==="sessions"){let s=e;s.projectId&&n.set("project_id",s.projectId),s.ownerId&&n.set("owner_id",s.ownerId)}Xt(n,e),e.sort&&n.set("sort",e.sort),n.set("format","csv");let r=t==="projects"?"/usage/cost-by-project":"/usage/session-costs";return`${E().backendUrl||""}${r}?${n}`}async function Hm(t,e={}){let n=qa(t==="projects"?"projects":"sessions",e),r=await ee(),s=await fetch(n,{method:"GET",headers:r?{Authorization:`Bearer ${r}`}:{}});if(!s.ok){let g=await s.text().catch(()=>"");throw new Error(g||`Failed to export CSV (HTTP ${s.status})`)}let c=s.headers.get("x-kortix-row-cap"),u=c!=null?Number(c):NaN;return{blob:await s.blob(),rowCap:Number.isFinite(u)?u:null}}async function xu(t,e){return o(await i.post(`/channels/${t}/identity/bind`,{token:e}),"Failed to connect your account")}function Wm(t){return xu("slack",t)}function zm(t){return xu("teams",t)}async function Ua(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/installation`,{showErrors:!1});return e.success?e.data??null:null}async function Oa(t,e){return o(await i.post(`/projects/${encodeURIComponent(t)}/channels/slack/connect`,e,{showErrors:!1}),"Failed to connect")}var Vm={oauth_available:!1,install_url:null};async function Fa(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/mode`,{showErrors:!1});return!e.success||!e.data?Vm:e.data}async function La(t){return o(await i.get(`/webhooks/slack/${encodeURIComponent(t)}/manifest`,{showErrors:!1}),"Failed to load Slack manifest")}async function Ga(t){let e=await i.delete(`/projects/${encodeURIComponent(t)}/channels/slack/installation`,{showErrors:!1});if(!e.success)throw new Error(e.error?.message??"Failed to disconnect")}async function Ba(t,e){return o(await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/file?url=${encodeURIComponent(e)}`,{showErrors:!1}),"Failed to download Slack file")}async function Ka(t,e){return o(await i.post(`/projects/${encodeURIComponent(t)}/channels/slack/file/upload`,{channel:e.channel,filename:e.filename,content_base64:e.contentBase64,comment:e.comment,thread_ts:e.threadTs},{showErrors:!1}),"Failed to upload Slack file")}function Na(t){let e=t.connectionId??t.connection_id??null,n=t.connectorSlug??t.connector_slug??t.connectionSlug??t.connection_slug??"kortix_email";return{...t,connectionId:e,connectorSlug:n}}var Jm={provider:"agentmail",managed_available:!1};async function Ha(t,e){let n=e?`?connector_slug=${encodeURIComponent(e)}`:"",r=await i.get(`/projects/${encodeURIComponent(t)}/channels/email/installation${n}`,{showErrors:!1});return r.success&&r.data?Na(r.data):null}async function Wa(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/email/mode`,{showErrors:!1});return!e.success||!e.data?Jm:e.data}async function za(t,e){let n=o(await i.post(`/projects/${encodeURIComponent(t)}/channels/email/connect`,e,{showErrors:!1}),"Failed to connect email");return Na(n)}async function Va(t,e){let n=e?`?connector_slug=${encodeURIComponent(e)}`:"",r=await i.delete(`/projects/${encodeURIComponent(t)}/channels/email/installation${n}`,{showErrors:!1});if(!r.success)throw new Error(r.error?.message??"Failed to disconnect email")}async function Ja(t,e,n){let r=o(await i.patch(`/projects/${encodeURIComponent(t)}/channels/email/installation`,{connector_slug:e??"kortix_email",sender_policy:n},{showErrors:!1}),"Failed to update email policy");return Na(r)}async function Xa(t,e){return o(await i.put(`/projects/${encodeURIComponent(t)}/channels/meet/name`,{name:e},{showErrors:!1}),"Failed to save name")}async function Xm(t){return o(await i.get(`/projects/${encodeURIComponent(t)}/channels/bindings`,{showErrors:!1}),"Failed to load channel bindings")}async function Qm(t,e,n){return o(await i.patch(`/projects/${encodeURIComponent(t)}/channels/bindings/${encodeURIComponent(e)}`,n,{showErrors:!1}),"Failed to update channel binding")}async function Qa(t){return o(await i.get(`/projects/${t}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Ya(t,e){return o(await i.put(`/projects/${t}/gateway/routing-policy`,e),"Gateway routing policy request failed")}async function Za(t){return o(await i.delete(`/projects/${t}/gateway/routing-policy`),"Gateway routing policy request failed")}async function ec(t,e){return o(await i.post(`/projects/${t}/gateway/routing-policy/preview`,e),"Gateway route preview failed")}async function tc(t,e){let n=new URLSearchParams;e?.limit&&n.set("limit",String(e.limit)),e?.offset&&n.set("offset",String(e.offset)),e?.ok!==void 0&&n.set("ok",String(e.ok));let r=n.toString();return o(await i.get(`/projects/${t}/gateway/logs${r?`?${r}`:""}`),"Gateway request failed")}async function nc(t,e){return o(await i.get(`/projects/${t}/gateway/logs/${e}`),"Gateway request failed")}async function rc(t,e){return o(await i.get(`/projects/${t}/gateway/overview${e?`?days=${e}`:""}`),"Gateway request failed")}async function sc(t,e){return o(await i.get(`/projects/${t}/gateway/series${e?`?days=${e}`:""}`),"Gateway request failed")}async function ic(t,e){return o(await i.get(`/projects/${t}/gateway/breakdown${e?`?days=${e}`:""}`),"Gateway request failed")}async function oc(t,e){return o(await i.get(`/projects/${t}/gateway/sessions${e?`?days=${e}`:""}`),"Gateway request failed")}async function ac(t,e){return o(await i.get(`/projects/${t}/gateway/errors${e?`?days=${e}`:""}`),"Gateway request failed")}async function cc(t){return o(await i.get(`/projects/${t}/gateway/budgets`),"Gateway request failed")}async function lc(t,e){return o(await i.put(`/projects/${t}/gateway/budgets`,e),"Gateway request failed")}async function uc(t,e){return o(await i.delete(`/projects/${t}/gateway/budgets/${e}`),"Gateway request failed")}async function pc(t){return o(await i.get(`/projects/${t}/gateway/keys`),"Gateway request failed")}async function dc(t,e){return o(await i.post(`/projects/${t}/gateway/keys`,{name:e}),"Gateway request failed")}async function gc(t,e){return o(await i.delete(`/projects/${t}/gateway/keys/${e}`),"Gateway request failed")}async function mc(t,e,n,r,s){return o(await i.post(`/projects/${t}/gateway/playground`,{prompt:e,models:n,...r?{system:r}:{},...s&&Object.keys(s).length?{generationConfig:s}:{}}),"Gateway request failed")}async function Ym(t,e){return o(await i.post(`/projects/${t}/gateway/providers/${encodeURIComponent(e)}/verify`,{}),"Gateway provider verification failed")}async function fc(t){let e=new FormData;e.append("audio_file",t);let n=await i.upload("/transcription",e,{showErrors:!0});if(n.error)throw new Error(`Error transcribing audio: ${n.error.message} (${n.error.status})`);return n.data}async function Zm(){return o(await i.get("/referrals/code"),"GET_CODE_FAILED")}async function ef(){return o(await i.post("/referrals/code/refresh",{}),"REFRESH_CODE_FAILED")}async function tf(t){return o(await i.post("/referrals/validate",{referral_code:t}),"VALIDATE_CODE_FAILED")}async function nf(){return o(await i.get("/referrals/stats"),"GET_STATS_FAILED")}async function rf(t={}){let e=new URLSearchParams({limit:String(t.limit??50),offset:String(t.offset??0)});return o(await i.get(`/referrals/list?${e}`),"GET_REFERRALS_FAILED")}async function sf(t){return o(await i.post("/referrals/email",{emails:t}),"SEND_EMAILS_FAILED")}function P(t){if(!t.success||t.data===void 0)throw t.error||new Error("Unexpected empty response");return t.data}function O(t){return i.get(t,{showErrors:!1})}async function of(t){return P(await O(`/accounts/${t}/iam/groups`)).groups}async function af(t,e){return P(await O(`/accounts/${t}/iam/groups/${e}`))}async function cf(t,e){return P(await i.post(`/accounts/${t}/iam/groups`,e,{showErrors:!1}))}async function lf(t,e,n){return P(await i.patch(`/accounts/${t}/iam/groups/${e}`,n))}async function uf(t,e){return P(await i.delete(`/accounts/${t}/iam/groups/${e}`))}async function pf(t,e){return P(await O(`/accounts/${t}/iam/groups/${e}/members`)).members}async function df(t,e,n){return P(await i.post(`/accounts/${t}/iam/groups/${e}/members`,{userIds:n}))}async function gf(t,e){return P(await O(`/accounts/${t}/iam/groups/${e}/project-grants`)).grants}async function mf(t,e,n){return P(await i.delete(`/accounts/${t}/iam/groups/${e}/members/${n}`))}async function ff(t,e){return P(await O(`/accounts/${t}/iam/members/${e}/groups`)).groups}async function yf(t,e){return P(await O(`/accounts/${t}/iam/members/${e}/project-access`)).projects}async function hf(t,e={}){let n=new URLSearchParams;e.principalType&&n.set("principalType",e.principalType),e.principalId&&n.set("principalId",e.principalId),e.scopeType&&n.set("scopeType",e.scopeType),e.scopeId!==void 0&&n.set("scopeId",e.scopeId===null?"null":e.scopeId);let r=n.toString();return P(await O(`/accounts/${t}/iam/policies${r?`?${r}`:""}`)).policies}async function bf(t,e){return P(await i.post(`/accounts/${t}/iam/policies`,e,{showErrors:!1}))}async function xf(t,e,n){return P(await i.patch(`/accounts/${t}/iam/policies/${e}`,n,{showErrors:!1}))}async function _f(t,e){return P(await i.delete(`/accounts/${t}/iam/policies/${e}`))}async function Pf(t,e){return P(await i.post(`/accounts/${t}/iam/policies:bulk-delete`,{policy_ids:e},{showErrors:!1}))}async function kf(t,e){return P(await i.post(`/accounts/${t}/iam/policies:bulk-import`,{policies:e},{showErrors:!1}))}async function wf(t){return P(await O(`/accounts/${t}/iam/roles`)).roles}async function Sf(t){return P(await O(`/accounts/${t}/iam/agent-identities`)).agents}async function vf(t,e){return P(await O(`/accounts/${t}/iam/roles/${e}/permissions`))}async function Cf(t){return P(await O(`/accounts/${t}/iam/actions`)).actions}async function Rf(t,e){return P(await O(`/accounts/${t}/iam/roles/${e}/usage`))}async function Tf(t,e){return P(await i.post(`/accounts/${t}/iam/roles`,e,{showErrors:!1}))}async function Af(t,e,n){return P(await i.patch(`/accounts/${t}/iam/roles/${e}`,n,{showErrors:!1}))}async function If(t,e,n){return P(await i.put(`/accounts/${t}/iam/roles/${e}/permissions`,{actions:n},{showErrors:!1}))}async function jf(t,e){return P(await i.delete(`/accounts/${t}/iam/roles/${e}`,{showErrors:!1}))}async function Ef(t,e,n){return P(await i.patch(`/accounts/${t}/iam/members/${e}/super-admin`,{isSuperAdmin:n}))}async function $f(t){return P(await O(`/accounts/${t}/iam/scim/tokens`)).tokens}async function qf(t,e){return P(await i.post(`/accounts/${t}/iam/scim/tokens`,e,{showErrors:!1}))}async function Df(t,e){return P(await i.delete(`/accounts/${t}/iam/scim/tokens/${e}`))}async function Mf(t){return P(await O(`/accounts/${t}/iam/mfa-required`))}async function Uf(t){return P(await O(`/accounts/${t}/iam/mfa-required/preview`))}async function Of(t,e){return P(await i.patch(`/accounts/${t}/iam/mfa-required`,{enabled:e},{showErrors:!1}))}async function Ff(t){return P(await O(`/accounts/${t}/iam/sso/provider`)).provider}async function Lf(t,e){return P(await i.put(`/accounts/${t}/iam/sso/provider`,e,{showErrors:!1})).provider}async function Gf(t,e){return P(await i.post(`/accounts/${t}/iam/sso/provider/from-metadata`,e,{showErrors:!1})).provider}async function Bf(t){return P(await i.delete(`/accounts/${t}/iam/sso/provider`))}async function Kf(t){return P(await O(`/accounts/${t}/iam/sso/mappings`)).mappings}async function Nf(t,e){return P(await i.post(`/accounts/${t}/iam/sso/mappings`,e,{showErrors:!1}))}async function Hf(t,e){return P(await i.delete(`/accounts/${t}/iam/sso/mappings/${e}`))}async function Wf(t){return P(await O(`/accounts/${t}/iam/session-policy`))}async function zf(t,e){return P(await i.patch(`/accounts/${t}/iam/session-policy`,e,{showErrors:!1}))}async function Vf(t){return P(await O(`/accounts/${t}/iam/sessions`)).sessions}async function Jf(t,e){return P(await i.post(`/accounts/${t}/iam/sessions/${e}/revoke`,{},{showErrors:!1}))}async function Xf(t){return P(await O(`/accounts/${t}/iam/pat-policy`))}async function Qf(t,e){return P(await i.patch(`/accounts/${t}/iam/pat-policy`,e,{showErrors:!1}))}async function Yf(t){return P(await O(`/accounts/${t}/iam/service-accounts`)).service_accounts}async function Zf(t,e){return P(await i.post(`/accounts/${t}/iam/service-accounts`,e,{showErrors:!1}))}async function ey(t,e){return P(await i.post(`/accounts/${t}/iam/service-accounts/${e}/disable`,{},{showErrors:!1}))}async function ty(t,e){return P(await i.delete(`/accounts/${t}/iam/service-accounts/${e}`))}async function ny(t){return P(await O(`/accounts/${t}/audit/webhooks`)).webhooks}async function ry(t,e){return P(await i.post(`/accounts/${t}/audit/webhooks`,e,{showErrors:!1}))}async function sy(t,e,n){return P(await i.patch(`/accounts/${t}/audit/webhooks/${e}`,n))}async function iy(t,e){return P(await i.delete(`/accounts/${t}/audit/webhooks/${e}`))}async function oy(t,e={}){let n=new URLSearchParams;e.action&&n.set("action",e.action),e.actor&&n.set("actor",e.actor),e.project_id&&n.set("project_id",e.project_id),e.session_id&&n.set("session_id",e.session_id),e.actor_type&&n.set("actor_type",e.actor_type),e.source&&n.set("source",e.source),e.phase&&n.set("phase",e.phase),e.outcome&&n.set("outcome",e.outcome),e.request_id&&n.set("request_id",e.request_id),e.correlation_id&&n.set("correlation_id",e.correlation_id),e.resource_type&&n.set("resource_type",e.resource_type),e.since&&n.set("since",e.since),e.until&&n.set("until",e.until),e.q&&n.set("q",e.q),e.cursor&&n.set("cursor",e.cursor),e.limit&&n.set("limit",String(e.limit));let r=n.toString();return P(await O(`/accounts/${t}/audit${r?`?${r}`:""}`))}async function ay(t,e,n){let r=new URLSearchParams;return r.set("action",n.action),n.resourceType&&r.set("resourceType",n.resourceType),n.resourceId&&r.set("resourceId",n.resourceId),P(await O(`/accounts/${t}/iam/members/${e}/effective?${r.toString()}`))}async function cy(t,e,n){return n.length===0?[]:P(await i.post(`/accounts/${t}/iam/members/${e}/effective:batch`,{probes:n})).results}async function ly(t){return P(await O(`/accounts/${t}/iam/enterprise-demo`)).enabled}async function uy(t,e){return P(await i.put(`/accounts/${t}/iam/enterprise-demo`,{enabled:e})).enabled}async function py(){let t=await i.get("/account/deletion-status",{showErrors:!1});return t.error?.status===404?null:o(t,"Failed to load account deletion status")}async function dy(t="User requested deletion"){return o(await i.post("/account/request-deletion",{reason:t},{showErrors:!1}),"Failed to request account deletion")}async function gy(){return o(await i.post("/account/cancel-deletion",void 0,{showErrors:!1}),"Failed to cancel account deletion")}async function my(){return o(await i.delete("/account/delete-immediately",{showErrors:!1}),"Failed to delete account immediately")}async function fy(){return(await i.get("/user-roles",{showErrors:!1})).data??{isAdmin:!1,role:null}}function yy(){return i.get("/admin/api/provider-distribution").then(t=>o(t))}function hy(t=300){return i.get(`/admin/api/sandboxes?limit=${t}`).then(e=>o(e))}function by(t){return i.put("/admin/api/provider-distribution",t).then(e=>o(e))}function xy(t){return i.get(`/admin/api/provider-analytics?days=${t}`).then(e=>o(e))}function _y(t,e){return i.post(`/admin/api/sandboxes/${encodeURIComponent(t)}/migrate`,{targetProvider:e}).then(n=>o(n))}function Py(){return i.get("/admin/api/provider-fallback").then(t=>o(t))}function ky(t){return i.put("/admin/api/provider-fallback",{enabled:t}).then(e=>o(e))}async function wy(t){return o(await i.get(`/google/auth-url?return_url=${encodeURIComponent(t)}`),"Failed to get Google auth URL")}async function Sy(t,e){return o(await i.post("/presentation-tools/convert-and-upload-to-slides",{presentation_path:t,sandbox_url:e},{timeout:18e4}),"Failed to upload to Google Slides")}async function yc(t,e){let n=new URLSearchParams;e?.segment&&n.set("segment",e.segment),e?.kind&&n.set("kind",e.kind);let r=n.toString();return o(await i.get(`/projects/${t}/review/items${r?`?${r}`:""}`,{showErrors:!1}))}async function hc(t,e){return o(await i.get(`/projects/${t}/review/items/${e}`))}async function bc(t,e){return o(await i.post(`/projects/${t}/review/items`,e))}async function xc(t,e,n){return o(await i.post(`/projects/${t}/review/items/${e}/act`,n))}async function _c(t,e){return o(await i.post(`/projects/${t}/review/bulk`,e))}async function Pc(t){return o(await i.get(`/p/share?sandbox_id=${encodeURIComponent(t)}`),"Failed to load public links").shares??[]}async function kc(t){return o(await i.post("/p/share",{sandbox_id:t.sandboxId,port:t.port,ttl:t.ttl,label:t.label}),"Failed to generate public URL")}async function wc(t,e){let n=await i.delete(`/p/share/${encodeURIComponent(e)}?sandbox_id=${encodeURIComponent(t)}`);if(!n.success)throw new Error(n.error?.message??"Failed to revoke public link")}var Zt=class extends Error{constructor(n,r){super(n);this.status=r;this.name="PublicSessionShareError"}status};function _u(t,e=""){return`${fe()}/public/session-shares/${encodeURIComponent(t)}${e}`}async function Pu(t){let e=await fetch(t,{method:"GET",headers:{Accept:"application/json"}}),n=await e.text().catch(()=>""),r=null;try{r=n?JSON.parse(n):null}catch{}if(!e.ok){let s=(r&&typeof r=="object"&&"error"in r&&typeof r.error=="string"?r.error:null)||e.statusText||`HTTP ${e.status}`;throw new Zt(s,e.status)}return r}async function vy(t){return Pu(_u(t))}async function Cy(t){return Pu(_u(t,"/messages"))}var en=class extends Error{constructor(n,r){super(n);this.status=r;this.name="PublicVoiceJoinError"}status};function ku(t){return`${fe()}/public/voice-join/${encodeURIComponent(t)}`}async function wu(t){let e=await fetch(t,{method:"GET",headers:{Accept:"application/json"}}),n=await e.text().catch(()=>""),r=null;try{r=n?JSON.parse(n):null}catch{}if(!e.ok){let s=(r&&typeof r=="object"&&"error"in r&&typeof r.error=="string"?r.error:null)||e.statusText||`HTTP ${e.status}`;throw new en(s,e.status)}return r}async function Ry(t){return wu(ku(t))}async function Ty(t,e=0){let n=`${ku(t)}/transcript?cursor=${encodeURIComponent(String(e))}`;return wu(n)}async function Sc(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return o(await i.get(`/accounts/tokens${e}`))}async function vc(t){let{accountId:e,expiresAt:n,projectId:r,name:s}=t;return o(await i.post("/accounts/tokens",{name:s,...e?{account_id:e}:{},...n?{expires_at:n}:{},...r?{project_id:r}:{}}))}async function Cc(t,e){let n=e?`?account_id=${encodeURIComponent(e)}`:"";return o(await i.delete(`/accounts/tokens/${t}${n}`))}async function Rc(t){return o(await i.get(`/projects/${t}/cli-token`))}async function Tc(t,e){return o(await i.post(`/projects/${t}/cli-token`,e??{}))}async function Ac(t,e){return o(await i.delete(`/projects/${t}/cli-token/${e}`))}async function Ic(t,e){let n=new URLSearchParams;e?.action&&n.set("action",e.action),e?.actor&&n.set("actor",e.actor),e?.actorType&&n.set("actor_type",e.actorType),e?.projectId&&n.set("project_id",e.projectId),e?.sessionId&&n.set("session_id",e.sessionId),e?.source&&n.set("source",e.source),e?.phase&&n.set("phase",e.phase),e?.outcome&&n.set("outcome",e.outcome),e?.resourceType&&n.set("resource_type",e.resourceType),e?.requestId&&n.set("request_id",e.requestId),e?.correlationId&&n.set("correlation_id",e.correlationId),e?.since&&n.set("since",e.since),e?.until&&n.set("until",e.until),e?.q&&n.set("q",e.q),e?.cursor&&n.set("cursor",e.cursor),e?.limit!=null&&n.set("limit",String(e.limit));let r=n.toString();return o(await i.get(`/accounts/${t}/audit${r?`?${r}`:""}`))}async function jc(t,e){let n=new URLSearchParams;e?.action&&n.set("action",e.action),e?.actor&&n.set("actor",e.actor),e?.actorType&&n.set("actor_type",e.actorType),e?.sessionId&&n.set("session_id",e.sessionId),e?.source&&n.set("source",e.source),e?.phase&&n.set("phase",e.phase),e?.outcome&&n.set("outcome",e.outcome),e?.resourceType&&n.set("resource_type",e.resourceType),e?.requestId&&n.set("request_id",e.requestId),e?.correlationId&&n.set("correlation_id",e.correlationId),e?.since&&n.set("since",e.since),e?.until&&n.set("until",e.until),e?.q&&n.set("q",e.q),e?.cursor&&n.set("cursor",e.cursor),e?.limit!=null&&n.set("limit",String(e.limit));let r=n.toString();return o(await i.get(`/projects/${t}/audit${r?`?${r}`:""}`))}async function Ec(t,e){let n=new URLSearchParams;e?.format&&n.set("format",e.format),e?.action&&n.set("action",e.action),e?.actor&&n.set("actor",e.actor),e?.actorType&&n.set("actor_type",e.actorType),e?.projectId&&n.set("project_id",e.projectId),e?.sessionId&&n.set("session_id",e.sessionId),e?.source&&n.set("source",e.source),e?.phase&&n.set("phase",e.phase),e?.outcome&&n.set("outcome",e.outcome),e?.resourceType&&n.set("resource_type",e.resourceType),e?.requestId&&n.set("request_id",e.requestId),e?.correlationId&&n.set("correlation_id",e.correlationId),e?.since&&n.set("since",e.since),e?.until&&n.set("until",e.until),e?.q&&n.set("q",e.q),e?.cursor&&n.set("cursor",e.cursor),e?.limit!=null&&n.set("limit",String(e.limit));let r=n.toString();return o(await i.get(`/accounts/${t}/audit/export${r?`?${r}`:""}`))}async function $c(t){return o(await i.get(`/accounts/${t}/audit/webhooks`))}async function qc(t,e){return o(await i.post(`/accounts/${t}/audit/webhooks`,e))}async function Dc(t,e,n){return o(await i.patch(`/accounts/${t}/audit/webhooks/${e}`,n))}async function Mc(t,e){return o(await i.delete(`/accounts/${t}/audit/webhooks/${e}`))}async function Uc(t,e){return o(await i.post(`/projects/${t}/secret-requests`,{names:e.names,labels:e.labels,descriptions:e.descriptions,scope:e.scope,expires_in_minutes:e.expiresInMinutes}),"Failed to mint secret-entry link")}async function Oc(t,e){return o(await i.post(`/projects/${t}/connect-requests`,{slug:e.slug,expires_in_minutes:e.expiresInMinutes}),"Failed to mint connect link")}async function Ay(t){return o(await i.get(`/approval-links/${t}`),"Failed to load approval")}async function Fc(t){let e=new URLSearchParams;t?.query&&e.set("query",t.query),t?.type&&e.set("type",t.type),t?.source&&e.set("source",t.source),t?.limit!==void 0&&e.set("limit",String(t.limit)),t?.offset!==void 0&&e.set("offset",String(t.offset));let n=e.toString()?`?${e.toString()}`:"";return o(await i.get(`/marketplace/items${n}`))}async function Lc(){return o(await i.get("/marketplace/marketplaces"))}async function Gc(){return o(await i.get("/marketplace/marketplaces/featured"))}async function Bc(t){return o(await i.get(`/marketplace/items/${encodeURIComponent(t)}`),"Item not found")}async function Kc(t,e){return o(await i.get(`/marketplace/items/${encodeURIComponent(t)}/file?path=${encodeURIComponent(e)}`),"File not found")}async function Nc(){return o(await i.get("/marketplace/sources"))}async function Hc(t){return o(await i.post("/marketplace/sources",t),"Failed to add marketplace source")}async function Wc(t){return o(await i.delete(`/marketplace/sources/${encodeURIComponent(t)}`),"Failed to remove marketplace source")}async function Iy(t,e){return o(await i.post(`/projects/${encodeURIComponent(t)}/marketplace/install-session`,{id:e}),"Failed to start marketplace install session")}async function jy(t){return o(await i.get(`/templates/${encodeURIComponent(t)}`))}async function Ey(t,e){return o(await i.post(`/templates/${encodeURIComponent(t)}/install`,e))}async function zc(t){return o(await i.get(`/projects/${t}/apps`),"Failed to list Apps").apps}async function Vc(t,e){return o(await i.post(`/projects/${t}/apps`,e),"Failed to create App")}async function Jc(t,e){return o(await i.get(`/projects/${t}/apps/${e}`),"Failed to load App")}async function Xc(t,e,n){return o(await i.patch(`/projects/${t}/apps/${e}`,n),"Failed to update App")}async function Qc(t,e){return o(await i.delete(`/projects/${t}/apps/${e}`),"Failed to delete App")}async function Yc(t,e){return o(await i.get(`/projects/${t}/apps/${e}/access`),"Failed to load App access policy")}async function Zc(t,e,n){return o(await i.patch(`/projects/${t}/apps/${e}/access`,n),"Failed to update App access policy")}async function el(t,e){return o(await i.post(`/projects/${t}/apps/${e}/access-session`,{}),"Failed to create App access session")}async function tn(t,e){return o(await i.post(`/projects/${t}/apps/artifacts`,e),"Failed to register App artifact")}async function nn(t,e,n){return o(await i.post(`/projects/${t}/apps/artifacts/${e}/finalize`,n),"Failed to finalize App artifact")}async function $y(t){return t instanceof Uint8Array?t:new Uint8Array(await t.arrayBuffer())}async function qy(t){let e=Uint8Array.from(t),n=await globalThis.crypto.subtle.digest("SHA-256",e.buffer);return Array.from(new Uint8Array(n),r=>r.toString(16).padStart(2,"0")).join("")}async function tl(t,e,n={}){let r=await $y(e),s=n.mediaType??"application/gzip",c=await tn(t,{kind:"archive",media_type:s});if(!c.upload)throw new Error("App artifact registration did not return an upload URL");if(r.byteLength>c.upload.max_bytes)throw new Error(`App artifact exceeds ${c.upload.max_bytes} bytes`);n.onProgress?.(0,r.byteLength);let u=await fetch(c.upload.url,{method:"PUT",body:new Blob([Uint8Array.from(r).buffer],{type:s}),signal:n.signal,headers:{"content-type":s,"x-upsert":"false"}});if(!u.ok){let p=await u.text().catch(()=>"");throw new Error(`App artifact upload failed with HTTP ${u.status}${p?`: ${p}`:""}`)}return n.onProgress?.(r.byteLength,r.byteLength),nn(t,c.artifact.artifact_id,{sha256:await qy(r),size_bytes:r.byteLength})}async function nl(t,e,n){return o(await i.post(`/projects/${t}/apps/${e}/deployments`,n),"Failed to create App deployment")}async function rl(t,e){return o(await i.get(`/projects/${t}/apps/${e}/deployments`),"Failed to list App deployments").deployments}async function sl(t,e,n){return o(await i.get(`/projects/${t}/apps/${e}/deployments/${n}`),"Failed to load App deployment")}async function il(t,e,n,r={}){let s=new URLSearchParams;r.after!==void 0&&s.set("after",String(r.after)),r.limit!==void 0&&s.set("limit",String(r.limit));let c=s.size?`?${s.toString()}`:"";return o(await i.get(`/projects/${t}/apps/${e}/deployments/${n}/logs${c}`),"Failed to load App logs")}async function ol(t,e){return o(await i.post(`/projects/${t}/apps/${e}/start`,{}),"Failed to start App")}async function al(t,e){return o(await i.post(`/projects/${t}/apps/${e}/stop`,{}),"Failed to stop App")}async function cl(t,e,n){return o(await i.post(`/projects/${t}/apps/${e}/rollback`,{deployment_id:n}),"Failed to roll back App")}function Dy(t){return t?t.runtimeReady!==void 0?t.runtimeReady===!0:t.opencode!==void 0?t.opencode==="ok"||t.opencode===!0:t.status!=="starting"&&t.status!=="down"&&t.status!=="error":!1}async function ll(t,e){let n=(t===void 0?L():t)||null;if(!n)return{status:0,ok:!1,health:null,body:""};let r=await q(`${n}/kortix/health`,{method:"GET",...e},{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 re={DESKTOP:"6080",DESKTOP_HTTPS:"6081",PRESENTATION_VIEWER:"3210",STATIC_FILE_SERVER:"3211",KORTIX_MASTER:"8000",BROWSER_STREAM:"9223",BROWSER_VIEWER:"9224",SSH:"22"};var Su=/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s)"'<>]*/g,vu=/^https?:\/\/p(\d+)-([^.]+)\.localhost(?::(\d+))?(\/.*)?$/,Cu=new Set([22,4096,parseInt(re.KORTIX_MASTER,10)]);function My(t){return vu.test(t)}function rn(t){if(!t)return"/";let e=t,n=e.indexOf("](");n!==-1&&(e=e.slice(0,n));let r=e.toLowerCase().indexOf("%5d(");return r!==-1&&(e=e.slice(0,r)),e?e.startsWith("/")?e:`/${e}`:"/"}function Uy(t){let e=t.indexOf("](");return e===-1?t:t.slice(0,e)}var Oy=new Set(["'",'"',"`","<","(","["]),Fy=new Set([">","'",'"',"`",")","]",",",";",".","!","?"]);function Ly(t){let e=0,n=t.length;for(;e<n&&(t[e]===" "||t[e]===" ");)e++;for(;n>e&&(t[n-1]===" "||t[n-1]===" ");)n--;for(;e<n&&Oy.has(t[e]);)e++;for(;n>e&&Fy.has(t[n-1]);)n--;return t.slice(e,n)}function Gy(t){return t.match(/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s"'<>)]*/i)?.[0]??null}var By=/^\/proxy\/(\d{1,5})(\/.*)?$/,Ky=/^\/(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 Ru(t){if(!t)return!1;try{let e=new URL(t);return e.hostname!=="localhost"&&e.hostname!=="127.0.0.1"?!1:Ky.test(e.pathname)}catch{return!1}}function at(t){if(!t)return null;let e=Ly(Uy(t.trim())),n=pl(e);if(n){let r=rn(n.path||"/");return{originalUrl:`http://localhost:${n.port}${r}`,port:n.port,path:r}}try{let r=new URL(e);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(re.KORTIX_MASTER,10);if(s===u){let g=r.pathname.match(By);if(g){let f=parseInt(g[1],10);if(f>=1&&f<=65535)return s=f,c=rn(`${g[2]||"/"}${r.search}${r.hash}`),{originalUrl:`http://localhost:${s}${c}`,port:s,path:c}}}let p=rn(c);return{originalUrl:`${r.protocol}//${r.hostname}:${s}${p}`,port:s,path:p}}catch{let r=Gy(t);return r&&r!==t?at(r):null}}function Ny(t){let e=[],n=/```[\s\S]*?```/g,r;for(;(r=n.exec(t))!==null;)e.push([r.index,r.index+r[0].length]);let s=/`[^`\n]+`/g;for(;(r=s.exec(t))!==null;){let c=r.index,u=c+r[0].length;e.some(([g,f])=>c>=g&&u<=f)||e.push([c,u])}return e}function Hy(t,e){return e.some(([n,r])=>t>=n&&t<r)}function Tu(t){let e=[],n=new Set,r=Ny(t);Su.lastIndex=0;let s;for(;(s=Su.exec(t))!==null;){let c=at(s[0]);if(!c)continue;let{originalUrl:u,port:p,path:g}=c;p<1||p>65535||Cu.has(p)||n.has(u)||(n.add(u),e.push({originalUrl:u,port:p,path:g,startIndex:s.index,endIndex:s.index+u.length,inCodeBlock:Hy(s.index,r)}))}return e}function Wy(t){return Tu(t).length>0}function zy(t){try{let{hostname:e}=new URL(t);return e==="localhost"||e==="127.0.0.1"}catch{return!1}}function Au(t){return t.sandboxId.trim().length>0}function pe(t,e,n){let r=rn(e);if(!Au(n))return $u(t,r);if(!zy(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}/${t}${r}`}return`http://p${t}-${n.sandboxId}.localhost:${n.backendPort}${r}`}function Vy(t,e){if(!t)return;let r=t.replace(/^\/workspace\//,"").replace(/^\/+/,"").split("/").filter(Boolean).map(s=>encodeURIComponent(s)).join("/");return pe(3211,`/open?path=/workspace/${r}`,e)}function Iu(t){return`/open?path=/${(t.startsWith("/workspace")?t:`/workspace/${t.replace(/^\/+/,"")}`).split("/").filter(Boolean).map(r=>encodeURIComponent(r)).join("/")}`}function Jy(t){return`http://localhost:3211${Iu(t)}`}function ju(){return"/health"}function Xy(t){return pe(3211,ju(),t)}function Qy(t,e){return pe(t,"/",e)}function Eu(t){let e=at(t);return!(!e||Cu.has(e.port)||Ru(t))}function ul(t,e){if(!t)return t;let n=at(t);return n?Eu(n.originalUrl)?pe(n.port,n.path,e):n.originalUrl:t}function $u(t,e="/"){return`http://localhost:${t}${e}`}var qu=/^https?:\/\/[^/]+\/v1\/p\/([^/]+)\/(\d+)(\/.*)?$/;function pl(t){let e=t.match(vu);if(e)return{port:parseInt(e[1],10),sandboxId:e[2],backendPort:e[3]?parseInt(e[3],10):80,path:e[4]||"/"};let n=t.match(qu);if(n)try{let r=new URL(t);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 Yy(t){try{let e=pl(t);return e?`http://localhost:${e.port}${e.path}`:null}catch{return null}}function Zy(t){return My(t)||qu.test(t)}function eh(t){try{let{hostname:e,port:n}=new URL(t);return(e==="localhost"||e==="127.0.0.1")&&n!==""}catch{return!1}}var ot="/web-proxy/";function th(t,e){try{let n=new URL(t);if(n.protocol!=="http:"&&n.protocol!=="https:")return null;let r=n.protocol.replace(":",""),s=`${ot}${r}/${n.host}${n.pathname}${n.search}${n.hash}`,c=parseInt(re.KORTIX_MASTER,10);return`${pe(c,"/",e).replace(/\/$/,"")}${s}`}catch{return null}}function nh(t){try{let e=new URL(t),n=e.pathname.indexOf(ot);if(n===-1)return null;let s=e.pathname.slice(n+ot.length).match(/^(https?)\/([\w.\-]+(?::\d+)?)(\/.*)?$/);if(!s)return null;let c=s[1],u=s[2],p=s[3]||"/";return`${c}://${u}${p}${e.search}${e.hash}`}catch{return null}}function rh(t){try{return new URL(t).pathname.includes(ot)}catch{return t.includes(ot)}}function sh(t){if(!t)return!1;let e=t.trim();return!!(/^https?:\/\/(?!localhost|127\.0\.0\.1)/i.test(e)||/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(e))}function ih(t){let e=t.trim();return e?/^https?:\/\//i.test(e)?e:/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(e)?`https://${e}`:null:null}var Du="frontend";function sn(t,e,n){(t==="error"?console.error:t==="warn"?console.warn:t==="debug"?console.debug:console.log)(`[${Du}] ${e}`,...n?[n]:[]);try{le().app.log({service:Du,level:t,message:e,extra:n})}catch{}}var de={debug:(t,e)=>sn("debug",t,e),info:(t,e)=>sn("info",t,e),warn:(t,e)=>sn("warn",t,e),error:(t,e)=>sn("error",t,e)};function Mu(t){return{type:"heartbeat-gap",gapMs:t}}function Uu(t){switch(t.type){case"message.updated":return{type:"message.updated",sessionID:t.properties.sessionID,message:t.properties.info};case"message.removed":return{type:"message.removed",sessionID:t.properties.sessionID,messageID:t.properties.messageID};case"message.part.updated":return{type:"message.part.updated",sessionID:t.properties.sessionID,part:t.properties.part};case"message.part.removed":return{type:"message.part.removed",sessionID:t.properties.sessionID,messageID:t.properties.messageID,partID:t.properties.partID};case"session.status":return{type:"session.status",sessionID:t.properties.sessionID,status:t.properties.status};case"session.idle":return{type:"session.idle",sessionID:t.properties.sessionID};case"session.error":return{type:"session.error",sessionID:t.properties.sessionID,error:t.properties.error};case"question.asked":return{type:"question.asked",sessionID:t.properties.sessionID,requestID:t.properties.id,questions:t.properties.questions,tool:t.properties.tool};case"question.replied":return{type:"question.answered",sessionID:t.properties.sessionID,requestID:t.properties.requestID,outcome:"replied",answers:t.properties.answers};case"question.rejected":return{type:"question.answered",sessionID:t.properties.sessionID,requestID:t.properties.requestID,outcome:"rejected"};case"permission.asked":return{type:"permission.asked",sessionID:t.properties.sessionID,requestID:t.properties.id,permission:t.properties.permission,patterns:t.properties.patterns,tool:t.properties.tool};case"permission.replied":return{type:"permission.replied",sessionID:t.properties.sessionID,requestID:t.properties.requestID,reply:t.properties.reply};case"todo.updated":return{type:"todo.updated",sessionID:t.properties.sessionID,todos:t.properties.todos};case"server.connected":return{type:"connection",status:"connected"};default:return null}}var oh={now:()=>Date.now(),setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t)},ah=16,ch=8,lh=6e4,uh=5e3,ph=250,dh=1e3,gh=3e4,mh=5,fh=3e3,yh=3e4,hh=2e4,bh=2e3,xh=8;function _h(t){if(t.type==="session.status")return`session.status:${t.properties.sessionID}`;if(t.type==="lsp.updated")return"lsp.updated"}function Ou(t){if(t.aborted)return{promise:Promise.resolve(),cleanup:()=>{}};let e=()=>{};return{promise:new Promise(r=>{e=()=>r(),t.addEventListener("abort",e,{once:!0})}),cleanup:()=>t.removeEventListener("abort",e)}}function on(t){let{client:e,onEvent:n,onGapRehydrate:r,onParked:s,signal:c}=t,u=t.timers??oh,p=t.connectTimeoutMs??hh,g=t.heartbeatTimeoutMs??lh,f=t.maxConsecutiveHardFailures??xh,m=new AbortController,_=()=>m.abort();c&&(c.aborted?m.abort():c.addEventListener("abort",_,{once:!0}));let x=u.now(),I=[],T,l=0,h=new Map,a=()=>{if(T&&u.clearTimeout(T),T=void 0,I.length===0)return;let j=I;I=[],h.clear(),l=u.now(),x=u.now();for(let v of j)if(v)try{n(v.event)}catch(k){console.warn("[opencode-events] event handler threw, skipping",k)}},A=()=>{if(T)return;let j=u.now()-l;T=u.setTimeout(a,Math.max(0,ah-j))};return(async()=>{let j=0,v=0;for(;!m.signal.aborted;){let k=!1,$=!1,w,F,K=null,y=u.now(),C=new AbortController,M=Ou(m.signal);M.promise.then(()=>C.abort());try{let D=await new Promise((yn,Le)=>{let X=!1;F=u.setTimeout(()=>{X||(X=!0,de.warn("SSE connect timed out, forcing reconnect",{connectTimeoutMs:p}),C.abort(),Le(new Error(`SSE connect timed out after ${p}ms`)))},p),e.global.event({signal:C.signal,sseDefaultRetryDelay:fh,sseMaxRetryDelay:yh,sseMaxRetryAttempts:1}).then(Z=>{X||(X=!0,u.clearTimeout(F),yn(Z))},Z=>{X||(X=!0,u.clearTimeout(F),Le(Z))})}),{stream:U}=D;x=u.now();let H=()=>{u.clearTimeout(w),w=u.setTimeout(()=>{de.warn("SSE heartbeat timeout, forcing reconnect"),C.abort()},g)};H();let Re=u.now(),jp=U[Symbol.asyncIterator]();for(;!C.signal.aborted;){let yn=jp.next().then(ae=>({kind:"next",result:ae}),ae=>({kind:"error",error:ae})),Le=Ou(C.signal),X=await Promise.race([yn,Le.promise.then(()=>({kind:"aborted"}))]);if(Le.cleanup(),X.kind==="aborted")break;if(X.kind==="error")throw X.error;if(X.result.done)break;k=!0,H();let Z=X.result.value,ft=Z&&typeof Z=="object"&&"payload"in Z?Z.payload:Z;if(!ft?.type)continue;let hn=_h(ft);if(hn){let ae=h.get(hn);ae!==void 0&&(I[ae]=void 0),h.set(hn,I.length)}I.push({type:ft.type,event:ft}),A(),!(u.now()-Re<ch)&&(Re=u.now(),await new Promise(ae=>u.setTimeout(ae,0)))}$=k}catch(D){if(m.signal.aborted)break;K=D;let U=String(D),H=U.includes("401")||U.includes("403")||U.includes("Unauthorized")||U.includes("Token refresh failed");if(de.error("SSE event stream error",{error:U,retryCount:j,isAuthError:H}),H)try{Ne(),await St(),de.info("SSE: refreshed auth token after auth error")}catch(Re){de.error("SSE: failed to refresh auth token",{error:String(Re)})}}finally{u.clearTimeout(w),u.clearTimeout(F),C.abort(),M.cleanup(),a()}if(m.signal.aborted)break;let z=u.now()-y,V=K?.cause?.status;if(v=!k&&(typeof V=="number"&&V>=400||z<bh)?v+1:0,v>=f){de.error("SSE event stream parked \u2014 giving up after consecutive hard failures",{consecutiveFailures:v,lastError:String(K)});try{s?.({consecutiveFailures:v,lastError:K})}catch(D){console.warn("[opencode-events] onParked handler threw",D)}break}let Q=u.now()-x;Q>uh&&r?.(Q),$?j=0:(j++,j>1&&de.warn("SSE event stream reconnecting",{retryCount:j}));let N=$?ph:Math.min(dh*2**Math.min(j-1,mh),gh);await new Promise(D=>{let U=u.setTimeout(D,N),H=()=>{u.clearTimeout(U),D()};m.signal.addEventListener("abort",H,{once:!0})})}})(),{close:()=>{m.abort(),c&&c.removeEventListener("abort",_),T&&u.clearTimeout(T)}}}function Ph(){return le()}var an=new Map,ct=class extends Error{constructor(e){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 \`${e}\`.`),this.name="SessionNotReadyError"}};function Fu(t,e){ht(t,e);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 R(`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 h=E().backendUrl??t.backendUrl,a=80,A=n(h);return A&&(a=A.port?Number(A.port):A.protocol==="https:"?443:80),{sandboxId:l,backendPort:a,apiBaseUrl:h}}let s={list:ds,get:ms,create:gs,updateName:fs,leave:Cs,members:ys,invite:hs,removeMember:Ss,updateMemberRole:vs,invites:bs,cancelInvite:xs,resendInvite:_s,tokens:{list:Sc,create:vc,revoke:Cc},audit:{log:Ic,export:Ec,webhooks:{list:$c,create:qc,update:Dc,remove:Mc}}},c={accountState:fa,accountStateMinimal:ya,transactions:ha,transactionsSummary:ba,creditBreakdown:xa,usageHistory:_a,usageRollup:$a,sessionCosts:{list:Ma,get:Yt},tierConfigurations:Pa,checkout:{createSession:l=>ka(l),confirmSession:(l,h)=>wa(l,h)},subscription:{createPortalSession:(l,h)=>Sa(l,h),cancel:(l,h)=>va(l,h),reactivate:l=>Ca(l),scheduleDowngrade:(l,h,a)=>Ra(l,h,a),cancelScheduledChange:l=>Ta(l),prorationPreview:(l,h)=>Aa(l,h)},credits:{purchase:l=>Ia(l),autoTopupSettings:l=>ja(l),configureAutoTopup:l=>Ea(l)}},u={describe:Ps,accept:ks,decline:ws},p={list:we,listForAccount:Ts,get:Ut,detail:Ot,create:Es,createRepo:$s,provision:qs,update:Gt,archive:Bt,llmCatalog:Ft,modelPicker:Lt,sandboxHealth:Wt,sandboxTemplates:oo,sessions:Me,createSession:Ue},g={linkRepository:Fs,getInstallation:Ls,listInstallations:Gs,listLinkableInstallations:Bs,listRepositories:Ks,listRepositoryBranches:Ns,linkInstallation:Ws,saveInstallation:Hs,deleteInstallation:zs},f={list:Pc,create:kc,revoke:wc},m=to,_={items:l=>Fc(l),item:l=>Bc(l),itemFile:(l,h)=>Kc(l,h),marketplaces:()=>Lc(),featured:()=>Gc(),sources:{list:()=>Nc(),add:l=>Hc(l),remove:l=>Wc(l)}};function x(l){return{catalog:()=>Kt(l),tools:()=>nt(l),search:(...h)=>Ci(l,...h),describe:(...h)=>Ri(l,...h),call:(...h)=>Ti(l,...h),uploadAttachment:(...h)=>Ai(l,...h)}}function I(l){let h={list:()=>Ii(l),listAll:()=>ji(l),reconcile:(...a)=>Ei(l,...a),reconcileMember:(...a)=>$i(l,...a),updateCredential:(...a)=>qi(l,...a),revoke:(...a)=>Di(l,...a),activate:(...a)=>Mi(l,...a),setDefault:(...a)=>Ui(l,...a),pipedreamConnect:(...a)=>Oi(l,...a),pipedreamFinalize:(...a)=>Fi(l,...a)};return{get:a=>Ut(l,a),detail:()=>Ot(l),audit:a=>jc(l,a),update:a=>Gt(l,a),archive:()=>Bt(l),llmCatalog:()=>Ft(l),modelPicker:()=>Lt(l),sandboxHealth:()=>Wt(l),onboardingComplete:(...a)=>Os(l,...a),apps:{list:()=>zc(l),create:a=>Vc(l,a),get:a=>Jc(l,a),update:(...a)=>Xc(l,...a),access:{get:(...a)=>Yc(l,...a),update:(...a)=>Zc(l,...a),session:(...a)=>el(l,...a)},remove:a=>Qc(l,a),artifacts:{register:a=>tn(l,a),uploadArchive:(...a)=>tl(l,...a),finalize:(...a)=>nn(l,...a)},deployments:{create:(...a)=>nl(l,...a),list:a=>rl(l,a),get:(...a)=>sl(l,...a),logs:(...a)=>il(l,...a)},start:a=>ol(l,a),stop:a=>al(l,a),rollback:(...a)=>cl(l,...a)},tokens:{list:()=>Rc(l),create:a=>Tc(l,a),revoke:a=>Ac(l,a)},setupLinks:{requestSecret:a=>Uc(l,a),requestConnector:a=>Oc(l,a)},validateManifest:a=>Is(l,a),gitToken:()=>js(l),secrets:{list:()=>mi(l),upsert:a=>fi(l,a),setStrategy:(...a)=>yi(l,...a),broker:(...a)=>hi(l,...a),remove:a=>ki(l,a),setPersonal:(...a)=>wi(l,...a),removePersonal:a=>Si(l,a),setGitCredential:a=>Pi(l,a),startProviderOAuth:(...a)=>bi(l,...a),pollProviderOAuth:(...a)=>xi(l,...a),removeProviderOAuth:a=>_i(l,a)},access:{list:()=>Qs(l),invite:(...a)=>ei(l,...a),update:(...a)=>Ys(l,...a),revoke:a=>Zs(l,a),pendingInvites:()=>ti(l),resendInvite:(...a)=>ri(l,...a),revokeInvite:(...a)=>ni(l,...a),requests:()=>Vs(l),approveRequest:(...a)=>Js(l,...a),rejectRequest:(...a)=>Xs(l,...a),groupGrants:()=>si(l),attachGroupGrant:(...a)=>ii(l,...a),updateGroupGrant:(...a)=>oi(l,...a),detachGroupGrant:a=>ai(l,a),resourceGrants:{list:()=>ci(l),create:a=>li(l,a),remove:a=>ui(l,a)}},connectors:{...x(l),list:()=>Li(l),config:(...a)=>zi(l,...a),create:(...a)=>Xi(l,...a),remove:(...a)=>Yi(l,...a),sync:()=>Gi(l),auth:{discover:(...a)=>Qi(l,...a)},setName:(...a)=>Vi(l,...a),setCredentialMode:(...a)=>Bi(l,...a),setAuthorizationStrategy:(...a)=>Ki(l,...a),setCredential:(...a)=>no(l,...a),setSensitive:(...a)=>Ni(l,...a),connections:h,policies:{get:(...a)=>Hi(l,...a),set:(...a)=>Wi(l,...a)},pipedream:{listApps:(...a)=>Zi(l,...a),listSections:(...a)=>eo(l,...a),connect:(...a)=>Ji(l,...a),finalize:(...a)=>ro(l,...a)},discover:{list:(...a)=>Nt(l,...a),detail:(...a)=>Ht(l,...a)}},policies:{list:()=>so(l),set:(...a)=>io(l,...a)},triggers:{list:()=>na(l),create:(...a)=>ra(l,...a),update:(...a)=>sa(l,...a),remove:(...a)=>ia(l,...a),fire:(...a)=>aa(l,...a),setActivation:(...a)=>oa(l,...a)},files:{list:a=>yo(l,a),read:(a,A)=>bo(l,a,A),search:(...a)=>ho(l,...a),archive:(...a)=>xo(l,...a),history:(...a)=>So(l,...a)},git:{commits:()=>Po(l),commit:a=>ko(l,a),commitDiff:a=>wo(l,a),branches:()=>_o(l),versionDiff:(...a)=>vo(l,...a),inviteCollaborator:(...a)=>As(l,...a)},changeRequests:{list:()=>Co(l),get:a=>Ro(l,a),diff:a=>To(l,a),mergePreview:a=>Ao(l,a),open:(...a)=>Io(l,...a),merge:(...a)=>jo(l,...a),close:(...a)=>Eo(l,...a),reopen:(...a)=>$o(l,...a),requestChanges:(...a)=>qo(l,...a)},sessions:{list:a=>Me(l,a),create:a=>Ue(l,a),ensureWarm:()=>Ko(l),claimWarm:a=>No(l,a)},review:{list:a=>yc(l,a),get:a=>hc(l,a),submit:a=>bc(l,a),act:(...a)=>xc(l,...a),bulkAct:a=>_c(l,a)},approvals:{list:a=>pi(l,a),resolve:(...a)=>gi(l,...a),sessionsNeedingInput:a=>di(l,a)},gateway:{logs:a=>tc(l,a),log:a=>nc(l,a),overview:a=>rc(l,a),series:a=>sc(l,a),breakdown:a=>ic(l,a),sessions:a=>oc(l,a),errors:a=>ac(l,a),budgets:()=>cc(l),setBudget:a=>lc(l,a),deleteBudget:a=>uc(l,a),keys:()=>pc(l),createKey:a=>dc(l,a),revokeKey:a=>gc(l,a),routing:{get:()=>Qa(l),set:a=>Ya(l,a),reset:()=>Za(l),preview:a=>ec(l,a)},playground:(a,A,j)=>mc(l,a,A,j)},channels:{slack:{installation:()=>Ua(l),connect:a=>Oa(l,a),mode:()=>Fa(l),manifest:()=>La(l),disconnect:()=>Ga(l),getFile:a=>Ba(l,a),uploadFile:a=>Ka(l,a)},email:{installation:a=>Ha(l,a),mode:()=>Wa(l),connect:a=>za(l,a),disconnect:a=>Va(l,a),updatePolicy:(...a)=>Ja(l,...a)},voice:{setBotName:a=>Xa(l,a)}},updateFeatureFlag:(...a)=>Ds(l,...a),updateExperimentalFeature:(...a)=>Ms(l,...a),modelDefaults:{get:()=>la(l),set:a=>ua(l,a),clear:a=>pa(l,a)},setDefaultAgent:a=>ma(l,a),sandbox:{list:()=>fo(l),snapshots:()=>ao(l),rebuildSnapshot:a=>co(l,a),fixWithAgent:()=>lo(l),createTemplate:a=>uo(l,a),updateTemplate:(...a)=>po(l,...a),removeTemplate:a=>go(l,a),buildTemplate:a=>mo(l,a),setProvider:a=>Us(l,a)},setAgentScope:(...a)=>da(l,...a),session:a=>T(l,a)}}function T(l,h){let a=null,A,j,v=null;async function k(){v||(v=zt(l,h,{showErrors:!1}).then(y=>{let C=typeof y.metadata?.opencode_model=="string"?y.metadata.opencode_model.trim():"",M=C.indexOf("/"),z=M>0&&M<C.length-1?{providerID:C.slice(0,M),modelID:C.slice(M+1)}:void 0,V=y.agent_name?.trim()||void 0;return{model:z,agent:V}}));try{return await v}catch(y){throw v=null,y}}function $(){if(a)return a;let y=mu(l,h);return y&&(a=y),a}async function w(y){let C=$();if(C)return C;let M=y?.readyTimeoutMs??18e4,z=`${l}
20
+ ${h}`,V=an.get(z);if(V)return a=await V,a;let J=(async()=>{let Q=Date.now()+M,N=()=>Math.max(0,Q-Date.now()),D=await ve(l,h,Math.min(3e4,N()));for(;Date.now()<Q&&(D==null||(D.stage==="provisioning"||D.stage==="starting")&&D.retriable);)await new Promise(Re=>setTimeout(Re,Math.min(1e3,N()))),D=await ve(l,h,Math.min(3e4,N()));if(!D||D.stage!=="ready"||!D.sandbox||!D.opencode_session_id)throw new R(`Session runtime not ready (stage: ${D?.stage??"unknown"})`,{code:"RUNTIME_UNAVAILABLE"});let U=D.sandbox.external_id;if(!U)throw new R("Session sandbox has no external_id \u2014 cannot resolve its runtime URL",{code:"RUNTIME_UNAVAILABLE"});let H=vt(U);return Hl(H,U),{opencodeSessionId:D.opencode_session_id,runtimeUrl:H,sandboxId:U}})();an.set(z,J);try{return a=await J,a}finally{an.get(z)===J&&an.delete(z)}}function F(y){let C=$();if(!C)throw new ct(y);return C}function K(){a=null,yu(l,h)}return{get:y=>zt(l,h,y),cost:()=>Yt(h,{projectId:l}),update:y=>Vo(l,h,y),delete:()=>(K(),Jo(l,h)),start:(...y)=>ve(l,h,...y),restart:()=>(K(),st(l,h)),stop:()=>(K(),it(l,h)),configState:()=>Xo(l,h),reloadConfig:y=>(K(),Qo(l,h,y)),reloadConfigStream:(...y)=>(K(),Yo(l,h,...y)),setSharing:y=>Oo(l,h,y),previews:()=>Fo(l,h),commit:y=>Do(l,h,y),publicShares:{list:()=>Lo(l,h),create:(...y)=>Go(l,h,...y),revoke:(...y)=>Bo(l,h,...y)},audit:(y,C)=>Ho(l,h,y,C),transcript:y=>Wo(l,h,y),voiceTranscript:y=>zo(l,h,y),ensureReady:w,health:y=>ll($()?.runtimeUrl??null,y),previewUrl:(y,C="/")=>pe(y,C,r(F("previewUrl").sandboxId)),proxyUrl:y=>ul(y,r(F("proxyUrl").sandboxId)),setModel:y=>{A=y},changeModel:async y=>{let C=await ta(l,h,y);return v=null,C},scope:()=>Zo(l,h),rescope:y=>ea(l,h,y),setAgent:y=>{j=y},send:async(y,C)=>{let{opencodeSessionId:M,runtimeUrl:z}=await w(),V=C?.model??A,J=C?.agent??j,Q=V&&J?{}:await k(),N=V??Q.model,D=J??Q.agent;return te(z).session.prompt({sessionID:M,parts:[{type:"text",text:y}],...N?{model:N}:{},...D?{agent:D}:{}})},abort:async()=>{let{opencodeSessionId:y,runtimeUrl:C}=await w();return te(C).session.abort({sessionID:y})},rewind:async y=>{let{opencodeSessionId:C,runtimeUrl:M}=await w();return te(M).session.revert({sessionID:C,messageID:y})},restoreRewind:async()=>{let{opencodeSessionId:y,runtimeUrl:C}=await w();return te(C).session.unrevert({sessionID:y})},stream:async y=>{let{runtimeUrl:C}=await w();return on({client:te(C),onEvent:y.onEvent,onGapRehydrate:y.onGapRehydrate,signal:y.signal})},get runtime(){return te(F("runtime").runtimeUrl)},files:{list:async y=>ze(y,(await w()).runtimeUrl),read:async y=>Ee(y,(await w()).runtimeUrl),readBlob:async y=>$e(y,(await w()).runtimeUrl),status:async()=>Ve((await w()).runtimeUrl),findFiles:async(y,C)=>Je(y,C,(await w()).runtimeUrl),findText:async y=>Xe(y,(await w()).runtimeUrl),upload:async(y,C,M)=>qe(y,C,M,(await w()).runtimeUrl),create:async y=>Qe(y,(await w()).runtimeUrl),copy:async(y,C)=>Ye(y,C,(await w()).runtimeUrl),remove:async y=>Ze(y,(await w()).runtimeUrl),mkdir:async y=>et(y,(await w()).runtimeUrl),rename:async(y,C)=>tt(y,C,(await w()).runtimeUrl)}}}return{config:t,accounts:s,accountInvites:u,projects:p,connectors:x(),project:I,session:T,github:g,billing:c,sandboxShares:f,transcribe:fc,connectStatus:m,marketplace:_,validateToken:Rs,runtime:Ph}}function Lu(){let t=typeof crypto<"u"?crypto:void 0;if(t?.randomUUID)return t.randomUUID();let e=new Uint8Array(16);if(t?.getRandomValues)t.getRandomValues(e);else for(let r=0;r<16;r++)e[r]=Math.floor(Math.random()*256);e[6]=e[6]&15|64,e[8]=e[8]&63|128;let n=[...e].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 dl={thinking:!1,toolDetails:!0,assistantMetadata:!0};function kh(t){return t&&t.charAt(0).toUpperCase()+t.slice(1)}function wh(t){let e=t/1e3;if(e<60)return`${e.toFixed(1)}s`;let n=Math.floor(e/60),r=e%60;return`${n}m ${r.toFixed(0)}s`}function Sh(t,e){if(t.type==="text"&&!t.synthetic)return`${t.text??""}
21
21
 
22
22
  `;if(t.type==="reasoning")return e.thinking?`> _Thinking:_
23
23
  >
@@ -50,15 +50,15 @@ ${s}
50
50
  ${t.state.error}
51
51
  \`\`\`
52
52
  `),n+=`
53
- `,n}return""}function oh(t,e){if(!e)return`## Assistant
53
+ `,n}return""}function vh(t,e){if(!e)return`## Assistant
54
54
 
55
- `;let n=t.agent?rh(t.agent):"Assistant",r=t.modelID||"",s="";t.time?.completed&&t.time?.created&&(s=sh(t.time.completed-t.time.created));let c=[r,s].filter(Boolean).join(" \xB7 ");return c?`## ${n} (${c})
55
+ `;let n=t.agent?kh(t.agent):"Assistant",r=t.modelID||"",s="";t.time?.completed&&t.time?.created&&(s=wh(t.time.completed-t.time.created));let c=[r,s].filter(Boolean).join(" \xB7 ");return c?`## ${n} (${c})
56
56
 
57
57
  `:`## ${n}
58
58
 
59
- `}function ah(t,e,n){let r="";t.role==="user"?r+=`## User
59
+ `}function Ch(t,e,n){let r="";t.role==="user"?r+=`## User
60
60
 
61
- `:r+=oh(t,n.assistantMetadata);for(let s of e)r+=ih(s,n);return r}function Au(t,e,n=il){let r=`# ${t.title||"Untitled Session"}
61
+ `:r+=vh(t,n.assistantMetadata);for(let s of e)r+=Sh(s,n);return r}function Gu(t,e,n=dl){let r=`# ${t.title||"Untitled Session"}
62
62
 
63
63
  `;r+=`**Session ID:** \`${t.id}\`
64
64
  `,r+=`**Created:** ${new Date(t.time.created).toLocaleString()}
@@ -66,14 +66,14 @@ ${t.state.error}
66
66
 
67
67
  `,r+=`---
68
68
 
69
- `;for(let s of e)r+=ah(s.info,s.parts,n),r+=`---
69
+ `;for(let s of e)r+=Ch(s.info,s.parts,n),r+=`---
70
70
 
71
- `;return r}function Iu(t,e){return`session-${t}.md`}function Y(t){if(!t)return"An error occurred";if(typeof t=="string"){let e=t.startsWith("Error: ")?t.slice(7):t;try{let n=JSON.parse(e);if(typeof n=="string"){e=n;try{let r=JSON.parse(e);return ct(r)||e}catch{return e}}return ct(n)||e}catch{return ch(e)??e}}return typeof t=="object"?ct(t)||"An error occurred":String(t)}function Eu(t){let e=t.indexOf("{"),n=t.lastIndexOf("}");if(!(e===-1||n===-1||n<=e))return t.slice(e,n+1)}function ch(t){let e=Eu(t);if(e)try{return ct(JSON.parse(e))}catch{return}}function ct(t){if(typeof t!="object"||t===null||Array.isArray(t))return;let e=t;if(typeof e.message=="string"&&e.message)return e.message;if(typeof e.error=="string"&&e.error)return e.error;let n=e.data;if(typeof n?.message=="string")return n.message;let r=e.error;if(typeof r?.message=="string")return r.message}function ol(t){if(!(typeof t!="string"||!t))try{return JSON.parse(t)}catch{return}}function ju(t){let e=typeof t.provider=="string"&&t.provider?t.provider:void 0,n=typeof t.code=="string"&&t.code?t.code:void 0,r=typeof t.suggestion=="string"&&t.suggestion?t.suggestion:void 0,s=typeof t.upstream_status=="number"?t.upstream_status:void 0,c=typeof t.request_id=="string"&&t.request_id?t.request_id:void 0;return!e&&!n&&!r&&s===void 0&&!c?void 0:{message:typeof t.message=="string"&&t.message||ct(t)||"",provider:e,code:n,suggestion:r,upstreamStatus:s,requestId:c}}function de(t){if(t==null)return;if(typeof t=="string"){let u=t.startsWith("Error: ")?t.slice(7):t,p=ol(u)??ol(Eu(u));return p!==void 0?de(p):void 0}if(typeof t!="object")return;let e=t,n=ju(e);if(n)return n;let r=e.error;if(r&&typeof r=="object"&&!Array.isArray(r)){let u=ju(r);if(u)return u}let s=e.data;if(s&&typeof s.responseBody=="string"){let u=ol(s.responseBody);if(u!==void 0){let p=de(u);if(p)return p}}let c=e.cause;if(c&&typeof c=="object"){let u=c.body;if(u!==void 0){let p=de(u);if(p)return p}}}var lh={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"}},uh=[{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 ph(t){return t.replace(/^oc[-_]/,"")}function lt(t){return ph(t).replace(/-/g,"_")}function rn(t){return lt(t).split(/[_\s]+/).filter(Boolean).map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" ")}function sn(t){let e=lt(t),n=lh[e];if(n)return n;for(let{prefix:r,category:s}of uh)if(e.startsWith(r))return{label:rn(t),category:s};return{label:rn(t),category:"other"}}var dh=256*1024;function gh(t){switch(t.status){case"pending":return"pending";case"running":return"running";case"completed":return"done";case"error":return"error";default:return t}}function mh(t){if(t===void 0)return{};if(t.length>dh)return{outputText:t};try{return{outputParsed:JSON.parse(t),outputText:t}}catch{return{outputText:t}}}function fh(t){if(typeof t!="object"||t===null||Array.isArray(t))return;let e=t,n=e.success===!1,r=e.error,s=typeof r=="string"&&r.length>0||typeof r=="object"&&r!==null;if(!(!n&&!s))return s?Y(r):typeof e.message=="string"&&e.message?e.message:"Tool reported failure"}function yh(t,e){let n="title"in e?e.title:void 0,r=e.status==="completed"?e.output:void 0,{outputParsed:s,outputText:c}=mh(r),u=gh(e),p=e.status==="error"?e.error:void 0;if(u==="done"){let g=fh(s);g&&(u="error",p=g)}return{name:t,title:n||sn(t).label,status:u,input:e.input,output:r,outputParsed:s,outputText:c,error:p}}function hh(t){return{kind:"text",id:t.id,text:t.text,synthetic:!!t.synthetic}}function bh(t){return{kind:"reasoning",id:t.id,text:t.text}}function xh(t){return{kind:"tool",id:t.id,tool:yh(t.tool,t.state)}}function _h(t){let e=t.mime;return{kind:"file",id:t.id,filename:t.filename,mime:e,url:t.url,isImage:e.startsWith("image/"),isPdf:e==="application/pdf"}}function Ph(t){return{kind:"subtask",id:t.id,description:t.description,agent:t.agent,prompt:t.prompt,model:t.model}}function kh(t){return{kind:"patch",id:t.id,hash:t.hash,files:t.files,fileCount:t.files.length}}function wh(t){return{kind:"snapshot",id:t.id,snapshot:t.snapshot}}function Sh(t){return{kind:"agent",id:t.id,name:t.name}}function vh(t){return{kind:"retry",id:t.id,attempt:t.attempt,message:Y(t.error),createdAt:t.time.created}}function Ch(t){return{kind:"compaction",id:t.id,auto:t.auto,overflow:!!t.overflow,tailStartId:t.tail_start_id}}function Rh(t){return{kind:"step",id:t.id,phase:"start",snapshot:t.snapshot}}function Th(t){return{kind:"step",id:t.id,phase:"finish",snapshot:t.snapshot,reason:t.reason,cost:t.cost,tokens:t.tokens}}function al(t){switch(t.type){case"text":return hh(t);case"reasoning":return bh(t);case"tool":return xh(t);case"file":return _h(t);case"subtask":return Ph(t);case"patch":return kh(t);case"snapshot":return wh(t);case"agent":return Sh(t);case"retry":return vh(t);case"compaction":return Ch(t);case"step-start":return Rh(t);case"step-finish":return Th(t);default:return{kind:"unknown",raw:t}}}function Ah(t){if(!t)return;let e=typeof t=="object"&&"name"in t&&typeof t.name=="string"?t.name:"Error",n=de(t);return{name:e,message:n?.message||Y(t),provider:n?.provider,code:n?.code,suggestion:n?.suggestion,upstreamStatus:n?.upstreamStatus,requestId:n?.requestId}}function Ih(t){switch(t.kind){case"text":case"reasoning":return t.text.trim().length>0;case"step":return!1;default:return!0}}function $u(t){let e=t.parts.map(al),n=t.info.role==="assistant"?t.info.error:void 0,r=Ah(n),s=!r&&!e.some(Ih);return{parts:e,error:r,isEmpty:s}}function ge(t){return t.type==="text"}function on(t){return t.type==="reasoning"}function se(t){return t.type==="tool"}function qu(t){return t.type==="file"}function jh(t){return t.type==="agent"}function Eh(t){return t.type==="compaction"}function $h(t){return t.type==="snapshot"}function qh(t){return t.type==="patch"}function Dh(t){if(ge(t)||on(t))return t.text}function Du(t){if(!qu(t))return!1;let e=t.mime;return e.startsWith("image/")||e==="application/pdf"}function Mh(t){let e=[],n=[];for(let r of t)Du(r)?e.push(r):n.push(r);return{attachments:e,stickyParts:n}}function Uh(t,e){let n=[];return t?.tool&&n.push(t.tool),e?.tool&&n.push(e.tool),n}function Oh(t,e,n){return n.some(r=>r.messageID===e&&r.callID===t.callID)}var Fh=new Set(["todoread","context_info"]);function Mu(t){return!Fh.has(t.tool)}function Lh(t){let e=t.tool||"";if(e==="task"||e==="agent_spawn"||e==="agent-spawn"||e==="agent_message"||e==="agent-message"||e==="agent_task"||e==="agent-task"||e==="agent_task_update"||e==="agent-task-update"||e==="agent_task_message"||e==="agent-task-message"||e==="agent_task_start"||e==="agent-task-start"||e==="task_create"||e==="task-create"||e==="task_start"||e==="task-start"||e==="task_update"||e==="task-update"||e==="task_message"||e==="task-message"){let r=t.state?.metadata?.sessionId;if(typeof r=="string"&&r)return r;let s=t.state?.title;if(s){let u=s.match(/\bses_[a-zA-Z0-9]+/);if(u)return u[0]}let c=t.state?.output;if(c){let u=c.match(/\bses_[a-zA-Z0-9]+/);if(u)return u[0]}return}let n=t.tool?.replace(/-/g,"_")||"";if(n==="session_spawn"||n==="session_start_background"){let r=t.state?.output;if(r){let s=r.match(/\*?\*?Session:?\*?\*?\s*(ses_[a-zA-Z0-9]+)/);if(s)return s[1]}return}}function Gh(t){if(t)for(let e=t.length-1;e>=0;e--){let n=t[e]?.info;if(n?.role==="assistant"&&n.error)return Y(n.error)}}function Bh(t){let e=[];for(let n of t)if(n.info.role==="assistant")for(let r of n.parts)se(r)&&Mu(r)&&e.push(r);return e}function Kh(t,e={}){switch(t){case"read":return{icon:"glasses",title:"Read",subtitle:Uu(e.filePath)};case"list":return{icon:"list",title:"List",subtitle:Ou(e.path)};case"glob":return{icon:"search",title:"Glob",subtitle:e.pattern};case"grep":return{icon:"search",title:"Grep",subtitle:e.pattern};case"webfetch":return{icon:"globe",title:"Web Fetch",subtitle:e.url};case"websearch":case"web-search":case"web_search":return{icon:"search",title:"Web Search",subtitle:e.query};case"scrape-webpage":return{icon:"globe",title:"Scrape",subtitle:e.urls?.split?.(",")[0]};case"image-search":return{icon:"image",title:"Image Search",subtitle:e.query};case"image-gen":return{icon:"image",title:"Image Gen",subtitle:e.prompt?.slice?.(0,40)};case"video-gen":return{icon:"cpu",title:"Video Gen",subtitle:e.prompt?.slice?.(0,40)};case"presentation-gen":{let n=e.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:e.slide_title||e.presentation_name}}case"show":case"show-user":return{icon:"globe",title:"Output",subtitle:e.title||e.description};case"task":return{icon:"square-kanban",title:`Agent (${e.subagent_type||"task"})`,subtitle:Fu(e)};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 (${e.agent||"KortixWorker"})`,subtitle:e.description||e.prompt?.slice(0,60)};case"bash":return{icon:"terminal",title:"Shell",subtitle:e.description};case"edit":case"morph_edit":return{icon:"file-pen",title:"Edit",subtitle:cl(e.filePath)};case"write":return{icon:"file-pen",title:"Write",subtitle:cl(e.filePath)};case"apply_patch":return{icon:"file-pen",title:"Patch",subtitle:e.files?.length?`${e.files.length} file${e.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:e.reason};case"distill":return{icon:"scissors",title:"DCP Distill"};case"compress":return{icon:"scissors",title:"DCP Compress",subtitle:e.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 (${e.mode||"summary"})`,subtitle:e.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:e.query};case"session_message":case"session-message":case"oc-session_message":case"oc-session-message":return{icon:"message-circle",title:"Message \u2192 Session",subtitle:e.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:e.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:e.project||"all"};case"session_stats":case"session-stats":case"oc-session_stats":case"oc-session-stats":return{icon:"layers",title:"Session Stats",subtitle:e.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:e.search};case"session_get":case"session-get":case"oc-session_get":case"oc-session-get":return{icon:"book-open",title:"Session Get",subtitle:e.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:e.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:e.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:e.name||e.project};case"project_select":case"project-select":case"oc-project_select":case"oc-project-select":return{icon:"folder",title:"Project Select",subtitle:e.project};case"project_create":case"project-create":case"oc-project_create":case"oc-project-create":return{icon:"folder-plus",title:"Project Create",subtitle:e.name};case"triggers":case"trigger_create":case"trigger-create":case"oc-trigger_create":case"oc-trigger-create":return{icon:"clock",title:"Create Trigger",subtitle:e.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:e.name||e.id};case"trigger_delete":case"trigger-delete":case"oc-trigger_delete":case"oc-trigger-delete":return{icon:"clock",title:"Delete Trigger",subtitle:e.name||e.id};case"trigger_update":case"trigger-update":case"oc-trigger_update":case"oc-trigger-update":return{icon:"clock",title:"Update Trigger",subtitle:e.name||e.id};case"trigger_test":case"trigger-test":case"oc-trigger_test":case"oc-trigger-test":return{icon:"clock",title:"Test Trigger",subtitle:e.name||e.id};case"trigger_pause":case"trigger-pause":case"oc-trigger_pause":case"oc-trigger-pause":return{icon:"clock",title:"Pause Trigger",subtitle:e.name||e.id};case"trigger_resume":case"trigger-resume":case"oc-trigger_resume":case"oc-trigger-resume":return{icon:"clock",title:"Resume Trigger",subtitle:e.name||e.id};case"agent_spawn":case"agent-spawn":return{icon:"cpu",title:`Agent (${e.agent_type||"worker"})`,subtitle:e.description};case"agent_message":case"agent-message":return{icon:"message-circle",title:"Agent Message",subtitle:e.agent_id};case"agent_stop":case"agent-stop":return{icon:"ban",title:"Agent Stop",subtitle:e.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:e.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:e.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:e.task_id};case"task_create":case"task-create":return{icon:"plus",title:"Create Task",subtitle:e.title};case"task_list":case"task-list":return{icon:"list",title:"Tasks",subtitle:e.status||"all"};case"task_update":case"task-update":return{icon:"refresh-cw",title:"Update Task",subtitle:e.id};case"task_done":case"task-done":return{icon:"check-circle",title:"Task Done",subtitle:e.id};case"task_delete":case"task-delete":return{icon:"trash-2",title:"Delete Task",subtitle:e.id};case"pty_spawn":return{icon:"terminal",title:"Spawn",subtitle:e.title||e.command};case"pty_read":return{icon:"terminal",title:"Terminal Output",subtitle:e.id};case"pty_write":case"pty_input":return{icon:"terminal",title:"Terminal Input",subtitle:e.id};case"pty_kill":return{icon:"terminal",title:"Kill Process",subtitle:e.id};default:return{icon:"cpu",title:t}}}function Uu(t){if(!t)return;let e=t.split("/");return e[e.length-1]||t}function cl(t){if(!t)return;let e=t.split("/"),n=e[e.length-1]||t;if(e.length<=1)return n;let r=e[e.length-2];return r?`${n} /${r}`:n}function Ou(t){if(!t)return;let e=t.lastIndexOf("/");if(!(e<0))return t.slice(0,e)||"/"}function Hh(t,e){if(!e)return t;if(t.startsWith(e)){let n=t.slice(e.length);return n.startsWith("/")?n.slice(1):n}return t}function ut(t,e=120){if(typeof t!="string")return"";let n=t.split(`
72
- `).map(r=>r.trim()).find(Boolean);return n?n.length>e?`${n.slice(0,e).trim()}\u2026`:n:""}function Fu(t){let e=ut(t.description);if(e)return e;let n=ut(t.title,80);if(n)return n;let r=ut(t.message);if(r)return r;let s=ut(t.prompt);if(s)return s;let c=ut(t.agent_id,40);return c?`Agent ${c}`:"Worker task"}function Nh(t,e){return!t||!e?[]:(t[e]??[]).filter(r=>r.severity===1).slice(0,3)}function Wh(t,e){return t.find(n=>n.tool?.callID===e)}function zh(t,e){return t.find(n=>n.tool?.callID===e)}var Vh=/\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 Jh(t){return t?t.replace(Vh,""):""}function Xh(t){let e=[],n=new Map;for(let s of t)if(s.info.role==="user"){if(n.has(s.info.id))continue;let c={userMessage:s,assistantMessages:[]};e.push(c),n.set(s.info.id,c)}let r=null;for(let s of t){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 p=n.get(c.parentID);if(p){p.assistantMessages.push(s);continue}}if(r){r.assistantMessages.push(s);continue}if(e.length>0){e[0].assistantMessages.unshift(s);continue}let u={userMessage:s,assistantMessages:[]};e.push(u)}return e}function Qh(t){let e=[];for(let n of t.assistantMessages)for(let r of n.parts)e.push({part:r,message:n});return e}function Yh(t){for(let e=t.length-1;e>=0;e--){let n=t[e].part;if(ge(n)&&n.text?.trim())return n}}function Zh(t){return t.some(({part:e})=>e.type==="tool"||e.type==="compaction"||e.type==="snapshot"||e.type==="patch")}function eb(t,e,n){if(n)return[];let r=[];for(let s of t.assistantMessages)for(let c of s.parts){if(!se(c))continue;let u=c,p=u.state?.metadata?.answers;u.tool==="question"&&(p?.length??0)>0&&r.push({part:c,message:s})}return r}function tb(t){let e=new Map;for(let n of t){if(!n.parentID)continue;let r=e.get(n.parentID);r?r.push(n.id):e.set(n.parentID,[n.id])}return e}function nb(t){let e=t-6e4;return(n,r)=>{let s=n.time.updated??n.time.created,c=r.time.updated??r.time.created,u=s>e,p=c>e;return u&&p?n.id<r.id?-1:n.id>r.id?1:0:u&&!p?-1:!u&&p?1:c-s}}function Lu(t,e){let n=t.get(e);if(!n||n.length===0)return[];let r=[];for(let s of n)r.push(s),r.push(...Lu(t,s));return r}function Gu(t){let e=t.userMessage.parts;if(e.length===0||!e.every(c=>ge(c)&&c.synthetic)||t.assistantMessages.length!==1)return!1;let r=t.assistantMessages[0].parts;if(r.length!==1)return!1;let s=r[0];return se(s)&&s.tool==="bash"}function rb(t){if(Gu(t))return t.assistantMessages[0].parts[0]}function sb(t,e){for(let n=e.length-1;n>=0;n--)if(e[n].info.role==="user")return e[n].info.id===t;return!1}function ib(t,e){return!e||!t?!1:t.type!=="idle"}function ob(t,e){return!t&&!!e}function ab(t){for(let e of t.assistantMessages){let n=e.info;if(n.error)return Y(n.error)}}function cb(t){for(let e of t.assistantMessages){let n=e.info;if(n.error)return de(n.error)}}function ll(t){if(t){if(se(t))switch(t.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 ${t.tool}...`}if(on(t)){let e=t.text?.trimStart();if(e){let n=e.match(/^\*\*(.+?)\*\*/);if(n)return`Thinking about ${n[1].trim()}...`}return"Thinking..."}if(ge(t))return"Gathering thoughts..."}}function lb(t,e){for(let n=t.length-1;n>=0;n--){let r=t[n].part,s=se(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"&&e&&e.length>0){for(let u=e.length-1;u>=0;u--){let p=e[u];if(p.info.role==="assistant")for(let g=p.parts.length-1;g>=0;g--){let f=ll(p.parts[g]);if(f)return f}}return"Delegating to agent..."}let c=ll(r);if(c)return c}return"Considering next steps..."}function ub(t){if(!Number.isFinite(t)||t<1e3)return"";let e=Math.floor(t/1e3);if(e<60)return`${e}s`;let n=Math.floor(e/60),r=e%60;return r>0?`${n}m ${r}s`:`${n}m`}var ul=1.2;function Bu(t,e){if(!t)return 0;let n=t.input??0,r=(t.output??0)+(t.reasoning??0),s=t.cache?.read??0,c=t.cache?.write??0,u=Math.max(0,n-s-c),g=[...e.tiers??[],...e.contextOver200k?[e.contextOver200k]:[]].filter(m=>n>m.contextThreshold).sort((m,_)=>_.contextThreshold-m.contextThreshold)[0]??e,f=u/1e6*g.inputPer1M;return f+=r/1e6*g.outputPer1M,s>0&&(f+=s/1e6*(g.cacheReadPer1M??g.inputPer1M)),c>0&&(f+=c/1e6*(g.cacheWritePer1M??g.inputPer1M)),f}function Ku(t,e,n,r){let s=t.cost||0;if(s>0)return s;if(!r||!e||!n)return 0;let c=r(e,n);return c?Bu(t.tokens,c):0}function Hu(t){if(t.role!=="assistant")return{};let e=t;return{providerID:e.providerID,modelID:e.modelID}}function pb(t,e){let n=0,r=0,s=0,c=0,u=0,p=0,g=!1;for(let{part:f,message:m}of t)if(f.type==="step-finish"){g=!0;let _=f,{providerID:x,modelID:I}=Hu(m.info);n+=Ku(_,x,I,e),r+=_.tokens?.input||0,s+=_.tokens?.output||0,c+=_.tokens?.reasoning||0,u+=_.tokens?.cache?.read||0,p+=_.tokens?.cache?.write||0}if(!g)for(let{message:f}of t){if(f.info.role!=="assistant")continue;let m=f.info,_=Nu(m,e);if(_<=0)continue;g=!0,n+=_;let x=m.tokens;x&&(r+=x.input??0,s+=x.output??0,c+=x.reasoning??0,u+=x.cache?.read??0,p+=x.cache?.write??0)}if(g)return{cost:n*ul,tokens:{input:r,output:s,reasoning:c,cacheRead:u,cacheWrite:p}}}function Nu(t,e){if(!e||!t.providerID||!t.modelID||!t.tokens)return 0;let n=e(t.providerID,t.modelID);return n?Bu({input:t.tokens.input,output:t.tokens.output,reasoning:t.tokens.reasoning,cache:t.tokens.cache},n):0}function db(t,e){let n=0;for(let r of t){if(r.info?.role!=="assistant")continue;let s=r.info,{providerID:c,modelID:u}=Hu(s),p=0,g=!1;for(let f of r.parts)f.type==="step-finish"&&(g=!0,p+=Ku(f,c,u,e));g||(p+=Nu(s,e)),n+=p}return n*ul}function gb(t){return t===0?"$0.00":t<.001?`$${t.toFixed(4)}`:t<.01?`$${t.toFixed(3)}`:`$${t.toFixed(2)}`}function mb(t){return t<1e3?String(t):t<1e4?`${(t/1e3).toFixed(1)}k`:`${Math.round(t/1e3)}k`}function fb(t){if(!t||t.type!=="retry")return;let e=t;return{attempt:e.attempt,message:e.message.length>60?`${e.message.slice(0,60)}...`:e.message,next:e.next}}function yb(t){if(!(!t||t.type!=="retry"))return Y(t.message)}function hb(t){return(t.info.summary?.diffs?.length??0)>0}var bb=4e3;function pt(t,e=bb){return t.length>e?`${t.slice(0,e)}
73
- \u2026`:t}function Wu(t){if(t!==void 0)try{return pt(JSON.stringify(t,null,2))}catch{return}}function G(...t){for(let e of t)if(typeof e=="string"&&e.length>0)return e}function Ue(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)?t:void 0}function xb(t){let e=G(t.input?.query)??"";if(t.status==="error")return{kind:"web-search",query:e,error:t.error??"Search failed"};let n=Ue(t.outputParsed);if(!n)return{kind:"web-search",query:e};let s=(Array.isArray(n.results)?n.results:Array.isArray(n.images)?n.images:[]).slice(0,50).map(c=>{let u=Ue(c)??{};return{title:G(u.title)??"",url:G(u.url,u.link)??"",snippet:G(u.snippet,u.description,u.source)}});return{kind:"web-search",query:G(n.query)??e,results:s.length>0?s:void 0,answer:G(n.answer)}}var _b=/<exit_code>\s*(-?\d+)\s*<\/exit_code>/;function dl(t){let e=t.match(_b);return e?Number(e[1]):void 0}function Pb(t,e,n){let r="",s=0;for(;;){let c=t.indexOf(e,s);if(c===-1)return r+t.slice(s);let u=t.indexOf(n,c+e.length);if(u===-1)return r+t.slice(s);r+=t.slice(s,c),s=u+n.length}}var kb=["<system_info>","</system_info>","<exit_code>","</exit_code>","<stderr_note>","</stderr_note>"];function wb(t){let e=-1;for(let n of kb){let r=t.indexOf(n);r!==-1&&(e===-1||r<e)&&(e=r)}return e===-1?t:t.slice(0,e)}var Sb=/\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 vb(t){return t.replace(Sb,"")}function Cb(t){let e=G(t.input?.command)??"",n=t.output??"",r=dl(n),c=vb(wb(Pb(n,"<bash_metadata>","</bash_metadata>"))).trim()||(t.status==="error"?t.error:void 0);return{kind:"shell",command:e,stdout:c||void 0,exitCode:r}}function gl(t){return G(t.input?.filePath,t.input?.file_path,t.input?.path)??""}function Rb(t){let e=t.status==="error"?t.error:t.output&&pt(t.output)||void 0;return{kind:"file-read",path:gl(t),preview:e}}function Tb(t){let e=G(t.input?.content),n=t.status==="error"?t.error:pt(e??t.output??"")||void 0;return{kind:"file-write",path:gl(t),preview:n}}var Ab=256*1024;function Ib(t,e){if(t.length+e.length>Ab)return;let n=t.split(`
71
+ `;return r}function Bu(t,e){return`session-${t}.md`}function Y(t){if(!t)return"An error occurred";if(typeof t=="string"){let e=t.startsWith("Error: ")?t.slice(7):t;try{let n=JSON.parse(e);if(typeof n=="string"){e=n;try{let r=JSON.parse(e);return lt(r)||e}catch{return e}}return lt(n)||e}catch{return Rh(e)??e}}return typeof t=="object"?lt(t)||"An error occurred":String(t)}function Nu(t){let e=t.indexOf("{"),n=t.lastIndexOf("}");if(!(e===-1||n===-1||n<=e))return t.slice(e,n+1)}function Rh(t){let e=Nu(t);if(e)try{return lt(JSON.parse(e))}catch{return}}function lt(t){if(typeof t!="object"||t===null||Array.isArray(t))return;let e=t;if(typeof e.message=="string"&&e.message)return e.message;if(typeof e.error=="string"&&e.error)return e.error;let n=e.data;if(typeof n?.message=="string")return n.message;let r=e.error;if(typeof r?.message=="string")return r.message}function Th(t){if(!Array.isArray(t))return;let e=[];for(let n of t){if(!n||typeof n!="object"||Array.isArray(n))continue;let r=n;!Number.isInteger(r.attempt)||r.attempt<1||typeof r.provider!="string"||!r.provider||typeof r.route_model!="string"||!r.route_model||typeof r.resolved_model!="string"||!r.resolved_model||typeof r.stage!="string"||!r.stage||typeof r.code!="string"&&!(typeof r.code=="number"&&Number.isFinite(r.code))||typeof r.message!="string"||!r.message||r.status!==void 0&&(!Number.isInteger(r.status)||r.status<100||r.status>599)||e.push({attempt:r.attempt,provider:r.provider,routeModel:r.route_model,resolvedModel:r.resolved_model,stage:r.stage,...typeof r.status=="number"?{status:r.status}:{},code:r.code,message:r.message})}return e.length>0?e:void 0}function gl(t){if(!(typeof t!="string"||!t))try{return JSON.parse(t)}catch{return}}function Ku(t){let e=typeof t.provider=="string"&&t.provider?t.provider:void 0,n=typeof t.code=="string"&&t.code?t.code:void 0,r=typeof t.suggestion=="string"&&t.suggestion?t.suggestion:void 0,s=typeof t.upstream_status=="number"?t.upstream_status:void 0,c=typeof t.request_id=="string"&&t.request_id?t.request_id:void 0,u=Th(t.attempt_failures);return!e&&!n&&!r&&s===void 0&&!c&&!u?void 0:{message:typeof t.message=="string"&&t.message||lt(t)||"",provider:e,code:n,suggestion:r,upstreamStatus:s,requestId:c,attemptFailures:u}}function se(t){if(t==null)return;if(typeof t=="string"){let u=t.startsWith("Error: ")?t.slice(7):t,p=gl(u)??gl(Nu(u));return p!==void 0?se(p):void 0}if(typeof t!="object")return;let e=t,n=Ku(e);if(n)return n;let r=e.error;if(r&&typeof r=="object"&&!Array.isArray(r)){let u=Ku(r);if(u)return u}let s=e.data;if(s&&typeof s.responseBody=="string"){let u=gl(s.responseBody);if(u!==void 0){let p=se(u);if(p)return p}}let c=e.cause;if(c&&typeof c=="object"){let u=c.body;if(u!==void 0){let p=se(u);if(p)return p}}}var Ah={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"}},Ih=[{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 jh(t){return t.replace(/^oc[-_]/,"")}function ut(t){return jh(t).replace(/-/g,"_")}function cn(t){return ut(t).split(/[_\s]+/).filter(Boolean).map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" ")}function ln(t){let e=ut(t),n=Ah[e];if(n)return n;for(let{prefix:r,category:s}of Ih)if(e.startsWith(r))return{label:cn(t),category:s};return{label:cn(t),category:"other"}}var Eh=256*1024;function $h(t){switch(t.status){case"pending":return"pending";case"running":return"running";case"completed":return"done";case"error":return"error";default:return t}}function qh(t){if(t===void 0)return{};if(t.length>Eh)return{outputText:t};try{return{outputParsed:JSON.parse(t),outputText:t}}catch{return{outputText:t}}}function Dh(t){if(typeof t!="object"||t===null||Array.isArray(t))return;let e=t,n=e.success===!1,r=e.error,s=typeof r=="string"&&r.length>0||typeof r=="object"&&r!==null;if(!(!n&&!s))return s?Y(r):typeof e.message=="string"&&e.message?e.message:"Tool reported failure"}function Mh(t,e){let n="title"in e?e.title:void 0,r=e.status==="completed"?e.output:void 0,{outputParsed:s,outputText:c}=qh(r),u=$h(e),p=e.status==="error"?e.error:void 0;if(u==="done"){let g=Dh(s);g&&(u="error",p=g)}return{name:t,title:n||ln(t).label,status:u,input:e.input,output:r,outputParsed:s,outputText:c,error:p}}function Uh(t){return{kind:"text",id:t.id,text:t.text,synthetic:!!t.synthetic}}function Oh(t){return{kind:"reasoning",id:t.id,text:t.text}}function Fh(t){return{kind:"tool",id:t.id,tool:Mh(t.tool,t.state)}}function Lh(t){let e=t.mime;return{kind:"file",id:t.id,filename:t.filename,mime:e,url:t.url,isImage:e.startsWith("image/"),isPdf:e==="application/pdf"}}function Gh(t){return{kind:"subtask",id:t.id,description:t.description,agent:t.agent,prompt:t.prompt,model:t.model}}function Bh(t){return{kind:"patch",id:t.id,hash:t.hash,files:t.files,fileCount:t.files.length}}function Kh(t){return{kind:"snapshot",id:t.id,snapshot:t.snapshot}}function Nh(t){return{kind:"agent",id:t.id,name:t.name}}function Hh(t){return{kind:"retry",id:t.id,attempt:t.attempt,message:Y(t.error),createdAt:t.time.created}}function Wh(t){return{kind:"compaction",id:t.id,auto:t.auto,overflow:!!t.overflow,tailStartId:t.tail_start_id}}function zh(t){return{kind:"step",id:t.id,phase:"start",snapshot:t.snapshot}}function Vh(t){return{kind:"step",id:t.id,phase:"finish",snapshot:t.snapshot,reason:t.reason,cost:t.cost,tokens:t.tokens}}function ml(t){switch(t.type){case"text":return Uh(t);case"reasoning":return Oh(t);case"tool":return Fh(t);case"file":return Lh(t);case"subtask":return Gh(t);case"patch":return Bh(t);case"snapshot":return Kh(t);case"agent":return Nh(t);case"retry":return Hh(t);case"compaction":return Wh(t);case"step-start":return zh(t);case"step-finish":return Vh(t);default:return{kind:"unknown",raw:t}}}function Jh(t){if(!t)return;let e=typeof t=="object"&&"name"in t&&typeof t.name=="string"?t.name:"Error",n=se(t);return{name:e,message:n?.message||Y(t),provider:n?.provider,code:n?.code,suggestion:n?.suggestion,upstreamStatus:n?.upstreamStatus,requestId:n?.requestId,attemptFailures:n?.attemptFailures}}function Xh(t){switch(t.kind){case"text":case"reasoning":return t.text.trim().length>0;case"step":return!1;default:return!0}}function Hu(t){let e=t.parts.map(ml),n=t.info.role==="assistant"?t.info.error:void 0,r=Jh(n),s=!r&&!e.some(Xh);return{parts:e,error:r,isEmpty:s}}function ge(t){return t.type==="text"}function un(t){return t.type==="reasoning"}function ie(t){return t.type==="tool"}function Wu(t){return t.type==="file"}function Qh(t){return t.type==="agent"}function Yh(t){return t.type==="compaction"}function Zh(t){return t.type==="snapshot"}function eb(t){return t.type==="patch"}function tb(t){if(ge(t)||un(t))return t.text}function zu(t){if(!Wu(t))return!1;let e=t.mime;return e.startsWith("image/")||e==="application/pdf"}function nb(t){let e=[],n=[];for(let r of t)zu(r)?e.push(r):n.push(r);return{attachments:e,stickyParts:n}}function rb(t,e){let n=[];return t?.tool&&n.push(t.tool),e?.tool&&n.push(e.tool),n}function sb(t,e,n){return n.some(r=>r.messageID===e&&r.callID===t.callID)}var ib=new Set(["todoread","context_info"]);function Vu(t){return!ib.has(t.tool)}function ob(t){let e=t.tool||"";if(e==="task"||e==="agent_spawn"||e==="agent-spawn"||e==="agent_message"||e==="agent-message"||e==="agent_task"||e==="agent-task"||e==="agent_task_update"||e==="agent-task-update"||e==="agent_task_message"||e==="agent-task-message"||e==="agent_task_start"||e==="agent-task-start"||e==="task_create"||e==="task-create"||e==="task_start"||e==="task-start"||e==="task_update"||e==="task-update"||e==="task_message"||e==="task-message"){let r=t.state?.metadata?.sessionId;if(typeof r=="string"&&r)return r;let s=t.state?.title;if(s){let u=s.match(/\bses_[a-zA-Z0-9]+/);if(u)return u[0]}let c=t.state?.output;if(c){let u=c.match(/\bses_[a-zA-Z0-9]+/);if(u)return u[0]}return}let n=t.tool?.replace(/-/g,"_")||"";if(n==="session_spawn"||n==="session_start_background"){let r=t.state?.output;if(r){let s=r.match(/\*?\*?Session:?\*?\*?\s*(ses_[a-zA-Z0-9]+)/);if(s)return s[1]}return}}function ab(t){if(t)for(let e=t.length-1;e>=0;e--){let n=t[e]?.info;if(n?.role==="assistant"&&n.error)return Y(n.error)}}function cb(t){let e=[];for(let n of t)if(n.info.role==="assistant")for(let r of n.parts)ie(r)&&Vu(r)&&e.push(r);return e}function lb(t,e={}){switch(t){case"read":return{icon:"glasses",title:"Read",subtitle:Ju(e.filePath)};case"list":return{icon:"list",title:"List",subtitle:Xu(e.path)};case"glob":return{icon:"search",title:"Glob",subtitle:e.pattern};case"grep":return{icon:"search",title:"Grep",subtitle:e.pattern};case"webfetch":return{icon:"globe",title:"Web Fetch",subtitle:e.url};case"websearch":case"web-search":case"web_search":return{icon:"search",title:"Web Search",subtitle:e.query};case"scrape-webpage":return{icon:"globe",title:"Scrape",subtitle:e.urls?.split?.(",")[0]};case"image-search":return{icon:"image",title:"Image Search",subtitle:e.query};case"image-gen":return{icon:"image",title:"Image Gen",subtitle:e.prompt?.slice?.(0,40)};case"video-gen":return{icon:"cpu",title:"Video Gen",subtitle:e.prompt?.slice?.(0,40)};case"presentation-gen":{let n=e.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:e.slide_title||e.presentation_name}}case"show":case"show-user":return{icon:"globe",title:"Output",subtitle:e.title||e.description};case"task":return{icon:"square-kanban",title:`Agent (${e.subagent_type||"task"})`,subtitle:Qu(e)};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 (${e.agent||"KortixWorker"})`,subtitle:e.description||e.prompt?.slice(0,60)};case"bash":return{icon:"terminal",title:"Shell",subtitle:e.description};case"edit":case"morph_edit":return{icon:"file-pen",title:"Edit",subtitle:fl(e.filePath)};case"write":return{icon:"file-pen",title:"Write",subtitle:fl(e.filePath)};case"apply_patch":return{icon:"file-pen",title:"Patch",subtitle:e.files?.length?`${e.files.length} file${e.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:e.reason};case"distill":return{icon:"scissors",title:"DCP Distill"};case"compress":return{icon:"scissors",title:"DCP Compress",subtitle:e.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 (${e.mode||"summary"})`,subtitle:e.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:e.query};case"session_message":case"session-message":case"oc-session_message":case"oc-session-message":return{icon:"message-circle",title:"Message \u2192 Session",subtitle:e.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:e.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:e.project||"all"};case"session_stats":case"session-stats":case"oc-session_stats":case"oc-session-stats":return{icon:"layers",title:"Session Stats",subtitle:e.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:e.search};case"session_get":case"session-get":case"oc-session_get":case"oc-session-get":return{icon:"book-open",title:"Session Get",subtitle:e.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:e.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:e.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:e.name||e.project};case"project_select":case"project-select":case"oc-project_select":case"oc-project-select":return{icon:"folder",title:"Project Select",subtitle:e.project};case"project_create":case"project-create":case"oc-project_create":case"oc-project-create":return{icon:"folder-plus",title:"Project Create",subtitle:e.name};case"triggers":case"trigger_create":case"trigger-create":case"oc-trigger_create":case"oc-trigger-create":return{icon:"clock",title:"Create Trigger",subtitle:e.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:e.name||e.id};case"trigger_delete":case"trigger-delete":case"oc-trigger_delete":case"oc-trigger-delete":return{icon:"clock",title:"Delete Trigger",subtitle:e.name||e.id};case"trigger_update":case"trigger-update":case"oc-trigger_update":case"oc-trigger-update":return{icon:"clock",title:"Update Trigger",subtitle:e.name||e.id};case"trigger_test":case"trigger-test":case"oc-trigger_test":case"oc-trigger-test":return{icon:"clock",title:"Test Trigger",subtitle:e.name||e.id};case"trigger_pause":case"trigger-pause":case"oc-trigger_pause":case"oc-trigger-pause":return{icon:"clock",title:"Pause Trigger",subtitle:e.name||e.id};case"trigger_resume":case"trigger-resume":case"oc-trigger_resume":case"oc-trigger-resume":return{icon:"clock",title:"Resume Trigger",subtitle:e.name||e.id};case"agent_spawn":case"agent-spawn":return{icon:"cpu",title:`Agent (${e.agent_type||"worker"})`,subtitle:e.description};case"agent_message":case"agent-message":return{icon:"message-circle",title:"Agent Message",subtitle:e.agent_id};case"agent_stop":case"agent-stop":return{icon:"ban",title:"Agent Stop",subtitle:e.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:e.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:e.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:e.task_id};case"task_create":case"task-create":return{icon:"plus",title:"Create Task",subtitle:e.title};case"task_list":case"task-list":return{icon:"list",title:"Tasks",subtitle:e.status||"all"};case"task_update":case"task-update":return{icon:"refresh-cw",title:"Update Task",subtitle:e.id};case"task_done":case"task-done":return{icon:"check-circle",title:"Task Done",subtitle:e.id};case"task_delete":case"task-delete":return{icon:"trash-2",title:"Delete Task",subtitle:e.id};case"pty_spawn":return{icon:"terminal",title:"Spawn",subtitle:e.title||e.command};case"pty_read":return{icon:"terminal",title:"Terminal Output",subtitle:e.id};case"pty_write":case"pty_input":return{icon:"terminal",title:"Terminal Input",subtitle:e.id};case"pty_kill":return{icon:"terminal",title:"Kill Process",subtitle:e.id};default:return{icon:"cpu",title:t}}}function Ju(t){if(!t)return;let e=t.split("/");return e[e.length-1]||t}function fl(t){if(!t)return;let e=t.split("/"),n=e[e.length-1]||t;if(e.length<=1)return n;let r=e[e.length-2];return r?`${n} /${r}`:n}function Xu(t){if(!t)return;let e=t.lastIndexOf("/");if(!(e<0))return t.slice(0,e)||"/"}function ub(t,e){if(!e)return t;if(t.startsWith(e)){let n=t.slice(e.length);return n.startsWith("/")?n.slice(1):n}return t}function pt(t,e=120){if(typeof t!="string")return"";let n=t.split(`
72
+ `).map(r=>r.trim()).find(Boolean);return n?n.length>e?`${n.slice(0,e).trim()}\u2026`:n:""}function Qu(t){let e=pt(t.description);if(e)return e;let n=pt(t.title,80);if(n)return n;let r=pt(t.message);if(r)return r;let s=pt(t.prompt);if(s)return s;let c=pt(t.agent_id,40);return c?`Agent ${c}`:"Worker task"}function pb(t,e){return!t||!e?[]:(t[e]??[]).filter(r=>r.severity===1).slice(0,3)}function db(t,e){return t.find(n=>n.tool?.callID===e)}function gb(t,e){return t.find(n=>n.tool?.callID===e)}var mb=/\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 fb(t){return t?t.replace(mb,""):""}function yb(t){let e=[],n=new Map;for(let s of t)if(s.info.role==="user"){if(n.has(s.info.id))continue;let c={userMessage:s,assistantMessages:[]};e.push(c),n.set(s.info.id,c)}let r=null;for(let s of t){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 p=n.get(c.parentID);if(p){p.assistantMessages.push(s);continue}}if(r){r.assistantMessages.push(s);continue}if(e.length>0){e[0].assistantMessages.unshift(s);continue}let u={userMessage:s,assistantMessages:[]};e.push(u)}return e}function hb(t){let e=[];for(let n of t.assistantMessages)for(let r of n.parts)e.push({part:r,message:n});return e}function bb(t){for(let e=t.length-1;e>=0;e--){let n=t[e].part;if(ge(n)&&n.text?.trim())return n}}function xb(t){return t.some(({part:e})=>e.type==="tool"||e.type==="compaction"||e.type==="snapshot"||e.type==="patch")}function _b(t,e,n){if(n)return[];let r=[];for(let s of t.assistantMessages)for(let c of s.parts){if(!ie(c))continue;let u=c,p=u.state?.metadata?.answers;u.tool==="question"&&(p?.length??0)>0&&r.push({part:c,message:s})}return r}function Pb(t){let e=new Map;for(let n of t){if(!n.parentID)continue;let r=e.get(n.parentID);r?r.push(n.id):e.set(n.parentID,[n.id])}return e}function kb(t){let e=t-6e4;return(n,r)=>{let s=n.time.updated??n.time.created,c=r.time.updated??r.time.created,u=s>e,p=c>e;return u&&p?n.id<r.id?-1:n.id>r.id?1:0:u&&!p?-1:!u&&p?1:c-s}}function Yu(t,e){let n=t.get(e);if(!n||n.length===0)return[];let r=[];for(let s of n)r.push(s),r.push(...Yu(t,s));return r}function Zu(t){let e=t.userMessage.parts;if(e.length===0||!e.every(c=>ge(c)&&c.synthetic)||t.assistantMessages.length!==1)return!1;let r=t.assistantMessages[0].parts;if(r.length!==1)return!1;let s=r[0];return ie(s)&&s.tool==="bash"}function wb(t){if(Zu(t))return t.assistantMessages[0].parts[0]}function Sb(t,e){for(let n=e.length-1;n>=0;n--)if(e[n].info.role==="user")return e[n].info.id===t;return!1}function vb(t,e){return!e||!t?!1:t.type!=="idle"}function Cb(t,e){return!t&&!!e}function Rb(t){for(let e of t.assistantMessages){let n=e.info;if(n.error)return Y(n.error)}}function Tb(t){for(let e of t.assistantMessages){let n=e.info;if(n.error)return se(n.error)}}function yl(t){if(t){if(ie(t))switch(t.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 ${t.tool}...`}if(un(t)){let e=t.text?.trimStart();if(e){let n=e.match(/^\*\*(.+?)\*\*/);if(n)return`Thinking about ${n[1].trim()}...`}return"Thinking..."}if(ge(t))return"Gathering thoughts..."}}function Ab(t,e){for(let n=t.length-1;n>=0;n--){let r=t[n].part,s=ie(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"&&e&&e.length>0){for(let u=e.length-1;u>=0;u--){let p=e[u];if(p.info.role==="assistant")for(let g=p.parts.length-1;g>=0;g--){let f=yl(p.parts[g]);if(f)return f}}return"Delegating to agent..."}let c=yl(r);if(c)return c}return"Considering next steps..."}function Ib(t){if(!Number.isFinite(t)||t<1e3)return"";let e=Math.floor(t/1e3);if(e<60)return`${e}s`;let n=Math.floor(e/60),r=e%60;return r>0?`${n}m ${r}s`:`${n}m`}var hl=1.2;function ep(t,e){if(!t)return 0;let n=t.input??0,r=(t.output??0)+(t.reasoning??0),s=t.cache?.read??0,c=t.cache?.write??0,u=Math.max(0,n-s-c),g=[...e.tiers??[],...e.contextOver200k?[e.contextOver200k]:[]].filter(m=>n>m.contextThreshold).sort((m,_)=>_.contextThreshold-m.contextThreshold)[0]??e,f=u/1e6*g.inputPer1M;return f+=r/1e6*g.outputPer1M,s>0&&(f+=s/1e6*(g.cacheReadPer1M??g.inputPer1M)),c>0&&(f+=c/1e6*(g.cacheWritePer1M??g.inputPer1M)),f}function tp(t,e,n,r){let s=t.cost||0;if(s>0)return s;if(!r||!e||!n)return 0;let c=r(e,n);return c?ep(t.tokens,c):0}function np(t){if(t.role!=="assistant")return{};let e=t;return{providerID:e.providerID,modelID:e.modelID}}function jb(t,e){let n=0,r=0,s=0,c=0,u=0,p=0,g=!1;for(let{part:f,message:m}of t)if(f.type==="step-finish"){g=!0;let _=f,{providerID:x,modelID:I}=np(m.info);n+=tp(_,x,I,e),r+=_.tokens?.input||0,s+=_.tokens?.output||0,c+=_.tokens?.reasoning||0,u+=_.tokens?.cache?.read||0,p+=_.tokens?.cache?.write||0}if(!g)for(let{message:f}of t){if(f.info.role!=="assistant")continue;let m=f.info,_=rp(m,e);if(_<=0)continue;g=!0,n+=_;let x=m.tokens;x&&(r+=x.input??0,s+=x.output??0,c+=x.reasoning??0,u+=x.cache?.read??0,p+=x.cache?.write??0)}if(g)return{cost:n*hl,tokens:{input:r,output:s,reasoning:c,cacheRead:u,cacheWrite:p}}}function rp(t,e){if(!e||!t.providerID||!t.modelID||!t.tokens)return 0;let n=e(t.providerID,t.modelID);return n?ep({input:t.tokens.input,output:t.tokens.output,reasoning:t.tokens.reasoning,cache:t.tokens.cache},n):0}function Eb(t,e){let n=0;for(let r of t){if(r.info?.role!=="assistant")continue;let s=r.info,{providerID:c,modelID:u}=np(s),p=0,g=!1;for(let f of r.parts)f.type==="step-finish"&&(g=!0,p+=tp(f,c,u,e));g||(p+=rp(s,e)),n+=p}return n*hl}function $b(t){return t===0?"$0.00":t<.001?`$${t.toFixed(4)}`:t<.01?`$${t.toFixed(3)}`:`$${t.toFixed(2)}`}function qb(t){return t<1e3?String(t):t<1e4?`${(t/1e3).toFixed(1)}k`:`${Math.round(t/1e3)}k`}function Db(t){if(!t||t.type!=="retry")return;let e=t,n=Y(e.message);return{attempt:e.attempt,message:n.length>60?`${n.slice(0,60)}...`:n,next:e.next,details:se(e.message)}}function Mb(t){if(!(!t||t.type!=="retry"))return Y(t.message)}function Ub(t){return(t.info.summary?.diffs?.length??0)>0}var Ob=4e3;function dt(t,e=Ob){return t.length>e?`${t.slice(0,e)}
73
+ \u2026`:t}function sp(t){if(t!==void 0)try{return dt(JSON.stringify(t,null,2))}catch{return}}function G(...t){for(let e of t)if(typeof e=="string"&&e.length>0)return e}function Oe(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)?t:void 0}function Fb(t){let e=G(t.input?.query)??"";if(t.status==="error")return{kind:"web-search",query:e,error:t.error??"Search failed"};let n=Oe(t.outputParsed);if(!n)return{kind:"web-search",query:e};let s=(Array.isArray(n.results)?n.results:Array.isArray(n.images)?n.images:[]).slice(0,50).map(c=>{let u=Oe(c)??{};return{title:G(u.title)??"",url:G(u.url,u.link)??"",snippet:G(u.snippet,u.description,u.source)}});return{kind:"web-search",query:G(n.query)??e,results:s.length>0?s:void 0,answer:G(n.answer)}}var Lb=/<exit_code>\s*(-?\d+)\s*<\/exit_code>/;function xl(t){let e=t.match(Lb);return e?Number(e[1]):void 0}function Gb(t,e,n){let r="",s=0;for(;;){let c=t.indexOf(e,s);if(c===-1)return r+t.slice(s);let u=t.indexOf(n,c+e.length);if(u===-1)return r+t.slice(s);r+=t.slice(s,c),s=u+n.length}}var Bb=["<system_info>","</system_info>","<exit_code>","</exit_code>","<stderr_note>","</stderr_note>"];function Kb(t){let e=-1;for(let n of Bb){let r=t.indexOf(n);r!==-1&&(e===-1||r<e)&&(e=r)}return e===-1?t:t.slice(0,e)}var Nb=/\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 Hb(t){return t.replace(Nb,"")}function Wb(t){let e=G(t.input?.command)??"",n=t.output??"",r=xl(n),c=Hb(Kb(Gb(n,"<bash_metadata>","</bash_metadata>"))).trim()||(t.status==="error"?t.error:void 0);return{kind:"shell",command:e,stdout:c||void 0,exitCode:r}}function _l(t){return G(t.input?.filePath,t.input?.file_path,t.input?.path)??""}function zb(t){let e=t.status==="error"?t.error:t.output&&dt(t.output)||void 0;return{kind:"file-read",path:_l(t),preview:e}}function Vb(t){let e=G(t.input?.content),n=t.status==="error"?t.error:dt(e??t.output??"")||void 0;return{kind:"file-write",path:_l(t),preview:n}}var Jb=256*1024;function Xb(t,e){if(t.length+e.length>Jb)return;let n=t.split(`
74
74
  `),r=e.split(`
75
- `),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 p=[];for(let g=0;g<s;g++)p.push({type:"unchanged",text:n[g]});for(let g=s;g<c;g++)p.push({type:"removed",text:n[g]});for(let g=s;g<u;g++)p.push({type:"added",text:r[g]});for(let g=c;g<n.length;g++)p.push({type:"unchanged",text:n[g]});return p}function jb(t){let e=G(t.input?.oldString),n=G(t.input?.newString),r=e!==void 0&&n!==void 0?Ib(e,n):void 0;return{kind:"file-edit",path:gl(t),diff:r}}var Vu=/^Found\s+(\d+)\s+match/i,Eb=/^(\/[^:]+?):\s*/,zu=/Line\s+(\d+):/g;function $b(t){let e=t.trim(),n=e.match(Vu),r=n?e.slice(n[0].length).trim():e;if(!r)return[];let s=[];for(let c of r.split(/\n\n+/)){let u=c.trim();if(!u)continue;let p=u.match(Eb);if(!p)continue;let g=p[1],f=u.slice(p[0].length),m=[],_;for(zu.lastIndex=0;(_=zu.exec(f))!==null;)m.push({line:Number(_[1]),contentStart:_.index+_[0].length,headerStart:_.index});for(let x=0;x<m.length;x++){let I=x+1<m.length?m[x+1].headerStart:f.length,T=f.slice(m[x].contentStart,I).trim();s.push({path:g,line:m[x].line,content:T.endsWith(";")?T.slice(0,-1):T})}}return s}function qb(t){return t.trim().split(`
76
- `).map(e=>e.trim()).filter(e=>e.startsWith("/")||e.startsWith("./")||e.startsWith("~")).map(e=>({path:e}))}function Db(t){let e=G(t.input?.pattern,t.input?.query)??"";if(t.status==="error"||!t.output)return{kind:"search",pattern:e};let n=Vu.test(t.output.trim())?$b(t.output):qb(t.output);return{kind:"search",pattern:e,matches:n.length>0?n.slice(0,200):void 0}}function Mb(t){let e=G(t.input?.description,t.input?.title,t.input?.prompt)??t.title,n=G(t.input?.subagent_type,t.input?.agent);return{kind:"task",description:e,agent:n}}function pl(t){let e=Ue(t)??{};return{content:G(e.content)??"",status:G(e.status)??"pending",priority:G(e.priority)}}function Ub(t){let e=t.input?.todos;if(Array.isArray(e))return{kind:"todo",items:e.map(pl)};if(Array.isArray(t.outputParsed))return{kind:"todo",items:t.outputParsed.map(pl)};let n=Ue(t.outputParsed);return n&&Array.isArray(n.todos)?{kind:"todo",items:n.todos.map(pl)}:{kind:"todo",items:[]}}function Ob(t){return{kind:"question",questions:(Array.isArray(t.input?.questions)?t.input.questions:[]).map(r=>{let s=Ue(r)??{},u=(Array.isArray(s.options)?s.options:[]).flatMap(p=>{let g=Ue(p),f=g&&G(g.label);return f?[{label:f,description:g?G(g.description):void 0}]:[]});return{question:G(s.question)??"",header:G(s.header),options:u}})}}function Fb(t){let n=t.input&&Object.keys(t.input).length>0?Wu(t.input):void 0,r;return t.outputParsed!==void 0?r=typeof t.outputParsed=="string"?pt(t.outputParsed):Wu(t.outputParsed):t.outputText!==void 0?r=pt(t.outputText):r=t.error,{kind:"generic",label:t.title,inputPretty:n,outputPretty:r}}function Ju(t){switch(lt(t.name)){case"web_search":case"websearch":case"image_search":return xb(t);case"bash":return Cb(t);case"read":return Rb(t);case"write":return Tb(t);case"edit":case"morph_edit":return jb(t);case"grep":case"glob":return Db(t);case"task":return Mb(t);case"todowrite":return Ub(t);case"question":case"ask":return Ob(t);default:return Fb(t)}}function an(t){try{return typeof process<"u"?process.env?.[t]:void 0}catch{return}}function Lb(t,e){if(t==null)return e;let n=t.trim().toLowerCase();return["1","true","yes","y","on"].includes(n)?!0:["0","false","no","n","off"].includes(n)?!1:e}function Gb(t){if(t==null)return;let e=t.trim().toLowerCase();if(["1","true","yes","y","on"].includes(e))return!0;if(["0","false","no","n","off"].includes(e))return!1}function ml(t,e,n){return t!==void 0?t:Lb(an(e),n)}var Bb={get disableMobileAdvertising(){return ml(E().featureFlags?.disableMobileAdvertising,"NEXT_PUBLIC_DISABLE_MOBILE_ADVERTISING",!1)},get enableDinoGame(){return ml(E().featureFlags?.enableDinoGame,"NEXT_PUBLIC_ENABLE_DINO_GAME",!1)},get enableProjects(){return ml(E().featureFlags?.enableProjects,"NEXT_PUBLIC_ENABLE_PROJECTS",!1)},get enableAutoModel(){return!1}};var dt="kortix-active-instance",Xu=["/dashboard","/agents","/p","/workspace","/settings","/browser","/desktop","/services","/sessions","/terminal","/files","/scheduled-tasks","/commands","/tools","/configuration","/changelog","/legacy","/credits-explained"];function Qu(t){return Xu.some(e=>t===e||t.startsWith(`${e}/`))}function Oe(t){let e=t.match(/^\/instances\/([^/]+)(?:\/(.*))?$/);if(!e)return null;let n=decodeURIComponent(e[1]),r=e[2]??"";return{instanceId:n,innerPath:r?`/${r}`:""}}function Kb(t){let e=Oe(t);return!!e&&e.innerPath===""}function Hb(t){let e=Oe(t);return!e||!e.innerPath?t:e.innerPath}function Yu(t,e){if(!t)return e;if(e.startsWith("/")||(e=`/${e}`),e.startsWith("/instances/")){let n=Oe(e);return n?`/instances/${encodeURIComponent(t)}${n.innerPath}`:e}return Qu(e)?`/instances/${encodeURIComponent(t)}${e}`:e}function Zu(t){return t?Oe(t)?.instanceId??null:null}function Nb(){return typeof window>"u"?null:Zu(window.location.pathname)||ep()}function ep(){if(typeof document>"u")return null;let t=document.cookie.match(new RegExp(`(?:^|; )${dt}=([^;]+)`));return t?decodeURIComponent(t[1]):null}function Wb(t){if(typeof document>"u")return;let e=n=>{document.cookie=n};if(typeof window<"u"&&window.location.pathname.startsWith("/projects")){e(`${dt}=; Max-Age=0; Path=/; SameSite=Lax`);return}if(!t){e(`${dt}=; Max-Age=0; Path=/; SameSite=Lax`);return}e(`${dt}=${encodeURIComponent(t)}; Path=/; SameSite=Lax`)}function zb(t,e){return e?Yu(e,t):t}function Vb(t){let e=Oe(t);return e?e.innerPath||"/dashboard":t}function tp(t){if(t instanceof Error)return t.message;if(typeof t=="string")return t;if(t&&typeof t=="object")try{return JSON.stringify(t)}catch{return String(t)}return String(t??"")}function np(t){let e=tp(t).trim();if(!e)return null;let n=[e,e.replace(/^Failed to perform action:\s*/i,"").trim()],r=e.indexOf("{");r>=0&&n.push(e.slice(r));for(let s of n)if(s)try{return JSON.parse(s)}catch{}return null}function fl(t){let e=np(t);if(!e||typeof e!="object")return null;let n=e;return n.name==="ConfigInvalidError"?n:null}function Jb(t){return fl(t)!==null}function rp(t){let e=fl(t);if(e){let s=(e.data?.path??"OpenCode config").replace(/^\/workspace\//,""),c=e.data?.issues?.[0]?.message,u=e.data?.issues?.[0]?.path?.join("."),p=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. ${p}`,detail:c?`${u?`${u}: `:""}${c}`:void 0}}let n=tp(t);return/sandbox not ready \(status: stopped\)/.test(n)?{title:"Session is waking up",message:"This session slept to save compute. Your conversation is safe \u2014 sending a message wakes it back up."}:{title:"OpenCode failed to load",message:n||"The sandbox is running, but OpenCode returned an error."}}function W(){let t=an("BACKEND_URL")||E().backendUrl;return t||"http://localhost:8008/v1"}function gt(t){if(typeof t=="string"){let e=t.trim();return e.length>0?e:void 0}if(Array.isArray(t)){for(let e of t){let n=gt(e);if(n)return n}return}if(t&&typeof t=="object"){let e=t;return gt(e.sandboxId??e.id??e.slug??Object.values(e)[0])}}var sp=["http://localhost:8008/v1","http://127.0.0.1:8008/v1"];function ip(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return`${t.slice(0,e)}/platform/local-bridge/status`}function Xb(t){return t==="running"||t==="active"?"active":t==="queued"||t==="branching"||t==="provisioning"?"provisioning":t==="failed"||t==="error"?"error":t==="stopped"||t==="completed"||t==="archived"?"stopped":t||"unknown"}function yl(t,e,n){let r=n?.external_id||e.sandbox_url?.match(/\/p\/([^/]+)\//)?.[1]||e.sandbox_id;return{sandbox_id:n?.sandbox_id||e.sandbox_id||e.session_id,external_id:r,name:e.name||`${t.name} session`,provider:n?.provider||e.sandbox_provider||"daytona",base_url:n?.base_url||e.sandbox_url||(n?.external_id?`${W()}/p/${n.external_id}/${re.KORTIX_MASTER}`:""),status:Xb(n?.status||e.status),metadata:{...e.metadata??{},project_id:t.project_id,session_id:e.session_id,project_name:t.name,runtime_status:n?.status,error:e.error},created_at:n?.created_at||e.created_at,updated_at:n?.updated_at||e.updated_at}}async function hl(){let t=await ke(),e=[];for(let n of t){let r=await De(n.project_id).catch(()=>[]);for(let s of r)e.push({project:n,session:s,runtime:null,sandbox:yl(n,s,null)})}return e.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 ve(t){let e=await hl();return t?e.find(n=>n.sandbox.sandbox_id===t||n.sandbox.external_id===t||n.session.session_id===t||n.runtime?.external_id===t)??null:e[0]??null}async function cn(t,e={}){let n={"Content-Type":"application/json",...e.headers},r=e.signal??AbortSignal.timeout(3e4),s=await q(`${W()}${t}`,{...e,headers:n,signal:r}),c=await s.text().catch(()=>{}),u;if(c)try{u=JSON.parse(c)}catch{}if(!s.ok){let p=u?.error||u?.message||u?.detail||c||`Platform API error ${s.status}`,g=new R(p,{status:s.status,code:u?.code||u?.error_code||String(s.status),details:u??(c?{rawText:c}:void 0),response:s,endpoint:t});throw s.status===402&&(g=be(Object.assign(g,{response:s,status:s.status,data:u}))),g}return u}function bl(t){if(!t.external_id){if(t.base_url)return t.base_url;throw new Error(`Cannot build sandbox URL: missing external_id for ${t.provider} sandbox "${t.sandbox_id}"`)}return`${W()}/p/${t.external_id}/${re.KORTIX_MASTER}`}function Qb(t,e){return t.external_id?`${W()}/p/${t.external_id}/${e}`:null}async function Yb(){let t=await i.get("/setup/sandbox-providers");if(t.error)throw t.error;return t.data}async function op(t){let e=await ve();if(e)return{sandbox:e.sandbox,created:!1};let r=(await ke())[0];if(!r)throw new Error("Create a project before starting a sandbox");let s=await Me(r.project_id,{...t?.provider?{provider:t.provider}:{}}),c=(await Se(r.project_id,s.session_id))?.sandbox??null;return{sandbox:yl(r,s,c),created:!0}}async function Zb(){return(await ve().catch(()=>null))?.sandbox??null}async function ex(t){return{sandbox:(await op(t)).sandbox}}async function tx(t){let e=gt(t);return e?(await ve(e).catch(()=>null))?.sandbox??null:null}async function nx(t,e){throw await ve(t)?new Error("Renaming project-session sandboxes is not exposed by the current API"):new Error("Project session sandbox not found")}async function rx(t){let e=gt(t);return(await hl().catch(()=>[])).map(r=>r.sandbox).filter(r=>!e||r.sandbox_id===e||r.external_id===e)}async function sx(){if(typeof window>"u")return null;let t=W(),e=Array.from(new Set([t,...sp]));for(let n of e)try{let r=await fetch(ip(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 ix(t){if(!t)throw new Error("No sandbox selected for workload restart");let e=await ve(t);if(!e)throw new Error("Project session sandbox not found");await rt(e.project.project_id,e.session.session_id)}async function ox(t){if(!t)throw new Error("No sandbox selected to stop");let e=await ve(t);if(!e)throw new Error("Project session sandbox not found");await st(e.project.project_id,e.session.session_id)}async function ax(t){throw new Error("Cancellation is not exposed for project-session sandboxes")}async function cx(t){throw new Error("Reactivation is not exposed for project-session sandboxes")}async function lx(t){throw new Error("Sandbox members moved to project access; use project members for project-session sandboxes")}async function ux(t,e,n="member"){throw new Error("Sandbox members moved to project access; invite the user to the project instead")}async function px(t,e){throw new Error("Sandbox members moved to project access; update project access instead")}async function dx(t,e,n){throw new Error("Sandbox members moved to project access; update project access instead")}async function gx(t,e,n){throw new Error("Sandbox member spend caps are not exposed for project-session sandboxes")}async function mx(t){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function fx(t,e){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function yx(t,e,n,r){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function xl(t,e,n){let r=bl(t),s=await q(`${xe(r)}${e}`,{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 hx(t,e){return xl(t,`/kortix/projects/${encodeURIComponent(e)}/members`,{method:"GET"})}async function bx(t,e,n,r="member"){await xl(t,`/kortix/projects/${encodeURIComponent(e)}/members`,{method:"POST",body:JSON.stringify({user_id:n,role:r})})}async function xx(t,e,n){await xl(t,`/kortix/projects/${encodeURIComponent(e)}/members/${encodeURIComponent(n)}`,{method:"DELETE"})}async function _x(t,e){throw new Error("Sandbox invites moved to project access for project-session sandboxes")}async function Px(t){let e=await cn(`/platform/invites/${encodeURIComponent(t)}`,{method:"GET"});if(!e.success||!e.data)throw new Error(e.error||"Invite not found");return e.data}async function kx(t){let e=await cn(`/platform/invites/${encodeURIComponent(t)}/accept`,{method:"POST"});if(!e.success||!e.data)throw new Error(e.error||"Failed to accept invite");return e.data}async function wx(t){let e=await cn(`/platform/invites/${encodeURIComponent(t)}/decline`,{method:"POST"});if(!e.success)throw new Error(e.error||"Failed to decline invite")}async function Sx(t){throw new Error("Backups are not exposed for project-session sandboxes")}async function vx(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function Cx(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function Rx(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function Tx(t){throw new Error("SSH setup is not exposed for project-session sandboxes")}async function Ax(t){throw new Error("SSH connection details are not exposed for project-session sandboxes")}var ap=["pulling","patching","stopping","removing","recreating","restarting","verifying","starting","health_check"];function Ix(t){return ap.includes(t)}async function jx(t){return{phase:"idle",progress:0,message:"Sandbox image updates are managed by project-session provisioning.",targetVersion:null,previousVersion:null,currentVersion:t?.version??null,error:null,startedAt:null,updatedAt:null}}async function Ex(t){let e=t?`?channel=${t}`:"",n=await fetch(`${W()}/platform/sandbox/version/latest${e}`,{headers:{Accept:"application/json"}});if(!n.ok)throw new Error(`Version check failed: ${n.status}`);let r=await n.json();try{let s=await cp(t||"stable");r.changelog=s.find(c=>c.version===r.version)??s[0]??null}catch{r.changelog=null}return r}async function cp(t){let e=t?`?channel=${t}`:"",n=await fetch(`${W()}/platform/sandbox/version/changelog${e}`,{headers:{Accept:"application/json"}});if(!n.ok)throw new Error(`Changelog fetch failed: ${n.status}`);return(await n.json()).changelog}async function $x(){let t=await fetch(`${W()}/platform/sandbox/version/all`,{headers:{Accept:"application/json"}});if(!t.ok)throw new Error(`All versions fetch failed: ${t.status}`);return t.json()}async function qx(t,e){throw new Error("Sandbox image updates are managed by project-session provisioning")}async function Dx(t){}async function Mx(t){}async function Ux(t){return{serverTypes:[],location:t||"hel1"}}async function Ox(t){throw new Error("Retired instance provisioning is unavailable. Create a project session with daytona, platinum, or e2b.")}async function Fx(t){let e=await i.delete(`/platform/sandbox?sandbox_id=${t}`);if(e.error)throw e.error;return e.data}async function Lx(t,e){await i.post("/platform/sandbox/mark-error",{sandbox_id:t,error_message:e},{showErrors:!1,timeout:1e4})}async function Gx(){let t=await i.post("/platform/sandbox/claim-computer",{},{timeout:6e4});if(t.error)throw t.error;return t.data}async function Bx(t){let e=await i.get(`/platform/sandbox/${t}/status`,{showErrors:!1,timeout:1e4});return e.success?e.data??null:null}function Kx(t,e){return`${W()}/platform/sandbox/${t}/provision-stream?token=${encodeURIComponent(e)}`}var ie=class extends Error{constructor(n,r,s){super(n);this.status=r;this.body=s;this.name="HostBoundaryError"}status;body};function ln(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return/\/v1$/.test(e)?e:`${e}/v1`}function _l(t,e){let n=new Headers(t.headers);return n.set("Accept","application/json"),e&&n.set("Content-Type","application/json"),t.accessToken&&n.set("Authorization",`Bearer ${t.accessToken}`),n}async function un(t){let e=await t.text().catch(()=>"");if(!e)return null;try{return JSON.parse(e)}catch{return e}}function pn(t,e){if(e&&typeof e=="object"){let n=e;for(let r of["error_description","error","message"])if(typeof n[r]=="string"&&n[r])return n[r]}return typeof e=="string"&&e?e:t.statusText||`HTTP ${t.status}`}async function B(t,e,n){let r=n?.body!==void 0,s=await fetch(`${ln(e.backendUrl)}${t}`,{method:n?.method??"GET",headers:_l(e,r),...r?{body:JSON.stringify(n.body)}:{},...e.signal?{signal:e.signal}:{},...e.cache?{cache:e.cache}:{},...e.next?{next:e.next}:{}}),c=await un(s);if(!s.ok)throw new ie(pn(s,c),s.status,c);return c}function Hx(t){let e=new URLSearchParams;t?.query&&e.set("query",t.query),t?.type&&e.set("type",t.type),t?.source&&e.set("source",t.source),t?.limit!==void 0&&e.set("limit",String(t.limit)),t?.offset!==void 0&&e.set("offset",String(t.offset));let n=e.toString();return n?`?${n}`:""}function Nx(t,e){return B(`/marketplace/items${Hx(e)}`,t)}function Wx(t){return B("/marketplace/marketplaces",t)}function zx(t,e){return B(`/marketplace/items/${encodeURIComponent(t)}`,e)}function Vx(t,e,n){return B(`/marketplace/items/${encodeURIComponent(t)}/file?path=${encodeURIComponent(e)}`,n)}function Jx(t,e){return B("/access/check-email",e,{method:"POST",body:{email:t}})}function Xx(t,e){return B("/access/request-access",e,{method:"POST",body:t})}function Qx(t){return B("/auth/logout",t,{method:"POST",body:{}})}function Yx(t,e){return B(`/oauth/authorize/consent/${encodeURIComponent(t)}`,e)}function Zx(t,e){return B("/oauth/authorize/consent",e,{method:"POST",body:{request_id:t.requestId,approved:t.approved}})}function e_(t,e){return B(`/setup-links/connectors/${encodeURIComponent(t)}`,e)}function t_(t,e){return B(`/setup-links/connectors/${encodeURIComponent(t)}/start`,e,{method:"POST",body:{}})}function n_(t,e){return B(`/setup-links/connectors/${encodeURIComponent(t)}/finalize`,e,{method:"POST",body:{}})}function r_(t,e){return B(`/setup-links/secret/${encodeURIComponent(t)}`,e)}function s_(t,e,n){return B(`/setup-links/secret/${encodeURIComponent(t)}`,n,{method:"POST",body:{values:e}})}function i_(t,e){return B(`/p/public-share/${encodeURIComponent(t)}`,e)}function o_(t,e,n){return B(`/projects/${encodeURIComponent(t)}/sessions/${encodeURIComponent(e)}/start`,n,{method:"POST",body:{}})}function a_(t){return B("/system/maintenance",t)}function c_(t,e){return B("/system/maintenance",e,{method:"PUT",body:t})}function l_(t){return B("/user-roles",t)}function u_(t,e){return B("/system/demo-request",e,{method:"POST",body:t})}async function p_(t,e,n){let r=new URLSearchParams({format:e.format});e.action&&r.set("action",e.action),e.actor&&r.set("actor",e.actor),e.project_id&&r.set("project_id",e.project_id),e.session_id&&r.set("session_id",e.session_id),e.actor_type&&r.set("actor_type",e.actor_type),e.source&&r.set("source",e.source),e.phase&&r.set("phase",e.phase),e.outcome&&r.set("outcome",e.outcome),e.request_id&&r.set("request_id",e.request_id),e.correlation_id&&r.set("correlation_id",e.correlation_id),e.resource_type&&r.set("resource_type",e.resource_type),e.since&&r.set("since",e.since),e.until&&r.set("until",e.until),e.q&&r.set("q",e.q),e.cursor&&r.set("cursor",e.cursor),e.limit!=null&&r.set("limit",String(e.limit));let s=await fetch(`${ln(n.backendUrl)}/accounts/${encodeURIComponent(t)}/audit/export?${r}`,{headers:_l(n,!1),...n.signal?{signal:n.signal}:{}});if(!s.ok){let c=await un(s);throw new ie(pn(s,c),s.status,c)}return{blob:await s.blob(),filename:s.headers.get("content-disposition")?.match(/filename="([^"]+)"/)?.[1]??null,capped:s.headers.get("x-audit-capped")==="true",rowCount:s.headers.get("x-audit-row-count"),complete:s.headers.get("x-audit-complete")!=="false",nextCursor:s.headers.get("x-audit-next-cursor")||null}}async function d_(t,e){let n=await fetch(`${ln(e.backendUrl)}/admin/stress-test/run`,{method:"POST",headers:_l(e,!0),body:JSON.stringify(t),...e.signal?{signal:e.signal}:{}});if(!n.ok){let r=await un(n);throw new ie(pn(n,r),n.status,r)}if(!n.body)throw new ie("No response body",n.status,null);return n.body}var g_=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function lp(t,e){return g_.test(e)?new URL(`templates/public/${e.toLowerCase()}`,`${ln(t)}/`):null}async function m_(t,e,n){let r=lp(t,e);if(!r)throw new ie("Invalid shareId parameter",400,null);let s=await fetch(r,{signal:n}),c=await un(s);if(!s.ok)throw new ie(pn(s,c),s.status,c);return c}async function f_(){let t=await i.get("/platform/github-app/status",{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub App status request failed");return t.data}async function y_(t={}){let e=await i.post("/platform/github-app/manifest-start",t,{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App manifest-start request failed");return e.data}async function h_(t){let e=await i.post("/platform/github-app/app",{app_id:t.appId,private_key:t.privateKey,installation_id:t.installationId,slug:t.slug},{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App configuration request failed");return e.data}async function b_(t){let e=await i.post("/platform/github-app/pat",t,{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub token configuration request failed");return e.data}async function x_(){let t=await i.delete("/platform/github-app",{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub App disconnect request failed");return t.data}function up(t){try{let e=new URL(t);if(/^\/proxy\/\d+(?:\/|$)/.test(e.pathname))return`${e.origin}/v1/p/auth`;let n=e.pathname.indexOf("/p/");return n!==-1?`${e.origin}${e.pathname.slice(0,n)}/p/auth`:`${e.origin}/v1/p/auth`}catch{return null}}function __(t,e){try{let n=new URL(t),r=n.pathname;if(!(/^\/v1\/p\/[^/]+\/\d+(?:\/|$)/.test(r)||/^\/proxy\/\d+(?:\/|$)/.test(r)))return!1;let c=new Set;if(e)try{c.add(new URL(e).origin)}catch{}return typeof window<"u"&&c.add(window.location.origin),c.size===0||c.has(n.origin)}catch{return!1}}function Pl(t,e){return __(t,e)?(e?up(e):null)??up(t):null}function P_(t){try{return/^p\d+-[^.]+\./.test(new URL(t).hostname)}catch{return!1}}function k_(t,e){try{let n=new URL(t);return n.searchParams.set("token",e),n.toString()}catch{return t}}async function w_(t,e={}){let n=Pl(t,e.serverUrl);if(!n)return!1;let r=await me();if(!r)return!1;try{return(await fetch(n,{method:"POST",credentials:"include",headers:{Authorization:`Bearer ${r}`,"Content-Type":"application/json"}})).ok}catch{return!1}}var S_=3e3;function pp(t){return!Number.isFinite(t)||t<100||t>599?"unknown":t===502||t===503||t===504?"unreachable":t===401||t===403?"unknown":"reachable"}async function v_(t,e){if(!t||e?.signal?.aborted)return"unknown";let n=new AbortController,r=()=>n.abort();e?.signal?.addEventListener("abort",r);let s=setTimeout(r,e?.timeoutMs??3e3);try{let c=await fetch(t,{method:"HEAD",credentials:"include",cache:"no-store",signal:n.signal});return pp(c.status)}catch{return"unknown"}finally{clearTimeout(s),e?.signal?.removeEventListener("abort",r)}}function kl(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return e}function C_(t,e){return`${kl(t)}/presentation-templates/${encodeURIComponent(e)}/pdf#toolbar=0&navpanes=0&scrollbar=0&view=FitH`}function R_(t,e){return`${kl(t)}/presentation-templates/${encodeURIComponent(e)}/image.png`}function dp(t,e){return`${kl(t)}/presentation/convert-to-${e}`}async function T_(t,e,n,r){let s=dp(e,t),c=r?.pollIntervalMs??2500,u=r?.timeoutMs??4*6e4,p=Date.now(),g=!1;for(;;){let f=await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({presentation_path:n,download:!0}),...r?.signal?{signal:r.signal}:{}}),m=f.headers.get("content-type")||"";if(f.ok&&(m.includes("pdf")||m.includes("presentation")||m.includes("octet-stream"))){let T=await f.blob();if(T.size===0)throw new Error("Downloaded file is empty");return T}if(f.status===202){if(g||(g=!0,r?.onGenerating?.()),Date.now()-p>u)throw new Error(`Timed out waiting for the ${t.toUpperCase()} to generate`);await new Promise((T,l)=>{let h=setTimeout(T,c);r?.signal?.addEventListener("abort",()=>{clearTimeout(h),l(r.signal?.reason??new DOMException("Aborted","AbortError"))},{once:!0})});continue}let x=await f.text().catch(()=>""),I=f.statusText;try{let T=JSON.parse(x);I=String(T.error||T.detail||T.message||I)}catch{x&&(I=x)}throw new Error(`Failed to download ${t.toUpperCase()}: ${I} (HTTP ${f.status})`)}}function mp(t){let e=t.fetch??globalThis.fetch,n=t.baseUrl.replace(/\/$/,"");return async({limit:r,before:s})=>{let c=new URLSearchParams({limit:String(r)});s&&c.set("before",s);let u=await t.getToken?.(),p=await e(`${n}/session/${encodeURIComponent(t.sessionId)}/message?${c}`,{headers:u?{Authorization:`Bearer ${u}`}:void 0});if(!p.ok)throw new Error(`Session synchronization failed: ${p.status}`);return{messages:await p.json(),nextCursor:p.headers.get("x-next-cursor")||void 0}}}function fp(t){return A_(mp(t))}function yp(t){let e=t.fetch??globalThis.fetch,n=t.baseUrl.replace(/\/$/,""),r=mp(t),s=async c=>{let u=await t.getToken?.(),p=await e(`${n}${c}`,{headers:u?{Authorization:`Bearer ${u}`}:void 0});if(!p.ok)throw new Error(`Session synchronization failed: ${p.status}`);return p};return new wl({...t,loadPage:r,loadStatus:async()=>(await(await s("/session/status")).json())[t.sessionId]??{type:"idle"}})}async function A_(t){let e=new Map,n=new Set,r;do{let s=await t({limit:50,...r?{before:r}:{}});for(let c of s.messages)e.set(c.info.id,c);if(r=s.nextCursor,r&&n.has(r))throw new Error(`Session history cursor repeated: ${r}`);r&&n.add(r)}while(r);return[...e.values()].sort((s,c)=>s.info.id.localeCompare(c.info.id))}var I_={now:Date.now,setInterval:(t,e)=>setInterval(t,e),clearInterval:t=>clearInterval(t),setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t)},gp=500,wl=class{options;scheduler;livenessIntervalMs;snapshot={freshness:"idle",hasOlder:!1,isLoadingOlder:!1,isPromptObservedBusy:!1};nextCursor;knownUserMessageIds=new Set;olderHistoryStarted=!1;tailRequest;olderRequest;livenessTimer;promptSettlementTimer;promptObservationPhase="idle";lastActivityAt;listeners=new Set;destroyed=!1;constructor(e){this.options=e,this.scheduler=e.scheduler??I_,this.livenessIntervalMs=e.livenessIntervalMs??1e4,this.lastActivityAt=this.scheduler.now()}getSnapshot=()=>this.snapshot;subscribe=e=>(this.listeners.add(e),()=>this.listeners.delete(e));start(){return this.snapshot.freshness==="fresh"?Promise.resolve():this.reconcile("initial")}reconcile(e="manual"){return this.destroyed?Promise.resolve():this.tailRequest?this.tailRequest:(this.update({freshness:this.snapshot.freshness==="idle"?"loading":"stale"}),this.tailRequest=this.loadTail(e).finally(()=>{this.tailRequest=void 0}),this.tailRequest)}loadOlder=()=>{if(this.destroyed||!this.nextCursor)return Promise.resolve();if(this.olderRequest)return this.olderRequest;let e=this.nextCursor;return this.update({isLoadingOlder:!0}),this.olderRequest=this.loadCompleteOlderTurn(e).then(n=>{this.destroyed||(this.rememberUserMessages(n.messages),this.options.hydrate(n.messages),this.olderHistoryStarted=!0,this.setCursor(n.nextCursor))}).finally(()=>{this.olderRequest=void 0,this.update({isLoadingOlder:!1})}),this.olderRequest};noteActivity(){this.lastActivityAt=this.scheduler.now(),this.snapshot.freshness!=="fresh"&&this.update({freshness:"fresh"})}beginPromptObservation(){this.clearPromptSettlementTimer(),this.promptObservationPhase="awaiting-work",this.update({isPromptObservedBusy:!0}),this.setBusy(!0)}observePromptStatus(e){if(this.promptObservationPhase!=="idle"){if(e.type!=="idle"){this.markPromptRunning();return}this.promptObservationPhase!=="awaiting-work"&&this.schedulePromptSettlement()}}observePromptActivity(){this.promptObservationPhase!=="idle"&&this.markPromptRunning()}endPromptObservation(){this.clearPromptSettlementTimer(),this.promptObservationPhase="idle",this.update({isPromptObservedBusy:!1}),this.setBusy(!1)}setBusy(e){if(!e){this.stopLivenessTimer();return}this.livenessTimer===void 0&&(this.lastActivityAt=this.scheduler.now(),this.livenessTimer=this.scheduler.setInterval(()=>{this.checkLiveness()},this.livenessIntervalMs))}destroy(){this.destroyed=!0,this.stopLivenessTimer(),this.clearPromptSettlementTimer(),this.listeners.clear()}async loadTail(e){try{let n=await this.loadPage("tail",e),r=await this.loadCompleteTurn(n,"tail",e);if(this.destroyed)return;this.containsNewPromptReply(r.messages)&&this.observePromptActivity(),this.rememberUserMessages(r.messages),this.options.hydrate(r.messages),this.olderHistoryStarted||this.setCursor(r.nextCursor),this.update({freshness:"fresh"})}catch{this.destroyed||this.update({freshness:"error"})}finally{this.destroyed||this.options.markLoaded()}}async loadPage(e,n,r){let s=this.scheduler.now();try{let c=await this.options.loadPage({limit:50,...r?{before:r}:{}});return this.options.onTelemetry?.({operation:e,reason:n,durationMs:this.scheduler.now()-s,messageCount:c.messages.length,succeeded:!0}),c}catch(c){throw this.options.onTelemetry?.({operation:e,reason:n,durationMs:this.scheduler.now()-s,messageCount:0,succeeded:!1}),c}}async loadCompleteOlderTurn(e){let n=await this.loadPage("older","manual",e);return this.loadCompleteTurn(n,"older","manual",e)}async loadCompleteTurn(e,n,r,s){let c=[...e.messages],u=new Set(this.knownUserMessageIds),p=new Set(s?[s]:[]),g=e.nextCursor;for(let f of e.messages)f.info.role==="user"&&u.add(f.info.id);for(;g&&c.some(f=>f.info.role==="assistant"&&!!f.info.parentID&&!u.has(f.info.parentID));){if(p.has(g))throw new Error(`Session history cursor repeated: ${g}`);p.add(g);let f=await this.loadPage(n,r,g);c.unshift(...f.messages);for(let m of f.messages)m.info.role==="user"&&u.add(m.info.id);g=f.nextCursor}return{messages:c,nextCursor:g}}rememberUserMessages(e){for(let n of e)n.info.role==="user"&&this.knownUserMessageIds.add(n.info.id)}async checkLiveness(){this.destroyed||this.scheduler.now()-this.lastActivityAt<=this.livenessIntervalMs||(await this.reconcile("poll"),await this.reconcileStatus(),this.lastActivityAt=this.scheduler.now())}containsNewPromptReply(e){if(this.promptObservationPhase==="idle")return!1;let n=new Set(e.filter(r=>r.info.role==="user"&&!this.knownUserMessageIds.has(r.info.id)).map(r=>r.info.id));return n.size===0?!1:e.some(r=>r.info.role==="assistant"&&!!r.info.parentID&&n.has(r.info.parentID))}async reconcileStatus(){if(!(!this.options.loadStatus||!this.options.setStatus))try{this.options.setStatus(await this.options.loadStatus())}catch{}}setCursor(e){this.nextCursor=e,this.update({hasOlder:!!e})}stopLivenessTimer(){this.livenessTimer!==void 0&&(this.scheduler.clearInterval(this.livenessTimer),this.livenessTimer=void 0)}markPromptRunning(){this.clearPromptSettlementTimer(),this.promptObservationPhase="running"}schedulePromptSettlement(){if(this.promptObservationPhase==="settling")return;this.clearPromptSettlementTimer(),this.promptObservationPhase="settling";let e=()=>{this.promptSettlementTimer=void 0,!(this.destroyed||this.promptObservationPhase!=="settling")&&(this.promptObservationPhase="idle",this.update({isPromptObservedBusy:!1}),this.stopLivenessTimer())};this.promptSettlementTimer=this.scheduler.setTimeout?this.scheduler.setTimeout(e,gp):setTimeout(e,gp)}clearPromptSettlementTimer(){this.promptSettlementTimer!==void 0&&(this.scheduler.clearTimeout?this.scheduler.clearTimeout(this.promptSettlementTimer):clearTimeout(this.promptSettlementTimer),this.promptSettlementTimer=void 0)}update(e){let n={...this.snapshot,...e};if(!(n.freshness===this.snapshot.freshness&&n.hasOlder===this.snapshot.hasOlder&&n.isLoadingOlder===this.snapshot.isLoadingOlder&&n.isPromptObservedBusy===this.snapshot.isPromptObservedBusy)){this.snapshot=n;for(let r of this.listeners)r()}}};function hp(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return`${e}/tunnel/permission-requests/stream`}function bp(t){let{url:e,token:n,method:r="GET",body:s,onEvent:c,onOpen:u,onError:p,signal:g}=t,f=new Map,m=null,_=!1;function x(a,A){c?.(a,A);let j=f.get(a);if(j)for(let v of j)try{v(A)}catch{}}async function I(){if(_)return;m=new AbortController;let a=g?AbortSignal.any([m.signal,g]):m.signal;try{let A={Accept:"text/event-stream",Authorization:`Bearer ${n}`};r!=="GET"&&s!==void 0&&(A["Content-Type"]="application/json");let j=await fetch(e,{method:r,headers:A,body:r!=="GET"&&s!==void 0?JSON.stringify(s):void 0,signal:a,credentials:"include"});if(!j.ok)throw new Error(`SSE connection failed: ${j.status} ${j.statusText}`);if(!j.body)throw new Error("SSE response has no body");u?.();let v=j.body.getReader(),k=new TextDecoder,$="",w="message",F="";for(;!_;){let{done:K,value:y}=await v.read();if(K)break;$+=k.decode(y,{stream:!0});let C=$.split(`
75
+ `),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 p=[];for(let g=0;g<s;g++)p.push({type:"unchanged",text:n[g]});for(let g=s;g<c;g++)p.push({type:"removed",text:n[g]});for(let g=s;g<u;g++)p.push({type:"added",text:r[g]});for(let g=c;g<n.length;g++)p.push({type:"unchanged",text:n[g]});return p}function Qb(t){let e=G(t.input?.oldString),n=G(t.input?.newString),r=e!==void 0&&n!==void 0?Xb(e,n):void 0;return{kind:"file-edit",path:_l(t),diff:r}}var op=/^Found\s+(\d+)\s+match/i,Yb=/^(\/[^:]+?):\s*/,ip=/Line\s+(\d+):/g;function Zb(t){let e=t.trim(),n=e.match(op),r=n?e.slice(n[0].length).trim():e;if(!r)return[];let s=[];for(let c of r.split(/\n\n+/)){let u=c.trim();if(!u)continue;let p=u.match(Yb);if(!p)continue;let g=p[1],f=u.slice(p[0].length),m=[],_;for(ip.lastIndex=0;(_=ip.exec(f))!==null;)m.push({line:Number(_[1]),contentStart:_.index+_[0].length,headerStart:_.index});for(let x=0;x<m.length;x++){let I=x+1<m.length?m[x+1].headerStart:f.length,T=f.slice(m[x].contentStart,I).trim();s.push({path:g,line:m[x].line,content:T.endsWith(";")?T.slice(0,-1):T})}}return s}function ex(t){return t.trim().split(`
76
+ `).map(e=>e.trim()).filter(e=>e.startsWith("/")||e.startsWith("./")||e.startsWith("~")).map(e=>({path:e}))}function tx(t){let e=G(t.input?.pattern,t.input?.query)??"";if(t.status==="error"||!t.output)return{kind:"search",pattern:e};let n=op.test(t.output.trim())?Zb(t.output):ex(t.output);return{kind:"search",pattern:e,matches:n.length>0?n.slice(0,200):void 0}}function nx(t){let e=G(t.input?.description,t.input?.title,t.input?.prompt)??t.title,n=G(t.input?.subagent_type,t.input?.agent);return{kind:"task",description:e,agent:n}}function bl(t){let e=Oe(t)??{};return{content:G(e.content)??"",status:G(e.status)??"pending",priority:G(e.priority)}}function rx(t){let e=t.input?.todos;if(Array.isArray(e))return{kind:"todo",items:e.map(bl)};if(Array.isArray(t.outputParsed))return{kind:"todo",items:t.outputParsed.map(bl)};let n=Oe(t.outputParsed);return n&&Array.isArray(n.todos)?{kind:"todo",items:n.todos.map(bl)}:{kind:"todo",items:[]}}function sx(t){return{kind:"question",questions:(Array.isArray(t.input?.questions)?t.input.questions:[]).map(r=>{let s=Oe(r)??{},u=(Array.isArray(s.options)?s.options:[]).flatMap(p=>{let g=Oe(p),f=g&&G(g.label);return f?[{label:f,description:g?G(g.description):void 0}]:[]});return{question:G(s.question)??"",header:G(s.header),options:u}})}}function ix(t){let n=t.input&&Object.keys(t.input).length>0?sp(t.input):void 0,r;return t.outputParsed!==void 0?r=typeof t.outputParsed=="string"?dt(t.outputParsed):sp(t.outputParsed):t.outputText!==void 0?r=dt(t.outputText):r=t.error,{kind:"generic",label:t.title,inputPretty:n,outputPretty:r}}function ap(t){switch(ut(t.name)){case"web_search":case"websearch":case"image_search":return Fb(t);case"bash":return Wb(t);case"read":return zb(t);case"write":return Vb(t);case"edit":case"morph_edit":return Qb(t);case"grep":case"glob":return tx(t);case"task":return nx(t);case"todowrite":return rx(t);case"question":case"ask":return sx(t);default:return ix(t)}}function pn(t){try{return typeof process<"u"?process.env?.[t]:void 0}catch{return}}function ox(t,e){if(t==null)return e;let n=t.trim().toLowerCase();return["1","true","yes","y","on"].includes(n)?!0:["0","false","no","n","off"].includes(n)?!1:e}function ax(t){if(t==null)return;let e=t.trim().toLowerCase();if(["1","true","yes","y","on"].includes(e))return!0;if(["0","false","no","n","off"].includes(e))return!1}function Pl(t,e,n){return t!==void 0?t:ox(pn(e),n)}var cx={get disableMobileAdvertising(){return Pl(E().featureFlags?.disableMobileAdvertising,"NEXT_PUBLIC_DISABLE_MOBILE_ADVERTISING",!1)},get enableDinoGame(){return Pl(E().featureFlags?.enableDinoGame,"NEXT_PUBLIC_ENABLE_DINO_GAME",!1)},get enableProjects(){return Pl(E().featureFlags?.enableProjects,"NEXT_PUBLIC_ENABLE_PROJECTS",!1)},get enableAutoModel(){return!1}};var gt="kortix-active-instance",cp=["/dashboard","/agents","/p","/workspace","/settings","/browser","/desktop","/services","/sessions","/terminal","/files","/scheduled-tasks","/commands","/tools","/configuration","/changelog","/legacy","/credits-explained"];function lp(t){return cp.some(e=>t===e||t.startsWith(`${e}/`))}function Fe(t){let e=t.match(/^\/instances\/([^/]+)(?:\/(.*))?$/);if(!e)return null;let n=decodeURIComponent(e[1]),r=e[2]??"";return{instanceId:n,innerPath:r?`/${r}`:""}}function lx(t){let e=Fe(t);return!!e&&e.innerPath===""}function ux(t){let e=Fe(t);return!e||!e.innerPath?t:e.innerPath}function up(t,e){if(!t)return e;if(e.startsWith("/")||(e=`/${e}`),e.startsWith("/instances/")){let n=Fe(e);return n?`/instances/${encodeURIComponent(t)}${n.innerPath}`:e}return lp(e)?`/instances/${encodeURIComponent(t)}${e}`:e}function pp(t){return t?Fe(t)?.instanceId??null:null}function px(){return typeof window>"u"?null:pp(window.location.pathname)||dp()}function dp(){if(typeof document>"u")return null;let t=document.cookie.match(new RegExp(`(?:^|; )${gt}=([^;]+)`));return t?decodeURIComponent(t[1]):null}function dx(t){if(typeof document>"u")return;let e=n=>{document.cookie=n};if(typeof window<"u"&&window.location.pathname.startsWith("/projects")){e(`${gt}=; Max-Age=0; Path=/; SameSite=Lax`);return}if(!t){e(`${gt}=; Max-Age=0; Path=/; SameSite=Lax`);return}e(`${gt}=${encodeURIComponent(t)}; Path=/; SameSite=Lax`)}function gx(t,e){return e?up(e,t):t}function mx(t){let e=Fe(t);return e?e.innerPath||"/dashboard":t}function gp(t){if(t instanceof Error)return t.message;if(typeof t=="string")return t;if(t&&typeof t=="object")try{return JSON.stringify(t)}catch{return String(t)}return String(t??"")}function mp(t){let e=gp(t).trim();if(!e)return null;let n=[e,e.replace(/^Failed to perform action:\s*/i,"").trim()],r=e.indexOf("{");r>=0&&n.push(e.slice(r));for(let s of n)if(s)try{return JSON.parse(s)}catch{}return null}function kl(t){let e=mp(t);if(!e||typeof e!="object")return null;let n=e;return n.name==="ConfigInvalidError"?n:null}function fx(t){return kl(t)!==null}function fp(t){let e=kl(t);if(e){let s=(e.data?.path??"OpenCode config").replace(/^\/workspace\//,""),c=e.data?.issues?.[0]?.message,u=e.data?.issues?.[0]?.path?.join("."),p=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. ${p}`,detail:c?`${u?`${u}: `:""}${c}`:void 0}}let n=gp(t);return/sandbox not ready \(status: stopped\)/.test(n)?{title:"Session is waking up",message:"This session slept to save compute. Your conversation is safe \u2014 sending a message wakes it back up."}:{title:"OpenCode failed to load",message:n||"The sandbox is running, but OpenCode returned an error."}}function W(){let t=pn("BACKEND_URL")||E().backendUrl;return t||"http://localhost:8008/v1"}function mt(t){if(typeof t=="string"){let e=t.trim();return e.length>0?e:void 0}if(Array.isArray(t)){for(let e of t){let n=mt(e);if(n)return n}return}if(t&&typeof t=="object"){let e=t;return mt(e.sandboxId??e.id??e.slug??Object.values(e)[0])}}var yp=["http://localhost:8008/v1","http://127.0.0.1:8008/v1"];function hp(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return`${t.slice(0,e)}/platform/local-bridge/status`}function yx(t){return t==="running"||t==="active"?"active":t==="queued"||t==="branching"||t==="provisioning"?"provisioning":t==="failed"||t==="error"?"error":t==="stopped"||t==="completed"||t==="archived"?"stopped":t||"unknown"}function wl(t,e,n){let r=n?.external_id||e.sandbox_url?.match(/\/p\/([^/]+)\//)?.[1]||e.sandbox_id;return{sandbox_id:n?.sandbox_id||e.sandbox_id||e.session_id,external_id:r,name:e.name||`${t.name} session`,provider:n?.provider||e.sandbox_provider||"daytona",base_url:n?.base_url||e.sandbox_url||(n?.external_id?`${W()}/p/${n.external_id}/${re.KORTIX_MASTER}`:""),status:yx(n?.status||e.status),metadata:{...e.metadata??{},project_id:t.project_id,session_id:e.session_id,project_name:t.name,runtime_status:n?.status,error:e.error},created_at:n?.created_at||e.created_at,updated_at:n?.updated_at||e.updated_at}}async function Sl(){let t=await we(),e=[];for(let n of t){let r=await Me(n.project_id).catch(()=>[]);for(let s of r)e.push({project:n,session:s,runtime:null,sandbox:wl(n,s,null)})}return e.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 Ce(t){let e=await Sl();return t?e.find(n=>n.sandbox.sandbox_id===t||n.sandbox.external_id===t||n.session.session_id===t||n.runtime?.external_id===t)??null:e[0]??null}async function dn(t,e={}){let n={"Content-Type":"application/json",...e.headers},r=e.signal??AbortSignal.timeout(3e4),s=await q(`${W()}${t}`,{...e,headers:n,signal:r}),c=await s.text().catch(()=>{}),u;if(c)try{u=JSON.parse(c)}catch{}if(!s.ok){let p=u?.error||u?.message||u?.detail||c||`Platform API error ${s.status}`,g=new R(p,{status:s.status,code:u?.code||u?.error_code||String(s.status),details:u??(c?{rawText:c}:void 0),response:s,endpoint:t});throw s.status===402&&(g=be(Object.assign(g,{response:s,status:s.status,data:u}))),g}return u}function vl(t){if(!t.external_id){if(t.base_url)return t.base_url;throw new Error(`Cannot build sandbox URL: missing external_id for ${t.provider} sandbox "${t.sandbox_id}"`)}return`${W()}/p/${t.external_id}/${re.KORTIX_MASTER}`}function hx(t,e){return t.external_id?`${W()}/p/${t.external_id}/${e}`:null}async function bx(){let t=await i.get("/setup/sandbox-providers");if(t.error)throw t.error;return t.data}async function bp(t){let e=await Ce();if(e)return{sandbox:e.sandbox,created:!1};let r=(await we())[0];if(!r)throw new Error("Create a project before starting a sandbox");let s=await Ue(r.project_id,{...t?.provider?{provider:t.provider}:{}}),c=(await ve(r.project_id,s.session_id))?.sandbox??null;return{sandbox:wl(r,s,c),created:!0}}async function xx(){return(await Ce().catch(()=>null))?.sandbox??null}async function _x(t){return{sandbox:(await bp(t)).sandbox}}async function Px(t){let e=mt(t);return e?(await Ce(e).catch(()=>null))?.sandbox??null:null}async function kx(t,e){throw await Ce(t)?new Error("Renaming project-session sandboxes is not exposed by the current API"):new Error("Project session sandbox not found")}async function wx(t){let e=mt(t);return(await Sl().catch(()=>[])).map(r=>r.sandbox).filter(r=>!e||r.sandbox_id===e||r.external_id===e)}async function Sx(){if(typeof window>"u")return null;let t=W(),e=Array.from(new Set([t,...yp]));for(let n of e)try{let r=await fetch(hp(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 vx(t){if(!t)throw new Error("No sandbox selected for workload restart");let e=await Ce(t);if(!e)throw new Error("Project session sandbox not found");await st(e.project.project_id,e.session.session_id)}async function Cx(t){if(!t)throw new Error("No sandbox selected to stop");let e=await Ce(t);if(!e)throw new Error("Project session sandbox not found");await it(e.project.project_id,e.session.session_id)}async function Rx(t){throw new Error("Cancellation is not exposed for project-session sandboxes")}async function Tx(t){throw new Error("Reactivation is not exposed for project-session sandboxes")}async function Ax(t){throw new Error("Sandbox members moved to project access; use project members for project-session sandboxes")}async function Ix(t,e,n="member"){throw new Error("Sandbox members moved to project access; invite the user to the project instead")}async function jx(t,e){throw new Error("Sandbox members moved to project access; update project access instead")}async function Ex(t,e,n){throw new Error("Sandbox members moved to project access; update project access instead")}async function $x(t,e,n){throw new Error("Sandbox member spend caps are not exposed for project-session sandboxes")}async function qx(t){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function Dx(t,e){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function Mx(t,e,n,r){throw new Error("Sandbox scopes moved to project access for project-session sandboxes")}async function Cl(t,e,n){let r=vl(t),s=await q(`${xe(r)}${e}`,{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 Ux(t,e){return Cl(t,`/kortix/projects/${encodeURIComponent(e)}/members`,{method:"GET"})}async function Ox(t,e,n,r="member"){await Cl(t,`/kortix/projects/${encodeURIComponent(e)}/members`,{method:"POST",body:JSON.stringify({user_id:n,role:r})})}async function Fx(t,e,n){await Cl(t,`/kortix/projects/${encodeURIComponent(e)}/members/${encodeURIComponent(n)}`,{method:"DELETE"})}async function Lx(t,e){throw new Error("Sandbox invites moved to project access for project-session sandboxes")}async function Gx(t){let e=await dn(`/platform/invites/${encodeURIComponent(t)}`,{method:"GET"});if(!e.success||!e.data)throw new Error(e.error||"Invite not found");return e.data}async function Bx(t){let e=await dn(`/platform/invites/${encodeURIComponent(t)}/accept`,{method:"POST"});if(!e.success||!e.data)throw new Error(e.error||"Failed to accept invite");return e.data}async function Kx(t){let e=await dn(`/platform/invites/${encodeURIComponent(t)}/decline`,{method:"POST"});if(!e.success)throw new Error(e.error||"Failed to decline invite")}async function Nx(t){throw new Error("Backups are not exposed for project-session sandboxes")}async function Hx(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function Wx(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function zx(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function Vx(t){throw new Error("SSH setup is not exposed for project-session sandboxes")}async function Jx(t){throw new Error("SSH connection details are not exposed for project-session sandboxes")}var xp=["pulling","patching","stopping","removing","recreating","restarting","verifying","starting","health_check"];function Xx(t){return xp.includes(t)}async function Qx(t){return{phase:"idle",progress:0,message:"Sandbox image updates are managed by project-session provisioning.",targetVersion:null,previousVersion:null,currentVersion:t?.version??null,error:null,startedAt:null,updatedAt:null}}async function Yx(t){let e=t?`?channel=${t}`:"",n=await fetch(`${W()}/platform/sandbox/version/latest${e}`,{headers:{Accept:"application/json"}});if(!n.ok)throw new Error(`Version check failed: ${n.status}`);let r=await n.json();try{let s=await _p(t||"stable");r.changelog=s.find(c=>c.version===r.version)??s[0]??null}catch{r.changelog=null}return r}async function _p(t){let e=t?`?channel=${t}`:"",n=await fetch(`${W()}/platform/sandbox/version/changelog${e}`,{headers:{Accept:"application/json"}});if(!n.ok)throw new Error(`Changelog fetch failed: ${n.status}`);return(await n.json()).changelog}async function Zx(){let t=await fetch(`${W()}/platform/sandbox/version/all`,{headers:{Accept:"application/json"}});if(!t.ok)throw new Error(`All versions fetch failed: ${t.status}`);return t.json()}async function e_(t,e){throw new Error("Sandbox image updates are managed by project-session provisioning")}async function t_(t){}async function n_(t){}async function r_(t){return{serverTypes:[],location:t||"hel1"}}async function s_(t){throw new Error("Retired instance provisioning is unavailable. Create a project session with daytona, platinum, or e2b.")}async function i_(t){let e=await i.delete(`/platform/sandbox?sandbox_id=${t}`);if(e.error)throw e.error;return e.data}async function o_(t,e){await i.post("/platform/sandbox/mark-error",{sandbox_id:t,error_message:e},{showErrors:!1,timeout:1e4})}async function a_(){let t=await i.post("/platform/sandbox/claim-computer",{},{timeout:6e4});if(t.error)throw t.error;return t.data}async function c_(t){let e=await i.get(`/platform/sandbox/${t}/status`,{showErrors:!1,timeout:1e4});return e.success?e.data??null:null}function l_(t,e){return`${W()}/platform/sandbox/${t}/provision-stream?token=${encodeURIComponent(e)}`}var oe=class extends Error{constructor(n,r,s){super(n);this.status=r;this.body=s;this.name="HostBoundaryError"}status;body};function gn(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return/\/v1$/.test(e)?e:`${e}/v1`}function Rl(t,e){let n=new Headers(t.headers);return n.set("Accept","application/json"),e&&n.set("Content-Type","application/json"),t.accessToken&&n.set("Authorization",`Bearer ${t.accessToken}`),n}async function mn(t){let e=await t.text().catch(()=>"");if(!e)return null;try{return JSON.parse(e)}catch{return e}}function fn(t,e){if(e&&typeof e=="object"){let n=e;for(let r of["error_description","error","message"])if(typeof n[r]=="string"&&n[r])return n[r]}return typeof e=="string"&&e?e:t.statusText||`HTTP ${t.status}`}async function B(t,e,n){let r=n?.body!==void 0,s=await fetch(`${gn(e.backendUrl)}${t}`,{method:n?.method??"GET",headers:Rl(e,r),...r?{body:JSON.stringify(n.body)}:{},...e.signal?{signal:e.signal}:{},...e.cache?{cache:e.cache}:{},...e.next?{next:e.next}:{}}),c=await mn(s);if(!s.ok)throw new oe(fn(s,c),s.status,c);return c}function u_(t){let e=new URLSearchParams;t?.query&&e.set("query",t.query),t?.type&&e.set("type",t.type),t?.source&&e.set("source",t.source),t?.limit!==void 0&&e.set("limit",String(t.limit)),t?.offset!==void 0&&e.set("offset",String(t.offset));let n=e.toString();return n?`?${n}`:""}function p_(t,e){return B(`/marketplace/items${u_(e)}`,t)}function d_(t){return B("/marketplace/marketplaces",t)}function g_(t,e){return B(`/marketplace/items/${encodeURIComponent(t)}`,e)}function m_(t,e,n){return B(`/marketplace/items/${encodeURIComponent(t)}/file?path=${encodeURIComponent(e)}`,n)}function f_(t,e){return B("/access/check-email",e,{method:"POST",body:{email:t}})}function y_(t,e){return B("/access/request-access",e,{method:"POST",body:t})}function h_(t){return B("/auth/logout",t,{method:"POST",body:{}})}function b_(t,e){return B(`/oauth/authorize/consent/${encodeURIComponent(t)}`,e)}function x_(t,e){return B("/oauth/authorize/consent",e,{method:"POST",body:{request_id:t.requestId,approved:t.approved}})}function __(t,e){return B(`/setup-links/connectors/${encodeURIComponent(t)}`,e)}function P_(t,e){return B(`/setup-links/connectors/${encodeURIComponent(t)}/start`,e,{method:"POST",body:{}})}function k_(t,e){return B(`/setup-links/connectors/${encodeURIComponent(t)}/finalize`,e,{method:"POST",body:{}})}function w_(t,e){return B(`/setup-links/secret/${encodeURIComponent(t)}`,e)}function S_(t,e,n){return B(`/setup-links/secret/${encodeURIComponent(t)}`,n,{method:"POST",body:{values:e}})}function v_(t,e){return B(`/p/public-share/${encodeURIComponent(t)}`,e)}function C_(t,e,n){return B(`/projects/${encodeURIComponent(t)}/sessions/${encodeURIComponent(e)}/start`,n,{method:"POST",body:{}})}function R_(t){return B("/system/maintenance",t)}function T_(t,e){return B("/system/maintenance",e,{method:"PUT",body:t})}function A_(t){return B("/user-roles",t)}function I_(t,e){return B("/system/demo-request",e,{method:"POST",body:t})}async function j_(t,e,n){let r=new URLSearchParams({format:e.format});e.action&&r.set("action",e.action),e.actor&&r.set("actor",e.actor),e.project_id&&r.set("project_id",e.project_id),e.session_id&&r.set("session_id",e.session_id),e.actor_type&&r.set("actor_type",e.actor_type),e.source&&r.set("source",e.source),e.phase&&r.set("phase",e.phase),e.outcome&&r.set("outcome",e.outcome),e.request_id&&r.set("request_id",e.request_id),e.correlation_id&&r.set("correlation_id",e.correlation_id),e.resource_type&&r.set("resource_type",e.resource_type),e.since&&r.set("since",e.since),e.until&&r.set("until",e.until),e.q&&r.set("q",e.q),e.cursor&&r.set("cursor",e.cursor),e.limit!=null&&r.set("limit",String(e.limit));let s=await fetch(`${gn(n.backendUrl)}/accounts/${encodeURIComponent(t)}/audit/export?${r}`,{headers:Rl(n,!1),...n.signal?{signal:n.signal}:{}});if(!s.ok){let c=await mn(s);throw new oe(fn(s,c),s.status,c)}return{blob:await s.blob(),filename:s.headers.get("content-disposition")?.match(/filename="([^"]+)"/)?.[1]??null,capped:s.headers.get("x-audit-capped")==="true",rowCount:s.headers.get("x-audit-row-count"),complete:s.headers.get("x-audit-complete")!=="false",nextCursor:s.headers.get("x-audit-next-cursor")||null}}async function E_(t,e){let n=await fetch(`${gn(e.backendUrl)}/admin/stress-test/run`,{method:"POST",headers:Rl(e,!0),body:JSON.stringify(t),...e.signal?{signal:e.signal}:{}});if(!n.ok){let r=await mn(n);throw new oe(fn(n,r),n.status,r)}if(!n.body)throw new oe("No response body",n.status,null);return n.body}var $_=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function Pp(t,e){return $_.test(e)?new URL(`templates/public/${e.toLowerCase()}`,`${gn(t)}/`):null}async function q_(t,e,n){let r=Pp(t,e);if(!r)throw new oe("Invalid shareId parameter",400,null);let s=await fetch(r,{signal:n}),c=await mn(s);if(!s.ok)throw new oe(fn(s,c),s.status,c);return c}async function D_(){let t=await i.get("/platform/github-app/status",{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub App status request failed");return t.data}async function M_(t={}){let e=await i.post("/platform/github-app/manifest-start",t,{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App manifest-start request failed");return e.data}async function U_(t){let e=await i.post("/platform/github-app/app",{app_id:t.appId,private_key:t.privateKey,installation_id:t.installationId,slug:t.slug},{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App configuration request failed");return e.data}async function O_(t){let e=await i.post("/platform/github-app/pat",t,{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub token configuration request failed");return e.data}async function F_(){let t=await i.delete("/platform/github-app",{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub App disconnect request failed");return t.data}function kp(t){try{let e=new URL(t);if(/^\/proxy\/\d+(?:\/|$)/.test(e.pathname))return`${e.origin}/v1/p/auth`;let n=e.pathname.indexOf("/p/");return n!==-1?`${e.origin}${e.pathname.slice(0,n)}/p/auth`:`${e.origin}/v1/p/auth`}catch{return null}}function L_(t,e){try{let n=new URL(t),r=n.pathname;if(!(/^\/v1\/p\/[^/]+\/\d+(?:\/|$)/.test(r)||/^\/proxy\/\d+(?:\/|$)/.test(r)))return!1;let c=new Set;if(e)try{c.add(new URL(e).origin)}catch{}return typeof window<"u"&&c.add(window.location.origin),c.size===0||c.has(n.origin)}catch{return!1}}function Tl(t,e){return L_(t,e)?(e?kp(e):null)??kp(t):null}function G_(t){try{return/^p\d+-[^.]+\./.test(new URL(t).hostname)}catch{return!1}}function B_(t,e){try{let n=new URL(t);return n.searchParams.set("token",e),n.toString()}catch{return t}}async function K_(t,e={}){let n=Tl(t,e.serverUrl);if(!n)return!1;let r=await me();if(!r)return!1;try{return(await fetch(n,{method:"POST",credentials:"include",headers:{Authorization:`Bearer ${r}`,"Content-Type":"application/json"}})).ok}catch{return!1}}var N_=3e3;function wp(t){return!Number.isFinite(t)||t<100||t>599?"unknown":t===502||t===503||t===504?"unreachable":t===401||t===403?"unknown":"reachable"}async function H_(t,e){if(!t||e?.signal?.aborted)return"unknown";let n=new AbortController,r=()=>n.abort();e?.signal?.addEventListener("abort",r);let s=setTimeout(r,e?.timeoutMs??3e3);try{let c=await fetch(t,{method:"HEAD",credentials:"include",cache:"no-store",signal:n.signal});return wp(c.status)}catch{return"unknown"}finally{clearTimeout(s),e?.signal?.removeEventListener("abort",r)}}function Al(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return e}function W_(t,e){return`${Al(t)}/presentation-templates/${encodeURIComponent(e)}/pdf#toolbar=0&navpanes=0&scrollbar=0&view=FitH`}function z_(t,e){return`${Al(t)}/presentation-templates/${encodeURIComponent(e)}/image.png`}function Sp(t,e){return`${Al(t)}/presentation/convert-to-${e}`}async function V_(t,e,n,r){let s=Sp(e,t),c=r?.pollIntervalMs??2500,u=r?.timeoutMs??4*6e4,p=Date.now(),g=!1;for(;;){let f=await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({presentation_path:n,download:!0}),...r?.signal?{signal:r.signal}:{}}),m=f.headers.get("content-type")||"";if(f.ok&&(m.includes("pdf")||m.includes("presentation")||m.includes("octet-stream"))){let T=await f.blob();if(T.size===0)throw new Error("Downloaded file is empty");return T}if(f.status===202){if(g||(g=!0,r?.onGenerating?.()),Date.now()-p>u)throw new Error(`Timed out waiting for the ${t.toUpperCase()} to generate`);await new Promise((T,l)=>{let h=setTimeout(T,c);r?.signal?.addEventListener("abort",()=>{clearTimeout(h),l(r.signal?.reason??new DOMException("Aborted","AbortError"))},{once:!0})});continue}let x=await f.text().catch(()=>""),I=f.statusText;try{let T=JSON.parse(x);I=String(T.error||T.detail||T.message||I)}catch{x&&(I=x)}throw new Error(`Failed to download ${t.toUpperCase()}: ${I} (HTTP ${f.status})`)}}function Cp(t){let e=t.fetch??globalThis.fetch,n=t.baseUrl.replace(/\/$/,"");return async({limit:r,before:s})=>{let c=new URLSearchParams({limit:String(r)});s&&c.set("before",s);let u=await t.getToken?.(),p=await e(`${n}/session/${encodeURIComponent(t.sessionId)}/message?${c}`,{headers:u?{Authorization:`Bearer ${u}`}:void 0});if(!p.ok)throw new Error(`Session synchronization failed: ${p.status}`);return{messages:await p.json(),nextCursor:p.headers.get("x-next-cursor")||void 0}}}function Rp(t){return J_(Cp(t))}function Tp(t){let e=t.fetch??globalThis.fetch,n=t.baseUrl.replace(/\/$/,""),r=Cp(t),s=async c=>{let u=await t.getToken?.(),p=await e(`${n}${c}`,{headers:u?{Authorization:`Bearer ${u}`}:void 0});if(!p.ok)throw new Error(`Session synchronization failed: ${p.status}`);return p};return new Il({...t,loadPage:r,loadStatus:async()=>(await(await s("/session/status")).json())[t.sessionId]??{type:"idle"}})}async function J_(t){let e=new Map,n=new Set,r;do{let s=await t({limit:50,...r?{before:r}:{}});for(let c of s.messages)e.set(c.info.id,c);if(r=s.nextCursor,r&&n.has(r))throw new Error(`Session history cursor repeated: ${r}`);r&&n.add(r)}while(r);return[...e.values()].sort((s,c)=>s.info.id.localeCompare(c.info.id))}var X_={now:Date.now,setInterval:(t,e)=>setInterval(t,e),clearInterval:t=>clearInterval(t),setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t)},vp=500,Il=class{options;scheduler;livenessIntervalMs;snapshot={freshness:"idle",hasOlder:!1,isLoadingOlder:!1,isPromptObservedBusy:!1};nextCursor;knownUserMessageIds=new Set;olderHistoryStarted=!1;tailRequest;olderRequest;livenessTimer;promptSettlementTimer;promptObservationPhase="idle";lastActivityAt;listeners=new Set;destroyed=!1;constructor(e){this.options=e,this.scheduler=e.scheduler??X_,this.livenessIntervalMs=e.livenessIntervalMs??1e4,this.lastActivityAt=this.scheduler.now()}getSnapshot=()=>this.snapshot;subscribe=e=>(this.listeners.add(e),()=>this.listeners.delete(e));start(){return this.snapshot.freshness==="fresh"?Promise.resolve():this.reconcile("initial")}reconcile(e="manual"){return this.destroyed?Promise.resolve():this.tailRequest?this.tailRequest:(this.update({freshness:this.snapshot.freshness==="idle"?"loading":"stale"}),this.tailRequest=this.loadTail(e).finally(()=>{this.tailRequest=void 0}),this.tailRequest)}loadOlder=()=>{if(this.destroyed||!this.nextCursor)return Promise.resolve();if(this.olderRequest)return this.olderRequest;let e=this.nextCursor;return this.update({isLoadingOlder:!0}),this.olderRequest=this.loadCompleteOlderTurn(e).then(n=>{this.destroyed||(this.rememberUserMessages(n.messages),this.options.hydrate(n.messages),this.olderHistoryStarted=!0,this.setCursor(n.nextCursor))}).finally(()=>{this.olderRequest=void 0,this.update({isLoadingOlder:!1})}),this.olderRequest};noteActivity(){this.lastActivityAt=this.scheduler.now(),this.snapshot.freshness!=="fresh"&&this.update({freshness:"fresh"})}beginPromptObservation(){this.clearPromptSettlementTimer(),this.promptObservationPhase="awaiting-work",this.update({isPromptObservedBusy:!0}),this.setBusy(!0)}observePromptStatus(e){if(this.promptObservationPhase!=="idle"){if(e.type!=="idle"){this.markPromptRunning();return}this.promptObservationPhase!=="awaiting-work"&&this.schedulePromptSettlement()}}observePromptActivity(){this.promptObservationPhase!=="idle"&&this.markPromptRunning()}endPromptObservation(){this.clearPromptSettlementTimer(),this.promptObservationPhase="idle",this.update({isPromptObservedBusy:!1}),this.setBusy(!1)}setBusy(e){if(!e){this.stopLivenessTimer();return}this.livenessTimer===void 0&&(this.lastActivityAt=this.scheduler.now(),this.livenessTimer=this.scheduler.setInterval(()=>{this.checkLiveness()},this.livenessIntervalMs))}destroy(){this.destroyed=!0,this.stopLivenessTimer(),this.clearPromptSettlementTimer(),this.listeners.clear()}async loadTail(e){try{let n=await this.loadPage("tail",e),r=await this.loadCompleteTurn(n,"tail",e);if(this.destroyed)return;this.containsNewPromptReply(r.messages)&&this.observePromptActivity(),this.rememberUserMessages(r.messages),this.options.hydrate(r.messages),this.olderHistoryStarted||this.setCursor(r.nextCursor),this.update({freshness:"fresh"})}catch{this.destroyed||this.update({freshness:"error"})}finally{this.destroyed||this.options.markLoaded()}}async loadPage(e,n,r){let s=this.scheduler.now();try{let c=await this.options.loadPage({limit:50,...r?{before:r}:{}});return this.options.onTelemetry?.({operation:e,reason:n,durationMs:this.scheduler.now()-s,messageCount:c.messages.length,succeeded:!0}),c}catch(c){throw this.options.onTelemetry?.({operation:e,reason:n,durationMs:this.scheduler.now()-s,messageCount:0,succeeded:!1}),c}}async loadCompleteOlderTurn(e){let n=await this.loadPage("older","manual",e);return this.loadCompleteTurn(n,"older","manual",e)}async loadCompleteTurn(e,n,r,s){let c=[...e.messages],u=new Set(this.knownUserMessageIds),p=new Set(s?[s]:[]),g=e.nextCursor;for(let f of e.messages)f.info.role==="user"&&u.add(f.info.id);for(;g&&c.some(f=>f.info.role==="assistant"&&!!f.info.parentID&&!u.has(f.info.parentID));){if(p.has(g))throw new Error(`Session history cursor repeated: ${g}`);p.add(g);let f=await this.loadPage(n,r,g);c.unshift(...f.messages);for(let m of f.messages)m.info.role==="user"&&u.add(m.info.id);g=f.nextCursor}return{messages:c,nextCursor:g}}rememberUserMessages(e){for(let n of e)n.info.role==="user"&&this.knownUserMessageIds.add(n.info.id)}async checkLiveness(){this.destroyed||this.scheduler.now()-this.lastActivityAt<=this.livenessIntervalMs||(await this.reconcile("poll"),await this.reconcileStatus(),this.lastActivityAt=this.scheduler.now())}containsNewPromptReply(e){if(this.promptObservationPhase==="idle")return!1;let n=new Set(e.filter(r=>r.info.role==="user"&&!this.knownUserMessageIds.has(r.info.id)).map(r=>r.info.id));return n.size===0?!1:e.some(r=>r.info.role==="assistant"&&!!r.info.parentID&&n.has(r.info.parentID))}async reconcileStatus(){if(!(!this.options.loadStatus||!this.options.setStatus))try{this.options.setStatus(await this.options.loadStatus())}catch{}}setCursor(e){this.nextCursor=e,this.update({hasOlder:!!e})}stopLivenessTimer(){this.livenessTimer!==void 0&&(this.scheduler.clearInterval(this.livenessTimer),this.livenessTimer=void 0)}markPromptRunning(){this.clearPromptSettlementTimer(),this.promptObservationPhase="running"}schedulePromptSettlement(){if(this.promptObservationPhase==="settling")return;this.clearPromptSettlementTimer(),this.promptObservationPhase="settling";let e=()=>{this.promptSettlementTimer=void 0,!(this.destroyed||this.promptObservationPhase!=="settling")&&(this.promptObservationPhase="idle",this.update({isPromptObservedBusy:!1}),this.stopLivenessTimer())};this.promptSettlementTimer=this.scheduler.setTimeout?this.scheduler.setTimeout(e,vp):setTimeout(e,vp)}clearPromptSettlementTimer(){this.promptSettlementTimer!==void 0&&(this.scheduler.clearTimeout?this.scheduler.clearTimeout(this.promptSettlementTimer):clearTimeout(this.promptSettlementTimer),this.promptSettlementTimer=void 0)}update(e){let n={...this.snapshot,...e};if(!(n.freshness===this.snapshot.freshness&&n.hasOlder===this.snapshot.hasOlder&&n.isLoadingOlder===this.snapshot.isLoadingOlder&&n.isPromptObservedBusy===this.snapshot.isPromptObservedBusy)){this.snapshot=n;for(let r of this.listeners)r()}}};function Ap(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return`${e}/tunnel/permission-requests/stream`}function Ip(t){let{url:e,token:n,method:r="GET",body:s,onEvent:c,onOpen:u,onError:p,signal:g}=t,f=new Map,m=null,_=!1;function x(a,A){c?.(a,A);let j=f.get(a);if(j)for(let v of j)try{v(A)}catch{}}async function I(){if(_)return;m=new AbortController;let a=g?AbortSignal.any([m.signal,g]):m.signal;try{let A={Accept:"text/event-stream",Authorization:`Bearer ${n}`};r!=="GET"&&s!==void 0&&(A["Content-Type"]="application/json");let j=await fetch(e,{method:r,headers:A,body:r!=="GET"&&s!==void 0?JSON.stringify(s):void 0,signal:a,credentials:"include"});if(!j.ok)throw new Error(`SSE connection failed: ${j.status} ${j.statusText}`);if(!j.body)throw new Error("SSE response has no body");u?.();let v=j.body.getReader(),k=new TextDecoder,$="",w="message",F="";for(;!_;){let{done:K,value:y}=await v.read();if(K)break;$+=k.decode(y,{stream:!0});let C=$.split(`
77
77
  `);$=C.pop()||"";for(let M of C)M===""?F&&(x(w,F.trimEnd()),w="message",F=""):M.startsWith("event: ")?w=M.slice(7).trim():M.startsWith("data: ")?F+=(F?`
78
78
  `:"")+M.slice(6):M.startsWith("data:")&&(F+=(F?`
79
- `:"")+M.slice(5))}}catch(A){if(_||A instanceof DOMException&&A.name==="AbortError")return;p?.(A instanceof Error?A:new Error(String(A)))}}function T(){_=!0,m?.abort(),m=null,f.clear()}function l(a,A){let j=f.get(a)??new Set;j.add(A),f.set(a,j)}function h(a,A){f.get(a)?.delete(A)}return{connect:I,close:T,addEventListener:l,removeEventListener:h}}function j_(t,e){return bp({...e,url:hp(t)})}return vp(E_);})();
79
+ `:"")+M.slice(5))}}catch(A){if(_||A instanceof DOMException&&A.name==="AbortError")return;p?.(A instanceof Error?A:new Error(String(A)))}}function T(){_=!0,m?.abort(),m=null,f.clear()}function l(a,A){let j=f.get(a)??new Set;j.add(A),f.set(a,j)}function h(a,A){f.get(a)?.delete(A)}return{connect:I,close:T,addEventListener:l,removeEventListener:h}}function Q_(t,e){return Ip({...e,url:Ap(t)})}return Up(Y_);})();