antpath 0.2.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/README.md +54 -40
  2. package/dist/_shared/cleanup-policy.d.ts +8 -0
  3. package/dist/_shared/cleanup-policy.js +24 -0
  4. package/dist/_shared/config.d.ts +47 -0
  5. package/dist/_shared/config.js +150 -0
  6. package/dist/_shared/dev-stack.d.ts +19 -0
  7. package/dist/_shared/dev-stack.js +105 -0
  8. package/dist/_shared/errors.d.ts +8 -0
  9. package/dist/_shared/errors.js +18 -0
  10. package/dist/_shared/http.d.ts +25 -0
  11. package/dist/_shared/http.js +93 -0
  12. package/dist/_shared/index.d.ts +17 -0
  13. package/dist/_shared/index.js +20 -0
  14. package/dist/{providers → _shared}/known-events.d.ts +10 -10
  15. package/dist/{providers → _shared}/known-events.js +9 -9
  16. package/dist/_shared/operations.d.ts +24 -0
  17. package/dist/_shared/operations.js +47 -0
  18. package/dist/_shared/proxy-protocol.d.ts +148 -0
  19. package/dist/_shared/proxy-protocol.js +113 -0
  20. package/dist/_shared/proxy-validation.d.ts +19 -0
  21. package/dist/_shared/proxy-validation.js +51 -0
  22. package/dist/_shared/runtime-types.d.ts +90 -0
  23. package/dist/_shared/runtime-types.js +2 -0
  24. package/dist/{errors.d.ts → _shared/sdk-errors.d.ts} +10 -1
  25. package/dist/{errors.js → _shared/sdk-errors.js} +15 -2
  26. package/dist/{utils/secrets.js → _shared/sdk-secrets.js} +1 -1
  27. package/dist/_shared/secrets.d.ts +7 -0
  28. package/dist/_shared/secrets.js +20 -0
  29. package/dist/_shared/stable.d.ts +16 -0
  30. package/dist/{utils → _shared}/stable.js +14 -0
  31. package/dist/_shared/status.d.ts +8 -0
  32. package/dist/_shared/status.js +46 -0
  33. package/dist/_shared/submission.d.ts +157 -0
  34. package/dist/_shared/submission.js +681 -0
  35. package/dist/{template → _shared/template}/compiler.js +3 -3
  36. package/dist/{template/index.d.ts → _shared/template/helpers.d.ts} +0 -2
  37. package/dist/{template/index.js → _shared/template/helpers.js} +1 -2
  38. package/dist/_shared/template/index.d.ts +4 -0
  39. package/dist/_shared/template/index.js +4 -0
  40. package/dist/_shared/template/mapper.d.ts +11 -0
  41. package/dist/_shared/template/mapper.js +70 -0
  42. package/dist/cli.mjs +1223 -64
  43. package/dist/cli.mjs.sha256 +1 -1
  44. package/dist/client.d.ts +100 -8
  45. package/dist/client.js +193 -30
  46. package/dist/client.js.map +1 -1
  47. package/dist/index.d.ts +16 -10
  48. package/dist/index.js +16 -7
  49. package/dist/index.js.map +1 -1
  50. package/docs/cleanup.md +7 -4
  51. package/docs/credentials.md +10 -12
  52. package/docs/events.md +19 -82
  53. package/docs/outputs.md +15 -4
  54. package/docs/quickstart.md +40 -6
  55. package/docs/release.md +57 -12
  56. package/docs/skills.md +1 -1
  57. package/docs/templates.md +1 -1
  58. package/docs/testing.md +11 -8
  59. package/examples/mcp-static-bearer.ts +12 -9
  60. package/examples/quickstart.ts +6 -6
  61. package/package.json +5 -7
  62. package/dist/credentials.d.ts +0 -3
  63. package/dist/credentials.js +0 -56
  64. package/dist/credentials.js.map +0 -1
  65. package/dist/errors.js.map +0 -1
  66. package/dist/files/downloader.d.ts +0 -3
  67. package/dist/files/downloader.js +0 -43
  68. package/dist/files/downloader.js.map +0 -1
  69. package/dist/platform/client.d.ts +0 -204
  70. package/dist/platform/client.js +0 -203
  71. package/dist/platform/client.js.map +0 -1
  72. package/dist/platform/index.d.ts +0 -1
  73. package/dist/platform/index.js +0 -2
  74. package/dist/platform/index.js.map +0 -1
  75. package/dist/providers/anthropic/provider.d.ts +0 -36
  76. package/dist/providers/anthropic/provider.js +0 -380
  77. package/dist/providers/anthropic/provider.js.map +0 -1
  78. package/dist/providers/known-events.js.map +0 -1
  79. package/dist/providers/types.d.ts +0 -42
  80. package/dist/providers/types.js.map +0 -1
  81. package/dist/run/controller.d.ts +0 -30
  82. package/dist/run/controller.js +0 -314
  83. package/dist/run/controller.js.map +0 -1
  84. package/dist/skills/packager.d.ts +0 -11
  85. package/dist/skills/packager.js +0 -76
  86. package/dist/skills/packager.js.map +0 -1
  87. package/dist/template/compiler.js.map +0 -1
  88. package/dist/template/index.js.map +0 -1
  89. package/dist/template/types.js +0 -2
  90. package/dist/template/types.js.map +0 -1
  91. package/dist/types.d.ts +0 -149
  92. package/dist/types.js +0 -2
  93. package/dist/types.js.map +0 -1
  94. package/dist/utils/events.d.ts +0 -27
  95. package/dist/utils/events.js +0 -120
  96. package/dist/utils/events.js.map +0 -1
  97. package/dist/utils/paths.d.ts +0 -3
  98. package/dist/utils/paths.js +0 -27
  99. package/dist/utils/paths.js.map +0 -1
  100. package/dist/utils/secrets.js.map +0 -1
  101. package/dist/utils/stable.d.ts +0 -2
  102. package/dist/utils/stable.js.map +0 -1
  103. package/references/architecture-decisions.md +0 -473
  104. package/references/implementation-plan.md +0 -452
  105. package/references/research-sources.md +0 -41
  106. package/references/testing-strategy.md +0 -29
  107. /package/dist/{utils/secrets.d.ts → _shared/sdk-secrets.d.ts} +0 -0
  108. /package/dist/{template → _shared/template}/compiler.d.ts +0 -0
  109. /package/dist/{template → _shared/template}/types.d.ts +0 -0
  110. /package/dist/{providers → _shared/template}/types.js +0 -0
@@ -1,380 +0,0 @@
1
- import { ProviderError } from "../../errors.js";
2
- import { redactSecrets, SecretString } from "../../utils/secrets.js";
3
- const DEFAULT_BASE_URL = "https://api.anthropic.com";
4
- const ANTHROPIC_VERSION = "2023-06-01";
5
- const BETA_HEADER = "managed-agents-2026-04-01,files-api-2025-04-14,skills-2025-10-02";
6
- const DEFAULT_RETRY_OPTIONS = {
7
- maxAttempts: 3,
8
- baseDelayMs: 100,
9
- maxDelayMs: 1_000
10
- };
11
- export class AnthropicManagedAgentsProvider {
12
- #apiKey;
13
- #baseUrl;
14
- #fetch;
15
- #retry;
16
- constructor(options) {
17
- this.#apiKey = options.apiKey instanceof SecretString ? options.apiKey : new SecretString(options.apiKey, "anthropicApiKey");
18
- this.#baseUrl = options.baseUrl ?? DEFAULT_BASE_URL;
19
- this.#fetch = options.fetch ?? fetch;
20
- this.#retry = normalizeRetryOptions(options.retry);
21
- }
22
- async createEnvironment(template) {
23
- const body = {
24
- name: `${template.name}-${template.hash.slice(0, 8)}`,
25
- config: {
26
- type: "cloud",
27
- networking: mapNetworking(template),
28
- packages: template.environment.packages ? { type: "packages", ...template.environment.packages } : undefined
29
- },
30
- metadata: template.metadata
31
- };
32
- const response = await this.#json("/v1/environments", { method: "POST", body });
33
- return response.id;
34
- }
35
- async uploadFile(input) {
36
- const form = new FormData();
37
- form.append("file", new Blob([input.data], { type: input.mimeType ?? "application/octet-stream" }), input.filename);
38
- const response = await this.#request("/v1/files", {
39
- method: "POST",
40
- body: form
41
- });
42
- return response.id;
43
- }
44
- async createAgent(template, providerSkillRefs) {
45
- const tools = [
46
- {
47
- type: "agent_toolset_20260401",
48
- default_config: {
49
- enabled: true,
50
- permission_policy: { type: "always_allow" }
51
- }
52
- },
53
- ...template.mcpServers.map((server) => ({
54
- type: "mcp_toolset",
55
- mcp_server_name: server.name,
56
- default_config: {
57
- enabled: server.tools?.allow ? false : true,
58
- permission_policy: { type: "always_allow" }
59
- },
60
- configs: [
61
- ...(server.tools?.allow ?? []).map((name) => ({
62
- name,
63
- enabled: true,
64
- permission_policy: { type: "always_allow" }
65
- })),
66
- ...(server.tools?.deny ?? []).map((name) => ({
67
- name,
68
- enabled: false,
69
- permission_policy: { type: "always_allow" }
70
- }))
71
- ]
72
- }))
73
- ];
74
- const response = await this.#json("/v1/agents", {
75
- method: "POST",
76
- body: {
77
- name: `${template.name}-${template.hash.slice(0, 8)}`,
78
- model: template.model,
79
- system: template.system,
80
- mcp_servers: template.mcpServers.map((server) => ({ type: "url", name: server.name, url: server.url })),
81
- skills: providerSkillRefs,
82
- tools,
83
- metadata: template.metadata
84
- }
85
- });
86
- return response.id;
87
- }
88
- async createVault(displayName, metadata) {
89
- const response = await this.#json("/v1/vaults", {
90
- method: "POST",
91
- body: { display_name: displayName, metadata }
92
- });
93
- return response.id;
94
- }
95
- async createCredential(vaultId, serverUrl, credential) {
96
- const auth = credential.type === "static_bearer"
97
- ? { type: "static_bearer", mcp_server_url: serverUrl, token: credential.token }
98
- : { type: "mcp_oauth", mcp_server_url: serverUrl, access_token: credential.accessToken, expires_at: credential.expiresAt };
99
- const response = await this.#json(`/v1/vaults/${vaultId}/credentials`, {
100
- method: "POST",
101
- body: { auth }
102
- });
103
- return { id: response.id };
104
- }
105
- async createSession(agentId, environmentId, vaultIds, resources) {
106
- const response = await this.#json("/v1/sessions", {
107
- method: "POST",
108
- body: {
109
- agent: agentId,
110
- environment_id: environmentId,
111
- vault_ids: vaultIds,
112
- resources: resources.map((resource) => ({
113
- type: "file",
114
- file_id: resource.fileId,
115
- mount_path: resource.mountPath
116
- }))
117
- }
118
- });
119
- return response.id;
120
- }
121
- async sendUserMessage(sessionId, message) {
122
- await this.#json(`/v1/sessions/${sessionId}/events?beta=true`, {
123
- method: "POST",
124
- body: {
125
- events: [
126
- {
127
- type: "user.message",
128
- content: [{ type: "text", text: message }]
129
- }
130
- ]
131
- }
132
- });
133
- }
134
- async *streamEvents(sessionId, signal) {
135
- const init = {
136
- method: "GET",
137
- headers: { Accept: "text/event-stream" }
138
- };
139
- if (signal)
140
- init.signal = signal;
141
- const response = await this.#raw(`/v1/sessions/${sessionId}/events/stream?beta=true`, init);
142
- if (!response.body) {
143
- throw new ProviderError("Provider returned an empty event stream");
144
- }
145
- const reader = response.body.getReader();
146
- const decoder = new TextDecoder();
147
- let buffer = "";
148
- let data = "";
149
- while (true) {
150
- const { done, value } = await reader.read();
151
- if (done) {
152
- break;
153
- }
154
- buffer += decoder.decode(value, { stream: true });
155
- const lines = buffer.split(/\r?\n/);
156
- buffer = lines.pop() ?? "";
157
- for (const line of lines) {
158
- if (line.startsWith("data:")) {
159
- data += `${line.slice(5).trim()}\n`;
160
- }
161
- if (line === "" && data.trim()) {
162
- yield JSON.parse(data);
163
- data = "";
164
- }
165
- }
166
- }
167
- }
168
- async getSession(sessionId) {
169
- const session = await this.#json(`/v1/sessions/${sessionId}`, { method: "GET" });
170
- const output = {};
171
- if (typeof session.status === "string")
172
- output.status = session.status;
173
- output.usage = mapUsage(session.usage);
174
- return output;
175
- }
176
- async listFiles(sessionId) {
177
- const response = await this.#json(`/v1/files?scope_id=${encodeURIComponent(sessionId)}`, { method: "GET" });
178
- return (response.data ?? []).map((file) => {
179
- const mapped = {
180
- id: String(file.id),
181
- filename: String(file.filename ?? file.id)
182
- };
183
- if (typeof file.size_bytes === "number")
184
- mapped.sizeBytes = file.size_bytes;
185
- if (typeof file.downloadable === "boolean")
186
- mapped.downloadable = file.downloadable;
187
- return mapped;
188
- });
189
- }
190
- async downloadFile(fileId) {
191
- const response = await this.#raw(`/v1/files/${fileId}/content`, { method: "GET" });
192
- return new Uint8Array(await response.arrayBuffer());
193
- }
194
- async terminateSession(sessionId) {
195
- await this.#json(`/v1/sessions/${sessionId}/events`, {
196
- method: "POST",
197
- body: { events: [{ type: "user.interrupt" }] }
198
- });
199
- }
200
- async cleanup(ids, policy = "manual") {
201
- if (policy === "manual") {
202
- return { state: "pending", operations: [{ operation: "manual_cleanup", status: "skipped" }] };
203
- }
204
- const operations = [];
205
- const attempt = async (operation, path, method = "DELETE") => {
206
- try {
207
- await this.#json(path, { method });
208
- operations.push({ operation, status: "success" });
209
- }
210
- catch (error) {
211
- operations.push({ operation, status: "failed", error: error instanceof Error ? error.message : String(error) });
212
- }
213
- };
214
- for (const credentialId of ids.credentialIds) {
215
- if (ids.vaultId) {
216
- await attempt("delete_credential", `/v1/vaults/${ids.vaultId}/credentials/${credentialId}`);
217
- }
218
- }
219
- if (ids.vaultId)
220
- await attempt("delete_vault", `/v1/vaults/${ids.vaultId}`);
221
- if (policy !== "credentials-only" && ids.sessionId)
222
- await attempt("delete_session", `/v1/sessions/${ids.sessionId}`);
223
- if (policy !== "credentials-only" && ids.agentId)
224
- await attempt("archive_agent", `/v1/agents/${ids.agentId}/archive`, "POST");
225
- if (policy !== "credentials-only" && ids.environmentId)
226
- await attempt("archive_environment", `/v1/environments/${ids.environmentId}/archive`, "POST");
227
- return {
228
- operations,
229
- state: operations.some((operation) => operation.status === "failed") ? "partial" : "cleaned_up"
230
- };
231
- }
232
- async #json(path, init) {
233
- const requestInit = {
234
- method: init.method,
235
- headers: {
236
- "content-type": "application/json",
237
- ...init.headers
238
- }
239
- };
240
- if (init.body !== undefined)
241
- requestInit.body = JSON.stringify(init.body);
242
- if (init.signal)
243
- requestInit.signal = init.signal;
244
- return this.#request(path, requestInit);
245
- }
246
- async #request(path, init) {
247
- const response = await this.#raw(path, init);
248
- if (response.status === 204) {
249
- return undefined;
250
- }
251
- return await response.json();
252
- }
253
- async #raw(path, init) {
254
- const method = normalizeMethod(init.method);
255
- const retryable = isRetryableMethod(method);
256
- let attempt = 0;
257
- while (true) {
258
- attempt += 1;
259
- try {
260
- const response = await this.#fetch(`${this.#baseUrl}${path}`, {
261
- ...init,
262
- method,
263
- headers: {
264
- "x-api-key": this.#apiKey.unwrap(),
265
- "anthropic-version": ANTHROPIC_VERSION,
266
- "anthropic-beta": BETA_HEADER,
267
- ...init.headers
268
- }
269
- });
270
- if (response.ok) {
271
- return response;
272
- }
273
- if (retryable && isRetryableStatus(response.status) && attempt < this.#retry.maxAttempts) {
274
- await discardBody(response);
275
- await delayBeforeRetry(attempt, this.#retry, init.signal);
276
- continue;
277
- }
278
- const body = await response.text().catch(() => "");
279
- throw new ProviderError(`Anthropic API request failed: ${response.status} ${redactSecrets(body)}`, { status: response.status });
280
- }
281
- catch (error) {
282
- if (error instanceof ProviderError || isAbortError(error) || !retryable || attempt >= this.#retry.maxAttempts) {
283
- if (error instanceof ProviderError) {
284
- throw error;
285
- }
286
- throw new ProviderError(`Anthropic API request failed before response: ${redactSecrets(errorMessage(error))}`);
287
- }
288
- await delayBeforeRetry(attempt, this.#retry, init.signal);
289
- }
290
- }
291
- }
292
- }
293
- function normalizeRetryOptions(options) {
294
- return {
295
- maxAttempts: Math.max(1, Math.floor(options?.maxAttempts ?? DEFAULT_RETRY_OPTIONS.maxAttempts)),
296
- baseDelayMs: Math.max(0, options?.baseDelayMs ?? DEFAULT_RETRY_OPTIONS.baseDelayMs),
297
- maxDelayMs: Math.max(0, options?.maxDelayMs ?? DEFAULT_RETRY_OPTIONS.maxDelayMs)
298
- };
299
- }
300
- function normalizeMethod(method) {
301
- return (method ?? "GET").toUpperCase();
302
- }
303
- function isRetryableMethod(method) {
304
- return method === "GET" || method === "HEAD" || method === "DELETE";
305
- }
306
- function isRetryableStatus(status) {
307
- return status === 408 || status === 429 || status >= 500;
308
- }
309
- async function discardBody(response) {
310
- await response.body?.cancel().catch(() => undefined);
311
- }
312
- async function delayBeforeRetry(attempt, options, signal) {
313
- const delayMs = Math.min(options.maxDelayMs, options.baseDelayMs * 2 ** Math.max(0, attempt - 1));
314
- if (delayMs === 0) {
315
- throwIfAborted(signal);
316
- return;
317
- }
318
- throwIfAborted(signal);
319
- await new Promise((resolve, reject) => {
320
- const timeout = setTimeout(resolve, delayMs);
321
- signal?.addEventListener("abort", () => {
322
- clearTimeout(timeout);
323
- reject(abortError(signal));
324
- }, { once: true });
325
- });
326
- }
327
- function throwIfAborted(signal) {
328
- if (signal?.aborted) {
329
- throw abortError(signal);
330
- }
331
- }
332
- function abortError(signal) {
333
- return signal.reason instanceof Error ? signal.reason : new Error("Request aborted");
334
- }
335
- function isAbortError(error) {
336
- return error instanceof Error && (error.name === "AbortError" || error.message === "Request aborted");
337
- }
338
- function errorMessage(error) {
339
- return error instanceof Error ? error.message : String(error);
340
- }
341
- function mapNetworking(template) {
342
- const network = template.environment.network ?? "restricted";
343
- if (network === "unrestricted") {
344
- return { type: "unrestricted" };
345
- }
346
- if (network === "restricted") {
347
- return { type: "limited", allow_mcp_servers: true, allow_package_managers: false, allowed_hosts: [] };
348
- }
349
- return {
350
- type: "limited",
351
- allow_mcp_servers: network.allowMcpServers ?? true,
352
- allow_package_managers: network.allowPackageManagers ?? false,
353
- allowed_hosts: network.allowedHosts ?? []
354
- };
355
- }
356
- function mapUsage(input) {
357
- if (!input || typeof input !== "object") {
358
- return undefined;
359
- }
360
- const usage = input;
361
- const inputTokens = typeof usage.input_tokens === "number" ? usage.input_tokens : undefined;
362
- const outputTokens = typeof usage.output_tokens === "number" ? usage.output_tokens : undefined;
363
- const cacheReadInputTokens = typeof usage.cache_read_input_tokens === "number" ? usage.cache_read_input_tokens : undefined;
364
- const cacheCreationInputTokens = typeof usage.cache_creation_input_tokens === "number" ? usage.cache_creation_input_tokens : undefined;
365
- const summary = {
366
- totalTokens: [inputTokens, outputTokens, cacheReadInputTokens, cacheCreationInputTokens]
367
- .filter((value) => typeof value === "number")
368
- .reduce((sum, value) => sum + value, 0)
369
- };
370
- if (inputTokens !== undefined)
371
- summary.inputTokens = inputTokens;
372
- if (outputTokens !== undefined)
373
- summary.outputTokens = outputTokens;
374
- if (cacheReadInputTokens !== undefined)
375
- summary.cacheReadInputTokens = cacheReadInputTokens;
376
- if (cacheCreationInputTokens !== undefined)
377
- summary.cacheCreationInputTokens = cacheCreationInputTokens;
378
- return summary;
379
- }
380
- //# sourceMappingURL=provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/providers/anthropic/provider.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"known-events.js","sourceRoot":"","sources":["../../src/providers/known-events.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AAEH,+DAA+D;AAE/D,MAAM,UAAU,YAAY,CAA0B,KAAQ;IAC5D,OAAO,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,WAAW,CAA0B,KAAQ;IAC3D,OAAO,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,cAAc,CAA0B,KAAQ;IAC9D,OAAO,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,WAAW,CAA0B,KAAQ;IAC3D,OAAO,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,gBAAgB;AAEhB,MAAM,UAAU,cAAc,CAA0B,KAAQ;IAC9D,OAAO,KAAK,CAAC,IAAI,KAAK,eAAe,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,eAAe,CAA0B,KAAQ;IAC/D,OAAO,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,cAAc,CAA0B,KAAQ;IAC9D,OAAO,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAA0B,KAAQ;IACjE,OAAO,KAAK,CAAC,IAAI,KAAK,mBAAmB,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAA0B,KAAQ;IACjE,OAAO,KAAK,CAAC,IAAI,KAAK,oBAAoB,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAA0B,KAAQ;IACpE,OAAO,KAAK,CAAC,IAAI,KAAK,uBAAuB,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAA0B,KAAQ;IACpE,OAAO,KAAK,CAAC,IAAI,KAAK,uBAAuB,CAAC;AAChD,CAAC;AAED,eAAe;AAEf,MAAM,UAAU,aAAa,CAA0B,KAAQ;IAC7D,OAAO,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC;AACvC,CAAC;AAED,kBAAkB;AAElB,MAAM,UAAU,sBAAsB,CAA0B,KAAQ;IACtE,OAAO,KAAK,CAAC,IAAI,KAAK,wBAAwB,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAA0B,KAAQ;IACnE,OAAO,KAAK,CAAC,IAAI,KAAK,qBAAqB,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,0BAA0B,CAA0B,KAAQ;IAC1E,OAAO,KAAK,CAAC,IAAI,KAAK,4BAA4B,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,yBAAyB,CAA0B,KAAQ;IACzE,OAAO,KAAK,CAAC,IAAI,KAAK,2BAA2B,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,cAAc,CAA0B,KAAQ;IAC9D,OAAO,KAAK,CAAC,IAAI,KAAK,eAAe,CAAC;AACxC,CAAC"}
@@ -1,42 +0,0 @@
1
- import type { CleanupResult, CredentialInput, ProviderEvent, ProviderFile, ProviderResourceIds, UsageSummary } from "../types.js";
2
- import type { ResolvedTemplate } from "../template/compiler.js";
3
- export interface UploadFileInput {
4
- filename: string;
5
- data: Uint8Array;
6
- mimeType?: string | undefined;
7
- }
8
- export interface SessionResourceInput {
9
- type: "file";
10
- fileId: string;
11
- mountPath?: string | undefined;
12
- }
13
- export interface CreatedCredential {
14
- id: string;
15
- }
16
- export interface ManagedAgentProvider {
17
- createEnvironment(template: ResolvedTemplate): Promise<string>;
18
- uploadFile(input: UploadFileInput): Promise<string>;
19
- createAgent(template: ResolvedTemplate, providerSkillRefs: ProviderSkillRef[]): Promise<string>;
20
- createVault(displayName: string, metadata?: Record<string, string>): Promise<string>;
21
- createCredential(vaultId: string, serverUrl: string, credential: CredentialInput): Promise<CreatedCredential>;
22
- createSession(agentId: string, environmentId: string, vaultIds: string[], resources: SessionResourceInput[]): Promise<string>;
23
- sendUserMessage(sessionId: string, message: string): Promise<void>;
24
- streamEvents(sessionId: string, signal?: AbortSignal): AsyncIterable<ProviderEvent>;
25
- getSession(sessionId: string): Promise<{
26
- status?: string | undefined;
27
- usage?: UsageSummary | undefined;
28
- }>;
29
- listFiles(sessionId: string): Promise<ProviderFile[]>;
30
- downloadFile(fileId: string): Promise<Uint8Array>;
31
- terminateSession(sessionId: string, reason?: string): Promise<void>;
32
- cleanup(ids: ProviderResourceIds, policy?: string): Promise<CleanupResult>;
33
- }
34
- export type ProviderSkillRef = {
35
- type: "anthropic";
36
- skill_id: string;
37
- version?: string | undefined;
38
- } | {
39
- type: "custom";
40
- skill_id: string;
41
- version?: string | undefined;
42
- };
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":""}
@@ -1,30 +0,0 @@
1
- import type { ManagedAgentProvider } from "../providers/types.js";
2
- import type { ResolvedTemplate } from "../template/compiler.js";
3
- import type { CleanupPolicy, CleanupResult, CredentialInput, DownloadOutputsOptions, DownloadOutputsResult, Logger, ProviderFile, RunEvent, RunEventHandler, RunResult, RunStatus, SessionResourceUpload, UsageSummary } from "../types.js";
4
- export interface RunControllerOptions {
5
- provider: ManagedAgentProvider;
6
- template: ResolvedTemplate;
7
- credentials: Record<string, CredentialInput>;
8
- cleanupPolicy: CleanupPolicy;
9
- timeoutMs?: number | undefined;
10
- signal?: AbortSignal | undefined;
11
- logger?: Logger | undefined;
12
- onEvent?: RunEventHandler | undefined;
13
- onEventAbortOnError?: boolean | undefined;
14
- sessionResources?: readonly SessionResourceUpload[] | undefined;
15
- }
16
- export declare class RunController {
17
- #private;
18
- constructor(options: RunControllerOptions);
19
- start(): Promise<void>;
20
- status(): RunStatus;
21
- streamEvents(): AsyncIterable<RunEvent>;
22
- wait(): Promise<RunResult>;
23
- listFiles(): Promise<ProviderFile[]>;
24
- downloadFile(fileId: string, destination: string): Promise<void>;
25
- downloadOutputs(options: DownloadOutputsOptions | string): Promise<DownloadOutputsResult>;
26
- cleanup(policy?: CleanupPolicy): Promise<CleanupResult>;
27
- terminate(reason?: string): Promise<void>;
28
- usage(): Promise<UsageSummary | undefined>;
29
- result(): Promise<RunResult>;
30
- }