@tangle-network/agent-interface 0.45.0 → 0.46.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.
Files changed (84) hide show
  1. package/README.md +1 -1
  2. package/dist/agent-candidate-profile-schema.d.ts +2 -2
  3. package/dist/agent-candidate-promotion-schema.d.ts +22 -22
  4. package/dist/agent-candidate-schema-common.js +1 -1
  5. package/dist/agent-candidate-schema.d.ts +2 -2
  6. package/dist/agent-execution-preparation.d.ts +26 -26
  7. package/dist/agent-profile.d.ts +10 -3
  8. package/dist/agent-profile.js +45 -22
  9. package/dist/backend-message.d.ts +14 -0
  10. package/dist/backend-message.js +1 -0
  11. package/dist/contract-limits.d.ts +26 -0
  12. package/dist/contract-limits.js +175 -0
  13. package/dist/environment-exact-process.d.ts +161 -0
  14. package/dist/environment-exact-process.js +1 -0
  15. package/dist/environment-profile-capabilities.d.ts +26 -0
  16. package/dist/environment-profile-capabilities.js +34 -0
  17. package/dist/environment-provider.d.ts +3 -730
  18. package/dist/environment-provider.js +3 -245
  19. package/dist/environment-requests.d.ts +70 -0
  20. package/dist/environment-requests.js +1 -0
  21. package/dist/environment-runtime.d.ts +834 -0
  22. package/dist/environment-runtime.js +228 -0
  23. package/dist/execution-types.d.ts +47 -0
  24. package/dist/execution-types.js +1 -0
  25. package/dist/host-services.d.ts +91 -0
  26. package/dist/host-services.js +1 -0
  27. package/dist/index.d.ts +10 -617
  28. package/dist/index.js +10 -125
  29. package/dist/interaction-answer-validation.d.ts +13 -0
  30. package/dist/interaction-answer-validation.js +149 -0
  31. package/dist/interaction-data.d.ts +22 -0
  32. package/dist/interaction-data.js +46 -0
  33. package/dist/interaction-envelope.d.ts +258 -0
  34. package/dist/interaction-envelope.js +245 -0
  35. package/dist/interaction-fields.d.ts +130 -0
  36. package/dist/interaction-fields.js +227 -0
  37. package/dist/interaction-permissions.d.ts +28 -0
  38. package/dist/interaction-permissions.js +57 -0
  39. package/dist/interaction-resolution-validation.d.ts +9 -0
  40. package/dist/interaction-resolution-validation.js +50 -0
  41. package/dist/interaction-response-validation.d.ts +17 -0
  42. package/dist/interaction-response-validation.js +102 -0
  43. package/dist/interaction.d.ts +6 -397
  44. package/dist/interaction.js +6 -603
  45. package/dist/mcp.d.ts +38 -0
  46. package/dist/mcp.js +1 -0
  47. package/dist/parts.d.ts +104 -0
  48. package/dist/parts.js +55 -0
  49. package/dist/portable-context-base.d.ts +82 -0
  50. package/dist/portable-context-base.js +63 -0
  51. package/dist/portable-context-continuation.d.ts +168 -0
  52. package/dist/portable-context-continuation.js +194 -0
  53. package/dist/portable-context-plan-request.d.ts +86 -0
  54. package/dist/portable-context-plan-request.js +102 -0
  55. package/dist/portable-context-plan.d.ts +229 -0
  56. package/dist/portable-context-plan.js +241 -0
  57. package/dist/portable-context-shared.d.ts +36 -0
  58. package/dist/portable-context-shared.js +46 -0
  59. package/dist/portable-context-transfer.d.ts +319 -0
  60. package/dist/portable-context-transfer.js +206 -0
  61. package/dist/portable-context.d.ts +5 -753
  62. package/dist/portable-context.js +5 -754
  63. package/dist/profile-diff.js +56 -47
  64. package/dist/provider-adapter.d.ts +45 -0
  65. package/dist/provider-adapter.js +1 -0
  66. package/dist/provider-config.d.ts +58 -0
  67. package/dist/provider-config.js +42 -0
  68. package/dist/runtime-control.d.ts +87 -10
  69. package/dist/runtime-control.js +159 -38
  70. package/dist/stream-events.d.ts +55 -0
  71. package/dist/stream-events.js +1 -0
  72. package/dist/workspace-branching-shared.d.ts +7 -0
  73. package/dist/workspace-branching-shared.js +20 -0
  74. package/dist/workspace-branching.d.ts +4 -254
  75. package/dist/workspace-branching.js +4 -400
  76. package/dist/workspace-checkpoint.d.ts +99 -0
  77. package/dist/workspace-checkpoint.js +169 -0
  78. package/dist/workspace-cleanup.d.ts +85 -0
  79. package/dist/workspace-cleanup.js +156 -0
  80. package/dist/workspace-confidentiality.d.ts +59 -0
  81. package/dist/workspace-confidentiality.js +123 -0
  82. package/dist/workspace-fork.d.ts +182 -0
  83. package/dist/workspace-fork.js +267 -0
  84. package/package.json +1 -1
@@ -0,0 +1,834 @@
1
+ import { z } from "zod";
2
+ import type { AgentProfileCapabilities, AgentProfileValidationResult } from "./agent-profile.js";
3
+ import type { InputPart } from "./parts.js";
4
+ import type { StreamEvent } from "./stream-events.js";
5
+ import type { TokenUsage } from "./execution-types.js";
6
+ import { type InteractionAcknowledgement, type InteractionCapabilities, type InteractionResponseCommand } from "./interaction.js";
7
+ import { type ContextTransferReceipt, type ContextTransferRequest, type NativeContextBoundaryProof, type NativeContextContinuationRequest, type NativeContextContinuationTurn } from "./portable-context.js";
8
+ import { type AgentRunCancellationAcknowledgement, type AgentRunCancellationRequest, type AgentRunControlRef } from "./runtime-control.js";
9
+ import type { AgentWorkspaceBranching } from "./workspace-branching.js";
10
+ import type { AgentEnvironmentQuery, AgentEnvironmentStatus, AgentEnvironmentSummary, AgentProfileRef, AgentSessionStatus, CheckpointRef, CheckpointRequest, ExecRequest, ExecResult, ForkRequest, PlacementInfo, ResourceRequest, WorkspaceRequest } from "./environment-requests.js";
11
+ import type { AgentExactProcessEgressMode, AgentExactProcessProvider } from "./environment-exact-process.js";
12
+ export interface AgentTurnInput {
13
+ prompt?: string;
14
+ parts?: InputPart[];
15
+ sessionId?: string;
16
+ model?: string;
17
+ timeoutMs?: number;
18
+ executionId?: string;
19
+ lastEventId?: string;
20
+ turnId?: string;
21
+ detach?: boolean;
22
+ /** Stable coordinates for a retained run when one already exists. */
23
+ controlRef?: AgentRunControlRef;
24
+ /** Approved portable history for a fresh provider session. */
25
+ contextTransfer?: ContextTransferRequest;
26
+ /** Verified same-session continuation; never carries duplicate history. */
27
+ nativeContinuation?: NativeContextContinuationRequest;
28
+ context?: Record<string, unknown>;
29
+ signal?: AbortSignal;
30
+ providerOptions?: Record<string, unknown>;
31
+ }
32
+ export declare const AgentTurnInputSchema: z.ZodObject<{
33
+ prompt: z.ZodOptional<z.ZodString>;
34
+ parts: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
35
+ type: z.ZodLiteral<"text">;
36
+ text: z.ZodString;
37
+ }, z.core.$strict>, z.ZodObject<{
38
+ type: z.ZodLiteral<"file">;
39
+ filename: z.ZodOptional<z.ZodString>;
40
+ mediaType: z.ZodOptional<z.ZodString>;
41
+ url: z.ZodOptional<z.ZodString>;
42
+ path: z.ZodOptional<z.ZodString>;
43
+ content: z.ZodOptional<z.ZodString>;
44
+ }, z.core.$strict>, z.ZodObject<{
45
+ type: z.ZodLiteral<"image">;
46
+ filename: z.ZodOptional<z.ZodString>;
47
+ mediaType: z.ZodOptional<z.ZodString>;
48
+ url: z.ZodOptional<z.ZodString>;
49
+ path: z.ZodOptional<z.ZodString>;
50
+ }, z.core.$strict>], "type">>>;
51
+ sessionId: z.ZodOptional<z.ZodString>;
52
+ model: z.ZodOptional<z.ZodString>;
53
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
54
+ executionId: z.ZodOptional<z.ZodString>;
55
+ lastEventId: z.ZodOptional<z.ZodString>;
56
+ turnId: z.ZodOptional<z.ZodString>;
57
+ detach: z.ZodOptional<z.ZodBoolean>;
58
+ controlRef: z.ZodOptional<z.ZodObject<{
59
+ runId: z.ZodString;
60
+ provider: z.ZodString;
61
+ environmentId: z.ZodString;
62
+ sessionId: z.ZodOptional<z.ZodString>;
63
+ executionId: z.ZodOptional<z.ZodString>;
64
+ requestDigest: z.ZodOptional<z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>>;
65
+ }, z.core.$strict>>;
66
+ contextTransfer: z.ZodOptional<z.ZodObject<{
67
+ operationId: z.ZodString;
68
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
69
+ plan: z.ZodObject<{
70
+ planId: z.ZodString;
71
+ source: z.ZodObject<{
72
+ source: z.ZodObject<{
73
+ runId: z.ZodString;
74
+ messageId: z.ZodString;
75
+ provider: z.ZodString;
76
+ environmentId: z.ZodString;
77
+ sessionId: z.ZodString;
78
+ executionId: z.ZodString;
79
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
80
+ branchId: z.ZodOptional<z.ZodString>;
81
+ }, z.core.$strict>;
82
+ completeness: z.ZodEnum<{
83
+ complete: "complete";
84
+ partial: "partial";
85
+ }>;
86
+ messages: z.ZodArray<z.ZodObject<{
87
+ id: z.ZodString;
88
+ role: z.ZodEnum<{
89
+ user: "user";
90
+ assistant: "assistant";
91
+ system: "system";
92
+ }>;
93
+ parts: z.ZodArray<z.ZodCustom<unknown, unknown>>;
94
+ timestamp: z.ZodISODateTime;
95
+ metadata: z.ZodOptional<z.ZodCustom<Record<string, unknown>, Record<string, unknown>>>;
96
+ }, z.core.$strict>>;
97
+ attachments: z.ZodArray<z.ZodObject<{
98
+ messageId: z.ZodString;
99
+ partIndex: z.ZodNumber;
100
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
101
+ name: z.ZodOptional<z.ZodString>;
102
+ mediaType: z.ZodOptional<z.ZodString>;
103
+ }, z.core.$strict>>;
104
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
105
+ }, z.core.$strict>;
106
+ destination: z.ZodObject<{
107
+ runner: z.ZodString;
108
+ provider: z.ZodString;
109
+ environmentId: z.ZodString;
110
+ sessionId: z.ZodString;
111
+ runId: z.ZodString;
112
+ executionId: z.ZodString;
113
+ model: z.ZodOptional<z.ZodString>;
114
+ profileDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
115
+ }, z.core.$strict>;
116
+ messages: z.ZodArray<z.ZodObject<{
117
+ messageId: z.ZodString;
118
+ action: z.ZodEnum<{
119
+ include: "include";
120
+ omit: "omit";
121
+ }>;
122
+ parts: z.ZodArray<z.ZodObject<{
123
+ partIndex: z.ZodNumber;
124
+ action: z.ZodEnum<{
125
+ transform: "transform";
126
+ include: "include";
127
+ omit: "omit";
128
+ }>;
129
+ output: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
130
+ type: z.ZodLiteral<"text">;
131
+ text: z.ZodString;
132
+ }, z.core.$strict>, z.ZodObject<{
133
+ type: z.ZodLiteral<"file">;
134
+ filename: z.ZodOptional<z.ZodString>;
135
+ mediaType: z.ZodOptional<z.ZodString>;
136
+ url: z.ZodOptional<z.ZodString>;
137
+ path: z.ZodOptional<z.ZodString>;
138
+ content: z.ZodOptional<z.ZodString>;
139
+ }, z.core.$strict>, z.ZodObject<{
140
+ type: z.ZodLiteral<"image">;
141
+ filename: z.ZodOptional<z.ZodString>;
142
+ mediaType: z.ZodOptional<z.ZodString>;
143
+ url: z.ZodOptional<z.ZodString>;
144
+ path: z.ZodOptional<z.ZodString>;
145
+ }, z.core.$strict>], "type">>;
146
+ reason: z.ZodOptional<z.ZodString>;
147
+ }, z.core.$strict>>;
148
+ reason: z.ZodOptional<z.ZodString>;
149
+ }, z.core.$strict>>;
150
+ context: z.ZodObject<{
151
+ source: z.ZodObject<{
152
+ runId: z.ZodString;
153
+ messageId: z.ZodString;
154
+ provider: z.ZodString;
155
+ environmentId: z.ZodString;
156
+ sessionId: z.ZodString;
157
+ executionId: z.ZodString;
158
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
159
+ branchId: z.ZodOptional<z.ZodString>;
160
+ }, z.core.$strict>;
161
+ completeness: z.ZodEnum<{
162
+ complete: "complete";
163
+ partial: "partial";
164
+ }>;
165
+ messages: z.ZodArray<z.ZodObject<{
166
+ id: z.ZodString;
167
+ role: z.ZodEnum<{
168
+ user: "user";
169
+ assistant: "assistant";
170
+ system: "system";
171
+ }>;
172
+ parts: z.ZodArray<z.ZodCustom<unknown, unknown>>;
173
+ timestamp: z.ZodISODateTime;
174
+ metadata: z.ZodOptional<z.ZodCustom<Record<string, unknown>, Record<string, unknown>>>;
175
+ }, z.core.$strict>>;
176
+ attachments: z.ZodArray<z.ZodObject<{
177
+ messageId: z.ZodString;
178
+ partIndex: z.ZodNumber;
179
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
180
+ name: z.ZodOptional<z.ZodString>;
181
+ mediaType: z.ZodOptional<z.ZodString>;
182
+ }, z.core.$strict>>;
183
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
184
+ }, z.core.$strict>;
185
+ estimatedTokens: z.ZodOptional<z.ZodNumber>;
186
+ requiresAcceptance: z.ZodBoolean;
187
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
188
+ }, z.core.$strict>;
189
+ acceptance: z.ZodObject<{
190
+ planDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
191
+ acceptedAt: z.ZodISODateTime;
192
+ acceptedBy: z.ZodEnum<{
193
+ policy: "policy";
194
+ user: "user";
195
+ system: "system";
196
+ }>;
197
+ }, z.core.$strict>;
198
+ }, z.core.$strict>>;
199
+ nativeContinuation: z.ZodOptional<z.ZodObject<{
200
+ operationId: z.ZodString;
201
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
202
+ turnDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
203
+ run: z.ZodObject<{
204
+ runId: z.ZodString;
205
+ provider: z.ZodString;
206
+ environmentId: z.ZodString;
207
+ sessionId: z.ZodString;
208
+ executionId: z.ZodString;
209
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
210
+ }, z.core.$strict>;
211
+ expectedBoundary: z.ZodObject<{
212
+ runId: z.ZodString;
213
+ provider: z.ZodString;
214
+ environmentId: z.ZodString;
215
+ sessionId: z.ZodString;
216
+ executionId: z.ZodString;
217
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
218
+ boundary: z.ZodDiscriminatedUnion<[z.ZodObject<{
219
+ kind: z.ZodLiteral<"token">;
220
+ token: z.ZodString;
221
+ }, z.core.$strict>, z.ZodObject<{
222
+ kind: z.ZodLiteral<"revision">;
223
+ revision: z.ZodString;
224
+ }, z.core.$strict>, z.ZodObject<{
225
+ kind: z.ZodLiteral<"digest">;
226
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
227
+ }, z.core.$strict>, z.ZodObject<{
228
+ kind: z.ZodLiteral<"messages">;
229
+ messageIds: z.ZodArray<z.ZodString>;
230
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
231
+ }, z.core.$strict>], "kind">;
232
+ observedAt: z.ZodISODateTime;
233
+ }, z.core.$strict>;
234
+ }, z.core.$strict>>;
235
+ context: z.ZodOptional<z.ZodCustom<Record<string, unknown>, Record<string, unknown>>>;
236
+ signal: z.ZodOptional<z.ZodCustom<AbortSignal, AbortSignal>>;
237
+ providerOptions: z.ZodOptional<z.ZodCustom<Record<string, unknown>, Record<string, unknown>>>;
238
+ }, z.core.$strict>;
239
+ export interface AgentTurnResult {
240
+ text: string;
241
+ success: boolean;
242
+ error?: string;
243
+ sessionId?: string;
244
+ usage?: TokenUsage;
245
+ metadata?: Record<string, unknown>;
246
+ events?: AgentEnvironmentEvent[];
247
+ contextTransferReceipt?: ContextTransferReceipt;
248
+ }
249
+ /** Runtime validator for a provider turn returned from durable continuation. */
250
+ export declare const AgentTurnResultSchema: z.ZodObject<{
251
+ text: z.ZodString;
252
+ success: z.ZodBoolean;
253
+ error: z.ZodOptional<z.ZodString>;
254
+ sessionId: z.ZodOptional<z.ZodString>;
255
+ usage: z.ZodOptional<z.ZodObject<{
256
+ inputTokens: z.ZodNumber;
257
+ outputTokens: z.ZodNumber;
258
+ totalTokens: z.ZodOptional<z.ZodNumber>;
259
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
260
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
261
+ reasoningTokens: z.ZodOptional<z.ZodNumber>;
262
+ cost: z.ZodOptional<z.ZodNumber>;
263
+ }, z.core.$strict>>;
264
+ metadata: z.ZodOptional<z.ZodCustom<Record<string, unknown>, Record<string, unknown>>>;
265
+ events: z.ZodOptional<z.ZodArray<z.ZodObject<{
266
+ type: z.ZodString;
267
+ data: z.ZodCustom<Record<string, unknown>, Record<string, unknown>>;
268
+ id: z.ZodOptional<z.ZodString>;
269
+ normalized: z.ZodOptional<z.ZodType<StreamEvent, unknown, z.core.$ZodTypeInternals<StreamEvent, unknown>>>;
270
+ usage: z.ZodOptional<z.ZodObject<{
271
+ inputTokens: z.ZodNumber;
272
+ outputTokens: z.ZodNumber;
273
+ totalTokens: z.ZodOptional<z.ZodNumber>;
274
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
275
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
276
+ reasoningTokens: z.ZodOptional<z.ZodNumber>;
277
+ cost: z.ZodOptional<z.ZodNumber>;
278
+ }, z.core.$strict>>;
279
+ providerEvent: z.ZodOptional<z.ZodCustom<unknown, unknown>>;
280
+ }, z.core.$strict>>>;
281
+ contextTransferReceipt: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
282
+ status: z.ZodLiteral<"accepted" | "replayed">;
283
+ operationId: z.ZodString;
284
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
285
+ planDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
286
+ contextDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
287
+ source: z.ZodObject<{
288
+ runId: z.ZodString;
289
+ messageId: z.ZodString;
290
+ provider: z.ZodString;
291
+ environmentId: z.ZodString;
292
+ sessionId: z.ZodString;
293
+ executionId: z.ZodString;
294
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
295
+ branchId: z.ZodOptional<z.ZodString>;
296
+ }, z.core.$strict>;
297
+ destination: z.ZodObject<{
298
+ runner: z.ZodString;
299
+ provider: z.ZodString;
300
+ environmentId: z.ZodString;
301
+ sessionId: z.ZodString;
302
+ runId: z.ZodString;
303
+ executionId: z.ZodString;
304
+ model: z.ZodOptional<z.ZodString>;
305
+ profileDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
306
+ }, z.core.$strict>;
307
+ provider: z.ZodString;
308
+ environmentId: z.ZodString;
309
+ sessionId: z.ZodString;
310
+ runId: z.ZodString;
311
+ executionId: z.ZodString;
312
+ sessionCreatedForOperationId: z.ZodString;
313
+ sessionCreatedAt: z.ZodISODateTime;
314
+ transferredMessageIds: z.ZodArray<z.ZodString>;
315
+ omittedMessageIds: z.ZodArray<z.ZodString>;
316
+ admittedAt: z.ZodISODateTime;
317
+ }, z.core.$strict>, z.ZodObject<{
318
+ status: z.ZodLiteral<"accepted" | "replayed">;
319
+ operationId: z.ZodString;
320
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
321
+ planDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
322
+ contextDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
323
+ source: z.ZodObject<{
324
+ runId: z.ZodString;
325
+ messageId: z.ZodString;
326
+ provider: z.ZodString;
327
+ environmentId: z.ZodString;
328
+ sessionId: z.ZodString;
329
+ executionId: z.ZodString;
330
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
331
+ branchId: z.ZodOptional<z.ZodString>;
332
+ }, z.core.$strict>;
333
+ destination: z.ZodObject<{
334
+ runner: z.ZodString;
335
+ provider: z.ZodString;
336
+ environmentId: z.ZodString;
337
+ sessionId: z.ZodString;
338
+ runId: z.ZodString;
339
+ executionId: z.ZodString;
340
+ model: z.ZodOptional<z.ZodString>;
341
+ profileDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
342
+ }, z.core.$strict>;
343
+ provider: z.ZodString;
344
+ environmentId: z.ZodString;
345
+ sessionId: z.ZodString;
346
+ runId: z.ZodString;
347
+ executionId: z.ZodString;
348
+ sessionCreatedForOperationId: z.ZodString;
349
+ sessionCreatedAt: z.ZodISODateTime;
350
+ transferredMessageIds: z.ZodArray<z.ZodString>;
351
+ omittedMessageIds: z.ZodArray<z.ZodString>;
352
+ admittedAt: z.ZodISODateTime;
353
+ }, z.core.$strict>], "status">>;
354
+ }, z.core.$strict>;
355
+ /** Durable provider result for one digest-bound native continuation. */
356
+ export declare const AgentNativeContextContinuationResultSchema: z.ZodUnion<readonly [z.ZodObject<{
357
+ acknowledgement: z.ZodIntersection<z.ZodObject<{
358
+ operationId: z.ZodString;
359
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
360
+ status: z.ZodEnum<{
361
+ conflict: "conflict";
362
+ accepted: "accepted";
363
+ transport_failure: "transport_failure";
364
+ replayed: "replayed";
365
+ boundary_mismatch: "boundary_mismatch";
366
+ unverified: "unverified";
367
+ unknown_session: "unknown_session";
368
+ }>;
369
+ historyMessagesSent: z.ZodNumber;
370
+ existingRequestDigest: z.ZodOptional<z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>>;
371
+ actualBoundary: z.ZodOptional<z.ZodObject<{
372
+ runId: z.ZodString;
373
+ provider: z.ZodString;
374
+ environmentId: z.ZodString;
375
+ sessionId: z.ZodString;
376
+ executionId: z.ZodString;
377
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
378
+ boundary: z.ZodDiscriminatedUnion<[z.ZodObject<{
379
+ kind: z.ZodLiteral<"token">;
380
+ token: z.ZodString;
381
+ }, z.core.$strict>, z.ZodObject<{
382
+ kind: z.ZodLiteral<"revision">;
383
+ revision: z.ZodString;
384
+ }, z.core.$strict>, z.ZodObject<{
385
+ kind: z.ZodLiteral<"digest">;
386
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
387
+ }, z.core.$strict>, z.ZodObject<{
388
+ kind: z.ZodLiteral<"messages">;
389
+ messageIds: z.ZodArray<z.ZodString>;
390
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
391
+ }, z.core.$strict>], "kind">;
392
+ observedAt: z.ZodISODateTime;
393
+ }, z.core.$strict>>;
394
+ message: z.ZodOptional<z.ZodString>;
395
+ retryable: z.ZodOptional<z.ZodBoolean>;
396
+ }, z.core.$strict>, z.ZodObject<{
397
+ status: z.ZodEnum<{
398
+ accepted: "accepted";
399
+ replayed: "replayed";
400
+ }>;
401
+ }, z.core.$strip>>;
402
+ result: z.ZodObject<{
403
+ text: z.ZodString;
404
+ success: z.ZodBoolean;
405
+ error: z.ZodOptional<z.ZodString>;
406
+ sessionId: z.ZodOptional<z.ZodString>;
407
+ usage: z.ZodOptional<z.ZodObject<{
408
+ inputTokens: z.ZodNumber;
409
+ outputTokens: z.ZodNumber;
410
+ totalTokens: z.ZodOptional<z.ZodNumber>;
411
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
412
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
413
+ reasoningTokens: z.ZodOptional<z.ZodNumber>;
414
+ cost: z.ZodOptional<z.ZodNumber>;
415
+ }, z.core.$strict>>;
416
+ metadata: z.ZodOptional<z.ZodCustom<Record<string, unknown>, Record<string, unknown>>>;
417
+ events: z.ZodOptional<z.ZodArray<z.ZodObject<{
418
+ type: z.ZodString;
419
+ data: z.ZodCustom<Record<string, unknown>, Record<string, unknown>>;
420
+ id: z.ZodOptional<z.ZodString>;
421
+ normalized: z.ZodOptional<z.ZodType<StreamEvent, unknown, z.core.$ZodTypeInternals<StreamEvent, unknown>>>;
422
+ usage: z.ZodOptional<z.ZodObject<{
423
+ inputTokens: z.ZodNumber;
424
+ outputTokens: z.ZodNumber;
425
+ totalTokens: z.ZodOptional<z.ZodNumber>;
426
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
427
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
428
+ reasoningTokens: z.ZodOptional<z.ZodNumber>;
429
+ cost: z.ZodOptional<z.ZodNumber>;
430
+ }, z.core.$strict>>;
431
+ providerEvent: z.ZodOptional<z.ZodCustom<unknown, unknown>>;
432
+ }, z.core.$strict>>>;
433
+ contextTransferReceipt: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
434
+ status: z.ZodLiteral<"accepted" | "replayed">;
435
+ operationId: z.ZodString;
436
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
437
+ planDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
438
+ contextDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
439
+ source: z.ZodObject<{
440
+ runId: z.ZodString;
441
+ messageId: z.ZodString;
442
+ provider: z.ZodString;
443
+ environmentId: z.ZodString;
444
+ sessionId: z.ZodString;
445
+ executionId: z.ZodString;
446
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
447
+ branchId: z.ZodOptional<z.ZodString>;
448
+ }, z.core.$strict>;
449
+ destination: z.ZodObject<{
450
+ runner: z.ZodString;
451
+ provider: z.ZodString;
452
+ environmentId: z.ZodString;
453
+ sessionId: z.ZodString;
454
+ runId: z.ZodString;
455
+ executionId: z.ZodString;
456
+ model: z.ZodOptional<z.ZodString>;
457
+ profileDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
458
+ }, z.core.$strict>;
459
+ provider: z.ZodString;
460
+ environmentId: z.ZodString;
461
+ sessionId: z.ZodString;
462
+ runId: z.ZodString;
463
+ executionId: z.ZodString;
464
+ sessionCreatedForOperationId: z.ZodString;
465
+ sessionCreatedAt: z.ZodISODateTime;
466
+ transferredMessageIds: z.ZodArray<z.ZodString>;
467
+ omittedMessageIds: z.ZodArray<z.ZodString>;
468
+ admittedAt: z.ZodISODateTime;
469
+ }, z.core.$strict>, z.ZodObject<{
470
+ status: z.ZodLiteral<"accepted" | "replayed">;
471
+ operationId: z.ZodString;
472
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
473
+ planDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
474
+ contextDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
475
+ source: z.ZodObject<{
476
+ runId: z.ZodString;
477
+ messageId: z.ZodString;
478
+ provider: z.ZodString;
479
+ environmentId: z.ZodString;
480
+ sessionId: z.ZodString;
481
+ executionId: z.ZodString;
482
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
483
+ branchId: z.ZodOptional<z.ZodString>;
484
+ }, z.core.$strict>;
485
+ destination: z.ZodObject<{
486
+ runner: z.ZodString;
487
+ provider: z.ZodString;
488
+ environmentId: z.ZodString;
489
+ sessionId: z.ZodString;
490
+ runId: z.ZodString;
491
+ executionId: z.ZodString;
492
+ model: z.ZodOptional<z.ZodString>;
493
+ profileDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
494
+ }, z.core.$strict>;
495
+ provider: z.ZodString;
496
+ environmentId: z.ZodString;
497
+ sessionId: z.ZodString;
498
+ runId: z.ZodString;
499
+ executionId: z.ZodString;
500
+ sessionCreatedForOperationId: z.ZodString;
501
+ sessionCreatedAt: z.ZodISODateTime;
502
+ transferredMessageIds: z.ZodArray<z.ZodString>;
503
+ omittedMessageIds: z.ZodArray<z.ZodString>;
504
+ admittedAt: z.ZodISODateTime;
505
+ }, z.core.$strict>], "status">>;
506
+ }, z.core.$strict>;
507
+ controlRef: z.ZodObject<{
508
+ runId: z.ZodString;
509
+ provider: z.ZodString;
510
+ environmentId: z.ZodString;
511
+ sessionId: z.ZodString;
512
+ executionId: z.ZodString;
513
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
514
+ }, z.core.$strict>;
515
+ }, z.core.$strict>, z.ZodObject<{
516
+ acknowledgement: z.ZodIntersection<z.ZodObject<{
517
+ operationId: z.ZodString;
518
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
519
+ status: z.ZodEnum<{
520
+ conflict: "conflict";
521
+ accepted: "accepted";
522
+ transport_failure: "transport_failure";
523
+ replayed: "replayed";
524
+ boundary_mismatch: "boundary_mismatch";
525
+ unverified: "unverified";
526
+ unknown_session: "unknown_session";
527
+ }>;
528
+ historyMessagesSent: z.ZodNumber;
529
+ existingRequestDigest: z.ZodOptional<z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>>;
530
+ actualBoundary: z.ZodOptional<z.ZodObject<{
531
+ runId: z.ZodString;
532
+ provider: z.ZodString;
533
+ environmentId: z.ZodString;
534
+ sessionId: z.ZodString;
535
+ executionId: z.ZodString;
536
+ requestDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
537
+ boundary: z.ZodDiscriminatedUnion<[z.ZodObject<{
538
+ kind: z.ZodLiteral<"token">;
539
+ token: z.ZodString;
540
+ }, z.core.$strict>, z.ZodObject<{
541
+ kind: z.ZodLiteral<"revision">;
542
+ revision: z.ZodString;
543
+ }, z.core.$strict>, z.ZodObject<{
544
+ kind: z.ZodLiteral<"digest">;
545
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
546
+ }, z.core.$strict>, z.ZodObject<{
547
+ kind: z.ZodLiteral<"messages">;
548
+ messageIds: z.ZodArray<z.ZodString>;
549
+ digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
550
+ }, z.core.$strict>], "kind">;
551
+ observedAt: z.ZodISODateTime;
552
+ }, z.core.$strict>>;
553
+ message: z.ZodOptional<z.ZodString>;
554
+ retryable: z.ZodOptional<z.ZodBoolean>;
555
+ }, z.core.$strict>, z.ZodObject<{
556
+ status: z.ZodEnum<{
557
+ conflict: "conflict";
558
+ transport_failure: "transport_failure";
559
+ boundary_mismatch: "boundary_mismatch";
560
+ unverified: "unverified";
561
+ unknown_session: "unknown_session";
562
+ }>;
563
+ }, z.core.$strip>>;
564
+ }, z.core.$strict>]>;
565
+ export type AgentNativeContextContinuationResult = z.infer<typeof AgentNativeContextContinuationResultSchema>;
566
+ /** Runtime-only controls kept outside the digest-bound user turn. */
567
+ export interface AgentNativeContextContinuationOptions {
568
+ turn: NativeContextContinuationTurn;
569
+ timeoutMs?: number;
570
+ signal?: AbortSignal;
571
+ }
572
+ /** Cross-check a successful native continuation against its retained session. */
573
+ export declare function agentNativeContextContinuationResultMatchesRequest(request: NativeContextContinuationRequest, outcome: AgentNativeContextContinuationResult): boolean;
574
+ export interface AgentSessionRef {
575
+ id: string;
576
+ provider?: string;
577
+ controlRef?: AgentRunControlRef;
578
+ contextTransferReceipt?: ContextTransferReceipt;
579
+ metadata?: Record<string, unknown>;
580
+ }
581
+ export interface AgentEnvironmentEvent {
582
+ type: string;
583
+ data: Record<string, unknown>;
584
+ id?: string;
585
+ normalized?: StreamEvent;
586
+ usage?: TokenUsage;
587
+ providerEvent?: unknown;
588
+ }
589
+ export interface AgentSession {
590
+ readonly id: string;
591
+ readonly controlRef?: AgentRunControlRef;
592
+ status(options?: {
593
+ signal?: AbortSignal;
594
+ }): Promise<AgentSessionStatus | null>;
595
+ events(options?: {
596
+ /** Exclusive stable event id previously emitted by this session. */
597
+ since?: string;
598
+ /** Provider execution selected by the durable control reference, when required. */
599
+ executionId?: string;
600
+ signal?: AbortSignal;
601
+ }): AsyncIterable<AgentEnvironmentEvent>;
602
+ result(options?: {
603
+ signal?: AbortSignal;
604
+ }): Promise<AgentTurnResult>;
605
+ prompt(input: AgentTurnInput): Promise<AgentTurnResult>;
606
+ respondToInteraction?(command: InteractionResponseCommand, options?: {
607
+ signal?: AbortSignal;
608
+ }): Promise<InteractionAcknowledgement>;
609
+ contextBoundary?(options?: {
610
+ signal?: AbortSignal;
611
+ }): Promise<NativeContextBoundaryProof | null>;
612
+ continueNative?(request: NativeContextContinuationRequest, options: AgentNativeContextContinuationOptions): Promise<AgentNativeContextContinuationResult>;
613
+ cancelRun?(request: AgentRunCancellationRequest, options?: {
614
+ signal?: AbortSignal;
615
+ }): Promise<AgentRunCancellationAcknowledgement>;
616
+ cancel(options?: {
617
+ signal?: AbortSignal;
618
+ }): Promise<void>;
619
+ }
620
+ export interface AgentEnvironment {
621
+ readonly id: string;
622
+ readonly provider: string;
623
+ readonly name?: string;
624
+ status(options?: {
625
+ signal?: AbortSignal;
626
+ }): Promise<AgentEnvironmentStatus>;
627
+ stream(input: AgentTurnInput): AsyncIterable<AgentEnvironmentEvent>;
628
+ dispatch?(input: AgentTurnInput): Promise<AgentSessionRef>;
629
+ session?(id: string, options?: {
630
+ controlRef?: AgentRunControlRef;
631
+ signal?: AbortSignal;
632
+ }): AgentSession;
633
+ respondToInteraction?(command: InteractionResponseCommand, options?: {
634
+ signal?: AbortSignal;
635
+ }): Promise<InteractionAcknowledgement>;
636
+ read?(path: string, options?: {
637
+ sessionId?: string;
638
+ signal?: AbortSignal;
639
+ }): Promise<string>;
640
+ write?(path: string, content: string, options?: {
641
+ sessionId?: string;
642
+ signal?: AbortSignal;
643
+ }): Promise<void>;
644
+ exec?(command: string, options?: ExecRequest): Promise<ExecResult>;
645
+ checkpoint?(options?: CheckpointRequest & {
646
+ signal?: AbortSignal;
647
+ }): Promise<CheckpointRef>;
648
+ fork?(checkpoint: CheckpointRef, options?: ForkRequest & {
649
+ signal?: AbortSignal;
650
+ }): Promise<AgentEnvironment>;
651
+ /** Durable, retry-safe checkpoint and environment-fork operations. */
652
+ readonly workspaceBranching?: AgentWorkspaceBranching;
653
+ placement?(options?: {
654
+ signal?: AbortSignal;
655
+ }): Promise<PlacementInfo>;
656
+ refresh?(options?: {
657
+ signal?: AbortSignal;
658
+ }): Promise<void>;
659
+ destroy?(options?: {
660
+ signal?: AbortSignal;
661
+ }): Promise<void>;
662
+ }
663
+ export interface AgentEnvironmentCapabilities {
664
+ profile: AgentProfileCapabilities;
665
+ streaming: {
666
+ live: boolean;
667
+ replay: boolean;
668
+ detach: boolean;
669
+ turnIdempotency: boolean;
670
+ };
671
+ sessions: {
672
+ continue: boolean;
673
+ list: boolean;
674
+ messages: boolean;
675
+ };
676
+ /** Present only when retained-run identity and cancellation are complete. */
677
+ retainedControl?: {
678
+ exactRunIdentity: boolean;
679
+ resultIdentity: boolean;
680
+ eventIdentity: boolean;
681
+ cancellationIdempotency: boolean;
682
+ };
683
+ /** Present only when same-session continuation is atomic and retry-safe. */
684
+ nativeContinuation?: {
685
+ atomicBoundary: boolean;
686
+ requestIdempotency: boolean;
687
+ };
688
+ /** Absent when the provider cannot originate or answer interactions. */
689
+ interactions?: InteractionCapabilities;
690
+ workspace: {
691
+ read: boolean;
692
+ write: boolean;
693
+ exec: boolean;
694
+ git: boolean;
695
+ upload: boolean;
696
+ download: boolean;
697
+ };
698
+ branching: {
699
+ checkpoint: boolean;
700
+ fork: boolean;
701
+ /** True only when key + canonical request digest semantics are implemented. */
702
+ retrySafe?: boolean;
703
+ /** True only when operations can be recovered by idempotency key. */
704
+ lookup?: boolean;
705
+ /** True only when checkpoints and forked environments have confirmed cleanup. */
706
+ cleanup?: boolean;
707
+ };
708
+ placement: boolean;
709
+ usage: boolean;
710
+ confidential: boolean;
711
+ /** Present only when {@link AgentEnvironmentProvider.exactProcess} is implemented. */
712
+ exactProcess?: {
713
+ egress: readonly AgentExactProcessEgressMode[];
714
+ };
715
+ }
716
+ /** Strict runtime validator for provider capability negotiation. */
717
+ export declare const AgentEnvironmentCapabilitiesSchema: z.ZodObject<{
718
+ profile: z.ZodObject<{
719
+ namedProfiles: z.ZodBoolean;
720
+ systemPrompt: z.ZodObject<{
721
+ replace: z.ZodBoolean;
722
+ append: z.ZodBoolean;
723
+ }, z.core.$strict>;
724
+ instructions: z.ZodBoolean;
725
+ tools: z.ZodBoolean;
726
+ permissions: z.ZodBoolean;
727
+ mcp: z.ZodBoolean;
728
+ subagents: z.ZodBoolean;
729
+ resources: z.ZodObject<{
730
+ files: z.ZodBoolean;
731
+ instructions: z.ZodBoolean;
732
+ tools: z.ZodOptional<z.ZodBoolean>;
733
+ skills: z.ZodOptional<z.ZodBoolean>;
734
+ agents: z.ZodOptional<z.ZodBoolean>;
735
+ commands: z.ZodOptional<z.ZodBoolean>;
736
+ }, z.core.$strict>;
737
+ hooks: z.ZodOptional<z.ZodBoolean>;
738
+ modes: z.ZodOptional<z.ZodBoolean>;
739
+ runtimeUpdate: z.ZodBoolean;
740
+ validation: z.ZodBoolean;
741
+ extensions: z.ZodOptional<z.ZodArray<z.ZodString>>;
742
+ }, z.core.$strict>;
743
+ streaming: z.ZodObject<{
744
+ live: z.ZodBoolean;
745
+ replay: z.ZodBoolean;
746
+ detach: z.ZodBoolean;
747
+ turnIdempotency: z.ZodBoolean;
748
+ }, z.core.$strict>;
749
+ sessions: z.ZodObject<{
750
+ continue: z.ZodBoolean;
751
+ list: z.ZodBoolean;
752
+ messages: z.ZodBoolean;
753
+ }, z.core.$strict>;
754
+ retainedControl: z.ZodOptional<z.ZodObject<{
755
+ exactRunIdentity: z.ZodBoolean;
756
+ resultIdentity: z.ZodBoolean;
757
+ eventIdentity: z.ZodBoolean;
758
+ cancellationIdempotency: z.ZodBoolean;
759
+ }, z.core.$strict>>;
760
+ nativeContinuation: z.ZodOptional<z.ZodObject<{
761
+ atomicBoundary: z.ZodBoolean;
762
+ requestIdempotency: z.ZodBoolean;
763
+ }, z.core.$strict>>;
764
+ interactions: z.ZodOptional<z.ZodObject<{
765
+ kinds: z.ZodArray<z.ZodString>;
766
+ answerFieldTypes: z.ZodArray<z.ZodEnum<{
767
+ number: "number";
768
+ boolean: "boolean";
769
+ text: "text";
770
+ select: "select";
771
+ secret: "secret";
772
+ }>>;
773
+ responseScopes: z.ZodArray<z.ZodEnum<{
774
+ interaction: "interaction";
775
+ session: "session";
776
+ persistent: "persistent";
777
+ }>>;
778
+ secretAnswers: z.ZodBoolean;
779
+ concurrentRequests: z.ZodBoolean;
780
+ replay: z.ZodBoolean;
781
+ responseIdempotency: z.ZodBoolean;
782
+ }, z.core.$strict>>;
783
+ workspace: z.ZodObject<{
784
+ read: z.ZodBoolean;
785
+ write: z.ZodBoolean;
786
+ exec: z.ZodBoolean;
787
+ git: z.ZodBoolean;
788
+ upload: z.ZodBoolean;
789
+ download: z.ZodBoolean;
790
+ }, z.core.$strict>;
791
+ branching: z.ZodObject<{
792
+ checkpoint: z.ZodBoolean;
793
+ fork: z.ZodBoolean;
794
+ retrySafe: z.ZodOptional<z.ZodBoolean>;
795
+ lookup: z.ZodOptional<z.ZodBoolean>;
796
+ cleanup: z.ZodOptional<z.ZodBoolean>;
797
+ }, z.core.$strict>;
798
+ placement: z.ZodBoolean;
799
+ usage: z.ZodBoolean;
800
+ confidential: z.ZodBoolean;
801
+ exactProcess: z.ZodOptional<z.ZodObject<{
802
+ egress: z.ZodArray<z.ZodEnum<{
803
+ blocked: "blocked";
804
+ strict: "strict";
805
+ }>>;
806
+ }, z.core.$strict>>;
807
+ }, z.core.$strict>;
808
+ export interface CreateAgentEnvironmentInput {
809
+ profile: AgentProfileRef;
810
+ /** Agent backend inside the provider, for example "opencode" or "codex". */
811
+ backend?: string;
812
+ workspace?: WorkspaceRequest;
813
+ resources?: ResourceRequest;
814
+ env?: Record<string, string>;
815
+ secrets?: string[] | Record<string, string>;
816
+ metadata?: Record<string, unknown>;
817
+ name?: string;
818
+ idempotencyKey?: string;
819
+ signal?: AbortSignal;
820
+ providerOptions?: Record<string, unknown>;
821
+ }
822
+ export interface AgentEnvironmentProvider {
823
+ readonly name: string;
824
+ readonly exactProcess?: AgentExactProcessProvider;
825
+ capabilities(): AgentEnvironmentCapabilities | Promise<AgentEnvironmentCapabilities>;
826
+ validateProfile?(profile: AgentProfileRef): AgentProfileValidationResult | Promise<AgentProfileValidationResult>;
827
+ create(input: CreateAgentEnvironmentInput): Promise<AgentEnvironment>;
828
+ get?(id: string, options?: {
829
+ signal?: AbortSignal;
830
+ }): Promise<AgentEnvironment | null>;
831
+ list?(query?: AgentEnvironmentQuery, options?: {
832
+ signal?: AbortSignal;
833
+ }): Promise<AgentEnvironmentSummary[]>;
834
+ }