@xenosystem/agent-sdk 0.10.36 → 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.
- package/dist/agents/index.cjs +9 -9
- package/dist/agents/index.d.cts +4 -1
- package/dist/agents/index.d.ts +4 -1
- package/dist/agents/index.js +16 -16
- package/dist/agents/metafile-cjs.json +1 -1
- package/dist/agents/metafile-esm.json +1 -1
- package/dist/artifacts/index.cjs +1 -1
- package/dist/artifacts/index.js +1 -1
- package/dist/artifacts/metafile-cjs.json +1 -1
- package/dist/artifacts/metafile-esm.json +1 -1
- package/dist/automation/index.cjs +35 -24
- package/dist/automation/index.d.cts +194 -12
- package/dist/automation/index.d.ts +194 -12
- package/dist/automation/index.js +35 -24
- package/dist/automation/metafile-cjs.json +1 -1
- package/dist/automation/metafile-esm.json +1 -1
- package/dist/control-plane/index.cjs +8 -8
- package/dist/control-plane/index.js +8 -8
- package/dist/control-plane/metafile-cjs.json +1 -1
- package/dist/control-plane/metafile-esm.json +1 -1
- package/dist/coordination/index.cjs +2 -2
- package/dist/coordination/index.js +2 -2
- package/dist/coordination/metafile-cjs.json +1 -1
- package/dist/coordination/metafile-esm.json +1 -1
- package/dist/electron/index.cjs +239 -227
- package/dist/electron/index.d.cts +158 -1
- package/dist/electron/index.d.ts +158 -1
- package/dist/electron/index.js +239 -227
- package/dist/electron/metafile-cjs.json +1 -1
- package/dist/electron/metafile-esm.json +1 -1
- package/dist/hosted/metafile-cjs.json +1 -1
- package/dist/hosted/metafile-esm.json +1 -1
- package/dist/index.cjs +399 -388
- package/dist/index.d.cts +323 -172
- package/dist/index.d.ts +323 -172
- package/dist/index.js +401 -390
- package/dist/intelligence/index.cjs +4 -4
- package/dist/intelligence/index.js +4 -4
- package/dist/intelligence/metafile-cjs.json +1 -1
- package/dist/intelligence/metafile-esm.json +1 -1
- package/dist/mcp/index.cjs +20 -20
- package/dist/mcp/index.d.cts +146 -0
- package/dist/mcp/index.d.ts +146 -0
- package/dist/mcp/index.js +17 -17
- package/dist/mcp/metafile-cjs.json +1 -1
- package/dist/mcp/metafile-esm.json +1 -1
- package/dist/metafile-cjs.json +1 -1
- package/dist/metafile-esm.json +1 -1
- package/dist/providers/index.cjs +10 -10
- package/dist/providers/index.d.cts +49 -5
- package/dist/providers/index.d.ts +49 -5
- package/dist/providers/index.js +10 -10
- package/dist/providers/metafile-cjs.json +1 -1
- package/dist/providers/metafile-esm.json +1 -1
- package/dist/recipes/metafile-cjs.json +1 -1
- package/dist/recipes/metafile-esm.json +1 -1
- package/dist/research/metafile-cjs.json +1 -1
- package/dist/research/metafile-esm.json +1 -1
- package/dist/session/index.cjs +24 -24
- package/dist/session/index.js +16 -16
- package/dist/session/metafile-cjs.json +1 -1
- package/dist/session/metafile-esm.json +1 -1
- package/dist/sharing/index.cjs +1 -1
- package/dist/sharing/index.js +3 -3
- package/dist/sharing/metafile-cjs.json +1 -1
- package/dist/sharing/metafile-esm.json +1 -1
- package/dist/skills/index.d.cts +6 -0
- package/dist/skills/index.d.ts +6 -0
- package/dist/utils/index.cjs +24 -24
- package/dist/utils/index.d.cts +14 -2
- package/dist/utils/index.d.ts +14 -2
- package/dist/utils/index.js +24 -24
- package/dist/utils/metafile-cjs.json +1 -1
- package/dist/utils/metafile-esm.json +1 -1
- package/ownership/evidence/PROPRIETARY-PTY-1/implementation-record.md +1 -1
- package/ownership/ownership-policy.json +12 -1
- 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
|
|
1260
|
-
private readonly
|
|
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
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
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
|
|
1260
|
-
private readonly
|
|
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
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
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 };
|