@openai/agents-core 0.3.6 → 0.3.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 (180) hide show
  1. package/dist/errors.d.ts +40 -0
  2. package/dist/errors.js +38 -1
  3. package/dist/errors.js.map +1 -1
  4. package/dist/errors.mjs +34 -0
  5. package/dist/errors.mjs.map +1 -1
  6. package/dist/index.d.ts +6 -2
  7. package/dist/index.js +13 -2
  8. package/dist/index.js.map +1 -1
  9. package/dist/index.mjs +3 -1
  10. package/dist/index.mjs.map +1 -1
  11. package/dist/metadata.js +2 -2
  12. package/dist/metadata.mjs +2 -2
  13. package/dist/result.d.ts +17 -0
  14. package/dist/result.js +71 -24
  15. package/dist/result.js.map +1 -1
  16. package/dist/result.mjs +69 -22
  17. package/dist/result.mjs.map +1 -1
  18. package/dist/run.d.ts +14 -47
  19. package/dist/run.js +421 -994
  20. package/dist/run.js.map +1 -1
  21. package/dist/run.mjs +405 -978
  22. package/dist/run.mjs.map +1 -1
  23. package/dist/runState.d.ts +1286 -172
  24. package/dist/runState.js +146 -16
  25. package/dist/runState.js.map +1 -1
  26. package/dist/runState.mjs +142 -12
  27. package/dist/runState.mjs.map +1 -1
  28. package/dist/runner/constants.d.ts +1 -0
  29. package/dist/runner/constants.js +6 -0
  30. package/dist/runner/constants.js.map +1 -0
  31. package/dist/runner/constants.mjs +3 -0
  32. package/dist/runner/constants.mjs.map +1 -0
  33. package/dist/runner/conversation.d.ts +85 -0
  34. package/dist/runner/conversation.js +275 -0
  35. package/dist/runner/conversation.js.map +1 -0
  36. package/dist/runner/conversation.mjs +269 -0
  37. package/dist/runner/conversation.mjs.map +1 -0
  38. package/dist/runner/guardrails.d.ts +23 -0
  39. package/dist/runner/guardrails.js +174 -0
  40. package/dist/runner/guardrails.js.map +1 -0
  41. package/dist/runner/guardrails.mjs +166 -0
  42. package/dist/runner/guardrails.mjs.map +1 -0
  43. package/dist/runner/items.d.ts +18 -0
  44. package/dist/runner/items.js +89 -0
  45. package/dist/runner/items.js.map +1 -0
  46. package/dist/runner/items.mjs +79 -0
  47. package/dist/runner/items.mjs.map +1 -0
  48. package/dist/runner/mcpApprovals.d.ts +25 -0
  49. package/dist/runner/mcpApprovals.js +66 -0
  50. package/dist/runner/mcpApprovals.js.map +1 -0
  51. package/dist/runner/mcpApprovals.mjs +63 -0
  52. package/dist/runner/mcpApprovals.mjs.map +1 -0
  53. package/dist/runner/modelOutputs.d.ts +10 -0
  54. package/dist/runner/modelOutputs.js +206 -0
  55. package/dist/runner/modelOutputs.js.map +1 -0
  56. package/dist/runner/modelOutputs.mjs +203 -0
  57. package/dist/runner/modelOutputs.mjs.map +1 -0
  58. package/dist/runner/modelPreparation.d.ts +8 -0
  59. package/dist/runner/modelPreparation.js +41 -0
  60. package/dist/runner/modelPreparation.js.map +1 -0
  61. package/dist/runner/modelPreparation.mjs +38 -0
  62. package/dist/runner/modelPreparation.mjs.map +1 -0
  63. package/dist/runner/modelSettings.d.ts +20 -0
  64. package/dist/runner/modelSettings.js +97 -0
  65. package/dist/runner/modelSettings.js.map +1 -0
  66. package/dist/runner/modelSettings.mjs +92 -0
  67. package/dist/runner/modelSettings.mjs.map +1 -0
  68. package/dist/runner/runLoop.d.ts +32 -0
  69. package/dist/runner/runLoop.js +62 -0
  70. package/dist/runner/runLoop.js.map +1 -0
  71. package/dist/runner/runLoop.mjs +57 -0
  72. package/dist/runner/runLoop.mjs.map +1 -0
  73. package/dist/runner/sessionPersistence.d.ts +26 -0
  74. package/dist/runner/sessionPersistence.js +441 -0
  75. package/dist/runner/sessionPersistence.js.map +1 -0
  76. package/dist/runner/sessionPersistence.mjs +431 -0
  77. package/dist/runner/sessionPersistence.mjs.map +1 -0
  78. package/dist/runner/steps.d.ts +48 -0
  79. package/dist/runner/steps.js +40 -0
  80. package/dist/runner/steps.js.map +1 -0
  81. package/dist/runner/steps.mjs +36 -0
  82. package/dist/runner/steps.mjs.map +1 -0
  83. package/dist/runner/streaming.d.ts +9 -0
  84. package/dist/runner/streaming.js +74 -0
  85. package/dist/runner/streaming.js.map +1 -0
  86. package/dist/runner/streaming.mjs +65 -0
  87. package/dist/runner/streaming.mjs.map +1 -0
  88. package/dist/runner/toolExecution.d.ts +15 -0
  89. package/dist/runner/toolExecution.js +997 -0
  90. package/dist/runner/toolExecution.js.map +1 -0
  91. package/dist/runner/toolExecution.mjs +984 -0
  92. package/dist/runner/toolExecution.mjs.map +1 -0
  93. package/dist/runner/toolUseTracker.d.ts +9 -0
  94. package/dist/runner/toolUseTracker.js +34 -0
  95. package/dist/runner/toolUseTracker.js.map +1 -0
  96. package/dist/runner/toolUseTracker.mjs +30 -0
  97. package/dist/runner/toolUseTracker.mjs.map +1 -0
  98. package/dist/runner/tracing.d.ts +23 -0
  99. package/dist/runner/tracing.js +45 -0
  100. package/dist/runner/tracing.js.map +1 -0
  101. package/dist/runner/tracing.mjs +41 -0
  102. package/dist/runner/tracing.mjs.map +1 -0
  103. package/dist/runner/turnPreparation.d.ts +30 -0
  104. package/dist/runner/turnPreparation.js +80 -0
  105. package/dist/runner/turnPreparation.js.map +1 -0
  106. package/dist/runner/turnPreparation.mjs +74 -0
  107. package/dist/runner/turnPreparation.mjs.map +1 -0
  108. package/dist/runner/turnResolution.d.ts +3 -0
  109. package/dist/runner/turnResolution.js +531 -0
  110. package/dist/runner/turnResolution.js.map +1 -0
  111. package/dist/runner/turnResolution.mjs +526 -0
  112. package/dist/runner/turnResolution.mjs.map +1 -0
  113. package/dist/runner/types.d.ts +66 -0
  114. package/dist/runner/types.js +3 -0
  115. package/dist/runner/types.js.map +1 -0
  116. package/dist/runner/types.mjs +2 -0
  117. package/dist/runner/types.mjs.map +1 -0
  118. package/dist/shims/mcp-server/node.js +76 -30
  119. package/dist/shims/mcp-server/node.js.map +1 -1
  120. package/dist/shims/mcp-server/node.mjs +76 -30
  121. package/dist/shims/mcp-server/node.mjs.map +1 -1
  122. package/dist/tool.d.ts +28 -2
  123. package/dist/tool.js +7 -1
  124. package/dist/tool.js.map +1 -1
  125. package/dist/tool.mjs +8 -2
  126. package/dist/tool.mjs.map +1 -1
  127. package/dist/toolGuardrail.d.ts +101 -0
  128. package/dist/toolGuardrail.js +58 -0
  129. package/dist/toolGuardrail.js.map +1 -0
  130. package/dist/toolGuardrail.mjs +51 -0
  131. package/dist/toolGuardrail.mjs.map +1 -0
  132. package/dist/tracing/config.d.ts +3 -0
  133. package/dist/tracing/config.js +3 -0
  134. package/dist/tracing/config.js.map +1 -0
  135. package/dist/tracing/config.mjs +2 -0
  136. package/dist/tracing/config.mjs.map +1 -0
  137. package/dist/tracing/context.d.ts +2 -0
  138. package/dist/tracing/context.js +95 -24
  139. package/dist/tracing/context.js.map +1 -1
  140. package/dist/tracing/context.mjs +95 -24
  141. package/dist/tracing/context.mjs.map +1 -1
  142. package/dist/tracing/createSpans.d.ts +11 -11
  143. package/dist/tracing/index.d.ts +2 -0
  144. package/dist/tracing/index.js.map +1 -1
  145. package/dist/tracing/index.mjs.map +1 -1
  146. package/dist/tracing/provider.js +54 -4
  147. package/dist/tracing/provider.js.map +1 -1
  148. package/dist/tracing/provider.mjs +54 -4
  149. package/dist/tracing/provider.mjs.map +1 -1
  150. package/dist/tracing/spans.d.ts +2 -0
  151. package/dist/tracing/spans.js +6 -0
  152. package/dist/tracing/spans.js.map +1 -1
  153. package/dist/tracing/spans.mjs +6 -0
  154. package/dist/tracing/spans.mjs.map +1 -1
  155. package/dist/tracing/traces.d.ts +11 -1
  156. package/dist/tracing/traces.js +15 -2
  157. package/dist/tracing/traces.js.map +1 -1
  158. package/dist/tracing/traces.mjs +15 -2
  159. package/dist/tracing/traces.mjs.map +1 -1
  160. package/dist/types/protocol.d.ts +11 -0
  161. package/dist/types/protocol.js +1 -0
  162. package/dist/types/protocol.js.map +1 -1
  163. package/dist/types/protocol.mjs +1 -0
  164. package/dist/types/protocol.mjs.map +1 -1
  165. package/dist/utils/binary.d.ts +6 -0
  166. package/dist/utils/binary.js +53 -0
  167. package/dist/utils/binary.js.map +1 -0
  168. package/dist/utils/binary.mjs +49 -0
  169. package/dist/utils/binary.mjs.map +1 -0
  170. package/dist/utils/toolGuardrails.d.ts +24 -0
  171. package/dist/utils/toolGuardrails.js +58 -0
  172. package/dist/utils/toolGuardrails.js.map +1 -0
  173. package/dist/utils/toolGuardrails.mjs +54 -0
  174. package/dist/utils/toolGuardrails.mjs.map +1 -0
  175. package/package.json +4 -3
  176. package/dist/runImplementation.d.ts +0 -161
  177. package/dist/runImplementation.js +0 -2054
  178. package/dist/runImplementation.js.map +0 -1
  179. package/dist/runImplementation.mjs +0 -2028
  180. package/dist/runImplementation.mjs.map +0 -1
@@ -1,10 +1,39 @@
1
1
  import { AsyncLocalStorage } from '@openai/agents-core/_shims';
2
2
  import { getGlobalTraceProvider } from "./provider.mjs";
3
3
  import { StreamedRunResult } from "../result.mjs";
4
- let _contextAsyncLocalStorage;
4
+ const ALS_SYMBOL = Symbol.for('openai.agents.core.asyncLocalStorage');
5
+ let localFallbackAls;
6
+ // Global symbols ensure that if multiple copies of agents-core are loaded
7
+ // (e.g., via different npm resolution paths or bundlers), they all share the
8
+ // same AsyncLocalStorage instance. This prevents losing trace/span state when a
9
+ // downstream package pulls in a duplicate copy.
5
10
  function getContextAsyncLocalStorage() {
6
- _contextAsyncLocalStorage ??= new AsyncLocalStorage();
7
- return _contextAsyncLocalStorage;
11
+ try {
12
+ const globalScope = globalThis;
13
+ const globalALS = globalScope[ALS_SYMBOL];
14
+ if (globalALS) {
15
+ return globalALS;
16
+ }
17
+ const newALS = new AsyncLocalStorage();
18
+ globalScope[ALS_SYMBOL] = newALS;
19
+ return newALS;
20
+ }
21
+ catch {
22
+ // As a defensive fallback (e.g., if globalThis is locked down or ALS
23
+ // construction throws in a constrained runtime), keep a module-local ALS so
24
+ // tracing still functions instead of crashing callers.
25
+ if (!localFallbackAls) {
26
+ localFallbackAls = new AsyncLocalStorage();
27
+ }
28
+ return localFallbackAls;
29
+ }
30
+ }
31
+ function getActiveContext() {
32
+ const store = getContextAsyncLocalStorage().getStore();
33
+ if (store?.active === true) {
34
+ return store;
35
+ }
36
+ return undefined;
8
37
  }
9
38
  /**
10
39
  * This function will get the current trace from the execution context.
@@ -12,7 +41,7 @@ function getContextAsyncLocalStorage() {
12
41
  * @returns The current trace or null if there is no trace.
13
42
  */
14
43
  export function getCurrentTrace() {
15
- const currentTrace = getContextAsyncLocalStorage().getStore();
44
+ const currentTrace = getActiveContext();
16
45
  if (currentTrace?.trace) {
17
46
  return currentTrace.trace;
18
47
  }
@@ -24,7 +53,7 @@ export function getCurrentTrace() {
24
53
  * @returns The current span or null if there is no span.
25
54
  */
26
55
  export function getCurrentSpan() {
27
- const currentSpan = getContextAsyncLocalStorage().getStore();
56
+ const currentSpan = getActiveContext();
28
57
  if (currentSpan?.span) {
29
58
  return currentSpan.span;
30
59
  }
@@ -36,25 +65,57 @@ export function getCurrentSpan() {
36
65
  *
37
66
  * The functions below should be the only way that this context gets interfaced with.
38
67
  */
39
- function _wrapFunctionWithTraceLifecycle(fn) {
68
+ function _wrapFunctionWithTraceLifecycle(fn, currentContext, previousAlsStore) {
40
69
  return async () => {
41
70
  const trace = getCurrentTrace();
42
71
  if (!trace) {
43
72
  throw new Error('No trace found');
44
73
  }
45
- await trace.start();
46
- const result = await fn(trace);
47
- // If result is a StreamedRunResult, defer trace end until stream loop completes
48
- if (result instanceof StreamedRunResult) {
49
- const streamLoopPromise = result._getStreamLoopPromise();
50
- if (streamLoopPromise) {
51
- streamLoopPromise.finally(() => trace.end());
52
- return result;
74
+ let cleanupDeferred = false;
75
+ let started = false;
76
+ const cleanupContext = () => {
77
+ currentContext.active = false;
78
+ currentContext.trace = undefined;
79
+ currentContext.span = undefined;
80
+ currentContext.previousSpan = undefined;
81
+ getContextAsyncLocalStorage().enterWith(previousAlsStore);
82
+ };
83
+ try {
84
+ await trace.start();
85
+ started = true;
86
+ const result = await fn(trace);
87
+ // If result is a StreamedRunResult, defer trace end until stream loop completes
88
+ if (result instanceof StreamedRunResult) {
89
+ const streamLoopPromise = result._getStreamLoopPromise();
90
+ if (streamLoopPromise) {
91
+ cleanupDeferred = true;
92
+ streamLoopPromise.finally(async () => {
93
+ try {
94
+ if (started) {
95
+ await trace.end();
96
+ }
97
+ }
98
+ finally {
99
+ cleanupContext();
100
+ }
101
+ });
102
+ return result;
103
+ }
104
+ }
105
+ // For non-streaming results, end trace synchronously
106
+ if (started) {
107
+ await trace.end();
108
+ }
109
+ return result;
110
+ }
111
+ finally {
112
+ // If cleanup was deferred to the streaming loop, keep the context marked
113
+ // active so concurrent traces do not clear it prematurely. Otherwise,
114
+ // mark inactive and restore now.
115
+ if (!cleanupDeferred) {
116
+ cleanupContext();
53
117
  }
54
118
  }
55
- // For non-streaming results, end trace synchronously
56
- await trace.end();
57
- return result;
58
119
  };
59
120
  }
60
121
  /**
@@ -71,7 +132,12 @@ export async function withTrace(trace, fn, options = {}) {
71
132
  name: trace,
72
133
  })
73
134
  : trace;
74
- return getContextAsyncLocalStorage().run({ trace: newTrace }, _wrapFunctionWithTraceLifecycle(fn));
135
+ const context = {
136
+ trace: newTrace,
137
+ active: true,
138
+ };
139
+ const previousAlsStore = getContextAsyncLocalStorage().getStore();
140
+ return getContextAsyncLocalStorage().run(context, _wrapFunctionWithTraceLifecycle(fn, context, previousAlsStore));
75
141
  }
76
142
  /**
77
143
  * This function will check if there is an existing active trace in the execution context. If there
@@ -84,11 +150,15 @@ export async function withTrace(trace, fn, options = {}) {
84
150
  export async function getOrCreateTrace(fn, options = {}) {
85
151
  const currentTrace = getCurrentTrace();
86
152
  if (currentTrace) {
87
- // if this execution context already has a trace instance in it we just continue
88
153
  return await fn();
89
154
  }
90
155
  const newTrace = getGlobalTraceProvider().createTrace(options);
91
- return getContextAsyncLocalStorage().run({ trace: newTrace }, _wrapFunctionWithTraceLifecycle(fn));
156
+ const newContext = {
157
+ trace: newTrace,
158
+ active: true,
159
+ };
160
+ const previousAlsStore = getContextAsyncLocalStorage().getStore();
161
+ return getContextAsyncLocalStorage().run(newContext, _wrapFunctionWithTraceLifecycle(fn, newContext, previousAlsStore));
92
162
  }
93
163
  /**
94
164
  * This function will set the current span in the execution context.
@@ -96,7 +166,7 @@ export async function getOrCreateTrace(fn, options = {}) {
96
166
  * @param span - The span to set as the current span.
97
167
  */
98
168
  export function setCurrentSpan(span) {
99
- const context = getContextAsyncLocalStorage().getStore();
169
+ const context = getActiveContext();
100
170
  if (!context) {
101
171
  throw new Error('No existing trace found');
102
172
  }
@@ -109,7 +179,7 @@ export function setCurrentSpan(span) {
109
179
  getContextAsyncLocalStorage().enterWith(context);
110
180
  }
111
181
  export function resetCurrentSpan() {
112
- const context = getContextAsyncLocalStorage().getStore();
182
+ const context = getActiveContext();
113
183
  if (context) {
114
184
  context.span = context.previousSpan;
115
185
  context.previousSpan = context.previousSpan?.previousSpan;
@@ -139,6 +209,7 @@ export function cloneCurrentContext(context) {
139
209
  trace: context.trace?.clone(),
140
210
  span: context.span?.clone(),
141
211
  previousSpan: context.previousSpan?.clone(),
212
+ active: context.active,
142
213
  };
143
214
  }
144
215
  /**
@@ -147,9 +218,9 @@ export function cloneCurrentContext(context) {
147
218
  * @param fn - The function to run with the new span context.
148
219
  */
149
220
  export function withNewSpanContext(fn) {
150
- const currentContext = getContextAsyncLocalStorage().getStore();
221
+ const currentContext = getActiveContext();
151
222
  if (!currentContext) {
152
- throw new Error('No existing trace found');
223
+ return fn();
153
224
  }
154
225
  const copyOfContext = cloneCurrentContext(currentContext);
155
226
  return getContextAsyncLocalStorage().run(copyOfContext, fn);
@@ -1 +1 @@
1
- {"version":3,"file":"context.mjs","sourceRoot":"","sources":["../../src/tracing/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.mjs","sourceRoot":"","sources":["../../src/tracing/context.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ export declare function createResponseSpan(options?: CreateArgs<ResponseSpanData
25
25
  * If you need to capture detailed generation information such as input/output messages,
26
26
  * model configuration, or usage data, use `generationSpan()` instead.
27
27
  */
28
- export declare const withResponseSpan: <TOutput>(fn: (span: Span<ResponseSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<ResponseSpanData>> | undefined, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
28
+ export declare const withResponseSpan: <TOutput>(fn: (span: Span<ResponseSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<ResponseSpanData>> | undefined, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
29
29
  /**
30
30
  * Create a new agent span. The span will not be started automatically, you should either
31
31
  * use `withAgentSpan()` or call `span.start()` and `span.end()` manually.
@@ -40,7 +40,7 @@ export declare function createAgentSpan(options?: CreateArgs<AgentSpanData>, par
40
40
  /**
41
41
  * Create a new agent span and automatically start and end it.
42
42
  */
43
- export declare const withAgentSpan: <TOutput>(fn: (span: Span<AgentSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<AgentSpanData>> | undefined, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
43
+ export declare const withAgentSpan: <TOutput>(fn: (span: Span<AgentSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<AgentSpanData>> | undefined, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
44
44
  /**
45
45
  * Create a new function span. The span will not be started automatically, you should either
46
46
  * use `withFunctionSpan()` or call `span.start()` and `span.end()` manually.
@@ -63,7 +63,7 @@ export declare const withFunctionSpan: <TOutput>(fn: (span: Span<FunctionSpanDat
63
63
  data: {
64
64
  name: string;
65
65
  };
66
- }, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
66
+ }, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
67
67
  /**
68
68
  * Create a new handoff span. The span will not be started automatically, you should either
69
69
  * use `withHandoffSpan()` or call `span.start()` and `span.end()` manually.
@@ -78,7 +78,7 @@ export declare function createHandoffSpan(options?: CreateArgs<HandoffSpanData>,
78
78
  /**
79
79
  * Create a new handoff span and automatically start and end it.
80
80
  */
81
- export declare const withHandoffSpan: <TOutput>(fn: (span: Span<HandoffSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<HandoffSpanData>> | undefined, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
81
+ export declare const withHandoffSpan: <TOutput>(fn: (span: Span<HandoffSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<HandoffSpanData>> | undefined, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
82
82
  /**
83
83
  * Create a new generation span. The span will not be started automatically, you should either
84
84
  * use `withGenerationSpan()` or call `span.start()` and `span.end()` manually.
@@ -89,7 +89,7 @@ export declare const withHandoffSpan: <TOutput>(fn: (span: Span<HandoffSpanData>
89
89
  */
90
90
  export declare function createGenerationSpan(options?: CreateArgs<GenerationSpanData>, parent?: Span<any> | Trace): Span<GenerationSpanData>;
91
91
  /** Automatically create a generation span, run fn and close the span */
92
- export declare const withGenerationSpan: <TOutput>(fn: (span: Span<GenerationSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<GenerationSpanData>> | undefined, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
92
+ export declare const withGenerationSpan: <TOutput>(fn: (span: Span<GenerationSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<GenerationSpanData>> | undefined, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
93
93
  /**
94
94
  * Create a new custom span. The span will not be started automatically, you should either use
95
95
  * `withCustomSpan()` or call `span.start()` and `span.end()` manually.
@@ -103,7 +103,7 @@ export declare const withCustomSpan: <TOutput>(fn: (span: Span<CustomSpanData>)
103
103
  data: {
104
104
  name: string;
105
105
  };
106
- }, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
106
+ }, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
107
107
  /**
108
108
  * Create a new guardrail span. The span will not be started automatically, you should either use
109
109
  * `withGuardrailSpan()` or call `span.start()` and `span.end()` manually.
@@ -117,7 +117,7 @@ export declare const withGuardrailSpan: <TOutput>(fn: (span: Span<GuardrailSpanD
117
117
  data: {
118
118
  name: string;
119
119
  };
120
- }, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
120
+ }, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
121
121
  /**
122
122
  * Create a new transcription span. The span will not be started automatically.
123
123
  */
@@ -136,7 +136,7 @@ export declare const withTranscriptionSpan: <TOutput>(fn: (span: Span<Transcript
136
136
  format: "pcm" | (string & {});
137
137
  };
138
138
  };
139
- }, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
139
+ }, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
140
140
  /**
141
141
  * Create a new speech span. The span will not be started automatically.
142
142
  */
@@ -155,15 +155,15 @@ export declare const withSpeechSpan: <TOutput>(fn: (span: Span<SpeechSpanData>)
155
155
  format: "pcm" | (string & {});
156
156
  };
157
157
  };
158
- }, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
158
+ }, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
159
159
  /**
160
160
  * Create a new speech group span. The span will not be started automatically.
161
161
  */
162
162
  export declare function createSpeechGroupSpan(options?: CreateArgs<SpeechGroupSpanData>, parent?: Span<any> | Trace): Span<SpeechGroupSpanData>;
163
- export declare const withSpeechGroupSpan: <TOutput>(fn: (span: Span<SpeechGroupSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<SpeechGroupSpanData>> | undefined, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
163
+ export declare const withSpeechGroupSpan: <TOutput>(fn: (span: Span<SpeechGroupSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<SpeechGroupSpanData>> | undefined, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
164
164
  /**
165
165
  * Create a new MCP list tools span. The span will not be started automatically.
166
166
  */
167
167
  export declare function createMCPListToolsSpan(options?: CreateArgs<MCPListToolsSpanData>, parent?: Span<any> | Trace): Span<MCPListToolsSpanData>;
168
- export declare const withMCPListToolsSpan: <TOutput>(fn: (span: Span<MCPListToolsSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<MCPListToolsSpanData>> | undefined, parent?: Trace | Span<any> | undefined) => Promise<TOutput>;
168
+ export declare const withMCPListToolsSpan: <TOutput>(fn: (span: Span<MCPListToolsSpanData>) => Promise<TOutput>, options?: DeepPartial<CreateSpanOptions<MCPListToolsSpanData>> | undefined, parent?: Span<any> | Trace | undefined) => Promise<TOutput>;
169
169
  export {};
@@ -1,4 +1,5 @@
1
1
  import { TracingProcessor } from './processor';
2
+ import type { TracingConfig } from './config';
2
3
  export { getCurrentSpan, getCurrentTrace, getOrCreateTrace, resetCurrentSpan, setCurrentSpan, withTrace, } from './context';
3
4
  export * from './createSpans';
4
5
  export { BatchTraceProcessor, TracingExporter, TracingProcessor, ConsoleSpanExporter, } from './processor';
@@ -6,6 +7,7 @@ export { NoopSpan, Span } from './spans';
6
7
  export type { SpanData, AgentSpanData, FunctionSpanData, GenerationSpanData, ResponseSpanData, HandoffSpanData, CustomSpanData, GuardrailSpanData, TranscriptionSpanData, SpeechSpanData, SpeechGroupSpanData, MCPListToolsSpanData, SpanOptions, SpanError, } from './spans';
7
8
  export { NoopTrace, Trace } from './traces';
8
9
  export { generateGroupId, generateSpanId, generateTraceId } from './utils';
10
+ export type { TracingConfig };
9
11
  /**
10
12
  * Add a processor to the list of processors. Each processor will receive all traces/spans.
11
13
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tracing/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AA2CA,8CAEC;AAOD,gDAEC;AAOD,gDAEC;AAKD,oDAEC;AArED,4CAAoD;AAEpD,wCAOmB;AANjB,yGAAA,cAAc,OAAA;AACd,0GAAA,eAAe,OAAA;AACf,2GAAA,gBAAgB,OAAA;AAChB,2GAAA,gBAAgB,OAAA;AAChB,yGAAA,cAAc,OAAA;AACd,oGAAA,SAAS,OAAA;AAEX,mDAA8B;AAC9B,4CAKqB;AAJnB,gHAAA,mBAAmB,OAAA;AAGnB,gHAAA,mBAAmB,OAAA;AAErB,oCAAyC;AAAhC,iGAAA,QAAQ,OAAA;AAAE,6FAAA,IAAI,OAAA;AAiBvB,sCAA4C;AAAnC,mGAAA,SAAS,OAAA;AAAE,+FAAA,KAAK,OAAA;AACzB,oCAA2E;AAAlE,wGAAA,eAAe,OAAA;AAAE,uGAAA,cAAc,OAAA;AAAE,wGAAA,eAAe,OAAA;AAEzD;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,SAA2B;IAC3D,IAAA,iCAAsB,GAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,UAA8B;IAC/D,IAAA,iCAAsB,GAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACrD,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,QAAiB;IAClD,IAAA,iCAAsB,GAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB;IAClC,IAAA,iCAAsB,GAAE,CAAC,eAAe,EAAE,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tracing/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AA6CA,8CAEC;AAOD,gDAEC;AAOD,gDAEC;AAKD,oDAEC;AAvED,4CAAoD;AAGpD,wCAOmB;AANjB,yGAAA,cAAc,OAAA;AACd,0GAAA,eAAe,OAAA;AACf,2GAAA,gBAAgB,OAAA;AAChB,2GAAA,gBAAgB,OAAA;AAChB,yGAAA,cAAc,OAAA;AACd,oGAAA,SAAS,OAAA;AAEX,mDAA8B;AAC9B,4CAKqB;AAJnB,gHAAA,mBAAmB,OAAA;AAGnB,gHAAA,mBAAmB,OAAA;AAErB,oCAAyC;AAAhC,iGAAA,QAAQ,OAAA;AAAE,6FAAA,IAAI,OAAA;AAiBvB,sCAA4C;AAAnC,mGAAA,SAAS,OAAA;AAAE,+FAAA,KAAK,OAAA;AACzB,oCAA2E;AAAlE,wGAAA,eAAe,OAAA;AAAE,uGAAA,cAAc,OAAA;AAAE,wGAAA,eAAe,OAAA;AAGzD;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,SAA2B;IAC3D,IAAA,iCAAsB,GAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,UAA8B;IAC/D,IAAA,iCAAsB,GAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACrD,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,QAAiB;IAClD,IAAA,iCAAsB,GAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB;IAClC,IAAA,iCAAsB,GAAE,CAAC,eAAe,EAAE,CAAC;AAC7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/tracing/index.ts"],"names":[],"mappings":"OACO,EAAE,sBAAsB,EAAE;OAE1B,EACL,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,SAAS,GACV;;OAEM,EACL,mBAAmB,EAGnB,mBAAmB,GACpB;OACM,EAAE,QAAQ,EAAE,IAAI,EAAE;OAiBlB,EAAE,SAAS,EAAE,KAAK,EAAE;OACpB,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE;AAE3D;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAA2B;IAC3D,sBAAsB,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAA8B;IAC/D,sBAAsB,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACrD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAiB;IAClD,sBAAsB,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,sBAAsB,EAAE,CAAC,eAAe,EAAE,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/tracing/index.ts"],"names":[],"mappings":"OACO,EAAE,sBAAsB,EAAE;OAG1B,EACL,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,SAAS,GACV;;OAEM,EACL,mBAAmB,EAGnB,mBAAmB,GACpB;OACM,EAAE,QAAQ,EAAE,IAAI,EAAE;OAiBlB,EAAE,SAAS,EAAE,KAAK,EAAE;OACpB,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE;AAG3D;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAA2B;IAC3D,sBAAsB,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAA8B;IAC/D,sBAAsB,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACrD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAiB;IAClD,sBAAsB,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,sBAAsB,EAAE,CAAC,eAAe,EAAE,CAAC;AAC7C,CAAC"}
@@ -70,6 +70,7 @@ class TraceProvider {
70
70
  }
71
71
  let parentId;
72
72
  let traceId;
73
+ let tracingApiKey;
73
74
  if (!parent) {
74
75
  const currentTrace = (0, context_1.getCurrentTrace)();
75
76
  const currentSpan = (0, context_1.getCurrentSpan)();
@@ -83,6 +84,7 @@ class TraceProvider {
83
84
  return new spans_1.NoopSpan(spanOptions.data, this.#multiProcessor);
84
85
  }
85
86
  traceId = currentTrace.traceId;
87
+ tracingApiKey = currentTrace.tracingApiKey;
86
88
  if (currentSpan) {
87
89
  logger_1.default.debug('Using parent span %s', currentSpan.spanId);
88
90
  parentId = currentSpan.spanId;
@@ -97,6 +99,7 @@ class TraceProvider {
97
99
  return new spans_1.NoopSpan(spanOptions.data, this.#multiProcessor);
98
100
  }
99
101
  traceId = parent.traceId;
102
+ tracingApiKey = parent.tracingApiKey;
100
103
  }
101
104
  else if (parent instanceof spans_1.Span) {
102
105
  if (parent instanceof spans_1.NoopSpan) {
@@ -105,6 +108,7 @@ class TraceProvider {
105
108
  }
106
109
  parentId = parent.spanId;
107
110
  traceId = parent.traceId;
111
+ tracingApiKey = parent.tracingApiKey;
108
112
  }
109
113
  if (!traceId) {
110
114
  logger_1.default.error('No traceId found. Make sure to start a trace with `withTrace()` first. Returning NoopSpan.');
@@ -115,6 +119,7 @@ class TraceProvider {
115
119
  ...spanOptions,
116
120
  traceId,
117
121
  parentId,
122
+ tracingApiKey: tracingApiKey ?? spanOptions.tracingApiKey,
118
123
  }, this.#multiProcessor);
119
124
  }
120
125
  async shutdown(timeout) {
@@ -175,17 +180,62 @@ class TraceProvider {
175
180
  }
176
181
  }
177
182
  exports.TraceProvider = TraceProvider;
183
+ let moduleTraceProvider;
178
184
  function hasOtherListenersForSignals(event) {
179
185
  return process.listeners(event).length > 1;
180
186
  }
181
187
  function hasOtherListenersForEvents(event) {
182
188
  return process.listeners(event).length > 1;
183
189
  }
184
- let GLOBAL_TRACE_PROVIDER = undefined;
185
190
  function getGlobalTraceProvider() {
186
- if (!GLOBAL_TRACE_PROVIDER) {
187
- GLOBAL_TRACE_PROVIDER = new TraceProvider();
191
+ const symbol = Symbol.for('openai.agents.core.traceProvider');
192
+ try {
193
+ const globalHolder = globalThis;
194
+ // Avoid constructing extra providers when globalThis is frozen/sealed. We
195
+ // first short-circuit on existing instances, then check writability before
196
+ // instantiation so hardened runtimes do not leak constructors or listeners.
197
+ const existing = globalHolder[symbol];
198
+ if (existing) {
199
+ return existing;
200
+ }
201
+ const descriptor = Object.getOwnPropertyDescriptor(globalHolder, symbol);
202
+ if (descriptor &&
203
+ descriptor.writable === false &&
204
+ descriptor.configurable === false &&
205
+ !descriptor.set) {
206
+ return getModuleTraceProvider();
207
+ }
208
+ if (!descriptor) {
209
+ try {
210
+ Object.defineProperty(globalHolder, symbol, {
211
+ value: undefined,
212
+ writable: true,
213
+ configurable: true,
214
+ });
215
+ }
216
+ catch {
217
+ return getModuleTraceProvider();
218
+ }
219
+ }
220
+ try {
221
+ const provider = new TraceProvider();
222
+ globalHolder[symbol] = provider;
223
+ return provider;
224
+ }
225
+ catch {
226
+ return getModuleTraceProvider();
227
+ }
228
+ }
229
+ catch {
230
+ // Hardened runtimes can freeze or seal globalThis; fall back to a
231
+ // module-local singleton instead of throwing so tracing still works.
232
+ return getModuleTraceProvider();
233
+ }
234
+ }
235
+ function getModuleTraceProvider() {
236
+ if (!moduleTraceProvider) {
237
+ moduleTraceProvider = new TraceProvider();
188
238
  }
189
- return GLOBAL_TRACE_PROVIDER;
239
+ return moduleTraceProvider;
190
240
  }
191
241
  //# sourceMappingURL=provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/tracing/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/tracing/provider.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,7 @@ export class TraceProvider {
63
63
  }
64
64
  let parentId;
65
65
  let traceId;
66
+ let tracingApiKey;
66
67
  if (!parent) {
67
68
  const currentTrace = getCurrentTrace();
68
69
  const currentSpan = getCurrentSpan();
@@ -76,6 +77,7 @@ export class TraceProvider {
76
77
  return new NoopSpan(spanOptions.data, this.#multiProcessor);
77
78
  }
78
79
  traceId = currentTrace.traceId;
80
+ tracingApiKey = currentTrace.tracingApiKey;
79
81
  if (currentSpan) {
80
82
  logger.debug('Using parent span %s', currentSpan.spanId);
81
83
  parentId = currentSpan.spanId;
@@ -90,6 +92,7 @@ export class TraceProvider {
90
92
  return new NoopSpan(spanOptions.data, this.#multiProcessor);
91
93
  }
92
94
  traceId = parent.traceId;
95
+ tracingApiKey = parent.tracingApiKey;
93
96
  }
94
97
  else if (parent instanceof Span) {
95
98
  if (parent instanceof NoopSpan) {
@@ -98,6 +101,7 @@ export class TraceProvider {
98
101
  }
99
102
  parentId = parent.spanId;
100
103
  traceId = parent.traceId;
104
+ tracingApiKey = parent.tracingApiKey;
101
105
  }
102
106
  if (!traceId) {
103
107
  logger.error('No traceId found. Make sure to start a trace with `withTrace()` first. Returning NoopSpan.');
@@ -108,6 +112,7 @@ export class TraceProvider {
108
112
  ...spanOptions,
109
113
  traceId,
110
114
  parentId,
115
+ tracingApiKey: tracingApiKey ?? spanOptions.tracingApiKey,
111
116
  }, this.#multiProcessor);
112
117
  }
113
118
  async shutdown(timeout) {
@@ -167,17 +172,62 @@ export class TraceProvider {
167
172
  await this.#multiProcessor.forceFlush();
168
173
  }
169
174
  }
175
+ let moduleTraceProvider;
170
176
  function hasOtherListenersForSignals(event) {
171
177
  return process.listeners(event).length > 1;
172
178
  }
173
179
  function hasOtherListenersForEvents(event) {
174
180
  return process.listeners(event).length > 1;
175
181
  }
176
- let GLOBAL_TRACE_PROVIDER = undefined;
177
182
  export function getGlobalTraceProvider() {
178
- if (!GLOBAL_TRACE_PROVIDER) {
179
- GLOBAL_TRACE_PROVIDER = new TraceProvider();
183
+ const symbol = Symbol.for('openai.agents.core.traceProvider');
184
+ try {
185
+ const globalHolder = globalThis;
186
+ // Avoid constructing extra providers when globalThis is frozen/sealed. We
187
+ // first short-circuit on existing instances, then check writability before
188
+ // instantiation so hardened runtimes do not leak constructors or listeners.
189
+ const existing = globalHolder[symbol];
190
+ if (existing) {
191
+ return existing;
192
+ }
193
+ const descriptor = Object.getOwnPropertyDescriptor(globalHolder, symbol);
194
+ if (descriptor &&
195
+ descriptor.writable === false &&
196
+ descriptor.configurable === false &&
197
+ !descriptor.set) {
198
+ return getModuleTraceProvider();
199
+ }
200
+ if (!descriptor) {
201
+ try {
202
+ Object.defineProperty(globalHolder, symbol, {
203
+ value: undefined,
204
+ writable: true,
205
+ configurable: true,
206
+ });
207
+ }
208
+ catch {
209
+ return getModuleTraceProvider();
210
+ }
211
+ }
212
+ try {
213
+ const provider = new TraceProvider();
214
+ globalHolder[symbol] = provider;
215
+ return provider;
216
+ }
217
+ catch {
218
+ return getModuleTraceProvider();
219
+ }
220
+ }
221
+ catch {
222
+ // Hardened runtimes can freeze or seal globalThis; fall back to a
223
+ // module-local singleton instead of throwing so tracing still works.
224
+ return getModuleTraceProvider();
225
+ }
226
+ }
227
+ function getModuleTraceProvider() {
228
+ if (!moduleTraceProvider) {
229
+ moduleTraceProvider = new TraceProvider();
180
230
  }
181
- return GLOBAL_TRACE_PROVIDER;
231
+ return moduleTraceProvider;
182
232
  }
183
233
  //# sourceMappingURL=provider.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.mjs","sourceRoot":"","sources":["../../src/tracing/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.mjs","sourceRoot":"","sources":["../../src/tracing/provider.ts"],"names":[],"mappings":"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"}
@@ -86,6 +86,7 @@ export type SpanOptions<TData extends SpanData> = {
86
86
  startedAt?: string;
87
87
  endedAt?: string;
88
88
  error?: SpanError;
89
+ tracingApiKey?: string;
89
90
  };
90
91
  export type SpanError = {
91
92
  message: string;
@@ -107,6 +108,7 @@ export declare class Span<TData extends SpanData> {
107
108
  get error(): SpanError | null;
108
109
  get startedAt(): string | null;
109
110
  get endedAt(): string | null;
111
+ get tracingApiKey(): string | undefined;
110
112
  clone(): Span<TData>;
111
113
  toJSON(): object | null;
112
114
  }