@opengeni/runtime 2.4.3 → 2.5.2-canary.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/dist/{agent-UA75SUZ7.js → agent-Q2VNH5FV.js} +2 -2
- package/dist/{chunk-ORKCCH5X.js → chunk-25B3EQRW.js} +3 -398
- package/dist/{chunk-ORKCCH5X.js.map → chunk-25B3EQRW.js.map} +1 -1
- package/dist/{chunk-YRKIQK25.js → chunk-CD22I76N.js} +2 -2
- package/dist/{chunk-7K6WOXFS.js → chunk-GB763TSV.js} +17 -1
- package/dist/chunk-GB763TSV.js.map +1 -0
- package/dist/{chunk-BV2DSPZK.js → chunk-GBHOT4KS.js} +267 -181
- package/dist/chunk-GBHOT4KS.js.map +1 -0
- package/dist/{chunk-WATBACLT.js → chunk-LEIGL6X2.js} +2309 -1428
- package/dist/chunk-LEIGL6X2.js.map +1 -0
- package/dist/index.d.ts +12 -5
- package/dist/index.js +15 -5
- package/dist/{localSources-GDQRRHT3.js → localSources-Z5IJIIRV.js} +3 -3
- package/dist/model-input.d.ts +2 -1
- package/dist/runtime-skills.d.ts +28 -5
- package/dist/sandbox/archive-spool.d.ts +14 -0
- package/dist/sandbox/host-archive-spool.d.ts +19 -0
- package/dist/sandbox/index.d.ts +5 -1
- package/dist/sandbox/index.js +7 -3
- package/dist/sandbox/workspace-archive.d.ts +7 -0
- package/dist/skill-files.d.ts +4 -0
- package/dist/skill-library.d.ts +1 -1
- package/dist/skill-library.js +3 -1
- package/dist/workspace-tool-gateway.js +5 -5
- package/package.json +11 -11
- package/src/bundled_management_skills/opengeni-skills/SKILL.md +3 -1
- package/src/index.ts +184 -33
- package/src/lazy-tool-transport.ts +0 -3
- package/src/model-input.ts +1 -1
- package/src/run-events.ts +23 -0
- package/src/runtime-skills.ts +122 -161
- package/src/sandbox/archive-spool.ts +16 -0
- package/src/sandbox/host-archive-spool.ts +1040 -0
- package/src/sandbox/index.ts +292 -203
- package/src/sandbox/routing/routing-session.ts +1 -1
- package/src/sandbox/workspace-archive.ts +54 -1
- package/src/skill-files.ts +20 -0
- package/src/skill-library.ts +1 -0
- package/dist/chunk-7K6WOXFS.js.map +0 -1
- package/dist/chunk-BV2DSPZK.js.map +0 -1
- package/dist/chunk-WATBACLT.js.map +0 -1
- /package/dist/{agent-UA75SUZ7.js.map → agent-Q2VNH5FV.js.map} +0 -0
- /package/dist/{chunk-YRKIQK25.js.map → chunk-CD22I76N.js.map} +0 -0
- /package/dist/{localSources-GDQRRHT3.js.map → localSources-Z5IJIIRV.js.map} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -26,8 +26,8 @@ import type { ComputerToolMode } from "./legacy-computer-compat.js";
|
|
|
26
26
|
import type { RuntimeMetricsHooks } from "./metrics.js";
|
|
27
27
|
import { resolveTurnModel } from "./model-provider.js";
|
|
28
28
|
import { type WorkspaceSkillSearchPath } from "./workspace-skills.js";
|
|
29
|
-
import { type EffectiveSkillSelection, type RuntimeSkillActivation } from "./runtime-skills.js";
|
|
30
|
-
export { composeRuntimeSkills, loadNativeToolSkillArtifacts, type EffectiveSkillSelection, type InstalledSkillActivation, type NativeToolSkillSet, type PackSkillActivation, type RuntimeSkillActivation, type RuntimeSkillArtifact, type RuntimeSkillArtifactFile, type RuntimeSkillComposition, type RuntimeSkillDescriptor, type SessionSkillActivation, } from "./runtime-skills.js";
|
|
29
|
+
import { type EffectiveSkillSelection, type RuntimeSkillActivation, type RuntimeSkillIndexEntry } from "./runtime-skills.js";
|
|
30
|
+
export { composeRuntimeSkills, loadNativeToolSkillArtifacts, readRuntimeSkill, skillCatalogFromComposition, type EffectiveSkillSelection, type InstalledSkillActivation, type NativeToolSkillSet, type PackSkillActivation, type RuntimeSkillActivation, type RuntimeSkillArtifact, type RuntimeSkillArtifactFile, type RuntimeSkillComposition, type RuntimeSkillDescriptor, type RuntimeSkillIndexEntry, type SessionSkillActivation, } from "./runtime-skills.js";
|
|
31
31
|
import { type PersistentAgentInstructionInspection } from "./model-context-inspector.js";
|
|
32
32
|
import { type ModelPreparationMeasurement } from "./model-preparation-diagnostics.js";
|
|
33
33
|
import type { ModelResponseUsage, NormalizedRuntimeEvent, SerializedHumanInputInterruption, SerializedInteractionInterventionInterruption } from "./run-events.js";
|
|
@@ -301,6 +301,8 @@ export type CodemodeTokenWriterSession = SandboxSessionLike;
|
|
|
301
301
|
* turn skill activation into an authorization change.
|
|
302
302
|
*/
|
|
303
303
|
export declare function effectiveSkillSelectionsForAgent(agent: object): readonly EffectiveSkillSelection[];
|
|
304
|
+
/** Sandbox-independent Skill index admitted for this agent. */
|
|
305
|
+
export declare function runtimeSkillIndexForAgent(agent: object): readonly RuntimeSkillIndexEntry[];
|
|
304
306
|
export declare function persistentAgentInstructionInspectionFor(agent: object): PersistentAgentInstructionInspection;
|
|
305
307
|
export type ConnectorActionToolCall = {
|
|
306
308
|
approvalId: string;
|
|
@@ -359,6 +361,8 @@ export type AttemptConnectorActionBinding = {
|
|
|
359
361
|
resultOutcome?: (output: unknown) => "not_executed" | "uncertain" | null;
|
|
360
362
|
};
|
|
361
363
|
export type BuildAgentOptions = {
|
|
364
|
+
/** Live authority fence for intrinsic sandbox tools outside the MCP gateway. */
|
|
365
|
+
authorizeAttemptExecution?: () => Promise<void> | void;
|
|
362
366
|
/** Trusted attempt-local wait receipt shared with prepared tools. */
|
|
363
367
|
inputWaitYield?: InputWaitYield;
|
|
364
368
|
model?: Model;
|
|
@@ -478,10 +482,8 @@ export type BuildAgentOptions = {
|
|
|
478
482
|
* executable tool catalog.
|
|
479
483
|
*/
|
|
480
484
|
skillActivations?: readonly RuntimeSkillActivation[];
|
|
481
|
-
/**
|
|
485
|
+
/** Host-owned descriptors and reader; mutually exclusive with skillActivations. */
|
|
482
486
|
skillCatalog?: readonly SkillCatalogDescriptor[];
|
|
483
|
-
/** Shared reader serves configured Skills; filesystem discovery remains for repo Skills only. */
|
|
484
|
-
serverSkillReading?: boolean;
|
|
485
487
|
/**
|
|
486
488
|
* Internal per-attempt cancellation boundary. The worker supplies Temporal's
|
|
487
489
|
* signal so an in-flight shell process is interrupted immediately instead of
|
|
@@ -640,6 +642,7 @@ export declare function buildOpenGeniAgent(settings: Settings, resources: Resour
|
|
|
640
642
|
*/
|
|
641
643
|
export declare function withStructuredViewImageFunctionResults(tools: Tool<unknown>[]): Tool<unknown>[];
|
|
642
644
|
export declare function buildAgentCapabilities(settings: Settings, skillActivations?: readonly RuntimeSkillActivation[], options?: {
|
|
645
|
+
authorizeAttemptExecution?: () => Promise<void> | void;
|
|
643
646
|
editableArtifactToolsAvailable?: boolean;
|
|
644
647
|
videoGenerationAvailable?: boolean;
|
|
645
648
|
workspaceSkillPaths?: readonly WorkspaceSkillSearchPath[];
|
|
@@ -747,6 +750,10 @@ export type PrepareToolsOptions = {
|
|
|
747
750
|
attemptToolDefinitions?: readonly AttemptToolDefinition[];
|
|
748
751
|
/** Host authorization applied after catalog/input validation and before execution. */
|
|
749
752
|
attemptToolAuthorize?: AttemptToolAuthorization;
|
|
753
|
+
/** Live accepted-attempt fence, evaluated at execution rather than catalog
|
|
754
|
+
* preparation. Includes model and Codemode calls and runs before consuming
|
|
755
|
+
* connector approval authority. Does not alter catalog identity. */
|
|
756
|
+
authorizeAttemptExecution?: () => Promise<void> | void;
|
|
750
757
|
/** Attempt-bound connector policy installed into the canonical gateway lifecycle. */
|
|
751
758
|
connectorActionPolicy?: ConnectorActionPolicyHooks;
|
|
752
759
|
/** Private connector identities for exact-name attempt-local tools. */
|
package/dist/index.js
CHANGED
|
@@ -191,6 +191,7 @@ import {
|
|
|
191
191
|
projectRejectedReasoningArtifact,
|
|
192
192
|
projectRemoteCompactionOverflowRetryInput,
|
|
193
193
|
protocolItemsFromGeneratedItems,
|
|
194
|
+
readRuntimeSkill,
|
|
194
195
|
recordModelPreparationMeasurement,
|
|
195
196
|
refreshCodemodeTokenFile,
|
|
196
197
|
refreshGitCredentialBindingTokenFiles,
|
|
@@ -217,6 +218,7 @@ import {
|
|
|
217
218
|
runOwnedSandboxSetup,
|
|
218
219
|
runRepositoryCloneHook,
|
|
219
220
|
runRigSetupHook,
|
|
221
|
+
runtimeSkillIndexForAgent,
|
|
220
222
|
safeMcpTransportError,
|
|
221
223
|
sandboxArtifactRuntimeDoctorHooks,
|
|
222
224
|
sandboxFileDownloadFailureNote,
|
|
@@ -229,6 +231,7 @@ import {
|
|
|
229
231
|
serializeInteractionInterventionRequests,
|
|
230
232
|
serializedRunStateHasOpaqueProviderArtifact,
|
|
231
233
|
serializedToolsForRemoteCompaction,
|
|
234
|
+
skillCatalogFromComposition,
|
|
232
235
|
spilledModelToolResult,
|
|
233
236
|
stripInternalModelMetadata,
|
|
234
237
|
stripProviderItemIdsFilter,
|
|
@@ -244,7 +247,7 @@ import {
|
|
|
244
247
|
workspaceEnvironmentInstructions,
|
|
245
248
|
wrapAttemptToolDefinitions,
|
|
246
249
|
wrapAttemptToolExecute
|
|
247
|
-
} from "./chunk-
|
|
250
|
+
} from "./chunk-GBHOT4KS.js";
|
|
248
251
|
import {
|
|
249
252
|
ActiveBackendUnresolvableError,
|
|
250
253
|
BROWSER_CONTROL_ADMIN_TOKEN_FILE,
|
|
@@ -358,6 +361,7 @@ import {
|
|
|
358
361
|
buildTerminalServerScript,
|
|
359
362
|
cancelSelfhostedOp,
|
|
360
363
|
captureVerifiedWorkspaceArchive,
|
|
364
|
+
captureWorkspaceArchiveForStorage,
|
|
361
365
|
classifyProviderSandboxFailure,
|
|
362
366
|
clearRunCredentials,
|
|
363
367
|
clearRunCredentialsForAttempt,
|
|
@@ -382,6 +386,7 @@ import {
|
|
|
382
386
|
describeNativeSnapshotArchive,
|
|
383
387
|
deserializeSandboxSessionStateEnvelope,
|
|
384
388
|
desktopCapableBackend,
|
|
389
|
+
disposeWorkspaceArchive,
|
|
385
390
|
dockerNetworkExposedPortEndpoint,
|
|
386
391
|
drainingExhaustedError,
|
|
387
392
|
drainingMessage,
|
|
@@ -514,8 +519,8 @@ import {
|
|
|
514
519
|
withRunCredentialsClient,
|
|
515
520
|
withRunCredentialsSession,
|
|
516
521
|
withoutSandboxProviderIdentity
|
|
517
|
-
} from "./chunk-
|
|
518
|
-
import "./chunk-
|
|
522
|
+
} from "./chunk-LEIGL6X2.js";
|
|
523
|
+
import "./chunk-CD22I76N.js";
|
|
519
524
|
import {
|
|
520
525
|
SKILL_MAX_FILES,
|
|
521
526
|
SKILL_MAX_FILE_BYTES,
|
|
@@ -528,7 +533,7 @@ import {
|
|
|
528
533
|
parseSkillFrontmatter,
|
|
529
534
|
skillArtifactContentSha256,
|
|
530
535
|
skillLibraryRepositoryUrl
|
|
531
|
-
} from "./chunk-
|
|
536
|
+
} from "./chunk-GB763TSV.js";
|
|
532
537
|
import "./chunk-UZ66CGC2.js";
|
|
533
538
|
import {
|
|
534
539
|
GMAIL_REST_API_BASE,
|
|
@@ -540,7 +545,7 @@ import {
|
|
|
540
545
|
} from "./chunk-JHM4OS7C.js";
|
|
541
546
|
import {
|
|
542
547
|
MaxTurnsExceededError
|
|
543
|
-
} from "./chunk-
|
|
548
|
+
} from "./chunk-25B3EQRW.js";
|
|
544
549
|
import "./chunk-PZ5AY32C.js";
|
|
545
550
|
export {
|
|
546
551
|
ActiveBackendUnresolvableError,
|
|
@@ -756,6 +761,7 @@ export {
|
|
|
756
761
|
callModelInputFilterForSettings,
|
|
757
762
|
cancelSelfhostedOp,
|
|
758
763
|
captureVerifiedWorkspaceArchive,
|
|
764
|
+
captureWorkspaceArchiveForStorage,
|
|
759
765
|
clampCompactionThresholdRatio,
|
|
760
766
|
classifyProviderSandboxFailure,
|
|
761
767
|
clearRunCredentials,
|
|
@@ -801,6 +807,7 @@ export {
|
|
|
801
807
|
describeNativeSnapshotArchive,
|
|
802
808
|
deserializeSandboxSessionStateEnvelope,
|
|
803
809
|
desktopCapableBackend,
|
|
810
|
+
disposeWorkspaceArchive,
|
|
804
811
|
dockerNetworkExposedPortEndpoint,
|
|
805
812
|
drainingExhaustedError,
|
|
806
813
|
drainingMessage,
|
|
@@ -949,6 +956,7 @@ export {
|
|
|
949
956
|
providerWorkspaceCapturePolicy,
|
|
950
957
|
provisionBrowserControlClient,
|
|
951
958
|
querySelfhostedOp,
|
|
959
|
+
readRuntimeSkill,
|
|
952
960
|
readVerifiedWorkspaceArchive,
|
|
953
961
|
readWorkspaceArchiveFromEnvelopeSessionState,
|
|
954
962
|
recordModelPreparationMeasurement,
|
|
@@ -996,6 +1004,7 @@ export {
|
|
|
996
1004
|
runStateCompatibilityProvider,
|
|
997
1005
|
runStateExposedPortsRecord,
|
|
998
1006
|
runWithToolCallCorrelation,
|
|
1007
|
+
runtimeSkillIndexForAgent,
|
|
999
1008
|
safeMcpTransportError,
|
|
1000
1009
|
sandboxArtifactRuntimeDoctorHooks,
|
|
1001
1010
|
sandboxBackendForSdkBackendId,
|
|
@@ -1031,6 +1040,7 @@ export {
|
|
|
1031
1040
|
signedEndpointExpiresAtMs,
|
|
1032
1041
|
signedEndpointNeedsRefresh,
|
|
1033
1042
|
skillArtifactContentSha256,
|
|
1043
|
+
skillCatalogFromComposition,
|
|
1034
1044
|
skillLibraryRepositoryUrl,
|
|
1035
1045
|
spilledModelToolResult,
|
|
1036
1046
|
startRecording,
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
applyLocalSourceManifestToState,
|
|
4
4
|
materializeLocalSourceManifest,
|
|
5
5
|
materializeLocalSourceManifestEntry
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-CD22I76N.js";
|
|
7
|
+
import "./chunk-25B3EQRW.js";
|
|
8
8
|
import "./chunk-PZ5AY32C.js";
|
|
9
9
|
export {
|
|
10
10
|
applyLocalSourceManifestEntryToState,
|
|
@@ -12,4 +12,4 @@ export {
|
|
|
12
12
|
materializeLocalSourceManifest,
|
|
13
13
|
materializeLocalSourceManifestEntry
|
|
14
14
|
};
|
|
15
|
-
//# sourceMappingURL=localSources-
|
|
15
|
+
//# sourceMappingURL=localSources-Z5IJIIRV.js.map
|
package/dist/model-input.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Settings } from "@opengeni/config";
|
|
2
|
-
import type { CallModelInputFilter } from "@openai/agents";
|
|
2
|
+
import type { AgentInputItem, CallModelInputFilter } from "@openai/agents";
|
|
3
3
|
import { type ProviderContextTokenSignal } from "./context-compaction.js";
|
|
4
4
|
export type ContextRobustnessFilterOptions = {
|
|
5
5
|
contextCompactionSignal?: () => ProviderContextTokenSignal | null | undefined;
|
|
@@ -20,6 +20,7 @@ export type ContextRobustnessFilterOptions = {
|
|
|
20
20
|
* are separate properties and stay untouched; items are cloned, never mutated.
|
|
21
21
|
*/
|
|
22
22
|
export declare const stripProviderItemIdsFilter: CallModelInputFilter;
|
|
23
|
+
export declare function stripProviderItemId(item: AgentInputItem): AgentInputItem;
|
|
23
24
|
/**
|
|
24
25
|
* callModelInputFilter that normalizes every `computer_call` carrying BOTH
|
|
25
26
|
* `action` and `actions` down to EXACTLY ONE (keeps `actions`, drops `action`).
|
package/dist/runtime-skills.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { readSkillFiles } from "./skill-files.js";
|
|
2
|
+
import type { SkillCatalogDescriptor } from "./skill-catalog.js";
|
|
2
3
|
export type RuntimeSkillArtifactFile = Readonly<{
|
|
3
4
|
path: string;
|
|
4
5
|
content: string;
|
|
@@ -47,13 +48,26 @@ export type EffectiveSkillSelection = Readonly<{
|
|
|
47
48
|
contentSha256: string | null;
|
|
48
49
|
reason: string;
|
|
49
50
|
}>;
|
|
51
|
+
export type RuntimeSkillReadable = Readonly<{
|
|
52
|
+
id: string;
|
|
53
|
+
name: string;
|
|
54
|
+
description: string;
|
|
55
|
+
files: readonly RuntimeSkillArtifactFile[];
|
|
56
|
+
}>;
|
|
50
57
|
export type RuntimeSkillComposition = Readonly<{
|
|
51
|
-
lazySource: LocalDirLazySkillSource;
|
|
52
58
|
selections: readonly EffectiveSkillSelection[];
|
|
53
59
|
/** Exact always-visible catalog descriptors for explicitly activated Skills. */
|
|
54
60
|
configuredDescriptors: readonly RuntimeSkillDescriptor[];
|
|
55
61
|
configuredNames: readonly string[];
|
|
56
62
|
nativeToolNames: readonly string[];
|
|
63
|
+
/** Model-facing catalog descriptors for configured and bundled Skills. */
|
|
64
|
+
index: readonly RuntimeSkillIndexEntry[];
|
|
65
|
+
artifacts: readonly RuntimeSkillReadable[];
|
|
66
|
+
}>;
|
|
67
|
+
export type RuntimeSkillIndexEntry = Readonly<{
|
|
68
|
+
id: string;
|
|
69
|
+
name: string;
|
|
70
|
+
description: string;
|
|
57
71
|
}>;
|
|
58
72
|
export type RuntimeSkillDescriptor = Readonly<{
|
|
59
73
|
id: string;
|
|
@@ -62,6 +76,11 @@ export type RuntimeSkillDescriptor = Readonly<{
|
|
|
62
76
|
reason: string;
|
|
63
77
|
description: string;
|
|
64
78
|
}>;
|
|
79
|
+
export type RuntimeSkillReadRequest = Readonly<{
|
|
80
|
+
skill: string;
|
|
81
|
+
paths?: readonly string[];
|
|
82
|
+
listFiles?: boolean;
|
|
83
|
+
}>;
|
|
65
84
|
/**
|
|
66
85
|
* Packaged guidance is server-readable content, not a sandbox installation.
|
|
67
86
|
* The caller supplies the effective capability selection; compute backend is
|
|
@@ -72,10 +91,14 @@ export declare function loadNativeToolSkillArtifacts(nativeTools: NativeToolSkil
|
|
|
72
91
|
}>): readonly RuntimeSkillArtifact[];
|
|
73
92
|
/**
|
|
74
93
|
* Compose the exact Skills surface for one agent.
|
|
75
|
-
*
|
|
76
94
|
* Optional/domain Skills enter only through explicit activations. Native
|
|
77
95
|
* Skills are admitted only with the exact executable tool surface they
|
|
78
|
-
* document.
|
|
79
|
-
* provenance so those projections cannot disagree.
|
|
96
|
+
* document. The result is an in-memory catalog and file set, not an SDK loader.
|
|
80
97
|
*/
|
|
81
98
|
export declare function composeRuntimeSkills(activations: readonly RuntimeSkillActivation[], nativeTools?: NativeToolSkillSet): RuntimeSkillComposition;
|
|
99
|
+
export declare function skillCatalogFromComposition(composition: RuntimeSkillComposition): readonly SkillCatalogDescriptor[];
|
|
100
|
+
export declare function readRuntimeSkill(composition: RuntimeSkillComposition, request: RuntimeSkillReadRequest): {
|
|
101
|
+
skillId: string;
|
|
102
|
+
files?: ReturnType<typeof readSkillFiles>["files"];
|
|
103
|
+
paths?: string[];
|
|
104
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { TarWorkspaceArchiveDescriptor } from "@opengeni/contracts";
|
|
2
|
+
/** Process-owned, reopenable archive bytes. Never persisted as a local path. */
|
|
3
|
+
export type WorkspaceArchiveSpool = {
|
|
4
|
+
path: string;
|
|
5
|
+
byteSize: number;
|
|
6
|
+
sha256: string;
|
|
7
|
+
open: () => AsyncIterable<Uint8Array>;
|
|
8
|
+
dispose: () => Promise<void>;
|
|
9
|
+
};
|
|
10
|
+
export type VerifiedHostWorkspaceArchive = {
|
|
11
|
+
kind: "host_spool";
|
|
12
|
+
spool: WorkspaceArchiveSpool;
|
|
13
|
+
descriptor: TarWorkspaceArchiveDescriptor;
|
|
14
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { WorkspaceTreeFingerprint } from "@opengeni/contracts";
|
|
2
|
+
import type { WorkspaceArchiveSpool } from "./archive-spool.js";
|
|
3
|
+
/** Matches SDK 0.14.3 resolveSandboxArchiveLimits: absent/null means unlimited;
|
|
4
|
+
* an explicit object fills undefined fields with SDK defaults, null disables a field.
|
|
5
|
+
* chunkBytes controls buffering, never the amount of input accepted. */
|
|
6
|
+
export type HostWorkspaceArchiveOptions = {
|
|
7
|
+
chunkBytes?: number;
|
|
8
|
+
archiveLimits?: {
|
|
9
|
+
maxInputBytes?: number | null;
|
|
10
|
+
maxExtractedBytes?: number | null;
|
|
11
|
+
maxMembers?: number | null;
|
|
12
|
+
} | null;
|
|
13
|
+
};
|
|
14
|
+
export declare function fingerprintHostWorkspace(root: string, excludedPaths: readonly string[]): Promise<WorkspaceTreeFingerprint>;
|
|
15
|
+
export declare function captureHostWorkspaceArchive(root: string, excludedPaths: readonly string[]): Promise<{
|
|
16
|
+
spool: WorkspaceArchiveSpool;
|
|
17
|
+
workspace: WorkspaceTreeFingerprint;
|
|
18
|
+
}>;
|
|
19
|
+
export declare function restoreHostWorkspaceArchive(root: string, spool: WorkspaceArchiveSpool, options?: HostWorkspaceArchiveOptions): Promise<void>;
|
package/dist/sandbox/index.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
export type { ProviderCommandPersistence, ProviderCommandSession, } from "./provider-command-session.js";
|
|
2
2
|
import type { Settings } from "@opengeni/config";
|
|
3
|
-
|
|
3
|
+
export type { WorkspaceArchiveSpool, VerifiedHostWorkspaceArchive } from "./archive-spool.js";
|
|
4
|
+
import type { WorkspaceArchiveSpool } from "./archive-spool.js";
|
|
5
|
+
export { captureWorkspaceArchiveForStorage, disposeWorkspaceArchive, type VerifiedWorkspaceArchivePayload, } from "./workspace-archive.js";
|
|
6
|
+
import { type WorkspaceArchiveObjectRef, type SandboxBackend, type SandboxProviderContinuityRecovery } from "@opengeni/contracts";
|
|
4
7
|
import type { SandboxClient, SandboxSessionState } from "@openai/agents/sandbox";
|
|
5
8
|
import { type WorkspaceArchiveDescriptor } from "./workspace-archive.js";
|
|
6
9
|
import type { RuntimeMetricsHooks } from "../metrics.js";
|
|
@@ -202,6 +205,7 @@ export declare function withoutSandboxProviderIdentity(envelope: Record<string,
|
|
|
202
205
|
export declare function establishSandboxSessionFromEnvelope(settings: Settings, envelope: Record<string, unknown> | null, opts: {
|
|
203
206
|
sessionId: string;
|
|
204
207
|
recovery: "create-or-restore" | "resume-only";
|
|
208
|
+
loadHostWorkspaceArchive?: (ref: WorkspaceArchiveObjectRef) => Promise<WorkspaceArchiveSpool>;
|
|
205
209
|
backendOverride?: SandboxBackend;
|
|
206
210
|
environment?: Record<string, string>;
|
|
207
211
|
onSandboxCreated?: SandboxCreatedCallback;
|
package/dist/sandbox/index.js
CHANGED
|
@@ -110,6 +110,7 @@ import {
|
|
|
110
110
|
buildTerminalServerScript,
|
|
111
111
|
cancelSelfhostedOp,
|
|
112
112
|
captureVerifiedWorkspaceArchive,
|
|
113
|
+
captureWorkspaceArchiveForStorage,
|
|
113
114
|
classifyProviderSandboxFailure,
|
|
114
115
|
clearRunCredentials,
|
|
115
116
|
clearRunCredentialsForAttempt,
|
|
@@ -134,6 +135,7 @@ import {
|
|
|
134
135
|
describeNativeSnapshotArchive,
|
|
135
136
|
deserializeSandboxSessionStateEnvelope,
|
|
136
137
|
desktopCapableBackend,
|
|
138
|
+
disposeWorkspaceArchive,
|
|
137
139
|
dockerNetworkExposedPortEndpoint,
|
|
138
140
|
drainingExhaustedError,
|
|
139
141
|
drainingMessage,
|
|
@@ -265,9 +267,9 @@ import {
|
|
|
265
267
|
withRunCredentialsClient,
|
|
266
268
|
withRunCredentialsSession,
|
|
267
269
|
withoutSandboxProviderIdentity
|
|
268
|
-
} from "../chunk-
|
|
269
|
-
import "../chunk-
|
|
270
|
-
import "../chunk-
|
|
270
|
+
} from "../chunk-LEIGL6X2.js";
|
|
271
|
+
import "../chunk-CD22I76N.js";
|
|
272
|
+
import "../chunk-25B3EQRW.js";
|
|
271
273
|
import "../chunk-PZ5AY32C.js";
|
|
272
274
|
export {
|
|
273
275
|
ActiveBackendUnresolvableError,
|
|
@@ -381,6 +383,7 @@ export {
|
|
|
381
383
|
buildTerminalServerScript,
|
|
382
384
|
cancelSelfhostedOp,
|
|
383
385
|
captureVerifiedWorkspaceArchive,
|
|
386
|
+
captureWorkspaceArchiveForStorage,
|
|
384
387
|
classifyProviderSandboxFailure,
|
|
385
388
|
clearRunCredentials,
|
|
386
389
|
clearRunCredentialsForAttempt,
|
|
@@ -405,6 +408,7 @@ export {
|
|
|
405
408
|
describeNativeSnapshotArchive,
|
|
406
409
|
deserializeSandboxSessionStateEnvelope,
|
|
407
410
|
desktopCapableBackend,
|
|
411
|
+
disposeWorkspaceArchive,
|
|
408
412
|
dockerNetworkExposedPortEndpoint,
|
|
409
413
|
drainingExhaustedError,
|
|
410
414
|
drainingMessage,
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type NativeSnapshotDescriptor, type NativeSnapshotRef, type WorkspaceArchiveDescriptor, type WorkspaceTreeFingerprint } from "@opengeni/contracts";
|
|
2
|
+
import type { VerifiedHostWorkspaceArchive } from "./archive-spool.js";
|
|
2
3
|
export { WORKSPACE_ARCHIVE_DESCRIPTOR_VERSION, decodeNativeSnapshotRef, encodeNativeSnapshotRef, parseWorkspaceArchiveDescriptor, type NativeSnapshotDescriptor, type NativeSnapshotProvider, type NativeSnapshotRef, type TarWorkspaceArchiveDescriptor, type WorkspaceArchiveDescriptor, type WorkspaceTreeFingerprint, } from "@opengeni/contracts";
|
|
3
4
|
export type VerifiedWorkspaceArchive = {
|
|
4
5
|
bytes: Uint8Array;
|
|
@@ -7,6 +8,12 @@ export type VerifiedWorkspaceArchive = {
|
|
|
7
8
|
kind: "tar" | "provider_snapshot";
|
|
8
9
|
nativeSnapshot?: NativeSnapshotRef;
|
|
9
10
|
};
|
|
11
|
+
export type VerifiedWorkspaceArchivePayload = VerifiedWorkspaceArchive | VerifiedHostWorkspaceArchive;
|
|
12
|
+
/** Host-backed portable archives can go directly to object storage without an
|
|
13
|
+
* intermediate whole-document string or buffer. Existing inline/provider APIs
|
|
14
|
+
* retain their compatibility path when disk-backed publication is unavailable. */
|
|
15
|
+
export declare function captureWorkspaceArchiveForStorage(session: unknown, capturedAtMs: number, options: WorkspaceArchiveCaptureOptions, objectStorageAvailable: boolean): Promise<VerifiedWorkspaceArchivePayload>;
|
|
16
|
+
export declare function disposeWorkspaceArchive(archive: VerifiedWorkspaceArchivePayload | undefined): Promise<void>;
|
|
10
17
|
export type WorkspaceArchiveIntegrityCode = "archive_metadata_missing" | "archive_metadata_invalid" | "archive_base64_invalid" | "archive_hash_mismatch" | "archive_hydration_failed" | "workspace_fingerprint_unavailable" | "workspace_changed_during_capture" | "workspace_fingerprint_mismatch" | "native_snapshot_reference_invalid" | "native_snapshot_fallback_unverified";
|
|
11
18
|
export declare class WorkspaceArchiveIntegrityError extends Error {
|
|
12
19
|
readonly code: WorkspaceArchiveIntegrityCode;
|
package/dist/skill-files.d.ts
CHANGED
|
@@ -14,6 +14,10 @@ export declare class SkillFileError extends Error {
|
|
|
14
14
|
constructor(code: "invalid_path" | "invalid_request" | "missing_file" | "output_too_large", message: string);
|
|
15
15
|
}
|
|
16
16
|
export declare function assertSkillRelativePath(path: string): void;
|
|
17
|
+
/** Inventory shares the reader's path validation and never includes file bodies. */
|
|
18
|
+
export declare function listSkillPaths(files: readonly SkillTextFile[], maxFiles: number): {
|
|
19
|
+
paths: string[];
|
|
20
|
+
};
|
|
17
21
|
/** Omitted paths default to the entry point; explicit paths are never expanded. */
|
|
18
22
|
export declare function readSkillFiles(files: readonly SkillTextFile[], paths?: readonly string[]): {
|
|
19
23
|
files: SkillTextFile[];
|
package/dist/skill-library.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { parseSkillFrontmatter as parsePortableSkillFrontmatter } from "@opengeni/contracts";
|
|
2
|
-
export { applySkillFileChanges, assertSkillRelativePath, readSkillFiles, SkillFileError, SKILL_READ_MAX_OUTPUT_BYTES, SKILL_READ_MAX_PATHS, type SkillTextFile, } from "./skill-files.js";
|
|
2
|
+
export { applySkillFileChanges, assertSkillRelativePath, listSkillPaths, readSkillFiles, SkillFileError, SKILL_READ_MAX_OUTPUT_BYTES, SKILL_READ_MAX_PATHS, type SkillTextFile, } from "./skill-files.js";
|
|
3
3
|
/**
|
|
4
4
|
* Metadata for a platform-curated skill. The metadata is deliberately
|
|
5
5
|
* provider-neutral: it describes guidance provenance and compatibility, not
|
package/dist/skill-library.js
CHANGED
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
getSkillLibraryEntry,
|
|
12
12
|
isSkillLibraryEntryId,
|
|
13
13
|
listSkillLibraryEntries,
|
|
14
|
+
listSkillPaths,
|
|
14
15
|
loadSkillLibrarySkill,
|
|
15
16
|
loadSkillManagementSkill,
|
|
16
17
|
parseSkillFrontmatter,
|
|
@@ -19,7 +20,7 @@ import {
|
|
|
19
20
|
skillArtifactContentSha256,
|
|
20
21
|
skillLibraryRepositoryUrl,
|
|
21
22
|
verifySkillLibraryArtifact
|
|
22
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-GB763TSV.js";
|
|
23
24
|
import "./chunk-PZ5AY32C.js";
|
|
24
25
|
export {
|
|
25
26
|
SKILL_MAX_FILES as PORTABLE_SKILL_MAX_FILES,
|
|
@@ -34,6 +35,7 @@ export {
|
|
|
34
35
|
getSkillLibraryEntry,
|
|
35
36
|
isSkillLibraryEntryId,
|
|
36
37
|
listSkillLibraryEntries,
|
|
38
|
+
listSkillPaths,
|
|
37
39
|
loadSkillLibrarySkill,
|
|
38
40
|
loadSkillManagementSkill,
|
|
39
41
|
parseSkillFrontmatter as parsePortableSkillFrontmatter,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
prepareAgentTools
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-GBHOT4KS.js";
|
|
4
|
+
import "./chunk-LEIGL6X2.js";
|
|
5
|
+
import "./chunk-CD22I76N.js";
|
|
6
|
+
import "./chunk-GB763TSV.js";
|
|
7
7
|
import "./chunk-UZ66CGC2.js";
|
|
8
8
|
import "./chunk-JHM4OS7C.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-25B3EQRW.js";
|
|
10
10
|
import "./chunk-PZ5AY32C.js";
|
|
11
11
|
export {
|
|
12
12
|
prepareAgentTools as prepareWorkspaceToolGatewayTools
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opengeni/runtime",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.5.2-canary.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -62,16 +62,16 @@
|
|
|
62
62
|
"@openai/agents": "0.14.3",
|
|
63
63
|
"@openai/agents-core": "0.14.3",
|
|
64
64
|
"@openai/agents-extensions": "0.14.3",
|
|
65
|
-
"@opengeni/agent-proto": "^0.5.1",
|
|
66
|
-
"@opengeni/capabilities": "^0.3.3",
|
|
67
|
-
"@opengeni/codemode": "^0.5.
|
|
68
|
-
"@opengeni/codex": "^0.2.22",
|
|
69
|
-
"@opengeni/config": "^1.0
|
|
70
|
-
"@opengeni/contracts": "^
|
|
71
|
-
"@opengeni/network": "^0.3.1",
|
|
72
|
-
"@opengeni/sdk": "^
|
|
73
|
-
"@opengeni/tool-gateway": "^0.1.
|
|
74
|
-
"@opengeni/xai-subscription": "^0.1.4",
|
|
65
|
+
"@opengeni/agent-proto": "^0.5.1-canary.25",
|
|
66
|
+
"@opengeni/capabilities": "^0.3.3-canary.7",
|
|
67
|
+
"@opengeni/codemode": "^0.5.5-canary.0",
|
|
68
|
+
"@opengeni/codex": "^0.2.22-canary.7",
|
|
69
|
+
"@opengeni/config": "^1.1.1-canary.0",
|
|
70
|
+
"@opengeni/contracts": "^3.0.1-canary.0",
|
|
71
|
+
"@opengeni/network": "^0.3.1-canary.7",
|
|
72
|
+
"@opengeni/sdk": "^5.0.3-canary.0",
|
|
73
|
+
"@opengeni/tool-gateway": "^0.1.6-canary.0",
|
|
74
|
+
"@opengeni/xai-subscription": "^0.1.4-canary.7",
|
|
75
75
|
"debug": "4.4.3",
|
|
76
76
|
"modal": "0.9.0",
|
|
77
77
|
"openai": "6.47.0",
|
|
@@ -83,7 +83,9 @@ When save, publish, or install returns `humanInput`, call
|
|
|
83
83
|
`request_human_input` with that exact payload. The card displays the complete
|
|
84
84
|
immutable Skill files. The initiating human's Save activates that exact revision
|
|
85
85
|
in the response transaction, before the session resumes. No follow-up activation
|
|
86
|
-
tool or second review is needed.
|
|
86
|
+
tool or second review is needed. The runtime owns the review card's wording and
|
|
87
|
+
Save/Don't save choices; do not combine it with other questions. Don't save does
|
|
88
|
+
not activate the Skill, and Other is not a valid Skill decision.
|
|
87
89
|
If the Skill changes before Save, make a new proposal for a fresh decision.
|
|
88
90
|
Autonomous saves return applied and need no confirmation. Off refuses durable
|
|
89
91
|
agent changes.
|