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 +1 @@
1
- e4adb3ee5b4053a78a8ddaf9cd653fbaf6a0ddf98432411308964c8fd40909f8 cli.mjs
1
+ a602b27fb33ed22e122096a17bbe0a1f132a6981e55db03ace316dddc048eac2 cli.mjs
package/dist/client.d.ts CHANGED
@@ -1,14 +1,106 @@
1
- import type { ManagedAgentProvider } from "./providers/types.js";
2
- import type { TemplateDefinition } from "./template/types.js";
3
- import type { CleanupPolicy, RunHandle, RunOptions } from "./types.js";
4
- import { SecretString } from "./utils/secrets.js";
1
+ import { type FetchLike, type Output, type PlatformInlineSecrets, type PlatformProxyEndpoint, type ResolvedTemplate, type Run, type RunEvent, type SignedOutputLink, type TemplateDefinition, type WhoAmI } from "./_shared/index.js";
5
2
  export interface AntpathClientOptions {
6
- anthropicApiKey?: string | SecretString;
7
- provider?: ManagedAgentProvider;
8
- cleanupPolicy?: CleanupPolicy;
3
+ /** Workspace-scoped SDK API token. */
4
+ readonly apiToken: string;
5
+ /**
6
+ * Dashboard BFF root, e.g. `https://antpath.example.com`. Optional —
7
+ * defaults to the canonical hosted URL (`https://antpath.ai`).
8
+ * Self-hosted deployments override; the default lives in source so
9
+ * the agent reading the SDK call site can see exactly where the call
10
+ * goes.
11
+ */
12
+ readonly baseUrl?: string;
13
+ /** Optional `fetch` override for testing. */
14
+ readonly fetch?: FetchLike;
9
15
  }
16
+ /**
17
+ * Per-run submission options. `secrets.anthropic.apiKey` is REQUIRED on
18
+ * every call — the dashboard does not store provider credentials on
19
+ * your behalf. Optional `mcpServers`, `skills`, and `proxyEndpointAuth`
20
+ * round out the session-scoped credential bundle.
21
+ */
22
+ export interface RunSubmitOptions {
23
+ readonly variables?: Record<string, string>;
24
+ readonly secrets: PlatformInlineSecrets;
25
+ readonly proxyEndpoints?: readonly PlatformProxyEndpoint[];
26
+ readonly cleanup?: {
27
+ readonly session?: "retain" | "delete";
28
+ };
29
+ readonly idempotencyKey?: string;
30
+ readonly signal?: AbortSignal;
31
+ }
32
+ export interface StreamEventsOptions {
33
+ readonly intervalMs?: number;
34
+ readonly signal?: AbortSignal;
35
+ }
36
+ export interface WaitForRunOptions {
37
+ readonly intervalMs?: number;
38
+ readonly timeoutMs?: number;
39
+ readonly signal?: AbortSignal;
40
+ }
41
+ /**
42
+ * Lightweight reference to a submitted run. All read-back operations
43
+ * delegate to the same `AntpathClient` and the same operations module
44
+ * the CLI uses, so SDK and CLI never drift.
45
+ */
46
+ export declare class RunRef {
47
+ #private;
48
+ readonly runId: string;
49
+ constructor(client: AntpathClient, runId: string);
50
+ get(): Promise<Run>;
51
+ events(): Promise<readonly RunEvent[]>;
52
+ stream(options?: StreamEventsOptions): AsyncIterable<RunEvent>;
53
+ wait(options?: WaitForRunOptions): Promise<Run>;
54
+ outputs(): Promise<readonly Output[]>;
55
+ cancel(): Promise<void>;
56
+ delete(): Promise<void>;
57
+ }
58
+ /**
59
+ * Unified user-facing client for the antpath platform. The same class
60
+ * powers the published `antpath` SDK and (under the hood) every host-side
61
+ * subcommand of the in-container `antpath` CLI. All operations talk to
62
+ * the dashboard BFF and operate on durable run records.
63
+ *
64
+ * The SDK never asks the caller for a workspace id — workspace identity
65
+ * is derived server-side from the API token on every request. Use
66
+ * `client.whoami()` if you want to introspect which workspace the
67
+ * token resolves to.
68
+ */
10
69
  export declare class AntpathClient {
11
70
  #private;
12
71
  constructor(options: AntpathClientOptions);
13
- run(template: TemplateDefinition, options?: RunOptions): Promise<RunHandle>;
72
+ /**
73
+ * Submit a run and wait for it to reach a terminal state. Returns the
74
+ * final `Run` record. For long-running flows, prefer `submitRun` +
75
+ * `streamEvents` + `waitForRun`.
76
+ */
77
+ run(template: TemplateDefinition, options: RunSubmitOptions): Promise<Run>;
78
+ /**
79
+ * Submit a run and return a `RunRef` immediately. Use the ref to
80
+ * stream events, fetch outputs, cancel, or delete the run.
81
+ */
82
+ submitRun(template: TemplateDefinition, options: RunSubmitOptions): Promise<RunRef>;
83
+ /**
84
+ * Same as `submitRun` but accepts an already-compiled `ResolvedTemplate`.
85
+ * Useful when consuming a `.json` template directly.
86
+ */
87
+ submitResolvedRun(template: ResolvedTemplate, options: RunSubmitOptions): Promise<RunRef>;
88
+ getRun(runId: string): Promise<Run>;
89
+ listEvents(runId: string): Promise<readonly RunEvent[]>;
90
+ /**
91
+ * Poll the events endpoint and yield new events as they arrive. Stops
92
+ * when the run reaches a terminal state, when the signal is aborted,
93
+ * or when the caller breaks out of the iterator.
94
+ */
95
+ streamEvents(runId: string, options?: StreamEventsOptions): AsyncIterable<RunEvent>;
96
+ /**
97
+ * Poll the run record until it reaches a terminal status (succeeded,
98
+ * failed, terminated). Throws if `timeoutMs` elapses first.
99
+ */
100
+ waitForRun(runId: string, options?: WaitForRunOptions): Promise<Run>;
101
+ listOutputs(runId: string): Promise<readonly Output[]>;
102
+ createOutputLink(runId: string, outputId: string): Promise<SignedOutputLink>;
103
+ cancelRun(runId: string): Promise<void>;
104
+ deleteRun(runId: string): Promise<void>;
105
+ whoami(): Promise<WhoAmI>;
14
106
  }
package/dist/client.js CHANGED
@@ -1,39 +1,202 @@
1
- import { validateCredentials } from "./credentials.js";
2
- import { AnthropicManagedAgentsProvider } from "./providers/anthropic/provider.js";
3
- import { RunController } from "./run/controller.js";
4
- import { compileTemplate } from "./template/compiler.js";
1
+ import { HttpClient, operations, toPlatformSubmissionTemplate, validateProxyAuth, compileTemplate } from "./_shared/index.js";
2
+ /**
3
+ * Lightweight reference to a submitted run. All read-back operations
4
+ * delegate to the same `AntpathClient` and the same operations module
5
+ * the CLI uses, so SDK and CLI never drift.
6
+ */
7
+ export class RunRef {
8
+ runId;
9
+ #client;
10
+ constructor(client, runId) {
11
+ this.#client = client;
12
+ this.runId = runId;
13
+ }
14
+ get() {
15
+ return this.#client.getRun(this.runId);
16
+ }
17
+ events() {
18
+ return this.#client.listEvents(this.runId);
19
+ }
20
+ stream(options) {
21
+ return this.#client.streamEvents(this.runId, options);
22
+ }
23
+ wait(options) {
24
+ return this.#client.waitForRun(this.runId, options);
25
+ }
26
+ outputs() {
27
+ return this.#client.listOutputs(this.runId);
28
+ }
29
+ cancel() {
30
+ return this.#client.cancelRun(this.runId);
31
+ }
32
+ delete() {
33
+ return this.#client.deleteRun(this.runId);
34
+ }
35
+ }
36
+ /**
37
+ * Unified user-facing client for the antpath platform. The same class
38
+ * powers the published `antpath` SDK and (under the hood) every host-side
39
+ * subcommand of the in-container `antpath` CLI. All operations talk to
40
+ * the dashboard BFF and operate on durable run records.
41
+ *
42
+ * The SDK never asks the caller for a workspace id — workspace identity
43
+ * is derived server-side from the API token on every request. Use
44
+ * `client.whoami()` if you want to introspect which workspace the
45
+ * token resolves to.
46
+ */
5
47
  export class AntpathClient {
6
- #provider;
7
- #cleanupPolicy;
48
+ #http;
8
49
  constructor(options) {
9
- if (options.provider) {
10
- this.#provider = options.provider;
50
+ if (!options.apiToken) {
51
+ throw new Error("AntpathClient: apiToken is required");
11
52
  }
12
- else if (options.anthropicApiKey) {
13
- this.#provider = new AnthropicManagedAgentsProvider({ apiKey: options.anthropicApiKey });
53
+ this.#http = new HttpClient({
54
+ ...(options.baseUrl ? { baseUrl: options.baseUrl } : {}),
55
+ apiToken: options.apiToken,
56
+ ...(options.fetch ? { fetch: options.fetch } : {})
57
+ });
58
+ }
59
+ /**
60
+ * Submit a run and wait for it to reach a terminal state. Returns the
61
+ * final `Run` record. For long-running flows, prefer `submitRun` +
62
+ * `streamEvents` + `waitForRun`.
63
+ */
64
+ async run(template, options) {
65
+ const ref = await this.submitRun(template, options);
66
+ return ref.wait(options.signal ? { signal: options.signal } : {});
67
+ }
68
+ /**
69
+ * Submit a run and return a `RunRef` immediately. Use the ref to
70
+ * stream events, fetch outputs, cancel, or delete the run.
71
+ */
72
+ async submitRun(template, options) {
73
+ const resolved = compileTemplate(template, options.variables ?? {});
74
+ return this.submitResolvedRun(resolved, options);
75
+ }
76
+ /**
77
+ * Same as `submitRun` but accepts an already-compiled `ResolvedTemplate`.
78
+ * Useful when consuming a `.json` template directly.
79
+ */
80
+ async submitResolvedRun(template, options) {
81
+ if (!options.secrets || !options.secrets.anthropic?.apiKey) {
82
+ throw new Error("AntpathClient.submitRun: secrets.anthropic.apiKey is required");
14
83
  }
15
- else {
16
- throw new Error("AntpathClient requires anthropicApiKey or provider");
84
+ if (options.proxyEndpoints && options.proxyEndpoints.length > 0) {
85
+ validateProxyAuth(options.proxyEndpoints, options.secrets.proxyEndpointAuth);
17
86
  }
18
- this.#cleanupPolicy = options.cleanupPolicy ?? "manual";
87
+ // The BFF derives `workspaceId` from the API token; the SDK never
88
+ // names it. See `references/development-principles.md`
89
+ // (Agent-first surface design, Concrete rule 3).
90
+ const submission = {
91
+ idempotencyKey: options.idempotencyKey ?? generateIdempotencyKey(),
92
+ template: toPlatformSubmissionTemplate(template),
93
+ ...(options.variables ? { variables: options.variables } : {}),
94
+ ...(options.cleanup ? { cleanup: options.cleanup } : {}),
95
+ secrets: options.secrets,
96
+ ...(options.proxyEndpoints && options.proxyEndpoints.length > 0
97
+ ? { proxyEndpoints: options.proxyEndpoints }
98
+ : {})
99
+ };
100
+ const run = await operations.submitRun(this.#http, submission);
101
+ return new RunRef(this, run.id);
19
102
  }
20
- async run(template, options = {}) {
21
- const resolved = compileTemplate(template, options.variables ?? {});
22
- validateCredentials(resolved, options.credentials ?? {});
23
- const controller = new RunController({
24
- provider: this.#provider,
25
- template: resolved,
26
- credentials: options.credentials ?? {},
27
- cleanupPolicy: options.cleanupPolicy ?? this.#cleanupPolicy,
28
- timeoutMs: options.timeoutMs,
29
- signal: options.signal,
30
- logger: options.logger,
31
- onEvent: options.onEvent,
32
- onEventAbortOnError: options.onEventAbortOnError ?? false,
33
- sessionResources: options.sessionResources ?? []
34
- });
35
- await controller.start();
36
- return controller;
103
+ getRun(runId) {
104
+ return operations.getRun(this.#http, runId);
105
+ }
106
+ listEvents(runId) {
107
+ return operations.listRunEvents(this.#http, runId);
108
+ }
109
+ /**
110
+ * Poll the events endpoint and yield new events as they arrive. Stops
111
+ * when the run reaches a terminal state, when the signal is aborted,
112
+ * or when the caller breaks out of the iterator.
113
+ */
114
+ async *streamEvents(runId, options = {}) {
115
+ const intervalMs = options.intervalMs ?? 1_000;
116
+ const signal = options.signal;
117
+ let seenIds = new Set();
118
+ while (!signal?.aborted) {
119
+ const events = await this.listEvents(runId);
120
+ for (const event of events) {
121
+ if (!seenIds.has(event.id)) {
122
+ seenIds.add(event.id);
123
+ yield event;
124
+ }
125
+ }
126
+ const run = await this.getRun(runId);
127
+ if (isTerminal(run.status))
128
+ return;
129
+ await sleep(intervalMs, signal);
130
+ }
131
+ }
132
+ /**
133
+ * Poll the run record until it reaches a terminal status (succeeded,
134
+ * failed, terminated). Throws if `timeoutMs` elapses first.
135
+ */
136
+ async waitForRun(runId, options = {}) {
137
+ const intervalMs = options.intervalMs ?? 1_500;
138
+ const timeoutMs = options.timeoutMs;
139
+ const signal = options.signal;
140
+ const deadline = typeof timeoutMs === "number" ? Date.now() + timeoutMs : Number.POSITIVE_INFINITY;
141
+ while (!signal?.aborted) {
142
+ const run = await this.getRun(runId);
143
+ if (isTerminal(run.status))
144
+ return run;
145
+ if (Date.now() >= deadline) {
146
+ throw new Error(`AntpathClient.waitForRun: timeout after ${timeoutMs}ms`);
147
+ }
148
+ await sleep(intervalMs, signal);
149
+ }
150
+ throw new Error("AntpathClient.waitForRun: aborted");
151
+ }
152
+ listOutputs(runId) {
153
+ return operations.listOutputs(this.#http, runId);
154
+ }
155
+ createOutputLink(runId, outputId) {
156
+ return operations.createOutputLink(this.#http, runId, outputId);
37
157
  }
158
+ cancelRun(runId) {
159
+ return operations.cancelRun(this.#http, runId);
160
+ }
161
+ deleteRun(runId) {
162
+ return operations.deleteRun(this.#http, runId);
163
+ }
164
+ whoami() {
165
+ return operations.whoami(this.#http);
166
+ }
167
+ }
168
+ const TERMINAL_STATUSES = new Set([
169
+ "succeeded",
170
+ "failed",
171
+ "terminated",
172
+ "cancelled",
173
+ "canceled",
174
+ "cleaned_up"
175
+ ]);
176
+ function isTerminal(status) {
177
+ return typeof status === "string" && TERMINAL_STATUSES.has(status);
178
+ }
179
+ function sleep(ms, signal) {
180
+ return new Promise((resolve, reject) => {
181
+ if (signal?.aborted) {
182
+ reject(new Error("aborted"));
183
+ return;
184
+ }
185
+ const timer = setTimeout(() => {
186
+ signal?.removeEventListener("abort", onAbort);
187
+ resolve();
188
+ }, ms);
189
+ const onAbort = () => {
190
+ clearTimeout(timer);
191
+ reject(new Error("aborted"));
192
+ };
193
+ signal?.addEventListener("abort", onAbort, { once: true });
194
+ });
195
+ }
196
+ function generateIdempotencyKey() {
197
+ const cryptoObj = globalThis.crypto;
198
+ if (cryptoObj?.randomUUID)
199
+ return cryptoObj.randomUUID();
200
+ return `idem-${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`;
38
201
  }
39
202
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAWzD,MAAM,OAAO,aAAa;IACf,SAAS,CAAuB;IAChC,cAAc,CAAgB;IAEvC,YAAY,OAA6B;QACvC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;QACpC,CAAC;aAAM,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YACnC,IAAI,CAAC,SAAS,GAAG,IAAI,8BAA8B,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;QAC3F,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,aAAa,IAAI,QAAQ,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,QAA4B,EAAE,UAAsB,EAAE;QAC9D,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QACpE,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,IAAI,aAAa,CAAC;YACnC,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;YACtC,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC,cAAc;YAC3D,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,KAAK;YACzD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,EAAE;SACjD,CAAC,CAAC;QACH,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;QACzB,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,UAAU,EACV,4BAA4B,EAC5B,iBAAiB,EACjB,eAAe,EAYhB,MAAM,iBAAiB,CAAC;AA2CzB;;;;GAIG;AACH,MAAM,OAAO,MAAM;IACR,KAAK,CAAS;IACd,OAAO,CAAgB;IAEhC,YAAY,MAAqB,EAAE,KAAa;QAC9C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,GAAG;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,CAAC,OAA6B;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,CAAC,OAA2B;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;CACF;AAED;;;;;;;;;;GAUG;AACH,MAAM,OAAO,aAAa;IACf,KAAK,CAAa;IAE3B,YAAY,OAA6B;QACvC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,UAAU,CAAC;YAC1B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnD,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,GAAG,CAAC,QAA4B,EAAE,OAAyB;QAC/D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACpD,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,QAA4B,EAAE,OAAyB;QACrE,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB,CAAC,QAA0B,EAAE,OAAyB;QAC3E,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChE,iBAAiB,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC/E,CAAC;QACD,kEAAkE;QAClE,uDAAuD;QACvD,iDAAiD;QACjD,MAAM,UAAU,GAA+B;YAC7C,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,sBAAsB,EAAE;YAClE,QAAQ,EAAE,4BAA4B,CAAC,QAAQ,CAAC;YAChD,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;gBAC7D,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE;gBAC5C,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC/D,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,UAAU,CAAC,KAAa;QACtB,OAAO,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,CAAC,YAAY,CAAC,KAAa,EAAE,UAA+B,EAAE;QAClE,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC;QAC/C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC5C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACtB,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO;YACnC,MAAM,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU,CAAC,KAAa,EAAE,UAA6B,EAAE;QAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC;QAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,QAAQ,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;QACnG,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO,GAAG,CAAC;YACvC,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,2CAA2C,SAAS,IAAI,CAAC,CAAC;YAC5E,CAAC;YACD,MAAM,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAED,WAAW,CAAC,KAAa;QACvB,OAAO,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB,CAAC,KAAa,EAAE,QAAgB;QAC9C,OAAO,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAClE,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,OAAO,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,OAAO,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,MAAM;QACJ,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;CACF;AAED,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,WAAW;IACX,QAAQ;IACR,YAAY;IACZ,WAAW;IACX,UAAU;IACV,YAAY;CACb,CAAC,CAAC;AAEH,SAAS,UAAU,CAAC,MAA0B;IAC5C,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,KAAK,CAAC,EAAU,EAAE,MAA+B;IACxD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;YAC7B,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9C,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC;QACF,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,sBAAsB;IAC7B,MAAM,SAAS,GAAI,UAAyD,CAAC,MAAM,CAAC;IACpF,IAAI,SAAS,EAAE,UAAU;QAAE,OAAO,SAAS,CAAC,UAAU,EAAE,CAAC;IACzD,OAAO,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAClF,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,10 +1,16 @@
1
- export { AntpathClient } from "./client.js";
2
- export { AntpathPlatformClient, PlatformApiError, validateProxyAuth, buildPlatformAllowedHosts, resetDefaultSecretsDeprecationWarning } from "./platform/index.js";
3
- export type { PlatformEvent, PlatformOutput, PlatformRun, SignedOutputLink, PlatformInlineSecrets, PlatformRunSubmissionRequest, PlatformProxyEndpoint, PlatformProxyEndpointAuth, PlatformProxyAuthShape, PlatformProxyMethod, PlatformProxyResponseMode, AntpathPlatformClientOptions } from "./platform/index.js";
4
- export { AnthropicManagedAgentsProvider } from "./providers/anthropic/provider.js";
5
- export type { ManagedAgentProvider, ProviderSkillRef, SessionResourceInput, UploadFileInput } from "./providers/types.js";
6
- export { isAgentEvent, isAgentCustomToolUse, isAgentMcpToolResult, isAgentMcpToolUse, isAgentMessage, isAgentThinking, isAgentToolResult, isAgentToolUse, isSessionError, isSessionEvent, isSessionStatusIdle, isSessionStatusRescheduled, isSessionStatusRunning, isSessionStatusTerminated, isSpanEvent, isUserEvent, isUserMessage } from "./providers/known-events.js";
7
- export { compileTemplate, defineTemplate, requiredOAuthAccessToken, requiredStaticBearer, string, type EnvironmentDefinition, type ResolvedTemplate, type TemplateDefinition, type TemplateVariableDefinition } from "./template/index.js";
8
- export type { CleanupPolicy, CleanupResult, CredentialInput, DownloadOutputsOptions, DownloadOutputsResult, Logger, OutputManifest, ProviderEvent, ProviderFile, ProviderResourceIds, RunEvent, RunEventHandler, RunHandle, RunOptions, RunResult, RunStatus, SessionResourceUpload, UsageSummary } from "./types.js";
9
- export { SecretString, redactSecrets } from "./utils/secrets.js";
10
- export { AntpathError, CleanupError, CredentialValidationError, ProviderError, RunStateError, TemplateValidationError } from "./errors.js";
1
+ /**
2
+ * Public surface of the `antpath` SDK.
3
+ *
4
+ * ONE class (`AntpathClient`) talks to the dashboard BFF. The CLI exposes
5
+ * the SAME operations via subcommands. Everything else is types, errors,
6
+ * template helpers, and event type guards re-exported from `@antpath/shared`.
7
+ */
8
+ export { AntpathClient, RunRef } from "./client.js";
9
+ export type { AntpathClientOptions, RunSubmitOptions, StreamEventsOptions, WaitForRunOptions } from "./client.js";
10
+ export { AntpathApiError, AntpathError, CleanupError, CredentialValidationError, ProviderError, RunStateError, TemplateValidationError } from "./_shared/index.js";
11
+ export { buildPlatformAllowedHosts, compileTemplate, defineTemplate, requiredOAuthAccessToken, requiredStaticBearer, string, toPlatformSubmissionTemplate, validateProxyAuth } from "./_shared/index.js";
12
+ export type { CredentialRequirement, EnvironmentDefinition, McpServerDefinition, OutputDefinition, ResolvedTemplate, ResolvedMcpServer, SkillDefinition, TemplateDefinition, TemplateVariableDefinition } from "./_shared/index.js";
13
+ export type { Output, ProviderEvent, Run, RunEvent, RunSubmissionInput, SignedOutputLink, UsageSummary, WhoAmI } from "./_shared/index.js";
14
+ export type { PlatformAnthropicSecrets as AnthropicSecrets, PlatformInlineSecrets as InlineSecrets, PlatformMcpServerSecret as McpServerSecret, PlatformProxyEndpoint as ProxyEndpoint, PlatformProxyEndpointAuth as ProxyEndpointAuth, PlatformProxyAuthValue as ProxyAuthValue, PlatformRunSubmissionRequest as RunSubmissionRequest, PlatformSkillReference as SkillReference, PlatformTemplateSubmission as TemplateSubmission, ProxyAuthShape, ProxyMethod, ProxyResponseMode } from "./_shared/index.js";
15
+ export { isAgentCustomToolUse, isAgentEvent, isAgentMcpToolResult, isAgentMcpToolUse, isAgentMessage, isAgentThinking, isAgentToolResult, isAgentToolUse, isSessionError, isSessionEvent, isSessionStatusIdle, isSessionStatusRescheduled, isSessionStatusRunning, isSessionStatusTerminated, isSpanEvent, isUserEvent, isUserMessage } from "./_shared/index.js";
16
+ export { SecretString, redactSecrets } from "./_shared/index.js";
package/dist/index.js CHANGED
@@ -1,8 +1,17 @@
1
- export { AntpathClient } from "./client.js";
2
- export { AntpathPlatformClient, PlatformApiError, validateProxyAuth, buildPlatformAllowedHosts, resetDefaultSecretsDeprecationWarning } from "./platform/index.js";
3
- export { AnthropicManagedAgentsProvider } from "./providers/anthropic/provider.js";
4
- export { isAgentEvent, isAgentCustomToolUse, isAgentMcpToolResult, isAgentMcpToolUse, isAgentMessage, isAgentThinking, isAgentToolResult, isAgentToolUse, isSessionError, isSessionEvent, isSessionStatusIdle, isSessionStatusRescheduled, isSessionStatusRunning, isSessionStatusTerminated, isSpanEvent, isUserEvent, isUserMessage } from "./providers/known-events.js";
5
- export { compileTemplate, defineTemplate, requiredOAuthAccessToken, requiredStaticBearer, string } from "./template/index.js";
6
- export { SecretString, redactSecrets } from "./utils/secrets.js";
7
- export { AntpathError, CleanupError, CredentialValidationError, ProviderError, RunStateError, TemplateValidationError } from "./errors.js";
1
+ /**
2
+ * Public surface of the `antpath` SDK.
3
+ *
4
+ * ONE class (`AntpathClient`) talks to the dashboard BFF. The CLI exposes
5
+ * the SAME operations via subcommands. Everything else is types, errors,
6
+ * template helpers, and event type guards re-exported from `@antpath/shared`.
7
+ */
8
+ export { AntpathClient, RunRef } from "./client.js";
9
+ // Errors
10
+ export { AntpathApiError, AntpathError, CleanupError, CredentialValidationError, ProviderError, RunStateError, TemplateValidationError } from "./_shared/index.js";
11
+ // Template helpers
12
+ export { buildPlatformAllowedHosts, compileTemplate, defineTemplate, requiredOAuthAccessToken, requiredStaticBearer, string, toPlatformSubmissionTemplate, validateProxyAuth } from "./_shared/index.js";
13
+ // Event type guards
14
+ export { isAgentCustomToolUse, isAgentEvent, isAgentMcpToolResult, isAgentMcpToolUse, isAgentMessage, isAgentThinking, isAgentToolResult, isAgentToolUse, isSessionError, isSessionEvent, isSessionStatusIdle, isSessionStatusRescheduled, isSessionStatusRunning, isSessionStatusTerminated, isSpanEvent, isUserEvent, isUserMessage } from "./_shared/index.js";
15
+ // Secret utilities
16
+ export { SecretString, redactSecrets } from "./_shared/index.js";
8
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,yBAAyB,EACzB,qCAAqC,EACtC,MAAM,qBAAqB,CAAC;AAe7B,OAAO,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AAEnF,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,0BAA0B,EAC1B,sBAAsB,EACtB,yBAAyB,EACzB,WAAW,EACX,WAAW,EACX,aAAa,EACd,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,eAAe,EACf,cAAc,EACd,wBAAwB,EACxB,oBAAoB,EACpB,MAAM,EAKP,MAAM,qBAAqB,CAAC;AAqB7B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,yBAAyB,EACzB,aAAa,EACb,aAAa,EACb,uBAAuB,EACxB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAQpD,SAAS;AACT,OAAO,EACL,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,yBAAyB,EACzB,aAAa,EACb,aAAa,EACb,uBAAuB,EACxB,MAAM,iBAAiB,CAAC;AAEzB,mBAAmB;AACnB,OAAO,EACL,yBAAyB,EACzB,eAAe,EACf,cAAc,EACd,wBAAwB,EACxB,oBAAoB,EACpB,MAAM,EACN,4BAA4B,EAC5B,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AA4CzB,oBAAoB;AACpB,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,0BAA0B,EAC1B,sBAAsB,EACtB,yBAAyB,EACzB,WAAW,EACX,WAAW,EACX,aAAa,EACd,MAAM,iBAAiB,CAAC;AAEzB,mBAAmB;AACnB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
package/docs/cleanup.md CHANGED
@@ -4,12 +4,15 @@ title: Cleanup
4
4
 
5
5
  # Cleanup
6
6
 
7
- Cleanup is manual by default:
7
+ By default, the worker cleans up Claude resources after a run reaches a terminal status (`succeeded`, `failed`, `terminated`). Skip cleanup explicitly when you need provider-side files/events for inspection:
8
8
 
9
9
  ```ts
10
- await handle.cleanup();
10
+ const ref = await client.submitRun(template, {
11
+ secrets: { anthropic: { apiKey: process.env.ANTHROPIC_API_KEY! } },
12
+ cleanup: { session: "retain" }
13
+ });
11
14
  ```
12
15
 
13
- This preserves provider-side files/events for inspection and avoids deleting outputs before users download them.
16
+ The corresponding CLI flag is `--cleanup retain` (default `delete`).
14
17
 
15
- If the SDK process exits before cleanup, provider resources may remain in the user's provider workspace. The result includes provider IDs so a future cleanup helper can recover orphaned resources when the caller recreates a Client with the same key.
18
+ A retained session remains visible to Anthropic until the workspace's retention policy reclaims it. The dashboard records `cleanupStatus` (`succeeded` for delete, `retained` for retain, `failed` for crash-stranded resources) and `provider_resources` rows so a future repair operation can recover orphaned resources when needed.
@@ -4,11 +4,11 @@ title: Credentials
4
4
 
5
5
  # Credentials
6
6
 
7
- antpath does not store provider keys or MCP credential values.
7
+ antpath does not store provider keys or MCP credential values across runs.
8
8
 
9
- The caller creates `AntpathClient` with a provider key. MCP credentials are passed at run time and validated against Template requirements.
9
+ The caller passes a workspace-scoped SDK token and provider key inline on every `submitRun` call. The dashboard vaults the bundle for the lifetime of a single run and destroys it at cleanup. MCP credentials and skill references travel the same way.
10
10
 
11
- MVP credential types:
11
+ MVP credential types for MCP auth:
12
12
 
13
13
  - `static_bearer`;
14
14
  - `oauth_access_token`.
@@ -29,13 +29,12 @@ The platform's managed HTTP proxy is the agent-first alternative. The caller dec
29
29
 
30
30
  ```ts
31
31
  import {
32
- AntpathPlatformClient,
32
+ AntpathClient,
33
33
  validateProxyAuth,
34
34
  buildPlatformAllowedHosts
35
35
  } from "antpath";
36
36
 
37
- const client = new AntpathPlatformClient({
38
- baseUrl: "https://dashboard.antpath.dev",
37
+ const client = new AntpathClient({
39
38
  apiToken: "ant_..."
40
39
  });
41
40
 
@@ -65,8 +64,7 @@ const proxyEndpointAuth = [
65
64
  // Fail fast at submission time when policy and auth disagree.
66
65
  validateProxyAuth(proxyEndpoints, proxyEndpointAuth);
67
66
 
68
- const run = await client.submitRun({
69
- templateId: "tmpl_xxx",
67
+ const ref = await client.submitRun(template, {
70
68
  proxyEndpoints,
71
69
  secrets: {
72
70
  anthropic: { apiKey: process.env.ANTHROPIC_API_KEY! },
@@ -78,7 +76,7 @@ const run = await client.submitRun({
78
76
  Inside the run container, every session has the platform CLI mounted at `/antpath/antpath` (a Node ESM bundle) and a manifest at `/antpath/index.json` describing the declared endpoints. The skill calls the proxy via the CLI:
79
77
 
80
78
  ```bash
81
- node /antpath/antpath proxy stripe \
79
+ /antpath/antpath proxy stripe \
82
80
  --method GET \
83
81
  --path /v1/charges/ch_123 \
84
82
  --response-mode headers_only
@@ -86,7 +84,7 @@ node /antpath/antpath proxy stripe \
86
84
 
87
85
  The CLI reads the per-run bearer from `/antpath/run-token`, attaches the `X-Antpath-Proxy-Protocol` header, and the BFF injects the bearer/header/query/basic credential before dispatching the outbound call. Only the response (subject to `responseMode` and `maxResponseBytes`) reaches the container. `--response-mode` can only narrow below the policy ceiling.
88
86
 
89
- `node /antpath/antpath --help` reads endpoint details from `/antpath/index.json`. Runs that do not declare any `proxyEndpoints` still have the CLI and an empty manifest mounted, so agents never need to introspect whether the surface exists.
87
+ `/antpath/antpath --help` reads endpoint details from `/antpath/index.json`. Runs that do not declare any `proxyEndpoints` still have the CLI and an empty manifest mounted, so agents never need to introspect whether the surface exists.
90
88
 
91
89
  ### Networking
92
90
 
@@ -99,7 +97,7 @@ const allowedHosts = buildPlatformAllowedHosts({
99
97
  });
100
98
  ```
101
99
 
102
- ### Deprecation: `defaultSecrets`
100
+ ### Secrets are always explicit at the call site
103
101
 
104
- `AntpathPlatformClientOptions.defaultSecrets` is deprecated. Pass `secrets` explicitly on every `submitRun` call so the active credentials are visible at the call site (agent-first design). The client emits a one-time deprecation warning when constructed with `defaultSecrets`.
102
+ There is no `defaultSecrets` and no client-held secret state. Every `submitRun` call carries its full `secrets` bundle (Anthropic key + optional MCP credentials + optional skill references + optional `proxyEndpointAuth`). This is the agent-first invariant: the credentials being used on any given call are visible in the same line of code that submits the run.
105
103