@neta-art/cohub 8.18.0 → 8.20.0

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 CHANGED
@@ -240,11 +240,13 @@ These runtime-only APIs are available **exclusively inside a published App**:
240
240
  null); `invocation.spaceId` is the same Space for compatibility.
241
241
  Returns `null` outside an App runtime. `client.app.onContextChanged()` pushes
242
242
  fresh state.
243
- - `client.auth.request({ scopes, reason, spaceId?, alwaysAsk? })` — ensures
244
- the app holds these scopes; silent when a grant covers them, consent dialog
245
- otherwise.
246
- - `client.auth.requestSpace({ scopes, reason })` — one consent: the viewer
247
- picks a Space and grants the scopes on it.
243
+ - `client.auth.authorize({ target, scopes, reason?, alwaysAsk?, fallback? })`
244
+ — requests consent for an account, a specific Space, or a viewer-picked
245
+ Space. Silent when a grant covers the scopes. Returns the actual target,
246
+ how it was resolved, and the authoritative grant; see the
247
+ [authorization contract](../../docs/app-authorization.md).
248
+ `client.auth.request()` / `requestSpace()` / `requestCreateSpace()` remain
249
+ available for older Apps.
248
250
  - `client.context().permissions.viewerGrants` — render the viewer's current
249
251
  per-space grants. Grant management uses an account-authenticated client or
250
252
  the CLI; an App session cannot manage its own grants.
@@ -260,19 +262,25 @@ These runtime-only APIs are available **exclusively inside a published App**:
260
262
  const client = createCohubClient({ env: "prod" });
261
263
 
262
264
  const ctx = await client.context();
263
- if (!ctx?.space?.id) throw new Error("Not inside a published app.");
265
+ if (!ctx?.app?.id) throw new Error("Not inside a published app.");
264
266
 
265
267
  const sourceSessionId = ctx.invocation?.sessionId ?? null;
266
268
  // `shell.space` is the current Cohub location. `app.homeSpace` is the App's
267
269
  // owning Space. A new chat background also has `invocation.spaceId`.
268
- const spaceId = ctx.shell?.space?.id ?? ctx.invocation?.spaceId ?? ctx.app.homeSpace?.id ?? ctx.space.id;
270
+ const spaceId = ctx.shell?.space?.id ?? ctx.invocation?.spaceId ?? ctx.app.homeSpace?.id;
269
271
  const space = client.space(spaceId);
270
272
 
271
273
  // Request viewer grants from a user gesture (button click)
272
- await client.auth.request({
274
+ const consent = await client.auth.authorize({
275
+ target: { kind: "space", spaceId },
273
276
  scopes: ["session.prompt.fullaccess", "generation.create"],
274
277
  reason: "This app sends prompts and generates images.",
275
278
  });
279
+ if (consent.status !== "granted") return;
280
+ // Act on the granted target, which may differ from the request.
281
+ const activeSpace = consent.target.kind === "space"
282
+ ? client.space(consent.target.spaceId)
283
+ : space;
276
284
  ```
277
285
 
278
286
  ### The permission model (critical)
@@ -297,7 +305,7 @@ lets you send a prompt but does NOT let you read the reply — that needs
297
305
  polling its result needs `taskrun.view`.
298
306
 
299
307
  Render grant state from `ctx.permissions.viewerGrants`; act through
300
- `auth.request` (silent when covered). `allowedViewerScopes` is deprecated —
308
+ `auth.authorize()` (silent when covered). `allowedViewerScopes` is deprecated —
301
309
  viewer grants are no longer gated by the app configuration.
302
310
 
303
311
  ### Realtime rooms
@@ -280,6 +280,7 @@ declare function contextToPiMessages(messages: RuntimeContextMessage[], options?
280
280
  //#region ../protocol/dist/runtime/index.d.ts
281
281
  declare const RUNTIME_PROTOCOL_VERSION: 1;
282
282
  declare const RUNTIME_MAX_FRAME_BYTES: number;
283
+ declare const RUNTIME_RECOVERY_BATCH_SIZE = 64;
283
284
  declare const harnessSchema: z.ZodEnum<{
284
285
  codex: "codex";
285
286
  cohub: "cohub";
@@ -310,6 +311,13 @@ type RuntimeContext = {
310
311
  resolvedTurnIds?: string[];
311
312
  settledTurnIds?: string[];
312
313
  };
314
+ /** Trace identifiers carried to a local Runtime without carrying credentials. */
315
+ type RuntimeTraceContext = {
316
+ requestId?: string;
317
+ traceId?: string | null;
318
+ spanId?: string | null;
319
+ traceparent?: string | null;
320
+ };
313
321
  declare const runtimeCapabilitiesSchema: z.ZodObject<{
314
322
  harnesses: z.ZodArray<z.ZodEnum<{
315
323
  codex: "codex";
@@ -326,21 +334,56 @@ declare const runtimeCapabilitiesSchema: z.ZodObject<{
326
334
  }, z.core.$strip>>;
327
335
  }, z.core.$strip>;
328
336
  type RuntimeCapabilities = z.infer<typeof runtimeCapabilitiesSchema>;
337
+ declare const runtimePendingExecutionSchema: z.ZodObject<{
338
+ sessionId: z.ZodString;
339
+ turnId: z.ZodString;
340
+ harness: z.ZodEnum<{
341
+ codex: "codex";
342
+ pi: "pi";
343
+ }>;
344
+ }, z.core.$strict>;
345
+ type RuntimePendingExecution = z.infer<typeof runtimePendingExecutionSchema>;
329
346
  declare const runtimeReadySchema: z.ZodObject<{
330
347
  type: z.ZodLiteral<"runtime.ready">;
331
348
  connectionId: z.ZodString;
332
349
  }, z.core.$strip>;
350
+ declare const fileWatcherStatusSchema: z.ZodObject<{
351
+ backend: z.ZodEnum<{
352
+ fsevents: "fsevents";
353
+ fsnotify: "fsnotify";
354
+ none: "none";
355
+ scan: "scan";
356
+ }>;
357
+ state: z.ZodEnum<{
358
+ degraded: "degraded";
359
+ running: "running";
360
+ unavailable: "unavailable";
361
+ }>;
362
+ reason: z.ZodOptional<z.ZodEnum<{
363
+ coverage_incomplete: "coverage_incomplete";
364
+ polling: "polling";
365
+ root_changed: "root_changed";
366
+ start_failed: "start_failed";
367
+ watch_error: "watch_error";
368
+ }>>;
369
+ observedAt: z.ZodISODateTime;
370
+ }, z.core.$strip>;
333
371
  type RuntimeStatus = {
334
372
  kind: "cloud" | "local";
335
373
  online: boolean;
374
+ runtimeId?: string | null;
336
375
  capabilities: RuntimeCapabilities | null;
337
- recovery: {
338
- pending: number;
339
- revision: string;
340
- };
376
+ fileWatcher: z.infer<typeof fileWatcherStatusSchema> | null;
377
+ };
378
+ type RuntimeSessionRecoveryStatus = {
379
+ pending: boolean;
380
+ revision: string;
381
+ turnId: string | null;
382
+ harness: LocalHarness | null;
341
383
  canManage: boolean;
342
384
  };
343
385
  declare const runtimeStopConfirmationSchema: z.ZodObject<{
386
+ expectedTurnId: z.ZodString;
344
387
  revision: z.ZodString;
345
388
  confirmed: z.ZodLiteral<true>;
346
389
  }, z.core.$strict>;
@@ -363,6 +406,8 @@ type RuntimeTurnInput = {
363
406
  provider?: string | null;
364
407
  model?: string | null;
365
408
  thinkingLevel?: string | null;
409
+ requestId?: string | null;
410
+ traceContext?: RuntimeTraceContext;
366
411
  accessMode: "read_only" | "full_access";
367
412
  };
368
413
  type RuntimeMessage = {
@@ -398,7 +443,6 @@ type RuntimeExecutionEvent = {
398
443
  } | {
399
444
  type: "context.required";
400
445
  pendingTurnIds?: string[];
401
- historyOnly?: boolean;
402
446
  } | {
403
447
  type: "turn.acknowledged";
404
448
  } | {
@@ -487,7 +531,6 @@ declare const runtimeEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
487
531
  }, z.core.$strip>, z.ZodObject<{
488
532
  type: z.ZodLiteral<"context.required">;
489
533
  pendingTurnIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
490
- historyOnly: z.ZodOptional<z.ZodBoolean>;
491
534
  }, z.core.$strip>, z.ZodObject<{
492
535
  type: z.ZodLiteral<"turn.acknowledged">;
493
536
  }, z.core.$strip>, z.ZodObject<{
@@ -507,6 +550,12 @@ declare const runtimeCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
507
550
  pi: "pi";
508
551
  }>;
509
552
  }, z.core.$strip>;
553
+ traceContext: z.ZodOptional<z.ZodObject<{
554
+ requestId: z.ZodOptional<z.ZodString>;
555
+ traceId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
556
+ spanId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
557
+ traceparent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
558
+ }, z.core.$strict>>;
510
559
  }, z.core.$strip>, z.ZodObject<{
511
560
  type: z.ZodLiteral<"turn.start">;
512
561
  requestId: z.ZodString;
@@ -573,6 +622,13 @@ declare const runtimeCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
573
622
  provider: z.ZodOptional<z.ZodNullable<z.ZodString>>;
574
623
  model: z.ZodOptional<z.ZodNullable<z.ZodString>>;
575
624
  thinkingLevel: z.ZodOptional<z.ZodNullable<z.ZodString>>;
625
+ requestId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
626
+ traceContext: z.ZodOptional<z.ZodObject<{
627
+ requestId: z.ZodOptional<z.ZodString>;
628
+ traceId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
629
+ spanId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
630
+ traceparent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
631
+ }, z.core.$strict>>;
576
632
  accessMode: z.ZodEnum<{
577
633
  full_access: "full_access";
578
634
  read_only: "read_only";
@@ -5662,7 +5718,7 @@ type SpaceFsChange = {
5662
5718
  size?: number;
5663
5719
  };
5664
5720
  type SpaceFsChangedPayload = {
5665
- source: "sandbox-inotify" | "api-fs" | "bootstrap" | "sandbox-watch-started";
5721
+ source: "sandbox-watch" | "api-fs" | "bootstrap" | "sandbox-watch-started";
5666
5722
  /** Client-generated id used to identify an API write echoed over realtime. */
5667
5723
  mutationId?: string;
5668
5724
  seq?: number;
@@ -6475,6 +6531,7 @@ type AppVersionPublishedEvent = {
6475
6531
  payload: {
6476
6532
  app: RealtimeAppRecord;
6477
6533
  version: RealtimeAppVersionRecord;
6534
+ standaloneUrl?: string | null;
6478
6535
  previousVersionId: string | null;
6479
6536
  actor: {
6480
6537
  userId: string;
@@ -7856,14 +7913,14 @@ type SpaceModListItem = {
7856
7913
  * Kept as a runtime constant so hosts can validate untrusted scopes from
7857
7914
  * app iframes — TypeScript unions cannot constrain cross-window messages.
7858
7915
  */
7859
- declare const PERMISSIONS: readonly ["space.view", "space.edit", "space.create", "space.label.view", "space.label.manage", "space.label.assign", "session.view", "session.edit", "session.prompt.readonly", "session.prompt.fullaccess", "session.access.manage", "generation.create", "file.view", "file.view.filtered", "file.edit", "checkpoint.view", "checkpoint.edit", "member.view", "member.manage", "references.view", "channel.view", "channel.manage", "cronjob.view", "cronjob.manage", "taskrun.view", "command.execute", "sandbox.view", "sandbox.manage", "mod.view", "mod.manage", "space.commerce.view", "space.commerce.manage", "user.space.list", "user.session.list", "user.taskrun.list", "user.usage.read"];
7916
+ declare const PERMISSIONS: readonly ["space.view", "space.edit", "space.create", "space.label.view", "space.label.manage", "space.label.assign", "session.view", "session.edit", "session.prompt.readonly", "session.prompt.fullaccess", "session.access.manage", "generation.create", "file.view", "file.view.filtered", "file.edit", "checkpoint.view", "checkpoint.edit", "member.view", "member.manage", "references.view", "channel.view", "channel.manage", "cronjob.view", "cronjob.manage", "taskrun.view", "command.execute", "sandbox.view", "sandbox.manage", "mod.view", "mod.manage", "space.commerce.view", "space.commerce.manage", "app.manage", "user.space.list", "user.session.list", "user.taskrun.list", "user.usage.read"];
7860
7917
  type Permission = (typeof PERMISSIONS)[number];
7861
7918
  /**
7862
7919
  * Account-level permissions, not bound to a specific Space. Mirrored from
7863
7920
  * `@cohub/core` alongside {@link PERMISSIONS}. A request whose scopes are all
7864
7921
  * account-level needs no target Space and must not open a Space picker.
7865
7922
  */
7866
- declare const USER_LEVEL_PERMISSIONS: Set<"channel.manage" | "channel.view" | "checkpoint.edit" | "checkpoint.view" | "command.execute" | "cronjob.manage" | "cronjob.view" | "file.edit" | "file.view" | "file.view.filtered" | "generation.create" | "member.manage" | "member.view" | "mod.manage" | "mod.view" | "references.view" | "sandbox.manage" | "sandbox.view" | "session.access.manage" | "session.edit" | "session.prompt.fullaccess" | "session.prompt.readonly" | "session.view" | "space.commerce.manage" | "space.commerce.view" | "space.create" | "space.edit" | "space.label.assign" | "space.label.manage" | "space.label.view" | "space.view" | "taskrun.view" | "user.session.list" | "user.space.list" | "user.taskrun.list" | "user.usage.read">;
7923
+ declare const USER_LEVEL_PERMISSIONS: Set<"app.manage" | "channel.manage" | "channel.view" | "checkpoint.edit" | "checkpoint.view" | "command.execute" | "cronjob.manage" | "cronjob.view" | "file.edit" | "file.view" | "file.view.filtered" | "generation.create" | "member.manage" | "member.view" | "mod.manage" | "mod.view" | "references.view" | "sandbox.manage" | "sandbox.view" | "session.access.manage" | "session.edit" | "session.prompt.fullaccess" | "session.prompt.readonly" | "session.view" | "space.commerce.manage" | "space.commerce.view" | "space.create" | "space.edit" | "space.label.assign" | "space.label.manage" | "space.label.view" | "space.view" | "taskrun.view" | "user.session.list" | "user.space.list" | "user.taskrun.list" | "user.usage.read">;
7867
7924
  declare const isUserLevelPermission: (permission: Permission) => boolean;
7868
7925
  /** Implication-aware membership check, mirroring `@cohub/core`. */
7869
7926
  declare function scopeListHasPermission(scopes: readonly Permission[], permission: Permission): boolean;
@@ -8144,11 +8201,13 @@ type CohubContext = {
8144
8201
  declare const COHUB_ENVIRONMENTS: {
8145
8202
  readonly prod: {
8146
8203
  readonly apiBaseUrl: "https://api.cohub.live";
8204
+ readonly webBaseUrl: "https://cohub.live";
8147
8205
  readonly websocketUrl: "wss://gateway.cohub.live/ws";
8148
8206
  readonly voiceInputWebsocketUrl: "wss://gateway.cohub.live/asr/ws";
8149
8207
  };
8150
8208
  readonly dev: {
8151
8209
  readonly apiBaseUrl: "https://api-dev.cohub.live";
8210
+ readonly webBaseUrl: "https://dev.cohub.live";
8152
8211
  readonly websocketUrl: "wss://gateway-dev.cohub.live/ws";
8153
8212
  readonly voiceInputWebsocketUrl: "wss://gateway-dev.cohub.live/asr/ws";
8154
8213
  };
@@ -8165,6 +8224,9 @@ declare const resolveApiBaseUrl: (options?: {
8165
8224
  baseUrl?: string;
8166
8225
  env?: CohubEnvironment;
8167
8226
  }) => string;
8227
+ declare const resolveWebBaseUrl: (options?: {
8228
+ env?: CohubEnvironment;
8229
+ }) => "https://cohub.live" | "https://dev.cohub.live";
8168
8230
  declare const resolveWebsocketUrl: (options?: {
8169
8231
  url?: string;
8170
8232
  env?: CohubEnvironment;
@@ -8174,4 +8236,4 @@ declare const resolveVoiceInputWebsocketUrl: (options?: {
8174
8236
  env?: CohubEnvironment;
8175
8237
  }) => string;
8176
8238
  //#endregion
8177
- export { CheckpointDiffFile as $, BoardEffectInput as $a, DesktopFileTarget as $i, SpaceCommerceProductCreditBenefit as $n, StoredToolCall as $o, SpaceUsageResponse as $r, readRequestSourceFromEnv as $s, PublicReferral as $t, BillingCreditGrantStatus as A, BoardPlaybackCommand as Aa, SessionTurnPatchEvent as Ai, SessionTurnWindowResponse as An, filterGenerationDeclarationsByPolicy as Ao, SpaceFsWriteFileInput as Ar, CompletionAssistantMessage as As, LabelAssignmentListItem as At, BillingProductCreditBenefit as B, BoardValidationResult as Ba, DESKTOP_COMMAND_MAX_TIMEOUT_MS as Bi, SpaceBootstrapMeta as Bn, ChannelHealth as Bo, SpacePresenceSnapshot as Br, ContentBlock as Bs, MeResponse as Bt, BillingCatalog as C, BoardCameraFocusParams as Ca, RealtimeAppVersionRecord as Ci, SessionMessagesPaginatedResponse as Cn, GenerationModelPolicy as Co, SpaceFsUploadDestination as Cr, HarnessArchiveIndex as Cs, GlobalSearchResult as Ct, BillingCheckoutResult as D, BoardDiagnostic as Da, RealtimeRoomEvent as Di, SessionTurnResponse as Dn, assertGenerationRequestAllowedByPolicy as Do, SpaceFsUploadPlanEntryInput as Dr, RuntimeArchiveUpload as Ds, JsonObject as Dt, BillingCheckoutConfirmation as E, BoardCreateInput as Ea, RealtimeRoomDescriptor as Ei, SessionTurnIndexResponse as En, GenerationPolicyError as Eo, SpaceFsUploadPlanEntry as Er, RuntimeArchiveSegment as Es, InvitationDetail as Et, BillingDiscountPricing as F, BoardSummary as Fa, AppBoardArtifactManifest as Fi, SpaceAccess as Fn, BillingPayload as Fo, SpaceMember as Fr, CreateSpaceCompletionInput as Fs, LabelListItem as Ft, BillingPromotionCodePreview as G, BoardAuthoringSnapshot as Ga, DESKTOP_COMMAND_VERSION as Gi, SpaceCheckpointDetailResponse as Gn, MessageRecord as Go, SpaceSandboxAutoDestroyPolicy as Gr, RequestSourceVia as Gs, PaletteOverviewSpace as Gt, BillingProductKind as H, BoardAuthoringItem as Ha, DESKTOP_COMMAND_PENDING_TTL_SECONDS as Hi, SpaceBootstrapStage as Hn, ChannelRuntimeState as Ho, SpacePublicProfile as Hr, COHUB_SOURCE_HEADER_NAMES as Hs, PERMISSIONS as Ht, BillingHistoryPagination as I, BoardTransactionOperation as Ia, AppBoardAsset as Ii, SpaceAccessPolicy as In, GenerationContentBlock as Io, SpaceMeta as Ir, ModelThinkingLevel as Is, LabelRecord as It, BillingSubscriptionHistoryList as J, BoardSemanticCommand as Ja, DesktopCommand as Ji, SpaceCommerceCreditsBenefit as Jn, MessageToolCallsFile as Jo, SpaceSessionsResponse as Jr, isRequestSourceEmpty as Js, PatchResourceLabelsResponse as Jt, BillingRedemptionResult as K, BoardItemPatch as Ka, DesktopAppTarget as Ki, SpaceCommerceBenefit as Kn, SessionForkRecord as Ko, SpaceSandboxConfig as Kr, hasRequestSourceIdentity as Ks, PaletteOverviewSpaceRelation as Kt, BillingPaymentStatus as L, BoardTransactionRecord as La, AppContentKind as Li, SpaceActivityAppRanking as Ln, GenerationModelDeclaration as Lo, SpaceModListItem as Lr, SpaceCompletionResult as Ls, LabelResourceType as Lt, BillingCreditUnit as M, BoardPlaybackPolicySchema as Ma, AppArtifactDownloadDescriptor as Mi, SkillCatalogEntry as Mn, getAllowedGenerationModelIds as Mo, SpaceInvitationListResponse as Mr, CompletionMessageRole as Ms, LabelAssignmentRecord as Mt, BillingDiscountOffer as N, BoardPlaybackSnapshot as Na, AppArtifactManifest as Ni, SkillCatalogResponse as Nn, normalizeGenerationPolicy as No, SpaceInvitationLocation as Nr, CompletionThinkingLevel as Ns, LabelItemsResponse as Nt, BillingConversionIntent as O, BoardManifest as Oa, RealtimeRoomMember as Oi, SessionTurnSignedUrlsResponse as On, decodeGenerationPolicy as Oo, SpaceFsUploadProgress as Or, harnessArchiveIndexSchema as Os, JsonPrimitive as Ot, BillingDiscountOfferRef as P, BoardRecord as Pa, AppArtifactManifestFile as Pi, SkillCatalogSource as Pn, parseGenerationPolicyFromEnv as Po, SpaceListItem as Pr, CompletionUsage as Ps, LabelItemsSessionFork as Pt, CheckpointDiffDelivery as Q, BoardEffect as Qa, DesktopCommandStatus as Qi, SpaceCommerceProductBenefitBinding as Qn, StoredIntermediateMessage as Qo, SpaceUsageHourlyStat as Qr, parseRequestSourceFromHeaders as Qs, PromptTemplateCatalogResponse as Qt, BillingPluginStatus as R, BoardTransactionsPage as Ra, AppVersionSource as Ri, SpaceActivityContributor as Rn, GenerationResult as Ro, SpacePendingDiffFileResponse as Rr, SpaceCompletionStreamEvent as Rs, LabelScopeType as Rt, BillingBalanceActivityStatus as S, BoardCameraFocus as Sa, RealtimeAppRecord as Si, SessionMessageResponse as Sn, AppAuthorizationTarget as So, SpaceFsTreeResponse as Sr, HarnessArchive as Ss, GlobalSearchResponse as St, BillingCheckoutActionState as T, BoardCapabilities as Ta, RealtimeRoom as Ti, SessionRecord as Tn, GenerationPolicy as To, SpaceFsUploadError as Tr, RuntimeArchivePage as Ts, GlobalSearchViewerRelation as Tt, BillingProductPricing as U, BoardAuthoringItemSchema as Ua, DESKTOP_COMMAND_SETTLEMENT_GRACE_SECONDS as Ui, SpaceBootstrapStatus as Un, DiscordChannelConfig as Uo, SpaceRecord as Ur, REQUEST_SOURCE_VIA_MAX_LENGTH as Us, PaletteOverviewResponse as Ut, BillingProductDisplay as V, parseBoardPlaybackPolicy as Va, DESKTOP_COMMAND_PAYLOAD_MAX_BYTES as Vi, SpaceBootstrapSource as Vn, ChannelHealthReasonCode as Vo, SpacePresenceUser as Vr, COHUB_SOURCE_HEADER as Vs, ModelCatalogEntry as Vt, BillingProductPromotion as W, BoardAuthoringReadInput as Wa, DESKTOP_COMMAND_TERMINAL_TTL_SECONDS as Wi, SpaceChannelBindingInput as Wn, FeishuChannelConfig as Wo, SpaceRole as Wr, RequestSource as Ws, PaletteOverviewSession as Wt, BillingSubscriptionSummary as X, BoardSemanticMutation as Xa, DesktopCommandError as Xi, SpaceCommerceOrder as Xn, SessionTurnRecord as Xo, SpaceTurnListItem as Xr, mergeRequestSourceIntoMeta as Xs, PromptAccessMode as Xt, BillingSubscriptionHistoryStatus as Y, BoardSemanticCommandSchema as Ya, DesktopCommandDispatchedPayload as Yi, SpaceCommerceFeatureBenefit as Yn, SessionTurnIndexItem as Yo, SpaceTurnAuthorFilter as Yr, isRequestSourceUuid as Ys, Permission as Yt, Channel as Z, BoardAssetRef as Za, DesktopCommandRecord as Zi, SpaceCommerceProduct as Zn, SpaceTurnsResponse$1 as Zo, SpaceTurnsResponse as Zr, normalizeRequestSource as Zs, PromptTemplateCatalogEntry as Zt, ApiError as _, BoardGeoKind as _a, BoardAwarenessUpdatedEvent as _i, ReferralStatus as _n, BoardCoordinateSpace as _o, SpaceFsMoveInput as _r, runtimeCommandSchema as _s, CronJobUpdatePatch as _t, CohubRuntimeKind as a, parseDesktopCommand as aa, UserActivityRange as ai, ReferenceAggregateGroup as an, BoardComposition as ao, SpaceDefaultResponse as ar, RuntimeCapabilities as as, CheckpointDiffSummary as at, BillingBalanceActivityKind as b, BoardDealParams as ba, ChannelEnvelope as bi, SendMessageCronJobPayload as bn, AppAuthorizationRequest as bo, SpaceFsReadFilesInput as br, contextToPiMessages as bs, GenerationUsageHourlyStat as bt, normalizeVoiceInputWebsocketUrl as c, NavigationLaunch as ca, UserProfile as ci, ReferenceDirection as cn, BoardCompositionSchema as co, SpaceFsCompleteUploadResponse as cr, RuntimeContextMessage as cs, CreateInvitationInput as ct, resolveCohubEnvironment as d, BoardAwarenessNodePreview as da, UserSessionSourceKey as di, ReferenceQueryableType as dn, BoardTimeline as do, SpaceFsCreateUploadResponse as dr, RuntimeStatus as ds, CreateSpaceModInput as dt, DesktopOpenCommand as ea, requestSourceToHeaders as ec, SpaceUsageSummary as ei, PublicUserAppItem as en, BoardEffectInputSchema as eo, SpaceConfig as er, TurnIntermediateMessagesFile as es, CheckpointDiffFileResponse as et, resolveExecutionAppId as f, BoardAwarenessStateUpdate as fa, UserSessionSpaceSummary as fi, ReferenceRecord as fn, BoardTimelineMarker as fo, SpaceFsDeleteNodeInput as fr, RuntimeStopConfirmation as fs, CreateSpacePromptInput as ft, AcceptInvitationResponse as g, BoardColorId as ga, AppVersionPublishedEvent as gi, ReferralReward as gn, BoardCapability as go, SpaceFsFileResponse as gr, resolveHarness as gs, CronJobRecord as gt, resolveWebsocketUrl as h, BOARD_GEO_KINDS as ha, scopeListHasPermission as hi, ReferralListItem as hn, parseBoardCompositionInput as ho, SpaceFsFileKind as hr, isLocalHarness as hs, CronJobPayload as ht, CohubExecutionContext as i, isTerminalDesktopCommandStatus as ia, UserActivityQuery as ii, PublicUserWorkItem as in, BoardAnimationTarget as io, SpaceCreateResponse as ir, RUNTIME_PROTOCOL_VERSION as is, CheckpointDiffStatus as it, BillingCreditStatus as j, BoardPlaybackPolicy as ja, AppArtifactDescriptor as ji, SessionTurnsPaginatedResponse as jn, findGenerationModelPolicy as jo, SpaceInvitation as jr, CompletionMessage as js, LabelAssignmentPageInfo as jt, BillingCreditExpiryGroup as k, BoardMutationReceipt as ka, RealtimeServerEvent as ki, SessionTurnStreamSnapshotResponse as kn, encodeGenerationPolicy as ko, SpaceFsUploadResponse as kr, validateArchiveBoundary as ks, JsonValue as kt, normalizeWebsocketUrl as l, SpacePublicEndpoints as la, UserRulesResponse as li, ReferenceKind as ln, BoardEasing as lo, SpaceFsCreateDirectoryInput as lr, RuntimeExecutionEvent as ls, CreateInvitationResponse as lt, resolveVoiceInputWebsocketUrl as m, BOARD_COLOR_IDS as ma, isUserLevelPermission as mi, ReferralDashboard as mn, BoardTrackInterpolation as mo, SpaceFsEntry as mr, RuntimeTurnUserMessage as ms, CreateSpaceSessionInput as mt, CohubContext as n, DesktopTarget as na, TaskRunRecord as ni, PublicUserProfile as nn, parseBoardEffectInput as no, SpaceConfigResponse as nr, LocalHarness as ns, CheckpointDiffPatchLine as nt, getCohubContext as o, resolveOpenSurface as oa, UserActivityRankings as oi, ReferenceAggregateGroupBy as on, BoardCompositionInputSchema as oo, SpaceEnvInput as or, RuntimeCommand as os, CheckpointRecord as ot, resolveExecutionToken as p, BoardAwarenessUpdate as pa, UserSessionsResponse as pi, ReferenceResourceType as pn, BoardTrack as po, SpaceFsEncoding as pr, RuntimeTurnInput as ps, CreateSpacePromptResponse as pt, BillingResponsePayload as q, BoardItemPatchSchema as qa, DesktopCall as qi, SpaceCommerceBuyerProfile as qn, SessionTurnSegmentRecord as qo, SpaceSandboxProvider as qr, isRequestSourceClientId as qs, PatchResourceLabelsInput as qt, CohubEnvironment as r, isDesktopCallMethod as ra, USER_LEVEL_PERMISSIONS as ri, PublicUserSpaceItem as rn, BOARD_ANIMATION_CHANNEL_CAPABILITIES as ro, SpaceConfigUpdateResponse as rr, RUNTIME_MAX_FRAME_BYTES as rs, CheckpointDiffStats as rt, normalizeBaseUrl as s, NavigationCall as sa, UserActivityResponse as si, ReferenceAggregateResponse as sn, BoardCompositionPlayback as so, SpaceFsCompleteUploadInput as sr, RuntimeContext as ss, ClaimReferralResponse as st, COHUB_ENVIRONMENTS as t, DesktopSurface as ta, resolveRequestSourceChannel as tc, TaskRunDetailResponse as ti, PublicUserPageResponse as tn, BoardEffectSchema as to, SpaceConfigInput as tr, HarnessKind as ts, CheckpointDiffPatchKind as tt, resolveApiBaseUrl as u, BoardAwarenessGesture as ua, UserSessionListItem as ui, ReferenceQueryResponse as un, BoardProceduralClip as uo, SpaceFsCreateUploadInput as ur, RuntimeMessage as us, CreateSpaceInput as ut, BatchUserProfilesResponse as v, BoardAnimationSpec as va, BoardChangedEvent as vi, ResourceLabelsResponse as vn, BoardRenderCost as vo, SpaceFsPreparingFile as vr, runtimeEventSchema as vs, CursorPageInfo as vt, BillingCatalogProduct as w, BoardCameraState as wa, RealtimePatchOperation as wi, SessionMessagesResponse as wn, GenerationParameterConstraint as wo, SpaceFsUploadEntry as wr, RUNTIME_ARCHIVE_SEGMENT_BYTES as ws, GlobalSearchType as wt, BillingBalanceActivityList as x, BoardDealParamsSchema as xa, LabelAssignmentsUpdatedEvent as xi, SessionBindingRecord as xn, AppAuthorizationResult as xo, SpaceFsReadFilesResponse as xr, selectRuntimeContextMessages as xs, GenerationUsageSummary as xt, BillingBalanceActivity as y, BoardAnimationSpecSchema as ya, BoardPlaybackChangedEvent as yi, SandboxSpecId as yn, AppAuthorizationGrant as yo, SpaceFsReadFilesError as yr, runtimeReadySchema as ys, GenerationUsageBlock as yt, BillingProductBillingInterval as z, BoardTransactionsReadInput as za, DESKTOP_COMMAND_DEFAULT_TIMEOUT_MS as zi, SpaceActivityResponse as zn, ChannelConfig as zo, SpacePendingDiffSummary as zr, Usage as zs, LabelSource as zt };
8239
+ export { CheckpointDiffDelivery as $, BoardEffect as $a, DesktopCommandStatus as $i, SpaceCommerceProductBenefitBinding as $n, StoredIntermediateMessage as $o, SpaceUsageHourlyStat as $r, isRequestSourceEmpty as $s, PromptTemplateCatalogResponse as $t, BillingCreditExpiryGroup as A, BoardMutationReceipt as Aa, RealtimeServerEvent as Ai, SessionTurnStreamSnapshotResponse as An, encodeGenerationPolicy as Ao, SpaceFsUploadResponse as Ar, RuntimeArchivePage as As, JsonValue as At, BillingProductBillingInterval as B, BoardTransactionsReadInput as Ba, DESKTOP_COMMAND_DEFAULT_TIMEOUT_MS as Bi, SpaceActivityResponse as Bn, ChannelConfig as Bo, SpacePendingDiffSummary as Br, CreateSpaceCompletionInput as Bs, LabelSource as Bt, BillingBalanceActivityStatus as C, BoardCameraFocus as Ca, RealtimeAppRecord as Ci, SessionMessageResponse as Cn, AppAuthorizationTarget as Co, SpaceFsTreeResponse as Cr, runtimeEventSchema as Cs, GlobalSearchResponse as Ct, BillingCheckoutConfirmation as D, BoardCreateInput as Da, RealtimeRoomDescriptor as Di, SessionTurnIndexResponse as Dn, GenerationPolicyError as Do, SpaceFsUploadPlanEntry as Dr, HarnessArchive as Ds, InvitationDetail as Dt, BillingCheckoutActionState as E, BoardCapabilities as Ea, RealtimeRoom as Ei, SessionRecord as En, GenerationPolicy as Eo, SpaceFsUploadError as Er, selectRuntimeContextMessages as Es, GlobalSearchViewerRelation as Et, BillingDiscountOfferRef as F, BoardRecord as Fa, AppArtifactManifestFile as Fi, SkillCatalogSource as Fn, parseGenerationPolicyFromEnv as Fo, SpaceListItem as Fr, CompletionAssistantMessage as Fs, LabelItemsSessionFork as Ft, BillingProductPromotion as G, BoardAuthoringReadInput as Ga, DESKTOP_COMMAND_TERMINAL_TTL_SECONDS as Gi, SpaceChannelBindingInput as Gn, FeishuChannelConfig as Go, SpaceRole as Gr, ContentBlock as Gs, PaletteOverviewSession as Gt, BillingProductDisplay as H, parseBoardPlaybackPolicy as Ha, DESKTOP_COMMAND_PAYLOAD_MAX_BYTES as Hi, SpaceBootstrapSource as Hn, ChannelHealthReasonCode as Ho, SpacePresenceUser as Hr, SpaceCompletionResult as Hs, ModelCatalogEntry as Ht, BillingDiscountPricing as I, BoardSummary as Ia, AppBoardArtifactManifest as Ii, SpaceAccess as In, BillingPayload as Io, SpaceMember as Ir, CompletionMessage as Is, LabelListItem as It, BillingResponsePayload as J, BoardItemPatchSchema as Ja, DesktopCall as Ji, SpaceCommerceBuyerProfile as Jn, SessionTurnSegmentRecord as Jo, SpaceSandboxProvider as Jr, REQUEST_SOURCE_VIA_MAX_LENGTH as Js, PatchResourceLabelsInput as Jt, BillingPromotionCodePreview as K, BoardAuthoringSnapshot as Ka, DESKTOP_COMMAND_VERSION as Ki, SpaceCheckpointDetailResponse as Kn, MessageRecord as Ko, SpaceSandboxAutoDestroyPolicy as Kr, COHUB_SOURCE_HEADER as Ks, PaletteOverviewSpace as Kt, BillingHistoryPagination as L, BoardTransactionOperation as La, AppBoardAsset as Li, SpaceAccessPolicy as Ln, GenerationContentBlock as Lo, SpaceMeta as Lr, CompletionMessageRole as Ls, LabelRecord as Lt, BillingCreditStatus as M, BoardPlaybackPolicy as Ma, AppArtifactDescriptor as Mi, SessionTurnsPaginatedResponse as Mn, findGenerationModelPolicy as Mo, SpaceInvitation as Mr, RuntimeArchiveUpload as Ms, LabelAssignmentPageInfo as Mt, BillingCreditUnit as N, BoardPlaybackPolicySchema as Na, AppArtifactDownloadDescriptor as Ni, SkillCatalogEntry as Nn, getAllowedGenerationModelIds as No, SpaceInvitationListResponse as Nr, harnessArchiveIndexSchema as Ns, LabelAssignmentRecord as Nt, BillingCheckoutResult as O, BoardDiagnostic as Oa, RealtimeRoomEvent as Oi, SessionTurnResponse as On, assertGenerationRequestAllowedByPolicy as Oo, SpaceFsUploadPlanEntryInput as Or, HarnessArchiveIndex as Os, JsonObject as Ot, BillingDiscountOffer as P, BoardPlaybackSnapshot as Pa, AppArtifactManifest as Pi, SkillCatalogResponse as Pn, normalizeGenerationPolicy as Po, SpaceInvitationLocation as Pr, validateArchiveBoundary as Ps, LabelItemsResponse as Pt, Channel as Q, BoardAssetRef as Qa, DesktopCommandRecord as Qi, SpaceCommerceProduct as Qn, SpaceTurnsResponse$1 as Qo, SpaceTurnsResponse as Qr, isRequestSourceClientId as Qs, PromptTemplateCatalogEntry as Qt, BillingPaymentStatus as R, BoardTransactionRecord as Ra, AppContentKind as Ri, SpaceActivityAppRanking as Rn, GenerationModelDeclaration as Ro, SpaceModListItem as Rr, CompletionThinkingLevel as Rs, LabelResourceType as Rt, BillingBalanceActivityList as S, BoardDealParamsSchema as Sa, LabelAssignmentsUpdatedEvent as Si, SessionBindingRecord as Sn, AppAuthorizationResult as So, SpaceFsReadFilesResponse as Sr, runtimeCommandSchema as Ss, GenerationUsageSummary as St, BillingCatalogProduct as T, BoardCameraState as Ta, RealtimePatchOperation as Ti, SessionMessagesResponse as Tn, GenerationParameterConstraint as To, SpaceFsUploadEntry as Tr, contextToPiMessages as Ts, GlobalSearchType as Tt, BillingProductKind as U, BoardAuthoringItem as Ua, DESKTOP_COMMAND_PENDING_TTL_SECONDS as Ui, SpaceBootstrapStage as Un, ChannelRuntimeState as Uo, SpacePublicProfile as Ur, SpaceCompletionStreamEvent as Us, PERMISSIONS as Ut, BillingProductCreditBenefit as V, BoardValidationResult as Va, DESKTOP_COMMAND_MAX_TIMEOUT_MS as Vi, SpaceBootstrapMeta as Vn, ChannelHealth as Vo, SpacePresenceSnapshot as Vr, ModelThinkingLevel as Vs, MeResponse as Vt, BillingProductPricing as W, BoardAuthoringItemSchema as Wa, DESKTOP_COMMAND_SETTLEMENT_GRACE_SECONDS as Wi, SpaceBootstrapStatus as Wn, DiscordChannelConfig as Wo, SpaceRecord as Wr, Usage as Ws, PaletteOverviewResponse as Wt, BillingSubscriptionHistoryStatus as X, BoardSemanticCommandSchema as Xa, DesktopCommandDispatchedPayload as Xi, SpaceCommerceFeatureBenefit as Xn, SessionTurnIndexItem as Xo, SpaceTurnAuthorFilter as Xr, RequestSourceVia as Xs, Permission as Xt, BillingSubscriptionHistoryList as Y, BoardSemanticCommand as Ya, DesktopCommand as Yi, SpaceCommerceCreditsBenefit as Yn, MessageToolCallsFile as Yo, SpaceSessionsResponse as Yr, RequestSource as Ys, PatchResourceLabelsResponse as Yt, BillingSubscriptionSummary as Z, BoardSemanticMutation as Za, DesktopCommandError as Zi, SpaceCommerceOrder as Zn, SessionTurnRecord as Zo, SpaceTurnListItem as Zr, hasRequestSourceIdentity as Zs, PromptAccessMode as Zt, AcceptInvitationResponse as _, BoardColorId as _a, AppVersionPublishedEvent as _i, ReferralReward as _n, BoardCapability as _o, SpaceFsFileResponse as _r, RuntimeTraceContext as _s, CronJobRecord as _t, CohubRuntimeKind as a, isTerminalDesktopCommandStatus as aa, requestSourceToHeaders as ac, UserActivityQuery as ai, PublicUserWorkItem as an, BoardAnimationTarget as ao, SpaceCreateResponse as ar, RUNTIME_PROTOCOL_VERSION as as, CheckpointDiffStatus as at, BillingBalanceActivity as b, BoardAnimationSpecSchema as ba, BoardPlaybackChangedEvent as bi, SandboxSpecId as bn, AppAuthorizationGrant as bo, SpaceFsReadFilesError as br, isLocalHarness as bs, GenerationUsageBlock as bt, normalizeVoiceInputWebsocketUrl as c, NavigationCall as ca, UserActivityResponse as ci, ReferenceAggregateResponse as cn, BoardCompositionPlayback as co, SpaceFsCompleteUploadInput as cr, RuntimeCommand as cs, ClaimReferralResponse as ct, resolveCohubEnvironment as d, BoardAwarenessGesture as da, UserSessionListItem as di, ReferenceQueryResponse as dn, BoardProceduralClip as do, SpaceFsCreateUploadInput as dr, RuntimeExecutionEvent as ds, CreateSpaceInput as dt, DesktopFileTarget as ea, isRequestSourceUuid as ec, SpaceUsageResponse as ei, PublicReferral as en, BoardEffectInput as eo, SpaceCommerceProductCreditBenefit as er, StoredToolCall as es, CheckpointDiffFile as et, resolveExecutionAppId as f, BoardAwarenessNodePreview as fa, UserSessionSourceKey as fi, ReferenceQueryableType as fn, BoardTimeline as fo, SpaceFsCreateUploadResponse as fr, RuntimeMessage as fs, CreateSpaceModInput as ft, resolveWebsocketUrl as g, BOARD_GEO_KINDS as ga, scopeListHasPermission as gi, ReferralListItem as gn, parseBoardCompositionInput as go, SpaceFsFileKind as gr, RuntimeStopConfirmation as gs, CronJobPayload as gt, resolveWebBaseUrl as h, BOARD_COLOR_IDS as ha, isUserLevelPermission as hi, ReferralDashboard as hn, BoardTrackInterpolation as ho, SpaceFsEntry as hr, RuntimeStatus as hs, CreateSpaceSessionInput as ht, CohubExecutionContext as i, isDesktopCallMethod as ia, readRequestSourceFromEnv as ic, USER_LEVEL_PERMISSIONS as ii, PublicUserSpaceItem as in, BOARD_ANIMATION_CHANNEL_CAPABILITIES as io, SpaceConfigUpdateResponse as ir, RUNTIME_MAX_FRAME_BYTES as is, CheckpointDiffStats as it, BillingCreditGrantStatus as j, BoardPlaybackCommand as ja, SessionTurnPatchEvent as ji, SessionTurnWindowResponse as jn, filterGenerationDeclarationsByPolicy as jo, SpaceFsWriteFileInput as jr, RuntimeArchiveSegment as js, LabelAssignmentListItem as jt, BillingConversionIntent as k, BoardManifest as ka, RealtimeRoomMember as ki, SessionTurnSignedUrlsResponse as kn, decodeGenerationPolicy as ko, SpaceFsUploadProgress as kr, RUNTIME_ARCHIVE_SEGMENT_BYTES as ks, JsonPrimitive as kt, normalizeWebsocketUrl as l, NavigationLaunch as la, UserProfile as li, ReferenceDirection as ln, BoardCompositionSchema as lo, SpaceFsCompleteUploadResponse as lr, RuntimeContext as ls, CreateInvitationInput as lt, resolveVoiceInputWebsocketUrl as m, BoardAwarenessUpdate as ma, UserSessionsResponse as mi, ReferenceResourceType as mn, BoardTrack as mo, SpaceFsEncoding as mr, RuntimeSessionRecoveryStatus as ms, CreateSpacePromptResponse as mt, CohubContext as n, DesktopSurface as na, normalizeRequestSource as nc, TaskRunDetailResponse as ni, PublicUserPageResponse as nn, BoardEffectSchema as no, SpaceConfigInput as nr, HarnessKind as ns, CheckpointDiffPatchKind as nt, getCohubContext as o, parseDesktopCommand as oa, resolveRequestSourceChannel as oc, UserActivityRange as oi, ReferenceAggregateGroup as on, BoardComposition as oo, SpaceDefaultResponse as or, RUNTIME_RECOVERY_BATCH_SIZE as os, CheckpointDiffSummary as ot, resolveExecutionToken as p, BoardAwarenessStateUpdate as pa, UserSessionSpaceSummary as pi, ReferenceRecord as pn, BoardTimelineMarker as po, SpaceFsDeleteNodeInput as pr, RuntimePendingExecution as ps, CreateSpacePromptInput as pt, BillingRedemptionResult as q, BoardItemPatch as qa, DesktopAppTarget as qi, SpaceCommerceBenefit as qn, SessionForkRecord as qo, SpaceSandboxConfig as qr, COHUB_SOURCE_HEADER_NAMES as qs, PaletteOverviewSpaceRelation as qt, CohubEnvironment as r, DesktopTarget as ra, parseRequestSourceFromHeaders as rc, TaskRunRecord as ri, PublicUserProfile as rn, parseBoardEffectInput as ro, SpaceConfigResponse as rr, LocalHarness as rs, CheckpointDiffPatchLine as rt, normalizeBaseUrl as s, resolveOpenSurface as sa, UserActivityRankings as si, ReferenceAggregateGroupBy as sn, BoardCompositionInputSchema as so, SpaceEnvInput as sr, RuntimeCapabilities as ss, CheckpointRecord as st, COHUB_ENVIRONMENTS as t, DesktopOpenCommand as ta, mergeRequestSourceIntoMeta as tc, SpaceUsageSummary as ti, PublicUserAppItem as tn, BoardEffectInputSchema as to, SpaceConfig as tr, TurnIntermediateMessagesFile as ts, CheckpointDiffFileResponse as tt, resolveApiBaseUrl as u, SpacePublicEndpoints as ua, UserRulesResponse as ui, ReferenceKind as un, BoardEasing as uo, SpaceFsCreateDirectoryInput as ur, RuntimeContextMessage as us, CreateInvitationResponse as ut, ApiError as v, BoardGeoKind as va, BoardAwarenessUpdatedEvent as vi, ReferralStatus as vn, BoardCoordinateSpace as vo, SpaceFsMoveInput as vr, RuntimeTurnInput as vs, CronJobUpdatePatch as vt, BillingCatalog as w, BoardCameraFocusParams as wa, RealtimeAppVersionRecord as wi, SessionMessagesPaginatedResponse as wn, GenerationModelPolicy as wo, SpaceFsUploadDestination as wr, runtimeReadySchema as ws, GlobalSearchResult as wt, BillingBalanceActivityKind as x, BoardDealParams as xa, ChannelEnvelope as xi, SendMessageCronJobPayload as xn, AppAuthorizationRequest as xo, SpaceFsReadFilesInput as xr, resolveHarness as xs, GenerationUsageHourlyStat as xt, BatchUserProfilesResponse as y, BoardAnimationSpec as ya, BoardChangedEvent as yi, ResourceLabelsResponse as yn, BoardRenderCost as yo, SpaceFsPreparingFile as yr, RuntimeTurnUserMessage as ys, CursorPageInfo as yt, BillingPluginStatus as z, BoardTransactionsPage as za, AppVersionSource as zi, SpaceActivityContributor as zn, GenerationResult as zo, SpacePendingDiffFileResponse as zr, CompletionUsage as zs, LabelScopeType as zt };
@@ -37,6 +37,7 @@ const PERMISSIONS = [
37
37
  "mod.manage",
38
38
  "space.commerce.view",
39
39
  "space.commerce.manage",
40
+ "app.manage",
40
41
  "user.space.list",
41
42
  "user.session.list",
42
43
  "user.taskrun.list",
@@ -70,11 +71,13 @@ function scopeListHasPermission(scopes, permission) {
70
71
  const COHUB_ENVIRONMENTS = {
71
72
  prod: {
72
73
  apiBaseUrl: "https://api.cohub.live",
74
+ webBaseUrl: "https://cohub.live",
73
75
  websocketUrl: "wss://gateway.cohub.live/ws",
74
76
  voiceInputWebsocketUrl: "wss://gateway.cohub.live/asr/ws"
75
77
  },
76
78
  dev: {
77
79
  apiBaseUrl: "https://api-dev.cohub.live",
80
+ webBaseUrl: "https://dev.cohub.live",
78
81
  websocketUrl: "wss://gateway-dev.cohub.live/ws",
79
82
  voiceInputWebsocketUrl: "wss://gateway-dev.cohub.live/asr/ws"
80
83
  }
@@ -152,6 +155,7 @@ const resolveApiBaseUrl = (options = {}) => {
152
155
  if (options.baseUrl) return normalizeBaseUrl(options.baseUrl);
153
156
  return COHUB_ENVIRONMENTS[resolveCohubEnvironment(options.env)].apiBaseUrl;
154
157
  };
158
+ const resolveWebBaseUrl = (options = {}) => COHUB_ENVIRONMENTS[resolveCohubEnvironment(options.env)].webBaseUrl;
155
159
  const resolveWebsocketUrl = (options = {}) => {
156
160
  if (options.url) return normalizeWebsocketUrl(options.url);
157
161
  return COHUB_ENVIRONMENTS[resolveCohubEnvironment(options.env)].websocketUrl;
@@ -161,4 +165,4 @@ const resolveVoiceInputWebsocketUrl = (options = {}) => {
161
165
  return COHUB_ENVIRONMENTS[resolveCohubEnvironment(options.env)].voiceInputWebsocketUrl;
162
166
  };
163
167
  //#endregion
164
- export { normalizeWebsocketUrl as a, resolveExecutionAppId as c, resolveWebsocketUrl as d, PERMISSIONS as f, scopeListHasPermission as h, normalizeVoiceInputWebsocketUrl as i, resolveExecutionToken as l, isUserLevelPermission as m, getCohubContext as n, resolveApiBaseUrl as o, USER_LEVEL_PERMISSIONS as p, normalizeBaseUrl as r, resolveCohubEnvironment as s, COHUB_ENVIRONMENTS as t, resolveVoiceInputWebsocketUrl as u };
168
+ export { normalizeWebsocketUrl as a, resolveExecutionAppId as c, resolveWebBaseUrl as d, resolveWebsocketUrl as f, scopeListHasPermission as g, isUserLevelPermission as h, normalizeVoiceInputWebsocketUrl as i, resolveExecutionToken as l, USER_LEVEL_PERMISSIONS as m, getCohubContext as n, resolveApiBaseUrl as o, PERMISSIONS as p, normalizeBaseUrl as r, resolveCohubEnvironment as s, COHUB_ENVIRONMENTS as t, resolveVoiceInputWebsocketUrl as u };
@@ -1,4 +1,4 @@
1
- import { $r as SpaceUsageResponse, $t as PublicReferral, Aa as BoardPlaybackCommand, Ai as SessionTurnPatchEvent, An as SessionTurnWindowResponse, Ar as SpaceFsWriteFileInput, Bo as ChannelHealth, Br as SpacePresenceSnapshot, Bs as ContentBlock, Bt as MeResponse, Cn as SessionMessagesPaginatedResponse, Cs as HarnessArchiveIndex, Dn as SessionTurnResponse, Ds as RuntimeArchiveUpload, Ea as BoardCreateInput, En as SessionTurnIndexResponse, Et as InvitationDetail, Fa as BoardSummary, Fo as BillingPayload, Fr as SpaceMember, Fs as CreateSpaceCompletionInput, Ft as LabelListItem, Ga as BoardAuthoringSnapshot, Gn as SpaceCheckpointDetailResponse, Go as MessageRecord, Hr as SpacePublicProfile, In as SpaceAccessPolicy, Io as GenerationContentBlock, Ji as DesktopCommand, Jo as MessageToolCallsFile, Jr as SpaceSessionsResponse, Jt as PatchResourceLabelsResponse, Kn as SpaceCommerceBenefit, Ko as SessionForkRecord, Li as AppContentKind, Lo as GenerationModelDeclaration, Lr as SpaceModListItem, Ls as SpaceCompletionResult, Lt as LabelResourceType, Mr as SpaceInvitationListResponse, Mt as LabelAssignmentRecord, Na as BoardPlaybackSnapshot, Nn as SkillCatalogResponse, Nt as LabelItemsResponse, On as SessionTurnSignedUrlsResponse, Qi as DesktopCommandStatus, Qn as SpaceCommerceProductBenefitBinding, Qo as StoredIntermediateMessage, Qt as PromptTemplateCatalogResponse, Ra as BoardTransactionsPage, Ri as AppVersionSource, Rr as SpacePendingDiffFileResponse, Rs as SpaceCompletionStreamEvent, Sn as SessionMessageResponse, Sr as SpaceFsTreeResponse, St as GlobalSearchResponse, Ta as BoardCapabilities, Tn as SessionRecord, Ts as RuntimeArchivePage, Ur as SpaceRecord, Ut as PaletteOverviewResponse, Vt as ModelCatalogEntry, Wa as BoardAuthoringReadInput, Wr as SpaceRole, Ws as RequestSource, Xa as BoardSemanticMutation, Xi as DesktopCommandError, Xn as SpaceCommerceOrder, Xo as SessionTurnRecord, Yr as SpaceTurnAuthorFilter, Yt as Permission, Z as Channel, Zi as DesktopCommandRecord, Zn as SpaceCommerceProduct, Zo as SpaceTurnsResponse, _i as BoardAwarenessUpdatedEvent$1, _r as SpaceFsMoveInput, _t as CronJobUpdatePatch, ar as SpaceDefaultResponse, at as CheckpointDiffSummary, bo as AppAuthorizationRequest$1, ca as NavigationLaunch, ci as UserProfile, cn as ReferenceDirection, cr as SpaceFsCompleteUploadResponse, ct as CreateInvitationInput, di as UserSessionSourceKey, dn as ReferenceQueryableType, dr as SpaceFsCreateUploadResponse, ds as RuntimeStatus, es as TurnIntermediateMessagesFile, et as CheckpointDiffFileResponse, fs as RuntimeStopConfirmation, ft as CreateSpacePromptInput, g as AcceptInvitationResponse, gr as SpaceFsFileResponse, gt as CronJobRecord, ii as UserActivityQuery, ir as SpaceCreateResponse, ji as AppArtifactDescriptor, jn as SessionTurnsPaginatedResponse, ka as BoardMutationReceipt, kn as SessionTurnStreamSnapshotResponse, kr as SpaceFsUploadResponse, la as SpacePublicEndpoints, li as UserRulesResponse, ln as ReferenceKind, lt as CreateInvitationResponse, mn as ReferralDashboard, mt as CreateSpaceSessionInput, ni as TaskRunRecord, nr as SpaceConfigResponse, on as ReferenceAggregateGroupBy, or as SpaceEnvInput, ot as CheckpointRecord, pa as BoardAwarenessUpdate, pi as UserSessionsResponse, pt as CreateSpacePromptResponse, qn as SpaceCommerceBuyerProfile, qt as PatchResourceLabelsInput, r as CohubEnvironment, rr as SpaceConfigUpdateResponse, sa as NavigationCall, si as UserActivityResponse, sn as ReferenceAggregateResponse, sr as SpaceFsCompleteUploadInput, st as ClaimReferralResponse, ti as TaskRunDetailResponse, tn as PublicUserPageResponse, tr as SpaceConfigInput, un as ReferenceQueryResponse, ur as SpaceFsCreateUploadInput, ut as CreateSpaceInput, v as BatchUserProfilesResponse, vi as BoardChangedEvent$1, vr as SpaceFsPreparingFile, vt as CursorPageInfo, wi as RealtimePatchOperation, wn as SessionMessagesResponse, wt as GlobalSearchType, xo as AppAuthorizationResult, xr as SpaceFsReadFilesResponse, yi as BoardPlaybackChangedEvent$1, za as BoardTransactionsReadInput, zn as SpaceActivityResponse, zo as ChannelConfig, zr as SpacePendingDiffSummary, zs as Usage } from "./environment.js";
1
+ import { $i as DesktopCommandStatus, $n as SpaceCommerceProductBenefitBinding, $o as StoredIntermediateMessage, $t as PromptTemplateCatalogResponse, Aa as BoardMutationReceipt, An as SessionTurnStreamSnapshotResponse, Ar as SpaceFsUploadResponse, As as RuntimeArchivePage, Ba as BoardTransactionsReadInput, Bn as SpaceActivityResponse, Bo as ChannelConfig, Br as SpacePendingDiffSummary, Bs as CreateSpaceCompletionInput, Cn as SessionMessageResponse, Cr as SpaceFsTreeResponse, Ct as GlobalSearchResponse, Da as BoardCreateInput, Dn as SessionTurnIndexResponse, Dt as InvitationDetail, Ea as BoardCapabilities, En as SessionRecord, Ga as BoardAuthoringReadInput, Gr as SpaceRole, Gs as ContentBlock, Hs as SpaceCompletionResult, Ht as ModelCatalogEntry, Ia as BoardSummary, Io as BillingPayload, Ir as SpaceMember, It as LabelListItem, Jn as SpaceCommerceBuyerProfile, Jt as PatchResourceLabelsInput, Ka as BoardAuthoringSnapshot, Kn as SpaceCheckpointDetailResponse, Ko as MessageRecord, Ln as SpaceAccessPolicy, Lo as GenerationContentBlock, Mi as AppArtifactDescriptor, Mn as SessionTurnsPaginatedResponse, Ms as RuntimeArchiveUpload, Nr as SpaceInvitationListResponse, Nt as LabelAssignmentRecord, On as SessionTurnResponse, Os as HarnessArchiveIndex, Pa as BoardPlaybackSnapshot, Pn as SkillCatalogResponse, Pt as LabelItemsResponse, Q as Channel, Qi as DesktopCommandRecord, Qn as SpaceCommerceProduct, Qo as SpaceTurnsResponse, Ri as AppContentKind, Ro as GenerationModelDeclaration, Rr as SpaceModListItem, Rt as LabelResourceType, So as AppAuthorizationResult, Sr as SpaceFsReadFilesResponse, Ti as RealtimePatchOperation, Tn as SessionMessagesResponse, Tt as GlobalSearchType, Ur as SpacePublicProfile, Us as SpaceCompletionStreamEvent, Vo as ChannelHealth, Vr as SpacePresenceSnapshot, Vt as MeResponse, Wr as SpaceRecord, Ws as Usage, Wt as PaletteOverviewResponse, Xr as SpaceTurnAuthorFilter, Xt as Permission, Yi as DesktopCommand, Yo as MessageToolCallsFile, Yr as SpaceSessionsResponse, Ys as RequestSource, Yt as PatchResourceLabelsResponse, Za as BoardSemanticMutation, Zi as DesktopCommandError, Zn as SpaceCommerceOrder, Zo as SessionTurnRecord, _ as AcceptInvitationResponse, _r as SpaceFsFileResponse, _t as CronJobRecord, ai as UserActivityQuery, ar as SpaceCreateResponse, bi as BoardPlaybackChangedEvent$1, ca as NavigationCall, ci as UserActivityResponse, cn as ReferenceAggregateResponse, cr as SpaceFsCompleteUploadInput, ct as ClaimReferralResponse, dn as ReferenceQueryResponse, dr as SpaceFsCreateUploadInput, dt as CreateSpaceInput, ei as SpaceUsageResponse, en as PublicReferral, fi as UserSessionSourceKey, fn as ReferenceQueryableType, fr as SpaceFsCreateUploadResponse, gs as RuntimeStopConfirmation, hn as ReferralDashboard, hs as RuntimeStatus, ht as CreateSpaceSessionInput, ir as SpaceConfigUpdateResponse, ja as BoardPlaybackCommand, ji as SessionTurnPatchEvent, jn as SessionTurnWindowResponse, jr as SpaceFsWriteFileInput, kn as SessionTurnSignedUrlsResponse, la as NavigationLaunch, li as UserProfile, ln as ReferenceDirection, lr as SpaceFsCompleteUploadResponse, lt as CreateInvitationInput, ma as BoardAwarenessUpdate, mi as UserSessionsResponse, ms as RuntimeSessionRecoveryStatus, mt as CreateSpacePromptResponse, ni as TaskRunDetailResponse, nn as PublicUserPageResponse, nr as SpaceConfigInput, or as SpaceDefaultResponse, ot as CheckpointDiffSummary, pt as CreateSpacePromptInput, qn as SpaceCommerceBenefit, qo as SessionForkRecord, r as CohubEnvironment, ri as TaskRunRecord, rn as PublicUserProfile, rr as SpaceConfigResponse, sn as ReferenceAggregateGroupBy, sr as SpaceEnvInput, st as CheckpointRecord, ts as TurnIntermediateMessagesFile, tt as CheckpointDiffFileResponse, ua as SpacePublicEndpoints, ui as UserRulesResponse, un as ReferenceKind, ut as CreateInvitationResponse, vi as BoardAwarenessUpdatedEvent$1, vr as SpaceFsMoveInput, vt as CronJobUpdatePatch, wn as SessionMessagesPaginatedResponse, xo as AppAuthorizationRequest$1, y as BatchUserProfilesResponse, yi as BoardChangedEvent$1, yr as SpaceFsPreparingFile, yt as CursorPageInfo, za as BoardTransactionsPage, zi as AppVersionSource, zr as SpacePendingDiffFileResponse } from "./environment.js";
2
2
  import { a as WebsocketClientOptions, r as WebsocketClient, s as WebsocketEventPayload } from "./websocket.js";
3
3
  import { a as VoiceInputCreateOptions } from "./voice-input.js";
4
4
  //#region ../protocol/dist/model/status.d.ts
@@ -429,6 +429,10 @@ type AppDiagnostic = {
429
429
  };
430
430
  type AppDiagnosticListener = (diagnostic: AppDiagnostic) => void;
431
431
  interface AppRuntimeTransport {
432
+ /** Broker transports never persist bearer tokens or consent caches. */
433
+ readonly memoryOnly?: boolean;
434
+ /** Current broker viewer, when the broker has completed a session exchange. */
435
+ readonly getViewerIdentity?: () => string | null | undefined;
432
436
  request<T>(message: Record<string, unknown>, options?: AppRuntimeRequestOptions): Promise<T | null>;
433
437
  subscribeContextChanged?: (listener: AppContextChangedListener) => () => void;
434
438
  /** Subscribes to host diagnostics (developer-facing, non-blocking). */
@@ -473,23 +477,39 @@ declare class ParentBridgeTransport implements AppRuntimeTransport {
473
477
  * without opening a popup — the app already knows its own appId, and
474
478
  * checkout state is not available on the app's own origin in broker mode.
475
479
  */
480
+ type AppRuntimeResolvedApp = {
481
+ id: string;
482
+ slug: string;
483
+ url: string | null;
484
+ homeSpace: {
485
+ id: string;
486
+ name: string | null;
487
+ };
488
+ appScopes: Permission[];
489
+ };
490
+ type AppRuntimeAppResolver = () => Promise<AppRuntimeResolvedApp | null>;
476
491
  declare class PopupBrokerTransport implements AppRuntimeTransport {
477
492
  readonly supportsNavigation = false;
493
+ readonly memoryOnly = true;
478
494
  private readonly brokerOrigin;
479
495
  private readonly appId?;
480
496
  private readonly getAppId?;
497
+ private readonly app?;
498
+ private readonly getApp?;
499
+ private viewerGrants;
500
+ private viewerIdentity;
501
+ getViewerIdentity(): string | null | undefined;
502
+ private observeViewerIdentity;
481
503
  constructor(config: {
482
504
  brokerOrigin: string;
483
505
  /** Explicit app id. When absent, {@link getAppId} is used to resolve it. */
484
506
  appId?: string;
485
- /**
486
- * Lazily resolves the app id at runtime (e.g. via the public
487
- * `apps.getBySlug` reverse lookup). Used in standalone deployments where
488
- * the appId is not known at code-authoring time. The resolver is expected
489
- * to cache its own result.
490
- */
491
507
  getAppId?: () => Promise<string | null>;
508
+ /** Complete identity discovered from the standalone page origin. */
509
+ app?: AppRuntimeResolvedApp;
510
+ getApp?: AppRuntimeAppResolver;
492
511
  });
512
+ private resolveApp;
493
513
  private resolveAppId;
494
514
  request<T>(message: Record<string, unknown>, options?: AppRuntimeRequestOptions): Promise<T | null>;
495
515
  }
@@ -550,6 +570,8 @@ declare class AppRuntimeApi {
550
570
  private writeStoredGrants;
551
571
  private serverGrants;
552
572
  private viewerIdentity;
573
+ private observeTransportIdentity;
574
+ private observeViewer;
553
575
  private identityVersion;
554
576
  private contextUnsubscribe;
555
577
  private observeContext;
@@ -662,6 +684,29 @@ type AppRuntimeModeConfig = {
662
684
  };
663
685
  /** Lazily resolves an app's public id, e.g. via slug reverse lookup. */
664
686
  type AppIdResolver = () => Promise<string | null>;
687
+ /** Resolves complete App identity from the browser's current standalone origin. */
688
+ declare function createOriginAppResolver(deps: {
689
+ apiBaseUrl: string;
690
+ fetch?: typeof globalThis.fetch;
691
+ origin?: () => string | null;
692
+ }): AppRuntimeAppResolver;
693
+ /**
694
+ * Defers standalone origin discovery until the runtime is first used.
695
+ * Apps should initialize `context()` before click-triggered authorization so
696
+ * discovery does not consume the browser's transient user activation.
697
+ */
698
+ declare class OriginBrokerTransport implements AppRuntimeTransport {
699
+ private readonly brokerOrigin;
700
+ private readonly resolveApp;
701
+ readonly supportsNavigation = false;
702
+ readonly memoryOnly = true;
703
+ private transport;
704
+ private resolvedTransport;
705
+ getViewerIdentity(): string | null | undefined;
706
+ constructor(brokerOrigin: string, resolveApp: AppRuntimeAppResolver);
707
+ private resolveTransport;
708
+ request<T>(message: Record<string, unknown>, options?: AppRuntimeRequestOptions): Promise<T | null>;
709
+ }
665
710
  /**
666
711
  * Builds a memoized appId resolver that reverse-looks-up the appId from the
667
712
  * public slug triple via `GET /api/apps/by-slug/:username/:spaceSlug/:appSlug`
@@ -678,11 +723,10 @@ declare function createSlugAppIdResolver(deps: {
678
723
  appSlug: string;
679
724
  }): AppIdResolver;
680
725
  /**
681
- * Resolves the appropriate transport based on the app mode configuration.
682
- * Auto-detection: inside an iframe → bridge; standalone with broker config →
683
- * broker; otherwise → bridge (returns null for non-app contexts).
726
+ * Resolves the appropriate transport. Iframes use the parent bridge;
727
+ * standalone pages use explicit legacy configuration or Origin discovery.
684
728
  */
685
- declare function resolveAppTransport(config?: AppRuntimeModeConfig, appIdResolver?: AppIdResolver): AppRuntimeTransport;
729
+ declare function resolveAppTransport(config?: AppRuntimeModeConfig, appIdResolver?: AppIdResolver, originAppResolver?: AppRuntimeAppResolver, defaultBrokerOrigin?: string): AppRuntimeTransport;
686
730
  declare const createAppRuntime: (transport?: AppRuntimeTransport, appId?: string, appIdResolver?: AppIdResolver) => AppRuntimeApi;
687
731
  //#endregion
688
732
  //#region src/transport.d.ts
@@ -1407,7 +1451,10 @@ declare class SessionTurnsClient {
1407
1451
  cursor?: number;
1408
1452
  limit?: number;
1409
1453
  direction?: "older" | "newer";
1410
- }, customFetch?: Fetch): Promise<SessionTurnsPaginatedResponse>;
1454
+ }, request?: Fetch | {
1455
+ fetch?: Fetch;
1456
+ signal?: AbortSignal;
1457
+ }): Promise<SessionTurnsPaginatedResponse>;
1411
1458
  index(options?: {
1412
1459
  cursor?: number;
1413
1460
  limit?: number;
@@ -1419,8 +1466,14 @@ declare class SessionTurnsClient {
1419
1466
  after?: number;
1420
1467
  }, customFetch?: Fetch): Promise<SessionTurnWindowResponse>;
1421
1468
  streamSnapshot(customFetch?: Fetch): Promise<SessionTurnStreamSnapshotResponse>;
1422
- get(turnId: string, customFetch?: Fetch): Promise<SessionTurnResponse>;
1423
- signedUrls(turnId: string, objectKeys: string[], customFetch?: Fetch): Promise<SessionTurnSignedUrlsResponse>;
1469
+ get(turnId: string, request?: Fetch | {
1470
+ fetch?: Fetch;
1471
+ signal?: AbortSignal;
1472
+ }): Promise<SessionTurnResponse>;
1473
+ signedUrls(turnId: string, objectKeys: string[], request?: Fetch | {
1474
+ fetch?: Fetch;
1475
+ signal?: AbortSignal;
1476
+ }): Promise<SessionTurnSignedUrlsResponse>;
1424
1477
  }
1425
1478
  declare class SessionRealtimeClient {
1426
1479
  private readonly websocketClient;
@@ -1982,7 +2035,8 @@ declare class SpaceClient {
1982
2035
  signal?: AbortSignal;
1983
2036
  }): Promise<RuntimeArchivePage>;
1984
2037
  getRuntime(customFetch?: Fetch): Promise<RuntimeStatus>;
1985
- confirmRuntimeStopped(confirmation: RuntimeStopConfirmation): Promise<{
2038
+ getSessionRuntime(sessionId: string, customFetch?: Fetch): Promise<RuntimeSessionRecoveryStatus>;
2039
+ confirmRuntimeStopped(sessionId: string, confirmation: RuntimeStopConfirmation): Promise<{
1986
2040
  accepted: true;
1987
2041
  }>;
1988
2042
  getStartup(customFetch?: Fetch): Promise<SpaceStartupResponse>;
@@ -2288,8 +2342,13 @@ type AppPublicOwnerRecord = {
2288
2342
  type AppDetailResponse = {
2289
2343
  app: AppRecord;
2290
2344
  space: AppPublicSpaceRecord;
2345
+ /** Space owner: the public URL and share metadata use this identity. */
2291
2346
  owner: AppPublicOwnerRecord;
2347
+ /** Member who published this App, which may differ from the Space owner. */
2348
+ publisher: PublicUserProfile;
2292
2349
  publicUrl: string | null;
2350
+ /** Direct standalone URL. Unlike publicUrl, this page has no Cohub shell. */
2351
+ standaloneUrl?: string | null;
2293
2352
  content: AppContent | null;
2294
2353
  /** Version whose content is served; the current version when omitted. */
2295
2354
  version?: PublicAppVersionSummary | null;
@@ -2419,9 +2478,11 @@ declare class AppsApi {
2419
2478
  }>;
2420
2479
  create(input: AppCreateInput): Promise<{
2421
2480
  app: AppRecord;
2481
+ standaloneUrl?: string | null;
2422
2482
  }>;
2423
2483
  update(id: string, input: AppUpdateInput): Promise<{
2424
2484
  app: AppRecord;
2485
+ standaloneUrl?: string | null;
2425
2486
  }>;
2426
2487
  delete(id: string): Promise<{
2427
2488
  ok: true;
@@ -2459,6 +2520,7 @@ declare class AppsApi {
2459
2520
  meta?: AppMeta | null;
2460
2521
  }): Promise<{
2461
2522
  app: AppRecord;
2523
+ standaloneUrl?: string | null;
2462
2524
  version: AppVersionRecord;
2463
2525
  }>;
2464
2526
  createSession(appId: string): Promise<AppSessionResponse>;
@@ -2704,4 +2766,4 @@ declare class CohubHttpClient {
2704
2766
  }
2705
2767
  declare const createHttpClient: (options?: CohubClientOptions) => CohubHttpClient;
2706
2768
  //#endregion
2707
- export { AppTargetType as $, HttpTransport as $n, SpaceWebhooksApi as $t, WaitForUiCommandOptions as A, ReferencesApi as An, AppNavigationTarget as Ar, WorkUpdateInput as At, AppPresentationMeta as B, UploadChatAttachmentInput as Bn, PublicFileUrlResponse as Br, BoardAwarenessUpdatedEvent as Bt, DesktopCommandsApi as C, SessionPatchApplyResult as Cn, createAppRuntime as Cr, WorkPublicOwnerRecord as Ct, UiCommandStatus as D, createSessionPatchReducer as Dn, AppNavigationLaunch as Dr, WorkSessionResponse as Dt, UiCommandRecord as E, SessionPatchStatus as En, AppNavigationCall as Er, WorkResolveResponse as Et, AppCreateInput as F, PublicAssetPurpose as Fn, PublicFileCreateUploadResponse as Fr, ReferralsApi as Ft, AppPromotionRecord as G, ModelsApi as Gn, CreateGenerationTaskResponse as Gr, BoardSubscriptionHandlers as Gt, AppPromotionEventResponse as H, UploadPublicAssetInput as Hn, SpaceWebhookTriggerResponse as Hr, BoardClient as Ht, AppDetailResponse as I, PublicAssetUploadProgress as In, PublicFileListEntry as Ir, UsersApi as It, AppPublicSpaceRecord as J, ChannelsApi as Jn, ListGenerationModelsResponse as Jr, SpaceChannelBindingRecord as Jt, AppPromotionStatsResponse as K, GenerationsApi as Kn, GenerationTaskResult as Kr, SessionEventName as Kt, AppExtractedPageMeta as L, PublicAssetUploadProtocol as Ln, PublicFileListResponse as Lr, UserApi as Lt, AppAuthorizeResponse as M, CreatePublicAssetUploadInput as Mn, AppRuntimeConfigureRequest as Mr, WorkViewSource as Mt, AppContent as N, CreatePublicAssetUploadResponse as Nn, AppRuntimeRect as Nr, WorkViewStatsResponse as Nt, UiCommandsApi as O, SessionAccessApi as On, AppNavigationOpenMessage as Or, WorkStatus as Ot, AppContentDownload as P, PublicAssetMimeType as Pn, PublicFileCreateUploadInput as Pr, WorkVisibility as Pt, AppStatus as Q, HttpTraceContext as Qn, SpaceTurnListOptions as Qt, AppGetResponse as R, PublicAssetsApi as Rn, PublicFileUploadEntryInput as Rr, TaskWaitOptions as Rt, CreateUiCommandInput as S, SessionPatchApplyInput as Sn, PopupBrokerTransport as Sr, WorkPromotionStatsResponse as St, UiCommandError as T, SessionPatchState as Tn, resolveAppTransport as Tr, WorkRecord as Tt, AppPromotionProvider as U, SkillsApi as Un, SpaceStartupResponse as Ur, BoardEventName as Ut, AppPromotionCreateInput as V, UploadChatImageAttachmentInput as Vn, SpaceWebhookListItem as Vr, BoardChangedEvent as Vt, AppPromotionProviderStatus as W, PromptsApi as Wn, CreateGenerationTaskRequest as Wr, BoardPlaybackChangedEvent as Wt, AppResolveResponse as X, Fetch as Xn, ModelStatusEntry as Xr, SpaceEventName as Xt, AppRecord as Y, CohubClientOptions as Yn, PublicGenerationDeclaration as Yr, SpaceClient as Yt, AppSessionResponse as Z, HttpError as Zn, ModelStatusResponse as Zr, SpacePublicFilesApi as Zt, WorkCommerceEntitlementsResponse as _, GenerationStreamSubscriptionHandlers as _n, AppRuntimeModeConfig as _r, WorkPromotionCreateInput as _t, AppCommerceCreditConsumeResponse as a, buildSpaceInvitePath as an, AppAuthorizationRequest as ar, AppVisibility as at, WorkCommercePurchaseResponse as b, createSessionGenerationStreamClient as bn, AppRuntimeTransport as br, WorkPromotionProviderStatus as bt, AppCommerceEntitlementsResponse as c, GenerationStreamCommitEvent as cn, AppDiagnosticListener as cr, WorkAuthorizeResponse as ct, AppCommercePurchaseResponse as d, GenerationStreamFinalizedEvent as dn, AppRuntimeAuthorizationResult as dr, WorkCreateInput as dt, SpacesApi as en, RawHttpResponse as er, AppUpdateInput as et, WorkCommerceApi as f, GenerationStreamIntermediateMessage as fn, AppRuntimeCheckoutState as fr, WorkDetailResponse as ft, WorkCommerceEntitlement as g, GenerationStreamSubscribeOptions as gn, AppRuntimeInvocationContext as gr, WorkPresentationMeta as gt, WorkCommerceCreditConsumeStatus as h, GenerationStreamStateEvent as hn, AppRuntimeError as hr, WorkMeta as ht, AppCommerceCheckoutStatus as i, PublicInviteApi as in, sanitizeAccessToken as ir, AppViewerGrantRecord as it, AppActionRunResponse as j, SearchApi as jn, AppRuntimeAnchor as jr, WorkVersionRecord as jt, WaitForDesktopCommandOptions as k, ReferenceResourceSelector as kn, AppNavigationOpenResponse as kr, WorkTargetType as kt, AppCommerceOrder as l, GenerationStreamErrorEvent as ln, AppIdResolver as lr, WorkContent as lt, WorkCommerceCreditConsumeResponse as m, GenerationStreamOutOfSyncEvent as mn, AppRuntimeContext as mr, WorkGetResponse as mt, createHttpClient as n, BuildSpaceInvitePathInput as nn, joinApiUrl as nr, AppViewSource as nt, AppCommerceCreditConsumeStatus as o, buildSpacePath as on, AppContextChangedListener as or, AppsApi as ot, WorkCommerceCheckoutStatus as p, GenerationStreamLifecycleEvent as pn, AppRuntimeCheckoutStatus as pr, WorkExtractedPageMeta as pt, AppPublicOwnerRecord as q, CronJobsApi as qn, GenerationUsageBilling as qr, SessionSubscriptionHandlers as qt, AppCommerceApi as r, BuildSpacePathInput as rn, matchesUnauthorizedErrorToken as rr, AppViewStatsResponse as rt, AppCommerceEntitlement as s, AssistantMessageCommit as sn, AppDiagnostic as sr, PublicAppVersionSummary as st, CohubHttpClient as t, WebSocketConnectionState as tn, UnauthorizedContext as tr, AppVersionRecord as tt, AppCommerceProductResolveResponse as u, GenerationStreamEvent as un, AppRuntimeApi as ur, WorkContentDownload as ut, WorkCommerceOrder as v, GenerationStreamTurnUpdatedEvent as vn, AppRuntimeRequestOptions as vr, WorkPromotionEventResponse as vt, UiCommand as w, SessionPatchReducer as wn, createSlugAppIdResolver as wr, WorkPublicSpaceRecord as wt, CreateDesktopCommandInput as x, parseAssistantMessageCommit as xn, ParentBridgeTransport as xr, WorkPromotionRecord as xt, WorkCommerceProductResolveResponse as y, SessionGenerationStreamClient as yn, AppRuntimeShellContext as yr, WorkPromotionProvider as yt, AppMeta as z, UploadAppSourceInput as zn, PublicFileUploadPlanEntry as zr, TasksApi as zt };
2769
+ export { AppTargetType as $, HttpTransport as $n, PublicGenerationDeclaration as $r, SpaceWebhooksApi as $t, WaitForUiCommandOptions as A, ReferencesApi as An, AppNavigationCall as Ar, WorkUpdateInput as At, AppPresentationMeta as B, UploadChatAttachmentInput as Bn, PublicFileListEntry as Br, BoardAwarenessUpdatedEvent as Bt, DesktopCommandsApi as C, SessionPatchApplyResult as Cn, OriginBrokerTransport as Cr, WorkPublicOwnerRecord as Ct, UiCommandStatus as D, createSessionPatchReducer as Dn, createOriginAppResolver as Dr, WorkSessionResponse as Dt, UiCommandRecord as E, SessionPatchStatus as En, createAppRuntime as Er, WorkResolveResponse as Et, AppCreateInput as F, PublicAssetPurpose as Fn, AppRuntimeAnchor as Fr, ReferralsApi as Ft, AppPromotionRecord as G, ModelsApi as Gn, SpaceWebhookListItem as Gr, BoardSubscriptionHandlers as Gt, AppPromotionEventResponse as H, UploadPublicAssetInput as Hn, PublicFileUploadEntryInput as Hr, BoardClient as Ht, AppDetailResponse as I, PublicAssetUploadProgress as In, AppRuntimeConfigureRequest as Ir, UsersApi as It, AppPublicSpaceRecord as J, ChannelsApi as Jn, CreateGenerationTaskRequest as Jr, SpaceChannelBindingRecord as Jt, AppPromotionStatsResponse as K, GenerationsApi as Kn, SpaceWebhookTriggerResponse as Kr, SessionEventName as Kt, AppExtractedPageMeta as L, PublicAssetUploadProtocol as Ln, AppRuntimeRect as Lr, UserApi as Lt, AppAuthorizeResponse as M, CreatePublicAssetUploadInput as Mn, AppNavigationOpenMessage as Mr, WorkViewSource as Mt, AppContent as N, CreatePublicAssetUploadResponse as Nn, AppNavigationOpenResponse as Nr, WorkViewStatsResponse as Nt, UiCommandsApi as O, SessionAccessApi as On, createSlugAppIdResolver as Or, WorkStatus as Ot, AppContentDownload as P, PublicAssetMimeType as Pn, AppNavigationTarget as Pr, WorkVisibility as Pt, AppStatus as Q, HttpTraceContext as Qn, ListGenerationModelsResponse as Qr, SpaceTurnListOptions as Qt, AppGetResponse as R, PublicAssetsApi as Rn, PublicFileCreateUploadInput as Rr, TaskWaitOptions as Rt, CreateUiCommandInput as S, SessionPatchApplyInput as Sn, AppRuntimeTransport as Sr, WorkPromotionStatsResponse as St, UiCommandError as T, SessionPatchState as Tn, PopupBrokerTransport as Tr, WorkRecord as Tt, AppPromotionProvider as U, SkillsApi as Un, PublicFileUploadPlanEntry as Ur, BoardEventName as Ut, AppPromotionCreateInput as V, UploadChatImageAttachmentInput as Vn, PublicFileListResponse as Vr, BoardChangedEvent as Vt, AppPromotionProviderStatus as W, PromptsApi as Wn, PublicFileUrlResponse as Wr, BoardPlaybackChangedEvent as Wt, AppResolveResponse as X, Fetch as Xn, GenerationTaskResult as Xr, SpaceEventName as Xt, AppRecord as Y, CohubClientOptions as Yn, CreateGenerationTaskResponse as Yr, SpaceClient as Yt, AppSessionResponse as Z, HttpError as Zn, GenerationUsageBilling as Zr, SpacePublicFilesApi as Zt, WorkCommerceEntitlementsResponse as _, GenerationStreamSubscriptionHandlers as _n, AppRuntimeInvocationContext as _r, WorkPromotionCreateInput as _t, AppCommerceCreditConsumeResponse as a, buildSpaceInvitePath as an, AppAuthorizationRequest as ar, AppVisibility as at, WorkCommercePurchaseResponse as b, createSessionGenerationStreamClient as bn, AppRuntimeResolvedApp as br, WorkPromotionProviderStatus as bt, AppCommerceEntitlementsResponse as c, GenerationStreamCommitEvent as cn, AppDiagnosticListener as cr, WorkAuthorizeResponse as ct, AppCommercePurchaseResponse as d, GenerationStreamFinalizedEvent as dn, AppRuntimeAppResolver as dr, WorkCreateInput as dt, ModelStatusEntry as ei, SpacesApi as en, RawHttpResponse as er, AppUpdateInput as et, WorkCommerceApi as f, GenerationStreamIntermediateMessage as fn, AppRuntimeAuthorizationResult as fr, WorkDetailResponse as ft, WorkCommerceEntitlement as g, GenerationStreamSubscribeOptions as gn, AppRuntimeError as gr, WorkPresentationMeta as gt, WorkCommerceCreditConsumeStatus as h, GenerationStreamStateEvent as hn, AppRuntimeContext as hr, WorkMeta as ht, AppCommerceCheckoutStatus as i, PublicInviteApi as in, sanitizeAccessToken as ir, AppViewerGrantRecord as it, AppActionRunResponse as j, SearchApi as jn, AppNavigationLaunch as jr, WorkVersionRecord as jt, WaitForDesktopCommandOptions as k, ReferenceResourceSelector as kn, resolveAppTransport as kr, WorkTargetType as kt, AppCommerceOrder as l, GenerationStreamErrorEvent as ln, AppIdResolver as lr, WorkContent as lt, WorkCommerceCreditConsumeResponse as m, GenerationStreamOutOfSyncEvent as mn, AppRuntimeCheckoutStatus as mr, WorkGetResponse as mt, createHttpClient as n, BuildSpaceInvitePathInput as nn, joinApiUrl as nr, AppViewSource as nt, AppCommerceCreditConsumeStatus as o, buildSpacePath as on, AppContextChangedListener as or, AppsApi as ot, WorkCommerceCheckoutStatus as p, GenerationStreamLifecycleEvent as pn, AppRuntimeCheckoutState as pr, WorkExtractedPageMeta as pt, AppPublicOwnerRecord as q, CronJobsApi as qn, SpaceStartupResponse as qr, SessionSubscriptionHandlers as qt, AppCommerceApi as r, BuildSpacePathInput as rn, matchesUnauthorizedErrorToken as rr, AppViewStatsResponse as rt, AppCommerceEntitlement as s, AssistantMessageCommit as sn, AppDiagnostic as sr, PublicAppVersionSummary as st, CohubHttpClient as t, ModelStatusResponse as ti, WebSocketConnectionState as tn, UnauthorizedContext as tr, AppVersionRecord as tt, AppCommerceProductResolveResponse as u, GenerationStreamEvent as un, AppRuntimeApi as ur, WorkContentDownload as ut, WorkCommerceOrder as v, GenerationStreamTurnUpdatedEvent as vn, AppRuntimeModeConfig as vr, WorkPromotionEventResponse as vt, UiCommand as w, SessionPatchReducer as wn, ParentBridgeTransport as wr, WorkPublicSpaceRecord as wt, CreateDesktopCommandInput as x, parseAssistantMessageCommit as xn, AppRuntimeShellContext as xr, WorkPromotionRecord as xt, WorkCommerceProductResolveResponse as y, SessionGenerationStreamClient as yn, AppRuntimeRequestOptions as yr, WorkPromotionProvider as yt, AppMeta as z, UploadAppSourceInput as zn, PublicFileCreateUploadResponse as zr, TasksApi as zt };