@tangle-network/sandbox 0.60.14-develop.20261005085333.1f5511c → 0.60.14-develop.20261005092806.490fe89

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.
@@ -1,7 +1,7 @@
1
- import { _ as SandboxSession, h as SandboxTaskSession, r as SandboxInstance } from "../sandbox-CJ-53tMu.js";
2
- import { D as CodeExecutionResult, E as CodeExecutionOptions, Gi as SessionInfo, Kr as SandboxFleetParent, O as CodeLanguage, d as BackendConfig, k as CodeResultPart, qi as SessionListOptions, ro as BackendType } from "../types-XDnpktUp.js";
3
- import { i as Sandbox } from "../client-Dq2EiJ5U.js";
4
- import { u as PreviewAuthorizer } from "../preview-Copmpj9O.js";
1
+ import { _ as SandboxSession, h as SandboxTaskSession, r as SandboxInstance } from "../sandbox-BB4hJD1Y.js";
2
+ import { D as CodeExecutionResult, E as CodeExecutionOptions, Gi as SessionInfo, Kr as SandboxFleetParent, O as CodeLanguage, d as BackendConfig, k as CodeResultPart, qi as SessionListOptions, ro as BackendType } from "../types-D-NLWnw2.js";
3
+ import { i as Sandbox } from "../client-BJIDfHnm.js";
4
+ import { u as PreviewAuthorizer } from "../preview-DHNR04bX.js";
5
5
  import * as _$_modelcontextprotocol_sdk_server_index_js0 from "@modelcontextprotocol/sdk/server/index.js";
6
6
  import { JSONSchema } from "zod/v4/core";
7
7
  import { ToolSet } from "ai";
@@ -1,8 +1,8 @@
1
1
  import { a as TOOL_SPECS, i as ALL_TOOL_SPECS, o as serializeToolResult, r as bindToolSpecs, t as createMcpServer } from "../mcp-local-DY1CnWBn.js";
2
2
  import { k as assertCurrentBackendType } from "../interactive-controller-5_ixpFnR.js";
3
3
  import { c as NotFoundError, g as ValidationError, m as StateError } from "../errors-D1JIX7Jm.js";
4
- import { n as Sandbox } from "../client-CKp5_eSZ.js";
5
- import { t as SandboxInstance } from "../sandbox-Duvz9RDN.js";
4
+ import { n as Sandbox } from "../client-Dn4C7eSu.js";
5
+ import { t as SandboxInstance } from "../sandbox-Da0KPydY.js";
6
6
  import { z } from "zod";
7
7
  //#region src/agent/instances.ts
8
8
  const managers = /* @__PURE__ */ new WeakMap();
@@ -1,2 +1,2 @@
1
- import { _ as publishAgentPreview, a as previewOperationTool, c as AgentPreviewOptions, d as PreviewExecutionContext, f as PublishAgentPreviewOptions, g as listAgentPreviews, h as getAgentPreview, i as PreviewTool, l as PreviewAuthorizationRequest, m as ensureAgentPreview, n as PREVIEW_MCP_ALIAS, o as previewToolsForProfile, p as assertPreviewId, r as PREVIEW_TOOLS, s as AgentPreviewError, t as servePreviewMcp, u as PreviewAuthorizer, v as removeAgentPreview, y as resolveSelfSandbox } from "../preview-Copmpj9O.js";
1
+ import { _ as publishAgentPreview, a as previewOperationTool, c as AgentPreviewOptions, d as PreviewExecutionContext, f as PublishAgentPreviewOptions, g as listAgentPreviews, h as getAgentPreview, i as PreviewTool, l as PreviewAuthorizationRequest, m as ensureAgentPreview, n as PREVIEW_MCP_ALIAS, o as previewToolsForProfile, p as assertPreviewId, r as PREVIEW_TOOLS, s as AgentPreviewError, t as servePreviewMcp, u as PreviewAuthorizer, v as removeAgentPreview, y as resolveSelfSandbox } from "../preview-DHNR04bX.js";
2
2
  export { AgentPreviewError, AgentPreviewOptions, PREVIEW_MCP_ALIAS, PREVIEW_TOOLS, PreviewAuthorizationRequest, PreviewAuthorizer, PreviewExecutionContext, PreviewTool, PublishAgentPreviewOptions, assertPreviewId, ensureAgentPreview, getAgentPreview, listAgentPreviews, previewOperationTool, previewToolsForProfile, publishAgentPreview, removeAgentPreview, resolveSelfSandbox, servePreviewMcp };
@@ -1,4 +1,4 @@
1
- import { Dr as SandboxEvent, a as AgentQuestionRequest, ct as DurablePlanSnapshot, i as AgentApprovalRequirement, o as AgentRunStatus, s as AgentToolInvocation } from "./types-XDnpktUp.js";
1
+ import { Dr as SandboxEvent, a as AgentQuestionRequest, ct as DurablePlanSnapshot, i as AgentApprovalRequirement, o as AgentRunStatus, s as AgentToolInvocation } from "./types-D-NLWnw2.js";
2
2
  import { InteractionRequest } from "@tangle-network/agent-interface";
3
3
 
4
4
  //#region src/agent-run-outcome.d.ts
@@ -1,4 +1,4 @@
1
- import { i as materializeCliAuthBundle, n as assertCliAuthReferenceSupported, r as cliAuthReferenceSchema } from "../cli-auth-bundle-CJSdRlx0.js";
1
+ import { i as materializeCliAuthBundle, n as assertCliAuthReferenceSupported, r as cliAuthReferenceSchema } from "../cli-auth-bundle-CVOv-Cmb.js";
2
2
  //#region src/auth/tokens.ts
3
3
  const textEncoder = new TextEncoder();
4
4
  const textDecoder = new TextDecoder();
@@ -1,7 +1,374 @@
1
1
  import { n as BACKEND_TYPE } from "./backend-types-C7b_Gpa0.js";
2
2
  import { agentProfileJsonSchema, agentProfileSchema as agentProfileSchema$1 } from "@tangle-network/agent-interface";
3
3
  import { z } from "zod";
4
- //#region ../../../packages/cli-agent-registry/dist/specs-CuvDK4-Y.mjs
4
+ //#region ../../../packages/cli-agent-registry/dist/native-session-contracts.mjs
5
+ /**
6
+ * The declared native session of every registered harness. Each entry is
7
+ * proven by a conformance receipt (tests/harness-conformance/receipts) for
8
+ * its pinned CLI version, or is listed in HARNESS_CONFORMANCE_PENDING.
9
+ *
10
+ * CLI versions are the pins in infra/nix (agent-clis.nix, flake.nix and
11
+ * npm-locks). The registry test tests/harness-session-contract.test.ts
12
+ * fails when a pin, a contract or an adapter's source moves without a new
13
+ * receipt.
14
+ */
15
+ const CLAUDE_PROJECTS = {
16
+ root: ".claude/projects",
17
+ files: ["*/{id}.jsonl", "*/{id}/subagents/**/*.jsonl"],
18
+ write: "jsonl-append",
19
+ shared: false,
20
+ format: "claude-code.projects-jsonl"
21
+ };
22
+ const CODEX_ROLLOUTS = {
23
+ root: ".codex/sessions",
24
+ files: ["*/*/*/rollout-*-{id}.jsonl"],
25
+ write: "jsonl-append",
26
+ shared: false,
27
+ format: "codex.rollout-jsonl"
28
+ };
29
+ const GEMINI_CHATS = {
30
+ root: ".gemini/tmp",
31
+ files: ["*/chats/session-*{id}*.json"],
32
+ write: "json-rewrite",
33
+ shared: false,
34
+ format: "gemini.chat-json"
35
+ };
36
+ const KIMI_SESSIONS = {
37
+ root: ".kimi/sessions",
38
+ files: ["*/{id}/**", "*/{id}.jsonl"],
39
+ write: "jsonl-append",
40
+ shared: false,
41
+ format: "kimi.session-dir"
42
+ };
43
+ const HERMES_STATE = {
44
+ root: ".hermes",
45
+ files: [
46
+ "state.db",
47
+ "state.db-wal",
48
+ "state.db-shm"
49
+ ],
50
+ write: "sqlite-wal",
51
+ shared: true,
52
+ format: "hermes.state-sqlite"
53
+ };
54
+ const NATIVE_SESSION_CONTRACTS = {
55
+ "claude-code": {
56
+ version: 1,
57
+ stores: [CLAUDE_PROJECTS],
58
+ identity: {
59
+ kind: "pre-minted",
60
+ args: ["--session-id", "{id}"]
61
+ },
62
+ resume: {
63
+ kind: "args",
64
+ args: ["--resume", "{id}"]
65
+ },
66
+ forbiddenArgs: ["--no-session-persistence", "--fork-session"],
67
+ storeEnv: { CLAUDE_CONFIG_DIR: ".claude" },
68
+ evidence: {
69
+ servedModel: "provider-response",
70
+ usage: "per-response",
71
+ endingError: "session-record"
72
+ },
73
+ cliVersion: "2.1.286"
74
+ },
75
+ codex: {
76
+ version: 1,
77
+ stores: [CODEX_ROLLOUTS],
78
+ identity: {
79
+ kind: "first-event",
80
+ event: "thread.started",
81
+ deadlineMs: 3e4
82
+ },
83
+ resume: {
84
+ kind: "args",
85
+ args: [
86
+ "exec",
87
+ "resume",
88
+ "{id}"
89
+ ]
90
+ },
91
+ forbiddenArgs: ["--ephemeral"],
92
+ storeEnv: { CODEX_HOME: ".codex" },
93
+ evidence: {
94
+ servedModel: "turn-context",
95
+ usage: "cumulative",
96
+ endingError: "session-record"
97
+ },
98
+ cliVersion: "0.145.0"
99
+ },
100
+ opencode: {
101
+ version: 1,
102
+ stores: [{
103
+ root: ".local/share/opencode",
104
+ files: [
105
+ "opencode.db",
106
+ "opencode.db-wal",
107
+ "opencode.db-shm"
108
+ ],
109
+ write: "sqlite-wal",
110
+ shared: true,
111
+ format: "opencode.sqlite"
112
+ }],
113
+ identity: {
114
+ kind: "first-event",
115
+ event: "sessionID",
116
+ deadlineMs: 3e5
117
+ },
118
+ resume: {
119
+ kind: "args",
120
+ args: ["--session", "{id}"]
121
+ },
122
+ forbiddenArgs: [],
123
+ storeEnv: { XDG_DATA_HOME: ".local/share" },
124
+ evidence: {
125
+ servedModel: "turn-context",
126
+ usage: "per-response",
127
+ endingError: "session-record"
128
+ },
129
+ cliVersion: "1.18.25"
130
+ },
131
+ pi: {
132
+ version: 1,
133
+ stores: [{
134
+ root: ".pi/agent/sessions",
135
+ files: ["**/*_{id}.jsonl"],
136
+ write: "jsonl-append",
137
+ shared: false,
138
+ format: "pi.session-jsonl"
139
+ }],
140
+ identity: {
141
+ kind: "pre-minted",
142
+ args: ["--session-id", "{id}"]
143
+ },
144
+ resume: {
145
+ kind: "args",
146
+ args: ["--session", "{id}"]
147
+ },
148
+ forbiddenArgs: [
149
+ "--no-session",
150
+ "--fork",
151
+ "--continue"
152
+ ],
153
+ storeEnv: {
154
+ PI_CODING_AGENT_DIR: ".pi/agent",
155
+ PI_CODING_AGENT_SESSION_DIR: ".pi/agent/sessions",
156
+ "--session-dir": ".pi/agent/sessions"
157
+ },
158
+ evidence: {
159
+ servedModel: "session-record",
160
+ usage: "per-response",
161
+ endingError: "session-record"
162
+ },
163
+ cliVersion: "0.85.1"
164
+ },
165
+ "kimi-code": {
166
+ version: 1,
167
+ stores: [KIMI_SESSIONS],
168
+ identity: {
169
+ kind: "first-event",
170
+ event: "session",
171
+ deadlineMs: 6e4
172
+ },
173
+ resume: {
174
+ kind: "args",
175
+ args: ["--resume", "{id}"]
176
+ },
177
+ forbiddenArgs: [],
178
+ storeEnv: {},
179
+ evidence: {
180
+ servedModel: "session-record",
181
+ usage: "per-response",
182
+ endingError: "none"
183
+ },
184
+ cliVersion: "1.49.0"
185
+ },
186
+ "factory-droids": {
187
+ version: 1,
188
+ stores: [{
189
+ root: ".factory/sessions",
190
+ files: ["*/{id}.jsonl", "*/{id}.settings.json"],
191
+ write: "jsonl-append",
192
+ shared: false,
193
+ format: "factory.session-jsonl"
194
+ }],
195
+ identity: {
196
+ kind: "first-event",
197
+ event: "session_id",
198
+ deadlineMs: 6e4
199
+ },
200
+ resume: {
201
+ kind: "args",
202
+ args: ["--session-id", "{id}"]
203
+ },
204
+ forbiddenArgs: [],
205
+ storeEnv: {},
206
+ evidence: {
207
+ servedModel: "session-record",
208
+ usage: "session-total",
209
+ endingError: "none"
210
+ },
211
+ cliVersion: "0.232.0"
212
+ },
213
+ amp: {
214
+ version: 1,
215
+ stores: [{
216
+ root: ".local/share/amp/threads",
217
+ files: ["{id}.json"],
218
+ write: "json-rewrite",
219
+ shared: false,
220
+ format: "amp.thread-json"
221
+ }],
222
+ identity: {
223
+ kind: "first-event",
224
+ event: "thread",
225
+ deadlineMs: 6e4
226
+ },
227
+ resume: {
228
+ kind: "args",
229
+ args: [
230
+ "threads",
231
+ "continue",
232
+ "{id}"
233
+ ]
234
+ },
235
+ forbiddenArgs: [],
236
+ storeEnv: { XDG_DATA_HOME: ".local/share" },
237
+ evidence: {
238
+ servedModel: "session-record",
239
+ usage: "per-response",
240
+ endingError: "none"
241
+ },
242
+ cliVersion: "0.0.1790887360-g98f23e"
243
+ },
244
+ prime: {
245
+ version: 1,
246
+ stores: [{
247
+ root: ".prime-provider/prime-agent-dirs",
248
+ files: ["**/*_{id}.jsonl"],
249
+ write: "jsonl-append",
250
+ shared: false,
251
+ format: "prime.session-jsonl"
252
+ }],
253
+ identity: {
254
+ kind: "api-created",
255
+ call: "acp session/new"
256
+ },
257
+ resume: { kind: "api" },
258
+ forbiddenArgs: ["--no-session"],
259
+ storeEnv: {},
260
+ evidence: {
261
+ servedModel: "session-record",
262
+ usage: "per-response",
263
+ endingError: "session-record"
264
+ },
265
+ cliVersion: "0.7.2"
266
+ },
267
+ hermes: {
268
+ version: 1,
269
+ stores: [HERMES_STATE],
270
+ identity: {
271
+ kind: "first-event",
272
+ event: "session_id",
273
+ deadlineMs: 6e4
274
+ },
275
+ resume: {
276
+ kind: "args",
277
+ args: ["--resume", "{id}"]
278
+ },
279
+ forbiddenArgs: [],
280
+ storeEnv: { HERMES_HOME: ".hermes" },
281
+ evidence: {
282
+ servedModel: "session-record",
283
+ usage: "session-total",
284
+ endingError: "none"
285
+ },
286
+ cliVersion: "2026.9.24"
287
+ },
288
+ forge: {
289
+ version: 1,
290
+ stores: [{
291
+ root: ".forge",
292
+ files: [
293
+ ".forge.db",
294
+ ".forge.db-wal",
295
+ ".forge.db-shm"
296
+ ],
297
+ write: "sqlite-wal",
298
+ shared: true,
299
+ format: "forge.sqlite"
300
+ }],
301
+ identity: {
302
+ kind: "first-event",
303
+ event: "conversation",
304
+ deadlineMs: 6e4
305
+ },
306
+ resume: {
307
+ kind: "args",
308
+ args: ["--conversation-id", "{id}"]
309
+ },
310
+ forbiddenArgs: [],
311
+ storeEnv: {},
312
+ evidence: {
313
+ servedModel: "session-record",
314
+ usage: "per-response",
315
+ endingError: "none"
316
+ },
317
+ cliVersion: "2.14.0"
318
+ },
319
+ openclaw: {
320
+ version: 1,
321
+ stores: [{
322
+ root: ".openclaw/agents",
323
+ files: ["**/{id}.jsonl"],
324
+ write: "jsonl-append",
325
+ shared: false,
326
+ format: "openclaw.session-jsonl"
327
+ }],
328
+ identity: {
329
+ kind: "first-event",
330
+ event: "session",
331
+ deadlineMs: 6e4
332
+ },
333
+ resume: {
334
+ kind: "args",
335
+ args: ["--session-id", "{id}"]
336
+ },
337
+ forbiddenArgs: [],
338
+ storeEnv: {},
339
+ evidence: {
340
+ servedModel: "session-record",
341
+ usage: "per-response",
342
+ endingError: "none"
343
+ },
344
+ cliVersion: "2026.7.1-2"
345
+ },
346
+ acp: {
347
+ version: 1,
348
+ stores: [
349
+ CLAUDE_PROJECTS,
350
+ CODEX_ROLLOUTS,
351
+ GEMINI_CHATS,
352
+ KIMI_SESSIONS,
353
+ HERMES_STATE
354
+ ],
355
+ identity: {
356
+ kind: "api-created",
357
+ call: "acp session/new"
358
+ },
359
+ resume: { kind: "api" },
360
+ forbiddenArgs: [],
361
+ storeEnv: {},
362
+ evidence: {
363
+ servedModel: "session-record",
364
+ usage: "per-response",
365
+ endingError: "none"
366
+ },
367
+ cliVersion: "claude-agent-acp 0.64.2; codex-acp 0.16.0; gemini-cli 0.62.0"
368
+ }
369
+ };
370
+ //#endregion
371
+ //#region ../../../packages/cli-agent-registry/dist/specs-DSy1cxjc.mjs
5
372
  z.globalRegistry.add(agentProfileSchema$1, {
6
373
  id: "AgentProfile",
7
374
  ...agentProfileJsonSchema
@@ -9,6 +376,7 @@ z.globalRegistry.add(agentProfileSchema$1, {
9
376
  const CLI_AGENT_SPECS = [
10
377
  {
11
378
  name: BACKEND_TYPE.OPENCODE,
379
+ nativeSession: NATIVE_SESSION_CONTRACTS.opencode,
12
380
  messageStorageDir: ".opencode",
13
381
  displayName: "OpenCode Agent",
14
382
  description: "OpenCode CLI coding agent with native sessions, profiles, tools, and MCP.",
@@ -131,6 +499,7 @@ const CLI_AGENT_SPECS = [
131
499
  },
132
500
  {
133
501
  name: BACKEND_TYPE.CLAUDE_CODE,
502
+ nativeSession: NATIVE_SESSION_CONTRACTS["claude-code"],
134
503
  runtime: {},
135
504
  messageStorageDir: ".claude-code",
136
505
  displayName: "Claude Code",
@@ -181,6 +550,7 @@ const CLI_AGENT_SPECS = [
181
550
  },
182
551
  {
183
552
  name: BACKEND_TYPE.KIMI_CODE,
553
+ nativeSession: NATIVE_SESSION_CONTRACTS["kimi-code"],
184
554
  messageStorageDir: ".kimi-code",
185
555
  displayName: "Kimi Code",
186
556
  description: "Moonshot AI Kimi Code CLI — headless non-interactive mode via `kimi --print --output-format stream-json --prompt ...`. Defaults to OAuth (Kimi Code subscription) with credentials materialized from the host-managed ~/.kimi/credentials/kimi-code.json; falls back to MOONSHOT_API_KEY when an apiKey is supplied.",
@@ -208,6 +578,7 @@ const CLI_AGENT_SPECS = [
208
578
  },
209
579
  {
210
580
  name: BACKEND_TYPE.CODEX,
581
+ nativeSession: NATIVE_SESSION_CONTRACTS.codex,
211
582
  messageStorageDir: ".codex",
212
583
  displayName: "Codex",
213
584
  description: "OpenAI Codex CLI-based agent backend.",
@@ -244,6 +615,7 @@ const CLI_AGENT_SPECS = [
244
615
  },
245
616
  {
246
617
  name: BACKEND_TYPE.AMP,
618
+ nativeSession: NATIVE_SESSION_CONTRACTS.amp,
247
619
  messageStorageDir: ".amp-sessions",
248
620
  displayName: "AMP (Sourcegraph)",
249
621
  description: "Sourcegraph AMP CLI-based agent backend.",
@@ -270,6 +642,7 @@ const CLI_AGENT_SPECS = [
270
642
  },
271
643
  {
272
644
  name: BACKEND_TYPE.FACTORY_DROIDS,
645
+ nativeSession: NATIVE_SESSION_CONTRACTS["factory-droids"],
273
646
  messageStorageDir: ".factory-droids",
274
647
  displayName: "Factory Droids",
275
648
  description: "Factory Droids CLI-based agent backend.",
@@ -291,6 +664,7 @@ const CLI_AGENT_SPECS = [
291
664
  },
292
665
  {
293
666
  name: BACKEND_TYPE.PI,
667
+ nativeSession: NATIVE_SESSION_CONTRACTS.pi,
294
668
  runtime: {},
295
669
  messageStorageDir: ".pi/agent",
296
670
  displayName: "Pi",
@@ -319,6 +693,7 @@ const CLI_AGENT_SPECS = [
319
693
  },
320
694
  {
321
695
  name: BACKEND_TYPE.PRIME,
696
+ nativeSession: NATIVE_SESSION_CONTRACTS.prime,
322
697
  messageStorageDir: ".prime-provider",
323
698
  displayName: "Prime Agent (PrimeIntellect)",
324
699
  description: "PrimeIntellect-ai/prime-agent — IPython-first coding agent (pi hard fork, fork line 0.7.x) driven over its native ACP mode. Model tuple travels via backend.model into a per-session materialized models.json, never env; the adapter pins PRIME_AGENT_CODING_AGENT_DIR to an isolated per-session agent dir (fail-closed harness-state isolation).",
@@ -341,6 +716,7 @@ const CLI_AGENT_SPECS = [
341
716
  },
342
717
  {
343
718
  name: BACKEND_TYPE.HERMES,
719
+ nativeSession: NATIVE_SESSION_CONTRACTS.hermes,
344
720
  messageStorageDir: ".hermes-agent",
345
721
  displayName: "Hermes Agent (Nous Research)",
346
722
  description: "Open-source self-improving CLI agent. Persistent memory and skills live in $HERMES_HOME (pinned to the per-session workspace mount, not the read-only in-box $HOME) across same-tenant snapshot resumes — the learning loop is the differentiator. Provider-pluggable; defaults to OpenRouter via Tangle Router.",
@@ -369,6 +745,7 @@ const CLI_AGENT_SPECS = [
369
745
  },
370
746
  {
371
747
  name: BACKEND_TYPE.FORGE,
748
+ nativeSession: NATIVE_SESSION_CONTRACTS.forge,
372
749
  messageStorageDir: ".forge-agent",
373
750
  displayName: "Forge (forgecode.dev)",
374
751
  description: "Rust-built multi-provider coding agent from tailcallhq/forgecode. Speaks anthropic/openai/openrouter/gemini/deepseek/kimi + local providers (ollama, lm_studio, llama_cpp). Credentials live in ~/.forge/.credentials.json, materialized via the standard authFiles pipeline — no interactive `forge provider login` required.",
@@ -400,6 +777,7 @@ const CLI_AGENT_SPECS = [
400
777
  },
401
778
  {
402
779
  name: BACKEND_TYPE.OPENCLAW,
780
+ nativeSession: NATIVE_SESSION_CONTRACTS.openclaw,
403
781
  messageStorageDir: ".openclaw-agent",
404
782
  displayName: "OpenClaw (Orchestrator)",
405
783
  description: "Orchestrator-tier CLI agent that dispatches to underlying coding-agent CLIs (claude-cli, codex-cli, gemini-cli) via its built-in cliBackends plugin model. Use this when you want one entry point that intelligently routes tasks to the right coding harness.",
@@ -427,6 +805,7 @@ const CLI_AGENT_SPECS = [
427
805
  },
428
806
  {
429
807
  name: BACKEND_TYPE.NANOCLAW,
808
+ nativeSession: null,
430
809
  messageStorageDir: ".nanoclaw-agent",
431
810
  displayName: "NanoClaw",
432
811
  description: "NanoClaw local socket bridge. Requires a running NanoClaw install and uses its `pnpm run chat` CLI channel; the adapter does not manage NanoClaw's Docker/service lifecycle.",
@@ -461,6 +840,7 @@ const CLI_AGENT_SPECS = [
461
840
  },
462
841
  {
463
842
  name: BACKEND_TYPE.ACP,
843
+ nativeSession: NATIVE_SESSION_CONTRACTS.acp,
464
844
  messageStorageDir: ".acp-agent",
465
845
  displayName: "ACP Bridge (multi-agent)",
466
846
  description: "Generic Agent Client Protocol bridge — fronts any ACP-compliant agent binary (claude-agent-acp, codex-acp, gemini, openclaw acp, ...). Pick the backing agent via config.subAgent. One TypeScript adapter, many supported coding harnesses.",
@@ -482,6 +862,7 @@ const CLI_AGENT_SPECS = [
482
862
  },
483
863
  {
484
864
  name: BACKEND_TYPE.CURSOR,
865
+ nativeSession: null,
485
866
  messageStorageDir: ".cursor-sdk-sessions",
486
867
  displayName: "Cursor Agent SDK",
487
868
  description: "Cursor Agent SDK backend. Runs Cursor's local agent against the sandbox workspace via @cursor/sdk, using CURSOR_API_KEY or backend.model.apiKey for authentication.",
@@ -506,6 +887,7 @@ const CLI_AGENT_SPECS = [
506
887
  },
507
888
  {
508
889
  name: BACKEND_TYPE.CLI_BASE,
890
+ nativeSession: null,
509
891
  displayName: "CLI Base (no agent)",
510
892
  description: "Bare sandbox without an AI agent backend. Use when you want the workspace, tools, and SSH access but no LLM dispatch.",
511
893
  envVars: {},
@@ -1,7 +1,7 @@
1
- import { l as TraceExportResult, n as HttpClient, r as SandboxInstance, u as TraceExportSink } from "./sandbox-CJ-53tMu.js";
2
- import { $n as PublicTemplateInfo, Ar as SandboxFleetArtifact, B as CreateSandboxOptions, Bt as FleetDispatchStreamOptions, Ea as UsageInfo, En as ListSandboxOptions, Er as SandboxEnvironment, F as CreateIntelligenceReportOptions, Fi as SecretsManager, Fr as SandboxFleetDriverCapability, Ft as FleetAgentResult, G as DeleteMatchingSandboxesFilter, Gr as SandboxFleetOperationsSummary, Gt as FleetMachineId, Hr as SandboxFleetMachineSpec, Ht as FleetDriveTurnRequest, I as CreateRequestOptions, Jn as PromptResult, Jr as SandboxFleetPolicy, Jt as FleetRunEvent, K as DeleteMatchingSandboxesOptions, Kn as PromptInputPart, Kr as SandboxFleetParent, Kt as FleetPromptDispatchOptions, L as CreateSandboxFleetOptions, Lr as SandboxFleetInfo, Lt as FleetDispatchCancelResult, M as ConversationTurnOptions, Mr as SandboxFleetCostEstimate, N as ConversationTurnResult, Nt as FleetAgentId, Or as SandboxFleetAgent, Pr as SandboxFleetDispatchResponse, Qa as BatchEvent, Qr as SandboxFleetTraceBundle, R as CreateSandboxFleetTokenOptions, Rt as FleetDispatchResultBuffer, Tn as ListSandboxFleetOptions, Ur as SandboxFleetManifest, Ut as FleetExecDispatchOptions, Vr as SandboxFleetMachineRecord, Vt as FleetDriveTurnOutcome, Wt as FleetExecDispatchResult, Xr as SandboxFleetSpend, Yt as FleetRunOptions, Zr as SandboxFleetToken, _n as IntelligenceReport, aa as SshKeysManager, ai as SandboxFleetWorkspaceRestoreResult, ar as ReconcileSandboxFleetsOptions, b as BatchRunRequest, ba as TokenRefreshHandler, ci as SandboxInfo, d as BackendConfig, er as PublicTemplateVersionInfo, ii as SandboxFleetWorkspaceReconcileResult, ir as ReapExpiredSandboxFleetsResult, jr as SandboxFleetArtifactSpec, l as AttachSandboxFleetMachineOptions, la as SubscriptionInfo, ni as SandboxFleetUsage, nr as PublishPublicTemplateVersionOptions, oi as SandboxFleetWorkspaceSnapshotResult, or as ReconcileSandboxFleetsResult, q as DeleteMatchingSandboxesResult, qn as PromptOptions, qt as FleetPromptDispatchResult, rr as ReapExpiredSandboxFleetsOptions, si as SandboxIdentity, ti as SandboxFleetTraceOptions, tr as PublishPublicTemplateOptions, v as BatchResult, vn as IntelligenceReportBudget, vt as ExecOptions, xn as IntelligenceReportWindow, y as BatchRunOptions, yi as SandboxShapesInfo, yn as IntelligenceReportCompareTo, yr as SandboxConfig, yt as ExecResult, z as CreateSandboxFleetWithCoordinatorOptions, zt as FleetDispatchResultBufferOptions } from "./types-XDnpktUp.js";
1
+ import { l as TraceExportResult, n as HttpClient, r as SandboxInstance, u as TraceExportSink } from "./sandbox-BB4hJD1Y.js";
2
+ import { $n as PublicTemplateInfo, Ar as SandboxFleetArtifact, B as CreateSandboxOptions, Bt as FleetDispatchStreamOptions, Ea as UsageInfo, En as ListSandboxOptions, Er as SandboxEnvironment, F as CreateIntelligenceReportOptions, Fi as SecretsManager, Fr as SandboxFleetDriverCapability, Ft as FleetAgentResult, G as DeleteMatchingSandboxesFilter, Gr as SandboxFleetOperationsSummary, Gt as FleetMachineId, Hr as SandboxFleetMachineSpec, Ht as FleetDriveTurnRequest, I as CreateRequestOptions, Jn as PromptResult, Jr as SandboxFleetPolicy, Jt as FleetRunEvent, K as DeleteMatchingSandboxesOptions, Kn as PromptInputPart, Kr as SandboxFleetParent, Kt as FleetPromptDispatchOptions, L as CreateSandboxFleetOptions, Lr as SandboxFleetInfo, Lt as FleetDispatchCancelResult, M as ConversationTurnOptions, Mr as SandboxFleetCostEstimate, N as ConversationTurnResult, Nt as FleetAgentId, Or as SandboxFleetAgent, Pr as SandboxFleetDispatchResponse, Qa as BatchEvent, Qr as SandboxFleetTraceBundle, R as CreateSandboxFleetTokenOptions, Rt as FleetDispatchResultBuffer, Tn as ListSandboxFleetOptions, Ur as SandboxFleetManifest, Ut as FleetExecDispatchOptions, Vr as SandboxFleetMachineRecord, Vt as FleetDriveTurnOutcome, Wt as FleetExecDispatchResult, Xr as SandboxFleetSpend, Yt as FleetRunOptions, Zr as SandboxFleetToken, _n as IntelligenceReport, aa as SshKeysManager, ai as SandboxFleetWorkspaceRestoreResult, ar as ReconcileSandboxFleetsOptions, b as BatchRunRequest, ba as TokenRefreshHandler, ci as SandboxInfo, d as BackendConfig, er as PublicTemplateVersionInfo, ii as SandboxFleetWorkspaceReconcileResult, ir as ReapExpiredSandboxFleetsResult, jr as SandboxFleetArtifactSpec, l as AttachSandboxFleetMachineOptions, la as SubscriptionInfo, ni as SandboxFleetUsage, nr as PublishPublicTemplateVersionOptions, oi as SandboxFleetWorkspaceSnapshotResult, or as ReconcileSandboxFleetsResult, q as DeleteMatchingSandboxesResult, qn as PromptOptions, qt as FleetPromptDispatchResult, rr as ReapExpiredSandboxFleetsOptions, si as SandboxIdentity, ti as SandboxFleetTraceOptions, tr as PublishPublicTemplateOptions, v as BatchResult, vn as IntelligenceReportBudget, vt as ExecOptions, xn as IntelligenceReportWindow, y as BatchRunOptions, yi as SandboxShapesInfo, yn as IntelligenceReportCompareTo, yr as SandboxConfig, yt as ExecResult, z as CreateSandboxFleetWithCoordinatorOptions, zt as FleetDispatchResultBufferOptions } from "./types-D-NLWnw2.js";
3
3
  import { l as ScopedToken, s as MintInteractiveSessionTokenOptions } from "./terminal-stream-B6bUr0hj.js";
4
- import { I as LinesClient } from "./lines-ee3_S7Z0.js";
4
+ import { I as LinesClient } from "./lines-BUf7A9aS.js";
5
5
  import { f as SandboxError } from "./errors-DS32ViPj.js";
6
6
  import { AgentInteractiveSessionRef } from "@tangle-network/agent-interface";
7
7
  import { z } from "zod";
@@ -2,7 +2,7 @@ import { r as backendTypeSchema } from "./backend-types-C7b_Gpa0.js";
2
2
  import { A as foldModelRoutingFields, D as parseSSEStream, M as normalizeRuntimeBackendConfig, O as applyRequestedModel, T as encodePromptForWire, k as assertCurrentBackendType, s as requestInteractiveSessionToken } from "./interactive-controller-5_ixpFnR.js";
3
3
  import { _ as parseErrorResponse, c as NotFoundError, f as SandboxError, g as ValidationError, h as TimeoutError, l as PartialFailureError, p as ServerError, s as NetworkError, t as AuthError, v as parseResponseError, y as readResponseJson } from "./errors-D1JIX7Jm.js";
4
4
  import { f as combineAbortSignals } from "./browser-interactive-control-controller-BJf0P_J4.js";
5
- import { A as exportTraceBundle, C as splitInlineProfileFileMounts, D as normalizeSandboxShape, E as normalizeConnection, O as rewrapResponse, T as validateDeferredProfileFileMounts, a as normalizeStartupDiagnostics, i as normalizeSandboxCreateReceipt, n as createSandboxInstanceFromResponse, r as normalizeCaptureProof, w as splitInlineProfileSkills } from "./sandbox-Duvz9RDN.js";
5
+ import { A as exportTraceBundle, C as splitInlineProfileFileMounts, D as normalizeSandboxShape, E as normalizeConnection, O as rewrapResponse, T as validateDeferredProfileFileMounts, a as normalizeStartupDiagnostics, i as normalizeSandboxCreateReceipt, n as createSandboxInstanceFromResponse, r as normalizeCaptureProof, w as splitInlineProfileSkills } from "./sandbox-Da0KPydY.js";
6
6
  import { LinesClient } from "./lines.js";
7
7
  import { agentProfileSchema } from "@tangle-network/agent-interface";
8
8
  import { z } from "zod";
@@ -3248,11 +3248,11 @@ function withRequestContextHeaders(response, path, method) {
3248
3248
  return rewrapResponse(response, headers);
3249
3249
  }
3250
3250
  async function resolveLocalCliAuthFiles(backendType) {
3251
- const { discoverLocalCliAuthFiles } = await import("./local-cli-auth-BH9A-PW_.js");
3251
+ const { discoverLocalCliAuthFiles } = await import("./local-cli-auth-OSQP4wuS.js");
3252
3252
  return discoverLocalCliAuthFiles(backendType);
3253
3253
  }
3254
3254
  async function describeLocalCliAuthExpectation(backendType) {
3255
- const { describeLocalCliAuthExpectation: describe } = await import("./local-cli-auth-BH9A-PW_.js");
3255
+ const { describeLocalCliAuthExpectation: describe } = await import("./local-cli-auth-OSQP4wuS.js");
3256
3256
  return describe(backendType);
3257
3257
  }
3258
3258
  async function hydrateLocalCliBackendAuth(backend, baseUrl, trustLocalCliAuth) {
package/dist/core.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { a as WorkspaceImagePublishRequestOptions, i as WorkspaceImagePublishInput, o as WorkspaceImagePublishResult, r as SandboxInstance, s as WorkspaceImages } from "./sandbox-CJ-53tMu.js";
2
- import { An as NetworkConfig, B as CreateSandboxOptions, Ba as SandboxEnvRecovery, Fa as ManagedProcessOptions, Fn as PreviewLinkInfo, Ia as ManagedProcessRecord, In as PreviewLinkManager, Kn as PromptInputPart, La as ManagedProcessResumeOptions, Ln as PreviewLinkWaitOptions, M as ConversationTurnOptions, N as ConversationTurnResult, Na as ManagedProcessClient, Pa as ManagedProcessJobs, Ra as ManagedProcessSpec, Va as SandboxEnvRecoveryView, Yi as SessionMessageAdmission, bi as SandboxStatus, ci as SandboxInfo, vt as ExecOptions, yr as SandboxConfig, yt as ExecResult, za as ManagedProcessState } from "./types-XDnpktUp.js";
3
- import { A as LineSenderVerification, B as profileChannelReference, C as LineReplyCodeInput, G as LineApplicationResult, H as LINE_APPLICATION_REQUEST_MAX_BYTES, I as LinesClient, J as parseLineApplicationRequest, K as LineApplicationState, O as LineSendInput, S as LineReplyCode, U as LineApplication, V as LINE_APPLICATION_REPLY_MAX_CHARS, W as LineApplicationRequest, Y as parseLineApplicationResult, a as LineApplicationAttachOptions, b as LineProvider, c as LineAttachmentReauthorization, d as LineInstanceAttachOptions, f as LineInstanceCreate, h as LineMemberInstance, j as LineSenderVerificationStart, k as LineSendReceipt, l as LineExecutionKey, m as LineMember, n as LineAgentRolePolicy, q as LineApplicationView, s as LineAttachment, t as Line, x as LineReminderPreferences, y as LineNumberInventory, z as lineInstanceKey } from "./lines-ee3_S7Z0.js";
4
- import { A as isBackendRegistryInteractionKind, C as BackendRegistryEntry, D as backendRegistryEntrySchema, E as backendRegistryCapabilitiesSchema, M as parseBackendRegistryResponseBody, O as backendRegistryInteractionKindSchema, S as BackendRegistryCapabilities, T as BackendRegistryResponse, d as HostedInstance, f as InstanceProfile, g as InstancesClient, i as Sandbox, j as parseBackendRegistryResponse, k as backendRegistryResponseSchema, m as InstanceRestartingError, p as InstanceRecord, u as EnsureInstanceOptions, w as BackendRegistryInteractionKind } from "./client-Dq2EiJ5U.js";
1
+ import { a as WorkspaceImagePublishRequestOptions, i as WorkspaceImagePublishInput, o as WorkspaceImagePublishResult, r as SandboxInstance, s as WorkspaceImages } from "./sandbox-BB4hJD1Y.js";
2
+ import { An as NetworkConfig, B as CreateSandboxOptions, Ba as SandboxEnvRecovery, Fa as ManagedProcessOptions, Fn as PreviewLinkInfo, Ia as ManagedProcessRecord, In as PreviewLinkManager, Kn as PromptInputPart, La as ManagedProcessResumeOptions, Ln as PreviewLinkWaitOptions, M as ConversationTurnOptions, N as ConversationTurnResult, Na as ManagedProcessClient, Pa as ManagedProcessJobs, Ra as ManagedProcessSpec, Va as SandboxEnvRecoveryView, Yi as SessionMessageAdmission, bi as SandboxStatus, ci as SandboxInfo, vt as ExecOptions, yr as SandboxConfig, yt as ExecResult, za as ManagedProcessState } from "./types-D-NLWnw2.js";
3
+ import { A as LineSenderVerification, B as profileChannelReference, C as LineReplyCodeInput, G as LineApplicationResult, H as LINE_APPLICATION_REQUEST_MAX_BYTES, I as LinesClient, J as parseLineApplicationRequest, K as LineApplicationState, O as LineSendInput, S as LineReplyCode, U as LineApplication, V as LINE_APPLICATION_REPLY_MAX_CHARS, W as LineApplicationRequest, Y as parseLineApplicationResult, a as LineApplicationAttachOptions, b as LineProvider, c as LineAttachmentReauthorization, d as LineInstanceAttachOptions, f as LineInstanceCreate, h as LineMemberInstance, j as LineSenderVerificationStart, k as LineSendReceipt, l as LineExecutionKey, m as LineMember, n as LineAgentRolePolicy, q as LineApplicationView, s as LineAttachment, t as Line, x as LineReminderPreferences, y as LineNumberInventory, z as lineInstanceKey } from "./lines-BUf7A9aS.js";
4
+ import { A as isBackendRegistryInteractionKind, C as BackendRegistryEntry, D as backendRegistryEntrySchema, E as backendRegistryCapabilitiesSchema, M as parseBackendRegistryResponseBody, O as backendRegistryInteractionKindSchema, S as BackendRegistryCapabilities, T as BackendRegistryResponse, d as HostedInstance, f as InstanceProfile, g as InstancesClient, i as Sandbox, j as parseBackendRegistryResponse, k as backendRegistryResponseSchema, m as InstanceRestartingError, p as InstanceRecord, u as EnsureInstanceOptions, w as BackendRegistryInteractionKind } from "./client-BJIDfHnm.js";
5
5
  import { _ as TimeoutError, a as FileWriteConflictError, c as NotFoundError, f as SandboxError, g as StateError, h as ServerError, l as PartialFailureError, m as SandboxFailureDetail, n as CapabilityError, p as SandboxErrorJson, s as NetworkError, t as AuthError, u as QuotaError, v as ValidationError } from "./errors-DS32ViPj.js";
6
6
 
7
7
  //#region src/core.d.ts
package/dist/core.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { a as FileWriteConflictError, c as NotFoundError, f as SandboxError, g as ValidationError, h as TimeoutError, l as PartialFailureError, m as StateError, n as CapabilityError, p as ServerError, s as NetworkError, t as AuthError, u as QuotaError } from "./errors-D1JIX7Jm.js";
2
- import { _ as parseBackendRegistryResponseBody, a as InstancesClient, d as backendRegistryCapabilitiesSchema, f as backendRegistryEntrySchema, g as parseBackendRegistryResponse, h as isBackendRegistryInteractionKind, i as InstanceRestartingError, m as backendRegistryResponseSchema, n as Sandbox, p as backendRegistryInteractionKindSchema, r as HostedInstance } from "./client-CKp5_eSZ.js";
3
- import { o as WorkspaceImages, t as SandboxInstance, x as ManagedProcessClient } from "./sandbox-Duvz9RDN.js";
2
+ import { _ as parseBackendRegistryResponseBody, a as InstancesClient, d as backendRegistryCapabilitiesSchema, f as backendRegistryEntrySchema, g as parseBackendRegistryResponse, h as isBackendRegistryInteractionKind, i as InstanceRestartingError, m as backendRegistryResponseSchema, n as Sandbox, p as backendRegistryInteractionKindSchema, r as HostedInstance } from "./client-Dn4C7eSu.js";
3
+ import { o as WorkspaceImages, t as SandboxInstance, x as ManagedProcessClient } from "./sandbox-Da0KPydY.js";
4
4
  import { LinesClient, lineInstanceKey, profileChannelReference } from "./lines.js";
5
5
  import { i as parseLineApplicationResult, n as LINE_APPLICATION_REQUEST_MAX_BYTES, r as parseLineApplicationRequest, t as LINE_APPLICATION_REPLY_MAX_CHARS } from "./line-application-C2SuT1zK.js";
6
6
  //#region src/core.ts
@@ -1,5 +1,5 @@
1
- import { n as HttpClient, r as SandboxInstance } from "./sandbox-CJ-53tMu.js";
2
- import { B as CreateSandboxOptions } from "./types-XDnpktUp.js";
1
+ import { n as HttpClient, r as SandboxInstance } from "./sandbox-BB4hJD1Y.js";
2
+ import { B as CreateSandboxOptions } from "./types-D-NLWnw2.js";
3
3
 
4
4
  //#region src/tangle/abi.d.ts
5
5
  /**
package/dist/index.d.ts CHANGED
@@ -1,15 +1,15 @@
1
- import { A as InteractiveStopCommand, B as SandboxInteractionConflict, C as InteractiveSessionHandleOptions, D as InteractiveSessionRef, E as InteractiveSessionInfo, F as InteractiveTerminalFrameLog, G as CONTROL_PLANE_MCP_SERVER_NAME, H as SandboxInteractionResult, I as InteractiveTerminalMetadata, J as SandboxMcpEndpoint, K as SANDBOX_MCP_SERVER_NAME, L as createInteractiveTerminalCapture, M as RespondToPermissionOptions, N as agentInteractiveSessionPromptRequestDigest, O as InteractiveSessionStartOptions, P as InteractiveTerminalCapture, R as createInteractiveTerminalSession, S as InteractiveSessionHandle, T as InteractiveSessionIncarnationId, U as BuildControlPlaneMcpConfigOptions, V as SandboxInteractionResolution, W as BuildSandboxMcpConfigOptions, X as buildControlPlaneMcpConfig, Y as SandboxMcpServerEntry, Z as buildSandboxMcpConfig, _ as SandboxSession, a as WorkspaceImagePublishRequestOptions, b as InteractivePromptCommand, c as TraceExportFormat, d as buildTraceExportPayload, f as exportTraceBundle, g as RawEvidenceExport, h as SandboxTaskSession, i as WorkspaceImagePublishInput, j as InterruptResult, k as InteractiveSessionStartResult, l as TraceExportResult, m as toOtelJson, o as WorkspaceImagePublishResult, p as otelTraceIdForTangleTrace, q as SandboxMcpConfig, r as SandboxInstance, s as WorkspaceImages, t as ForkAcknowledgement, u as TraceExportSink, v as AgentInteractiveTerminalSession, w as InteractiveSessionHost, x as InteractiveSessionControlClaim, y as InteractiveControlClaimRequest, z as SandboxInteractionCommandResult } from "./sandbox-CJ-53tMu.js";
2
- import { $ as DownloadOptions, $a as BatchEventDataMap, $i as SnapshotDeleteAcknowledgement, $n as PublicTemplateInfo, $r as SandboxFleetTraceEvent, $t as GPU_LEASE_PROVIDER_NAMES, A as CommitTaskSessionOptions, Aa as WriteFileOptions, Ai as SandboxTraceOptions, An as NetworkConfig, Ar as SandboxFleetArtifact, At as FileUsageOptions, B as CreateSandboxOptions, Ba as SandboxEnvRecovery, Bi as SessionEventStreamOptions, Bn as ProcessListOptions, Br as SandboxFleetMachineMeteredUsage, Bt as FleetDispatchStreamOptions, C as BranchOptions, Ca as UpdateUserOptions, Ci as SandboxTerminalInfo, Cn as ListMessagesOptions, Cr as SandboxDeleteAcknowledgement, Ct as FileReadError, Da as WaitForOptions, Di as SandboxTraceBundle, Dn as MAX_EGRESS_DENIALS_LIMIT, Dr as SandboxEvent, Dt as FileTreeFile, Ea as UsageInfo, Ei as SandboxTerminals, En as ListSandboxOptions, Er as SandboxEnvironment, Et as FileSystem, F as CreateIntelligenceReportOptions, Fa as ManagedProcessOptions, Fi as SecretsManager, Fn as PreviewLinkInfo, Fr as SandboxFleetDriverCapability, Ft as FleetAgentResult, G as DeleteMatchingSandboxesFilter, Ga as RawEvidenceNativeFile, Gi as SessionInfo, Gn as ProcessStatus, Gr as SandboxFleetOperationsSummary, Gt as FleetMachineId, H as CreateTaskSessionOptions, Ha as RawEvidenceArchiveManifest, Hi as SessionExecutionStatus, Hn as ProcessManager, Hr as SandboxFleetMachineSpec, Ht as FleetDriveTurnRequest, I as CreateRequestOptions, Ia as ManagedProcessRecord, Ii as SendSessionMessageOptions, In as PreviewLinkManager, Ir as SandboxFleetDriverTimings, It as FleetAgentRunStatus, J as DeleteOptions, Ji as SessionMessage, Jn as PromptResult, Jr as SandboxFleetPolicy, Jt as FleetRunEvent, K as DeleteMatchingSandboxesOptions, Ka as RawEvidencePayloadFile, Ki as SessionInterruptOptions, Kn as PromptInputPart, Kr as SandboxFleetParent, Kt as FleetPromptDispatchOptions, L as CreateSandboxFleetOptions, La as ManagedProcessResumeOptions, Li as SendSessionMessageRequest, Ln as PreviewLinkWaitOptions, Lr as SandboxFleetInfo, Lt as FleetDispatchCancelResult, M as ConversationTurnOptions, Ma as WriteManyOptions, Mi as SearchMatch, Mn as NonHostAgentDriverConfig, Mr as SandboxFleetCostEstimate, Mt as FileWriteResult, N as ConversationTurnResult, Na as ManagedProcessClient, Ni as SearchOptions, Nn as PermissionLevel, Nr as SandboxFleetDispatchFailureClass, Nt as FleetAgentId, Oa as WaitForRolloutOptions, Oi as SandboxTraceEvent, On as McpServerConfig, Or as SandboxFleetAgent, Ot as FileTreeOptions, P as CreateGpuLeaseOptions, Pa as ManagedProcessJobs, Pi as SecretInfo, Pn as PermissionsManager, Pr as SandboxFleetDispatchResponse, Pt as FleetAgentPlacement, Q as DispatchedSession, Qa as BatchEvent, Qi as SessionStatus, Qn as ProvisionStep, Qr as SandboxFleetTraceBundle, Qt as ForkLookupOptions, Ra as ManagedProcessSpec, Ri as SentSessionMessage, Rn as Process, Rr as SandboxFleetIntelligenceEnvelope, Rt as FleetDispatchResultBuffer, S as BatchTaskResult, Sa as TurnDriveResult, Si as SandboxTerminalCreateOptions, Sr as SandboxCreateReceipt, St as FileReadBatchResult, T as ChunkedUploadResult, Ta as UploadProgress, Ti as SandboxTerminalRequestOptions, Tn as ListSandboxFleetOptions, Tr as SandboxDeleteOutcome, Tt as FileRenameResult, U as DeleteMatchingSandboxOutcome, Ua as RawEvidenceDirectoryExport, Ui as SessionFailureReason, Un as ProcessSignal, Ur as SandboxFleetManifest, Ut as FleetExecDispatchOptions, V as CreateSessionOptions, Va as SandboxEnvRecoveryView, Vi as SessionExecutionInfo, Vn as ProcessLogEntry, Vr as SandboxFleetMachineRecord, Vt as FleetDriveTurnOutcome, W as DeleteMatchingSandboxResult, Wa as RawEvidenceExportOptions, Wi as SessionForkOptions, Wn as ProcessSpawnOptions, Wr as SandboxFleetManifestMachine, X as DirectoryPermission, Xa as PublicBatchRunRequest, Xi as SessionMessageInputPart, Xn as ProvisionResult, Xr as SandboxFleetSpend, Xt as ForkCounts, Y as DevServerInfo, Yi as SessionMessageAdmission, Yn as ProvisionEvent, Yr as SandboxFleetProfileRef, Yt as FleetRunOptions, Z as DispatchPromptOptions, Za as BatchBackendStats, Zi as SessionResultOptions, Zn as ProvisionStatus, Zr as SandboxFleetToken, Zt as ForkIdempotency, _ as BatchBackend, _a as TeeAttestationResponse, _i as SandboxShape, _n as IntelligenceReport, _r as SSHCommandDescriptor, _t as ExactProcessSpawnOptions, ai as SandboxFleetWorkspaceRestoreResult, an as GitStatus, ar as ReconcileSandboxFleetsOptions, at as DriverType, b as BatchRunRequest, ba as TokenRefreshHandler, bi as SandboxStatus, bn as IntelligenceReportSubjectType, br as SandboxConnection, bt as FileInfo, c as AttachGpuLeaseOptions, ca as StorageConfig, ci as SandboxInfo, cn as GpuLeaseCommandResult, d as BackendConfig, da as TaskSessionCommitResult, di as SandboxPortPreviewLink, dn as GpuLeaseManager, dr as RolloutChildResult, dt as EffectiveBackendSource, ea as SnapshotDeleteOutcome, ei as SandboxFleetTraceExport, en as GitAuth, eo as BatchSidecarGroup, er as PublicTemplateVersionInfo, et as DownloadProgress, f as BackendInfo, fa as TaskSessionFileChange, fi as SandboxRemovalState, fn as GpuLeaseProviderName, fr as RolloutOptions, ft as EgressDenial, g as BackendStatus, ga as TeeAttestationReport, gi as SandboxRuntimeHealth, gn as InstalledTool, gr as RolloutTurnPart, gt as EventStreamOptions, h as BackendRuntimeConfigUpdate, ha as TeeAttestationOptions, hi as SandboxRuntimeCapabilities, hn as HostAgentRuntimeBackend, hr as RolloutStatus, ht as EnsureDevServerOptions, ia as SnapshotResult, ii as SandboxFleetWorkspaceReconcileResult, in as GitDiff, io as parseBackendType, ir as ReapExpiredSandboxFleetsResult, it as DriverInfo, j as CompletedTurnResult, ja as WriteManyFile, ji as SandboxUser, jn as NetworkManager, jr as SandboxFleetArtifactSpec, jt as FileUsageResult, ka as WorkspaceOperationLookup, ki as SandboxTraceExport, kn as MkdirOptions, kr as SandboxFleetAgentSpec, kt as FileTreeResult, l as AttachSandboxFleetMachineOptions, la as SubscriptionInfo, li as SandboxIntelligenceEnvelope, ln as GpuLeaseExecOptions, lt as EffectiveBackend, m as BackendMcpServerStatus, ma as TaskSessionProfile, mi as SandboxResources, mn as HostAgentDriverConfig, mr as RolloutStartResult, mt as EgressPolicy, n as AccessPolicyRule, na as SnapshotInfo, ni as SandboxFleetUsage, nn as GitCommit, no as ALL_BACKEND_TYPES, nr as PublishPublicTemplateVersionOptions, nt as DriveTurnOptions, oa as StartupDiagnostics, oi as SandboxFleetWorkspaceSnapshotResult, on as GpuLease, or as ReconcileSandboxFleetsResult, ot as DurablePlan, p as BackendManager, pa as TaskSessionInfo, pi as SandboxResourceUsage, pn as GpuLeaseStatus, pr as RolloutScorer, pt as EgressManager, q as DeleteMatchingSandboxesResult, qa as RawEvidenceRecordsFile, qi as SessionListOptions, qn as PromptOptions, qr as SandboxFleetPlacement, qt as FleetPromptDispatchResult, r as AddUserOptions, ra as SnapshotOptions, ri as SandboxFleetWorkspace, rn as GitConfig, ro as BackendType, rr as ReapExpiredSandboxFleetsOptions, rt as DriverConfig, sa as StartupOperation, si as SandboxIdentity, sn as GpuLeaseBilling, sr as RenameOptions, st as DurablePlanDecisionResult, t as AcceleratorKind, ta as SnapshotIdempotency, ti as SandboxFleetTraceOptions, tn as GitBranch, to as BatchTaskUsage, tr as PublishPublicTemplateOptions, tt as DownloadResult, u as BackendCapabilities, ua as TaskSessionChanges, ui as SandboxPortBinding, un as GpuLeaseExecResult, ur as Rollout, ut as EffectiveBackendProfile, v as BatchResult, va as TeePublicKey, vi as SandboxShapePreset, vn as IntelligenceReportBudget, vr as SSHCredentials, vt as ExecOptions, w as ChunkedUploadOptions, wa as UploadOptions, wi as SandboxTerminalManager, wn as ListOptions, wr as SandboxDeleteOptions, wt as FileReadResult, x as BatchTask, xa as TokenUsage, xi as SandboxTerminalAttachOptions, xn as IntelligenceReportWindow, xr as SandboxCreateOutcome, xt as FileReadBatchOptions, y as BatchRunOptions, ya as TeePublicKeyResponse, yi as SandboxShapesInfo, yn as IntelligenceReportCompareTo, yr as SandboxConfig, yt as ExecResult, z as CreateSandboxFleetWithCoordinatorOptions, za as ManagedProcessState, zi as SessionBackendCredentials, zn as ProcessInfo, zr as SandboxFleetMachine, zt as FleetDispatchResultBufferOptions } from "./types-XDnpktUp.js";
1
+ import { A as InteractiveStopCommand, B as SandboxInteractionConflict, C as InteractiveSessionHandleOptions, D as InteractiveSessionRef, E as InteractiveSessionInfo, F as InteractiveTerminalFrameLog, G as CONTROL_PLANE_MCP_SERVER_NAME, H as SandboxInteractionResult, I as InteractiveTerminalMetadata, J as SandboxMcpEndpoint, K as SANDBOX_MCP_SERVER_NAME, L as createInteractiveTerminalCapture, M as RespondToPermissionOptions, N as agentInteractiveSessionPromptRequestDigest, O as InteractiveSessionStartOptions, P as InteractiveTerminalCapture, R as createInteractiveTerminalSession, S as InteractiveSessionHandle, T as InteractiveSessionIncarnationId, U as BuildControlPlaneMcpConfigOptions, V as SandboxInteractionResolution, W as BuildSandboxMcpConfigOptions, X as buildControlPlaneMcpConfig, Y as SandboxMcpServerEntry, Z as buildSandboxMcpConfig, _ as SandboxSession, a as WorkspaceImagePublishRequestOptions, b as InteractivePromptCommand, c as TraceExportFormat, d as buildTraceExportPayload, f as exportTraceBundle, g as RawEvidenceExport, h as SandboxTaskSession, i as WorkspaceImagePublishInput, j as InterruptResult, k as InteractiveSessionStartResult, l as TraceExportResult, m as toOtelJson, o as WorkspaceImagePublishResult, p as otelTraceIdForTangleTrace, q as SandboxMcpConfig, r as SandboxInstance, s as WorkspaceImages, t as ForkAcknowledgement, u as TraceExportSink, v as AgentInteractiveTerminalSession, w as InteractiveSessionHost, x as InteractiveSessionControlClaim, y as InteractiveControlClaimRequest, z as SandboxInteractionCommandResult } from "./sandbox-BB4hJD1Y.js";
2
+ import { $ as DownloadOptions, $a as BatchEventDataMap, $i as SnapshotDeleteAcknowledgement, $n as PublicTemplateInfo, $r as SandboxFleetTraceEvent, $t as GPU_LEASE_PROVIDER_NAMES, A as CommitTaskSessionOptions, Aa as WriteFileOptions, Ai as SandboxTraceOptions, An as NetworkConfig, Ar as SandboxFleetArtifact, At as FileUsageOptions, B as CreateSandboxOptions, Ba as SandboxEnvRecovery, Bi as SessionEventStreamOptions, Bn as ProcessListOptions, Br as SandboxFleetMachineMeteredUsage, Bt as FleetDispatchStreamOptions, C as BranchOptions, Ca as UpdateUserOptions, Ci as SandboxTerminalInfo, Cn as ListMessagesOptions, Cr as SandboxDeleteAcknowledgement, Ct as FileReadError, Da as WaitForOptions, Di as SandboxTraceBundle, Dn as MAX_EGRESS_DENIALS_LIMIT, Dr as SandboxEvent, Dt as FileTreeFile, Ea as UsageInfo, Ei as SandboxTerminals, En as ListSandboxOptions, Er as SandboxEnvironment, Et as FileSystem, F as CreateIntelligenceReportOptions, Fa as ManagedProcessOptions, Fi as SecretsManager, Fn as PreviewLinkInfo, Fr as SandboxFleetDriverCapability, Ft as FleetAgentResult, G as DeleteMatchingSandboxesFilter, Ga as RawEvidenceNativeFile, Gi as SessionInfo, Gn as ProcessStatus, Gr as SandboxFleetOperationsSummary, Gt as FleetMachineId, H as CreateTaskSessionOptions, Ha as RawEvidenceArchiveManifest, Hi as SessionExecutionStatus, Hn as ProcessManager, Hr as SandboxFleetMachineSpec, Ht as FleetDriveTurnRequest, I as CreateRequestOptions, Ia as ManagedProcessRecord, Ii as SendSessionMessageOptions, In as PreviewLinkManager, Ir as SandboxFleetDriverTimings, It as FleetAgentRunStatus, J as DeleteOptions, Ji as SessionMessage, Jn as PromptResult, Jr as SandboxFleetPolicy, Jt as FleetRunEvent, K as DeleteMatchingSandboxesOptions, Ka as RawEvidencePayloadFile, Ki as SessionInterruptOptions, Kn as PromptInputPart, Kr as SandboxFleetParent, Kt as FleetPromptDispatchOptions, L as CreateSandboxFleetOptions, La as ManagedProcessResumeOptions, Li as SendSessionMessageRequest, Ln as PreviewLinkWaitOptions, Lr as SandboxFleetInfo, Lt as FleetDispatchCancelResult, M as ConversationTurnOptions, Ma as WriteManyOptions, Mi as SearchMatch, Mn as NonHostAgentDriverConfig, Mr as SandboxFleetCostEstimate, Mt as FileWriteResult, N as ConversationTurnResult, Na as ManagedProcessClient, Ni as SearchOptions, Nn as PermissionLevel, Nr as SandboxFleetDispatchFailureClass, Nt as FleetAgentId, Oa as WaitForRolloutOptions, Oi as SandboxTraceEvent, On as McpServerConfig, Or as SandboxFleetAgent, Ot as FileTreeOptions, P as CreateGpuLeaseOptions, Pa as ManagedProcessJobs, Pi as SecretInfo, Pn as PermissionsManager, Pr as SandboxFleetDispatchResponse, Pt as FleetAgentPlacement, Q as DispatchedSession, Qa as BatchEvent, Qi as SessionStatus, Qn as ProvisionStep, Qr as SandboxFleetTraceBundle, Qt as ForkLookupOptions, Ra as ManagedProcessSpec, Ri as SentSessionMessage, Rn as Process, Rr as SandboxFleetIntelligenceEnvelope, Rt as FleetDispatchResultBuffer, S as BatchTaskResult, Sa as TurnDriveResult, Si as SandboxTerminalCreateOptions, Sr as SandboxCreateReceipt, St as FileReadBatchResult, T as ChunkedUploadResult, Ta as UploadProgress, Ti as SandboxTerminalRequestOptions, Tn as ListSandboxFleetOptions, Tr as SandboxDeleteOutcome, Tt as FileRenameResult, U as DeleteMatchingSandboxOutcome, Ua as RawEvidenceDirectoryExport, Ui as SessionFailureReason, Un as ProcessSignal, Ur as SandboxFleetManifest, Ut as FleetExecDispatchOptions, V as CreateSessionOptions, Va as SandboxEnvRecoveryView, Vi as SessionExecutionInfo, Vn as ProcessLogEntry, Vr as SandboxFleetMachineRecord, Vt as FleetDriveTurnOutcome, W as DeleteMatchingSandboxResult, Wa as RawEvidenceExportOptions, Wi as SessionForkOptions, Wn as ProcessSpawnOptions, Wr as SandboxFleetManifestMachine, X as DirectoryPermission, Xa as PublicBatchRunRequest, Xi as SessionMessageInputPart, Xn as ProvisionResult, Xr as SandboxFleetSpend, Xt as ForkCounts, Y as DevServerInfo, Yi as SessionMessageAdmission, Yn as ProvisionEvent, Yr as SandboxFleetProfileRef, Yt as FleetRunOptions, Z as DispatchPromptOptions, Za as BatchBackendStats, Zi as SessionResultOptions, Zn as ProvisionStatus, Zr as SandboxFleetToken, Zt as ForkIdempotency, _ as BatchBackend, _a as TeeAttestationResponse, _i as SandboxShape, _n as IntelligenceReport, _r as SSHCommandDescriptor, _t as ExactProcessSpawnOptions, ai as SandboxFleetWorkspaceRestoreResult, an as GitStatus, ar as ReconcileSandboxFleetsOptions, at as DriverType, b as BatchRunRequest, ba as TokenRefreshHandler, bi as SandboxStatus, bn as IntelligenceReportSubjectType, br as SandboxConnection, bt as FileInfo, c as AttachGpuLeaseOptions, ca as StorageConfig, ci as SandboxInfo, cn as GpuLeaseCommandResult, d as BackendConfig, da as TaskSessionCommitResult, di as SandboxPortPreviewLink, dn as GpuLeaseManager, dr as RolloutChildResult, dt as EffectiveBackendSource, ea as SnapshotDeleteOutcome, ei as SandboxFleetTraceExport, en as GitAuth, eo as BatchSidecarGroup, er as PublicTemplateVersionInfo, et as DownloadProgress, f as BackendInfo, fa as TaskSessionFileChange, fi as SandboxRemovalState, fn as GpuLeaseProviderName, fr as RolloutOptions, ft as EgressDenial, g as BackendStatus, ga as TeeAttestationReport, gi as SandboxRuntimeHealth, gn as InstalledTool, gr as RolloutTurnPart, gt as EventStreamOptions, h as BackendRuntimeConfigUpdate, ha as TeeAttestationOptions, hi as SandboxRuntimeCapabilities, hn as HostAgentRuntimeBackend, hr as RolloutStatus, ht as EnsureDevServerOptions, ia as SnapshotResult, ii as SandboxFleetWorkspaceReconcileResult, in as GitDiff, io as parseBackendType, ir as ReapExpiredSandboxFleetsResult, it as DriverInfo, j as CompletedTurnResult, ja as WriteManyFile, ji as SandboxUser, jn as NetworkManager, jr as SandboxFleetArtifactSpec, jt as FileUsageResult, ka as WorkspaceOperationLookup, ki as SandboxTraceExport, kn as MkdirOptions, kr as SandboxFleetAgentSpec, kt as FileTreeResult, l as AttachSandboxFleetMachineOptions, la as SubscriptionInfo, li as SandboxIntelligenceEnvelope, ln as GpuLeaseExecOptions, lt as EffectiveBackend, m as BackendMcpServerStatus, ma as TaskSessionProfile, mi as SandboxResources, mn as HostAgentDriverConfig, mr as RolloutStartResult, mt as EgressPolicy, n as AccessPolicyRule, na as SnapshotInfo, ni as SandboxFleetUsage, nn as GitCommit, no as ALL_BACKEND_TYPES, nr as PublishPublicTemplateVersionOptions, nt as DriveTurnOptions, oa as StartupDiagnostics, oi as SandboxFleetWorkspaceSnapshotResult, on as GpuLease, or as ReconcileSandboxFleetsResult, ot as DurablePlan, p as BackendManager, pa as TaskSessionInfo, pi as SandboxResourceUsage, pn as GpuLeaseStatus, pr as RolloutScorer, pt as EgressManager, q as DeleteMatchingSandboxesResult, qa as RawEvidenceRecordsFile, qi as SessionListOptions, qn as PromptOptions, qr as SandboxFleetPlacement, qt as FleetPromptDispatchResult, r as AddUserOptions, ra as SnapshotOptions, ri as SandboxFleetWorkspace, rn as GitConfig, ro as BackendType, rr as ReapExpiredSandboxFleetsOptions, rt as DriverConfig, sa as StartupOperation, si as SandboxIdentity, sn as GpuLeaseBilling, sr as RenameOptions, st as DurablePlanDecisionResult, t as AcceleratorKind, ta as SnapshotIdempotency, ti as SandboxFleetTraceOptions, tn as GitBranch, to as BatchTaskUsage, tr as PublishPublicTemplateOptions, tt as DownloadResult, u as BackendCapabilities, ua as TaskSessionChanges, ui as SandboxPortBinding, un as GpuLeaseExecResult, ur as Rollout, ut as EffectiveBackendProfile, v as BatchResult, va as TeePublicKey, vi as SandboxShapePreset, vn as IntelligenceReportBudget, vr as SSHCredentials, vt as ExecOptions, w as ChunkedUploadOptions, wa as UploadOptions, wi as SandboxTerminalManager, wn as ListOptions, wr as SandboxDeleteOptions, wt as FileReadResult, x as BatchTask, xa as TokenUsage, xi as SandboxTerminalAttachOptions, xn as IntelligenceReportWindow, xr as SandboxCreateOutcome, xt as FileReadBatchOptions, y as BatchRunOptions, ya as TeePublicKeyResponse, yi as SandboxShapesInfo, yn as IntelligenceReportCompareTo, yr as SandboxConfig, yt as ExecResult, z as CreateSandboxFleetWithCoordinatorOptions, za as ManagedProcessState, zi as SessionBackendCredentials, zn as ProcessInfo, zr as SandboxFleetMachine, zt as FleetDispatchResultBufferOptions } from "./types-D-NLWnw2.js";
3
3
  import { c as MintScopedTokenOptions, d as TERMINAL_WS_ECHO_SUBPROTOCOL, f as TerminalExitInfo, g as TerminalStreamAuthFormat, h as TerminalReadyInfo, i as TerminalStreamOptions, l as ScopedToken, m as TerminalOutputMessage, n as TerminalStreamError, o as TerminalStreamToken, p as TerminalInteractiveSessionIdentity, r as TerminalStreamHandlers, s as MintInteractiveSessionTokenOptions, t as TerminalStream, u as ScopedTokenScope } from "./terminal-stream-B6bUr0hj.js";
4
4
  import { a as InteractiveSessionControlController, c as InteractiveSessionIdentity, d as interactiveSessionIdentityDigest, f as InteractiveAttachOptions, g as InteractiveSessionStatus, h as InteractiveRequestOptions, i as INTERACTIVE_CONTROL_CLEANUP_TIMEOUT_MS, l as InteractiveSessionNotRunningError, m as InteractiveControlClaimOptions, n as BrowserInteractiveSessionControlControllerOptions, o as InteractiveSessionControlControllerOptions, p as InteractiveControlClaimAcknowledgement, r as browserInteractiveControlHolderId, s as InteractiveSessionControlTransport, t as BrowserInteractiveSessionControlController, u as createInteractiveControlHolderId } from "./browser-interactive-control-controller-DRCfxOQz.js";
5
5
  import { a as InteractiveSessionControllerOptions, i as InteractiveSessionController, n as BrowserInteractiveSessionControllerOptions, o as InteractiveSessionControllerTransport, r as InteractiveAttachRequest, t as BrowserInteractiveSessionController } from "./interactive-controller-ykaThYp6.js";
6
- import { A as LineSenderVerification, B as profileChannelReference, C as LineReplyCodeInput, D as LineRole, E as LineRespondView, F as LineVoiceOptions, G as LineApplicationResult, H as LINE_APPLICATION_REQUEST_MAX_BYTES, I as LinesClient, J as parseLineApplicationRequest, K as LineApplicationState, M as LineThread, N as LineTransport, O as LineSendInput, P as LineVoice, R as SandboxLines, S as LineReplyCode, T as LineRespondAgent, U as LineApplication, V as LINE_APPLICATION_REPLY_MAX_CHARS, W as LineApplicationRequest, Y as parseLineApplicationResult, _ as LineMemberSpec, a as LineApplicationAttachOptions, b as LineProvider, c as LineAttachmentReauthorization, d as LineInstanceAttachOptions, f as LineInstanceCreate, g as LineMemberPatch, h as LineMemberInstance, i as LineAllowanceSubject, j as LineSenderVerificationStart, k as LineSendReceipt, l as LineExecutionKey, m as LineMember, n as LineAgentRolePolicy, o as LineAttachOptions, p as LineLimits, q as LineApplicationView, r as LineAllowance, s as LineAttachment, t as Line, u as LineFromConnectionInput, v as LineMessage, w as LineReplyGate, x as LineReminderPreferences, y as LineNumberInventory, z as lineInstanceKey } from "./lines-ee3_S7Z0.js";
7
- import { A as isBackendRegistryInteractionKind, C as BackendRegistryEntry, D as backendRegistryEntrySchema, E as backendRegistryCapabilitiesSchema, M as parseBackendRegistryResponseBody, O as backendRegistryInteractionKindSchema, S as BackendRegistryCapabilities, T as BackendRegistryResponse, _ as SandboxFleet, a as Team, b as ParsedSSEEvent, c as SessionBroadcastEvent, d as HostedInstance, f as InstanceProfile, g as InstancesClient, h as InstanceStart, i as Sandbox, j as parseBackendRegistryResponse, k as backendRegistryResponseSchema, l as SessionBroadcastResult, m as InstanceRestartingError, n as IntelligenceClient, o as TeamInvitation, p as InstanceRecord, r as InviteTeamMemberOptions, s as TeamMember, t as CreateTeamOptions, u as EnsureInstanceOptions, v as SandboxFleetClient, w as BackendRegistryInteractionKind, x as parseSSEStream, y as ParseSSEStreamOptions } from "./client-Dq2EiJ5U.js";
6
+ import { A as LineSenderVerification, B as profileChannelReference, C as LineReplyCodeInput, D as LineRole, E as LineRespondView, F as LineVoiceOptions, G as LineApplicationResult, H as LINE_APPLICATION_REQUEST_MAX_BYTES, I as LinesClient, J as parseLineApplicationRequest, K as LineApplicationState, M as LineThread, N as LineTransport, O as LineSendInput, P as LineVoice, R as SandboxLines, S as LineReplyCode, T as LineRespondAgent, U as LineApplication, V as LINE_APPLICATION_REPLY_MAX_CHARS, W as LineApplicationRequest, Y as parseLineApplicationResult, _ as LineMemberSpec, a as LineApplicationAttachOptions, b as LineProvider, c as LineAttachmentReauthorization, d as LineInstanceAttachOptions, f as LineInstanceCreate, g as LineMemberPatch, h as LineMemberInstance, i as LineAllowanceSubject, j as LineSenderVerificationStart, k as LineSendReceipt, l as LineExecutionKey, m as LineMember, n as LineAgentRolePolicy, o as LineAttachOptions, p as LineLimits, q as LineApplicationView, r as LineAllowance, s as LineAttachment, t as Line, u as LineFromConnectionInput, v as LineMessage, w as LineReplyGate, x as LineReminderPreferences, y as LineNumberInventory, z as lineInstanceKey } from "./lines-BUf7A9aS.js";
7
+ import { A as isBackendRegistryInteractionKind, C as BackendRegistryEntry, D as backendRegistryEntrySchema, E as backendRegistryCapabilitiesSchema, M as parseBackendRegistryResponseBody, O as backendRegistryInteractionKindSchema, S as BackendRegistryCapabilities, T as BackendRegistryResponse, _ as SandboxFleet, a as Team, b as ParsedSSEEvent, c as SessionBroadcastEvent, d as HostedInstance, f as InstanceProfile, g as InstancesClient, h as InstanceStart, i as Sandbox, j as parseBackendRegistryResponse, k as backendRegistryResponseSchema, l as SessionBroadcastResult, m as InstanceRestartingError, n as IntelligenceClient, o as TeamInvitation, p as InstanceRecord, r as InviteTeamMemberOptions, s as TeamMember, t as CreateTeamOptions, u as EnsureInstanceOptions, v as SandboxFleetClient, w as BackendRegistryInteractionKind, x as parseSSEStream, y as ParseSSEStreamOptions } from "./client-BJIDfHnm.js";
8
8
  import { _ as TimeoutError, a as FileWriteConflictError, c as NotFoundError, d as ResumeEnvRequiredError, f as SandboxError, g as StateError, h as ServerError, i as EgressProxyRecoveryError, l as PartialFailureError, m as SandboxFailureDetail, n as CapabilityError, o as KeyBudgetExhaustedError, p as SandboxErrorJson, r as EdgeNotReadyError, s as NetworkError, t as AuthError, u as QuotaError, v as ValidationError } from "./errors-DS32ViPj.js";
9
9
  import { d as AnyTokenPayload, h as IssueCollaborationTokenOptions, m as CollaborationTokenPayload, p as CollaborationAccess } from "./index-BoQeoNOD.js";
10
10
  import { _ as CollaborationTransportConfig, a as CollaborationClient, c as CollaborationClientConfig, d as CollaborationDocumentRef, f as CollaborationFileBridgeOptions, g as CollaborationTokenRefreshResponse, h as CollaborationTokenRefreshRequest, i as parseCollaborationDocumentId, l as CollaborationDocumentAdapter, m as CollaborationPermissions, n as buildCollaborationDocumentId, o as CollaborationBootstrapRequest, p as CollaborationFileEvent, r as normalizeCollaborationPath, s as CollaborationBootstrapResponse, t as CollaborationFileBridge, u as CollaborationDocumentChange, v as SaveCollaborationSnapshotRequest, y as SaveCollaborationSnapshotResponse } from "./index-BXcL8P-U.js";
11
- import { a as deriveAgentRunOutcome, i as deriveAgentResultOutcome, n as AgentRunOutcomeTracker, r as createAgentRunOutcomeTracker, t as AgentRunOutcome } from "./agent-run-outcome-COsuMcn_.js";
12
- import { b as TangleSandboxClientConfig, h as TangleSandboxClient } from "./index-cuDoZd1_.js";
11
+ import { a as deriveAgentRunOutcome, i as deriveAgentResultOutcome, n as AgentRunOutcomeTracker, r as createAgentRunOutcomeTracker, t as AgentRunOutcome } from "./agent-run-outcome-ChSbW-Oa.js";
12
+ import { b as TangleSandboxClientConfig, h as TangleSandboxClient } from "./index-bF2GjdTK.js";
13
13
  import * as _$_tangle_network_agent_interface0 from "@tangle-network/agent-interface";
14
14
  import { AgentProfile, AgentProfile as AgentProfile$1, AgentProfileCapabilities, AgentProfileConfidential, AgentProfileConfigValue, AgentProfileConnection, AgentProfileFileMount, AgentProfileFileMount as AgentProfileFileMount$1, AgentProfileMcpServer, AgentProfileModelHints, AgentProfilePermissionValue, AgentProfilePrompt, AgentProfileResourceRef, AgentProfileResources, AgentProfileSecurityPolicy, AgentProfileValidationIssue, AgentProfileValidationResult, AgentRunCancellationAcknowledgement, AgentRunCancellationRequest, AgentSubagentProfile, Capability, SANDBOX_SIZE_PRESET_NAMES, SandboxSizePreset } from "@tangle-network/agent-interface";
15
15
  import { z } from "zod";
package/dist/index.js CHANGED
@@ -1,13 +1,13 @@
1
1
  import { i as parseBackendType, r as backendTypeSchema, t as ALL_BACKEND_TYPES } from "./backend-types-C7b_Gpa0.js";
2
2
  import { D as parseSSEStream, F as deriveAgentResultOutcome, I as deriveAgentRunOutcome, M as normalizeRuntimeBackendConfig, P as createAgentRunOutcomeTracker, a as TERMINAL_WS_ECHO_SUBPROTOCOL, i as TerminalStreamError, n as InteractiveSessionController, r as TerminalStream, t as BrowserInteractiveSessionController } from "./interactive-controller-5_ixpFnR.js";
3
3
  import { a as FileWriteConflictError, c as NotFoundError, d as ResumeEnvRequiredError, f as SandboxError, g as ValidationError, h as TimeoutError, i as EgressProxyRecoveryError, l as PartialFailureError, m as StateError, n as CapabilityError, o as KeyBudgetExhaustedError, p as ServerError, r as EdgeNotReadyError, s as NetworkError, t as AuthError, u as QuotaError } from "./errors-D1JIX7Jm.js";
4
- import { _ as parseBackendRegistryResponseBody, a as InstancesClient, c as runtimeWorkspaceCwdSchema, d as backendRegistryCapabilitiesSchema, f as backendRegistryEntrySchema, g as parseBackendRegistryResponse, h as isBackendRegistryInteractionKind, i as InstanceRestartingError, l as createBatchResultAccumulator, m as backendRegistryResponseSchema, n as Sandbox, o as SandboxFleet, p as backendRegistryInteractionKindSchema, r as HostedInstance, s as SandboxFleetClient, t as IntelligenceClient, u as validateBatchRunRequest } from "./client-CKp5_eSZ.js";
4
+ import { _ as parseBackendRegistryResponseBody, a as InstancesClient, c as runtimeWorkspaceCwdSchema, d as backendRegistryCapabilitiesSchema, f as backendRegistryEntrySchema, g as parseBackendRegistryResponse, h as isBackendRegistryInteractionKind, i as InstanceRestartingError, l as createBatchResultAccumulator, m as backendRegistryResponseSchema, n as Sandbox, o as SandboxFleet, p as backendRegistryInteractionKindSchema, r as HostedInstance, s as SandboxFleetClient, t as IntelligenceClient, u as validateBatchRunRequest } from "./client-Dn4C7eSu.js";
5
5
  import { a as INTERACTIVE_CONTROL_CLEANUP_TIMEOUT_MS, l as createInteractiveControlHolderId, n as browserInteractiveControlHolderId, o as InteractiveSessionControlController, s as InteractiveSessionNotRunningError, t as BrowserInteractiveSessionControlController, u as interactiveSessionIdentityDigest } from "./browser-interactive-control-controller-BJf0P_J4.js";
6
- import { A as exportTraceBundle, C as splitInlineProfileFileMounts, M as toOtelJson, S as materializeProfileFileMounts, T as validateDeferredProfileFileMounts, _ as collectAgentFinalMessageText, b as isToolBearingEvent, c as MAX_EGRESS_DENIALS_LIMIT, d as InteractiveSessionHandle, f as agentInteractiveSessionPromptRequestDigest, g as applySandboxEventText, h as createInteractiveTerminalSession, j as otelTraceIdForTangleTrace, k as buildTraceExportPayload, l as SandboxTaskSession, m as createInteractiveTerminalCapture, o as WorkspaceImages, p as InteractiveTerminalFrameLog, s as GPU_LEASE_PROVIDER_NAMES, t as SandboxInstance, u as SandboxSession, v as collectAgentResponseText, w as splitInlineProfileSkills, x as ManagedProcessClient, y as getSandboxEventText } from "./sandbox-Duvz9RDN.js";
6
+ import { A as exportTraceBundle, C as splitInlineProfileFileMounts, M as toOtelJson, S as materializeProfileFileMounts, T as validateDeferredProfileFileMounts, _ as collectAgentFinalMessageText, b as isToolBearingEvent, c as MAX_EGRESS_DENIALS_LIMIT, d as InteractiveSessionHandle, f as agentInteractiveSessionPromptRequestDigest, g as applySandboxEventText, h as createInteractiveTerminalSession, j as otelTraceIdForTangleTrace, k as buildTraceExportPayload, l as SandboxTaskSession, m as createInteractiveTerminalCapture, o as WorkspaceImages, p as InteractiveTerminalFrameLog, s as GPU_LEASE_PROVIDER_NAMES, t as SandboxInstance, u as SandboxSession, v as collectAgentResponseText, w as splitInlineProfileSkills, x as ManagedProcessClient, y as getSandboxEventText } from "./sandbox-Da0KPydY.js";
7
7
  import { LinesClient, SandboxLines, lineInstanceKey, profileChannelReference } from "./lines.js";
8
8
  import { a as CollaborationClient, i as parseCollaborationDocumentId, n as buildCollaborationDocumentId, r as normalizeCollaborationPath, t as CollaborationFileBridge } from "./collaboration-B7QeBrFQ.js";
9
9
  import { i as parseLineApplicationResult, n as LINE_APPLICATION_REQUEST_MAX_BYTES, r as parseLineApplicationRequest, t as LINE_APPLICATION_REPLY_MAX_CHARS } from "./line-application-C2SuT1zK.js";
10
- import { s as TangleSandboxClient } from "./tangle-DCYAvgPK.js";
10
+ import { s as TangleSandboxClient } from "./tangle-CXWszMFE.js";
11
11
  import { SANDBOX_SIZE_PRESET_NAMES, agentProfileConfidentialSchema, agentProfileSchema } from "@tangle-network/agent-interface";
12
12
  import { z } from "zod";
13
13
  //#region src/confidential.ts
@@ -1,4 +1,4 @@
1
- import { B as CreateSandboxOptions, d as BackendConfig } from "./types-XDnpktUp.js";
1
+ import { B as CreateSandboxOptions, d as BackendConfig } from "./types-D-NLWnw2.js";
2
2
 
3
3
  //#region src/line-application.d.ts
4
4
  /** Bounded callback request bytes after canonicalization, including JSON framing. */
package/dist/lines.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { A as LineSenderVerification, B as profileChannelReference, C as LineReplyCodeInput, D as LineRole, E as LineRespondView, F as LineVoiceOptions, I as LinesClient, L as LinesHttpClient, M as LineThread, N as LineTransport, O as LineSendInput, P as LineVoice, R as SandboxLines, S as LineReplyCode, T as LineRespondAgent, _ as LineMemberSpec, a as LineApplicationAttachOptions, b as LineProvider, c as LineAttachmentReauthorization, d as LineInstanceAttachOptions, f as LineInstanceCreate, g as LineMemberPatch, h as LineMemberInstance, i as LineAllowanceSubject, j as LineSenderVerificationStart, k as LineSendReceipt, l as LineExecutionKey, m as LineMember, n as LineAgentRolePolicy, o as LineAttachOptions, p as LineLimits, r as LineAllowance, s as LineAttachment, t as Line, u as LineFromConnectionInput, v as LineMessage, w as LineReplyGate, x as LineReminderPreferences, y as LineNumberInventory, z as lineInstanceKey } from "./lines-ee3_S7Z0.js";
1
+ import { A as LineSenderVerification, B as profileChannelReference, C as LineReplyCodeInput, D as LineRole, E as LineRespondView, F as LineVoiceOptions, I as LinesClient, L as LinesHttpClient, M as LineThread, N as LineTransport, O as LineSendInput, P as LineVoice, R as SandboxLines, S as LineReplyCode, T as LineRespondAgent, _ as LineMemberSpec, a as LineApplicationAttachOptions, b as LineProvider, c as LineAttachmentReauthorization, d as LineInstanceAttachOptions, f as LineInstanceCreate, g as LineMemberPatch, h as LineMemberInstance, i as LineAllowanceSubject, j as LineSenderVerificationStart, k as LineSendReceipt, l as LineExecutionKey, m as LineMember, n as LineAgentRolePolicy, o as LineAttachOptions, p as LineLimits, r as LineAllowance, s as LineAttachment, t as Line, u as LineFromConnectionInput, v as LineMessage, w as LineReplyGate, x as LineReminderPreferences, y as LineNumberInventory, z as lineInstanceKey } from "./lines-BUf7A9aS.js";
2
2
  export { Line, LineAgentRolePolicy, LineAllowance, LineAllowanceSubject, LineApplicationAttachOptions, LineAttachOptions, LineAttachment, LineAttachmentReauthorization, LineExecutionKey, LineFromConnectionInput, LineInstanceAttachOptions, LineInstanceCreate, LineLimits, LineMember, LineMemberInstance, LineMemberPatch, LineMemberSpec, LineMessage, LineNumberInventory, LineProvider, LineReminderPreferences, LineReplyCode, LineReplyCodeInput, LineReplyGate, LineRespondAgent, LineRespondView, LineRole, LineSendInput, LineSendReceipt, LineSenderVerification, LineSenderVerificationStart, LineThread, LineTransport, LineVoice, LineVoiceOptions, LinesClient, LinesHttpClient, SandboxLines, lineInstanceKey, profileChannelReference };
@@ -1,4 +1,4 @@
1
- import { t as AUTH_BUNDLE_PATHS } from "./cli-auth-bundle-CJSdRlx0.js";
1
+ import { t as AUTH_BUNDLE_PATHS } from "./cli-auth-bundle-CVOv-Cmb.js";
2
2
  import { existsSync, readFileSync } from "node:fs";
3
3
  import { homedir } from "node:os";
4
4
  import { join } from "node:path";
@@ -1,6 +1,6 @@
1
- import { r as SandboxInstance } from "./sandbox-CJ-53tMu.js";
2
- import { Fn as PreviewLinkInfo, ht as EnsureDevServerOptions } from "./types-XDnpktUp.js";
3
- import { i as Sandbox } from "./client-Dq2EiJ5U.js";
1
+ import { r as SandboxInstance } from "./sandbox-BB4hJD1Y.js";
2
+ import { Fn as PreviewLinkInfo, ht as EnsureDevServerOptions } from "./types-D-NLWnw2.js";
3
+ import { i as Sandbox } from "./client-BJIDfHnm.js";
4
4
 
5
5
  //#region src/agent/preview-operations.d.ts
6
6
  type AgentPreviewOptions = Pick<EnsureDevServerOptions, "sessionId" | "cwd"> & {
@@ -30,8 +30,42 @@ const metadata = z.object({
30
30
  ctimeMs: z.number().finite(),
31
31
  sizeBytes: count
32
32
  });
33
- const manifestSchema = z.object({
34
- schema: z.literal("tangle.raw-evidence-archive.v1"),
33
+ const nativeSessionCopy = z.object({
34
+ harness: text,
35
+ format: text.nullable(),
36
+ executionId: text,
37
+ attempt: count.min(1),
38
+ nativeSessionId: z.string(),
39
+ copy: z.enum(["snapshot", "settled"]),
40
+ capturedAt: text,
41
+ process: z.object({
42
+ pid: count.nullable(),
43
+ exitedAt: text.nullable(),
44
+ exitCode: z.number().int().nullable(),
45
+ signal: text.nullable(),
46
+ outcome: z.enum([
47
+ "succeeded",
48
+ "failed",
49
+ "cancelled",
50
+ "unknown"
51
+ ])
52
+ }),
53
+ files: z.array(payload.extend({
54
+ store: safePath,
55
+ storePath: safePath,
56
+ format: text,
57
+ method: z.enum([
58
+ "byte-prefix",
59
+ "atomic-file",
60
+ "sqlite-backup"
61
+ ]),
62
+ truncated: z.boolean(),
63
+ sourceBytes: count
64
+ })),
65
+ complete: z.boolean(),
66
+ missingReasons: z.array(text)
67
+ });
68
+ const manifestBase = z.object({
35
69
  status: z.enum(["captured", "partial"]),
36
70
  sessionId: text,
37
71
  backendType: z.string().regex(/^[a-z][a-z0-9_-]{0,127}$/),
@@ -113,6 +147,11 @@ const manifestSchema = z.object({
113
147
  coverageComplete: z.boolean(),
114
148
  missingReasons: z.array(text)
115
149
  });
150
+ /** v2 adds each attempt's native session, from the harness session contract. */
151
+ const manifestSchema = z.discriminatedUnion("schema", [manifestBase.extend({ schema: z.literal("tangle.raw-evidence-archive.v1") }), manifestBase.extend({
152
+ schema: z.literal("tangle.raw-evidence-archive.v2"),
153
+ nativeSessions: z.array(nativeSessionCopy)
154
+ })]);
116
155
  const MAX_METADATA = 64 * 1024 * 1024;
117
156
  const MAX_RECORD = 16 * 1024 * 1024;
118
157
  /** Node-only directory export. Flat generated member names cannot traverse or create links. */
@@ -299,6 +338,11 @@ async function exportRawEvidenceDirectory(request, sessionId, targetDirectory, o
299
338
  if (!item.content || item.sha256 !== item.content.sha256 || item.sizeBytes !== item.content.sizeBytes) throw new Error("Evidence native payload mismatch");
300
339
  verify(item.content);
301
340
  } else if (item.content || item.sha256 || item.kind === "symlink" && item.linkTarget === void 0) throw new Error("Evidence native metadata mismatch");
341
+ const nativeSessions = manifest.schema === "tangle.raw-evidence-archive.v2" ? manifest.nativeSessions : [];
342
+ for (const copy of nativeSessions) {
343
+ if (!manifest.attempts.some((attempt) => attempt.executionId === copy.executionId && attempt.ordinal === copy.attempt)) throw new Error("Evidence native session copy is unattributed");
344
+ for (const file of copy.files) verify(file);
345
+ }
302
346
  for (const item of manifest.processSources) {
303
347
  if (item.sha256 !== item.content.sha256 || item.sizeBytes !== item.content.sizeBytes) throw new Error("Evidence process source mismatch");
304
348
  verify(item.content);
package/dist/runtime.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- import { A as CommitTaskSessionOptions, Aa as WriteFileOptions, At as FileUsageOptions, Bi as SessionEventStreamOptions, Ci as SandboxTerminalInfo, Cn as ListMessagesOptions, Dr as SandboxEvent, Gi as SessionInfo, H as CreateTaskSessionOptions, Hi as SessionExecutionStatus, Ii as SendSessionMessageOptions, Ji as SessionMessage, Li as SendSessionMessageRequest, Mt as FileWriteResult, Ot as FileTreeOptions, Ri as SentSessionMessage, Si as SandboxTerminalCreateOptions, St as FileReadBatchResult, T as ChunkedUploadResult, Ta as UploadProgress, Ti as SandboxTerminalRequestOptions, Tt as FileRenameResult, V as CreateSessionOptions, Vi as SessionExecutionInfo, Yi as SessionMessageAdmission, da as TaskSessionCommitResult, gi as SandboxRuntimeHealth, jt as FileUsageResult, kt as FileTreeResult, pa as TaskSessionInfo, sr as RenameOptions, ua as TaskSessionChanges, ui as SandboxPortBinding, w as ChunkedUploadOptions, wi as SandboxTerminalManager, xt as FileReadBatchOptions } from "./types-XDnpktUp.js";
1
+ import { A as CommitTaskSessionOptions, Aa as WriteFileOptions, At as FileUsageOptions, Bi as SessionEventStreamOptions, Ci as SandboxTerminalInfo, Cn as ListMessagesOptions, Dr as SandboxEvent, Gi as SessionInfo, H as CreateTaskSessionOptions, Hi as SessionExecutionStatus, Ii as SendSessionMessageOptions, Ji as SessionMessage, Li as SendSessionMessageRequest, Mt as FileWriteResult, Ot as FileTreeOptions, Ri as SentSessionMessage, Si as SandboxTerminalCreateOptions, St as FileReadBatchResult, T as ChunkedUploadResult, Ta as UploadProgress, Ti as SandboxTerminalRequestOptions, Tt as FileRenameResult, V as CreateSessionOptions, Vi as SessionExecutionInfo, Yi as SessionMessageAdmission, da as TaskSessionCommitResult, gi as SandboxRuntimeHealth, jt as FileUsageResult, kt as FileTreeResult, pa as TaskSessionInfo, sr as RenameOptions, ua as TaskSessionChanges, ui as SandboxPortBinding, w as ChunkedUploadOptions, wi as SandboxTerminalManager, xt as FileReadBatchOptions } from "./types-D-NLWnw2.js";
2
2
  import { l as ScopedToken, t as TerminalStream } from "./terminal-stream-B6bUr0hj.js";
3
3
  import { c as InteractiveSessionIdentity, l as InteractiveSessionNotRunningError, r as browserInteractiveControlHolderId } from "./browser-interactive-control-controller-DRCfxOQz.js";
4
4
  import { t as BrowserInteractiveSessionController } from "./interactive-controller-ykaThYp6.js";
5
5
  import { _ as TimeoutError, a as FileWriteConflictError, c as NotFoundError, f as SandboxError, g as StateError, h as ServerError, l as PartialFailureError, m as SandboxFailureDetail, n as CapabilityError, p as SandboxErrorJson, s as NetworkError, t as AuthError, u as QuotaError, v as ValidationError } from "./errors-DS32ViPj.js";
6
- import { a as deriveAgentRunOutcome, i as deriveAgentResultOutcome, n as AgentRunOutcomeTracker, r as createAgentRunOutcomeTracker, t as AgentRunOutcome } from "./agent-run-outcome-COsuMcn_.js";
6
+ import { a as deriveAgentRunOutcome, i as deriveAgentResultOutcome, n as AgentRunOutcomeTracker, r as createAgentRunOutcomeTracker, t as AgentRunOutcome } from "./agent-run-outcome-ChSbW-Oa.js";
7
7
 
8
8
  //#region src/lib/chunked-upload.d.ts
9
9
  /** The transport a caller wires this module to — {@link SandboxInstance.runtimeFetch}
@@ -1,9 +1,9 @@
1
1
  import { t as CliAuthReference } from "./cli-auth-bundle-BMcIiB-I.js";
2
- import { $i as SnapshotDeleteAcknowledgement, A as CommitTaskSessionOptions, Aa as WriteFileOptions, Ai as SandboxTraceOptions, Ba as SandboxEnvRecovery, Bi as SessionEventStreamOptions, C as BranchOptions, Cn as ListMessagesOptions, Cr as SandboxDeleteAcknowledgement, D as CodeExecutionResult, Da as WaitForOptions, Di as SandboxTraceBundle, Dr as SandboxEvent, E as CodeExecutionOptions, Ei as SandboxTerminals, Et as FileSystem, Gi as SessionInfo, H as CreateTaskSessionOptions, Hn as ProcessManager, Ii as SendSessionMessageOptions, In as PreviewLinkManager, Ja as WorkspaceImagePublishResult$1, Ji as SessionMessage, Jn as PromptResult, Ki as SessionInterruptOptions, Kn as PromptInputPart, Li as SendSessionMessageRequest, M as ConversationTurnOptions, Ma as WriteManyOptions, Mi as SearchMatch, Mt as FileWriteResult, N as ConversationTurnResult, Ni as SearchOptions, O as CodeLanguage, Oa as WaitForRolloutOptions, Pn as PermissionsManager, Q as DispatchedSession, Qr as SandboxFleetTraceBundle, Qt as ForkLookupOptions, Ri as SentSessionMessage, Sa as TurnDriveResult, Sn as JsonValue, Sr as SandboxCreateReceipt, Ua as RawEvidenceDirectoryExport, V as CreateSessionOptions, Va as SandboxEnvRecoveryView, Vi as SessionExecutionInfo, Wa as RawEvidenceExportOptions, Wi as SessionForkOptions, Xn as ProvisionResult, Xt as ForkCounts, Ya as InteractionResolutionAcknowledgement, Yi as SessionMessageAdmission, Yn as ProvisionEvent, Z as DispatchPromptOptions, Zi as SessionResultOptions, Zt as ForkIdempotency, _a as TeeAttestationResponse, _i as SandboxShape, _n as IntelligenceReport, _r as SSHCommandDescriptor, an as GitStatus, bi as SandboxStatus, br as SandboxConnection, ci as SandboxInfo, cr as RestoreSnapshotOptions, d as BackendConfig, da as TaskSessionCommitResult, dn as GpuLeaseManager, fr as RolloutOptions, gi as SandboxRuntimeHealth, gn as InstalledTool, gt as EventStreamOptions, ha as TeeAttestationOptions, hi as SandboxRuntimeCapabilities, ia as SnapshotResult, in as GitDiff, it as DriverInfo, j as CompletedTurnResult, ja as WriteManyFile, jn as NetworkManager, ka as WorkspaceOperationLookup, lr as ResumeOptions, mr as RolloutStartResult, na as SnapshotInfo, nn as GitCommit, nt as DriveTurnOptions, oa as StartupDiagnostics, on as GpuLease, ot as DurablePlan, p as BackendManager, pa as TaskSessionInfo, pi as SandboxResourceUsage, pt as EgressManager, qi as SessionListOptions, qn as PromptOptions, ra as SnapshotOptions, st as DurablePlanDecisionResult, tn as GitBranch, ua as TaskSessionChanges, ui as SandboxPortBinding, ur as Rollout, vn as IntelligenceReportBudget, vr as SSHCredentials, vt as ExecOptions, wr as SandboxDeleteOptions, xi as SandboxTerminalAttachOptions, xn as IntelligenceReportWindow, ya as TeePublicKeyResponse, yn as IntelligenceReportCompareTo, yt as ExecResult } from "./types-XDnpktUp.js";
2
+ import { $i as SnapshotDeleteAcknowledgement, A as CommitTaskSessionOptions, Aa as WriteFileOptions, Ai as SandboxTraceOptions, Ba as SandboxEnvRecovery, Bi as SessionEventStreamOptions, C as BranchOptions, Cn as ListMessagesOptions, Cr as SandboxDeleteAcknowledgement, D as CodeExecutionResult, Da as WaitForOptions, Di as SandboxTraceBundle, Dr as SandboxEvent, E as CodeExecutionOptions, Ei as SandboxTerminals, Et as FileSystem, Gi as SessionInfo, H as CreateTaskSessionOptions, Hn as ProcessManager, Ii as SendSessionMessageOptions, In as PreviewLinkManager, Ja as WorkspaceImagePublishResult$1, Ji as SessionMessage, Jn as PromptResult, Ki as SessionInterruptOptions, Kn as PromptInputPart, Li as SendSessionMessageRequest, M as ConversationTurnOptions, Ma as WriteManyOptions, Mi as SearchMatch, Mt as FileWriteResult, N as ConversationTurnResult, Ni as SearchOptions, O as CodeLanguage, Oa as WaitForRolloutOptions, Pn as PermissionsManager, Q as DispatchedSession, Qr as SandboxFleetTraceBundle, Qt as ForkLookupOptions, Ri as SentSessionMessage, Sa as TurnDriveResult, Sn as JsonValue, Sr as SandboxCreateReceipt, Ua as RawEvidenceDirectoryExport, V as CreateSessionOptions, Va as SandboxEnvRecoveryView, Vi as SessionExecutionInfo, Wa as RawEvidenceExportOptions, Wi as SessionForkOptions, Xn as ProvisionResult, Xt as ForkCounts, Ya as InteractionResolutionAcknowledgement, Yi as SessionMessageAdmission, Yn as ProvisionEvent, Z as DispatchPromptOptions, Zi as SessionResultOptions, Zt as ForkIdempotency, _a as TeeAttestationResponse, _i as SandboxShape, _n as IntelligenceReport, _r as SSHCommandDescriptor, an as GitStatus, bi as SandboxStatus, br as SandboxConnection, ci as SandboxInfo, cr as RestoreSnapshotOptions, d as BackendConfig, da as TaskSessionCommitResult, dn as GpuLeaseManager, fr as RolloutOptions, gi as SandboxRuntimeHealth, gn as InstalledTool, gt as EventStreamOptions, ha as TeeAttestationOptions, hi as SandboxRuntimeCapabilities, ia as SnapshotResult, in as GitDiff, it as DriverInfo, j as CompletedTurnResult, ja as WriteManyFile, jn as NetworkManager, ka as WorkspaceOperationLookup, lr as ResumeOptions, mr as RolloutStartResult, na as SnapshotInfo, nn as GitCommit, nt as DriveTurnOptions, oa as StartupDiagnostics, on as GpuLease, ot as DurablePlan, p as BackendManager, pa as TaskSessionInfo, pi as SandboxResourceUsage, pt as EgressManager, qi as SessionListOptions, qn as PromptOptions, ra as SnapshotOptions, st as DurablePlanDecisionResult, tn as GitBranch, ua as TaskSessionChanges, ui as SandboxPortBinding, ur as Rollout, vn as IntelligenceReportBudget, vr as SSHCredentials, vt as ExecOptions, wr as SandboxDeleteOptions, xi as SandboxTerminalAttachOptions, xn as IntelligenceReportWindow, ya as TeePublicKeyResponse, yn as IntelligenceReportCompareTo, yt as ExecResult } from "./types-D-NLWnw2.js";
3
3
  import { a as TerminalStreamReconnectAuthority, c as MintScopedTokenOptions, h as TerminalReadyInfo, l as ScopedToken, r as TerminalStreamHandlers, t as TerminalStream } from "./terminal-stream-B6bUr0hj.js";
4
4
  import { f as InteractiveAttachOptions, g as InteractiveSessionStatus, h as InteractiveRequestOptions, m as InteractiveControlClaimOptions, p as InteractiveControlClaimAcknowledgement } from "./browser-interactive-control-controller-DRCfxOQz.js";
5
5
  import { r as InteractiveAttachRequest } from "./interactive-controller-ykaThYp6.js";
6
- import { R as SandboxLines } from "./lines-ee3_S7Z0.js";
6
+ import { R as SandboxLines } from "./lines-BUf7A9aS.js";
7
7
  import { AgentInteractiveSessionAttach, AgentInteractiveSessionControlClaim, AgentInteractiveSessionControlClaimAcknowledgement, AgentInteractiveSessionControlClaimRequest, AgentInteractiveSessionPromptAcknowledgement, AgentInteractiveSessionPromptCommand, AgentInteractiveSessionRef, AgentInteractiveSessionStart, AgentInteractiveSessionStopAcknowledgement, AgentInteractiveSessionStopCommand, AgentInteractiveTerminalSession, AgentInteractiveTerminalSession as AgentInteractiveTerminalSession$1, AgentProfile, AgentRunCancellationAcknowledgement, AgentRunCancellationRequest, InteractionAcknowledgement, InteractionData, InteractionRequest, InteractionResponseCommand, TerminalOutputEvent, TerminalReplayWindow, agentInteractiveSessionPromptRequestDigest } from "@tangle-network/agent-interface";
8
8
  import { z } from "zod";
9
9
 
@@ -3,7 +3,7 @@ import { C as SANDBOX_PROXY_REQUEST_MAX_BYTES, D as parseSSEStream, E as encodeT
3
3
  import { _ as parseErrorResponse, c as NotFoundError, f as SandboxError, g as ValidationError, h as TimeoutError, m as StateError, n as CapabilityError, p as ServerError, r as EdgeNotReadyError, s as NetworkError, t as AuthError, u as QuotaError, v as parseResponseError, y as readResponseJson } from "./errors-D1JIX7Jm.js";
4
4
  import { d as awaitWithAbort, f as combineAbortSignals, g as interactiveSessionStatusResponseSchema, h as interactiveSessionControlValidationResponseSchema, l as createInteractiveControlHolderId, m as interactiveSessionControlReleaseResponseSchema, p as interactiveSessionControlClaimResponseSchema } from "./browser-interactive-control-controller-BJf0P_J4.js";
5
5
  import { SandboxLines } from "./lines.js";
6
- import { r as cliAuthReferenceSchema } from "./cli-auth-bundle-CJSdRlx0.js";
6
+ import { r as cliAuthReferenceSchema } from "./cli-auth-bundle-CVOv-Cmb.js";
7
7
  import { AgentExactRunControlRefSchema, AgentInteractiveSessionAttachSchema, AgentInteractiveSessionControlClaimAcknowledgementSchema, AgentInteractiveSessionControlClaimRequestSchema, AgentInteractiveSessionControlClaimSchema, AgentInteractiveSessionPromptAcknowledgementSchema, AgentInteractiveSessionPromptCommandSchema, AgentInteractiveSessionRefSchema, AgentInteractiveSessionStartSchema, AgentInteractiveSessionStopAcknowledgementSchema, AgentInteractiveSessionStopCommandSchema, AgentRunCancellationAcknowledgementSchema, AgentRunCancellationRequestSchema, InteractionAcknowledgementSchema, InteractionBindingSchema, InteractionRequestSchema, InteractionResponseCommandSchema, InteractionResponseSchema, TerminalInputSchema, TerminalOutputEventSchema, TerminalReplayWindowSchema, TerminalResizeSchema, TerminalSessionRefSchema, agentInteractiveSessionControlClaimAcknowledgementMatchesRequest, agentInteractiveSessionControlClaimIsNewer, agentInteractiveSessionControlClaimMatchesRef, agentInteractiveSessionPromptAcknowledgementMatchesCommand, agentInteractiveSessionPromptRequestDigest, agentInteractiveSessionRefMatchesStart, agentInteractiveSessionStatusMatchesRef, agentInteractiveSessionStopAcknowledgementMatchesCommand, agentProfileSchema, agentRunCancellationAcknowledgementMatchesRequest, canonicalCandidateDigest, canonicalCandidateJson, exactAgentInteractiveSessionStart, sha256DigestSchema, terminalSessionUsable } from "@tangle-network/agent-interface";
8
8
  import { z } from "zod";
9
9
  import { AgentInteractiveSessionControlClaimSchema as AgentInteractiveSessionControlClaimSchema$1, AgentInteractiveSessionPromptAcknowledgementSchema as AgentInteractiveSessionPromptAcknowledgementSchema$1, AgentInteractiveSessionRefSchema as AgentInteractiveSessionRefSchema$1, AgentInteractiveSessionStatusSchema, AgentInteractiveSessionStopAcknowledgementSchema as AgentInteractiveSessionStopAcknowledgementSchema$1 } from "@tangle-network/agent-interface/environment-interactive-control";
@@ -7953,12 +7953,14 @@ var SandboxInstance = class SandboxInstance {
7953
7953
  }
7954
7954
  /** @internal — invoked before the sandbox is deleted. */
7955
7955
  async _sessionExportRawEvidence(id, destination, options) {
7956
- const { exportRawEvidenceDirectory } = await import("./raw-evidence-archive-FxWK99KW.js");
7956
+ const { exportRawEvidenceDirectory } = await import("./raw-evidence-archive-Bi-Lt83d.js");
7957
7957
  await this.ensureRunning();
7958
7958
  await this.refresh();
7959
7959
  return exportRawEvidenceDirectory((signal) => this.runtimeFetch(`/agents/sessions/${encodeURIComponent(id)}/raw-evidence/archive?${new URLSearchParams({
7960
7960
  maxBytes: String(options.maxBytes),
7961
- maxFiles: String(options.maxFiles)
7961
+ maxFiles: String(options.maxFiles),
7962
+ ...options.copy ? { copy: options.copy } : {},
7963
+ ...options.executionId ? { executionId: options.executionId } : {}
7962
7964
  })}`, {
7963
7965
  method: "GET",
7964
7966
  signal
@@ -1,2 +1,2 @@
1
- import { C as JsonResponseParamTypes, E as SandboxIdParamTypes, S as ITangleJobsAbi, T as SandboxCreateResponseParamTypes, _ as JOB_SANDBOX_DELETE, a as fetchQuote, b as TangleSandboxClientConfig, c as parseQuoteResponse, d as OperatorSession, f as OperatorSessionError, g as JOB_SANDBOX_CREATE, h as TangleSandboxClient, i as SignedQuote, l as validateQuote, m as SignMessage, n as QuoteDomain, o as inputsHashOf, p as OperatorSessionToken, r as QuoteError, s as jobQuoteDigest, t as JobQuoteDetails, u as OperatorChallenge, v as TANGLE_CHAIN_ID, w as SandboxCreateParamTypes, x as AgentSandboxBlueprintAbi, y as TANGLE_JOBS_CONTRACT } from "../index-cuDoZd1_.js";
1
+ import { C as JsonResponseParamTypes, E as SandboxIdParamTypes, S as ITangleJobsAbi, T as SandboxCreateResponseParamTypes, _ as JOB_SANDBOX_DELETE, a as fetchQuote, b as TangleSandboxClientConfig, c as parseQuoteResponse, d as OperatorSession, f as OperatorSessionError, g as JOB_SANDBOX_CREATE, h as TangleSandboxClient, i as SignedQuote, l as validateQuote, m as SignMessage, n as QuoteDomain, o as inputsHashOf, p as OperatorSessionToken, r as QuoteError, s as jobQuoteDigest, t as JobQuoteDetails, u as OperatorChallenge, v as TANGLE_CHAIN_ID, w as SandboxCreateParamTypes, x as AgentSandboxBlueprintAbi, y as TANGLE_JOBS_CONTRACT } from "../index-bF2GjdTK.js";
2
2
  export { AgentSandboxBlueprintAbi, ITangleJobsAbi, JOB_SANDBOX_CREATE, JOB_SANDBOX_DELETE, JobQuoteDetails, JsonResponseParamTypes, OperatorChallenge, OperatorSession, OperatorSessionError, OperatorSessionToken, QuoteDomain, QuoteError, SandboxCreateParamTypes, SandboxCreateResponseParamTypes, SandboxIdParamTypes, SignMessage, SignedQuote, TANGLE_CHAIN_ID, TANGLE_JOBS_CONTRACT, TangleSandboxClient, TangleSandboxClientConfig, fetchQuote, inputsHashOf, jobQuoteDigest, parseQuoteResponse, validateQuote };
@@ -1,2 +1,2 @@
1
- import { _ as SandboxCreateParamTypes, a as parseQuoteResponse, c as OperatorSession, d as JOB_SANDBOX_DELETE, f as TANGLE_CHAIN_ID, g as JsonResponseParamTypes, h as ITangleJobsAbi, i as jobQuoteDigest, l as OperatorSessionError, m as AgentSandboxBlueprintAbi, n as fetchQuote, o as validateQuote, p as TANGLE_JOBS_CONTRACT, r as inputsHashOf, s as TangleSandboxClient, t as QuoteError, u as JOB_SANDBOX_CREATE, v as SandboxCreateResponseParamTypes, y as SandboxIdParamTypes } from "../tangle-DCYAvgPK.js";
1
+ import { _ as SandboxCreateParamTypes, a as parseQuoteResponse, c as OperatorSession, d as JOB_SANDBOX_DELETE, f as TANGLE_CHAIN_ID, g as JsonResponseParamTypes, h as ITangleJobsAbi, i as jobQuoteDigest, l as OperatorSessionError, m as AgentSandboxBlueprintAbi, n as fetchQuote, o as validateQuote, p as TANGLE_JOBS_CONTRACT, r as inputsHashOf, s as TangleSandboxClient, t as QuoteError, u as JOB_SANDBOX_CREATE, v as SandboxCreateResponseParamTypes, y as SandboxIdParamTypes } from "../tangle-CXWszMFE.js";
2
2
  export { AgentSandboxBlueprintAbi, ITangleJobsAbi, JOB_SANDBOX_CREATE, JOB_SANDBOX_DELETE, JsonResponseParamTypes, OperatorSession, OperatorSessionError, QuoteError, SandboxCreateParamTypes, SandboxCreateResponseParamTypes, SandboxIdParamTypes, TANGLE_CHAIN_ID, TANGLE_JOBS_CONTRACT, TangleSandboxClient, fetchQuote, inputsHashOf, jobQuoteDigest, parseQuoteResponse, validateQuote };
@@ -1,5 +1,5 @@
1
1
  import { y as readResponseJson } from "./errors-D1JIX7Jm.js";
2
- import { n as createSandboxInstanceFromResponse } from "./sandbox-Duvz9RDN.js";
2
+ import { n as createSandboxInstanceFromResponse } from "./sandbox-Da0KPydY.js";
3
3
  import { _ as rotlBH, a as anumber, b as rotlSL, d as createXOFer, g as u32, h as toBytes$1, l as createHasher, m as swap32IfBE, n as abytes, o as aoutput, r as aexists, s as clean, t as Hash, v as rotlBL, x as split, y as rotlSH } from "./utils-ChcSLv53.js";
4
4
  //#region src/tangle/abi.ts
5
5
  /**
@@ -1306,6 +1306,53 @@ interface RawEvidenceArchiveManifest {
1306
1306
  coverageComplete: boolean;
1307
1307
  missingReasons: string[];
1308
1308
  }
1309
+ /** One store file of a native session copy (harness session contract). */
1310
+ interface NativeSessionCopyFile extends RawEvidencePayloadFile {
1311
+ /** The store root the file belongs to, relative to the runtime HOME, e.g. `.pi/agent/sessions`. */
1312
+ store: string;
1313
+ /** The file's own path relative to the runtime HOME, e.g. `.pi/agent/sessions/<ts>_<id>.jsonl`. */
1314
+ storePath: string;
1315
+ /** A `@tangle-network/harness-sessions` SessionFormatId. */
1316
+ format: string;
1317
+ /** byte-prefix: append-only JSONL cut at its last complete line; atomic-file: a whole file read twice the same; sqlite-backup: VACUUM INTO. */
1318
+ method: "byte-prefix" | "atomic-file" | "sqlite-backup";
1319
+ /** The source was larger than the per-file bound; this is its prefix. */
1320
+ truncated: boolean;
1321
+ /** Source size when copied. */
1322
+ sourceBytes: number;
1323
+ }
1324
+ /**
1325
+ * One execution attempt's native session. `snapshot` was taken while the
1326
+ * harness ran; `settled` after its process exited, whatever the outcome.
1327
+ * Consumers find sessions here, never by matching paths in `files`.
1328
+ */
1329
+ interface NativeSessionCopy {
1330
+ harness: string;
1331
+ /** Format of the session files found (the first, when a harness has several stores). */
1332
+ format: string | null;
1333
+ executionId: string;
1334
+ attempt: number;
1335
+ nativeSessionId: string;
1336
+ copy: "snapshot" | "settled";
1337
+ capturedAt: string;
1338
+ /** Null fields are not observed at the copy point; the archive's process records carry them. */
1339
+ process: {
1340
+ pid: number | null;
1341
+ exitedAt: string | null;
1342
+ exitCode: number | null;
1343
+ signal: string | null;
1344
+ outcome: "succeeded" | "failed" | "cancelled" | "unknown";
1345
+ };
1346
+ files: NativeSessionCopyFile[];
1347
+ complete: boolean;
1348
+ /** native_session_id_unobserved | native_session_files_missing | over_bound:<path> | ... */
1349
+ missingReasons: string[];
1350
+ }
1351
+ /** v1 plus the per-attempt native session copies. Served when the caller asks for a copy. */
1352
+ interface RawEvidenceArchiveManifestV2 extends Omit<RawEvidenceArchiveManifest, "schema"> {
1353
+ schema: "tangle.raw-evidence-archive.v2";
1354
+ nativeSessions: NativeSessionCopy[];
1355
+ }
1309
1356
  interface RawEvidenceUnavailable {
1310
1357
  status: "unavailable";
1311
1358
  sessionId: string;
@@ -1315,6 +1362,14 @@ interface RawEvidenceUnavailable {
1315
1362
  interface RawEvidenceExportOptions {
1316
1363
  /** Bound all uncompressed archive member bytes, including metadata and records. */
1317
1364
  maxBytes: number;
1365
+ /**
1366
+ * Request native session copies (manifest v2). `latest` returns the
1367
+ * settled copy when one exists, otherwise a fresh snapshot; `settled`
1368
+ * fails with 409 not_settled while the harness still runs.
1369
+ */
1370
+ copy?: "latest" | "settled";
1371
+ /** Restrict native session copies to one sidecar execution. */
1372
+ executionId?: string;
1318
1373
  /** Bound all archive file entries, including empty files. */
1319
1374
  maxFiles: number;
1320
1375
  /** Compressed transport bound; defaults to maxBytes plus bounded tar overhead. */
@@ -1330,7 +1385,7 @@ type RawEvidenceDirectoryExport = RawEvidenceUnavailable | {
1330
1385
  sizeBytes: number;
1331
1386
  sha256: string;
1332
1387
  }; /** Bounded metadata only. No inline payload or aggregate frame contents. */
1333
- manifest: RawEvidenceArchiveManifest;
1388
+ manifest: RawEvidenceArchiveManifest | RawEvidenceArchiveManifestV2;
1334
1389
  coverageComplete: boolean;
1335
1390
  missingReasons: string[];
1336
1391
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tangle-network/sandbox",
3
- "version": "0.60.14-develop.20261005085333.1f5511c",
3
+ "version": "0.60.14-develop.20261005092806.490fe89",
4
4
  "description": "Client SDK for the Tangle Sandbox platform - build AI agent applications with dev containers",
5
5
  "type": "module",
6
6
  "sideEffects": [
@@ -151,11 +151,11 @@
151
151
  "ws": "^8.20.0",
152
152
  "yjs": "13.6.30",
153
153
  "@products/sandbox-test-utils": "0.0.0",
154
- "@tangle-network/agent-profile-materialize": "0.20.8",
155
154
  "@tangle-network/cli-agent-registry": "0.4.21",
156
- "@tangle-network/runtime-contracts": "0.12.0",
157
155
  "@repo/shared": "0.0.0",
156
+ "@tangle-network/runtime-contracts": "0.12.0",
158
157
  "@tangle-network/sdk": "3.3.39",
158
+ "@tangle-network/agent-profile-materialize": "0.20.8",
159
159
  "@tangle-network/sse-core": "0.0.0"
160
160
  },
161
161
  "scripts": {