@openai/agents-core 0.0.7 → 0.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/agent.d.ts CHANGED
@@ -2,7 +2,7 @@ import type { ZodObject } from 'zod/v3';
2
2
  import type { InputGuardrail, OutputGuardrail } from './guardrail';
3
3
  import { AgentHooks } from './lifecycle';
4
4
  import { type MCPServer } from './mcp';
5
- import type { Model, ModelSettings } from './model';
5
+ import type { Model, ModelSettings, Prompt } from './model';
6
6
  import type { RunContext } from './runContext';
7
7
  import { type FunctionTool, type FunctionToolResult, type Tool } from './tool';
8
8
  import type { ResolvedAgentOutput, JsonSchemaDefinition, HandoffsOutput, Expand } from './types';
@@ -83,6 +83,14 @@ export interface AgentConfiguration<TContext = UnknownContext, TOutput extends A
83
83
  * must return a string.
84
84
  */
85
85
  instructions: string | ((runContext: RunContext<TContext>, agent: Agent<TContext, TOutput>) => Promise<string> | string);
86
+ /**
87
+ * The prompt template to use for the agent (OpenAI Responses API only).
88
+ *
89
+ * Can either be a prompt template object, or a function that returns a prompt
90
+ * template object. If a function is provided, it will be called with the run
91
+ * context and the agent instance. It must return a prompt template object.
92
+ */
93
+ prompt?: Prompt | ((runContext: RunContext<TContext>, agent: Agent<TContext, TOutput>) => Promise<Prompt> | Prompt);
86
94
  /**
87
95
  * A description of the agent. This is used when the agent is used as a handoff, so that an LLM
88
96
  * knows what it does and when to invoke it.
@@ -200,6 +208,7 @@ export declare class Agent<TContext = UnknownContext, TOutput extends AgentOutpu
200
208
  static create<TOutput extends AgentOutputType = TextOutput, Handoffs extends readonly (Agent<any, any> | Handoff<any, any>)[] = []>(config: AgentConfigWithHandoffs<TOutput, Handoffs>): Agent<UnknownContext, TOutput | HandoffsOutputUnion<Handoffs>>;
201
209
  name: string;
202
210
  instructions: string | ((runContext: RunContext<TContext>, agent: Agent<TContext, TOutput>) => Promise<string> | string);
211
+ prompt?: Prompt | ((runContext: RunContext<TContext>, agent: Agent<TContext, TOutput>) => Promise<Prompt> | Prompt);
203
212
  handoffDescription: string;
204
213
  handoffs: (Agent<any, TOutput> | Handoff<any, TOutput>)[];
205
214
  model: string | Model;
@@ -261,6 +270,13 @@ export declare class Agent<TContext = UnknownContext, TOutput extends AgentOutpu
261
270
  * runContext and the agent instance.
262
271
  */
263
272
  getSystemPrompt(runContext: RunContext<TContext>): Promise<string | undefined>;
273
+ /**
274
+ * Returns the prompt template for the agent, if defined.
275
+ *
276
+ * If the agent has a function as its prompt, this function will be called with the
277
+ * runContext and the agent instance.
278
+ */
279
+ getPrompt(runContext: RunContext<TContext>): Promise<Prompt | undefined>;
264
280
  /**
265
281
  * Fetches the available tools from the MCP servers.
266
282
  * @returns the MCP powered tools
package/dist/agent.js CHANGED
@@ -32,6 +32,7 @@ export class Agent extends AgentHooks {
32
32
  }
33
33
  name;
34
34
  instructions;
35
+ prompt;
35
36
  handoffDescription;
36
37
  handoffs;
37
38
  model;
@@ -50,6 +51,7 @@ export class Agent extends AgentHooks {
50
51
  }
51
52
  this.name = config.name;
52
53
  this.instructions = config.instructions ?? '';
54
+ this.prompt = config.prompt;
53
55
  this.handoffDescription = config.handoffDescription ?? '';
54
56
  this.handoffs = config.handoffs ?? [];
55
57
  this.model = config.model ?? '';
@@ -168,6 +170,18 @@ export class Agent extends AgentHooks {
168
170
  }
169
171
  return this.instructions;
170
172
  }
173
+ /**
174
+ * Returns the prompt template for the agent, if defined.
175
+ *
176
+ * If the agent has a function as its prompt, this function will be called with the
177
+ * runContext and the agent instance.
178
+ */
179
+ async getPrompt(runContext) {
180
+ if (typeof this.prompt === 'function') {
181
+ return await this.prompt(runContext, this);
182
+ }
183
+ return this.prompt;
184
+ }
171
185
  /**
172
186
  * Fetches the available tools from the MCP servers.
173
187
  * @returns the MCP powered tools
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/agent.mjs CHANGED
@@ -32,6 +32,7 @@ export class Agent extends AgentHooks {
32
32
  }
33
33
  name;
34
34
  instructions;
35
+ prompt;
35
36
  handoffDescription;
36
37
  handoffs;
37
38
  model;
@@ -50,6 +51,7 @@ export class Agent extends AgentHooks {
50
51
  }
51
52
  this.name = config.name;
52
53
  this.instructions = config.instructions ?? '';
54
+ this.prompt = config.prompt;
53
55
  this.handoffDescription = config.handoffDescription ?? '';
54
56
  this.handoffs = config.handoffs ?? [];
55
57
  this.model = config.model ?? '';
@@ -168,6 +170,18 @@ export class Agent extends AgentHooks {
168
170
  }
169
171
  return this.instructions;
170
172
  }
173
+ /**
174
+ * Returns the prompt template for the agent, if defined.
175
+ *
176
+ * If the agent has a function as its prompt, this function will be called with the
177
+ * runContext and the agent instance.
178
+ */
179
+ async getPrompt(runContext) {
180
+ if (typeof this.prompt === 'function') {
181
+ return await this.prompt(runContext, this);
182
+ }
183
+ return this.prompt;
184
+ }
171
185
  /**
172
186
  * Fetches the available tools from the MCP servers.
173
187
  * @returns the MCP powered tools
@@ -1 +1 @@
1
- {"version":3,"file":"agent.mjs","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.mjs","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import type { ModelItem } from './types/protocol';
2
2
  import { Agent, AgentOutputType } from './agent';
3
3
  import { RunContext } from './runContext';
4
4
  import { ResolvedAgentOutput, TextOutput, UnknownContext } from './types';
5
+ import type { ModelResponse } from './model';
5
6
  /**
6
7
  * Definition of input/output guardrails; SDK users usually do not need to create this.
7
8
  */
@@ -100,6 +101,13 @@ export interface OutputGuardrailFunctionArgs<TContext = UnknownContext, TOutput
100
101
  agent: Agent<any, any>;
101
102
  agentOutput: ResolvedAgentOutput<TOutput>;
102
103
  context: RunContext<TContext>;
104
+ /**
105
+ * Additional details about the agent output.
106
+ */
107
+ details?: {
108
+ /** Model response associated with the output if available. */
109
+ modelResponse?: ModelResponse;
110
+ };
103
111
  }
104
112
  /**
105
113
  * The result of an output guardrail execution.
@@ -1 +1 @@
1
- {"version":3,"file":"guardrail.js","sourceRoot":"","sources":["../src/guardrail.ts"],"names":[],"mappings":"AAqHA;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,IAAI,EACJ,OAAO,GACkB;IACzB,OAAO;QACL,IAAI,EAAE,OAAO;QACb,IAAI;QACJ,iBAAiB,EAAE,OAAO;QAC1B,KAAK,CAAC,GAAG,CAAC,IAAgC;YACxC,OAAO;gBACL,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;gBAClC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;aAC5B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAqGD;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAEnC,EACA,IAAI,EACJ,OAAO,GAC4B;IAInC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,IAAI;QACJ,iBAAiB,EAAE,OAAO;QAC1B,KAAK,CAAC,GAAG,CACP,IAA0D;YAE1D,OAAO;gBACL,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;gBACnC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;aAC5B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"guardrail.js","sourceRoot":"","sources":["../src/guardrail.ts"],"names":[],"mappings":"AAsHA;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,IAAI,EACJ,OAAO,GACkB;IACzB,OAAO;QACL,IAAI,EAAE,OAAO;QACb,IAAI;QACJ,iBAAiB,EAAE,OAAO;QAC1B,KAAK,CAAC,GAAG,CAAC,IAAgC;YACxC,OAAO;gBACL,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;gBAClC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;aAC5B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AA4GD;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAEnC,EACA,IAAI,EACJ,OAAO,GAC4B;IAInC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,IAAI;QACJ,iBAAiB,EAAE,OAAO;QAC1B,KAAK,CAAC,GAAG,CACP,IAA0D;YAE1D,OAAO;gBACL,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;gBACnC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;aAC5B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"guardrail.mjs","sourceRoot":"","sources":["../src/guardrail.ts"],"names":[],"mappings":"AAqHA;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,IAAI,EACJ,OAAO,GACkB;IACzB,OAAO;QACL,IAAI,EAAE,OAAO;QACb,IAAI;QACJ,iBAAiB,EAAE,OAAO;QAC1B,KAAK,CAAC,GAAG,CAAC,IAAgC;YACxC,OAAO;gBACL,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;gBAClC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;aAC5B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAqGD;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAEnC,EACA,IAAI,EACJ,OAAO,GAC4B;IAInC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,IAAI;QACJ,iBAAiB,EAAE,OAAO;QAC1B,KAAK,CAAC,GAAG,CACP,IAA0D;YAE1D,OAAO;gBACL,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;gBACnC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;aAC5B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"guardrail.mjs","sourceRoot":"","sources":["../src/guardrail.ts"],"names":[],"mappings":"AAsHA;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,IAAI,EACJ,OAAO,GACkB;IACzB,OAAO;QACL,IAAI,EAAE,OAAO;QACb,IAAI;QACJ,iBAAiB,EAAE,OAAO;QAC1B,KAAK,CAAC,GAAG,CAAC,IAAgC;YACxC,OAAO;gBACL,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;gBAClC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;aAC5B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AA4GD;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAEnC,EACA,IAAI,EACJ,OAAO,GAC4B;IAInC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,IAAI;QACJ,iBAAiB,EAAE,OAAO;QAC1B,KAAK,CAAC,GAAG,CACP,IAA0D;YAE1D,OAAO;gBACL,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;gBACnC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;aAC5B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -3,6 +3,7 @@ import type { Agent, AgentOutputType } from './agent';
3
3
  import { Tool } from './tool';
4
4
  import { RuntimeEventEmitter, EventEmitter, EventEmitterEvents } from '@openai/agents-core/_shims';
5
5
  import { TextOutput, UnknownContext } from './types';
6
+ import * as protocol from './types/protocol';
6
7
  export declare abstract class EventEmitterDelegate<EventTypes extends EventEmitterEvents = Record<string, any[]>> implements EventEmitter<EventTypes> {
7
8
  protected abstract eventEmitter: EventEmitter<EventTypes>;
8
9
  on<K extends keyof EventTypes>(type: K, listener: (...args: EventTypes[K]) => void): EventEmitter<EventTypes>;
@@ -31,7 +32,13 @@ export type AgentHookEvents<TContext = UnknownContext, TOutput extends AgentOutp
31
32
  * @param agent - The agent that is starting a tool
32
33
  * @param tool - The tool that is starting
33
34
  */
34
- agent_tool_start: [context: RunContext<TContext>, tool: Tool<any>];
35
+ agent_tool_start: [
36
+ context: RunContext<TContext>,
37
+ tool: Tool<any>,
38
+ details: {
39
+ toolCall: protocol.ToolCallItem;
40
+ }
41
+ ];
35
42
  /**
36
43
  * @param context - The context of the run
37
44
  * @param agent - The agent that is ending a tool
@@ -41,7 +48,10 @@ export type AgentHookEvents<TContext = UnknownContext, TOutput extends AgentOutp
41
48
  agent_tool_end: [
42
49
  context: RunContext<TContext>,
43
50
  tool: Tool<any>,
44
- result: string
51
+ result: string,
52
+ details: {
53
+ toolCall: protocol.ToolCallItem;
54
+ }
45
55
  ];
46
56
  };
47
57
  /**
@@ -85,7 +95,10 @@ export type RunHookEvents<TContext = UnknownContext, TOutput extends AgentOutput
85
95
  agent_tool_start: [
86
96
  context: RunContext<TContext>,
87
97
  agent: Agent<TContext, TOutput>,
88
- tool: Tool
98
+ tool: Tool,
99
+ details: {
100
+ toolCall: protocol.ToolCallItem;
101
+ }
89
102
  ];
90
103
  /**
91
104
  * @param context - The context of the run
@@ -97,7 +110,10 @@ export type RunHookEvents<TContext = UnknownContext, TOutput extends AgentOutput
97
110
  context: RunContext<TContext>,
98
111
  agent: Agent<TContext, TOutput>,
99
112
  tool: Tool,
100
- result: string
113
+ result: string,
114
+ details: {
115
+ toolCall: protocol.ToolCallItem;
116
+ }
101
117
  ];
102
118
  };
103
119
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../src/lifecycle.ts"],"names":[],"mappings":"OAGO,EACL,mBAAmB,GAGpB,MAAM,4BAA4B;AAGnC,MAAM,OAAgB,oBAAoB;IAMxC,EAAE,CACA,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,GAAG,CACD,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,IAAI,CAA6B,IAAO,EAAE,GAAG,IAAmB;QAC9D,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,CACF,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CACF;AAwCD;;;GAGG;AACH,MAAM,OAAO,UAGX,SAAQ,oBAAwD;IACtD,YAAY,GAAG,IAAI,mBAAmB,EAE7C,CAAC;CACL;AAuDD;;;GAGG;AACH,MAAM,OAAO,QAGX,SAAQ,oBAAsD;IACpD,YAAY,GAAG,IAAI,mBAAmB,EAE7C,CAAC;CACL"}
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../src/lifecycle.ts"],"names":[],"mappings":"OAGO,EACL,mBAAmB,GAGpB,MAAM,4BAA4B;AAInC,MAAM,OAAgB,oBAAoB;IAMxC,EAAE,CACA,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,GAAG,CACD,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,IAAI,CAA6B,IAAO,EAAE,GAAG,IAAmB;QAC9D,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,CACF,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CACF;AA6CD;;;GAGG;AACH,MAAM,OAAO,UAGX,SAAQ,oBAAwD;IACtD,YAAY,GAAG,IAAI,mBAAmB,EAE7C,CAAC;CACL;AAyDD;;;GAGG;AACH,MAAM,OAAO,QAGX,SAAQ,oBAAsD;IACpD,YAAY,GAAG,IAAI,mBAAmB,EAE7C,CAAC;CACL"}
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.mjs","sourceRoot":"","sources":["../src/lifecycle.ts"],"names":[],"mappings":"OAGO,EACL,mBAAmB,GAGpB,MAAM,4BAA4B;AAGnC,MAAM,OAAgB,oBAAoB;IAMxC,EAAE,CACA,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,GAAG,CACD,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,IAAI,CAA6B,IAAO,EAAE,GAAG,IAAmB;QAC9D,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,CACF,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CACF;AAwCD;;;GAGG;AACH,MAAM,OAAO,UAGX,SAAQ,oBAAwD;IACtD,YAAY,GAAG,IAAI,mBAAmB,EAE7C,CAAC;CACL;AAuDD;;;GAGG;AACH,MAAM,OAAO,QAGX,SAAQ,oBAAsD;IACpD,YAAY,GAAG,IAAI,mBAAmB,EAE7C,CAAC;CACL"}
1
+ {"version":3,"file":"lifecycle.mjs","sourceRoot":"","sources":["../src/lifecycle.ts"],"names":[],"mappings":"OAGO,EACL,mBAAmB,GAGpB,MAAM,4BAA4B;AAInC,MAAM,OAAgB,oBAAoB;IAMxC,EAAE,CACA,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,GAAG,CACD,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,IAAI,CAA6B,IAAO,EAAE,GAAG,IAAmB;QAC9D,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,CACF,IAAO,EACP,QAA0C;QAE1C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CACF;AA6CD;;;GAGG;AACH,MAAM,OAAO,UAGX,SAAQ,oBAAwD;IACtD,YAAY,GAAG,IAAI,mBAAmB,EAE7C,CAAC;CACL;AAyDD;;;GAGG;AACH,MAAM,OAAO,QAGX,SAAQ,oBAAsD;IACpD,YAAY,GAAG,IAAI,mBAAmB,EAE7C,CAAC;CACL"}
package/dist/metadata.js CHANGED
@@ -1,9 +1,9 @@
1
1
  // This file is automatically generated
2
2
  export const METADATA = {
3
3
  "name": "@openai/agents-core",
4
- "version": "0.0.7",
4
+ "version": "0.0.9",
5
5
  "versions": {
6
- "@openai/agents-core": "0.0.7",
6
+ "@openai/agents-core": "0.0.9",
7
7
  "@openai/zod": "npm:zod@^3.25.40",
8
8
  "openai": "^5.0.1"
9
9
  }
package/dist/metadata.mjs CHANGED
@@ -1,9 +1,9 @@
1
1
  // This file is automatically generated
2
2
  export const METADATA = {
3
3
  "name": "@openai/agents-core",
4
- "version": "0.0.7",
4
+ "version": "0.0.9",
5
5
  "versions": {
6
- "@openai/agents-core": "0.0.7",
6
+ "@openai/agents-core": "0.0.9",
7
7
  "@openai/zod": "npm:zod@^3.25.40",
8
8
  "openai": "^5.0.1"
9
9
  }
package/dist/model.d.ts CHANGED
@@ -2,7 +2,7 @@ import { Usage } from './usage';
2
2
  import { StreamEvent } from './types/protocol';
3
3
  import { HostedTool, ComputerTool, FunctionTool } from './tool';
4
4
  import { Handoff } from './handoff';
5
- import { AgentInputItem, AgentOutputItem, JsonSchemaDefinition, TextOutput } from './types';
5
+ import { AgentInputItem, AgentOutputItem, JsonSchemaDefinition, TextOutput, InputText, InputImage, InputFile } from './types';
6
6
  export type ModelSettingsToolChoice = 'auto' | 'required' | 'none' | (string & {});
7
7
  /**
8
8
  * Settings to use when calling an LLM.
@@ -157,6 +157,10 @@ export type ModelRequest = {
157
157
  * An optional signal to abort the model request.
158
158
  */
159
159
  signal?: AbortSignal;
160
+ /**
161
+ * The prompt template to use for the model, if any.
162
+ */
163
+ prompt?: Prompt;
160
164
  };
161
165
  export type ModelResponse = {
162
166
  /**
@@ -172,6 +176,10 @@ export type ModelResponse = {
172
176
  * model. Not supported by all model providers.
173
177
  */
174
178
  responseId?: string;
179
+ /**
180
+ * Raw response data from the underlying model provider.
181
+ */
182
+ providerData?: Record<string, any>;
175
183
  };
176
184
  /**
177
185
  * The base interface for calling an LLM.
@@ -202,3 +210,24 @@ export interface ModelProvider {
202
210
  */
203
211
  getModel(modelName?: string): Promise<Model> | Model;
204
212
  }
213
+ /**
214
+ * Reference to a prompt template and its variables.
215
+ */
216
+ export type Prompt = {
217
+ /**
218
+ * The unique identifier of the prompt template to use.
219
+ */
220
+ promptId: string;
221
+ /**
222
+ * Optional version of the prompt template.
223
+ */
224
+ version?: string;
225
+ /**
226
+ * Optional variables to substitute into the prompt template.
227
+ * Can be a string, or an object with string keys and values that are string,
228
+ * InputText, InputImage, or InputFile.
229
+ */
230
+ variables?: {
231
+ [key: string]: string | InputText | InputImage | InputFile;
232
+ };
233
+ };
package/dist/run.d.ts CHANGED
@@ -67,7 +67,7 @@ export type RunConfig = {
67
67
  /**
68
68
  * An optional dictionary of additional metadata to include with the trace.
69
69
  */
70
- traceMetadata?: Record<string, any>;
70
+ traceMetadata?: Record<string, string>;
71
71
  };
72
72
  type SharedRunOptions<TContext = undefined> = {
73
73
  context?: TContext | RunContext<TContext>;
package/dist/run.js CHANGED
@@ -29,7 +29,9 @@ export function getTracing(tracingDisabled, traceIncludeSensitiveData) {
29
29
  return 'enabled_without_data';
30
30
  }
31
31
  export function getTurnInput(originalInput, generatedItems) {
32
- const rawItems = generatedItems.map((item) => item.rawItem);
32
+ const rawItems = generatedItems
33
+ .filter((item) => item.type !== 'tool_approval_item') // don't include approval items to avoid double function calls
34
+ .map((item) => item.rawItem);
33
35
  if (typeof originalInput === 'string') {
34
36
  originalInput = [{ type: 'message', role: 'user', content: originalInput }];
35
37
  }
@@ -92,6 +94,10 @@ export class Runner extends RunHooks {
92
94
  state._originalInput = turnResult.originalInput;
93
95
  state._generatedItems = turnResult.generatedItems;
94
96
  state._currentStep = turnResult.nextStep;
97
+ if (turnResult.nextStep.type === 'next_step_interruption') {
98
+ // we are still in an interruption, so we need to avoid an infinite loop
99
+ return new RunResult(state);
100
+ }
95
101
  continue;
96
102
  }
97
103
  if (state._currentStep.type === 'next_step_run_again') {
@@ -138,6 +144,7 @@ export class Runner extends RunHooks {
138
144
  modelSettings = maybeResetToolChoice(state._currentAgent, state._toolUseTracker, modelSettings);
139
145
  state._lastTurnResponse = await model.getResponse({
140
146
  systemInstructions: await state._currentAgent.getSystemPrompt(state._context),
147
+ prompt: await state._currentAgent.getPrompt(state._context),
141
148
  input: turnInput,
142
149
  previousResponseId: options.previousResponseId,
143
150
  modelSettings,
@@ -253,6 +260,7 @@ export class Runner extends RunHooks {
253
260
  agent: state._currentAgent,
254
261
  agentOutput,
255
262
  context: state._context,
263
+ details: { modelResponse: state._lastTurnResponse },
256
264
  };
257
265
  try {
258
266
  const results = await Promise.all(guardrails.map(async (guardrail) => {
@@ -308,6 +316,10 @@ export class Runner extends RunHooks {
308
316
  result.state._originalInput = turnResult.originalInput;
309
317
  result.state._generatedItems = turnResult.generatedItems;
310
318
  result.state._currentStep = turnResult.nextStep;
319
+ if (turnResult.nextStep.type === 'next_step_interruption') {
320
+ // we are still in an interruption, so we need to avoid an infinite loop
321
+ return;
322
+ }
311
323
  continue;
312
324
  }
313
325
  if (result.state._currentStep.type === 'next_step_run_again') {
@@ -353,6 +365,7 @@ export class Runner extends RunHooks {
353
365
  let finalResponse = undefined;
354
366
  for await (const event of model.getStreamedResponse({
355
367
  systemInstructions: await currentAgent.getSystemPrompt(result.state._context),
368
+ prompt: await currentAgent.getPrompt(result.state._context),
356
369
  input: turnInput,
357
370
  previousResponseId: options.previousResponseId,
358
371
  modelSettings,
@@ -490,6 +503,11 @@ export class Runner extends RunHooks {
490
503
  else {
491
504
  return this.#runIndividualNonStream(agent, input, options);
492
505
  }
506
+ }, {
507
+ traceId: this.config.traceId,
508
+ name: this.config.workflowName,
509
+ groupId: this.config.groupId,
510
+ metadata: this.config.traceMetadata,
493
511
  });
494
512
  }
495
513
  }
package/dist/run.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
package/dist/run.mjs CHANGED
@@ -29,7 +29,9 @@ export function getTracing(tracingDisabled, traceIncludeSensitiveData) {
29
29
  return 'enabled_without_data';
30
30
  }
31
31
  export function getTurnInput(originalInput, generatedItems) {
32
- const rawItems = generatedItems.map((item) => item.rawItem);
32
+ const rawItems = generatedItems
33
+ .filter((item) => item.type !== 'tool_approval_item') // don't include approval items to avoid double function calls
34
+ .map((item) => item.rawItem);
33
35
  if (typeof originalInput === 'string') {
34
36
  originalInput = [{ type: 'message', role: 'user', content: originalInput }];
35
37
  }
@@ -92,6 +94,10 @@ export class Runner extends RunHooks {
92
94
  state._originalInput = turnResult.originalInput;
93
95
  state._generatedItems = turnResult.generatedItems;
94
96
  state._currentStep = turnResult.nextStep;
97
+ if (turnResult.nextStep.type === 'next_step_interruption') {
98
+ // we are still in an interruption, so we need to avoid an infinite loop
99
+ return new RunResult(state);
100
+ }
95
101
  continue;
96
102
  }
97
103
  if (state._currentStep.type === 'next_step_run_again') {
@@ -138,6 +144,7 @@ export class Runner extends RunHooks {
138
144
  modelSettings = maybeResetToolChoice(state._currentAgent, state._toolUseTracker, modelSettings);
139
145
  state._lastTurnResponse = await model.getResponse({
140
146
  systemInstructions: await state._currentAgent.getSystemPrompt(state._context),
147
+ prompt: await state._currentAgent.getPrompt(state._context),
141
148
  input: turnInput,
142
149
  previousResponseId: options.previousResponseId,
143
150
  modelSettings,
@@ -253,6 +260,7 @@ export class Runner extends RunHooks {
253
260
  agent: state._currentAgent,
254
261
  agentOutput,
255
262
  context: state._context,
263
+ details: { modelResponse: state._lastTurnResponse },
256
264
  };
257
265
  try {
258
266
  const results = await Promise.all(guardrails.map(async (guardrail) => {
@@ -308,6 +316,10 @@ export class Runner extends RunHooks {
308
316
  result.state._originalInput = turnResult.originalInput;
309
317
  result.state._generatedItems = turnResult.generatedItems;
310
318
  result.state._currentStep = turnResult.nextStep;
319
+ if (turnResult.nextStep.type === 'next_step_interruption') {
320
+ // we are still in an interruption, so we need to avoid an infinite loop
321
+ return;
322
+ }
311
323
  continue;
312
324
  }
313
325
  if (result.state._currentStep.type === 'next_step_run_again') {
@@ -353,6 +365,7 @@ export class Runner extends RunHooks {
353
365
  let finalResponse = undefined;
354
366
  for await (const event of model.getStreamedResponse({
355
367
  systemInstructions: await currentAgent.getSystemPrompt(result.state._context),
368
+ prompt: await currentAgent.getPrompt(result.state._context),
356
369
  input: turnInput,
357
370
  previousResponseId: options.previousResponseId,
358
371
  modelSettings,
@@ -490,6 +503,11 @@ export class Runner extends RunHooks {
490
503
  else {
491
504
  return this.#runIndividualNonStream(agent, input, options);
492
505
  }
506
+ }, {
507
+ traceId: this.config.traceId,
508
+ name: this.config.workflowName,
509
+ groupId: this.config.groupId,
510
+ metadata: this.config.traceMetadata,
493
511
  });
494
512
  }
495
513
  }