@openai/agents-core 0.3.5 → 0.3.7

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 (59) hide show
  1. package/dist/index.d.ts +2 -1
  2. package/dist/index.js +3 -1
  3. package/dist/index.js.map +1 -1
  4. package/dist/index.mjs +1 -0
  5. package/dist/index.mjs.map +1 -1
  6. package/dist/items.d.ts +48 -0
  7. package/dist/memory/session.d.ts +32 -0
  8. package/dist/memory/session.js +6 -0
  9. package/dist/memory/session.js.map +1 -1
  10. package/dist/memory/session.mjs +5 -1
  11. package/dist/memory/session.mjs.map +1 -1
  12. package/dist/metadata.js +2 -2
  13. package/dist/metadata.mjs +2 -2
  14. package/dist/model.d.ts +3 -2
  15. package/dist/run.js +23 -0
  16. package/dist/run.js.map +1 -1
  17. package/dist/run.mjs +23 -0
  18. package/dist/run.mjs.map +1 -1
  19. package/dist/runImplementation.d.ts +2 -2
  20. package/dist/runImplementation.js +31 -1
  21. package/dist/runImplementation.js.map +1 -1
  22. package/dist/runImplementation.mjs +31 -1
  23. package/dist/runImplementation.mjs.map +1 -1
  24. package/dist/runState.d.ts +144 -0
  25. package/dist/runState.js +2 -0
  26. package/dist/runState.js.map +1 -1
  27. package/dist/runState.mjs +2 -0
  28. package/dist/runState.mjs.map +1 -1
  29. package/dist/shims/mcp-server/node.js +25 -15
  30. package/dist/shims/mcp-server/node.js.map +1 -1
  31. package/dist/shims/mcp-server/node.mjs +25 -15
  32. package/dist/shims/mcp-server/node.mjs.map +1 -1
  33. package/dist/tool.d.ts +40 -8
  34. package/dist/tool.js +121 -2
  35. package/dist/tool.js.map +1 -1
  36. package/dist/tool.mjs +119 -2
  37. package/dist/tool.mjs.map +1 -1
  38. package/dist/tracing/context.js +1 -0
  39. package/dist/tracing/context.js.map +1 -1
  40. package/dist/tracing/context.mjs +1 -0
  41. package/dist/tracing/context.mjs.map +1 -1
  42. package/dist/tracing/createSpans.d.ts +4 -4
  43. package/dist/tracing/spans.d.ts +2 -2
  44. package/dist/types/aliases.d.ts +3 -3
  45. package/dist/types/protocol.d.ts +171 -0
  46. package/dist/types/protocol.js +20 -1
  47. package/dist/types/protocol.js.map +1 -1
  48. package/dist/types/protocol.mjs +18 -0
  49. package/dist/types/protocol.mjs.map +1 -1
  50. package/dist/usage.d.ts +5 -0
  51. package/dist/usage.js +7 -0
  52. package/dist/usage.js.map +1 -1
  53. package/dist/usage.mjs +7 -0
  54. package/dist/usage.mjs.map +1 -1
  55. package/dist/utils/serialize.js +11 -0
  56. package/dist/utils/serialize.js.map +1 -1
  57. package/dist/utils/serialize.mjs +11 -0
  58. package/dist/utils/serialize.mjs.map +1 -1
  59. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -28,7 +28,8 @@ export * from './tracing';
28
28
  export { getGlobalTraceProvider, TraceProvider } from './tracing/provider';
29
29
  export type { AgentInputItem, AgentOutputItem, AssistantMessageItem, HostedToolCallItem, ComputerCallResultItem, ComputerUseCallItem, ShellCallItem, ShellCallResultItem, ApplyPatchCallItem, ApplyPatchCallResultItem, FunctionCallItem, FunctionCallResultItem, JsonSchemaDefinition, ReasoningItem, ResponseStreamEvent, SystemMessageItem, TextOutput, UnknownContext, UnknownItem, UserMessageItem, StreamEvent, StreamEventTextStream, StreamEventResponseCompleted, StreamEventResponseStarted, StreamEventGenericItem, } from './types';
30
30
  export { RequestUsage, Usage } from './usage';
31
- export type { Session, SessionInputCallback } from './memory/session';
31
+ export type { Session, SessionInputCallback, OpenAIResponsesCompactionArgs, OpenAIResponsesCompactionAwareSession, OpenAIResponsesCompactionResult, } from './memory/session';
32
+ export { isOpenAIResponsesCompactionAwareSession } from './memory/session';
32
33
  export { MemorySession } from './memory/memorySession';
33
34
  /**
34
35
  * Exporting the whole protocol as an object here. This contains both the types
package/dist/index.js CHANGED
@@ -37,7 +37,7 @@ var __importStar = (this && this.__importStar) || (function () {
37
37
  })();
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.Runner = exports.run = exports.StreamedRunResult = exports.RunResult = exports.setDefaultModelProvider = exports.isGpt5Default = exports.getDefaultModelSettings = exports.getDefaultModel = exports.gpt5ReasoningSettingsRequired = exports.OPENAI_DEFAULT_MODEL_ENV_VARIABLE_NAME = exports.createMCPToolStaticFilter = exports.MCPServerSSE = exports.MCPServerStreamableHttp = exports.MCPServerStdio = exports.mcpToFunctionTool = exports.invalidateServerToolsCache = exports.getAllMcpTools = exports.applyDiff = exports.getLogger = exports.AgentHooks = exports.RunToolCallOutputItem = exports.RunToolCallItem = exports.RunToolApprovalItem = exports.RunReasoningItem = exports.RunMessageOutputItem = exports.RunHandoffOutputItem = exports.RunHandoffCallItem = exports.extractAllTextOutput = exports.user = exports.system = exports.assistant = exports.handoff = exports.Handoff = exports.getTransferMessage = exports.getHandoff = exports.defineOutputGuardrail = exports.RunItemStreamEvent = exports.RunRawModelStreamEvent = exports.RunAgentUpdatedStreamEvent = exports.SystemError = exports.UserError = exports.ToolCallError = exports.OutputGuardrailTripwireTriggered = exports.ModelBehaviorError = exports.MaxTurnsExceededError = exports.InputGuardrailTripwireTriggered = exports.GuardrailExecutionError = exports.AgentsError = exports.Agent = exports.RuntimeEventEmitter = void 0;
40
- exports.protocol = exports.MemorySession = exports.Usage = exports.RequestUsage = exports.TraceProvider = exports.getGlobalTraceProvider = exports.tool = exports.hostedMcpTool = exports.applyPatchTool = exports.shellTool = exports.computerTool = exports.RunState = exports.RunContext = void 0;
40
+ exports.protocol = exports.MemorySession = exports.isOpenAIResponsesCompactionAwareSession = exports.Usage = exports.RequestUsage = exports.TraceProvider = exports.getGlobalTraceProvider = exports.tool = exports.hostedMcpTool = exports.applyPatchTool = exports.shellTool = exports.computerTool = exports.RunState = exports.RunContext = void 0;
41
41
  const tracing_1 = require("./tracing/index.js");
42
42
  const processor_1 = require("./tracing/processor.js");
43
43
  var _shims_1 = require("@openai/agents-core/_shims");
@@ -124,6 +124,8 @@ Object.defineProperty(exports, "TraceProvider", { enumerable: true, get: functio
124
124
  var usage_1 = require("./usage.js");
125
125
  Object.defineProperty(exports, "RequestUsage", { enumerable: true, get: function () { return usage_1.RequestUsage; } });
126
126
  Object.defineProperty(exports, "Usage", { enumerable: true, get: function () { return usage_1.Usage; } });
127
+ var session_1 = require("./memory/session.js");
128
+ Object.defineProperty(exports, "isOpenAIResponsesCompactionAwareSession", { enumerable: true, get: function () { return session_1.isOpenAIResponsesCompactionAwareSession; } });
127
129
  var memorySession_1 = require("./memory/memorySession.js");
128
130
  Object.defineProperty(exports, "MemorySession", { enumerable: true, get: function () { return memorySession_1.MemorySession; } });
129
131
  /**
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA8C;AAC9C,sDAAuD;AAEvD,qDAAiE;AAAxD,6GAAA,mBAAmB,OAAA;AAC5B,oCAUiB;AATf,8FAAA,KAAK,OAAA;AAaP,sCAUkB;AAThB,qGAAA,WAAW,OAAA;AACX,iHAAA,uBAAuB,OAAA;AACvB,yHAAA,+BAA+B,OAAA;AAC/B,+GAAA,qBAAqB,OAAA;AACrB,4GAAA,kBAAkB,OAAA;AAClB,0HAAA,gCAAgC,OAAA;AAChC,uGAAA,aAAa,OAAA;AACb,mGAAA,SAAS,OAAA;AACT,qGAAA,WAAW,OAAA;AAEb,sCAKkB;AAJhB,oHAAA,0BAA0B,OAAA;AAC1B,gHAAA,sBAAsB,OAAA;AACtB,4GAAA,kBAAkB,OAAA;AAGpB,4CAcqB;AAbnB,kHAAA,qBAAqB,OAAA;AAcvB,wCAOmB;AANjB,qGAAA,UAAU,OAAA;AACV,6GAAA,kBAAkB,OAAA;AAClB,kGAAA,OAAO,OAAA;AACP,kGAAA,OAAO,OAAA;AAIT,gDAA4D;AAAnD,oGAAA,SAAS,OAAA;AAAE,iGAAA,MAAM,OAAA;AAAE,+FAAA,IAAI,OAAA;AAChC,oCAUiB;AATf,6GAAA,oBAAoB,OAAA;AACpB,2GAAA,kBAAkB,OAAA;AAClB,6GAAA,oBAAoB,OAAA;AAEpB,6GAAA,oBAAoB,OAAA;AACpB,yGAAA,gBAAgB,OAAA;AAChB,4GAAA,mBAAmB,OAAA;AACnB,wGAAA,eAAe,OAAA;AACf,8GAAA,qBAAqB,OAAA;AAEvB,4CAAyC;AAAhC,uGAAA,UAAU,OAAA;AACnB,sCAAqC;AAA5B,mGAAA,SAAS,OAAA;AAClB,kDAA8C;AAArC,sGAAA,SAAS,OAAA;AAClB,gCAUe;AATb,qGAAA,cAAc,OAAA;AACd,iHAAA,0BAA0B,OAAA;AAC1B,wGAAA,iBAAiB,OAAA;AAEjB,qGAAA,cAAc,OAAA;AACd,8GAAA,uBAAuB,OAAA;AACvB,mGAAA,YAAY,OAAA;AAId,wCAKmB;AADjB,oHAAA,yBAAyB,OAAA;AAa3B,kDAMwB;AALtB,sIAAA,sCAAsC,OAAA;AACtC,6HAAA,6BAA6B,OAAA;AAC7B,+GAAA,eAAe,OAAA;AACf,uHAAA,uBAAuB,OAAA;AACvB,6GAAA,aAAa,OAAA;AAEf,4CAAsD;AAA7C,oHAAA,uBAAuB,OAAA;AAChC,sCAAwD;AAA/C,mGAAA,SAAS,OAAA;AAAE,2GAAA,iBAAiB,OAAA;AACrC,gCAOe;AAJb,0FAAA,GAAG,OAAA;AAEH,6FAAA,MAAM,OAAA;AAQR,8CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,0CAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,kCAgBgB;AAbd,oGAAA,YAAY,OAAA;AAEZ,iGAAA,SAAS,OAAA;AAET,sGAAA,cAAc,OAAA;AAEd,qGAAA,aAAa,OAAA;AAIb,4FAAA,IAAI,OAAA;AAWN,qDAA0B;AAC1B,kDAA2E;AAAlE,kHAAA,sBAAsB,OAAA;AAAE,yGAAA,aAAa,OAAA;AA6B9C,oCAA8C;AAArC,qGAAA,YAAY,OAAA;AAAE,8FAAA,KAAK,OAAA;AAE5B,2DAAuD;AAA9C,8GAAA,aAAa,OAAA;AAEtB;;;GAGG;AACH,gEAA6C;AAE7C;;;;;GAKG;AACH,IAAA,2BAAiB,EAAC,IAAA,4BAAgB,GAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA8C;AAC9C,sDAAuD;AAEvD,qDAAiE;AAAxD,6GAAA,mBAAmB,OAAA;AAC5B,oCAUiB;AATf,8FAAA,KAAK,OAAA;AAaP,sCAUkB;AAThB,qGAAA,WAAW,OAAA;AACX,iHAAA,uBAAuB,OAAA;AACvB,yHAAA,+BAA+B,OAAA;AAC/B,+GAAA,qBAAqB,OAAA;AACrB,4GAAA,kBAAkB,OAAA;AAClB,0HAAA,gCAAgC,OAAA;AAChC,uGAAA,aAAa,OAAA;AACb,mGAAA,SAAS,OAAA;AACT,qGAAA,WAAW,OAAA;AAEb,sCAKkB;AAJhB,oHAAA,0BAA0B,OAAA;AAC1B,gHAAA,sBAAsB,OAAA;AACtB,4GAAA,kBAAkB,OAAA;AAGpB,4CAcqB;AAbnB,kHAAA,qBAAqB,OAAA;AAcvB,wCAOmB;AANjB,qGAAA,UAAU,OAAA;AACV,6GAAA,kBAAkB,OAAA;AAClB,kGAAA,OAAO,OAAA;AACP,kGAAA,OAAO,OAAA;AAIT,gDAA4D;AAAnD,oGAAA,SAAS,OAAA;AAAE,iGAAA,MAAM,OAAA;AAAE,+FAAA,IAAI,OAAA;AAChC,oCAUiB;AATf,6GAAA,oBAAoB,OAAA;AACpB,2GAAA,kBAAkB,OAAA;AAClB,6GAAA,oBAAoB,OAAA;AAEpB,6GAAA,oBAAoB,OAAA;AACpB,yGAAA,gBAAgB,OAAA;AAChB,4GAAA,mBAAmB,OAAA;AACnB,wGAAA,eAAe,OAAA;AACf,8GAAA,qBAAqB,OAAA;AAEvB,4CAAyC;AAAhC,uGAAA,UAAU,OAAA;AACnB,sCAAqC;AAA5B,mGAAA,SAAS,OAAA;AAClB,kDAA8C;AAArC,sGAAA,SAAS,OAAA;AAClB,gCAUe;AATb,qGAAA,cAAc,OAAA;AACd,iHAAA,0BAA0B,OAAA;AAC1B,wGAAA,iBAAiB,OAAA;AAEjB,qGAAA,cAAc,OAAA;AACd,8GAAA,uBAAuB,OAAA;AACvB,mGAAA,YAAY,OAAA;AAId,wCAKmB;AADjB,oHAAA,yBAAyB,OAAA;AAa3B,kDAMwB;AALtB,sIAAA,sCAAsC,OAAA;AACtC,6HAAA,6BAA6B,OAAA;AAC7B,+GAAA,eAAe,OAAA;AACf,uHAAA,uBAAuB,OAAA;AACvB,6GAAA,aAAa,OAAA;AAEf,4CAAsD;AAA7C,oHAAA,uBAAuB,OAAA;AAChC,sCAAwD;AAA/C,mGAAA,SAAS,OAAA;AAAE,2GAAA,iBAAiB,OAAA;AACrC,gCAOe;AAJb,0FAAA,GAAG,OAAA;AAEH,6FAAA,MAAM,OAAA;AAQR,8CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,0CAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,kCAgBgB;AAbd,oGAAA,YAAY,OAAA;AAEZ,iGAAA,SAAS,OAAA;AAET,sGAAA,cAAc,OAAA;AAEd,qGAAA,aAAa,OAAA;AAIb,4FAAA,IAAI,OAAA;AAWN,qDAA0B;AAC1B,kDAA2E;AAAlE,kHAAA,sBAAsB,OAAA;AAAE,yGAAA,aAAa,OAAA;AA6B9C,oCAA8C;AAArC,qGAAA,YAAY,OAAA;AAAE,8FAAA,KAAK,OAAA;AAQ5B,+CAA2E;AAAlE,kIAAA,uCAAuC,OAAA;AAChD,2DAAuD;AAA9C,8GAAA,aAAa,OAAA;AAEtB;;;GAGG;AACH,gEAA6C;AAE7C;;;;;GAKG;AACH,IAAA,2BAAiB,EAAC,IAAA,4BAAgB,GAAE,CAAC,CAAC"}
package/dist/index.mjs CHANGED
@@ -23,6 +23,7 @@ export { computerTool, shellTool, applyPatchTool, hostedMcpTool, tool, } from ".
23
23
  export * from "./tracing/index.mjs";
24
24
  export { getGlobalTraceProvider, TraceProvider } from "./tracing/provider.mjs";
25
25
  export { RequestUsage, Usage } from "./usage.mjs";
26
+ export { isOpenAIResponsesCompactionAwareSession } from "./memory/session.mjs";
26
27
  export { MemorySession } from "./memory/memorySession.mjs";
27
28
  export * as protocol from "./types/protocol.mjs";
28
29
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"OAAO,EAAE,iBAAiB,EAAE;OACrB,EAAE,gBAAgB,EAAE;OAEpB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B;OACzD,EACL,KAAK,GASN;OAIM,EACL,WAAW,EACX,uBAAuB,EACvB,+BAA+B,EAC/B,qBAAqB,EACrB,kBAAkB,EAClB,gCAAgC,EAChC,aAAa,EACb,SAAS,EACT,WAAW,GACZ;OACM,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,kBAAkB,GAEnB;OACM,EACL,qBAAqB,GAatB;OACM,EACL,UAAU,EACV,kBAAkB,EAClB,OAAO,EACP,OAAO,GAGR;OACM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE;OAC3B,EACL,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EAEpB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,GACtB;OACM,EAAE,UAAU,EAAE;OACd,EAAE,SAAS,EAAE;OACb,EAAE,SAAS,EAAE;OACb,EACL,cAAc,EACd,0BAA0B,EAC1B,iBAAiB,EAEjB,cAAc,EACd,uBAAuB,EACvB,YAAY,GAGb;OACM,EAIL,yBAAyB,GAC1B;OAYM,EACL,sCAAsC,EACtC,6BAA6B,EAC7B,eAAe,EACf,uBAAuB,EACvB,aAAa,GACd;OACM,EAAE,uBAAuB,EAAE;OAC3B,EAAE,SAAS,EAAE,iBAAiB,EAAE;OAChC,EAGL,GAAG,EAEH,MAAM,GAEP;OAMM,EAAE,UAAU,EAAE;OACd,EAAE,QAAQ,EAAE;OACZ,EAGL,YAAY,EAEZ,SAAS,EAET,cAAc,EAEd,aAAa,EAIb,IAAI,GAGL;;OASM,EAAE,sBAAsB,EAAE,aAAa,EAAE;OA6BzC,EAAE,YAAY,EAAE,KAAK,EAAE;OAEvB,EAAE,aAAa,EAAE;OAMjB,KAAK,QAAQ;AAEpB;;;;;GAKG;AACH,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"OAAO,EAAE,iBAAiB,EAAE;OACrB,EAAE,gBAAgB,EAAE;OAEpB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B;OACzD,EACL,KAAK,GASN;OAIM,EACL,WAAW,EACX,uBAAuB,EACvB,+BAA+B,EAC/B,qBAAqB,EACrB,kBAAkB,EAClB,gCAAgC,EAChC,aAAa,EACb,SAAS,EACT,WAAW,GACZ;OACM,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,kBAAkB,GAEnB;OACM,EACL,qBAAqB,GAatB;OACM,EACL,UAAU,EACV,kBAAkB,EAClB,OAAO,EACP,OAAO,GAGR;OACM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE;OAC3B,EACL,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EAEpB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,GACtB;OACM,EAAE,UAAU,EAAE;OACd,EAAE,SAAS,EAAE;OACb,EAAE,SAAS,EAAE;OACb,EACL,cAAc,EACd,0BAA0B,EAC1B,iBAAiB,EAEjB,cAAc,EACd,uBAAuB,EACvB,YAAY,GAGb;OACM,EAIL,yBAAyB,GAC1B;OAYM,EACL,sCAAsC,EACtC,6BAA6B,EAC7B,eAAe,EACf,uBAAuB,EACvB,aAAa,GACd;OACM,EAAE,uBAAuB,EAAE;OAC3B,EAAE,SAAS,EAAE,iBAAiB,EAAE;OAChC,EAGL,GAAG,EAEH,MAAM,GAEP;OAMM,EAAE,UAAU,EAAE;OACd,EAAE,QAAQ,EAAE;OACZ,EAGL,YAAY,EAEZ,SAAS,EAET,cAAc,EAEd,aAAa,EAIb,IAAI,GAGL;;OASM,EAAE,sBAAsB,EAAE,aAAa,EAAE;OA6BzC,EAAE,YAAY,EAAE,KAAK,EAAE;OAQvB,EAAE,uCAAuC,EAAE;OAC3C,EAAE,aAAa,EAAE;OAMjB,KAAK,QAAQ;AAEpB;;;;;GAKG;AACH,iBAAiB,CAAC,gBAAgB,EAAE,CAAC,CAAC"}
package/dist/items.d.ts CHANGED
@@ -274,6 +274,12 @@ export declare class RunItemBase {
274
274
  text: string;
275
275
  providerData?: Record<string, any> | undefined;
276
276
  }[] | undefined;
277
+ } | {
278
+ type: "compaction";
279
+ encrypted_content: string;
280
+ providerData?: Record<string, any> | undefined;
281
+ id?: string | undefined;
282
+ created_by?: string | undefined;
277
283
  } | {
278
284
  type: "unknown";
279
285
  providerData?: Record<string, any> | undefined;
@@ -560,6 +566,12 @@ export declare class RunMessageOutputItem extends RunItemBase {
560
566
  text: string;
561
567
  providerData?: Record<string, any> | undefined;
562
568
  }[] | undefined;
569
+ } | {
570
+ type: "compaction";
571
+ encrypted_content: string;
572
+ providerData?: Record<string, any> | undefined;
573
+ id?: string | undefined;
574
+ created_by?: string | undefined;
563
575
  } | {
564
576
  type: "unknown";
565
577
  providerData?: Record<string, any> | undefined;
@@ -847,6 +859,12 @@ export declare class RunToolCallItem extends RunItemBase {
847
859
  text: string;
848
860
  providerData?: Record<string, any> | undefined;
849
861
  }[] | undefined;
862
+ } | {
863
+ type: "compaction";
864
+ encrypted_content: string;
865
+ providerData?: Record<string, any> | undefined;
866
+ id?: string | undefined;
867
+ created_by?: string | undefined;
850
868
  } | {
851
869
  type: "unknown";
852
870
  providerData?: Record<string, any> | undefined;
@@ -1135,6 +1153,12 @@ export declare class RunToolCallOutputItem extends RunItemBase {
1135
1153
  text: string;
1136
1154
  providerData?: Record<string, any> | undefined;
1137
1155
  }[] | undefined;
1156
+ } | {
1157
+ type: "compaction";
1158
+ encrypted_content: string;
1159
+ providerData?: Record<string, any> | undefined;
1160
+ id?: string | undefined;
1161
+ created_by?: string | undefined;
1138
1162
  } | {
1139
1163
  type: "unknown";
1140
1164
  providerData?: Record<string, any> | undefined;
@@ -1421,6 +1445,12 @@ export declare class RunReasoningItem extends RunItemBase {
1421
1445
  text: string;
1422
1446
  providerData?: Record<string, any> | undefined;
1423
1447
  }[] | undefined;
1448
+ } | {
1449
+ type: "compaction";
1450
+ encrypted_content: string;
1451
+ providerData?: Record<string, any> | undefined;
1452
+ id?: string | undefined;
1453
+ created_by?: string | undefined;
1424
1454
  } | {
1425
1455
  type: "unknown";
1426
1456
  providerData?: Record<string, any> | undefined;
@@ -1707,6 +1737,12 @@ export declare class RunHandoffCallItem extends RunItemBase {
1707
1737
  text: string;
1708
1738
  providerData?: Record<string, any> | undefined;
1709
1739
  }[] | undefined;
1740
+ } | {
1741
+ type: "compaction";
1742
+ encrypted_content: string;
1743
+ providerData?: Record<string, any> | undefined;
1744
+ id?: string | undefined;
1745
+ created_by?: string | undefined;
1710
1746
  } | {
1711
1747
  type: "unknown";
1712
1748
  providerData?: Record<string, any> | undefined;
@@ -1997,6 +2033,12 @@ export declare class RunHandoffOutputItem extends RunItemBase {
1997
2033
  text: string;
1998
2034
  providerData?: Record<string, any> | undefined;
1999
2035
  }[] | undefined;
2036
+ } | {
2037
+ type: "compaction";
2038
+ encrypted_content: string;
2039
+ providerData?: Record<string, any> | undefined;
2040
+ id?: string | undefined;
2041
+ created_by?: string | undefined;
2000
2042
  } | {
2001
2043
  type: "unknown";
2002
2044
  providerData?: Record<string, any> | undefined;
@@ -2301,6 +2343,12 @@ export declare class RunToolApprovalItem extends RunItemBase {
2301
2343
  text: string;
2302
2344
  providerData?: Record<string, any> | undefined;
2303
2345
  }[] | undefined;
2346
+ } | {
2347
+ type: "compaction";
2348
+ encrypted_content: string;
2349
+ providerData?: Record<string, any> | undefined;
2350
+ id?: string | undefined;
2351
+ created_by?: string | undefined;
2304
2352
  } | {
2305
2353
  type: "unknown";
2306
2354
  providerData?: Record<string, any> | undefined;
@@ -1,4 +1,5 @@
1
1
  import type { AgentInputItem } from '../types';
2
+ import type { RequestUsage } from '../usage';
2
3
  /**
3
4
  * A function that combines session history with new input items before the model call.
4
5
  */
@@ -34,3 +35,34 @@ export interface Session {
34
35
  */
35
36
  clearSession(): Promise<void>;
36
37
  }
38
+ /**
39
+ * Session subtype that can run compaction logic after a completed turn is persisted.
40
+ */
41
+ export type OpenAIResponsesCompactionArgs = {
42
+ /**
43
+ * The `response.id` from a completed OpenAI Responses API turn, if available.
44
+ *
45
+ * When omitted, implementations may fall back to a cached value or throw.
46
+ */
47
+ responseId?: string | undefined;
48
+ /**
49
+ * When true, compaction should run regardless of any internal thresholds or hooks.
50
+ */
51
+ force?: boolean;
52
+ };
53
+ export type OpenAIResponsesCompactionResult = {
54
+ usage: RequestUsage;
55
+ };
56
+ export interface OpenAIResponsesCompactionAwareSession extends Session {
57
+ /**
58
+ * Invoked by the runner after it persists a completed turn into the session.
59
+ *
60
+ * Implementations may decide to call `responses.compact` (or an equivalent API) and replace the
61
+ * stored history.
62
+ *
63
+ * This hook is best-effort. Implementations should consider handling transient failures and
64
+ * deciding whether to retry or skip compaction for the current turn.
65
+ */
66
+ runCompaction(args?: OpenAIResponsesCompactionArgs): Promise<OpenAIResponsesCompactionResult | null> | OpenAIResponsesCompactionResult | null;
67
+ }
68
+ export declare function isOpenAIResponsesCompactionAwareSession(session: Session | undefined): session is OpenAIResponsesCompactionAwareSession;
@@ -1,3 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isOpenAIResponsesCompactionAwareSession = isOpenAIResponsesCompactionAwareSession;
4
+ function isOpenAIResponsesCompactionAwareSession(session) {
5
+ return (!!session &&
6
+ typeof session.runCompaction ===
7
+ 'function');
8
+ }
3
9
  //# sourceMappingURL=session.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/memory/session.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/memory/session.ts"],"names":[],"mappings":";;AAqFA,0FAQC;AARD,SAAgB,uCAAuC,CACrD,OAA4B;IAE5B,OAAO,CACL,CAAC,CAAC,OAAO;QACT,OAAQ,OAAiD,CAAC,aAAa;YACrE,UAAU,CACb,CAAC;AACJ,CAAC"}
@@ -1,2 +1,6 @@
1
- export {};
1
+ export function isOpenAIResponsesCompactionAwareSession(session) {
2
+ return (!!session &&
3
+ typeof session.runCompaction ===
4
+ 'function');
5
+ }
2
6
  //# sourceMappingURL=session.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.mjs","sourceRoot":"","sources":["../../src/memory/session.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"session.mjs","sourceRoot":"","sources":["../../src/memory/session.ts"],"names":[],"mappings":"AAqFA,MAAM,UAAU,uCAAuC,CACrD,OAA4B;IAE5B,OAAO,CACL,CAAC,CAAC,OAAO;QACT,OAAQ,OAAiD,CAAC,aAAa;YACrE,UAAU,CACb,CAAC;AACJ,CAAC"}
package/dist/metadata.js CHANGED
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.METADATA = void 0;
5
5
  exports.METADATA = {
6
6
  "name": "@openai/agents-core",
7
- "version": "0.3.5",
7
+ "version": "0.3.7",
8
8
  "versions": {
9
- "@openai/agents-core": "0.3.5",
9
+ "@openai/agents-core": "0.3.7",
10
10
  "openai": "^6"
11
11
  }
12
12
  };
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.3.5",
4
+ "version": "0.3.7",
5
5
  "versions": {
6
- "@openai/agents-core": "0.3.5",
6
+ "@openai/agents-core": "0.3.7",
7
7
  "openai": "^6"
8
8
  }
9
9
  };
package/dist/model.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { Usage } from './usage';
2
2
  import { StreamEvent } from './types/protocol';
3
3
  import { HostedTool, ComputerTool, FunctionTool, ShellTool, ApplyPatchTool } from './tool';
4
+ import { Computer } from './computer';
4
5
  import { Handoff } from './handoff';
5
6
  import { AgentInputItem, AgentOutputItem, JsonSchemaDefinition, TextOutput, InputText, InputImage, InputFile } from './types';
6
7
  export type ModelSettingsToolChoice = 'auto' | 'required' | 'none' | (string & {});
@@ -129,8 +130,8 @@ export type SerializedFunctionTool = {
129
130
  export type SerializedComputerTool = {
130
131
  type: ComputerTool['type'];
131
132
  name: ComputerTool['name'];
132
- environment: ComputerTool['computer']['environment'];
133
- dimensions: ComputerTool['computer']['dimensions'];
133
+ environment: Computer['environment'];
134
+ dimensions: Computer['dimensions'];
134
135
  };
135
136
  export type SerializedShellTool = {
136
137
  type: ShellTool['type'];
package/dist/run.js CHANGED
@@ -18,6 +18,7 @@ const logger_1 = __importDefault(require("./logger.js"));
18
18
  const serialize_1 = require("./utils/serialize.js");
19
19
  const errors_1 = require("./errors.js");
20
20
  const runImplementation_1 = require("./runImplementation.js");
21
+ const tool_1 = require("./tool.js");
21
22
  const context_1 = require("./tracing/context.js");
22
23
  const tracing_1 = require("./tracing/index.js");
23
24
  const usage_1 = require("./usage.js");
@@ -514,6 +515,14 @@ class Runner extends lifecycle_1.RunHooks {
514
515
  throw err;
515
516
  }
516
517
  finally {
518
+ if (state._currentStep?.type !== 'next_step_interruption') {
519
+ try {
520
+ await (0, tool_1.disposeResolvedComputers)({ runContext: state._context });
521
+ }
522
+ catch (error) {
523
+ logger_1.default.warn(`Failed to dispose computers after run: ${error}`);
524
+ }
525
+ }
517
526
  if (state._currentAgentSpan) {
518
527
  if (state._currentStep?.type !== 'next_step_interruption') {
519
528
  // don't end the span if the run was interrupted
@@ -759,6 +768,14 @@ class Runner extends lifecycle_1.RunHooks {
759
768
  throw error;
760
769
  }
761
770
  finally {
771
+ if (result.state._currentStep?.type !== 'next_step_interruption') {
772
+ try {
773
+ await (0, tool_1.disposeResolvedComputers)({ runContext: result.state._context });
774
+ }
775
+ catch (error) {
776
+ logger_1.default.warn(`Failed to dispose computers after run: ${error}`);
777
+ }
778
+ }
762
779
  if (result.state._currentAgentSpan) {
763
780
  if (result.state._currentStep?.type !== 'next_step_interruption') {
764
781
  result.state._currentAgentSpan.end();
@@ -1257,6 +1274,12 @@ function adjustModelSettingsForNonGPT5RunnerModel(explictlyModelSet, agentModelS
1257
1274
  async function prepareAgentArtifacts(state) {
1258
1275
  const handoffs = await state._currentAgent.getEnabledHandoffs(state._context);
1259
1276
  const tools = await state._currentAgent.getAllTools(state._context);
1277
+ const computerTools = tools.filter((tool) => tool.type === 'computer');
1278
+ if (computerTools.length > 0) {
1279
+ await Promise.all(computerTools.map(async (tool) => {
1280
+ await (0, tool_1.resolveComputer)({ tool, runContext: state._context });
1281
+ }));
1282
+ }
1260
1283
  if (!state._currentAgentSpan) {
1261
1284
  const handoffNames = handoffs.map((h) => h.agentName);
1262
1285
  state._currentAgentSpan = (0, tracing_1.createAgentSpan)({
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
@@ -8,6 +8,7 @@ import logger from "./logger.mjs";
8
8
  import { serializeTool, serializeHandoff } from "./utils/serialize.mjs";
9
9
  import { GuardrailExecutionError, InputGuardrailTripwireTriggered, MaxTurnsExceededError, ModelBehaviorError, OutputGuardrailTripwireTriggered, UserError, } from "./errors.mjs";
10
10
  import { addStepToRunResult, resolveInterruptedTurn, resolveTurnAfterModelResponse, maybeResetToolChoice, processModelResponse, streamStepItemsToRunResult, saveStreamInputToSession, saveStreamResultToSession, saveToSession, prepareInputItemsWithSession, } from "./runImplementation.mjs";
11
+ import { resolveComputer, disposeResolvedComputers, } from "./tool.mjs";
11
12
  import { getOrCreateTrace, addErrorToCurrentSpan, resetCurrentSpan, setCurrentSpan, withNewSpanContext, withTrace, } from "./tracing/context.mjs";
12
13
  import { createAgentSpan, withGuardrailSpan } from "./tracing/index.mjs";
13
14
  import { Usage } from "./usage.mjs";
@@ -504,6 +505,14 @@ export class Runner extends RunHooks {
504
505
  throw err;
505
506
  }
506
507
  finally {
508
+ if (state._currentStep?.type !== 'next_step_interruption') {
509
+ try {
510
+ await disposeResolvedComputers({ runContext: state._context });
511
+ }
512
+ catch (error) {
513
+ logger.warn(`Failed to dispose computers after run: ${error}`);
514
+ }
515
+ }
507
516
  if (state._currentAgentSpan) {
508
517
  if (state._currentStep?.type !== 'next_step_interruption') {
509
518
  // don't end the span if the run was interrupted
@@ -749,6 +758,14 @@ export class Runner extends RunHooks {
749
758
  throw error;
750
759
  }
751
760
  finally {
761
+ if (result.state._currentStep?.type !== 'next_step_interruption') {
762
+ try {
763
+ await disposeResolvedComputers({ runContext: result.state._context });
764
+ }
765
+ catch (error) {
766
+ logger.warn(`Failed to dispose computers after run: ${error}`);
767
+ }
768
+ }
752
769
  if (result.state._currentAgentSpan) {
753
770
  if (result.state._currentStep?.type !== 'next_step_interruption') {
754
771
  result.state._currentAgentSpan.end();
@@ -1246,6 +1263,12 @@ function adjustModelSettingsForNonGPT5RunnerModel(explictlyModelSet, agentModelS
1246
1263
  async function prepareAgentArtifacts(state) {
1247
1264
  const handoffs = await state._currentAgent.getEnabledHandoffs(state._context);
1248
1265
  const tools = await state._currentAgent.getAllTools(state._context);
1266
+ const computerTools = tools.filter((tool) => tool.type === 'computer');
1267
+ if (computerTools.length > 0) {
1268
+ await Promise.all(computerTools.map(async (tool) => {
1269
+ await resolveComputer({ tool, runContext: state._context });
1270
+ }));
1271
+ }
1249
1272
  if (!state._currentAgentSpan) {
1250
1273
  const handoffNames = handoffs.map((h) => h.agentName);
1251
1274
  state._currentAgentSpan = createAgentSpan({