@kortix/sdk 0.13.5 → 0.13.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +69 -6
- package/dist/browser/session-sync/server-transcript-mirror.d.ts +82 -0
- package/dist/browser/session-sync/server-transcript-mirror.d.ts.map +1 -0
- package/dist/browser/session-sync/server-transcript-mirror.js +143 -0
- package/dist/browser/session-sync/server-transcript-mirror.js.map +1 -0
- package/dist/browser/session-sync/session-sync-registry.d.ts +11 -21
- package/dist/browser/session-sync/session-sync-registry.d.ts.map +1 -1
- package/dist/browser/session-sync/session-sync-registry.js +48 -3
- package/dist/browser/session-sync/session-sync-registry.js.map +1 -1
- package/dist/browser/stores/sandbox-connection-store.d.ts +13 -1
- package/dist/browser/stores/sandbox-connection-store.d.ts.map +1 -1
- package/dist/browser/stores/sandbox-connection-store.js +5 -2
- package/dist/browser/stores/sandbox-connection-store.js.map +1 -1
- package/dist/browser/stores/session-working-store.d.ts +10 -5
- package/dist/browser/stores/session-working-store.d.ts.map +1 -1
- package/dist/browser/stores/session-working-store.js +32 -8
- package/dist/browser/stores/session-working-store.js.map +1 -1
- package/dist/browser/stores/sync-store.d.ts +29 -1
- package/dist/browser/stores/sync-store.d.ts.map +1 -1
- package/dist/browser/stores/sync-store.js +516 -393
- package/dist/browser/stores/sync-store.js.map +1 -1
- package/dist/core/auth/app-viewer.d.ts +57 -0
- package/dist/core/auth/app-viewer.d.ts.map +1 -0
- package/dist/core/auth/app-viewer.js +82 -0
- package/dist/core/auth/app-viewer.js.map +1 -0
- package/dist/core/auth/session.d.ts +45 -0
- package/dist/core/auth/session.d.ts.map +1 -0
- package/dist/core/auth/session.js +113 -0
- package/dist/core/auth/session.js.map +1 -0
- package/dist/core/client/kortix.d.ts +37 -18
- package/dist/core/client/kortix.d.ts.map +1 -1
- package/dist/core/client/kortix.js +47 -0
- package/dist/core/client/kortix.js.map +1 -1
- package/dist/core/http/config.d.ts +4 -2
- package/dist/core/http/config.d.ts.map +1 -1
- package/dist/core/http/config.js.map +1 -1
- package/dist/core/http/opencode-errors.d.ts +17 -0
- package/dist/core/http/opencode-errors.d.ts.map +1 -1
- package/dist/core/http/opencode-errors.js +25 -0
- package/dist/core/http/opencode-errors.js.map +1 -1
- package/dist/core/rest/platform-client/auth.d.ts +120 -0
- package/dist/core/rest/platform-client/auth.d.ts.map +1 -0
- package/dist/core/rest/platform-client/auth.js +98 -0
- package/dist/core/rest/platform-client/auth.js.map +1 -0
- package/dist/core/rest/platform-client/host-boundary.d.ts +5 -0
- package/dist/core/rest/platform-client/host-boundary.d.ts.map +1 -1
- package/dist/core/rest/platform-client/host-boundary.js.map +1 -1
- package/dist/core/rest/projects-client/accounts.d.ts +57 -0
- package/dist/core/rest/projects-client/accounts.d.ts.map +1 -1
- package/dist/core/rest/projects-client/accounts.js +31 -0
- package/dist/core/rest/projects-client/accounts.js.map +1 -1
- package/dist/core/rest/projects-client/apps.d.ts +9 -0
- package/dist/core/rest/projects-client/apps.d.ts.map +1 -1
- package/dist/core/rest/projects-client/apps.js.map +1 -1
- package/dist/core/rest/projects-client/billing.d.ts +2 -0
- package/dist/core/rest/projects-client/billing.d.ts.map +1 -1
- package/dist/core/rest/projects-client/billing.js.map +1 -1
- package/dist/core/rest/projects-client/connectors.d.ts +104 -19
- package/dist/core/rest/projects-client/connectors.d.ts.map +1 -1
- package/dist/core/rest/projects-client/connectors.js +56 -2
- package/dist/core/rest/projects-client/connectors.js.map +1 -1
- package/dist/core/rest/projects-client/index.d.ts +1 -0
- package/dist/core/rest/projects-client/index.d.ts.map +1 -1
- package/dist/core/rest/projects-client/index.js +1 -0
- package/dist/core/rest/projects-client/index.js.map +1 -1
- package/dist/core/rest/projects-client/oauth-clients.d.ts +47 -0
- package/dist/core/rest/projects-client/oauth-clients.d.ts.map +1 -0
- package/dist/core/rest/projects-client/oauth-clients.js +33 -0
- package/dist/core/rest/projects-client/oauth-clients.js.map +1 -0
- package/dist/core/rest/projects-client/projects.d.ts +23 -6
- package/dist/core/rest/projects-client/projects.d.ts.map +1 -1
- package/dist/core/rest/projects-client/projects.js +1 -0
- package/dist/core/rest/projects-client/projects.js.map +1 -1
- package/dist/core/rest/projects-client/session-sandbox.d.ts +52 -0
- package/dist/core/rest/projects-client/session-sandbox.d.ts.map +1 -1
- package/dist/core/rest/projects-client/session-sandbox.js.map +1 -1
- package/dist/core/rest/projects-client/sessions.d.ts +134 -1
- package/dist/core/rest/projects-client/sessions.d.ts.map +1 -1
- package/dist/core/rest/projects-client/sessions.js +47 -1
- package/dist/core/rest/projects-client/sessions.js.map +1 -1
- package/dist/core/session/index.d.ts +1 -0
- package/dist/core/session/index.d.ts.map +1 -1
- package/dist/core/session/index.js +1 -0
- package/dist/core/session/index.js.map +1 -1
- package/dist/core/session/open-bundle.d.ts +110 -0
- package/dist/core/session/open-bundle.d.ts.map +1 -0
- package/dist/core/session/open-bundle.js +183 -0
- package/dist/core/session/open-bundle.js.map +1 -0
- package/dist/core/session/poll-owner.d.ts +35 -0
- package/dist/core/session/poll-owner.d.ts.map +1 -0
- package/dist/core/session/poll-owner.js +90 -0
- package/dist/core/session/poll-owner.js.map +1 -0
- package/dist/core/session/static-file-preview.d.ts +50 -0
- package/dist/core/session/static-file-preview.d.ts.map +1 -0
- package/dist/core/session/static-file-preview.js +91 -0
- package/dist/core/session/static-file-preview.js.map +1 -0
- package/dist/core/session/wake-escalation.d.ts +188 -0
- package/dist/core/session/wake-escalation.d.ts.map +1 -0
- package/dist/core/session/wake-escalation.js +241 -0
- package/dist/core/session/wake-escalation.js.map +1 -0
- package/dist/core/session/working.d.ts +63 -2
- package/dist/core/session/working.d.ts.map +1 -1
- package/dist/core/session/working.js +66 -9
- package/dist/core/session/working.js.map +1 -1
- package/dist/core/session-sync/session-sync-controller.d.ts +34 -2
- package/dist/core/session-sync/session-sync-controller.d.ts.map +1 -1
- package/dist/core/session-sync/session-sync-controller.js +97 -11
- package/dist/core/session-sync/session-sync-controller.js.map +1 -1
- package/dist/core/stream/keepalive.d.ts +17 -0
- package/dist/core/stream/keepalive.d.ts.map +1 -0
- package/dist/core/stream/keepalive.js +19 -0
- package/dist/core/stream/keepalive.js.map +1 -0
- package/dist/core/turns/grouping.d.ts.map +1 -1
- package/dist/core/turns/grouping.js +13 -0
- package/dist/core/turns/grouping.js.map +1 -1
- package/dist/core/turns/types.d.ts +5 -0
- package/dist/core/turns/types.d.ts.map +1 -1
- package/dist/index.d.ts +15 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -1
- package/dist/kortix.esm.min.js +25 -25
- package/dist/kortix.global.js +25 -25
- package/dist/node/app-viewer.d.ts +41 -0
- package/dist/node/app-viewer.d.ts.map +1 -0
- package/dist/node/app-viewer.js +150 -0
- package/dist/node/app-viewer.js.map +1 -0
- package/dist/node/auth.d.ts +84 -0
- package/dist/node/auth.d.ts.map +1 -0
- package/dist/node/auth.js +414 -0
- package/dist/node/auth.js.map +1 -0
- package/dist/node/server.d.ts +19 -0
- package/dist/node/server.d.ts.map +1 -1
- package/dist/node/server.js +13 -1
- package/dist/node/server.js.map +1 -1
- package/dist/react/bedrock-invokable.d.ts +58 -0
- package/dist/react/bedrock-invokable.d.ts.map +1 -0
- package/dist/react/bedrock-invokable.js +83 -0
- package/dist/react/bedrock-invokable.js.map +1 -0
- package/dist/react/index.d.ts +3 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +7 -0
- package/dist/react/index.js.map +1 -1
- package/dist/react/model-flatten.d.ts +14 -1
- package/dist/react/model-flatten.d.ts.map +1 -1
- package/dist/react/model-flatten.js +3 -4
- package/dist/react/model-flatten.js.map +1 -1
- package/dist/react/opencode.d.ts +2 -1
- package/dist/react/opencode.d.ts.map +1 -1
- package/dist/react/opencode.js +2 -1
- package/dist/react/opencode.js.map +1 -1
- package/dist/react/provider-selection.d.ts +58 -0
- package/dist/react/provider-selection.d.ts.map +1 -1
- package/dist/react/provider-selection.js +253 -2
- package/dist/react/provider-selection.js.map +1 -1
- package/dist/react/session-start-giveup.d.ts +12 -0
- package/dist/react/session-start-giveup.d.ts.map +1 -0
- package/dist/react/session-start-giveup.js +13 -0
- package/dist/react/session-start-giveup.js.map +1 -0
- package/dist/react/session-title-sync.d.ts.map +1 -1
- package/dist/react/session-title-sync.js +15 -5
- package/dist/react/session-title-sync.js.map +1 -1
- package/dist/react/sign-in-with-kortix.d.ts +346 -0
- package/dist/react/sign-in-with-kortix.d.ts.map +1 -0
- package/dist/react/sign-in-with-kortix.js +65 -0
- package/dist/react/sign-in-with-kortix.js.map +1 -0
- package/dist/react/use-admin-accounts.d.ts +1 -1
- package/dist/react/use-admin-accounts.d.ts.map +1 -1
- package/dist/react/use-admin-accounts.js +1 -0
- package/dist/react/use-admin-accounts.js.map +1 -1
- package/dist/react/use-gateway-routing-policy.d.ts +1 -0
- package/dist/react/use-gateway-routing-policy.d.ts.map +1 -1
- package/dist/react/use-gateway-routing-policy.js +12 -1
- package/dist/react/use-gateway-routing-policy.js.map +1 -1
- package/dist/react/use-kortix-app-viewer.d.ts +13 -0
- package/dist/react/use-kortix-app-viewer.d.ts.map +1 -0
- package/dist/react/use-kortix-app-viewer.js +29 -0
- package/dist/react/use-kortix-app-viewer.js.map +1 -0
- package/dist/react/use-model-defaults.d.ts +7 -0
- package/dist/react/use-model-defaults.d.ts.map +1 -1
- package/dist/react/use-model-defaults.js +7 -1
- package/dist/react/use-model-defaults.js.map +1 -1
- package/dist/react/use-model-enablement.d.ts.map +1 -1
- package/dist/react/use-model-enablement.js +5 -1
- package/dist/react/use-model-enablement.js.map +1 -1
- package/dist/react/use-model-store.d.ts +31 -0
- package/dist/react/use-model-store.d.ts.map +1 -1
- package/dist/react/use-model-store.js +31 -2
- package/dist/react/use-model-store.js.map +1 -1
- package/dist/react/use-opencode-events/helpers.d.ts +49 -5
- package/dist/react/use-opencode-events/helpers.d.ts.map +1 -1
- package/dist/react/use-opencode-events/helpers.js +54 -6
- package/dist/react/use-opencode-events/helpers.js.map +1 -1
- package/dist/react/use-opencode-events/index.d.ts.map +1 -1
- package/dist/react/use-opencode-events/index.js +22 -3
- package/dist/react/use-opencode-events/index.js.map +1 -1
- package/dist/react/use-opencode-events/use-event-stream-refs.d.ts.map +1 -1
- package/dist/react/use-opencode-events/use-event-stream-refs.js +14 -2
- package/dist/react/use-opencode-events/use-event-stream-refs.js.map +1 -1
- package/dist/react/use-opencode-local.d.ts.map +1 -1
- package/dist/react/use-opencode-local.js +27 -8
- package/dist/react/use-opencode-local.js.map +1 -1
- package/dist/react/use-opencode-sessions/providers.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/providers.js +44 -3
- package/dist/react/use-opencode-sessions/providers.js.map +1 -1
- package/dist/react/use-poll-owner.d.ts +14 -0
- package/dist/react/use-poll-owner.d.ts.map +1 -0
- package/dist/react/use-poll-owner.js +32 -0
- package/dist/react/use-poll-owner.js.map +1 -0
- package/dist/react/use-project-llm-gateway.d.ts +27 -0
- package/dist/react/use-project-llm-gateway.d.ts.map +1 -0
- package/dist/react/use-project-llm-gateway.js +41 -0
- package/dist/react/use-project-llm-gateway.js.map +1 -0
- package/dist/react/use-project-models.d.ts +9 -0
- package/dist/react/use-project-models.d.ts.map +1 -1
- package/dist/react/use-project-models.js +24 -1
- package/dist/react/use-project-models.js.map +1 -1
- package/dist/react/use-runtime-reconnect.d.ts +11 -0
- package/dist/react/use-runtime-reconnect.d.ts.map +1 -1
- package/dist/react/use-runtime-reconnect.js +34 -3
- package/dist/react/use-runtime-reconnect.js.map +1 -1
- package/dist/react/use-session-prompts.d.ts +16 -1
- package/dist/react/use-session-prompts.d.ts.map +1 -1
- package/dist/react/use-session-prompts.js +76 -11
- package/dist/react/use-session-prompts.js.map +1 -1
- package/dist/react/use-session-send.d.ts.map +1 -1
- package/dist/react/use-session-send.js +14 -1
- package/dist/react/use-session-send.js.map +1 -1
- package/dist/react/use-session-start-give-up.d.ts +20 -0
- package/dist/react/use-session-start-give-up.d.ts.map +1 -0
- package/dist/react/use-session-start-give-up.js +60 -0
- package/dist/react/use-session-start-give-up.js.map +1 -0
- package/dist/react/use-session-sync.d.ts +22 -0
- package/dist/react/use-session-sync.d.ts.map +1 -1
- package/dist/react/use-session-sync.js +61 -5
- package/dist/react/use-session-sync.js.map +1 -1
- package/dist/react/use-session-working.d.ts +38 -0
- package/dist/react/use-session-working.d.ts.map +1 -1
- package/dist/react/use-session-working.js +81 -10
- package/dist/react/use-session-working.js.map +1 -1
- package/dist/react/use-session.d.ts +13 -13
- package/dist/react/use-session.d.ts.map +1 -1
- package/dist/react/use-session.js +74 -53
- package/dist/react/use-session.js.map +1 -1
- package/dist/react/use-static-file-preview.d.ts +12 -0
- package/dist/react/use-static-file-preview.d.ts.map +1 -0
- package/dist/react/use-static-file-preview.js +119 -0
- package/dist/react/use-static-file-preview.js.map +1 -0
- package/dist/react/use-wake-escalation.d.ts +51 -0
- package/dist/react/use-wake-escalation.d.ts.map +1 -0
- package/dist/react/use-wake-escalation.js +62 -0
- package/dist/react/use-wake-escalation.js.map +1 -0
- package/package.json +6 -4
package/dist/kortix.global.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
"use strict";var Kortix=(()=>{var Pn=Object.defineProperty;var Cd=Object.getOwnPropertyDescriptor;var Rd=Object.getOwnPropertyNames;var Ad=Object.prototype.hasOwnProperty;var Td=(t,e)=>{for(var n in e)Pn(t,n,{get:e[n],enumerable:!0})},Id=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Rd(e))!Ad.call(t,s)&&s!==n&&Pn(t,s,{get:()=>e[s],enumerable:!(r=Cd(e,s))||r.enumerable});return t};var Ed=t=>Id(Pn({},"__esModule",{value:!0}),t);var YP={};Td(YP,{ABORT_REASONS:()=>Zp,ABORT_REASONS_NOT_YET_EMITTED:()=>Yx,ACTIVE_INSTANCE_COOKIE:()=>yt,ATTACHMENT_PART_REF_PREFIX:()=>md,ApiError:()=>v,AuthError:()=>be,BillingError:()=>pe,COST_MARKUP:()=>zl,DEFAULT_TRANSCRIPT_OPTIONS:()=>Bl,DESTRUCTIVE_PHASES:()=>pd,FEATURE_DISABLED_CODE:()=>Tt,FEATURE_FLAG_KEYS:()=>Hm,FEATURE_NOT_SUPPORTED_CODE:()=>qu,HostBoundaryError:()=>le,IMPERSONATION_HEADER:()=>Tu,INBOX_OBSERVATION_MAX_MS:()=>UP,INSTANCE_SCOPED_ROUTES:()=>ed,MODEL_NOT_SERVABLE_CODE:()=>Mu,OPTIMISTIC_ABORT_MAX_MS:()=>LP,OPTIMISTIC_COMPACTION_MAX_MS:()=>KP,OPTIMISTIC_RECEIPT_MAX_MS:()=>qP,PREVIEW_PROBE_TIMEOUT_MS:()=>AP,PROVISION_IN_FLIGHT_CODE:()=>Ou,PublicSessionShareError:()=>rn,RequestTooLargeError:()=>xe,RuntimeNotReadyError:()=>$e,SANDBOX_FS_ROOTS:()=>Ft,SANDBOX_PORTS:()=>oe,SERVER_COMPACTION_REVALIDATE_MS:()=>_d,SERVER_OBSERVATION_MAX_MS:()=>MP,STREAM_OBSERVATION_MAX_MS:()=>OP,SessionNotReadyError:()=>pt,SessionStartError:()=>Qt,TURN_END_LEDGER_LAG_MS:()=>FP,__getConfigResolver:()=>Dd,__setConfigResolver:()=>$d,abortErrorReason:()=>Qx,acceptAccountInvite:()=>Cs,acceptInvite:()=>R_,actReviewItem:()=>Vc,activateConnection:()=>Li,addGroupMembers:()=>Tc,addMarketplaceSource:()=>_l,allDescendantIds:()=>Gp,appendPreviewToken:()=>au,approveProjectAccessRequest:()=>Zs,approveTask:()=>Cg,archiveProject:()=>Wt,assignTicket:()=>Dg,attachGroupToProject:()=>li,authenticatedFetch:()=>q,authorizePreviewUrl:()=>RP,backendApi:()=>i,bindSlackIdentity:()=>Wf,bindTeamsIdentity:()=>zf,brokerProjectSecretRequest:()=>Pi,buildInstancePath:()=>nd,buildPresentationTemplateImageUrl:()=>EP,buildPresentationTemplatePdfUrl:()=>IP,buildPreviewAuthEndpoint:()=>iu,buildPublicTemplateUrl:()=>gd,buildRuntimePresentationConversionUrl:()=>xd,buildSandboxTemplate:()=>bo,buildStaticFileHealthPreviewUrl:()=>$h,buildStaticFileLocalUrl:()=>jh,buildStaticFilePreviewUrl:()=>Eh,buildStaticFileServicePath:()=>yp,buildTunnelEventStreamUrl:()=>Sd,buildWebProxyUrl:()=>Uh,bulkActReviewItems:()=>Jc,bulkDeletePolicies:()=>gy,bulkImportPolicies:()=>my,callConnector:()=>ji,cancelAccountDeletion:()=>Xy,cancelAccountInvite:()=>ws,cancelSandbox:()=>P_,cancelSandboxUpdate:()=>G_,cancelScheduledChange:()=>Oa,cancelSubscription:()=>Da,checkAccessEmail:()=>eP,childMapByParent:()=>ox,claimComputer:()=>W_,claimPerSeatBilling:()=>Gf,claimWarmProjectSession:()=>Vo,classifyPart:()=>Kl,classifyPreviewProbeStatus:()=>bd,classifyTurn:()=>Ep,clearImpersonationSession:()=>Yr,clearModelDefault:()=>_a,clearSessionFresh:()=>wf,closeChangeRequest:()=>Mo,closeMilestone:()=>cm,collectTurnParts:()=>nx,commentTicket:()=>Mg,commitSessionChanges:()=>Fo,compactionExpiryAtMs:()=>WP,compareMessagesForDisplay:()=>Lp,computeStatusFromPart:()=>Wl,configureAutoTopup:()=>Ga,configureKortix:()=>_t,confirmCheckoutSession:()=>ja,connectEmail:()=>nc,connectSlack:()=>za,connectionIsFaulted:()=>DP,convertPresentationToGoogleSlides:()=>ah,convertRuntimePresentation:()=>jP,copyFile:()=>st,costExportUrl:()=>Na,countLiveInboxPrompts:()=>GP,createAccount:()=>hs,createAccountAuditWebhook:()=>ll,createAccountToken:()=>el,createApp:()=>wl,createAppAccessSession:()=>Tl,createAppDeployment:()=>El,createAssignment:()=>Bc,createAuditWebhook:()=>Gy,createBackup:()=>I_,createCheckoutSession:()=>Ea,createConnector:()=>eo,createFile:()=>rt,createGatewayKey:()=>_c,createGroup:()=>vc,createHttpSessionSyncController:()=>wd,createInstance:()=>N_,createKortix:()=>vp,createKortixPty:()=>os,createMarketplaceInstallSession:()=>ph,createMilestone:()=>om,createPerSeatCheckout:()=>Lf,createPolicy:()=>uy,createPortalSession:()=>$a,createProject:()=>Ms,createProjectAgent:()=>Wg,createProjectCliToken:()=>rl,createProjectRepo:()=>Os,createProjectResourceGrant:()=>gi,createProjectSession:()=>Be,createProjectTrigger:()=>da,createRole:()=>qc,createSSEStream:()=>vd,createSandbox:()=>m_,createSandboxShare:()=>Yc,createSandboxTemplate:()=>fo,createScimToken:()=>by,createServiceAccountApi:()=>Oy,createSessionPrompt:()=>Qo,createSessionPublicShare:()=>Ho,createSsoGroupMapping:()=>Ay,createTask:()=>wg,createTicket:()=>Eg,createTunnelEventStream:()=>XP,declineAccountInvite:()=>Rs,declineInvite:()=>A_,deleteAccountImmediately:()=>Yy,deleteApp:()=>Cl,deleteAuditWebhook:()=>Ny,deleteBackup:()=>j_,deleteConnector:()=>no,deleteCredential:()=>fm,deleteEnv:()=>ss,deleteFile:()=>Se,deleteGatewayBudget:()=>bc,deleteGitHubInstallation:()=>Ys,deleteGroup:()=>Rc,deleteInstance:()=>K_,deleteKortixProject:()=>tm,deleteMilestone:()=>um,deletePersonalProjectSecret:()=>Ai,deletePolicy:()=>dy,deleteProjectAgent:()=>Vg,deleteProjectProviderOAuth:()=>Si,deleteProjectResourceGrant:()=>mi,deleteProjectSecret:()=>Ci,deleteProjectSession:()=>sa,deleteProjectTrigger:()=>ma,deleteRole:()=>Uc,deleteSandboxTemplate:()=>ho,deleteServiceAccountApi:()=>Fy,deleteSessionPrompt:()=>ea,deleteSsoGroupMapping:()=>Ty,deleteSsoProvider:()=>Cy,deleteTask:()=>Rg,deleteTicket:()=>Og,describeAccountInvite:()=>vs,describeConnectorTool:()=>Ei,detachGroupFromProject:()=>pi,detectLocalhostUrls:()=>dp,disableServiceAccountApi:()=>Uy,disconnectEmail:()=>rc,disconnectGitHubApp:()=>SP,disconnectSlack:()=>Xa,discoverConnectionOAuth2:()=>pf,discoverConnectionOAuth2Resource:()=>df,discoverConnectorAuth:()=>to,discoverLocalSandbox:()=>b_,downloadAccountAudit:()=>yP,dropClientForUrl:()=>Sm,dropPublicClientForUrl:()=>Rm,ensurePmSession:()=>Kg,ensurePreviewSessionCookie:()=>hd,ensureProjectConnectorConnection:()=>cf,ensureSandbox:()=>ud,ensureWarmProjectSession:()=>zo,env:()=>Bu,exportAccountAudit:()=>al,extractGatewayErrorDetails:()=>ae,extractInstanceRoute:()=>Ke,featureDisabledKey:()=>Hr,featureFlags:()=>t_,fetchAccountStateWithToken:()=>Uf,fetchAccountsWithToken:()=>Km,fetchAttachmentPart:()=>vP,fetchCostExportCsv:()=>Hf,fetchProjectArchive:()=>wo,fetchProjectsForAccountWithToken:()=>ef,files:()=>Ju,finalizeAppArtifact:()=>on,finalizeConnectorSetupLink:()=>aP,findFiles:()=>tt,findLastTextPart:()=>rx,findText:()=>nt,fireProjectTrigger:()=>ya,fixSandboxWithAgent:()=>mo,formatBillingErrorForUI:()=>zr,formatCost:()=>xx,formatDuration:()=>yx,formatOpenCodeRuntimeError:()=>ad,formatRuntimeError:()=>ad,formatTokens:()=>_x,formatTranscript:()=>Rp,generateSessionId:()=>Cp,getAccount:()=>bs,getAccountDeletionStatus:()=>Vy,getAccountState:()=>Sa,getAccountStateMinimal:()=>va,getActiveInstanceIdFromCookie:()=>sd,getAdminProviderAnalytics:()=>nh,getAdminProviderDistribution:()=>Zy,getAdminProviderFallback:()=>sh,getAdminRole:()=>Qy,getAgentCardLabel:()=>Op,getAgentConfig:()=>jf,getAgentPersona:()=>Jg,getAllVersions:()=>U_,getAnsweredQuestionParts:()=>ix,getApp:()=>Sl,getAppAccess:()=>Rl,getAppDeployment:()=>$l,getAppDeploymentLogs:()=>Dl,getApprovalLink:()=>uh,getAuthToken:()=>Ie,getAuthTokenWithRetry:()=>Nr,getAutoTopupSettings:()=>La,getAutoTopupSetupStatus:()=>Ff,getBillingCreditBreakdown:()=>Aa,getBillingTierConfigurations:()=>Ia,getBillingTransactionsSummary:()=>Ra,getBillingUsageHistory:()=>Ta,getChangeRequest:()=>Eo,getChangeRequestDiff:()=>jo,getChangeRequestMergePreview:()=>$o,getChildSessionError:()=>Hb,getChildSessionId:()=>Kb,getChildSessionToolParts:()=>Wb,getClient:()=>de,getClientForUrl:()=>se,getConnectStatus:()=>io,getConnectionOAuth2Application:()=>uf,getConnectionOAuth2Status:()=>hf,getConnectionPolicies:()=>bf,getConnectorCatalog:()=>zt,getConnectorConfig:()=>Yi,getConnectorPolicies:()=>Ji,getConnectorSetupLink:()=>iP,getCostSummary:()=>Kf,getCurrentInstanceIdFromPathname:()=>rd,getCurrentInstanceIdFromWindow:()=>s_,getCurrentProject:()=>gs,getDefaultAccountState:()=>Zt,getDiagnostics:()=>Jb,getDirectory:()=>Mp,getDiscoverConnector:()=>Jt,getDiscoverIntegration:()=>Pf,getEmailInstallation:()=>ec,getEmailMode:()=>tc,getEnterpriseDemo:()=>Hy,getFileStatus:()=>et,getFileWithDir:()=>Hl,getFilename:()=>qp,getFullChangelog:()=>dd,getGatewayBreakdown:()=>gc,getGatewayBudgets:()=>yc,getGatewayErrors:()=>fc,getGatewayKeys:()=>xc,getGatewayLog:()=>uc,getGatewayOverview:()=>pc,getGatewayRoutingPolicy:()=>ic,getGatewaySeries:()=>dc,getGatewaySessions:()=>mc,getGitHubAppStatus:()=>_P,getGitHubInstallation:()=>Ks,getGoogleAuthUrl:()=>oh,getGroup:()=>Sc,getHiddenToolParts:()=>Gb,getImpersonationSession:()=>ju,getInvite:()=>C_,getJustavpsServerTypes:()=>B_,getKortixProject:()=>Qg,getKortixProjectBySession:()=>Zg,getKortixPtyWebSocketUrl:()=>ls,getLatestSandboxVersion:()=>O_,getMaintenanceConfig:()=>dP,getManagedGitStatus:()=>Xm,getMarketplaceCatalogItem:()=>hl,getMarketplaceCatalogItemFile:()=>bl,getMfaRequired:()=>_y,getMilestone:()=>sm,getModelDefaults:()=>ba,getOAuthConsentRequest:()=>rP,getOpenCodeConfigInvalidError:()=>Zl,getPartText:()=>Fb,getPatPolicy:()=>Dy,getPermissionForTool:()=>Xb,getProject:()=>Gt,getProjectActivity:()=>Xg,getProjectCommit:()=>Co,getProjectCommitDiff:()=>Ro,getProjectDetail:()=>Bt,getProjectFileHistory:()=>Ao,getProjectGitToken:()=>qs,getProjectLlmCatalog:()=>Nt,getProjectLlmCatalogProviders:()=>zm,getProjectModelPicker:()=>Kt,getProjectSandboxHealth:()=>Xt,getProjectSandboxProviderTransition:()=>Ym,getProjectSession:()=>Yt,getProjectSessionConfigState:()=>ia,getProjectSessionScope:()=>ca,getProrationPreview:()=>Ua,getProviders:()=>d_,getProxyBaseUrl:()=>Dh,getPublicClientForUrl:()=>Cm,getPublicMarketplaceItem:()=>Q_,getPublicMarketplaceItemFile:()=>Z_,getPublicSessionShare:()=>ch,getPublicSessionShareMessages:()=>lh,getPublicShareByToken:()=>uP,getPublicTemplate:()=>xP,getQuestionForTool:()=>Yb,getReferralCode:()=>Zf,getReferralStats:()=>ny,getRetryInfo:()=>Px,getRetryMessage:()=>kx,getReviewItem:()=>Wc,getRolePermissions:()=>$c,getRoleUsage:()=>Dc,getSSHConnection:()=>D_,getSandbox:()=>g_,getSandboxById:()=>f_,getSandboxPortUrl:()=>p_,getSandboxProvisionStatus:()=>z_,getSandboxProvisionStreamUrl:()=>V_,getSandboxUpdateStatus:()=>M_,getSandboxUrl:()=>nu,getSecretSetupLink:()=>cP,getServerHealth:()=>Lt,getServiceLogs:()=>_m,getSessionAudit:()=>Jo,getSessionCost:()=>bx,getSessionCostRecord:()=>nn,getSessionHealth:()=>Fl,getSessionPolicy:()=>Iy,getSessionPreviewCandidates:()=>No,getSessionTranscript:()=>Xo,getSessionTurn:()=>Yo,getShellModePart:()=>lx,getSlackChannelFile:()=>Ya,getSlackInstallation:()=>Wa,getSlackManifest:()=>Ja,getSlackMode:()=>Va,getSsoProvider:()=>wy,getStaticFileHealthPath:()=>hp,getSupabaseAccessToken:()=>Rt,getSupabaseAccessTokenWithRetry:()=>te,getTask:()=>_g,getTaskStatus:()=>kg,getTemplate:()=>dh,getTicket:()=>Tg,getToolInfo:()=>zb,getTranscriptFilename:()=>Ap,getTurnCost:()=>hx,getTurnError:()=>gx,getTurnErrorDetails:()=>mx,getTurnStatus:()=>fx,getUsageRollup:()=>Ba,getUserRolesWithToken:()=>mP,getVersionDiff:()=>To,getWorkingState:()=>px,grantSandboxProjectAccess:()=>S_,grantSecretToAgent:()=>qf,groupMessagesIntoTurns:()=>tx,hasDiffs:()=>wx,hasLocalhostUrls:()=>Ah,hasPreviewTarget:()=>fp,hasRetryingAssistantTurn:()=>cx,heartbeatGapEvent:()=>kp,holdSessionPrompts:()=>na,humanizeToolName:()=>dn,impersonationHeaders:()=>Et,importSsoProviderFromMetadata:()=>vy,installTemplate:()=>gh,invalidateTokenCache:()=>Ve,inviteAccountMember:()=>Ps,inviteProjectMember:()=>si,inviteRepoCollaborator:()=>$s,isAbortError:()=>Xx,isAdminBypassEnabled:()=>yg,isAgentPart:()=>qb,isAppRouteUrl:()=>pp,isAttachment:()=>$p,isAttachmentPartRef:()=>fd,isBillingError:()=>Wr,isCompactionPart:()=>Mb,isConfigured:()=>Pt,isDestructivePhase:()=>q_,isExternalUrl:()=>Gh,isFeatureDisabledError:()=>Kr,isFilePart:()=>jp,isImpersonationSessionLive:()=>Iu,isInstanceDetailPath:()=>n_,isInstanceScopedAppPath:()=>td,isInternalLocalhostUrl:()=>Oh,isInviteSent:()=>rf,isLastUserMessage:()=>ux,isManagedGithubProject:()=>Wm,isOpenCodeConfigInvalidError:()=>c_,isPatchPart:()=>Ub,isPreviewUrl:()=>Mh,isProxiableLocalhostUrl:()=>bp,isReasoningPart:()=>mn,isRetryableTurnError:()=>Bp,isRuntimeReady:()=>hh,isSandboxNotReadyError:()=>od,isServerReachable:()=>ms,isSessionFresh:()=>Go,isSessionStartError:()=>Cf,isShellMode:()=>Np,isSnapshotPart:()=>Ob,isSubdomainPreviewUrl:()=>ou,isTextPart:()=>he,isToolPart:()=>ce,isToolPartHidden:()=>Bb,isUnderSandboxRoot:()=>ps,isWebProxyUrl:()=>Lh,kortixPty:()=>Ku,leaveAccount:()=>Is,linkGitHubInstallation:()=>Xs,linkRepository:()=>Ns,listAccountAudit:()=>il,listAccountAuditWebhooks:()=>cl,listAccountInvites:()=>ks,listAccountMembers:()=>_s,listAccountResourceGrants:()=>cy,listAccountSessions:()=>jy,listAccountTokens:()=>Zc,listAccounts:()=>ys,listActions:()=>fy,listAdminSandboxes:()=>eh,listAgentIdentities:()=>jc,listAllConnections:()=>qi,listAppDeployments:()=>jl,listApps:()=>kl,listAssignments:()=>Gc,listAuditEvents:()=>Ky,listAuditWebhooks:()=>Ly,listBackups:()=>T_,listBillingTransactions:()=>Ca,listChangeRequests:()=>Io,listChannelBindings:()=>Xf,listColumns:()=>Ug,listConnections:()=>Di,listConnectorTools:()=>it,listConnectors:()=>Ki,listCostByProject:()=>Nf,listCredentialEvents:()=>dm,listCredentials:()=>pm,listDiscoverConnectors:()=>Vt,listDiscoverIntegrations:()=>_f,listEnv:()=>ns,listFeaturedMarketplaces:()=>yl,listFields:()=>Lg,listFiles:()=>Ze,listGatewayLogs:()=>lc,listGitHubInstallations:()=>Hs,listGitHubRepositories:()=>zs,listGitHubRepositoryBranches:()=>Vs,listGroupMembers:()=>Ac,listGroupProjectGrants:()=>iy,listGroups:()=>wc,listKortixProjectSessions:()=>em,listKortixProjects:()=>Yg,listKortixPty:()=>is,listLinkableGitHubInstallations:()=>Ws,listMarketplaceCatalogItems:()=>ml,listMarketplaceSources:()=>xl,listMarketplaces:()=>fl,listMemberGroups:()=>oy,listMemberProjectAccess:()=>ay,listMilestoneEvents:()=>im,listMilestones:()=>rm,listPendingApprovals:()=>fi,listPendingProjectInvites:()=>ii,listPermissions:()=>Kc,listPipedreamApps:()=>ro,listPipedreamSections:()=>so,listPolicies:()=>ly,listProjectAccess:()=>ti,listProjectAccessRequests:()=>Qs,listProjectAgents:()=>Hg,listProjectAudit:()=>ol,listProjectBranches:()=>So,listProjectCliTokens:()=>nl,listProjectCommits:()=>vo,listProjectFiles:()=>_o,listProjectGroupGrants:()=>ci,listProjectPolicies:()=>co,listProjectResourceGrants:()=>di,listProjectSandboxTemplates:()=>uo,listProjectSandboxes:()=>xo,listProjectSecrets:()=>bi,listProjectSessions:()=>Ge,listProjectSnapshots:()=>po,listProjectTriggers:()=>pa,listProjects:()=>Ce,listProjectsForAccount:()=>js,listPublicMarketplaceItems:()=>X_,listPublicMarketplaces:()=>Y_,listReferrals:()=>ry,listReviewItems:()=>Hc,listRoles:()=>Ec,listSandboxProjectMembers:()=>w_,listSandboxShares:()=>Xc,listSandboxes:()=>h_,listScimTokens:()=>hy,listServiceAccountsApi:()=>My,listServiceTemplates:()=>xm,listServices:()=>bm,listSessionCosts:()=>Ha,listSessionPrompts:()=>Zo,listSessionPublicShares:()=>Ko,listSessionsNeedingInput:()=>yi,listSsoGroupMappings:()=>Ry,listTaskEvents:()=>Pg,listTasks:()=>xg,listTemplates:()=>Bg,listTicketEvents:()=>Ig,listTickets:()=>Ag,loadHttpSessionHistory:()=>kd,markInstanceError:()=>H_,markSessionFresh:()=>ot,mergeChangeRequest:()=>qo,migrateAdminSandboxProvider:()=>rh,mkdir:()=>Fe,narrowChatEvent:()=>wp,normalizeAppPathname:()=>a_,normalizeExternalInput:()=>Bh,normalizeToolName:()=>gt,openChangeRequest:()=>Do,openEventStream:()=>un,openStressTestStream:()=>hP,parseBillingError:()=>_e,parseFlagOverride:()=>e_,parseLocalhostUrl:()=>ut,parseOpenCodeErrorPayload:()=>id,parseProxyHop:()=>Ul,parseSubdomainUrl:()=>Gl,parseWebProxyUrl:()=>Fh,patchKortixProject:()=>nm,pipedreamConnect:()=>Zi,pipedreamConnectConnection:()=>Bi,pipedreamFinalize:()=>ao,pipedreamFinalizeConnection:()=>Ni,platformConfig:()=>D,pollConnectionOAuth2DeviceAuthorization:()=>yf,pollProjectProviderOAuth:()=>wi,previewGatewayRoute:()=>cc,previewMfaRequired:()=>Py,probeEffectivePermission:()=>Fc,probeEffectivePermissions:()=>Lc,probePreviewPort:()=>TP,projectCompacting:()=>HP,projectSessionConnection:()=>$P,projectSessionStartSeed:()=>vf,projectWorking:()=>BP,provisionProject:()=>Us,provisionProjectStream:()=>Jm,provisionProjectWithToken:()=>tf,proxyLocalhostUrl:()=>Ll,proxyUrlToInternal:()=>qh,purchaseCredits:()=>Fa,putConnectionOAuth2Application:()=>lf,reactivateSandbox:()=>k_,reactivateSubscription:()=>qa,readBlob:()=>Me,readFile:()=>qe,readProjectFile:()=>ko,rebuildProjectSnapshot:()=>go,reconcileConnection:()=>Mi,reconcileMemberConnection:()=>Oi,reconcileServices:()=>km,recordPlatformLogout:()=>nP,refreshReferralCode:()=>ey,registerAppArtifact:()=>sn,registerConnectionOAuth2Client:()=>gf,registerService:()=>wm,rejectProjectAccessRequest:()=>ei,relativizePath:()=>Vb,reloadProjectSessionConfig:()=>oa,reloadProjectSessionConfigStream:()=>aa,removeAccountAuditWebhook:()=>pl,removeAccountMember:()=>As,removeGroupMember:()=>Ic,removeKortixPty:()=>cs,removeMarketplaceSource:()=>Pl,renameFile:()=>ge,renameSandbox:()=>y_,reopenChangeRequest:()=>Oo,reopenMilestone:()=>lm,replaceColumns:()=>Fg,replaceFields:()=>Gg,replaceTemplates:()=>Ng,requestAccountDeletion:()=>Jy,requestChangesOnChangeRequest:()=>Uo,requestProjectAccess:()=>nf,requestProjectConnector:()=>gl,requestProjectSecret:()=>dl,resendAccountInvite:()=>Ss,resendPendingProjectInvite:()=>ai,resetClient:()=>vm,resetGatewayRoutingPolicy:()=>ac,resetPublicClient:()=>Am,resetSandboxUpdateStatus:()=>L_,resolveApproval:()=>hi,resolvedPlan:()=>Of,restartProjectSession:()=>at,restartSandbox:()=>x_,restoreBackup:()=>E_,retrySessionPrompt:()=>ta,revealCredential:()=>mm,revokeAccountSession:()=>$y,revokeAccountToken:()=>tl,revokeAssignment:()=>Nc,revokeConnection:()=>Fi,revokeGatewayKey:()=>Pc,revokePendingProjectInvite:()=>oi,revokeProjectAccess:()=>ri,revokeProjectCliToken:()=>sl,revokeSandboxProjectAccess:()=>v_,revokeSandboxShare:()=>Qc,revokeScimToken:()=>xy,revokeSessionPublicShare:()=>Wo,rewriteLocalhostUrl:()=>fe,rollbackApp:()=>Ol,runGatewayPlayground:()=>kc,saveGitHubInstallation:()=>Js,scheduleDowngrade:()=>Ma,searchConnectorTools:()=>Ii,searchProjectFiles:()=>Po,sendReferralEmails:()=>sy,serverCompactionRevalidateAtMs:()=>zP,serviceAction:()=>Pm,sessionStartKey:()=>Af,setActiveInstanceCookie:()=>i_,setAdminBypass:()=>fg,setAdminProviderDistribution:()=>th,setAdminProviderFallback:()=>ih,setAgentScope:()=>Pa,setBootstrapAuthToken:()=>eg,setCachedAuthToken:()=>Zd,setConnectionPolicies:()=>xf,setConnectorAuthorizationStrategy:()=>zi,setConnectorCredential:()=>oo,setConnectorCredentialMode:()=>Wi,setConnectorName:()=>Qi,setConnectorPolicies:()=>Xi,setConnectorSecretBinding:()=>kf,setConnectorSensitive:()=>Vi,setDefaultConnection:()=>Gi,setEnterpriseDemo:()=>Wy,setEnv:()=>rs,setGatewayBudget:()=>hc,setGatewayRoutingPolicy:()=>oc,setGitHubAppFromExisting:()=>kP,setGitHubAppPat:()=>wP,setImpersonationSession:()=>ig,setMaintenanceConfig:()=>gP,setMemberSuperAdmin:()=>yy,setMfaRequired:()=>ky,setModelDefault:()=>xa,setPersonalProjectSecret:()=>Ri,setProjectModelEnablement:()=>Tf,setProjectOnboardingComplete:()=>Bs,setProjectOnboardingProfile:()=>Zm,setProjectPolicies:()=>lo,setProjectSecretStrategy:()=>_i,setProjectSessionModel:()=>ua,setProjectSessionScope:()=>la,setProjectSessionSharing:()=>Bo,setProjectTriggersActivation:()=>fa,setupSSH:()=>$_,shellExitCode:()=>Jl,shouldAttachImpersonation:()=>$u,shouldHideResponsePart:()=>dx,shouldShowToolPart:()=>Dp,sortSessions:()=>ax,splitUserParts:()=>Lb,startApp:()=>ql,startConnectionOAuth2Authorization:()=>mf,startConnectionOAuth2DeviceAuthorization:()=>ff,startConnectorSetupLink:()=>oP,startGitHubAppManifest:()=>PP,startProjectProviderOAuth:()=>ki,startProjectSession:()=>Re,startSessionWithToken:()=>pP,startTask:()=>vg,stopApp:()=>Ml,stopProjectSession:()=>ct,stopSandbox:()=>__,stripAnsi:()=>Zb,stripInstancePrefix:()=>r_,stripTrailingSlashes:()=>we,submitAccessRequest:()=>tP,submitDemoRequest:()=>fP,submitOAuthConsent:()=>sP,submitReviewItem:()=>zc,submitSecretSetupLink:()=>lP,subscribeToImpersonation:()=>og,supabaseClient:()=>hg,syncConnectors:()=>Hi,syncSubscription:()=>Bf,systemReload:()=>Im,toDaemonPath:()=>ve,toInstanceAwarePath:()=>o_,toInternalUrl:()=>xp,toSandboxAbsolutePath:()=>Qe,toWorkspaceRelative:()=>ds,toolInfo:()=>gn,toolViewModel:()=>Yp,triggerSandboxUpdate:()=>F_,triggersRequest:()=>Nu,turnHasSteps:()=>sx,unassignTicket:()=>qg,unwrapError:()=>Q,updateAccountAuditWebhook:()=>ul,updateAccountMemberRole:()=>Ts,updateAccountName:()=>xs,updateAgentConfig:()=>$f,updateApp:()=>vl,updateAppAccess:()=>Al,updateAuditWebhook:()=>By,updateChannelBinding:()=>Yf,updateConnectionCredential:()=>Ui,updateEmailPolicy:()=>sc,updateExperimentalFeature:()=>Ls,updateFeatureFlag:()=>Fs,updateGroup:()=>Cc,updateKortixPty:()=>as,updateMilestone:()=>am,updatePatPolicy:()=>qy,updatePolicy:()=>py,updateProject:()=>Ht,updateProjectAccess:()=>ni,updateProjectAgent:()=>zg,updateProjectDefaultAgent:()=>wa,updateProjectGroupGrant:()=>ui,updateProjectSandboxProvider:()=>Gs,updateProjectSession:()=>ra,updateProjectTrigger:()=>ga,updateRole:()=>Mc,updateRolePermissions:()=>Oc,updateSandboxTemplate:()=>yo,updateSessionPolicy:()=>Ey,updateTask:()=>Sg,updateTemplateWarmPool:()=>Qm,updateTicket:()=>jg,updateTicketStatus:()=>$g,uploadAppArtifactArchive:()=>Il,uploadConnectorAttachment:()=>$i,uploadFile:()=>Oe,uploadSlackChannelFile:()=>Qa,upsertCredential:()=>gm,upsertProjectGitCredential:()=>vi,upsertProjectSecret:()=>xi,upsertSsoProvider:()=>Sy,validateProjectManifest:()=>Ds,validateReferralCode:()=>ty,validateToken:()=>Es,verifyGatewayProvider:()=>Qf,workingExpiryAtMs:()=>NP,writeFile:()=>Ue});var jd={backendUrl:"",getToken:async()=>null},kn=null,xt=null;function $d(t){xt=t}function Dd(){return xt}function _t(t,e){e?.global!==!1&&(kn=t)}function D(){return xt?.()??kn??jd}function Pt(){return kn!==null||xt?.()!==void 0}var pu=({onRequest:t,onSseError:e,onSseEvent:n,responseTransformer:r,responseValidator:s,sseDefaultRetryDelay:o,sseMaxRetryAttempts:u,sseMaxRetryDelay:p,sseSleepFn:d,url:f,...m})=>{let b,x=d??(E=>new Promise(l=>setTimeout(l,E)));return{stream:async function*(){let E=o??3e3,l=0,y=m.signal??new AbortController().signal;for(;!y.aborted;){l++;let c=m.headers instanceof Headers?m.headers:new Headers(m.headers);b!==void 0&&c.set("Last-Event-ID",b);try{let T={redirect:"follow",...m,body:m.serializedBody,headers:c,signal:y},R=new Request(f,T);t&&(R=await t(f,T));let j=await(m.fetch??globalThis.fetch)(R);if(!j.ok)throw new Error(`SSE failed: ${j.status} ${j.statusText}`);if(!j.body)throw new Error("No body in SSE response");let $=j.body.pipeThrough(new TextDecoderStream).getReader(),A="",W=()=>{try{$.cancel()}catch{}};y.addEventListener("abort",W);try{for(;;){let{done:K,value:h}=await $.read();if(K)break;A+=h,A=A.replace(/\r\n/g,`
|
|
1
|
+
"use strict";var Kortix=(()=>{var Un=Object.defineProperty;var cg=Object.getOwnPropertyDescriptor;var lg=Object.getOwnPropertyNames;var ug=Object.prototype.hasOwnProperty;var pg=(t,e)=>{for(var n in e)Un(t,n,{get:e[n],enumerable:!0})},dg=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of lg(e))!ug.call(t,s)&&s!==n&&Un(t,s,{get:()=>e[s],enumerable:!(r=cg(e,s))||r.enumerable});return t};var gg=t=>dg(Un({},"__esModule",{value:!0}),t);var ew={};pg(ew,{ABORT_REASONS:()=>$d,ABORT_REASONS_NOT_YET_EMITTED:()=>O_,ACTIVE_INSTANCE_COOKIE:()=>_t,ATTACHMENT_PART_REF_PREFIX:()=>zd,ApiError:()=>C,AuthError:()=>_e,BillingError:()=>ge,COST_MARKUP:()=>ku,DEFAULT_TRANSCRIPT_OPTIONS:()=>hu,DESTRUCTIVE_PHASES:()=>Kd,FEATURE_DISABLED_CODE:()=>Mt,FEATURE_FLAG_KEYS:()=>Rf,FEATURE_NOT_SUPPORTED_CODE:()=>gp,HeadlessAuthError:()=>He,HostBoundaryError:()=>pe,IMPERSONATION_HEADER:()=>ap,INBOX_OBSERVATION_MAX_MS:()=>Sk,INSTANCE_SCOPED_ROUTES:()=>Md,MODEL_NOT_SERVABLE_CODE:()=>mp,OPTIMISTIC_ABORT_MAX_MS:()=>Ck,OPTIMISTIC_COMPACTION_MAX_MS:()=>Ek,OPTIMISTIC_RECEIPT_MAX_MS:()=>Pk,PREVIEW_PROBE_TIMEOUT_MS:()=>mk,PROVISION_IN_FLIGHT_CODE:()=>fp,PublicSessionShareError:()=>ln,RequestTooLargeError:()=>Pe,RuntimeNotReadyError:()=>qe,SANDBOX_FS_ROOTS:()=>Kt,SANDBOX_PORTS:()=>ce,SERVER_COMPACTION_REVALIDATE_MS:()=>Zd,SERVER_OBSERVATION_MAX_MS:()=>kk,STREAM_OBSERVATION_MAX_MS:()=>wk,SandboxNotReadyError:()=>Pt,SessionNotReadyError:()=>ft,SessionStartError:()=>rn,TURN_END_LEDGER_LAG_MS:()=>vk,WAKE_ESCALATION_COOLDOWN_MS:()=>Ok,WAKE_MAX_RESTARTS:()=>Dk,WAKE_NO_PROGRESS_MS:()=>qk,__getConfigResolver:()=>yg,__setConfigResolver:()=>fg,abortErrorReason:()=>U_,acceptAccountInvite:()=>Vs,acceptInvite:()=>gP,actReviewItem:()=>wl,activateConnection:()=>co,addGroupMembers:()=>Yc,addMarketplaceSource:()=>Jl,advanceWakeEscalation:()=>Lk,allDescendantIds:()=>Pd,appendPreviewToken:()=>Ou,approveProjectAccessRequest:()=>Pi,approveTask:()=>cm,archiveProject:()=>Qt,assignTicket:()=>ym,attachGroupToProject:()=>Ei,authUser:()=>_n,authenticatedFetch:()=>M,authorizePreviewUrl:()=>gk,backendApi:()=>i,bindSlackIdentity:()=>Ey,bindTeamsIdentity:()=>jy,brokerProjectSecretRequest:()=>Ni,buildInstancePath:()=>Dd,buildPresentationTemplateImageUrl:()=>hk,buildPresentationTemplatePdfUrl:()=>yk,buildPreviewAuthEndpoint:()=>qu,buildPublicTemplateUrl:()=>Wd,buildRuntimePresentationConversionUrl:()=>Yd,buildSandboxTemplate:()=>Lo,buildStaticFileHealthPreviewUrl:()=>_b,buildStaticFileLocalUrl:()=>xb,buildStaticFilePreviewUrl:()=>bb,buildStaticFileServicePath:()=>Xp,buildTunnelEventStreamUrl:()=>sg,buildWebProxyUrl:()=>vb,bulkActReviewItems:()=>Sl,bulkDeletePolicies:()=>Yy,bulkImportPolicies:()=>Zy,callConnector:()=>eo,cancelAccountDeletion:()=>qh,cancelAccountInvite:()=>Hs,cancelSandbox:()=>aP,cancelSandboxUpdate:()=>AP,cancelScheduledChange:()=>oc,cancelSubscription:()=>rc,checkAccessEmail:()=>LP,childMapByParent:()=>zx,claimComputer:()=>jP,claimPerSeatBilling:()=>Cy,claimWarmProjectSession:()=>ya,classifyPart:()=>xu,classifyPreviewProbeStatus:()=>Qd,classifyTurn:()=>pd,clearImpersonationSession:()=>ms,clearKortixAppViewerCache:()=>og,clearModelDefault:()=>Na,clearSessionFresh:()=>ay,closeChangeRequest:()=>sa,closeMilestone:()=>Km,collectTurnParts:()=>Nx,commentTicket:()=>bm,commitSessionChanges:()=>aa,compactionExpiryAtMs:()=>$k,compareMessagesForDisplay:()=>_d,computeStatusFromPart:()=>Pu,configureAutoTopup:()=>uc,configureKortix:()=>vt,confirmCheckoutSession:()=>tc,connectEmail:()=>vc,connectSlack:()=>yc,connectionIsFaulted:()=>_k,connectorConnect:()=>Tp,connectorFinalize:()=>Ip,convertPresentationToGoogleSlides:()=>Wh,convertRuntimePresentation:()=>bk,copyFile:()=>ct,costExportUrl:()=>dc,countLiveInboxPrompts:()=>Rk,createAccount:()=>Ms,createAccountAuditWebhook:()=>Ul,createAccountToken:()=>Tl,createApp:()=>Yl,createAppAccessSession:()=>su,createAppDeployment:()=>ou,createAssignment:()=>hl,createAuditWebhook:()=>Ch,createBackup:()=>yP,createCheckoutSession:()=>ec,createConnector:()=>wo,createFile:()=>at,createGatewayKey:()=>Nc,createGroup:()=>Vc,createHttpSessionSyncController:()=>rg,createInstance:()=>TP,createKortix:()=>id,createKortixPty:()=>ws,createKortixSession:()=>kn,createMarketplaceInstallSession:()=>Xh,createMilestone:()=>Bm,createOAuthClient:()=>dl,createPerSeatCheckout:()=>vy,createPolicy:()=>Jy,createPortalSession:()=>nc,createProject:()=>si,createProjectAgent:()=>Rm,createProjectCliToken:()=>jl,createProjectRepo:()=>ii,createProjectResourceGrant:()=>qi,createProjectSession:()=>Ke,createProjectTrigger:()=>qa,createRole:()=>sl,createSSEStream:()=>ig,createSandbox:()=>eP,createSandboxShare:()=>Cl,createSandboxTemplate:()=>Oo,createScimToken:()=>rh,createServiceAccountApi:()=>kh,createSessionPrompt:()=>Pa,createSessionPublicShare:()=>ga,createSsoGroupMapping:()=>gh,createTask:()=>im,createTicket:()=>gm,createTunnelEventStream:()=>Qk,declineAccountInvite:()=>Js,declineInvite:()=>mP,deleteAccountImmediately:()=>Dh,deleteApp:()=>tu,deleteAuditWebhook:()=>Rh,deleteBackup:()=>bP,deleteConnector:()=>vo,deleteCredential:()=>Qm,deleteEnv:()=>Ps,deleteFile:()=>ve,deleteGatewayBudget:()=>Gc,deleteGitHubInstallation:()=>xi,deleteGroup:()=>Xc,deleteInstance:()=>IP,deleteKortixProject:()=>Om,deleteMilestone:()=>Wm,deleteOAuthClient:()=>fl,deletePersonalProjectSecret:()=>Xi,deletePolicy:()=>Qy,deleteProjectAgent:()=>Im,deleteProjectProviderOAuth:()=>Wi,deleteProjectResourceGrant:()=>Di,deleteProjectSecret:()=>Vi,deleteProjectSession:()=>Aa,deleteProjectTrigger:()=>Oa,deleteRole:()=>al,deleteSandboxTemplate:()=>Fo,deleteServiceAccountApi:()=>Sh,deleteSessionPrompt:()=>wa,deleteSsoGroupMapping:()=>mh,deleteSsoProvider:()=>ph,deleteTask:()=>lm,deleteTicket:()=>xm,describeAccountInvite:()=>zs,describeConnectorTool:()=>Zi,detachGroupFromProject:()=>$i,detectLocalhostUrls:()=>Wp,disableServiceAccountApi:()=>wh,disconnectEmail:()=>Cc,disconnectGitHubApp:()=>uk,disconnectSlack:()=>xc,discoverConnectionOAuth2:()=>zf,discoverConnectionOAuth2Resource:()=>Vf,discoverConnectorAuth:()=>So,discoverLocalSandbox:()=>sP,downloadAccountAudit:()=>nk,dropClientForUrl:()=>af,dropPublicClientForUrl:()=>uf,ensurePmSession:()=>Cm,ensurePreviewSessionCookie:()=>Xd,ensureProjectConnectorConnection:()=>Kf,ensureSandbox:()=>Nd,ensureWarmProjectSession:()=>fa,env:()=>_p,exchangeCode:()=>hn,exportAccountAudit:()=>Dl,extractGatewayErrorDetails:()=>le,extractInstanceRoute:()=>Ve,featureDisabledKey:()=>cs,featureFlags:()=>G_,fetchAccountStateWithToken:()=>wy,fetchAccountsWithToken:()=>Af,fetchAttachmentPart:()=>pk,fetchCostExportCsv:()=>Iy,fetchKortixAppViewer:()=>Bu,fetchProjectArchive:()=>Ho,fetchProjectsForAccountWithToken:()=>Of,files:()=>Ap,finalizeAppArtifact:()=>pn,finalizeConnectorSetupLink:()=>zP,findFiles:()=>it,findLastTextPart:()=>Kx,findText:()=>ot,fireProjectTrigger:()=>Fa,fixSandboxWithAgent:()=>Do,formatBillingErrorForUI:()=>us,formatCost:()=>o_,formatDuration:()=>r_,formatOpenCodeRuntimeError:()=>Ld,formatRuntimeError:()=>Ld,formatTokens:()=>a_,formatTranscript:()=>ad,generateSessionId:()=>od,getAccount:()=>qs,getAccountBranding:()=>Os,getAccountDeletionStatus:()=>$h,getAccountState:()=>za,getAccountStateMinimal:()=>Va,getActiveInstanceIdFromCookie:()=>Ud,getAdminProviderAnalytics:()=>Gh,getAdminProviderDistribution:()=>Uh,getAdminProviderFallback:()=>Nh,getAdminRole:()=>Oh,getAgentCardLabel:()=>hd,getAgentConfig:()=>hy,getAgentPersona:()=>Em,getAllVersions:()=>SP,getAnsweredQuestionParts:()=>Wx,getApp:()=>Zl,getAppAccess:()=>nu,getAppDeployment:()=>cu,getAppDeploymentLogs:()=>lu,getApprovalLink:()=>Jh,getAuthToken:()=>je,getAuthTokenWithRetry:()=>os,getAutoTopupSettings:()=>lc,getAutoTopupSetupStatus:()=>Sy,getBillingCreditBreakdown:()=>Qa,getBillingTierConfigurations:()=>Za,getBillingTransactionsSummary:()=>Xa,getBillingUsageHistory:()=>Ya,getChangeRequest:()=>Zo,getChangeRequestDiff:()=>ea,getChangeRequestMergePreview:()=>ta,getChildSessionError:()=>jx,getChildSessionId:()=>Ex,getChildSessionToolParts:()=>$x,getClient:()=>me,getClientForUrl:()=>oe,getConnectStatus:()=>Ro,getConnectionOAuth2Application:()=>Wf,getConnectionOAuth2Status:()=>Zf,getConnectionPolicies:()=>ey,getConnectorCatalog:()=>Yt,getConnectorConfig:()=>_o,getConnectorPolicies:()=>bo,getConnectorSetupLink:()=>HP,getCostSummary:()=>Ty,getCurrentInstanceIdFromPathname:()=>Od,getCurrentInstanceIdFromWindow:()=>K_,getCurrentProject:()=>Is,getDefaultAccountState:()=>sn,getDiagnostics:()=>Dx,getDirectory:()=>yd,getDiscoverConnector:()=>en,getDiscoverIntegration:()=>iy,getEmailInstallation:()=>wc,getEmailMode:()=>Sc,getEnterpriseDemo:()=>Ih,getFileStatus:()=>st,getFileWithDir:()=>_u,getFilename:()=>fd,getFullChangelog:()=>Hd,getGatewayBreakdown:()=>Dc,getGatewayBudgets:()=>Fc,getGatewayErrors:()=>Uc,getGatewayKeys:()=>Bc,getGatewayLog:()=>$c,getGatewayOverview:()=>Mc,getGatewayRoutingPolicy:()=>Rc,getGatewaySeries:()=>qc,getGatewaySessions:()=>Oc,getGitHubAppStatus:()=>ok,getGitHubInstallation:()=>di,getGoogleAuthUrl:()=>Hh,getGroup:()=>zc,getHiddenToolParts:()=>Rx,getImpersonationSession:()=>up,getInvite:()=>dP,getJustavpsServerTypes:()=>RP,getKortixProject:()=>Mm,getKortixProjectBySession:()=>qm,getKortixPtyWebSocketUrl:()=>Cs,getLatestSandboxVersion:()=>wP,getMaintenanceConfig:()=>YP,getManagedGitStatus:()=>$f,getMarketplaceCatalogItem:()=>Wl,getMarketplaceCatalogItemFile:()=>zl,getMfaRequired:()=>ih,getMilestone:()=>Lm,getModelDefaults:()=>Ga,getOAuthClient:()=>pl,getOAuthConsentRequest:()=>NP,getOpenCodeConfigInvalidError:()=>Tu,getPartText:()=>Cx,getPatPolicy:()=>xh,getPermissionForTool:()=>Ox,getProject:()=>Wt,getProjectActivity:()=>jm,getProjectCommit:()=>Vo,getProjectCommitDiff:()=>Jo,getProjectDetail:()=>zt,getProjectFileHistory:()=>Xo,getProjectGitToken:()=>ri,getProjectLlmCatalog:()=>Vt,getProjectLlmCatalogProviders:()=>If,getProjectModelPicker:()=>Jt,getProjectSandboxHealth:()=>tn,getProjectSandboxProviderTransition:()=>Mf,getProjectSession:()=>nn,getProjectSessionConfigState:()=>Ra,getProjectSessionScope:()=>Ea,getProrationPreview:()=>ac,getProviders:()=>Y_,getProxyBaseUrl:()=>Pb,getPublicClientForUrl:()=>lf,getPublicMarketplaceItem:()=>UP,getPublicMarketplaceItemFile:()=>FP,getPublicSessionShare:()=>zh,getPublicSessionShareMessages:()=>Vh,getPublicShareByToken:()=>XP,getPublicTemplate:()=>ik,getQuestionForTool:()=>Ux,getReferralCode:()=>Uy,getReferralStats:()=>Gy,getRetryInfo:()=>c_,getRetryMessage:()=>l_,getReviewItem:()=>Pl,getRolePermissions:()=>nl,getRoleUsage:()=>rl,getSSHConnection:()=>_P,getSandbox:()=>Z_,getSandboxById:()=>tP,getSandboxPortUrl:()=>Q_,getSandboxProvisionStatus:()=>$P,getSandboxProvisionStreamUrl:()=>MP,getSandboxUpdateStatus:()=>kP,getSandboxUrl:()=>ju,getSecretSetupLink:()=>VP,getServerHealth:()=>Ht,getServiceLogs:()=>nf,getSessionAudit:()=>ha,getSessionCost:()=>i_,getSessionCostRecord:()=>cn,getSessionHealth:()=>mu,getSessionOpenBundle:()=>cy,getSessionPolicy:()=>fh,getSessionPreviewCandidates:()=>pa,getSessionTranscript:()=>ba,getSessionTranscriptSync:()=>xa,getSessionTurn:()=>_a,getShellModePart:()=>Xx,getSlackChannelFile:()=>_c,getSlackInstallation:()=>fc,getSlackManifest:()=>bc,getSlackMode:()=>hc,getSsoProvider:()=>ch,getStaticFileHealthPath:()=>Qp,getSupabaseAccessToken:()=>jt,getSupabaseAccessTokenWithRetry:()=>ne,getTask:()=>nm,getTaskStatus:()=>sm,getTemplate:()=>Qh,getTicket:()=>pm,getToolInfo:()=>Mx,getTranscriptFilename:()=>cd,getTurnCost:()=>s_,getTurnError:()=>e_,getTurnErrorDetails:()=>t_,getTurnStatus:()=>n_,getUsageRollup:()=>pc,getUserRolesWithToken:()=>ek,getVersionDiff:()=>Qo,getWorkingState:()=>Yx,grantSandboxProjectAccess:()=>uP,grantSecretToAgent:()=>_y,groupMessagesIntoTurns:()=>Bx,hasDiffs:()=>u_,hasLocalhostUrls:()=>fb,hasPreviewTarget:()=>Jp,hasRetryingAssistantTurn:()=>Jx,heartbeatGapEvent:()=>nd,holdSessionPrompts:()=>va,humanizeToolName:()=>Rn,impersonationHeaders:()=>Dt,importSsoProviderFromMetadata:()=>uh,inboxObservationSupersedes:()=>Ak,initialWakeEscalationState:()=>Lu,installTemplate:()=>Yh,invalidateTokenCache:()=>Ye,inviteAccountMember:()=>Ns,inviteProjectMember:()=>Ci,inviteRepoCollaborator:()=>ti,isAbortError:()=>Cu,isAdminBypassEnabled:()=>Yg,isAgentPart:()=>kx,isAppRouteUrl:()=>Hp,isAttachment:()=>gd,isAttachmentPartRef:()=>Vd,isBillingError:()=>ls,isCompactionPart:()=>wx,isConfigured:()=>Ct,isDestructivePhase:()=>PP,isExternalUrl:()=>Rb,isFeatureDisabledError:()=>as,isFilePart:()=>dd,isImpersonationSessionLive:()=>cp,isInstanceDetailPath:()=>B_,isInstanceScopedAppPath:()=>qd,isInternalLocalhostUrl:()=>Sb,isInviteSent:()=>Lf,isLastUserMessage:()=>Qx,isManagedGithubProject:()=>Tf,isOpenCodeConfigInvalidError:()=>V_,isPatchPart:()=>vx,isPreviewUrl:()=>wb,isProxiableLocalhostUrl:()=>Yp,isReasoningPart:()=>In,isRetryableTurnError:()=>kd,isRuntimeReady:()=>sb,isSandboxNotReadyError:()=>kt,isServerReachable:()=>Es,isSessionFresh:()=>la,isSessionStartError:()=>py,isShellMode:()=>wd,isSnapshotPart:()=>Sx,isSubdomainPreviewUrl:()=>Du,isTextPart:()=>xe,isToolPart:()=>ue,isToolPartHidden:()=>Tx,isUnderSandboxRoot:()=>Rs,isWebProxyUrl:()=>Ab,kortixAppViewerToken:()=>ag,kortixPty:()=>kp,leaveAccount:()=>Ys,linkGitHubInstallation:()=>bi,linkRepository:()=>pi,listAccountAudit:()=>Ml,listAccountAuditWebhooks:()=>Ol,listAccountInvites:()=>Ks,listAccountMembers:()=>Bs,listAccountResourceGrants:()=>zy,listAccountSessions:()=>hh,listAccountTokens:()=>Rl,listAccounts:()=>$s,listActions:()=>eh,listAdminSandboxes:()=>Fh,listAgentIdentities:()=>tl,listAllConnections:()=>ro,listAppDeployments:()=>au,listApps:()=>Ql,listAssignments:()=>yl,listAuditEvents:()=>Th,listAuditWebhooks:()=>vh,listBackups:()=>fP,listBillingTransactions:()=>Ja,listChangeRequests:()=>Yo,listChannelBindings:()=>qy,listColumns:()=>_m,listConnectToolkits:()=>ry,listConnections:()=>no,listConnectorTools:()=>lt,listConnectors:()=>go,listCostByProject:()=>Ry,listCredentialEvents:()=>Vm,listCredentials:()=>zm,listDiscoverConnectors:()=>Zt,listDiscoverIntegrations:()=>sy,listEnv:()=>xs,listFeaturedMarketplaces:()=>Hl,listFields:()=>km,listFiles:()=>rt,listGatewayLogs:()=>jc,listGitHubInstallations:()=>gi,listGitHubRepositories:()=>fi,listGitHubRepositoryBranches:()=>yi,listGroupMembers:()=>Qc,listGroupProjectGrants:()=>Ky,listGroups:()=>Wc,listKortixProjectSessions:()=>Dm,listKortixProjects:()=>$m,listKortixPty:()=>ks,listLinkableGitHubInstallations:()=>mi,listMarketplaceCatalogItems:()=>Nl,listMarketplaceSources:()=>Vl,listMarketplaces:()=>Kl,listMemberGroups:()=>Hy,listMemberProjectAccess:()=>Wy,listMilestoneEvents:()=>Gm,listMilestones:()=>Fm,listOAuthClients:()=>ul,listPendingApprovals:()=>Oi,listPendingProjectInvites:()=>Ai,listPermissions:()=>xl,listPipedreamApps:()=>Co,listPipedreamSections:()=>Ao,listPolicies:()=>Vy,listProjectAccess:()=>wi,listProjectAccessRequests:()=>_i,listProjectAgents:()=>Am,listProjectAudit:()=>ql,listProjectBranches:()=>Wo,listProjectCliTokens:()=>El,listProjectCommits:()=>zo,listProjectFiles:()=>Bo,listProjectGroupGrants:()=>Ii,listProjectPolicies:()=>Eo,listProjectResourceGrants:()=>Mi,listProjectSandboxTemplates:()=>$o,listProjectSandboxes:()=>Go,listProjectSecrets:()=>Li,listProjectSessions:()=>Ne,listProjectSnapshots:()=>Mo,listProjectTriggers:()=>Ma,listProjects:()=>Ae,listProjectsForAccount:()=>ei,listPublicMarketplaceItems:()=>DP,listPublicMarketplaces:()=>OP,listReferrals:()=>By,listReviewItems:()=>_l,listRoles:()=>el,listSandboxProjectMembers:()=>lP,listSandboxShares:()=>vl,listSandboxes:()=>rP,listScimTokens:()=>nh,listServiceAccountsApi:()=>Ph,listServiceTemplates:()=>tf,listServices:()=>ef,listSessionConnectRequests:()=>ny,listSessionCosts:()=>mc,listSessionPrompts:()=>ka,listSessionPublicShares:()=>da,listSessionsNeedingInput:()=>Ui,listSsoGroupMappings:()=>dh,listTaskEvents:()=>rm,listTasks:()=>tm,listTemplates:()=>Sm,listTicketEvents:()=>dm,listTickets:()=>um,loadHttpSessionHistory:()=>ng,markInstanceError:()=>EP,markSessionFresh:()=>ut,mergeChangeRequest:()=>ra,migrateAdminSandboxProvider:()=>Bh,mkdir:()=>Ge,narrowChatEvent:()=>rd,normalizeAppPathname:()=>z_,normalizeExternalInput:()=>Tb,normalizeToolName:()=>ht,openChangeRequest:()=>na,openEventStream:()=>Cn,openStressTestStream:()=>rk,parseBillingError:()=>ke,parseFlagOverride:()=>L_,parseLocalhostUrl:()=>mt,parseOpenCodeErrorPayload:()=>Fd,parseProxyHop:()=>gu,parseSubdomainUrl:()=>yu,parseWebProxyUrl:()=>Cb,patchKortixProject:()=>Um,pipedreamConnect:()=>ko,pipedreamConnectConnection:()=>uo,pipedreamFinalize:()=>Io,pipedreamFinalizeConnection:()=>po,platformConfig:()=>I,pollConnectionOAuth2DeviceAuthorization:()=>Yf,pollProjectProviderOAuth:()=>Hi,previewGatewayRoute:()=>Ec,previewMfaRequired:()=>oh,probeEffectivePermission:()=>cl,probeEffectivePermissions:()=>ll,probePreviewPort:()=>fk,projectCompacting:()=>jk,projectSessionConnection:()=>xk,projectSessionStartSeed:()=>uy,projectWorking:()=>Tk,provisionProject:()=>oi,provisionProjectStream:()=>jf,provisionProjectWithToken:()=>Uf,proxyLocalhostUrl:()=>fu,proxyUrlToInternal:()=>kb,purchaseCredits:()=>cc,putConnectionOAuth2Application:()=>Hf,reactivateSandbox:()=>cP,reactivateSubscription:()=>sc,readBlob:()=>Ue,readFile:()=>Oe,readProjectFile:()=>Ko,rebuildProjectSnapshot:()=>qo,reconcileConnection:()=>so,reconcileMemberConnection:()=>io,reconcileServices:()=>sf,recordPlatformLogout:()=>BP,refreshReferralCode:()=>Fy,refreshSession:()=>We,registerAppArtifact:()=>un,registerConnectionOAuth2Client:()=>Jf,registerService:()=>of,rejectProjectAccessRequest:()=>ki,relativizePath:()=>qx,reloadProjectSessionConfig:()=>Ta,reloadProjectSessionConfigStream:()=>Ia,removeAccountAuditWebhook:()=>Ll,removeAccountBrandingAsset:()=>Ls,removeAccountMember:()=>Xs,removeGroupMember:()=>Zc,removeKortixPty:()=>vs,removeMarketplaceSource:()=>Xl,renameFile:()=>fe,renameSandbox:()=>nP,reopenChangeRequest:()=>ia,reopenMilestone:()=>Hm,replaceColumns:()=>Pm,replaceFields:()=>wm,replaceTemplates:()=>vm,requestAccountDeletion:()=>Mh,requestChangesOnChangeRequest:()=>oa,requestProjectAccess:()=>Ff,requestProjectConnector:()=>Bl,requestProjectSecret:()=>Gl,resendAccountInvite:()=>Ws,resendPendingProjectInvite:()=>Ti,resetAccountBranding:()=>Gs,resetClient:()=>cf,resetGatewayRoutingPolicy:()=>Ic,resetPassword:()=>bn,resetPublicClient:()=>pf,resetSandboxUpdateStatus:()=>CP,resolveApproval:()=>Fi,resolvedPlan:()=>ky,restartProjectSession:()=>pt,restartSandbox:()=>iP,restoreBackup:()=>hP,retrySessionPrompt:()=>Sa,revealCredential:()=>Xm,revokeAccountSession:()=>bh,revokeAccountToken:()=>Il,revokeAssignment:()=>bl,revokeConnection:()=>ao,revokeGatewayKey:()=>Kc,revokePendingProjectInvite:()=>Ri,revokeProjectAccess:()=>vi,revokeProjectCliToken:()=>$l,revokeSandboxProjectAccess:()=>pP,revokeSandboxShare:()=>Al,revokeScimToken:()=>sh,revokeSessionPublicShare:()=>ma,rewriteLocalhostUrl:()=>he,rollbackApp:()=>du,rotateOAuthClientSecret:()=>ml,runGatewayPlayground:()=>Hc,saveGitHubInstallation:()=>hi,scheduleDowngrade:()=>ic,searchConnectorTools:()=>Yi,searchProjectFiles:()=>No,sendMagicLink:()=>mn,sendReferralEmails:()=>Ny,serverCompactionRevalidateAtMs:()=>Mk,serviceAction:()=>rf,sessionStartKey:()=>gy,setActiveInstanceCookie:()=>H_,setAdminBypass:()=>Qg,setAdminProviderDistribution:()=>Lh,setAdminProviderFallback:()=>Kh,setAgentScope:()=>Ka,setBootstrapAuthToken:()=>Dg,setCachedAuthToken:()=>qg,setConnectionPolicies:()=>ty,setConnectorAuthorizationStrategy:()=>yo,setConnectorCredential:()=>To,setConnectorCredentialMode:()=>fo,setConnectorName:()=>Po,setConnectorPolicies:()=>xo,setConnectorSecretBinding:()=>oy,setConnectorSensitive:()=>ho,setDefaultConnection:()=>lo,setEnterpriseDemo:()=>Eh,setEnv:()=>_s,setGatewayBudget:()=>Lc,setGatewayRoutingPolicy:()=>Tc,setGitHubAppFromExisting:()=>ck,setGitHubAppPat:()=>lk,setImpersonationSession:()=>Gg,setMaintenanceConfig:()=>ZP,setMemberSuperAdmin:()=>th,setMfaRequired:()=>ah,setModelDefault:()=>Ba,setPersonalProjectSecret:()=>Ji,setProjectModelEnablement:()=>my,setProjectOnboardingComplete:()=>ui,setProjectOnboardingProfile:()=>Df,setProjectPolicies:()=>jo,setProjectSecretStrategy:()=>Bi,setProjectSessionModel:()=>$a,setProjectSessionScope:()=>ja,setProjectSessionSharing:()=>ua,setProjectTriggersActivation:()=>Ua,setupSSH:()=>xP,shellExitCode:()=>Su,shouldAttachImpersonation:()=>pp,shouldHideResponsePart:()=>Zx,shouldShowToolPart:()=>md,signInWithPassword:()=>gn,signInWithProvider:()=>yn,signOut:()=>Pn,signUp:()=>dn,sortSessions:()=>Vx,splitUserParts:()=>Ax,startApp:()=>uu,startConnectionOAuth2Authorization:()=>Xf,startConnectionOAuth2DeviceAuthorization:()=>Qf,startConnectorSetupLink:()=>WP,startGitHubAppManifest:()=>ak,startProjectProviderOAuth:()=>Ki,startProjectSession:()=>Re,startSessionWithToken:()=>QP,startTask:()=>am,stopApp:()=>pu,stopProjectSession:()=>dt,stopSandbox:()=>oP,stripAnsi:()=>Lx,stripInstancePrefix:()=>N_,stripTrailingSlashes:()=>ie,submitAccessRequest:()=>GP,submitDemoRequest:()=>tk,submitOAuthConsent:()=>KP,submitReviewItem:()=>kl,submitSecretSetupLink:()=>JP,subscribeToImpersonation:()=>Bg,supabaseClient:()=>Zg,syncConnectors:()=>mo,syncSubscription:()=>Ay,systemReload:()=>gf,toDaemonPath:()=>Ce,toInstanceAwarePath:()=>W_,toInternalUrl:()=>Zp,toSandboxAbsolutePath:()=>nt,toWorkspaceRelative:()=>Ts,toolInfo:()=>Tn,toolViewModel:()=>Ed,triggerSandboxUpdate:()=>vP,triggersRequest:()=>Pp,turnHasSteps:()=>Hx,unassignTicket:()=>hm,unwrapError:()=>te,updateAccountAuditWebhook:()=>Fl,updateAccountBranding:()=>Us,updateAccountMemberRole:()=>Qs,updateAccountName:()=>Ds,updateAgentConfig:()=>by,updateApp:()=>eu,updateAppAccess:()=>ru,updateAuditWebhook:()=>Ah,updateChannelBinding:()=>Dy,updateConnectionCredential:()=>oo,updateEmailPolicy:()=>Ac,updateExperimentalFeature:()=>ci,updateFeatureFlag:()=>ai,updateGroup:()=>Jc,updateKortixPty:()=>Ss,updateMilestone:()=>Nm,updateOAuthClient:()=>gl,updatePassword:()=>xn,updatePatPolicy:()=>_h,updatePolicy:()=>Xy,updateProject:()=>Xt,updateProjectAccess:()=>Si,updateProjectAgent:()=>Tm,updateProjectDefaultAgent:()=>Wa,updateProjectGroupGrant:()=>ji,updateProjectSandboxProvider:()=>li,updateProjectSession:()=>Ca,updateProjectTrigger:()=>Da,updateRole:()=>il,updateRolePermissions:()=>ol,updateSandboxTemplate:()=>Uo,updateSessionPolicy:()=>yh,updateTask:()=>om,updateTemplateWarmPool:()=>qf,updateTicket:()=>mm,updateTicketStatus:()=>fm,uploadAccountBrandingAsset:()=>Fs,uploadAppArtifactArchive:()=>iu,uploadConnectorAttachment:()=>to,uploadFile:()=>Fe,uploadSlackChannelFile:()=>Pc,upsertCredential:()=>Jm,upsertProjectGitCredential:()=>zi,upsertProjectSecret:()=>Gi,upsertSsoProvider:()=>lh,validateProjectManifest:()=>ni,validateReferralCode:()=>Ly,validateToken:()=>Zs,verifyGatewayProvider:()=>Oy,verifyOtp:()=>fn,wakeEscalationAttemptSummary:()=>Kk,wakeEscalationNote:()=>Bk,wakeProgressFingerprint:()=>Uk,workingExpiryAtMs:()=>Ik,writeFile:()=>Le});var mg={backendUrl:"",getToken:async()=>null},Fn=null,St=null;function fg(t){St=t}function yg(){return St}function vt(t,e){e?.global!==!1&&(Fn=t)}function I(){return St?.()??Fn??mg}function Ct(){return Fn!==null||St?.()!==void 0}var Nu=({onRequest:t,onSseError:e,onSseEvent:n,responseTransformer:r,responseValidator:s,sseDefaultRetryDelay:o,sseMaxRetryAttempts:u,sseMaxRetryDelay:p,sseSleepFn:d,url:f,...m})=>{let h,x=d??(E=>new Promise(j=>setTimeout(j,E)));return{stream:async function*(){let E=o??3e3,j=0,l=m.signal??new AbortController().signal;for(;!l.aborted;){j++;let b=m.headers instanceof Headers?m.headers:new Headers(m.headers);h!==void 0&&b.set("Last-Event-ID",h);try{let c={redirect:"follow",...m,body:m.serializedBody,headers:b,signal:l},S=new Request(f,c);t&&(S=await t(f,c));let R=await(m.fetch??globalThis.fetch)(S);if(!R.ok)throw new Error(`SSE failed: ${R.status} ${R.statusText}`);if(!R.body)throw new Error("No body in SSE response");let $=R.body.pipeThrough(new TextDecoderStream).getReader(),D="",q=()=>{try{$.cancel()}catch{}};l.addEventListener("abort",q);try{for(;;){let{done:X,value:W}=await $.read();if(X)break;D+=W,D=D.replace(/\r\n/g,`
|
|
2
2
|
`).replace(/\r/g,`
|
|
3
|
-
`);let
|
|
3
|
+
`);let y=D.split(`
|
|
4
4
|
|
|
5
|
-
`);
|
|
6
|
-
`),
|
|
7
|
-
`);try{U=JSON.parse(L),J=!0}catch{U=L}}J&&(s&&await s(U),r&&(U=await r(U))),n?.({data:U,event:N,id:b,retry:E}),M.length&&(yield U)}}}finally{y.removeEventListener("abort",W),$.releaseLock()}break}catch(T){if(e?.(T),u!==void 0&&l>=u)break;let R=Math.min(E*2**(l-1),p??3e4);await x(R)}}}()}};var qd=t=>{switch(t){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},Md=t=>{switch(t){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},Od=t=>{switch(t){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},kt=({allowReserved:t,explode:e,name:n,style:r,value:s})=>{if(!e){let p=(t?s:s.map(d=>encodeURIComponent(d))).join(Md(r));switch(r){case"label":return`.${p}`;case"matrix":return`;${n}=${p}`;case"simple":return p;default:return`${n}=${p}`}}let o=qd(r),u=s.map(p=>r==="label"||r==="simple"?t?p:encodeURIComponent(p):Te({allowReserved:t,name:n,value:p})).join(o);return r==="label"||r==="matrix"?o+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)}`},wt=({allowReserved:t,explode:e,name:n,style:r,value:s,valueOnly:o})=>{if(s instanceof Date)return o?s.toISOString():`${n}=${s.toISOString()}`;if(r!=="deepObject"&&!e){let d=[];Object.entries(s).forEach(([m,b])=>{d=[...d,m,t?b:encodeURIComponent(b)]});let f=d.join(",");switch(r){case"form":return`${n}=${f}`;case"label":return`.${f}`;case"matrix":return`;${n}=${f}`;default:return f}}let u=Od(r),p=Object.entries(s).map(([d,f])=>Te({allowReserved:t,name:r==="deepObject"?`${n}[${d}]`:d,value:f})).join(u);return r==="label"||r==="matrix"?u+p:p};var Ud=/\{[^{}]+\}/g,Fd=({path:t,url:e})=>{let n=e,r=e.match(Ud);if(r)for(let s of r){let o=!1,u=s.substring(1,s.length-1),p="simple";u.endsWith("*")&&(o=!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 d=t[u];if(d==null)continue;if(Array.isArray(d)){n=n.replace(s,kt({explode:o,name:u,style:p,value:d}));continue}if(typeof d=="object"){n=n.replace(s,wt({explode:o,name:u,style:p,value:d,valueOnly:!0}));continue}if(p==="matrix"){n=n.replace(s,`;${Te({name:u,value:d})}`);continue}let f=encodeURIComponent(p==="label"?`.${d}`:d);n=n.replace(s,f)}return n},du=({baseUrl:t,path:e,query:n,querySerializer:r,url:s})=>{let o=s.startsWith("/")?s:`/${s}`,u=(t??"")+o;e&&(u=Fd({path:e,url:u}));let p=n?r(n):"";return p.startsWith("?")&&(p=p.substring(1)),p&&(u+=`?${p}`),u};function wn(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 gu=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 Sn={bodySerializer:t=>JSON.stringify(t,(e,n)=>typeof n=="bigint"?n.toString():n)};var mu=({parameters:t={},...e}={})=>r=>{let s=[];if(r&&typeof r=="object")for(let o in r){let u=r[o];if(u==null)continue;let p=t[o]||e;if(Array.isArray(u)){let d=kt({allowReserved:p.allowReserved,explode:!0,name:o,style:"form",value:u,...p.array});d&&s.push(d)}else if(typeof u=="object"){let d=wt({allowReserved:p.allowReserved,explode:!0,name:o,style:"deepObject",value:u,...p.object});d&&s.push(d)}else{let d=Te({allowReserved:p.allowReserved,name:o,value:u});d&&s.push(d)}}return s.join("&")},fu=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"}},Ld=(t,e)=>e?!!(t.headers.has(e)||t.query?.[e]||t.headers.get("Cookie")?.includes(`${e}=`)):!1,yu=async({security:t,...e})=>{for(let n of t){if(Ld(e,n.name))continue;let r=await gu(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}}},vn=t=>du({baseUrl:t.baseUrl,path:t.path,query:t.query,querySerializer:typeof t.querySerializer=="function"?t.querySerializer:mu(t.querySerializer),url:t.url}),Cn=(t,e)=>{let n={...t,...e};return n.baseUrl?.endsWith("/")&&(n.baseUrl=n.baseUrl.substring(0,n.baseUrl.length-1)),n.headers=St(t.headers,e.headers),n},Gd=t=>{let e=[];return t.forEach((n,r)=>{e.push([r,n])}),e},St=(...t)=>{let e=new Headers;for(let n of t){if(!n)continue;let r=n instanceof Headers?Gd(n):Object.entries(n);for(let[s,o]of r)if(o===null)e.delete(s);else if(Array.isArray(o))for(let u of o)e.append(s,u);else o!==void 0&&e.set(s,typeof o=="object"?JSON.stringify(o):o)}return e},He=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}},hu=()=>({error:new He,request:new He,response:new He}),Bd=mu({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),Nd={"Content-Type":"application/json"},We=(t={})=>({...Sn,headers:Nd,parseAs:"auto",querySerializer:Bd,...t});var ze=(t={})=>{let e=Cn(We(),t),n=()=>({...e}),r=f=>(e=Cn(e,f),n()),s=hu(),o=async f=>{let m={...e,...f,fetch:f.fetch??e.fetch??globalThis.fetch,headers:St(e.headers,f.headers),serializedBody:void 0};m.security&&await yu({...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 b=vn(m);return{opts:m,url:b}},u=async f=>{let{opts:m,url:b}=await o(f),x={redirect:"follow",...m,body:wn(m)},C=new Request(b,x);for(let P of s.request.fns)P&&(C=await P(C,m));let I=m.fetch,E;try{E=await I(C)}catch(P){let j=P;for(let $ of s.error.fns)$&&(j=await $(P,void 0,C,m));if(j=j||{},m.throwOnError)throw j;return m.responseStyle==="data"?void 0:{error:j,request:C,response:void 0}}for(let P of s.response.fns)P&&(E=await P(E,C,m));let l={request:C,response:E};if(E.ok){let P=(m.parseAs==="auto"?fu(E.headers.get("Content-Type")):m.parseAs)??"json";if(E.status===204||E.headers.get("Content-Length")==="0"){let $;switch(P){case"arrayBuffer":case"blob":case"text":$=await E[P]();break;case"formData":$=new FormData;break;case"stream":$=E.body;break;default:$={};break}return m.responseStyle==="data"?$:{data:$,...l}}let j;switch(P){case"arrayBuffer":case"blob":case"formData":case"text":j=await E[P]();break;case"json":{let $=await E.text();j=$?JSON.parse($):{};break}case"stream":return m.responseStyle==="data"?E.body:{data:E.body,...l}}return P==="json"&&(m.responseValidator&&await m.responseValidator(j),m.responseTransformer&&(j=await m.responseTransformer(j))),m.responseStyle==="data"?j:{data:j,...l}}let y=await E.text(),c;try{c=JSON.parse(y)}catch{}let T=c??y,R=T;for(let P of s.error.fns)P&&(R=await P(T,E,C,m));if(R=R||{},m.throwOnError)throw R;return m.responseStyle==="data"?void 0:{error:R,...l}},p=f=>m=>u({...m,method:f}),d=f=>async m=>{let{opts:b,url:x}=await o(m);return pu({...b,body:b.body,headers:b.headers,method:f,onRequest:async(C,I)=>{let E=new Request(C,I);for(let l of s.request.fns)l&&(E=await l(E,b));return E},serializedBody:wn(b),url:x})};return{buildUrl:vn,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:d("CONNECT"),delete:d("DELETE"),get:d("GET"),head:d("HEAD"),options:d("OPTIONS"),patch:d("PATCH"),post:d("POST"),put:d("PUT"),trace:d("TRACE")},trace:p("TRACE")}};var Kd={$body_:"body",$headers_:"headers",$path_:"path",$query_:"query"},Hd=Object.entries(Kd),bu=(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&&bu(n.args,e);return e},Wd=t=>{for(let[e,n]of Object.entries(t))n&&typeof n=="object"&&!Object.keys(n).length&&delete t[e]},g=(t,e)=>{let n={body:{},headers:{},path:{},query:{}},r=bu(e),s;for(let[o,u]of t.entries())if(e[o]&&(s=e[o]),!!s)if("in"in s)if(s.key){let p=r.get(s.key),d=p.map||s.key;p.in&&(n[p.in][d]=u)}else n.body=u;else for(let[p,d]of Object.entries(u??{})){let f=r.get(p);if(f)if(f.in){let m=f.map||p;n[f.in][m]=d}else n[f.map]=d;else{let m=Hd.find(([b])=>p.startsWith(b));if(m){let[b,x]=m;n[x][p.slice(b.length)]=d}else if("allowExtra"in s&&s.allowExtra){for(let[b,x]of Object.entries(s.allowExtra))if(x){n[b][p]=d;break}}}}return Wd(n),n};var xu=ze(We({baseUrl:"http://localhost:4096"}));var _=class{client;constructor(e){this.client=e?.client??xu}},Rn=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)}},An=class extends _{remove(e,n){let r=g([e],[{args:[{in:"path",key:"providerID"}]}]);return(n?.client??this.client).delete({url:"/auth/{providerID}",...n,...r})}set(e,n){let r=g([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}})}},Tn=class extends _{log(e,n){let r=g([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=g([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=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/skill",...n,...r})}},In=class extends _{moveSession(e,n){let r=g([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}})}},En=class extends _{get(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/capabilities",...n,...r})}},jn=class extends _{get(e,n){let r=g([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=g([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=g([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}})}},$n=class extends _{list(e,n){let r=g([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=g([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})}},Dn=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/resource",...n,...r})}},qn=class extends _{generateName(e,n){let r=g([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}})}},Mn=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace/adapter",...n,...r})}},On=class extends _{list(e,n){let r=g([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=g([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=g([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=g([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=g([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=g([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 Mn({client:this.client})}},Un=class extends _{_controlPlane;get controlPlane(){return this._controlPlane??=new In({client:this.client})}_capabilities;get capabilities(){return this._capabilities??=new En({client:this.client})}_console;get console(){return this._console??=new jn({client:this.client})}_session;get session(){return this._session??=new $n({client:this.client})}_resource;get resource(){return this._resource??=new Dn({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new qn({client:this.client})}_workspace;get workspace(){return this._workspace??=new On({client:this.client})}},Fn=class extends _{get(e){return(e?.client??this.client).get({url:"/global/config",...e})}update(e,n){let r=g([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}})}},Ln=class extends _{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=g([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 Fn({client:this.client})}},Gn=class extends _{subscribe(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).sse.get({url:"/event",...n,...r})}},Bn=class extends _{get(e,n){let r=g([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=g([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=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/config/providers",...n,...r})}},Nn=class extends _{list(e,n){let r=g([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=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/tool/ids",...n,...r})}},Kn=class extends _{remove(e,n){let r=g([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=g([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=g([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=g([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}})}},Hn=class extends _{text(e,n){let r=g([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=g([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=g([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})}},Wn=class extends _{list(e,n){let r=g([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=g([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=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/file/status",...n,...r})}},zn=class extends _{dispose(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/instance/dispose",...n,...r})}},Vn=class extends _{get(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/path",...n,...r})}},Jn=class extends _{raw(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs/diff/raw",...n,...r})}},Xn=class extends _{get(e,n){let r=g([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=g([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=g([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=g([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 Jn({client:this.client})}},Yn=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/command",...n,...r})}},Qn=class extends _{status(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/lsp",...n,...r})}},Zn=class extends _{status(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/formatter",...n,...r})}},er=class extends _{remove(e,n){let r=g([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=g([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=g([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=g([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})}},tr=class extends _{status(e,n){let r=g([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=g([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=g([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=g([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 er({client:this.client})}},nr=class extends _{list(e,n){let r=g([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=g([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=g([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=g([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=g([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})}},rr=class extends _{shells(e,n){let r=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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})}},sr=class extends _{list(e,n){let r=g([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=g([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=g([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})}},ir=class extends _{list(e,n){let r=g([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=g([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=g([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}})}},or=class extends _{authorize(e,n){let r=g([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=g([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}})}},ar=class extends _{list(e,n){let r=g([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=g([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 or({client:this.client})}},cr=class extends _{list(e,n){let r=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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})}},lr=class extends _{delete(e,n){let r=g([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=g([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}})}},ur=class extends _{list(e,n){let r=g([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}})}},pr=class extends _{start(e,n){let r=g([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=g([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=g([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 ur({client:this.client})}},dr=class extends _{next(e,n){let r=g([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=g([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}})}},gr=class extends _{appendPrompt(e,n){let r=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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 dr({client:this.client})}},mr=class extends _{get(e){return(e?.client??this.client).get({url:"/api/health",...e})}},fr=class extends _{get(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/location",...n,...r})}},yr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/agent",...n,...r})}},hr=class extends _{stage(e,n){let r=g([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=g([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=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/revert/commit",...n,...r})}},br=class extends _{list(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/permission",...n,...r})}create(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"id"},{in:"body",key:"action"},{in:"body",key:"resources"},{in:"body",key:"save"},{in:"body",key:"metadata"},{in:"body",key:"source"},{in:"body",key:"agent"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/permission",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}get(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/permission/{requestID}",...n,...r})}reply(e,n){let r=g([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}})}},xr=class extends _{list(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/question",...n,...r})}reply(e,n){let r=g([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=g([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})}},_r=class extends _{list(e,n){let r=g([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=g([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}})}active(e){return(e?.client??this.client).get({url:"/api/session/active",...e})}get(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}",...n,...r})}switchAgent(e,n){let r=g([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=g([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=g([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=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/compact",...n,...r})}wait(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/wait",...n,...r})}context(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/context",...n,...r})}history(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"limit"},{in:"query",key:"after"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/history",...n,...r})}events(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"after"}]}]);return(n?.client??this.client).sse.get({url:"/api/session/{sessionID}/event",...n,...r})}interrupt(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/interrupt",...n,...r})}message(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/message/{messageID}",...n,...r})}messages(e,n){let r=g([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 hr({client:this.client})}_permission;get permission(){return this._permission??=new br({client:this.client})}_question;get question(){return this._question??=new xr({client:this.client})}},Pr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/model",...n,...r})}},kr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/provider",...n,...r})}get(e,n){let r=g([e],[{args:[{in:"path",key:"providerID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/provider/{providerID}",...n,...r})}},wr=class extends _{key(e,n){let r=g([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=g([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}})}},Sr=class extends _{cancel(e,n){let r=g([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=g([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=g([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}})}},vr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/integration",...n,...r})}get(e,n){let r=g([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 wr({client:this.client})}_attempt;get attempt(){return this._attempt??=new Sr({client:this.client})}},Cr=class extends _{remove(e,n){let r=g([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=g([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}})}},Rr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/permission/request",...n,...r})}},Ar=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"projectID"}]}]);return(n?.client??this.client).get({url:"/api/permission/saved",...n,...r})}remove(e,n){let r=g([e],[{args:[{in:"path",key:"id"}]}]);return(n?.client??this.client).delete({url:"/api/permission/saved/{id}",...n,...r})}},Tr=class extends _{_request;get request(){return this._request??=new Rr({client:this.client})}_saved;get saved(){return this._saved??=new Ar({client:this.client})}},Ir=class extends _{read(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/fs/read/*",...n,...r})}list(e,n){let r=g([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=g([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})}},Er=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/command",...n,...r})}},jr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/skill",...n,...r})}},$r=class extends _{subscribe(e){return(e?.client??this.client).sse.get({url:"/api/event",...e})}},Dr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/pty",...n,...r})}create(e,n){let r=g([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=g([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=g([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=g([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=g([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=g([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})}},qr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/question/request",...n,...r})}},Mr=class extends _{_request;get request(){return this._request??=new qr({client:this.client})}},Or=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/reference",...n,...r})}},Ur=class extends _{remove(e,n){let r=g([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=g([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=g([e],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).post({url:"/experimental/project/{projectID}/copy/refresh",...n,...r})}},Fr=class extends _{_health;get health(){return this._health??=new mr({client:this.client})}_location;get location(){return this._location??=new fr({client:this.client})}_agent;get agent(){return this._agent??=new yr({client:this.client})}_session;get session(){return this._session??=new _r({client:this.client})}_model;get model(){return this._model??=new Pr({client:this.client})}_provider;get provider(){return this._provider??=new kr({client:this.client})}_integration;get integration(){return this._integration??=new vr({client:this.client})}_credential;get credential(){return this._credential??=new Cr({client:this.client})}_permission;get permission(){return this._permission??=new Tr({client:this.client})}_fs;get fs(){return this._fs??=new Ir({client:this.client})}_command;get command(){return this._command??=new Er({client:this.client})}_skill;get skill(){return this._skill??=new jr({client:this.client})}_event;get event(){return this._event??=new $r({client:this.client})}_pty;get pty(){return this._pty??=new Dr({client:this.client})}_question;get question(){return this._question??=new Mr({client:this.client})}_reference;get reference(){return this._reference??=new Or({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new Ur({client:this.client})}},vt=class t extends _{static __registry=new Rn;constructor(e){super(e),t.__registry.set(this,e?.key)}_auth;get auth(){return this._auth??=new An({client:this.client})}_app;get app(){return this._app??=new Tn({client:this.client})}_experimental;get experimental(){return this._experimental??=new Un({client:this.client})}_global;get global(){return this._global??=new Ln({client:this.client})}_event;get event(){return this._event??=new Gn({client:this.client})}_config;get config(){return this._config??=new Bn({client:this.client})}_tool;get tool(){return this._tool??=new Nn({client:this.client})}_worktree;get worktree(){return this._worktree??=new Kn({client:this.client})}_find;get find(){return this._find??=new Hn({client:this.client})}_file;get file(){return this._file??=new Wn({client:this.client})}_instance;get instance(){return this._instance??=new zn({client:this.client})}_path;get path(){return this._path??=new Vn({client:this.client})}_vcs;get vcs(){return this._vcs??=new Xn({client:this.client})}_command;get command(){return this._command??=new Yn({client:this.client})}_lsp;get lsp(){return this._lsp??=new Qn({client:this.client})}_formatter;get formatter(){return this._formatter??=new Zn({client:this.client})}_mcp;get mcp(){return this._mcp??=new tr({client:this.client})}_project;get project(){return this._project??=new nr({client:this.client})}_pty;get pty(){return this._pty??=new rr({client:this.client})}_question;get question(){return this._question??=new sr({client:this.client})}_permission;get permission(){return this._permission??=new ir({client:this.client})}_provider;get provider(){return this._provider??=new ar({client:this.client})}_session;get session(){return this._session??=new cr({client:this.client})}_part;get part(){return this._part??=new lr({client:this.client})}_sync;get sync(){return this._sync??=new pr({client:this.client})}_tui;get tui(){return this._tui??=new gr({client:this.client})}_v2;get v2(){return this._v2??=new Fr({client:this.client})}};function Pu(t,e,n,r){if(!r?.throwOnError||t instanceof Error)return t;if(typeof t=="object"&&t!==null&&Object.keys(t).length>0){let o=t,u=typeof o.data?.message=="string"&&o.data.message||typeof o.message=="string"&&o.message||typeof o.name=="string"&&o.name||_u(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 ${_u(n,e)}: ${s}`,{cause:{body:t,status:e?.status}})}function _u(t,e){let n=t?.method??"?",r=t?.url??"?",s=e?.status,o=e?.statusText;return`${n} ${r}${s?" \u2192 "+s:""}${o?" "+o:""}`}function zd(t,e,n){if(t)return e&&(t===e||n&&t===n(e))?e:t}function Vd(t,e){if(t.method!=="GET"&&t.method!=="HEAD")return t;let n=new URL(t.url),r=!1;for(let[o,u]of[["x-opencode-directory","directory"],["x-opencode-workspace","workspace"]]){let p=zd(t.headers.get(o),u==="directory"?e.directory:e.workspace,u==="directory"?encodeURIComponent:void 0);if(p){for(let d of n.pathname.startsWith("/api/")?[u,`location[${u}]`]:[u])n.searchParams.has(d)||n.searchParams.set(d,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 Lr(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=ze(t);return e.interceptors.request.use(n=>Vd(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(Pu),new vt({client:e})}var Jd=new Set(["api","cli","mobile","web"]);function Ct(t){let e=t?.trim().toLowerCase();return e&&Jd.has(e)?e:null}function Xd(t){return new Promise(e=>setTimeout(e,t))}async function ku(t,e,n){let r=Math.max(1,e?.attempts??1),s=e?.baseDelayMs??0,o=e?.invalidateBetweenAttempts??!1,u=null;for(let p=0;p<r;p++)if(p>0&&(o&&n?.(),s>0&&await Xd(s)),u=await t(),u)return u;return u}var Yd=12e4;function Qd(t){return(t instanceof Request?t.url:String(t)).includes("/global/event")}function Gr(t,e,n=Yd){let r=t instanceof Request?t.signal:e?.signal;if(Qd(t))return r??void 0;let s=AbortSignal.timeout(n);return r?typeof AbortSignal.any=="function"?AbortSignal.any([r,s]):r:s}function Br(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 o=Ct(r);return o&&!s.has("X-Kortix-Client")&&s.set("X-Kortix-Client",o),s}function wu(){return new Response(JSON.stringify({error:"Not authenticated"}),{status:401,headers:{"Content-Type":"application/json"}})}async function Rt(){return D().getToken()}async function te(t){return ku(()=>D().getToken(),t,Ve)}function Ve(){}function Zd(t){}function eg(t){}async function Ie(){return Rt()}async function Nr(t){return te(t)}function Su(t,e,n,r){let s=D().fetch??fetch;if(t instanceof Request){let o=new Request(t,{headers:n,...r?{signal:r}:{}});return s(o)}return s(t,{...e,headers:n,...r?{signal:r}:{}})}async function q(t,e,n){let{retryOnAuthError:r=!0,timeoutMs:s}=n??{},o=await Nr();if(!o)return wu();let u=D().clientSource,p=Br(t,e,o,u),d=s===void 0?Gr(t,e):Gr(t,e,s),f=await Su(t,e,p,d);if(f.status===401&&r&&o){Ve();let m=await Nr({attempts:2,baseDelayMs:200});if(m&&m!==o){let b=Br(t,e,m,u);return Su(t,e,b,d)}}return f}var Ee={url:null,sandboxId:null,dbSandboxId:null,version:0},tg=new Set;function vu(t,e=null,n=null){if(!(Ee.url===t&&Ee.sandboxId===e&&Ee.dbSandboxId===n)){Ee={url:t,sandboxId:e,dbSandboxId:n,version:Ee.version+1};for(let r of tg)r()}}function Cu(){return Ee.url}function ng(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return t.slice(0,e)}function Je(){return ng(D().backendUrl||"http://localhost:8008/v1")}function Ru(){let t=D().sandboxId;return t?`${Je()}/p/${t}/8000`:""}function rg(t){return`${Je()}/p/${t}/8000`}function At(t){return rg(t)}var v=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,...o}=n;Object.assign(this,o),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)}},be=class extends v{constructor(e="Not authenticated"){super(e,{code:"NO_SESSION"}),this.name="AuthError"}},pe=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)}},xe=class t extends Error{status;detail;constructor(e=431,n,r){let s="Request headers are too large",o="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||o},Object.setPrototypeOf(this,t.prototype)}},Tt="feature_disabled";function Au(t){if(!(t instanceof v)||t.status!==403||t.code!==Tt)return null;let e=t.details??t.data;return e&&typeof e=="object"?e:{}}function Kr(t){let e=Au(t);return e?(typeof e.feature=="string"&&!t.feature&&(t.feature=e.feature),!0):!1}function Hr(t){let e=Au(t);if(!e)return null;let n=t.feature;return typeof n=="string"?n:typeof e.feature=="string"?e.feature:null}function _e(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 pe(e,{message:r?.message||t.message||"Billing error",...r})}function Wr(t){return t instanceof pe}function zr(t){if(!(t instanceof pe))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."}}var Tu="X-Kortix-Impersonate",Jr="kortix.impersonation",Pe=null,It=!1,Vr=new Set;function Xr(){try{return typeof sessionStorage>"u"?null:sessionStorage}catch{return null}}function Iu(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 sg(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 Eu(){for(let t of Vr)try{t()}catch{}}function ju(){return It||(It=!0,Pe=sg(Xr()?.getItem(Jr)??null)),Pe&&!Iu(Pe)?(Yr(),null):Pe}function ig(t){if(It=!0,!t){Yr();return}Pe=t;try{Xr()?.setItem(Jr,JSON.stringify(t))}catch{}Eu()}function Yr(){It=!0;let t=Pe!==null;Pe=null;try{Xr()?.removeItem(Jr)}catch{}t&&Eu()}function og(t){return Vr.add(t),()=>{Vr.delete(t)}}var ag=/(^|\/)admin\/(api|analytics)(\/|$)/;function $u(t){let e=t;if(/^https?:\/\//.test(t))try{e=new URL(t).pathname}catch{e=t}return!ag.test(e)}function Et(t){if(t!==void 0&&!$u(t))return{};let e=ju();return e?{[Tu]:e.grantId}:{}}var ne=()=>D().backendUrl||"",qu="feature_not_supported",Mu="model_not_servable",Ou="provision_in_flight",Uu="request_deadline",cg=/^Request exceeded the \d+s server processing deadline$/,lg=(t,e,n)=>t!==503?!1:(typeof e=="object"&&e!==null&&"code"in e?e.code:void 0)===Uu||cg.test(n),ug=t=>new Promise(e=>setTimeout(e,t)),pg=new Set([502,503,504]),dg=t=>pg.has(t),gg=t=>{let e=(t??"GET").toUpperCase();return e==="GET"||e==="HEAD"},mg=2,Du=t=>t?.name==="AbortError"||t?.name==="AbortSignal"||t instanceof Error&&t.message.includes("aborted"),jt=!1;function fg(t){jt=t}function yg(){return jt}async function ke(t,e={}){let{showErrors:n=!0,errorContext:r,timeout:s=3e4,...o}=e,u=new AbortController,p=null,d=!1,f=!1;try{p=setTimeout(()=>{!d&&!u.signal.aborted&&(d=!0,f=!0,u.abort())},s);let m=await te(),b=o.body instanceof FormData,x={};b||(x["Content-Type"]="application/json"),Object.assign(x,o.headers);let C=Ct(D().clientSource),I=Object.keys(x).some(R=>R.toLowerCase()==="x-kortix-client");if(C&&!I&&(x["X-Kortix-Client"]=C),jt&&(x["x-kortix-admin-bypass"]="1"),Object.assign(x,Et(t)),m)x.Authorization=`Bearer ${m}`;else return{error:new be,success:!1};let E=gg(o.method),l=E?mg+1:1,y;for(let R=0;R<l;R++){R>0&&await ug(250*2**(R-1));let P=R===0?u:new AbortController;R>0&&(p=setTimeout(()=>{f=!0,P.abort()},s));try{y=await(D().fetch??fetch)(t,{...o,headers:x,signal:P.signal,credentials:o.credentials??"omit"})}catch($){if(p&&(clearTimeout(p),p=null),Du($)||R===l-1)throw $;continue}if(p&&(clearTimeout(p),p=null),!(E&&dg(y.status)&&R<l-1))break;try{await y.arrayBuffer()}catch{}}if(!y.ok){let R=`HTTP ${y.status}: ${y.statusText}`,P=null;try{P=await y.json(),typeof P.message=="string"?R=P.message:P.error&&typeof P.error=="string"?R=P.error:typeof P.detail=="string"?R=P.detail:typeof P.detail?.message=="string"?R=P.detail.message:typeof P.reason=="string"&&(R=P.reason)}catch{}let j=lg(y.status,P,R),$=new v(R,{status:y.status,response:y,details:P||void 0,data:P,detail:P?.detail,code:j?Uu:P?.code||P?.error_code||P?.detail?.error_code||y.status.toString()});if(y.status===402&&($=_e($)),y.status===403&&P?.code==="account_mfa_required"&&typeof window<"u"&&typeof window.dispatchEvent=="function")try{window.dispatchEvent(new CustomEvent("kortix:mfa-required"))}catch{}y.status===431&&($=new xe(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 A=y.status===501&&P?.code===qu,W=y.status===409&&P?.code===Mu,K=y.status===409&&P?.code===Ou;return n&&!A&&!W&&!K&&!j&&D().onError?.($,r),{error:$,success:!1}}let c,T=y.headers.get("content-type");return T?.includes("application/json")?c=await y.json():T?.includes("text/")?c=await y.text():c=await y.blob(),{data:c,success:!0}}catch(m){p&&(clearTimeout(p),p=null);let b=Du(m);b&&(d=!0);let x;if(b){if(!f)return{error:new v("Request aborted",{name:"AbortError",code:"ABORTED"}),success:!1};let C=t.replace(ne(),"")||t;x=new v(`Request timed out after ${Math.round(s/1e3)}s: ${C}`,{code:"TIMEOUT",url:t,endpoint:C,timeout:s})}else m instanceof Error?(x=new v(m.message,{name:m.name||"ApiError",stack:m.stack}),n&&D().onError?.(x,r)):(x=new v(String(m)),n&&D().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 v(r.message||"Database error",{code:r.code,details:r});return D().onError?.(s,e),{error:s,success:!1}}return{data:n,success:!0}}catch(n){let r=n instanceof Error?new v(n.message,{name:n.name||"ApiError",stack:n.stack}):new v(String(n));return D().onError?.(r,e),{error:r,success:!1}}}};async function bg(t,e,n={}){let{timeout:r=3e4,fetch:s=fetch}=n,o=await te(),u={Accept:"text/event-stream","Content-Type":"application/json"},p=Ct(D().clientSource);p&&(u["X-Kortix-Client"]=p),jt&&(u["x-kortix-admin-bypass"]="1"),Object.assign(u,Et(t)),o&&(u.Authorization=`Bearer ${o}`);let d=new AbortController,f=setTimeout(()=>d.abort(),r);try{return await s(`${ne()}${t}`,{method:"POST",headers:u,body:JSON.stringify(e),signal:d.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||{},o={...r};return delete o["Content-Type"],ke(`${ne()}${t}`,{...s,method:"POST",body:e,headers:o})},uploadPut:(t,e,n)=>{let{headers:r,...s}=n||{},o={...r};return delete o["Content-Type"],ke(`${ne()}${t}`,{...s,method:"PUT",body:e,headers:o})},postStream:bg};var $t=new Map,Qr=new Map;function Zr(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return t.slice(0,e)}function Fu(t){return $t.get(Zr(t))??null}function Lu(t){return $t.has(Zr(t))}async function Dt(t){let e=Zr(t),n=$t.get(e);if(n!==void 0)return n;let r=Qr.get(e);if(r)return r;let s=(async()=>{try{let o=await i.get("/p/config",{showErrors:!1,errorContext:{operation:"load preview config",silent:!0}});if(!o.success)return null;let u=typeof o.data?.preview_url_template=="string"?o.data.preview_url_template:null;return $t.set(e,u),u}catch{return null}finally{Qr.delete(e)}})();return Qr.set(e,s),s}function Gu(t){let{apiBaseUrl:e}=t;return Lu(e)||Dt(e).catch(()=>{}),{sandboxId:t.sandboxId,backendPort:t.backendPort,apiBaseUrl:e,previewUrlTemplate:Fu(e)}}function re(){let t=Cu();return t||(D().billingEnabled??!1?"":Ru())}async function es(t,e){return(await t.json().catch(()=>({})))?.error||t.statusText||e}function ts(t){if(!t)throw new Error("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading");return t}async function ns(t){let e=ts(t),n=await q(`${e}/env`);if(!n.ok)throw new Error(await es(n,"Failed to load secrets"));return(await n.json()).secrets??{}}async function rs(t,e,n){let r=ts(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 es(s,"Failed to save secret"))}async function ss(t,e){let n=ts(t),r=await q(`${n}/env/${encodeURIComponent(e)}`,{method:"DELETE"});if(!r.ok)throw new Error(await es(r,"Failed to delete secret"))}var Bu={list:ns,set:rs,delete:ss};async function Nu(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}}),o=await s.json();if(!s.ok)throw new Error(o?.error||o?.message||`Request failed with ${s.status}`);return o}function we(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 qt(t,e){let n=await t.json().catch(()=>({}));return n?.error||n?.message||t.statusText||e}function Xe(t){if(!t)throw new Error("[kortix-pty] Server URL not ready \u2014 sandbox is still loading");return we(t)}async function is(t){let e=Xe(t),n=await q(`${e}/kortix/pty`);if(!n.ok)throw new Error(await qt(n,"Failed to list terminals"));return n.json()}async function os(t,e){let n=Xe(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 qt(r,"Failed to create terminal"));return r.json()}async function as(t,e,n){let r=Xe(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 qt(s,"Failed to update terminal"));return s.json()}async function cs(t,e){let n=Xe(t),r=await q(`${n}/kortix/pty/${encodeURIComponent(e)}`,{method:"DELETE"});if(!r.ok)throw new Error(await qt(r,"Failed to remove terminal"))}async function ls(t,e,n){let r=Xe(e),o=`${(()=>{try{let f=new URL(r);return f.protocol==="https:"?f.protocol="wss:":f.protocol==="http:"&&(f.protocol="ws:"),typeof window<"u"&&window.location.protocol==="https:"&&f.protocol==="ws:"&&(f.protocol="wss:"),we(f.toString())}catch{return r.replace("https://","wss://").replace("http://","ws://")}})()}/kortix/pty/${encodeURIComponent(t)}/connect`,u=new URLSearchParams,p=await Ie();p&&u.set("token",p),n?.wake&&u.set("wake","1");let d=u.toString();return d?`${o}${o.includes("?")?"&":"?"}${d}`:o}var Ku={list:is,create:os,update:as,remove:cs,webSocketUrl:ls};async function w(t,e,n,r){let s=t;for(;s.endsWith("/");)s=s.slice(0,-1);let o=await q(`${s}${e}`,{...n,headers:{"Content-Type":"application/json",...n?.headers}},r),u=await o.text(),p={};try{p=u?JSON.parse(u):{}}catch{p={}}if(!o.ok)throw new Error(p?.error||p?.message||p?.details||u.slice(0,200)||`Request failed with ${o.status}`);return p}async function xg(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 w(t,`/kortix/tasks${r}`)}async function _g(t,e){return w(t,`/kortix/tasks/${encodeURIComponent(e)}`)}async function Pg(t,e){return w(t,`/kortix/tasks/${encodeURIComponent(e)}/events`)}async function kg(t,e){return w(t,`/kortix/tasks/${encodeURIComponent(e)}/status`)}async function wg(t,e){return w(t,"/kortix/tasks",{method:"POST",body:JSON.stringify(e)})}async function Sg(t,e,n){return w(t,`/kortix/tasks/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function vg(t,e){return w(t,`/kortix/tasks/${encodeURIComponent(e)}/start`,{method:"POST"})}async function Cg(t,e){return w(t,`/kortix/tasks/${encodeURIComponent(e)}/approve`,{method:"POST"})}async function Rg(t,e){return w(t,`/kortix/tasks/${encodeURIComponent(e)}`,{method:"DELETE"})}async function Ag(t,e){let n=e?`?project_id=${encodeURIComponent(e)}`:"";return w(t,`/kortix/tickets${n}`)}async function Tg(t,e){return w(t,`/kortix/tickets/${encodeURIComponent(e)}`)}async function Ig(t,e){return w(t,`/kortix/tickets/${encodeURIComponent(e)}/events`)}async function Eg(t,e){return w(t,"/kortix/tickets",{method:"POST",body:JSON.stringify(e)})}async function jg(t,e,n){return w(t,`/kortix/tickets/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function $g(t,e,n){return w(t,`/kortix/tickets/${encodeURIComponent(e)}/status`,{method:"POST",body:JSON.stringify(n)})}async function Dg(t,e,n){return w(t,`/kortix/tickets/${encodeURIComponent(e)}/assign`,{method:"POST",body:JSON.stringify(n)})}async function qg(t,e,n){return w(t,`/kortix/tickets/${encodeURIComponent(e)}/unassign`,{method:"POST",body:JSON.stringify(n)})}async function Mg(t,e,n){return w(t,`/kortix/tickets/${encodeURIComponent(e)}/comments`,{method:"POST",body:JSON.stringify(n)})}async function Og(t,e){return w(t,`/kortix/tickets/${encodeURIComponent(e)}`,{method:"DELETE"})}async function Ug(t,e){return w(t,`/kortix/projects/${encodeURIComponent(e)}/columns`)}async function Fg(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/columns`,{method:"PUT",body:JSON.stringify({columns:n})})}async function Lg(t,e){return w(t,`/kortix/projects/${encodeURIComponent(e)}/fields`)}async function Gg(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/fields`,{method:"PUT",body:JSON.stringify({fields:n})})}async function Bg(t,e){return w(t,`/kortix/projects/${encodeURIComponent(e)}/templates`)}async function Ng(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/templates`,{method:"PUT",body:JSON.stringify({templates:n})})}async function Kg(t,e){return w(t,`/kortix/projects/${encodeURIComponent(e)}/pm-session`,{method:"POST"})}async function Hg(t,e){return w(t,`/kortix/projects/${encodeURIComponent(e)}/agents`)}async function Wg(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/agents`,{method:"POST",body:JSON.stringify(n)})}async function zg(t,e,n,r){return w(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Vg(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}`,{method:"DELETE"})}async function Jg(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}/persona`)}async function Xg(t,e,n=200){return w(t,`/kortix/projects/${encodeURIComponent(e)}/activity?limit=${n}`)}async function Yg(t){return w(t,"/kortix/projects")}async function Qg(t,e){return w(t,`/kortix/projects/${encodeURIComponent(e)}`)}async function Zg(t,e){return w(t,`/kortix/projects/by-session/${encodeURIComponent(e)}`)}async function em(t,e){return w(t,`/kortix/projects/${encodeURIComponent(e)}/sessions`)}async function tm(t,e){return w(t,`/kortix/projects/${encodeURIComponent(e)}`,{method:"DELETE"})}async function nm(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function rm(t,e,n="all"){return w(t,`/kortix/projects/${encodeURIComponent(e)}/milestones?status=${n}`)}async function sm(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`)}async function im(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/events`)}async function om(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/milestones`,{method:"POST",body:JSON.stringify(n)})}async function am(t,e,n,r){return w(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function cm(t,e,n,r){return w(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/close`,{method:"POST",body:JSON.stringify(r)})}async function lm(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/reopen`,{method:"POST"})}async function um(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`,{method:"DELETE"})}async function pm(t,e){return w(t,`/kortix/projects/${encodeURIComponent(e)}/credentials`)}async function dm(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}/events`)}async function gm(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/credentials`,{method:"POST",body:JSON.stringify(n)})}async function mm(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}`)}async function fm(t,e,n){return w(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}`,{method:"DELETE"})}var ym=1e4,hm={retryOnAuthError:!1};function je(t,e,n){return w(t,e,{signal:AbortSignal.timeout(ym),...n},hm)}async function bm(t,e=!1){return(await je(t,`/kortix/services${e?"?all=true":""}`)).services??[]}async function xm(t){return(await je(t,"/kortix/services/templates")).templates??[]}async function _m(t,e){return(await je(t,`/kortix/services/${encodeURIComponent(e)}/logs`)).logs??[]}async function Pm(t,e,n){let r=n==="delete",s=r?`/kortix/services/${encodeURIComponent(e)}`:`/kortix/services/${encodeURIComponent(e)}/${n}`;return je(t,s,{method:r?"DELETE":"POST"})}async function km(t,e){return je(t,`/kortix/services/reconcile${e?"?reload=true":""}`,{method:"POST"})}async function wm(t,e){return je(t,"/kortix/services/register",{method:"POST",body:JSON.stringify(e)})}var Mt=new Map,$e=class extends Error{constructor(e="[opencode-sdk] Server URL not ready \u2014 sandbox is still loading"){super(e),this.name="RuntimeNotReadyError"}};function de(){let t=re();if(!t)throw new $e;return se(t)}function se(t){if(!t)throw new Error("[opencode-sdk] getClientForUrl called without a url");let e=Mt.get(t);if(e)return e;if(!Pt())throw new Error("[opencode-sdk] No auth token provider configured \u2014 call configureKortix()/createKortix() before talking to a sandbox runtime.");let n=Lr({baseUrl:t,fetch:q});return Mt.set(t,n),n}function Sm(t){Mt.delete(t)}function vm(){Mt.clear()}var Ot=new Map;function Cm(t){if(!t)throw new Error("[opencode-sdk] getPublicClientForUrl called without a url");let e=Ot.get(t);if(e)return e;let n=Lr({baseUrl:t,fetch});return Ot.set(t,n),n}function Rm(t){Ot.delete(t)}function Am(){Ot.clear()}async function Tm(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 Im(t){let e=re();if(!e)throw new v("[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")??"",o=/^application\/([\w.+-]+\+)?json\b/i.test(s.trim());if(!r.ok)throw new v(`System reload failed (${r.status}): ${await Tm(r)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});if(!o)throw new v(`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(d){throw new v(`System reload returned malformed JSON from ${n}: ${d instanceof Error?d.message:String(d)}`,{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 Wu(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 v(n,{status:e?.response?.status??e?.status,response:e?.response,details:e})}return t.data}async function De(t){let e=await t.text().catch(()=>""),n=null;try{n=JSON.parse(e)}catch{}return n?.error||e||t.statusText||`HTTP ${t.status}`}function z(t){let e=(t??re()).trim();if(!e)throw new $e;return e}async function Ut(t,e){let n=await q(`${z(e)}${t}`);if(!n.ok)throw new v(await De(n),{status:n.status,response:n});return n.json()}var Ft=["/workspace","/tmp","/home","/opt"],Em=Ft.filter(t=>t!=="/workspace");function ps(t){return Ft.some(e=>t===e||t.startsWith(`${e}/`))}function Qe(t){return ps(t)?t:`/workspace/${t.replace(/^\/+/,"")}`}function ve(t){let e=t||"";if(e==="/workspace"||e==="/workspace/")return"";if(e.startsWith("/workspace/"))e=e.slice(11);else if(Em.some(n=>e===n||e.startsWith(`${n}/`)))return e;for(;e.startsWith("/");)e=e.slice(1);return e}var ds=ve;async function Ze(t,e){let n=z(e),r=ve(t)||".";return(await Ut(`/file?path=${encodeURIComponent(r)}`,n)).map(o=>({...o,path:o.absolute||`/workspace/${o.path}`}))}async function qe(t,e){let n=z(e),r=ve(t),s=await q(`${n}/file/content?path=${encodeURIComponent(r)}`);if(!s.ok)throw new v(await De(s),{status:s.status,response:s});return s.json()}async function jm(t,e,n){let r=z(n),s=ve(t),o=await q(`${r}/file/raw?path=${encodeURIComponent(s)}`);if(!o.ok)throw new v(await De(o),{status:o.status,response:o});if((o.headers.get("content-type")||"").includes("text/html"))throw new v("File could not be loaded (raw byte route unavailable)",{status:o.status,response:o,code:"INVALID_CONTENT_TYPE"});let u=await o.blob();return e&&(!u.type||u.type==="application/octet-stream")?new Blob([u],{type:e}):u}async function Me(t,e){let n=z(e);try{return await jm(t,void 0,n)}catch{}let r=await qe(t,n);if(r.encoding==="base64"&&r.content){let s=Uint8Array.from(atob(r.content),o=>o.charCodeAt(0));return new Blob([s],{type:r.mimeType||"application/octet-stream"})}return new Blob([r.content??""],{type:r.mimeType||"text/plain;charset=utf-8"})}async function et(t){return Ut("/file/status",z(t))}async function tt(t,e,n){let r=z(n),s=new URLSearchParams({query:t});return e?.type&&s.set("type",e.type),e?.limit&&s.set("limit",String(e.limit)),Ut(`/find/file?${s.toString()}`,r)}async function nt(t,e){let n=z(e);return(await Ut(`/find?pattern=${encodeURIComponent(t)}`,n)).map(s=>({path:typeof s.path=="string"?s.path:s.path?.text??"",lines:typeof s.lines=="string"?s.lines:s.lines?.text??"",line_number:s.line_number,absolute_offset:s.absolute_offset,submatches:(s.submatches??[]).map(o=>({start:o.start,end:o.end}))}))}var Ye=[400,1200],$m=t=>t===408||t===429||t===502||t===503||t===504,Hu=t=>new Promise(e=>setTimeout(e,t));function Dm(t){let e=t?.name;return e==="TimeoutError"||e==="AbortError"}var us=3e4,qm=15*6e4,Mm=256;function zu(t){if(typeof t!="number"||!Number.isFinite(t)||t<=0)return us;let e=us+t/Mm;return Math.min(qm,Math.max(us,Math.round(e)))}async function Om(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 Vu(t,e){let n;for(let s=0;s<=Ye.length;s++){let o;try{o=await e(t())}catch(p){if(n=p,Dm(p)||s===Ye.length)break;await Hu(Ye[s]);continue}if(o.ok)return o.json();let u=await Om(o);if(n=new v(`Upload failed (${o.status}): ${u}`,{status:o.status,response:o}),!$m(o.status)||s===Ye.length)throw n;await Hu(Ye[s])}if(n instanceof v)throw n;let r=n instanceof Error?n.message:String(n||"request failed");throw new v(`Upload failed: ${r}`)}async function Oe(t,e,n,r){let s=z(r),o=zu(t.size),u=n||(t instanceof File?t.name:"")||"";return Vu(()=>{let p=new FormData,d=(e??"").trim();return d&&p.append("path",d.startsWith("/")?d:`/${d}`),u&&p.append("filename",u),u?p.append("file",t,u):p.append("file",t),p},p=>q(`${s}/file/upload`,{method:"POST",body:p},{timeoutMs:o}))}function Um(t,e,n){let r=z(n),s=zu(e.size);return Vu(()=>{let o=new FormData;return o.append(t,e,t.split("/").pop()||"file"),o},o=>q(`${r}/file/upload`,{method:"POST",body:o},{timeoutMs:s}))}async function rt(t,e){let n=z(e),r=t.trim(),o=(r.startsWith("/")?r:`/${r}`).split("/"),u=o.pop()||"untitled",p=o.join("/")||"/workspace",d=await Ue(`${p}/${u}`,new Blob([],{type:"application/octet-stream"}),n);return[{path:d.path,size:d.bytes}]}async function st(t,e,n){let r=z(n);return Um(e,await Me(t,r),r)}function Fm(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return t.slice(0,e)}function Lm(t){let e=t.lastIndexOf("/");return e<=0?"/":t.slice(0,e)}function Gm(t){return t.slice(t.lastIndexOf("/")+1)}function Bm(){let t=typeof crypto<"u"?crypto:void 0;if(t?.randomUUID)return t.randomUUID();if(t?.getRandomValues){let e=new Uint8Array(8);return t.getRandomValues(e),[...e].map(n=>n.toString(16).padStart(2,"0")).join("")}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}async function Ue(t,e,n){let r=z(n),s=Qe(Fm(t.trim())),o=Gm(s);if(!o)throw new v(`writeFile needs a file path, got "${t}"`,{code:"INVALID_PATH"});let u=Lm(s);await Fe(u,r).catch(()=>{});let p=Bm(),d=await Oe(e,u,`.${o}.kortix-write-${p}`,r),f=d[0]?.path;if(!f)throw new v(`Upload returned no file for ${s}`,{code:"UPLOAD_NO_RESULT"});let m=Qe(f),b=`${s}.kortix-write-backup-${p}`,x=!1;try{await ge(s,b,r),x=!0}catch{}try{await ge(m,s,r)}catch(I){throw x&&await ge(b,s,r).catch(()=>{}),await Se(m,r).catch(()=>{}),I}x&&await Se(b,r).catch(()=>{});let C=d[0]?.size;return{path:s,bytes:typeof C=="number"?C:e.size}}async function Se(t,e){let n=await q(`${z(e)}/file`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})});if(!n.ok)throw new v(`Delete failed (${n.status}): ${await De(n)}`,{status:n.status,response:n});return n.json()}async function Fe(t,e){let n=await q(`${z(e)}/file/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})});if(!n.ok)throw new v(`Mkdir failed (${n.status}): ${await De(n)}`,{status:n.status,response:n});return n.json()}async function ge(t,e,n){let r=await q(`${z(n)}/file/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({from:t,to:e})});if(!r.ok)throw new v(`Rename failed (${r.status}): ${await De(r)}`,{status:r.status,response:r});return r.json()}async function gs(){return Wu(await de().project.current())}async function Lt(){return Wu(await de().global.health())}async function ms(){try{return(await Lt()).healthy===!0}catch{return!1}}var Ju={list:Ze,read:qe,readBlob:Me,status:et,findFiles:tt,findText:nt,upload:Oe,write:Ue,create:rt,copy:st,remove:Se,mkdir:Fe,rename:ge,currentProject:gs,health:Lt,isReachable:ms,toDaemonPath:ve,toSandboxAbsolutePath:Qe,toWorkspaceRelative:ds};function a(t,e="Project request failed"){if(!t.success||t.data===void 0)throw t.error??new Error(e);return t.data}function fs(t){return t.replace(/\/v1\/?$/,"")}async function Le(t,e){if(!t.backendUrl||!t.accessToken)return null;let n=fs(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 ys(){return a(await i.get("/accounts"))}async function hs(t){return a(await i.post("/accounts",t))}async function bs(t){return a(await i.get(`/accounts/${t}`))}async function xs(t,e){return a(await i.patch(`/accounts/${t}`,{name:e}))}async function _s(t){return a(await i.get(`/accounts/${t}/members`))}async function Ps(t,e){return a(await i.post(`/accounts/${t}/members`,e,{showErrors:!1}))}async function ks(t){return a(await i.get(`/accounts/${t}/invites`))}async function ws(t,e){return a(await i.delete(`/accounts/${t}/invites/${e}`))}async function Ss(t,e){return a(await i.post(`/accounts/${t}/invites/${e}/resend`,{}))}async function vs(t){return a(await i.get(`/account-invites/${t}`,{showErrors:!1}))}async function Cs(t){return a(await i.post(`/account-invites/${t}/accept`,{}))}async function Rs(t){return a(await i.post(`/account-invites/${t}/decline`,{}))}async function As(t,e){return a(await i.delete(`/accounts/${t}/members/${e}`))}async function Ts(t,e,n){return a(await i.patch(`/accounts/${t}/members/${e}`,{role:n}))}async function Is(t){return a(await i.post(`/accounts/${t}/leave`,{}))}async function Km(t){return Le(t,"/v1/accounts")}async function Es(){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 Hm=["agent_tunnel","marketplace","connectors_api_discover","agentmail_email","teams","llm_gateway","review_center","meta_agent","apps","monitors","warm_sessions","secrets_egress"];async function Ce(){return a(await i.get("/projects"))}async function js(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return a(await i.get(`/projects${e}`))}async function Gt(t,e){return a(await i.get(`/projects/${t}`,e))}async function $s(t,e,n="write"){return a(await i.post(`/projects/${t}/git/collaborators`,{github_username:e,permission:n}))}async function Ds(t,e){return a(await i.post(`/projects/${t}/manifest/validate`,{raw:e}),"Failed to validate manifest")}async function qs(t){return a(await i.post(`/projects/${t}/git-token`,{}),"Failed to mint git token")}function Wm(t){let e=t.metadata?.git;return e?.provider==="github"&&e?.managed===!0}async function Bt(t,e){let n=a(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 Nt(t,e){return a(await i.get(`/projects/${t}/llm-catalog`,{showErrors:!1,...e}))}async function Kt(t,e){return a(await i.get(`/projects/${t}/model-picker`,{showErrors:!1,...e}))}async function zm(t,e){return a(await i.get(`/projects/${t}/llm-catalog/providers`,{showErrors:!1,...e}))}async function Ms(t){return a(await i.post("/projects",t))}async function Os(t){return a(await i.post("/projects/create-repo",t))}async function Us(t,e={}){return a(await i.post("/projects/provision",{seed_starter:!0,...t},{timeout:12e4,...e}))}var Xu=200;function Vm(t){let e=t.split(`
|
|
5
|
+
`);D=y.pop()??"";for(let T of y){let z=T.split(`
|
|
6
|
+
`),U=[],F;for(let N of z)if(N.startsWith("data:"))U.push(N.replace(/^data:\s*/,""));else if(N.startsWith("event:"))F=N.replace(/^event:\s*/,"");else if(N.startsWith("id:"))h=N.replace(/^id:\s*/,"");else if(N.startsWith("retry:")){let Q=Number.parseInt(N.replace(/^retry:\s*/,""),10);Number.isNaN(Q)||(E=Q)}let L,J=!1;if(U.length){let N=U.join(`
|
|
7
|
+
`);try{L=JSON.parse(N),J=!0}catch{L=N}}J&&(s&&await s(L),r&&(L=await r(L))),n?.({data:L,event:F,id:h,retry:E}),U.length&&(yield L)}}}finally{l.removeEventListener("abort",q),$.releaseLock()}break}catch(c){if(e?.(c),u!==void 0&&j>=u)break;let S=Math.min(E*2**(j-1),p??3e4);await x(S)}}}()}};var hg=t=>{switch(t){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},bg=t=>{switch(t){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},xg=t=>{switch(t){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},At=({allowReserved:t,explode:e,name:n,style:r,value:s})=>{if(!e){let p=(t?s:s.map(d=>encodeURIComponent(d))).join(bg(r));switch(r){case"label":return`.${p}`;case"matrix":return`;${n}=${p}`;case"simple":return p;default:return`${n}=${p}`}}let o=hg(r),u=s.map(p=>r==="label"||r==="simple"?t?p:encodeURIComponent(p):Ee({allowReserved:t,name:n,value:p})).join(o);return r==="label"||r==="matrix"?o+u:u},Ee=({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)}`},Rt=({allowReserved:t,explode:e,name:n,style:r,value:s,valueOnly:o})=>{if(s instanceof Date)return o?s.toISOString():`${n}=${s.toISOString()}`;if(r!=="deepObject"&&!e){let d=[];Object.entries(s).forEach(([m,h])=>{d=[...d,m,t?h:encodeURIComponent(h)]});let f=d.join(",");switch(r){case"form":return`${n}=${f}`;case"label":return`.${f}`;case"matrix":return`;${n}=${f}`;default:return f}}let u=xg(r),p=Object.entries(s).map(([d,f])=>Ee({allowReserved:t,name:r==="deepObject"?`${n}[${d}]`:d,value:f})).join(u);return r==="label"||r==="matrix"?u+p:p};var _g=/\{[^{}]+\}/g,Pg=({path:t,url:e})=>{let n=e,r=e.match(_g);if(r)for(let s of r){let o=!1,u=s.substring(1,s.length-1),p="simple";u.endsWith("*")&&(o=!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 d=t[u];if(d==null)continue;if(Array.isArray(d)){n=n.replace(s,At({explode:o,name:u,style:p,value:d}));continue}if(typeof d=="object"){n=n.replace(s,Rt({explode:o,name:u,style:p,value:d,valueOnly:!0}));continue}if(p==="matrix"){n=n.replace(s,`;${Ee({name:u,value:d})}`);continue}let f=encodeURIComponent(p==="label"?`.${d}`:d);n=n.replace(s,f)}return n},Ku=({baseUrl:t,path:e,query:n,querySerializer:r,url:s})=>{let o=s.startsWith("/")?s:`/${s}`,u=(t??"")+o;e&&(u=Pg({path:e,url:u}));let p=n?r(n):"";return p.startsWith("?")&&(p=p.substring(1)),p&&(u+=`?${p}`),u};function Ln(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 Hu=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 Gn={bodySerializer:t=>JSON.stringify(t,(e,n)=>typeof n=="bigint"?n.toString():n)};var Wu=({parameters:t={},...e}={})=>r=>{let s=[];if(r&&typeof r=="object")for(let o in r){let u=r[o];if(u==null)continue;let p=t[o]||e;if(Array.isArray(u)){let d=At({allowReserved:p.allowReserved,explode:!0,name:o,style:"form",value:u,...p.array});d&&s.push(d)}else if(typeof u=="object"){let d=Rt({allowReserved:p.allowReserved,explode:!0,name:o,style:"deepObject",value:u,...p.object});d&&s.push(d)}else{let d=Ee({allowReserved:p.allowReserved,name:o,value:u});d&&s.push(d)}}return s.join("&")},zu=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"}},kg=(t,e)=>e?!!(t.headers.has(e)||t.query?.[e]||t.headers.get("Cookie")?.includes(`${e}=`)):!1,Vu=async({security:t,...e})=>{for(let n of t){if(kg(e,n.name))continue;let r=await Hu(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=>Ku({baseUrl:t.baseUrl,path:t.path,query:t.query,querySerializer:typeof t.querySerializer=="function"?t.querySerializer:Wu(t.querySerializer),url:t.url}),Nn=(t,e)=>{let n={...t,...e};return n.baseUrl?.endsWith("/")&&(n.baseUrl=n.baseUrl.substring(0,n.baseUrl.length-1)),n.headers=Tt(t.headers,e.headers),n},wg=t=>{let e=[];return t.forEach((n,r)=>{e.push([r,n])}),e},Tt=(...t)=>{let e=new Headers;for(let n of t){if(!n)continue;let r=n instanceof Headers?wg(n):Object.entries(n);for(let[s,o]of r)if(o===null)e.delete(s);else if(Array.isArray(o))for(let u of o)e.append(s,u);else o!==void 0&&e.set(s,typeof o=="object"?JSON.stringify(o):o)}return e},Je=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}},Ju=()=>({error:new Je,request:new Je,response:new Je}),Sg=Wu({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),vg={"Content-Type":"application/json"},Xe=(t={})=>({...Gn,headers:vg,parseAs:"auto",querySerializer:Sg,...t});var Qe=(t={})=>{let e=Nn(Xe(),t),n=()=>({...e}),r=f=>(e=Nn(e,f),n()),s=Ju(),o=async f=>{let m={...e,...f,fetch:f.fetch??e.fetch??globalThis.fetch,headers:Tt(e.headers,f.headers),serializedBody:void 0};m.security&&await Vu({...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 h=Bn(m);return{opts:m,url:h}},u=async f=>{let{opts:m,url:h}=await o(f),x={redirect:"follow",...m,body:Ln(m)},P=new Request(h,x);for(let w of s.request.fns)w&&(P=await w(P,m));let A=m.fetch,E;try{E=await A(P)}catch(w){let R=w;for(let $ of s.error.fns)$&&(R=await $(w,void 0,P,m));if(R=R||{},m.throwOnError)throw R;return m.responseStyle==="data"?void 0:{error:R,request:P,response:void 0}}for(let w of s.response.fns)w&&(E=await w(E,P,m));let j={request:P,response:E};if(E.ok){let w=(m.parseAs==="auto"?zu(E.headers.get("Content-Type")):m.parseAs)??"json";if(E.status===204||E.headers.get("Content-Length")==="0"){let $;switch(w){case"arrayBuffer":case"blob":case"text":$=await E[w]();break;case"formData":$=new FormData;break;case"stream":$=E.body;break;default:$={};break}return m.responseStyle==="data"?$:{data:$,...j}}let R;switch(w){case"arrayBuffer":case"blob":case"formData":case"text":R=await E[w]();break;case"json":{let $=await E.text();R=$?JSON.parse($):{};break}case"stream":return m.responseStyle==="data"?E.body:{data:E.body,...j}}return w==="json"&&(m.responseValidator&&await m.responseValidator(R),m.responseTransformer&&(R=await m.responseTransformer(R))),m.responseStyle==="data"?R:{data:R,...j}}let l=await E.text(),b;try{b=JSON.parse(l)}catch{}let c=b??l,S=c;for(let w of s.error.fns)w&&(S=await w(c,E,P,m));if(S=S||{},m.throwOnError)throw S;return m.responseStyle==="data"?void 0:{error:S,...j}},p=f=>m=>u({...m,method:f}),d=f=>async m=>{let{opts:h,url:x}=await o(m);return Nu({...h,body:h.body,headers:h.headers,method:f,onRequest:async(P,A)=>{let E=new Request(P,A);for(let j of s.request.fns)j&&(E=await j(E,h));return E},serializedBody:Ln(h),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:d("CONNECT"),delete:d("DELETE"),get:d("GET"),head:d("HEAD"),options:d("OPTIONS"),patch:d("PATCH"),post:d("POST"),put:d("PUT"),trace:d("TRACE")},trace:p("TRACE")}};var Cg={$body_:"body",$headers_:"headers",$path_:"path",$query_:"query"},Ag=Object.entries(Cg),Xu=(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&&Xu(n.args,e);return e},Rg=t=>{for(let[e,n]of Object.entries(t))n&&typeof n=="object"&&!Object.keys(n).length&&delete t[e]},g=(t,e)=>{let n={body:{},headers:{},path:{},query:{}},r=Xu(e),s;for(let[o,u]of t.entries())if(e[o]&&(s=e[o]),!!s)if("in"in s)if(s.key){let p=r.get(s.key),d=p.map||s.key;p.in&&(n[p.in][d]=u)}else n.body=u;else for(let[p,d]of Object.entries(u??{})){let f=r.get(p);if(f)if(f.in){let m=f.map||p;n[f.in][m]=d}else n[f.map]=d;else{let m=Ag.find(([h])=>p.startsWith(h));if(m){let[h,x]=m;n[x][p.slice(h.length)]=d}else if("allowExtra"in s&&s.allowExtra){for(let[h,x]of Object.entries(s.allowExtra))if(x){n[h][p]=d;break}}}}return Rg(n),n};var Qu=Qe(Xe({baseUrl:"http://localhost:4096"}));var _=class{client;constructor(e){this.client=e?.client??Qu}},Kn=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)}},Hn=class extends _{remove(e,n){let r=g([e],[{args:[{in:"path",key:"providerID"}]}]);return(n?.client??this.client).delete({url:"/auth/{providerID}",...n,...r})}set(e,n){let r=g([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}})}},Wn=class extends _{log(e,n){let r=g([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=g([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=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/skill",...n,...r})}},zn=class extends _{moveSession(e,n){let r=g([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}})}},Vn=class extends _{get(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/capabilities",...n,...r})}},Jn=class extends _{get(e,n){let r=g([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=g([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=g([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}})}},Xn=class extends _{list(e,n){let r=g([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=g([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})}},Qn=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/resource",...n,...r})}},Yn=class extends _{generateName(e,n){let r=g([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}})}},Zn=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/workspace/adapter",...n,...r})}},er=class extends _{list(e,n){let r=g([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=g([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=g([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=g([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=g([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=g([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 Zn({client:this.client})}},tr=class extends _{_controlPlane;get controlPlane(){return this._controlPlane??=new zn({client:this.client})}_capabilities;get capabilities(){return this._capabilities??=new Vn({client:this.client})}_console;get console(){return this._console??=new Jn({client:this.client})}_session;get session(){return this._session??=new Xn({client:this.client})}_resource;get resource(){return this._resource??=new Qn({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new Yn({client:this.client})}_workspace;get workspace(){return this._workspace??=new er({client:this.client})}},nr=class extends _{get(e){return(e?.client??this.client).get({url:"/global/config",...e})}update(e,n){let r=g([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}})}},rr=class extends _{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=g([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 nr({client:this.client})}},sr=class extends _{subscribe(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).sse.get({url:"/event",...n,...r})}},ir=class extends _{get(e,n){let r=g([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=g([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=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/config/providers",...n,...r})}},or=class extends _{list(e,n){let r=g([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=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/experimental/tool/ids",...n,...r})}},ar=class extends _{remove(e,n){let r=g([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=g([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=g([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=g([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}})}},cr=class extends _{text(e,n){let r=g([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=g([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=g([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})}},lr=class extends _{list(e,n){let r=g([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=g([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=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/file/status",...n,...r})}},ur=class extends _{dispose(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).post({url:"/instance/dispose",...n,...r})}},pr=class extends _{get(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/path",...n,...r})}},dr=class extends _{raw(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/vcs/diff/raw",...n,...r})}},gr=class extends _{get(e,n){let r=g([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=g([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=g([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=g([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 dr({client:this.client})}},mr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/command",...n,...r})}},fr=class extends _{status(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/lsp",...n,...r})}},yr=class extends _{status(e,n){let r=g([e],[{args:[{in:"query",key:"directory"},{in:"query",key:"workspace"}]}]);return(n?.client??this.client).get({url:"/formatter",...n,...r})}},hr=class extends _{remove(e,n){let r=g([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=g([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=g([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=g([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})}},br=class extends _{status(e,n){let r=g([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=g([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=g([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=g([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 hr({client:this.client})}},xr=class extends _{list(e,n){let r=g([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=g([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=g([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=g([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=g([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})}},_r=class extends _{shells(e,n){let r=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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})}},Pr=class extends _{list(e,n){let r=g([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=g([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=g([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})}},kr=class extends _{list(e,n){let r=g([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=g([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=g([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}})}},wr=class extends _{authorize(e,n){let r=g([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=g([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 _{list(e,n){let r=g([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=g([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 wr({client:this.client})}},vr=class extends _{list(e,n){let r=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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})}},Cr=class extends _{delete(e,n){let r=g([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=g([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 _{list(e,n){let r=g([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}})}},Rr=class extends _{start(e,n){let r=g([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=g([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=g([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})}},Tr=class extends _{next(e,n){let r=g([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=g([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}})}},Ir=class extends _{appendPrompt(e,n){let r=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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=g([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 Tr({client:this.client})}},Er=class extends _{get(e){return(e?.client??this.client).get({url:"/api/health",...e})}},jr=class extends _{get(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/location",...n,...r})}},$r=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/agent",...n,...r})}},Mr=class extends _{stage(e,n){let r=g([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=g([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=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/revert/commit",...n,...r})}},qr=class extends _{list(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/permission",...n,...r})}create(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"},{in:"body",key:"id"},{in:"body",key:"action"},{in:"body",key:"resources"},{in:"body",key:"save"},{in:"body",key:"metadata"},{in:"body",key:"source"},{in:"body",key:"agent"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/permission",...n,...r,headers:{"Content-Type":"application/json",...n?.headers,...r.headers}})}get(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"requestID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/permission/{requestID}",...n,...r})}reply(e,n){let r=g([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 _{list(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/question",...n,...r})}reply(e,n){let r=g([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=g([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})}},Or=class extends _{list(e,n){let r=g([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=g([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}})}active(e){return(e?.client??this.client).get({url:"/api/session/active",...e})}get(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}",...n,...r})}switchAgent(e,n){let r=g([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=g([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=g([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=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/compact",...n,...r})}wait(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/wait",...n,...r})}context(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/context",...n,...r})}history(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"limit"},{in:"query",key:"after"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/history",...n,...r})}events(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"},{in:"query",key:"after"}]}]);return(n?.client??this.client).sse.get({url:"/api/session/{sessionID}/event",...n,...r})}interrupt(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"}]}]);return(n?.client??this.client).post({url:"/api/session/{sessionID}/interrupt",...n,...r})}message(e,n){let r=g([e],[{args:[{in:"path",key:"sessionID"},{in:"path",key:"messageID"}]}]);return(n?.client??this.client).get({url:"/api/session/{sessionID}/message/{messageID}",...n,...r})}messages(e,n){let r=g([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 qr({client:this.client})}_question;get question(){return this._question??=new Dr({client:this.client})}},Ur=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/model",...n,...r})}},Fr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/provider",...n,...r})}get(e,n){let r=g([e],[{args:[{in:"path",key:"providerID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/provider/{providerID}",...n,...r})}},Lr=class extends _{key(e,n){let r=g([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=g([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}})}},Gr=class extends _{cancel(e,n){let r=g([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=g([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=g([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 _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/integration",...n,...r})}get(e,n){let r=g([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 Lr({client:this.client})}_attempt;get attempt(){return this._attempt??=new Gr({client:this.client})}},Nr=class extends _{remove(e,n){let r=g([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=g([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}})}},Kr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/permission/request",...n,...r})}},Hr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"projectID"}]}]);return(n?.client??this.client).get({url:"/api/permission/saved",...n,...r})}remove(e,n){let r=g([e],[{args:[{in:"path",key:"id"}]}]);return(n?.client??this.client).delete({url:"/api/permission/saved/{id}",...n,...r})}},Wr=class extends _{_request;get request(){return this._request??=new Kr({client:this.client})}_saved;get saved(){return this._saved??=new Hr({client:this.client})}},zr=class extends _{read(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/fs/read/*",...n,...r})}list(e,n){let r=g([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=g([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})}},Vr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/command",...n,...r})}},Jr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/skill",...n,...r})}},Xr=class extends _{subscribe(e){return(e?.client??this.client).sse.get({url:"/api/event",...e})}},Qr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/pty",...n,...r})}create(e,n){let r=g([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=g([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=g([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=g([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=g([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=g([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})}},Yr=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/question/request",...n,...r})}},Zr=class extends _{_request;get request(){return this._request??=new Yr({client:this.client})}},es=class extends _{list(e,n){let r=g([e],[{args:[{in:"query",key:"location"}]}]);return(n?.client??this.client).get({url:"/api/reference",...n,...r})}},ts=class extends _{remove(e,n){let r=g([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=g([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=g([e],[{args:[{in:"path",key:"projectID"},{in:"query",key:"location"}]}]);return(n?.client??this.client).post({url:"/experimental/project/{projectID}/copy/refresh",...n,...r})}},ns=class extends _{_health;get health(){return this._health??=new Er({client:this.client})}_location;get location(){return this._location??=new jr({client:this.client})}_agent;get agent(){return this._agent??=new $r({client:this.client})}_session;get session(){return this._session??=new Or({client:this.client})}_model;get model(){return this._model??=new Ur({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 Nr({client:this.client})}_permission;get permission(){return this._permission??=new Wr({client:this.client})}_fs;get fs(){return this._fs??=new zr({client:this.client})}_command;get command(){return this._command??=new Vr({client:this.client})}_skill;get skill(){return this._skill??=new Jr({client:this.client})}_event;get event(){return this._event??=new Xr({client:this.client})}_pty;get pty(){return this._pty??=new Qr({client:this.client})}_question;get question(){return this._question??=new Zr({client:this.client})}_reference;get reference(){return this._reference??=new es({client:this.client})}_projectCopy;get projectCopy(){return this._projectCopy??=new ts({client:this.client})}},It=class t extends _{static __registry=new Kn;constructor(e){super(e),t.__registry.set(this,e?.key)}_auth;get auth(){return this._auth??=new Hn({client:this.client})}_app;get app(){return this._app??=new Wn({client:this.client})}_experimental;get experimental(){return this._experimental??=new tr({client:this.client})}_global;get global(){return this._global??=new rr({client:this.client})}_event;get event(){return this._event??=new sr({client:this.client})}_config;get config(){return this._config??=new ir({client:this.client})}_tool;get tool(){return this._tool??=new or({client:this.client})}_worktree;get worktree(){return this._worktree??=new ar({client:this.client})}_find;get find(){return this._find??=new cr({client:this.client})}_file;get file(){return this._file??=new lr({client:this.client})}_instance;get instance(){return this._instance??=new ur({client:this.client})}_path;get path(){return this._path??=new pr({client:this.client})}_vcs;get vcs(){return this._vcs??=new gr({client:this.client})}_command;get command(){return this._command??=new mr({client:this.client})}_lsp;get lsp(){return this._lsp??=new fr({client:this.client})}_formatter;get formatter(){return this._formatter??=new yr({client:this.client})}_mcp;get mcp(){return this._mcp??=new br({client:this.client})}_project;get project(){return this._project??=new xr({client:this.client})}_pty;get pty(){return this._pty??=new _r({client:this.client})}_question;get question(){return this._question??=new Pr({client:this.client})}_permission;get permission(){return this._permission??=new kr({client:this.client})}_provider;get provider(){return this._provider??=new Sr({client:this.client})}_session;get session(){return this._session??=new vr({client:this.client})}_part;get part(){return this._part??=new Cr({client:this.client})}_sync;get sync(){return this._sync??=new Rr({client:this.client})}_tui;get tui(){return this._tui??=new Ir({client:this.client})}_v2;get v2(){return this._v2??=new ns({client:this.client})}};function Zu(t,e,n,r){if(!r?.throwOnError||t instanceof Error)return t;if(typeof t=="object"&&t!==null&&Object.keys(t).length>0){let o=t,u=typeof o.data?.message=="string"&&o.data.message||typeof o.message=="string"&&o.message||typeof o.name=="string"&&o.name||Yu(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 ${Yu(n,e)}: ${s}`,{cause:{body:t,status:e?.status}})}function Yu(t,e){let n=t?.method??"?",r=t?.url??"?",s=e?.status,o=e?.statusText;return`${n} ${r}${s?" \u2192 "+s:""}${o?" "+o:""}`}function Tg(t,e,n){if(t)return e&&(t===e||n&&t===n(e))?e:t}function Ig(t,e){if(t.method!=="GET"&&t.method!=="HEAD")return t;let n=new URL(t.url),r=!1;for(let[o,u]of[["x-opencode-directory","directory"],["x-opencode-workspace","workspace"]]){let p=Tg(t.headers.get(o),u==="directory"?e.directory:e.workspace,u==="directory"?encodeURIComponent:void 0);if(p){for(let d of n.pathname.startsWith("/api/")?[u,`location[${u}]`]:[u])n.searchParams.has(d)||n.searchParams.set(d,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 rs(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=Qe(t);return e.interceptors.request.use(n=>Ig(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(Zu),new It({client:e})}var Eg=new Set(["api","cli","mobile","web"]);function Et(t){let e=t?.trim().toLowerCase();return e&&Eg.has(e)?e:null}function jg(t){return new Promise(e=>setTimeout(e,t))}async function ep(t,e,n){let r=Math.max(1,e?.attempts??1),s=e?.baseDelayMs??0,o=e?.invalidateBetweenAttempts??!1,u=null;for(let p=0;p<r;p++)if(p>0&&(o&&n?.(),s>0&&await jg(s)),u=await t(),u)return u;return u}var $g=12e4;function Mg(t){return(t instanceof Request?t.url:String(t)).includes("/global/event")}function ss(t,e,n=$g){let r=t instanceof Request?t.signal:e?.signal;if(Mg(t))return r??void 0;let s=AbortSignal.timeout(n);return r?typeof AbortSignal.any=="function"?AbortSignal.any([r,s]):r:s}function is(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 o=Et(r);return o&&!s.has("X-Kortix-Client")&&s.set("X-Kortix-Client",o),s}function tp(){return new Response(JSON.stringify({error:"Not authenticated"}),{status:401,headers:{"Content-Type":"application/json"}})}async function jt(){return I().getToken()}async function ne(t){return ep(()=>I().getToken(),t,Ye)}function Ye(){}function qg(t){}function Dg(t){}async function je(){return jt()}async function os(t){return ne(t)}function np(t,e,n,r){let s=I().fetch??fetch;if(t instanceof Request){let o=new Request(t,{headers:n,...r?{signal:r}:{}});return s(o)}return s(t,{...e,headers:n,...r?{signal:r}:{}})}async function M(t,e,n){let{retryOnAuthError:r=!0,timeoutMs:s}=n??{},o=await os();if(!o)return tp();let u=I().clientSource,p=is(t,e,o,u),d=s===void 0?ss(t,e):ss(t,e,s),f=await np(t,e,p,d);if(f.status===401&&r&&o){Ye();let m=await os({attempts:2,baseDelayMs:200});if(m&&m!==o){let h=is(t,e,m,u);return np(t,e,h,d)}}return f}var $e={url:null,sandboxId:null,dbSandboxId:null,version:0},Og=new Set;function rp(t,e=null,n=null){if(!($e.url===t&&$e.sandboxId===e&&$e.dbSandboxId===n)){$e={url:t,sandboxId:e,dbSandboxId:n,version:$e.version+1};for(let r of Og)r()}}function sp(){return $e.url}function Ug(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return t.slice(0,e)}function Ze(){return Ug(I().backendUrl||"http://localhost:8008/v1")}function ip(){let t=I().sandboxId;return t?`${Ze()}/p/${t}/8000`:""}function Fg(t){return`${Ze()}/p/${t}/8000`}function $t(t){return Fg(t)}var C=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,...o}=n;Object.assign(this,o),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)}},_e=class extends C{constructor(e="Not authenticated"){super(e,{code:"NO_SESSION"}),this.name="AuthError"}},ge=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)}},Pe=class t extends Error{status;detail;constructor(e=431,n,r){let s="Request headers are too large",o="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||o},Object.setPrototypeOf(this,t.prototype)}},Mt="feature_disabled";function op(t){if(!(t instanceof C)||t.status!==403||t.code!==Mt)return null;let e=t.details??t.data;return e&&typeof e=="object"?e:{}}function as(t){let e=op(t);return e?(typeof e.feature=="string"&&!t.feature&&(t.feature=e.feature),!0):!1}function cs(t){let e=op(t);if(!e)return null;let n=t.feature;return typeof n=="string"?n:typeof e.feature=="string"?e.feature:null}function ke(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 ge(e,{message:r?.message||t.message||"Billing error",...r})}function ls(t){return t instanceof ge}function us(t){if(!(t instanceof ge))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."}}var ap="X-Kortix-Impersonate",ds="kortix.impersonation",we=null,qt=!1,ps=new Set;function gs(){try{return typeof sessionStorage>"u"?null:sessionStorage}catch{return null}}function cp(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 Lg(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 lp(){for(let t of ps)try{t()}catch{}}function up(){return qt||(qt=!0,we=Lg(gs()?.getItem(ds)??null)),we&&!cp(we)?(ms(),null):we}function Gg(t){if(qt=!0,!t){ms();return}we=t;try{gs()?.setItem(ds,JSON.stringify(t))}catch{}lp()}function ms(){qt=!0;let t=we!==null;we=null;try{gs()?.removeItem(ds)}catch{}t&&lp()}function Bg(t){return ps.add(t),()=>{ps.delete(t)}}var Ng=/(^|\/)admin\/(api|analytics)(\/|$)/;function pp(t){let e=t;if(/^https?:\/\//.test(t))try{e=new URL(t).pathname}catch{e=t}return!Ng.test(e)}function Dt(t){if(t!==void 0&&!pp(t))return{};let e=up();return e?{[ap]:e.grantId}:{}}var re=()=>I().backendUrl||"",gp="feature_not_supported",mp="model_not_servable",fp="provision_in_flight",yp="request_deadline",Kg=/^Request exceeded the \d+s server processing deadline$/,Hg=(t,e,n)=>t!==503?!1:(typeof e=="object"&&e!==null&&"code"in e?e.code:void 0)===yp||Kg.test(n),Wg=t=>new Promise(e=>setTimeout(e,t)),zg=new Set([502,503,504]),Vg=t=>zg.has(t),Jg=t=>{let e=(t??"GET").toUpperCase();return e==="GET"||e==="HEAD"},Xg=2,dp=t=>t?.name==="AbortError"||t?.name==="AbortSignal"||t instanceof Error&&t.message.includes("aborted"),Ot=!1;function Qg(t){Ot=t}function Yg(){return Ot}async function Se(t,e={}){let{showErrors:n=!0,errorContext:r,timeout:s=3e4,...o}=e,u=new AbortController,p=null,d=!1,f=!1;try{p=setTimeout(()=>{!d&&!u.signal.aborted&&(d=!0,f=!0,u.abort())},s);let m=await ne(),h=o.body instanceof FormData,x={};h||(x["Content-Type"]="application/json"),Object.assign(x,o.headers);let P=Et(I().clientSource),A=Object.keys(x).some(S=>S.toLowerCase()==="x-kortix-client");if(P&&!A&&(x["X-Kortix-Client"]=P),Ot&&(x["x-kortix-admin-bypass"]="1"),Object.assign(x,Dt(t)),m)x.Authorization=`Bearer ${m}`;else return{error:new _e,success:!1};let E=Jg(o.method),j=E?Xg+1:1,l;for(let S=0;S<j;S++){S>0&&await Wg(250*2**(S-1));let w=S===0?u:new AbortController;S>0&&(p=setTimeout(()=>{f=!0,w.abort()},s));try{l=await(I().fetch??fetch)(t,{...o,headers:x,signal:w.signal,credentials:o.credentials??"omit"})}catch($){if(p&&(clearTimeout(p),p=null),dp($)||S===j-1)throw $;continue}if(p&&(clearTimeout(p),p=null),!(E&&Vg(l.status)&&S<j-1))break;try{await l.arrayBuffer()}catch{}}if(!l.ok){let S=`HTTP ${l.status}: ${l.statusText}`,w=null;try{w=await l.json(),typeof w.message=="string"?S=w.message:w.error&&typeof w.error=="string"?S=w.error:typeof w.detail=="string"?S=w.detail:typeof w.detail?.message=="string"?S=w.detail.message:typeof w.reason=="string"&&(S=w.reason)}catch{}let R=Hg(l.status,w,S),$=new C(S,{status:l.status,response:l,details:w||void 0,data:w,detail:w?.detail,code:R?yp:w?.code||w?.error_code||w?.detail?.error_code||l.status.toString()});if(l.status===402&&($=ke($)),l.status===403&&w?.code==="account_mfa_required"&&typeof window<"u"&&typeof window.dispatchEvent=="function")try{window.dispatchEvent(new CustomEvent("kortix:mfa-required"))}catch{}l.status===431&&($=new Pe(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 D=l.status===501&&w?.code===gp,q=l.status===409&&w?.code===mp,X=l.status===409&&w?.code===fp;return n&&!D&&!q&&!X&&!R&&I().onError?.($,r),{error:$,success:!1}}let b,c=l.headers.get("content-type");return c?.includes("application/json")?b=await l.json():c?.includes("text/")?b=await l.text():b=await l.blob(),{data:b,success:!0}}catch(m){p&&(clearTimeout(p),p=null);let h=dp(m);h&&(d=!0);let x;if(h){if(!f)return{error:new C("Request aborted",{name:"AbortError",code:"ABORTED"}),success:!1};let P=t.replace(re(),"")||t;x=new C(`Request timed out after ${Math.round(s/1e3)}s: ${P}`,{code:"TIMEOUT",url:t,endpoint:P,timeout:s})}else m instanceof Error?(x=new C(m.message,{name:m.name||"ApiError",stack:m.stack}),n&&I().onError?.(x,r)):(x=new C(String(m)),n&&I().onError?.(x,r));return{error:x,success:!1}}}var Zg={async execute(t,e){try{let{data:n,error:r}=await t();if(r){let s=new C(r.message||"Database error",{code:r.code,details:r});return I().onError?.(s,e),{error:s,success:!1}}return{data:n,success:!0}}catch(n){let r=n instanceof Error?new C(n.message,{name:n.name||"ApiError",stack:n.stack}):new C(String(n));return I().onError?.(r,e),{error:r,success:!1}}}};async function em(t,e,n={}){let{timeout:r=3e4,fetch:s=fetch}=n,o=await ne(),u={Accept:"text/event-stream","Content-Type":"application/json"},p=Et(I().clientSource);p&&(u["X-Kortix-Client"]=p),Ot&&(u["x-kortix-admin-bypass"]="1"),Object.assign(u,Dt(t)),o&&(u.Authorization=`Bearer ${o}`);let d=new AbortController,f=setTimeout(()=>d.abort(),r);try{return await s(`${re()}${t}`,{method:"POST",headers:u,body:JSON.stringify(e),signal:d.signal,credentials:"omit"})}finally{clearTimeout(f)}}var i={get:(t,e)=>Se(`${re()}${t}`,{...e,method:"GET"}),post:(t,e,n)=>Se(`${re()}${t}`,{...n,method:"POST",body:e?JSON.stringify(e):void 0}),put:(t,e,n)=>Se(`${re()}${t}`,{...n,method:"PUT",body:e?JSON.stringify(e):void 0}),patch:(t,e,n)=>Se(`${re()}${t}`,{...n,method:"PATCH",body:e?JSON.stringify(e):void 0}),delete:(t,e)=>Se(`${re()}${t}`,{...e,method:"DELETE"}),upload:(t,e,n)=>{let{headers:r,...s}=n||{},o={...r};return delete o["Content-Type"],Se(`${re()}${t}`,{...s,method:"POST",body:e,headers:o})},uploadPut:(t,e,n)=>{let{headers:r,...s}=n||{},o={...r};return delete o["Content-Type"],Se(`${re()}${t}`,{...s,method:"PUT",body:e,headers:o})},postStream:em};var Ut=new Map,fs=new Map;function ys(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return t.slice(0,e)}function hp(t){return Ut.get(ys(t))??null}function bp(t){return Ut.has(ys(t))}async function Ft(t){let e=ys(t),n=Ut.get(e);if(n!==void 0)return n;let r=fs.get(e);if(r)return r;let s=(async()=>{try{let o=await i.get("/p/config",{showErrors:!1,errorContext:{operation:"load preview config",silent:!0}});if(!o.success)return null;let u=typeof o.data?.preview_url_template=="string"?o.data.preview_url_template:null;return Ut.set(e,u),u}catch{return null}finally{fs.delete(e)}})();return fs.set(e,s),s}function xp(t){let{apiBaseUrl:e}=t;return bp(e)||Ft(e).catch(()=>{}),{sandboxId:t.sandboxId,backendPort:t.backendPort,apiBaseUrl:e,previewUrlTemplate:hp(e)}}function se(){let t=sp();return t||(I().billingEnabled??!1?"":ip())}async function hs(t,e){return(await t.json().catch(()=>({})))?.error||t.statusText||e}function bs(t){if(!t)throw new Error("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading");return t}async function xs(t){let e=bs(t),n=await M(`${e}/env`);if(!n.ok)throw new Error(await hs(n,"Failed to load secrets"));return(await n.json()).secrets??{}}async function _s(t,e,n){let r=bs(t),s=await M(`${r}/env/${encodeURIComponent(e)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:n})});if(!s.ok)throw new Error(await hs(s,"Failed to save secret"))}async function Ps(t,e){let n=bs(t),r=await M(`${n}/env/${encodeURIComponent(e)}`,{method:"DELETE"});if(!r.ok)throw new Error(await hs(r,"Failed to delete secret"))}var _p={list:xs,set:_s,delete:Ps};async function Pp(t,e,n){let r=t;for(;r.endsWith("/");)r=r.slice(0,-1);let s=await M(`${r}/kortix/triggers${e}`,{...n,headers:{"Content-Type":"application/json",...n?.headers}}),o=await s.json();if(!s.ok)throw new Error(o?.error||o?.message||`Request failed with ${s.status}`);return o}function ie(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 Lt(t,e){let n=await t.json().catch(()=>({}));return n?.error||n?.message||t.statusText||e}function et(t){if(!t)throw new Error("[kortix-pty] Server URL not ready \u2014 sandbox is still loading");return ie(t)}async function ks(t){let e=et(t),n=await M(`${e}/kortix/pty`);if(!n.ok)throw new Error(await Lt(n,"Failed to list terminals"));return n.json()}async function ws(t,e){let n=et(t),r=await M(`${n}/kortix/pty`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e??{})});if(!r.ok)throw new Error(await Lt(r,"Failed to create terminal"));return r.json()}async function Ss(t,e,n){let r=et(t),s=await M(`${r}/kortix/pty/${encodeURIComponent(e)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!s.ok)throw new Error(await Lt(s,"Failed to update terminal"));return s.json()}async function vs(t,e){let n=et(t),r=await M(`${n}/kortix/pty/${encodeURIComponent(e)}`,{method:"DELETE"});if(!r.ok)throw new Error(await Lt(r,"Failed to remove terminal"))}async function Cs(t,e,n){let r=et(e),o=`${(()=>{try{let f=new URL(r);return f.protocol==="https:"?f.protocol="wss:":f.protocol==="http:"&&(f.protocol="ws:"),typeof window<"u"&&window.location.protocol==="https:"&&f.protocol==="ws:"&&(f.protocol="wss:"),ie(f.toString())}catch{return r.replace("https://","wss://").replace("http://","ws://")}})()}/kortix/pty/${encodeURIComponent(t)}/connect`,u=new URLSearchParams,p=await je();p&&u.set("token",p),n?.wake&&u.set("wake","1");let d=u.toString();return d?`${o}${o.includes("?")?"&":"?"}${d}`:o}var kp={list:ks,create:ws,update:Ss,remove:vs,webSocketUrl:Cs};async function v(t,e,n,r){let s=t;for(;s.endsWith("/");)s=s.slice(0,-1);let o=await M(`${s}${e}`,{...n,headers:{"Content-Type":"application/json",...n?.headers}},r),u=await o.text(),p={};try{p=u?JSON.parse(u):{}}catch{p={}}if(!o.ok)throw new Error(p?.error||p?.message||p?.details||u.slice(0,200)||`Request failed with ${o.status}`);return p}async function tm(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 v(t,`/kortix/tasks${r}`)}async function nm(t,e){return v(t,`/kortix/tasks/${encodeURIComponent(e)}`)}async function rm(t,e){return v(t,`/kortix/tasks/${encodeURIComponent(e)}/events`)}async function sm(t,e){return v(t,`/kortix/tasks/${encodeURIComponent(e)}/status`)}async function im(t,e){return v(t,"/kortix/tasks",{method:"POST",body:JSON.stringify(e)})}async function om(t,e,n){return v(t,`/kortix/tasks/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function am(t,e){return v(t,`/kortix/tasks/${encodeURIComponent(e)}/start`,{method:"POST"})}async function cm(t,e){return v(t,`/kortix/tasks/${encodeURIComponent(e)}/approve`,{method:"POST"})}async function lm(t,e){return v(t,`/kortix/tasks/${encodeURIComponent(e)}`,{method:"DELETE"})}async function um(t,e){let n=e?`?project_id=${encodeURIComponent(e)}`:"";return v(t,`/kortix/tickets${n}`)}async function pm(t,e){return v(t,`/kortix/tickets/${encodeURIComponent(e)}`)}async function dm(t,e){return v(t,`/kortix/tickets/${encodeURIComponent(e)}/events`)}async function gm(t,e){return v(t,"/kortix/tickets",{method:"POST",body:JSON.stringify(e)})}async function mm(t,e,n){return v(t,`/kortix/tickets/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function fm(t,e,n){return v(t,`/kortix/tickets/${encodeURIComponent(e)}/status`,{method:"POST",body:JSON.stringify(n)})}async function ym(t,e,n){return v(t,`/kortix/tickets/${encodeURIComponent(e)}/assign`,{method:"POST",body:JSON.stringify(n)})}async function hm(t,e,n){return v(t,`/kortix/tickets/${encodeURIComponent(e)}/unassign`,{method:"POST",body:JSON.stringify(n)})}async function bm(t,e,n){return v(t,`/kortix/tickets/${encodeURIComponent(e)}/comments`,{method:"POST",body:JSON.stringify(n)})}async function xm(t,e){return v(t,`/kortix/tickets/${encodeURIComponent(e)}`,{method:"DELETE"})}async function _m(t,e){return v(t,`/kortix/projects/${encodeURIComponent(e)}/columns`)}async function Pm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/columns`,{method:"PUT",body:JSON.stringify({columns:n})})}async function km(t,e){return v(t,`/kortix/projects/${encodeURIComponent(e)}/fields`)}async function wm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/fields`,{method:"PUT",body:JSON.stringify({fields:n})})}async function Sm(t,e){return v(t,`/kortix/projects/${encodeURIComponent(e)}/templates`)}async function vm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/templates`,{method:"PUT",body:JSON.stringify({templates:n})})}async function Cm(t,e){return v(t,`/kortix/projects/${encodeURIComponent(e)}/pm-session`,{method:"POST"})}async function Am(t,e){return v(t,`/kortix/projects/${encodeURIComponent(e)}/agents`)}async function Rm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/agents`,{method:"POST",body:JSON.stringify(n)})}async function Tm(t,e,n,r){return v(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Im(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}`,{method:"DELETE"})}async function Em(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/agents/${encodeURIComponent(n)}/persona`)}async function jm(t,e,n=200){return v(t,`/kortix/projects/${encodeURIComponent(e)}/activity?limit=${n}`)}async function $m(t){return v(t,"/kortix/projects")}async function Mm(t,e){return v(t,`/kortix/projects/${encodeURIComponent(e)}`)}async function qm(t,e){return v(t,`/kortix/projects/by-session/${encodeURIComponent(e)}`)}async function Dm(t,e){return v(t,`/kortix/projects/${encodeURIComponent(e)}/sessions`)}async function Om(t,e){return v(t,`/kortix/projects/${encodeURIComponent(e)}`,{method:"DELETE"})}async function Um(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Fm(t,e,n="all"){return v(t,`/kortix/projects/${encodeURIComponent(e)}/milestones?status=${n}`)}async function Lm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`)}async function Gm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/events`)}async function Bm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/milestones`,{method:"POST",body:JSON.stringify(n)})}async function Nm(t,e,n,r){return v(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function Km(t,e,n,r){return v(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/close`,{method:"POST",body:JSON.stringify(r)})}async function Hm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}/reopen`,{method:"POST"})}async function Wm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/milestones/${encodeURIComponent(n)}`,{method:"DELETE"})}async function zm(t,e){return v(t,`/kortix/projects/${encodeURIComponent(e)}/credentials`)}async function Vm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}/events`)}async function Jm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/credentials`,{method:"POST",body:JSON.stringify(n)})}async function Xm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}`)}async function Qm(t,e,n){return v(t,`/kortix/projects/${encodeURIComponent(e)}/credentials/${encodeURIComponent(n)}`,{method:"DELETE"})}var Ym=1e4,Zm={retryOnAuthError:!1};function Me(t,e,n){return v(t,e,{signal:AbortSignal.timeout(Ym),...n},Zm)}async function ef(t,e=!1){return(await Me(t,`/kortix/services${e?"?all=true":""}`)).services??[]}async function tf(t){return(await Me(t,"/kortix/services/templates")).templates??[]}async function nf(t,e){return(await Me(t,`/kortix/services/${encodeURIComponent(e)}/logs`)).logs??[]}async function rf(t,e,n){let r=n==="delete",s=r?`/kortix/services/${encodeURIComponent(e)}`:`/kortix/services/${encodeURIComponent(e)}/${n}`;return Me(t,s,{method:r?"DELETE":"POST"})}async function sf(t,e){return Me(t,`/kortix/services/reconcile${e?"?reload=true":""}`,{method:"POST"})}async function of(t,e){return Me(t,"/kortix/services/register",{method:"POST",body:JSON.stringify(e)})}var Gt=new Map,qe=class extends Error{constructor(e="[opencode-sdk] Server URL not ready \u2014 sandbox is still loading"){super(e),this.name="RuntimeNotReadyError"}};function me(){let t=se();if(!t)throw new qe;return oe(t)}function oe(t){if(!t)throw new Error("[opencode-sdk] getClientForUrl called without a url");let e=Gt.get(t);if(e)return e;if(!Ct())throw new Error("[opencode-sdk] No auth token provider configured \u2014 call configureKortix()/createKortix() before talking to a sandbox runtime.");let n=rs({baseUrl:t,fetch:M});return Gt.set(t,n),n}function af(t){Gt.delete(t)}function cf(){Gt.clear()}var Bt=new Map;function lf(t){if(!t)throw new Error("[opencode-sdk] getPublicClientForUrl called without a url");let e=Bt.get(t);if(e)return e;let n=rs({baseUrl:t,fetch});return Bt.set(t,n),n}function uf(t){Bt.delete(t)}function pf(){Bt.clear()}async function df(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 gf(t){let e=se();if(!e)throw new C("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading",{code:"RUNTIME_UNAVAILABLE"});let n=t==="full"?"/kortix/refresh":"/global/dispose",r=await M(`${e}${n}`,{method:"POST"}),s=r.headers.get("content-type")??"",o=/^application\/([\w.+-]+\+)?json\b/i.test(s.trim());if(!r.ok)throw new C(`System reload failed (${r.status}): ${await df(r)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});if(!o)throw new C(`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(d){throw new C(`System reload returned malformed JSON from ${n}: ${d instanceof Error?d.message:String(d)}`,{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 Sp(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 C(n,{status:e?.response?.status??e?.status,response:e?.response,details:e})}return t.data}async function De(t){let e=await t.text().catch(()=>""),n=null;try{n=JSON.parse(e)}catch{}return n?.error||e||t.statusText||`HTTP ${t.status}`}function V(t){let e=(t??se()).trim();if(!e)throw new qe;return e}async function Nt(t,e){let n=await M(`${V(e)}${t}`);if(!n.ok)throw new C(await De(n),{status:n.status,response:n});return n.json()}var Kt=["/workspace","/tmp","/home","/opt"],mf=Kt.filter(t=>t!=="/workspace");function Rs(t){return Kt.some(e=>t===e||t.startsWith(`${e}/`))}function nt(t){return Rs(t)?t:`/workspace/${t.replace(/^\/+/,"")}`}function Ce(t){let e=t||"";if(e==="/workspace"||e==="/workspace/")return"";if(e.startsWith("/workspace/"))e=e.slice(11);else if(mf.some(n=>e===n||e.startsWith(`${n}/`)))return e;for(;e.startsWith("/");)e=e.slice(1);return e}var Ts=Ce;async function rt(t,e){let n=V(e),r=Ce(t)||".";return(await Nt(`/file?path=${encodeURIComponent(r)}`,n)).map(o=>({...o,path:o.absolute||`/workspace/${o.path}`}))}async function Oe(t,e){let n=V(e),r=Ce(t),s=await M(`${n}/file/content?path=${encodeURIComponent(r)}`);if(!s.ok)throw new C(await De(s),{status:s.status,response:s});return s.json()}async function ff(t,e,n){let r=V(n),s=Ce(t),o=await M(`${r}/file/raw?path=${encodeURIComponent(s)}`);if(!o.ok)throw new C(await De(o),{status:o.status,response:o});if((o.headers.get("content-type")||"").includes("text/html"))throw new C("File could not be loaded (raw byte route unavailable)",{status:o.status,response:o,code:"INVALID_CONTENT_TYPE"});let u=await o.blob();return e&&(!u.type||u.type==="application/octet-stream")?new Blob([u],{type:e}):u}async function Ue(t,e){let n=V(e);try{return await ff(t,void 0,n)}catch{}let r=await Oe(t,n);if(r.encoding==="base64"&&r.content){let s=Uint8Array.from(atob(r.content),o=>o.charCodeAt(0));return new Blob([s],{type:r.mimeType||"application/octet-stream"})}return new Blob([r.content??""],{type:r.mimeType||"text/plain;charset=utf-8"})}async function st(t){return Nt("/file/status",V(t))}async function it(t,e,n){let r=V(n),s=new URLSearchParams({query:t});return e?.type&&s.set("type",e.type),e?.limit&&s.set("limit",String(e.limit)),Nt(`/find/file?${s.toString()}`,r)}async function ot(t,e){let n=V(e);return(await Nt(`/find?pattern=${encodeURIComponent(t)}`,n)).map(s=>({path:typeof s.path=="string"?s.path:s.path?.text??"",lines:typeof s.lines=="string"?s.lines:s.lines?.text??"",line_number:s.line_number,absolute_offset:s.absolute_offset,submatches:(s.submatches??[]).map(o=>({start:o.start,end:o.end}))}))}var tt=[400,1200],yf=t=>t===408||t===429||t===502||t===503||t===504,wp=t=>new Promise(e=>setTimeout(e,t));function hf(t){let e=t?.name;return e==="TimeoutError"||e==="AbortError"}var As=3e4,bf=15*6e4,xf=256;function vp(t){if(typeof t!="number"||!Number.isFinite(t)||t<=0)return As;let e=As+t/xf;return Math.min(bf,Math.max(As,Math.round(e)))}async function _f(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 Cp(t,e){let n;for(let s=0;s<=tt.length;s++){let o;try{o=await e(t())}catch(p){if(n=p,hf(p)||s===tt.length)break;await wp(tt[s]);continue}if(o.ok)return o.json();let u=await _f(o);if(n=new C(`Upload failed (${o.status}): ${u}`,{status:o.status,response:o}),!yf(o.status)||s===tt.length)throw n;await wp(tt[s])}if(n instanceof C)throw n;let r=n instanceof Error?n.message:String(n||"request failed");throw new C(`Upload failed: ${r}`)}async function Fe(t,e,n,r){let s=V(r),o=vp(t.size),u=n||(t instanceof File?t.name:"")||"";return Cp(()=>{let p=new FormData,d=(e??"").trim();return d&&p.append("path",d.startsWith("/")?d:`/${d}`),u&&p.append("filename",u),u?p.append("file",t,u):p.append("file",t),p},p=>M(`${s}/file/upload`,{method:"POST",body:p},{timeoutMs:o}))}function Pf(t,e,n){let r=V(n),s=vp(e.size);return Cp(()=>{let o=new FormData;return o.append(t,e,t.split("/").pop()||"file"),o},o=>M(`${r}/file/upload`,{method:"POST",body:o},{timeoutMs:s}))}async function at(t,e){let n=V(e),r=t.trim(),o=(r.startsWith("/")?r:`/${r}`).split("/"),u=o.pop()||"untitled",p=o.join("/")||"/workspace",d=await Le(`${p}/${u}`,new Blob([],{type:"application/octet-stream"}),n);return[{path:d.path,size:d.bytes}]}async function ct(t,e,n){let r=V(n);return Pf(e,await Ue(t,r),r)}function kf(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return t.slice(0,e)}function wf(t){let e=t.lastIndexOf("/");return e<=0?"/":t.slice(0,e)}function Sf(t){return t.slice(t.lastIndexOf("/")+1)}function vf(){let t=typeof crypto<"u"?crypto:void 0;if(t?.randomUUID)return t.randomUUID();if(t?.getRandomValues){let e=new Uint8Array(8);return t.getRandomValues(e),[...e].map(n=>n.toString(16).padStart(2,"0")).join("")}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}async function Le(t,e,n){let r=V(n),s=nt(kf(t.trim())),o=Sf(s);if(!o)throw new C(`writeFile needs a file path, got "${t}"`,{code:"INVALID_PATH"});let u=wf(s);await Ge(u,r).catch(()=>{});let p=vf(),d=await Fe(e,u,`.${o}.kortix-write-${p}`,r),f=d[0]?.path;if(!f)throw new C(`Upload returned no file for ${s}`,{code:"UPLOAD_NO_RESULT"});let m=nt(f),h=`${s}.kortix-write-backup-${p}`,x=!1;try{await fe(s,h,r),x=!0}catch{}try{await fe(m,s,r)}catch(A){throw x&&await fe(h,s,r).catch(()=>{}),await ve(m,r).catch(()=>{}),A}x&&await ve(h,r).catch(()=>{});let P=d[0]?.size;return{path:s,bytes:typeof P=="number"?P:e.size}}async function ve(t,e){let n=await M(`${V(e)}/file`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})});if(!n.ok)throw new C(`Delete failed (${n.status}): ${await De(n)}`,{status:n.status,response:n});return n.json()}async function Ge(t,e){let n=await M(`${V(e)}/file/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})});if(!n.ok)throw new C(`Mkdir failed (${n.status}): ${await De(n)}`,{status:n.status,response:n});return n.json()}async function fe(t,e,n){let r=await M(`${V(n)}/file/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({from:t,to:e})});if(!r.ok)throw new C(`Rename failed (${r.status}): ${await De(r)}`,{status:r.status,response:r});return r.json()}async function Is(){return Sp(await me().project.current())}async function Ht(){return Sp(await me().global.health())}async function Es(){try{return(await Ht()).healthy===!0}catch{return!1}}var Ap={list:rt,read:Oe,readBlob:Ue,status:st,findFiles:it,findText:ot,upload:Fe,write:Le,create:at,copy:ct,remove:ve,mkdir:Ge,rename:fe,currentProject:Is,health:Ht,isReachable:Es,toDaemonPath:Ce,toSandboxAbsolutePath:nt,toWorkspaceRelative:Ts};function a(t,e="Project request failed"){if(!t.success||t.data===void 0)throw t.error??new Error(e);return t.data}function js(t){return t.replace(/\/v1\/?$/,"")}async function Be(t,e){if(!t.backendUrl||!t.accessToken)return null;let n=js(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 $s(){return a(await i.get("/accounts"))}async function Ms(t){return a(await i.post("/accounts",t))}async function qs(t){return a(await i.get(`/accounts/${t}`))}async function Ds(t,e){return a(await i.patch(`/accounts/${t}`,{name:e}))}async function Os(t){return a(await i.get(`/accounts/${t}/branding`))}async function Us(t,e){return a(await i.put(`/accounts/${t}/branding`,e))}async function Fs(t,e,n,r){let s=new FormData;return s.append("file",n,r??(n instanceof File?n.name:e)),a(await i.upload(`/accounts/${t}/branding/assets/${e}`,s))}async function Ls(t,e){return a(await i.delete(`/accounts/${t}/branding/assets/${e}`))}async function Gs(t){return a(await i.delete(`/accounts/${t}/branding`))}async function Bs(t){return a(await i.get(`/accounts/${t}/members`))}async function Ns(t,e){return a(await i.post(`/accounts/${t}/members`,e,{showErrors:!1}))}async function Ks(t){return a(await i.get(`/accounts/${t}/invites`))}async function Hs(t,e){return a(await i.delete(`/accounts/${t}/invites/${e}`))}async function Ws(t,e){return a(await i.post(`/accounts/${t}/invites/${e}/resend`,{}))}async function zs(t){return a(await i.get(`/account-invites/${t}`,{showErrors:!1}))}async function Vs(t){return a(await i.post(`/account-invites/${t}/accept`,{}))}async function Js(t){return a(await i.post(`/account-invites/${t}/decline`,{}))}async function Xs(t,e){return a(await i.delete(`/accounts/${t}/members/${e}`))}async function Qs(t,e,n){return a(await i.patch(`/accounts/${t}/members/${e}`,{role:n}))}async function Ys(t){return a(await i.post(`/accounts/${t}/leave`,{}))}async function Af(t){return Be(t,"/v1/accounts")}async function Zs(){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 Rf=["agent_tunnel","marketplace","connectors_api_discover","agentmail_email","teams","llm_gateway","review_center","meta_agent","apps","monitors","warm_sessions","secrets_egress","pi_worker"];async function Ae(){return a(await i.get("/projects"))}async function ei(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return a(await i.get(`/projects${e}`))}async function Wt(t,e){return a(await i.get(`/projects/${t}`,e))}async function ti(t,e,n="write"){return a(await i.post(`/projects/${t}/git/collaborators`,{github_username:e,permission:n}))}async function ni(t,e){return a(await i.post(`/projects/${t}/manifest/validate`,{raw:e}),"Failed to validate manifest")}async function ri(t){return a(await i.post(`/projects/${t}/git-token`,{}),"Failed to mint git token")}function Tf(t){let e=t.metadata?.git;return e?.provider==="github"&&e?.managed===!0}async function zt(t,e){let n=a(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 Vt(t,e){return a(await i.get(`/projects/${t}/llm-catalog`,{showErrors:!1,...e}))}async function Jt(t,e){return a(await i.get(`/projects/${t}/model-picker`,{showErrors:!1,...e}))}async function If(t,e){return a(await i.get(`/projects/${t}/llm-catalog/providers`,{showErrors:!1,...e}))}async function si(t){return a(await i.post("/projects",t))}async function ii(t){return a(await i.post("/projects/create-repo",t))}async function oi(t,e={}){return a(await i.post("/projects/provision",{seed_starter:!0,...t},{timeout:12e4,...e}))}var Rp=200;function Ef(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>
|
|
9
|
+
`);try{return JSON.parse(n)}catch(r){let s=n.length>Rp?`${n.slice(0,Rp)}\u2026`:n;throw new Error(`provisionProjectStream: received an unparseable SSE frame (${s})`,{cause:r})}}async function jf(t,e,n={}){let r=await i.postStream("/projects/provision-stream",{seed_starter:!0,...t},n);if(!r.ok){let d=await r.json().catch(()=>null);throw new C(d?.error||`Provision failed: HTTP ${r.status}`,{status:r.status,code:d?.code})}let s=r.body?.getReader();if(!s)throw new Error("Provision stream is unavailable on this runtime (no response body)");let o=new TextDecoder,u="",p=null;try{for(;;){let{done:d,value:f}=await s.read();if(d)break;u+=o.decode(f,{stream:!0});let m=u.indexOf(`
|
|
10
10
|
|
|
11
|
-
`);for(;m!==-1;){let
|
|
11
|
+
`);for(;m!==-1;){let h=u.slice(0,m);u=u.slice(m+2),m=u.indexOf(`
|
|
12
12
|
|
|
13
|
-
`);let x=Vm(b);if(x){if(e(x),x.type==="error")throw new v(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 Xm(){try{return a(await i.get("/projects/managed-git/status",{showErrors:!1}))}catch{return{configured:!1,provider:"github"}}}async function Ht(t,e){return a(await i.patch(`/projects/${t}`,e))}async function Fs(t,e,n){return a(await i.patch(`/projects/${t}/features`,{feature:e,enabled:n}))}async function Ls(t,e,n){return a(await i.patch(`/projects/${t}/experimental`,{feature:e,enabled:n}))}async function Gs(t,e){return a(await i.patch(`/projects/${t}/sandbox-provider`,{provider:e}))}async function Ym(t,e){return a(await i.get(`/projects/${t}/sandbox-provider/transition`,{showErrors:!1,...e}))}async function Qm(t,e){return a(await i.patch(`/projects/${t}/warm-pool`,e))}async function Bs(t,e){return a(await i.patch(`/projects/${t}/onboarding`,{completed:e}))}async function Zm(t,e){return a(await i.patch(`/projects/${t}/onboarding`,{profile:e}))}async function Wt(t){return a(await i.delete(`/projects/${t}`))}async function ef(t,e){return Le(t,`/v1/projects?account_id=${encodeURIComponent(e)}`)}async function tf(t,e){if(!t.backendUrl||!t.accessToken)return{ok:!1,limitReached:!1};let n=fs(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 Ns(t){return a(await i.post("/projects/link-repository",t,{showErrors:!1}))}async function Ks(t){return a(await i.get(`/projects/github/installation?account_id=${encodeURIComponent(t)}`,{showErrors:!1}))}async function Hs(t){return a(await i.get(`/projects/github/installations?account_id=${encodeURIComponent(t)}`,{showErrors:!1}))}async function Ws(t){return a(await i.post("/projects/github/installations/linkable",t,{showErrors:!1}))}async function zs(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)),a(await i.get(`/projects/github/repositories?${r.toString()}`,{showErrors:!1}))}async function Vs(t,e,n){let r=new URLSearchParams({account_id:t,installation_id:e,repo_full_name:n});return a(await i.get(`/projects/github/repository-branches?${r.toString()}`,{showErrors:!1}))}async function Js(t){return a(await i.post("/projects/github/installation",t,{showErrors:!1}))}async function Xs(t){return a(await i.post("/projects/github/installations/link",t,{showErrors:!1}))}async function Ys(t,e){let n=new URLSearchParams({account_id:t});return e&&n.set("installation_id",e),a(await i.delete(`/projects/github/installation?${n.toString()}`))}async function nf(t,e){return a(await i.post(`/projects/${t}/access-requests`,{message:e?.trim()||void 0},{showErrors:!1}))}async function Qs(t,e){return a(await i.get(`/projects/${t}/access-requests`,e))}async function Zs(t,e,n="member"){return a(await i.post(`/projects/${t}/access-requests/${e}/approve`,{role:n}))}async function ei(t,e){return a(await i.post(`/projects/${t}/access-requests/${e}/reject`,{}))}async function ti(t){return a(await i.get(`/projects/${t}/access`))}async function ni(t,e,n){return a(await i.put(`/projects/${t}/access/${e}`,{role:n}))}async function ri(t,e){return a(await i.delete(`/projects/${t}/access/${e}`))}function rf(t){return"status"in t&&t.status==="invited"}async function si(t,e,n,r){return a(await i.post(`/projects/${t}/access/invite`,{email:e,role:n,...r!==void 0?{expires_at:r}:{}}))}async function ii(t){return a(await i.get(`/projects/${t}/access/pending-invites`))}async function oi(t,e){return a(await i.delete(`/projects/${t}/access/pending-invites/${e}`))}async function ai(t,e){return a(await i.post(`/projects/${t}/access/pending-invites/${e}/resend`))}async function ci(t){return a(await i.get(`/projects/${t}/group-grants`))}async function li(t,e,n,r){return a(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 ui(t,e,n,r){return a(await i.patch(`/projects/${t}/group-grants/${e}`,r===void 0?{role:n}:{role:n,expires_at:r}))}async function pi(t,e){return a(await i.delete(`/projects/${t}/group-grants/${e}`))}async function di(t){return a(await i.get(`/projects/${t}/resource-grants`))}async function gi(t,e){return a(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 mi(t,e){return a(await i.delete(`/projects/${t}/resource-grants/${e}`))}async function fi(t,e){return a(await i.get(`/projects/${t}/approvals`,{showErrors:e?.showErrors}))}async function yi(t,e){return a(await i.get(`/projects/${t}/approvals/needs-input`,{showErrors:e?.showErrors}))}async function hi(t,e,n){return a(await i.post(`/projects/${t}/approvals/${e}`,{decision:n}))}async function bi(t){return a(await i.get(`/projects/${t}/secrets`,{showErrors:!1}))}async function xi(t,e){return a(await i.post(`/projects/${t}/secrets`,e))}async function _i(t,e,n,r={}){return a(await i.put(`/projects/${t}/secrets/${encodeURIComponent(e)}/strategy`,{strategy:n,...r}))}async function Pi(t,e,n){return a(await i.post(`/projects/${t}/secrets/${encodeURIComponent(e)}/broker`,n))}async function ki(t,e,n){return a(await i.post(`/projects/${t}/oauth/${e}/start`,{sharing:n?.sharing}))}async function wi(t,e,n){return a(await i.post(`/projects/${t}/oauth/${e}/poll`,{flow_id:n}))}async function Si(t,e){return a(await i.delete(`/projects/${t}/oauth/${encodeURIComponent(e)}`))}async function vi(t,e){return a(await i.put(`/projects/${t}/git-credential`,e))}async function Ci(t,e){return a(await i.delete(`/projects/${t}/secrets/${encodeURIComponent(e)}`))}async function Ri(t,e,n){return a(await i.put(`/projects/${t}/secrets/${encodeURIComponent(e)}/personal`,n))}async function Ai(t,e){return a(await i.delete(`/projects/${t}/secrets/${encodeURIComponent(e)}/personal`))}function Ti(t,e){return t?`/connectors/projects/${encodeURIComponent(t)}/${e}`:`/connectors/${e}`}async function zt(t){return a(await i.get(Ti(t,"catalog"))).connectors??[]}async function it(t){let e=[];for(let n of await zt(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 Ii(t,e="",n={}){let r=e.trim().toLowerCase(),s=r.split(/\s+/).filter(Boolean),o=[],u=[];for(let p of await it(t)){let d=`${p.tool} ${p.description}`.toLowerCase();!r||d.includes(r)?o.push(p):s.every(f=>d.includes(f))&&u.push(p)}return[...o,...u].slice(0,n.limit??20)}async function Ei(t,e){return(await it(t)).find(n=>n.tool===e)??null}function sf(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 ji(t,e,n={}){let{connector:r,action:s}=sf(e);return a(await i.post(Ti(t,"call"),{connector:r,action:s,args:n}))}function of(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 af(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 $i(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 o={"Content-Type":s,"X-Kortix-Attachment-Filename":encodeURIComponent(r),"X-Kortix-Attachment-Disposition":n.contentDisposition??"attachment"};n.contentId?.trim()&&(o["X-Kortix-Attachment-Content-Id"]=encodeURIComponent(n.contentId.trim()));let u=af(D().backendUrl),p=Ti(t,"attachments"),d=await q(`${u}${p}`,{method:"POST",headers:o,body:e},{timeoutMs:6e4}),f=await d.text(),m=null;if(f)try{m=JSON.parse(f)}catch{m=f}if(!d.ok)throw new v(of(m,d.status),{status:d.status,code:String(m&&typeof m=="object"?m.code??d.status:d.status),details:m,response:d,endpoint:p});return m}async function Di(t){return a(await i.get(`/projects/${t}/connections`))}async function qi(t){return a(await i.get(`/projects/${t}/connections/all`))}async function Mi(t,e){return a(await i.post(`/projects/${t}/connections`,e))}async function Oi(t,e){return a(await i.post(`/projects/${t}/connections/me`,e))}async function Ui(t,e,n){return a(await i.put(`/projects/${t}/connections/${e}/credential`,n))}function ie(t,e,n){return`/projects/${t}/connections/${e}/oauth2/${n}`}async function cf(t,e){return a(await i.post(`/projects/${t}/connectors/${encodeURIComponent(e)}/oauth2/connection`,{}))}async function lf(t,e,n){return a(await i.put(ie(t,e,"application"),n))}async function uf(t,e){return a(await i.get(ie(t,e,"application")))}async function pf(t,e,n){return a(await i.post(ie(t,e,"discover"),n))}async function df(t,e,n={}){return a(await i.post(ie(t,e,"discover-resource"),n))}async function gf(t,e,n){return a(await i.post(ie(t,e,"register"),n))}async function mf(t,e,n){return a(await i.post(ie(t,e,"authorize"),n))}async function ff(t,e,n){return a(await i.post(ie(t,e,"device"),n))}async function yf(t,e,n){return a(await i.post(ie(t,e,`device/${encodeURIComponent(n)}`),{}))}async function hf(t,e){return a(await i.get(ie(t,e,"status")))}async function Fi(t,e){return a(await i.put(`/projects/${t}/connections/${e}/revoke`,{}))}async function Li(t,e){return a(await i.put(`/projects/${t}/connections/${e}/activate`,{}))}async function Gi(t,e){return a(await i.put(`/projects/${t}/connections/${e}/default`,{}))}async function Bi(t,e,n={}){return a(await i.post(`/projects/${t}/connections/${e}/connect`,n))}async function Ni(t,e){return a(await i.post(`/projects/${t}/connections/${e}/connect/finalize`,{}))}async function Ki(t){return a(await i.get(`/connectors/projects/${t}/connectors`,{showErrors:!1}))}async function Hi(t){return a(await i.post(`/connectors/projects/${t}/connectors/sync`,{}))}async function Wi(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/credential-mode`,{mode:n}))}async function zi(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/authorization-strategy`,{authorization_strategy:n}))}async function Vi(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/sensitive`,{sensitive:n}))}async function Ji(t,e){return a(await i.get(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/policies`))}async function Xi(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/policies`,{policies:n}))}async function bf(t,e){throw new Error("Connection-specific policies were removed. Use getConnectorPolicies(projectId, slug).")}async function xf(t,e,n){throw new Error("Connection-specific policies were removed. Use setConnectorPolicies(projectId, slug, policies).")}async function Yi(t,e){return a(await i.get(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/config`))}async function Qi(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/name`,{name:n}))}async function Zi(t,e){return a(await i.post(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/connect`,{}))}async function eo(t,e){return a(await i.post(`/connectors/projects/${t}/connectors`,e))}async function to(t,e){return a(await i.post(`/connectors/projects/${t}/connectors/auth-discovery`,e))}async function no(t,e){return a(await i.delete(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}`))}async function ro(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 o=s.toString();return a(await i.get(`/connectors/projects/${t}/pipedream/apps${o?`?${o}`:""}`))}async function so(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 a(await i.get(`/connectors/projects/${t}/pipedream/sections${r?`?${r}`:""}`))}async function Vt(t,e,n){let r=new URLSearchParams;e&&r.set("q",e),n&&r.set("cursor",n);let s=r.toString();return a(await i.get(`/connectors/projects/${t}/discover/connectors${s?`?${s}`:""}`))}async function Jt(t,e){let n=new URLSearchParams({id:e});return a(await i.get(`/connectors/projects/${t}/discover/connectors/detail?${n.toString()}`))}var _f=Vt,Pf=Jt;async function io(){return a(await i.get("/connectors/connect-status"))}async function oo(t,e,n){let r=typeof n=="string"?{value:n}:n;return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/credential`,r))}async function kf(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/secret-binding`,{secret_identifier:n}))}async function ao(t,e){return a(await i.post(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/connect/finalize`,{}))}async function co(t){return a(await i.get(`/connectors/projects/${t}/policies`))}async function lo(t,e,n){return a(await i.put(`/connectors/projects/${t}/policies`,{policies:e,defaultMode:n}))}async function uo(t){return a(await i.get(`/projects/${t}/sandboxes`))}async function po(t){return a(await i.get(`/projects/${t}/snapshots`))}async function Xt(t){return a(await i.get(`/projects/${t}/sandbox-health`,{showErrors:!1,timeout:15e3}))}async function go(t,e){return a(await i.post(`/projects/${t}/snapshots/rebuild`,e?{slug:e}:{}))}async function mo(t){return a(await i.post(`/projects/${t}/snapshots/fix-with-agent`,{}))}async function fo(t,e){return a(await i.post(`/projects/${t}/sandbox-templates`,e))}async function yo(t,e,n){return a(await i.patch(`/projects/${t}/sandbox-templates/${e}`,n))}async function ho(t,e){return a(await i.delete(`/projects/${t}/sandbox-templates/${e}`))}async function bo(t,e){return a(await i.post(`/projects/${t}/sandbox-templates/${e}/build`,{}))}async function xo(t){return a(await i.get(`/projects/${t}/sandboxes`))}async function _o(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 a(await i.get(`/projects/${t}/files${r}`,{showErrors:!1}))}async function Po(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)),a(await i.get(`/projects/${t}/files/search?${r.toString()}`))}async function ko(t,e,n){let r=new URLSearchParams({path:e});return n&&r.set("ref",n),a(await i.get(`/projects/${t}/files/content?${r.toString()}`,{showErrors:!1}))}async function wo(t,e,n){let r=new URLSearchParams;e&&r.set("ref",e),n&&r.set("path",n);let s=r.toString()?`?${r.toString()}`:"",o=await te(),u=`${D().backendUrl||""}/projects/${t}/files/archive${s}`,p=await fetch(u,{method:"GET",headers:o?{Authorization:`Bearer ${o}`}:{}});if(!p.ok){let d=await p.text().catch(()=>"");throw new Error(d||`Failed to download (HTTP ${p.status})`)}return await p.blob()}async function So(t){return a(await i.get(`/projects/${t}/branches`))}async function vo(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 a(await i.get(`/projects/${t}/commits${r}`))}async function Co(t,e){return a(await i.get(`/projects/${t}/commits/${encodeURIComponent(e)}`))}async function Ro(t,e,n){let r=new URLSearchParams;n?.path&&r.set("path",n.path);let s=r.toString()?`?${r.toString()}`:"";return a(await i.get(`/projects/${t}/commits/${encodeURIComponent(e)}/diff${s}`))}async function Ao(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)),a(await i.get(`/projects/${t}/files/history?${r.toString()}`))}async function To(t,e){let n=new URLSearchParams({from:e.from,into:e.into});return a(await i.get(`/projects/${t}/version-diff?${n.toString()}`))}async function Io(t,e){let n=e?`?status=${e}`:"";return a(await i.get(`/projects/${t}/change-requests${n}`,{showErrors:!1,timeout:15e3}))}async function Eo(t,e){return a(await i.get(`/projects/${t}/change-requests/${e}`))}async function jo(t,e){return a(await i.get(`/projects/${t}/change-requests/${e}/diff`))}async function $o(t,e){return a(await i.get(`/projects/${t}/change-requests/${e}/merge-preview`))}async function Do(t,e){return a(await i.post(`/projects/${t}/change-requests`,e))}async function qo(t,e,n){return a(await i.post(`/projects/${t}/change-requests/${e}/merge`,n??{},{showErrors:!1}))}async function Mo(t,e){return a(await i.post(`/projects/${t}/change-requests/${e}/close`,{}))}async function Oo(t,e){return a(await i.post(`/projects/${t}/change-requests/${e}/reopen`,{}))}async function Uo(t,e,n){return a(await i.post(`/projects/${t}/change-requests/${e}/request-changes`,{feedback:n}))}async function Fo(t,e,n){return a(await i.post(`/projects/${t}/sessions/${e}/commit-push`,n??{}))}var Lo=new Set;function ot(t){t&&Lo.add(t)}function Go(t){return!!t&&Lo.has(t)}function wf(t){t&&Lo.delete(t)}async function Ge(t,e){let n=new URLSearchParams;e?.scope&&e.scope!=="visible"&&n.set("scope",e.scope);let r=n.size>0?`?${n}`:"";return a(await i.get(`/projects/${t}/sessions${r}`))}async function Bo(t,e,n){return a(await i.put(`/projects/${t}/sessions/${e}/sharing`,n))}async function No(t,e){return a(await i.get(`/projects/${t}/sessions/${e}/previews`))}async function Ko(t,e){return a(await i.get(`/projects/${t}/sessions/${e}/public-shares`,{showErrors:!1}))}async function Ho(t,e,n){return a(await i.post(`/projects/${t}/sessions/${e}/public-shares`,n))}async function Wo(t,e,n){return a(await i.delete(`/projects/${t}/sessions/${e}/public-shares/${n}`))}async function Be(t,e){let n=a(await i.post(`/projects/${t}/sessions`,e??{}));return e?.initial_prompt||ot(n?.session_id),n}async function zo(t,e){let n=e?.excludeSessionId?{exclude_session_id:e.excludeSessionId}:{},r=a(await i.post(`/projects/${t}/sessions/warm`,n,{showErrors:!1}));return r.reused||ot(r.session.session_id),r}async function Vo(t,e){let n=a(await i.post(`/projects/${t}/sessions/warm/claim`,e,{showErrors:!1}));return ot(n.session_id),n}async function Yt(t,e,n){return a(await i.get(`/projects/${t}/sessions/${e}`,{showErrors:n?.showErrors}))}async function Jo(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 o=s.toString();return a(await i.get(`/projects/${t}/sessions/${e}/audit${o?`?${o}`:""}`,{showErrors:r?.showErrors}))}async function Xo(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 a(await i.get(`/projects/${t}/sessions/${e}/transcript${s?`?${s}`:""}`))}async function Yo(t,e){return a(await i.get(`/projects/${t}/sessions/${e}/turn`))}async function Qo(t,e,n){return a(await i.post(`/projects/${t}/sessions/${e}/prompts`,{client_message_id:n.clientMessageId,message_id:n.messageId,parts:n.parts,...n.overrides?{overrides:n.overrides}:{},...n.remintOnDelivery?{remint_on_delivery:!0}:{},...typeof n.clientSentAtMs=="number"?{client_sent_at_ms:Math.trunc(n.clientSentAtMs)}:{}}))}async function Zo(t,e){return a(await i.get(`/projects/${t}/sessions/${e}/prompts`))}async function ea(t,e,n){return a(await i.delete(`/projects/${t}/sessions/${e}/prompts/${n}`)).removed}async function ta(t,e,n){return a(await i.post(`/projects/${t}/sessions/${e}/prompts/${n}/retry`,{}))}async function na(t,e,n){return a(await i.post(`/projects/${t}/sessions/${e}/prompts/hold`,{held:n}))}async function ra(t,e,n){return a(await i.patch(`/projects/${t}/sessions/${e}`,n))}async function sa(t,e){return a(await i.delete(`/projects/${t}/sessions/${e}`))}async function at(t,e){return a(await i.post(`/projects/${t}/sessions/${e}/restart`,{}))}async function ct(t,e){return a(await i.post(`/projects/${t}/sessions/${e}/stop`,{}))}async function ia(t,e){return a(await i.get(`/projects/${t}/sessions/${encodeURIComponent(e)}/config`,{showErrors:!1}))}function Sf(t){let e=t.split(`
|
|
13
|
+
`);let x=Ef(h);if(x){if(e(x),x.type==="error")throw new C(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 $f(){try{return a(await i.get("/projects/managed-git/status",{showErrors:!1}))}catch{return{configured:!1,provider:"github"}}}async function Xt(t,e){return a(await i.patch(`/projects/${t}`,e))}async function ai(t,e,n){return a(await i.patch(`/projects/${t}/features`,{feature:e,enabled:n}))}async function ci(t,e,n){return a(await i.patch(`/projects/${t}/experimental`,{feature:e,enabled:n}))}async function li(t,e){return a(await i.patch(`/projects/${t}/sandbox-provider`,{provider:e}))}async function Mf(t,e){return a(await i.get(`/projects/${t}/sandbox-provider/transition`,{showErrors:!1,...e}))}async function qf(t,e){return a(await i.patch(`/projects/${t}/warm-pool`,e))}async function ui(t,e){return a(await i.patch(`/projects/${t}/onboarding`,{completed:e}))}async function Df(t,e){return a(await i.patch(`/projects/${t}/onboarding`,{profile:e}))}async function Qt(t){return a(await i.delete(`/projects/${t}`))}async function Of(t,e){return Be(t,`/v1/projects?account_id=${encodeURIComponent(e)}`)}async function Uf(t,e){if(!t.backendUrl||!t.accessToken)return{ok:!1,limitReached:!1};let n=js(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 pi(t){return a(await i.post("/projects/link-repository",t,{showErrors:!1}))}async function di(t){return a(await i.get(`/projects/github/installation?account_id=${encodeURIComponent(t)}`,{showErrors:!1}))}async function gi(t){return a(await i.get(`/projects/github/installations?account_id=${encodeURIComponent(t)}`,{showErrors:!1}))}async function mi(t){return a(await i.post("/projects/github/installations/linkable",t,{showErrors:!1}))}async function fi(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)),a(await i.get(`/projects/github/repositories?${r.toString()}`,{showErrors:!1}))}async function yi(t,e,n){let r=new URLSearchParams({account_id:t,installation_id:e,repo_full_name:n});return a(await i.get(`/projects/github/repository-branches?${r.toString()}`,{showErrors:!1}))}async function hi(t){return a(await i.post("/projects/github/installation",t,{showErrors:!1}))}async function bi(t){return a(await i.post("/projects/github/installations/link",t,{showErrors:!1}))}async function xi(t,e){let n=new URLSearchParams({account_id:t});return e&&n.set("installation_id",e),a(await i.delete(`/projects/github/installation?${n.toString()}`))}async function Ff(t,e){return a(await i.post(`/projects/${t}/access-requests`,{message:e?.trim()||void 0},{showErrors:!1}))}async function _i(t,e){return a(await i.get(`/projects/${t}/access-requests`,e))}async function Pi(t,e,n="member"){return a(await i.post(`/projects/${t}/access-requests/${e}/approve`,{role:n}))}async function ki(t,e){return a(await i.post(`/projects/${t}/access-requests/${e}/reject`,{}))}async function wi(t){return a(await i.get(`/projects/${t}/access`))}async function Si(t,e,n){return a(await i.put(`/projects/${t}/access/${e}`,{role:n}))}async function vi(t,e){return a(await i.delete(`/projects/${t}/access/${e}`))}function Lf(t){return"status"in t&&t.status==="invited"}async function Ci(t,e,n,r){return a(await i.post(`/projects/${t}/access/invite`,{email:e,role:n,...r!==void 0?{expires_at:r}:{}}))}async function Ai(t){return a(await i.get(`/projects/${t}/access/pending-invites`))}async function Ri(t,e){return a(await i.delete(`/projects/${t}/access/pending-invites/${e}`))}async function Ti(t,e){return a(await i.post(`/projects/${t}/access/pending-invites/${e}/resend`))}async function Ii(t){return a(await i.get(`/projects/${t}/group-grants`))}async function Ei(t,e,n,r){return a(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 ji(t,e,n,r){return a(await i.patch(`/projects/${t}/group-grants/${e}`,r===void 0?{role:n}:{role:n,expires_at:r}))}async function $i(t,e){return a(await i.delete(`/projects/${t}/group-grants/${e}`))}async function Mi(t){return a(await i.get(`/projects/${t}/resource-grants`))}async function qi(t,e){return a(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 Di(t,e){return a(await i.delete(`/projects/${t}/resource-grants/${e}`))}async function Oi(t,e){return a(await i.get(`/projects/${t}/approvals`,{showErrors:e?.showErrors}))}async function Ui(t,e){return a(await i.get(`/projects/${t}/approvals/needs-input`,{showErrors:e?.showErrors}))}async function Fi(t,e,n){return a(await i.post(`/projects/${t}/approvals/${e}`,{decision:n}))}async function Li(t){return a(await i.get(`/projects/${t}/secrets`,{showErrors:!1}))}async function Gi(t,e){return a(await i.post(`/projects/${t}/secrets`,e))}async function Bi(t,e,n,r={}){return a(await i.put(`/projects/${t}/secrets/${encodeURIComponent(e)}/strategy`,{strategy:n,...r}))}async function Ni(t,e,n){return a(await i.post(`/projects/${t}/secrets/${encodeURIComponent(e)}/broker`,n))}async function Ki(t,e,n){return a(await i.post(`/projects/${t}/oauth/${e}/start`,{sharing:n?.sharing}))}async function Hi(t,e,n){return a(await i.post(`/projects/${t}/oauth/${e}/poll`,{flow_id:n}))}async function Wi(t,e){return a(await i.delete(`/projects/${t}/oauth/${encodeURIComponent(e)}`))}async function zi(t,e){return a(await i.put(`/projects/${t}/git-credential`,e))}async function Vi(t,e){return a(await i.delete(`/projects/${t}/secrets/${encodeURIComponent(e)}`))}async function Ji(t,e,n){return a(await i.put(`/projects/${t}/secrets/${encodeURIComponent(e)}/personal`,n))}async function Xi(t,e){return a(await i.delete(`/projects/${t}/secrets/${encodeURIComponent(e)}/personal`))}function Qi(t,e){return t?`/connectors/projects/${encodeURIComponent(t)}/${e}`:`/connectors/${e}`}async function Yt(t){return a(await i.get(Qi(t,"catalog"))).connectors??[]}async function lt(t){let e=[];for(let n of await Yt(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 Yi(t,e="",n={}){let r=e.trim().toLowerCase(),s=r.split(/\s+/).filter(Boolean),o=[],u=[];for(let p of await lt(t)){let d=`${p.tool} ${p.description}`.toLowerCase();!r||d.includes(r)?o.push(p):s.every(f=>d.includes(f))&&u.push(p)}return[...o,...u].slice(0,n.limit??20)}async function Zi(t,e){return(await lt(t)).find(n=>n.tool===e)??null}function Gf(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 eo(t,e,n={}){let{connector:r,action:s}=Gf(e);return a(await i.post(Qi(t,"call"),{connector:r,action:s,args:n}))}function Bf(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 Nf(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 to(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 o={"Content-Type":s,"X-Kortix-Attachment-Filename":encodeURIComponent(r),"X-Kortix-Attachment-Disposition":n.contentDisposition??"attachment"};n.contentId?.trim()&&(o["X-Kortix-Attachment-Content-Id"]=encodeURIComponent(n.contentId.trim()));let u=Nf(I().backendUrl),p=Qi(t,"attachments"),d=await M(`${u}${p}`,{method:"POST",headers:o,body:e},{timeoutMs:6e4}),f=await d.text(),m=null;if(f)try{m=JSON.parse(f)}catch{m=f}if(!d.ok)throw new C(Bf(m,d.status),{status:d.status,code:String(m&&typeof m=="object"?m.code??d.status:d.status),details:m,response:d,endpoint:p});return m}async function no(t){return a(await i.get(`/projects/${t}/connections`))}async function ro(t){return a(await i.get(`/projects/${t}/connections/all`))}async function so(t,e){return a(await i.post(`/projects/${t}/connections`,e))}async function io(t,e){return a(await i.post(`/projects/${t}/connections/me`,e))}async function oo(t,e,n){return a(await i.put(`/projects/${t}/connections/${e}/credential`,n))}function ae(t,e,n){return`/projects/${t}/connections/${e}/oauth2/${n}`}async function Kf(t,e){return a(await i.post(`/projects/${t}/connectors/${encodeURIComponent(e)}/oauth2/connection`,{}))}async function Hf(t,e,n){return a(await i.put(ae(t,e,"application"),n))}async function Wf(t,e){return a(await i.get(ae(t,e,"application")))}async function zf(t,e,n){return a(await i.post(ae(t,e,"discover"),n))}async function Vf(t,e,n={}){return a(await i.post(ae(t,e,"discover-resource"),n))}async function Jf(t,e,n){return a(await i.post(ae(t,e,"register"),n))}async function Xf(t,e,n){return a(await i.post(ae(t,e,"authorize"),n))}async function Qf(t,e,n){return a(await i.post(ae(t,e,"device"),n))}async function Yf(t,e,n){return a(await i.post(ae(t,e,`device/${encodeURIComponent(n)}`),{}))}async function Zf(t,e){return a(await i.get(ae(t,e,"status")))}async function ao(t,e){return a(await i.put(`/projects/${t}/connections/${e}/revoke`,{}))}async function co(t,e){return a(await i.put(`/projects/${t}/connections/${e}/activate`,{}))}async function lo(t,e){return a(await i.put(`/projects/${t}/connections/${e}/default`,{}))}async function uo(t,e,n={}){return a(await i.post(`/projects/${t}/connections/${e}/connect`,n))}async function po(t,e){return a(await i.post(`/projects/${t}/connections/${e}/connect/finalize`,{}))}async function go(t){return a(await i.get(`/connectors/projects/${t}/connectors`,{showErrors:!1}))}async function mo(t){return a(await i.post(`/connectors/projects/${t}/connectors/sync`,{}))}async function fo(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/credential-mode`,{mode:n}))}async function yo(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/authorization-strategy`,{authorization_strategy:n}))}async function ho(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/sensitive`,{sensitive:n}))}async function bo(t,e){return a(await i.get(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/policies`))}async function xo(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/policies`,{policies:n}))}async function ey(t,e){throw new Error("Connection-specific policies were removed. Use getConnectorPolicies(projectId, slug).")}async function ty(t,e,n){throw new Error("Connection-specific policies were removed. Use setConnectorPolicies(projectId, slug, policies).")}async function _o(t,e){return a(await i.get(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/config`))}async function Po(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/name`,{name:n}))}async function Tp(t,e){return a(await i.post(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/connect`,{}))}var ko=Tp;async function ny(t,e){return a(await i.get(`/connectors/projects/${t}/sessions/${encodeURIComponent(e)}/connect-requests`)).connectors??[]}async function wo(t,e){return a(await i.post(`/connectors/projects/${t}/connectors`,e))}async function So(t,e){return a(await i.post(`/connectors/projects/${t}/connectors/auth-discovery`,e))}async function vo(t,e){return a(await i.delete(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}`))}async function Co(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 o=s.toString();return a(await i.get(`/connectors/projects/${t}/pipedream/apps${o?`?${o}`:""}`))}async function Ao(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 a(await i.get(`/connectors/projects/${t}/pipedream/sections${r?`?${r}`:""}`))}async function ry(t,e={}){let n=new URLSearchParams;e.q&&n.set("q",e.q),e.category&&n.set("category",e.category),e.cursor&&n.set("cursor",e.cursor),e.limit&&n.set("limit",String(e.limit));let r=n.toString(),s=a(await i.get(`/connectors/projects/${t}/connect/toolkits${r?`?${r}`:""}`));if("toolkits"in s)return s;let o=s.cursor?.trim()||void 0;return{provider:"composio",toolkits:s.items,nextCursor:o,hasMore:!!o}}async function Zt(t,e,n){let r=new URLSearchParams;e&&r.set("q",e),n&&r.set("cursor",n);let s=r.toString();return a(await i.get(`/connectors/projects/${t}/discover/connectors${s?`?${s}`:""}`))}async function en(t,e){let n=new URLSearchParams({id:e});return a(await i.get(`/connectors/projects/${t}/discover/connectors/detail?${n.toString()}`))}var sy=Zt,iy=en;async function Ro(){return a(await i.get("/connectors/connect-status"))}async function To(t,e,n){let r=typeof n=="string"?{value:n}:n;return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/credential`,r))}async function oy(t,e,n){return a(await i.put(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/secret-binding`,{secret_identifier:n}))}async function Ip(t,e){return a(await i.post(`/connectors/projects/${t}/connectors/${encodeURIComponent(e)}/connect/finalize`,{}))}var Io=Ip;async function Eo(t){return a(await i.get(`/connectors/projects/${t}/policies`))}async function jo(t,e,n){return a(await i.put(`/connectors/projects/${t}/policies`,{policies:e,defaultMode:n}))}async function $o(t){return a(await i.get(`/projects/${t}/sandboxes`))}async function Mo(t){return a(await i.get(`/projects/${t}/snapshots`))}async function tn(t){return a(await i.get(`/projects/${t}/sandbox-health`,{showErrors:!1,timeout:15e3}))}async function qo(t,e){return a(await i.post(`/projects/${t}/snapshots/rebuild`,e?{slug:e}:{}))}async function Do(t){return a(await i.post(`/projects/${t}/snapshots/fix-with-agent`,{}))}async function Oo(t,e){return a(await i.post(`/projects/${t}/sandbox-templates`,e))}async function Uo(t,e,n){return a(await i.patch(`/projects/${t}/sandbox-templates/${e}`,n))}async function Fo(t,e){return a(await i.delete(`/projects/${t}/sandbox-templates/${e}`))}async function Lo(t,e){return a(await i.post(`/projects/${t}/sandbox-templates/${e}/build`,{}))}async function Go(t){return a(await i.get(`/projects/${t}/sandboxes`))}async function Bo(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 a(await i.get(`/projects/${t}/files${r}`,{showErrors:!1}))}async function No(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)),a(await i.get(`/projects/${t}/files/search?${r.toString()}`))}async function Ko(t,e,n){let r=new URLSearchParams({path:e});return n&&r.set("ref",n),a(await i.get(`/projects/${t}/files/content?${r.toString()}`,{showErrors:!1}))}async function Ho(t,e,n){let r=new URLSearchParams;e&&r.set("ref",e),n&&r.set("path",n);let s=r.toString()?`?${r.toString()}`:"",o=await ne(),u=`${I().backendUrl||""}/projects/${t}/files/archive${s}`,p=await fetch(u,{method:"GET",headers:o?{Authorization:`Bearer ${o}`}:{}});if(!p.ok){let d=await p.text().catch(()=>"");throw new Error(d||`Failed to download (HTTP ${p.status})`)}return await p.blob()}async function Wo(t){return a(await i.get(`/projects/${t}/branches`))}async function zo(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 a(await i.get(`/projects/${t}/commits${r}`))}async function Vo(t,e){return a(await i.get(`/projects/${t}/commits/${encodeURIComponent(e)}`))}async function Jo(t,e,n){let r=new URLSearchParams;n?.path&&r.set("path",n.path);let s=r.toString()?`?${r.toString()}`:"";return a(await i.get(`/projects/${t}/commits/${encodeURIComponent(e)}/diff${s}`))}async function Xo(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)),a(await i.get(`/projects/${t}/files/history?${r.toString()}`))}async function Qo(t,e){let n=new URLSearchParams({from:e.from,into:e.into});return a(await i.get(`/projects/${t}/version-diff?${n.toString()}`))}async function Yo(t,e){let n=e?`?status=${e}`:"";return a(await i.get(`/projects/${t}/change-requests${n}`,{showErrors:!1,timeout:15e3}))}async function Zo(t,e){return a(await i.get(`/projects/${t}/change-requests/${e}`))}async function ea(t,e){return a(await i.get(`/projects/${t}/change-requests/${e}/diff`))}async function ta(t,e){return a(await i.get(`/projects/${t}/change-requests/${e}/merge-preview`))}async function na(t,e){return a(await i.post(`/projects/${t}/change-requests`,e))}async function ra(t,e,n){return a(await i.post(`/projects/${t}/change-requests/${e}/merge`,n??{},{showErrors:!1}))}async function sa(t,e){return a(await i.post(`/projects/${t}/change-requests/${e}/close`,{}))}async function ia(t,e){return a(await i.post(`/projects/${t}/change-requests/${e}/reopen`,{}))}async function oa(t,e,n){return a(await i.post(`/projects/${t}/change-requests/${e}/request-changes`,{feedback:n}))}async function aa(t,e,n){return a(await i.post(`/projects/${t}/sessions/${e}/commit-push`,n??{}))}var ca=new Set;function ut(t){t&&ca.add(t)}function la(t){return!!t&&ca.has(t)}function ay(t){t&&ca.delete(t)}async function Ne(t,e){let n=new URLSearchParams;e?.scope&&e.scope!=="visible"&&n.set("scope",e.scope);let r=n.size>0?`?${n}`:"";return a(await i.get(`/projects/${t}/sessions${r}`))}async function ua(t,e,n){return a(await i.put(`/projects/${t}/sessions/${e}/sharing`,n))}async function pa(t,e){return a(await i.get(`/projects/${t}/sessions/${e}/previews`))}async function da(t,e){return a(await i.get(`/projects/${t}/sessions/${e}/public-shares`,{showErrors:!1}))}async function ga(t,e,n){return a(await i.post(`/projects/${t}/sessions/${e}/public-shares`,n))}async function ma(t,e,n){return a(await i.delete(`/projects/${t}/sessions/${e}/public-shares/${n}`))}async function Ke(t,e){let n=a(await i.post(`/projects/${t}/sessions`,e??{}));return e?.initial_prompt||ut(n?.session_id),n}async function fa(t,e){let n=e?.excludeSessionId?{exclude_session_id:e.excludeSessionId}:{},r=a(await i.post(`/projects/${t}/sessions/warm`,n,{showErrors:!1}));return r.reused||ut(r.session.session_id),r}async function ya(t,e){let n=a(await i.post(`/projects/${t}/sessions/warm/claim`,e,{showErrors:!1}));return ut(n.session_id),n}async function nn(t,e,n){return a(await i.get(`/projects/${t}/sessions/${e}`,{showErrors:n?.showErrors}))}async function ha(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 o=s.toString();return a(await i.get(`/projects/${t}/sessions/${e}/audit${o?`?${o}`:""}`,{showErrors:r?.showErrors}))}async function ba(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 a(await i.get(`/projects/${t}/sessions/${e}/transcript${s?`?${s}`:""}`))}async function xa(t,e,n){let r=new URLSearchParams({shape:"sync"});return n?.limit!=null&&r.set("limit",String(n.limit)),a(await i.get(`/projects/${t}/sessions/${e}/transcript?${r.toString()}`,{showErrors:!1}))}async function _a(t,e){return a(await i.get(`/projects/${t}/sessions/${e}/turn`))}async function cy(t,e,n){let r=new URLSearchParams;n?.transcript!=null&&r.set("transcript",String(n.transcript));let s=r.toString();return a(await i.get(`/projects/${t}/sessions/${e}/snapshot${s?`?${s}`:""}`,{signal:n?.signal,showErrors:!1}))}async function Pa(t,e,n){return a(await i.post(`/projects/${t}/sessions/${e}/prompts`,{client_message_id:n.clientMessageId,message_id:n.messageId,parts:n.parts,...n.overrides?{overrides:n.overrides}:{},...n.remintOnDelivery?{remint_on_delivery:!0}:{},...typeof n.clientSentAtMs=="number"?{client_sent_at_ms:Math.trunc(n.clientSentAtMs)}:{}}))}async function ka(t,e){return a(await i.get(`/projects/${t}/sessions/${e}/prompts`))}async function wa(t,e,n){return a(await i.delete(`/projects/${t}/sessions/${e}/prompts/${n}`)).removed}async function Sa(t,e,n){return a(await i.post(`/projects/${t}/sessions/${e}/prompts/${n}/retry`,{}))}async function va(t,e,n){return a(await i.post(`/projects/${t}/sessions/${e}/prompts/hold`,{held:n}))}async function Ca(t,e,n){return a(await i.patch(`/projects/${t}/sessions/${e}`,n))}async function Aa(t,e){return a(await i.delete(`/projects/${t}/sessions/${e}`))}async function pt(t,e){return a(await i.post(`/projects/${t}/sessions/${e}/restart`,{}))}async function dt(t,e){return a(await i.post(`/projects/${t}/sessions/${e}/stop`,{}))}async function Ra(t,e){return a(await i.get(`/projects/${t}/sessions/${encodeURIComponent(e)}/config`,{showErrors:!1}))}function ly(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
|
|
15
|
+
`))}catch(n){throw new Error("reloadProjectSessionConfigStream received an invalid SSE frame",{cause:n})}}async function Ta(t,e,n={}){return a(await i.post(`/projects/${t}/sessions/${encodeURIComponent(e)}/reload`,n,{showErrors:!1}))}async function Ia(t,e,n,r,s={}){let o=await i.postStream(`/projects/${t}/sessions/${encodeURIComponent(e)}/reload-stream`,n,s);if(!o.ok){let m=await o.json().catch(()=>null);throw new C(m?.error||`Reload failed: HTTP ${o.status}`,{status:o.status,code:m?.code,data:m})}let u=o.body?.getReader();if(!u)throw new Error("Reload stream is unavailable on this runtime (no response body)");let p=new TextDecoder,d="",f=null;try{for(;;){let{done:m,value:h}=await u.read();if(m)break;d+=p.decode(h,{stream:!0});let x=d.indexOf(`
|
|
16
16
|
|
|
17
|
-
`);for(;x!==-1;){let
|
|
17
|
+
`);for(;x!==-1;){let P=d.slice(0,x);d=d.slice(x+2),x=d.indexOf(`
|
|
18
18
|
|
|
19
|
-
`);let I=Sf(C);if(I){if(r(I),I.type==="error")throw new v(I.error,{status:I.status,code:I.code,data:{reason:I.reason}});I.type==="done"&&(f=I.result)}}}}finally{u.cancel().catch(()=>{})}if(!f)throw new Error("Reload stream ended without a result");return f}async function ca(t,e){return a(await i.get(`/projects/${t}/sessions/${encodeURIComponent(e)}/scope`))}async function la(t,e,n){return a(await i.put(`/projects/${t}/sessions/${encodeURIComponent(e)}/scope`,n))}async function ua(t,e,n){return a(await i.put(`/projects/${t}/sessions/${encodeURIComponent(e)}/model`,{opencode_model:n}))}async function pa(t){return a(await i.get(`/projects/${t}/triggers`))}async function da(t,e){return a(await i.post(`/projects/${t}/triggers`,e))}async function ga(t,e,n){return a(await i.patch(`/projects/${t}/triggers/${e}`,n))}async function ma(t,e){return a(await i.delete(`/projects/${t}/triggers/${e}`))}async function fa(t,e){return a(await i.patch(`/projects/${t}/triggers/activation`,{paused:e}))}async function ya(t,e){return a(await i.post(`/projects/${t}/triggers/${e}/fire`,{}))}var me=new Map;function ha(t,e){return`${t}::${e}`}function Yu(t,e){me.delete(t),me.set(t,e)}function Qu(t,e){let n=ha(t,e),r=me.get(n);return r&&Yu(n,r),r}function Zu(t,e,n){let r=ha(t,e);if(!me.has(r)&&me.size>=512){let s=me.keys().next().value;s!==void 0&&me.delete(s)}Yu(r,n)}function ep(t,e){me.delete(ha(t,e))}function vf(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 Qt=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 Cf(t){return t instanceof Error&&t.name==="SessionStartError"}function Rf(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 Qt(s,{status:n,code:r,terminal:!0}):null}async function Re(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=Rf(s.error);if(p&&!(p.status===404&&Go(e)))throw p;return null}let o=s.data,u=o.sandbox?.external_id;return o.stage==="ready"&&u&&o.opencode_session_id&&Zu(t,e,{opencodeSessionId:o.opencode_session_id,runtimeUrl:At(u),sandboxId:u}),o}function Af(t,e){return["session-start",t,e]}async function ba(t){return a(await i.get(`/projects/${t}/model-defaults`))}async function xa(t,e){return a(await i.put(`/projects/${t}/model-defaults`,e))}async function _a(t,e){let n=new URLSearchParams({scope:e.scope,...e.agentName?{agentName:e.agentName}:{}}).toString();return a(await i.delete(`/projects/${t}/model-defaults?${n}`))}async function Tf(t,e){return a(await i.put(`/projects/${t}/model-enablement`,{modelOverrides:e}))}async function Pa(t,e,n){let r=Ef(n);return a(await i.put(`/projects/${t}/agents/${encodeURIComponent(e)}/scope`,r))}function tp(t){let e=[];for(let n of t){let r=n.trim();r&&!e.includes(r)&&e.push(r)}return e}function If(t,e){if(t.length!==e.length)return!1;let n=new Set(e);return t.every(r=>n.has(r))}function Ef(t){let e=t.connectors_required?tp(t.connectors_required):void 0,n=t.connectors_personal?tp(t.connectors_personal):void 0;if(e&&n&&!If(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 jf(t,e){let n=a(await i.get(`/projects/${t}/agents/${encodeURIComponent(e)}/config`));return{...n,block:n.block?ka(n.block):null}}async function $f(t,e,n){let r=ka(n),s=a(await i.put(`/projects/${t}/agents/${encodeURIComponent(e)}/config`,r));return{...s,block:s.block?ka(s.block):null}}function np(t){let e=[];for(let n of t){let r=n.trim();r&&!e.includes(r)&&e.push(r)}return e}function Df(t,e){if(t.length!==e.length)return!1;let n=new Set(e);return t.every(r=>n.has(r))}function ka(t){let e=t.connectors_required?np(t.connectors_required):void 0,n=t.connectors_personal?np(t.connectors_personal):void 0;if(e&&n&&!Df(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 qf(t,e,n){return a(await i.post(`/projects/${t}/secrets/${encodeURIComponent(e)}/grant`,{agent:n}))}async function wa(t,e){return a(await i.put(`/projects/${t}/default-agent`,{agent:e}))}function Zt(){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 Mf(t){let e=t.trim().toLowerCase();return e===""||e==="free"||e==="none"?"free":e==="enterprise"?"enterprise":"team"}function Of(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??Zt(),r=(n.subscription?.tier_key||n.tier?.name||"none").toString(),s=(n.tier?.display_name||"").trim()||r;return{family:Mf(r),label:s,sublabel:null,isGrandfathered:!1}}async function Sa(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}),o=s.error?.status===404&&/billing is not enabled/i.test(s.error.message||"");if(s.error&&s.error.status!==401&&!o)throw s.error;return s.error?Zt():s.data}async function va(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}),o=s.error?.status===404&&/billing is not enabled/i.test(s.error.message||"");if(s.error&&s.error.status!==401&&!o)throw s.error;return s.error?Zt():s.data}async function Ca(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 a(await i.get(`/billing/transactions${n?`?${n}`:""}`))}async function Ra(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 a(await i.get(`/billing/transactions/summary${n?`?${n}`:""}`))}async function Aa(){return a(await i.get("/billing/credit-breakdown"))}async function Ta(t){let e=t!=null?`?days=${t}`:"";return a(await i.get(`/billing/usage-history${e}`))}async function Ia(){return a(await i.get("/billing/tier-configurations"))}async function Uf(t){let e=t.accountId?`?account_id=${encodeURIComponent(t.accountId)}`:"";return Le(t,`/v1/billing/account-state${e}`)}async function Ea(t){return a(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 ja(t,e){return a(await i.post("/billing/confirm-checkout-session",{account_id:e,session_id:t}),"Failed to confirm checkout session")}async function $a(t,e){return a(await i.post("/billing/create-portal-session",{account_id:e,return_url:t}),"Failed to create portal session")}async function Da(t,e){return a(await i.post("/billing/cancel-subscription",{account_id:e,feedback:t}),"Failed to cancel subscription")}async function qa(t){return a(await i.post("/billing/reactivate-subscription",{account_id:t}),"Failed to reactivate subscription")}async function Ma(t,e,n){return a(await i.post("/billing/schedule-downgrade",{account_id:n,target_tier_key:t,commitment_type:e}),"Failed to schedule downgrade")}async function Oa(t){return a(await i.post("/billing/cancel-scheduled-change",{account_id:t}),"Failed to cancel scheduled change")}async function Ua(t,e){let n=new URLSearchParams({new_price_id:t});return e&&n.set("account_id",e),a(await i.get(`/billing/proration-preview?${n.toString()}`),"Failed to load proration preview")}async function Fa(t){return a(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 La(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return a(await i.get(`/billing/auto-topup/settings${e}`),"Failed to load auto-topup settings")}async function Ga(t){return a(await i.post("/billing/auto-topup/configure",{account_id:t.accountId,enabled:t.enabled,threshold:t.threshold,amount:t.amount},{showErrors:!1}),"Failed to configure auto-topup")}async function Ff(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return a(await i.get(`/billing/auto-topup/setup-status${e}`,{timeout:8e3,showErrors:!1}),"Failed to load auto-topup setup status")}async function Lf(t){return a(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 Gf(t){return a(await i.post("/billing/claim-per-seat",{account_id:t}),"Failed to switch to per-seat billing")}async function Bf(t){return a(await i.post("/billing/sync-subscription",{account_id:t}),"Failed to sync subscription")}async function Ba(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 a(await i.get(`/usage${n?`?${n}`:""}`))}function Ka(t,e){e.accountId&&t.set("account_id",e.accountId),e.projectId&&t.set("project_id",e.projectId)}function en(t,e){e.from&&t.set("from",e.from),e.to&&t.set("to",e.to)}function tn(t){return t.size>0?`?${t}`:""}async function Ha(t={}){let e=new URLSearchParams;return Ka(e,t),t.ownerId&&e.set("owner_id",t.ownerId),en(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)),a(await i.get(`/usage/session-costs${tn(e)}`))}async function nn(t,e={}){let n=new URLSearchParams;return Ka(n,e),a(await i.get(`/usage/session-costs/${encodeURIComponent(t)}${tn(n)}`))}async function Nf(t={}){let e=new URLSearchParams;return t.accountId&&e.set("account_id",t.accountId),en(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)),a(await i.get(`/usage/cost-by-project${tn(e)}`))}async function Kf(t={}){let e=new URLSearchParams;return Ka(e,t),t.sessionId&&e.set("session_id",t.sessionId),en(e,t),a(await i.get(`/usage/cost-summary${tn(e)}`))}function Na(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)}en(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`${D().backendUrl||""}${r}?${n}`}async function Hf(t,e={}){let n=Na(t==="projects"?"projects":"sessions",e),r=await te(),s=await fetch(n,{method:"GET",headers:r?{Authorization:`Bearer ${r}`}:{}});if(!s.ok){let d=await s.text().catch(()=>"");throw new Error(d||`Failed to export CSV (HTTP ${s.status})`)}let o=s.headers.get("x-kortix-row-cap"),u=o!=null?Number(o):NaN;return{blob:await s.blob(),rowCap:Number.isFinite(u)?u:null}}async function rp(t,e){return a(await i.post(`/channels/${t}/identity/bind`,{token:e}),"Failed to connect your account")}function Wf(t){return rp("slack",t)}function zf(t){return rp("teams",t)}async function Wa(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/installation`,{showErrors:!1});return e.success?e.data??null:null}async function za(t,e){return a(await i.post(`/projects/${encodeURIComponent(t)}/channels/slack/connect`,e,{showErrors:!1}),"Failed to connect")}var Vf={oauth_available:!1,install_url:null};async function Va(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/mode`,{showErrors:!1});return!e.success||!e.data?Vf:e.data}async function Ja(t){return a(await i.get(`/webhooks/slack/${encodeURIComponent(t)}/manifest`,{showErrors:!1}),"Failed to load Slack manifest")}async function Xa(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 Ya(t,e){return a(await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/file?url=${encodeURIComponent(e)}`,{showErrors:!1}),"Failed to download Slack file")}async function Qa(t,e){return a(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 Za(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 Jf={provider:"agentmail",managed_available:!1};async function ec(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?Za(r.data):null}async function tc(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/email/mode`,{showErrors:!1});return!e.success||!e.data?Jf:e.data}async function nc(t,e){let n=a(await i.post(`/projects/${encodeURIComponent(t)}/channels/email/connect`,e,{showErrors:!1}),"Failed to connect email");return Za(n)}async function rc(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 sc(t,e,n){let r=a(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 Za(r)}async function Xf(t){return a(await i.get(`/projects/${encodeURIComponent(t)}/channels/bindings`,{showErrors:!1}),"Failed to load channel bindings")}async function Yf(t,e,n){return a(await i.patch(`/projects/${encodeURIComponent(t)}/channels/bindings/${encodeURIComponent(e)}`,n,{showErrors:!1}),"Failed to update channel binding")}async function ic(t){return a(await i.get(`/projects/${t}/gateway/routing-policy`),"Gateway routing policy request failed")}async function oc(t,e){return a(await i.put(`/projects/${t}/gateway/routing-policy`,e),"Gateway routing policy request failed")}async function ac(t){return a(await i.delete(`/projects/${t}/gateway/routing-policy`),"Gateway routing policy request failed")}async function cc(t,e){return a(await i.post(`/projects/${t}/gateway/routing-policy/preview`,e),"Gateway route preview failed")}async function lc(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 a(await i.get(`/projects/${t}/gateway/logs${r?`?${r}`:""}`),"Gateway request failed")}async function uc(t,e){return a(await i.get(`/projects/${t}/gateway/logs/${e}`),"Gateway request failed")}async function pc(t,e){return a(await i.get(`/projects/${t}/gateway/overview${e?`?days=${e}`:""}`),"Gateway request failed")}async function dc(t,e){return a(await i.get(`/projects/${t}/gateway/series${e?`?days=${e}`:""}`),"Gateway request failed")}async function gc(t,e){return a(await i.get(`/projects/${t}/gateway/breakdown${e?`?days=${e}`:""}`),"Gateway request failed")}async function mc(t,e){return a(await i.get(`/projects/${t}/gateway/sessions${e?`?days=${e}`:""}`),"Gateway request failed")}async function fc(t,e){return a(await i.get(`/projects/${t}/gateway/errors${e?`?days=${e}`:""}`),"Gateway request failed")}async function yc(t){return a(await i.get(`/projects/${t}/gateway/budgets`),"Gateway request failed")}async function hc(t,e){return a(await i.put(`/projects/${t}/gateway/budgets`,e),"Gateway request failed")}async function bc(t,e){return a(await i.delete(`/projects/${t}/gateway/budgets/${e}`),"Gateway request failed")}async function xc(t){return a(await i.get(`/projects/${t}/gateway/keys`),"Gateway request failed")}async function _c(t,e){return a(await i.post(`/projects/${t}/gateway/keys`,{name:e}),"Gateway request failed")}async function Pc(t,e){return a(await i.delete(`/projects/${t}/gateway/keys/${e}`),"Gateway request failed")}async function kc(t,e,n,r,s){return a(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 Qf(t,e){return a(await i.post(`/projects/${t}/gateway/providers/${encodeURIComponent(e)}/verify`,{}),"Gateway provider verification failed")}async function Zf(){return a(await i.get("/referrals/code"),"GET_CODE_FAILED")}async function ey(){return a(await i.post("/referrals/code/refresh",{}),"REFRESH_CODE_FAILED")}async function ty(t){return a(await i.post("/referrals/validate",{referral_code:t}),"VALIDATE_CODE_FAILED")}async function ny(){return a(await i.get("/referrals/stats"),"GET_STATS_FAILED")}async function ry(t={}){let e=new URLSearchParams({limit:String(t.limit??50),offset:String(t.offset??0)});return a(await i.get(`/referrals/list?${e}`),"GET_REFERRALS_FAILED")}async function sy(t){return a(await i.post("/referrals/email",{emails:t}),"SEND_EMAILS_FAILED")}function k(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 wc(t){return k(await O(`/accounts/${t}/iam/groups`)).groups}async function Sc(t,e){return k(await O(`/accounts/${t}/iam/groups/${e}`))}async function vc(t,e){return k(await i.post(`/accounts/${t}/iam/groups`,e,{showErrors:!1}))}async function Cc(t,e,n){return k(await i.patch(`/accounts/${t}/iam/groups/${e}`,n))}async function Rc(t,e){return k(await i.delete(`/accounts/${t}/iam/groups/${e}`))}async function Ac(t,e){return k(await O(`/accounts/${t}/iam/groups/${e}/members`)).members}async function Tc(t,e,n){return k(await i.post(`/accounts/${t}/iam/groups/${e}/members`,{userIds:n}))}async function iy(t,e){return k(await O(`/accounts/${t}/iam/groups/${e}/project-grants`)).grants}async function Ic(t,e,n){return k(await i.delete(`/accounts/${t}/iam/groups/${e}/members/${n}`))}async function oy(t,e){return k(await O(`/accounts/${t}/iam/members/${e}/groups`)).groups}async function ay(t,e){let n=k(await O(`/accounts/${t}/iam/members/${e}/project-access`));return{projects:n.projects,account_wide_policies:n.account_wide_policies??[]}}async function cy(t,e={}){let n=new URLSearchParams;e.resourceType&&n.set("resourceType",e.resourceType),e.principalType&&n.set("principalType",e.principalType),e.principalId&&n.set("principalId",e.principalId),e.projectId&&n.set("projectId",e.projectId);let r=n.toString();return k(await O(`/accounts/${t}/iam/resource-grants${r?`?${r}`:""}`)).grants}async function ly(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 k(await O(`/accounts/${t}/iam/policies${r?`?${r}`:""}`)).policies}async function uy(t,e){return k(await i.post(`/accounts/${t}/iam/policies`,e,{showErrors:!1}))}async function py(t,e,n){return k(await i.patch(`/accounts/${t}/iam/policies/${e}`,n,{showErrors:!1}))}async function dy(t,e){return k(await i.delete(`/accounts/${t}/iam/policies/${e}`))}async function gy(t,e){return k(await i.post(`/accounts/${t}/iam/policies:bulk-delete`,{policy_ids:e},{showErrors:!1}))}async function my(t,e){return k(await i.post(`/accounts/${t}/iam/policies:bulk-import`,{policies:e},{showErrors:!1}))}async function Ec(t){return k(await O(`/accounts/${t}/iam/roles`)).roles}async function jc(t){return k(await O(`/accounts/${t}/iam/agent-identities`)).agents}async function $c(t,e){return k(await O(`/accounts/${t}/iam/roles/${e}/permissions`))}async function fy(t){return k(await O(`/accounts/${t}/iam/actions`)).actions}async function Dc(t,e){return k(await O(`/accounts/${t}/iam/roles/${e}/usage`))}async function qc(t,e){return k(await i.post(`/accounts/${t}/iam/roles`,e,{showErrors:!1}))}async function Mc(t,e,n){return k(await i.patch(`/accounts/${t}/iam/roles/${e}`,n,{showErrors:!1}))}async function Oc(t,e,n){return k(await i.put(`/accounts/${t}/iam/roles/${e}/permissions`,{actions:n},{showErrors:!1}))}async function Uc(t,e){return k(await i.delete(`/accounts/${t}/iam/roles/${e}`,{showErrors:!1}))}async function yy(t,e,n){return k(await i.patch(`/accounts/${t}/iam/members/${e}/super-admin`,{isSuperAdmin:n}))}async function hy(t){return k(await O(`/accounts/${t}/iam/scim/tokens`)).tokens}async function by(t,e){return k(await i.post(`/accounts/${t}/iam/scim/tokens`,e,{showErrors:!1}))}async function xy(t,e){return k(await i.delete(`/accounts/${t}/iam/scim/tokens/${e}`))}async function _y(t){return k(await O(`/accounts/${t}/iam/mfa-required`))}async function Py(t){return k(await O(`/accounts/${t}/iam/mfa-required/preview`))}async function ky(t,e){return k(await i.patch(`/accounts/${t}/iam/mfa-required`,{enabled:e},{showErrors:!1}))}async function wy(t){return k(await O(`/accounts/${t}/iam/sso/provider`)).provider}async function Sy(t,e){return k(await i.put(`/accounts/${t}/iam/sso/provider`,e,{showErrors:!1})).provider}async function vy(t,e){return k(await i.post(`/accounts/${t}/iam/sso/provider/from-metadata`,e,{showErrors:!1})).provider}async function Cy(t){return k(await i.delete(`/accounts/${t}/iam/sso/provider`))}async function Ry(t){return k(await O(`/accounts/${t}/iam/sso/mappings`)).mappings}async function Ay(t,e){return k(await i.post(`/accounts/${t}/iam/sso/mappings`,e,{showErrors:!1}))}async function Ty(t,e){return k(await i.delete(`/accounts/${t}/iam/sso/mappings/${e}`))}async function Iy(t){return k(await O(`/accounts/${t}/iam/session-policy`))}async function Ey(t,e){return k(await i.patch(`/accounts/${t}/iam/session-policy`,e,{showErrors:!1}))}async function jy(t){return k(await O(`/accounts/${t}/iam/sessions`)).sessions}async function $y(t,e){return k(await i.post(`/accounts/${t}/iam/sessions/${e}/revoke`,{},{showErrors:!1}))}async function Dy(t){return k(await O(`/accounts/${t}/iam/pat-policy`))}async function qy(t,e){return k(await i.patch(`/accounts/${t}/iam/pat-policy`,e,{showErrors:!1}))}async function My(t){return k(await O(`/accounts/${t}/iam/service-accounts`)).service_accounts}async function Oy(t,e){return k(await i.post(`/accounts/${t}/iam/service-accounts`,e,{showErrors:!1}))}async function Uy(t,e){return k(await i.post(`/accounts/${t}/iam/service-accounts/${e}/disable`,{},{showErrors:!1}))}async function Fy(t,e){return k(await i.delete(`/accounts/${t}/iam/service-accounts/${e}`))}async function Ly(t){return k(await O(`/accounts/${t}/audit/webhooks`)).webhooks}async function Gy(t,e){return k(await i.post(`/accounts/${t}/audit/webhooks`,e,{showErrors:!1}))}async function By(t,e,n){return k(await i.patch(`/accounts/${t}/audit/webhooks/${e}`,n))}async function Ny(t,e){return k(await i.delete(`/accounts/${t}/audit/webhooks/${e}`))}async function Ky(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 k(await O(`/accounts/${t}/audit${r?`?${r}`:""}`))}async function Fc(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),k(await O(`/accounts/${t}/iam/members/${e}/effective?${r.toString()}`))}async function Lc(t,e,n){return n.length===0?[]:k(await i.post(`/accounts/${t}/iam/members/${e}/effective:batch`,{probes:n})).results}async function Hy(t){return k(await O(`/accounts/${t}/iam/enterprise-demo`)).enabled}async function Wy(t,e){return k(await i.put(`/accounts/${t}/iam/enterprise-demo`,{enabled:e})).enabled}function sp(t){return i.get(t,{showErrors:!1})}function zy(t){let e=new URLSearchParams;t?.principalType&&e.set("principal_type",t.principalType),t?.principalId&&e.set("principal_id",t.principalId),t?.scopeType&&e.set("scope_type",t.scopeType),t?.scopeId&&e.set("scope_id",t.scopeId),t?.objectType&&e.set("object_type",t.objectType),t?.objectId&&e.set("object_id",t.objectId),t?.roleId&&e.set("role_id",t.roleId),t?.includeExpired&&e.set("include_expired","true");let n=e.toString();return n?`?${n}`:""}async function Gc(t,e){return a(await sp(`/accounts/${t}/iam/assignments${zy(e)}`)).assignments}async function Bc(t,e){let n={principal_type:e.principal.type,principal_id:e.principal.id,scope_type:e.scope.type,scope_id:e.scope.type==="project"?e.scope.id:null};return e.roleId?n.role_id=e.roleId:n.role_key=e.roleKey,e.object&&(n.object_type=e.object.type,n.object_id=e.object.id),e.expiresAt!==void 0&&(n.expires_at=e.expiresAt),a(await i.post(`/accounts/${t}/iam/assignments`,n))}async function Nc(t,e){return a(await i.delete(`/accounts/${t}/iam/assignments/${e}`)).assignment}async function Kc(t,e){let n=e?.scopeType?`?scope_type=${e.scopeType}`:"";return a(await sp(`/accounts/${t}/iam/permissions${n}`)).permissions}async function Vy(){let t=await i.get("/account/deletion-status",{showErrors:!1});return t.error?.status===404?null:a(t,"Failed to load account deletion status")}async function Jy(t="User requested deletion"){return a(await i.post("/account/request-deletion",{reason:t},{showErrors:!1}),"Failed to request account deletion")}async function Xy(){return a(await i.post("/account/cancel-deletion",void 0,{showErrors:!1}),"Failed to cancel account deletion")}async function Yy(){return a(await i.delete("/account/delete-immediately",{showErrors:!1}),"Failed to delete account immediately")}async function Qy(){return(await i.get("/user-roles",{showErrors:!1})).data??{isAdmin:!1,role:null}}function Zy(){return i.get("/admin/api/provider-distribution").then(t=>a(t))}function eh(t=300){return i.get(`/admin/api/sandboxes?limit=${t}`).then(e=>a(e))}function th(t){return i.put("/admin/api/provider-distribution",t).then(e=>a(e))}function nh(t){return i.get(`/admin/api/provider-analytics?days=${t}`).then(e=>a(e))}function rh(t,e){return i.post(`/admin/api/sandboxes/${encodeURIComponent(t)}/migrate`,{targetProvider:e}).then(n=>a(n))}function sh(){return i.get("/admin/api/provider-fallback").then(t=>a(t))}function ih(t){return i.put("/admin/api/provider-fallback",{enabled:t}).then(e=>a(e))}async function oh(t){return a(await i.get(`/google/auth-url?return_url=${encodeURIComponent(t)}`),"Failed to get Google auth URL")}async function ah(t,e){return a(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 Hc(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 a(await i.get(`/projects/${t}/review/items${r?`?${r}`:""}`,{showErrors:!1}))}async function Wc(t,e){return a(await i.get(`/projects/${t}/review/items/${e}`))}async function zc(t,e){return a(await i.post(`/projects/${t}/review/items`,e))}async function Vc(t,e,n){return a(await i.post(`/projects/${t}/review/items/${e}/act`,n))}async function Jc(t,e){return a(await i.post(`/projects/${t}/review/bulk`,e))}async function Xc(t){return a(await i.get(`/p/share?sandbox_id=${encodeURIComponent(t)}`),"Failed to load public links").shares??[]}async function Yc(t){return a(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 Qc(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 rn=class extends Error{constructor(n,r){super(n);this.status=r;this.name="PublicSessionShareError"}status};function ip(t,e=""){return`${Je()}/public/session-shares/${encodeURIComponent(t)}${e}`}async function op(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 rn(s,e.status)}return r}async function ch(t){return op(ip(t))}async function lh(t){return op(ip(t,"/messages"))}async function Zc(t,e){let n=new URLSearchParams;t&&n.set("account_id",t),e?.mine&&n.set("mine","true");let r=n.size>0?`?${n.toString()}`:"";return a(await i.get(`/accounts/tokens${r}`))}async function el(t){let{accountId:e,expiresAt:n,projectId:r,name:s}=t;return a(await i.post("/accounts/tokens",{name:s,...e?{account_id:e}:{},...n?{expires_at:n}:{},...r?{project_id:r}:{}}))}async function tl(t,e){let n=e?`?account_id=${encodeURIComponent(e)}`:"";return a(await i.delete(`/accounts/tokens/${t}${n}`))}async function nl(t){return a(await i.get(`/projects/${t}/cli-token`))}async function rl(t,e){return a(await i.post(`/projects/${t}/cli-token`,e??{}))}async function sl(t,e){return a(await i.delete(`/projects/${t}/cli-token/${e}`))}async function il(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 a(await i.get(`/accounts/${t}/audit${r?`?${r}`:""}`))}async function ol(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 a(await i.get(`/projects/${t}/audit${r?`?${r}`:""}`))}async function al(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 a(await i.get(`/accounts/${t}/audit/export${r?`?${r}`:""}`))}async function cl(t){return a(await i.get(`/accounts/${t}/audit/webhooks`))}async function ll(t,e){return a(await i.post(`/accounts/${t}/audit/webhooks`,e))}async function ul(t,e,n){return a(await i.patch(`/accounts/${t}/audit/webhooks/${e}`,n))}async function pl(t,e){return a(await i.delete(`/accounts/${t}/audit/webhooks/${e}`))}async function dl(t,e){return a(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 gl(t,e){return a(await i.post(`/projects/${t}/connect-requests`,{slug:e.slug,expires_in_minutes:e.expiresInMinutes}),"Failed to mint connect link")}async function uh(t){return a(await i.get(`/approval-links/${t}`),"Failed to load approval")}async function ml(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 a(await i.get(`/marketplace/items${n}`))}async function fl(){return a(await i.get("/marketplace/marketplaces"))}async function yl(){return a(await i.get("/marketplace/marketplaces/featured"))}async function hl(t){return a(await i.get(`/marketplace/items/${encodeURIComponent(t)}`),"Item not found")}async function bl(t,e){return a(await i.get(`/marketplace/items/${encodeURIComponent(t)}/file?path=${encodeURIComponent(e)}`),"File not found")}async function xl(){return a(await i.get("/marketplace/sources"))}async function _l(t){return a(await i.post("/marketplace/sources",t),"Failed to add marketplace source")}async function Pl(t){return a(await i.delete(`/marketplace/sources/${encodeURIComponent(t)}`),"Failed to remove marketplace source")}async function ph(t,e){return a(await i.post(`/projects/${encodeURIComponent(t)}/marketplace/install-session`,{id:e}),"Failed to start marketplace install session")}async function dh(t){return a(await i.get(`/templates/${encodeURIComponent(t)}`))}async function gh(t,e){return a(await i.post(`/templates/${encodeURIComponent(t)}/install`,e))}async function kl(t){return a(await i.get(`/projects/${t}/apps`),"Failed to list Apps").apps}async function wl(t,e){return a(await i.post(`/projects/${t}/apps`,e),"Failed to create App")}async function Sl(t,e){return a(await i.get(`/projects/${t}/apps/${e}`),"Failed to load App")}async function vl(t,e,n){return a(await i.patch(`/projects/${t}/apps/${e}`,n),"Failed to update App")}async function Cl(t,e){return a(await i.delete(`/projects/${t}/apps/${e}`),"Failed to delete App")}async function Rl(t,e){return a(await i.get(`/projects/${t}/apps/${e}/access`),"Failed to load App access policy")}async function Al(t,e,n){return a(await i.patch(`/projects/${t}/apps/${e}/access`,n),"Failed to update App access policy")}async function Tl(t,e){return a(await i.post(`/projects/${t}/apps/${e}/access-session`,{}),"Failed to create App access session")}async function sn(t,e){return a(await i.post(`/projects/${t}/apps/artifacts`,e),"Failed to register App artifact")}async function on(t,e,n){return a(await i.post(`/projects/${t}/apps/artifacts/${e}/finalize`,n),"Failed to finalize App artifact")}async function mh(t){return t instanceof Uint8Array?t:new Uint8Array(await t.arrayBuffer())}async function fh(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 Il(t,e,n={}){let r=await mh(e),s=n.mediaType??"application/gzip",o=await sn(t,{kind:"archive",media_type:s});if(!o.upload)throw new Error("App artifact registration did not return an upload URL");if(r.byteLength>o.upload.max_bytes)throw new Error(`App artifact exceeds ${o.upload.max_bytes} bytes`);n.onProgress?.(0,r.byteLength);let u=await fetch(o.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),on(t,o.artifact.artifact_id,{sha256:await fh(r),size_bytes:r.byteLength})}async function El(t,e,n){return a(await i.post(`/projects/${t}/apps/${e}/deployments`,n),"Failed to create App deployment")}async function jl(t,e){return a(await i.get(`/projects/${t}/apps/${e}/deployments`),"Failed to list App deployments").deployments}async function $l(t,e,n){return a(await i.get(`/projects/${t}/apps/${e}/deployments/${n}`),"Failed to load App deployment")}async function Dl(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 o=s.size?`?${s.toString()}`:"";return a(await i.get(`/projects/${t}/apps/${e}/deployments/${n}/logs${o}`),"Failed to load App logs")}async function ql(t,e){return a(await i.post(`/projects/${t}/apps/${e}/start`,{}),"Failed to start App")}async function Ml(t,e){return a(await i.post(`/projects/${t}/apps/${e}/stop`,{}),"Failed to stop App")}async function Ol(t,e,n){return a(await i.post(`/projects/${t}/apps/${e}/rollback`,{deployment_id:n}),"Failed to roll back App")}var yh=["control_plane","provider_ingress","daemon","upstream_port"];function Ul(t){return typeof t=="string"&&yh.includes(t)?t:null}function hh(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 Fl(t,e){let n=(t===void 0?re():t)||null;if(!n)return{status:0,ok:!1,health:null,body:"",hop:null,upstreamStatus:null};let r=await q(`${n}/kortix/health`,{method:"GET",...e},{retryOnAuthError:!1}),s=await r.text().catch(()=>""),o=null;try{o=s?JSON.parse(s):null}catch{o=null}let u=o,p=Ul(r.headers.get("X-Kortix-Proxy-Hop"))??Ul(o?.hop),d=Number(r.headers.get("X-Kortix-Upstream-Status")),f=o?.upstream_status,m=Number.isFinite(d)&&d>0?d:typeof f=="number"?f:null;return{status:r.status,ok:r.ok,health:u,body:s,hop:p,upstreamStatus:m}}var oe={DESKTOP:"6080",DESKTOP_HTTPS:"6081",PRESENTATION_VIEWER:"3210",STATIC_FILE_SERVER:"3211",KORTIX_MASTER:"8000",BROWSER_STREAM:"9223",BROWSER_VIEWER:"9224",SSH:"22"};var ap=/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s)"'<>]*/g,cp=/^https?:\/\/p(\d+)-([^.]+)\.localhost(?::(\d+))?(\/.*)?$/,lp=/^https?:\/\/(?:dev|staging|prod|preview)-p(\d+)-([a-z0-9-]+)\.[^/]+?(?::(\d+))?(\/.*)?$/i,up=new Set([22,4096,parseInt(oe.KORTIX_MASTER,10)]);function bh(t){return cp.test(t)}function an(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 xh(t){let e=t.indexOf("](");return e===-1?t:t.slice(0,e)}var _h=new Set(["'",'"',"`","<","(","["]),Ph=new Set([">","'",'"',"`",")","]",",",";",".","!","?"]);function kh(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&&_h.has(t[e]);)e++;for(;n>e&&Ph.has(t[n-1]);)n--;return t.slice(e,n)}function wh(t){return t.match(/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s"'<>)]*/i)?.[0]??null}var Sh=/^\/proxy\/(\d{1,5})(\/.*)?$/,vh=/^\/(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 pp(t){if(!t)return!1;try{let e=new URL(t);return e.hostname!=="localhost"&&e.hostname!=="127.0.0.1"?!1:vh.test(e.pathname)}catch{return!1}}function ut(t){if(!t)return null;let e=kh(xh(t.trim())),n=Gl(e);if(n){let r=an(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 o=`${r.pathname||"/"}${r.search}${r.hash}`,u=parseInt(oe.KORTIX_MASTER,10);if(s===u){let d=r.pathname.match(Sh);if(d){let f=parseInt(d[1],10);if(f>=1&&f<=65535)return s=f,o=an(`${d[2]||"/"}${r.search}${r.hash}`),{originalUrl:`http://localhost:${s}${o}`,port:s,path:o}}}let p=an(o);return{originalUrl:`${r.protocol}//${r.hostname}:${s}${p}`,port:s,path:p}}catch{let r=wh(t);return r&&r!==t?ut(r):null}}function Ch(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 o=r.index,u=o+r[0].length;e.some(([d,f])=>o>=d&&u<=f)||e.push([o,u])}return e}function Rh(t,e){return e.some(([n,r])=>t>=n&&t<r)}function dp(t){let e=[],n=new Set,r=Ch(t);ap.lastIndex=0;let s;for(;(s=ap.exec(t))!==null;){let o=ut(s[0]);if(!o)continue;let{originalUrl:u,port:p,path:d}=o;p<1||p>65535||up.has(p)||n.has(u)||(n.add(u),e.push({originalUrl:u,port:p,path:d,startIndex:s.index,endIndex:s.index+u.length,inCodeBlock:Rh(s.index,r)}))}return e}function Ah(t){return dp(t).length>0}function Th(t){try{let{hostname:e}=new URL(t);return e==="localhost"||e==="127.0.0.1"}catch{return!1}}function gp(t){return t.trim().toLowerCase().split("_").join("-")}function mp(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return t.slice(0,e)}function Ih(t,e,n){let r=n.previewUrlTemplate;if(!r||!r.includes("{port}")||!r.includes("{sandbox}"))return null;let s=r.split("{port}").join(String(t)).split("{sandbox}").join(gp(n.sandboxId));return`${mp(s)}${e}`}function fp(t){return t.sandboxId.trim().length>0}function fe(t,e,n){let r=an(e);if(!fp(n))return xp(t,r);let s=Ih(t,r,n);return s||(Th(n.apiBaseUrl)?`http://p${t}-${gp(n.sandboxId)}.localhost:${n.backendPort}${r}`:`${mp(n.apiBaseUrl)}/p/${n.sandboxId}/${t}${r}`)}function Eh(t,e){if(!t)return;let r=t.replace(/^\/workspace\//,"").replace(/^\/+/,"").split("/").filter(Boolean).map(s=>encodeURIComponent(s)).join("/");return fe(3211,`/open?path=/workspace/${r}`,e)}function yp(t){return`/open?path=/${(t.startsWith("/workspace")?t:`/workspace/${t.replace(/^\/+/,"")}`).split("/").filter(Boolean).map(r=>encodeURIComponent(r)).join("/")}`}function jh(t){return`http://localhost:3211${yp(t)}`}function hp(){return"/health"}function $h(t){return fe(3211,hp(),t)}function Dh(t,e){return fe(t,"/",e)}function bp(t){let e=ut(t);return!(!e||up.has(e.port)||pp(t))}function Ll(t,e){if(!t)return t;let n=ut(t);return n?bp(n.originalUrl)?fe(n.port,n.path,e):n.originalUrl:t}function xp(t,e="/"){return`http://localhost:${t}${e}`}var _p=/^https?:\/\/[^/]+\/v1\/p\/([^/]+)\/(\d+)(\/.*)?$/;function Gl(t){let e=t.match(cp);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(lp);if(n){let s=443;try{let o=new URL(t);s=o.port?parseInt(o.port,10):o.protocol==="https:"?443:80}catch{return null}return{port:parseInt(n[1],10),sandboxId:n[2],backendPort:s,path:n[4]||"/"}}let r=t.match(_p);if(r)try{let s=new URL(t);return{port:parseInt(r[2],10),sandboxId:r[1],backendPort:parseInt(s.port,10)||(s.protocol==="https:"?443:80),path:r[3]||"/"}}catch{return null}return null}function qh(t){try{let e=Gl(t);return e?`http://localhost:${e.port}${e.path}`:null}catch{return null}}function Mh(t){return bh(t)||lp.test(t)||_p.test(t)}function Oh(t){try{let{hostname:e,port:n}=new URL(t);return(e==="localhost"||e==="127.0.0.1")&&n!==""}catch{return!1}}var lt="/web-proxy/";function Uh(t,e){try{let n=new URL(t);if(n.protocol!=="http:"&&n.protocol!=="https:")return null;let r=n.protocol.replace(":",""),s=`${lt}${r}/${n.host}${n.pathname}${n.search}${n.hash}`,o=parseInt(oe.KORTIX_MASTER,10);return`${fe(o,"/",e).replace(/\/$/,"")}${s}`}catch{return null}}function Fh(t){try{let e=new URL(t),n=e.pathname.indexOf(lt);if(n===-1)return null;let s=e.pathname.slice(n+lt.length).match(/^(https?)\/([\w.\-]+(?::\d+)?)(\/.*)?$/);if(!s)return null;let o=s[1],u=s[2],p=s[3]||"/";return`${o}://${u}${p}${e.search}${e.hash}`}catch{return null}}function Lh(t){try{return new URL(t).pathname.includes(lt)}catch{return t.includes(lt)}}function Gh(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 Bh(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 Pp="frontend";function cn(t,e,n){(t==="error"?console.error:t==="warn"?console.warn:t==="debug"?console.debug:console.log)(`[${Pp}] ${e}`,...n?[n]:[]);try{de().app.log({service:Pp,level:t,message:e,extra:n})}catch{}}var ye={debug:(t,e)=>cn("debug",t,e),info:(t,e)=>cn("info",t,e),warn:(t,e)=>cn("warn",t,e),error:(t,e)=>cn("error",t,e)};function kp(t){return{type:"heartbeat-gap",gapMs:t}}function wp(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 Nh={now:()=>Date.now(),setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t)},Kh=16,Hh=8,Wh=6e4,zh=5e3,Vh=250,Jh=1e3,Xh=3e4,Yh=5,Qh=3e3,Zh=3e4,eb=2e4,tb=2e3,nb=8;function rb(t){if(t.type==="session.status")return`session.status:${t.properties.sessionID}`;if(t.type==="lsp.updated")return"lsp.updated"}function Sp(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)}}var ln=new WeakMap;function sb(t,e,n){let r=e.timers??Nh,s=e.connectTimeoutMs??eb,o=e.heartbeatTimeoutMs??Wh,u=e.maxConsecutiveHardFailures??nb,p=new AbortController;function d(l,...y){for(let c of n){let T=l(c);if(T)try{T(...y)}catch(R){console.warn("[opencode-events] subscriber handler threw, skipping",R)}}}let f=r.now(),m=[],b,x=0,C=new Map,I=()=>{if(b&&r.clearTimeout(b),b=void 0,m.length===0)return;let l=m;m=[],C.clear(),x=r.now(),f=r.now();for(let y of l)y&&d(c=>c.onEvent,y.event)},E=()=>{if(b)return;let l=r.now()-x;b=r.setTimeout(I,Math.max(0,Kh-l))};return(async()=>{let l=0,y=0;for(;!p.signal.aborted;){let c=!1,T=!1,R,P,j=null,$=r.now(),A=new AbortController,W=Sp(p.signal);W.promise.then(()=>A.abort());try{let M=await new Promise((B,ee)=>{let V=!1;P=r.setTimeout(()=>{V||(V=!0,ye.warn("SSE connect timed out, forcing reconnect",{connectTimeoutMs:s}),A.abort(),ee(new Error(`SSE connect timed out after ${s}ms`)))},s),t.global.event({signal:A.signal,sseDefaultRetryDelay:Qh,sseMaxRetryDelay:Zh,sseMaxRetryAttempts:1}).then(Y=>{V||(V=!0,r.clearTimeout(P),B(Y))},Y=>{V||(V=!0,r.clearTimeout(P),ee(Y))})}),{stream:N}=M;f=r.now();let U=()=>{r.clearTimeout(R),R=r.setTimeout(()=>{ye.warn("SSE heartbeat timeout, forcing reconnect"),A.abort()},o)};U();let J=r.now(),L=N[Symbol.asyncIterator]();for(;!A.signal.aborted;){let B=L.next().then(ue=>({kind:"next",result:ue}),ue=>({kind:"error",error:ue})),ee=Sp(A.signal),V=await Promise.race([B,ee.promise.then(()=>({kind:"aborted"}))]);if(ee.cleanup(),V.kind==="aborted")break;if(V.kind==="error")throw V.error;if(V.result.done)break;c=!0,U();let Y=V.result.value,bt=Y&&typeof Y=="object"&&"payload"in Y?Y.payload:Y;if(!bt?.type)continue;let _n=rb(bt);if(_n){let ue=C.get(_n);ue!==void 0&&(m[ue]=void 0),C.set(_n,m.length)}m.push({type:bt.type,event:bt}),E(),!(r.now()-J<Hh)&&(J=r.now(),await new Promise(ue=>r.setTimeout(ue,0)))}T=c}catch(M){if(p.signal.aborted)break;j=M;let N=String(M),U=N.includes("401")||N.includes("403")||N.includes("Unauthorized")||N.includes("Token refresh failed");if(ye.error("SSE event stream error",{error:N,retryCount:l,isAuthError:U}),U)try{Ve(),await Rt(),ye.info("SSE: refreshed auth token after auth error")}catch(J){ye.error("SSE: failed to refresh auth token",{error:String(J)})}}finally{r.clearTimeout(R),r.clearTimeout(P),A.abort(),W.cleanup(),I()}if(p.signal.aborted)break;let K=r.now()-$,h=j?.cause?.status;if(y=!c&&(typeof h=="number"&&h>=400||K<tb)?y+1:0,y>=u){ye.error("SSE event stream parked \u2014 giving up after consecutive hard failures",{consecutiveFailures:y,lastError:String(j)}),d(M=>M.onParked,{consecutiveFailures:y,lastError:j});break}let H=r.now()-f;H>zh&&d(M=>M.onGapRehydrate,H),T?l=0:(l++,l>1&&ye.warn("SSE event stream reconnecting",{retryCount:l}));let Z=T?Vh:Math.min(Jh*2**Math.min(l-1,Yh),Xh);await new Promise(M=>{let N=r.setTimeout(M,Z),U=()=>{r.clearTimeout(N),M()};p.signal.addEventListener("abort",U,{once:!0})})}})(),{subscribers:n,teardown:()=>{p.abort(),b&&r.clearTimeout(b)}}}function un(t){let{client:e,onEvent:n,onGapRehydrate:r,onParked:s,signal:o}=t,u={onEvent:n,onGapRehydrate:r,onParked:s},p=ln.get(e);p?p.subscribers.add(u):(p=sb(e,t,new Set([u])),ln.set(e,p));let d=p,f=!1,m=()=>{f||(f=!0,o&&o.removeEventListener("abort",b),d.subscribers.delete(u),d.subscribers.size===0&&(d.teardown(),ln.get(e)===d&&ln.delete(e)))},b=()=>m();return o&&(o.aborted?m():o.addEventListener("abort",b,{once:!0})),{close:m}}function ib(){return de()}var pn=new Map,pt=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 vp(t,e){_t(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 v(`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 y=D().backendUrl??t.backendUrl,c=80,T=n(y);return T&&(c=T.port?Number(T.port):T.protocol==="https:"?443:80),Gu({sandboxId:l,apiBaseUrl:y,backendPort:c})}let s={list:ys,get:bs,create:hs,updateName:xs,leave:Is,members:_s,invite:Ps,removeMember:As,updateMemberRole:Ts,invites:ks,cancelInvite:ws,resendInvite:Ss,tokens:{list:Zc,create:el,revoke:tl},audit:{log:il,export:al,webhooks:{list:cl,create:ll,update:ul,remove:pl}}},o={assignments:{list:Gc,create:Bc,revoke:Nc},permissions:{list:Kc,forRole:$c},roles:{list:Ec,create:qc,update:Mc,setPermissions:Oc,remove:Uc,usage:Dc},groups:{list:wc,get:Sc,create:vc,update:Cc,remove:Rc,members:{list:Ac,add:Tc,remove:Ic}},agentIdentities:jc,can:Fc,canBatch:Lc},u={accountState:Sa,accountStateMinimal:va,transactions:Ca,transactionsSummary:Ra,creditBreakdown:Aa,usageHistory:Ta,usageRollup:Ba,sessionCosts:{list:Ha,get:nn},tierConfigurations:Ia,checkout:{createSession:l=>Ea(l),confirmSession:(l,y)=>ja(l,y)},subscription:{createPortalSession:(l,y)=>$a(l,y),cancel:(l,y)=>Da(l,y),reactivate:l=>qa(l),scheduleDowngrade:(l,y,c)=>Ma(l,y,c),cancelScheduledChange:l=>Oa(l),prorationPreview:(l,y)=>Ua(l,y)},credits:{purchase:l=>Fa(l),autoTopupSettings:l=>La(l),configureAutoTopup:l=>Ga(l)}},p={describe:vs,accept:Cs,decline:Rs},d={list:Ce,listForAccount:js,get:Gt,detail:Bt,create:Ms,createRepo:Os,provision:Us,update:Ht,archive:Wt,llmCatalog:Nt,modelPicker:Kt,sandboxHealth:Xt,sandboxTemplates:uo,sessions:Ge,createSession:Be},f={linkRepository:Ns,getInstallation:Ks,listInstallations:Hs,listLinkableInstallations:Ws,listRepositories:zs,listRepositoryBranches:Vs,linkInstallation:Xs,saveInstallation:Js,deleteInstallation:Ys},m={list:Xc,create:Yc,revoke:Qc},b=io,x={items:l=>ml(l),item:l=>hl(l),itemFile:(l,y)=>bl(l,y),marketplaces:()=>fl(),featured:()=>yl(),sources:{list:()=>xl(),add:l=>_l(l),remove:l=>Pl(l)}};function C(l){return{catalog:()=>zt(l),tools:()=>it(l),search:(...y)=>Ii(l,...y),describe:(...y)=>Ei(l,...y),call:(...y)=>ji(l,...y),uploadAttachment:(...y)=>$i(l,...y)}}function I(l){let y={list:()=>Di(l),listAll:()=>qi(l),reconcile:(...c)=>Mi(l,...c),reconcileMember:(...c)=>Oi(l,...c),updateCredential:(...c)=>Ui(l,...c),revoke:(...c)=>Fi(l,...c),activate:(...c)=>Li(l,...c),setDefault:(...c)=>Gi(l,...c),pipedreamConnect:(...c)=>Bi(l,...c),pipedreamFinalize:(...c)=>Ni(l,...c)};return{get:c=>Gt(l,c),detail:()=>Bt(l),audit:c=>ol(l,c),update:c=>Ht(l,c),archive:()=>Wt(l),llmCatalog:()=>Nt(l),modelPicker:()=>Kt(l),sandboxHealth:()=>Xt(l),onboardingComplete:(...c)=>Bs(l,...c),apps:{list:()=>kl(l),create:c=>wl(l,c),get:c=>Sl(l,c),update:(...c)=>vl(l,...c),access:{get:(...c)=>Rl(l,...c),update:(...c)=>Al(l,...c),session:(...c)=>Tl(l,...c)},remove:c=>Cl(l,c),artifacts:{register:c=>sn(l,c),uploadArchive:(...c)=>Il(l,...c),finalize:(...c)=>on(l,...c)},deployments:{create:(...c)=>El(l,...c),list:c=>jl(l,c),get:(...c)=>$l(l,...c),logs:(...c)=>Dl(l,...c)},start:c=>ql(l,c),stop:c=>Ml(l,c),rollback:(...c)=>Ol(l,...c)},tokens:{list:()=>nl(l),create:c=>rl(l,c),revoke:c=>sl(l,c)},setupLinks:{requestSecret:c=>dl(l,c),requestConnector:c=>gl(l,c)},validateManifest:c=>Ds(l,c),gitToken:()=>qs(l),secrets:{list:()=>bi(l),upsert:c=>xi(l,c),setStrategy:(...c)=>_i(l,...c),broker:(...c)=>Pi(l,...c),remove:c=>Ci(l,c),setPersonal:(...c)=>Ri(l,...c),removePersonal:c=>Ai(l,c),setGitCredential:c=>vi(l,c),startProviderOAuth:(...c)=>ki(l,...c),pollProviderOAuth:(...c)=>wi(l,...c),removeProviderOAuth:c=>Si(l,c)},access:{list:()=>ti(l),invite:(...c)=>si(l,...c),update:(...c)=>ni(l,...c),revoke:c=>ri(l,c),pendingInvites:()=>ii(l),resendInvite:(...c)=>ai(l,...c),revokeInvite:(...c)=>oi(l,...c),requests:()=>Qs(l),approveRequest:(...c)=>Zs(l,...c),rejectRequest:(...c)=>ei(l,...c),groupGrants:()=>ci(l),attachGroupGrant:(...c)=>li(l,...c),updateGroupGrant:(...c)=>ui(l,...c),detachGroupGrant:c=>pi(l,c),resourceGrants:{list:()=>di(l),create:c=>gi(l,c),remove:c=>mi(l,c)}},connectors:{...C(l),list:()=>Ki(l),config:(...c)=>Yi(l,...c),create:(...c)=>eo(l,...c),remove:(...c)=>no(l,...c),sync:()=>Hi(l),auth:{discover:(...c)=>to(l,...c)},setName:(...c)=>Qi(l,...c),setCredentialMode:(...c)=>Wi(l,...c),setAuthorizationStrategy:(...c)=>zi(l,...c),setCredential:(...c)=>oo(l,...c),setSensitive:(...c)=>Vi(l,...c),connections:y,policies:{get:(...c)=>Ji(l,...c),set:(...c)=>Xi(l,...c)},pipedream:{listApps:(...c)=>ro(l,...c),listSections:(...c)=>so(l,...c),connect:(...c)=>Zi(l,...c),finalize:(...c)=>ao(l,...c)},discover:{list:(...c)=>Vt(l,...c),detail:(...c)=>Jt(l,...c)}},policies:{list:()=>co(l),set:(...c)=>lo(l,...c)},triggers:{list:()=>pa(l),create:(...c)=>da(l,...c),update:(...c)=>ga(l,...c),remove:(...c)=>ma(l,...c),fire:(...c)=>ya(l,...c),setActivation:(...c)=>fa(l,...c)},files:{list:c=>_o(l,c),read:(c,T)=>ko(l,c,T),search:(...c)=>Po(l,...c),archive:(...c)=>wo(l,...c),history:(...c)=>Ao(l,...c)},git:{commits:()=>vo(l),commit:c=>Co(l,c),commitDiff:c=>Ro(l,c),branches:()=>So(l),versionDiff:(...c)=>To(l,...c),inviteCollaborator:(...c)=>$s(l,...c)},changeRequests:{list:()=>Io(l),get:c=>Eo(l,c),diff:c=>jo(l,c),mergePreview:c=>$o(l,c),open:(...c)=>Do(l,...c),merge:(...c)=>qo(l,...c),close:(...c)=>Mo(l,...c),reopen:(...c)=>Oo(l,...c),requestChanges:(...c)=>Uo(l,...c)},sessions:{list:c=>Ge(l,c),create:c=>Be(l,c),ensureWarm:()=>zo(l),claimWarm:c=>Vo(l,c)},review:{list:c=>Hc(l,c),get:c=>Wc(l,c),submit:c=>zc(l,c),act:(...c)=>Vc(l,...c),bulkAct:c=>Jc(l,c)},approvals:{list:c=>fi(l,c),resolve:(...c)=>hi(l,...c),sessionsNeedingInput:c=>yi(l,c)},gateway:{logs:c=>lc(l,c),log:c=>uc(l,c),overview:c=>pc(l,c),series:c=>dc(l,c),breakdown:c=>gc(l,c),sessions:c=>mc(l,c),errors:c=>fc(l,c),budgets:()=>yc(l),setBudget:c=>hc(l,c),deleteBudget:c=>bc(l,c),keys:()=>xc(l),createKey:c=>_c(l,c),revokeKey:c=>Pc(l,c),routing:{get:()=>ic(l),set:c=>oc(l,c),reset:()=>ac(l),preview:c=>cc(l,c)},playground:(c,T,R)=>kc(l,c,T,R)},channels:{slack:{installation:()=>Wa(l),connect:c=>za(l,c),mode:()=>Va(l),manifest:()=>Ja(l),disconnect:()=>Xa(l),getFile:c=>Ya(l,c),uploadFile:c=>Qa(l,c)},email:{installation:c=>ec(l,c),mode:()=>tc(l),connect:c=>nc(l,c),disconnect:c=>rc(l,c),updatePolicy:(...c)=>sc(l,...c)}},updateFeatureFlag:(...c)=>Fs(l,...c),updateExperimentalFeature:(...c)=>Ls(l,...c),modelDefaults:{get:()=>ba(l),set:c=>xa(l,c),clear:c=>_a(l,c)},setDefaultAgent:c=>wa(l,c),sandbox:{list:()=>xo(l),snapshots:()=>po(l),rebuildSnapshot:c=>go(l,c),fixWithAgent:()=>mo(l),createTemplate:c=>fo(l,c),updateTemplate:(...c)=>yo(l,...c),removeTemplate:c=>ho(l,c),buildTemplate:c=>bo(l,c),setProvider:c=>Gs(l,c)},setAgentScope:(...c)=>Pa(l,...c),session:c=>E(l,c)}}function E(l,y){let c=null,T,R,P=null;async function j(){P||(P=Yt(l,y,{showErrors:!1}).then(h=>{let S=typeof h.metadata?.opencode_model=="string"?h.metadata.opencode_model.trim():"",H=S.indexOf("/"),Z=H>0&&H<S.length-1?{providerID:S.slice(0,H),modelID:S.slice(H+1)}:void 0,M=h.agent_name?.trim()||void 0;return{model:Z,agent:M}}));try{return await P}catch(h){throw P=null,h}}function $(){if(c)return c;let h=Qu(l,y);return h&&(c=h),c}async function A(h){let S=$();if(S)return S;let H=h?.readyTimeoutMs??18e4,Z=Dt(D().backendUrl??t.backendUrl).catch(()=>null),M=`${l}
|
|
20
|
-
${
|
|
19
|
+
`);let A=ly(P);if(A){if(r(A),A.type==="error")throw new C(A.error,{status:A.status,code:A.code,data:{reason:A.reason}});A.type==="done"&&(f=A.result)}}}}finally{u.cancel().catch(()=>{})}if(!f)throw new Error("Reload stream ended without a result");return f}async function Ea(t,e){return a(await i.get(`/projects/${t}/sessions/${encodeURIComponent(e)}/scope`))}async function ja(t,e,n){return a(await i.put(`/projects/${t}/sessions/${encodeURIComponent(e)}/scope`,n))}async function $a(t,e,n){return a(await i.put(`/projects/${t}/sessions/${encodeURIComponent(e)}/model`,{opencode_model:n}))}async function Ma(t){return a(await i.get(`/projects/${t}/triggers`))}async function qa(t,e){return a(await i.post(`/projects/${t}/triggers`,e))}async function Da(t,e,n){return a(await i.patch(`/projects/${t}/triggers/${e}`,n))}async function Oa(t,e){return a(await i.delete(`/projects/${t}/triggers/${e}`))}async function Ua(t,e){return a(await i.patch(`/projects/${t}/triggers/activation`,{paused:e}))}async function Fa(t,e){return a(await i.post(`/projects/${t}/triggers/${e}/fire`,{}))}var ye=new Map;function La(t,e){return`${t}::${e}`}function Ep(t,e){ye.delete(t),ye.set(t,e)}function jp(t,e){let n=La(t,e),r=ye.get(n);return r&&Ep(n,r),r}function $p(t,e,n){let r=La(t,e);if(!ye.has(r)&&ye.size>=512){let s=ye.keys().next().value;s!==void 0&&ye.delete(s)}Ep(r,n)}function Mp(t,e){ye.delete(La(t,e))}function uy(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 rn=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 py(t){return t instanceof Error&&t.name==="SessionStartError"}function dy(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 rn(s,{status:n,code:r,terminal:!0}):null}async function Re(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=dy(s.error);if(p&&!(p.status===404&&la(e)))throw p;return null}let o=s.data,u=o.sandbox?.external_id;return o.stage==="ready"&&u&&o.opencode_session_id&&$p(t,e,{opencodeSessionId:o.opencode_session_id,runtimeUrl:$t(u),sandboxId:u}),o}function gy(t,e){return["session-start",t,e]}async function Ga(t){return a(await i.get(`/projects/${t}/model-defaults`))}async function Ba(t,e){return a(await i.put(`/projects/${t}/model-defaults`,e))}async function Na(t,e){let n=new URLSearchParams({scope:e.scope,...e.agentName?{agentName:e.agentName}:{}}).toString();return a(await i.delete(`/projects/${t}/model-defaults?${n}`))}async function my(t,e){return a(await i.put(`/projects/${t}/model-enablement`,{modelOverrides:e}))}async function Ka(t,e,n){let r=yy(n);return a(await i.put(`/projects/${t}/agents/${encodeURIComponent(e)}/scope`,r))}function qp(t){let e=[];for(let n of t){let r=n.trim();r&&!e.includes(r)&&e.push(r)}return e}function fy(t,e){if(t.length!==e.length)return!1;let n=new Set(e);return t.every(r=>n.has(r))}function yy(t){let e=t.connectors_required?qp(t.connectors_required):void 0,n=t.connectors_personal?qp(t.connectors_personal):void 0;if(e&&n&&!fy(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 hy(t,e){let n=a(await i.get(`/projects/${t}/agents/${encodeURIComponent(e)}/config`));return{...n,block:n.block?Ha(n.block):null}}async function by(t,e,n){let r=Ha(n),s=a(await i.put(`/projects/${t}/agents/${encodeURIComponent(e)}/config`,r));return{...s,block:s.block?Ha(s.block):null}}function Dp(t){let e=[];for(let n of t){let r=n.trim();r&&!e.includes(r)&&e.push(r)}return e}function xy(t,e){if(t.length!==e.length)return!1;let n=new Set(e);return t.every(r=>n.has(r))}function Ha(t){let e=t.connectors_required?Dp(t.connectors_required):void 0,n=t.connectors_personal?Dp(t.connectors_personal):void 0;if(e&&n&&!xy(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 _y(t,e,n){return a(await i.post(`/projects/${t}/secrets/${encodeURIComponent(e)}/grant`,{agent:n}))}async function Wa(t,e){return a(await i.put(`/projects/${t}/default-agent`,{agent:e}))}function sn(){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 Py(t){let e=t.trim().toLowerCase();return e===""||e==="free"||e==="none"?"free":e==="enterprise"?"enterprise":"team"}function ky(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??sn(),r=(n.subscription?.tier_key||n.tier?.name||"none").toString(),s=(n.tier?.display_name||"").trim()||r;return{family:Py(r),label:s,sublabel:null,isGrandfathered:!1}}async function za(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}),o=s.error?.status===404&&/billing is not enabled/i.test(s.error.message||"");if(s.error&&s.error.status!==401&&!o)throw s.error;return s.error?sn():s.data}async function Va(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}),o=s.error?.status===404&&/billing is not enabled/i.test(s.error.message||"");if(s.error&&s.error.status!==401&&!o)throw s.error;return s.error?sn():s.data}async function Ja(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 a(await i.get(`/billing/transactions${n?`?${n}`:""}`))}async function Xa(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 a(await i.get(`/billing/transactions/summary${n?`?${n}`:""}`))}async function Qa(){return a(await i.get("/billing/credit-breakdown"))}async function Ya(t){let e=t!=null?`?days=${t}`:"";return a(await i.get(`/billing/usage-history${e}`))}async function Za(){return a(await i.get("/billing/tier-configurations"))}async function wy(t){let e=t.accountId?`?account_id=${encodeURIComponent(t.accountId)}`:"";return Be(t,`/v1/billing/account-state${e}`)}async function ec(t){return a(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 tc(t,e){return a(await i.post("/billing/confirm-checkout-session",{account_id:e,session_id:t}),"Failed to confirm checkout session")}async function nc(t,e){return a(await i.post("/billing/create-portal-session",{account_id:e,return_url:t}),"Failed to create portal session")}async function rc(t,e){return a(await i.post("/billing/cancel-subscription",{account_id:e,feedback:t}),"Failed to cancel subscription")}async function sc(t){return a(await i.post("/billing/reactivate-subscription",{account_id:t}),"Failed to reactivate subscription")}async function ic(t,e,n){return a(await i.post("/billing/schedule-downgrade",{account_id:n,target_tier_key:t,commitment_type:e}),"Failed to schedule downgrade")}async function oc(t){return a(await i.post("/billing/cancel-scheduled-change",{account_id:t}),"Failed to cancel scheduled change")}async function ac(t,e){let n=new URLSearchParams({new_price_id:t});return e&&n.set("account_id",e),a(await i.get(`/billing/proration-preview?${n.toString()}`),"Failed to load proration preview")}async function cc(t){return a(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 lc(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return a(await i.get(`/billing/auto-topup/settings${e}`),"Failed to load auto-topup settings")}async function uc(t){return a(await i.post("/billing/auto-topup/configure",{account_id:t.accountId,enabled:t.enabled,threshold:t.threshold,amount:t.amount},{showErrors:!1}),"Failed to configure auto-topup")}async function Sy(t){let e=t?`?account_id=${encodeURIComponent(t)}`:"";return a(await i.get(`/billing/auto-topup/setup-status${e}`,{timeout:8e3,showErrors:!1}),"Failed to load auto-topup setup status")}async function vy(t){return a(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 Cy(t){return a(await i.post("/billing/claim-per-seat",{account_id:t}),"Failed to switch to per-seat billing")}async function Ay(t){return a(await i.post("/billing/sync-subscription",{account_id:t}),"Failed to sync subscription")}async function pc(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 a(await i.get(`/usage${n?`?${n}`:""}`))}function gc(t,e){e.accountId&&t.set("account_id",e.accountId),e.projectId&&t.set("project_id",e.projectId)}function on(t,e){e.from&&t.set("from",e.from),e.to&&t.set("to",e.to)}function an(t){return t.size>0?`?${t}`:""}async function mc(t={}){let e=new URLSearchParams;return gc(e,t),t.ownerId&&e.set("owner_id",t.ownerId),on(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)),a(await i.get(`/usage/session-costs${an(e)}`))}async function cn(t,e={}){let n=new URLSearchParams;return gc(n,e),a(await i.get(`/usage/session-costs/${encodeURIComponent(t)}${an(n)}`))}async function Ry(t={}){let e=new URLSearchParams;return t.accountId&&e.set("account_id",t.accountId),on(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)),a(await i.get(`/usage/cost-by-project${an(e)}`))}async function Ty(t={}){let e=new URLSearchParams;return gc(e,t),t.sessionId&&e.set("session_id",t.sessionId),on(e,t),a(await i.get(`/usage/cost-summary${an(e)}`))}function dc(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)}on(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`${I().backendUrl||""}${r}?${n}`}async function Iy(t,e={}){let n=dc(t==="projects"?"projects":"sessions",e),r=await ne(),s=await fetch(n,{method:"GET",headers:r?{Authorization:`Bearer ${r}`}:{}});if(!s.ok){let d=await s.text().catch(()=>"");throw new Error(d||`Failed to export CSV (HTTP ${s.status})`)}let o=s.headers.get("x-kortix-row-cap"),u=o!=null?Number(o):NaN;return{blob:await s.blob(),rowCap:Number.isFinite(u)?u:null}}async function Op(t,e){return a(await i.post(`/channels/${t}/identity/bind`,{token:e}),"Failed to connect your account")}function Ey(t){return Op("slack",t)}function jy(t){return Op("teams",t)}async function fc(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/installation`,{showErrors:!1});return e.success?e.data??null:null}async function yc(t,e){return a(await i.post(`/projects/${encodeURIComponent(t)}/channels/slack/connect`,e,{showErrors:!1}),"Failed to connect")}var $y={oauth_available:!1,install_url:null};async function hc(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/mode`,{showErrors:!1});return!e.success||!e.data?$y:e.data}async function bc(t){return a(await i.get(`/webhooks/slack/${encodeURIComponent(t)}/manifest`,{showErrors:!1}),"Failed to load Slack manifest")}async function xc(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 _c(t,e){return a(await i.get(`/projects/${encodeURIComponent(t)}/channels/slack/file?url=${encodeURIComponent(e)}`,{showErrors:!1}),"Failed to download Slack file")}async function Pc(t,e){return a(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 kc(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 My={provider:"agentmail",managed_available:!1};async function wc(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?kc(r.data):null}async function Sc(t){let e=await i.get(`/projects/${encodeURIComponent(t)}/channels/email/mode`,{showErrors:!1});return!e.success||!e.data?My:e.data}async function vc(t,e){let n=a(await i.post(`/projects/${encodeURIComponent(t)}/channels/email/connect`,e,{showErrors:!1}),"Failed to connect email");return kc(n)}async function Cc(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 Ac(t,e,n){let r=a(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 kc(r)}async function qy(t){return a(await i.get(`/projects/${encodeURIComponent(t)}/channels/bindings`,{showErrors:!1}),"Failed to load channel bindings")}async function Dy(t,e,n){return a(await i.patch(`/projects/${encodeURIComponent(t)}/channels/bindings/${encodeURIComponent(e)}`,n,{showErrors:!1}),"Failed to update channel binding")}async function Rc(t){return a(await i.get(`/projects/${t}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Tc(t,e){return a(await i.put(`/projects/${t}/gateway/routing-policy`,e),"Gateway routing policy request failed")}async function Ic(t){return a(await i.delete(`/projects/${t}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Ec(t,e){return a(await i.post(`/projects/${t}/gateway/routing-policy/preview`,e),"Gateway route preview failed")}async function jc(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 a(await i.get(`/projects/${t}/gateway/logs${r?`?${r}`:""}`),"Gateway request failed")}async function $c(t,e){return a(await i.get(`/projects/${t}/gateway/logs/${e}`),"Gateway request failed")}async function Mc(t,e){return a(await i.get(`/projects/${t}/gateway/overview${e?`?days=${e}`:""}`),"Gateway request failed")}async function qc(t,e){return a(await i.get(`/projects/${t}/gateway/series${e?`?days=${e}`:""}`),"Gateway request failed")}async function Dc(t,e){return a(await i.get(`/projects/${t}/gateway/breakdown${e?`?days=${e}`:""}`),"Gateway request failed")}async function Oc(t,e){return a(await i.get(`/projects/${t}/gateway/sessions${e?`?days=${e}`:""}`),"Gateway request failed")}async function Uc(t,e){return a(await i.get(`/projects/${t}/gateway/errors${e?`?days=${e}`:""}`),"Gateway request failed")}async function Fc(t){return a(await i.get(`/projects/${t}/gateway/budgets`),"Gateway request failed")}async function Lc(t,e){return a(await i.put(`/projects/${t}/gateway/budgets`,e),"Gateway request failed")}async function Gc(t,e){return a(await i.delete(`/projects/${t}/gateway/budgets/${e}`),"Gateway request failed")}async function Bc(t){return a(await i.get(`/projects/${t}/gateway/keys`),"Gateway request failed")}async function Nc(t,e){return a(await i.post(`/projects/${t}/gateway/keys`,{name:e}),"Gateway request failed")}async function Kc(t,e){return a(await i.delete(`/projects/${t}/gateway/keys/${e}`),"Gateway request failed")}async function Hc(t,e,n,r,s){return a(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 Oy(t,e){return a(await i.post(`/projects/${t}/gateway/providers/${encodeURIComponent(e)}/verify`,{}),"Gateway provider verification failed")}async function Uy(){return a(await i.get("/referrals/code"),"GET_CODE_FAILED")}async function Fy(){return a(await i.post("/referrals/code/refresh",{}),"REFRESH_CODE_FAILED")}async function Ly(t){return a(await i.post("/referrals/validate",{referral_code:t}),"VALIDATE_CODE_FAILED")}async function Gy(){return a(await i.get("/referrals/stats"),"GET_STATS_FAILED")}async function By(t={}){let e=new URLSearchParams({limit:String(t.limit??50),offset:String(t.offset??0)});return a(await i.get(`/referrals/list?${e}`),"GET_REFERRALS_FAILED")}async function Ny(t){return a(await i.post("/referrals/email",{emails:t}),"SEND_EMAILS_FAILED")}function k(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 Wc(t){return k(await O(`/accounts/${t}/iam/groups`)).groups}async function zc(t,e){return k(await O(`/accounts/${t}/iam/groups/${e}`))}async function Vc(t,e){return k(await i.post(`/accounts/${t}/iam/groups`,e,{showErrors:!1}))}async function Jc(t,e,n){return k(await i.patch(`/accounts/${t}/iam/groups/${e}`,n))}async function Xc(t,e){return k(await i.delete(`/accounts/${t}/iam/groups/${e}`))}async function Qc(t,e){return k(await O(`/accounts/${t}/iam/groups/${e}/members`)).members}async function Yc(t,e,n){return k(await i.post(`/accounts/${t}/iam/groups/${e}/members`,{userIds:n}))}async function Ky(t,e){return k(await O(`/accounts/${t}/iam/groups/${e}/project-grants`)).grants}async function Zc(t,e,n){return k(await i.delete(`/accounts/${t}/iam/groups/${e}/members/${n}`))}async function Hy(t,e){return k(await O(`/accounts/${t}/iam/members/${e}/groups`)).groups}async function Wy(t,e){let n=k(await O(`/accounts/${t}/iam/members/${e}/project-access`));return{projects:n.projects,account_wide_policies:n.account_wide_policies??[]}}async function zy(t,e={}){let n=new URLSearchParams;e.resourceType&&n.set("resourceType",e.resourceType),e.principalType&&n.set("principalType",e.principalType),e.principalId&&n.set("principalId",e.principalId),e.projectId&&n.set("projectId",e.projectId);let r=n.toString();return k(await O(`/accounts/${t}/iam/resource-grants${r?`?${r}`:""}`)).grants}async function Vy(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 k(await O(`/accounts/${t}/iam/policies${r?`?${r}`:""}`)).policies}async function Jy(t,e){return k(await i.post(`/accounts/${t}/iam/policies`,e,{showErrors:!1}))}async function Xy(t,e,n){return k(await i.patch(`/accounts/${t}/iam/policies/${e}`,n,{showErrors:!1}))}async function Qy(t,e){return k(await i.delete(`/accounts/${t}/iam/policies/${e}`))}async function Yy(t,e){return k(await i.post(`/accounts/${t}/iam/policies:bulk-delete`,{policy_ids:e},{showErrors:!1}))}async function Zy(t,e){return k(await i.post(`/accounts/${t}/iam/policies:bulk-import`,{policies:e},{showErrors:!1}))}async function el(t){return k(await O(`/accounts/${t}/iam/roles`)).roles}async function tl(t){return k(await O(`/accounts/${t}/iam/agent-identities`)).agents}async function nl(t,e){return k(await O(`/accounts/${t}/iam/roles/${e}/permissions`))}async function eh(t){return k(await O(`/accounts/${t}/iam/actions`)).actions}async function rl(t,e){return k(await O(`/accounts/${t}/iam/roles/${e}/usage`))}async function sl(t,e){return k(await i.post(`/accounts/${t}/iam/roles`,e,{showErrors:!1}))}async function il(t,e,n){return k(await i.patch(`/accounts/${t}/iam/roles/${e}`,n,{showErrors:!1}))}async function ol(t,e,n){return k(await i.put(`/accounts/${t}/iam/roles/${e}/permissions`,{actions:n},{showErrors:!1}))}async function al(t,e){return k(await i.delete(`/accounts/${t}/iam/roles/${e}`,{showErrors:!1}))}async function th(t,e,n){return k(await i.patch(`/accounts/${t}/iam/members/${e}/super-admin`,{isSuperAdmin:n}))}async function nh(t){return k(await O(`/accounts/${t}/iam/scim/tokens`)).tokens}async function rh(t,e){return k(await i.post(`/accounts/${t}/iam/scim/tokens`,e,{showErrors:!1}))}async function sh(t,e){return k(await i.delete(`/accounts/${t}/iam/scim/tokens/${e}`))}async function ih(t){return k(await O(`/accounts/${t}/iam/mfa-required`))}async function oh(t){return k(await O(`/accounts/${t}/iam/mfa-required/preview`))}async function ah(t,e){return k(await i.patch(`/accounts/${t}/iam/mfa-required`,{enabled:e},{showErrors:!1}))}async function ch(t){return k(await O(`/accounts/${t}/iam/sso/provider`)).provider}async function lh(t,e){return k(await i.put(`/accounts/${t}/iam/sso/provider`,e,{showErrors:!1})).provider}async function uh(t,e){return k(await i.post(`/accounts/${t}/iam/sso/provider/from-metadata`,e,{showErrors:!1})).provider}async function ph(t){return k(await i.delete(`/accounts/${t}/iam/sso/provider`))}async function dh(t){return k(await O(`/accounts/${t}/iam/sso/mappings`)).mappings}async function gh(t,e){return k(await i.post(`/accounts/${t}/iam/sso/mappings`,e,{showErrors:!1}))}async function mh(t,e){return k(await i.delete(`/accounts/${t}/iam/sso/mappings/${e}`))}async function fh(t){return k(await O(`/accounts/${t}/iam/session-policy`))}async function yh(t,e){return k(await i.patch(`/accounts/${t}/iam/session-policy`,e,{showErrors:!1}))}async function hh(t){return k(await O(`/accounts/${t}/iam/sessions`)).sessions}async function bh(t,e){return k(await i.post(`/accounts/${t}/iam/sessions/${e}/revoke`,{},{showErrors:!1}))}async function xh(t){return k(await O(`/accounts/${t}/iam/pat-policy`))}async function _h(t,e){return k(await i.patch(`/accounts/${t}/iam/pat-policy`,e,{showErrors:!1}))}async function Ph(t){return k(await O(`/accounts/${t}/iam/service-accounts`)).service_accounts}async function kh(t,e){return k(await i.post(`/accounts/${t}/iam/service-accounts`,e,{showErrors:!1}))}async function wh(t,e){return k(await i.post(`/accounts/${t}/iam/service-accounts/${e}/disable`,{},{showErrors:!1}))}async function Sh(t,e){return k(await i.delete(`/accounts/${t}/iam/service-accounts/${e}`))}async function vh(t){return k(await O(`/accounts/${t}/audit/webhooks`)).webhooks}async function Ch(t,e){return k(await i.post(`/accounts/${t}/audit/webhooks`,e,{showErrors:!1}))}async function Ah(t,e,n){return k(await i.patch(`/accounts/${t}/audit/webhooks/${e}`,n))}async function Rh(t,e){return k(await i.delete(`/accounts/${t}/audit/webhooks/${e}`))}async function Th(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 k(await O(`/accounts/${t}/audit${r?`?${r}`:""}`))}async function cl(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),k(await O(`/accounts/${t}/iam/members/${e}/effective?${r.toString()}`))}async function ll(t,e,n){return n.length===0?[]:k(await i.post(`/accounts/${t}/iam/members/${e}/effective:batch`,{probes:n})).results}async function Ih(t){return k(await O(`/accounts/${t}/iam/enterprise-demo`)).enabled}async function Eh(t,e){return k(await i.put(`/accounts/${t}/iam/enterprise-demo`,{enabled:e})).enabled}async function ul(t){return a(await i.get(`/accounts/${t}/iam/oauth-clients`,{showErrors:!1}))}async function pl(t,e){return a(await i.get(`/accounts/${t}/iam/oauth-clients/${e}`,{showErrors:!1}))}async function dl(t,e){return a(await i.post(`/accounts/${t}/iam/oauth-clients`,e,{showErrors:!1}))}async function gl(t,e,n){return a(await i.patch(`/accounts/${t}/iam/oauth-clients/${e}`,n,{showErrors:!1}))}async function ml(t,e){return a(await i.post(`/accounts/${t}/iam/oauth-clients/${e}/rotate-secret`,{},{showErrors:!1}))}async function fl(t,e){return a(await i.delete(`/accounts/${t}/iam/oauth-clients/${e}`,{showErrors:!1}))}function Up(t){return i.get(t,{showErrors:!1})}function jh(t){let e=new URLSearchParams;t?.principalType&&e.set("principal_type",t.principalType),t?.principalId&&e.set("principal_id",t.principalId),t?.scopeType&&e.set("scope_type",t.scopeType),t?.scopeId&&e.set("scope_id",t.scopeId),t?.objectType&&e.set("object_type",t.objectType),t?.objectId&&e.set("object_id",t.objectId),t?.roleId&&e.set("role_id",t.roleId),t?.includeExpired&&e.set("include_expired","true");let n=e.toString();return n?`?${n}`:""}async function yl(t,e){return a(await Up(`/accounts/${t}/iam/assignments${jh(e)}`)).assignments}async function hl(t,e){let n={principal_type:e.principal.type,principal_id:e.principal.id,scope_type:e.scope.type,scope_id:e.scope.type==="project"?e.scope.id:null};return e.roleId?n.role_id=e.roleId:n.role_key=e.roleKey,e.object&&(n.object_type=e.object.type,n.object_id=e.object.id),e.expiresAt!==void 0&&(n.expires_at=e.expiresAt),a(await i.post(`/accounts/${t}/iam/assignments`,n))}async function bl(t,e){return a(await i.delete(`/accounts/${t}/iam/assignments/${e}`)).assignment}async function xl(t,e){let n=e?.scopeType?`?scope_type=${e.scopeType}`:"";return a(await Up(`/accounts/${t}/iam/permissions${n}`)).permissions}async function $h(){let t=await i.get("/account/deletion-status",{showErrors:!1});return t.error?.status===404?null:a(t,"Failed to load account deletion status")}async function Mh(t="User requested deletion"){return a(await i.post("/account/request-deletion",{reason:t},{showErrors:!1}),"Failed to request account deletion")}async function qh(){return a(await i.post("/account/cancel-deletion",void 0,{showErrors:!1}),"Failed to cancel account deletion")}async function Dh(){return a(await i.delete("/account/delete-immediately",{showErrors:!1}),"Failed to delete account immediately")}async function Oh(){return(await i.get("/user-roles",{showErrors:!1})).data??{isAdmin:!1,role:null}}function Uh(){return i.get("/admin/api/provider-distribution").then(t=>a(t))}function Fh(t=300){return i.get(`/admin/api/sandboxes?limit=${t}`).then(e=>a(e))}function Lh(t){return i.put("/admin/api/provider-distribution",t).then(e=>a(e))}function Gh(t){return i.get(`/admin/api/provider-analytics?days=${t}`).then(e=>a(e))}function Bh(t,e){return i.post(`/admin/api/sandboxes/${encodeURIComponent(t)}/migrate`,{targetProvider:e}).then(n=>a(n))}function Nh(){return i.get("/admin/api/provider-fallback").then(t=>a(t))}function Kh(t){return i.put("/admin/api/provider-fallback",{enabled:t}).then(e=>a(e))}async function Hh(t){return a(await i.get(`/google/auth-url?return_url=${encodeURIComponent(t)}`),"Failed to get Google auth URL")}async function Wh(t,e){return a(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 _l(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 a(await i.get(`/projects/${t}/review/items${r?`?${r}`:""}`,{showErrors:!1}))}async function Pl(t,e){return a(await i.get(`/projects/${t}/review/items/${e}`))}async function kl(t,e){return a(await i.post(`/projects/${t}/review/items`,e))}async function wl(t,e,n){return a(await i.post(`/projects/${t}/review/items/${e}/act`,n))}async function Sl(t,e){return a(await i.post(`/projects/${t}/review/bulk`,e))}async function vl(t){return a(await i.get(`/p/share?sandbox_id=${encodeURIComponent(t)}`),"Failed to load public links").shares??[]}async function Cl(t){return a(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 Al(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 ln=class extends Error{constructor(n,r){super(n);this.status=r;this.name="PublicSessionShareError"}status};function Fp(t,e=""){return`${Ze()}/public/session-shares/${encodeURIComponent(t)}${e}`}async function Lp(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 ln(s,e.status)}return r}async function zh(t){return Lp(Fp(t))}async function Vh(t){return Lp(Fp(t,"/messages"))}async function Rl(t,e){let n=new URLSearchParams;t&&n.set("account_id",t),e?.mine&&n.set("mine","true");let r=n.size>0?`?${n.toString()}`:"";return a(await i.get(`/accounts/tokens${r}`))}async function Tl(t){let{accountId:e,expiresAt:n,projectId:r,name:s}=t;return a(await i.post("/accounts/tokens",{name:s,...e?{account_id:e}:{},...n?{expires_at:n}:{},...r?{project_id:r}:{}}))}async function Il(t,e){let n=e?`?account_id=${encodeURIComponent(e)}`:"";return a(await i.delete(`/accounts/tokens/${t}${n}`))}async function El(t){return a(await i.get(`/projects/${t}/cli-token`))}async function jl(t,e){return a(await i.post(`/projects/${t}/cli-token`,e??{}))}async function $l(t,e){return a(await i.delete(`/projects/${t}/cli-token/${e}`))}async function Ml(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 a(await i.get(`/accounts/${t}/audit${r?`?${r}`:""}`))}async function ql(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 a(await i.get(`/projects/${t}/audit${r?`?${r}`:""}`))}async function Dl(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 a(await i.get(`/accounts/${t}/audit/export${r?`?${r}`:""}`))}async function Ol(t){return a(await i.get(`/accounts/${t}/audit/webhooks`))}async function Ul(t,e){return a(await i.post(`/accounts/${t}/audit/webhooks`,e))}async function Fl(t,e,n){return a(await i.patch(`/accounts/${t}/audit/webhooks/${e}`,n))}async function Ll(t,e){return a(await i.delete(`/accounts/${t}/audit/webhooks/${e}`))}async function Gl(t,e){return a(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 Bl(t,e){return a(await i.post(`/projects/${t}/connect-requests`,{slug:e.slug,expires_in_minutes:e.expiresInMinutes}),"Failed to mint connect link")}async function Jh(t){return a(await i.get(`/approval-links/${t}`),"Failed to load approval")}async function Nl(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 a(await i.get(`/marketplace/items${n}`))}async function Kl(){return a(await i.get("/marketplace/marketplaces"))}async function Hl(){return a(await i.get("/marketplace/marketplaces/featured"))}async function Wl(t){return a(await i.get(`/marketplace/items/${encodeURIComponent(t)}`),"Item not found")}async function zl(t,e){return a(await i.get(`/marketplace/items/${encodeURIComponent(t)}/file?path=${encodeURIComponent(e)}`),"File not found")}async function Vl(){return a(await i.get("/marketplace/sources"))}async function Jl(t){return a(await i.post("/marketplace/sources",t),"Failed to add marketplace source")}async function Xl(t){return a(await i.delete(`/marketplace/sources/${encodeURIComponent(t)}`),"Failed to remove marketplace source")}async function Xh(t,e){return a(await i.post(`/projects/${encodeURIComponent(t)}/marketplace/install-session`,{id:e}),"Failed to start marketplace install session")}async function Qh(t){return a(await i.get(`/templates/${encodeURIComponent(t)}`))}async function Yh(t,e){return a(await i.post(`/templates/${encodeURIComponent(t)}/install`,e))}async function Ql(t){return a(await i.get(`/projects/${t}/apps`),"Failed to list Apps").apps}async function Yl(t,e){return a(await i.post(`/projects/${t}/apps`,e),"Failed to create App")}async function Zl(t,e){return a(await i.get(`/projects/${t}/apps/${e}`),"Failed to load App")}async function eu(t,e,n){return a(await i.patch(`/projects/${t}/apps/${e}`,n),"Failed to update App")}async function tu(t,e){return a(await i.delete(`/projects/${t}/apps/${e}`),"Failed to delete App")}async function nu(t,e){return a(await i.get(`/projects/${t}/apps/${e}/access`),"Failed to load App access policy")}async function ru(t,e,n){return a(await i.patch(`/projects/${t}/apps/${e}/access`,n),"Failed to update App access policy")}async function su(t,e){return a(await i.post(`/projects/${t}/apps/${e}/access-session`,{}),"Failed to create App access session")}async function un(t,e){return a(await i.post(`/projects/${t}/apps/artifacts`,e),"Failed to register App artifact")}async function pn(t,e,n){return a(await i.post(`/projects/${t}/apps/artifacts/${e}/finalize`,n),"Failed to finalize App artifact")}async function Zh(t){return t instanceof Uint8Array?t:new Uint8Array(await t.arrayBuffer())}async function eb(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 iu(t,e,n={}){let r=await Zh(e),s=n.mediaType??"application/gzip",o=await un(t,{kind:"archive",media_type:s});if(!o.upload)throw new Error("App artifact registration did not return an upload URL");if(r.byteLength>o.upload.max_bytes)throw new Error(`App artifact exceeds ${o.upload.max_bytes} bytes`);n.onProgress?.(0,r.byteLength);let u=await fetch(o.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),pn(t,o.artifact.artifact_id,{sha256:await eb(r),size_bytes:r.byteLength})}async function ou(t,e,n){return a(await i.post(`/projects/${t}/apps/${e}/deployments`,n),"Failed to create App deployment")}async function au(t,e){return a(await i.get(`/projects/${t}/apps/${e}/deployments`),"Failed to list App deployments").deployments}async function cu(t,e,n){return a(await i.get(`/projects/${t}/apps/${e}/deployments/${n}`),"Failed to load App deployment")}async function lu(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 o=s.size?`?${s.toString()}`:"";return a(await i.get(`/projects/${t}/apps/${e}/deployments/${n}/logs${o}`),"Failed to load App logs")}async function uu(t,e){return a(await i.post(`/projects/${t}/apps/${e}/start`,{}),"Failed to start App")}async function pu(t,e){return a(await i.post(`/projects/${t}/apps/${e}/stop`,{}),"Failed to stop App")}async function du(t,e,n){return a(await i.post(`/projects/${t}/apps/${e}/rollback`,{deployment_id:n}),"Failed to roll back App")}var He=class extends Error{constructor(n,r,s){super(r);this.code=n;this.status=s;this.name="HeadlessAuthError"}code;status};function tb(t){let e=ie(t?.backendUrl??I().backendUrl??"");if(!e)throw new He("not_configured","backendUrl is not configured (configureKortix / createKortix first)",0);return e.endsWith("/v1")?e:`${e}/v1`}async function ee(t,e,n){let r=n?.fetch??I().fetch??((d,f)=>fetch(d,f)),s={accept:"application/json"};e.body!==void 0&&(s["content-type"]="application/json"),e.bearer&&(s.authorization=`Bearer ${e.bearer}`);let o=await r(`${tb(n)}${t}`,{method:e.method??(e.body!==void 0?"POST":"GET"),headers:s,...e.body!==void 0?{body:JSON.stringify(e.body)}:{},...n?.signal?{signal:n.signal}:{}}),u=await o.text().catch(()=>""),p=null;try{p=u?JSON.parse(u):null}catch{p=u}if(!o.ok){let d=p&&typeof p=="object"?p:{};throw new He(typeof d.error=="string"?d.error:"auth_error",typeof d.error_description=="string"&&d.error_description?d.error_description:typeof d.error=="string"?d.error:o.statusText||`HTTP ${o.status}`,o.status)}return p}function dn(t,e){return ee("/auth/signup",{body:t},e)}function gn(t,e){return ee("/auth/sign-in/password",{body:t},e)}function mn(t,e){return ee("/auth/sign-in/magic-link",{body:t},e)}function fn(t,e){return ee("/auth/verify-otp",{body:t},e)}function yn(t,e){return ee("/auth/sign-in/oauth",{body:t},e)}function hn(t,e){return ee("/auth/oauth/exchange",{body:t},e)}function We(t,e){return ee("/auth/refresh",{body:t},e)}function bn(t,e){return ee("/auth/password/reset",{body:t},e)}function xn(t,e,n){return ee("/auth/password/update",{body:t,bearer:e},n)}function _n(t,e){return ee("/auth/user",{bearer:t},e)}function Pn(t,e={},n){return ee("/auth/sign-out",{body:e,bearer:t},n)}function kn(t={}){let e=t.refreshSkewSeconds??60,n=t.now??(()=>Date.now()),r=null,s=null,o=!t.storage,u=null,p=x=>(x.expires_at??0)*1e3,d=x=>p(x)-e*1e3<=n();async function f(){t.storage&&(r?await t.storage.set(JSON.stringify({session:r,user:s})):await t.storage.remove()),t.onChange?.(r)}async function m(){if(o)return r;o=!0;let x=await t.storage.get();if(x)try{let P=JSON.parse(x);P.session?.access_token&&P.session?.refresh_token&&(r=P.session,s=P.user??null)}catch{r=null}return r}async function h(){if(await m(),!r)return null;if(!u){let x=r.refresh_token;u=We({refresh_token:x},t.request).then(async P=>(r=P.session,P.user&&(s=P.user),await f(),r)).catch(async P=>{let A=P&&typeof P=="object"&&"status"in P?P.status:0;if(A>=400&&A<500)return r=null,s=null,await f(),null;throw P}).finally(()=>{u=null})}return u}return{current:()=>r,user:()=>s,load:m,async set(x,P){await m(),r=x,P!==void 0&&(s=P),x||(s=null),await f()},async getToken(){return await m(),r?d(r)?(await h().catch(()=>r))?.access_token??null:r.access_token:null},refresh:h,async clear(){r=null,s=null,o=!0,await f()}}}var rb=["control_plane","provider_ingress","daemon","upstream_port"];function gu(t){return typeof t=="string"&&rb.includes(t)?t:null}function sb(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 mu(t,e){let n=(t===void 0?se():t)||null;if(!n)return{status:0,ok:!1,health:null,body:"",hop:null,upstreamStatus:null};let r=await M(`${n}/kortix/health`,{method:"GET",...e},{retryOnAuthError:!1}),s=await r.text().catch(()=>""),o=null;try{o=s?JSON.parse(s):null}catch{o=null}let u=o,p=gu(r.headers.get("X-Kortix-Proxy-Hop"))??gu(o?.hop),d=Number(r.headers.get("X-Kortix-Upstream-Status")),f=o?.upstream_status,m=Number.isFinite(d)&&d>0?d:typeof f=="number"?f:null;return{status:r.status,ok:r.ok,health:u,body:s,hop:p,upstreamStatus:m}}var ce={DESKTOP:"6080",DESKTOP_HTTPS:"6081",PRESENTATION_VIEWER:"3210",STATIC_FILE_SERVER:"3211",KORTIX_MASTER:"8000",BROWSER_STREAM:"9223",BROWSER_VIEWER:"9224",SSH:"22"};var Gp=/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s)"'<>]*/g,Bp=/^https?:\/\/p(\d+)-([^.]+)\.localhost(?::(\d+))?(\/.*)?$/,Np=/^https?:\/\/(?:dev|staging|prod|preview)-p(\d+)-([a-z0-9-]+)\.[^/]+?(?::(\d+))?(\/.*)?$/i,Kp=new Set([22,4096,parseInt(ce.KORTIX_MASTER,10)]);function ib(t){return Bp.test(t)}function wn(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 ob(t){let e=t.indexOf("](");return e===-1?t:t.slice(0,e)}var ab=new Set(["'",'"',"`","<","(","["]),cb=new Set([">","'",'"',"`",")","]",",",";",".","!","?"]);function lb(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&&ab.has(t[e]);)e++;for(;n>e&&cb.has(t[n-1]);)n--;return t.slice(e,n)}function ub(t){return t.match(/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s"'<>)]*/i)?.[0]??null}var pb=/^\/proxy\/(\d{1,5})(\/.*)?$/,db=/^\/(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 Hp(t){if(!t)return!1;try{let e=new URL(t);return e.hostname!=="localhost"&&e.hostname!=="127.0.0.1"?!1:db.test(e.pathname)}catch{return!1}}function mt(t){if(!t)return null;let e=lb(ob(t.trim())),n=yu(e);if(n){let r=wn(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 o=`${r.pathname||"/"}${r.search}${r.hash}`,u=parseInt(ce.KORTIX_MASTER,10);if(s===u){let d=r.pathname.match(pb);if(d){let f=parseInt(d[1],10);if(f>=1&&f<=65535)return s=f,o=wn(`${d[2]||"/"}${r.search}${r.hash}`),{originalUrl:`http://localhost:${s}${o}`,port:s,path:o}}}let p=wn(o);return{originalUrl:`${r.protocol}//${r.hostname}:${s}${p}`,port:s,path:p}}catch{let r=ub(t);return r&&r!==t?mt(r):null}}function gb(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 o=r.index,u=o+r[0].length;e.some(([d,f])=>o>=d&&u<=f)||e.push([o,u])}return e}function mb(t,e){return e.some(([n,r])=>t>=n&&t<r)}function Wp(t){let e=[],n=new Set,r=gb(t);Gp.lastIndex=0;let s;for(;(s=Gp.exec(t))!==null;){let o=mt(s[0]);if(!o)continue;let{originalUrl:u,port:p,path:d}=o;p<1||p>65535||Kp.has(p)||n.has(u)||(n.add(u),e.push({originalUrl:u,port:p,path:d,startIndex:s.index,endIndex:s.index+u.length,inCodeBlock:mb(s.index,r)}))}return e}function fb(t){return Wp(t).length>0}function yb(t){try{let{hostname:e}=new URL(t);return e==="localhost"||e==="127.0.0.1"}catch{return!1}}function zp(t){return t.trim().toLowerCase().split("_").join("-")}function Vp(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return t.slice(0,e)}function hb(t,e,n){let r=n.previewUrlTemplate;if(!r||!r.includes("{port}")||!r.includes("{sandbox}"))return null;let s=r.split("{port}").join(String(t)).split("{sandbox}").join(zp(n.sandboxId));return`${Vp(s)}${e}`}function Jp(t){return t.sandboxId.trim().length>0}function he(t,e,n){let r=wn(e);if(!Jp(n))return Zp(t,r);let s=hb(t,r,n);return s||(yb(n.apiBaseUrl)?`http://p${t}-${zp(n.sandboxId)}.localhost:${n.backendPort}${r}`:`${Vp(n.apiBaseUrl)}/p/${n.sandboxId}/${t}${r}`)}function bb(t,e){if(!t)return;let r=t.replace(/^\/workspace\//,"").replace(/^\/+/,"").split("/").filter(Boolean).map(s=>encodeURIComponent(s)).join("/");return he(3211,`/open?path=/workspace/${r}`,e)}function Xp(t){return`/open?path=/${(t.startsWith("/workspace")?t:`/workspace/${t.replace(/^\/+/,"")}`).split("/").filter(Boolean).map(r=>encodeURIComponent(r)).join("/")}`}function xb(t){return`http://localhost:3211${Xp(t)}`}function Qp(){return"/health"}function _b(t){return he(3211,Qp(),t)}function Pb(t,e){return he(t,"/",e)}function Yp(t){let e=mt(t);return!(!e||Kp.has(e.port)||Hp(t))}function fu(t,e){if(!t)return t;let n=mt(t);return n?Yp(n.originalUrl)?he(n.port,n.path,e):n.originalUrl:t}function Zp(t,e="/"){return`http://localhost:${t}${e}`}var ed=/^https?:\/\/[^/]+\/v1\/p\/([^/]+)\/(\d+)(\/.*)?$/;function yu(t){let e=t.match(Bp);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(Np);if(n){let s=443;try{let o=new URL(t);s=o.port?parseInt(o.port,10):o.protocol==="https:"?443:80}catch{return null}return{port:parseInt(n[1],10),sandboxId:n[2],backendPort:s,path:n[4]||"/"}}let r=t.match(ed);if(r)try{let s=new URL(t);return{port:parseInt(r[2],10),sandboxId:r[1],backendPort:parseInt(s.port,10)||(s.protocol==="https:"?443:80),path:r[3]||"/"}}catch{return null}return null}function kb(t){try{let e=yu(t);return e?`http://localhost:${e.port}${e.path}`:null}catch{return null}}function wb(t){return ib(t)||Np.test(t)||ed.test(t)}function Sb(t){try{let{hostname:e,port:n}=new URL(t);return(e==="localhost"||e==="127.0.0.1")&&n!==""}catch{return!1}}var gt="/web-proxy/";function vb(t,e){try{let n=new URL(t);if(n.protocol!=="http:"&&n.protocol!=="https:")return null;let r=n.protocol.replace(":",""),s=`${gt}${r}/${n.host}${n.pathname}${n.search}${n.hash}`,o=parseInt(ce.KORTIX_MASTER,10);return`${he(o,"/",e).replace(/\/$/,"")}${s}`}catch{return null}}function Cb(t){try{let e=new URL(t),n=e.pathname.indexOf(gt);if(n===-1)return null;let s=e.pathname.slice(n+gt.length).match(/^(https?)\/([\w.\-]+(?::\d+)?)(\/.*)?$/);if(!s)return null;let o=s[1],u=s[2],p=s[3]||"/";return`${o}://${u}${p}${e.search}${e.hash}`}catch{return null}}function Ab(t){try{return new URL(t).pathname.includes(gt)}catch{return t.includes(gt)}}function Rb(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 Tb(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 td="frontend";function Sn(t,e,n){(t==="error"?console.error:t==="warn"?console.warn:t==="debug"?console.debug:console.log)(`[${td}] ${e}`,...n?[n]:[]);try{me().app.log({service:td,level:t,message:e,extra:n})}catch{}}var be={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 nd(t){return{type:"heartbeat-gap",gapMs:t}}function rd(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 Ib={now:()=>Date.now(),setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t)},Eb=16,jb=8,$b=6e4,Mb=5e3,qb=250,Db=1e3,Ob=3e4,Ub=5,Fb=3e3,Lb=3e4,Gb=2e4,Bb=2e3,Nb=8;function Kb(t){if(t.type==="session.status")return`session.status:${t.properties.sessionID}`;if(t.type==="lsp.updated")return"lsp.updated"}function sd(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)}}var vn=new WeakMap;function Hb(t,e,n){let r=e.timers??Ib,s=e.connectTimeoutMs??Gb,o=e.heartbeatTimeoutMs??$b,u=e.maxConsecutiveHardFailures??Nb,p=new AbortController;function d(j,...l){for(let b of n){let c=j(b);if(c)try{c(...l)}catch(S){console.warn("[opencode-events] subscriber handler threw, skipping",S)}}}let f=r.now(),m=[],h,x=0,P=new Map,A=()=>{if(h&&r.clearTimeout(h),h=void 0,m.length===0)return;let j=m;m=[],P.clear(),x=r.now(),f=r.now();for(let l of j)l&&d(b=>b.onEvent,l.event)},E=()=>{if(h)return;let j=r.now()-x;h=r.setTimeout(A,Math.max(0,Eb-j))};return(async()=>{let j=0,l=0;for(;!p.signal.aborted;){let b=!1,c=!1,S,w,R=null,$=r.now(),D=new AbortController,q=sd(p.signal);q.promise.then(()=>D.abort());try{let U=await new Promise((Q,K)=>{let H=!1;w=r.setTimeout(()=>{H||(H=!0,be.warn("SSE connect timed out, forcing reconnect",{connectTimeoutMs:s}),D.abort(),K(new Error(`SSE connect timed out after ${s}ms`)))},s),t.global.event({signal:D.signal,sseDefaultRetryDelay:Fb,sseMaxRetryDelay:Lb,sseMaxRetryAttempts:1}).then(Z=>{H||(H=!0,r.clearTimeout(w),Q(Z))},Z=>{H||(H=!0,r.clearTimeout(w),K(Z))})}),{stream:F}=U;f=r.now();let L=()=>{r.clearTimeout(S),S=r.setTimeout(()=>{be.warn("SSE heartbeat timeout, forcing reconnect"),D.abort()},o)};L();let J=r.now(),N=F[Symbol.asyncIterator]();for(;!D.signal.aborted;){let Q=N.next().then(de=>({kind:"next",result:de}),de=>({kind:"error",error:de})),K=sd(D.signal),H=await Promise.race([Q,K.promise.then(()=>({kind:"aborted"}))]);if(K.cleanup(),H.kind==="aborted")break;if(H.kind==="error")throw H.error;if(H.result.done)break;b=!0,L();let Z=H.result.value,Ie=Z&&typeof Z=="object"&&"payload"in Z?Z.payload:Z;if(!Ie?.type)continue;let On=Kb(Ie);if(On){let de=P.get(On);de!==void 0&&(m[de]=void 0),P.set(On,m.length)}m.push({type:Ie.type,event:Ie}),E(),!(r.now()-J<jb)&&(J=r.now(),await new Promise(de=>r.setTimeout(de,0)))}c=b}catch(U){if(p.signal.aborted)break;R=U;let F=String(U),L=F.includes("401")||F.includes("403")||F.includes("Unauthorized")||F.includes("Token refresh failed");if(be.error("SSE event stream error",{error:F,retryCount:j,isAuthError:L}),L)try{Ye(),await jt(),be.info("SSE: refreshed auth token after auth error")}catch(J){be.error("SSE: failed to refresh auth token",{error:String(J)})}}finally{r.clearTimeout(S),r.clearTimeout(w),D.abort(),q.cleanup(),A()}if(p.signal.aborted)break;let X=r.now()-$,W=R?.cause?.status;if(l=!b&&(typeof W=="number"&&W>=400||X<Bb)?l+1:0,l>=u){be.error("SSE event stream parked \u2014 giving up after consecutive hard failures",{consecutiveFailures:l,lastError:String(R)}),d(U=>U.onParked,{consecutiveFailures:l,lastError:R});break}let T=r.now()-f;T>Mb&&d(U=>U.onGapRehydrate,T),c?j=0:(j++,j>1&&be.warn("SSE event stream reconnecting",{retryCount:j}));let z=c?qb:Math.min(Db*2**Math.min(j-1,Ub),Ob);await new Promise(U=>{let F=r.setTimeout(U,z),L=()=>{r.clearTimeout(F),U()};p.signal.addEventListener("abort",L,{once:!0})})}})(),{subscribers:n,teardown:()=>{p.abort(),h&&r.clearTimeout(h)}}}function Cn(t){let{client:e,onEvent:n,onGapRehydrate:r,onParked:s,signal:o}=t,u={onEvent:n,onGapRehydrate:r,onParked:s},p=vn.get(e);p?p.subscribers.add(u):(p=Hb(e,t,new Set([u])),vn.set(e,p));let d=p,f=!1,m=()=>{f||(f=!0,o&&o.removeEventListener("abort",h),d.subscribers.delete(u),d.subscribers.size===0&&(d.teardown(),vn.get(e)===d&&vn.delete(e)))},h=()=>m();return o&&(o.aborted?m():o.addEventListener("abort",h,{once:!0})),{close:m}}function Wb(){return me()}var An=new Map,ft=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 id(t,e){vt(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 C(`Kortix SDK: backendUrl must be an absolute URL outside the browser (got ${JSON.stringify(l)}). Relative paths like "/api/kortix" only resolve against a page origin \u2014 configure an absolute backendUrl for server-side hosts.`,{code:"INVALID_BACKEND_URL"})}}function r(l){let b=I().backendUrl??t.backendUrl,c=80,S=n(b);return S&&(c=S.port?Number(S.port):S.protocol==="https:"?443:80),xp({sandboxId:l,apiBaseUrl:b,backendPort:c})}let s={signUp:dn,signInWithPassword:gn,sendMagicLink:mn,verifyOtp:fn,signInWithProvider:yn,exchangeCode:hn,refresh:We,resetPassword:bn,updatePassword:xn,user:_n,signOut:Pn,session:kn},o={list:$s,get:qs,create:Ms,updateName:Ds,branding:{get:Os,update:Us,uploadAsset:Fs,removeAsset:Ls,reset:Gs},leave:Ys,members:Bs,invite:Ns,removeMember:Xs,updateMemberRole:Qs,invites:Ks,cancelInvite:Hs,resendInvite:Ws,tokens:{list:Rl,create:Tl,revoke:Il},audit:{log:Ml,export:Dl,webhooks:{list:Ol,create:Ul,update:Fl,remove:Ll}}},u={assignments:{list:yl,create:hl,revoke:bl},permissions:{list:xl,forRole:nl},roles:{list:el,create:sl,update:il,setPermissions:ol,remove:al,usage:rl},groups:{list:Wc,get:zc,create:Vc,update:Jc,remove:Xc,members:{list:Qc,add:Yc,remove:Zc}},agentIdentities:tl,oauthClients:{list:ul,get:pl,create:dl,update:gl,rotateSecret:ml,remove:fl},can:cl,canBatch:ll},p={accountState:za,accountStateMinimal:Va,transactions:Ja,transactionsSummary:Xa,creditBreakdown:Qa,usageHistory:Ya,usageRollup:pc,sessionCosts:{list:mc,get:cn},tierConfigurations:Za,checkout:{createSession:l=>ec(l),confirmSession:(l,b)=>tc(l,b)},subscription:{createPortalSession:(l,b)=>nc(l,b),cancel:(l,b)=>rc(l,b),reactivate:l=>sc(l),scheduleDowngrade:(l,b,c)=>ic(l,b,c),cancelScheduledChange:l=>oc(l),prorationPreview:(l,b)=>ac(l,b)},credits:{purchase:l=>cc(l),autoTopupSettings:l=>lc(l),configureAutoTopup:l=>uc(l)}},d={describe:zs,accept:Vs,decline:Js},f={list:Ae,listForAccount:ei,get:Wt,detail:zt,create:si,createRepo:ii,provision:oi,update:Xt,archive:Qt,llmCatalog:Vt,modelPicker:Jt,sandboxHealth:tn,sandboxTemplates:$o,sessions:Ne,createSession:Ke},m={linkRepository:pi,getInstallation:di,listInstallations:gi,listLinkableInstallations:mi,listRepositories:fi,listRepositoryBranches:yi,linkInstallation:bi,saveInstallation:hi,deleteInstallation:xi},h={list:vl,create:Cl,revoke:Al},x=Ro,P={items:l=>Nl(l),item:l=>Wl(l),itemFile:(l,b)=>zl(l,b),marketplaces:()=>Kl(),featured:()=>Hl(),sources:{list:()=>Vl(),add:l=>Jl(l),remove:l=>Xl(l)}};function A(l){return{catalog:()=>Yt(l),tools:()=>lt(l),search:(...b)=>Yi(l,...b),describe:(...b)=>Zi(l,...b),call:(...b)=>eo(l,...b),uploadAttachment:(...b)=>to(l,...b)}}function E(l){let b={list:()=>no(l),listAll:()=>ro(l),reconcile:(...c)=>so(l,...c),reconcileMember:(...c)=>io(l,...c),updateCredential:(...c)=>oo(l,...c),revoke:(...c)=>ao(l,...c),activate:(...c)=>co(l,...c),setDefault:(...c)=>lo(l,...c),pipedreamConnect:(...c)=>uo(l,...c),pipedreamFinalize:(...c)=>po(l,...c)};return{get:c=>Wt(l,c),detail:()=>zt(l),audit:c=>ql(l,c),update:c=>Xt(l,c),archive:()=>Qt(l),llmCatalog:()=>Vt(l),modelPicker:()=>Jt(l),sandboxHealth:()=>tn(l),onboardingComplete:(...c)=>ui(l,...c),apps:{list:()=>Ql(l),create:c=>Yl(l,c),get:c=>Zl(l,c),update:(...c)=>eu(l,...c),access:{get:(...c)=>nu(l,...c),update:(...c)=>ru(l,...c),session:(...c)=>su(l,...c)},remove:c=>tu(l,c),artifacts:{register:c=>un(l,c),uploadArchive:(...c)=>iu(l,...c),finalize:(...c)=>pn(l,...c)},deployments:{create:(...c)=>ou(l,...c),list:c=>au(l,c),get:(...c)=>cu(l,...c),logs:(...c)=>lu(l,...c)},start:c=>uu(l,c),stop:c=>pu(l,c),rollback:(...c)=>du(l,...c)},tokens:{list:()=>El(l),create:c=>jl(l,c),revoke:c=>$l(l,c)},setupLinks:{requestSecret:c=>Gl(l,c),requestConnector:c=>Bl(l,c)},validateManifest:c=>ni(l,c),gitToken:()=>ri(l),secrets:{list:()=>Li(l),upsert:c=>Gi(l,c),setStrategy:(...c)=>Bi(l,...c),broker:(...c)=>Ni(l,...c),remove:c=>Vi(l,c),setPersonal:(...c)=>Ji(l,...c),removePersonal:c=>Xi(l,c),setGitCredential:c=>zi(l,c),startProviderOAuth:(...c)=>Ki(l,...c),pollProviderOAuth:(...c)=>Hi(l,...c),removeProviderOAuth:c=>Wi(l,c)},access:{list:()=>wi(l),invite:(...c)=>Ci(l,...c),update:(...c)=>Si(l,...c),revoke:c=>vi(l,c),pendingInvites:()=>Ai(l),resendInvite:(...c)=>Ti(l,...c),revokeInvite:(...c)=>Ri(l,...c),requests:()=>_i(l),approveRequest:(...c)=>Pi(l,...c),rejectRequest:(...c)=>ki(l,...c),groupGrants:()=>Ii(l),attachGroupGrant:(...c)=>Ei(l,...c),updateGroupGrant:(...c)=>ji(l,...c),detachGroupGrant:c=>$i(l,c),resourceGrants:{list:()=>Mi(l),create:c=>qi(l,c),remove:c=>Di(l,c)}},connectors:{...A(l),list:()=>go(l),config:(...c)=>_o(l,...c),create:(...c)=>wo(l,...c),remove:(...c)=>vo(l,...c),sync:()=>mo(l),auth:{discover:(...c)=>So(l,...c)},setName:(...c)=>Po(l,...c),setCredentialMode:(...c)=>fo(l,...c),setAuthorizationStrategy:(...c)=>yo(l,...c),setCredential:(...c)=>To(l,...c),setSensitive:(...c)=>ho(l,...c),connections:b,policies:{get:(...c)=>bo(l,...c),set:(...c)=>xo(l,...c)},pipedream:{listApps:(...c)=>Co(l,...c),listSections:(...c)=>Ao(l,...c),connect:(...c)=>ko(l,...c),finalize:(...c)=>Io(l,...c)},discover:{list:(...c)=>Zt(l,...c),detail:(...c)=>en(l,...c)}},policies:{list:()=>Eo(l),set:(...c)=>jo(l,...c)},triggers:{list:()=>Ma(l),create:(...c)=>qa(l,...c),update:(...c)=>Da(l,...c),remove:(...c)=>Oa(l,...c),fire:(...c)=>Fa(l,...c),setActivation:(...c)=>Ua(l,...c)},files:{list:c=>Bo(l,c),read:(c,S)=>Ko(l,c,S),search:(...c)=>No(l,...c),archive:(...c)=>Ho(l,...c),history:(...c)=>Xo(l,...c)},git:{commits:()=>zo(l),commit:c=>Vo(l,c),commitDiff:c=>Jo(l,c),branches:()=>Wo(l),versionDiff:(...c)=>Qo(l,...c),inviteCollaborator:(...c)=>ti(l,...c)},changeRequests:{list:()=>Yo(l),get:c=>Zo(l,c),diff:c=>ea(l,c),mergePreview:c=>ta(l,c),open:(...c)=>na(l,...c),merge:(...c)=>ra(l,...c),close:(...c)=>sa(l,...c),reopen:(...c)=>ia(l,...c),requestChanges:(...c)=>oa(l,...c)},sessions:{list:c=>Ne(l,c),create:c=>Ke(l,c),ensureWarm:()=>fa(l),claimWarm:c=>ya(l,c)},review:{list:c=>_l(l,c),get:c=>Pl(l,c),submit:c=>kl(l,c),act:(...c)=>wl(l,...c),bulkAct:c=>Sl(l,c)},approvals:{list:c=>Oi(l,c),resolve:(...c)=>Fi(l,...c),sessionsNeedingInput:c=>Ui(l,c)},gateway:{logs:c=>jc(l,c),log:c=>$c(l,c),overview:c=>Mc(l,c),series:c=>qc(l,c),breakdown:c=>Dc(l,c),sessions:c=>Oc(l,c),errors:c=>Uc(l,c),budgets:()=>Fc(l),setBudget:c=>Lc(l,c),deleteBudget:c=>Gc(l,c),keys:()=>Bc(l),createKey:c=>Nc(l,c),revokeKey:c=>Kc(l,c),routing:{get:()=>Rc(l),set:c=>Tc(l,c),reset:()=>Ic(l),preview:c=>Ec(l,c)},playground:(c,S,w)=>Hc(l,c,S,w)},channels:{slack:{installation:()=>fc(l),connect:c=>yc(l,c),mode:()=>hc(l),manifest:()=>bc(l),disconnect:()=>xc(l),getFile:c=>_c(l,c),uploadFile:c=>Pc(l,c)},email:{installation:c=>wc(l,c),mode:()=>Sc(l),connect:c=>vc(l,c),disconnect:c=>Cc(l,c),updatePolicy:(...c)=>Ac(l,...c)}},updateFeatureFlag:(...c)=>ai(l,...c),updateExperimentalFeature:(...c)=>ci(l,...c),modelDefaults:{get:()=>Ga(l),set:c=>Ba(l,c),clear:c=>Na(l,c)},setDefaultAgent:c=>Wa(l,c),sandbox:{list:()=>Go(l),snapshots:()=>Mo(l),rebuildSnapshot:c=>qo(l,c),fixWithAgent:()=>Do(l),createTemplate:c=>Oo(l,c),updateTemplate:(...c)=>Uo(l,...c),removeTemplate:c=>Fo(l,c),buildTemplate:c=>Lo(l,c),setProvider:c=>li(l,c)},setAgentScope:(...c)=>Ka(l,...c),session:c=>j(l,c)}}function j(l,b){let c=null,S,w,R=null;async function $(){R||(R=nn(l,b,{showErrors:!1}).then(y=>{let T=typeof y.metadata?.opencode_model=="string"?y.metadata.opencode_model.trim():"",z=T.indexOf("/"),U=z>0&&z<T.length-1?{providerID:T.slice(0,z),modelID:T.slice(z+1)}:void 0,F=y.agent_name?.trim()||void 0;return{model:U,agent:F}}));try{return await R}catch(y){throw R=null,y}}function D(){if(c)return c;let y=jp(l,b);return y&&(c=y),c}async function q(y){let T=D();if(T)return T;let z=y?.readyTimeoutMs??18e4,U=Ft(I().backendUrl??t.backendUrl).catch(()=>null),F=`${l}
|
|
20
|
+
${b}`,L=An.get(F);if(L)return c=await L,await U,c;let J=(async()=>{let N=Date.now()+z,Q=()=>Math.max(0,N-Date.now()),K=await Re(l,b,Math.min(3e4,Q()));for(;Date.now()<N&&(K==null||(K.stage==="provisioning"||K.stage==="starting")&&K.retriable);)await new Promise(Ie=>setTimeout(Ie,Math.min(1e3,Q()))),K=await Re(l,b,Math.min(3e4,Q()));if(!K||K.stage!=="ready"||!K.sandbox||!K.opencode_session_id)throw new C(`Session runtime not ready (stage: ${K?.stage??"unknown"})`,{code:"RUNTIME_UNAVAILABLE"});let H=K.sandbox.external_id;if(!H)throw new C("Session sandbox has no external_id \u2014 cannot resolve its runtime URL",{code:"RUNTIME_UNAVAILABLE"});let Z=$t(H);return rp(Z,H),{opencodeSessionId:K.opencode_session_id,runtimeUrl:Z,sandboxId:H}})();An.set(F,J);try{return c=await J,await U,c}finally{An.get(F)===J&&An.delete(F)}}function X(y){let T=D();if(!T)throw new ft(y);return T}function W(){c=null,Mp(l,b)}return{get:y=>nn(l,b,y),cost:()=>cn(b,{projectId:l}),update:y=>Ca(l,b,y),delete:()=>(W(),Aa(l,b)),start:(...y)=>Re(l,b,...y),restart:()=>(W(),pt(l,b)),stop:()=>(W(),dt(l,b)),configState:()=>Ra(l,b),reloadConfig:y=>(W(),Ta(l,b,y)),reloadConfigStream:(...y)=>(W(),Ia(l,b,...y)),setSharing:y=>ua(l,b,y),previews:()=>pa(l,b),commit:y=>aa(l,b,y),publicShares:{list:()=>da(l,b),create:(...y)=>ga(l,b,...y),revoke:(...y)=>ma(l,b,...y)},audit:(y,T)=>ha(l,b,y,T),transcript:y=>ba(l,b,y),transcriptSync:y=>xa(l,b,y),turn:()=>_a(l,b),prompts:{create:y=>Pa(l,b,y),list:()=>ka(l,b),remove:y=>wa(l,b,y),retry:y=>Sa(l,b,y),hold:y=>va(l,b,y)},ensureReady:q,health:y=>mu(D()?.runtimeUrl??null,y),previewUrl:(y,T="/")=>he(y,T,r(X("previewUrl").sandboxId)),proxyUrl:y=>fu(y,r(X("proxyUrl").sandboxId)),setModel:y=>{S=y},changeModel:async y=>{let T=await $a(l,b,y);return R=null,T},scope:()=>Ea(l,b),rescope:y=>ja(l,b,y),setAgent:y=>{w=y},send:async(y,T)=>{let{opencodeSessionId:z,runtimeUrl:U}=await q(),F=T?.model??S,L=T?.agent??w,J=F&&L?{}:await $(),N=F??J.model,Q=L??J.agent;return oe(U).session.prompt({sessionID:z,parts:[{type:"text",text:y}],...N?{model:N}:{},...Q?{agent:Q}:{}})},abort:async()=>{let{opencodeSessionId:y,runtimeUrl:T}=await q();return oe(T).session.abort({sessionID:y})},rewind:async y=>{let{opencodeSessionId:T,runtimeUrl:z}=await q();return oe(z).session.revert({sessionID:T,messageID:y})},restoreRewind:async()=>{let{opencodeSessionId:y,runtimeUrl:T}=await q();return oe(T).session.unrevert({sessionID:y})},stream:async y=>{let{runtimeUrl:T}=await q();return Cn({client:oe(T),onEvent:y.onEvent,onGapRehydrate:y.onGapRehydrate,signal:y.signal})},get runtime(){return oe(X("runtime").runtimeUrl)},files:{list:async y=>rt(y,(await q()).runtimeUrl),read:async y=>Oe(y,(await q()).runtimeUrl),readBlob:async y=>Ue(y,(await q()).runtimeUrl),status:async()=>st((await q()).runtimeUrl),findFiles:async(y,T)=>it(y,T,(await q()).runtimeUrl),findText:async y=>ot(y,(await q()).runtimeUrl),upload:async(y,T,z)=>Fe(y,T,z,(await q()).runtimeUrl),write:async(y,T)=>Le(y,T,(await q()).runtimeUrl),create:async y=>at(y,(await q()).runtimeUrl),copy:async(y,T)=>ct(y,T,(await q()).runtimeUrl),remove:async y=>ve(y,(await q()).runtimeUrl),mkdir:async y=>Ge(y,(await q()).runtimeUrl),rename:async(y,T)=>fe(y,T,(await q()).runtimeUrl)}}}return{config:t,auth:s,accounts:o,iam:u,accountInvites:d,projects:f,connectors:A(),project:E,session:j,github:m,billing:p,sandboxShares:h,connectStatus:x,marketplace:P,validateToken:Zs,runtime:Wb}}function od(){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 hu={thinking:!1,toolDetails:!0,assistantMetadata:!0};function zb(t){return t&&t.charAt(0).toUpperCase()+t.slice(1)}function Vb(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 Jb(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
|
|
53
|
+
`,n}return""}function Xb(t,e){if(!e)return`## Assistant
|
|
54
54
|
|
|
55
|
-
`;let n=t.agent?
|
|
55
|
+
`;let n=t.agent?zb(t.agent):"Assistant",r=t.modelID||"",s="";t.time?.completed&&t.time?.created&&(s=Vb(t.time.completed-t.time.created));let o=[r,s].filter(Boolean).join(" \xB7 ");return o?`## ${n} (${o})
|
|
56
56
|
|
|
57
57
|
`:`## ${n}
|
|
58
58
|
|
|
59
|
-
`}function
|
|
59
|
+
`}function Qb(t,e,n){let r="";t.role==="user"?r+=`## User
|
|
60
60
|
|
|
61
|
-
`:r+=
|
|
61
|
+
`:r+=Xb(t,n.assistantMetadata);for(let s of e)r+=Jb(s,n);return r}function ad(t,e,n=hu){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+=
|
|
69
|
+
`;for(let s of e)r+=Qb(s.info,s.parts,n),r+=`---
|
|
70
70
|
|
|
71
|
-
`;return r}function Ap(t,e){return`session-${t}.md`}function Q(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 dt(r)||e}catch{return e}}return dt(n)||e}catch{return pb(e)??e}}return typeof t=="object"?dt(t)||"An error occurred":String(t)}function Ip(t){let e=t.indexOf("{"),n=t.lastIndexOf("}");if(!(e===-1||n===-1||n<=e))return t.slice(e,n+1)}function pb(t){let e=Ip(t);if(e)try{return dt(JSON.parse(e))}catch{return}}function dt(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 db(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 Nl(t){if(!(typeof t!="string"||!t))try{return JSON.parse(t)}catch{return}}function Tp(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,o=typeof t.request_id=="string"&&t.request_id?t.request_id:void 0,u=db(t.attempt_failures);return!e&&!n&&!r&&s===void 0&&!o&&!u?void 0:{message:typeof t.message=="string"&&t.message||dt(t)||"",provider:e,code:n,suggestion:r,upstreamStatus:s,requestId:o,attemptFailures:u}}function ae(t){if(t==null)return;if(typeof t=="string"){let u=t.startsWith("Error: ")?t.slice(7):t,p=Nl(u)??Nl(Ip(u));return p!==void 0?ae(p):void 0}if(typeof t!="object")return;let e=t,n=Tp(e);if(n)return n;let r=e.error;if(r&&typeof r=="object"&&!Array.isArray(r)){let u=Tp(r);if(u)return u}let s=e.data;if(s&&typeof s.responseBody=="string"){let u=Nl(s.responseBody);if(u!==void 0){let p=ae(u);if(p)return p}}let o=e.cause;if(o&&typeof o=="object"){let u=o.body;if(u!==void 0){let p=ae(u);if(p)return p}}}var gb={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"}},mb=[{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 fb(t){return t.replace(/^oc[-_]/,"")}function gt(t){return fb(t).replace(/-/g,"_")}function dn(t){return gt(t).split(/[_\s]+/).filter(Boolean).map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" ")}function gn(t){let e=gt(t),n=gb[e];if(n)return n;for(let{prefix:r,category:s}of mb)if(e.startsWith(r))return{label:dn(t),category:s};return{label:dn(t),category:"other"}}var yb=256*1024;function hb(t){switch(t.status){case"pending":return"pending";case"running":return"running";case"completed":return"done";case"error":return"error";default:return t}}function bb(t){if(t===void 0)return{};if(t.length>yb)return{outputText:t};try{return{outputParsed:JSON.parse(t),outputText:t}}catch{return{outputText:t}}}function xb(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?Q(r):typeof e.message=="string"&&e.message?e.message:"Tool reported failure"}function _b(t,e){let n="title"in e?e.title:void 0,r=e.status==="completed"?e.output:void 0,{outputParsed:s,outputText:o}=bb(r),u=hb(e),p=e.status==="error"?e.error:void 0;if(u==="done"){let d=xb(s);d&&(u="error",p=d)}return{name:t,title:n||gn(t).label,status:u,input:e.input,output:r,outputParsed:s,outputText:o,error:p}}function Pb(t){return{kind:"text",id:t.id,text:t.text,synthetic:!!t.synthetic}}function kb(t){return{kind:"reasoning",id:t.id,text:t.text}}function wb(t){return{kind:"tool",id:t.id,tool:_b(t.tool,t.state)}}function Sb(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 vb(t){return{kind:"subtask",id:t.id,description:t.description,agent:t.agent,prompt:t.prompt,model:t.model}}function Cb(t){return{kind:"patch",id:t.id,hash:t.hash,files:t.files,fileCount:t.files.length}}function Rb(t){return{kind:"snapshot",id:t.id,snapshot:t.snapshot}}function Ab(t){return{kind:"agent",id:t.id,name:t.name}}function Tb(t){return{kind:"retry",id:t.id,attempt:t.attempt,message:Q(t.error),createdAt:t.time.created}}function Ib(t){return{kind:"compaction",id:t.id,auto:t.auto,overflow:!!t.overflow,tailStartId:t.tail_start_id}}function Eb(t){return{kind:"step",id:t.id,phase:"start",snapshot:t.snapshot}}function jb(t){return{kind:"step",id:t.id,phase:"finish",snapshot:t.snapshot,reason:t.reason,cost:t.cost,tokens:t.tokens}}function Kl(t){switch(t.type){case"text":return Pb(t);case"reasoning":return kb(t);case"tool":return wb(t);case"file":return Sb(t);case"subtask":return vb(t);case"patch":return Cb(t);case"snapshot":return Rb(t);case"agent":return Ab(t);case"retry":return Tb(t);case"compaction":return Ib(t);case"step-start":return Eb(t);case"step-finish":return jb(t);default:return{kind:"unknown",raw:t}}}function $b(t){if(!t)return;let e=typeof t=="object"&&"name"in t&&typeof t.name=="string"?t.name:"Error",n=ae(t);return{name:e,message:n?.message||Q(t),provider:n?.provider,code:n?.code,suggestion:n?.suggestion,upstreamStatus:n?.upstreamStatus,requestId:n?.requestId,attemptFailures:n?.attemptFailures}}function Db(t){switch(t.kind){case"text":case"reasoning":return t.text.trim().length>0;case"step":return!1;default:return!0}}function Ep(t){let e=t.parts.map(Kl),n=t.info.role==="assistant"?t.info.error:void 0,r=$b(n),s=!r&&!e.some(Db);return{parts:e,error:r,isEmpty:s}}function he(t){return t.type==="text"}function mn(t){return t.type==="reasoning"}function ce(t){return t.type==="tool"}function jp(t){return t.type==="file"}function qb(t){return t.type==="agent"}function Mb(t){return t.type==="compaction"}function Ob(t){return t.type==="snapshot"}function Ub(t){return t.type==="patch"}function Fb(t){if(he(t)||mn(t))return t.text}function $p(t){if(!jp(t))return!1;let e=t.mime;return e.startsWith("image/")||e==="application/pdf"}function Lb(t){let e=[],n=[];for(let r of t)$p(r)?e.push(r):n.push(r);return{attachments:e,stickyParts:n}}function Gb(t,e){let n=[];return t?.tool&&n.push(t.tool),e?.tool&&n.push(e.tool),n}function Bb(t,e,n){return n.some(r=>r.messageID===e&&r.callID===t.callID)}var Nb=new Set(["todoread","context_info"]);function Dp(t){return!Nb.has(t.tool)}function Kb(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 o=t.state?.output;if(o){let u=o.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 Hb(t){if(t)for(let e=t.length-1;e>=0;e--){let n=t[e]?.info;if(n?.role==="assistant"&&n.error)return Q(n.error)}}function Wb(t){let e=[];for(let n of t)if(n.info.role==="assistant")for(let r of n.parts)ce(r)&&Dp(r)&&e.push(r);return e}function zb(t,e={}){switch(t){case"read":return{icon:"glasses",title:"Read",subtitle:qp(e.filePath)};case"list":return{icon:"list",title:"List",subtitle:Mp(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:Op(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:Hl(e.filePath)};case"write":return{icon:"file-pen",title:"Write",subtitle:Hl(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 qp(t){if(!t)return;let e=t.split("/");return e[e.length-1]||t}function Hl(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 Mp(t){if(!t)return;let e=t.lastIndexOf("/");if(!(e<0))return t.slice(0,e)||"/"}function Vb(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 mt(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
|
|
73
|
-
\u2026`:t}function
|
|
71
|
+
`;return r}function cd(t,e){return`session-${t}.md`}function te(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 yt(r)||e}catch{return e}}return yt(n)||e}catch{return Yb(e)??e}}return typeof t=="object"?yt(t)||"An error occurred":String(t)}function ud(t){let e=t.indexOf("{"),n=t.lastIndexOf("}");if(!(e===-1||n===-1||n<=e))return t.slice(e,n+1)}function Yb(t){let e=ud(t);if(e)try{return yt(JSON.parse(e))}catch{return}}function yt(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 Zb(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 bu(t){if(!(typeof t!="string"||!t))try{return JSON.parse(t)}catch{return}}function ld(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,o=typeof t.request_id=="string"&&t.request_id?t.request_id:void 0,u=Zb(t.attempt_failures);return!e&&!n&&!r&&s===void 0&&!o&&!u?void 0:{message:typeof t.message=="string"&&t.message||yt(t)||"",provider:e,code:n,suggestion:r,upstreamStatus:s,requestId:o,attemptFailures:u}}function le(t){if(t==null)return;if(typeof t=="string"){let u=t.startsWith("Error: ")?t.slice(7):t,p=bu(u)??bu(ud(u));return p!==void 0?le(p):void 0}if(typeof t!="object")return;let e=t,n=ld(e);if(n)return n;let r=e.error;if(r&&typeof r=="object"&&!Array.isArray(r)){let u=ld(r);if(u)return u}let s=e.data;if(s&&typeof s.responseBody=="string"){let u=bu(s.responseBody);if(u!==void 0){let p=le(u);if(p)return p}}let o=e.cause;if(o&&typeof o=="object"){let u=o.body;if(u!==void 0){let p=le(u);if(p)return p}}}var ex={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"}},tx=[{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 nx(t){return t.replace(/^oc[-_]/,"")}function ht(t){return nx(t).replace(/-/g,"_")}function Rn(t){return ht(t).split(/[_\s]+/).filter(Boolean).map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" ")}function Tn(t){let e=ht(t),n=ex[e];if(n)return n;for(let{prefix:r,category:s}of tx)if(e.startsWith(r))return{label:Rn(t),category:s};return{label:Rn(t),category:"other"}}var rx=256*1024;function sx(t){switch(t.status){case"pending":return"pending";case"running":return"running";case"completed":return"done";case"error":return"error";default:return t}}function ix(t){if(t===void 0)return{};if(t.length>rx)return{outputText:t};try{return{outputParsed:JSON.parse(t),outputText:t}}catch{return{outputText:t}}}function ox(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?te(r):typeof e.message=="string"&&e.message?e.message:"Tool reported failure"}function ax(t,e){let n="title"in e?e.title:void 0,r=e.status==="completed"?e.output:void 0,{outputParsed:s,outputText:o}=ix(r),u=sx(e),p=e.status==="error"?e.error:void 0;if(u==="done"){let d=ox(s);d&&(u="error",p=d)}return{name:t,title:n||Tn(t).label,status:u,input:e.input,output:r,outputParsed:s,outputText:o,error:p}}function cx(t){return{kind:"text",id:t.id,text:t.text,synthetic:!!t.synthetic}}function lx(t){return{kind:"reasoning",id:t.id,text:t.text}}function ux(t){return{kind:"tool",id:t.id,tool:ax(t.tool,t.state)}}function px(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 dx(t){return{kind:"subtask",id:t.id,description:t.description,agent:t.agent,prompt:t.prompt,model:t.model}}function gx(t){return{kind:"patch",id:t.id,hash:t.hash,files:t.files,fileCount:t.files.length}}function mx(t){return{kind:"snapshot",id:t.id,snapshot:t.snapshot}}function fx(t){return{kind:"agent",id:t.id,name:t.name}}function yx(t){return{kind:"retry",id:t.id,attempt:t.attempt,message:te(t.error),createdAt:t.time.created}}function hx(t){return{kind:"compaction",id:t.id,auto:t.auto,overflow:!!t.overflow,tailStartId:t.tail_start_id}}function bx(t){return{kind:"step",id:t.id,phase:"start",snapshot:t.snapshot}}function xx(t){return{kind:"step",id:t.id,phase:"finish",snapshot:t.snapshot,reason:t.reason,cost:t.cost,tokens:t.tokens}}function xu(t){switch(t.type){case"text":return cx(t);case"reasoning":return lx(t);case"tool":return ux(t);case"file":return px(t);case"subtask":return dx(t);case"patch":return gx(t);case"snapshot":return mx(t);case"agent":return fx(t);case"retry":return yx(t);case"compaction":return hx(t);case"step-start":return bx(t);case"step-finish":return xx(t);default:return{kind:"unknown",raw:t}}}function _x(t){if(!t)return;let e=typeof t=="object"&&"name"in t&&typeof t.name=="string"?t.name:"Error",n=le(t);return{name:e,message:n?.message||te(t),provider:n?.provider,code:n?.code,suggestion:n?.suggestion,upstreamStatus:n?.upstreamStatus,requestId:n?.requestId,attemptFailures:n?.attemptFailures}}function Px(t){switch(t.kind){case"text":case"reasoning":return t.text.trim().length>0;case"step":return!1;default:return!0}}function pd(t){let e=t.parts.map(xu),n=t.info.role==="assistant"?t.info.error:void 0,r=_x(n),s=!r&&!e.some(Px);return{parts:e,error:r,isEmpty:s}}function xe(t){return t.type==="text"}function In(t){return t.type==="reasoning"}function ue(t){return t.type==="tool"}function dd(t){return t.type==="file"}function kx(t){return t.type==="agent"}function wx(t){return t.type==="compaction"}function Sx(t){return t.type==="snapshot"}function vx(t){return t.type==="patch"}function Cx(t){if(xe(t)||In(t))return t.text}function gd(t){if(!dd(t))return!1;let e=t.mime;return e.startsWith("image/")||e==="application/pdf"}function Ax(t){let e=[],n=[];for(let r of t)gd(r)?e.push(r):n.push(r);return{attachments:e,stickyParts:n}}function Rx(t,e){let n=[];return t?.tool&&n.push(t.tool),e?.tool&&n.push(e.tool),n}function Tx(t,e,n){return n.some(r=>r.messageID===e&&r.callID===t.callID)}var Ix=new Set(["todoread","context_info"]);function md(t){return!Ix.has(t.tool)}function Ex(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 o=t.state?.output;if(o){let u=o.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 jx(t){if(t)for(let e=t.length-1;e>=0;e--){let n=t[e]?.info;if(n?.role==="assistant"&&n.error)return te(n.error)}}function $x(t){let e=[];for(let n of t)if(n.info.role==="assistant")for(let r of n.parts)ue(r)&&md(r)&&e.push(r);return e}function Mx(t,e={}){switch(t){case"read":return{icon:"glasses",title:"Read",subtitle:fd(e.filePath)};case"list":return{icon:"list",title:"List",subtitle:yd(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:hd(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:_u(e.filePath)};case"write":return{icon:"file-pen",title:"Write",subtitle:_u(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 fd(t){if(!t)return;let e=t.split("/");return e[e.length-1]||t}function _u(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 yd(t){if(!t)return;let e=t.lastIndexOf("/");if(!(e<0))return t.slice(0,e)||"/"}function qx(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 bt(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 hd(t){let e=bt(t.description);if(e)return e;let n=bt(t.title,80);if(n)return n;let r=bt(t.message);if(r)return r;let s=bt(t.prompt);if(s)return s;let o=bt(t.agent_id,40);return o?`Agent ${o}`:"Worker task"}function Dx(t,e){return!t||!e?[]:(t[e]??[]).filter(r=>r.severity===1).slice(0,3)}function Ox(t,e){return t.find(n=>n.tool?.callID===e)}function Ux(t,e){return t.find(n=>n.tool?.callID===e)}var Fx=/\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 Lx(t){return t?t.replace(Fx,""):""}var Gx=/^msg_[0-9a-f]{12}/;function bd(t){return Gx.test(t)?0:1}function xd(t,e){return t<e?-1:t>e?1:0}function _d(t,e){let n=bd(t.info.id),r=bd(e.info.id);if(n!==r)return n-r;if(n===0)return xd(t.info.id,e.info.id);let s=typeof t.info.time?.created=="number"?t.info.time.created:null,o=typeof e.info.time?.created=="number"?e.info.time.created:null;return s===null&&o===null?0:s===null?1:o===null?-1:s!==o?s<o?-1:1:xd(t.info.id,e.info.id)}function Bx(t){let e=[...t].sort(_d),n=[],r=new Map;for(let o of e)if(o.info.role==="user"){if(r.has(o.info.id))continue;let u={userMessage:o,assistantMessages:[]};n.push(u),r.set(o.info.id,u)}let s=null;for(let o of e){if(o.info.role==="user"){s=r.get(o.info.id)??null;continue}if(o.info.role!=="assistant")continue;let u=o.info,p=u.tokens;if(!u.error&&o.parts.length===0&&p?.input===0&&p.output===0&&p.reasoning===0)continue;if(u.parentID){let f=r.get(u.parentID);if(f){f.assistantMessages.push(o);continue}}if(s){s.assistantMessages.push(o);continue}if(n.length>0){n[0].assistantMessages.unshift(o);continue}let d={userMessage:o,assistantMessages:[]};n.push(d)}return n}function Nx(t){let e=[];for(let n of t.assistantMessages)for(let r of n.parts)e.push({part:r,message:n});return e}function Kx(t){for(let e=t.length-1;e>=0;e--){let n=t[e].part;if(xe(n)&&n.text?.trim())return n}}function Hx(t){return t.some(({part:e})=>e.type==="tool"||e.type==="compaction"||e.type==="snapshot"||e.type==="patch")}function Wx(t,e,n){if(n)return[];let r=[];for(let s of t.assistantMessages)for(let o of s.parts){if(!ue(o))continue;let u=o,p=u.state?.metadata?.answers;u.tool==="question"&&(p?.length??0)>0&&r.push({part:o,message:s})}return r}function zx(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 Vx(t){let e=t-6e4;return(n,r)=>{let s=n.time.updated??n.time.created,o=r.time.updated??r.time.created,u=s>e,p=o>e;return u&&p?n.id<r.id?-1:n.id>r.id?1:0:u&&!p?-1:!u&&p?1:o-s}}function Pd(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(...Pd(t,s));return r}function kd(t){if(!t||typeof t!="object")return!1;let e=t.data;return!!e&&typeof e=="object"&&e.isRetryable===!0}function Jx(t){if(!t?.length)return!1;for(let e=t.length-1;e>=0;e--){let n=t[e].info;if(n.role==="assistant")return!n.time?.completed&&kd(n.error)}return!1}function wd(t){let e=t.userMessage.parts;if(e.length===0||!e.every(o=>xe(o)&&o.synthetic)||t.assistantMessages.length!==1)return!1;let r=t.assistantMessages[0].parts;if(r.length!==1)return!1;let s=r[0];return ue(s)&&s.tool==="bash"}function Xx(t){if(wd(t))return t.assistantMessages[0].parts[0]}function Qx(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 Yx(t,e){return!e||!t?!1:t.type!=="idle"}function Zx(t,e){return!t&&!!e}function e_(t){for(let e of t.assistantMessages){let n=e.info;if(n.error)return te(n.error)}}function t_(t){for(let e of t.assistantMessages){let n=e.info;if(n.error)return le(n.error)}}function Pu(t){if(t){if(ue(t))switch(t.tool){case"task":case"session_spawn":case"session_start_background":case"session-spawn":case"session-start-background":return"Handing off to an agent...";case"agent_spawn":case"agent-spawn":case"agent_task":case"agent-task":return"Handing off to an agent...";case"agent_task_update":case"agent-task-update":case"task_update":case"task-update":return"Updating progress...";case"agent_message":case"agent-message":case"agent_task_message":case"agent-task-message":case"task_message":case"task-message":return"Checking in with an agent...";case"task_create":case"task-create":case"task_start":case"task-start":return"Starting a new task...";case"task_list":case"task-list":return"Reviewing the task list...";case"task_done":case"task-done":return"Updating progress...";case"todowrite":case"todoread":return"Planning...";case"read":return"Reading files...";case"list":case"grep":case"glob":return"Searching files...";case"webfetch":case"scrape-webpage":return"Reading a web page...";case"websearch":case"web-search":case"web_search":return"Searching the web...";case"image-search":return"Searching for images...";case"image-gen":return"Creating an image...";case"video-gen":return"Creating a video...";case"presentation-gen":return"Creating a presentation...";case"show":case"show-user":return"Sharing the result...";case"edit":case"write":case"morph_edit":return"Making changes...";case"bash":return"Working on the computer...";case"apply_patch":return"Making changes...";case"prune":return"Tidying up memory...";case"distill":return"Tidying up memory...";case"compress":return"Tidying up memory...";case"context_info":return"Refreshing memory...";default:return"Working on it..."}if(In(t)){let e=t.text?.trimStart();if(e){let n=e.match(/^\*\*(.+?)\*\*/);if(n)return`Thinking about ${n[1].trim()}...`}return"Thinking..."}if(xe(t))return"Gathering thoughts..."}}function n_(t,e){for(let n=t.length-1;n>=0;n--){let r=t[n].part,s=ue(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 d=p.parts.length-1;d>=0;d--){let f=Pu(p.parts[d]);if(f)return f}}return"Handing off to an agent..."}let o=Pu(r);if(o)return o}return"Figuring out what\u2019s next..."}function r_(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 ku=1.2;function Sd(t,e){if(!t)return 0;let n=t.input??0,r=(t.output??0)+(t.reasoning??0),s=t.cache?.read??0,o=t.cache?.write??0,u=Math.max(0,n-s-o),d=[...e.tiers??[],...e.contextOver200k?[e.contextOver200k]:[]].filter(m=>n>m.contextThreshold).sort((m,h)=>h.contextThreshold-m.contextThreshold)[0]??e,f=u/1e6*d.inputPer1M;return f+=r/1e6*d.outputPer1M,s>0&&(f+=s/1e6*(d.cacheReadPer1M??d.inputPer1M)),o>0&&(f+=o/1e6*(d.cacheWritePer1M??d.inputPer1M)),f}function vd(t,e,n,r){let s=t.cost||0;if(s>0)return s;if(!r||!e||!n)return 0;let o=r(e,n);return o?Sd(t.tokens,o):0}function Cd(t){if(t.role!=="assistant")return{};let e=t;return{providerID:e.providerID,modelID:e.modelID}}function s_(t,e){let n=0,r=0,s=0,o=0,u=0,p=0,d=!1;for(let{part:f,message:m}of t)if(f.type==="step-finish"){d=!0;let h=f,{providerID:x,modelID:P}=Cd(m.info);n+=vd(h,x,P,e),r+=h.tokens?.input||0,s+=h.tokens?.output||0,o+=h.tokens?.reasoning||0,u+=h.tokens?.cache?.read||0,p+=h.tokens?.cache?.write||0}if(!d)for(let{message:f}of t){if(f.info.role!=="assistant")continue;let m=f.info,h=Ad(m,e);if(h<=0)continue;d=!0,n+=h;let x=m.tokens;x&&(r+=x.input??0,s+=x.output??0,o+=x.reasoning??0,u+=x.cache?.read??0,p+=x.cache?.write??0)}if(d)return{cost:n*ku,tokens:{input:r,output:s,reasoning:o,cacheRead:u,cacheWrite:p}}}function Ad(t,e){if(!e||!t.providerID||!t.modelID||!t.tokens)return 0;let n=e(t.providerID,t.modelID);return n?Sd({input:t.tokens.input,output:t.tokens.output,reasoning:t.tokens.reasoning,cache:t.tokens.cache},n):0}function i_(t,e){let n=0;for(let r of t){if(r.info?.role!=="assistant")continue;let s=r.info,{providerID:o,modelID:u}=Cd(s),p=0,d=!1;for(let f of r.parts)f.type==="step-finish"&&(d=!0,p+=vd(f,o,u,e));d||(p+=Ad(s,e)),n+=p}return n*ku}function o_(t){return t===0?"$0.00":t<.001?`$${t.toFixed(4)}`:t<.01?`$${t.toFixed(3)}`:`$${t.toFixed(2)}`}function a_(t){return t<1e3?String(t):t<1e4?`${(t/1e3).toFixed(1)}k`:`${Math.round(t/1e3)}k`}function c_(t){if(!t||t.type!=="retry")return;let e=t,n=te(e.message);return{attempt:e.attempt,message:n.length>60?`${n.slice(0,60)}...`:n,next:e.next,details:le(e.message)}}function l_(t){if(!(!t||t.type!=="retry"))return te(t.message)}function u_(t){return(t.info.summary?.diffs?.length??0)>0}var p_=4e3;function xt(t,e=p_){return t.length>e?`${t.slice(0,e)}
|
|
73
|
+
\u2026`:t}function Rd(t){if(t!==void 0)try{return xt(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 ze(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)?t:void 0}function d_(t){let e=G(t.input?.query)??"";if(t.status==="error")return{kind:"web-search",query:e,error:t.error??"Search failed"};let n=ze(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(o=>{let u=ze(o)??{};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 g_=/<exit_code>\s*(-?\d+)\s*<\/exit_code>/;function Su(t){let e=t.match(g_);return e?Number(e[1]):void 0}function m_(t,e,n){let r="",s=0;for(;;){let o=t.indexOf(e,s);if(o===-1)return r+t.slice(s);let u=t.indexOf(n,o+e.length);if(u===-1)return r+t.slice(s);r+=t.slice(s,o),s=u+n.length}}var f_=["<system_info>","</system_info>","<exit_code>","</exit_code>","<stderr_note>","</stderr_note>"];function y_(t){let e=-1;for(let n of f_){let r=t.indexOf(n);r!==-1&&(e===-1||r<e)&&(e=r)}return e===-1?t:t.slice(0,e)}var h_=/\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 b_(t){return t.replace(h_,"")}function x_(t){let e=G(t.input?.command)??"",n=t.output??"",r=Su(n),o=b_(y_(m_(n,"<bash_metadata>","</bash_metadata>"))).trim()||(t.status==="error"?t.error:void 0);return{kind:"shell",command:e,stdout:o||void 0,exitCode:r}}function vu(t){return G(t.input?.filePath,t.input?.file_path,t.input?.path)??""}function __(t){let e=t.status==="error"?t.error:t.output&&xt(t.output)||void 0;return{kind:"file-read",path:vu(t),preview:e}}function P_(t){let e=G(t.input?.content),n=t.status==="error"?t.error:xt(e??t.output??"")||void 0;return{kind:"file-write",path:vu(t),preview:n}}var k_=256*1024;function w_(t,e){if(t.length+e.length>k_)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 o=n.length,u=r.length;for(;o>s&&u>s&&n[o-1]===r[u-1];)o--,u--;let p=[];for(let d=0;d<s;d++)p.push({type:"unchanged",text:n[d]});for(let d=s;d<o;d++)p.push({type:"removed",text:n[d]});for(let d=s;d<u;d++)p.push({type:"added",text:r[d]});for(let d=o;d<n.length;d++)p.push({type:"unchanged",text:n[d]});return p}function
|
|
76
|
-
`).map(e=>e.trim()).filter(e=>e.startsWith("/")||e.startsWith("./")||e.startsWith("~")).map(e=>({path:e}))}function Gx(t){let e=F(t.input?.pattern,t.input?.query)??"";if(t.status==="error"||!t.output)return{kind:"search",pattern:e};let n=Xp.test(t.output.trim())?Fx(t.output):Lx(t.output);return{kind:"search",pattern:e,matches:n.length>0?n.slice(0,200):void 0}}function Bx(t){let e=F(t.input?.description,t.input?.title,t.input?.prompt)??t.title,n=F(t.input?.subagent_type,t.input?.agent);return{kind:"task",description:e,agent:n}}function Vl(t){let e=Ne(t)??{};return{content:F(e.content)??"",status:F(e.status)??"pending",priority:F(e.priority)}}function Nx(t){let e=t.input?.todos;if(Array.isArray(e))return{kind:"todo",items:e.map(Vl)};if(Array.isArray(t.outputParsed))return{kind:"todo",items:t.outputParsed.map(Vl)};let n=Ne(t.outputParsed);return n&&Array.isArray(n.todos)?{kind:"todo",items:n.todos.map(Vl)}:{kind:"todo",items:[]}}function Kx(t){return{kind:"question",questions:(Array.isArray(t.input?.questions)?t.input.questions:[]).map(r=>{let s=Ne(r)??{},u=(Array.isArray(s.options)?s.options:[]).flatMap(p=>{let d=Ne(p),f=d&&F(d.label);return f?[{label:f,description:d?F(d.description):void 0}]:[]});return{question:F(s.question)??"",header:F(s.header),options:u}})}}function Hx(t){let n=t.input&&Object.keys(t.input).length>0?Vp(t.input):void 0,r;return t.outputParsed!==void 0?r=typeof t.outputParsed=="string"?ft(t.outputParsed):Vp(t.outputParsed):t.outputText!==void 0?r=ft(t.outputText):r=t.error,{kind:"generic",label:t.title,inputPretty:n,outputPretty:r}}function Yp(t){switch(gt(t.name)){case"web_search":case"websearch":case"image_search":return vx(t);case"bash":return jx(t);case"read":return $x(t);case"write":return Dx(t);case"edit":case"morph_edit":return Ox(t);case"grep":case"glob":return Gx(t);case"task":return Bx(t);case"todowrite":return Nx(t);case"question":case"ask":return Kx(t);default:return Hx(t)}}var Wx=new Set(["AbortError","MessageAbortedError"]),zx=["operation was aborted","aborted by user","interrupted by user","cancelled by user","canceled by user","request was cancelled","request was canceled","aborterror"],Vx=["unreachable","upstream","econnreset","econnrefused","socket hang up","network","fetch failed","timed out","timeout","gateway","502","503","504"];function Qp(t){let e=t.toLowerCase();return Vx.some(n=>e.includes(n))?!1:zx.some(n=>e.includes(n))}function Jx(t){let e=t.data,n=e&&typeof e=="object"?e.message:void 0;return typeof n=="string"?n:typeof t.message=="string"?t.message:void 0}function Xx(t){if(typeof t=="string")return Qp(t);if(!t||typeof t!="object")return!1;let e=t,n=e.name;if(typeof n=="string"&&Wx.has(n))return!0;let r=Jx(e);return typeof r=="string"?Qp(r):!1}var Zp=["user","runtime-disposed","orphan-finalized","wake"],Yx=["orphan-finalized","wake"];function Qx(t){if(!t||typeof t!="object")return;let e=t.data;if(!e||typeof e!="object")return;let n=e.reason;if(!(typeof n!="string"||!n))return Zp.includes(n)?n:void 0}function fn(t){try{return typeof process<"u"?process.env?.[t]:void 0}catch{return}}function Zx(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 e_(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 Yl(t,e,n){return t!==void 0?t:Zx(fn(e),n)}var t_={get disableMobileAdvertising(){return Yl(D().featureFlags?.disableMobileAdvertising,"NEXT_PUBLIC_DISABLE_MOBILE_ADVERTISING",!1)},get enableDinoGame(){return Yl(D().featureFlags?.enableDinoGame,"NEXT_PUBLIC_ENABLE_DINO_GAME",!1)},get enableProjects(){return Yl(D().featureFlags?.enableProjects,"NEXT_PUBLIC_ENABLE_PROJECTS",!1)},get enableAutoModel(){return!1}};var yt="kortix-active-instance",ed=["/dashboard","/agents","/p","/workspace","/settings","/browser","/desktop","/services","/sessions","/terminal","/files","/scheduled-tasks","/commands","/tools","/configuration","/changelog","/legacy","/credits-explained"];function td(t){return ed.some(e=>t===e||t.startsWith(`${e}/`))}function Ke(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 n_(t){let e=Ke(t);return!!e&&e.innerPath===""}function r_(t){let e=Ke(t);return!e||!e.innerPath?t:e.innerPath}function nd(t,e){if(!t)return e;if(e.startsWith("/")||(e=`/${e}`),e.startsWith("/instances/")){let n=Ke(e);return n?`/instances/${encodeURIComponent(t)}${n.innerPath}`:e}return td(e)?`/instances/${encodeURIComponent(t)}${e}`:e}function rd(t){return t?Ke(t)?.instanceId??null:null}function s_(){return typeof window>"u"?null:rd(window.location.pathname)||sd()}function sd(){if(typeof document>"u")return null;let t=document.cookie.match(new RegExp(`(?:^|; )${yt}=([^;]+)`));return t?decodeURIComponent(t[1]):null}function i_(t){if(typeof document>"u")return;let e=n=>{document.cookie=n};if(typeof window<"u"&&window.location.pathname.startsWith("/projects")){e(`${yt}=; Max-Age=0; Path=/; SameSite=Lax`);return}if(!t){e(`${yt}=; Max-Age=0; Path=/; SameSite=Lax`);return}e(`${yt}=${encodeURIComponent(t)}; Path=/; SameSite=Lax`)}function o_(t,e){return e?nd(e,t):t}function a_(t){let e=Ke(t);return e?e.innerPath||"/dashboard":t}function Ql(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 id(t){let e=Ql(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 Zl(t){let e=id(t);if(!e||typeof e!="object")return null;let n=e;return n.name==="ConfigInvalidError"?n:null}function c_(t){return Zl(t)!==null}var l_=[/sandbox not ready/i,/sandbox is not (?:ready|running)/i,/opencode (?:session )?(?:is )?not ready/i,/\bsandbox_not_ready\b/,/\bsandbox_lifecycle_unavailable\b/];function od(t){let e=Ql(t);return e?l_.some(n=>n.test(e)):!1}function ad(t){let e=Zl(t);if(e){let s=(e.data?.path??"OpenCode config").replace(/^\/workspace\//,""),o=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:o?`${u?`${u}: `:""}${o}`:void 0}}let n=Ql(t);return od(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 X(){let t=fn("BACKEND_URL")||D().backendUrl;return t||"http://localhost:8008/v1"}function ht(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=ht(e);if(n)return n}return}if(t&&typeof t=="object"){let e=t;return ht(e.sandboxId??e.id??e.slug??Object.values(e)[0])}}var cd=["http://localhost:8008/v1","http://127.0.0.1:8008/v1"];function ld(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return`${t.slice(0,e)}/platform/local-bridge/status`}function u_(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 eu(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?`${X()}/p/${n.external_id}/${oe.KORTIX_MASTER}`:""),status:u_(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 tu(){let t=await Ce(),e=[];for(let n of t){let r=await Ge(n.project_id).catch(()=>[]);for(let s of r)e.push({project:n,session:s,runtime:null,sandbox:eu(n,s,null)})}return e.sort((n,r)=>{let s={active:0,provisioning:1,stopped:2,error:3},o=(s[n.sandbox.status]??99)-(s[r.sandbox.status]??99);return o!==0?o:Date.parse(r.sandbox.updated_at)-Date.parse(n.sandbox.updated_at)})}async function Ae(t){let e=await tu();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 yn(t,e={}){let n={"Content-Type":"application/json",...e.headers},r=e.signal??AbortSignal.timeout(3e4),s=await q(`${X()}${t}`,{...e,headers:n,signal:r}),o=await s.text().catch(()=>{}),u;if(o)try{u=JSON.parse(o)}catch{}if(!s.ok){let p=u?.error||u?.message||u?.detail||o||`Platform API error ${s.status}`,d=new v(p,{status:s.status,code:u?.code||u?.error_code||String(s.status),details:u??(o?{rawText:o}:void 0),response:s,endpoint:t});throw s.status===402&&(d=_e(Object.assign(d,{response:s,status:s.status,data:u}))),d}return u}function nu(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`${X()}/p/${t.external_id}/${oe.KORTIX_MASTER}`}function p_(t,e){return t.external_id?`${X()}/p/${t.external_id}/${e}`:null}async function d_(){let t=await i.get("/setup/sandbox-providers");if(t.error)throw t.error;return t.data}async function ud(t){let e=await Ae();if(e)return{sandbox:e.sandbox,created:!1};let r=(await Ce())[0];if(!r)throw new Error("Create a project before starting a sandbox");let s=await Be(r.project_id,{...t?.provider?{provider:t.provider}:{}}),o=(await Re(r.project_id,s.session_id))?.sandbox??null;return{sandbox:eu(r,s,o),created:!0}}async function g_(){return(await Ae().catch(()=>null))?.sandbox??null}async function m_(t){return{sandbox:(await ud(t)).sandbox}}async function f_(t){let e=ht(t);return e?(await Ae(e).catch(()=>null))?.sandbox??null:null}async function y_(t,e){throw await Ae(t)?new Error("Renaming project-session sandboxes is not exposed by the current API"):new Error("Project session sandbox not found")}async function h_(t){let e=ht(t);return(await tu().catch(()=>[])).map(r=>r.sandbox).filter(r=>!e||r.sandbox_id===e||r.external_id===e)}async function b_(){if(typeof window>"u")return null;let t=X(),e=Array.from(new Set([t,...cd]));for(let n of e)try{let r=await fetch(ld(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 x_(t){if(!t)throw new Error("No sandbox selected for workload restart");let e=await Ae(t);if(!e)throw new Error("Project session sandbox not found");await at(e.project.project_id,e.session.session_id)}async function __(t){if(!t)throw new Error("No sandbox selected to stop");let e=await Ae(t);if(!e)throw new Error("Project session sandbox not found");await ct(e.project.project_id,e.session.session_id)}async function P_(t){throw new Error("Cancellation is not exposed for project-session sandboxes")}async function k_(t){throw new Error("Reactivation is not exposed for project-session sandboxes")}async function ru(t,e,n){let r=nu(t),s=await q(`${we(r)}${e}`,{signal:AbortSignal.timeout(8e3),headers:{"Content-Type":"application/json"},...n});if(!s.ok){let o=await s.text().catch(()=>"");throw new Error(o||`Request failed (${s.status})`)}return await s.json()}async function w_(t,e){return ru(t,`/kortix/projects/${encodeURIComponent(e)}/members`,{method:"GET"})}async function S_(t,e,n,r="member"){await ru(t,`/kortix/projects/${encodeURIComponent(e)}/members`,{method:"POST",body:JSON.stringify({user_id:n,role:r})})}async function v_(t,e,n){await ru(t,`/kortix/projects/${encodeURIComponent(e)}/members/${encodeURIComponent(n)}`,{method:"DELETE"})}async function C_(t){let e=await yn(`/platform/invites/${encodeURIComponent(t)}`,{method:"GET"});if(!e.success||!e.data)throw new Error(e.error||"Invite not found");return e.data}async function R_(t){let e=await yn(`/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 A_(t){let e=await yn(`/platform/invites/${encodeURIComponent(t)}/decline`,{method:"POST"});if(!e.success)throw new Error(e.error||"Failed to decline invite")}async function T_(t){throw new Error("Backups are not exposed for project-session sandboxes")}async function I_(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function E_(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function j_(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function $_(t){throw new Error("SSH setup is not exposed for project-session sandboxes")}async function D_(t){throw new Error("SSH connection details are not exposed for project-session sandboxes")}var pd=["pulling","patching","stopping","removing","recreating","restarting","verifying","starting","health_check"];function q_(t){return pd.includes(t)}async function M_(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 O_(t){let e=t?`?channel=${t}`:"",n=await fetch(`${X()}/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 dd(t||"stable");r.changelog=s.find(o=>o.version===r.version)??s[0]??null}catch{r.changelog=null}return r}async function dd(t){let e=t?`?channel=${t}`:"",n=await fetch(`${X()}/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 U_(){let t=await fetch(`${X()}/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 F_(t,e){throw new Error("Sandbox image updates are managed by project-session provisioning")}async function L_(t){}async function G_(t){}async function B_(t){return{serverTypes:[],location:t||"hel1"}}async function N_(t){throw new Error("Retired instance provisioning is unavailable. Create a project session with daytona, platinum, or e2b.")}async function K_(t){let e=await i.delete(`/platform/sandbox?sandbox_id=${t}`);if(e.error)throw e.error;return e.data}async function H_(t,e){await i.post("/platform/sandbox/mark-error",{sandbox_id:t,error_message:e},{showErrors:!1,timeout:1e4})}async function W_(){let t=await i.post("/platform/sandbox/claim-computer",{},{timeout:6e4});if(t.error)throw t.error;return t.data}async function z_(t){let e=await i.get(`/platform/sandbox/${t}/status`,{showErrors:!1,timeout:1e4});return e.success?e.data??null:null}function V_(t,e){return`${X()}/platform/sandbox/${t}/provision-stream?token=${encodeURIComponent(e)}`}var le=class extends Error{constructor(n,r,s){super(n);this.status=r;this.body=s;this.name="HostBoundaryError"}status;body};function hn(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return/\/v1$/.test(e)?e:`${e}/v1`}function su(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 bn(t){let e=await t.text().catch(()=>"");if(!e)return null;try{return JSON.parse(e)}catch{return e}}function xn(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 G(t,e,n){let r=n?.body!==void 0,s=await fetch(`${hn(e.backendUrl)}${t}`,{method:n?.method??"GET",headers:su(e,r),...r?{body:JSON.stringify(n.body)}:{},...e.signal?{signal:e.signal}:{},...e.cache?{cache:e.cache}:{},...e.next?{next:e.next}:{}}),o=await bn(s);if(!s.ok)throw new le(xn(s,o),s.status,o);return o}function J_(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 X_(t,e){return G(`/marketplace/items${J_(e)}`,t)}function Y_(t){return G("/marketplace/marketplaces",t)}function Q_(t,e){return G(`/marketplace/items/${encodeURIComponent(t)}`,e)}function Z_(t,e,n){return G(`/marketplace/items/${encodeURIComponent(t)}/file?path=${encodeURIComponent(e)}`,n)}function eP(t,e){return G("/access/check-email",e,{method:"POST",body:{email:t}})}function tP(t,e){return G("/access/request-access",e,{method:"POST",body:t})}function nP(t){return G("/auth/logout",t,{method:"POST",body:{}})}function rP(t,e){return G(`/oauth/authorize/consent/${encodeURIComponent(t)}`,e)}function sP(t,e){return G("/oauth/authorize/consent",e,{method:"POST",body:{request_id:t.requestId,approved:t.approved}})}function iP(t,e){return G(`/setup-links/connectors/${encodeURIComponent(t)}`,e)}function oP(t,e){return G(`/setup-links/connectors/${encodeURIComponent(t)}/start`,e,{method:"POST",body:{}})}function aP(t,e){return G(`/setup-links/connectors/${encodeURIComponent(t)}/finalize`,e,{method:"POST",body:{}})}function cP(t,e){return G(`/setup-links/secret/${encodeURIComponent(t)}`,e)}function lP(t,e,n){return G(`/setup-links/secret/${encodeURIComponent(t)}`,n,{method:"POST",body:{values:e}})}function uP(t,e){return G(`/p/public-share/${encodeURIComponent(t)}`,e)}function pP(t,e,n){return G(`/projects/${encodeURIComponent(t)}/sessions/${encodeURIComponent(e)}/start`,n,{method:"POST",body:{}})}function dP(t){return G("/system/maintenance",t)}function gP(t,e){return G("/system/maintenance",e,{method:"PUT",body:t})}function mP(t){return G("/user-roles",t)}function fP(t,e){return G("/system/demo-request",e,{method:"POST",body:t})}async function yP(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(`${hn(n.backendUrl)}/accounts/${encodeURIComponent(t)}/audit/export?${r}`,{headers:su(n,!1),...n.signal?{signal:n.signal}:{}});if(!s.ok){let o=await bn(s);throw new le(xn(s,o),s.status,o)}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 hP(t,e){let n=await fetch(`${hn(e.backendUrl)}/admin/stress-test/run`,{method:"POST",headers:su(e,!0),body:JSON.stringify(t),...e.signal?{signal:e.signal}:{}});if(!n.ok){let r=await bn(n);throw new le(xn(n,r),n.status,r)}if(!n.body)throw new le("No response body",n.status,null);return n.body}var bP=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function gd(t,e){return bP.test(e)?new URL(`templates/public/${e.toLowerCase()}`,`${hn(t)}/`):null}async function xP(t,e,n){let r=gd(t,e);if(!r)throw new le("Invalid shareId parameter",400,null);let s=await fetch(r,{signal:n}),o=await bn(s);if(!s.ok)throw new le(xn(s,o),s.status,o);return o}async function _P(){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 PP(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 kP(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,client_id:t.clientId,client_secret:t.clientSecret},{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App configuration request failed");return e.data}async function wP(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 SP(){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}var md="/kortix/part/";function fd(t){return typeof t=="string"&&t.startsWith(md)}async function vP(t){if(!fd(t))throw new Error(`not an attachment part reference: ${t}`);let e=re();if(!e)throw new Error("runtime url not bound");let n=await q(`${e}${t}`);if(!n.ok)throw new Error(`attachment part fetch failed: ${n.status}`);return n.blob()}function yd(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 CP(t,e){try{let n=new URL(t),r=n.pathname;if(!(/^\/v1\/p\/[^/]+\/\d+(?:\/|$)/.test(r)||/^\/proxy\/\d+(?:\/|$)/.test(r)))return!1;let o=new Set;if(e)try{o.add(new URL(e).origin)}catch{}return typeof window<"u"&&o.add(window.location.origin),o.size===0||o.has(n.origin)}catch{return!1}}function iu(t,e){return CP(t,e)?(e?yd(e):null)??yd(t):null}function ou(t){try{let{hostname:e}=new URL(t);return/^p\d+-[^.]+\./.test(e)||/^(?:dev|staging|prod|preview)-p\d+-[a-z0-9-]+\./i.test(e)}catch{return!1}}function au(t,e){try{let n=new URL(t);return n.searchParams.set("token",e),n.toString()}catch{return t}}async function hd(t,e={}){let n=iu(t,e.serverUrl);if(!n)return!1;let r=await Ie();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}}async function RP(t,e={}){if(ou(t)){let n=await Ie();return n?au(t,n):t}return await hd(t,e),t}var AP=3e3;function bd(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 TP(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 o=await fetch(t,{method:"HEAD",credentials:"include",cache:"no-store",signal:n.signal});return bd(o.status)}catch{return"unknown"}finally{clearTimeout(s),e?.signal?.removeEventListener("abort",r)}}function cu(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return e}function IP(t,e){return`${cu(t)}/presentation-templates/${encodeURIComponent(e)}/pdf#toolbar=0&navpanes=0&scrollbar=0&view=FitH`}function EP(t,e){return`${cu(t)}/presentation-templates/${encodeURIComponent(e)}/image.png`}function xd(t,e){return`${cu(t)}/presentation/convert-to-${e}`}async function jP(t,e,n,r){let s=xd(e,t),o=r?.pollIntervalMs??2500,u=r?.timeoutMs??4*6e4,p=Date.now(),d=!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 I=await f.blob();if(I.size===0)throw new Error("Downloaded file is empty");return I}if(f.status===202){if(d||(d=!0,r?.onGenerating?.()),Date.now()-p>u)throw new Error(`Timed out waiting for the ${t.toUpperCase()} to generate`);await new Promise((I,E)=>{let l=setTimeout(I,o);r?.signal?.addEventListener("abort",()=>{clearTimeout(l),E(r.signal?.reason??new DOMException("Aborted","AbortError"))},{once:!0})});continue}let x=await f.text().catch(()=>""),C=f.statusText;try{let I=JSON.parse(x);C=String(I.error||I.detail||I.message||C)}catch{x&&(C=x)}throw new Error(`Failed to download ${t.toUpperCase()}: ${C} (HTTP ${f.status})`)}}function $P(t){return t.activityFresh||t.runtimeReady?"live":t.unreachable||t.stalled?"unreachable":t.sandbox==="stopped"||t.sandbox==="archived"||t.sandbox==="provisioning"||t.sandbox==="queued"||t.sandbox==="branching"?"waking":t.sandbox==="completed"?"unknown":t.sandbox==="failed"?"unreachable":t.sandbox==="running"?"connecting":"unknown"}function DP(t){return t==="unreachable"}var qP=6e4,MP=45e3,OP=45e3,UP=1e4,FP=3e3,LP=15e3;function GP(t){let e=0;for(let n of t)(n.state==="queued"||n.state==="delivering"||n.state==="waiting"&&n.reason!=="held")&&(e+=1);return e}function lu(t){if(!t)return null;let e=Date.parse(t);return Number.isNaN(e)?null:e}function BP(t){let{optimistic:e,abort:n,inbox:r,server:s,stream:o,activity:u,nowMs:p}=t,d=!!e&&p-e.atMs<6e4,f=d?e.acceptedAtMs??Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY,m=d?e.atMs:Number.NEGATIVE_INFINITY,x=!!n&&p-n.atMs<15e3?n.settledAtMs??Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY,C=!!s&&p-s.atMs<=45e3,I=!!o&&p-o.atMs<=45e3,E=!!r&&p-r.atMs<=1e4,l=o&&o.type==="idle"?o:null,c=!!u&&p-u.atMs<=45e3&&(!l||u.atMs>l.atMs),T=K=>{if(!l)return!1;let h=lu(K.started_at);return!(h===null||h>=l.atMs)};if(c)return{state:"working",source:"stream",turnId:null,since:u.atMs,serverOpenTurnToken:C?s.turns[0]?.turn_token??null:null};let P=(C?s.turns[0]:void 0)?.turn_token??null,j=C?s.turns.find(K=>!T(K)):void 0;if(j&&s.atMs>=x&&(!o||s.atMs>=o.atMs))return{state:"working",source:"server",turnId:j.message_id,since:lu(j.started_at)??s.atMs,serverOpenTurnToken:P};if(E&&r.pending>0)return{state:"working",source:"server",turnId:null,since:r.atMs,serverOpenTurnToken:P};let $=C&&!j&&s.atMs>=f,A=I&&o.atMs>=m;if($&&(!o||s.atMs>=o.atMs))return{state:"idle",source:"server",turnId:null,since:lu(s.lastEnded?.ended_at)??s.atMs,serverOpenTurnToken:P};if(A)return{state:o.type==="idle"?"idle":"working",source:"stream",turnId:null,since:o.atMs,serverOpenTurnToken:P};if(d)return{state:"working",source:"optimistic",turnId:e.messageId,since:e.atMs,serverOpenTurnToken:P};let W=s&&o?s.atMs>=o.atMs?{source:"server",atMs:s.atMs}:{source:"stream",atMs:o.atMs}:s?{source:"server",atMs:s.atMs}:o?{source:"stream",atMs:o.atMs}:{source:"server",atMs:p};return{state:"idle",source:W.source,turnId:null,since:W.atMs,serverOpenTurnToken:P}}function NP(t){let{optimistic:e,abort:n,inbox:r,server:s,stream:o,activity:u,nowMs:p}=t,d=[null,e?e.atMs+6e4:null,n?n.atMs+15e3:null,r?r.atMs+1e4:null,s?s.atMs+45e3:null,o?o.atMs+45e3:null,u?u.atMs+45e3:null],f=null;for(let m of d)m===null||m<=p||(f===null||m<f)&&(f=m);return f}var KP=6e4;function HP(t){return t.serverCompactingAtMs!==null?!0:t.optimisticAtMs===null?!1:t.nowMs-t.optimisticAtMs<6e4}function WP(t){if(t.serverCompactingAtMs!==null||t.optimisticAtMs===null)return null;let e=t.optimisticAtMs+6e4;return e>t.nowMs?e:null}var _d=9e4;function zP(t){return t.serverCompactingAtMs===null?null:t.serverCompactingAtMs+_d}function Pd(t){let e=t.fetch??globalThis.fetch,n=t.baseUrl.replace(/\/$/,"");return async({limit:r,before:s})=>{let o=new URLSearchParams({limit:String(r)});s&&o.set("before",s);let u=await t.getToken?.(),p=await e(`${n}/session/${encodeURIComponent(t.sessionId)}/message?${o}`,{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 kd(t){return VP(Pd(t))}function wd(t){return new uu({...t,loadPage:Pd(t)})}async function VP(t){let e=[],n=new Set,r;do{let u=await t({limit:100,...r?{before:r}:{}});if(e.push(u.messages),r=u.nextCursor,r&&n.has(r))throw new Error(`Session history cursor repeated: ${r}`);r&&n.add(r)}while(r);let s=[],o=new Set;for(let u=e.length-1;u>=0;u--)for(let p of e[u])o.has(p.info.id)||(o.add(p.info.id),s.push(p));return s}var JP={now:Date.now,setInterval:(t,e)=>setInterval(t,e),clearInterval:t=>clearInterval(t),setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t)},uu=class{options;scheduler;livenessIntervalMs;retryAttempt=0;tailRetryTimer;snapshot={freshness:"idle",hasOlder:!1,isLoadingOlder:!1};nextCursor;knownUserMessageIds=new Set;olderHistoryStarted=!1;tailRequest;olderRequest;livenessTimer;lastActivityAt;listeners=new Set;destroyed=!1;constructor(e){this.options=e,this.scheduler=e.scheduler??JP,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"})}setBusy(e){if(!e){let n=this.livenessTimer!==void 0;this.stopLivenessTimer(),n&&!this.destroyed&&this.reconcile("turn-end");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.tailRetryTimer!==void 0&&(this.cancelTimer(this.tailRetryTimer),this.tailRetryTimer=void 0),this.listeners.clear()}async loadTail(e){try{let n=await this.loadPage("tail",e);if(this.destroyed)return;this.rememberUserMessages(n.messages),this.options.hydrate(n.messages),this.olderHistoryStarted||this.setCursor(n.nextCursor),this.update({freshness:"fresh"}),this.options.markLoaded(),this.retryAttempt=0}catch{if(this.destroyed)return;this.update({freshness:"error"}),this.scheduleTailRetry(e)}}scheduleTailRetry(e){if(this.destroyed||this.tailRetryTimer!==void 0)return;let n=Math.min(1e3*2**this.retryAttempt,15e3);this.retryAttempt+=1,this.tailRetryTimer=this.startTimer(()=>{this.tailRetryTimer=void 0,!this.destroyed&&this.reconcile(e)},n)}async loadPage(e,n,r){let s=this.scheduler.now();try{let o=await this.options.loadPage({limit:e==="tail"?50:100,...r?{before:r}:{}});return this.options.onTelemetry?.({operation:e,reason:n,durationMs:this.scheduler.now()-s,messageCount:o.messages.length,succeeded:!0}),o}catch(o){throw this.options.onTelemetry?.({operation:e,reason:n,durationMs:this.scheduler.now()-s,messageCount:0,succeeded:!1}),o}}async loadCompleteOlderTurn(e){let n=await this.loadPage("older","manual",e);return this.loadCompleteTurn(n,"older","manual",e)}async loadCompleteTurn(e,n,r,s,o){let u=[...e.messages],p=new Set(this.knownUserMessageIds),d=new Set(s?[s]:[]),f=e.nextCursor,m=0;for(let b of e.messages)b.info.role==="user"&&p.add(b.info.id);for(;f&&m<10&&u.some(b=>b.info.role==="assistant"&&!!b.info.parentID&&!p.has(b.info.parentID));){if(d.has(f))throw new Error(`Session history cursor repeated: ${f}`);d.add(f);let b=await this.loadPage(n,r,f);if(this.destroyed)return{messages:u,nextCursor:f};m+=1,u.unshift(...b.messages);for(let x of b.messages)x.info.role==="user"&&p.add(x.info.id);f=b.nextCursor,o?.([...u])}return{messages:u,nextCursor:f}}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.raceDeadline(this.reconcile("poll"),this.livenessIntervalMs),this.lastActivityAt=this.scheduler.now())}raceDeadline(e,n){return new Promise(r=>{let s,o=!1,u=()=>{o||(o=!0,this.cancelTimer(s),r())};s=this.startTimer(u,n),e.then(u,u)})}setCursor(e){this.nextCursor=e,this.update({hasOlder:!!e})}stopLivenessTimer(){this.livenessTimer!==void 0&&(this.scheduler.clearInterval(this.livenessTimer),this.livenessTimer=void 0)}startTimer(e,n){return this.scheduler.setTimeout?this.scheduler.setTimeout(e,n):setTimeout(e,n)}cancelTimer(e){e!==void 0&&(this.scheduler.clearTimeout?this.scheduler.clearTimeout(e):clearTimeout(e))}update(e){let n={...this.snapshot,...e};if(!(n.freshness===this.snapshot.freshness&&n.hasOlder===this.snapshot.hasOlder&&n.isLoadingOlder===this.snapshot.isLoadingOlder)){this.snapshot=n;for(let r of this.listeners)r()}}};function Sd(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return`${e}/tunnel/permission-requests/stream`}function vd(t){let{url:e,token:n,method:r="GET",body:s,onEvent:o,onOpen:u,onError:p,signal:d}=t,f=new Map,m=null,b=!1;function x(y,c){o?.(y,c);let T=f.get(y);if(T)for(let R of T)try{R(c)}catch{}}async function C(){if(b)return;m=new AbortController;let y=d?AbortSignal.any([m.signal,d]):m.signal;try{let c={Accept:"text/event-stream",Authorization:`Bearer ${n}`};r!=="GET"&&s!==void 0&&(c["Content-Type"]="application/json");let T=await fetch(e,{method:r,headers:c,body:r!=="GET"&&s!==void 0?JSON.stringify(s):void 0,signal:y,credentials:"include"});if(!T.ok)throw new Error(`SSE connection failed: ${T.status} ${T.statusText}`);if(!T.body)throw new Error("SSE response has no body");u?.();let R=T.body.getReader(),P=new TextDecoder,j="",$="message",A="";for(;!b;){let{done:W,value:K}=await R.read();if(W)break;j+=P.decode(K,{stream:!0});let h=j.split(`
|
|
77
|
-
`);
|
|
78
|
-
`:"")+
|
|
79
|
-
`:"")+
|
|
75
|
+
`),s=0;for(;s<n.length&&s<r.length&&n[s]===r[s];)s++;let o=n.length,u=r.length;for(;o>s&&u>s&&n[o-1]===r[u-1];)o--,u--;let p=[];for(let d=0;d<s;d++)p.push({type:"unchanged",text:n[d]});for(let d=s;d<o;d++)p.push({type:"removed",text:n[d]});for(let d=s;d<u;d++)p.push({type:"added",text:r[d]});for(let d=o;d<n.length;d++)p.push({type:"unchanged",text:n[d]});return p}function S_(t){let e=G(t.input?.oldString),n=G(t.input?.newString),r=e!==void 0&&n!==void 0?w_(e,n):void 0;return{kind:"file-edit",path:vu(t),diff:r}}var Id=/^Found\s+(\d+)\s+match/i,v_=/^(\/[^:]+?):\s*/,Td=/Line\s+(\d+):/g;function C_(t){let e=t.trim(),n=e.match(Id),r=n?e.slice(n[0].length).trim():e;if(!r)return[];let s=[];for(let o of r.split(/\n\n+/)){let u=o.trim();if(!u)continue;let p=u.match(v_);if(!p)continue;let d=p[1],f=u.slice(p[0].length),m=[],h;for(Td.lastIndex=0;(h=Td.exec(f))!==null;)m.push({line:Number(h[1]),contentStart:h.index+h[0].length,headerStart:h.index});for(let x=0;x<m.length;x++){let P=x+1<m.length?m[x+1].headerStart:f.length,A=f.slice(m[x].contentStart,P).trim();s.push({path:d,line:m[x].line,content:A.endsWith(";")?A.slice(0,-1):A})}}return s}function A_(t){return t.trim().split(`
|
|
76
|
+
`).map(e=>e.trim()).filter(e=>e.startsWith("/")||e.startsWith("./")||e.startsWith("~")).map(e=>({path:e}))}function R_(t){let e=G(t.input?.pattern,t.input?.query)??"";if(t.status==="error"||!t.output)return{kind:"search",pattern:e};let n=Id.test(t.output.trim())?C_(t.output):A_(t.output);return{kind:"search",pattern:e,matches:n.length>0?n.slice(0,200):void 0}}function T_(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 wu(t){let e=ze(t)??{};return{content:G(e.content)??"",status:G(e.status)??"pending",priority:G(e.priority)}}function I_(t){let e=t.input?.todos;if(Array.isArray(e))return{kind:"todo",items:e.map(wu)};if(Array.isArray(t.outputParsed))return{kind:"todo",items:t.outputParsed.map(wu)};let n=ze(t.outputParsed);return n&&Array.isArray(n.todos)?{kind:"todo",items:n.todos.map(wu)}:{kind:"todo",items:[]}}function E_(t){return{kind:"question",questions:(Array.isArray(t.input?.questions)?t.input.questions:[]).map(r=>{let s=ze(r)??{},u=(Array.isArray(s.options)?s.options:[]).flatMap(p=>{let d=ze(p),f=d&&G(d.label);return f?[{label:f,description:d?G(d.description):void 0}]:[]});return{question:G(s.question)??"",header:G(s.header),options:u}})}}function j_(t){let n=t.input&&Object.keys(t.input).length>0?Rd(t.input):void 0,r;return t.outputParsed!==void 0?r=typeof t.outputParsed=="string"?xt(t.outputParsed):Rd(t.outputParsed):t.outputText!==void 0?r=xt(t.outputText):r=t.error,{kind:"generic",label:t.title,inputPretty:n,outputPretty:r}}function Ed(t){switch(ht(t.name)){case"web_search":case"websearch":case"image_search":return d_(t);case"bash":return x_(t);case"read":return __(t);case"write":return P_(t);case"edit":case"morph_edit":return S_(t);case"grep":case"glob":return R_(t);case"task":return T_(t);case"todowrite":return I_(t);case"question":case"ask":return E_(t);default:return j_(t)}}var $_=new Set(["AbortError","MessageAbortedError"]),M_=["operation was aborted","aborted by user","interrupted by user","cancelled by user","canceled by user","request was cancelled","request was canceled","aborterror"],q_=["unreachable","upstream","econnreset","econnrefused","socket hang up","network","fetch failed","timed out","timeout","gateway","502","503","504"];function jd(t){let e=t.toLowerCase();return q_.some(n=>e.includes(n))?!1:M_.some(n=>e.includes(n))}function D_(t){let e=t.data,n=e&&typeof e=="object"?e.message:void 0;return typeof n=="string"?n:typeof t.message=="string"?t.message:void 0}function Cu(t){if(typeof t=="string")return jd(t);if(!t||typeof t!="object")return!1;let e=t,n=e.name;if(typeof n=="string"&&$_.has(n))return!0;let r=D_(e);return typeof r=="string"?jd(r):!1}var $d=["user","runtime-disposed","orphan-finalized","wake"],O_=["orphan-finalized","wake"];function U_(t){if(!t||typeof t!="object")return;let e=t.data;if(!e||typeof e!="object")return;let n=e.reason;if(!(typeof n!="string"||!n))return $d.includes(n)?n:void 0}function En(t){try{return typeof process<"u"?process.env?.[t]:void 0}catch{return}}function F_(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 L_(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 Au(t,e,n){return t!==void 0?t:F_(En(e),n)}var G_={get disableMobileAdvertising(){return Au(I().featureFlags?.disableMobileAdvertising,"NEXT_PUBLIC_DISABLE_MOBILE_ADVERTISING",!1)},get enableDinoGame(){return Au(I().featureFlags?.enableDinoGame,"NEXT_PUBLIC_ENABLE_DINO_GAME",!1)},get enableProjects(){return Au(I().featureFlags?.enableProjects,"NEXT_PUBLIC_ENABLE_PROJECTS",!1)},get enableAutoModel(){return!1}};var _t="kortix-active-instance",Md=["/dashboard","/agents","/p","/workspace","/settings","/browser","/desktop","/services","/sessions","/terminal","/files","/scheduled-tasks","/commands","/tools","/configuration","/changelog","/legacy","/credits-explained"];function qd(t){return Md.some(e=>t===e||t.startsWith(`${e}/`))}function Ve(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 B_(t){let e=Ve(t);return!!e&&e.innerPath===""}function N_(t){let e=Ve(t);return!e||!e.innerPath?t:e.innerPath}function Dd(t,e){if(!t)return e;if(e.startsWith("/")||(e=`/${e}`),e.startsWith("/instances/")){let n=Ve(e);return n?`/instances/${encodeURIComponent(t)}${n.innerPath}`:e}return qd(e)?`/instances/${encodeURIComponent(t)}${e}`:e}function Od(t){return t?Ve(t)?.instanceId??null:null}function K_(){return typeof window>"u"?null:Od(window.location.pathname)||Ud()}function Ud(){if(typeof document>"u")return null;let t=document.cookie.match(new RegExp(`(?:^|; )${_t}=([^;]+)`));return t?decodeURIComponent(t[1]):null}function H_(t){if(typeof document>"u")return;let e=n=>{document.cookie=n};if(typeof window<"u"&&window.location.pathname.startsWith("/projects")){e(`${_t}=; Max-Age=0; Path=/; SameSite=Lax`);return}if(!t){e(`${_t}=; Max-Age=0; Path=/; SameSite=Lax`);return}e(`${_t}=${encodeURIComponent(t)}; Path=/; SameSite=Lax`)}function W_(t,e){return e?Dd(e,t):t}function z_(t){let e=Ve(t);return e?e.innerPath||"/dashboard":t}function Ru(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 Fd(t){let e=Ru(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 Tu(t){let e=Fd(t);if(!e||typeof e!="object")return null;let n=e;return n.name==="ConfigInvalidError"?n:null}function V_(t){return Tu(t)!==null}var J_=[/sandbox not ready/i,/sandbox is not (?:ready|running)/i,/opencode (?:session )?(?:is )?not ready/i,/\bsandbox_not_ready\b/,/\bsandbox_lifecycle_unavailable\b/];function kt(t){let e=Ru(t);return e?J_.some(n=>n.test(e)):!1}var Pt=class extends Error{constructor(e){let n=e?.trim();super(n&&kt(n)?n:n?`sandbox not ready: ${n}`:"sandbox not ready"),this.name="SandboxNotReadyError"}};function Ld(t){let e=Tu(t);if(e){let s=(e.data?.path??"OpenCode config").replace(/^\/workspace\//,""),o=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:o?`${u?`${u}: `:""}${o}`:void 0}}let n=Ru(t);return kt(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 Y(){let t=En("BACKEND_URL")||I().backendUrl;return t||"http://localhost:8008/v1"}function wt(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=wt(e);if(n)return n}return}if(t&&typeof t=="object"){let e=t;return wt(e.sandboxId??e.id??e.slug??Object.values(e)[0])}}var Gd=["http://localhost:8008/v1","http://127.0.0.1:8008/v1"];function Bd(t){let e=t.length;for(;e>0&&t.charCodeAt(e-1)===47;)e--;return`${t.slice(0,e)}/platform/local-bridge/status`}function X_(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 Iu(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?`${Y()}/p/${n.external_id}/${ce.KORTIX_MASTER}`:""),status:X_(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 Eu(){let t=await Ae(),e=[];for(let n of t){let r=await Ne(n.project_id).catch(()=>[]);for(let s of r)e.push({project:n,session:s,runtime:null,sandbox:Iu(n,s,null)})}return e.sort((n,r)=>{let s={active:0,provisioning:1,stopped:2,error:3},o=(s[n.sandbox.status]??99)-(s[r.sandbox.status]??99);return o!==0?o:Date.parse(r.sandbox.updated_at)-Date.parse(n.sandbox.updated_at)})}async function Te(t){let e=await Eu();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 jn(t,e={}){let n={"Content-Type":"application/json",...e.headers},r=e.signal??AbortSignal.timeout(3e4),s=await M(`${Y()}${t}`,{...e,headers:n,signal:r}),o=await s.text().catch(()=>{}),u;if(o)try{u=JSON.parse(o)}catch{}if(!s.ok){let p=u?.error||u?.message||u?.detail||o||`Platform API error ${s.status}`,d=new C(p,{status:s.status,code:u?.code||u?.error_code||String(s.status),details:u??(o?{rawText:o}:void 0),response:s,endpoint:t});throw s.status===402&&(d=ke(Object.assign(d,{response:s,status:s.status,data:u}))),d}return u}function ju(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`${Y()}/p/${t.external_id}/${ce.KORTIX_MASTER}`}function Q_(t,e){return t.external_id?`${Y()}/p/${t.external_id}/${e}`:null}async function Y_(){let t=await i.get("/setup/sandbox-providers");if(t.error)throw t.error;return t.data}async function Nd(t){let e=await Te();if(e)return{sandbox:e.sandbox,created:!1};let r=(await Ae())[0];if(!r)throw new Error("Create a project before starting a sandbox");let s=await Ke(r.project_id,{...t?.provider?{provider:t.provider}:{}}),o=(await Re(r.project_id,s.session_id))?.sandbox??null;return{sandbox:Iu(r,s,o),created:!0}}async function Z_(){return(await Te().catch(()=>null))?.sandbox??null}async function eP(t){return{sandbox:(await Nd(t)).sandbox}}async function tP(t){let e=wt(t);return e?(await Te(e).catch(()=>null))?.sandbox??null:null}async function nP(t,e){throw await Te(t)?new Error("Renaming project-session sandboxes is not exposed by the current API"):new Error("Project session sandbox not found")}async function rP(t){let e=wt(t);return(await Eu().catch(()=>[])).map(r=>r.sandbox).filter(r=>!e||r.sandbox_id===e||r.external_id===e)}async function sP(){if(typeof window>"u")return null;let t=Y(),e=Array.from(new Set([t,...Gd]));for(let n of e)try{let r=await fetch(Bd(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 iP(t){if(!t)throw new Error("No sandbox selected for workload restart");let e=await Te(t);if(!e)throw new Error("Project session sandbox not found");await pt(e.project.project_id,e.session.session_id)}async function oP(t){if(!t)throw new Error("No sandbox selected to stop");let e=await Te(t);if(!e)throw new Error("Project session sandbox not found");await dt(e.project.project_id,e.session.session_id)}async function aP(t){throw new Error("Cancellation is not exposed for project-session sandboxes")}async function cP(t){throw new Error("Reactivation is not exposed for project-session sandboxes")}async function $u(t,e,n){let r=ju(t),s=await M(`${ie(r)}${e}`,{signal:AbortSignal.timeout(8e3),headers:{"Content-Type":"application/json"},...n});if(!s.ok){let o=await s.text().catch(()=>"");throw new Error(o||`Request failed (${s.status})`)}return await s.json()}async function lP(t,e){return $u(t,`/kortix/projects/${encodeURIComponent(e)}/members`,{method:"GET"})}async function uP(t,e,n,r="member"){await $u(t,`/kortix/projects/${encodeURIComponent(e)}/members`,{method:"POST",body:JSON.stringify({user_id:n,role:r})})}async function pP(t,e,n){await $u(t,`/kortix/projects/${encodeURIComponent(e)}/members/${encodeURIComponent(n)}`,{method:"DELETE"})}async function dP(t){let e=await jn(`/platform/invites/${encodeURIComponent(t)}`,{method:"GET"});if(!e.success||!e.data)throw new Error(e.error||"Invite not found");return e.data}async function gP(t){let e=await jn(`/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 mP(t){let e=await jn(`/platform/invites/${encodeURIComponent(t)}/decline`,{method:"POST"});if(!e.success)throw new Error(e.error||"Failed to decline invite")}async function fP(t){throw new Error("Backups are not exposed for project-session sandboxes")}async function yP(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function hP(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function bP(t,e){throw new Error("Backups are not exposed for project-session sandboxes")}async function xP(t){throw new Error("SSH setup is not exposed for project-session sandboxes")}async function _P(t){throw new Error("SSH connection details are not exposed for project-session sandboxes")}var Kd=["pulling","patching","stopping","removing","recreating","restarting","verifying","starting","health_check"];function PP(t){return Kd.includes(t)}async function kP(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 wP(t){let e=t?`?channel=${t}`:"",n=await fetch(`${Y()}/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 Hd(t||"stable");r.changelog=s.find(o=>o.version===r.version)??s[0]??null}catch{r.changelog=null}return r}async function Hd(t){let e=t?`?channel=${t}`:"",n=await fetch(`${Y()}/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 SP(){let t=await fetch(`${Y()}/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 vP(t,e){throw new Error("Sandbox image updates are managed by project-session provisioning")}async function CP(t){}async function AP(t){}async function RP(t){return{serverTypes:[],location:t||"hel1"}}async function TP(t){throw new Error("Retired instance provisioning is unavailable. Create a project session with daytona, platinum, or e2b.")}async function IP(t){let e=await i.delete(`/platform/sandbox?sandbox_id=${t}`);if(e.error)throw e.error;return e.data}async function EP(t,e){await i.post("/platform/sandbox/mark-error",{sandbox_id:t,error_message:e},{showErrors:!1,timeout:1e4})}async function jP(){let t=await i.post("/platform/sandbox/claim-computer",{},{timeout:6e4});if(t.error)throw t.error;return t.data}async function $P(t){let e=await i.get(`/platform/sandbox/${t}/status`,{showErrors:!1,timeout:1e4});return e.success?e.data??null:null}function MP(t,e){return`${Y()}/platform/sandbox/${t}/provision-stream?token=${encodeURIComponent(e)}`}var pe=class extends Error{constructor(n,r,s){super(n);this.status=r;this.body=s;this.name="HostBoundaryError"}status;body};function $n(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return/\/v1$/.test(e)?e:`${e}/v1`}function Mu(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 qn(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(`${$n(e.backendUrl)}${t}`,{method:n?.method??"GET",headers:Mu(e,r),...r?{body:JSON.stringify(n.body)}:{},...e.signal?{signal:e.signal}:{},...e.cache?{cache:e.cache}:{},...e.next?{next:e.next}:{}}),o=await Mn(s);if(!s.ok)throw new pe(qn(s,o),s.status,o);return o}function qP(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 DP(t,e){return B(`/marketplace/items${qP(e)}`,t)}function OP(t){return B("/marketplace/marketplaces",t)}function UP(t,e){return B(`/marketplace/items/${encodeURIComponent(t)}`,e)}function FP(t,e,n){return B(`/marketplace/items/${encodeURIComponent(t)}/file?path=${encodeURIComponent(e)}`,n)}function LP(t,e){return B("/access/check-email",e,{method:"POST",body:{email:t}})}function GP(t,e){return B("/access/request-access",e,{method:"POST",body:t})}function BP(t){return B("/auth/logout",t,{method:"POST",body:{}})}function NP(t,e){return B(`/oauth/authorize/consent/${encodeURIComponent(t)}`,e)}function KP(t,e){return B("/oauth/authorize/consent",e,{method:"POST",body:{request_id:t.requestId,approved:t.approved}})}function HP(t,e){return B(`/setup-links/connectors/${encodeURIComponent(t)}`,e)}function WP(t,e){return B(`/setup-links/connectors/${encodeURIComponent(t)}/start`,e,{method:"POST",body:{}})}function zP(t,e){return B(`/setup-links/connectors/${encodeURIComponent(t)}/finalize`,e,{method:"POST",body:{}})}function VP(t,e){return B(`/setup-links/secret/${encodeURIComponent(t)}`,e)}function JP(t,e,n){return B(`/setup-links/secret/${encodeURIComponent(t)}`,n,{method:"POST",body:{values:e}})}function XP(t,e){return B(`/p/public-share/${encodeURIComponent(t)}`,e)}function QP(t,e,n){return B(`/projects/${encodeURIComponent(t)}/sessions/${encodeURIComponent(e)}/start`,n,{method:"POST",body:{}})}function YP(t){return B("/system/maintenance",t)}function ZP(t,e){return B("/system/maintenance",e,{method:"PUT",body:t})}function ek(t){return B("/user-roles",t)}function tk(t,e){return B("/system/demo-request",e,{method:"POST",body:t})}async function nk(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(`${$n(n.backendUrl)}/accounts/${encodeURIComponent(t)}/audit/export?${r}`,{headers:Mu(n,!1),...n.signal?{signal:n.signal}:{}});if(!s.ok){let o=await Mn(s);throw new pe(qn(s,o),s.status,o)}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 rk(t,e){let n=await fetch(`${$n(e.backendUrl)}/admin/stress-test/run`,{method:"POST",headers:Mu(e,!0),body:JSON.stringify(t),...e.signal?{signal:e.signal}:{}});if(!n.ok){let r=await Mn(n);throw new pe(qn(n,r),n.status,r)}if(!n.body)throw new pe("No response body",n.status,null);return n.body}var sk=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function Wd(t,e){return sk.test(e)?new URL(`templates/public/${e.toLowerCase()}`,`${$n(t)}/`):null}async function ik(t,e,n){let r=Wd(t,e);if(!r)throw new pe("Invalid shareId parameter",400,null);let s=await fetch(r,{signal:n}),o=await Mn(s);if(!s.ok)throw new pe(qn(s,o),s.status,o);return o}async function ok(){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 ak(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 ck(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,client_id:t.clientId,client_secret:t.clientSecret},{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App configuration request failed");return e.data}async function lk(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 uk(){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}var zd="/kortix/part/";function Vd(t){return typeof t=="string"&&t.startsWith(zd)}async function pk(t){if(!Vd(t))throw new Error(`not an attachment part reference: ${t}`);let e=se();if(!e)throw new Error("runtime url not bound");let n=await M(`${e}${t}`);if(!n.ok)throw new Error(`attachment part fetch failed: ${n.status}`);return n.blob()}function Jd(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 dk(t,e){try{let n=new URL(t),r=n.pathname;if(!(/^\/v1\/p\/[^/]+\/\d+(?:\/|$)/.test(r)||/^\/proxy\/\d+(?:\/|$)/.test(r)))return!1;let o=new Set;if(e)try{o.add(new URL(e).origin)}catch{}return typeof window<"u"&&o.add(window.location.origin),o.size===0||o.has(n.origin)}catch{return!1}}function qu(t,e){return dk(t,e)?(e?Jd(e):null)??Jd(t):null}function Du(t){try{let{hostname:e}=new URL(t);return/^p\d+-[^.]+\./.test(e)||/^(?:dev|staging|prod|preview)-p\d+-[a-z0-9-]+\./i.test(e)}catch{return!1}}function Ou(t,e){try{let n=new URL(t);return n.searchParams.set("token",e),n.toString()}catch{return t}}async function Xd(t,e={}){let n=qu(t,e.serverUrl);if(!n)return!1;let r=await je();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}}async function gk(t,e={}){if(Du(t)){let n=await je();return n?Ou(t,n):t}return await Xd(t,e),t}var mk=3e3;function Qd(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 fk(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 o=await fetch(t,{method:"HEAD",credentials:"include",cache:"no-store",signal:n.signal});return Qd(o.status)}catch{return"unknown"}finally{clearTimeout(s),e?.signal?.removeEventListener("abort",r)}}function Uu(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return e}function yk(t,e){return`${Uu(t)}/presentation-templates/${encodeURIComponent(e)}/pdf#toolbar=0&navpanes=0&scrollbar=0&view=FitH`}function hk(t,e){return`${Uu(t)}/presentation-templates/${encodeURIComponent(e)}/image.png`}function Yd(t,e){return`${Uu(t)}/presentation/convert-to-${e}`}async function bk(t,e,n,r){let s=Yd(e,t),o=r?.pollIntervalMs??2500,u=r?.timeoutMs??4*6e4,p=Date.now(),d=!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 A=await f.blob();if(A.size===0)throw new Error("Downloaded file is empty");return A}if(f.status===202){if(d||(d=!0,r?.onGenerating?.()),Date.now()-p>u)throw new Error(`Timed out waiting for the ${t.toUpperCase()} to generate`);await new Promise((A,E)=>{let j=setTimeout(A,o);r?.signal?.addEventListener("abort",()=>{clearTimeout(j),E(r.signal?.reason??new DOMException("Aborted","AbortError"))},{once:!0})});continue}let x=await f.text().catch(()=>""),P=f.statusText;try{let A=JSON.parse(x);P=String(A.error||A.detail||A.message||P)}catch{x&&(P=x)}throw new Error(`Failed to download ${t.toUpperCase()}: ${P} (HTTP ${f.status})`)}}function xk(t){return t.activityFresh||t.runtimeReady?"live":t.unreachable||t.stalled?"unreachable":t.sandbox==="stopped"||t.sandbox==="archived"||t.sandbox==="provisioning"||t.sandbox==="queued"||t.sandbox==="branching"?"waking":t.sandbox==="completed"?"unknown":t.sandbox==="failed"?"unreachable":t.sandbox==="running"?"connecting":"unknown"}function _k(t){return t==="unreachable"}var Pk=6e4,kk=45e3,wk=45e3,Sk=1e4,vk=3e3,Ck=15e3;function Ak(t,e){return e?e.serverAtMs!=null&&t.serverAtMs!=null?t.serverAtMs>=e.serverAtMs:t.atMs>=e.atMs:!0}function Rk(t){let e=0;for(let n of t)(n.state==="queued"||n.state==="delivering"||n.state==="waiting"&&n.reason!=="held")&&(e+=1);return e}function Fu(t){if(!t)return null;let e=Date.parse(t);return Number.isNaN(e)?null:e}function Tk(t){let{optimistic:e,abort:n,inbox:r,server:s,stream:o,activity:u,nowMs:p}=t,d=!!e&&p-e.atMs<6e4,f=e?e.turnId===void 0?e.messageId:e.turnId:null,m=d?e.acceptedAtMs??Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY,h=d?e.atMs:Number.NEGATIVE_INFINITY,P=!!n&&p-n.atMs<15e3?n.settledAtMs??Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY,A=!!s&&p-s.atMs<=45e3,E=!!o&&p-o.atMs<=45e3,j=!!r&&p-r.atMs<=1e4,l=o&&o.type==="idle"&&o.origin!=="local"?o:null,c=!!u&&p-u.atMs<=45e3&&(!l||u.atMs>l.atMs),S=y=>{if(!l)return!1;let T=Fu(y.started_at);return!(T===null||T>=l.atMs)};if(c)return{state:"working",source:"stream",turnId:null,since:u.atMs,serverOpenTurnToken:s?.turns[0]?.turn_token??null};let R=s?.turns[0]?.turn_token??null,$=A?s.turns.find(y=>!S(y)):void 0,D=!!o&&!(o.type==="idle"&&o.origin==="local");if($&&s.atMs>=P&&(!D||s.atMs>=o.atMs))return{state:"working",source:"server",turnId:$.message_id,since:Fu($.started_at)??s.atMs,serverOpenTurnToken:R};if(j&&r.pending>0)return{state:"working",source:"server",turnId:d?f:null,since:r.atMs,serverOpenTurnToken:R};let q=A&&!$&&s.atMs>=m,X=E&&o.atMs>=h;if(q&&(!o||s.atMs>=o.atMs))return{state:"idle",source:"server",turnId:null,since:Fu(s.lastEnded?.ended_at)??s.atMs,serverOpenTurnToken:R};if(X)return{state:o.type==="idle"?"idle":"working",source:"stream",turnId:null,since:o.atMs,serverOpenTurnToken:R};if(d)return{state:"working",source:"optimistic",turnId:f,since:e.atMs,serverOpenTurnToken:R};let W=s&&o?s.atMs>=o.atMs?{source:"server",atMs:s.atMs}:{source:"stream",atMs:o.atMs}:s?{source:"server",atMs:s.atMs}:o?{source:"stream",atMs:o.atMs}:{source:"server",atMs:p};return{state:"idle",source:W.source,turnId:null,since:W.atMs,serverOpenTurnToken:R}}function Ik(t){let{optimistic:e,abort:n,inbox:r,server:s,stream:o,activity:u,nowMs:p}=t,d=[null,e?e.atMs+6e4:null,n?n.atMs+15e3:null,r?r.atMs+1e4:null,s?s.atMs+45e3:null,o?o.atMs+45e3:null,u?u.atMs+45e3:null],f=null;for(let m of d)m===null||m<=p||(f===null||m<f)&&(f=m);return f}var Ek=6e4;function jk(t){return t.serverCompactingAtMs!==null?!0:t.optimisticAtMs===null?!1:t.nowMs-t.optimisticAtMs<6e4}function $k(t){if(t.serverCompactingAtMs!==null||t.optimisticAtMs===null)return null;let e=t.optimisticAtMs+6e4;return e>t.nowMs?e:null}var Zd=9e4;function Mk(t){return t.serverCompactingAtMs===null?null:t.serverCompactingAtMs+Zd}var qk=75e3,Dk=2,Ok=2e4;function Lu(){return{status:"idle",dispatch:"none",fingerprint:null,lastProgressAtMs:null,lastDispatchAtMs:null,attempts:[],msSinceProgress:0,settled:!1}}function Uk(t){return t.filter(e=>e!=null).join("|")}function Fk(t,e){return t.length===0?"retry-start":t.filter(r=>r.step==="restart").length<e?"restart":null}function Lk(t,e,n={}){let r=n.noProgressMs??75e3,s=n.maxRestarts??2,o=n.cooldownMs??2e4;if(e.runtimeReachable)return{...Lu(),settled:!0};if(!e.waking)return{...t,dispatch:"none",fingerprint:null,lastProgressAtMs:null,msSinceProgress:0};if(t.settled)return{...Lu(),settled:!0};let u=t.lastProgressAtMs,p=u===null,d=e.progress!==t.fingerprint,f=u===null||d?e.nowMs:u,m=Math.max(0,e.nowMs-f),h={...t,dispatch:"none",fingerprint:e.progress,lastProgressAtMs:f,msSinceProgress:m,status:t.attempts.length>0?"escalating":"waking"};if(t.status==="exhausted")return{...h,status:"exhausted"};let x=!p&&!d&&m>=r;if(!e.serverGaveUp&&!x||t.lastDispatchAtMs!==null&&e.nowMs-t.lastDispatchAtMs<o)return h;let P=Fk(t.attempts,s);return P?{...h,status:"escalating",dispatch:P,attempts:[...t.attempts,{step:P,atMs:e.nowMs}],lastDispatchAtMs:e.nowMs,lastProgressAtMs:e.nowMs,msSinceProgress:0}:{...h,status:"exhausted"}}var Gk={"retry-start":"retrying",restart:"restarting"};function Bk(t){if(t.status!=="escalating")return null;let e=t.attempts[t.attempts.length-1];return e?`Still waking \u2014 ${Gk[e.step]} the runtime (attempt ${t.attempts.length+1})`:null}function Nk(t){return t===1?"once":t===2?"twice":`${t} times`}function Kk(t){if(t.status!=="exhausted")return null;let e=t.attempts.filter(s=>s.step==="restart").length,n=t.attempts.some(s=>s.step==="retry-start");if(!n&&e===0)return null;let r=[];return n&&r.push("re-issuing the wake"),e>0&&r.push(`restarting the session ${Nk(e)}`),`Tried: ${r.join(", then ")}.`}var Hk=1e3,Wk=15e3,eg=100,zk=50,Vk=10;function tg(t){let e=t.fetch??globalThis.fetch,n=t.baseUrl.replace(/\/$/,"");return async({limit:r,before:s},o)=>{let u=new URLSearchParams({limit:String(r)});s&&u.set("before",s);let p=await t.getToken?.(),d=await e(`${n}/session/${encodeURIComponent(t.sessionId)}/message?${u}`,{headers:p?{Authorization:`Bearer ${p}`}:void 0,...o?{signal:o}:{}});if(!d.ok)throw d.status===503?new Pt(`session ${d.status}`):new Error(`Session synchronization failed: ${d.status}`);return{messages:await d.json(),nextCursor:d.headers.get("x-next-cursor")||void 0}}}function ng(t){return Jk(tg(t))}function rg(t){return new Gu({...t,loadPage:tg(t)})}async function Jk(t){let e=[],n=new Set,r;do{let u=await t({limit:eg,...r?{before:r}:{}});if(e.push(u.messages),r=u.nextCursor,r&&n.has(r))throw new Error(`Session history cursor repeated: ${r}`);r&&n.add(r)}while(r);let s=[],o=new Set;for(let u=e.length-1;u>=0;u--)for(let p of e[u])o.has(p.info.id)||(o.add(p.info.id),s.push(p));return s}var Xk={now:Date.now,setInterval:(t,e)=>setInterval(t,e),clearInterval:t=>clearInterval(t),setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t)},Gu=class{options;scheduler;livenessIntervalMs;verifyIntervalMs;lastTailReadAt;retryAttempt=0;tailRetryTimer;snapshot={freshness:"idle",hasOlder:!1,isLoadingOlder:!1};nextCursor;knownUserMessageIds=new Set;olderHistoryStarted=!1;tailRequest;olderRequest;livenessTimer;lastActivityAt;listeners=new Set;destroyed=!1;abortController=new AbortController;constructor(e){this.options=e,this.scheduler=e.scheduler??Xk,this.livenessIntervalMs=e.livenessIntervalMs??1e4,this.verifyIntervalMs=e.verifyIntervalMs??3e4,this.lastActivityAt=this.scheduler.now(),this.lastTailReadAt=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"||this.snapshot.freshness==="loading"?"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"})}setBusy(e){if(!e){let n=this.livenessTimer!==void 0;this.stopLivenessTimer(),n&&!this.destroyed&&this.reconcile("turn-end");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.tailRetryTimer!==void 0&&(this.cancelTimer(this.tailRetryTimer),this.tailRetryTimer=void 0),this.abortController.abort(),this.listeners.clear()}async loadTail(e){this.lastTailReadAt=this.scheduler.now();try{let n=await this.loadPage("tail",e);if(this.destroyed)return;this.rememberUserMessages(n.messages),this.options.hydrate(n.messages),this.olderHistoryStarted||this.setCursor(n.nextCursor),this.update({freshness:"fresh"}),this.options.markLoaded(),this.retryAttempt=0}catch(n){if(this.destroyed||Cu(n)||this.abortController.signal.aborted)return;this.update({freshness:kt(n)?"loading":"error"}),this.scheduleTailRetry(e)}}scheduleTailRetry(e){if(this.destroyed||this.tailRetryTimer!==void 0)return;let n=Math.min(Hk*2**this.retryAttempt,Wk);this.retryAttempt+=1,this.tailRetryTimer=this.startTimer(()=>{this.tailRetryTimer=void 0,!this.destroyed&&this.reconcile(e)},n)}async loadPage(e,n,r){let s=this.scheduler.now();try{let o=await this.options.loadPage({limit:e==="tail"?zk:eg,...r?{before:r}:{}},this.abortController.signal);return this.options.onTelemetry?.({operation:e,reason:n,durationMs:this.scheduler.now()-s,messageCount:o.messages.length,succeeded:!0}),o}catch(o){throw this.options.onTelemetry?.({operation:e,reason:n,durationMs:this.scheduler.now()-s,messageCount:0,succeeded:!1}),o}}async loadCompleteOlderTurn(e){let n=await this.loadPage("older","manual",e);return this.loadCompleteTurn(n,"older","manual",e,r=>{this.rememberUserMessages(r.messages),this.options.hydrate(r.messages),this.setCursor(r.nextCursor)})}async loadCompleteTurn(e,n,r,s,o){let u=[...e.messages],p=new Set(this.knownUserMessageIds),d=new Set(s?[s]:[]),f=e.nextCursor,m=0;for(let h of e.messages)h.info.role==="user"&&p.add(h.info.id);for(;f&&m<Vk&&u.some(h=>h.info.role==="assistant"&&!!h.info.parentID&&!p.has(h.info.parentID));){if(d.has(f))throw new Error(`Session history cursor repeated: ${f}`);d.add(f);let h;try{h=await this.loadPage(n,r,f)}catch(x){throw o?.({messages:[...u],nextCursor:f}),x}if(this.destroyed)return{messages:u,nextCursor:f};m+=1,u.unshift(...h.messages);for(let x of h.messages)x.info.role==="user"&&p.add(x.info.id);f=h.nextCursor,o?.({messages:[...u],nextCursor:f})}return{messages:u,nextCursor:f}}rememberUserMessages(e){for(let n of e)n.info.role==="user"&&this.knownUserMessageIds.add(n.info.id)}async checkLiveness(){if(this.destroyed)return;let e=this.scheduler.now(),n=e-this.lastActivityAt>this.livenessIntervalMs,r=e-this.lastTailReadAt>=this.verifyIntervalMs;!n&&!r||(await this.raceDeadline(this.reconcile("poll"),this.livenessIntervalMs),this.lastActivityAt=this.scheduler.now())}raceDeadline(e,n){return new Promise(r=>{let s,o=!1,u=()=>{o||(o=!0,this.cancelTimer(s),r())};s=this.startTimer(u,n),e.then(u,u)})}setCursor(e){this.nextCursor=e,this.update({hasOlder:!!e})}stopLivenessTimer(){this.livenessTimer!==void 0&&(this.scheduler.clearInterval(this.livenessTimer),this.livenessTimer=void 0)}startTimer(e,n){return this.scheduler.setTimeout?this.scheduler.setTimeout(e,n):setTimeout(e,n)}cancelTimer(e){e!==void 0&&(this.scheduler.clearTimeout?this.scheduler.clearTimeout(e):clearTimeout(e))}update(e){let n={...this.snapshot,...e};if(!(n.freshness===this.snapshot.freshness&&n.hasOlder===this.snapshot.hasOlder&&n.isLoadingOlder===this.snapshot.isLoadingOlder)){this.snapshot=n;for(let r of this.listeners)r()}}};function sg(t){let e=t;for(;e.endsWith("/");)e=e.slice(0,-1);return`${e}/tunnel/permission-requests/stream`}function ig(t){let{url:e,token:n,method:r="GET",body:s,onEvent:o,onOpen:u,onError:p,signal:d}=t,f=new Map,m=null,h=!1;function x(l,b){o?.(l,b);let c=f.get(l);if(c)for(let S of c)try{S(b)}catch{}}async function P(){if(h)return;m=new AbortController;let l=d?AbortSignal.any([m.signal,d]):m.signal;try{let b={Accept:"text/event-stream",Authorization:`Bearer ${n}`};r!=="GET"&&s!==void 0&&(b["Content-Type"]="application/json");let c=await fetch(e,{method:r,headers:b,body:r!=="GET"&&s!==void 0?JSON.stringify(s):void 0,signal:l,credentials:"include"});if(!c.ok)throw new Error(`SSE connection failed: ${c.status} ${c.statusText}`);if(!c.body)throw new Error("SSE response has no body");u?.();let S=c.body.getReader(),w=new TextDecoder,R="",$="message",D="";for(;!h;){let{done:q,value:X}=await S.read();if(q)break;R+=w.decode(X,{stream:!0});let W=R.split(`
|
|
77
|
+
`);R=W.pop()||"";for(let y of W)y===""?D&&(x($,D.trimEnd()),$="message",D=""):y.startsWith("event: ")?$=y.slice(7).trim():y.startsWith("data: ")?D+=(D?`
|
|
78
|
+
`:"")+y.slice(6):y.startsWith("data:")&&(D+=(D?`
|
|
79
|
+
`:"")+y.slice(5))}}catch(b){if(h||b instanceof DOMException&&b.name==="AbortError")return;p?.(b instanceof Error?b:new Error(String(b)))}}function A(){h=!0,m?.abort(),m=null,f.clear()}function E(l,b){let c=f.get(l)??new Set;c.add(b),f.set(l,c)}function j(l,b){f.get(l)?.delete(b)}return{connect:P,close:A,addEventListener:E,removeEventListener:j}}function Qk(t,e){return ig({...e,url:sg(t)})}var Yk="/_kortix/viewer";var Dn=new Map;function og(){Dn.clear()}async function Zk(t,e){let n;try{n=await e(t,{credentials:"same-origin",headers:{accept:"application/json"}})}catch{return null}if(n.status===401||n.status===404||!n.ok)return null;let r=await n.json().catch(()=>null);return r&&typeof r.user_id=="string"?r:null}async function Bu(t={}){let e=t.path??Yk,n=t.fetch??((o,u)=>fetch(o,u)),r=Dn.get(e);if(r&&!r.inflight&&r.expiresAt>Date.now())return r.session;if(r?.inflight)return r.inflight;let s=Zk(e,n).then(o=>{let u=o?.expires_at?Date.parse(o.expires_at):Number.NaN,p=Number.isFinite(u)?u-6e4:Date.now()+6e4;return Dn.set(e,{session:o,expiresAt:p}),o});return Dn.set(e,{session:r?.session??null,expiresAt:0,inflight:s}),s}function ag(t={}){return async()=>(await Bu(t))?.access_token??null}return gg(ew);})();
|