@openai/agents-core 0.11.6 → 0.11.8

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 (67) hide show
  1. package/dist/index.d.ts +3 -3
  2. package/dist/index.js.map +1 -1
  3. package/dist/index.mjs.map +1 -1
  4. package/dist/items.d.ts +4 -1
  5. package/dist/items.js +4 -1
  6. package/dist/items.js.map +1 -1
  7. package/dist/items.mjs +4 -1
  8. package/dist/items.mjs.map +1 -1
  9. package/dist/mcp.d.ts +56 -5
  10. package/dist/mcp.js +111 -10
  11. package/dist/mcp.js.map +1 -1
  12. package/dist/mcp.mjs +110 -10
  13. package/dist/mcp.mjs.map +1 -1
  14. package/dist/mcpUtil.d.ts +24 -0
  15. package/dist/mcpUtil.js.map +1 -1
  16. package/dist/mcpUtil.mjs.map +1 -1
  17. package/dist/metadata.js +2 -2
  18. package/dist/metadata.mjs +2 -2
  19. package/dist/run.d.ts +5 -0
  20. package/dist/run.js +5 -0
  21. package/dist/run.js.map +1 -1
  22. package/dist/run.mjs +5 -0
  23. package/dist/run.mjs.map +1 -1
  24. package/dist/runState.d.ts +5 -1
  25. package/dist/runState.js +25 -2
  26. package/dist/runState.js.map +1 -1
  27. package/dist/runState.mjs +25 -2
  28. package/dist/runState.mjs.map +1 -1
  29. package/dist/runner/toolExecution.js +88 -16
  30. package/dist/runner/toolExecution.js.map +1 -1
  31. package/dist/runner/toolExecution.mjs +89 -17
  32. package/dist/runner/toolExecution.mjs.map +1 -1
  33. package/dist/sandbox/errors.d.ts +1 -0
  34. package/dist/sandbox/errors.js +81 -0
  35. package/dist/sandbox/errors.js.map +1 -1
  36. package/dist/sandbox/errors.mjs +81 -0
  37. package/dist/sandbox/errors.mjs.map +1 -1
  38. package/dist/sandbox/events.d.ts +1 -0
  39. package/dist/sandbox/events.js +8 -0
  40. package/dist/sandbox/events.js.map +1 -1
  41. package/dist/sandbox/events.mjs +8 -0
  42. package/dist/sandbox/events.mjs.map +1 -1
  43. package/dist/sandbox/runtime/spans.js +15 -3
  44. package/dist/sandbox/runtime/spans.js.map +1 -1
  45. package/dist/sandbox/runtime/spans.mjs +15 -3
  46. package/dist/sandbox/runtime/spans.mjs.map +1 -1
  47. package/dist/shims/mcp-server/browser.d.ts +4 -1
  48. package/dist/shims/mcp-server/browser.js +9 -0
  49. package/dist/shims/mcp-server/browser.js.map +1 -1
  50. package/dist/shims/mcp-server/browser.mjs +9 -0
  51. package/dist/shims/mcp-server/browser.mjs.map +1 -1
  52. package/dist/shims/mcp-server/node.d.ts +4 -1
  53. package/dist/shims/mcp-server/node.js +20 -3
  54. package/dist/shims/mcp-server/node.js.map +1 -1
  55. package/dist/shims/mcp-server/node.mjs +21 -4
  56. package/dist/shims/mcp-server/node.mjs.map +1 -1
  57. package/dist/tool.d.ts +52 -0
  58. package/dist/tool.js +6 -1
  59. package/dist/tool.js.map +1 -1
  60. package/dist/tool.mjs +5 -0
  61. package/dist/tool.mjs.map +1 -1
  62. package/dist/utils/customData.d.ts +5 -0
  63. package/dist/utils/customData.js +69 -0
  64. package/dist/utils/customData.js.map +1 -0
  65. package/dist/utils/customData.mjs +65 -0
  66. package/dist/utils/customData.mjs.map +1 -0
  67. package/package.json +1 -1
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeToolOutputCustomData = normalizeToolOutputCustomData;
4
+ exports.maybeExtractToolOutputCustomData = maybeExtractToolOutputCustomData;
5
+ const errors_1 = require("../errors.js");
6
+ function normalizeToolOutputCustomData(value) {
7
+ if (value == null) {
8
+ return undefined;
9
+ }
10
+ if (!isRecord(value)) {
11
+ throw new errors_1.UserError('customDataExtractor must return an object or null.');
12
+ }
13
+ if (Reflect.ownKeys(value).some((key) => typeof key !== 'string')) {
14
+ throw new errors_1.UserError('customDataExtractor must return an object with string keys.');
15
+ }
16
+ if (Object.keys(value).length === 0) {
17
+ return undefined;
18
+ }
19
+ assertJsonCompatible(value, 'customDataExtractor result');
20
+ return JSON.parse(JSON.stringify(value));
21
+ }
22
+ async function maybeExtractToolOutputCustomData(extractor, context) {
23
+ if (!extractor) {
24
+ return undefined;
25
+ }
26
+ return normalizeToolOutputCustomData(await extractor(context));
27
+ }
28
+ function isRecord(value) {
29
+ return (!!value &&
30
+ typeof value === 'object' &&
31
+ !Array.isArray(value) &&
32
+ (Object.getPrototypeOf(value) === Object.prototype ||
33
+ Object.getPrototypeOf(value) === null));
34
+ }
35
+ function assertJsonCompatible(value, path) {
36
+ if (value == null) {
37
+ return;
38
+ }
39
+ const valueType = typeof value;
40
+ if (valueType === 'string' || valueType === 'boolean') {
41
+ return;
42
+ }
43
+ if (valueType === 'number') {
44
+ if (!Number.isFinite(value)) {
45
+ throw new errors_1.UserError('customDataExtractor must return JSON-compatible data.');
46
+ }
47
+ return;
48
+ }
49
+ if (valueType === 'undefined' ||
50
+ valueType === 'function' ||
51
+ valueType === 'symbol' ||
52
+ valueType === 'bigint') {
53
+ throw new errors_1.UserError('customDataExtractor must return JSON-compatible data.');
54
+ }
55
+ if (Array.isArray(value)) {
56
+ value.forEach((entry, index) => assertJsonCompatible(entry, `${path}[${index}]`));
57
+ return;
58
+ }
59
+ if (!isRecord(value)) {
60
+ throw new errors_1.UserError('customDataExtractor must return JSON-compatible data.');
61
+ }
62
+ for (const key of Reflect.ownKeys(value)) {
63
+ if (typeof key !== 'string') {
64
+ throw new errors_1.UserError('customDataExtractor must return JSON-compatible data.');
65
+ }
66
+ assertJsonCompatible(value[key], `${path}.${key}`);
67
+ }
68
+ }
69
+ //# sourceMappingURL=customData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customData.js","sourceRoot":"","sources":["../../src/utils/customData.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import { UserError } from "../errors.mjs";
2
+ export function normalizeToolOutputCustomData(value) {
3
+ if (value == null) {
4
+ return undefined;
5
+ }
6
+ if (!isRecord(value)) {
7
+ throw new UserError('customDataExtractor must return an object or null.');
8
+ }
9
+ if (Reflect.ownKeys(value).some((key) => typeof key !== 'string')) {
10
+ throw new UserError('customDataExtractor must return an object with string keys.');
11
+ }
12
+ if (Object.keys(value).length === 0) {
13
+ return undefined;
14
+ }
15
+ assertJsonCompatible(value, 'customDataExtractor result');
16
+ return JSON.parse(JSON.stringify(value));
17
+ }
18
+ export async function maybeExtractToolOutputCustomData(extractor, context) {
19
+ if (!extractor) {
20
+ return undefined;
21
+ }
22
+ return normalizeToolOutputCustomData(await extractor(context));
23
+ }
24
+ function isRecord(value) {
25
+ return (!!value &&
26
+ typeof value === 'object' &&
27
+ !Array.isArray(value) &&
28
+ (Object.getPrototypeOf(value) === Object.prototype ||
29
+ Object.getPrototypeOf(value) === null));
30
+ }
31
+ function assertJsonCompatible(value, path) {
32
+ if (value == null) {
33
+ return;
34
+ }
35
+ const valueType = typeof value;
36
+ if (valueType === 'string' || valueType === 'boolean') {
37
+ return;
38
+ }
39
+ if (valueType === 'number') {
40
+ if (!Number.isFinite(value)) {
41
+ throw new UserError('customDataExtractor must return JSON-compatible data.');
42
+ }
43
+ return;
44
+ }
45
+ if (valueType === 'undefined' ||
46
+ valueType === 'function' ||
47
+ valueType === 'symbol' ||
48
+ valueType === 'bigint') {
49
+ throw new UserError('customDataExtractor must return JSON-compatible data.');
50
+ }
51
+ if (Array.isArray(value)) {
52
+ value.forEach((entry, index) => assertJsonCompatible(entry, `${path}[${index}]`));
53
+ return;
54
+ }
55
+ if (!isRecord(value)) {
56
+ throw new UserError('customDataExtractor must return JSON-compatible data.');
57
+ }
58
+ for (const key of Reflect.ownKeys(value)) {
59
+ if (typeof key !== 'string') {
60
+ throw new UserError('customDataExtractor must return JSON-compatible data.');
61
+ }
62
+ assertJsonCompatible(value[key], `${path}.${key}`);
63
+ }
64
+ }
65
+ //# sourceMappingURL=customData.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customData.mjs","sourceRoot":"","sources":["../../src/utils/customData.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@openai/agents-core",
3
3
  "repository": "https://github.com/openai/openai-agents-js",
4
4
  "homepage": "https://openai.github.io/openai-agents-js/",
5
- "version": "0.11.6",
5
+ "version": "0.11.8",
6
6
  "description": "The OpenAI Agents SDK is a lightweight yet powerful framework for building multi-agent workflows.",
7
7
  "author": "OpenAI <support@openai.com>",
8
8
  "main": "dist/index.js",