@openai/agents-core 0.9.1 → 0.10.1

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 (87) hide show
  1. package/dist/agent.d.ts +25 -2
  2. package/dist/agent.js +45 -2
  3. package/dist/agent.js.map +1 -1
  4. package/dist/agent.mjs +46 -3
  5. package/dist/agent.mjs.map +1 -1
  6. package/dist/agentToolRunConfig.js +3 -0
  7. package/dist/agentToolRunConfig.js.map +1 -1
  8. package/dist/agentToolRunConfig.mjs +3 -0
  9. package/dist/agentToolRunConfig.mjs.map +1 -1
  10. package/dist/defaultModel.js +2 -1
  11. package/dist/defaultModel.js.map +1 -1
  12. package/dist/defaultModel.mjs +2 -1
  13. package/dist/defaultModel.mjs.map +1 -1
  14. package/dist/index.d.ts +2 -2
  15. package/dist/index.js.map +1 -1
  16. package/dist/index.mjs.map +1 -1
  17. package/dist/mcp.d.ts +9 -3
  18. package/dist/mcp.js +238 -16
  19. package/dist/mcp.js.map +1 -1
  20. package/dist/mcp.mjs +238 -16
  21. package/dist/mcp.mjs.map +1 -1
  22. package/dist/metadata.js +2 -2
  23. package/dist/metadata.js.map +1 -1
  24. package/dist/metadata.mjs +2 -2
  25. package/dist/metadata.mjs.map +1 -1
  26. package/dist/result.d.ts +1 -1
  27. package/dist/result.js.map +1 -1
  28. package/dist/result.mjs.map +1 -1
  29. package/dist/run.d.ts +17 -1
  30. package/dist/run.js +59 -11
  31. package/dist/run.js.map +1 -1
  32. package/dist/run.mjs +60 -12
  33. package/dist/run.mjs.map +1 -1
  34. package/dist/runState.d.ts +6 -4
  35. package/dist/runState.js +7 -3
  36. package/dist/runState.js.map +1 -1
  37. package/dist/runState.mjs +7 -3
  38. package/dist/runState.mjs.map +1 -1
  39. package/dist/runner/toolExecution.js +45 -12
  40. package/dist/runner/toolExecution.js.map +1 -1
  41. package/dist/runner/toolExecution.mjs +45 -12
  42. package/dist/runner/toolExecution.mjs.map +1 -1
  43. package/dist/runner/toolSearch.js +2 -3
  44. package/dist/runner/toolSearch.js.map +1 -1
  45. package/dist/runner/toolSearch.mjs +2 -3
  46. package/dist/runner/toolSearch.mjs.map +1 -1
  47. package/dist/runner/turnPreparation.js +1 -1
  48. package/dist/runner/turnPreparation.js.map +1 -1
  49. package/dist/runner/turnPreparation.mjs +1 -1
  50. package/dist/runner/turnPreparation.mjs.map +1 -1
  51. package/dist/sandbox/agent.d.ts +2 -2
  52. package/dist/sandbox/agent.js +1 -0
  53. package/dist/sandbox/agent.js.map +1 -1
  54. package/dist/sandbox/agent.mjs +1 -0
  55. package/dist/sandbox/agent.mjs.map +1 -1
  56. package/dist/sandbox/client.d.ts +3 -3
  57. package/dist/sandbox/client.js +6 -1
  58. package/dist/sandbox/client.js.map +1 -1
  59. package/dist/sandbox/client.mjs +7 -2
  60. package/dist/sandbox/client.mjs.map +1 -1
  61. package/dist/sandbox/manifest.d.ts +6 -5
  62. package/dist/sandbox/manifest.js +7 -0
  63. package/dist/sandbox/manifest.js.map +1 -1
  64. package/dist/sandbox/manifest.mjs +7 -0
  65. package/dist/sandbox/manifest.mjs.map +1 -1
  66. package/dist/sandbox/users.d.ts +7 -2
  67. package/dist/sandbox/users.js +1 -1
  68. package/dist/sandbox/users.js.map +1 -1
  69. package/dist/sandbox/users.mjs +1 -1
  70. package/dist/sandbox/users.mjs.map +1 -1
  71. package/dist/tool.d.ts +4 -2
  72. package/dist/tool.js +8 -16
  73. package/dist/tool.js.map +1 -1
  74. package/dist/tool.mjs +8 -16
  75. package/dist/tool.mjs.map +1 -1
  76. package/dist/types/providerData.d.ts +4 -2
  77. package/dist/utils/index.d.ts +1 -0
  78. package/dist/utils/index.js +3 -1
  79. package/dist/utils/index.js.map +1 -1
  80. package/dist/utils/index.mjs +1 -0
  81. package/dist/utils/index.mjs.map +1 -1
  82. package/dist/utils/mcpApproval.d.ts +7 -0
  83. package/dist/utils/mcpApproval.js +103 -0
  84. package/dist/utils/mcpApproval.js.map +1 -0
  85. package/dist/utils/mcpApproval.mjs +100 -0
  86. package/dist/utils/mcpApproval.mjs.map +1 -0
  87. package/package.json +1 -1
package/dist/tool.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tool.mjs","sourceRoot":"","sources":["../src/tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool.mjs","sourceRoot":"","sources":["../src/tool.ts"],"names":[],"mappings":"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"}
@@ -26,10 +26,12 @@ export type HostedMCPTool<Context = UnknownContext> = {
26
26
  } | {
27
27
  require_approval: 'always' | {
28
28
  never?: {
29
- tool_names: string[];
29
+ tool_names?: string[];
30
+ read_only?: boolean;
30
31
  };
31
32
  always?: {
32
- tool_names: string[];
33
+ tool_names?: string[];
34
+ read_only?: boolean;
33
35
  };
34
36
  };
35
37
  on_approval?: HostedMCPApprovalFunction<Context>;
@@ -4,5 +4,6 @@ export { toFunctionToolName } from './tools';
4
4
  export { EventEmitterDelegate } from '../lifecycle';
5
5
  export { encodeUint8ArrayToBase64 } from './base64';
6
6
  export { applyDiff } from './applyDiff';
7
+ export { normalizeHostedMcpRequireApproval } from './mcpApproval';
7
8
  export { getToolSearchProviderCallId, getToolSearchMatchKey, getToolSearchOutputReplacementKey, getToolSearchExecution, isClientToolSearchCall, resolveToolSearchCallId, shouldQueuePendingToolSearchCall, takePendingToolSearchCallId, } from './toolSearch';
8
9
  export { matchesFunctionToolName, toolQualifiedName, getToolCallDisplayName, getFunctionToolDisplayName, } from '../toolIdentity';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFunctionToolDisplayName = exports.getToolCallDisplayName = exports.toolQualifiedName = exports.matchesFunctionToolName = exports.takePendingToolSearchCallId = exports.shouldQueuePendingToolSearchCall = exports.resolveToolSearchCallId = exports.isClientToolSearchCall = exports.getToolSearchExecution = exports.getToolSearchOutputReplacementKey = exports.getToolSearchMatchKey = exports.getToolSearchProviderCallId = exports.applyDiff = exports.encodeUint8ArrayToBase64 = exports.EventEmitterDelegate = exports.toFunctionToolName = exports.toSmartString = exports.isZodObject = void 0;
3
+ exports.getFunctionToolDisplayName = exports.getToolCallDisplayName = exports.toolQualifiedName = exports.matchesFunctionToolName = exports.takePendingToolSearchCallId = exports.shouldQueuePendingToolSearchCall = exports.resolveToolSearchCallId = exports.isClientToolSearchCall = exports.getToolSearchExecution = exports.getToolSearchOutputReplacementKey = exports.getToolSearchMatchKey = exports.getToolSearchProviderCallId = exports.normalizeHostedMcpRequireApproval = exports.applyDiff = exports.encodeUint8ArrayToBase64 = exports.EventEmitterDelegate = exports.toFunctionToolName = exports.toSmartString = exports.isZodObject = void 0;
4
4
  var typeGuards_1 = require("./typeGuards.js");
5
5
  Object.defineProperty(exports, "isZodObject", { enumerable: true, get: function () { return typeGuards_1.isZodObject; } });
6
6
  var smartString_1 = require("./smartString.js");
@@ -13,6 +13,8 @@ var base64_1 = require("./base64.js");
13
13
  Object.defineProperty(exports, "encodeUint8ArrayToBase64", { enumerable: true, get: function () { return base64_1.encodeUint8ArrayToBase64; } });
14
14
  var applyDiff_1 = require("./applyDiff.js");
15
15
  Object.defineProperty(exports, "applyDiff", { enumerable: true, get: function () { return applyDiff_1.applyDiff; } });
16
+ var mcpApproval_1 = require("./mcpApproval.js");
17
+ Object.defineProperty(exports, "normalizeHostedMcpRequireApproval", { enumerable: true, get: function () { return mcpApproval_1.normalizeHostedMcpRequireApproval; } });
16
18
  var toolSearch_1 = require("./toolSearch.js");
17
19
  Object.defineProperty(exports, "getToolSearchProviderCallId", { enumerable: true, get: function () { return toolSearch_1.getToolSearchProviderCallId; } });
18
20
  Object.defineProperty(exports, "getToolSearchMatchKey", { enumerable: true, get: function () { return toolSearch_1.getToolSearchMatchKey; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAAlC,yGAAA,WAAW,OAAA;AACpB,gDAA8C;AAArC,4GAAA,aAAa,OAAA;AACtB,oCAA6C;AAApC,2GAAA,kBAAkB,OAAA;AAC3B,6CAAoD;AAA3C,iHAAA,oBAAoB,OAAA;AAC7B,sCAAoD;AAA3C,kHAAA,wBAAwB,OAAA;AACjC,4CAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,8CASsB;AARpB,yHAAA,2BAA2B,OAAA;AAC3B,mHAAA,qBAAqB,OAAA;AACrB,+HAAA,iCAAiC,OAAA;AACjC,oHAAA,sBAAsB,OAAA;AACtB,oHAAA,sBAAsB,OAAA;AACtB,qHAAA,uBAAuB,OAAA;AACvB,8HAAA,gCAAgC,OAAA;AAChC,yHAAA,2BAA2B,OAAA;AAE7B,mDAKyB;AAJvB,uHAAA,uBAAuB,OAAA;AACvB,iHAAA,iBAAiB,OAAA;AACjB,sHAAA,sBAAsB,OAAA;AACtB,0HAAA,0BAA0B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAAlC,yGAAA,WAAW,OAAA;AACpB,gDAA8C;AAArC,4GAAA,aAAa,OAAA;AACtB,oCAA6C;AAApC,2GAAA,kBAAkB,OAAA;AAC3B,6CAAoD;AAA3C,iHAAA,oBAAoB,OAAA;AAC7B,sCAAoD;AAA3C,kHAAA,wBAAwB,OAAA;AACjC,4CAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,gDAAkE;AAAzD,gIAAA,iCAAiC,OAAA;AAC1C,8CASsB;AARpB,yHAAA,2BAA2B,OAAA;AAC3B,mHAAA,qBAAqB,OAAA;AACrB,+HAAA,iCAAiC,OAAA;AACjC,oHAAA,sBAAsB,OAAA;AACtB,oHAAA,sBAAsB,OAAA;AACtB,qHAAA,uBAAuB,OAAA;AACvB,8HAAA,gCAAgC,OAAA;AAChC,yHAAA,2BAA2B,OAAA;AAE7B,mDAKyB;AAJvB,uHAAA,uBAAuB,OAAA;AACvB,iHAAA,iBAAiB,OAAA;AACjB,sHAAA,sBAAsB,OAAA;AACtB,0HAAA,0BAA0B,OAAA"}
@@ -4,6 +4,7 @@ export { toFunctionToolName } from "./tools.mjs";
4
4
  export { EventEmitterDelegate } from "../lifecycle.mjs";
5
5
  export { encodeUint8ArrayToBase64 } from "./base64.mjs";
6
6
  export { applyDiff } from "./applyDiff.mjs";
7
+ export { normalizeHostedMcpRequireApproval } from "./mcpApproval.mjs";
7
8
  export { getToolSearchProviderCallId, getToolSearchMatchKey, getToolSearchOutputReplacementKey, getToolSearchExecution, isClientToolSearchCall, resolveToolSearchCallId, shouldQueuePendingToolSearchCall, takePendingToolSearchCallId, } from "./toolSearch.mjs";
8
9
  export { matchesFunctionToolName, toolQualifiedName, getToolCallDisplayName, getFunctionToolDisplayName, } from "../toolIdentity.mjs";
9
10
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"OAAO,EAAE,WAAW,EAAE;OACf,EAAE,aAAa,EAAE;OACjB,EAAE,kBAAkB,EAAE;OACtB,EAAE,oBAAoB,EAAE;OACxB,EAAE,wBAAwB,EAAE;OAC5B,EAAE,SAAS,EAAE;OACb,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,iCAAiC,EACjC,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,gCAAgC,EAChC,2BAA2B,GAC5B;OACM,EACL,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,GAC3B"}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"OAAO,EAAE,WAAW,EAAE;OACf,EAAE,aAAa,EAAE;OACjB,EAAE,kBAAkB,EAAE;OACtB,EAAE,oBAAoB,EAAE;OACxB,EAAE,wBAAwB,EAAE;OAC5B,EAAE,SAAS,EAAE;OACb,EAAE,iCAAiC,EAAE;OACrC,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,iCAAiC,EACjC,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,gCAAgC,EAChC,2BAA2B,GAC5B;OACM,EACL,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,GAC3B"}
@@ -0,0 +1,7 @@
1
+ import type * as ProviderData from '../types/providerData';
2
+ type HostedMcpRequireApproval = Exclude<ProviderData.HostedMCPTool['require_approval'], undefined>;
3
+ /**
4
+ * Validates and canonicalizes hosted MCP approval policy config.
5
+ */
6
+ export declare function normalizeHostedMcpRequireApproval(requireApproval: unknown): HostedMcpRequireApproval;
7
+ export {};
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeHostedMcpRequireApproval = normalizeHostedMcpRequireApproval;
4
+ const errors_1 = require("../errors.js");
5
+ const REQUIRE_APPROVAL_POLICY_KEYS = new Set(['always', 'never']);
6
+ const TOOL_NAMES_KEYS = new Set(['toolNames', 'tool_names']);
7
+ const READ_ONLY_KEYS = new Set(['readOnly', 'read_only']);
8
+ const MCP_APPROVAL_FILTER_KEYS = new Set([
9
+ ...TOOL_NAMES_KEYS,
10
+ ...READ_ONLY_KEYS,
11
+ ]);
12
+ function isRecord(value) {
13
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
14
+ }
15
+ function invalidRequireApproval(message) {
16
+ return new errors_1.UserError(`Invalid hosted MCP requireApproval: ${message}`);
17
+ }
18
+ function normalizeApprovalFilter(value, path) {
19
+ if (!isRecord(value)) {
20
+ throw invalidRequireApproval(`${path} must be an object with toolNames or readOnly.`);
21
+ }
22
+ const keys = Object.keys(value);
23
+ const unknownKeys = keys.filter((key) => !MCP_APPROVAL_FILTER_KEYS.has(key));
24
+ if (unknownKeys.length > 0) {
25
+ throw invalidRequireApproval(`${path} has unsupported key "${unknownKeys[0]}".`);
26
+ }
27
+ if ('toolNames' in value && 'tool_names' in value) {
28
+ throw invalidRequireApproval(`${path} must not specify both toolNames and tool_names.`);
29
+ }
30
+ if ('readOnly' in value && 'read_only' in value) {
31
+ throw invalidRequireApproval(`${path} must not specify both readOnly and read_only.`);
32
+ }
33
+ const normalized = {};
34
+ const toolNames = value.toolNames ?? value.tool_names;
35
+ if (typeof toolNames !== 'undefined' && !Array.isArray(toolNames)) {
36
+ throw invalidRequireApproval(`${path}.toolNames must be an array.`);
37
+ }
38
+ if (Array.isArray(toolNames)) {
39
+ for (const toolName of toolNames) {
40
+ if (typeof toolName !== 'string' || toolName.length === 0) {
41
+ throw invalidRequireApproval(`${path}.toolNames must contain only non-empty strings.`);
42
+ }
43
+ }
44
+ normalized.tool_names = [...toolNames];
45
+ }
46
+ const readOnly = value.readOnly ?? value.read_only;
47
+ if (typeof readOnly !== 'undefined') {
48
+ if (typeof readOnly !== 'boolean') {
49
+ throw invalidRequireApproval(`${path}.readOnly must be a boolean.`);
50
+ }
51
+ normalized.read_only = readOnly;
52
+ }
53
+ if (typeof normalized.tool_names === 'undefined' &&
54
+ typeof normalized.read_only === 'undefined') {
55
+ throw invalidRequireApproval(`${path} must include toolNames or readOnly.`);
56
+ }
57
+ return normalized;
58
+ }
59
+ function findOverlappingToolName(always, never) {
60
+ if (!always?.tool_names || !never?.tool_names) {
61
+ return undefined;
62
+ }
63
+ const neverNames = new Set(never.tool_names);
64
+ return always.tool_names.find((toolName) => neverNames.has(toolName));
65
+ }
66
+ /**
67
+ * Validates and canonicalizes hosted MCP approval policy config.
68
+ */
69
+ function normalizeHostedMcpRequireApproval(requireApproval) {
70
+ if (typeof requireApproval === 'undefined') {
71
+ return 'never';
72
+ }
73
+ if (typeof requireApproval === 'string') {
74
+ if (requireApproval === 'always' || requireApproval === 'never') {
75
+ return requireApproval;
76
+ }
77
+ throw invalidRequireApproval(`string value must be "always" or "never", got "${requireApproval}".`);
78
+ }
79
+ if (!isRecord(requireApproval)) {
80
+ throw invalidRequireApproval('value must be "always", "never", or an object with always/never filters.');
81
+ }
82
+ const keys = Object.keys(requireApproval);
83
+ if (keys.length === 0) {
84
+ throw invalidRequireApproval('object value must include at least one of always or never.');
85
+ }
86
+ const unknownKeys = keys.filter((key) => !REQUIRE_APPROVAL_POLICY_KEYS.has(key));
87
+ if (unknownKeys.length > 0) {
88
+ throw invalidRequireApproval(`object value has unsupported key "${unknownKeys[0]}".`);
89
+ }
90
+ const normalized = {};
91
+ if (typeof requireApproval.always !== 'undefined') {
92
+ normalized.always = normalizeApprovalFilter(requireApproval.always, 'always');
93
+ }
94
+ if (typeof requireApproval.never !== 'undefined') {
95
+ normalized.never = normalizeApprovalFilter(requireApproval.never, 'never');
96
+ }
97
+ const overlap = findOverlappingToolName(normalized.always, normalized.never);
98
+ if (overlap) {
99
+ throw invalidRequireApproval(`tool "${overlap}" cannot be listed in both always and never.`);
100
+ }
101
+ return normalized;
102
+ }
103
+ //# sourceMappingURL=mcpApproval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcpApproval.js","sourceRoot":"","sources":["../../src/utils/mcpApproval.ts"],"names":[],"mappings":";;AA0GA,8EAyDC;AAnKD,yCAAsC;AAUtC,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;AAClE,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;AAC7D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;AAC1D,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC;IACvC,GAAG,eAAe;IAClB,GAAG,cAAc;CAClB,CAAC,CAAC;AAEH,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAe;IAC7C,OAAO,IAAI,kBAAS,CAAC,uCAAuC,OAAO,EAAE,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAc,EACd,IAAY;IAEZ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,sBAAsB,CAC1B,GAAG,IAAI,gDAAgD,CACxD,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,sBAAsB,CAC1B,GAAG,IAAI,yBAAyB,WAAW,CAAC,CAAC,CAAC,IAAI,CACnD,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,IAAI,KAAK,IAAI,YAAY,IAAI,KAAK,EAAE,CAAC;QAClD,MAAM,sBAAsB,CAC1B,GAAG,IAAI,kDAAkD,CAC1D,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,IAAI,KAAK,IAAI,WAAW,IAAI,KAAK,EAAE,CAAC;QAChD,MAAM,sBAAsB,CAC1B,GAAG,IAAI,gDAAgD,CACxD,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAsB,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC;IACtD,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAClE,MAAM,sBAAsB,CAAC,GAAG,IAAI,8BAA8B,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1D,MAAM,sBAAsB,CAC1B,GAAG,IAAI,iDAAiD,CACzD,CAAC;YACJ,CAAC;QACH,CAAC;QACD,UAAU,CAAC,UAAU,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC;IACnD,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,IAAI,OAAO,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,sBAAsB,CAAC,GAAG,IAAI,8BAA8B,CAAC,CAAC;QACtE,CAAC;QACD,UAAU,CAAC,SAAS,GAAG,QAAQ,CAAC;IAClC,CAAC;IAED,IACE,OAAO,UAAU,CAAC,UAAU,KAAK,WAAW;QAC5C,OAAO,UAAU,CAAC,SAAS,KAAK,WAAW,EAC3C,CAAC;QACD,MAAM,sBAAsB,CAAC,GAAG,IAAI,sCAAsC,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,uBAAuB,CAC9B,MAA0B,EAC1B,KAAyB;IAEzB,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;QAC9C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,SAAgB,iCAAiC,CAC/C,eAAwB;IAExB,IAAI,OAAO,eAAe,KAAK,WAAW,EAAE,CAAC;QAC3C,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE,CAAC;QACxC,IAAI,eAAe,KAAK,QAAQ,IAAI,eAAe,KAAK,OAAO,EAAE,CAAC;YAChE,OAAO,eAAe,CAAC;QACzB,CAAC;QACD,MAAM,sBAAsB,CAC1B,kDAAkD,eAAe,IAAI,CACtE,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QAC/B,MAAM,sBAAsB,CAC1B,0EAA0E,CAC3E,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,sBAAsB,CAC1B,4DAA4D,CAC7D,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAC7B,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,4BAA4B,CAAC,GAAG,CAAC,GAAG,CAAC,CAChD,CAAC;IACF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,sBAAsB,CAC1B,qCAAqC,WAAW,CAAC,CAAC,CAAC,IAAI,CACxD,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAA0D,EAAE,CAAC;IAC7E,IAAI,OAAO,eAAe,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QAClD,UAAU,CAAC,MAAM,GAAG,uBAAuB,CACzC,eAAe,CAAC,MAAM,EACtB,QAAQ,CACT,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,eAAe,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QACjD,UAAU,CAAC,KAAK,GAAG,uBAAuB,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,OAAO,GAAG,uBAAuB,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IAC7E,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,sBAAsB,CAC1B,SAAS,OAAO,8CAA8C,CAC/D,CAAC;IACJ,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -0,0 +1,100 @@
1
+ import { UserError } from "../errors.mjs";
2
+ const REQUIRE_APPROVAL_POLICY_KEYS = new Set(['always', 'never']);
3
+ const TOOL_NAMES_KEYS = new Set(['toolNames', 'tool_names']);
4
+ const READ_ONLY_KEYS = new Set(['readOnly', 'read_only']);
5
+ const MCP_APPROVAL_FILTER_KEYS = new Set([
6
+ ...TOOL_NAMES_KEYS,
7
+ ...READ_ONLY_KEYS,
8
+ ]);
9
+ function isRecord(value) {
10
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
11
+ }
12
+ function invalidRequireApproval(message) {
13
+ return new UserError(`Invalid hosted MCP requireApproval: ${message}`);
14
+ }
15
+ function normalizeApprovalFilter(value, path) {
16
+ if (!isRecord(value)) {
17
+ throw invalidRequireApproval(`${path} must be an object with toolNames or readOnly.`);
18
+ }
19
+ const keys = Object.keys(value);
20
+ const unknownKeys = keys.filter((key) => !MCP_APPROVAL_FILTER_KEYS.has(key));
21
+ if (unknownKeys.length > 0) {
22
+ throw invalidRequireApproval(`${path} has unsupported key "${unknownKeys[0]}".`);
23
+ }
24
+ if ('toolNames' in value && 'tool_names' in value) {
25
+ throw invalidRequireApproval(`${path} must not specify both toolNames and tool_names.`);
26
+ }
27
+ if ('readOnly' in value && 'read_only' in value) {
28
+ throw invalidRequireApproval(`${path} must not specify both readOnly and read_only.`);
29
+ }
30
+ const normalized = {};
31
+ const toolNames = value.toolNames ?? value.tool_names;
32
+ if (typeof toolNames !== 'undefined' && !Array.isArray(toolNames)) {
33
+ throw invalidRequireApproval(`${path}.toolNames must be an array.`);
34
+ }
35
+ if (Array.isArray(toolNames)) {
36
+ for (const toolName of toolNames) {
37
+ if (typeof toolName !== 'string' || toolName.length === 0) {
38
+ throw invalidRequireApproval(`${path}.toolNames must contain only non-empty strings.`);
39
+ }
40
+ }
41
+ normalized.tool_names = [...toolNames];
42
+ }
43
+ const readOnly = value.readOnly ?? value.read_only;
44
+ if (typeof readOnly !== 'undefined') {
45
+ if (typeof readOnly !== 'boolean') {
46
+ throw invalidRequireApproval(`${path}.readOnly must be a boolean.`);
47
+ }
48
+ normalized.read_only = readOnly;
49
+ }
50
+ if (typeof normalized.tool_names === 'undefined' &&
51
+ typeof normalized.read_only === 'undefined') {
52
+ throw invalidRequireApproval(`${path} must include toolNames or readOnly.`);
53
+ }
54
+ return normalized;
55
+ }
56
+ function findOverlappingToolName(always, never) {
57
+ if (!always?.tool_names || !never?.tool_names) {
58
+ return undefined;
59
+ }
60
+ const neverNames = new Set(never.tool_names);
61
+ return always.tool_names.find((toolName) => neverNames.has(toolName));
62
+ }
63
+ /**
64
+ * Validates and canonicalizes hosted MCP approval policy config.
65
+ */
66
+ export function normalizeHostedMcpRequireApproval(requireApproval) {
67
+ if (typeof requireApproval === 'undefined') {
68
+ return 'never';
69
+ }
70
+ if (typeof requireApproval === 'string') {
71
+ if (requireApproval === 'always' || requireApproval === 'never') {
72
+ return requireApproval;
73
+ }
74
+ throw invalidRequireApproval(`string value must be "always" or "never", got "${requireApproval}".`);
75
+ }
76
+ if (!isRecord(requireApproval)) {
77
+ throw invalidRequireApproval('value must be "always", "never", or an object with always/never filters.');
78
+ }
79
+ const keys = Object.keys(requireApproval);
80
+ if (keys.length === 0) {
81
+ throw invalidRequireApproval('object value must include at least one of always or never.');
82
+ }
83
+ const unknownKeys = keys.filter((key) => !REQUIRE_APPROVAL_POLICY_KEYS.has(key));
84
+ if (unknownKeys.length > 0) {
85
+ throw invalidRequireApproval(`object value has unsupported key "${unknownKeys[0]}".`);
86
+ }
87
+ const normalized = {};
88
+ if (typeof requireApproval.always !== 'undefined') {
89
+ normalized.always = normalizeApprovalFilter(requireApproval.always, 'always');
90
+ }
91
+ if (typeof requireApproval.never !== 'undefined') {
92
+ normalized.never = normalizeApprovalFilter(requireApproval.never, 'never');
93
+ }
94
+ const overlap = findOverlappingToolName(normalized.always, normalized.never);
95
+ if (overlap) {
96
+ throw invalidRequireApproval(`tool "${overlap}" cannot be listed in both always and never.`);
97
+ }
98
+ return normalized;
99
+ }
100
+ //# sourceMappingURL=mcpApproval.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcpApproval.mjs","sourceRoot":"","sources":["../../src/utils/mcpApproval.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.9.1",
5
+ "version": "0.10.1",
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",