agentfootprint 11.5.0 → 12.0.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 (113) hide show
  1. package/CAPABILITIES.md +1 -0
  2. package/dist/adapters/code/agentcore.js +295 -214
  3. package/dist/adapters/code/agentcore.js.map +1 -1
  4. package/dist/adapters/code/agentcoreClient.js +178 -0
  5. package/dist/adapters/code/agentcoreClient.js.map +1 -0
  6. package/dist/adapters/code/agentcoreWire.js +348 -0
  7. package/dist/adapters/code/agentcoreWire.js.map +1 -0
  8. package/dist/adapters/code/fileName.js +100 -0
  9. package/dist/adapters/code/fileName.js.map +1 -0
  10. package/dist/adapters/code/local.js +529 -183
  11. package/dist/adapters/code/local.js.map +1 -1
  12. package/dist/adapters/code/output.js +140 -0
  13. package/dist/adapters/code/output.js.map +1 -0
  14. package/dist/core/codeRunnerTool.js +52 -7
  15. package/dist/core/codeRunnerTool.js.map +1 -1
  16. package/dist/doors/providers.js.map +1 -1
  17. package/dist/esm/adapters/code/agentcore.d.ts +65 -68
  18. package/dist/esm/adapters/code/agentcore.js +293 -212
  19. package/dist/esm/adapters/code/agentcore.js.map +1 -1
  20. package/dist/esm/adapters/code/agentcoreClient.d.ts +193 -0
  21. package/dist/esm/adapters/code/agentcoreClient.js +173 -0
  22. package/dist/esm/adapters/code/agentcoreClient.js.map +1 -0
  23. package/dist/esm/adapters/code/agentcoreWire.d.ts +119 -0
  24. package/dist/esm/adapters/code/agentcoreWire.js +334 -0
  25. package/dist/esm/adapters/code/agentcoreWire.js.map +1 -0
  26. package/dist/esm/adapters/code/fileName.d.ts +43 -0
  27. package/dist/esm/adapters/code/fileName.js +96 -0
  28. package/dist/esm/adapters/code/fileName.js.map +1 -0
  29. package/dist/esm/adapters/code/local.d.ts +91 -12
  30. package/dist/esm/adapters/code/local.js +528 -182
  31. package/dist/esm/adapters/code/local.js.map +1 -1
  32. package/dist/esm/adapters/code/output.d.ts +70 -0
  33. package/dist/esm/adapters/code/output.js +129 -0
  34. package/dist/esm/adapters/code/output.js.map +1 -0
  35. package/dist/esm/core/codeRunnerTool.d.ts +15 -3
  36. package/dist/esm/core/codeRunnerTool.js +52 -7
  37. package/dist/esm/core/codeRunnerTool.js.map +1 -1
  38. package/dist/esm/doors/providers.d.ts +1 -1
  39. package/dist/esm/doors/providers.js.map +1 -1
  40. package/dist/esm/events/payloads.d.ts +16 -2
  41. package/dist/esm/index.d.ts +2 -0
  42. package/dist/esm/index.js +5 -0
  43. package/dist/esm/index.js.map +1 -1
  44. package/dist/esm/mcp/replay.d.ts +21 -13
  45. package/dist/esm/mcp/replay.js +14 -10
  46. package/dist/esm/mcp/replay.js.map +1 -1
  47. package/dist/esm/mcp/replayUnavailable.d.ts +21 -8
  48. package/dist/esm/mcp/replayUnavailable.js +21 -8
  49. package/dist/esm/mcp/replayUnavailable.js.map +1 -1
  50. package/dist/esm/mcp/throttleRetry.d.ts +5 -5
  51. package/dist/esm/mcp/throttleRetry.js +5 -5
  52. package/dist/esm/mcp/types.d.ts +13 -10
  53. package/dist/esm/provider-contract/codeSandbox.d.ts +89 -0
  54. package/dist/esm/provider-contract/codeSandbox.js +119 -0
  55. package/dist/esm/provider-contract/codeSandbox.js.map +1 -0
  56. package/dist/esm/provider-contract/sessionExpired.d.ts +31 -0
  57. package/dist/esm/provider-contract/sessionExpired.js +40 -0
  58. package/dist/esm/provider-contract/sessionExpired.js.map +1 -0
  59. package/dist/esm/provider-contract/types.d.ts +166 -17
  60. package/dist/esm/provider-contract/types.js +9 -0
  61. package/dist/esm/provider-contract/types.js.map +1 -1
  62. package/dist/esm/redaction/knownStrings.js +3 -0
  63. package/dist/esm/redaction/knownStrings.js.map +1 -1
  64. package/dist/index.js +12 -4
  65. package/dist/index.js.map +1 -1
  66. package/dist/mcp/replay.js +14 -10
  67. package/dist/mcp/replay.js.map +1 -1
  68. package/dist/mcp/replayUnavailable.js +21 -8
  69. package/dist/mcp/replayUnavailable.js.map +1 -1
  70. package/dist/mcp/throttleRetry.js +5 -5
  71. package/dist/provider-contract/codeSandbox.js +125 -0
  72. package/dist/provider-contract/codeSandbox.js.map +1 -0
  73. package/dist/provider-contract/sessionExpired.js +44 -0
  74. package/dist/provider-contract/sessionExpired.js.map +1 -0
  75. package/dist/provider-contract/types.js +12 -1
  76. package/dist/provider-contract/types.js.map +1 -1
  77. package/dist/redaction/knownStrings.js +3 -0
  78. package/dist/redaction/knownStrings.js.map +1 -1
  79. package/dist/types/adapters/code/agentcore.d.ts +65 -68
  80. package/dist/types/adapters/code/agentcore.d.ts.map +1 -1
  81. package/dist/types/adapters/code/agentcoreClient.d.ts +194 -0
  82. package/dist/types/adapters/code/agentcoreClient.d.ts.map +1 -0
  83. package/dist/types/adapters/code/agentcoreWire.d.ts +120 -0
  84. package/dist/types/adapters/code/agentcoreWire.d.ts.map +1 -0
  85. package/dist/types/adapters/code/fileName.d.ts +44 -0
  86. package/dist/types/adapters/code/fileName.d.ts.map +1 -0
  87. package/dist/types/adapters/code/local.d.ts +91 -12
  88. package/dist/types/adapters/code/local.d.ts.map +1 -1
  89. package/dist/types/adapters/code/output.d.ts +71 -0
  90. package/dist/types/adapters/code/output.d.ts.map +1 -0
  91. package/dist/types/core/codeRunnerTool.d.ts +15 -3
  92. package/dist/types/core/codeRunnerTool.d.ts.map +1 -1
  93. package/dist/types/doors/providers.d.ts +1 -1
  94. package/dist/types/doors/providers.d.ts.map +1 -1
  95. package/dist/types/events/payloads.d.ts +16 -2
  96. package/dist/types/events/payloads.d.ts.map +1 -1
  97. package/dist/types/index.d.ts +2 -0
  98. package/dist/types/index.d.ts.map +1 -1
  99. package/dist/types/mcp/replay.d.ts +21 -13
  100. package/dist/types/mcp/replay.d.ts.map +1 -1
  101. package/dist/types/mcp/replayUnavailable.d.ts +21 -8
  102. package/dist/types/mcp/replayUnavailable.d.ts.map +1 -1
  103. package/dist/types/mcp/throttleRetry.d.ts +5 -5
  104. package/dist/types/mcp/types.d.ts +13 -10
  105. package/dist/types/mcp/types.d.ts.map +1 -1
  106. package/dist/types/provider-contract/codeSandbox.d.ts +90 -0
  107. package/dist/types/provider-contract/codeSandbox.d.ts.map +1 -0
  108. package/dist/types/provider-contract/sessionExpired.d.ts +32 -0
  109. package/dist/types/provider-contract/sessionExpired.d.ts.map +1 -0
  110. package/dist/types/provider-contract/types.d.ts +166 -17
  111. package/dist/types/provider-contract/types.d.ts.map +1 -1
  112. package/dist/types/redaction/knownStrings.d.ts.map +1 -1
  113. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"agentcore.js","sourceRoot":"","sources":["../../../src/adapters/code/agentcore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentcore.js","sourceRoot":"","sources":["../../../src/adapters/code/agentcore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,178 @@
1
+ "use strict";
2
+ /**
3
+ * The AgentCore Code Interpreter client seam: the operation-semantic surface
4
+ * `agentCoreCodeRunner` calls, and its ONE mapping onto the real SDK.
5
+ *
6
+ * Two things this file owns and nothing else does:
7
+ *
8
+ * • the COMMAND FORM — a bare `@aws-sdk/client-*` client is command-based:
9
+ * `client.send(new SomeCommand(input))`, never a method on the client
10
+ * (the 9.4.0 law; `BedrockAgentCoreClient.prototype.startCodeInterpreterSession`
11
+ * is `undefined`, the shortcut exists only on the aggregated client);
12
+ * • the DRAIN of `InvokeCodeInterpreterResponse.stream`, an event stream
13
+ * whose members are `{ result }` or a modelled EXCEPTION.
14
+ *
15
+ * The request and response shapes below were read off a real install of
16
+ * `@aws-sdk/client-bedrock-agentcore` 3.1159.0 (`InvokeCodeInterpreterRequest`,
17
+ * `ToolArguments`, `InputContentBlock`, `CodeInterpreterResult`,
18
+ * `ResourceContent`, `ToolResultStructuredContent`) and are pinned against
19
+ * transcribed copies of those types in
20
+ * `test/type-regressions/AgentCoreCodeInterpreter.sdk.test.ts`.
21
+ *
22
+ * Pattern: Adapter (GoF) + lazy peer-dep load — the SDK is required only when
23
+ * a session first starts (or never, if you inject `_client` / `_sdk`).
24
+ */
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.drainStream = exports.STREAM_ERROR_MEMBERS = exports.createCodeClient = void 0;
27
+ const abort_js_1 = require("../../lib/abort.js");
28
+ const lazyRequire_js_1 = require("../../lib/lazyRequire.js");
29
+ /** The tool names whose answer is only an answer if it carried a result. */
30
+ const RESULT_REQUIRED = new Set([
31
+ 'writeFiles',
32
+ 'readFiles',
33
+ ]);
34
+ /**
35
+ * Map {@link AgentCoreCodeClientLike} onto the real SDK commands.
36
+ */
37
+ function createCodeClient(options) {
38
+ let mod;
39
+ if (options._sdk) {
40
+ mod = options._sdk;
41
+ }
42
+ else {
43
+ try {
44
+ // Lazy peer-dep: only loaded when no _client/_sdk is injected and start() runs.
45
+ mod = (0, lazyRequire_js_1.lazyRequire)('@aws-sdk/client-bedrock-agentcore');
46
+ }
47
+ catch {
48
+ throw new Error('agentCoreCodeRunner requires the `@aws-sdk/client-bedrock-agentcore` peer dependency.\n' +
49
+ ' Install: npm install @aws-sdk/client-bedrock-agentcore\n' +
50
+ ' Or pass `_client` for a pre-built or mock client.\n' +
51
+ ' For a local dev loop with no AWS at all, use `localCodeRunner()`.');
52
+ }
53
+ }
54
+ if (!mod.BedrockAgentCoreClient) {
55
+ throw new Error('agentCoreCodeRunner: `@aws-sdk/client-bedrock-agentcore` is installed but ' +
56
+ '`BedrockAgentCoreClient` was not found. Update the SDK.');
57
+ }
58
+ const sdk = new mod.BedrockAgentCoreClient({ ...(options.region && { region: options.region }) });
59
+ const send = async (Ctor, name, input, abortSignal) => {
60
+ if (!Ctor) {
61
+ throw new Error(`agentCoreCodeRunner: \`@aws-sdk/client-bedrock-agentcore\` is missing ${name}. ` +
62
+ 'Upgrade the SDK, or pass `_client` with your own mapping.');
63
+ }
64
+ return abortSignal ? sdk.send(new Ctor(input), { abortSignal }) : sdk.send(new Ctor(input));
65
+ };
66
+ return {
67
+ async startSession(input) {
68
+ const r = (await send(mod.StartCodeInterpreterSessionCommand, 'StartCodeInterpreterSessionCommand', input));
69
+ return { ...(r?.sessionId !== undefined && { sessionId: r.sessionId }) };
70
+ },
71
+ async invoke(input, invokeOptions) {
72
+ const abortSignal = invokeOptions?.abortSignal;
73
+ const r = (await send(mod.InvokeCodeInterpreterCommand, 'InvokeCodeInterpreterCommand', input, abortSignal));
74
+ return drainStream(r?.stream, {
75
+ requireResult: RESULT_REQUIRED.has(input.name),
76
+ ...(abortSignal && { signal: abortSignal }),
77
+ });
78
+ },
79
+ async stopSession(input) {
80
+ await send(mod.StopCodeInterpreterSessionCommand, 'StopCodeInterpreterSessionCommand', input);
81
+ },
82
+ };
83
+ }
84
+ exports.createCodeClient = createCodeClient;
85
+ /** Every modelled error member of the stream union, in SDK spelling. */
86
+ exports.STREAM_ERROR_MEMBERS = [
87
+ 'accessDeniedException',
88
+ 'conflictException',
89
+ 'internalServerException',
90
+ 'resourceNotFoundException',
91
+ 'serviceQuotaExceededException',
92
+ 'throttlingException',
93
+ 'validationException',
94
+ ];
95
+ /**
96
+ * Drain the event stream into one answer.
97
+ *
98
+ * An ERROR MEMBER RAISES. This is the honesty line for this adapter: the SDK
99
+ * models seven failure shapes as ordinary members of the stream union, so an
100
+ * `AccessDeniedException` arrives as a value, not a rejection. Folding it in
101
+ * as empty output would report a clean run in which the code "printed
102
+ * nothing" — a silent success, at the exact moment an operator most needs the
103
+ * word "AccessDenied".
104
+ *
105
+ * Nothing is filled in that the stream did not carry: no exit status, no
106
+ * error flag. And a file operation whose stream ended with no result at all
107
+ * (`requireResult`) is a broken call, not an empty answer.
108
+ */
109
+ async function drainStream(stream, options) {
110
+ if (!stream) {
111
+ throw new Error('agentCoreCodeRunner: InvokeCodeInterpreter returned no stream. The response carries ' +
112
+ 'its payload as an event stream (`response.stream`), so an absent one is a broken ' +
113
+ 'call, not an empty result.');
114
+ }
115
+ let stdout = '';
116
+ let stderr = '';
117
+ let exitCode;
118
+ let isError;
119
+ let results = 0;
120
+ const resources = [];
121
+ for await (const event of (0, abort_js_1.abortableIterable)(stream, options.signal)) {
122
+ for (const member of exports.STREAM_ERROR_MEMBERS) {
123
+ const raised = event[member];
124
+ if (raised) {
125
+ const error = new Error(`agentCoreCodeRunner: ${member} from InvokeCodeInterpreter — ` +
126
+ `${raised.message ?? 'no message supplied'}`);
127
+ error.name = member.charAt(0).toUpperCase() + member.slice(1);
128
+ throw error;
129
+ }
130
+ }
131
+ const result = event.result;
132
+ if (!result)
133
+ continue;
134
+ results += 1;
135
+ if (result.isError === true)
136
+ isError = true;
137
+ else if (result.isError === false && isError === undefined)
138
+ isError = false;
139
+ for (const block of result.content ?? []) {
140
+ if (block.resource !== undefined && block.resource !== null)
141
+ resources.push(block.resource);
142
+ }
143
+ const structured = result.structuredContent;
144
+ if (structured) {
145
+ if (structured.stdout !== undefined)
146
+ stdout += structured.stdout;
147
+ if (structured.stderr !== undefined)
148
+ stderr += structured.stderr;
149
+ if (structured.exitCode !== undefined)
150
+ exitCode = structured.exitCode;
151
+ }
152
+ else {
153
+ // Fallback: a response that filled only the typed content blocks. Text
154
+ // blocks are the readable half; a binary/resource block is described by
155
+ // name rather than inlined, because inlining it is the bug this port exists
156
+ // to prevent.
157
+ for (const block of result.content ?? []) {
158
+ if (block.text !== undefined)
159
+ stdout += block.text;
160
+ else if (block.name !== undefined)
161
+ stdout += `[${block.type ?? 'resource'}: ${block.name}]`;
162
+ }
163
+ }
164
+ }
165
+ if (options.requireResult && results === 0) {
166
+ throw new Error('agentCoreCodeRunner: InvokeCodeInterpreter answered a file operation with no result. ' +
167
+ 'Nothing confirmed it, so it is not reported as done.');
168
+ }
169
+ return {
170
+ stdout,
171
+ stderr,
172
+ ...(exitCode !== undefined && { exitCode }),
173
+ ...(isError !== undefined && { isError }),
174
+ ...(resources.length > 0 && { resources }),
175
+ };
176
+ }
177
+ exports.drainStream = drainStream;
178
+ //# sourceMappingURL=agentcoreClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agentcoreClient.js","sourceRoot":"","sources":["../../../src/adapters/code/agentcoreClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,348 @@
1
+ "use strict";
2
+ /**
3
+ * What `agentCoreCodeRunner` has to know about AgentCore's wire, as pure
4
+ * functions: how big a request is, how a returned file is paired with the
5
+ * path asked for, how the staged-input manifest reaches a runtime that has no
6
+ * environment parameter, and which service errors mean the session is gone.
7
+ *
8
+ * Kept apart from the session so each rule is one small function with its
9
+ * own test, and so the session reads as the sequence it is.
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.errorNameOf = exports.serviceRefusal = exports.sessionExpiryEvidence = exports.withManifestExport = exports.manifestSetupCode = exports.manifestRuntime = exports.MANIFEST_SET_MARKER = exports.STAGED_INPUTS_DIR = exports.uriNames = exports.pairReadFile = exports.fileContent = exports.jsonStringBytes = exports.writeFilesRequestBytes = exports.AGENTCORE_MAX_REQUEST_BYTES = void 0;
13
+ const types_js_1 = require("../../provider-contract/types.js");
14
+ const codeSandbox_js_1 = require("../../provider-contract/codeSandbox.js");
15
+ const output_js_1 = require("./output.js");
16
+ // ── Request size ─────────────────────────────────────────────────────────
17
+ /**
18
+ * AgentCore's per-call limit for `InvokeCodeInterpreter`: "Max payload size —
19
+ * 100 MB — Maximum size for request/response payloads", not adjustable
20
+ * (AgentCore Code Interpreter service quotas).
21
+ *
22
+ * The service does not say whether that MB is 10^6 or 2^20 bytes, so the
23
+ * adapter holds a request to the SMALLER reading: a request it sends is never
24
+ * one the limit could refuse on size, and one between the two readings is
25
+ * refused here by name rather than by the service in words nobody can act on.
26
+ */
27
+ exports.AGENTCORE_MAX_REQUEST_BYTES = 100_000_000;
28
+ /** `{"arguments":{"content":[` … `]},"name":"writeFiles"}` around the entries. */
29
+ const WRITE_FILES_ENVELOPE_BYTES = JSON.stringify({
30
+ arguments: { content: [] },
31
+ name: 'writeFiles',
32
+ }).length;
33
+ /**
34
+ * The size, in bytes, of the JSON body one `writeFiles` request sends —
35
+ * computed, not built: text as its JSON-escaped UTF-8, bytes as base64 (how
36
+ * the JSON protocol carries a blob), plus the envelope. Building the body to
37
+ * measure it would hold a second copy of up to a hundred megabytes.
38
+ */
39
+ function writeFilesRequestBytes(content) {
40
+ let bytes = WRITE_FILES_ENVELOPE_BYTES + Math.max(content.length - 1, 0); // the commas
41
+ for (const entry of content) {
42
+ bytes += '{"path":'.length + jsonStringBytes(entry.path) + '}'.length;
43
+ if (entry.text !== undefined)
44
+ bytes += ',"text":'.length + jsonStringBytes(entry.text);
45
+ else
46
+ bytes += ',"blob":'.length + 2 + base64Length(entry.blob.byteLength);
47
+ }
48
+ return bytes;
49
+ }
50
+ exports.writeFilesRequestBytes = writeFilesRequestBytes;
51
+ /** Bytes of `JSON.stringify(text)` encoded as UTF-8, quotes included, without building it. */
52
+ function jsonStringBytes(text) {
53
+ let bytes = 2;
54
+ for (let i = 0; i < text.length; i++) {
55
+ const unit = text.charCodeAt(i);
56
+ if (unit === 0x22 || unit === 0x5c)
57
+ bytes += 2; // \" and \\
58
+ else if (unit < 0x20)
59
+ bytes += SHORT_ESCAPES.has(unit) ? 2 : 6; // \n … or \u00XX
60
+ else if (unit < 0x80)
61
+ bytes += 1;
62
+ else if (unit < 0x800)
63
+ bytes += 2;
64
+ else if ((0, output_js_1.isHighSurrogate)(unit) && (0, output_js_1.isLowSurrogate)(text.charCodeAt(i + 1))) {
65
+ bytes += 4;
66
+ i++;
67
+ }
68
+ else if ((0, output_js_1.isHighSurrogate)(unit) || (0, output_js_1.isLowSurrogate)(unit))
69
+ bytes += 6; // a lone half: \udXXX
70
+ else
71
+ bytes += 3;
72
+ }
73
+ return bytes;
74
+ }
75
+ exports.jsonStringBytes = jsonStringBytes;
76
+ /** Control characters JSON writes as a two-character escape: \b \t \n \f \r. */
77
+ const SHORT_ESCAPES = new Set([0x08, 0x09, 0x0a, 0x0c, 0x0d]);
78
+ function base64Length(bytes) {
79
+ return 4 * Math.ceil(bytes / 3);
80
+ }
81
+ /** One `writeFiles` entry for a payload: TEXT for a string, BYTES for bytes. */
82
+ function fileContent(path, data) {
83
+ return typeof data === 'string' ? { path, text: data } : { path, blob: data };
84
+ }
85
+ exports.fileContent = fileContent;
86
+ // ── Reading a file back ──────────────────────────────────────────────────
87
+ /** How AgentCore names a file it returns: `file:///` + the path asked for,
88
+ * percent-encoded (read from a published real `readFiles` answer:
89
+ * `report.csv` → `file:///report.csv`; the shape is not in AWS's docs). */
90
+ const FILE_URI_PREFIX = 'file:///';
91
+ /**
92
+ * The one file a `readFiles` answer returned for `path` — or a refusal.
93
+ *
94
+ * Paired by the URI the SERVICE put on the file, never by position: a file
95
+ * with no URI, or a URI naming another path, fails closed, and so does an
96
+ * answer carrying several files for one path. Text or bytes is read off which
97
+ * field the service filled — never off the file's name — and an entry with
98
+ * both, or neither, is refused. A file over `maxBytes` is refused whole.
99
+ */
100
+ function pairReadFile(path, answer, maxBytes) {
101
+ const refuse = (reason, why) => {
102
+ throw new codeSandbox_js_1.CodeSandboxError(reason, `agentCoreCodeRunner: reading '${path}' — ${why}`, { path });
103
+ };
104
+ if (answer.isError === true) {
105
+ refuse('file-not-returned', 'the service flagged its answer as an error, so no file came back. Its words are not ' +
106
+ 'repeated here.');
107
+ }
108
+ const resources = answer.resources ?? [];
109
+ if (resources.length === 0)
110
+ refuse('file-not-returned', 'the answer held no file.');
111
+ for (const resource of resources) {
112
+ if (typeof resource.uri !== 'string' || resource.uri.length === 0) {
113
+ refuse('uri-missing', 'a file came back without a URI, so it cannot be paired with the path asked for.');
114
+ }
115
+ if (hasQueryOrFragment(resource.uri)) {
116
+ refuse('uri-mismatch', 'a file came back under a URI with a query or fragment, which is not part of any file ' +
117
+ 'name (a literal ? or # in a name arrives as %3F or %23).');
118
+ }
119
+ if (!uriNames(resource.uri, path)) {
120
+ refuse('uri-mismatch', 'a file came back under a URI that names another path.');
121
+ }
122
+ }
123
+ if (resources.length > 1)
124
+ refuse('content-ambiguous', `${resources.length} files came back for one path.`);
125
+ const resource = resources[0];
126
+ const hasText = resource.text !== undefined && resource.text !== null;
127
+ const hasBlob = resource.blob !== undefined && resource.blob !== null;
128
+ if (hasText === hasBlob) {
129
+ refuse('content-ambiguous', hasText
130
+ ? 'the file came back as both text and bytes.'
131
+ : 'the file came back with neither text nor bytes.');
132
+ }
133
+ if (hasText && typeof resource.text !== 'string')
134
+ refuse('content-ambiguous', 'its text is not a string.');
135
+ if (hasBlob && !isBytes(resource.blob))
136
+ refuse('content-ambiguous', 'its bytes are not bytes.');
137
+ const data = hasText ? resource.text : resource.blob;
138
+ const bytes = (0, output_js_1.payloadBytes)(data);
139
+ if (bytes > maxBytes) {
140
+ throw new codeSandbox_js_1.CodeSandboxError('file-too-large', `agentCoreCodeRunner: '${path}' is ${bytes} bytes and this read allows ${maxBytes}. ` +
141
+ 'Nothing was returned — a file is never handed back cut.', { path, bytes, limit: maxBytes });
142
+ }
143
+ return {
144
+ path,
145
+ data,
146
+ bytes,
147
+ ...(typeof resource.mimeType === 'string' &&
148
+ resource.mimeType.length > 0 && {
149
+ mediaType: resource.mimeType,
150
+ }),
151
+ };
152
+ }
153
+ exports.pairReadFile = pairReadFile;
154
+ /**
155
+ * Does `uri` name `path`? ONE declared form, read ONE way (RFC 8089's file
156
+ * URI, RFC 3986's path syntax): `file:///` followed by a path whose segments
157
+ * are percent-encoded.
158
+ *
159
+ * - A raw `?` or `#` starts a query or a fragment, which is never part of a
160
+ * file name, so a URI carrying one is refused outright. A name that really
161
+ * contains `?` or `#` arrives as `%3F` / `%23`.
162
+ * - Each segment is decoded on its own. An invalid escape refuses the URI, and
163
+ * a decoded `/` (an encoded `%2F`) is a character inside one name, so it can
164
+ * never stand in for the separator.
165
+ * - Only the decoded path is compared. There is no second, raw reading to fall
166
+ * back on when the first does not match.
167
+ */
168
+ function uriNames(uri, path) {
169
+ if (!uri.startsWith(FILE_URI_PREFIX))
170
+ return false;
171
+ const named = uri.slice(FILE_URI_PREFIX.length);
172
+ if (hasQueryOrFragment(named))
173
+ return false;
174
+ const segments = [];
175
+ for (const encoded of named.split('/')) {
176
+ let segment;
177
+ try {
178
+ segment = decodeURIComponent(encoded);
179
+ }
180
+ catch {
181
+ return false;
182
+ }
183
+ if (segment.includes('/'))
184
+ return false;
185
+ segments.push(segment);
186
+ }
187
+ return segments.join('/') === path;
188
+ }
189
+ exports.uriNames = uriNames;
190
+ /** A raw `?` or `#` in a URI: a query or a fragment component. */
191
+ function hasQueryOrFragment(uriTail) {
192
+ return uriTail.includes('?') || uriTail.includes('#');
193
+ }
194
+ function isBytes(value) {
195
+ return (value instanceof Uint8Array || Object.prototype.toString.call(value) === '[object Uint8Array]');
196
+ }
197
+ // ── The staged-input manifest ────────────────────────────────────────────
198
+ /** Where staged inputs land, relative to the session's working directory. */
199
+ exports.STAGED_INPUTS_DIR = 'af-staged-inputs';
200
+ /** The line the manifest setup prints once the variable is set. */
201
+ exports.MANIFEST_SET_MARKER = 'af-staged-inputs-set';
202
+ /**
203
+ * Which runtime a language names, for the manifest setup. `undefined` (no
204
+ * language sent) is the service's default runtime, Python; a language this
205
+ * adapter does not know is `undefined` — and refused, never guessed.
206
+ */
207
+ function manifestRuntime(language) {
208
+ if (language === undefined || language === '')
209
+ return 'python';
210
+ const lower = language.toLowerCase();
211
+ if (lower === 'python' || lower === 'python3' || lower === 'py')
212
+ return 'python';
213
+ if (lower === 'javascript' || lower === 'js' || lower === 'node')
214
+ return 'javascript';
215
+ if (lower === 'typescript' || lower === 'ts')
216
+ return 'typescript';
217
+ return undefined;
218
+ }
219
+ exports.manifestRuntime = manifestRuntime;
220
+ /**
221
+ * The code that sets {@link STAGED_INPUTS_ENV} inside one runtime of the
222
+ * session, then prints {@link MANIFEST_SET_MARKER}.
223
+ *
224
+ * WHY A SEPARATE CALL. `executeCode` takes no environment, and prepending a
225
+ * line to the caller's code would shift every line number its traceback
226
+ * reports and break a Python `from __future__` import. The session's runtime
227
+ * keeps its state between executions, so the variable is set once per
228
+ * runtime and manifest, by this code, before the caller's code runs.
229
+ *
230
+ * The value is the manifest JSON as a JSON string literal, which is a valid
231
+ * string literal in Python and in JavaScript alike.
232
+ */
233
+ function manifestSetupCode(runtime, manifestJson) {
234
+ const value = JSON.stringify(manifestJson);
235
+ const name = JSON.stringify(types_js_1.STAGED_INPUTS_ENV);
236
+ const marker = JSON.stringify(exports.MANIFEST_SET_MARKER);
237
+ if (runtime === 'python') {
238
+ return [
239
+ 'import os as _af_os',
240
+ `_af_os.environ[${name}] = ${value}`,
241
+ 'del _af_os',
242
+ `print(${marker})`,
243
+ ].join('\n');
244
+ }
245
+ return [
246
+ '{',
247
+ runtime === 'typescript'
248
+ ? ' const _afHost: any = globalThis;'
249
+ : ' const _afHost = globalThis;',
250
+ ` const _afValue = ${value};`,
251
+ ' if (_afHost.process && _afHost.process.env) {',
252
+ ` _afHost.process.env[${name}] = _afValue;`,
253
+ ' } else {',
254
+ ` _afHost.Deno.env.set(${name}, _afValue);`,
255
+ ' }',
256
+ ` console.log(${marker});`,
257
+ '}',
258
+ ].join('\n');
259
+ }
260
+ exports.manifestSetupCode = manifestSetupCode;
261
+ /**
262
+ * `command`, with {@link STAGED_INPUTS_ENV} exported ahead of it.
263
+ *
264
+ * A command is its own shell process, so a variable set in a code runtime
265
+ * never reaches it; this line does, every time, and needs no state. The value
266
+ * is single-quoted, the one shell quoting with no expansions inside it.
267
+ */
268
+ function withManifestExport(command, manifestJson) {
269
+ return `export ${types_js_1.STAGED_INPUTS_ENV}=${shellQuoted(manifestJson)}\n${command}`;
270
+ }
271
+ exports.withManifestExport = withManifestExport;
272
+ function shellQuoted(text) {
273
+ return `'${text.split("'").join(`'\\''`)}'`;
274
+ }
275
+ // ── Service errors ───────────────────────────────────────────────────────
276
+ /** The exceptions AgentCore models for `InvokeCodeInterpreter`, by class name. */
277
+ const MODELLED_EXCEPTIONS = new Set([
278
+ 'AccessDeniedException',
279
+ 'ConflictException',
280
+ 'InternalServerException',
281
+ 'ResourceNotFoundException',
282
+ 'ServiceQuotaExceededException',
283
+ 'ThrottlingException',
284
+ 'ValidationException',
285
+ ]);
286
+ /** Words a service uses for a session that is gone — both halves required, so
287
+ * a validation message that merely echoes a request containing "inactive"
288
+ * is not read as a dead session. */
289
+ const SAYS_INACTIVE = /\bnot active\b|\binactive\b/i;
290
+ const NAMES_A_SESSION = /\bsession\b/i;
291
+ /**
292
+ * What a service error says about the session: `'session'` when it means the
293
+ * session itself is gone, `'file-or-session'` when it could mean that or a
294
+ * missing file, `undefined` otherwise.
295
+ *
296
+ * - A modelled exception — a `ValidationException` above all — whose words
297
+ * name a session and say it is "not active" or "inactive": `'session'`.
298
+ * - A `ResourceNotFoundException`, thrown by the SDK or carried on the stream:
299
+ * on a call that addresses nothing but the session (code, a command, a
300
+ * write) the missing resource is the session, so `'session'`. A READ also
301
+ * names a file, and AgentCore does not say which resource was missing, so
302
+ * `'file-or-session'` — never taken as proof the session is gone.
303
+ */
304
+ function sessionExpiryEvidence(err, tool) {
305
+ const name = errorNameOf(err);
306
+ const message = errorMessage(err);
307
+ if (MODELLED_EXCEPTIONS.has(name) &&
308
+ SAYS_INACTIVE.test(message) &&
309
+ NAMES_A_SESSION.test(message)) {
310
+ return 'session';
311
+ }
312
+ if (name === 'ResourceNotFoundException') {
313
+ return tool === 'readFiles' ? 'file-or-session' : 'session';
314
+ }
315
+ return undefined;
316
+ }
317
+ exports.sessionExpiryEvidence = sessionExpiryEvidence;
318
+ /**
319
+ * A modelled service exception from a file or command call, rewritten in
320
+ * fixed words that name the exception and the call — or `undefined` for any
321
+ * other error, which passes through as it is.
322
+ *
323
+ * The service's own message is NOT repeated: a validation message can quote
324
+ * what was sent, and what was sent here is a path, a command or a file's
325
+ * bytes. The exception's name is kept as the error's `name`, so a caller
326
+ * branches on it exactly as on the SDK's own error.
327
+ */
328
+ function serviceRefusal(err, tool) {
329
+ const name = errorNameOf(err);
330
+ if (!MODELLED_EXCEPTIONS.has(name))
331
+ return undefined;
332
+ const refusal = new Error(`agentCoreCodeRunner: the service refused ${tool} (${name}). Its message is not repeated ` +
333
+ 'here, because it can quote what was sent.');
334
+ refusal.name = name;
335
+ return refusal;
336
+ }
337
+ exports.serviceRefusal = serviceRefusal;
338
+ /** The `name` an error carries — an SDK exception's class name — or `''`. */
339
+ function errorNameOf(err) {
340
+ const name = err?.name;
341
+ return typeof name === 'string' ? name : '';
342
+ }
343
+ exports.errorNameOf = errorNameOf;
344
+ function errorMessage(err) {
345
+ const message = err?.message;
346
+ return typeof message === 'string' ? message : '';
347
+ }
348
+ //# sourceMappingURL=agentcoreWire.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agentcoreWire.js","sourceRoot":"","sources":["../../../src/adapters/code/agentcoreWire.ts"],"names":[],"mappings":"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"}