diff --git a/src/agents/openai-ws-connection.ts b/src/agents/openai-ws-connection.ts index 56cc4fb6964..a6e923ae1d5 100644 --- a/src/agents/openai-ws-connection.ts +++ b/src/agents/openai-ws-connection.ts @@ -39,9 +39,11 @@ export interface ResponseObject { } export interface UsageInfo { - input_tokens: number; - output_tokens: number; - total_tokens: number; + input_tokens?: number; + output_tokens?: number; + total_tokens?: number; + prompt_tokens?: number; + completion_tokens?: number; } export type OpenAIResponsesAssistantPhase = "commentary" | "final_answer"; diff --git a/src/agents/openai-ws-message-conversion.ts b/src/agents/openai-ws-message-conversion.ts index 62f22aff26b..1c9e96dca58 100644 --- a/src/agents/openai-ws-message-conversion.ts +++ b/src/agents/openai-ws-message-conversion.ts @@ -548,7 +548,7 @@ export function buildAssistantMessageFromResponse( usage: buildUsageWithNoCost({ input: normalizedUsage?.input ?? 0, output: normalizedUsage?.output ?? 0, - totalTokens: normalizedUsage?.total ?? response.usage?.total_tokens ?? 0, + totalTokens: normalizedUsage?.total ?? 0, }), }); diff --git a/src/agents/openai-ws-stream.test.ts b/src/agents/openai-ws-stream.test.ts index eee7688bcff..d7bfa096293 100644 --- a/src/agents/openai-ws-stream.test.ts +++ b/src/agents/openai-ws-stream.test.ts @@ -862,7 +862,7 @@ describe("buildAssistantMessageFromResponse", () => { it("maps prompt_tokens and completion_tokens usage aliases", () => { const response = makeResponseObject("resp_5b", "Hello"); - (response as unknown as { usage?: Record }).usage = { + response.usage = { prompt_tokens: 44, completion_tokens: 11, total_tokens: 55,