@aexhq/sdk 0.33.1 → 0.34.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.
- package/README.md +19 -27
- package/dist/_contracts/operations.d.ts +2 -54
- package/dist/_contracts/operations.js +2 -87
- package/dist/_contracts/run-config.d.ts +19 -13
- package/dist/_contracts/run-config.js +6 -33
- package/dist/_contracts/run-unit.d.ts +1 -33
- package/dist/_contracts/run-unit.js +2 -21
- package/dist/_contracts/runtime-sizes.d.ts +2 -2
- package/dist/_contracts/runtime-sizes.js +2 -2
- package/dist/_contracts/status.d.ts +2 -2
- package/dist/_contracts/status.js +3 -0
- package/dist/_contracts/submission.d.ts +22 -18
- package/dist/_contracts/submission.js +60 -42
- package/dist/agents-md.d.ts +5 -5
- package/dist/agents-md.js +7 -7
- package/dist/agents-md.js.map +1 -1
- package/dist/asset-upload.d.ts +4 -4
- package/dist/asset-upload.js +4 -4
- package/dist/bundle.d.ts +2 -2
- package/dist/bundle.js +2 -2
- package/dist/cli.mjs +354 -12982
- package/dist/cli.mjs.sha256 +1 -1
- package/dist/client.d.ts +218 -386
- package/dist/client.js +347 -645
- package/dist/client.js.map +1 -1
- package/dist/data-tools.d.ts +25 -22
- package/dist/data-tools.js +75 -62
- package/dist/data-tools.js.map +1 -1
- package/dist/fetch-archive.js +16 -16
- package/dist/fetch-archive.js.map +1 -1
- package/dist/file.d.ts +5 -5
- package/dist/file.js +7 -7
- package/dist/file.js.map +1 -1
- package/dist/index.d.ts +9 -9
- package/dist/index.js +14 -13
- package/dist/index.js.map +1 -1
- package/dist/mcp-server.d.ts +4 -4
- package/dist/mcp-server.js +4 -4
- package/dist/proxy-endpoint.d.ts +4 -4
- package/dist/proxy-endpoint.js +1 -1
- package/dist/secret.d.ts +8 -8
- package/dist/secret.js +8 -8
- package/dist/secret.js.map +1 -1
- package/dist/skill-tool.d.ts +102 -0
- package/dist/skill-tool.js +190 -0
- package/dist/skill-tool.js.map +1 -0
- package/dist/tool.d.ts +1 -1
- package/dist/tool.js +3 -3
- package/dist/tool.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/docs/cleanup.md +3 -3
- package/docs/concepts/agent-tools.md +6 -25
- package/docs/concepts/composition.md +15 -12
- package/docs/concepts/providers-and-runtimes.md +3 -3
- package/docs/concepts/runs.md +27 -22
- package/docs/credentials.md +52 -84
- package/docs/defaults.md +6 -6
- package/docs/events.md +65 -44
- package/docs/limits-and-quotas.md +3 -4
- package/docs/mcp.md +3 -3
- package/docs/networking.md +8 -8
- package/docs/outputs.md +44 -40
- package/docs/provider-runtime-capabilities.md +1 -1
- package/docs/public-surface.json +2 -2
- package/docs/quickstart.md +20 -10
- package/docs/run-config.md +12 -14
- package/docs/run-record.md +8 -8
- package/docs/secrets.md +16 -26
- package/docs/skills.md +55 -110
- package/docs/vision-skills.md +29 -40
- package/examples/chat-corpus.ts +8 -9
- package/package.json +1 -1
- package/dist/skill.d.ts +0 -149
- package/dist/skill.js +0 -198
- package/dist/skill.js.map +0 -1
package/dist/fetch-archive.js
CHANGED
|
@@ -2,13 +2,13 @@ import { unzipSync } from "fflate";
|
|
|
2
2
|
import { SKILL_BUNDLE_LIMITS } from "./_contracts/index.js";
|
|
3
3
|
/**
|
|
4
4
|
* Fetch a zip-archived skill from a URL and reduce it to the same in-memory
|
|
5
|
-
* `SkillFiles` map that `
|
|
5
|
+
* `SkillFiles` map that `Tools.fromSkillDir` consumes.
|
|
6
6
|
*
|
|
7
7
|
* This runs in the SDK process (the caller's own app), so the URL is
|
|
8
8
|
* caller-controlled — there is no SSRF surface here. Host the skill yourself
|
|
9
9
|
* and hand the SDK a temporary signed URL (e.g. an S3 presigned URL); it only
|
|
10
|
-
* needs to be valid for this fetch, because `client.
|
|
11
|
-
* bytes into the run afterwards.
|
|
10
|
+
* needs to be valid for this fetch, because `client.run` / `openSession`
|
|
11
|
+
* snapshots the bytes into the run afterwards.
|
|
12
12
|
*
|
|
13
13
|
* Signed URLs carry secrets in their query string, so the query is never echoed
|
|
14
14
|
* in error messages.
|
|
@@ -16,11 +16,11 @@ import { SKILL_BUNDLE_LIMITS } from "./_contracts/index.js";
|
|
|
16
16
|
const DEFAULT_TIMEOUT_MS = 30_000;
|
|
17
17
|
export async function fetchSkillArchive(url, opts = {}) {
|
|
18
18
|
if (typeof url !== "string" || url.length === 0) {
|
|
19
|
-
throw new Error("
|
|
19
|
+
throw new Error("Tools.fromSkillUrl: url is required");
|
|
20
20
|
}
|
|
21
21
|
const fetchImpl = opts.fetch ?? globalThis.fetch;
|
|
22
22
|
if (typeof fetchImpl !== "function") {
|
|
23
|
-
throw new Error("
|
|
23
|
+
throw new Error("Tools.fromSkillUrl: global fetch is unavailable; pass args.fetch " +
|
|
24
24
|
"(Bun, Node 18+, or a fetch-capable runtime is required)");
|
|
25
25
|
}
|
|
26
26
|
const bytes = await download(url, fetchImpl, opts.timeoutMs ?? DEFAULT_TIMEOUT_MS);
|
|
@@ -41,40 +41,40 @@ async function download(url, fetchImpl, timeoutMs) {
|
|
|
41
41
|
res = await fetchImpl(url, { signal: controller.signal });
|
|
42
42
|
}
|
|
43
43
|
catch (err) {
|
|
44
|
-
throw new Error(`
|
|
44
|
+
throw new Error(`Tools.fromSkillUrl: fetch failed for ${redactUrl(url)}: ${errMessage(err)}`);
|
|
45
45
|
}
|
|
46
46
|
finally {
|
|
47
47
|
clearTimeout(timer);
|
|
48
48
|
}
|
|
49
49
|
if (!res.ok) {
|
|
50
|
-
throw new Error(`
|
|
50
|
+
throw new Error(`Tools.fromSkillUrl: fetch for ${redactUrl(url)} returned HTTP ${res.status}`);
|
|
51
51
|
}
|
|
52
52
|
// Early guard on a declared size so a clearly-too-big archive fails before
|
|
53
53
|
// we buffer it. The authoritative caps are re-checked by bundleSkillFiles.
|
|
54
54
|
const declared = Number(res.headers.get("content-length"));
|
|
55
55
|
if (Number.isFinite(declared) && declared > SKILL_BUNDLE_LIMITS.maxCompressedBytes) {
|
|
56
|
-
throw new Error(`
|
|
56
|
+
throw new Error(`Tools.fromSkillUrl: archive at ${redactUrl(url)} declares ${declared} bytes, ` +
|
|
57
57
|
`exceeding the ${SKILL_BUNDLE_LIMITS.maxCompressedBytes}-byte compressed cap`);
|
|
58
58
|
}
|
|
59
59
|
const bytes = new Uint8Array(await res.arrayBuffer());
|
|
60
60
|
if (bytes.byteLength > SKILL_BUNDLE_LIMITS.maxCompressedBytes) {
|
|
61
|
-
throw new Error(`
|
|
61
|
+
throw new Error(`Tools.fromSkillUrl: archive at ${redactUrl(url)} is ${bytes.byteLength} bytes, ` +
|
|
62
62
|
`exceeding the ${SKILL_BUNDLE_LIMITS.maxCompressedBytes}-byte compressed cap`);
|
|
63
63
|
}
|
|
64
64
|
if (bytes.byteLength === 0) {
|
|
65
|
-
throw new Error(`
|
|
65
|
+
throw new Error(`Tools.fromSkillUrl: archive at ${redactUrl(url)} is empty`);
|
|
66
66
|
}
|
|
67
67
|
return bytes;
|
|
68
68
|
}
|
|
69
69
|
async function verifySha256(bytes, expected, url) {
|
|
70
70
|
const want = (expected.startsWith("sha256:") ? expected.slice("sha256:".length) : expected).toLowerCase();
|
|
71
71
|
if (!/^[0-9a-f]{64}$/.test(want)) {
|
|
72
|
-
throw new Error(`
|
|
72
|
+
throw new Error(`Tools.fromSkillUrl: sha256 must be 64 hex chars (optionally prefixed "sha256:"), ` +
|
|
73
73
|
`got ${JSON.stringify(expected)}`);
|
|
74
74
|
}
|
|
75
75
|
const got = await sha256Hex(bytes);
|
|
76
76
|
if (got !== want) {
|
|
77
|
-
throw new Error(`
|
|
77
|
+
throw new Error(`Tools.fromSkillUrl: archive integrity check failed for ${redactUrl(url)}: ` +
|
|
78
78
|
`expected sha256:${want} but downloaded bytes hash to sha256:${got}`);
|
|
79
79
|
}
|
|
80
80
|
}
|
|
@@ -86,7 +86,7 @@ function unzip(bytes, url) {
|
|
|
86
86
|
return unzipSync(bytes);
|
|
87
87
|
}
|
|
88
88
|
catch (err) {
|
|
89
|
-
throw new Error(`
|
|
89
|
+
throw new Error(`Tools.fromSkillUrl: could not unzip the archive at ${redactUrl(url)} ` +
|
|
90
90
|
`(expected a .zip): ${errMessage(err)}`);
|
|
91
91
|
}
|
|
92
92
|
}
|
|
@@ -114,7 +114,7 @@ function resolveSkillRoot(entries, url) {
|
|
|
114
114
|
}
|
|
115
115
|
const paths = Object.keys(files);
|
|
116
116
|
if (paths.length === 0) {
|
|
117
|
-
throw new Error(`
|
|
117
|
+
throw new Error(`Tools.fromSkillUrl: archive at ${redactUrl(url)} contains no files`);
|
|
118
118
|
}
|
|
119
119
|
if (Object.prototype.hasOwnProperty.call(files, "SKILL.md")) {
|
|
120
120
|
return files;
|
|
@@ -131,7 +131,7 @@ function resolveSkillRoot(entries, url) {
|
|
|
131
131
|
}
|
|
132
132
|
}
|
|
133
133
|
const roots = [...new Set(paths.map((p) => (p.includes("/") ? `${p.split("/")[0]}/` : p)))].sort();
|
|
134
|
-
throw new Error(`
|
|
134
|
+
throw new Error(`Tools.fromSkillUrl: fetched archive at ${redactUrl(url)} must contain SKILL.md at its root, ` +
|
|
135
135
|
`or inside a single top-level folder. Found top-level entries: ${roots.join(", ")}`);
|
|
136
136
|
}
|
|
137
137
|
// ---------------------------------------------------------------------------
|
|
@@ -154,7 +154,7 @@ function errMessage(err) {
|
|
|
154
154
|
async function sha256Hex(bytes) {
|
|
155
155
|
const subtle = globalThis.crypto?.subtle;
|
|
156
156
|
if (!subtle) {
|
|
157
|
-
throw new Error("
|
|
157
|
+
throw new Error("Tools.fromSkillUrl: globalThis.crypto.subtle is unavailable; " +
|
|
158
158
|
"Bun, Node 18+, or a Web-Crypto-capable runtime is required");
|
|
159
159
|
}
|
|
160
160
|
const copy = new Uint8Array(bytes.byteLength);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-archive.js","sourceRoot":"","sources":["../src/fetch-archive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAkB,MAAM,kBAAkB,CAAC;AAGvE;;;;;;;;;;;;GAYG;AAEH,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAgBlC,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAW,EACX,OAAiC,EAAE;IAEnC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"fetch-archive.js","sourceRoot":"","sources":["../src/fetch-archive.ts"],"names":[],"mappings":"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"}
|
package/dist/file.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import type { FileRef } from "./_contracts/index.js";
|
|
|
7
7
|
*
|
|
8
8
|
* const settings = await File.fromPath("./settings.json");
|
|
9
9
|
* const dataset = await File.fromPath("./data/");
|
|
10
|
-
* await client.
|
|
10
|
+
* await client.run({ files: [settings, dataset], message: "..." });
|
|
11
11
|
*
|
|
12
12
|
* `mountPath` is the absolute container directory the file unzips into; it
|
|
13
13
|
* defaults to `/workspace` (the agent's default working directory), so a file
|
|
@@ -15,8 +15,8 @@ import type { FileRef } from "./_contracts/index.js";
|
|
|
15
15
|
* `subtitles.srt` becomes `/workspace/subtitles.srt`, a folder lands its entries
|
|
16
16
|
* under `/workspace/`. The resolved path is surfaced back on the Run record.
|
|
17
17
|
*
|
|
18
|
-
* `client.
|
|
19
|
-
* the run lands; the wire ref becomes `kind:"asset"`. Repeat uploads of the
|
|
18
|
+
* `client.run` / `openSession` materializes the bytes to the hosted asset store
|
|
19
|
+
* before the run lands; the wire ref becomes `kind:"asset"`. Repeat uploads of the
|
|
20
20
|
* same bytes are deduped.
|
|
21
21
|
*/
|
|
22
22
|
export declare class File {
|
|
@@ -24,7 +24,7 @@ export declare class File {
|
|
|
24
24
|
constructor(ref: FileRef | DraftFileRef, bytes?: Uint8Array);
|
|
25
25
|
get ref(): FileRef | DraftFileRef;
|
|
26
26
|
get isDraft(): boolean;
|
|
27
|
-
/** Internal: the asset id resolved on a prior
|
|
27
|
+
/** Internal: the asset id resolved on a prior use, or undefined. */
|
|
28
28
|
get _cachedAssetId(): string | undefined;
|
|
29
29
|
/** Internal: remember the asset id resolved for this draft's bytes. */
|
|
30
30
|
_rememberAsset(assetId: string): void;
|
|
@@ -56,7 +56,7 @@ export declare class File {
|
|
|
56
56
|
}): Promise<File>;
|
|
57
57
|
/**
|
|
58
58
|
* Internal: yield the draft's zipped bytes + metadata so
|
|
59
|
-
* `client.
|
|
59
|
+
* `client.run` / `openSession` can upload it as an asset.
|
|
60
60
|
*/
|
|
61
61
|
_takeDraftBundle(): {
|
|
62
62
|
name: string;
|
package/dist/file.js
CHANGED
|
@@ -11,7 +11,7 @@ import { zipSync } from "fflate";
|
|
|
11
11
|
*
|
|
12
12
|
* const settings = await File.fromPath("./settings.json");
|
|
13
13
|
* const dataset = await File.fromPath("./data/");
|
|
14
|
-
* await client.
|
|
14
|
+
* await client.run({ files: [settings, dataset], message: "..." });
|
|
15
15
|
*
|
|
16
16
|
* `mountPath` is the absolute container directory the file unzips into; it
|
|
17
17
|
* defaults to `/workspace` (the agent's default working directory), so a file
|
|
@@ -19,14 +19,14 @@ import { zipSync } from "fflate";
|
|
|
19
19
|
* `subtitles.srt` becomes `/workspace/subtitles.srt`, a folder lands its entries
|
|
20
20
|
* under `/workspace/`. The resolved path is surfaced back on the Run record.
|
|
21
21
|
*
|
|
22
|
-
* `client.
|
|
23
|
-
* the run lands; the wire ref becomes `kind:"asset"`. Repeat uploads of the
|
|
22
|
+
* `client.run` / `openSession` materializes the bytes to the hosted asset store
|
|
23
|
+
* before the run lands; the wire ref becomes `kind:"asset"`. Repeat uploads of the
|
|
24
24
|
* same bytes are deduped.
|
|
25
25
|
*/
|
|
26
26
|
export class File {
|
|
27
27
|
#ref;
|
|
28
28
|
#bytes;
|
|
29
|
-
/** Asset id cached after the first
|
|
29
|
+
/** Asset id cached after the first use, so reuse skips a re-upload. */
|
|
30
30
|
#assetId;
|
|
31
31
|
constructor(ref, bytes) {
|
|
32
32
|
this.#ref = ref;
|
|
@@ -38,7 +38,7 @@ export class File {
|
|
|
38
38
|
get isDraft() {
|
|
39
39
|
return this.#ref.kind === "draft";
|
|
40
40
|
}
|
|
41
|
-
/** Internal: the asset id resolved on a prior
|
|
41
|
+
/** Internal: the asset id resolved on a prior use, or undefined. */
|
|
42
42
|
get _cachedAssetId() {
|
|
43
43
|
return this.#assetId;
|
|
44
44
|
}
|
|
@@ -114,7 +114,7 @@ export class File {
|
|
|
114
114
|
}
|
|
115
115
|
/**
|
|
116
116
|
* Internal: yield the draft's zipped bytes + metadata so
|
|
117
|
-
* `client.
|
|
117
|
+
* `client.run` / `openSession` can upload it as an asset.
|
|
118
118
|
*/
|
|
119
119
|
_takeDraftBundle() {
|
|
120
120
|
if (this.#ref.kind !== "draft" || !this.#bytes) {
|
|
@@ -130,7 +130,7 @@ export class File {
|
|
|
130
130
|
toJSON() {
|
|
131
131
|
if (this.#ref.kind === "draft") {
|
|
132
132
|
throw new Error("File: draft Files cannot be JSON-serialised — they only become wire refs when " +
|
|
133
|
-
"
|
|
133
|
+
"aex.run / openSession uploads the bytes as an asset.");
|
|
134
134
|
}
|
|
135
135
|
return this.#ref;
|
|
136
136
|
}
|
package/dist/file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,OAAO,IAAI;IACN,IAAI,CAAyB;IAC7B,MAAM,CAAyB;IACxC,
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,14 +3,14 @@
|
|
|
3
3
|
*
|
|
4
4
|
* ONE class (`AgentExecutor`) talks to the dashboard BFF. The CLI exposes
|
|
5
5
|
* the SAME operations via subcommands. Composition primitives are
|
|
6
|
-
* `
|
|
7
|
-
* wrapper. Everything else is types, errors, and event type
|
|
8
|
-
* from `@aexhq/contracts`.
|
|
6
|
+
* `Tool` / `Tools` (skill-tools), `McpServer`, and `ProxyEndpoint` — there is
|
|
7
|
+
* no saved-definition wrapper. Everything else is types, errors, and event type
|
|
8
|
+
* guards re-exported from `@aexhq/contracts`.
|
|
9
9
|
*/
|
|
10
|
-
export { Aex, AgentsMdClient, AgentExecutor,
|
|
11
|
-
export type { AgentExecutorOptions,
|
|
12
|
-
export { Skill } from "./skill.js";
|
|
10
|
+
export { Aex, AgentsMdClient, AgentExecutor, FilesClient, SecretsClient, SessionClient, SessionHandle, SessionTurnStream } from "./client.js";
|
|
11
|
+
export type { AgentExecutorOptions, OutputDownloadOptions, OutputFilePathMatch, OutputFilePathSelector, OutputFileSelector, OutputLinkSelector, RunCollectOptions, RunResult, SessionCreateOptions, SessionEnvironmentOptions, SessionEvents, SessionInput, SessionMessages, SessionOutputs, SessionOverrides, SessionRunOptions, SessionRunResult, SessionSendOptions, SessionTurnResult, SessionWebhooks, StreamEventsOptions, WaitForRunOptions } from "./client.js";
|
|
13
12
|
export { Tool } from "./tool.js";
|
|
13
|
+
export { SkillTool, Tools } from "./skill-tool.js";
|
|
14
14
|
export { AgentsMd } from "./agents-md.js";
|
|
15
15
|
export { File } from "./file.js";
|
|
16
16
|
export { McpServer } from "./mcp-server.js";
|
|
@@ -24,10 +24,10 @@ export { createDataTools, createCorpusTools, DataToolError, DATA_TOOLS_INSTRUCTI
|
|
|
24
24
|
export type { ChatCorpus, CreateDataToolsOptions, DataChatTool, DataChatToolSchema, DataTools } from "./data-tools.js";
|
|
25
25
|
export { AexApiError, AexError, CleanupError, CredentialValidationError, ProviderError, RunConfigValidationError, RunStateError } from "./_contracts/index.js";
|
|
26
26
|
export { MCP_SERVER_NAME_PATTERN, SKILL_BUNDLE_LIMITS, SkillBundleValidationError, buildPlatformAllowedHosts, normaliseSkillBundlePath, validateSkillBundleEntry, validateSkillBundleManifest, validateProxyAuth } from "./_contracts/index.js";
|
|
27
|
-
export type { AssetRef, AgentsMdRef, FileRef, McpServerRef, SkillBundleEntry, SkillBundleManifest,
|
|
28
|
-
export type { AgentsMdRecord as AgentsMdRecordWire, FileRecord as FileRecordWire, Output, OutputFileType, OutputLink, OutputLinkOptions, OutputQuery, OutputSearchQuery, OutputSearchHit, OutputSearchPage, OutputText, ProviderEvent, ReadOutputTextOptions, Run,
|
|
27
|
+
export type { AssetRef, AgentsMdRef, FileRef, McpServerRef, SkillBundleEntry, SkillBundleManifest, SkillToolRef, ToolInputSchema, ToolRef } from "./_contracts/index.js";
|
|
28
|
+
export type { AgentsMdRecord as AgentsMdRecordWire, FileRecord as FileRecordWire, Output, OutputFileType, OutputLink, OutputLinkOptions, OutputQuery, OutputSearchQuery, OutputSearchHit, OutputSearchPage, OutputText, ProviderEvent, ReadOutputTextOptions, Run, Session, SessionEvent, SessionListPage, SessionListQuery, SessionRetentionPolicy, SessionStatus, SessionSummary, SessionTurn, RunRecordArchiveFileV1, RunRecordArchiveFileRoleV1, RunRecordArchiveNamespaceV1, RunRecordCostV1, RunRecordDownloadErrorV1, RunRecordFileStatusV1, RunRecordManifestV1, RunRecordMetadataV1, RunRecordNamespaceV1, RunRecordSubmissionSnapshotV1, RunRecordV1, RunEvent, RunWebhookDelivery, RunWebhookDeliveryStatus, RuntimeManifest, SecretRecord, UsageSummary, WhoAmI } from "./_contracts/index.js";
|
|
29
29
|
export type { PlatformInlineSecrets as InlineSecrets, PlatformMcpServerSecret as McpServerSecret, PlatformProxyEndpoint, PlatformProxyEndpointAuth, PlatformProxyAuthValue as ProxyAuthValue, PlatformEnvironment as RunEnvironment, PlatformRunSubmissionRequest, RunLimits, RunWebhookSpec, ProxyAuthShape, ProxyMethod, ProxyRetryPolicy, ProxyResponseMode } from "./_contracts/index.js";
|
|
30
|
-
export { CUSTODY_MANIFEST_SCHEMA_VERSION, RUN_RECORD_MANIFEST_SCHEMA_VERSION, RUN_RECORD_SCHEMA_VERSION, DEFAULT_RUNTIME_SIZE, RUNTIME_SIZE_PRESETS, RUNTIME_SIZES
|
|
30
|
+
export { CUSTODY_MANIFEST_SCHEMA_VERSION, RUN_RECORD_MANIFEST_SCHEMA_VERSION, RUN_RECORD_SCHEMA_VERSION, DEFAULT_RUNTIME_SIZE, RUNTIME_SIZE_PRESETS, RUNTIME_SIZES } from "./_contracts/index.js";
|
|
31
31
|
export { RuntimeSizes as Sizes } from "./_contracts/index.js";
|
|
32
32
|
export type { RuntimeResources, RuntimeSize } from "./_contracts/index.js";
|
|
33
33
|
export { BUILTIN_TOOL_NAMES, BuiltinTools, DEFAULT_BUILTIN_TOOLS, resolveBuiltinToolNames } from "./_contracts/index.js";
|
package/dist/index.js
CHANGED
|
@@ -3,37 +3,38 @@
|
|
|
3
3
|
*
|
|
4
4
|
* ONE class (`AgentExecutor`) talks to the dashboard BFF. The CLI exposes
|
|
5
5
|
* the SAME operations via subcommands. Composition primitives are
|
|
6
|
-
* `
|
|
7
|
-
* wrapper. Everything else is types, errors, and event type
|
|
8
|
-
* from `@aexhq/contracts`.
|
|
6
|
+
* `Tool` / `Tools` (skill-tools), `McpServer`, and `ProxyEndpoint` — there is
|
|
7
|
+
* no saved-definition wrapper. Everything else is types, errors, and event type
|
|
8
|
+
* guards re-exported from `@aexhq/contracts`.
|
|
9
9
|
*/
|
|
10
|
-
export { Aex, AgentsMdClient, AgentExecutor,
|
|
10
|
+
export { Aex, AgentsMdClient, AgentExecutor, FilesClient, SecretsClient, SessionClient, SessionHandle, SessionTurnStream } from "./client.js";
|
|
11
11
|
// Composition primitives
|
|
12
|
-
export { Skill } from "./skill.js";
|
|
13
12
|
export { Tool } from "./tool.js";
|
|
13
|
+
export { SkillTool, Tools } from "./skill-tool.js";
|
|
14
14
|
export { AgentsMd } from "./agents-md.js";
|
|
15
15
|
export { File } from "./file.js";
|
|
16
16
|
export { McpServer } from "./mcp-server.js";
|
|
17
17
|
export { ProxyEndpoint } from "./proxy-endpoint.js";
|
|
18
18
|
export { Secret } from "./secret.js";
|
|
19
19
|
export { bundleSkillFiles, hashSkillBundle } from "./bundle.js";
|
|
20
|
-
// Data-source chat tools — turn the read surface (
|
|
21
|
-
//
|
|
22
|
-
// chat over workspace/
|
|
20
|
+
// Data-source chat tools — turn the sessions read surface (sessions.list /
|
|
21
|
+
// sessions.outputs(id).read(...)) into vendor-neutral LLM tool
|
|
22
|
+
// definitions + an executor, so a chat over workspace/session data is a few
|
|
23
|
+
// lines on top of the public SDK.
|
|
23
24
|
export { createDataTools, createCorpusTools, DataToolError, DATA_TOOLS_INSTRUCTIONS } from "./data-tools.js";
|
|
24
25
|
// Errors
|
|
25
26
|
export { AexApiError, AexError, CleanupError, CredentialValidationError, ProviderError, RunConfigValidationError, RunStateError } from "./_contracts/index.js";
|
|
26
|
-
// Skill / MCP wire types
|
|
27
|
+
// Skill-bundle / MCP wire types
|
|
27
28
|
export { MCP_SERVER_NAME_PATTERN, SKILL_BUNDLE_LIMITS, SkillBundleValidationError, buildPlatformAllowedHosts, normaliseSkillBundlePath, validateSkillBundleEntry, validateSkillBundleManifest, validateProxyAuth } from "./_contracts/index.js";
|
|
28
29
|
// Runtime sizing — the closed set of valid managed runtime presets.
|
|
29
|
-
// Prefer the `
|
|
30
|
+
// Prefer the `Sizes` symbol const (e.g. `Sizes.SHARED_2X_8GB`)
|
|
30
31
|
// so an invalid token is a compile error, not a runtime 400.
|
|
31
|
-
export { CUSTODY_MANIFEST_SCHEMA_VERSION, RUN_RECORD_MANIFEST_SCHEMA_VERSION, RUN_RECORD_SCHEMA_VERSION, DEFAULT_RUNTIME_SIZE, RUNTIME_SIZE_PRESETS, RUNTIME_SIZES
|
|
32
|
+
export { CUSTODY_MANIFEST_SCHEMA_VERSION, RUN_RECORD_MANIFEST_SCHEMA_VERSION, RUN_RECORD_SCHEMA_VERSION, DEFAULT_RUNTIME_SIZE, RUNTIME_SIZE_PRESETS, RUNTIME_SIZES } from "./_contracts/index.js";
|
|
32
33
|
export { RuntimeSizes as Sizes } from "./_contracts/index.js";
|
|
33
34
|
// Builtin tools — the closed + default builtin tool sets. Toggle the standard
|
|
34
|
-
// set with `includeBuiltinTools` on
|
|
35
|
+
// set with `includeBuiltinTools` on session create; cherry-pick individual tools by
|
|
35
36
|
// listing their names in `tools`. Prefer the `BuiltinTools` const (e.g.
|
|
36
|
-
// `BuiltinTools.
|
|
37
|
+
// `BuiltinTools.web_search`) so a typo is a compile error, not a runtime 400.
|
|
37
38
|
export { BUILTIN_TOOL_NAMES, BuiltinTools, DEFAULT_BUILTIN_TOOLS, resolveBuiltinToolNames } from "./_contracts/index.js";
|
|
38
39
|
// Provider/model surface. Provider choice decides the upstream model route;
|
|
39
40
|
// execution uses the managed path.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,GAAG,EACH,cAAc,EACd,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,GAAG,EACH,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,EACb,aAAa,EACb,aAAa,EACb,iBAAiB,EAClB,MAAM,aAAa,CAAC;AA0BrB,yBAAyB;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AASrC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGhE,2EAA2E;AAC3E,+DAA+D;AAC/D,4EAA4E;AAC5E,kCAAkC;AAClC,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAG7G,SAAS;AACT,OAAO,EACL,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,yBAAyB,EACzB,aAAa,EACb,wBAAwB,EACxB,aAAa,EACd,MAAM,kBAAkB,CAAC;AAE1B,gCAAgC;AAChC,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,EACxB,wBAAwB,EACxB,2BAA2B,EAC3B,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AA+E1B,oEAAoE;AACpE,+DAA+D;AAC/D,6DAA6D;AAC7D,OAAO,EACL,+BAA+B,EAC/B,kCAAkC,EAClC,yBAAyB,EACzB,oBAAoB,EACpB,oBAAoB,EACpB,aAAa,EACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,IAAI,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAGzD,8EAA8E;AAC9E,oFAAoF;AACpF,wEAAwE;AACxE,8EAA8E;AAC9E,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAGpH,4EAA4E;AAC5E,mCAAmC;AACnC,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,sBAAsB,EACtB,kBAAkB,EAClB,MAAM,EACN,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,UAAU,EACV,aAAa,EACb,SAAS,EACT,aAAa,EACd,MAAM,kBAAkB,CAAC;AAM1B,gFAAgF;AAChF,2EAA2E;AAC3E,iFAAiF;AACjF,2EAA2E;AAC3E,OAAO,EACL,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,KAAK,EACL,UAAU,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,eAAe,EAChB,MAAM,kBAAkB,CAAC;AAQ1B,gFAAgF;AAChF,6EAA6E;AAC7E,iFAAiF;AACjF,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,MAAM,EACP,MAAM,kBAAkB,CAAC;AAQ1B,mBAAmB;AACnB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE/D,yEAAyE;AACzE,6EAA6E;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/mcp-server.d.ts
CHANGED
|
@@ -26,8 +26,8 @@ export interface WorkspaceMcpServerSubmissionEntry {
|
|
|
26
26
|
* `{ name, headers }`.
|
|
27
27
|
*
|
|
28
28
|
* For workspace refs (`McpServer.fromId(id)`), the submission entry
|
|
29
|
-
* is `{kind:"workspace", id}`; the BFF resolves it to inline
|
|
30
|
-
*
|
|
29
|
+
* is `{kind:"workspace", id}`; the BFF resolves it to inline when
|
|
30
|
+
* the session is created. The user still supplies auth separately via
|
|
31
31
|
* `secrets.mcpServers[<workspace-name>]` keyed by the workspace
|
|
32
32
|
* MCP's persisted `name`.
|
|
33
33
|
*/
|
|
@@ -61,8 +61,8 @@ export declare class McpServer {
|
|
|
61
61
|
}): McpServer;
|
|
62
62
|
/**
|
|
63
63
|
* Reference a workspace-persistent MCP server by id. The BFF
|
|
64
|
-
* resolves the ref to inline `{name, url}`
|
|
65
|
-
* row from `workspace_mcp_servers`. Auth still arrives inline at
|
|
64
|
+
* resolves the ref to inline `{name, url}` when the session is created using
|
|
65
|
+
* the row from `workspace_mcp_servers`. Auth still arrives inline at
|
|
66
66
|
* the call site — pass it in `secrets.mcpServers[<workspace-name>]`.
|
|
67
67
|
*/
|
|
68
68
|
static fromId(id: string): McpServer;
|
package/dist/mcp-server.js
CHANGED
|
@@ -16,8 +16,8 @@ const WORKSPACE_MCP_ID_PATTERN = /^mcp_[A-Za-z0-9_-]{8,128}$/;
|
|
|
16
16
|
* `{ name, headers }`.
|
|
17
17
|
*
|
|
18
18
|
* For workspace refs (`McpServer.fromId(id)`), the submission entry
|
|
19
|
-
* is `{kind:"workspace", id}`; the BFF resolves it to inline
|
|
20
|
-
*
|
|
19
|
+
* is `{kind:"workspace", id}`; the BFF resolves it to inline when
|
|
20
|
+
* the session is created. The user still supplies auth separately via
|
|
21
21
|
* `secrets.mcpServers[<workspace-name>]` keyed by the workspace
|
|
22
22
|
* MCP's persisted `name`.
|
|
23
23
|
*/
|
|
@@ -76,8 +76,8 @@ export class McpServer {
|
|
|
76
76
|
}
|
|
77
77
|
/**
|
|
78
78
|
* Reference a workspace-persistent MCP server by id. The BFF
|
|
79
|
-
* resolves the ref to inline `{name, url}`
|
|
80
|
-
* row from `workspace_mcp_servers`. Auth still arrives inline at
|
|
79
|
+
* resolves the ref to inline `{name, url}` when the session is created using
|
|
80
|
+
* the row from `workspace_mcp_servers`. Auth still arrives inline at
|
|
81
81
|
* the call site — pass it in `secrets.mcpServers[<workspace-name>]`.
|
|
82
82
|
*/
|
|
83
83
|
static fromId(id) {
|
package/dist/proxy-endpoint.d.ts
CHANGED
|
@@ -15,8 +15,8 @@ import { type PlatformProxyAuthValue, type PlatformProxyEndpoint, type PlatformP
|
|
|
15
15
|
*
|
|
16
16
|
* Wire-format unchanged: the SDK splits each `ProxyEndpoint` instance
|
|
17
17
|
* into a `PlatformProxyEndpoint` (the non-secret declaration) plus a
|
|
18
|
-
* `PlatformProxyEndpointAuth` entry (the per-request secret)
|
|
19
|
-
*
|
|
18
|
+
* `PlatformProxyEndpointAuth` entry (the per-request secret) when the
|
|
19
|
+
* session is created, exactly the way `McpServer` already splits
|
|
20
20
|
* `headers` into `secrets.mcpServers`.
|
|
21
21
|
*
|
|
22
22
|
* Five named constructors:
|
|
@@ -29,7 +29,7 @@ import { type PlatformProxyAuthValue, type PlatformProxyEndpoint, type PlatformP
|
|
|
29
29
|
*
|
|
30
30
|
* All five share the same allow-list / response-mode / cap parameters.
|
|
31
31
|
* The four authenticated variants split into `secrets.proxyEndpointAuth[].value`
|
|
32
|
-
*
|
|
32
|
+
* when the session is created; `none` produces only a declaration (no secret).
|
|
33
33
|
*/
|
|
34
34
|
export interface ProxyEndpointCommonOptions {
|
|
35
35
|
/**
|
|
@@ -116,7 +116,7 @@ export declare class ProxyEndpoint {
|
|
|
116
116
|
/**
|
|
117
117
|
* Split a list of `ProxyEndpoint` instances into the public declarations
|
|
118
118
|
* (`proxyEndpoints[]`) and the per-request auth bundle
|
|
119
|
-
* (`secrets.proxyEndpointAuth[]`). Mirrors the way
|
|
119
|
+
* (`secrets.proxyEndpointAuth[]`). Mirrors the way the SDK already
|
|
120
120
|
* splits `McpServer.headers` into `secrets.mcpServers[]`.
|
|
121
121
|
*
|
|
122
122
|
* Throws on duplicate endpoint names — names are the cross-reference
|
package/dist/proxy-endpoint.js
CHANGED
|
@@ -65,7 +65,7 @@ export class ProxyEndpoint {
|
|
|
65
65
|
/**
|
|
66
66
|
* Split a list of `ProxyEndpoint` instances into the public declarations
|
|
67
67
|
* (`proxyEndpoints[]`) and the per-request auth bundle
|
|
68
|
-
* (`secrets.proxyEndpointAuth[]`). Mirrors the way
|
|
68
|
+
* (`secrets.proxyEndpointAuth[]`). Mirrors the way the SDK already
|
|
69
69
|
* splits `McpServer.headers` into `secrets.mcpServers[]`.
|
|
70
70
|
*
|
|
71
71
|
* Throws on duplicate endpoint names — names are the cross-reference
|
package/dist/secret.d.ts
CHANGED
|
@@ -26,19 +26,19 @@ export interface SecretUploader {
|
|
|
26
26
|
}>;
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
|
-
* A secret with the SAME lifecycle semantic as `
|
|
29
|
+
* A secret with the SAME lifecycle semantic as `File` / `AgentsMd`:
|
|
30
30
|
* EPHEMERAL per-run by default, PROMOTABLE to a persisted, name-searchable
|
|
31
31
|
* workspace secret you can reference and reuse.
|
|
32
32
|
*
|
|
33
|
-
* - `Secret.value(v)` — EPHEMERAL per-run: the value is vaulted
|
|
33
|
+
* - `Secret.value(v)` — EPHEMERAL per-run: the value is vaulted when the session is created and
|
|
34
34
|
* excluded from the idempotency hash; only a `{ ephemeral: true }`
|
|
35
35
|
* placeholder rides the (hashed) submission. Deleted when the run finishes.
|
|
36
|
-
* Clean, no workspace dependency. ≙ `
|
|
36
|
+
* Clean, no workspace dependency. ≙ `File.fromBytes(...)` (a draft).
|
|
37
37
|
* - `secret.upload(client, { name })` — PROMOTE that value into the workspace
|
|
38
|
-
* secret store under `name`; resolves to a `Secret.ref`.
|
|
38
|
+
* secret store under `name`; resolves to a `Secret.ref`.
|
|
39
39
|
* - `Secret.ref(handle)` — WORKSPACE: only the handle rides the submission;
|
|
40
40
|
* the value is resolved server-side from the workspace secret store. No
|
|
41
|
-
* value ever travels.
|
|
41
|
+
* value ever travels.
|
|
42
42
|
*
|
|
43
43
|
* The SDK splits each `Secret` BEFORE the wire payload is built (exactly how
|
|
44
44
|
* `McpServer` splits `headers` into `secrets.mcpServers`): the env-var name keys
|
|
@@ -58,9 +58,9 @@ export declare class Secret {
|
|
|
58
58
|
readonly kind: "ref";
|
|
59
59
|
readonly handle: string;
|
|
60
60
|
});
|
|
61
|
-
/** Ephemeral per-run value. Vaulted
|
|
61
|
+
/** Ephemeral per-run value. Vaulted when the session is created; never in the spec/hash; gone at terminal. */
|
|
62
62
|
static value(value: string | SecretString): Secret;
|
|
63
|
-
/** Reference a workspace secret by handle; resolved server-side
|
|
63
|
+
/** Reference a workspace secret by handle; resolved server-side when the session is created. */
|
|
64
64
|
static ref(handle: string): Secret;
|
|
65
65
|
/** True once this ephemeral secret has been promoted via `upload`. */
|
|
66
66
|
get isConsumed(): boolean;
|
|
@@ -68,7 +68,7 @@ export declare class Secret {
|
|
|
68
68
|
* Promote this EPHEMERAL secret into the workspace secret store under `name`
|
|
69
69
|
* and return a `Secret.ref(name)` for reuse across runs. Blocking: the store
|
|
70
70
|
* write completes before this resolves. Consumes this instance (an ephemeral
|
|
71
|
-
* value is promoted exactly once)
|
|
71
|
+
* value is promoted exactly once).
|
|
72
72
|
*
|
|
73
73
|
* Only valid on a `Secret.value(...)`; a `Secret.ref(...)` is already
|
|
74
74
|
* persisted.
|
package/dist/secret.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { SECRET_ENV_NAME_PATTERN, SECRET_HANDLE_PATTERN, SecretString } from "./_contracts/index.js";
|
|
2
2
|
/**
|
|
3
|
-
* A secret with the SAME lifecycle semantic as `
|
|
3
|
+
* A secret with the SAME lifecycle semantic as `File` / `AgentsMd`:
|
|
4
4
|
* EPHEMERAL per-run by default, PROMOTABLE to a persisted, name-searchable
|
|
5
5
|
* workspace secret you can reference and reuse.
|
|
6
6
|
*
|
|
7
|
-
* - `Secret.value(v)` — EPHEMERAL per-run: the value is vaulted
|
|
7
|
+
* - `Secret.value(v)` — EPHEMERAL per-run: the value is vaulted when the session is created and
|
|
8
8
|
* excluded from the idempotency hash; only a `{ ephemeral: true }`
|
|
9
9
|
* placeholder rides the (hashed) submission. Deleted when the run finishes.
|
|
10
|
-
* Clean, no workspace dependency. ≙ `
|
|
10
|
+
* Clean, no workspace dependency. ≙ `File.fromBytes(...)` (a draft).
|
|
11
11
|
* - `secret.upload(client, { name })` — PROMOTE that value into the workspace
|
|
12
|
-
* secret store under `name`; resolves to a `Secret.ref`.
|
|
12
|
+
* secret store under `name`; resolves to a `Secret.ref`.
|
|
13
13
|
* - `Secret.ref(handle)` — WORKSPACE: only the handle rides the submission;
|
|
14
14
|
* the value is resolved server-side from the workspace secret store. No
|
|
15
|
-
* value ever travels.
|
|
15
|
+
* value ever travels.
|
|
16
16
|
*
|
|
17
17
|
* The SDK splits each `Secret` BEFORE the wire payload is built (exactly how
|
|
18
18
|
* `McpServer` splits `headers` into `secrets.mcpServers`): the env-var name keys
|
|
@@ -44,7 +44,7 @@ export class Secret {
|
|
|
44
44
|
this.handle = undefined;
|
|
45
45
|
this.#value = args.value;
|
|
46
46
|
}
|
|
47
|
-
/** Ephemeral per-run value. Vaulted
|
|
47
|
+
/** Ephemeral per-run value. Vaulted when the session is created; never in the spec/hash; gone at terminal. */
|
|
48
48
|
static value(value) {
|
|
49
49
|
const wrapped = value instanceof SecretString ? value : new SecretString(value, "secret");
|
|
50
50
|
if (!wrapped.unwrap()) {
|
|
@@ -52,7 +52,7 @@ export class Secret {
|
|
|
52
52
|
}
|
|
53
53
|
return new Secret({ kind: "value", value: wrapped });
|
|
54
54
|
}
|
|
55
|
-
/** Reference a workspace secret by handle; resolved server-side
|
|
55
|
+
/** Reference a workspace secret by handle; resolved server-side when the session is created. */
|
|
56
56
|
static ref(handle) {
|
|
57
57
|
return new Secret({ kind: "ref", handle });
|
|
58
58
|
}
|
|
@@ -64,7 +64,7 @@ export class Secret {
|
|
|
64
64
|
* Promote this EPHEMERAL secret into the workspace secret store under `name`
|
|
65
65
|
* and return a `Secret.ref(name)` for reuse across runs. Blocking: the store
|
|
66
66
|
* write completes before this resolves. Consumes this instance (an ephemeral
|
|
67
|
-
* value is promoted exactly once)
|
|
67
|
+
* value is promoted exactly once).
|
|
68
68
|
*
|
|
69
69
|
* Only valid on a `Secret.value(...)`; a `Secret.ref(...)` is already
|
|
70
70
|
* persisted.
|
package/dist/secret.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secret.js","sourceRoot":"","sources":["../src/secret.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAqBhG;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,OAAO,MAAM;IACR,IAAI,CAAkB;IAC/B,0EAA0E;IACjE,MAAM,CAAqB;IAC3B,MAAM,CAA2B;IAC1C,8EAA8E;IAC9E,SAAS,GAAG,KAAK,CAAC;IAElB,0EAA0E;IAC1E,YAAY,IAAkH;QAC5H,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YACxB,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChF,MAAM,IAAI,KAAK,CAAC,iCAAiC,qBAAqB,CAAC,MAAM,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"secret.js","sourceRoot":"","sources":["../src/secret.ts"],"names":[],"mappings":"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"}
|