@xenosystem/agent-sdk 0.8.12
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/LICENSE +15 -0
- package/README.md +511 -0
- package/dist/agents/index.cjs +17 -0
- package/dist/agents/index.d.cts +244 -0
- package/dist/agents/index.d.ts +244 -0
- package/dist/agents/index.js +17 -0
- package/dist/agents/metafile-cjs.json +1 -0
- package/dist/agents/metafile-esm.json +1 -0
- package/dist/artifacts/browser.cjs +1 -0
- package/dist/artifacts/browser.d.cts +8 -0
- package/dist/artifacts/browser.d.ts +8 -0
- package/dist/artifacts/browser.js +1 -0
- package/dist/artifacts/diff-artifact-C2tQZWcs.d.cts +354 -0
- package/dist/artifacts/diff-artifact-C2tQZWcs.d.ts +354 -0
- package/dist/artifacts/index.cjs +10 -0
- package/dist/artifacts/index.d.cts +588 -0
- package/dist/artifacts/index.d.ts +588 -0
- package/dist/artifacts/index.js +10 -0
- package/dist/artifacts/metafile-cjs.json +1 -0
- package/dist/artifacts/metafile-esm.json +1 -0
- package/dist/automation/index.cjs +438 -0
- package/dist/automation/index.d.cts +878 -0
- package/dist/automation/index.d.ts +878 -0
- package/dist/automation/index.js +438 -0
- package/dist/automation/metafile-cjs.json +1 -0
- package/dist/automation/metafile-esm.json +1 -0
- package/dist/control-plane/index.cjs +7 -0
- package/dist/control-plane/index.d.cts +403 -0
- package/dist/control-plane/index.d.ts +403 -0
- package/dist/control-plane/index.js +7 -0
- package/dist/control-plane/metafile-cjs.json +1 -0
- package/dist/control-plane/metafile-esm.json +1 -0
- package/dist/control-room/index.cjs +1 -0
- package/dist/control-room/index.d.cts +216 -0
- package/dist/control-room/index.d.ts +216 -0
- package/dist/control-room/index.js +1 -0
- package/dist/control-room/metafile-cjs.json +1 -0
- package/dist/control-room/metafile-esm.json +1 -0
- package/dist/electron/index.cjs +1476 -0
- package/dist/electron/index.d.cts +1583 -0
- package/dist/electron/index.d.ts +1583 -0
- package/dist/electron/index.js +1476 -0
- package/dist/electron/metafile-cjs.json +1 -0
- package/dist/electron/metafile-esm.json +1 -0
- package/dist/governance/index.cjs +33 -0
- package/dist/governance/index.d.cts +397 -0
- package/dist/governance/index.d.ts +397 -0
- package/dist/governance/index.js +33 -0
- package/dist/governance/metafile-cjs.json +1 -0
- package/dist/governance/metafile-esm.json +1 -0
- package/dist/hooks/index.cjs +9 -0
- package/dist/hooks/index.d.cts +198 -0
- package/dist/hooks/index.d.ts +198 -0
- package/dist/hooks/index.js +9 -0
- package/dist/hooks/metafile-cjs.json +1 -0
- package/dist/hooks/metafile-esm.json +1 -0
- package/dist/hosted/index.cjs +1 -0
- package/dist/hosted/index.d.cts +490 -0
- package/dist/hosted/index.d.ts +490 -0
- package/dist/hosted/index.js +1 -0
- package/dist/hosted/metafile-cjs.json +1 -0
- package/dist/hosted/metafile-esm.json +1 -0
- package/dist/index.cjs +2161 -0
- package/dist/index.d.cts +12259 -0
- package/dist/index.d.ts +12259 -0
- package/dist/index.js +2161 -0
- package/dist/intelligence/index.cjs +10 -0
- package/dist/intelligence/index.d.cts +220 -0
- package/dist/intelligence/index.d.ts +220 -0
- package/dist/intelligence/index.js +10 -0
- package/dist/intelligence/metafile-cjs.json +1 -0
- package/dist/intelligence/metafile-esm.json +1 -0
- package/dist/mcp/index.cjs +28 -0
- package/dist/mcp/index.d.cts +960 -0
- package/dist/mcp/index.d.ts +960 -0
- package/dist/mcp/index.js +28 -0
- package/dist/mcp/metafile-cjs.json +1 -0
- package/dist/mcp/metafile-esm.json +1 -0
- package/dist/metafile-cjs.json +1 -0
- package/dist/metafile-esm.json +1 -0
- package/dist/oracle/index.cjs +1 -0
- package/dist/oracle/index.d.cts +310 -0
- package/dist/oracle/index.d.ts +310 -0
- package/dist/oracle/index.js +1 -0
- package/dist/oracle/metafile-cjs.json +1 -0
- package/dist/oracle/metafile-esm.json +1 -0
- package/dist/providers/index.cjs +11 -0
- package/dist/providers/index.d.cts +462 -0
- package/dist/providers/index.d.ts +462 -0
- package/dist/providers/index.js +11 -0
- package/dist/providers/metafile-cjs.json +1 -0
- package/dist/providers/metafile-esm.json +1 -0
- package/dist/recipes/index.cjs +2 -0
- package/dist/recipes/index.d.cts +86 -0
- package/dist/recipes/index.d.ts +86 -0
- package/dist/recipes/index.js +2 -0
- package/dist/recipes/metafile-cjs.json +1 -0
- package/dist/recipes/metafile-esm.json +1 -0
- package/dist/research/index.cjs +3 -0
- package/dist/research/index.d.cts +285 -0
- package/dist/research/index.d.ts +285 -0
- package/dist/research/index.js +3 -0
- package/dist/research/metafile-cjs.json +1 -0
- package/dist/research/metafile-esm.json +1 -0
- package/dist/session/index.cjs +56 -0
- package/dist/session/index.d.cts +523 -0
- package/dist/session/index.d.ts +523 -0
- package/dist/session/index.js +56 -0
- package/dist/session/metafile-cjs.json +1 -0
- package/dist/session/metafile-esm.json +1 -0
- package/dist/sharing/index.cjs +4 -0
- package/dist/sharing/index.d.cts +272 -0
- package/dist/sharing/index.d.ts +272 -0
- package/dist/sharing/index.js +4 -0
- package/dist/sharing/metafile-cjs.json +1 -0
- package/dist/sharing/metafile-esm.json +1 -0
- package/dist/skills/index.cjs +6 -0
- package/dist/skills/index.d.cts +277 -0
- package/dist/skills/index.d.ts +277 -0
- package/dist/skills/index.js +6 -0
- package/dist/skills/metafile-cjs.json +1 -0
- package/dist/skills/metafile-esm.json +1 -0
- package/dist/soul/index.cjs +32 -0
- package/dist/soul/index.d.cts +138 -0
- package/dist/soul/index.d.ts +138 -0
- package/dist/soul/index.js +32 -0
- package/dist/soul/metafile-cjs.json +1 -0
- package/dist/soul/metafile-esm.json +1 -0
- package/dist/terminal/index.cjs +4 -0
- package/dist/terminal/index.d.cts +55 -0
- package/dist/terminal/index.d.ts +55 -0
- package/dist/terminal/index.js +4 -0
- package/dist/terminal/metafile-cjs.json +1 -0
- package/dist/terminal/metafile-esm.json +1 -0
- package/dist/ui/index.cjs +35 -0
- package/dist/ui/index.d.cts +298 -0
- package/dist/ui/index.d.ts +298 -0
- package/dist/ui/index.js +35 -0
- package/dist/ui/metafile-cjs.json +1 -0
- package/dist/ui/metafile-esm.json +1 -0
- package/dist/utils/index.cjs +23 -0
- package/dist/utils/index.d.cts +245 -0
- package/dist/utils/index.d.ts +245 -0
- package/dist/utils/index.js +23 -0
- package/dist/utils/metafile-cjs.json +1 -0
- package/dist/utils/metafile-esm.json +1 -0
- package/native/mxc/LICENSE.microsoft-mxc-sdk.md +21 -0
- package/native/mxc/README.md +25 -0
- package/native/mxc/bin/arm64/lxc-exec +0 -0
- package/native/mxc/bin/arm64/mxc-exec-mac +0 -0
- package/native/mxc/bin/arm64/wxc-exec.exe +0 -0
- package/native/mxc/bin/arm64/wxc-host-prep.exe +0 -0
- package/native/mxc/bin/x64/lxc-exec +0 -0
- package/native/mxc/bin/x64/wxc-exec.exe +0 -0
- package/native/mxc/bin/x64/wxc-host-prep.exe +0 -0
- package/native/mxc/package.json +58 -0
- package/ownership/CLEAN_ROOM_CONTRIBUTOR_GUIDE.md +63 -0
- package/ownership/audit.mjs +727 -0
- package/ownership/evidence/PROPRIETARY-COMMAND-1/implementation-record.md +77 -0
- package/ownership/evidence/PROPRIETARY-COMMAND-1/provenance-review.md +51 -0
- package/ownership/evidence/PROPRIETARY-MEDIA-1/implementation-record.md +131 -0
- package/ownership/evidence/PROPRIETARY-MEDIA-1/provenance-review.md +50 -0
- package/ownership/evidence/PROPRIETARY-PTY-1/implementation-record.md +86 -0
- package/ownership/evidence/PROPRIETARY-PTY-1/provenance-review.md +52 -0
- package/ownership/evidence/PROPRIETARY-RUNTIME-1/implementation-record.md +68 -0
- package/ownership/evidence/PROPRIETARY-RUNTIME-1/provenance-review.md +32 -0
- package/ownership/evidence/PROPRIETARY-TOOLCHAIN-1/implementation-record.md +53 -0
- package/ownership/evidence/PROPRIETARY-TOOLCHAIN-1/provenance-review.md +32 -0
- package/ownership/evidence/PROPRIETARY-UI-1/implementation-record.md +96 -0
- package/ownership/evidence/PROPRIETARY-UI-1/provenance-review.md +46 -0
- package/ownership/ownership-policy.json +232 -0
- package/ownership/ownership-policy.schema.json +192 -0
- package/ownership/templates/clean-room-implementation-record.md +70 -0
- package/ownership/templates/provenance-review.md +51 -0
- package/package.json +209 -0
|
@@ -0,0 +1,490 @@
|
|
|
1
|
+
type XenoJsonPrimitive = string | number | boolean | null;
|
|
2
|
+
type XenoJsonValue = XenoJsonPrimitive | XenoJsonObject | XenoJsonValue[];
|
|
3
|
+
interface XenoJsonObject {
|
|
4
|
+
[key: string]: XenoJsonValue;
|
|
5
|
+
}
|
|
6
|
+
declare const XENO_HOSTED_ENVIRONMENT_SCHEMA_VERSION: 1;
|
|
7
|
+
declare const XENO_HOSTED_RUN_SCHEMA_VERSION: 1;
|
|
8
|
+
declare const XENO_HOSTED_EVENT_SCHEMA_VERSION: 1;
|
|
9
|
+
declare const XENO_HOSTED_TRIGGER_SCHEMA_VERSION: 1;
|
|
10
|
+
type XenoHostedOs = "linux" | "windows" | "macos";
|
|
11
|
+
type XenoHostedArchitecture = "x64" | "arm64";
|
|
12
|
+
type XenoHostedRunStatus = "queued" | "provisioning" | "running" | "waiting_for_approval" | "paused" | "completed" | "failed" | "cancelled" | "expired";
|
|
13
|
+
interface XenoHostedRepositorySource {
|
|
14
|
+
provider: "github" | "gitlab" | "bitbucket" | "generic-git" | `custom:${string}`;
|
|
15
|
+
repository: string;
|
|
16
|
+
ref: string;
|
|
17
|
+
commit?: string;
|
|
18
|
+
subdirectory?: string;
|
|
19
|
+
shallow?: boolean;
|
|
20
|
+
}
|
|
21
|
+
interface XenoHostedImageReference {
|
|
22
|
+
reference: string;
|
|
23
|
+
digest: string;
|
|
24
|
+
os: XenoHostedOs;
|
|
25
|
+
architecture: XenoHostedArchitecture;
|
|
26
|
+
}
|
|
27
|
+
interface XenoHostedSetupStep {
|
|
28
|
+
id: string;
|
|
29
|
+
command: string;
|
|
30
|
+
workingDirectory?: string;
|
|
31
|
+
timeoutMs: number;
|
|
32
|
+
network: "deny" | "environment-policy";
|
|
33
|
+
}
|
|
34
|
+
interface XenoHostedCacheMount {
|
|
35
|
+
key: string;
|
|
36
|
+
path: string;
|
|
37
|
+
restoreKeys?: string[];
|
|
38
|
+
readOnly?: boolean;
|
|
39
|
+
maxBytes?: number;
|
|
40
|
+
}
|
|
41
|
+
interface XenoHostedNetworkDestination {
|
|
42
|
+
host: string;
|
|
43
|
+
ports?: number[];
|
|
44
|
+
protocols?: Array<"http" | "https" | "ssh" | "git">;
|
|
45
|
+
reason: string;
|
|
46
|
+
}
|
|
47
|
+
interface XenoHostedNetworkPolicy {
|
|
48
|
+
default: "deny";
|
|
49
|
+
dns: "deny" | "allow-resolved-destinations";
|
|
50
|
+
destinations: XenoHostedNetworkDestination[];
|
|
51
|
+
maxResponseBytes?: number;
|
|
52
|
+
}
|
|
53
|
+
interface XenoHostedSecretProjection {
|
|
54
|
+
ref: string;
|
|
55
|
+
target: {
|
|
56
|
+
kind: "environment";
|
|
57
|
+
name: string;
|
|
58
|
+
} | {
|
|
59
|
+
kind: "file";
|
|
60
|
+
path: string;
|
|
61
|
+
};
|
|
62
|
+
required: boolean;
|
|
63
|
+
exposeToChildProcesses: boolean;
|
|
64
|
+
}
|
|
65
|
+
interface XenoHostedResourceLimits {
|
|
66
|
+
cpuMillis: number;
|
|
67
|
+
memoryBytes: number;
|
|
68
|
+
diskBytes: number;
|
|
69
|
+
processLimit: number;
|
|
70
|
+
wallTimeMs: number;
|
|
71
|
+
}
|
|
72
|
+
interface XenoHostedRetentionPolicy {
|
|
73
|
+
workspaceTtlMs: number;
|
|
74
|
+
eventTtlMs: number;
|
|
75
|
+
artifactTtlMs: number;
|
|
76
|
+
wipeWorkspace: boolean;
|
|
77
|
+
}
|
|
78
|
+
interface XenoHostedEnvironmentManifestPayload {
|
|
79
|
+
schemaVersion: typeof XENO_HOSTED_ENVIRONMENT_SCHEMA_VERSION;
|
|
80
|
+
kind: "xeno-hosted-environment";
|
|
81
|
+
environmentId: string;
|
|
82
|
+
revision: number;
|
|
83
|
+
createdAt: string;
|
|
84
|
+
createdBy: string;
|
|
85
|
+
workspaceId: string;
|
|
86
|
+
name: string;
|
|
87
|
+
repository: XenoHostedRepositorySource;
|
|
88
|
+
image: XenoHostedImageReference;
|
|
89
|
+
setup: XenoHostedSetupStep[];
|
|
90
|
+
caches: XenoHostedCacheMount[];
|
|
91
|
+
network: XenoHostedNetworkPolicy;
|
|
92
|
+
secrets: XenoHostedSecretProjection[];
|
|
93
|
+
resources: XenoHostedResourceLimits;
|
|
94
|
+
retention: XenoHostedRetentionPolicy;
|
|
95
|
+
labels: Record<string, string>;
|
|
96
|
+
}
|
|
97
|
+
interface XenoHostedEnvironmentManifest extends XenoHostedEnvironmentManifestPayload {
|
|
98
|
+
checksum: {
|
|
99
|
+
algorithm: "sha256";
|
|
100
|
+
value: string;
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
interface XenoHostedAuthority {
|
|
104
|
+
filesystem: "read" | "workspace-write";
|
|
105
|
+
network: "deny" | "environment-policy";
|
|
106
|
+
externalActions: "deny" | "approval-required";
|
|
107
|
+
secretRefs: string[];
|
|
108
|
+
}
|
|
109
|
+
interface XenoHostedBudget {
|
|
110
|
+
maxCredits: number;
|
|
111
|
+
maxTokens?: number;
|
|
112
|
+
maxDurationMs: number;
|
|
113
|
+
maxToolCalls?: number;
|
|
114
|
+
}
|
|
115
|
+
interface XenoHostedQuotaLease {
|
|
116
|
+
leaseId: string;
|
|
117
|
+
principalId: string;
|
|
118
|
+
workspaceId: string;
|
|
119
|
+
acquiredAt: string;
|
|
120
|
+
expiresAt: string;
|
|
121
|
+
concurrencySlot: number;
|
|
122
|
+
maxConcurrentRuns: number;
|
|
123
|
+
}
|
|
124
|
+
interface XenoHostedRunRequest {
|
|
125
|
+
schemaVersion: typeof XENO_HOSTED_RUN_SCHEMA_VERSION;
|
|
126
|
+
kind: "xeno-hosted-run-request";
|
|
127
|
+
clientRequestId: string;
|
|
128
|
+
idempotencyKey: string;
|
|
129
|
+
requestedAt: string;
|
|
130
|
+
requestedBy: string;
|
|
131
|
+
workspaceId: string;
|
|
132
|
+
environment: {
|
|
133
|
+
environmentId: string;
|
|
134
|
+
revision: number;
|
|
135
|
+
checksum: string;
|
|
136
|
+
};
|
|
137
|
+
prompt: string;
|
|
138
|
+
model?: string;
|
|
139
|
+
effort?: string;
|
|
140
|
+
agentProfile?: string;
|
|
141
|
+
authority: XenoHostedAuthority;
|
|
142
|
+
budget: XenoHostedBudget;
|
|
143
|
+
handoffId?: string;
|
|
144
|
+
previousRunId?: string;
|
|
145
|
+
artifactIds?: string[];
|
|
146
|
+
metadata?: Record<string, XenoJsonValue>;
|
|
147
|
+
}
|
|
148
|
+
interface XenoHostedRunRecord {
|
|
149
|
+
schemaVersion: typeof XENO_HOSTED_RUN_SCHEMA_VERSION;
|
|
150
|
+
kind: "xeno-hosted-run";
|
|
151
|
+
hostedRunId: string;
|
|
152
|
+
request: XenoHostedRunRequest;
|
|
153
|
+
status: XenoHostedRunStatus;
|
|
154
|
+
createdAt: string;
|
|
155
|
+
updatedAt: string;
|
|
156
|
+
startedAt?: string;
|
|
157
|
+
endedAt?: string;
|
|
158
|
+
statusReason?: string;
|
|
159
|
+
quotaLease?: XenoHostedQuotaLease;
|
|
160
|
+
localRunId?: string;
|
|
161
|
+
branch?: string;
|
|
162
|
+
pullRequest?: {
|
|
163
|
+
provider: string;
|
|
164
|
+
repository: string;
|
|
165
|
+
number: number;
|
|
166
|
+
url: string;
|
|
167
|
+
};
|
|
168
|
+
artifactIds: string[];
|
|
169
|
+
lastSequence: number;
|
|
170
|
+
}
|
|
171
|
+
interface XenoHostedEventRecord {
|
|
172
|
+
schemaVersion: typeof XENO_HOSTED_EVENT_SCHEMA_VERSION;
|
|
173
|
+
kind: "xeno-hosted-event";
|
|
174
|
+
eventId: string;
|
|
175
|
+
streamId: string;
|
|
176
|
+
sequence: number;
|
|
177
|
+
timestamp: string;
|
|
178
|
+
type: string;
|
|
179
|
+
actorId: string;
|
|
180
|
+
idempotencyKey?: string;
|
|
181
|
+
payload: Record<string, XenoJsonValue>;
|
|
182
|
+
previousHash: string | null;
|
|
183
|
+
hash: string;
|
|
184
|
+
}
|
|
185
|
+
interface XenoHostedReplayCursor {
|
|
186
|
+
streamId: string;
|
|
187
|
+
afterSequence: number;
|
|
188
|
+
lastHash?: string;
|
|
189
|
+
}
|
|
190
|
+
interface XenoHostedReplayPage {
|
|
191
|
+
schemaVersion: typeof XENO_HOSTED_EVENT_SCHEMA_VERSION;
|
|
192
|
+
streamId: string;
|
|
193
|
+
events: XenoHostedEventRecord[];
|
|
194
|
+
cursor: XenoHostedReplayCursor;
|
|
195
|
+
hasMore: boolean;
|
|
196
|
+
}
|
|
197
|
+
type XenoHostedTriggerKind = "api" | "schedule" | "github.issue" | "github.pull_request" | "github.comment" | "gitlab.issue" | "gitlab.merge_request" | "gitlab.note" | "slack.message" | "teams.message" | "linear.issue" | "jira.issue" | "jira.comment";
|
|
198
|
+
interface XenoHostedTriggerDefinition {
|
|
199
|
+
schemaVersion: typeof XENO_HOSTED_TRIGGER_SCHEMA_VERSION;
|
|
200
|
+
kind: "xeno-hosted-trigger";
|
|
201
|
+
triggerId: string;
|
|
202
|
+
workspaceId: string;
|
|
203
|
+
name: string;
|
|
204
|
+
enabled: boolean;
|
|
205
|
+
source: {
|
|
206
|
+
kind: XenoHostedTriggerKind;
|
|
207
|
+
installationRef?: string;
|
|
208
|
+
channelRef?: string;
|
|
209
|
+
schedule?: string;
|
|
210
|
+
filters: Record<string, string[]>;
|
|
211
|
+
};
|
|
212
|
+
environment: {
|
|
213
|
+
environmentId: string;
|
|
214
|
+
revision: number;
|
|
215
|
+
checksum: string;
|
|
216
|
+
};
|
|
217
|
+
promptTemplate: string;
|
|
218
|
+
agentProfile?: string;
|
|
219
|
+
authority: XenoHostedAuthority;
|
|
220
|
+
budget: XenoHostedBudget;
|
|
221
|
+
createdAt: string;
|
|
222
|
+
createdBy: string;
|
|
223
|
+
}
|
|
224
|
+
interface XenoHostedTriggerDelivery {
|
|
225
|
+
schemaVersion: typeof XENO_HOSTED_TRIGGER_SCHEMA_VERSION;
|
|
226
|
+
kind: "xeno-hosted-trigger-delivery";
|
|
227
|
+
deliveryId: string;
|
|
228
|
+
triggerId: string;
|
|
229
|
+
source: XenoHostedTriggerKind;
|
|
230
|
+
externalDeliveryId: string;
|
|
231
|
+
receivedAt: string;
|
|
232
|
+
verifiedAt: string;
|
|
233
|
+
bodySha256: string;
|
|
234
|
+
principal: {
|
|
235
|
+
id: string;
|
|
236
|
+
displayName?: string;
|
|
237
|
+
};
|
|
238
|
+
repository?: {
|
|
239
|
+
provider: string;
|
|
240
|
+
repository: string;
|
|
241
|
+
ref?: string;
|
|
242
|
+
};
|
|
243
|
+
subject: {
|
|
244
|
+
type: string;
|
|
245
|
+
id: string;
|
|
246
|
+
title?: string;
|
|
247
|
+
url?: string;
|
|
248
|
+
};
|
|
249
|
+
message?: string;
|
|
250
|
+
attributes: Record<string, string>;
|
|
251
|
+
idempotencyKey: string;
|
|
252
|
+
}
|
|
253
|
+
interface XenoHostedWebhookVerification {
|
|
254
|
+
valid: boolean;
|
|
255
|
+
source: "github" | "gitlab" | "slack" | "teams" | "linear" | "jira" | "xeno";
|
|
256
|
+
bodySha256: string;
|
|
257
|
+
timestamp?: string;
|
|
258
|
+
error?: "missing-signature" | "invalid-signature" | "stale-timestamp" | "invalid-timestamp";
|
|
259
|
+
}
|
|
260
|
+
declare function createXenoHostedEnvironmentManifest(payload: Omit<XenoHostedEnvironmentManifestPayload, "schemaVersion" | "kind">): XenoHostedEnvironmentManifest;
|
|
261
|
+
declare function verifyXenoHostedEnvironmentManifest(manifest: XenoHostedEnvironmentManifest): {
|
|
262
|
+
valid: boolean;
|
|
263
|
+
errors: string[];
|
|
264
|
+
};
|
|
265
|
+
declare function createXenoHostedEvent(options: {
|
|
266
|
+
streamId: string;
|
|
267
|
+
sequence: number;
|
|
268
|
+
type: string;
|
|
269
|
+
actorId: string;
|
|
270
|
+
payload?: Record<string, XenoJsonValue>;
|
|
271
|
+
previous?: XenoHostedEventRecord;
|
|
272
|
+
idempotencyKey?: string;
|
|
273
|
+
timestamp?: string;
|
|
274
|
+
eventId?: string;
|
|
275
|
+
}): XenoHostedEventRecord;
|
|
276
|
+
declare function verifyXenoHostedEventChain(events: readonly XenoHostedEventRecord[], cursor?: XenoHostedReplayCursor): {
|
|
277
|
+
valid: boolean;
|
|
278
|
+
errors: string[];
|
|
279
|
+
cursor: XenoHostedReplayCursor | null;
|
|
280
|
+
};
|
|
281
|
+
declare function hostedEnvironmentIdentity(manifest: XenoHostedEnvironmentManifest): string;
|
|
282
|
+
declare function deriveHostedIdempotencyKey(...parts: string[]): string;
|
|
283
|
+
type XenoHostedWebhookSource = "github" | "gitlab" | "slack" | "teams" | "linear" | "jira" | "xeno";
|
|
284
|
+
interface VerifyXenoHostedWebhookOptions {
|
|
285
|
+
source: XenoHostedWebhookSource;
|
|
286
|
+
body: Uint8Array | string;
|
|
287
|
+
secret: string;
|
|
288
|
+
signature?: string;
|
|
289
|
+
timestamp?: string;
|
|
290
|
+
now?: Date;
|
|
291
|
+
maxClockSkewMs?: number;
|
|
292
|
+
}
|
|
293
|
+
declare function verifyXenoHostedWebhook(options: VerifyXenoHostedWebhookOptions): XenoHostedWebhookVerification;
|
|
294
|
+
declare const XENO_HOSTED_EXECUTION_ADAPTER_CERTIFICATION_SCHEMA: "xeno.hosted-execution-adapter-certification.v2";
|
|
295
|
+
declare const XENO_HOSTED_EXECUTION_ADAPTER_PROTOCOL_VERSION: 2;
|
|
296
|
+
declare const XENO_HOSTED_EXECUTION_ADAPTER_MAX_CERTIFICATE_LIFETIME_MS: number;
|
|
297
|
+
interface XenoHostedExecutionAdapterCertification {
|
|
298
|
+
schemaVersion: typeof XENO_HOSTED_EXECUTION_ADAPTER_CERTIFICATION_SCHEMA;
|
|
299
|
+
certificationId: string;
|
|
300
|
+
adapter: {
|
|
301
|
+
name: string;
|
|
302
|
+
version: string;
|
|
303
|
+
protocolVersion: typeof XENO_HOSTED_EXECUTION_ADAPTER_PROTOCOL_VERSION;
|
|
304
|
+
executableSha256: string;
|
|
305
|
+
};
|
|
306
|
+
controlPlaneCandidateSha256: string;
|
|
307
|
+
platform: {
|
|
308
|
+
os: NodeJS.Platform;
|
|
309
|
+
architecture: NodeJS.Architecture;
|
|
310
|
+
};
|
|
311
|
+
capabilities: {
|
|
312
|
+
immutableImages: true;
|
|
313
|
+
filesystemIsolation: true;
|
|
314
|
+
networkDefaultDeny: true;
|
|
315
|
+
destinationAllowlist: true;
|
|
316
|
+
secretProjection: true;
|
|
317
|
+
nonRootExecution: true;
|
|
318
|
+
readOnlyRoot: true;
|
|
319
|
+
processTreeCleanup: true;
|
|
320
|
+
resourceLimits: true;
|
|
321
|
+
interactiveControl: true;
|
|
322
|
+
artifactProtocol: true;
|
|
323
|
+
gitResultReporting: true;
|
|
324
|
+
};
|
|
325
|
+
issuedAt: string;
|
|
326
|
+
expiresAt: string;
|
|
327
|
+
reviewer: {
|
|
328
|
+
keyId: string;
|
|
329
|
+
};
|
|
330
|
+
signature: {
|
|
331
|
+
algorithm: "ed25519";
|
|
332
|
+
value: string;
|
|
333
|
+
};
|
|
334
|
+
}
|
|
335
|
+
interface XenoHostedExecutionAdapterVerificationOptions {
|
|
336
|
+
executableSha256: string;
|
|
337
|
+
controlPlaneCandidateSha256: string;
|
|
338
|
+
trustedKeys: Record<string, string>;
|
|
339
|
+
now?: Date;
|
|
340
|
+
platform?: NodeJS.Platform;
|
|
341
|
+
architecture?: NodeJS.Architecture;
|
|
342
|
+
}
|
|
343
|
+
interface XenoVerifiedHostedExecutionAdapterCertification {
|
|
344
|
+
certificationId: string;
|
|
345
|
+
adapterName: string;
|
|
346
|
+
adapterVersion: string;
|
|
347
|
+
protocolVersion: typeof XENO_HOSTED_EXECUTION_ADAPTER_PROTOCOL_VERSION;
|
|
348
|
+
executableSha256: string;
|
|
349
|
+
controlPlaneCandidateSha256: string;
|
|
350
|
+
certificateSha256: string;
|
|
351
|
+
expiresAt: string;
|
|
352
|
+
reviewerKeyId: string;
|
|
353
|
+
}
|
|
354
|
+
declare function xenoHostedExecutionAdapterSigningPayload(certificate: Omit<XenoHostedExecutionAdapterCertification, "signature">): Buffer;
|
|
355
|
+
declare function verifyXenoHostedExecutionAdapterCertification(certificate: XenoHostedExecutionAdapterCertification, options: XenoHostedExecutionAdapterVerificationOptions): XenoVerifiedHostedExecutionAdapterCertification;
|
|
356
|
+
declare const XENO_HOSTED_EXECUTION_PROTOCOL_VERSION: 2;
|
|
357
|
+
declare const XENO_HOSTED_EXECUTION_TOOL_NAMES: readonly [
|
|
358
|
+
"Read",
|
|
359
|
+
"Write",
|
|
360
|
+
"Edit",
|
|
361
|
+
"Glob",
|
|
362
|
+
"Grep",
|
|
363
|
+
"WebFetch"
|
|
364
|
+
];
|
|
365
|
+
interface XenoHostedExecutionSecretValue {
|
|
366
|
+
ref: string;
|
|
367
|
+
target: XenoHostedSecretProjection["target"];
|
|
368
|
+
exposeToChildProcesses: boolean;
|
|
369
|
+
value: string;
|
|
370
|
+
}
|
|
371
|
+
interface XenoHostedExecutionBoundaryReceipt {
|
|
372
|
+
certificationId: string;
|
|
373
|
+
environmentChecksum: string;
|
|
374
|
+
imageDigest: string;
|
|
375
|
+
networkPolicySha256: string;
|
|
376
|
+
secretProjectionSha256: string;
|
|
377
|
+
filesystem: "read" | "workspace-write";
|
|
378
|
+
network: "deny" | "allowlist";
|
|
379
|
+
immutableImage: true;
|
|
380
|
+
readOnlyRoot: true;
|
|
381
|
+
nonRoot: true;
|
|
382
|
+
processTreeCleanup: true;
|
|
383
|
+
resourceLimits: true;
|
|
384
|
+
inferenceGateway: "brokered";
|
|
385
|
+
}
|
|
386
|
+
interface XenoHostedExecutionJob {
|
|
387
|
+
protocolVersion: typeof XENO_HOSTED_EXECUTION_PROTOCOL_VERSION;
|
|
388
|
+
kind: "xeno-hosted-execution-job";
|
|
389
|
+
runId: string;
|
|
390
|
+
userId: string;
|
|
391
|
+
workspaceId: string;
|
|
392
|
+
workspaceHostPath: string;
|
|
393
|
+
prompt: string;
|
|
394
|
+
model: string;
|
|
395
|
+
effort?: string;
|
|
396
|
+
permissionMode: string;
|
|
397
|
+
runScopedToken: string;
|
|
398
|
+
inferenceBaseUrl: string;
|
|
399
|
+
allowedTools: readonly string[];
|
|
400
|
+
environment: XenoHostedEnvironmentManifest;
|
|
401
|
+
authority: XenoHostedAuthority;
|
|
402
|
+
budget: XenoHostedBudget;
|
|
403
|
+
secrets: XenoHostedExecutionSecretValue[];
|
|
404
|
+
expectedBoundary: XenoHostedExecutionBoundaryReceipt;
|
|
405
|
+
}
|
|
406
|
+
declare function createXenoHostedExecutionBoundaryReceipt(options: {
|
|
407
|
+
certificationId: string;
|
|
408
|
+
environment: XenoHostedEnvironmentManifest;
|
|
409
|
+
authority: XenoHostedAuthority;
|
|
410
|
+
}): XenoHostedExecutionBoundaryReceipt;
|
|
411
|
+
declare function verifyXenoHostedExecutionJob(value: unknown): {
|
|
412
|
+
valid: boolean;
|
|
413
|
+
errors: string[];
|
|
414
|
+
};
|
|
415
|
+
declare function assertValidXenoHostedExecutionJob(value: unknown): asserts value is XenoHostedExecutionJob;
|
|
416
|
+
declare const XENO_HOSTED_CONTROL_SCHEMA_VERSION: 1;
|
|
417
|
+
declare const XENO_HOSTED_RESULT_SCHEMA_VERSION: 1;
|
|
418
|
+
type XenoHostedControlAction = {
|
|
419
|
+
type: "message";
|
|
420
|
+
message: string;
|
|
421
|
+
} | {
|
|
422
|
+
type: "approval";
|
|
423
|
+
requestId: string;
|
|
424
|
+
decision: "approved" | "rejected";
|
|
425
|
+
scopeHash: string;
|
|
426
|
+
rationale?: string;
|
|
427
|
+
};
|
|
428
|
+
interface XenoHostedControlCommandPayload {
|
|
429
|
+
schemaVersion: typeof XENO_HOSTED_CONTROL_SCHEMA_VERSION;
|
|
430
|
+
kind: "xeno-hosted-control";
|
|
431
|
+
controlId: string;
|
|
432
|
+
runId: string;
|
|
433
|
+
workspaceId: string;
|
|
434
|
+
actorId: string;
|
|
435
|
+
idempotencyKey: string;
|
|
436
|
+
createdAt: string;
|
|
437
|
+
action: XenoHostedControlAction;
|
|
438
|
+
}
|
|
439
|
+
interface XenoHostedControlCommand extends XenoHostedControlCommandPayload {
|
|
440
|
+
hash: {
|
|
441
|
+
algorithm: "sha256";
|
|
442
|
+
value: string;
|
|
443
|
+
};
|
|
444
|
+
}
|
|
445
|
+
interface XenoHostedControlAcknowledgement {
|
|
446
|
+
controlId: string;
|
|
447
|
+
status: "accepted" | "applied" | "rejected" | "unsupported";
|
|
448
|
+
acknowledgedAt: string;
|
|
449
|
+
reason?: string;
|
|
450
|
+
}
|
|
451
|
+
interface XenoHostedRunResultPayload {
|
|
452
|
+
schemaVersion: typeof XENO_HOSTED_RESULT_SCHEMA_VERSION;
|
|
453
|
+
kind: "xeno-hosted-run-result";
|
|
454
|
+
runId: string;
|
|
455
|
+
workspaceId: string;
|
|
456
|
+
completedAt: string;
|
|
457
|
+
git?: {
|
|
458
|
+
branch?: string;
|
|
459
|
+
baseRef?: string;
|
|
460
|
+
commit?: string;
|
|
461
|
+
};
|
|
462
|
+
pullRequest?: {
|
|
463
|
+
provider: string;
|
|
464
|
+
repository: string;
|
|
465
|
+
number: number;
|
|
466
|
+
url: string;
|
|
467
|
+
};
|
|
468
|
+
artifactIds: string[];
|
|
469
|
+
evidenceArtifactIds: string[];
|
|
470
|
+
}
|
|
471
|
+
interface XenoHostedRunResult extends XenoHostedRunResultPayload {
|
|
472
|
+
hash: {
|
|
473
|
+
algorithm: "sha256";
|
|
474
|
+
value: string;
|
|
475
|
+
};
|
|
476
|
+
}
|
|
477
|
+
declare function createXenoHostedControlCommand(payload: Omit<XenoHostedControlCommandPayload, "schemaVersion" | "kind" | "controlId"> & {
|
|
478
|
+
controlId?: string;
|
|
479
|
+
}): XenoHostedControlCommand;
|
|
480
|
+
declare function verifyXenoHostedControlCommand(command: XenoHostedControlCommand): {
|
|
481
|
+
valid: boolean;
|
|
482
|
+
errors: string[];
|
|
483
|
+
};
|
|
484
|
+
declare function normalizeXenoHostedControlAcknowledgement(value: XenoHostedControlAcknowledgement): XenoHostedControlAcknowledgement;
|
|
485
|
+
declare function createXenoHostedRunResult(payload: Omit<XenoHostedRunResultPayload, "schemaVersion" | "kind">): XenoHostedRunResult;
|
|
486
|
+
declare function verifyXenoHostedRunResult(result: XenoHostedRunResult): {
|
|
487
|
+
valid: boolean;
|
|
488
|
+
errors: string[];
|
|
489
|
+
};
|
|
490
|
+
export { type VerifyXenoHostedWebhookOptions, XENO_HOSTED_CONTROL_SCHEMA_VERSION, XENO_HOSTED_ENVIRONMENT_SCHEMA_VERSION, XENO_HOSTED_EVENT_SCHEMA_VERSION, XENO_HOSTED_EXECUTION_ADAPTER_CERTIFICATION_SCHEMA, XENO_HOSTED_EXECUTION_ADAPTER_MAX_CERTIFICATE_LIFETIME_MS, XENO_HOSTED_EXECUTION_ADAPTER_PROTOCOL_VERSION, XENO_HOSTED_EXECUTION_PROTOCOL_VERSION, XENO_HOSTED_EXECUTION_TOOL_NAMES, XENO_HOSTED_RESULT_SCHEMA_VERSION, XENO_HOSTED_RUN_SCHEMA_VERSION, XENO_HOSTED_TRIGGER_SCHEMA_VERSION, type XenoHostedArchitecture, type XenoHostedAuthority, type XenoHostedBudget, type XenoHostedCacheMount, type XenoHostedControlAcknowledgement, type XenoHostedControlAction, type XenoHostedControlCommand, type XenoHostedControlCommandPayload, type XenoHostedEnvironmentManifest, type XenoHostedEnvironmentManifestPayload, type XenoHostedEventRecord, type XenoHostedExecutionAdapterCertification, type XenoHostedExecutionAdapterVerificationOptions, type XenoHostedExecutionBoundaryReceipt, type XenoHostedExecutionJob, type XenoHostedExecutionSecretValue, type XenoHostedImageReference, type XenoHostedNetworkDestination, type XenoHostedNetworkPolicy, type XenoHostedOs, type XenoHostedQuotaLease, type XenoHostedReplayCursor, type XenoHostedReplayPage, type XenoHostedRepositorySource, type XenoHostedResourceLimits, type XenoHostedRetentionPolicy, type XenoHostedRunRecord, type XenoHostedRunRequest, type XenoHostedRunResult, type XenoHostedRunResultPayload, type XenoHostedRunStatus, type XenoHostedSecretProjection, type XenoHostedSetupStep, type XenoHostedTriggerDefinition, type XenoHostedTriggerDelivery, type XenoHostedTriggerKind, type XenoHostedWebhookSource, type XenoHostedWebhookVerification, type XenoVerifiedHostedExecutionAdapterCertification, assertValidXenoHostedExecutionJob, createXenoHostedControlCommand, createXenoHostedEnvironmentManifest, createXenoHostedEvent, createXenoHostedExecutionBoundaryReceipt, createXenoHostedRunResult, deriveHostedIdempotencyKey, hostedEnvironmentIdentity, normalizeXenoHostedControlAcknowledgement, verifyXenoHostedControlCommand, verifyXenoHostedEnvironmentManifest, verifyXenoHostedEventChain, verifyXenoHostedExecutionAdapterCertification, verifyXenoHostedExecutionJob, verifyXenoHostedRunResult, verifyXenoHostedWebhook, xenoHostedExecutionAdapterSigningPayload };
|