@opengeni/sdk 0.48.0 → 0.57.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 +147 -1
- package/dist/artifact-client.d.ts +20 -2
- package/dist/artifacts.d.ts +4 -0
- package/dist/artifacts.js +11 -0
- package/dist/artifacts.js.map +1 -0
- package/dist/{chunk-V5F253OG.js → chunk-GU6JF75T.js} +6 -3
- package/dist/chunk-GU6JF75T.js.map +1 -0
- package/dist/chunk-HJ3HHUT5.js +222 -0
- package/dist/chunk-HJ3HHUT5.js.map +1 -0
- package/dist/{chunk-KIHGPM7H.js → chunk-JDLDDRNE.js} +20 -14
- package/dist/chunk-JDLDDRNE.js.map +1 -0
- package/dist/chunk-JRPFWI6T.js +128 -0
- package/dist/chunk-JRPFWI6T.js.map +1 -0
- package/dist/{chunk-MBGBLVUV.js → chunk-PKQ377ED.js} +1725 -555
- package/dist/chunk-PKQ377ED.js.map +1 -0
- package/dist/chunk-ST5DDKJP.js +987 -0
- package/dist/chunk-ST5DDKJP.js.map +1 -0
- package/dist/chunk-VWE2QIVO.js +1162 -0
- package/dist/chunk-VWE2QIVO.js.map +1 -0
- package/dist/chunk-VYCTL62C.js +230 -0
- package/dist/chunk-VYCTL62C.js.map +1 -0
- package/dist/{chunk-DXDL7EEW.js → chunk-YKZME56C.js} +197 -113
- package/dist/chunk-YKZME56C.js.map +1 -0
- package/dist/client.d.ts +240 -16
- package/dist/codex-realtime-controller.d.ts +9 -6
- package/dist/codex-realtime-controller.js +2 -2
- package/dist/codex-realtime-lifecycle.d.ts +1 -1
- package/dist/codex-realtime-v3.d.ts +3 -3
- package/dist/codex-realtime.d.ts +1 -1
- package/dist/company-profile.d.ts +100 -0
- package/dist/core.d.ts +5 -5
- package/dist/core.js +10 -5
- package/dist/desktop.d.ts +9 -1
- package/dist/editable-artifact-resources.d.ts +96 -0
- package/dist/editable-artifacts/browser-session.d.ts +35 -0
- package/dist/editable-artifacts/controller.d.ts +60 -0
- package/dist/editable-artifacts/errors.d.ts +23 -0
- package/dist/editable-artifacts/http-live-transport.d.ts +46 -0
- package/dist/editable-artifacts/index.d.ts +19 -0
- package/dist/editable-artifacts/pool.d.ts +15 -0
- package/dist/editable-artifacts/session.d.ts +96 -0
- package/dist/editable-artifacts/storage.d.ts +72 -0
- package/dist/editable-artifacts/types.d.ts +416 -0
- package/dist/editable-artifacts/worker/browser-client.d.ts +80 -0
- package/dist/editable-artifacts/worker/browser-entry.d.ts +6 -0
- package/dist/editable-artifacts/worker/kernel-adapter.d.ts +45 -0
- package/dist/editable-artifacts/worker/rpc-protocol.d.ts +92 -0
- package/dist/editable-artifacts/worker/runtime.d.ts +66 -0
- package/dist/editable-artifacts/worker/wire-codec.d.ts +52 -0
- package/dist/editable-artifacts-worker.d.ts +8 -0
- package/dist/editable-artifacts-worker.js +1708 -0
- package/dist/editable-artifacts-worker.js.map +1 -0
- package/dist/editable-artifacts.d.ts +6 -0
- package/dist/editable-artifacts.js +5954 -0
- package/dist/editable-artifacts.js.map +1 -0
- package/dist/gateway-realtime-transport.d.ts +2 -1
- package/dist/gateway-realtime-transport.js +5 -3
- package/dist/index.d.ts +45 -35
- package/dist/index.js +134 -64
- package/dist/index.js.map +1 -1
- package/dist/interaction-revision-stream.d.ts +11 -0
- package/dist/interaction.d.ts +1484 -0
- package/dist/interaction.js +81 -0
- package/dist/interaction.js.map +1 -0
- package/dist/memory-slack-client.d.ts +13 -0
- package/dist/memory-slack-delivery.d.ts +99 -0
- package/dist/memory-slack.d.ts +4 -0
- package/dist/memory-slack.js +44 -0
- package/dist/memory-slack.js.map +1 -0
- package/dist/proxy.d.ts +3 -3
- package/dist/realtime.d.ts +14 -14
- package/dist/realtime.js +11 -7
- package/dist/realtime.js.map +1 -1
- package/dist/retained-artifacts.d.ts +12 -0
- package/dist/stream.d.ts +1 -1
- package/dist/terminal.d.ts +1 -1
- package/dist/types.d.ts +1347 -34
- package/dist/workspace-control-stream.d.ts +2 -2
- package/dist/workspace-live-stream.d.ts +14 -0
- package/dist/workspace-state.d.ts +1 -1
- package/package.json +29 -3
- package/src/artifact-client.ts +129 -0
- package/src/artifacts.ts +17 -0
- package/src/client.ts +3022 -910
- package/src/codex-realtime-controller.ts +25 -7
- package/src/codex-realtime-lifecycle.ts +1 -0
- package/src/company-profile.ts +92 -0
- package/src/desktop.ts +11 -1
- package/src/editable-artifact-resources.ts +119 -0
- package/src/editable-artifacts/browser-session.ts +176 -0
- package/src/editable-artifacts/controller.ts +2632 -0
- package/src/editable-artifacts/errors.ts +52 -0
- package/src/editable-artifacts/http-live-transport.ts +1449 -0
- package/src/editable-artifacts/index.ts +175 -0
- package/src/editable-artifacts/pool.ts +81 -0
- package/src/editable-artifacts/session.ts +778 -0
- package/src/editable-artifacts/storage.ts +1718 -0
- package/src/editable-artifacts/types.ts +499 -0
- package/src/editable-artifacts/worker/browser-client.ts +1167 -0
- package/src/editable-artifacts/worker/browser-entry.ts +57 -0
- package/src/editable-artifacts/worker/kernel-adapter.ts +1039 -0
- package/src/editable-artifacts/worker/rpc-protocol.ts +622 -0
- package/src/editable-artifacts/worker/runtime.ts +1204 -0
- package/src/editable-artifacts/worker/wire-codec.ts +852 -0
- package/src/editable-artifacts-worker.ts +8 -0
- package/src/editable-artifacts.ts +6 -0
- package/src/errors.ts +16 -2
- package/src/gateway-realtime-transport.ts +252 -109
- package/src/index.ts +215 -1
- package/src/interaction-revision-stream.ts +117 -0
- package/src/interaction.ts +2874 -0
- package/src/memory-slack-client.ts +71 -0
- package/src/memory-slack-delivery.ts +128 -0
- package/src/memory-slack.ts +19 -0
- package/src/realtime.ts +14 -4
- package/src/retained-artifacts.ts +326 -0
- package/src/types.ts +1636 -52
- package/src/workspace-live-stream.ts +137 -0
- package/dist/chunk-DXDL7EEW.js.map +0 -1
- package/dist/chunk-KIHGPM7H.js.map +0 -1
- package/dist/chunk-MBGBLVUV.js.map +0 -1
- package/dist/chunk-V5F253OG.js.map +0 -1
package/src/types.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { WorkspaceTranscriptionPolicy } from "./transcription";
|
|
2
2
|
|
|
3
3
|
// Hand-written mirrors of the public wire shapes in `@opengeni/contracts`.
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
4
|
+
// Ordinary SDK entries stay framework-agnostic and do not import the contracts
|
|
5
|
+
// runtime; `test/contract-parity.test.ts` pins these types to the contracts
|
|
6
|
+
// package so drift fails the gate instead of shipping.
|
|
7
7
|
|
|
8
8
|
export type CodexRealtimeWebrtcVersion = "v3";
|
|
9
9
|
export type CodexRealtimeVoice =
|
|
@@ -148,6 +148,7 @@ export type SyncSessionRealtimeLedgerResponse = {
|
|
|
148
148
|
|
|
149
149
|
export type SessionRealtimeModel =
|
|
150
150
|
| "gpt-live-1-boulder-alpha"
|
|
151
|
+
| "supergrok/grok-voice-think-fast-2.0"
|
|
151
152
|
| "opengeni-gateway/openai/gpt-realtime-2.1"
|
|
152
153
|
| "opengeni-gateway/openai/gpt-realtime-mini"
|
|
153
154
|
| "opengeni-gateway/xai/grok-voice-think-fast-2.0"
|
|
@@ -158,7 +159,7 @@ export type SessionRealtimeModel =
|
|
|
158
159
|
export type WorkspaceRealtimeModelCatalogItem = {
|
|
159
160
|
id: SessionRealtimeModel;
|
|
160
161
|
label: string;
|
|
161
|
-
provider: "OpenGeni" | "Connected Codex" | "Your Gateway";
|
|
162
|
+
provider: "OpenGeni" | "Connected Codex" | "Connected SuperGrok" | "Your Gateway";
|
|
162
163
|
description: string;
|
|
163
164
|
available: boolean;
|
|
164
165
|
unavailableReason: string | null;
|
|
@@ -282,11 +283,12 @@ export type SessionCapabilities = {
|
|
|
282
283
|
reason: CapabilityUnavailableReason | null;
|
|
283
284
|
};
|
|
284
285
|
Terminal: {
|
|
285
|
-
transport: "sse-events" | "pty-ws" | null;
|
|
286
|
+
transport: "sse-events" | "pty-ws" | "relay-pty" | null;
|
|
286
287
|
ptyCapable: boolean;
|
|
287
288
|
shell: string;
|
|
288
289
|
url: string | null;
|
|
289
290
|
token: string | null;
|
|
291
|
+
expiresAt: string | null;
|
|
290
292
|
reason: CapabilityUnavailableReason | null;
|
|
291
293
|
};
|
|
292
294
|
Git: {
|
|
@@ -343,8 +345,8 @@ export type ComputerUseCapability = SessionCapabilities["ComputerUse"];
|
|
|
343
345
|
// the capability-gated client (`@opengeni/react`) drives. The desktop pixel
|
|
344
346
|
// plane rides Channel B (direct-to-provider noVNC); the structured terminal/
|
|
345
347
|
// files/git surfaces ride Channel A (the existing event spine + the synchronous
|
|
346
|
-
// fs/git/terminal point queries above). These are TYPES only
|
|
347
|
-
// runtime
|
|
348
|
+
// fs/git/terminal point queries above). These are TYPES only, so ordinary SDK
|
|
349
|
+
// entries do not reach the contracts runtime; the contract-parity test pins them.
|
|
348
350
|
|
|
349
351
|
// Mirror of `@opengeni/contracts` StreamUrlRotatedPayload — the Channel-A event
|
|
350
352
|
// the client folds in to hot-swap its noVNC socket on a box rollover, fenced on
|
|
@@ -374,12 +376,14 @@ export type StreamRevokedPayload = {
|
|
|
374
376
|
|
|
375
377
|
// Mirror of `@opengeni/contracts` AttachViewerRequest. Omitting `viewerId` mints
|
|
376
378
|
// a fresh holder id (returned on the response, carried through heartbeat/detach).
|
|
377
|
-
//
|
|
378
|
-
//
|
|
379
|
-
//
|
|
379
|
+
// Plane flags are exact: credentials are minted only for the requested live
|
|
380
|
+
// surfaces and each surface enforces its own permission. An omitted plane set is
|
|
381
|
+
// retained as the legacy terminal-only request; current clients send all flags.
|
|
380
382
|
export type AttachViewerRequest = {
|
|
381
383
|
viewerId?: string | undefined;
|
|
382
384
|
desktop?: boolean | undefined;
|
|
385
|
+
terminal?: boolean | undefined;
|
|
386
|
+
files?: boolean | undefined;
|
|
383
387
|
};
|
|
384
388
|
|
|
385
389
|
// Mirror of `@opengeni/contracts` ViewerHolder + the P4.2 desktop-stream fields
|
|
@@ -402,8 +406,8 @@ export type AttachViewerResponse = ViewerHolder & {
|
|
|
402
406
|
streamToken: string | null;
|
|
403
407
|
streamExpiresAt: string | null;
|
|
404
408
|
resolution: [number, number] | null;
|
|
405
|
-
transport: "vnc-ws" | null;
|
|
406
|
-
client: "novnc" | null;
|
|
409
|
+
transport: "vnc-ws" | "relay-frames" | null;
|
|
410
|
+
client: "novnc" | "frames" | null;
|
|
407
411
|
// The scoped ttyd PTY-over-websocket address minted for THIS holder — the REAL
|
|
408
412
|
// interactive terminal, symmetric with the desktop pixel plane (same Modal
|
|
409
413
|
// tunnel, same scoped stream token). Populated on a warm box; null when the
|
|
@@ -412,7 +416,8 @@ export type AttachViewerResponse = ViewerHolder & {
|
|
|
412
416
|
// `terminalTransport` is "pty-ws" iff a live `terminalUrl` was minted.
|
|
413
417
|
terminalUrl: string | null;
|
|
414
418
|
terminalToken: string | null;
|
|
415
|
-
|
|
419
|
+
terminalExpiresAt: string | null;
|
|
420
|
+
terminalTransport: "pty-ws" | "relay-pty" | null;
|
|
416
421
|
};
|
|
417
422
|
|
|
418
423
|
// Mirror of `@opengeni/contracts` AcknowledgeStreamRequest/Response — the
|
|
@@ -461,7 +466,7 @@ export type RepositoryResourceRef = {
|
|
|
461
466
|
githubRepositoryId?: number | undefined;
|
|
462
467
|
};
|
|
463
468
|
|
|
464
|
-
/** Value mirror of `@opengeni/contracts`; parity-tested without
|
|
469
|
+
/** Value mirror of `@opengeni/contracts`; parity-tested without importing it from ordinary SDK entries. */
|
|
465
470
|
export const DEFAULT_FILE_RESOURCE_MOUNT_ROOT = ".opengeni/files" as const;
|
|
466
471
|
|
|
467
472
|
export type FileResourceRef = {
|
|
@@ -523,6 +528,7 @@ export type GoalSpec = {
|
|
|
523
528
|
text: string;
|
|
524
529
|
successCriteria?: string | undefined;
|
|
525
530
|
maxAutoContinuations?: number | undefined;
|
|
531
|
+
mutationPolicy?: SessionGoalMutationPolicy | undefined;
|
|
526
532
|
};
|
|
527
533
|
|
|
528
534
|
export type SessionMcpServerInput = {
|
|
@@ -636,11 +642,55 @@ export type OpenGeniSlackBotInstallRequest = {
|
|
|
636
642
|
connectionId?: string | undefined;
|
|
637
643
|
};
|
|
638
644
|
|
|
645
|
+
export type FikenInstallRequest = {
|
|
646
|
+
apiToken: string;
|
|
647
|
+
defaultCompanySlug?: string | undefined;
|
|
648
|
+
/** Existing Fiken connection to rewrite in place (reconnect). */
|
|
649
|
+
connectionId?: string | undefined;
|
|
650
|
+
};
|
|
651
|
+
|
|
652
|
+
export type FikenOAuthStartRequest = {
|
|
653
|
+
/** Existing Fiken connection to re-authorize in place (reconnect). */
|
|
654
|
+
connectionId?: string | undefined;
|
|
655
|
+
};
|
|
656
|
+
|
|
657
|
+
export type FikenOAuthStartResponse = {
|
|
658
|
+
authorizationUrl: string;
|
|
659
|
+
expiresAt: string;
|
|
660
|
+
};
|
|
661
|
+
|
|
639
662
|
export type OpenGeniSlackBotInstallStart = {
|
|
640
663
|
authorizationUrl: string;
|
|
641
664
|
expiresAt: string;
|
|
642
665
|
};
|
|
643
666
|
|
|
667
|
+
export type SlackInstallationBindingState = "active" | "quarantined";
|
|
668
|
+
|
|
669
|
+
export type SlackInstallationBinding = {
|
|
670
|
+
id: string;
|
|
671
|
+
accountId: string;
|
|
672
|
+
accountName: string;
|
|
673
|
+
workspaceId: string;
|
|
674
|
+
workspaceName: string;
|
|
675
|
+
connectionId: string;
|
|
676
|
+
connectionStatus: ConnectionStatus;
|
|
677
|
+
connectionVersion: number;
|
|
678
|
+
slackTeamId: string;
|
|
679
|
+
slackTeamName: string;
|
|
680
|
+
botId: string;
|
|
681
|
+
botUserId: string;
|
|
682
|
+
botDisplayName: "OpenGeni";
|
|
683
|
+
state: SlackInstallationBindingState;
|
|
684
|
+
quarantineReason: string | null;
|
|
685
|
+
version: number;
|
|
686
|
+
createdAt: string;
|
|
687
|
+
updatedAt: string;
|
|
688
|
+
};
|
|
689
|
+
|
|
690
|
+
export type ListSlackInstallationBindingsResponse = {
|
|
691
|
+
bindings: SlackInstallationBinding[];
|
|
692
|
+
};
|
|
693
|
+
|
|
644
694
|
export type GoogleDriveTargetScope = "user" | "workspace" | "organization";
|
|
645
695
|
export type ConnectorDocumentDestinationAuthority = "organization" | "workspace" | "personal";
|
|
646
696
|
export type ConnectorDocumentDestinationSelection = {
|
|
@@ -680,13 +730,15 @@ export type GoogleDriveSelectedSource = {
|
|
|
680
730
|
/** @deprecated Missing destinations resolve to the current workspace boundary. */
|
|
681
731
|
targetScope?: GoogleDriveTargetScope | undefined;
|
|
682
732
|
syncCadence: GoogleDriveSyncCadence;
|
|
733
|
+
syncEnabled: boolean;
|
|
734
|
+
configGeneration: number;
|
|
683
735
|
readPolicy: GoogleDriveReadPolicy;
|
|
684
736
|
selectedAt: string;
|
|
685
737
|
};
|
|
686
738
|
|
|
687
739
|
export type GoogleDriveConnectionMetadata = {
|
|
688
740
|
credentialRole: "google_drive_metadata";
|
|
689
|
-
credentialLabel: "Google Drive metadata browser";
|
|
741
|
+
credentialLabel: "Google Drive read-only source sync" | "Google Drive metadata browser";
|
|
690
742
|
googlePermissionId: string;
|
|
691
743
|
googleEmail: string;
|
|
692
744
|
googleDisplayName: string | null;
|
|
@@ -739,15 +791,124 @@ export type GoogleDriveBrowseResponse = {
|
|
|
739
791
|
incompleteSearch: boolean;
|
|
740
792
|
};
|
|
741
793
|
|
|
794
|
+
export type AtlassianSourceKind = "jira_project" | "confluence_space";
|
|
795
|
+
export type AtlassianSyncCadence = "manual" | "hourly" | "daily";
|
|
796
|
+
export type AtlassianReadPolicy = "allow" | "ask" | "block";
|
|
797
|
+
export type AtlassianConnectionLifecycle = {
|
|
798
|
+
state:
|
|
799
|
+
| "active"
|
|
800
|
+
| "paused"
|
|
801
|
+
| "token_revoked"
|
|
802
|
+
| "app_removed"
|
|
803
|
+
| "disconnected"
|
|
804
|
+
| "reconnect_required"
|
|
805
|
+
| "reconsent_required";
|
|
806
|
+
recoverable: boolean;
|
|
807
|
+
observedAt: string;
|
|
808
|
+
};
|
|
809
|
+
export type AtlassianSelectedSource = {
|
|
810
|
+
id: string;
|
|
811
|
+
cloudId: string;
|
|
812
|
+
siteName: string;
|
|
813
|
+
siteUrl: string;
|
|
814
|
+
resourceId: string;
|
|
815
|
+
key: string;
|
|
816
|
+
name: string;
|
|
817
|
+
kind: AtlassianSourceKind;
|
|
818
|
+
destination?: ConnectorDocumentDestination | undefined;
|
|
819
|
+
syncCadence: AtlassianSyncCadence;
|
|
820
|
+
syncEnabled: boolean;
|
|
821
|
+
configGeneration: number;
|
|
822
|
+
readPolicy: AtlassianReadPolicy;
|
|
823
|
+
selectedAt: string;
|
|
824
|
+
};
|
|
825
|
+
export type AtlassianConnectionMetadata = {
|
|
826
|
+
credentialRole: "atlassian_knowledge";
|
|
827
|
+
credentialLabel: "Atlassian read-only knowledge sync";
|
|
828
|
+
atlassianAccountId: string;
|
|
829
|
+
displayName: string;
|
|
830
|
+
email?: string | null | undefined;
|
|
831
|
+
sites: Array<{
|
|
832
|
+
cloudId: string;
|
|
833
|
+
name: string;
|
|
834
|
+
url: string;
|
|
835
|
+
products: Array<"jira" | "confluence">;
|
|
836
|
+
}>;
|
|
837
|
+
verifiedAt: string;
|
|
838
|
+
accessMode: "readonly";
|
|
839
|
+
lifecycle?: AtlassianConnectionLifecycle | undefined;
|
|
840
|
+
documentDestination?: ConnectorDocumentDestination | undefined;
|
|
841
|
+
selectedSources: AtlassianSelectedSource[];
|
|
842
|
+
[key: string]: unknown;
|
|
843
|
+
};
|
|
844
|
+
export type AtlassianOAuthStartResponse = {
|
|
845
|
+
authorizationUrl: string;
|
|
846
|
+
expiresAt: string;
|
|
847
|
+
};
|
|
848
|
+
export type AtlassianLifecycleActionRequest = {
|
|
849
|
+
action: "pause" | "resume";
|
|
850
|
+
expectedVersion: number;
|
|
851
|
+
};
|
|
852
|
+
export type AtlassianDisconnectRequest = {
|
|
853
|
+
expectedVersion: number;
|
|
854
|
+
idempotencyKey: string;
|
|
855
|
+
};
|
|
856
|
+
export type AtlassianBrowseItem = {
|
|
857
|
+
id: string;
|
|
858
|
+
cloudId: string;
|
|
859
|
+
siteName: string;
|
|
860
|
+
siteUrl: string;
|
|
861
|
+
resourceId: string;
|
|
862
|
+
key: string;
|
|
863
|
+
name: string;
|
|
864
|
+
kind: AtlassianSourceKind;
|
|
865
|
+
description: string | null;
|
|
866
|
+
webUrl: string;
|
|
867
|
+
};
|
|
868
|
+
export type AtlassianBrowseResponse = {
|
|
869
|
+
connection: ConnectionMetadata;
|
|
870
|
+
items: AtlassianBrowseItem[];
|
|
871
|
+
};
|
|
872
|
+
|
|
742
873
|
export type SaveGoogleDriveSourceRequest = {
|
|
743
874
|
sources: Array<Pick<GoogleDriveBrowseItem, "id" | "name" | "mimeType" | "driveId">>;
|
|
744
875
|
destination?: ConnectorDocumentDestinationSelection | undefined;
|
|
745
876
|
/** @deprecated Legacy requests resolve to workspace authority. */
|
|
746
877
|
targetScope?: GoogleDriveTargetScope | undefined;
|
|
747
878
|
syncCadence: GoogleDriveSyncCadence;
|
|
879
|
+
syncEnabled: boolean;
|
|
880
|
+
readPolicy: GoogleDriveReadPolicy;
|
|
881
|
+
};
|
|
882
|
+
|
|
883
|
+
export type GoogleDriveKnowledgeSourceItem = {
|
|
884
|
+
id: string;
|
|
885
|
+
name: string;
|
|
886
|
+
mimeType: string;
|
|
887
|
+
driveId?: string | undefined;
|
|
888
|
+
sourceKind: "my_drive" | "shared_drive" | "folder";
|
|
889
|
+
includeDescendants: boolean;
|
|
890
|
+
};
|
|
891
|
+
|
|
892
|
+
export type GoogleDriveKnowledgeSourceDestination = {
|
|
893
|
+
authorityKind: ConnectorDocumentDestinationAuthority;
|
|
894
|
+
authorityAccountId: string;
|
|
895
|
+
authorityWorkspaceId?: string | undefined;
|
|
896
|
+
authoritySubjectId?: string | undefined;
|
|
897
|
+
collectionId?: string | undefined;
|
|
898
|
+
};
|
|
899
|
+
|
|
900
|
+
export type GoogleDriveKnowledgeSourceConfig = {
|
|
901
|
+
sources: GoogleDriveKnowledgeSourceItem[];
|
|
902
|
+
destination: GoogleDriveKnowledgeSourceDestination;
|
|
903
|
+
syncCadence: GoogleDriveSyncCadence;
|
|
748
904
|
readPolicy: GoogleDriveReadPolicy;
|
|
749
905
|
};
|
|
750
906
|
|
|
907
|
+
export type SaveGoogleDriveIntegrationSourceRequest = SaveGoogleDriveSourceRequest & {
|
|
908
|
+
expectedVersion?: number | undefined;
|
|
909
|
+
idempotencyKey: string;
|
|
910
|
+
};
|
|
911
|
+
|
|
751
912
|
export type UpdateConnectionRequest = {
|
|
752
913
|
providerDomain?: string | undefined;
|
|
753
914
|
subjectId?: string | null | undefined;
|
|
@@ -892,6 +1053,8 @@ export type Session = {
|
|
|
892
1053
|
// rig-less session. Frozen at create; a later rig promote never moves them.
|
|
893
1054
|
rigId: string | null;
|
|
894
1055
|
rigVersionId: string | null;
|
|
1056
|
+
/** Workspace channel the session is filed under; null = unfiled (inbox). */
|
|
1057
|
+
channelId: string | null;
|
|
895
1058
|
firstPartyMcpPermissions: string[] | null;
|
|
896
1059
|
firstPartyMcpTools: FirstPartyMcpToolName[];
|
|
897
1060
|
mcpServers: SessionMcpServerMetadata[];
|
|
@@ -960,6 +1123,51 @@ export type SessionListResponse = {
|
|
|
960
1123
|
nextCursor: string | null;
|
|
961
1124
|
};
|
|
962
1125
|
|
|
1126
|
+
/** Compact, bounded session projection for workspace agent-topology browsers. */
|
|
1127
|
+
export type AgentTopologySession = {
|
|
1128
|
+
id: string;
|
|
1129
|
+
title: string | null;
|
|
1130
|
+
titleTruncated: boolean;
|
|
1131
|
+
parentSessionId: string | null;
|
|
1132
|
+
rootSessionId: string;
|
|
1133
|
+
nestedAgentDepth: number;
|
|
1134
|
+
ancestorPath: Array<{
|
|
1135
|
+
id: string;
|
|
1136
|
+
title: string | null;
|
|
1137
|
+
titleTruncated: boolean;
|
|
1138
|
+
}>;
|
|
1139
|
+
status: SessionStatus;
|
|
1140
|
+
pause: {
|
|
1141
|
+
state: "active" | "paused";
|
|
1142
|
+
additionalBlockerCount: number;
|
|
1143
|
+
source: {
|
|
1144
|
+
kind: "session" | "workspace";
|
|
1145
|
+
sessionId?: string | undefined;
|
|
1146
|
+
displayName: string;
|
|
1147
|
+
displayNameTruncated: boolean;
|
|
1148
|
+
} | null;
|
|
1149
|
+
};
|
|
1150
|
+
children: {
|
|
1151
|
+
directChildren: number;
|
|
1152
|
+
totalDescendants: number;
|
|
1153
|
+
runningDescendants: number;
|
|
1154
|
+
queuedDescendants: number;
|
|
1155
|
+
attentionDescendants: number;
|
|
1156
|
+
pausedDescendants: number;
|
|
1157
|
+
failedDescendants: number;
|
|
1158
|
+
truncated: boolean;
|
|
1159
|
+
};
|
|
1160
|
+
createdAt: string;
|
|
1161
|
+
updatedAt: string;
|
|
1162
|
+
};
|
|
1163
|
+
|
|
1164
|
+
export type AgentTopologyPageResponse = {
|
|
1165
|
+
sessions: AgentTopologySession[];
|
|
1166
|
+
total: number;
|
|
1167
|
+
hasMore: boolean;
|
|
1168
|
+
nextCursor: string | null;
|
|
1169
|
+
};
|
|
1170
|
+
|
|
963
1171
|
export type UpdateSessionPinRequest = {
|
|
964
1172
|
pinned: boolean;
|
|
965
1173
|
expectedVersion?: number;
|
|
@@ -996,6 +1204,39 @@ export type SessionTurnSource =
|
|
|
996
1204
|
| "system"
|
|
997
1205
|
| "compaction";
|
|
998
1206
|
|
|
1207
|
+
export type TimelineAnnotationSourceKind = "user_message" | "assistant_message" | "tool_output";
|
|
1208
|
+
|
|
1209
|
+
export type TimelineAnnotationSourceEventType =
|
|
1210
|
+
| "user.message"
|
|
1211
|
+
| "agent.message.completed"
|
|
1212
|
+
| "agent.toolCall.output";
|
|
1213
|
+
|
|
1214
|
+
export type TimelineAnnotationSource = {
|
|
1215
|
+
kind: TimelineAnnotationSourceKind;
|
|
1216
|
+
eventId: string;
|
|
1217
|
+
eventType: TimelineAnnotationSourceEventType;
|
|
1218
|
+
sequence: number;
|
|
1219
|
+
turnId: string | null;
|
|
1220
|
+
startOffset: number;
|
|
1221
|
+
endOffset: number;
|
|
1222
|
+
contextBefore: string;
|
|
1223
|
+
contextAfter: string;
|
|
1224
|
+
label?: string | undefined;
|
|
1225
|
+
};
|
|
1226
|
+
|
|
1227
|
+
export type DraftTimelineAnnotation = {
|
|
1228
|
+
id: string;
|
|
1229
|
+
source: TimelineAnnotationSource;
|
|
1230
|
+
quote: string;
|
|
1231
|
+
note: string;
|
|
1232
|
+
};
|
|
1233
|
+
|
|
1234
|
+
export type SubmittedTimelineAnnotation = DraftTimelineAnnotation;
|
|
1235
|
+
|
|
1236
|
+
export type TimelineAnnotation = DraftTimelineAnnotation & {
|
|
1237
|
+
ordinal: number;
|
|
1238
|
+
};
|
|
1239
|
+
|
|
999
1240
|
export type SessionTurn = {
|
|
1000
1241
|
id: string;
|
|
1001
1242
|
workspaceId: string;
|
|
@@ -1006,6 +1247,7 @@ export type SessionTurn = {
|
|
|
1006
1247
|
source: SessionTurnSource;
|
|
1007
1248
|
position: number;
|
|
1008
1249
|
prompt: string;
|
|
1250
|
+
annotations?: TimelineAnnotation[] | undefined;
|
|
1009
1251
|
resources: ResourceRef[];
|
|
1010
1252
|
tools: ToolRef[];
|
|
1011
1253
|
toolsProvided?: boolean | undefined;
|
|
@@ -1136,6 +1378,9 @@ export const SESSION_EVENT_TYPES = [
|
|
|
1136
1378
|
"artifact.created",
|
|
1137
1379
|
"goal.set",
|
|
1138
1380
|
"goal.updated",
|
|
1381
|
+
"goal.progress",
|
|
1382
|
+
"goal.rewrite.proposed",
|
|
1383
|
+
"goal.rewrite.rejected",
|
|
1139
1384
|
"goal.completed",
|
|
1140
1385
|
"goal.paused",
|
|
1141
1386
|
"goal.resumed",
|
|
@@ -1175,6 +1420,7 @@ export const SESSION_EVENT_TYPES = [
|
|
|
1175
1420
|
"terminal.pty.output.delta",
|
|
1176
1421
|
"terminal.pty.exited",
|
|
1177
1422
|
"session.title_set",
|
|
1423
|
+
"session.visibility.changed",
|
|
1178
1424
|
"session.mcp.approval_policy.updated",
|
|
1179
1425
|
"session.tool_policy.updated",
|
|
1180
1426
|
// Multi-account Codex (P1): the session's inference account changed.
|
|
@@ -1373,6 +1619,17 @@ export type ToolAuthNeededPayload = {
|
|
|
1373
1619
|
selectedResources?: Array<{ id: string; kind: "repository" }> | undefined;
|
|
1374
1620
|
authorizationUrl?: string | undefined;
|
|
1375
1621
|
subjectId?: string | null | undefined;
|
|
1622
|
+
capability?:
|
|
1623
|
+
| {
|
|
1624
|
+
id: string;
|
|
1625
|
+
name: string;
|
|
1626
|
+
kind: CapabilityKind;
|
|
1627
|
+
source: CapabilitySource;
|
|
1628
|
+
action: "connect" | "add_credentials" | "enable";
|
|
1629
|
+
rationale: string;
|
|
1630
|
+
requiredVariables: string[];
|
|
1631
|
+
}
|
|
1632
|
+
| undefined;
|
|
1376
1633
|
};
|
|
1377
1634
|
|
|
1378
1635
|
// Payload shapes for the high-traffic event types. `SessionEvent.payload` is
|
|
@@ -1471,9 +1728,10 @@ export type CodexFleetDecisionEventPayload = {
|
|
|
1471
1728
|
} & Record<string, unknown>;
|
|
1472
1729
|
};
|
|
1473
1730
|
|
|
1474
|
-
// Recording payloads (P4.3 — plain TS mirror of the contracts Zod schemas
|
|
1475
|
-
//
|
|
1476
|
-
// test asserts the event-type literals; these shapes
|
|
1731
|
+
// Recording payloads (P4.3 — plain TS mirror of the contracts Zod schemas).
|
|
1732
|
+
// These are TYPES, not Zod (F15), so ordinary SDK entries remain runtime-clean.
|
|
1733
|
+
// The contract-parity test asserts the event-type literals; these shapes
|
|
1734
|
+
// document the wire payloads.
|
|
1477
1735
|
export type RecordingMode = "manual" | "on-turn" | "on-verify";
|
|
1478
1736
|
export type RecordingCodec = "h264-mp4" | "vp9-webm";
|
|
1479
1737
|
export type RecordingContentType = "video/mp4" | "video/webm";
|
|
@@ -1653,6 +1911,9 @@ export type GitStatusRequest = { path?: string };
|
|
|
1653
1911
|
export type GitStatusResponse = {
|
|
1654
1912
|
isRepo: boolean;
|
|
1655
1913
|
head: string | null;
|
|
1914
|
+
/** Exact commit object identity. null for unborn/non-repositories; absent on
|
|
1915
|
+
* legacy adapters. */
|
|
1916
|
+
headOid?: string | null | undefined;
|
|
1656
1917
|
detached: boolean;
|
|
1657
1918
|
upstream: string | null;
|
|
1658
1919
|
ahead: number;
|
|
@@ -1761,6 +2022,9 @@ export type WorkspaceCaptureFile = {
|
|
|
1761
2022
|
export type WorkspaceCaptureRepo = {
|
|
1762
2023
|
root: string;
|
|
1763
2024
|
head: string | null;
|
|
2025
|
+
/** Exact HEAD commit object identity. null for unborn repositories; absent
|
|
2026
|
+
* on legacy captures. */
|
|
2027
|
+
headOid?: string | null | undefined;
|
|
1764
2028
|
detached: boolean;
|
|
1765
2029
|
upstream: string | null;
|
|
1766
2030
|
ahead: number;
|
|
@@ -1904,6 +2168,7 @@ export type ScheduledTaskDayOfWeek =
|
|
|
1904
2168
|
| "SATURDAY";
|
|
1905
2169
|
|
|
1906
2170
|
export type ScheduledTaskScheduleSpec =
|
|
2171
|
+
| { type: "manual" }
|
|
1907
2172
|
| { type: "once"; runAt: string; timeZone: string }
|
|
1908
2173
|
| {
|
|
1909
2174
|
type: "interval";
|
|
@@ -1932,6 +2197,44 @@ export type ScheduledTaskAgentConfig = {
|
|
|
1932
2197
|
maxNestedAgentDepth?: number | undefined;
|
|
1933
2198
|
};
|
|
1934
2199
|
|
|
2200
|
+
export type ScopedKnowledgeScope =
|
|
2201
|
+
| { kind: "organization"; workspaceId: null; subjectId: null }
|
|
2202
|
+
| { kind: "workspace"; workspaceId: string; subjectId: null }
|
|
2203
|
+
| { kind: "personal"; workspaceId: string | null; subjectId: string };
|
|
2204
|
+
|
|
2205
|
+
export type KnowledgeSourceSyncLimits = {
|
|
2206
|
+
maxItems: number;
|
|
2207
|
+
maxBytes: number;
|
|
2208
|
+
maxFileBytes: number;
|
|
2209
|
+
maxProviderRequests: number;
|
|
2210
|
+
maxElapsedSeconds: number;
|
|
2211
|
+
maxConcurrency: number;
|
|
2212
|
+
maxFailureDetails: number;
|
|
2213
|
+
};
|
|
2214
|
+
|
|
2215
|
+
export type ScheduledTaskAction =
|
|
2216
|
+
| { kind: "agent_turn" }
|
|
2217
|
+
| {
|
|
2218
|
+
kind: "knowledge_source_sync";
|
|
2219
|
+
sourceId: string;
|
|
2220
|
+
sourceGeneration: number;
|
|
2221
|
+
sourceLifecycleGeneration: number;
|
|
2222
|
+
sourceConfigGeneration: number;
|
|
2223
|
+
controlWorkspaceId: string;
|
|
2224
|
+
providerCoordinationKey: string;
|
|
2225
|
+
connection: {
|
|
2226
|
+
connectionId: string;
|
|
2227
|
+
connectionVersion: number;
|
|
2228
|
+
providerDomain: string;
|
|
2229
|
+
kind: ConnectionKind;
|
|
2230
|
+
ownerSubjectId: string;
|
|
2231
|
+
};
|
|
2232
|
+
destination: ScopedKnowledgeScope;
|
|
2233
|
+
initiatingSubjectId: string;
|
|
2234
|
+
allDescendants: boolean;
|
|
2235
|
+
limits: KnowledgeSourceSyncLimits;
|
|
2236
|
+
};
|
|
2237
|
+
|
|
1935
2238
|
export type ScheduledTask = {
|
|
1936
2239
|
id: string;
|
|
1937
2240
|
accountId: string;
|
|
@@ -1942,6 +2245,7 @@ export type ScheduledTask = {
|
|
|
1942
2245
|
temporalScheduleId: string;
|
|
1943
2246
|
runMode: ScheduledTaskRunMode;
|
|
1944
2247
|
overlapPolicy: ScheduledTaskOverlapPolicy;
|
|
2248
|
+
action: ScheduledTaskAction;
|
|
1945
2249
|
agentConfig: ScheduledTaskAgentConfig;
|
|
1946
2250
|
createdBy?: TurnInitiator | undefined;
|
|
1947
2251
|
createdByContext?: TurnInitiatorContext | undefined;
|
|
@@ -2063,7 +2367,7 @@ export const KNOWN_PERMISSIONS = [
|
|
|
2063
2367
|
"secrets:read",
|
|
2064
2368
|
"secrets:write",
|
|
2065
2369
|
"mcp_servers:attach",
|
|
2066
|
-
"
|
|
2370
|
+
"codemode:call",
|
|
2067
2371
|
"goals:manage",
|
|
2068
2372
|
"enrollments:read",
|
|
2069
2373
|
"enrollments:manage",
|
|
@@ -2085,6 +2389,7 @@ export type FirstPartyMcpToolName =
|
|
|
2085
2389
|
| "set_session_title"
|
|
2086
2390
|
| "goal_set"
|
|
2087
2391
|
| "goal_update"
|
|
2392
|
+
| "goal_progress"
|
|
2088
2393
|
| "goal_complete"
|
|
2089
2394
|
| "goal_pause"
|
|
2090
2395
|
| "memory_search"
|
|
@@ -2092,13 +2397,15 @@ export type FirstPartyMcpToolName =
|
|
|
2092
2397
|
| "memory_correct"
|
|
2093
2398
|
| "preference_registry_summary"
|
|
2094
2399
|
| "preference_registry_get"
|
|
2400
|
+
| "task_notes_list"
|
|
2401
|
+
| "task_note_save"
|
|
2402
|
+
| "task_note_archive"
|
|
2095
2403
|
| "sandboxes_list"
|
|
2096
2404
|
| "sandbox_attach"
|
|
2097
2405
|
| "sandbox_swap"
|
|
2098
2406
|
| "run_on"
|
|
2099
2407
|
| "sandbox_provision"
|
|
2100
2408
|
| "connected_machine_remove"
|
|
2101
|
-
| "connected_machine_remove"
|
|
2102
2409
|
| "rig_list"
|
|
2103
2410
|
| "rig_get"
|
|
2104
2411
|
| "rig_propose_change"
|
|
@@ -2113,11 +2420,31 @@ export type FirstPartyMcpToolName =
|
|
|
2113
2420
|
| "session_resume"
|
|
2114
2421
|
| "session_steer"
|
|
2115
2422
|
| "set_other_session_title"
|
|
2423
|
+
| "interaction_discover"
|
|
2424
|
+
| "browser_open"
|
|
2425
|
+
| "browser_tabs"
|
|
2426
|
+
| "browser_observe"
|
|
2427
|
+
| "browser_act"
|
|
2428
|
+
| "browser_clipboard"
|
|
2429
|
+
| "browser_debug"
|
|
2430
|
+
| "browser_auth"
|
|
2431
|
+
| "interaction_request_human"
|
|
2432
|
+
| "browser_identity"
|
|
2433
|
+
| "browser_publish"
|
|
2434
|
+
| "browser_lifecycle"
|
|
2435
|
+
| "computer_open"
|
|
2436
|
+
| "computer_targets"
|
|
2437
|
+
| "computer_observe"
|
|
2438
|
+
| "computer_clipboard"
|
|
2439
|
+
| "computer_act"
|
|
2440
|
+
| "computer_lifecycle"
|
|
2116
2441
|
| "variable_set_list"
|
|
2117
2442
|
| "environment_list"
|
|
2118
2443
|
| "variable_set_get_variable"
|
|
2119
2444
|
| "variable_set_set_variable"
|
|
2120
2445
|
| "environment_set_variable"
|
|
2446
|
+
| "capability_catalog_search"
|
|
2447
|
+
| "capability_authorization_request"
|
|
2121
2448
|
| "github_connect_link"
|
|
2122
2449
|
| "github_repositories_list"
|
|
2123
2450
|
| "social_connections_list"
|
|
@@ -2128,6 +2455,18 @@ export type FirstPartyMcpToolName =
|
|
|
2128
2455
|
| "social_thread_fetch"
|
|
2129
2456
|
| "social_posts_sync"
|
|
2130
2457
|
| "social_post_reply"
|
|
2458
|
+
| "x_accounts_list"
|
|
2459
|
+
| "x_search_live"
|
|
2460
|
+
| "x_mentions_live"
|
|
2461
|
+
| "x_thread_fetch"
|
|
2462
|
+
| "x_posts_sync"
|
|
2463
|
+
| "x_post_reply"
|
|
2464
|
+
| "reddit_accounts_list"
|
|
2465
|
+
| "reddit_search_live"
|
|
2466
|
+
| "reddit_mentions_live"
|
|
2467
|
+
| "reddit_thread_fetch"
|
|
2468
|
+
| "reddit_posts_sync"
|
|
2469
|
+
| "reddit_post_reply"
|
|
2131
2470
|
| "scheduled_tasks_list"
|
|
2132
2471
|
| "scheduled_tasks_get"
|
|
2133
2472
|
| "scheduled_tasks_create"
|
|
@@ -2146,11 +2485,32 @@ export type FirstPartyMcpToolName =
|
|
|
2146
2485
|
| "slack_bot_file_content"
|
|
2147
2486
|
| "slack_bot_post_message"
|
|
2148
2487
|
| "slack_bot_delete_message"
|
|
2488
|
+
| "fiken_companies_list"
|
|
2489
|
+
| "fiken_contacts_list"
|
|
2490
|
+
| "fiken_contact_create"
|
|
2491
|
+
| "fiken_products_list"
|
|
2492
|
+
| "fiken_invoices_list"
|
|
2493
|
+
| "fiken_invoice_get"
|
|
2494
|
+
| "fiken_invoice_draft_create"
|
|
2495
|
+
| "fiken_bank_accounts_list"
|
|
2496
|
+
| "fiken_purchases_list"
|
|
2497
|
+
| "fiken_sales_list"
|
|
2498
|
+
| "atlassian_sources_list"
|
|
2499
|
+
| "atlassian_search"
|
|
2500
|
+
| "atlassian_get"
|
|
2149
2501
|
| "artifacts_list"
|
|
2150
2502
|
| "artifacts_get_source"
|
|
2151
2503
|
| "artifacts_create"
|
|
2152
2504
|
| "artifacts_publish"
|
|
2153
|
-
| "artifacts_rollback"
|
|
2505
|
+
| "artifacts_rollback"
|
|
2506
|
+
| "editable_artifact_list"
|
|
2507
|
+
| "editable_artifact_create"
|
|
2508
|
+
| "editable_artifact_import"
|
|
2509
|
+
| "editable_artifact_get"
|
|
2510
|
+
| "editable_artifact_inspect"
|
|
2511
|
+
| "editable_artifact_apply"
|
|
2512
|
+
| "editable_artifact_export"
|
|
2513
|
+
| "editable_artifact_export_status";
|
|
2154
2514
|
|
|
2155
2515
|
export type ProductAccessMode = "local" | "configured" | "managed";
|
|
2156
2516
|
|
|
@@ -2197,7 +2557,7 @@ export type ModelCapabilitiesV1 = {
|
|
|
2197
2557
|
|
|
2198
2558
|
export type ModelCredentialSourceV1 =
|
|
2199
2559
|
| { kind: "deployment"; mechanism: "api_key" | "azure_ad_bearer" }
|
|
2200
|
-
| { kind: "connected_subscription"; provider: "codex" }
|
|
2560
|
+
| { kind: "connected_subscription"; provider: "codex" | "xai" }
|
|
2201
2561
|
| { kind: "workspace_connection"; mechanism: "api_key" };
|
|
2202
2562
|
|
|
2203
2563
|
export type ModelBillingAttributionV1 = {
|
|
@@ -2237,7 +2597,7 @@ export type ClientModel = {
|
|
|
2237
2597
|
provider: string;
|
|
2238
2598
|
providerLabel: string;
|
|
2239
2599
|
api: "responses" | "chat";
|
|
2240
|
-
source?: "opengeni" | "codex" | "workspace_gateway" | undefined;
|
|
2600
|
+
source?: "opengeni" | "codex" | "supergrok" | "workspace_gateway" | undefined;
|
|
2241
2601
|
contextWindowTokens?: number | undefined;
|
|
2242
2602
|
schemaVersion?: 1 | undefined;
|
|
2243
2603
|
aliases?: string[] | undefined;
|
|
@@ -2519,6 +2879,89 @@ export type CodexConnectPoll =
|
|
|
2519
2879
|
isActive?: boolean;
|
|
2520
2880
|
};
|
|
2521
2881
|
|
|
2882
|
+
/** Explicit authority of one connected SuperGrok/xAI subscription account. */
|
|
2883
|
+
export type SuperGrokAccountScope = "workspace" | "user";
|
|
2884
|
+
|
|
2885
|
+
/** Metadata-only connected SuperGrok account. Secret OAuth material never crosses the API. */
|
|
2886
|
+
export type SuperGrokAccount = {
|
|
2887
|
+
id: string;
|
|
2888
|
+
scope: SuperGrokAccountScope;
|
|
2889
|
+
subject: string;
|
|
2890
|
+
email?: string | null;
|
|
2891
|
+
label?: string | null;
|
|
2892
|
+
status: "active" | "needs_relogin" | "error";
|
|
2893
|
+
active: boolean;
|
|
2894
|
+
expiresAt?: string | null;
|
|
2895
|
+
lastRefreshAt?: string | null;
|
|
2896
|
+
lastError?: string | null;
|
|
2897
|
+
allocatorEnabled: boolean;
|
|
2898
|
+
allocatorVersion: number;
|
|
2899
|
+
allocatorUpdatedAt?: string | null;
|
|
2900
|
+
exhaustedUntil?: string | null;
|
|
2901
|
+
quota?: {
|
|
2902
|
+
usedPercent: number | null;
|
|
2903
|
+
periodStart: string | null;
|
|
2904
|
+
periodEnd: string | null;
|
|
2905
|
+
subscriptionTier: string | null;
|
|
2906
|
+
checkedAt: string | null;
|
|
2907
|
+
} | null;
|
|
2908
|
+
};
|
|
2909
|
+
|
|
2910
|
+
export type SuperGrokRotationSettings = {
|
|
2911
|
+
rotationEnabled: boolean;
|
|
2912
|
+
rotationStrategy: "sharded";
|
|
2913
|
+
activeCredentialId: string | null;
|
|
2914
|
+
};
|
|
2915
|
+
|
|
2916
|
+
/** GET /supergrok/accounts — visible accounts plus the workspace active pointer. */
|
|
2917
|
+
export type SuperGrokAccountsResponse = {
|
|
2918
|
+
accounts: SuperGrokAccount[];
|
|
2919
|
+
activeAccountId: string | null;
|
|
2920
|
+
settings: SuperGrokRotationSettings;
|
|
2921
|
+
};
|
|
2922
|
+
|
|
2923
|
+
export type SuperGrokConnectionStatus = {
|
|
2924
|
+
connected: boolean;
|
|
2925
|
+
valid?: boolean;
|
|
2926
|
+
accountCount?: number;
|
|
2927
|
+
models?: ClientModel[];
|
|
2928
|
+
activeAccount?: {
|
|
2929
|
+
id: string;
|
|
2930
|
+
label?: string | null;
|
|
2931
|
+
subject?: string | null;
|
|
2932
|
+
scope: SuperGrokAccountScope;
|
|
2933
|
+
} | null;
|
|
2934
|
+
};
|
|
2935
|
+
|
|
2936
|
+
/** Workspace is the deliberately simple/default connection authority. */
|
|
2937
|
+
export type SuperGrokConnectStart = {
|
|
2938
|
+
userCode: string;
|
|
2939
|
+
verificationUri: string;
|
|
2940
|
+
verificationUriComplete?: string | null;
|
|
2941
|
+
intervalSeconds: number;
|
|
2942
|
+
expiresInSeconds: number;
|
|
2943
|
+
scope: SuperGrokAccountScope;
|
|
2944
|
+
state: string;
|
|
2945
|
+
};
|
|
2946
|
+
|
|
2947
|
+
export type SuperGrokConnectPoll =
|
|
2948
|
+
| { status: "pending" | "slow_down"; intervalSeconds?: number }
|
|
2949
|
+
| { status: "expired" | "denied" }
|
|
2950
|
+
| {
|
|
2951
|
+
status: "connected";
|
|
2952
|
+
accountId: string;
|
|
2953
|
+
scope: SuperGrokAccountScope;
|
|
2954
|
+
isActive: boolean;
|
|
2955
|
+
email?: string | null;
|
|
2956
|
+
};
|
|
2957
|
+
|
|
2958
|
+
export type SuperGrokAllocatorUpdate = {
|
|
2959
|
+
allocatorEnabled: boolean;
|
|
2960
|
+
allocatorVersion: number;
|
|
2961
|
+
allocatorUpdatedAt: string | null;
|
|
2962
|
+
changed: boolean;
|
|
2963
|
+
};
|
|
2964
|
+
|
|
2522
2965
|
/** Remaining usage/limits for one account. `usage` is the normalized P2 payload. */
|
|
2523
2966
|
export type CodexUsage = {
|
|
2524
2967
|
status: "ok" | "limit_reached" | "error" | "no-data";
|
|
@@ -2541,7 +2984,7 @@ export type ClientAuthConfig =
|
|
|
2541
2984
|
|
|
2542
2985
|
// Kept value-identical to @opengeni/contracts and pinned by the SDK contract
|
|
2543
2986
|
// parity suite. The SDK has no runtime dependency on the Zod contracts package.
|
|
2544
|
-
export const OPENGENI_API_CONTRACT_REVISION = "2026-
|
|
2987
|
+
export const OPENGENI_API_CONTRACT_REVISION = "2026-08-social-provider-tools-v1" as const;
|
|
2545
2988
|
export const OPENGENI_API_CONTRACT_HEADER = "x-opengeni-api-contract" as const;
|
|
2546
2989
|
/** Bounded request/response identifier shared by browser, ingress, and API diagnostics. */
|
|
2547
2990
|
export const OPENGENI_CORRELATION_HEADER = "x-opengeni-correlation-id" as const;
|
|
@@ -2563,6 +3006,13 @@ export type ClientConfig = {
|
|
|
2563
3006
|
defaultReasoningEffort: ReasoningEffort;
|
|
2564
3007
|
allowedReasoningEfforts: ReasoningEffort[];
|
|
2565
3008
|
mcpServers: { id: string; name: string }[];
|
|
3009
|
+
/** Deployment defaults and hard maximum for built-in OpenGeni session tools. */
|
|
3010
|
+
firstPartyMcpTools?:
|
|
3011
|
+
| {
|
|
3012
|
+
default: FirstPartyMcpToolName[];
|
|
3013
|
+
allowed: FirstPartyMcpToolName[];
|
|
3014
|
+
}
|
|
3015
|
+
| undefined;
|
|
2566
3016
|
fileUploads: { enabled: boolean; maxSizeBytes: number };
|
|
2567
3017
|
/** Native browser microphone capture + server-side transcription capability. */
|
|
2568
3018
|
voiceInput?: ClientVoiceInputConfig | undefined;
|
|
@@ -2733,6 +3183,17 @@ export type AccessContext = {
|
|
|
2733
3183
|
defaultWorkspaceId: string | null;
|
|
2734
3184
|
};
|
|
2735
3185
|
|
|
3186
|
+
export type ManagedOrganizationMembership = {
|
|
3187
|
+
id: string;
|
|
3188
|
+
organizationId: string;
|
|
3189
|
+
status: "active";
|
|
3190
|
+
personalWorkspaceId: string;
|
|
3191
|
+
};
|
|
3192
|
+
|
|
3193
|
+
export type ListManagedOrganizationMembershipsResponse = {
|
|
3194
|
+
memberships: ManagedOrganizationMembership[];
|
|
3195
|
+
};
|
|
3196
|
+
|
|
2736
3197
|
export type Workspace = {
|
|
2737
3198
|
id: string;
|
|
2738
3199
|
accountId: string;
|
|
@@ -2756,6 +3217,8 @@ export type Workspace = {
|
|
|
2756
3217
|
|
|
2757
3218
|
export type WorkspaceSettings = {
|
|
2758
3219
|
memoryEnabled?: boolean | undefined;
|
|
3220
|
+
/** Reversible Memory V1 prompt composition rollout. */
|
|
3221
|
+
memoryPromptMode?: "legacy_standing" | "retrieval_only" | undefined;
|
|
2759
3222
|
voiceInput?: WorkspaceVoiceInputSettings | undefined;
|
|
2760
3223
|
transcription?: WorkspaceTranscriptionPolicy | undefined;
|
|
2761
3224
|
maxNestedAgentDepth?: number | null | undefined;
|
|
@@ -2769,7 +3232,7 @@ export type WorkspaceSettings = {
|
|
|
2769
3232
|
|
|
2770
3233
|
export type WorkspaceSlackReactionSummonSettings = {
|
|
2771
3234
|
enabled: boolean;
|
|
2772
|
-
emoji:
|
|
3235
|
+
emoji: "genie";
|
|
2773
3236
|
channelPolicy: { mode: "bot_member" } | { mode: "allowlist"; channelIds: string[] };
|
|
2774
3237
|
};
|
|
2775
3238
|
|
|
@@ -2790,6 +3253,7 @@ export type WorkspaceVoiceInputSettings = {
|
|
|
2790
3253
|
|
|
2791
3254
|
export type UpdateWorkspaceSettingsRequest = {
|
|
2792
3255
|
memoryEnabled?: boolean | undefined;
|
|
3256
|
+
memoryPromptMode?: "legacy_standing" | "retrieval_only" | undefined;
|
|
2793
3257
|
voiceInput?: WorkspaceVoiceInputSettings | undefined;
|
|
2794
3258
|
transcription?: WorkspaceTranscriptionPolicy | undefined;
|
|
2795
3259
|
maxNestedAgentDepth?: number | null | undefined;
|
|
@@ -2874,12 +3338,87 @@ export type UpdateWorkspaceMemberRequest = {
|
|
|
2874
3338
|
permissions: Permission[];
|
|
2875
3339
|
};
|
|
2876
3340
|
|
|
3341
|
+
export type SlackUserLinkAccessRequestStatus =
|
|
3342
|
+
| "prepared"
|
|
3343
|
+
| "pending"
|
|
3344
|
+
| "completed"
|
|
3345
|
+
| "denied"
|
|
3346
|
+
| "cancelled"
|
|
3347
|
+
| "expired";
|
|
3348
|
+
|
|
3349
|
+
/** Token-free durable projection of one signed Slack identity-link intent. */
|
|
3350
|
+
export type SlackUserLinkAccessRequest = {
|
|
3351
|
+
id: string;
|
|
3352
|
+
workspaceId: string;
|
|
3353
|
+
workspaceDisplayName: string | null;
|
|
3354
|
+
subjectLabel: string | null;
|
|
3355
|
+
status: SlackUserLinkAccessRequestStatus;
|
|
3356
|
+
version: number;
|
|
3357
|
+
expiresAt: string;
|
|
3358
|
+
requestedAt: string | null;
|
|
3359
|
+
decidedAt: string | null;
|
|
3360
|
+
completedAt: string | null;
|
|
3361
|
+
createdAt: string;
|
|
3362
|
+
updatedAt: string;
|
|
3363
|
+
};
|
|
3364
|
+
|
|
3365
|
+
export type PrepareSlackUserLinkAccessRequest = {
|
|
3366
|
+
linkToken: string;
|
|
3367
|
+
};
|
|
3368
|
+
|
|
3369
|
+
export type SlackUserLinkAccessMutationRequest = {
|
|
3370
|
+
expectedVersion: number;
|
|
3371
|
+
idempotencyKey: string;
|
|
3372
|
+
};
|
|
3373
|
+
|
|
3374
|
+
export type ApproveSlackUserLinkAccessRequest = SlackUserLinkAccessMutationRequest & {
|
|
3375
|
+
role?: string | undefined;
|
|
3376
|
+
permissions: Permission[];
|
|
3377
|
+
};
|
|
3378
|
+
|
|
3379
|
+
export type ListSlackUserLinkAccessRequestsResponse = {
|
|
3380
|
+
requests: SlackUserLinkAccessRequest[];
|
|
3381
|
+
};
|
|
3382
|
+
|
|
2877
3383
|
// --- Goals -------------------------------------------------------------------
|
|
2878
3384
|
|
|
2879
3385
|
export type SessionGoalStatus = "active" | "paused" | "completed";
|
|
2880
3386
|
|
|
2881
3387
|
export type SessionGoalCreatedBy = "api" | "agent" | "scheduled_task";
|
|
2882
3388
|
|
|
3389
|
+
export type SessionGoalMutationPolicy =
|
|
3390
|
+
| "review_changes"
|
|
3391
|
+
| "preserve_intent"
|
|
3392
|
+
| "autonomous_adaptation";
|
|
3393
|
+
|
|
3394
|
+
export type SessionGoalChangeKind = "refinement" | "adaptation" | "replacement";
|
|
3395
|
+
|
|
3396
|
+
export type SessionGoalRevision = {
|
|
3397
|
+
id: string;
|
|
3398
|
+
accountId: string;
|
|
3399
|
+
workspaceId: string;
|
|
3400
|
+
sessionId: string;
|
|
3401
|
+
goalId: string;
|
|
3402
|
+
disposition: "applied" | "proposed" | "rejected";
|
|
3403
|
+
changeKind: SessionGoalChangeKind;
|
|
3404
|
+
baseObjectiveRevision: number;
|
|
3405
|
+
resultObjectiveRevision: number | null;
|
|
3406
|
+
text: string;
|
|
3407
|
+
successCriteria: string | null;
|
|
3408
|
+
mutationPolicy: SessionGoalMutationPolicy;
|
|
3409
|
+
rationale: string;
|
|
3410
|
+
actor: "agent" | "api" | "scheduled_task";
|
|
3411
|
+
actorTurnId: string | null;
|
|
3412
|
+
actorAttemptId: string | null;
|
|
3413
|
+
proposalId: string | null;
|
|
3414
|
+
createdAt: string;
|
|
3415
|
+
};
|
|
3416
|
+
|
|
3417
|
+
export type ApplySessionGoalRevisionRequest = {
|
|
3418
|
+
expectedObjectiveRevision: number;
|
|
3419
|
+
rationale?: string | undefined;
|
|
3420
|
+
};
|
|
3421
|
+
|
|
2883
3422
|
export type SessionGoalContinuationState =
|
|
2884
3423
|
| "inactive"
|
|
2885
3424
|
| "scheduled"
|
|
@@ -2923,6 +3462,8 @@ export type SessionGoal = {
|
|
|
2923
3462
|
pausedReason: string | null;
|
|
2924
3463
|
createdBy: SessionGoalCreatedBy;
|
|
2925
3464
|
version: number;
|
|
3465
|
+
objectiveRevision: number;
|
|
3466
|
+
mutationPolicy: SessionGoalMutationPolicy;
|
|
2926
3467
|
autoContinuations: number;
|
|
2927
3468
|
noProgressStreak: number;
|
|
2928
3469
|
maxAutoContinuations: number | null;
|
|
@@ -2933,10 +3474,18 @@ export type SessionGoal = {
|
|
|
2933
3474
|
updatedAt: string;
|
|
2934
3475
|
};
|
|
2935
3476
|
|
|
2936
|
-
export type UpdateSessionGoalRequest =
|
|
2937
|
-
|
|
2938
|
-
|
|
2939
|
-
|
|
3477
|
+
export type UpdateSessionGoalRequest =
|
|
3478
|
+
| {
|
|
3479
|
+
status: "paused" | "active";
|
|
3480
|
+
rationale?: string | undefined;
|
|
3481
|
+
}
|
|
3482
|
+
| {
|
|
3483
|
+
text: string;
|
|
3484
|
+
successCriteria?: string | null | undefined;
|
|
3485
|
+
mutationPolicy?: SessionGoalMutationPolicy | undefined;
|
|
3486
|
+
rationale: string;
|
|
3487
|
+
expectedObjectiveRevision: number;
|
|
3488
|
+
};
|
|
2940
3489
|
|
|
2941
3490
|
export type UpdateSessionRequest = {
|
|
2942
3491
|
title: string;
|
|
@@ -3005,6 +3554,7 @@ export type SessionCommandReceipt = {
|
|
|
3005
3554
|
export type ComposerDraft = {
|
|
3006
3555
|
revision: number;
|
|
3007
3556
|
text: string;
|
|
3557
|
+
annotations?: DraftTimelineAnnotation[] | undefined;
|
|
3008
3558
|
resources: ResourceRef[];
|
|
3009
3559
|
model: string;
|
|
3010
3560
|
reasoningEffort: ReasoningEffort;
|
|
@@ -3068,7 +3618,8 @@ export type SessionSystemUpdateKind =
|
|
|
3068
3618
|
| "goal_continuation"
|
|
3069
3619
|
| "agent_message"
|
|
3070
3620
|
| "agent_steer_instruction"
|
|
3071
|
-
| "child_terminal_result"
|
|
3621
|
+
| "child_terminal_result"
|
|
3622
|
+
| "media_generation_result";
|
|
3072
3623
|
|
|
3073
3624
|
export type SessionSystemUpdateState =
|
|
3074
3625
|
| "pending"
|
|
@@ -3203,9 +3754,10 @@ export type ScheduledTaskAgentConfigInput = {
|
|
|
3203
3754
|
maxNestedAgentDepth?: number | undefined;
|
|
3204
3755
|
};
|
|
3205
3756
|
|
|
3206
|
-
export type
|
|
3757
|
+
export type CreateAgentScheduledTaskRequest = {
|
|
3207
3758
|
name: string;
|
|
3208
3759
|
schedule: ScheduledTaskScheduleSpec;
|
|
3760
|
+
action?: { kind: "agent_turn" } | undefined;
|
|
3209
3761
|
runMode?: ScheduledTaskRunMode | undefined;
|
|
3210
3762
|
targetSessionId?: string | null | undefined;
|
|
3211
3763
|
overlapPolicy?: ScheduledTaskOverlapPolicy | undefined;
|
|
@@ -3219,12 +3771,26 @@ export type CreateScheduledTaskRequest = {
|
|
|
3219
3771
|
metadata?: Record<string, unknown> | undefined;
|
|
3220
3772
|
};
|
|
3221
3773
|
|
|
3774
|
+
export type CreateKnowledgeSourceSyncScheduledTaskRequest = {
|
|
3775
|
+
name: string;
|
|
3776
|
+
schedule: ScheduledTaskScheduleSpec;
|
|
3777
|
+
action: Extract<ScheduledTaskAction, { kind: "knowledge_source_sync" }>;
|
|
3778
|
+
overlapPolicy?: "skip" | "buffer_one" | undefined;
|
|
3779
|
+
status?: ScheduledTaskStatus | undefined;
|
|
3780
|
+
metadata?: Record<string, unknown> | undefined;
|
|
3781
|
+
};
|
|
3782
|
+
|
|
3783
|
+
export type CreateScheduledTaskRequest =
|
|
3784
|
+
| CreateAgentScheduledTaskRequest
|
|
3785
|
+
| CreateKnowledgeSourceSyncScheduledTaskRequest;
|
|
3786
|
+
|
|
3222
3787
|
export type UpdateScheduledTaskRequest = {
|
|
3223
3788
|
name?: string | undefined;
|
|
3224
3789
|
schedule?: ScheduledTaskScheduleSpec | undefined;
|
|
3225
3790
|
runMode?: ScheduledTaskRunMode | undefined;
|
|
3226
3791
|
targetSessionId?: string | null | undefined;
|
|
3227
3792
|
overlapPolicy?: ScheduledTaskOverlapPolicy | undefined;
|
|
3793
|
+
action?: ScheduledTaskAction | undefined;
|
|
3228
3794
|
agentConfig?: ScheduledTaskAgentConfigInput | undefined;
|
|
3229
3795
|
status?: ScheduledTaskStatus | undefined;
|
|
3230
3796
|
variableSetId?: string | null | undefined;
|
|
@@ -3235,9 +3801,50 @@ export type UpdateScheduledTaskRequest = {
|
|
|
3235
3801
|
metadata?: Record<string, unknown> | undefined;
|
|
3236
3802
|
};
|
|
3237
3803
|
|
|
3238
|
-
export type ScheduledTaskRunStatus = "queued" | "dispatched" | "failed";
|
|
3804
|
+
export type ScheduledTaskRunStatus = "queued" | "dispatched" | "succeeded" | "skipped" | "failed";
|
|
3805
|
+
|
|
3806
|
+
export type KnowledgeSourceSyncRunSummary = {
|
|
3807
|
+
phase: "queued" | "inventory" | "transfer" | "index" | "checkpoint" | "completed" | "failed";
|
|
3808
|
+
scanned: number;
|
|
3809
|
+
imported: number;
|
|
3810
|
+
unchanged: number;
|
|
3811
|
+
skipped: number;
|
|
3812
|
+
failed: number;
|
|
3813
|
+
bytes: number;
|
|
3814
|
+
providerRequests: number;
|
|
3815
|
+
elapsedMs: number;
|
|
3816
|
+
indexed: number;
|
|
3817
|
+
aclPending: number;
|
|
3818
|
+
retryable: boolean;
|
|
3819
|
+
limitReached: "items" | "bytes" | "file_bytes" | "provider_requests" | "elapsed_time" | null;
|
|
3820
|
+
checkpointed: boolean;
|
|
3821
|
+
reconnectRequired: boolean;
|
|
3822
|
+
failures: Array<{
|
|
3823
|
+
externalObjectId: string;
|
|
3824
|
+
code:
|
|
3825
|
+
| "authority_changed"
|
|
3826
|
+
| "connection_reconnect_required"
|
|
3827
|
+
| "provider_unavailable"
|
|
3828
|
+
| "provider_rejected"
|
|
3829
|
+
| "provider_payload_invalid"
|
|
3830
|
+
| "content_unsupported"
|
|
3831
|
+
| "content_too_large"
|
|
3832
|
+
| "resource_limit"
|
|
3833
|
+
| "item_processing_failed"
|
|
3834
|
+
| "indexing_failed"
|
|
3835
|
+
| "internal_failure";
|
|
3836
|
+
retryable: boolean;
|
|
3837
|
+
message: string;
|
|
3838
|
+
}>;
|
|
3839
|
+
};
|
|
3239
3840
|
|
|
3240
|
-
export type ScheduledTaskTriggerType =
|
|
3841
|
+
export type ScheduledTaskTriggerType =
|
|
3842
|
+
| "scheduled"
|
|
3843
|
+
| "manual"
|
|
3844
|
+
| "initial"
|
|
3845
|
+
| "provider_event"
|
|
3846
|
+
| "retry"
|
|
3847
|
+
| "repair";
|
|
3241
3848
|
|
|
3242
3849
|
export type ScheduledTaskRun = {
|
|
3243
3850
|
id: string;
|
|
@@ -3250,6 +3857,10 @@ export type ScheduledTaskRun = {
|
|
|
3250
3857
|
firedAt: string;
|
|
3251
3858
|
sessionId: string | null;
|
|
3252
3859
|
triggerEventId: string | null;
|
|
3860
|
+
actionKind: "agent_turn" | "knowledge_source_sync";
|
|
3861
|
+
knowledgeSyncRunId: string | null;
|
|
3862
|
+
knowledgeSummary: KnowledgeSourceSyncRunSummary | null;
|
|
3863
|
+
completedAt: string | null;
|
|
3253
3864
|
error: string | null;
|
|
3254
3865
|
createdAt: string;
|
|
3255
3866
|
updatedAt: string;
|
|
@@ -3324,6 +3935,40 @@ export type RigCheck = {
|
|
|
3324
3935
|
command: string;
|
|
3325
3936
|
};
|
|
3326
3937
|
|
|
3938
|
+
export type RigProviderImageBuildStatus = "building" | "ready" | "failed" | "unsupported";
|
|
3939
|
+
|
|
3940
|
+
export type RigProviderImage = {
|
|
3941
|
+
backend: SandboxBackend;
|
|
3942
|
+
provider: string;
|
|
3943
|
+
status: RigProviderImageBuildStatus;
|
|
3944
|
+
contentHash: string;
|
|
3945
|
+
setupHash: string;
|
|
3946
|
+
sourceImage: string | null;
|
|
3947
|
+
buildRequestId: string;
|
|
3948
|
+
imageId: string | null;
|
|
3949
|
+
imageDigest: string | null;
|
|
3950
|
+
artifactId: string | null;
|
|
3951
|
+
providerBindingKeyHash: string | null;
|
|
3952
|
+
coldBootValidation?:
|
|
3953
|
+
| {
|
|
3954
|
+
version: 1;
|
|
3955
|
+
checkedAt: string;
|
|
3956
|
+
}
|
|
3957
|
+
| undefined;
|
|
3958
|
+
provenance: {
|
|
3959
|
+
kind: "rig_verification";
|
|
3960
|
+
targetKind: "change" | "version";
|
|
3961
|
+
targetId: string;
|
|
3962
|
+
};
|
|
3963
|
+
startedAt: string;
|
|
3964
|
+
finishedAt: string | null;
|
|
3965
|
+
error: {
|
|
3966
|
+
code: string;
|
|
3967
|
+
message: string;
|
|
3968
|
+
retryable: boolean;
|
|
3969
|
+
} | null;
|
|
3970
|
+
};
|
|
3971
|
+
|
|
3327
3972
|
export type RigVersion = {
|
|
3328
3973
|
id: string;
|
|
3329
3974
|
rigId: string;
|
|
@@ -3334,6 +3979,7 @@ export type RigVersion = {
|
|
|
3334
3979
|
credentialHooks: string[];
|
|
3335
3980
|
defaultVariableSetIds: string[];
|
|
3336
3981
|
changelog: string | null;
|
|
3982
|
+
providerImages: Partial<Record<SandboxBackend, RigProviderImage>>;
|
|
3337
3983
|
createdBy: string | null;
|
|
3338
3984
|
active: boolean;
|
|
3339
3985
|
createdAt: string;
|
|
@@ -3344,23 +3990,53 @@ export type RigVerificationHealth = {
|
|
|
3344
3990
|
lastVerifiedAt: string | null;
|
|
3345
3991
|
};
|
|
3346
3992
|
|
|
3347
|
-
|
|
3993
|
+
/**
|
|
3994
|
+
* Workspace-shared channel organizing root sessions ("workstreams") by work
|
|
3995
|
+
* type in the rail. Pure organizational metadata.
|
|
3996
|
+
*/
|
|
3997
|
+
export type Channel = {
|
|
3348
3998
|
id: string;
|
|
3349
3999
|
accountId: string;
|
|
3350
4000
|
workspaceId: string;
|
|
3351
4001
|
name: string;
|
|
3352
4002
|
description: string | null;
|
|
3353
4003
|
createdBy: string | null;
|
|
3354
|
-
activeVersion: RigVersion | null;
|
|
3355
|
-
activeVersionHealth?: RigVerificationHealth | null;
|
|
3356
|
-
versionCount: number;
|
|
3357
4004
|
createdAt: string;
|
|
3358
4005
|
updatedAt: string;
|
|
3359
4006
|
};
|
|
3360
4007
|
|
|
3361
|
-
export type
|
|
4008
|
+
export type CreateChannelRequest = {
|
|
4009
|
+
name: string;
|
|
4010
|
+
description?: string;
|
|
4011
|
+
};
|
|
3362
4012
|
|
|
3363
|
-
export type
|
|
4013
|
+
export type UpdateChannelRequest = {
|
|
4014
|
+
name?: string;
|
|
4015
|
+
description?: string | null;
|
|
4016
|
+
};
|
|
4017
|
+
|
|
4018
|
+
/** Re-files one session; null moves it back to the unfiled inbox. */
|
|
4019
|
+
export type UpdateSessionChannelRequest = {
|
|
4020
|
+
channelId: string | null;
|
|
4021
|
+
};
|
|
4022
|
+
|
|
4023
|
+
export type Rig = {
|
|
4024
|
+
id: string;
|
|
4025
|
+
accountId: string;
|
|
4026
|
+
workspaceId: string;
|
|
4027
|
+
name: string;
|
|
4028
|
+
description: string | null;
|
|
4029
|
+
createdBy: string | null;
|
|
4030
|
+
activeVersion: RigVersion | null;
|
|
4031
|
+
activeVersionHealth?: RigVerificationHealth | null;
|
|
4032
|
+
versionCount: number;
|
|
4033
|
+
createdAt: string;
|
|
4034
|
+
updatedAt: string;
|
|
4035
|
+
};
|
|
4036
|
+
|
|
4037
|
+
export type RigChangeKind = "setup_append" | "definition_edit";
|
|
4038
|
+
|
|
4039
|
+
export type RigChangeStatus = "proposed" | "verifying" | "merged" | "rejected" | "failed";
|
|
3364
4040
|
|
|
3365
4041
|
export type RigCheckResult = {
|
|
3366
4042
|
name: string;
|
|
@@ -3447,6 +4123,8 @@ export type FileAsset = {
|
|
|
3447
4123
|
export const RETAINED_OUTPUT_DEFAULT_PAGE_BYTES = 256 * 1024;
|
|
3448
4124
|
export const RETAINED_OUTPUT_MAX_PAGE_BYTES = 1024 * 1024;
|
|
3449
4125
|
export const COMPUTER_SCREENSHOT_MAX_BYTES = 32 * 1024 * 1024;
|
|
4126
|
+
export const GENERATED_IMAGE_MAX_BYTES = 64 * 1024 * 1024;
|
|
4127
|
+
export const GENERATED_VIDEO_MAX_BYTES = 512 * 1024 * 1024;
|
|
3450
4128
|
|
|
3451
4129
|
export type RetainedOutputKind =
|
|
3452
4130
|
| "tool_result"
|
|
@@ -3454,6 +4132,8 @@ export type RetainedOutputKind =
|
|
|
3454
4132
|
| "internal_update"
|
|
3455
4133
|
| "event_media"
|
|
3456
4134
|
| "computer_screenshot"
|
|
4135
|
+
| "generated_image"
|
|
4136
|
+
| "generated_video"
|
|
3457
4137
|
| "file";
|
|
3458
4138
|
|
|
3459
4139
|
export type RetainedOutputUnavailableReason =
|
|
@@ -3497,6 +4177,160 @@ export type RetainedArtifactUnavailable = {
|
|
|
3497
4177
|
|
|
3498
4178
|
export type RetainedArtifactMetadata = RetainedArtifactReference | RetainedArtifactUnavailable;
|
|
3499
4179
|
|
|
4180
|
+
export type GeneratedImageReceipt = {
|
|
4181
|
+
type: "generated_image";
|
|
4182
|
+
artifact: RetainedArtifactReference;
|
|
4183
|
+
sandboxPath: string;
|
|
4184
|
+
};
|
|
4185
|
+
|
|
4186
|
+
export type VideoGenerationSourceMode =
|
|
4187
|
+
| "text"
|
|
4188
|
+
| "first_frame"
|
|
4189
|
+
| "first_and_last_frames"
|
|
4190
|
+
| "image_reference"
|
|
4191
|
+
| "video_reference";
|
|
4192
|
+
|
|
4193
|
+
export type VideoGenerationResolution = "480p" | "720p";
|
|
4194
|
+
|
|
4195
|
+
export type VideoGenerationAspectRatio =
|
|
4196
|
+
| "16:9"
|
|
4197
|
+
| "4:3"
|
|
4198
|
+
| "1:1"
|
|
4199
|
+
| "3:4"
|
|
4200
|
+
| "9:16"
|
|
4201
|
+
| "21:9"
|
|
4202
|
+
| "adaptive";
|
|
4203
|
+
|
|
4204
|
+
export type VideoGenerationModelCapability = {
|
|
4205
|
+
modelId: string;
|
|
4206
|
+
label: string;
|
|
4207
|
+
providerLabel: string;
|
|
4208
|
+
sourceModes: VideoGenerationSourceMode[];
|
|
4209
|
+
resolutions: VideoGenerationResolution[];
|
|
4210
|
+
aspectRatios: VideoGenerationAspectRatio[];
|
|
4211
|
+
duration: {
|
|
4212
|
+
minSeconds: number;
|
|
4213
|
+
maxSeconds: number;
|
|
4214
|
+
stepSeconds: number;
|
|
4215
|
+
};
|
|
4216
|
+
supportsAudio: boolean;
|
|
4217
|
+
};
|
|
4218
|
+
|
|
4219
|
+
export type VideoGenerationCapabilities = {
|
|
4220
|
+
schemaVersion: 1;
|
|
4221
|
+
capabilityRevision: string;
|
|
4222
|
+
defaultModelId: string;
|
|
4223
|
+
models: VideoGenerationModelCapability[];
|
|
4224
|
+
};
|
|
4225
|
+
|
|
4226
|
+
export type VideoGenerationPolicy = {
|
|
4227
|
+
schemaVersion: 1;
|
|
4228
|
+
revision: number;
|
|
4229
|
+
fundingSource: VideoGenerationFundingSource;
|
|
4230
|
+
enabledModelIds: string[];
|
|
4231
|
+
defaultModelId: string | null;
|
|
4232
|
+
};
|
|
4233
|
+
|
|
4234
|
+
export type UpdateVideoGenerationPolicyRequest = {
|
|
4235
|
+
expectedRevision: number;
|
|
4236
|
+
fundingSource: VideoGenerationFundingSource;
|
|
4237
|
+
enabledModelIds: string[];
|
|
4238
|
+
defaultModelId: string | null;
|
|
4239
|
+
};
|
|
4240
|
+
|
|
4241
|
+
export type VideoGenerationFundingSource =
|
|
4242
|
+
| "opengeni_credits"
|
|
4243
|
+
| "workspace_gateway"
|
|
4244
|
+
| "supergrok_subscription";
|
|
4245
|
+
|
|
4246
|
+
export type VideoGenerationFundingOption = {
|
|
4247
|
+
source: VideoGenerationFundingSource;
|
|
4248
|
+
label: string;
|
|
4249
|
+
description: string;
|
|
4250
|
+
available: boolean;
|
|
4251
|
+
unavailableReason: string | null;
|
|
4252
|
+
};
|
|
4253
|
+
|
|
4254
|
+
export type WorkspaceVideoGenerationSettings = {
|
|
4255
|
+
schemaVersion: 1;
|
|
4256
|
+
policy: VideoGenerationPolicy;
|
|
4257
|
+
fundingOptions: VideoGenerationFundingOption[];
|
|
4258
|
+
availableModels: VideoGenerationModelCapability[];
|
|
4259
|
+
capabilities: VideoGenerationCapabilities | null;
|
|
4260
|
+
};
|
|
4261
|
+
|
|
4262
|
+
export type GeneratedVideoFacts = {
|
|
4263
|
+
durationSeconds: number;
|
|
4264
|
+
width: number;
|
|
4265
|
+
height: number;
|
|
4266
|
+
fps: number;
|
|
4267
|
+
hasAudio: boolean;
|
|
4268
|
+
videoCodec: "h264";
|
|
4269
|
+
audioCodec: "aac" | null;
|
|
4270
|
+
};
|
|
4271
|
+
|
|
4272
|
+
export type GeneratedVideoReceipt = {
|
|
4273
|
+
type: "generated_video";
|
|
4274
|
+
schemaVersion: 1;
|
|
4275
|
+
operationId: string;
|
|
4276
|
+
artifact: RetainedArtifactReference;
|
|
4277
|
+
video: GeneratedVideoFacts;
|
|
4278
|
+
sandboxPath: string;
|
|
4279
|
+
};
|
|
4280
|
+
|
|
4281
|
+
export type VideoGenerationTerminalFailureStatus =
|
|
4282
|
+
| "provider_failed"
|
|
4283
|
+
| "retention_failed"
|
|
4284
|
+
| "cancelled_before_submit"
|
|
4285
|
+
| "outcome_unknown";
|
|
4286
|
+
|
|
4287
|
+
export type MediaGenerationResult =
|
|
4288
|
+
| {
|
|
4289
|
+
type: "media_generation_result";
|
|
4290
|
+
schemaVersion: 1;
|
|
4291
|
+
status: "ready";
|
|
4292
|
+
operationId: string;
|
|
4293
|
+
receipt: GeneratedVideoReceipt;
|
|
4294
|
+
}
|
|
4295
|
+
| {
|
|
4296
|
+
type: "media_generation_result";
|
|
4297
|
+
schemaVersion: 1;
|
|
4298
|
+
status: VideoGenerationTerminalFailureStatus;
|
|
4299
|
+
operationId: string;
|
|
4300
|
+
boundedPublicReason: string;
|
|
4301
|
+
};
|
|
4302
|
+
|
|
4303
|
+
export type VideoGenerationPublicStatus =
|
|
4304
|
+
| "preparing"
|
|
4305
|
+
| "prepared"
|
|
4306
|
+
| "accepted"
|
|
4307
|
+
| "provider_started"
|
|
4308
|
+
| "retaining"
|
|
4309
|
+
| "completed"
|
|
4310
|
+
| VideoGenerationTerminalFailureStatus;
|
|
4311
|
+
|
|
4312
|
+
export type VideoGenerationOperationSummary = {
|
|
4313
|
+
schemaVersion: 1;
|
|
4314
|
+
operationId: string;
|
|
4315
|
+
modelId: string;
|
|
4316
|
+
status: VideoGenerationPublicStatus;
|
|
4317
|
+
createdAt: string;
|
|
4318
|
+
updatedAt: string;
|
|
4319
|
+
terminal: MediaGenerationResult | null;
|
|
4320
|
+
};
|
|
4321
|
+
|
|
4322
|
+
/** Ephemeral source minted for native browser playback; never persist the URL. */
|
|
4323
|
+
export type VideoArtifactPlaybackSource = {
|
|
4324
|
+
schemaVersion: 1;
|
|
4325
|
+
artifactId: string;
|
|
4326
|
+
url: string;
|
|
4327
|
+
expiresAt: string;
|
|
4328
|
+
contentType: "video/mp4";
|
|
4329
|
+
sizeBytes: number;
|
|
4330
|
+
sha256: string;
|
|
4331
|
+
acceptRanges: "bytes";
|
|
4332
|
+
};
|
|
4333
|
+
|
|
3500
4334
|
export type RetainedArtifactContentOptions = {
|
|
3501
4335
|
/** One RFC-style bytes range, for example `bytes=1048576-2097151`. */
|
|
3502
4336
|
range?: string | undefined;
|
|
@@ -3512,18 +4346,25 @@ export type RetainedArtifactContent = {
|
|
|
3512
4346
|
acceptRanges: "bytes";
|
|
3513
4347
|
};
|
|
3514
4348
|
|
|
3515
|
-
export type
|
|
4349
|
+
export type RetainedArtifactDownloadOptions = {
|
|
3516
4350
|
signal?: AbortSignal | undefined;
|
|
3517
4351
|
/** Retry transient range failures; bounded to 0..3, default 2. */
|
|
3518
4352
|
maxRetries?: number | undefined;
|
|
3519
4353
|
};
|
|
3520
4354
|
|
|
4355
|
+
export type RetainedScreenshotDownloadOptions = RetainedArtifactDownloadOptions;
|
|
4356
|
+
|
|
3521
4357
|
export type RetainedScreenshotDownload = {
|
|
3522
4358
|
metadata: RetainedArtifactMetadata;
|
|
3523
4359
|
/** Null when metadata truth says the screenshot is unavailable. */
|
|
3524
4360
|
bytes: Uint8Array | null;
|
|
3525
4361
|
};
|
|
3526
4362
|
|
|
4363
|
+
export type RetainedArtifactDownload = {
|
|
4364
|
+
artifact: RetainedArtifactReference;
|
|
4365
|
+
bytes: Uint8Array;
|
|
4366
|
+
};
|
|
4367
|
+
|
|
3527
4368
|
export type CreateFileUploadRequest = {
|
|
3528
4369
|
filename: string;
|
|
3529
4370
|
contentType: string;
|
|
@@ -3867,6 +4708,49 @@ export type CapabilityPackVariableSetSpec = {
|
|
|
3867
4708
|
required: boolean;
|
|
3868
4709
|
};
|
|
3869
4710
|
|
|
4711
|
+
export type CapabilityPackComponentReference =
|
|
4712
|
+
| {
|
|
4713
|
+
key: string;
|
|
4714
|
+
kind: "plugin";
|
|
4715
|
+
pluginKey: string;
|
|
4716
|
+
version: string;
|
|
4717
|
+
manifestDigest: string;
|
|
4718
|
+
required: boolean;
|
|
4719
|
+
}
|
|
4720
|
+
| {
|
|
4721
|
+
key: string;
|
|
4722
|
+
kind: "skill";
|
|
4723
|
+
capabilityId: string;
|
|
4724
|
+
contentSha256: string;
|
|
4725
|
+
required: boolean;
|
|
4726
|
+
}
|
|
4727
|
+
| {
|
|
4728
|
+
key: string;
|
|
4729
|
+
kind: "integration";
|
|
4730
|
+
capabilityId: string;
|
|
4731
|
+
instanceKey: string;
|
|
4732
|
+
revisionId: string;
|
|
4733
|
+
contentSha256: string;
|
|
4734
|
+
required: boolean;
|
|
4735
|
+
}
|
|
4736
|
+
| {
|
|
4737
|
+
key: string;
|
|
4738
|
+
kind: "facet";
|
|
4739
|
+
capabilityId: string;
|
|
4740
|
+
instanceKey: string;
|
|
4741
|
+
facetKey: string;
|
|
4742
|
+
bindingKey: string;
|
|
4743
|
+
configDigest: string;
|
|
4744
|
+
required: boolean;
|
|
4745
|
+
};
|
|
4746
|
+
|
|
4747
|
+
export type CapabilityPackRigRequirement = {
|
|
4748
|
+
description?: string | undefined;
|
|
4749
|
+
required: boolean;
|
|
4750
|
+
rigId?: string | undefined;
|
|
4751
|
+
requireVerified: boolean;
|
|
4752
|
+
};
|
|
4753
|
+
|
|
3870
4754
|
export type CapabilityPack = {
|
|
3871
4755
|
id: string;
|
|
3872
4756
|
name: string;
|
|
@@ -3881,6 +4765,8 @@ export type CapabilityPack = {
|
|
|
3881
4765
|
}
|
|
3882
4766
|
| undefined;
|
|
3883
4767
|
skills: CapabilityPackSkill[];
|
|
4768
|
+
components: CapabilityPackComponentReference[];
|
|
4769
|
+
rig?: CapabilityPackRigRequirement | undefined;
|
|
3884
4770
|
tools: ToolRef[];
|
|
3885
4771
|
connectors: CapabilityPackConnector[];
|
|
3886
4772
|
knowledge: CapabilityPackKnowledge[];
|
|
@@ -3910,6 +4796,52 @@ export type RegisterCapabilityPackRequest = {
|
|
|
3910
4796
|
files: CapabilityPackSkillFile[];
|
|
3911
4797
|
}[]
|
|
3912
4798
|
| undefined;
|
|
4799
|
+
components?:
|
|
4800
|
+
| (
|
|
4801
|
+
| {
|
|
4802
|
+
key: string;
|
|
4803
|
+
kind: "plugin";
|
|
4804
|
+
pluginKey: string;
|
|
4805
|
+
version: string;
|
|
4806
|
+
manifestDigest: string;
|
|
4807
|
+
required?: boolean | undefined;
|
|
4808
|
+
}
|
|
4809
|
+
| {
|
|
4810
|
+
key: string;
|
|
4811
|
+
kind: "skill";
|
|
4812
|
+
capabilityId: string;
|
|
4813
|
+
contentSha256: string;
|
|
4814
|
+
required?: boolean | undefined;
|
|
4815
|
+
}
|
|
4816
|
+
| {
|
|
4817
|
+
key: string;
|
|
4818
|
+
kind: "integration";
|
|
4819
|
+
capabilityId: string;
|
|
4820
|
+
instanceKey: string;
|
|
4821
|
+
revisionId: string;
|
|
4822
|
+
contentSha256: string;
|
|
4823
|
+
required?: boolean | undefined;
|
|
4824
|
+
}
|
|
4825
|
+
| {
|
|
4826
|
+
key: string;
|
|
4827
|
+
kind: "facet";
|
|
4828
|
+
capabilityId: string;
|
|
4829
|
+
instanceKey: string;
|
|
4830
|
+
facetKey: string;
|
|
4831
|
+
bindingKey: string;
|
|
4832
|
+
configDigest: string;
|
|
4833
|
+
required?: boolean | undefined;
|
|
4834
|
+
}
|
|
4835
|
+
)[]
|
|
4836
|
+
| undefined;
|
|
4837
|
+
rig?:
|
|
4838
|
+
| {
|
|
4839
|
+
description?: string | undefined;
|
|
4840
|
+
required?: boolean | undefined;
|
|
4841
|
+
rigId?: string | undefined;
|
|
4842
|
+
requireVerified?: boolean | undefined;
|
|
4843
|
+
}
|
|
4844
|
+
| undefined;
|
|
3913
4845
|
tools?: ToolRef[] | undefined;
|
|
3914
4846
|
connectors?:
|
|
3915
4847
|
| {
|
|
@@ -3961,7 +4893,7 @@ export type WorkspaceRegisteredPack = {
|
|
|
3961
4893
|
updatedAt: string;
|
|
3962
4894
|
};
|
|
3963
4895
|
|
|
3964
|
-
export type PackInstallationStatus = "active" | "disabled";
|
|
4896
|
+
export type PackInstallationStatus = "installing" | "active" | "needs_attention" | "disabled";
|
|
3965
4897
|
|
|
3966
4898
|
export type PackInstallation = {
|
|
3967
4899
|
id: string;
|
|
@@ -3969,6 +4901,11 @@ export type PackInstallation = {
|
|
|
3969
4901
|
workspaceId: string;
|
|
3970
4902
|
packId: string;
|
|
3971
4903
|
status: PackInstallationStatus;
|
|
4904
|
+
version: number;
|
|
4905
|
+
manifestSnapshot: CapabilityPack | null;
|
|
4906
|
+
manifestDigest: string | null;
|
|
4907
|
+
selectedRigId: string | null;
|
|
4908
|
+
installedBySubjectId: string | null;
|
|
3972
4909
|
metadata: Record<string, unknown>;
|
|
3973
4910
|
enabledAt: string;
|
|
3974
4911
|
updatedAt: string;
|
|
@@ -3981,6 +4918,82 @@ export type EnablePackRequest = {
|
|
|
3981
4918
|
metadata?: Record<string, unknown> | undefined;
|
|
3982
4919
|
};
|
|
3983
4920
|
|
|
4921
|
+
export type PackComponentResolutionStatus = "ready" | "missing" | "mismatch";
|
|
4922
|
+
|
|
4923
|
+
export type PackComponentResolution = {
|
|
4924
|
+
key: string;
|
|
4925
|
+
kind: "plugin" | "skill" | "integration" | "facet" | "inline_skill";
|
|
4926
|
+
capabilityId: string;
|
|
4927
|
+
required: boolean;
|
|
4928
|
+
status: PackComponentResolutionStatus;
|
|
4929
|
+
expectedDigest: string;
|
|
4930
|
+
actualDigest: string | null;
|
|
4931
|
+
resolvedId: string | null;
|
|
4932
|
+
label: string;
|
|
4933
|
+
};
|
|
4934
|
+
|
|
4935
|
+
export type PackRigResolution = {
|
|
4936
|
+
required: boolean;
|
|
4937
|
+
status: "not_required" | "ready" | "missing" | "mismatch" | "unverified";
|
|
4938
|
+
requestedRigId: string | null;
|
|
4939
|
+
rigId: string | null;
|
|
4940
|
+
rigVersionId: string | null;
|
|
4941
|
+
name: string | null;
|
|
4942
|
+
image: string | null;
|
|
4943
|
+
};
|
|
4944
|
+
|
|
4945
|
+
export type PreviewPackInstallationRequest = {
|
|
4946
|
+
rigId?: string | undefined;
|
|
4947
|
+
variableSetId?: string | undefined;
|
|
4948
|
+
};
|
|
4949
|
+
|
|
4950
|
+
export type PackInstallationPreview = {
|
|
4951
|
+
packId: string;
|
|
4952
|
+
packVersion: string;
|
|
4953
|
+
manifestDigest: string;
|
|
4954
|
+
installationVersion: number | null;
|
|
4955
|
+
action: "install" | "update" | "repair";
|
|
4956
|
+
ready: boolean;
|
|
4957
|
+
blockers: string[];
|
|
4958
|
+
components: PackComponentResolution[];
|
|
4959
|
+
rig: PackRigResolution;
|
|
4960
|
+
variableSetId: string | null;
|
|
4961
|
+
legacyInlineSkillCount: number;
|
|
4962
|
+
legacySandboxImage: string | null;
|
|
4963
|
+
};
|
|
4964
|
+
|
|
4965
|
+
export type InstallPackRequest = {
|
|
4966
|
+
expectedManifestDigest: string;
|
|
4967
|
+
expectedInstallationVersion?: number | undefined;
|
|
4968
|
+
rigId?: string | undefined;
|
|
4969
|
+
variableSetId?: string | undefined;
|
|
4970
|
+
idempotencyKey: string;
|
|
4971
|
+
metadata?: Record<string, unknown> | undefined;
|
|
4972
|
+
};
|
|
4973
|
+
|
|
4974
|
+
export type PackUninstallPreview = {
|
|
4975
|
+
packId: string;
|
|
4976
|
+
installed: boolean;
|
|
4977
|
+
installationVersion: number | null;
|
|
4978
|
+
components: Array<{
|
|
4979
|
+
key: string;
|
|
4980
|
+
kind: "plugin" | "skill" | "integration" | "facet" | "inline_skill";
|
|
4981
|
+
capabilityId: string;
|
|
4982
|
+
retainedByOtherOwners: boolean;
|
|
4983
|
+
}>;
|
|
4984
|
+
};
|
|
4985
|
+
|
|
4986
|
+
export type UninstallPackRequest = {
|
|
4987
|
+
expectedInstallationVersion: number;
|
|
4988
|
+
idempotencyKey: string;
|
|
4989
|
+
};
|
|
4990
|
+
|
|
4991
|
+
export type UninstallPackResult = {
|
|
4992
|
+
packId: string;
|
|
4993
|
+
status: "not_installed" | "uninstalled";
|
|
4994
|
+
retainedComponents: string[];
|
|
4995
|
+
};
|
|
4996
|
+
|
|
3984
4997
|
export type ListPacksResponse = {
|
|
3985
4998
|
packs: CapabilityPack[];
|
|
3986
4999
|
installations: PackInstallation[];
|
|
@@ -4009,6 +5022,34 @@ export type CapabilityCatalogAuthKind = "oauth2" | "api_key" | "none" | "unknown
|
|
|
4009
5022
|
|
|
4010
5023
|
export type CapabilityCatalogTier = "verified" | "community";
|
|
4011
5024
|
|
|
5025
|
+
export type CapabilityLifecycleStatus =
|
|
5026
|
+
| "available"
|
|
5027
|
+
| "installed"
|
|
5028
|
+
| "connected"
|
|
5029
|
+
| "ready"
|
|
5030
|
+
| "needs_attention"
|
|
5031
|
+
| "unavailable"
|
|
5032
|
+
| "managed";
|
|
5033
|
+
|
|
5034
|
+
export type CapabilityReadiness = "ready" | "setup_required" | "attention" | "unavailable";
|
|
5035
|
+
|
|
5036
|
+
export type CapabilityAction =
|
|
5037
|
+
| "install"
|
|
5038
|
+
| "connect"
|
|
5039
|
+
| "configure"
|
|
5040
|
+
| "update"
|
|
5041
|
+
| "repair"
|
|
5042
|
+
| "disconnect"
|
|
5043
|
+
| "uninstall"
|
|
5044
|
+
| "inspect";
|
|
5045
|
+
|
|
5046
|
+
export type CapabilityLifecycle = {
|
|
5047
|
+
status: CapabilityLifecycleStatus;
|
|
5048
|
+
readiness: CapabilityReadiness;
|
|
5049
|
+
detail: string | null;
|
|
5050
|
+
managedBy: "deployment" | "platform" | "workspace" | null;
|
|
5051
|
+
};
|
|
5052
|
+
|
|
4012
5053
|
export type CapabilityRuntime = {
|
|
4013
5054
|
available: boolean;
|
|
4014
5055
|
mcpServerId?: string | undefined;
|
|
@@ -4055,7 +5096,11 @@ export type CapabilityCatalogItem = {
|
|
|
4055
5096
|
staleAt: string | null;
|
|
4056
5097
|
tools: ToolRef[];
|
|
4057
5098
|
runtime: CapabilityRuntime;
|
|
5099
|
+
lifecycle: CapabilityLifecycle;
|
|
5100
|
+
actions: CapabilityAction[];
|
|
5101
|
+
/** @deprecated Use lifecycle and actions. */
|
|
4058
5102
|
enabled: boolean;
|
|
5103
|
+
/** @deprecated Use lifecycle.detail. */
|
|
4059
5104
|
enabledReason: string | null;
|
|
4060
5105
|
/** The connection backing this enabled installation, or null when none is involved. */
|
|
4061
5106
|
connectionRef: {
|
|
@@ -4089,7 +5134,7 @@ export type CapabilityCatalogResponse = {
|
|
|
4089
5134
|
|
|
4090
5135
|
export type CreateCapabilityCatalogItemRequest = {
|
|
4091
5136
|
id?: string | undefined;
|
|
4092
|
-
kind:
|
|
5137
|
+
kind: "mcp";
|
|
4093
5138
|
source?: CapabilitySource | undefined;
|
|
4094
5139
|
name: string;
|
|
4095
5140
|
description?: string | undefined;
|
|
@@ -4112,14 +5157,6 @@ export type EnableCapabilityRequest = {
|
|
|
4112
5157
|
* API (responses expose header names only).
|
|
4113
5158
|
*/
|
|
4114
5159
|
headers?: Record<string, string> | undefined;
|
|
4115
|
-
/**
|
|
4116
|
-
* Initial variableSet attachment for kind=pack capabilities — mirrors the
|
|
4117
|
-
* dedicated POST /packs/:id/enable body. Required to enable an
|
|
4118
|
-
* variableSet.required pack through this unified path; ignored otherwise.
|
|
4119
|
-
*/
|
|
4120
|
-
variableSetId?: string | undefined;
|
|
4121
|
-
/** @deprecated use variableSetId */
|
|
4122
|
-
environmentId?: string | undefined;
|
|
4123
5160
|
};
|
|
4124
5161
|
|
|
4125
5162
|
export type DiscoverMcpCapabilitiesResponse = {
|
|
@@ -4128,6 +5165,491 @@ export type DiscoverMcpCapabilitiesResponse = {
|
|
|
4128
5165
|
sourceUrl: string;
|
|
4129
5166
|
};
|
|
4130
5167
|
|
|
5168
|
+
export type SkillImportSource = "github" | "skills_sh";
|
|
5169
|
+
|
|
5170
|
+
export type SkillInstallationSource = "library" | "github" | "skills_sh" | "pack";
|
|
5171
|
+
|
|
5172
|
+
export type PreviewSkillImportRequest = {
|
|
5173
|
+
url: string;
|
|
5174
|
+
};
|
|
5175
|
+
|
|
5176
|
+
export type SkillImportFileSummary = {
|
|
5177
|
+
path: string;
|
|
5178
|
+
byteSize: number;
|
|
5179
|
+
contentSha256: string;
|
|
5180
|
+
};
|
|
5181
|
+
|
|
5182
|
+
export type SkillImportPreview = {
|
|
5183
|
+
source: SkillImportSource;
|
|
5184
|
+
sourceUrl: string;
|
|
5185
|
+
repositoryUrl: string;
|
|
5186
|
+
owner: string;
|
|
5187
|
+
repository: string;
|
|
5188
|
+
sourcePath: string;
|
|
5189
|
+
sourceCommit: string;
|
|
5190
|
+
name: string;
|
|
5191
|
+
description: string;
|
|
5192
|
+
contentSha256: string;
|
|
5193
|
+
totalBytes: number;
|
|
5194
|
+
files: SkillImportFileSummary[];
|
|
5195
|
+
warnings: string[];
|
|
5196
|
+
installed: boolean;
|
|
5197
|
+
installationVersion: number | null;
|
|
5198
|
+
};
|
|
5199
|
+
|
|
5200
|
+
export type InstallSkillRequest = {
|
|
5201
|
+
url: string;
|
|
5202
|
+
expectedSourceCommit: string;
|
|
5203
|
+
expectedContentSha256: string;
|
|
5204
|
+
expectedInstallationVersion?: number | undefined;
|
|
5205
|
+
};
|
|
5206
|
+
|
|
5207
|
+
export type InstallLibrarySkillRequest = {
|
|
5208
|
+
expectedVersion: string;
|
|
5209
|
+
expectedContentSha256: string;
|
|
5210
|
+
expectedInstallationVersion?: number | undefined;
|
|
5211
|
+
};
|
|
5212
|
+
|
|
5213
|
+
export type InstalledSkill = {
|
|
5214
|
+
capabilityId: string;
|
|
5215
|
+
pluginId: string;
|
|
5216
|
+
pluginVersionId: string;
|
|
5217
|
+
facetId: string;
|
|
5218
|
+
pluginInstallationId: string;
|
|
5219
|
+
facetInstallationId: string;
|
|
5220
|
+
installationVersion: number;
|
|
5221
|
+
source: SkillInstallationSource;
|
|
5222
|
+
version: string;
|
|
5223
|
+
sourceUrl: string;
|
|
5224
|
+
sourceCommit: string;
|
|
5225
|
+
contentSha256: string;
|
|
5226
|
+
name: string;
|
|
5227
|
+
status: "installed";
|
|
5228
|
+
};
|
|
5229
|
+
|
|
5230
|
+
export type CapabilityComponentOwner = {
|
|
5231
|
+
kind: "direct" | "plugin" | "pack" | "migration";
|
|
5232
|
+
id: string;
|
|
5233
|
+
removable: boolean;
|
|
5234
|
+
};
|
|
5235
|
+
|
|
5236
|
+
export type InstalledSkillSummary = {
|
|
5237
|
+
capabilityId: string;
|
|
5238
|
+
pluginKey: string;
|
|
5239
|
+
installationVersion: number;
|
|
5240
|
+
name: string;
|
|
5241
|
+
description: string;
|
|
5242
|
+
category: string;
|
|
5243
|
+
tags: string[];
|
|
5244
|
+
provenance: string;
|
|
5245
|
+
source: SkillInstallationSource;
|
|
5246
|
+
version: string;
|
|
5247
|
+
sourceUrl: string;
|
|
5248
|
+
repositoryUrl: string;
|
|
5249
|
+
sourceCommit: string;
|
|
5250
|
+
sourcePath: string;
|
|
5251
|
+
contentSha256: string;
|
|
5252
|
+
fileCount: number;
|
|
5253
|
+
totalBytes: number;
|
|
5254
|
+
license: string | null;
|
|
5255
|
+
installedAt: string;
|
|
5256
|
+
updatedAt: string;
|
|
5257
|
+
owners: CapabilityComponentOwner[];
|
|
5258
|
+
};
|
|
5259
|
+
|
|
5260
|
+
export type ListInstalledSkillsResponse = {
|
|
5261
|
+
skills: InstalledSkillSummary[];
|
|
5262
|
+
};
|
|
5263
|
+
|
|
5264
|
+
export type SkillUninstallPreview = {
|
|
5265
|
+
capabilityId: string;
|
|
5266
|
+
installed: boolean;
|
|
5267
|
+
installationVersion: number | null;
|
|
5268
|
+
directOwner: CapabilityComponentOwner | null;
|
|
5269
|
+
remainingOwners: CapabilityComponentOwner[];
|
|
5270
|
+
removesRuntimeSkill: boolean;
|
|
5271
|
+
};
|
|
5272
|
+
|
|
5273
|
+
export type UninstallSkillRequest = {
|
|
5274
|
+
expectedInstallationVersion: number;
|
|
5275
|
+
};
|
|
5276
|
+
|
|
5277
|
+
export type UninstallSkillResult = {
|
|
5278
|
+
capabilityId: string;
|
|
5279
|
+
status: "not_installed" | "uninstalled" | "retained_by_other_owners";
|
|
5280
|
+
remainingOwners: CapabilityComponentOwner[];
|
|
5281
|
+
};
|
|
5282
|
+
|
|
5283
|
+
export type ApiIntegrationProtocol = "openapi" | "graphql";
|
|
5284
|
+
export type IntegrationDefinitionProvenance = "curated" | "workspace";
|
|
5285
|
+
|
|
5286
|
+
export type IntegrationFacetKind =
|
|
5287
|
+
| "tools"
|
|
5288
|
+
| "knowledge_source"
|
|
5289
|
+
| "inbound_trigger"
|
|
5290
|
+
| "delivery_destination"
|
|
5291
|
+
| "identity_link";
|
|
5292
|
+
|
|
5293
|
+
export type IntegrationFacetStatus = "active" | "paused" | "needs_attention" | "disabled";
|
|
5294
|
+
|
|
5295
|
+
export type IntegrationFacetDefinitionSummary = {
|
|
5296
|
+
facetKey: string;
|
|
5297
|
+
kind: Exclude<IntegrationFacetKind, "tools">;
|
|
5298
|
+
configSchema: Record<string, unknown>;
|
|
5299
|
+
capabilities: Record<string, unknown>;
|
|
5300
|
+
};
|
|
5301
|
+
|
|
5302
|
+
export type IntegrationFacetBindingSummary = {
|
|
5303
|
+
id: string;
|
|
5304
|
+
facetKey: string;
|
|
5305
|
+
kind: Exclude<IntegrationFacetKind, "tools">;
|
|
5306
|
+
bindingKey: string;
|
|
5307
|
+
displayName: string;
|
|
5308
|
+
connectionId: string | null;
|
|
5309
|
+
status: IntegrationFacetStatus;
|
|
5310
|
+
config: Record<string, unknown>;
|
|
5311
|
+
version: number;
|
|
5312
|
+
hasCursor: boolean;
|
|
5313
|
+
lastSuccessAt: string | null;
|
|
5314
|
+
lastErrorCode: string | null;
|
|
5315
|
+
createdAt: string;
|
|
5316
|
+
updatedAt: string;
|
|
5317
|
+
};
|
|
5318
|
+
|
|
5319
|
+
export type IntegrationInstanceFacetsResponse = {
|
|
5320
|
+
capabilityId: string;
|
|
5321
|
+
instanceKey: string;
|
|
5322
|
+
providerDomain: string;
|
|
5323
|
+
connectionId: string | null;
|
|
5324
|
+
facets: {
|
|
5325
|
+
definition: IntegrationFacetDefinitionSummary;
|
|
5326
|
+
binding: IntegrationFacetBindingSummary | null;
|
|
5327
|
+
}[];
|
|
5328
|
+
};
|
|
5329
|
+
|
|
5330
|
+
export type UpsertIntegrationFacetRequest = {
|
|
5331
|
+
displayName: string;
|
|
5332
|
+
config?: Record<string, unknown> | undefined;
|
|
5333
|
+
expectedVersion?: number | undefined;
|
|
5334
|
+
idempotencyKey: string;
|
|
5335
|
+
};
|
|
5336
|
+
|
|
5337
|
+
export type MutateIntegrationFacetRequest = {
|
|
5338
|
+
expectedVersion: number;
|
|
5339
|
+
idempotencyKey: string;
|
|
5340
|
+
};
|
|
5341
|
+
|
|
5342
|
+
export type IntegrationFacetMutationResult = {
|
|
5343
|
+
capabilityId: string;
|
|
5344
|
+
instanceKey: string;
|
|
5345
|
+
facetKey: string;
|
|
5346
|
+
status: "configured" | "paused" | "active";
|
|
5347
|
+
binding: IntegrationFacetBindingSummary;
|
|
5348
|
+
};
|
|
5349
|
+
|
|
5350
|
+
export type IntegrationFacetRemovalResult = {
|
|
5351
|
+
capabilityId: string;
|
|
5352
|
+
instanceKey: string;
|
|
5353
|
+
facetKey: string;
|
|
5354
|
+
status: "not_configured" | "removed" | "retained_by_other_owners";
|
|
5355
|
+
binding: IntegrationFacetBindingSummary | null;
|
|
5356
|
+
remainingOwners: CapabilityComponentOwner[];
|
|
5357
|
+
};
|
|
5358
|
+
|
|
5359
|
+
export type IntegrationDefinitionSummary = {
|
|
5360
|
+
id: string;
|
|
5361
|
+
name: string;
|
|
5362
|
+
summary: string;
|
|
5363
|
+
protocol: "openapi";
|
|
5364
|
+
provider: {
|
|
5365
|
+
id: "google" | "microsoft";
|
|
5366
|
+
domain: string;
|
|
5367
|
+
};
|
|
5368
|
+
authentication: {
|
|
5369
|
+
kind: "oauth2";
|
|
5370
|
+
scopes: string[];
|
|
5371
|
+
};
|
|
5372
|
+
facets: IntegrationFacetDefinitionSummary[];
|
|
5373
|
+
};
|
|
5374
|
+
|
|
5375
|
+
export type ListIntegrationDefinitionsResponse = {
|
|
5376
|
+
definitions: IntegrationDefinitionSummary[];
|
|
5377
|
+
};
|
|
5378
|
+
|
|
5379
|
+
export type IntegrationSource =
|
|
5380
|
+
| { kind: "definition"; definitionId: string }
|
|
5381
|
+
| { kind: "openapi"; url: string; baseUrl?: string | undefined }
|
|
5382
|
+
| { kind: "graphql"; endpoint: string; name?: string | undefined }
|
|
5383
|
+
| { kind: "auto"; url: string; baseUrl?: string | undefined };
|
|
5384
|
+
|
|
5385
|
+
export type PreviewApiIntegrationRequest = {
|
|
5386
|
+
source: IntegrationSource;
|
|
5387
|
+
connectionId?: string | undefined;
|
|
5388
|
+
ownership?: ConnectionOwnership | undefined;
|
|
5389
|
+
};
|
|
5390
|
+
|
|
5391
|
+
export type ApiIntegrationOAuthStartRequest = {
|
|
5392
|
+
definitionId: string;
|
|
5393
|
+
ownership?: ConnectionOwnership | undefined;
|
|
5394
|
+
connectionId?: string | undefined;
|
|
5395
|
+
returnPath?: string | undefined;
|
|
5396
|
+
};
|
|
5397
|
+
|
|
5398
|
+
export type ApiIntegrationAuthPreview =
|
|
5399
|
+
| { kind: "none" }
|
|
5400
|
+
| { kind: "oauth2"; providerDomain: string; scopes: string[] }
|
|
5401
|
+
| {
|
|
5402
|
+
kind: "api_key";
|
|
5403
|
+
providerDomain: string;
|
|
5404
|
+
carrier: "header" | "query" | "cookie";
|
|
5405
|
+
name: string;
|
|
5406
|
+
}
|
|
5407
|
+
| { kind: "http"; providerDomain: string; scheme: string };
|
|
5408
|
+
|
|
5409
|
+
export type ApiIntegrationToolPreview = {
|
|
5410
|
+
id: string;
|
|
5411
|
+
operationKey: string;
|
|
5412
|
+
name: string;
|
|
5413
|
+
description: string;
|
|
5414
|
+
safety: "read" | "write" | "destructive";
|
|
5415
|
+
approvalMode: "never" | "ask";
|
|
5416
|
+
deprecated: boolean;
|
|
5417
|
+
};
|
|
5418
|
+
|
|
5419
|
+
export type ApiIntegrationPreview = {
|
|
5420
|
+
source: IntegrationSource;
|
|
5421
|
+
definitionId: string;
|
|
5422
|
+
definitionProvenance: IntegrationDefinitionProvenance;
|
|
5423
|
+
protocol: ApiIntegrationProtocol;
|
|
5424
|
+
capabilityId: string;
|
|
5425
|
+
pluginKey: string;
|
|
5426
|
+
serverId: string;
|
|
5427
|
+
name: string;
|
|
5428
|
+
description: string | null;
|
|
5429
|
+
provider: string | null;
|
|
5430
|
+
providerDomain: string;
|
|
5431
|
+
baseUrl: string;
|
|
5432
|
+
sourceUrl: string | null;
|
|
5433
|
+
revisionId: string;
|
|
5434
|
+
contentSha256: string;
|
|
5435
|
+
auth: ApiIntegrationAuthPreview;
|
|
5436
|
+
connectionId: string | null;
|
|
5437
|
+
connectionOwnership: ConnectionOwnership | null;
|
|
5438
|
+
tools: ApiIntegrationToolPreview[];
|
|
5439
|
+
warnings: string[];
|
|
5440
|
+
};
|
|
5441
|
+
|
|
5442
|
+
export type InstallApiIntegrationRequest = {
|
|
5443
|
+
source: IntegrationSource;
|
|
5444
|
+
expectedRevisionId: string;
|
|
5445
|
+
expectedContentSha256: string;
|
|
5446
|
+
connectionId?: string | undefined;
|
|
5447
|
+
ownership?: ConnectionOwnership | undefined;
|
|
5448
|
+
instanceKey?: string | undefined;
|
|
5449
|
+
displayName?: string | undefined;
|
|
5450
|
+
expectedInstanceVersion?: number | undefined;
|
|
5451
|
+
allowedTools?: string[] | undefined;
|
|
5452
|
+
};
|
|
5453
|
+
|
|
5454
|
+
export type InstalledApiIntegration = {
|
|
5455
|
+
capabilityId: string;
|
|
5456
|
+
pluginId: string;
|
|
5457
|
+
pluginVersionId: string;
|
|
5458
|
+
integrationFacetId: string;
|
|
5459
|
+
apiFacetId: string;
|
|
5460
|
+
pluginInstallationId: string;
|
|
5461
|
+
integrationFacetInstallationId: string;
|
|
5462
|
+
apiFacetInstallationId: string;
|
|
5463
|
+
installationVersion: number;
|
|
5464
|
+
instanceId: string;
|
|
5465
|
+
instanceKey: string;
|
|
5466
|
+
displayName: string;
|
|
5467
|
+
instanceVersion: number;
|
|
5468
|
+
revisionId: string;
|
|
5469
|
+
serverId: string;
|
|
5470
|
+
status: "installed";
|
|
5471
|
+
};
|
|
5472
|
+
|
|
5473
|
+
export type ApiIntegrationInstallationSummary = {
|
|
5474
|
+
capabilityId: string;
|
|
5475
|
+
pluginKey: string;
|
|
5476
|
+
installationVersion: number;
|
|
5477
|
+
instanceId: string;
|
|
5478
|
+
instanceKey: string;
|
|
5479
|
+
displayName: string;
|
|
5480
|
+
instanceVersion: number;
|
|
5481
|
+
serverId: string;
|
|
5482
|
+
name: string;
|
|
5483
|
+
description: string | null;
|
|
5484
|
+
protocol: ApiIntegrationProtocol;
|
|
5485
|
+
definitionId: string;
|
|
5486
|
+
definitionProvenance: IntegrationDefinitionProvenance;
|
|
5487
|
+
providerDomain: string;
|
|
5488
|
+
baseUrl: string;
|
|
5489
|
+
sourceUrl: string | null;
|
|
5490
|
+
connected: boolean;
|
|
5491
|
+
requiresConnection: boolean;
|
|
5492
|
+
connectionId: string | null;
|
|
5493
|
+
ownership: "workspace" | "personal" | "none";
|
|
5494
|
+
allowedTools: string[];
|
|
5495
|
+
toolCount: number;
|
|
5496
|
+
approvalRequiredToolCount: number;
|
|
5497
|
+
revisionId: string;
|
|
5498
|
+
contentSha256: string;
|
|
5499
|
+
};
|
|
5500
|
+
|
|
5501
|
+
export type ListApiIntegrationsResponse = {
|
|
5502
|
+
integrations: ApiIntegrationInstallationSummary[];
|
|
5503
|
+
};
|
|
5504
|
+
|
|
5505
|
+
export type ApiIntegrationUninstallPreview = {
|
|
5506
|
+
capabilityId: string;
|
|
5507
|
+
instanceKey: string;
|
|
5508
|
+
displayName: string | null;
|
|
5509
|
+
installed: boolean;
|
|
5510
|
+
installationVersion: number | null;
|
|
5511
|
+
instanceVersion: number | null;
|
|
5512
|
+
directOwner: CapabilityComponentOwner | null;
|
|
5513
|
+
remainingOwners: CapabilityComponentOwner[];
|
|
5514
|
+
removesRuntimeIntegration: boolean;
|
|
5515
|
+
removesDefinition: boolean;
|
|
5516
|
+
};
|
|
5517
|
+
|
|
5518
|
+
export type UninstallApiIntegrationRequest = {
|
|
5519
|
+
expectedInstallationVersion: number;
|
|
5520
|
+
expectedInstanceVersion: number;
|
|
5521
|
+
};
|
|
5522
|
+
|
|
5523
|
+
export type UninstallApiIntegrationResult = {
|
|
5524
|
+
capabilityId: string;
|
|
5525
|
+
instanceKey: string;
|
|
5526
|
+
status: "not_installed" | "uninstalled" | "retained_by_other_owners";
|
|
5527
|
+
remainingOwners: CapabilityComponentOwner[];
|
|
5528
|
+
definitionStatus: "retained" | "disabled";
|
|
5529
|
+
};
|
|
5530
|
+
|
|
5531
|
+
export type PluginManifestComponent =
|
|
5532
|
+
| { key: string; kind: "skill"; url: string }
|
|
5533
|
+
| { key: string; kind: "integration"; source: IntegrationSource }
|
|
5534
|
+
| { key: string; kind: "mcp"; serverId: string };
|
|
5535
|
+
|
|
5536
|
+
export type PluginManifest = {
|
|
5537
|
+
schemaVersion: 1;
|
|
5538
|
+
pluginKey: string;
|
|
5539
|
+
version: string;
|
|
5540
|
+
name: string;
|
|
5541
|
+
description: string;
|
|
5542
|
+
category: string;
|
|
5543
|
+
tags: string[];
|
|
5544
|
+
components: PluginManifestComponent[];
|
|
5545
|
+
};
|
|
5546
|
+
|
|
5547
|
+
export type PluginComponentBinding = {
|
|
5548
|
+
connectionId?: string | undefined;
|
|
5549
|
+
instanceKey?: string | undefined;
|
|
5550
|
+
displayName?: string | undefined;
|
|
5551
|
+
};
|
|
5552
|
+
|
|
5553
|
+
export type PreviewPluginRequest = {
|
|
5554
|
+
url: string;
|
|
5555
|
+
bindings?: Record<string, PluginComponentBinding> | undefined;
|
|
5556
|
+
};
|
|
5557
|
+
|
|
5558
|
+
export type PluginComponentPreview = {
|
|
5559
|
+
key: string;
|
|
5560
|
+
kind: "skill" | "integration" | "mcp";
|
|
5561
|
+
name: string;
|
|
5562
|
+
capabilityId: string;
|
|
5563
|
+
digest: string;
|
|
5564
|
+
connectionRequired: boolean;
|
|
5565
|
+
connectionId: string | null;
|
|
5566
|
+
instanceKey: string | null;
|
|
5567
|
+
displayName: string | null;
|
|
5568
|
+
facts: Record<string, unknown>;
|
|
5569
|
+
};
|
|
5570
|
+
|
|
5571
|
+
export type PluginUpdateDiff = {
|
|
5572
|
+
fromVersion: string | null;
|
|
5573
|
+
toVersion: string;
|
|
5574
|
+
added: string[];
|
|
5575
|
+
removed: string[];
|
|
5576
|
+
changed: string[];
|
|
5577
|
+
unchanged: string[];
|
|
5578
|
+
};
|
|
5579
|
+
|
|
5580
|
+
export type PluginPreview = {
|
|
5581
|
+
sourceUrl: string;
|
|
5582
|
+
manifest: PluginManifest;
|
|
5583
|
+
manifestDigest: string;
|
|
5584
|
+
installed: boolean;
|
|
5585
|
+
installationVersion: number | null;
|
|
5586
|
+
components: PluginComponentPreview[];
|
|
5587
|
+
diff: PluginUpdateDiff;
|
|
5588
|
+
};
|
|
5589
|
+
|
|
5590
|
+
export type InstallPluginRequest = {
|
|
5591
|
+
url: string;
|
|
5592
|
+
expectedManifestDigest: string;
|
|
5593
|
+
expectedComponents: Array<{ key: string; digest: string }>;
|
|
5594
|
+
bindings?: Record<string, PluginComponentBinding> | undefined;
|
|
5595
|
+
idempotencyKey: string;
|
|
5596
|
+
expectedInstallationVersion?: number | undefined;
|
|
5597
|
+
};
|
|
5598
|
+
|
|
5599
|
+
export type InstalledPlugin = {
|
|
5600
|
+
pluginKey: string;
|
|
5601
|
+
version: string;
|
|
5602
|
+
pluginId: string;
|
|
5603
|
+
pluginVersionId: string;
|
|
5604
|
+
pluginInstallationId: string;
|
|
5605
|
+
installationVersion: number;
|
|
5606
|
+
componentCount: number;
|
|
5607
|
+
status: "installed";
|
|
5608
|
+
};
|
|
5609
|
+
|
|
5610
|
+
export type PluginInstallationSummary = {
|
|
5611
|
+
pluginKey: string;
|
|
5612
|
+
version: string;
|
|
5613
|
+
name: string;
|
|
5614
|
+
description: string;
|
|
5615
|
+
category: string;
|
|
5616
|
+
tags: string[];
|
|
5617
|
+
sourceUrl: string | null;
|
|
5618
|
+
manifestDigest: string;
|
|
5619
|
+
installationVersion: number;
|
|
5620
|
+
componentCount: number;
|
|
5621
|
+
status: "active" | "needs_attention";
|
|
5622
|
+
installedAt: string;
|
|
5623
|
+
updatedAt: string;
|
|
5624
|
+
};
|
|
5625
|
+
|
|
5626
|
+
export type ListInstalledPluginsResponse = {
|
|
5627
|
+
plugins: PluginInstallationSummary[];
|
|
5628
|
+
};
|
|
5629
|
+
|
|
5630
|
+
export type PluginUninstallPreview = {
|
|
5631
|
+
pluginKey: string;
|
|
5632
|
+
installed: boolean;
|
|
5633
|
+
version: string | null;
|
|
5634
|
+
installationVersion: number | null;
|
|
5635
|
+
components: Array<{
|
|
5636
|
+
capabilityId: string;
|
|
5637
|
+
kind: "skill" | "integration" | "mcp";
|
|
5638
|
+
retainedByOtherOwners: boolean;
|
|
5639
|
+
}>;
|
|
5640
|
+
};
|
|
5641
|
+
|
|
5642
|
+
export type UninstallPluginRequest = {
|
|
5643
|
+
expectedInstallationVersion: number;
|
|
5644
|
+
idempotencyKey: string;
|
|
5645
|
+
};
|
|
5646
|
+
|
|
5647
|
+
export type UninstallPluginResult = {
|
|
5648
|
+
pluginKey: string;
|
|
5649
|
+
status: "not_installed" | "uninstalled";
|
|
5650
|
+
retainedComponents: string[];
|
|
5651
|
+
};
|
|
5652
|
+
|
|
4131
5653
|
// --- GitHub ---------------------------------------------------------------------
|
|
4132
5654
|
|
|
4133
5655
|
export type GitHubRepository = {
|
|
@@ -4224,6 +5746,10 @@ export const KNOWN_USAGE_EVENT_TYPES = [
|
|
|
4224
5746
|
"file.deleted",
|
|
4225
5747
|
"document.indexed",
|
|
4226
5748
|
"scheduled_task.fired",
|
|
5749
|
+
"knowledge_source_sync.fired",
|
|
5750
|
+
"knowledge_source_sync.completed",
|
|
5751
|
+
"knowledge_source_sync.items",
|
|
5752
|
+
"knowledge_source_sync.bytes",
|
|
4227
5753
|
"api_key.request",
|
|
4228
5754
|
// sandbox warm-time metering (P2.1) — mirrors contracts UsageEventType.
|
|
4229
5755
|
"sandbox.warm_seconds",
|
|
@@ -4269,6 +5795,8 @@ export type InsightsRange = "today" | "week" | "month" | "ytd";
|
|
|
4269
5795
|
|
|
4270
5796
|
export type InsightsBillingPath = "opengeni_credits" | "external";
|
|
4271
5797
|
|
|
5798
|
+
export type InsightsPricingSource = "configured_list_price" | "gateway_reported";
|
|
5799
|
+
|
|
4272
5800
|
export type InsightsModelUsageRow = {
|
|
4273
5801
|
id: string;
|
|
4274
5802
|
model: string;
|
|
@@ -4278,17 +5806,32 @@ export type InsightsModelUsageRow = {
|
|
|
4278
5806
|
inputTokens: number;
|
|
4279
5807
|
outputTokens: number;
|
|
4280
5808
|
cachedTokens: number;
|
|
5809
|
+
cacheInputTokens: number;
|
|
4281
5810
|
cacheWriteTokens: number;
|
|
4282
5811
|
reasoningTokens: number;
|
|
5812
|
+
totalTokens: number;
|
|
5813
|
+
tokenKnownCalls: number;
|
|
5814
|
+
cacheKnownCalls: number;
|
|
4283
5815
|
creditUsd: number;
|
|
5816
|
+
estimatedProviderUsd: number;
|
|
5817
|
+
estimatedProviderCostKnownCalls: number;
|
|
4284
5818
|
};
|
|
4285
5819
|
|
|
4286
5820
|
export type InsightsSeriesPoint = {
|
|
4287
5821
|
label: string;
|
|
4288
5822
|
modelCostUsd: number;
|
|
5823
|
+
estimatedProviderUsd: number;
|
|
5824
|
+
estimatedProviderCostKnownCalls: number;
|
|
4289
5825
|
warmSeconds: number;
|
|
4290
5826
|
inputTokens: number;
|
|
5827
|
+
outputTokens: number;
|
|
4291
5828
|
cachedTokens: number;
|
|
5829
|
+
cacheInputTokens: number;
|
|
5830
|
+
cacheWriteTokens: number;
|
|
5831
|
+
reasoningTokens: number;
|
|
5832
|
+
totalTokens: number;
|
|
5833
|
+
tokenKnownCalls: number;
|
|
5834
|
+
cacheKnownCalls: number;
|
|
4292
5835
|
cacheHitPct: number;
|
|
4293
5836
|
calls: number;
|
|
4294
5837
|
};
|
|
@@ -4308,9 +5851,12 @@ export type InsightsSpendDriver = {
|
|
|
4308
5851
|
groupBy: "root_session" | "schedule";
|
|
4309
5852
|
label: string;
|
|
4310
5853
|
creditUsd: number;
|
|
5854
|
+
estimatedProviderUsd: number;
|
|
5855
|
+
estimatedProviderCostKnownCalls: number;
|
|
4311
5856
|
tokens: number;
|
|
4312
5857
|
cacheHitPct: number;
|
|
4313
5858
|
pctOfCreditUsd: number;
|
|
5859
|
+
pctOfTokens: number;
|
|
4314
5860
|
deltaUsdVsPrior: number;
|
|
4315
5861
|
};
|
|
4316
5862
|
|
|
@@ -4350,17 +5896,44 @@ export type InsightsScheduleRow = {
|
|
|
4350
5896
|
name: string;
|
|
4351
5897
|
fires: number;
|
|
4352
5898
|
creditUsd: number | null;
|
|
5899
|
+
estimatedProviderUsd: number | null;
|
|
5900
|
+
estimatedProviderCostKnownCalls: number | null;
|
|
4353
5901
|
tokens: number | null;
|
|
4354
5902
|
cacheHitPct: number | null;
|
|
4355
5903
|
billing: InsightsBillingPath | null;
|
|
4356
5904
|
};
|
|
4357
5905
|
|
|
5906
|
+
export type InsightsModelCallRow = {
|
|
5907
|
+
id: string;
|
|
5908
|
+
occurredAt: string;
|
|
5909
|
+
recordedAt: string;
|
|
5910
|
+
sessionId: string;
|
|
5911
|
+
sessionTitle: string;
|
|
5912
|
+
turnId: string;
|
|
5913
|
+
provider: string;
|
|
5914
|
+
providerApi: string;
|
|
5915
|
+
model: string;
|
|
5916
|
+
billing: InsightsBillingPath;
|
|
5917
|
+
inputTokens: number | null;
|
|
5918
|
+
outputTokens: number | null;
|
|
5919
|
+
cachedTokens: number | null;
|
|
5920
|
+
cacheWriteTokens: number | null;
|
|
5921
|
+
reasoningTokens: number | null;
|
|
5922
|
+
totalTokens: number | null;
|
|
5923
|
+
creditUsd: number;
|
|
5924
|
+
estimatedProviderUsd: number | null;
|
|
5925
|
+
pricingSource: InsightsPricingSource | null;
|
|
5926
|
+
};
|
|
5927
|
+
|
|
4358
5928
|
export type WorkspaceInsightsSnapshot = {
|
|
4359
5929
|
range: InsightsRange;
|
|
4360
5930
|
rangeLabel: string;
|
|
4361
5931
|
priorLabel: string;
|
|
4362
5932
|
seriesLabel: string;
|
|
4363
5933
|
cacheSeriesLabel: string;
|
|
5934
|
+
windowStart: string;
|
|
5935
|
+
windowEnd: string;
|
|
5936
|
+
generatedAt: string;
|
|
4364
5937
|
timezone: "UTC";
|
|
4365
5938
|
models: InsightsModelUsageRow[];
|
|
4366
5939
|
facets: InsightsModelFacet[];
|
|
@@ -4368,6 +5941,7 @@ export type WorkspaceInsightsSnapshot = {
|
|
|
4368
5941
|
depth: InsightsDepthBucket[];
|
|
4369
5942
|
drivers: InsightsSpendDriver[];
|
|
4370
5943
|
schedules: InsightsScheduleRow[];
|
|
5944
|
+
recentCalls: InsightsModelCallRow[];
|
|
4371
5945
|
warmSeconds: number;
|
|
4372
5946
|
priorWarmSeconds: number;
|
|
4373
5947
|
warmGroups: InsightsWarmGroupRow[];
|
|
@@ -4379,7 +5953,13 @@ export type WorkspaceInsightsSnapshot = {
|
|
|
4379
5953
|
priorWorkspaceCreditUsd: number;
|
|
4380
5954
|
creditUsd: number;
|
|
4381
5955
|
priorCreditUsd: number;
|
|
5956
|
+
estimatedProviderUsd: number;
|
|
5957
|
+
priorEstimatedProviderUsd: number;
|
|
5958
|
+
estimatedProviderCostKnownCalls: number;
|
|
5959
|
+
priorEstimatedProviderCostKnownCalls: number;
|
|
5960
|
+
modelCalls: number;
|
|
4382
5961
|
priorInputTokens: number;
|
|
5962
|
+
priorTotalTokens: number;
|
|
4383
5963
|
priorCacheHitPct: number;
|
|
4384
5964
|
priorCalls: number;
|
|
4385
5965
|
goalsActive: number;
|
|
@@ -4425,6 +6005,7 @@ export type UserMessageEventInput = {
|
|
|
4425
6005
|
clientEventId?: string | undefined;
|
|
4426
6006
|
payload: {
|
|
4427
6007
|
text: string;
|
|
6008
|
+
annotations?: SubmittedTimelineAnnotation[] | undefined;
|
|
4428
6009
|
turnInstructions?: string | undefined;
|
|
4429
6010
|
resources?: ResourceRef[] | undefined;
|
|
4430
6011
|
model?: string | undefined;
|
|
@@ -4552,12 +6133,14 @@ export type RemoveEnrollmentResponse = {
|
|
|
4552
6133
|
code:
|
|
4553
6134
|
| "active_route"
|
|
4554
6135
|
| "active_commands"
|
|
6136
|
+
| "machine_home"
|
|
4555
6137
|
| "active_lease"
|
|
4556
6138
|
| "recovery_pending"
|
|
4557
6139
|
| "not_selfhosted"
|
|
4558
6140
|
| null;
|
|
4559
6141
|
message: string;
|
|
4560
6142
|
action: string;
|
|
6143
|
+
dependentSessions: Array<{ id: string; title: string | null }>;
|
|
4561
6144
|
};
|
|
4562
6145
|
|
|
4563
6146
|
/** POST /v1/workspaces/:ws/sessions/:sessionId/active-sandbox — swap a session's
|
|
@@ -4590,8 +6173,9 @@ export type SwapActiveSandboxResponse = {
|
|
|
4590
6173
|
|
|
4591
6174
|
// ── Self-hosted enrollment UX (design 11) ────────────────────────────────────
|
|
4592
6175
|
// Hand-written mirrors of the `@opengeni/contracts` enrollment-UX request/response
|
|
4593
|
-
// shapes
|
|
4594
|
-
// lookup/deny + the headless enroll-token
|
|
6176
|
+
// shapes. They remain type-only so ordinary SDK entries do not reach the contracts
|
|
6177
|
+
// runtime. The click-Grant approve-page lookup/deny + the headless enroll-token
|
|
6178
|
+
// mint/exchange.
|
|
4595
6179
|
|
|
4596
6180
|
/** Mirror of `@opengeni/contracts` EnrollmentOs. */
|
|
4597
6181
|
export type EnrollmentOs = "linux" | "macos" | "windows";
|