@xenosystem/agent-sdk 0.10.35 → 0.10.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/README.md +1 -1
  2. package/dist/agents/index.cjs +9 -9
  3. package/dist/agents/index.d.cts +4 -1
  4. package/dist/agents/index.d.ts +4 -1
  5. package/dist/agents/index.js +16 -16
  6. package/dist/agents/metafile-cjs.json +1 -1
  7. package/dist/agents/metafile-esm.json +1 -1
  8. package/dist/artifacts/index.cjs +1 -1
  9. package/dist/artifacts/index.js +1 -1
  10. package/dist/artifacts/metafile-cjs.json +1 -1
  11. package/dist/artifacts/metafile-esm.json +1 -1
  12. package/dist/automation/index.cjs +35 -24
  13. package/dist/automation/index.d.cts +194 -12
  14. package/dist/automation/index.d.ts +194 -12
  15. package/dist/automation/index.js +35 -24
  16. package/dist/automation/metafile-cjs.json +1 -1
  17. package/dist/automation/metafile-esm.json +1 -1
  18. package/dist/control-plane/index.cjs +8 -8
  19. package/dist/control-plane/index.js +8 -8
  20. package/dist/control-plane/metafile-cjs.json +1 -1
  21. package/dist/control-plane/metafile-esm.json +1 -1
  22. package/dist/coordination/index.cjs +2 -2
  23. package/dist/coordination/index.js +2 -2
  24. package/dist/coordination/metafile-cjs.json +1 -1
  25. package/dist/coordination/metafile-esm.json +1 -1
  26. package/dist/electron/index.cjs +243 -223
  27. package/dist/electron/index.d.cts +198 -1
  28. package/dist/electron/index.d.ts +198 -1
  29. package/dist/electron/index.js +243 -223
  30. package/dist/electron/metafile-cjs.json +1 -1
  31. package/dist/electron/metafile-esm.json +1 -1
  32. package/dist/hosted/metafile-cjs.json +1 -1
  33. package/dist/hosted/metafile-esm.json +1 -1
  34. package/dist/index.cjs +406 -395
  35. package/dist/index.d.cts +325 -172
  36. package/dist/index.d.ts +325 -172
  37. package/dist/index.js +406 -395
  38. package/dist/intelligence/index.cjs +4 -4
  39. package/dist/intelligence/index.js +4 -4
  40. package/dist/intelligence/metafile-cjs.json +1 -1
  41. package/dist/intelligence/metafile-esm.json +1 -1
  42. package/dist/mcp/index.cjs +20 -20
  43. package/dist/mcp/index.d.cts +146 -0
  44. package/dist/mcp/index.d.ts +146 -0
  45. package/dist/mcp/index.js +17 -17
  46. package/dist/mcp/metafile-cjs.json +1 -1
  47. package/dist/mcp/metafile-esm.json +1 -1
  48. package/dist/metafile-cjs.json +1 -1
  49. package/dist/metafile-esm.json +1 -1
  50. package/dist/providers/index.cjs +10 -10
  51. package/dist/providers/index.d.cts +49 -5
  52. package/dist/providers/index.d.ts +49 -5
  53. package/dist/providers/index.js +10 -10
  54. package/dist/providers/metafile-cjs.json +1 -1
  55. package/dist/providers/metafile-esm.json +1 -1
  56. package/dist/recipes/metafile-cjs.json +1 -1
  57. package/dist/recipes/metafile-esm.json +1 -1
  58. package/dist/research/metafile-cjs.json +1 -1
  59. package/dist/research/metafile-esm.json +1 -1
  60. package/dist/session/index.cjs +24 -24
  61. package/dist/session/index.js +16 -16
  62. package/dist/session/metafile-cjs.json +1 -1
  63. package/dist/session/metafile-esm.json +1 -1
  64. package/dist/sharing/index.cjs +1 -1
  65. package/dist/sharing/index.js +3 -3
  66. package/dist/sharing/metafile-cjs.json +1 -1
  67. package/dist/sharing/metafile-esm.json +1 -1
  68. package/dist/skills/index.d.cts +6 -0
  69. package/dist/skills/index.d.ts +6 -0
  70. package/dist/utils/index.cjs +24 -24
  71. package/dist/utils/index.d.cts +14 -2
  72. package/dist/utils/index.d.ts +14 -2
  73. package/dist/utils/index.js +24 -24
  74. package/dist/utils/metafile-cjs.json +1 -1
  75. package/dist/utils/metafile-esm.json +1 -1
  76. package/ownership/evidence/PROPRIETARY-PTY-1/implementation-record.md +1 -1
  77. package/ownership/ownership-policy.json +14 -3
  78. package/package.json +1 -1
@@ -547,6 +547,12 @@ interface ToolDefinition {
547
547
  additionalProperties?: boolean | Record<string, unknown>;
548
548
  [keyword: string]: unknown;
549
549
  };
550
+ grammar?: ToolInputGrammar;
551
+ }
552
+ interface ToolInputGrammar {
553
+ syntax: "gbnf";
554
+ definition: string;
555
+ inputField: string;
550
556
  }
551
557
  interface ImageUrlBlock {
552
558
  type: "image_url";
@@ -705,6 +711,14 @@ interface TextBlock {
705
711
  type: "text";
706
712
  text: string;
707
713
  }
714
+ type MemoryLevel = "global" | "project" | "role" | "session";
715
+ interface MemoryBudget {
716
+ global: number;
717
+ project: number;
718
+ role: number;
719
+ session: number;
720
+ total: number;
721
+ }
708
722
  interface AgentCapabilities {
709
723
  terminal: boolean;
710
724
  fileRead: boolean;
@@ -1023,6 +1037,7 @@ interface XenoAutomationAdapterExecutionResult {
1023
1037
  };
1024
1038
  }
1025
1039
  interface XenoAutomationAdapter {
1040
+ assertCurrent?(request: XenoAutomationRequest): Promise<void> | void;
1026
1041
  manifest(): Promise<XenoAutomationAdapterManifest> | XenoAutomationAdapterManifest;
1027
1042
  preflight(request: XenoAutomationRequest, signal: AbortSignal): Promise<XenoAutomationPreflight>;
1028
1043
  execute(request: XenoAutomationRequest, preflight: XenoAutomationPreflight, grant: XenoAutomationExecutionGrant, signal: AbortSignal): Promise<XenoAutomationAdapterExecutionResult>;
@@ -1083,6 +1098,7 @@ declare class XenoAutomationError extends Error {
1083
1098
  }
1084
1099
  declare function assertValidXenoAutomationRequest(request: XenoAutomationRequest): void;
1085
1100
  declare function assertValidXenoAutomationAdapterManifest(manifest: XenoAutomationAdapterManifest): void;
1101
+ declare function assertXenoAutomationAdapterRequirements(request: XenoAutomationRequest, manifest: XenoAutomationAdapterManifest): void;
1086
1102
  declare function assertXenoAutomationAuthority(request: XenoAutomationRequest, manifest: XenoAutomationAdapterManifest, observedTarget: XenoAutomationTarget): void;
1087
1103
  declare function buildXenoAutomationCapabilityUse(request: XenoAutomationRequest, target: XenoAutomationTarget): XenoCapabilityUse;
1088
1104
  declare function resolveXenoAutomationEvidencePolicy(request: XenoAutomationRequest): XenoAutomationEvidencePolicy;
@@ -1188,6 +1204,9 @@ interface XenoGovernedAutomationExecutorOptions {
1188
1204
  durable?: XenoDurableAutomationOptions;
1189
1205
  artifactRepository?: XenoArtifactRepository;
1190
1206
  now?: () => string;
1207
+ assertCurrent?: (request: XenoAutomationRequest) => void | Promise<void>;
1208
+ onPreflight?: (request: XenoAutomationRequest, preflight: XenoAutomationPreflight, signal: AbortSignal) => Promise<void>;
1209
+ onGrant?: (request: XenoAutomationRequest, preflight: XenoAutomationPreflight, grant: XenoAutomationExecutionGrant, signal: AbortSignal) => Promise<void>;
1191
1210
  }
1192
1211
  declare class XenoGovernedAutomationExecutor {
1193
1212
  private readonly adapter;
@@ -1195,9 +1214,12 @@ declare class XenoGovernedAutomationExecutor {
1195
1214
  private readonly durable;
1196
1215
  private readonly artifactRepository?;
1197
1216
  private readonly now;
1217
+ private readonly assertCurrent;
1198
1218
  private readonly executions;
1199
1219
  private readonly active;
1200
1220
  constructor(options: XenoGovernedAutomationExecutorOptions);
1221
+ private readonly onPreflight;
1222
+ private readonly onGrant;
1201
1223
  execute(request: XenoAutomationRequest, signal?: AbortSignal): Promise<XenoAutomationExecutionResult>;
1202
1224
  stop(operationId: string, reason?: string): Promise<boolean>;
1203
1225
  private executeFresh;
@@ -1211,6 +1233,10 @@ interface XenoLoopbackAutomationAdapterOptions {
1211
1233
  timeoutMs?: number;
1212
1234
  maxResponseBytes?: number;
1213
1235
  fetch?: typeof globalThis.fetch;
1236
+ ownedView?: {
1237
+ ownerId: string;
1238
+ sessionId: string;
1239
+ };
1214
1240
  }
1215
1241
  declare class XenoLoopbackAutomationAdapter implements XenoAutomationAdapter {
1216
1242
  private readonly endpoint;
@@ -1218,6 +1244,7 @@ declare class XenoLoopbackAutomationAdapter implements XenoAutomationAdapter {
1218
1244
  private readonly timeoutMs;
1219
1245
  private readonly maxResponseBytes;
1220
1246
  private readonly fetchImpl;
1247
+ private readonly ownedView;
1221
1248
  constructor(options: XenoLoopbackAutomationAdapterOptions);
1222
1249
  manifest(): Promise<XenoAutomationAdapterManifest>;
1223
1250
  preflight(request: XenoAutomationRequest, signal: AbortSignal): Promise<XenoAutomationPreflight>;
@@ -1255,20 +1282,141 @@ interface XenoBrowserControlPlaneAdapterOptions {
1255
1282
  driver: "browser" | "extension";
1256
1283
  fetch?: typeof globalThis.fetch;
1257
1284
  timeoutMs?: number;
1285
+ ownedView?: {
1286
+ ownerId: string;
1287
+ sessionId: string;
1288
+ };
1258
1289
  }
1259
- declare class XenoBrowserControlPlaneAdapter implements XenoAutomationAdapter {
1260
- private readonly options;
1261
- private readonly base;
1262
- private readonly fetchImpl;
1263
- private readonly timeoutMs;
1290
+ declare class XenoBrowserControlPlaneAdapter extends XenoLoopbackAutomationAdapter {
1291
+ private readonly driver;
1264
1292
  constructor(options: XenoBrowserControlPlaneAdapterOptions);
1265
1293
  manifest(): Promise<XenoAutomationAdapterManifest>;
1266
- preflight(request: XenoAutomationRequest, signal: AbortSignal): Promise<XenoAutomationPreflight>;
1267
- execute(request: XenoAutomationRequest, preflight: XenoAutomationPreflight, _grant: XenoAutomationExecutionGrant, signal: AbortSignal): Promise<XenoAutomationAdapterExecutionResult>;
1268
- stop(_operationId: string, _reason: string): Promise<void>;
1269
- private resultEvidence;
1270
- private snapshotEvidence;
1271
- private call;
1294
+ }
1295
+ interface MemoryFile {
1296
+ level: MemoryLevel;
1297
+ path: string;
1298
+ content: string;
1299
+ tokenCount: number;
1300
+ lastModified?: Date;
1301
+ }
1302
+ interface ResolvedMemory {
1303
+ files: MemoryFile[];
1304
+ byLevel: Record<MemoryLevel, string>;
1305
+ totalTokens: number;
1306
+ truncated: boolean;
1307
+ }
1308
+ interface ProjectSessionContextEntry {
1309
+ sessionId: string;
1310
+ model: string;
1311
+ lastActivity: string;
1312
+ messageCount: number;
1313
+ excerpt: string;
1314
+ }
1315
+ interface ProjectSessionContext {
1316
+ entries: ProjectSessionContextEntry[];
1317
+ totalTokens: number;
1318
+ truncated: boolean;
1319
+ content: string;
1320
+ }
1321
+ interface MemoryManagerOptions {
1322
+ cwd: string;
1323
+ globalDir?: string;
1324
+ role?: string;
1325
+ sessionDir?: string;
1326
+ scope?: MemoryAccessScope;
1327
+ budgets?: Partial<MemoryBudget>;
1328
+ projectSessionContext?: {
1329
+ limit?: number;
1330
+ maxTokens?: number;
1331
+ maxCharsPerSession?: number;
1332
+ };
1333
+ }
1334
+ type MemoryAccessScope = "none" | "session" | "project" | "user";
1335
+ declare class MemoryManager {
1336
+ private cwd;
1337
+ private globalDir;
1338
+ private role?;
1339
+ private sessionDir?;
1340
+ private scope;
1341
+ private budgets;
1342
+ private projectSessionContextDefaults;
1343
+ constructor(options: MemoryManagerOptions);
1344
+ get accessScope(): MemoryAccessScope;
1345
+ canAccessLevel(level: MemoryLevel): boolean;
1346
+ private assertLevelAccess;
1347
+ getProjectSessionContextDefaults(): {
1348
+ limit: number;
1349
+ maxTokens: number;
1350
+ maxCharsPerSession: number;
1351
+ };
1352
+ getPath(level: MemoryLevel): string;
1353
+ loadForPrompt(): Promise<ResolvedMemory>;
1354
+ loadProjectSessionContext(options?: {
1355
+ excludeSessionId?: string;
1356
+ limit?: number;
1357
+ maxTokens?: number;
1358
+ maxCharsPerSession?: number;
1359
+ }): Promise<ProjectSessionContext>;
1360
+ private filterProjectSessions;
1361
+ private normalizePath;
1362
+ private extractRecentTranscriptExcerpt;
1363
+ private formatProjectSessionEntry;
1364
+ add(level: MemoryLevel, content: string, source: "user" | "auto"): Promise<void>;
1365
+ set(level: MemoryLevel, content: string): Promise<void>;
1366
+ formatForPrompt(memory: ResolvedMemory): string;
1367
+ private truncateContent;
1368
+ }
1369
+ interface AskUserRequest {
1370
+ question: string;
1371
+ options?: string[];
1372
+ context?: string;
1373
+ signal?: AbortSignal;
1374
+ }
1375
+ interface AskUserResponse {
1376
+ answer: string;
1377
+ selectedOption?: string;
1378
+ }
1379
+ interface DispatchAgentRequest {
1380
+ agent?: string;
1381
+ prompt: string;
1382
+ timeoutMs?: number;
1383
+ signal?: AbortSignal;
1384
+ dispatchId?: string;
1385
+ }
1386
+ interface DispatchAgentTermination {
1387
+ status: "completed" | "incomplete" | "suspended" | "interrupted" | "error";
1388
+ reason: string;
1389
+ message?: string;
1390
+ }
1391
+ interface DispatchAgentResponse {
1392
+ output: string;
1393
+ termination?: DispatchAgentTermination;
1394
+ tokenUsage?: {
1395
+ input: number;
1396
+ output: number;
1397
+ total: number;
1398
+ };
1399
+ }
1400
+ interface FileObservation {
1401
+ path: string;
1402
+ mtimeMs: number;
1403
+ size: number;
1404
+ source: "read" | "write" | "edit" | "notebook" | "shell";
1405
+ requiresRefresh?: boolean;
1406
+ reason?: string;
1407
+ }
1408
+ interface ToolRuntimeContext {
1409
+ getCwd(): string;
1410
+ setCwd(nextCwd: string): void;
1411
+ getOwnerSessionId(): string | undefined;
1412
+ getMemoryManager(): MemoryManager | undefined;
1413
+ setMemoryManager(memoryManager: MemoryManager | undefined): void;
1414
+ noteFileObservation(filePath: string, observation: Omit<FileObservation, "path">): void;
1415
+ getFileObservation(filePath: string): FileObservation | undefined;
1416
+ invalidateFileObservation(filePath: string, reason: string): void;
1417
+ listFileObservations(): FileObservation[];
1418
+ askUser?(request: AskUserRequest): Promise<AskUserResponse>;
1419
+ dispatchAgent?(request: DispatchAgentRequest): Promise<DispatchAgentResponse>;
1272
1420
  }
1273
1421
  interface ToolRegistryOptions {
1274
1422
  validateInputs?: boolean;
@@ -1282,10 +1430,14 @@ declare class ToolRegistry {
1282
1430
  private validateInputs;
1283
1431
  private readonly toolSchemaMode;
1284
1432
  private readonly activatedDefinitions;
1433
+ private memoryRuntime?;
1434
+ private memoryBindingScope?;
1285
1435
  constructor(options?: ToolRegistryOptions);
1286
1436
  setValidateInputs(enabled: boolean): this;
1287
1437
  get inputValidationEnabled(): boolean;
1288
1438
  get schemaLoadingMode(): "all" | "demand";
1439
+ bindMemoryManager(manager: MemoryManager | undefined): void;
1440
+ attachMemoryRuntime(runtime: ToolRuntimeContext, scope?: MemoryManager["accessScope"]): void;
1289
1441
  register(tool: RegisteredTool): void;
1290
1442
  registerAlias(tool: RegisteredTool): void;
1291
1443
  registerAll(tools: Iterable<RegisteredTool>): void;
@@ -1353,6 +1505,11 @@ interface CliAutomationAuditLoggerPort {
1353
1505
  metadata: Record<string, unknown>;
1354
1506
  }): Promise<unknown>;
1355
1507
  }
1508
+ type XenoComputerRequestAuthorizer = (method: string, url: string) => Promise<{
1509
+ token: string;
1510
+ tokenType: "Bearer" | "DPoP";
1511
+ headers?: Record<string, string>;
1512
+ } | null>;
1356
1513
  interface CliAutomationEnvironment {
1357
1514
  browser?: {
1358
1515
  driver: "browser" | "extension";
@@ -1366,10 +1523,15 @@ interface CliAutomationEnvironment {
1366
1523
  uploads: "deny" | "prompt" | "allow";
1367
1524
  downloads: "deny" | "prompt" | "allow";
1368
1525
  recording: "disabled" | "bounded";
1526
+ ownedView?: {
1527
+ ownerId: string;
1528
+ sessionId: string;
1529
+ };
1369
1530
  };
1370
1531
  computer?: {
1371
1532
  baseUrl?: string;
1372
1533
  token?: string;
1534
+ authorize?: XenoComputerRequestAuthorizer;
1373
1535
  deviceId?: string;
1374
1536
  allowedApplications: string[];
1375
1537
  };
@@ -1405,6 +1567,23 @@ interface CreateCliGovernedAutomationRuntimeOptions {
1405
1567
  safeMode?: boolean;
1406
1568
  environment?: CliAutomationEnvironment;
1407
1569
  onAudit?: (event: CliAutomationAuditEvent) => Promise<void> | void;
1570
+ computerOwnerAdmission?: {
1571
+ executingPrincipalId: string;
1572
+ authorize(input: unknown, signal: AbortSignal): Promise<unknown>;
1573
+ };
1574
+ computerAdapter?: XenoAutomationAdapter;
1575
+ computerHostAuthority?: XenoComputerHostAuthority;
1576
+ }
1577
+ interface XenoComputerHostAuthority {
1578
+ begin(request: XenoAutomationRequest, decision: {
1579
+ authorization: ToolAuthorizationReceipt;
1580
+ profileFingerprint: string;
1581
+ assertCurrent(): void;
1582
+ }, signal: AbortSignal): Promise<void>;
1583
+ recordPreflight(request: XenoAutomationRequest, preflight: XenoAutomationPreflight, signal: AbortSignal): Promise<void>;
1584
+ recordGrant(request: XenoAutomationRequest, preflight: XenoAutomationPreflight, grant: XenoAutomationExecutionGrant, signal: AbortSignal): Promise<void>;
1585
+ assertCurrent(request: XenoAutomationRequest): Promise<void>;
1586
+ finish(request: XenoAutomationRequest): Promise<void>;
1408
1587
  }
1409
1588
  declare class CliGovernedAutomationRuntime implements XenoGovernedAutomationToolRuntime {
1410
1589
  private readonly options;
@@ -1413,8 +1592,11 @@ declare class CliGovernedAutomationRuntime implements XenoGovernedAutomationTool
1413
1592
  private readonly environment;
1414
1593
  private browserAdapter?;
1415
1594
  private computerAdapter?;
1595
+ private verifiedOperations;
1596
+ private readonly registered;
1416
1597
  constructor(options: CreateCliGovernedAutomationRuntimeOptions);
1417
1598
  register(registry: ToolRegistry): number;
1599
+ registerVerified(registry: ToolRegistry): Promise<number>;
1418
1600
  execute(input: XenoGovernedAutomationToolExecution): Promise<XenoAutomationExecutionResult>;
1419
1601
  stop(operationId: string, reason?: string): Promise<boolean>;
1420
1602
  private securityPolicy;
@@ -1432,4 +1614,4 @@ type XenoHostAutomationEnvironment = CliAutomationEnvironment;
1432
1614
  type XenoHostAutomationSurfaceStatus = CliAutomationSurfaceStatus;
1433
1615
  type XenoHostAutomationStatusReport = CliAutomationStatusReport;
1434
1616
  type CreateXenoHostGovernedAutomationRuntimeOptions = CreateCliGovernedAutomationRuntimeOptions;
1435
- export { type CliAutomationAuditEvent, type CliAutomationAuditLoggerPort, type CliAutomationEnvironment, type CliAutomationStatusReport, type CliAutomationSurfaceStatus, CliGovernedAutomationRuntime, type CreateCliGovernedAutomationRuntimeOptions, type CreateXenoGovernedAutomationToolsOptions, type CreateXenoHostGovernedAutomationRuntimeOptions, type MaterializeXenoAutomationEvidenceOptions, SqliteAutomationExecutionJournal, XENO_AUTOMATION_OPERATIONS, XENO_AUTOMATION_PROTOCOL_VERSION, XENO_BROWSER_CONTROL_PLANE_OPERATIONS, type XenoAutomationAdapter, type XenoAutomationAdapterExecutionResult, type XenoAutomationAdapterManifest, type XenoAutomationConformanceCheck, type XenoAutomationConformanceReport, type XenoAutomationEffect, XenoAutomationError, type XenoAutomationErrorCode, type XenoAutomationEvidenceContent, type XenoAutomationEvidenceInput, type XenoAutomationEvidencePhase, type XenoAutomationEvidencePolicy, type XenoAutomationExecutionGrant, type XenoAutomationExecutionJournal, type XenoAutomationExecutionResult, type XenoAutomationIdentity, type XenoAutomationJournalIdentity, type XenoAutomationJournalRecord, type XenoAutomationLeaseAuthority, type XenoAutomationOperation, type XenoAutomationOperationDescriptor, type XenoAutomationPreflight, type XenoAutomationRequest, type XenoAutomationSurface, type XenoAutomationTarget, type XenoBrowserAutomationOperation, XenoBrowserControlPlaneAdapter, type XenoBrowserControlPlaneAdapterOptions, type XenoComputerAutomationOperation, type XenoDurableAutomationOptions, XenoGovernedAutomationExecutor, type XenoGovernedAutomationExecutorOptions, type XenoGovernedAutomationToolExecution, type XenoGovernedAutomationToolRuntime, type XenoHostAutomationAuditEvent, type XenoHostAutomationAuditLoggerPort, type XenoHostAutomationEnvironment, type XenoHostAutomationStatusReport, type XenoHostAutomationSurfaceStatus, CliGovernedAutomationRuntime as XenoHostGovernedAutomationRuntime, XenoLoopbackAutomationAdapter, type XenoLoopbackAutomationAdapterOptions, assertRequiredXenoAutomationEvidence, assertValidXenoAutomationAdapterManifest, assertValidXenoAutomationRequest, assertXenoAutomationAdapterConformant, assertXenoAutomationAuthority, buildXenoAutomationCapabilityUse, createCliAutomationAuditSink, createCliGovernedAutomationRuntime, createXenoAutomationConformanceReport, createXenoGovernedAutomationTools, createCliAutomationAuditSink as createXenoHostAutomationAuditSink, createCliGovernedAutomationRuntime as createXenoHostGovernedAutomationRuntime, describeXenoAutomationOperation, inspectCliAutomationStatus, inspectCliAutomationStatus as inspectXenoHostAutomationStatus, isXenoAutomationOperation, materializeXenoAutomationEvidence, openSqliteAutomationExecutionJournal, pending, persistXenoAutomationEvidence, readCliAutomationEnvironment, readCliAutomationEnvironment as readXenoHostAutomationEnvironment, renderCliAutomationStatus, renderCliAutomationStatus as renderXenoHostAutomationStatus, resolveXenoAutomationEvidencePolicy, runDurableAutomation };
1617
+ export { type CliAutomationAuditEvent, type CliAutomationAuditLoggerPort, type CliAutomationEnvironment, type CliAutomationStatusReport, type CliAutomationSurfaceStatus, CliGovernedAutomationRuntime, type CreateCliGovernedAutomationRuntimeOptions, type CreateXenoGovernedAutomationToolsOptions, type CreateXenoHostGovernedAutomationRuntimeOptions, type MaterializeXenoAutomationEvidenceOptions, SqliteAutomationExecutionJournal, XENO_AUTOMATION_OPERATIONS, XENO_AUTOMATION_PROTOCOL_VERSION, XENO_BROWSER_CONTROL_PLANE_OPERATIONS, type XenoAutomationAdapter, type XenoAutomationAdapterExecutionResult, type XenoAutomationAdapterManifest, type XenoAutomationConformanceCheck, type XenoAutomationConformanceReport, type XenoAutomationEffect, XenoAutomationError, type XenoAutomationErrorCode, type XenoAutomationEvidenceContent, type XenoAutomationEvidenceInput, type XenoAutomationEvidencePhase, type XenoAutomationEvidencePolicy, type XenoAutomationExecutionGrant, type XenoAutomationExecutionJournal, type XenoAutomationExecutionResult, type XenoAutomationIdentity, type XenoAutomationJournalIdentity, type XenoAutomationJournalRecord, type XenoAutomationLeaseAuthority, type XenoAutomationOperation, type XenoAutomationOperationDescriptor, type XenoAutomationPreflight, type XenoAutomationRequest, type XenoAutomationSurface, type XenoAutomationTarget, type XenoBrowserAutomationOperation, XenoBrowserControlPlaneAdapter, type XenoBrowserControlPlaneAdapterOptions, type XenoComputerAutomationOperation, type XenoComputerHostAuthority, type XenoComputerRequestAuthorizer, type XenoDurableAutomationOptions, XenoGovernedAutomationExecutor, type XenoGovernedAutomationExecutorOptions, type XenoGovernedAutomationToolExecution, type XenoGovernedAutomationToolRuntime, type XenoHostAutomationAuditEvent, type XenoHostAutomationAuditLoggerPort, type XenoHostAutomationEnvironment, type XenoHostAutomationStatusReport, type XenoHostAutomationSurfaceStatus, CliGovernedAutomationRuntime as XenoHostGovernedAutomationRuntime, XenoLoopbackAutomationAdapter, type XenoLoopbackAutomationAdapterOptions, assertRequiredXenoAutomationEvidence, assertValidXenoAutomationAdapterManifest, assertValidXenoAutomationRequest, assertXenoAutomationAdapterConformant, assertXenoAutomationAdapterRequirements, assertXenoAutomationAuthority, buildXenoAutomationCapabilityUse, createCliAutomationAuditSink, createCliGovernedAutomationRuntime, createXenoAutomationConformanceReport, createXenoGovernedAutomationTools, createCliAutomationAuditSink as createXenoHostAutomationAuditSink, createCliGovernedAutomationRuntime as createXenoHostGovernedAutomationRuntime, describeXenoAutomationOperation, inspectCliAutomationStatus, inspectCliAutomationStatus as inspectXenoHostAutomationStatus, isXenoAutomationOperation, materializeXenoAutomationEvidence, openSqliteAutomationExecutionJournal, pending, persistXenoAutomationEvidence, readCliAutomationEnvironment, readCliAutomationEnvironment as readXenoHostAutomationEnvironment, renderCliAutomationStatus, renderCliAutomationStatus as renderXenoHostAutomationStatus, resolveXenoAutomationEvidencePolicy, runDurableAutomation };
@@ -547,6 +547,12 @@ interface ToolDefinition {
547
547
  additionalProperties?: boolean | Record<string, unknown>;
548
548
  [keyword: string]: unknown;
549
549
  };
550
+ grammar?: ToolInputGrammar;
551
+ }
552
+ interface ToolInputGrammar {
553
+ syntax: "gbnf";
554
+ definition: string;
555
+ inputField: string;
550
556
  }
551
557
  interface ImageUrlBlock {
552
558
  type: "image_url";
@@ -705,6 +711,14 @@ interface TextBlock {
705
711
  type: "text";
706
712
  text: string;
707
713
  }
714
+ type MemoryLevel = "global" | "project" | "role" | "session";
715
+ interface MemoryBudget {
716
+ global: number;
717
+ project: number;
718
+ role: number;
719
+ session: number;
720
+ total: number;
721
+ }
708
722
  interface AgentCapabilities {
709
723
  terminal: boolean;
710
724
  fileRead: boolean;
@@ -1023,6 +1037,7 @@ interface XenoAutomationAdapterExecutionResult {
1023
1037
  };
1024
1038
  }
1025
1039
  interface XenoAutomationAdapter {
1040
+ assertCurrent?(request: XenoAutomationRequest): Promise<void> | void;
1026
1041
  manifest(): Promise<XenoAutomationAdapterManifest> | XenoAutomationAdapterManifest;
1027
1042
  preflight(request: XenoAutomationRequest, signal: AbortSignal): Promise<XenoAutomationPreflight>;
1028
1043
  execute(request: XenoAutomationRequest, preflight: XenoAutomationPreflight, grant: XenoAutomationExecutionGrant, signal: AbortSignal): Promise<XenoAutomationAdapterExecutionResult>;
@@ -1083,6 +1098,7 @@ declare class XenoAutomationError extends Error {
1083
1098
  }
1084
1099
  declare function assertValidXenoAutomationRequest(request: XenoAutomationRequest): void;
1085
1100
  declare function assertValidXenoAutomationAdapterManifest(manifest: XenoAutomationAdapterManifest): void;
1101
+ declare function assertXenoAutomationAdapterRequirements(request: XenoAutomationRequest, manifest: XenoAutomationAdapterManifest): void;
1086
1102
  declare function assertXenoAutomationAuthority(request: XenoAutomationRequest, manifest: XenoAutomationAdapterManifest, observedTarget: XenoAutomationTarget): void;
1087
1103
  declare function buildXenoAutomationCapabilityUse(request: XenoAutomationRequest, target: XenoAutomationTarget): XenoCapabilityUse;
1088
1104
  declare function resolveXenoAutomationEvidencePolicy(request: XenoAutomationRequest): XenoAutomationEvidencePolicy;
@@ -1188,6 +1204,9 @@ interface XenoGovernedAutomationExecutorOptions {
1188
1204
  durable?: XenoDurableAutomationOptions;
1189
1205
  artifactRepository?: XenoArtifactRepository;
1190
1206
  now?: () => string;
1207
+ assertCurrent?: (request: XenoAutomationRequest) => void | Promise<void>;
1208
+ onPreflight?: (request: XenoAutomationRequest, preflight: XenoAutomationPreflight, signal: AbortSignal) => Promise<void>;
1209
+ onGrant?: (request: XenoAutomationRequest, preflight: XenoAutomationPreflight, grant: XenoAutomationExecutionGrant, signal: AbortSignal) => Promise<void>;
1191
1210
  }
1192
1211
  declare class XenoGovernedAutomationExecutor {
1193
1212
  private readonly adapter;
@@ -1195,9 +1214,12 @@ declare class XenoGovernedAutomationExecutor {
1195
1214
  private readonly durable;
1196
1215
  private readonly artifactRepository?;
1197
1216
  private readonly now;
1217
+ private readonly assertCurrent;
1198
1218
  private readonly executions;
1199
1219
  private readonly active;
1200
1220
  constructor(options: XenoGovernedAutomationExecutorOptions);
1221
+ private readonly onPreflight;
1222
+ private readonly onGrant;
1201
1223
  execute(request: XenoAutomationRequest, signal?: AbortSignal): Promise<XenoAutomationExecutionResult>;
1202
1224
  stop(operationId: string, reason?: string): Promise<boolean>;
1203
1225
  private executeFresh;
@@ -1211,6 +1233,10 @@ interface XenoLoopbackAutomationAdapterOptions {
1211
1233
  timeoutMs?: number;
1212
1234
  maxResponseBytes?: number;
1213
1235
  fetch?: typeof globalThis.fetch;
1236
+ ownedView?: {
1237
+ ownerId: string;
1238
+ sessionId: string;
1239
+ };
1214
1240
  }
1215
1241
  declare class XenoLoopbackAutomationAdapter implements XenoAutomationAdapter {
1216
1242
  private readonly endpoint;
@@ -1218,6 +1244,7 @@ declare class XenoLoopbackAutomationAdapter implements XenoAutomationAdapter {
1218
1244
  private readonly timeoutMs;
1219
1245
  private readonly maxResponseBytes;
1220
1246
  private readonly fetchImpl;
1247
+ private readonly ownedView;
1221
1248
  constructor(options: XenoLoopbackAutomationAdapterOptions);
1222
1249
  manifest(): Promise<XenoAutomationAdapterManifest>;
1223
1250
  preflight(request: XenoAutomationRequest, signal: AbortSignal): Promise<XenoAutomationPreflight>;
@@ -1255,20 +1282,141 @@ interface XenoBrowserControlPlaneAdapterOptions {
1255
1282
  driver: "browser" | "extension";
1256
1283
  fetch?: typeof globalThis.fetch;
1257
1284
  timeoutMs?: number;
1285
+ ownedView?: {
1286
+ ownerId: string;
1287
+ sessionId: string;
1288
+ };
1258
1289
  }
1259
- declare class XenoBrowserControlPlaneAdapter implements XenoAutomationAdapter {
1260
- private readonly options;
1261
- private readonly base;
1262
- private readonly fetchImpl;
1263
- private readonly timeoutMs;
1290
+ declare class XenoBrowserControlPlaneAdapter extends XenoLoopbackAutomationAdapter {
1291
+ private readonly driver;
1264
1292
  constructor(options: XenoBrowserControlPlaneAdapterOptions);
1265
1293
  manifest(): Promise<XenoAutomationAdapterManifest>;
1266
- preflight(request: XenoAutomationRequest, signal: AbortSignal): Promise<XenoAutomationPreflight>;
1267
- execute(request: XenoAutomationRequest, preflight: XenoAutomationPreflight, _grant: XenoAutomationExecutionGrant, signal: AbortSignal): Promise<XenoAutomationAdapterExecutionResult>;
1268
- stop(_operationId: string, _reason: string): Promise<void>;
1269
- private resultEvidence;
1270
- private snapshotEvidence;
1271
- private call;
1294
+ }
1295
+ interface MemoryFile {
1296
+ level: MemoryLevel;
1297
+ path: string;
1298
+ content: string;
1299
+ tokenCount: number;
1300
+ lastModified?: Date;
1301
+ }
1302
+ interface ResolvedMemory {
1303
+ files: MemoryFile[];
1304
+ byLevel: Record<MemoryLevel, string>;
1305
+ totalTokens: number;
1306
+ truncated: boolean;
1307
+ }
1308
+ interface ProjectSessionContextEntry {
1309
+ sessionId: string;
1310
+ model: string;
1311
+ lastActivity: string;
1312
+ messageCount: number;
1313
+ excerpt: string;
1314
+ }
1315
+ interface ProjectSessionContext {
1316
+ entries: ProjectSessionContextEntry[];
1317
+ totalTokens: number;
1318
+ truncated: boolean;
1319
+ content: string;
1320
+ }
1321
+ interface MemoryManagerOptions {
1322
+ cwd: string;
1323
+ globalDir?: string;
1324
+ role?: string;
1325
+ sessionDir?: string;
1326
+ scope?: MemoryAccessScope;
1327
+ budgets?: Partial<MemoryBudget>;
1328
+ projectSessionContext?: {
1329
+ limit?: number;
1330
+ maxTokens?: number;
1331
+ maxCharsPerSession?: number;
1332
+ };
1333
+ }
1334
+ type MemoryAccessScope = "none" | "session" | "project" | "user";
1335
+ declare class MemoryManager {
1336
+ private cwd;
1337
+ private globalDir;
1338
+ private role?;
1339
+ private sessionDir?;
1340
+ private scope;
1341
+ private budgets;
1342
+ private projectSessionContextDefaults;
1343
+ constructor(options: MemoryManagerOptions);
1344
+ get accessScope(): MemoryAccessScope;
1345
+ canAccessLevel(level: MemoryLevel): boolean;
1346
+ private assertLevelAccess;
1347
+ getProjectSessionContextDefaults(): {
1348
+ limit: number;
1349
+ maxTokens: number;
1350
+ maxCharsPerSession: number;
1351
+ };
1352
+ getPath(level: MemoryLevel): string;
1353
+ loadForPrompt(): Promise<ResolvedMemory>;
1354
+ loadProjectSessionContext(options?: {
1355
+ excludeSessionId?: string;
1356
+ limit?: number;
1357
+ maxTokens?: number;
1358
+ maxCharsPerSession?: number;
1359
+ }): Promise<ProjectSessionContext>;
1360
+ private filterProjectSessions;
1361
+ private normalizePath;
1362
+ private extractRecentTranscriptExcerpt;
1363
+ private formatProjectSessionEntry;
1364
+ add(level: MemoryLevel, content: string, source: "user" | "auto"): Promise<void>;
1365
+ set(level: MemoryLevel, content: string): Promise<void>;
1366
+ formatForPrompt(memory: ResolvedMemory): string;
1367
+ private truncateContent;
1368
+ }
1369
+ interface AskUserRequest {
1370
+ question: string;
1371
+ options?: string[];
1372
+ context?: string;
1373
+ signal?: AbortSignal;
1374
+ }
1375
+ interface AskUserResponse {
1376
+ answer: string;
1377
+ selectedOption?: string;
1378
+ }
1379
+ interface DispatchAgentRequest {
1380
+ agent?: string;
1381
+ prompt: string;
1382
+ timeoutMs?: number;
1383
+ signal?: AbortSignal;
1384
+ dispatchId?: string;
1385
+ }
1386
+ interface DispatchAgentTermination {
1387
+ status: "completed" | "incomplete" | "suspended" | "interrupted" | "error";
1388
+ reason: string;
1389
+ message?: string;
1390
+ }
1391
+ interface DispatchAgentResponse {
1392
+ output: string;
1393
+ termination?: DispatchAgentTermination;
1394
+ tokenUsage?: {
1395
+ input: number;
1396
+ output: number;
1397
+ total: number;
1398
+ };
1399
+ }
1400
+ interface FileObservation {
1401
+ path: string;
1402
+ mtimeMs: number;
1403
+ size: number;
1404
+ source: "read" | "write" | "edit" | "notebook" | "shell";
1405
+ requiresRefresh?: boolean;
1406
+ reason?: string;
1407
+ }
1408
+ interface ToolRuntimeContext {
1409
+ getCwd(): string;
1410
+ setCwd(nextCwd: string): void;
1411
+ getOwnerSessionId(): string | undefined;
1412
+ getMemoryManager(): MemoryManager | undefined;
1413
+ setMemoryManager(memoryManager: MemoryManager | undefined): void;
1414
+ noteFileObservation(filePath: string, observation: Omit<FileObservation, "path">): void;
1415
+ getFileObservation(filePath: string): FileObservation | undefined;
1416
+ invalidateFileObservation(filePath: string, reason: string): void;
1417
+ listFileObservations(): FileObservation[];
1418
+ askUser?(request: AskUserRequest): Promise<AskUserResponse>;
1419
+ dispatchAgent?(request: DispatchAgentRequest): Promise<DispatchAgentResponse>;
1272
1420
  }
1273
1421
  interface ToolRegistryOptions {
1274
1422
  validateInputs?: boolean;
@@ -1282,10 +1430,14 @@ declare class ToolRegistry {
1282
1430
  private validateInputs;
1283
1431
  private readonly toolSchemaMode;
1284
1432
  private readonly activatedDefinitions;
1433
+ private memoryRuntime?;
1434
+ private memoryBindingScope?;
1285
1435
  constructor(options?: ToolRegistryOptions);
1286
1436
  setValidateInputs(enabled: boolean): this;
1287
1437
  get inputValidationEnabled(): boolean;
1288
1438
  get schemaLoadingMode(): "all" | "demand";
1439
+ bindMemoryManager(manager: MemoryManager | undefined): void;
1440
+ attachMemoryRuntime(runtime: ToolRuntimeContext, scope?: MemoryManager["accessScope"]): void;
1289
1441
  register(tool: RegisteredTool): void;
1290
1442
  registerAlias(tool: RegisteredTool): void;
1291
1443
  registerAll(tools: Iterable<RegisteredTool>): void;
@@ -1353,6 +1505,11 @@ interface CliAutomationAuditLoggerPort {
1353
1505
  metadata: Record<string, unknown>;
1354
1506
  }): Promise<unknown>;
1355
1507
  }
1508
+ type XenoComputerRequestAuthorizer = (method: string, url: string) => Promise<{
1509
+ token: string;
1510
+ tokenType: "Bearer" | "DPoP";
1511
+ headers?: Record<string, string>;
1512
+ } | null>;
1356
1513
  interface CliAutomationEnvironment {
1357
1514
  browser?: {
1358
1515
  driver: "browser" | "extension";
@@ -1366,10 +1523,15 @@ interface CliAutomationEnvironment {
1366
1523
  uploads: "deny" | "prompt" | "allow";
1367
1524
  downloads: "deny" | "prompt" | "allow";
1368
1525
  recording: "disabled" | "bounded";
1526
+ ownedView?: {
1527
+ ownerId: string;
1528
+ sessionId: string;
1529
+ };
1369
1530
  };
1370
1531
  computer?: {
1371
1532
  baseUrl?: string;
1372
1533
  token?: string;
1534
+ authorize?: XenoComputerRequestAuthorizer;
1373
1535
  deviceId?: string;
1374
1536
  allowedApplications: string[];
1375
1537
  };
@@ -1405,6 +1567,23 @@ interface CreateCliGovernedAutomationRuntimeOptions {
1405
1567
  safeMode?: boolean;
1406
1568
  environment?: CliAutomationEnvironment;
1407
1569
  onAudit?: (event: CliAutomationAuditEvent) => Promise<void> | void;
1570
+ computerOwnerAdmission?: {
1571
+ executingPrincipalId: string;
1572
+ authorize(input: unknown, signal: AbortSignal): Promise<unknown>;
1573
+ };
1574
+ computerAdapter?: XenoAutomationAdapter;
1575
+ computerHostAuthority?: XenoComputerHostAuthority;
1576
+ }
1577
+ interface XenoComputerHostAuthority {
1578
+ begin(request: XenoAutomationRequest, decision: {
1579
+ authorization: ToolAuthorizationReceipt;
1580
+ profileFingerprint: string;
1581
+ assertCurrent(): void;
1582
+ }, signal: AbortSignal): Promise<void>;
1583
+ recordPreflight(request: XenoAutomationRequest, preflight: XenoAutomationPreflight, signal: AbortSignal): Promise<void>;
1584
+ recordGrant(request: XenoAutomationRequest, preflight: XenoAutomationPreflight, grant: XenoAutomationExecutionGrant, signal: AbortSignal): Promise<void>;
1585
+ assertCurrent(request: XenoAutomationRequest): Promise<void>;
1586
+ finish(request: XenoAutomationRequest): Promise<void>;
1408
1587
  }
1409
1588
  declare class CliGovernedAutomationRuntime implements XenoGovernedAutomationToolRuntime {
1410
1589
  private readonly options;
@@ -1413,8 +1592,11 @@ declare class CliGovernedAutomationRuntime implements XenoGovernedAutomationTool
1413
1592
  private readonly environment;
1414
1593
  private browserAdapter?;
1415
1594
  private computerAdapter?;
1595
+ private verifiedOperations;
1596
+ private readonly registered;
1416
1597
  constructor(options: CreateCliGovernedAutomationRuntimeOptions);
1417
1598
  register(registry: ToolRegistry): number;
1599
+ registerVerified(registry: ToolRegistry): Promise<number>;
1418
1600
  execute(input: XenoGovernedAutomationToolExecution): Promise<XenoAutomationExecutionResult>;
1419
1601
  stop(operationId: string, reason?: string): Promise<boolean>;
1420
1602
  private securityPolicy;
@@ -1432,4 +1614,4 @@ type XenoHostAutomationEnvironment = CliAutomationEnvironment;
1432
1614
  type XenoHostAutomationSurfaceStatus = CliAutomationSurfaceStatus;
1433
1615
  type XenoHostAutomationStatusReport = CliAutomationStatusReport;
1434
1616
  type CreateXenoHostGovernedAutomationRuntimeOptions = CreateCliGovernedAutomationRuntimeOptions;
1435
- export { type CliAutomationAuditEvent, type CliAutomationAuditLoggerPort, type CliAutomationEnvironment, type CliAutomationStatusReport, type CliAutomationSurfaceStatus, CliGovernedAutomationRuntime, type CreateCliGovernedAutomationRuntimeOptions, type CreateXenoGovernedAutomationToolsOptions, type CreateXenoHostGovernedAutomationRuntimeOptions, type MaterializeXenoAutomationEvidenceOptions, SqliteAutomationExecutionJournal, XENO_AUTOMATION_OPERATIONS, XENO_AUTOMATION_PROTOCOL_VERSION, XENO_BROWSER_CONTROL_PLANE_OPERATIONS, type XenoAutomationAdapter, type XenoAutomationAdapterExecutionResult, type XenoAutomationAdapterManifest, type XenoAutomationConformanceCheck, type XenoAutomationConformanceReport, type XenoAutomationEffect, XenoAutomationError, type XenoAutomationErrorCode, type XenoAutomationEvidenceContent, type XenoAutomationEvidenceInput, type XenoAutomationEvidencePhase, type XenoAutomationEvidencePolicy, type XenoAutomationExecutionGrant, type XenoAutomationExecutionJournal, type XenoAutomationExecutionResult, type XenoAutomationIdentity, type XenoAutomationJournalIdentity, type XenoAutomationJournalRecord, type XenoAutomationLeaseAuthority, type XenoAutomationOperation, type XenoAutomationOperationDescriptor, type XenoAutomationPreflight, type XenoAutomationRequest, type XenoAutomationSurface, type XenoAutomationTarget, type XenoBrowserAutomationOperation, XenoBrowserControlPlaneAdapter, type XenoBrowserControlPlaneAdapterOptions, type XenoComputerAutomationOperation, type XenoDurableAutomationOptions, XenoGovernedAutomationExecutor, type XenoGovernedAutomationExecutorOptions, type XenoGovernedAutomationToolExecution, type XenoGovernedAutomationToolRuntime, type XenoHostAutomationAuditEvent, type XenoHostAutomationAuditLoggerPort, type XenoHostAutomationEnvironment, type XenoHostAutomationStatusReport, type XenoHostAutomationSurfaceStatus, CliGovernedAutomationRuntime as XenoHostGovernedAutomationRuntime, XenoLoopbackAutomationAdapter, type XenoLoopbackAutomationAdapterOptions, assertRequiredXenoAutomationEvidence, assertValidXenoAutomationAdapterManifest, assertValidXenoAutomationRequest, assertXenoAutomationAdapterConformant, assertXenoAutomationAuthority, buildXenoAutomationCapabilityUse, createCliAutomationAuditSink, createCliGovernedAutomationRuntime, createXenoAutomationConformanceReport, createXenoGovernedAutomationTools, createCliAutomationAuditSink as createXenoHostAutomationAuditSink, createCliGovernedAutomationRuntime as createXenoHostGovernedAutomationRuntime, describeXenoAutomationOperation, inspectCliAutomationStatus, inspectCliAutomationStatus as inspectXenoHostAutomationStatus, isXenoAutomationOperation, materializeXenoAutomationEvidence, openSqliteAutomationExecutionJournal, pending, persistXenoAutomationEvidence, readCliAutomationEnvironment, readCliAutomationEnvironment as readXenoHostAutomationEnvironment, renderCliAutomationStatus, renderCliAutomationStatus as renderXenoHostAutomationStatus, resolveXenoAutomationEvidencePolicy, runDurableAutomation };
1617
+ export { type CliAutomationAuditEvent, type CliAutomationAuditLoggerPort, type CliAutomationEnvironment, type CliAutomationStatusReport, type CliAutomationSurfaceStatus, CliGovernedAutomationRuntime, type CreateCliGovernedAutomationRuntimeOptions, type CreateXenoGovernedAutomationToolsOptions, type CreateXenoHostGovernedAutomationRuntimeOptions, type MaterializeXenoAutomationEvidenceOptions, SqliteAutomationExecutionJournal, XENO_AUTOMATION_OPERATIONS, XENO_AUTOMATION_PROTOCOL_VERSION, XENO_BROWSER_CONTROL_PLANE_OPERATIONS, type XenoAutomationAdapter, type XenoAutomationAdapterExecutionResult, type XenoAutomationAdapterManifest, type XenoAutomationConformanceCheck, type XenoAutomationConformanceReport, type XenoAutomationEffect, XenoAutomationError, type XenoAutomationErrorCode, type XenoAutomationEvidenceContent, type XenoAutomationEvidenceInput, type XenoAutomationEvidencePhase, type XenoAutomationEvidencePolicy, type XenoAutomationExecutionGrant, type XenoAutomationExecutionJournal, type XenoAutomationExecutionResult, type XenoAutomationIdentity, type XenoAutomationJournalIdentity, type XenoAutomationJournalRecord, type XenoAutomationLeaseAuthority, type XenoAutomationOperation, type XenoAutomationOperationDescriptor, type XenoAutomationPreflight, type XenoAutomationRequest, type XenoAutomationSurface, type XenoAutomationTarget, type XenoBrowserAutomationOperation, XenoBrowserControlPlaneAdapter, type XenoBrowserControlPlaneAdapterOptions, type XenoComputerAutomationOperation, type XenoComputerHostAuthority, type XenoComputerRequestAuthorizer, type XenoDurableAutomationOptions, XenoGovernedAutomationExecutor, type XenoGovernedAutomationExecutorOptions, type XenoGovernedAutomationToolExecution, type XenoGovernedAutomationToolRuntime, type XenoHostAutomationAuditEvent, type XenoHostAutomationAuditLoggerPort, type XenoHostAutomationEnvironment, type XenoHostAutomationStatusReport, type XenoHostAutomationSurfaceStatus, CliGovernedAutomationRuntime as XenoHostGovernedAutomationRuntime, XenoLoopbackAutomationAdapter, type XenoLoopbackAutomationAdapterOptions, assertRequiredXenoAutomationEvidence, assertValidXenoAutomationAdapterManifest, assertValidXenoAutomationRequest, assertXenoAutomationAdapterConformant, assertXenoAutomationAdapterRequirements, assertXenoAutomationAuthority, buildXenoAutomationCapabilityUse, createCliAutomationAuditSink, createCliGovernedAutomationRuntime, createXenoAutomationConformanceReport, createXenoGovernedAutomationTools, createCliAutomationAuditSink as createXenoHostAutomationAuditSink, createCliGovernedAutomationRuntime as createXenoHostGovernedAutomationRuntime, describeXenoAutomationOperation, inspectCliAutomationStatus, inspectCliAutomationStatus as inspectXenoHostAutomationStatus, isXenoAutomationOperation, materializeXenoAutomationEvidence, openSqliteAutomationExecutionJournal, pending, persistXenoAutomationEvidence, readCliAutomationEnvironment, readCliAutomationEnvironment as readXenoHostAutomationEnvironment, renderCliAutomationStatus, renderCliAutomationStatus as renderXenoHostAutomationStatus, resolveXenoAutomationEvidencePolicy, runDurableAutomation };