@openai/agents-core 0.0.6 → 0.0.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.
- package/dist/agent.d.ts +17 -1
- package/dist/agent.js +14 -0
- package/dist/agent.js.map +1 -1
- package/dist/agent.mjs +14 -0
- package/dist/agent.mjs.map +1 -1
- package/dist/guardrail.d.ts +50 -5
- package/dist/guardrail.js +2 -5
- package/dist/guardrail.js.map +1 -1
- package/dist/guardrail.mjs +2 -5
- package/dist/guardrail.mjs.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -2
- package/dist/index.mjs.map +1 -1
- package/dist/items.d.ts +18 -10
- package/dist/items.js.map +1 -1
- package/dist/items.mjs.map +1 -1
- package/dist/lifecycle.d.ts +20 -4
- package/dist/lifecycle.js.map +1 -1
- package/dist/lifecycle.mjs.map +1 -1
- package/dist/mcp.d.ts +37 -0
- package/dist/mcp.js +52 -1
- package/dist/mcp.js.map +1 -1
- package/dist/mcp.mjs +52 -1
- package/dist/mcp.mjs.map +1 -1
- package/dist/metadata.js +2 -2
- package/dist/metadata.mjs +2 -2
- package/dist/model.d.ts +30 -1
- package/dist/run.js +14 -1
- package/dist/run.js.map +1 -1
- package/dist/run.mjs +14 -1
- package/dist/run.mjs.map +1 -1
- package/dist/runContext.js +10 -2
- package/dist/runContext.js.map +1 -1
- package/dist/runContext.mjs +10 -2
- package/dist/runContext.mjs.map +1 -1
- package/dist/runImplementation.d.ts +7 -2
- package/dist/runImplementation.js +146 -20
- package/dist/runImplementation.js.map +1 -1
- package/dist/runImplementation.mjs +146 -20
- package/dist/runImplementation.mjs.map +1 -1
- package/dist/runState.d.ts +395 -62
- package/dist/runState.js +39 -1
- package/dist/runState.js.map +1 -1
- package/dist/runState.mjs +39 -1
- package/dist/runState.mjs.map +1 -1
- package/dist/shims/mcp-server/browser.d.ts +17 -0
- package/dist/shims/mcp-server/browser.js +42 -0
- package/dist/shims/mcp-server/browser.js.map +1 -0
- package/dist/shims/mcp-server/browser.mjs +42 -0
- package/dist/shims/mcp-server/browser.mjs.map +1 -0
- package/dist/shims/mcp-server/node.d.ts +39 -0
- package/dist/shims/{mcp-stdio → mcp-server}/node.js +89 -1
- package/dist/shims/mcp-server/node.js.map +1 -0
- package/dist/shims/{mcp-stdio → mcp-server}/node.mjs +89 -1
- package/dist/shims/mcp-server/node.mjs.map +1 -0
- package/dist/shims/shims-browser.d.ts +1 -1
- package/dist/shims/shims-browser.js +1 -1
- package/dist/shims/shims-browser.js.map +1 -1
- package/dist/shims/shims-browser.mjs +1 -1
- package/dist/shims/shims-browser.mjs.map +1 -1
- package/dist/shims/shims-node.d.ts +1 -1
- package/dist/shims/shims-node.js +1 -1
- package/dist/shims/shims-node.js.map +1 -1
- package/dist/shims/shims-node.mjs +1 -1
- package/dist/shims/shims-node.mjs.map +1 -1
- package/dist/shims/shims-workerd.d.ts +1 -1
- package/dist/shims/shims-workerd.js +1 -1
- package/dist/shims/shims-workerd.js.map +1 -1
- package/dist/shims/shims-workerd.mjs +1 -1
- package/dist/shims/shims-workerd.mjs.map +1 -1
- package/dist/tool.d.ts +55 -0
- package/dist/tool.js +54 -0
- package/dist/tool.js.map +1 -1
- package/dist/tool.mjs +54 -0
- package/dist/tool.mjs.map +1 -1
- package/dist/tracing/spans.d.ts +1 -0
- package/dist/tracing/spans.js.map +1 -1
- package/dist/tracing/spans.mjs.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/index.mjs +1 -0
- package/dist/types/index.mjs.map +1 -1
- package/dist/types/protocol.d.ts +64 -20
- package/dist/types/protocol.js +7 -0
- package/dist/types/protocol.js.map +1 -1
- package/dist/types/protocol.mjs +7 -0
- package/dist/types/protocol.mjs.map +1 -1
- package/dist/types/providerData.d.ts +57 -0
- package/dist/types/providerData.js +2 -0
- package/dist/types/providerData.js.map +1 -0
- package/dist/types/providerData.mjs +2 -0
- package/dist/types/providerData.mjs.map +1 -0
- package/package.json +1 -1
- package/dist/shims/mcp-stdio/browser.d.ts +0 -9
- package/dist/shims/mcp-stdio/browser.js +0 -22
- package/dist/shims/mcp-stdio/browser.js.map +0 -1
- package/dist/shims/mcp-stdio/browser.mjs +0 -22
- package/dist/shims/mcp-stdio/browser.mjs.map +0 -1
- package/dist/shims/mcp-stdio/node.d.ts +0 -22
- package/dist/shims/mcp-stdio/node.js.map +0 -1
- package/dist/shims/mcp-stdio/node.mjs.map +0 -1
package/dist/mcp.d.ts
CHANGED
@@ -3,6 +3,7 @@ import { Logger } from './logger';
|
|
3
3
|
import { z } from '@openai/zod/v3';
|
4
4
|
import { JsonObjectSchemaNonStrict, JsonObjectSchemaStrict, UnknownContext } from './types';
|
5
5
|
export declare const DEFAULT_STDIO_MCP_CLIENT_LOGGER_NAME = "openai-agents:stdio-mcp-client";
|
6
|
+
export declare const DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME = "openai-agents:streamable-http-mcp-client";
|
6
7
|
/**
|
7
8
|
* Interface for MCP server implementations.
|
8
9
|
* Provides methods for connecting, listing tools, calling tools, and cleanup.
|
@@ -31,6 +32,22 @@ export declare abstract class BaseMCPServerStdio implements MCPServer {
|
|
31
32
|
*/
|
32
33
|
protected debugLog(buildMessage: () => string): void;
|
33
34
|
}
|
35
|
+
export declare abstract class BaseMCPServerStreamableHttp implements MCPServer {
|
36
|
+
cacheToolsList: boolean;
|
37
|
+
protected _cachedTools: any[] | undefined;
|
38
|
+
protected logger: Logger;
|
39
|
+
constructor(options: MCPServerStreamableHttpOptions);
|
40
|
+
abstract get name(): string;
|
41
|
+
abstract connect(): Promise<void>;
|
42
|
+
abstract close(): Promise<void>;
|
43
|
+
abstract listTools(): Promise<any[]>;
|
44
|
+
abstract callTool(_toolName: string, _args: Record<string, unknown> | null): Promise<CallToolResultContent>;
|
45
|
+
/**
|
46
|
+
* Logs a debug message when debug logging is enabled.
|
47
|
+
* @param buildMessage A function that returns the message to log.
|
48
|
+
*/
|
49
|
+
protected debugLog(buildMessage: () => string): void;
|
50
|
+
}
|
34
51
|
/**
|
35
52
|
* Minimum MCP tool data definition.
|
36
53
|
* This type definition does not intend to cover all possible properties.
|
@@ -88,6 +105,15 @@ export declare class MCPServerStdio extends BaseMCPServerStdio {
|
|
88
105
|
listTools(): Promise<MCPTool[]>;
|
89
106
|
callTool(toolName: string, args: Record<string, unknown> | null): Promise<CallToolResultContent>;
|
90
107
|
}
|
108
|
+
export declare class MCPServerStreamableHttp extends BaseMCPServerStreamableHttp {
|
109
|
+
private underlying;
|
110
|
+
constructor(options: MCPServerStreamableHttpOptions);
|
111
|
+
get name(): string;
|
112
|
+
connect(): Promise<void>;
|
113
|
+
close(): Promise<void>;
|
114
|
+
listTools(): Promise<MCPTool[]>;
|
115
|
+
callTool(toolName: string, args: Record<string, unknown> | null): Promise<CallToolResultContent>;
|
116
|
+
}
|
91
117
|
/**
|
92
118
|
* Fetches and flattens all tools from multiple MCP servers.
|
93
119
|
* Logs and skips any servers that fail to respond.
|
@@ -129,6 +155,17 @@ export interface FullCommandMCPServerStdioOptions extends BaseMCPServerStdioOpti
|
|
129
155
|
fullCommand: string;
|
130
156
|
}
|
131
157
|
export type MCPServerStdioOptions = DefaultMCPServerStdioOptions | FullCommandMCPServerStdioOptions;
|
158
|
+
export interface MCPServerStreamableHttpOptions {
|
159
|
+
url: string;
|
160
|
+
cacheToolsList?: boolean;
|
161
|
+
clientSessionTimeoutSeconds?: number;
|
162
|
+
name?: string;
|
163
|
+
logger?: Logger;
|
164
|
+
authProvider?: any;
|
165
|
+
requestInit?: any;
|
166
|
+
reconnectionOptions?: any;
|
167
|
+
sessionId?: string;
|
168
|
+
}
|
132
169
|
/**
|
133
170
|
* Represents a JSON-RPC request message.
|
134
171
|
*/
|
package/dist/mcp.js
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
import { tool } from "./tool.js";
|
2
2
|
import { UserError } from "./errors.js";
|
3
|
-
import { MCPServerStdio as UnderlyingMCPServerStdio } from '@openai/agents-core/_shims';
|
3
|
+
import { MCPServerStdio as UnderlyingMCPServerStdio, MCPServerStreamableHttp as UnderlyingMCPServerStreamableHttp, } from '@openai/agents-core/_shims';
|
4
4
|
import { getCurrentSpan, withMCPListToolsSpan } from "./tracing/index.js";
|
5
5
|
import { logger as globalLogger, getLogger } from "./logger.js";
|
6
6
|
import debug from 'debug';
|
7
7
|
import { z } from '@openai/zod/v3';
|
8
8
|
export const DEFAULT_STDIO_MCP_CLIENT_LOGGER_NAME = 'openai-agents:stdio-mcp-client';
|
9
|
+
export const DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME = 'openai-agents:streamable-http-mcp-client';
|
9
10
|
export class BaseMCPServerStdio {
|
10
11
|
cacheToolsList;
|
11
12
|
_cachedTools = undefined;
|
@@ -26,6 +27,27 @@ export class BaseMCPServerStdio {
|
|
26
27
|
}
|
27
28
|
}
|
28
29
|
}
|
30
|
+
export class BaseMCPServerStreamableHttp {
|
31
|
+
cacheToolsList;
|
32
|
+
_cachedTools = undefined;
|
33
|
+
logger;
|
34
|
+
constructor(options) {
|
35
|
+
this.logger =
|
36
|
+
options.logger ??
|
37
|
+
getLogger(DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME);
|
38
|
+
this.cacheToolsList = options.cacheToolsList ?? true;
|
39
|
+
}
|
40
|
+
/**
|
41
|
+
* Logs a debug message when debug logging is enabled.
|
42
|
+
* @param buildMessage A function that returns the message to log.
|
43
|
+
*/
|
44
|
+
debugLog(buildMessage) {
|
45
|
+
if (debug.enabled(this.logger.namespace)) {
|
46
|
+
// only when this is true, the function to build the string is called
|
47
|
+
this.logger.debug(buildMessage());
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
29
51
|
/**
|
30
52
|
* Minimum MCP tool data definition.
|
31
53
|
* This type definition does not intend to cover all possible properties.
|
@@ -74,6 +96,35 @@ export class MCPServerStdio extends BaseMCPServerStdio {
|
|
74
96
|
return this.underlying.callTool(toolName, args);
|
75
97
|
}
|
76
98
|
}
|
99
|
+
export class MCPServerStreamableHttp extends BaseMCPServerStreamableHttp {
|
100
|
+
underlying;
|
101
|
+
constructor(options) {
|
102
|
+
super(options);
|
103
|
+
this.underlying = new UnderlyingMCPServerStreamableHttp(options);
|
104
|
+
}
|
105
|
+
get name() {
|
106
|
+
return this.underlying.name;
|
107
|
+
}
|
108
|
+
connect() {
|
109
|
+
return this.underlying.connect();
|
110
|
+
}
|
111
|
+
close() {
|
112
|
+
return this.underlying.close();
|
113
|
+
}
|
114
|
+
async listTools() {
|
115
|
+
if (this.cacheToolsList && this._cachedTools) {
|
116
|
+
return this._cachedTools;
|
117
|
+
}
|
118
|
+
const tools = await this.underlying.listTools();
|
119
|
+
if (this.cacheToolsList) {
|
120
|
+
this._cachedTools = tools;
|
121
|
+
}
|
122
|
+
return tools;
|
123
|
+
}
|
124
|
+
callTool(toolName, args) {
|
125
|
+
return this.underlying.callTool(toolName, args);
|
126
|
+
}
|
127
|
+
}
|
77
128
|
/**
|
78
129
|
* Fetches and flattens all tools from multiple MCP servers.
|
79
130
|
* Logs and skips any servers that fail to respond.
|
package/dist/mcp.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"OAAO,EAAgB,IAAI,EAAQ;OAC5B,EAAE,SAAS,EAAE;OACb,
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp.mjs
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
import { tool } from "./tool.mjs";
|
2
2
|
import { UserError } from "./errors.mjs";
|
3
|
-
import { MCPServerStdio as UnderlyingMCPServerStdio } from '@openai/agents-core/_shims';
|
3
|
+
import { MCPServerStdio as UnderlyingMCPServerStdio, MCPServerStreamableHttp as UnderlyingMCPServerStreamableHttp, } from '@openai/agents-core/_shims';
|
4
4
|
import { getCurrentSpan, withMCPListToolsSpan } from "./tracing/index.mjs";
|
5
5
|
import { logger as globalLogger, getLogger } from "./logger.mjs";
|
6
6
|
import debug from 'debug';
|
7
7
|
import { z } from '@openai/zod/v3';
|
8
8
|
export const DEFAULT_STDIO_MCP_CLIENT_LOGGER_NAME = 'openai-agents:stdio-mcp-client';
|
9
|
+
export const DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME = 'openai-agents:streamable-http-mcp-client';
|
9
10
|
export class BaseMCPServerStdio {
|
10
11
|
cacheToolsList;
|
11
12
|
_cachedTools = undefined;
|
@@ -26,6 +27,27 @@ export class BaseMCPServerStdio {
|
|
26
27
|
}
|
27
28
|
}
|
28
29
|
}
|
30
|
+
export class BaseMCPServerStreamableHttp {
|
31
|
+
cacheToolsList;
|
32
|
+
_cachedTools = undefined;
|
33
|
+
logger;
|
34
|
+
constructor(options) {
|
35
|
+
this.logger =
|
36
|
+
options.logger ??
|
37
|
+
getLogger(DEFAULT_STREAMABLE_HTTP_MCP_CLIENT_LOGGER_NAME);
|
38
|
+
this.cacheToolsList = options.cacheToolsList ?? true;
|
39
|
+
}
|
40
|
+
/**
|
41
|
+
* Logs a debug message when debug logging is enabled.
|
42
|
+
* @param buildMessage A function that returns the message to log.
|
43
|
+
*/
|
44
|
+
debugLog(buildMessage) {
|
45
|
+
if (debug.enabled(this.logger.namespace)) {
|
46
|
+
// only when this is true, the function to build the string is called
|
47
|
+
this.logger.debug(buildMessage());
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
29
51
|
/**
|
30
52
|
* Minimum MCP tool data definition.
|
31
53
|
* This type definition does not intend to cover all possible properties.
|
@@ -74,6 +96,35 @@ export class MCPServerStdio extends BaseMCPServerStdio {
|
|
74
96
|
return this.underlying.callTool(toolName, args);
|
75
97
|
}
|
76
98
|
}
|
99
|
+
export class MCPServerStreamableHttp extends BaseMCPServerStreamableHttp {
|
100
|
+
underlying;
|
101
|
+
constructor(options) {
|
102
|
+
super(options);
|
103
|
+
this.underlying = new UnderlyingMCPServerStreamableHttp(options);
|
104
|
+
}
|
105
|
+
get name() {
|
106
|
+
return this.underlying.name;
|
107
|
+
}
|
108
|
+
connect() {
|
109
|
+
return this.underlying.connect();
|
110
|
+
}
|
111
|
+
close() {
|
112
|
+
return this.underlying.close();
|
113
|
+
}
|
114
|
+
async listTools() {
|
115
|
+
if (this.cacheToolsList && this._cachedTools) {
|
116
|
+
return this._cachedTools;
|
117
|
+
}
|
118
|
+
const tools = await this.underlying.listTools();
|
119
|
+
if (this.cacheToolsList) {
|
120
|
+
this._cachedTools = tools;
|
121
|
+
}
|
122
|
+
return tools;
|
123
|
+
}
|
124
|
+
callTool(toolName, args) {
|
125
|
+
return this.underlying.callTool(toolName, args);
|
126
|
+
}
|
127
|
+
}
|
77
128
|
/**
|
78
129
|
* Fetches and flattens all tools from multiple MCP servers.
|
79
130
|
* Logs and skips any servers that fail to respond.
|
package/dist/mcp.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"mcp.mjs","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"OAAO,EAAgB,IAAI,EAAQ;OAC5B,EAAE,SAAS,EAAE;OACb,
|
1
|
+
{"version":3,"file":"mcp.mjs","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
|
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.
|
4
|
+
"version": "0.0.8",
|
5
5
|
"versions": {
|
6
|
-
"@openai/agents-core": "0.0.
|
6
|
+
"@openai/agents-core": "0.0.8",
|
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.
|
4
|
+
"version": "0.0.8",
|
5
5
|
"versions": {
|
6
|
-
"@openai/agents-core": "0.0.
|
6
|
+
"@openai/agents-core": "0.0.8",
|
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.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
|
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,
|
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
|
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,
|