@openrouter/sdk 0.9.11 → 0.11.2
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/FUNCTIONS.md +3 -2
- package/_speakeasy/.github/action-inputs-config.json +4 -0
- package/esm/funcs/analyticsGetUserActivity.js +2 -1
- package/esm/funcs/apiKeysCreate.js +2 -1
- package/esm/funcs/apiKeysDelete.js +2 -1
- package/esm/funcs/apiKeysGet.js +2 -1
- package/esm/funcs/apiKeysGetCurrentKeyMetadata.js +2 -1
- package/esm/funcs/apiKeysList.js +2 -1
- package/esm/funcs/apiKeysUpdate.js +2 -1
- package/esm/funcs/betaResponsesSend.d.ts +4 -4
- package/esm/funcs/betaResponsesSend.js +4 -5
- package/esm/funcs/call-model.d.ts +20 -71
- package/esm/funcs/call-model.js +30 -72
- package/esm/funcs/chatSend.d.ts +4 -4
- package/esm/funcs/chatSend.js +4 -5
- package/esm/funcs/creditsCreateCoinbaseCharge.js +2 -1
- package/esm/funcs/creditsGetCredits.js +2 -1
- package/esm/funcs/embeddingsGenerate.js +2 -1
- package/esm/funcs/embeddingsListModels.js +2 -1
- package/esm/funcs/endpointsList.js +2 -1
- package/esm/funcs/endpointsListZdrEndpoints.js +2 -1
- package/esm/funcs/generationsGetGeneration.js +2 -1
- package/esm/funcs/guardrailsBulkAssignKeys.js +2 -1
- package/esm/funcs/guardrailsBulkAssignMembers.js +2 -1
- package/esm/funcs/guardrailsBulkUnassignKeys.js +2 -1
- package/esm/funcs/guardrailsBulkUnassignMembers.js +2 -1
- package/esm/funcs/guardrailsCreate.js +2 -1
- package/esm/funcs/guardrailsDelete.js +2 -1
- package/esm/funcs/guardrailsGet.js +2 -1
- package/esm/funcs/guardrailsList.js +2 -1
- package/esm/funcs/guardrailsListGuardrailKeyAssignments.js +2 -1
- package/esm/funcs/guardrailsListGuardrailMemberAssignments.js +2 -1
- package/esm/funcs/guardrailsListKeyAssignments.js +2 -1
- package/esm/funcs/guardrailsListMemberAssignments.js +2 -1
- package/esm/funcs/guardrailsUpdate.js +2 -1
- package/esm/funcs/modelsCount.d.ts +1 -1
- package/esm/funcs/modelsCount.js +9 -4
- package/esm/funcs/modelsList.js +3 -1
- package/esm/funcs/modelsListForUser.js +2 -1
- package/esm/funcs/oAuthCreateAuthCode.d.ts +1 -1
- package/esm/funcs/oAuthCreateAuthCode.js +4 -3
- package/esm/funcs/oAuthExchangeAuthCodeForAPIKey.js +2 -1
- package/esm/funcs/providersList.js +2 -1
- package/esm/index.d.ts +5 -23
- package/esm/index.js +5 -25
- package/esm/lib/anthropic-compat.d.ts +3 -2
- package/esm/lib/anthropic-compat.js +10 -11
- package/esm/lib/anthropic-compat.test.js +2 -1
- package/esm/lib/async-params.d.ts +21 -7
- package/esm/lib/async-params.js +5 -1
- package/esm/lib/chat-compat.d.ts +2 -2
- package/esm/lib/chat-compat.js +9 -10
- package/esm/lib/chat-compat.test.js +3 -2
- package/esm/lib/claude-type-guards.d.ts +2 -2
- package/esm/lib/config.d.ts +9 -11
- package/esm/lib/config.js +3 -3
- package/esm/lib/conversation-state.d.ts +4 -4
- package/esm/lib/conversation-state.js +35 -32
- package/esm/lib/encodings.js +20 -5
- package/esm/lib/env.d.ts +6 -2
- package/esm/lib/env.js +7 -3
- package/esm/lib/event-streams.d.ts +11 -4
- package/esm/lib/event-streams.js +44 -22
- package/esm/lib/files.d.ts +13 -0
- package/esm/lib/files.js +18 -0
- package/esm/lib/matchers.js +0 -1
- package/esm/lib/model-result.d.ts +79 -28
- package/esm/lib/model-result.js +386 -167
- package/esm/lib/next-turn-params.d.ts +4 -4
- package/esm/lib/next-turn-params.js +1 -1
- package/esm/lib/sdks.d.ts +1 -1
- package/esm/lib/sdks.js +18 -34
- package/esm/lib/security.d.ts +1 -1
- package/esm/lib/security.js +20 -10
- package/esm/lib/stream-transformers.d.ts +45 -21
- package/esm/lib/stream-transformers.js +33 -38
- package/esm/lib/stream-type-guards.d.ts +15 -15
- package/esm/lib/stream-type-guards.js +8 -32
- package/esm/lib/tool-context.d.ts +68 -0
- package/esm/lib/tool-context.js +175 -0
- package/esm/lib/tool-executor.d.ts +9 -5
- package/esm/lib/tool-executor.js +26 -16
- package/esm/lib/tool-orchestrator.d.ts +4 -4
- package/esm/lib/tool-orchestrator.js +1 -1
- package/esm/lib/tool-types.d.ts +123 -22
- package/esm/lib/tool-types.js +23 -0
- package/esm/lib/tool.d.ts +49 -60
- package/esm/lib/tool.js +15 -19
- package/esm/lib/turn-context.d.ts +3 -3
- package/esm/lib/turn-context.js +1 -1
- package/esm/lib/url.js +4 -2
- package/esm/models/annotationaddedevent.d.ts +20 -0
- package/esm/models/annotationaddedevent.js +30 -0
- package/esm/models/applypatchservertool.d.ts +20 -0
- package/esm/models/applypatchservertool.js +21 -0
- package/esm/models/baseinputsunion.d.ts +185 -0
- package/esm/models/baseinputsunion.js +274 -0
- package/esm/models/basereasoningconfig.d.ts +13 -0
- package/esm/models/basereasoningconfig.js +17 -0
- package/esm/models/chatassistantimages.d.ts +33 -0
- package/esm/models/chatassistantimages.js +44 -0
- package/esm/models/chatassistantmessage.d.ts +86 -0
- package/esm/models/chatassistantmessage.js +70 -0
- package/esm/models/chataudiooutput.d.ts +38 -0
- package/esm/models/chataudiooutput.js +36 -0
- package/esm/models/chatchoice.d.ts +27 -0
- package/esm/models/chatchoice.js +25 -0
- package/esm/models/chatcontentaudio.d.ts +52 -0
- package/esm/models/chatcontentaudio.js +55 -0
- package/esm/models/chatcontentcachecontrol.d.ts +40 -0
- package/esm/models/chatcontentcachecontrol.js +39 -0
- package/esm/models/chatcontentfile.d.ts +57 -0
- package/esm/models/chatcontentfile.js +59 -0
- package/esm/models/chatcontentimage.d.ts +68 -0
- package/esm/models/chatcontentimage.js +68 -0
- package/esm/models/chatcontentitems.d.ts +31 -0
- package/esm/models/chatcontentitems.js +57 -0
- package/esm/models/chatcontenttext.d.ts +37 -0
- package/esm/models/chatcontenttext.js +42 -0
- package/esm/models/chatcontentvideo.d.ts +26 -0
- package/esm/models/chatcontentvideo.js +33 -0
- package/esm/models/chatcontentvideoinput.d.ts +23 -0
- package/esm/models/chatcontentvideoinput.js +21 -0
- package/esm/models/{debugoptions.d.ts → chatdebugoptions.d.ts} +5 -5
- package/esm/models/{debugoptions.js → chatdebugoptions.js} +5 -5
- package/esm/models/chatdevelopermessage.d.ts +35 -0
- package/esm/models/chatdevelopermessage.js +21 -0
- package/esm/models/chatfinishreasonenum.d.ts +13 -0
- package/esm/models/{chatcompletionfinishreason.js → chatfinishreasonenum.js} +4 -4
- package/esm/models/chatformatgrammarconfig.d.ts +20 -0
- package/esm/models/chatformatgrammarconfig.js +14 -0
- package/esm/models/chatformatjsonschemaconfig.d.ts +21 -0
- package/esm/models/chatformatjsonschemaconfig.js +20 -0
- package/esm/models/chatformatpythonconfig.d.ts +15 -0
- package/esm/models/chatformatpythonconfig.js +13 -0
- package/esm/models/chatformattextconfig.d.ts +15 -0
- package/esm/models/chatformattextconfig.js +13 -0
- package/esm/models/chatfunctiontool.d.ts +77 -0
- package/esm/models/chatfunctiontool.js +49 -0
- package/esm/models/{jsonschemaconfig.d.ts → chatjsonschemaconfig.d.ts} +5 -5
- package/esm/models/{jsonschemaconfig.js → chatjsonschemaconfig.js} +5 -5
- package/esm/models/chatmessages.d.ts +20 -0
- package/esm/models/chatmessages.js +22 -0
- package/esm/models/chatnamedtoolchoice.d.ts +37 -0
- package/esm/models/chatnamedtoolchoice.js +26 -0
- package/esm/models/chatreasoningsummaryverbosityenum.d.ts +11 -0
- package/esm/models/chatreasoningsummaryverbosityenum.js +13 -0
- package/esm/models/{chatgenerationparams.d.ts → chatrequest.d.ts} +213 -120
- package/esm/models/chatrequest.js +426 -0
- package/esm/models/chatresult.d.ts +50 -0
- package/esm/models/chatresult.js +35 -0
- package/esm/models/chatstreamchoice.d.ts +27 -0
- package/esm/models/chatstreamchoice.js +24 -0
- package/esm/models/{chatstreamingresponsechunk.d.ts → chatstreamchunk.d.ts} +17 -13
- package/esm/models/chatstreamchunk.js +43 -0
- package/esm/models/{chatstreamingmessagechunk.d.ts → chatstreamdelta.d.ts} +12 -10
- package/esm/models/chatstreamdelta.js +37 -0
- package/esm/models/chatstreamtoolcall.d.ts +57 -0
- package/esm/models/chatstreamtoolcall.js +33 -0
- package/esm/models/chatsystemmessage.d.ts +35 -0
- package/esm/models/chatsystemmessage.js +21 -0
- package/esm/models/chattokenlogprob.d.ts +36 -0
- package/esm/models/chattokenlogprob.js +31 -0
- package/esm/models/chattokenlogprobs.d.ts +21 -0
- package/esm/models/chattokenlogprobs.js +16 -0
- package/esm/models/chattoolcall.d.ts +57 -0
- package/esm/models/chattoolcall.js +49 -0
- package/esm/models/chattoolchoice.d.ts +31 -0
- package/esm/models/chattoolchoice.js +32 -0
- package/esm/models/chattoolmessage.d.ts +35 -0
- package/esm/models/chattoolmessage.js +26 -0
- package/esm/models/{chatgenerationtokenusage.d.ts → chatusage.d.ts} +4 -4
- package/esm/models/{chatgenerationtokenusage.js → chatusage.js} +5 -5
- package/esm/models/chatusermessage.d.ts +35 -0
- package/esm/models/chatusermessage.js +21 -0
- package/esm/models/chatwebsearchservertool.d.ts +124 -0
- package/esm/models/chatwebsearchservertool.js +84 -0
- package/esm/models/chatwebsearchshorthand.d.ts +219 -0
- package/esm/models/chatwebsearchshorthand.js +141 -0
- package/esm/models/codeinterpreterservertool.d.ts +68 -0
- package/esm/models/codeinterpreterservertool.js +85 -0
- package/esm/models/codexlocalshelltool.d.ts +20 -0
- package/esm/models/codexlocalshelltool.js +21 -0
- package/esm/models/compoundfilter.d.ts +36 -0
- package/esm/models/compoundfilter.js +32 -0
- package/esm/models/computeruseservertool.d.ts +39 -0
- package/esm/models/computeruseservertool.js +50 -0
- package/esm/models/conflictresponseerrordata.d.ts +17 -0
- package/esm/models/conflictresponseerrordata.js +16 -0
- package/esm/models/contentpartaddedevent.d.ts +29 -0
- package/esm/models/contentpartaddedevent.js +43 -0
- package/esm/models/contentpartdoneevent.d.ts +29 -0
- package/esm/models/contentpartdoneevent.js +43 -0
- package/esm/models/contextcompressionengine.d.ts +15 -0
- package/esm/models/contextcompressionengine.js +14 -0
- package/esm/models/customtool.d.ts +75 -0
- package/esm/models/customtool.js +96 -0
- package/esm/models/datetimeservertool.d.ts +37 -0
- package/esm/models/datetimeservertool.js +27 -0
- package/esm/models/defaultparameters.d.ts +3 -0
- package/esm/models/defaultparameters.js +6 -0
- package/esm/models/easyinputmessage.d.ts +120 -0
- package/esm/models/easyinputmessage.js +141 -0
- package/esm/models/{openresponseserrorevent.d.ts → errorevent.d.ts} +4 -4
- package/esm/models/{openresponseserrorevent.js → errorevent.js} +6 -5
- package/esm/models/errors/conflictresponseerror.d.ts +33 -0
- package/esm/models/errors/conflictresponseerror.js +42 -0
- package/esm/models/errors/index.d.ts +1 -0
- package/esm/models/errors/index.js +1 -0
- package/esm/models/filesearchservertool.d.ts +111 -0
- package/esm/models/filesearchservertool.js +180 -0
- package/esm/models/formatjsonobjectconfig.d.ts +20 -0
- package/esm/models/formatjsonobjectconfig.js +21 -0
- package/esm/models/formatjsonschemaconfig.d.ts +32 -0
- package/esm/models/formatjsonschemaconfig.js +29 -0
- package/esm/models/formats.d.ts +19 -0
- package/esm/models/formats.js +29 -0
- package/esm/models/formattextconfig.d.ts +20 -0
- package/esm/models/formattextconfig.js +21 -0
- package/esm/models/functioncallargsdeltaevent.d.ts +17 -0
- package/esm/models/functioncallargsdeltaevent.js +25 -0
- package/esm/models/functioncallargsdoneevent.d.ts +18 -0
- package/esm/models/functioncallargsdoneevent.js +26 -0
- package/esm/models/functioncallitem.d.ts +33 -0
- package/esm/models/functioncallitem.js +29 -0
- package/esm/models/functioncalloutputitem.d.ts +70 -0
- package/esm/models/functioncalloutputitem.js +79 -0
- package/esm/models/imagegencallcompletedevent.d.ts +16 -0
- package/esm/models/{openresponsesimagegencallcompleted.js → imagegencallcompletedevent.js} +5 -5
- package/esm/models/imagegencallgeneratingevent.d.ts +16 -0
- package/esm/models/{openresponsesimagegencallgenerating.js → imagegencallgeneratingevent.js} +5 -5
- package/esm/models/imagegencallinprogressevent.d.ts +16 -0
- package/esm/models/{openresponsesimagegencallinprogress.js → imagegencallinprogressevent.js} +5 -5
- package/esm/models/{openresponsesimagegencallpartialimage.d.ts → imagegencallpartialimageevent.d.ts} +4 -4
- package/esm/models/{openresponsesimagegencallpartialimage.js → imagegencallpartialimageevent.js} +5 -5
- package/esm/models/imagegenerationservertool.d.ts +125 -0
- package/esm/models/imagegenerationservertool.js +153 -0
- package/esm/models/{openairesponsesincompletedetails.d.ts → incompletedetails.d.ts} +4 -4
- package/esm/models/{openairesponsesincompletedetails.js → incompletedetails.js} +5 -5
- package/esm/models/index.d.ts +126 -95
- package/esm/models/index.js +126 -95
- package/esm/models/inputaudio.d.ts +47 -0
- package/esm/models/inputaudio.js +58 -0
- package/esm/models/{responseinputfile.d.ts → inputfile.d.ts} +7 -7
- package/esm/models/{responseinputfile.js → inputfile.js} +8 -8
- package/esm/models/inputimage.d.ts +43 -0
- package/esm/models/inputimage.js +52 -0
- package/esm/models/inputmessageitem.d.ts +84 -0
- package/esm/models/inputmessageitem.js +92 -0
- package/esm/models/inputsunion.d.ts +208 -0
- package/esm/models/inputsunion.js +228 -0
- package/esm/models/inputtext.d.ts +22 -0
- package/esm/models/inputtext.js +23 -0
- package/esm/models/inputvideo.d.ts +20 -0
- package/esm/models/{responseinputvideo.js → inputvideo.js} +5 -5
- package/esm/models/legacychatcontentvideo.d.ts +28 -0
- package/esm/models/legacychatcontentvideo.js +33 -0
- package/esm/models/legacywebsearchservertool.d.ts +78 -0
- package/esm/models/legacywebsearchservertool.js +87 -0
- package/esm/models/mcpservertool.d.ts +128 -0
- package/esm/models/mcpservertool.js +174 -0
- package/esm/models/model.d.ts +4 -0
- package/esm/models/model.js +2 -0
- package/esm/models/openairesponsestruncation.d.ts +1 -1
- package/esm/models/openairesponsestruncation.js +1 -1
- package/esm/models/openresponsesresult.d.ts +110 -0
- package/esm/models/openresponsesresult.js +142 -0
- package/esm/models/operations/bulkassignkeystoguardrail.d.ts +16 -3
- package/esm/models/operations/bulkassignkeystoguardrail.js +2 -2
- package/esm/models/operations/bulkassignmemberstoguardrail.d.ts +16 -3
- package/esm/models/operations/bulkassignmemberstoguardrail.js +2 -2
- package/esm/models/operations/bulkunassignkeysfromguardrail.d.ts +16 -3
- package/esm/models/operations/bulkunassignkeysfromguardrail.js +2 -2
- package/esm/models/operations/bulkunassignmembersfromguardrail.d.ts +16 -3
- package/esm/models/operations/bulkunassignmembersfromguardrail.js +2 -2
- package/esm/models/operations/createauthkeyscode.d.ts +16 -3
- package/esm/models/operations/createauthkeyscode.js +2 -2
- package/esm/models/operations/createcoinbasecharge.d.ts +16 -3
- package/esm/models/operations/createcoinbasecharge.js +2 -2
- package/esm/models/operations/createembeddings.d.ts +16 -3
- package/esm/models/operations/createembeddings.js +2 -2
- package/esm/models/operations/createguardrail.d.ts +25 -3
- package/esm/models/operations/createguardrail.js +6 -2
- package/esm/models/operations/createkeys.d.ts +20 -3
- package/esm/models/operations/createkeys.js +4 -2
- package/esm/models/operations/createresponses.d.ts +20 -7
- package/esm/models/operations/createresponses.js +8 -7
- package/esm/models/operations/deleteguardrail.d.ts +16 -3
- package/esm/models/operations/deleteguardrail.js +2 -2
- package/esm/models/operations/deletekeys.d.ts +16 -3
- package/esm/models/operations/deletekeys.js +2 -2
- package/esm/models/operations/exchangeauthcodeforapikey.d.ts +16 -3
- package/esm/models/operations/exchangeauthcodeforapikey.js +2 -2
- package/esm/models/operations/getcredits.d.ts +16 -3
- package/esm/models/operations/getcredits.js +2 -2
- package/esm/models/operations/getcurrentkey.d.ts +20 -3
- package/esm/models/operations/getcurrentkey.js +4 -2
- package/esm/models/operations/getgeneration.d.ts +27 -3
- package/esm/models/operations/getgeneration.js +9 -2
- package/esm/models/operations/getguardrail.d.ts +20 -3
- package/esm/models/operations/getguardrail.js +4 -2
- package/esm/models/operations/getkey.d.ts +20 -3
- package/esm/models/operations/getkey.js +4 -2
- package/esm/models/operations/getmodels.d.ts +21 -3
- package/esm/models/operations/getmodels.js +4 -2
- package/esm/models/operations/getuseractivity.d.ts +16 -3
- package/esm/models/operations/getuseractivity.js +2 -2
- package/esm/models/operations/list.d.ts +20 -3
- package/esm/models/operations/list.js +4 -2
- package/esm/models/operations/listembeddingsmodels.d.ts +16 -3
- package/esm/models/operations/listembeddingsmodels.js +2 -2
- package/esm/models/operations/listendpoints.d.ts +16 -3
- package/esm/models/operations/listendpoints.js +2 -2
- package/esm/models/operations/listendpointszdr.d.ts +16 -3
- package/esm/models/operations/listendpointszdr.js +2 -2
- package/esm/models/operations/listguardrailkeyassignments.d.ts +16 -3
- package/esm/models/operations/listguardrailkeyassignments.js +2 -2
- package/esm/models/operations/listguardrailmemberassignments.d.ts +16 -3
- package/esm/models/operations/listguardrailmemberassignments.js +2 -2
- package/esm/models/operations/listguardrails.d.ts +20 -3
- package/esm/models/operations/listguardrails.js +4 -2
- package/esm/models/operations/listkeyassignments.d.ts +16 -3
- package/esm/models/operations/listkeyassignments.js +2 -2
- package/esm/models/operations/listmemberassignments.d.ts +16 -3
- package/esm/models/operations/listmemberassignments.js +2 -2
- package/esm/models/operations/listmodelscount.d.ts +21 -3
- package/esm/models/operations/listmodelscount.js +4 -2
- package/esm/models/operations/listmodelsuser.d.ts +16 -3
- package/esm/models/operations/listmodelsuser.js +2 -2
- package/esm/models/operations/listproviders.d.ts +539 -3
- package/esm/models/operations/listproviders.js +514 -2
- package/esm/models/operations/sendchatcompletionrequest.d.ts +20 -7
- package/esm/models/operations/sendchatcompletionrequest.js +8 -7
- package/esm/models/operations/updateguardrail.d.ts +25 -3
- package/esm/models/operations/updateguardrail.js +6 -2
- package/esm/models/operations/updatekeys.d.ts +20 -3
- package/esm/models/operations/updatekeys.js +4 -2
- package/esm/models/outputdatetimeitem.d.ts +44 -0
- package/esm/models/outputdatetimeitem.js +30 -0
- package/esm/models/outputfilesearchcallitem.d.ts +33 -0
- package/esm/models/outputfilesearchcallitem.js +35 -0
- package/esm/models/outputfunctioncallitem.d.ts +69 -0
- package/esm/models/outputfunctioncallitem.js +94 -0
- package/esm/models/outputimagegenerationcallitem.d.ts +33 -0
- package/esm/models/outputimagegenerationcallitem.js +35 -0
- package/esm/models/outputitems.d.ts +18 -0
- package/esm/models/outputitems.js +28 -0
- package/esm/models/outputmessage.d.ts +23 -0
- package/esm/models/outputmessage.js +24 -0
- package/esm/models/outputmessageitem.d.ts +81 -0
- package/esm/models/outputmessageitem.js +93 -0
- package/esm/models/outputmodality.d.ts +1 -0
- package/esm/models/outputmodality.js +1 -0
- package/esm/models/outputmodalityenum.d.ts +10 -0
- package/esm/models/outputmodalityenum.js +12 -0
- package/esm/models/outputreasoningitem.d.ts +74 -0
- package/esm/models/outputreasoningitem.js +75 -0
- package/esm/models/outputservertoolitem.d.ts +42 -0
- package/esm/models/outputservertoolitem.js +44 -0
- package/esm/models/outputwebsearchcallitem.d.ts +116 -0
- package/esm/models/outputwebsearchcallitem.js +141 -0
- package/esm/models/pdfparserengine.d.ts +18 -9
- package/esm/models/pdfparserengine.js +17 -6
- package/esm/models/pdfparseroptions.d.ts +3 -3
- package/esm/models/preview20250311websearchservertool.d.ts +75 -0
- package/esm/models/preview20250311websearchservertool.js +89 -0
- package/esm/models/previewwebsearchservertool.d.ts +75 -0
- package/esm/models/previewwebsearchservertool.js +89 -0
- package/esm/models/previewwebsearchuserlocation.d.ts +34 -0
- package/esm/models/previewwebsearchuserlocation.js +36 -0
- package/esm/models/providername.d.ts +2 -0
- package/esm/models/providername.js +2 -0
- package/esm/models/providerpreferences.d.ts +7 -0
- package/esm/models/providerpreferences.js +4 -0
- package/esm/models/providersort.d.ts +1 -0
- package/esm/models/providersort.js +1 -0
- package/esm/models/providersortconfig.d.ts +1 -0
- package/esm/models/providersortconfig.js +1 -0
- package/esm/models/reasoningconfig.d.ts +23 -0
- package/esm/models/reasoningconfig.js +23 -0
- package/esm/models/{openresponsesreasoningdeltaevent.d.ts → reasoningdeltaevent.d.ts} +4 -4
- package/esm/models/{openresponsesreasoningdeltaevent.js → reasoningdeltaevent.js} +5 -5
- package/esm/models/{openresponsesreasoningdoneevent.d.ts → reasoningdoneevent.d.ts} +4 -4
- package/esm/models/{openresponsesreasoningdoneevent.js → reasoningdoneevent.js} +5 -5
- package/esm/models/reasoningeffortenum.d.ts +16 -0
- package/esm/models/reasoningeffortenum.js +18 -0
- package/esm/models/reasoningitem.d.ts +73 -0
- package/esm/models/reasoningitem.js +71 -0
- package/esm/models/{openresponsesreasoningsummarypartaddedevent.d.ts → reasoningsummarypartaddedevent.d.ts} +4 -4
- package/esm/models/{openresponsesreasoningsummarypartaddedevent.js → reasoningsummarypartaddedevent.js} +5 -5
- package/esm/models/reasoningsummarypartdoneevent.d.ts +19 -0
- package/esm/models/reasoningsummarypartdoneevent.js +28 -0
- package/esm/models/reasoningsummarytextdeltaevent.d.ts +18 -0
- package/esm/models/{openresponsesreasoningsummarytextdeltaevent.js → reasoningsummarytextdeltaevent.js} +5 -5
- package/esm/models/reasoningsummarytextdoneevent.d.ts +18 -0
- package/esm/models/{openresponsesreasoningsummarytextdoneevent.js → reasoningsummarytextdoneevent.js} +5 -5
- package/esm/models/reasoningsummaryverbosityenum.d.ts +13 -0
- package/esm/models/reasoningsummaryverbosityenum.js +15 -0
- package/esm/models/refusaldeltaevent.d.ts +18 -0
- package/esm/models/refusaldeltaevent.js +27 -0
- package/esm/models/refusaldoneevent.d.ts +18 -0
- package/esm/models/refusaldoneevent.js +27 -0
- package/esm/models/{openairesponsesincludable.d.ts → responseincludesenum.d.ts} +4 -4
- package/esm/models/{openairesponsesincludable.js → responseincludesenum.js} +4 -4
- package/esm/models/responseoutputtext.d.ts +8 -8
- package/esm/models/responseoutputtext.js +10 -9
- package/esm/models/responsesrequest.d.ts +499 -0
- package/esm/models/responsesrequest.js +347 -0
- package/esm/models/searchcontextsizeenum.d.ts +19 -0
- package/esm/models/searchcontextsizeenum.js +18 -0
- package/esm/models/shellservertool.d.ts +20 -0
- package/esm/models/shellservertool.js +21 -0
- package/esm/models/storedprompttemplate.d.ts +35 -0
- package/esm/models/storedprompttemplate.js +56 -0
- package/esm/models/streamevents.d.ts +136 -0
- package/esm/models/streamevents.js +165 -0
- package/esm/models/textconfig.d.ts +27 -0
- package/esm/models/textconfig.js +25 -0
- package/esm/models/textdeltaevent.d.ts +42 -0
- package/esm/models/textdeltaevent.js +52 -0
- package/esm/models/textdoneevent.d.ts +42 -0
- package/esm/models/textdoneevent.js +53 -0
- package/esm/models/textextendedconfig.d.ts +30 -0
- package/esm/models/textextendedconfig.js +23 -0
- package/esm/models/toolcallstatusenum.d.ts +13 -0
- package/esm/models/toolcallstatusenum.js +15 -0
- package/esm/models/truncationenum.d.ts +10 -0
- package/esm/models/truncationenum.js +12 -0
- package/esm/models/{openresponsesusage.d.ts → usage.d.ts} +4 -4
- package/esm/models/{openresponsesusage.js → usage.js} +5 -5
- package/esm/models/websearchcallcompletedevent.d.ts +16 -0
- package/esm/models/websearchcallcompletedevent.js +24 -0
- package/esm/models/websearchcallinprogressevent.d.ts +16 -0
- package/esm/models/websearchcallinprogressevent.js +24 -0
- package/esm/models/websearchcallsearchingevent.d.ts +16 -0
- package/esm/models/websearchcallsearchingevent.js +24 -0
- package/esm/models/websearchengine.d.ts +2 -0
- package/esm/models/websearchengine.js +2 -0
- package/esm/models/websearchservertool.d.ts +78 -0
- package/esm/models/websearchservertool.js +89 -0
- package/esm/models/websearchservertoolopenrouter.d.ts +35 -0
- package/esm/models/websearchservertoolopenrouter.js +28 -0
- package/esm/models/websearchuserlocation.d.ts +37 -0
- package/esm/models/websearchuserlocation.js +36 -0
- package/esm/sdk/chat.d.ts +4 -4
- package/esm/sdk/responses.d.ts +4 -4
- package/esm/sdk/sdk.d.ts +4 -1
- package/esm/sdk/sdk.js +0 -1
- package/esm/types/index.d.ts +0 -2
- package/esm/types/index.js +0 -1
- package/jsr.json +1 -1
- package/package.json +11 -11
- package/tsconfig.json +3 -1
- package/turbo.json +10 -0
- package/esm/models/assistantmessage.d.ts +0 -80
- package/esm/models/assistantmessage.js +0 -83
- package/esm/models/assistantmessageimages.d.ts +0 -33
- package/esm/models/assistantmessageimages.js +0 -44
- package/esm/models/chatcompletionfinishreason.d.ts +0 -13
- package/esm/models/chatgenerationparams.js +0 -371
- package/esm/models/chatmessagecontentitem.d.ts +0 -30
- package/esm/models/chatmessagecontentitem.js +0 -54
- package/esm/models/chatmessagecontentitemaudio.d.ts +0 -52
- package/esm/models/chatmessagecontentitemaudio.js +0 -55
- package/esm/models/chatmessagecontentitemcachecontrol.d.ts +0 -40
- package/esm/models/chatmessagecontentitemcachecontrol.js +0 -41
- package/esm/models/chatmessagecontentitemimage.d.ts +0 -68
- package/esm/models/chatmessagecontentitemimage.js +0 -68
- package/esm/models/chatmessagecontentitemtext.d.ts +0 -37
- package/esm/models/chatmessagecontentitemtext.js +0 -42
- package/esm/models/chatmessagecontentitemvideo.d.ts +0 -26
- package/esm/models/chatmessagecontentitemvideo.js +0 -33
- package/esm/models/chatmessagecontentitemvideolegacy.d.ts +0 -28
- package/esm/models/chatmessagecontentitemvideolegacy.js +0 -33
- package/esm/models/chatmessagetokenlogprob.d.ts +0 -36
- package/esm/models/chatmessagetokenlogprob.js +0 -31
- package/esm/models/chatmessagetokenlogprobs.d.ts +0 -21
- package/esm/models/chatmessagetokenlogprobs.js +0 -16
- package/esm/models/chatmessagetoolcall.d.ts +0 -57
- package/esm/models/chatmessagetoolcall.js +0 -48
- package/esm/models/chatresponse.d.ts +0 -46
- package/esm/models/chatresponse.js +0 -33
- package/esm/models/chatresponsechoice.d.ts +0 -27
- package/esm/models/chatresponsechoice.js +0 -24
- package/esm/models/chatstreamingchoice.d.ts +0 -27
- package/esm/models/chatstreamingchoice.js +0 -24
- package/esm/models/chatstreamingmessagechunk.js +0 -35
- package/esm/models/chatstreamingmessagetoolcall.d.ts +0 -57
- package/esm/models/chatstreamingmessagetoolcall.js +0 -34
- package/esm/models/chatstreamingresponsechunk.js +0 -41
- package/esm/models/developermessage.d.ts +0 -35
- package/esm/models/developermessage.js +0 -24
- package/esm/models/message.d.ts +0 -20
- package/esm/models/message.js +0 -23
- package/esm/models/namedtoolchoice.d.ts +0 -37
- package/esm/models/namedtoolchoice.js +0 -26
- package/esm/models/openairesponsesinputunion.d.ts +0 -154
- package/esm/models/openairesponsesinputunion.js +0 -222
- package/esm/models/openairesponsesprompt.d.ts +0 -35
- package/esm/models/openairesponsesprompt.js +0 -56
- package/esm/models/openairesponsesreasoningconfig.d.ts +0 -13
- package/esm/models/openairesponsesreasoningconfig.js +0 -17
- package/esm/models/openairesponsesreasoningeffort.d.ts +0 -16
- package/esm/models/openairesponsesreasoningeffort.js +0 -18
- package/esm/models/openairesponsesservicetier.d.ts +0 -13
- package/esm/models/openairesponsesservicetier.js +0 -15
- package/esm/models/openresponseseasyinputmessage.d.ts +0 -94
- package/esm/models/openresponseseasyinputmessage.js +0 -115
- package/esm/models/openresponsesfunctioncalloutput.d.ts +0 -31
- package/esm/models/openresponsesfunctioncalloutput.js +0 -28
- package/esm/models/openresponsesfunctiontoolcall.d.ts +0 -33
- package/esm/models/openresponsesfunctiontoolcall.js +0 -29
- package/esm/models/openresponsesimagegencallcompleted.d.ts +0 -16
- package/esm/models/openresponsesimagegencallgenerating.d.ts +0 -16
- package/esm/models/openresponsesimagegencallinprogress.d.ts +0 -16
- package/esm/models/openresponsesinput.d.ts +0 -28
- package/esm/models/openresponsesinput.js +0 -54
- package/esm/models/openresponsesinputmessageitem.d.ts +0 -84
- package/esm/models/openresponsesinputmessageitem.js +0 -92
- package/esm/models/openresponseslogprobs.d.ts +0 -16
- package/esm/models/openresponseslogprobs.js +0 -22
- package/esm/models/openresponsesnonstreamingresponse.d.ts +0 -102
- package/esm/models/openresponsesnonstreamingresponse.js +0 -117
- package/esm/models/openresponsesreasoning.d.ts +0 -73
- package/esm/models/openresponsesreasoning.js +0 -71
- package/esm/models/openresponsesreasoningconfig.d.ts +0 -23
- package/esm/models/openresponsesreasoningconfig.js +0 -23
- package/esm/models/openresponsesreasoningsummarytextdeltaevent.d.ts +0 -18
- package/esm/models/openresponsesreasoningsummarytextdoneevent.d.ts +0 -18
- package/esm/models/openresponsesrequest.d.ts +0 -451
- package/esm/models/openresponsesrequest.js +0 -300
- package/esm/models/openresponsesresponsetext.d.ts +0 -30
- package/esm/models/openresponsesresponsetext.js +0 -24
- package/esm/models/openresponsesstreamevent.d.ts +0 -287
- package/esm/models/openresponsesstreamevent.js +0 -379
- package/esm/models/openresponsestoplogprobs.d.ts +0 -14
- package/esm/models/openresponsestoplogprobs.js +0 -15
- package/esm/models/openresponseswebsearch20250826tool.d.ts +0 -47
- package/esm/models/openresponseswebsearch20250826tool.js +0 -64
- package/esm/models/openresponseswebsearchpreview20250311tool.d.ts +0 -29
- package/esm/models/openresponseswebsearchpreview20250311tool.js +0 -40
- package/esm/models/openresponseswebsearchpreviewtool.d.ts +0 -29
- package/esm/models/openresponseswebsearchpreviewtool.js +0 -40
- package/esm/models/openresponseswebsearchtool.d.ts +0 -47
- package/esm/models/openresponseswebsearchtool.js +0 -64
- package/esm/models/reasoningsummaryverbosity.d.ts +0 -13
- package/esm/models/reasoningsummaryverbosity.js +0 -15
- package/esm/models/responseformatjsonobject.d.ts +0 -20
- package/esm/models/responseformatjsonobject.js +0 -21
- package/esm/models/responseformatjsonschema.d.ts +0 -21
- package/esm/models/responseformatjsonschema.js +0 -20
- package/esm/models/responseformattext.d.ts +0 -15
- package/esm/models/responseformattext.js +0 -13
- package/esm/models/responseformattextconfig.d.ts +0 -19
- package/esm/models/responseformattextconfig.js +0 -28
- package/esm/models/responseformattextgrammar.d.ts +0 -20
- package/esm/models/responseformattextgrammar.js +0 -14
- package/esm/models/responseformattextpython.d.ts +0 -15
- package/esm/models/responseformattextpython.js +0 -13
- package/esm/models/responseinputaudio.d.ts +0 -47
- package/esm/models/responseinputaudio.js +0 -57
- package/esm/models/responseinputimage.d.ts +0 -43
- package/esm/models/responseinputimage.js +0 -51
- package/esm/models/responseinputtext.d.ts +0 -22
- package/esm/models/responseinputtext.js +0 -23
- package/esm/models/responseinputvideo.d.ts +0 -20
- package/esm/models/responsesformattext.d.ts +0 -20
- package/esm/models/responsesformattext.js +0 -21
- package/esm/models/responsesformattextjsonschemaconfig.d.ts +0 -32
- package/esm/models/responsesformattextjsonschemaconfig.js +0 -29
- package/esm/models/responsesimagegenerationcall.d.ts +0 -33
- package/esm/models/responsesimagegenerationcall.js +0 -35
- package/esm/models/responsesoutputitem.d.ts +0 -29
- package/esm/models/responsesoutputitem.js +0 -25
- package/esm/models/responsesoutputitemfilesearchcall.d.ts +0 -33
- package/esm/models/responsesoutputitemfilesearchcall.js +0 -35
- package/esm/models/responsesoutputitemfunctioncall.d.ts +0 -69
- package/esm/models/responsesoutputitemfunctioncall.js +0 -94
- package/esm/models/responsesoutputitemreasoning.d.ts +0 -103
- package/esm/models/responsesoutputitemreasoning.js +0 -118
- package/esm/models/responsesoutputmessage.d.ts +0 -89
- package/esm/models/responsesoutputmessage.js +0 -114
- package/esm/models/responsesoutputmodality.d.ts +0 -10
- package/esm/models/responsesoutputmodality.js +0 -12
- package/esm/models/responsessearchcontextsize.d.ts +0 -19
- package/esm/models/responsessearchcontextsize.js +0 -18
- package/esm/models/responseswebsearchcalloutput.d.ts +0 -31
- package/esm/models/responseswebsearchcalloutput.js +0 -33
- package/esm/models/responseswebsearchuserlocation.d.ts +0 -37
- package/esm/models/responseswebsearchuserlocation.js +0 -36
- package/esm/models/responsetextconfig.d.ts +0 -27
- package/esm/models/responsetextconfig.js +0 -24
- package/esm/models/systemmessage.d.ts +0 -35
- package/esm/models/systemmessage.js +0 -24
- package/esm/models/toolcallstatus.d.ts +0 -13
- package/esm/models/toolcallstatus.js +0 -15
- package/esm/models/toolchoiceoption.d.ts +0 -31
- package/esm/models/toolchoiceoption.js +0 -32
- package/esm/models/tooldefinitionjson.d.ts +0 -68
- package/esm/models/tooldefinitionjson.js +0 -36
- package/esm/models/toolresponsemessage.d.ts +0 -35
- package/esm/models/toolresponsemessage.js +0 -29
- package/esm/models/usermessage.d.ts +0 -35
- package/esm/models/usermessage.js +0 -24
- package/esm/models/videoinput.d.ts +0 -23
- package/esm/models/videoinput.js +0 -22
- package/esm/models/websearchpreviewtooluserlocation.d.ts +0 -34
- package/esm/models/websearchpreviewtooluserlocation.js +0 -36
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import type { ClaudeMessageParam } from "../models/claude-message.js";
|
|
2
2
|
/**
|
|
3
3
|
* Check if input is in Claude message format
|
|
4
4
|
* Uses structural analysis to detect Claude-specific patterns
|
|
@@ -6,5 +6,5 @@ import type * as models from "../models/index.js";
|
|
|
6
6
|
* @param input - Input to check
|
|
7
7
|
* @returns True if input appears to be Claude format
|
|
8
8
|
*/
|
|
9
|
-
export declare function isClaudeStyleMessages(input: unknown): input is
|
|
9
|
+
export declare function isClaudeStyleMessages(input: unknown): input is ClaudeMessageParam[];
|
|
10
10
|
//# sourceMappingURL=claude-type-guards.d.ts.map
|
package/esm/lib/config.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Hook } from "../hooks/types.js";
|
|
2
1
|
import { HTTPClient } from "./http.js";
|
|
3
2
|
import { Logger } from "./logger.js";
|
|
4
3
|
import { RetryConfig } from "./retries.js";
|
|
@@ -19,9 +18,13 @@ export type SDKOptions = {
|
|
|
19
18
|
*/
|
|
20
19
|
httpReferer?: string | undefined;
|
|
21
20
|
/**
|
|
22
|
-
* Allows setting the
|
|
21
|
+
* Allows setting the appTitle parameter for all supported operations
|
|
23
22
|
*/
|
|
24
|
-
|
|
23
|
+
appTitle?: string | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Allows setting the appCategories parameter for all supported operations
|
|
26
|
+
*/
|
|
27
|
+
appCategories?: string | undefined;
|
|
25
28
|
httpClient?: HTTPClient;
|
|
26
29
|
/**
|
|
27
30
|
* Allows overriding the default server used by the SDK
|
|
@@ -41,18 +44,13 @@ export type SDKOptions = {
|
|
|
41
44
|
retryConfig?: RetryConfig;
|
|
42
45
|
timeoutMs?: number;
|
|
43
46
|
debugLogger?: Logger;
|
|
44
|
-
/**
|
|
45
|
-
* Hooks for request/response lifecycle events.
|
|
46
|
-
* Can be a single hook object or an array of hooks.
|
|
47
|
-
*/
|
|
48
|
-
hooks?: Hook | Hook[];
|
|
49
47
|
};
|
|
50
48
|
export declare function serverURLFromOptions(options: SDKOptions): URL | null;
|
|
51
49
|
export declare const SDK_METADATA: {
|
|
52
50
|
readonly language: "typescript";
|
|
53
51
|
readonly openapiDocVersion: "1.0.0";
|
|
54
|
-
readonly sdkVersion: "0.
|
|
55
|
-
readonly genVersion: "2.
|
|
56
|
-
readonly userAgent: "speakeasy-sdk/typescript 0.
|
|
52
|
+
readonly sdkVersion: "0.11.2";
|
|
53
|
+
readonly genVersion: "2.879.1";
|
|
54
|
+
readonly userAgent: "speakeasy-sdk/typescript 0.11.2 2.879.1 1.0.0 @openrouter/sdk";
|
|
57
55
|
};
|
|
58
56
|
//# sourceMappingURL=config.d.ts.map
|
package/esm/lib/config.js
CHANGED
|
@@ -26,8 +26,8 @@ export function serverURLFromOptions(options) {
|
|
|
26
26
|
export const SDK_METADATA = {
|
|
27
27
|
language: "typescript",
|
|
28
28
|
openapiDocVersion: "1.0.0",
|
|
29
|
-
sdkVersion: "0.
|
|
30
|
-
genVersion: "2.
|
|
31
|
-
userAgent: "speakeasy-sdk/typescript 0.
|
|
29
|
+
sdkVersion: "0.11.2",
|
|
30
|
+
genVersion: "2.879.1",
|
|
31
|
+
userAgent: "speakeasy-sdk/typescript 0.11.2 2.879.1 1.0.0 @openrouter/sdk",
|
|
32
32
|
};
|
|
33
33
|
//# sourceMappingURL=config.js.map
|
|
@@ -18,7 +18,7 @@ export declare function updateState<TTools extends readonly Tool[] = readonly To
|
|
|
18
18
|
/**
|
|
19
19
|
* Append new items to the message history
|
|
20
20
|
*/
|
|
21
|
-
export declare function appendToMessages(current: models.
|
|
21
|
+
export declare function appendToMessages(current: models.InputsUnion, newItems: models.BaseInputsUnion[]): models.InputsUnion;
|
|
22
22
|
/**
|
|
23
23
|
* Check if a tool call requires approval
|
|
24
24
|
* @param toolCall - The tool call to check
|
|
@@ -49,13 +49,13 @@ export declare function createRejectedResult<TTools extends readonly Tool[] = re
|
|
|
49
49
|
/**
|
|
50
50
|
* Convert unsent tool results to API format for sending to the model
|
|
51
51
|
*/
|
|
52
|
-
export declare function unsentResultsToAPIFormat(results: UnsentToolResult[]): models.
|
|
52
|
+
export declare function unsentResultsToAPIFormat(results: UnsentToolResult[]): models.FunctionCallOutputItem[];
|
|
53
53
|
/**
|
|
54
54
|
* Extract text content from a response
|
|
55
55
|
*/
|
|
56
|
-
export declare function extractTextFromResponse(response: models.
|
|
56
|
+
export declare function extractTextFromResponse(response: models.OpenResponsesResult): string;
|
|
57
57
|
/**
|
|
58
58
|
* Extract tool calls from a response
|
|
59
59
|
*/
|
|
60
|
-
export declare function extractToolCallsFromResponse<TTools extends readonly Tool[]>(response: models.
|
|
60
|
+
export declare function extractToolCallsFromResponse<TTools extends readonly Tool[]>(response: models.OpenResponsesResult): ParsedToolCall<TTools[number]>[];
|
|
61
61
|
//# sourceMappingURL=conversation-state.d.ts.map
|
|
@@ -5,10 +5,11 @@ import { normalizeInputToArray } from './turn-context.js';
|
|
|
5
5
|
function isValidUnsentToolResult(obj) {
|
|
6
6
|
if (typeof obj !== 'object' || obj === null)
|
|
7
7
|
return false;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
'
|
|
8
|
+
return ('callId' in obj &&
|
|
9
|
+
typeof obj.callId === 'string' &&
|
|
10
|
+
'name' in obj &&
|
|
11
|
+
typeof obj.name === 'string' &&
|
|
12
|
+
'output' in obj);
|
|
12
13
|
}
|
|
13
14
|
/**
|
|
14
15
|
* Type guard to verify an object is a valid ParsedToolCall
|
|
@@ -16,10 +17,11 @@ function isValidUnsentToolResult(obj) {
|
|
|
16
17
|
function isValidParsedToolCall(obj) {
|
|
17
18
|
if (typeof obj !== 'object' || obj === null)
|
|
18
19
|
return false;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
'
|
|
20
|
+
return ('id' in obj &&
|
|
21
|
+
typeof obj.id === 'string' &&
|
|
22
|
+
'name' in obj &&
|
|
23
|
+
typeof obj.name === 'string' &&
|
|
24
|
+
'arguments' in obj);
|
|
23
25
|
}
|
|
24
26
|
/**
|
|
25
27
|
* Generate a unique ID for a conversation
|
|
@@ -156,9 +158,9 @@ export function extractTextFromResponse(response) {
|
|
|
156
158
|
const outputs = Array.isArray(response.output) ? response.output : [response.output];
|
|
157
159
|
const textParts = [];
|
|
158
160
|
for (const item of outputs) {
|
|
159
|
-
if (item.type === 'message' && item.content) {
|
|
161
|
+
if (item.type === 'message' && 'content' in item && item.content) {
|
|
160
162
|
for (const content of item.content) {
|
|
161
|
-
if (content.type === 'output_text' && content.text) {
|
|
163
|
+
if (content.type === 'output_text' && 'text' in content && content.text) {
|
|
162
164
|
textParts.push(content.text);
|
|
163
165
|
}
|
|
164
166
|
}
|
|
@@ -176,31 +178,32 @@ export function extractToolCallsFromResponse(response) {
|
|
|
176
178
|
const outputs = Array.isArray(response.output) ? response.output : [response.output];
|
|
177
179
|
const toolCalls = [];
|
|
178
180
|
for (const item of outputs) {
|
|
179
|
-
if (item.type
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
// Log warning and skip malformed tool call, similar to stream-transformers.ts
|
|
187
|
-
console.warn(`Failed to parse arguments for tool call "${item.name}": ${error instanceof Error ? error.message : String(error)}`);
|
|
188
|
-
continue;
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
else {
|
|
192
|
-
parsedArguments = item.arguments;
|
|
181
|
+
if (item.type !== 'function_call' || !('arguments' in item)) {
|
|
182
|
+
continue;
|
|
183
|
+
}
|
|
184
|
+
let parsedArguments;
|
|
185
|
+
if (typeof item.arguments === 'string') {
|
|
186
|
+
try {
|
|
187
|
+
parsedArguments = JSON.parse(item.arguments);
|
|
193
188
|
}
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
name
|
|
197
|
-
|
|
198
|
-
};
|
|
199
|
-
if (!isValidParsedToolCall(toolCall)) {
|
|
200
|
-
throw new Error(`Invalid tool call structure for tool: ${item.name}`);
|
|
189
|
+
catch (error) {
|
|
190
|
+
// Log warning and skip malformed tool call, similar to stream-transformers.ts
|
|
191
|
+
console.warn(`Failed to parse arguments for tool call "${'name' in item ? item.name : 'unknown'}": ${error instanceof Error ? error.message : String(error)}`);
|
|
192
|
+
continue;
|
|
201
193
|
}
|
|
202
|
-
toolCalls.push(toolCall);
|
|
203
194
|
}
|
|
195
|
+
else {
|
|
196
|
+
parsedArguments = item.arguments;
|
|
197
|
+
}
|
|
198
|
+
const toolCall = {
|
|
199
|
+
id: ('callId' in item ? item.callId : undefined) ?? item.id ?? '',
|
|
200
|
+
name: ('name' in item ? item.name : undefined) ?? '',
|
|
201
|
+
arguments: parsedArguments,
|
|
202
|
+
};
|
|
203
|
+
if (!isValidParsedToolCall(toolCall)) {
|
|
204
|
+
throw new Error(`Invalid tool call structure for tool: ${toolCall.name}`);
|
|
205
|
+
}
|
|
206
|
+
toolCalls.push(toolCall);
|
|
204
207
|
}
|
|
205
208
|
return toolCalls;
|
|
206
209
|
}
|
package/esm/lib/encodings.js
CHANGED
|
@@ -349,15 +349,30 @@ export const encodeFormQuery = queryEncoder(encodeForm);
|
|
|
349
349
|
export const encodeSpaceDelimitedQuery = queryEncoder(encodeSpaceDelimited);
|
|
350
350
|
export const encodePipeDelimitedQuery = queryEncoder(encodePipeDelimited);
|
|
351
351
|
export const encodeDeepObjectQuery = queryEncoder(encodeDeepObject);
|
|
352
|
+
function isBlobLike(val) {
|
|
353
|
+
if (val instanceof Blob) {
|
|
354
|
+
return true;
|
|
355
|
+
}
|
|
356
|
+
if (typeof val !== "object" || val == null || !(Symbol.toStringTag in val)) {
|
|
357
|
+
return false;
|
|
358
|
+
}
|
|
359
|
+
const tag = val[Symbol.toStringTag];
|
|
360
|
+
if (tag !== "Blob" && tag !== "File") {
|
|
361
|
+
return false;
|
|
362
|
+
}
|
|
363
|
+
return "stream" in val && typeof val.stream === "function";
|
|
364
|
+
}
|
|
352
365
|
export function appendForm(fd, key, value, fileName) {
|
|
353
366
|
if (value == null) {
|
|
354
367
|
return;
|
|
355
368
|
}
|
|
356
|
-
else if (value
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
369
|
+
else if (isBlobLike(value)) {
|
|
370
|
+
if (fileName) {
|
|
371
|
+
fd.append(key, value, fileName);
|
|
372
|
+
}
|
|
373
|
+
else {
|
|
374
|
+
fd.append(key, value);
|
|
375
|
+
}
|
|
361
376
|
}
|
|
362
377
|
else {
|
|
363
378
|
fd.append(key, String(value));
|
package/esm/lib/env.d.ts
CHANGED
|
@@ -7,9 +7,13 @@ export interface Env {
|
|
|
7
7
|
*/
|
|
8
8
|
OPENROUTER_HTTP_REFERER?: string | undefined;
|
|
9
9
|
/**
|
|
10
|
-
* Sets the
|
|
10
|
+
* Sets the appTitle parameter for all supported operations
|
|
11
11
|
*/
|
|
12
|
-
|
|
12
|
+
OPENROUTER_APP_TITLE?: string | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* Sets the appCategories parameter for all supported operations
|
|
15
|
+
*/
|
|
16
|
+
OPENROUTER_APP_CATEGORIES?: string | undefined;
|
|
13
17
|
OPENROUTER_DEBUG?: boolean | undefined;
|
|
14
18
|
}
|
|
15
19
|
export declare const envSchema: z.ZodType<Env, unknown>;
|
package/esm/lib/env.js
CHANGED
|
@@ -7,7 +7,8 @@ import { dlv } from "./dlv.js";
|
|
|
7
7
|
export const envSchema = z.object({
|
|
8
8
|
OPENROUTER_API_KEY: z.string().optional(),
|
|
9
9
|
OPENROUTER_HTTP_REFERER: z.string().optional(),
|
|
10
|
-
|
|
10
|
+
OPENROUTER_APP_TITLE: z.string().optional(),
|
|
11
|
+
OPENROUTER_APP_CATEGORIES: z.string().optional(),
|
|
11
12
|
OPENROUTER_DEBUG: z.coerce.boolean().optional(),
|
|
12
13
|
});
|
|
13
14
|
/**
|
|
@@ -53,8 +54,11 @@ export function fillGlobals(options) {
|
|
|
53
54
|
if (typeof envVars.OPENROUTER_HTTP_REFERER !== "undefined") {
|
|
54
55
|
clone.httpReferer ?? (clone.httpReferer = envVars.OPENROUTER_HTTP_REFERER);
|
|
55
56
|
}
|
|
56
|
-
if (typeof envVars.
|
|
57
|
-
clone.
|
|
57
|
+
if (typeof envVars.OPENROUTER_APP_TITLE !== "undefined") {
|
|
58
|
+
clone.appTitle ?? (clone.appTitle = envVars.OPENROUTER_APP_TITLE);
|
|
59
|
+
}
|
|
60
|
+
if (typeof envVars.OPENROUTER_APP_CATEGORIES !== "undefined") {
|
|
61
|
+
clone.appCategories ?? (clone.appCategories = envVars.OPENROUTER_APP_CATEGORIES);
|
|
58
62
|
}
|
|
59
63
|
return clone;
|
|
60
64
|
}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
interface ReadableStream<R = any> {
|
|
3
|
+
[Symbol.asyncIterator](): AsyncIterableIterator<R>;
|
|
4
|
+
}
|
|
5
|
+
}
|
|
1
6
|
export type SseMessage<T> = {
|
|
2
7
|
data?: T | undefined;
|
|
3
|
-
event?: string | undefined;
|
|
4
|
-
id?: string | undefined;
|
|
5
|
-
retry?: number | undefined;
|
|
8
|
+
event?: string | null | undefined;
|
|
9
|
+
id?: string | null | undefined;
|
|
10
|
+
retry?: number | null | undefined;
|
|
6
11
|
};
|
|
7
12
|
export declare class EventStream<T> extends ReadableStream<T> {
|
|
8
|
-
constructor(responseBody: ReadableStream<Uint8Array>, parse: (x: SseMessage<string>) => IteratorResult<T, undefined
|
|
13
|
+
constructor(responseBody: ReadableStream<Uint8Array>, parse: (x: SseMessage<string>) => IteratorResult<T, undefined>, opts?: {
|
|
14
|
+
dataRequired?: boolean;
|
|
15
|
+
});
|
|
9
16
|
[Symbol.asyncIterator](): AsyncIterableIterator<T>;
|
|
10
17
|
}
|
|
11
18
|
//# sourceMappingURL=event-streams.d.ts.map
|
package/esm/lib/event-streams.js
CHANGED
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
* @generated-id: 3f731f808a79
|
|
4
4
|
*/
|
|
5
5
|
export class EventStream extends ReadableStream {
|
|
6
|
-
constructor(responseBody, parse) {
|
|
6
|
+
constructor(responseBody, parse, opts) {
|
|
7
7
|
const upstream = responseBody.getReader();
|
|
8
8
|
let buffer = new Uint8Array();
|
|
9
|
+
const state = { eventId: undefined };
|
|
10
|
+
const dataRequired = opts?.dataRequired ?? true;
|
|
9
11
|
super({
|
|
10
12
|
async pull(downstream) {
|
|
11
13
|
try {
|
|
@@ -20,7 +22,7 @@ export class EventStream extends ReadableStream {
|
|
|
20
22
|
}
|
|
21
23
|
const message = buffer.slice(0, match.index);
|
|
22
24
|
buffer = buffer.slice(match.index + match.length);
|
|
23
|
-
const item = parseMessage(message, parse);
|
|
25
|
+
const item = parseMessage(message, parse, state, dataRequired);
|
|
24
26
|
if (item && !item.done)
|
|
25
27
|
return downstream.enqueue(item.value);
|
|
26
28
|
if (item?.done) {
|
|
@@ -74,25 +76,40 @@ function concatBuffer(a, b) {
|
|
|
74
76
|
c.set(b, a.length);
|
|
75
77
|
return c;
|
|
76
78
|
}
|
|
77
|
-
|
|
79
|
+
const CR = 13;
|
|
80
|
+
const LF = 10;
|
|
81
|
+
const BOUNDARIES = [
|
|
82
|
+
[CR, LF, CR, LF], // \r\n\r\n
|
|
83
|
+
[CR, LF, CR], // \r\n\r
|
|
84
|
+
[CR, LF, LF], // \r\n\n
|
|
85
|
+
[CR, CR, LF], // \r\r\n
|
|
86
|
+
[LF, CR, LF], // \n\r\n
|
|
87
|
+
[CR, CR], // \r\r
|
|
88
|
+
[LF, CR], // \n\r
|
|
89
|
+
[LF, LF], // \n\n
|
|
90
|
+
];
|
|
78
91
|
function findBoundary(buf) {
|
|
79
92
|
const len = buf.length;
|
|
80
93
|
for (let i = 0; i < len; i++) {
|
|
81
|
-
if (i
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
94
|
+
if (buf[i] !== CR && buf[i] !== LF)
|
|
95
|
+
continue;
|
|
96
|
+
for (const boundary of BOUNDARIES) {
|
|
97
|
+
if (i + boundary.length > len)
|
|
98
|
+
continue;
|
|
99
|
+
let match = true;
|
|
100
|
+
for (let j = 0; j < boundary.length; j++) {
|
|
101
|
+
if (buf[i + j] !== boundary[j]) {
|
|
102
|
+
match = false;
|
|
103
|
+
break;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
if (match)
|
|
107
|
+
return { index: i, length: boundary.length };
|
|
91
108
|
}
|
|
92
109
|
}
|
|
93
110
|
return null;
|
|
94
111
|
}
|
|
95
|
-
function parseMessage(chunk, parse) {
|
|
112
|
+
function parseMessage(chunk, parse, state, dataRequired) {
|
|
96
113
|
const text = new TextDecoder().decode(chunk);
|
|
97
114
|
const lines = text.split(/\r\n|\r|\n/);
|
|
98
115
|
const dataLines = [];
|
|
@@ -103,24 +120,29 @@ function parseMessage(chunk, parse) {
|
|
|
103
120
|
continue;
|
|
104
121
|
ignore = false;
|
|
105
122
|
const i = line.indexOf(":");
|
|
106
|
-
|
|
107
|
-
|
|
123
|
+
let field = line;
|
|
124
|
+
let value = "";
|
|
125
|
+
if (i > 0) {
|
|
126
|
+
field = line.slice(0, i);
|
|
127
|
+
value = line[i + 1] === " " ? line.slice(i + 2) : line.slice(i + 1);
|
|
128
|
+
}
|
|
108
129
|
if (field === "data")
|
|
109
130
|
dataLines.push(value);
|
|
110
131
|
else if (field === "event")
|
|
111
132
|
ret.event = value;
|
|
112
|
-
else if (field === "id")
|
|
113
|
-
|
|
114
|
-
else if (field === "retry") {
|
|
115
|
-
|
|
116
|
-
if (!isNaN(n))
|
|
117
|
-
ret.retry = n;
|
|
133
|
+
else if (field === "id" && !value.includes("\0"))
|
|
134
|
+
state.eventId = value;
|
|
135
|
+
else if (field === "retry" && /^\d+$/.test(value)) {
|
|
136
|
+
ret.retry = Number(value);
|
|
118
137
|
}
|
|
119
138
|
}
|
|
120
139
|
if (ignore)
|
|
121
140
|
return;
|
|
141
|
+
ret.id = state.eventId;
|
|
122
142
|
if (dataLines.length)
|
|
123
143
|
ret.data = dataLines.join("\n");
|
|
144
|
+
else if (dataRequired)
|
|
145
|
+
return; // skip data-less events when data is required
|
|
124
146
|
return parse(ret);
|
|
125
147
|
}
|
|
126
148
|
//# sourceMappingURL=event-streams.js.map
|
package/esm/lib/files.d.ts
CHANGED
|
@@ -10,4 +10,17 @@ export declare function readableStreamToArrayBuffer(readable: ReadableStream<Uin
|
|
|
10
10
|
* Returns null if the extension is not recognized.
|
|
11
11
|
*/
|
|
12
12
|
export declare function getContentTypeFromFileName(fileName: string): string | null;
|
|
13
|
+
/**
|
|
14
|
+
* Creates a Blob from file content with the given MIME type.
|
|
15
|
+
*
|
|
16
|
+
* Node.js Buffers are Uint8Array subclasses that may share a pooled
|
|
17
|
+
* ArrayBuffer (byteOffset > 0, byteLength < buffer.byteLength). Passing
|
|
18
|
+
* such a Buffer directly to `new Blob([buf])` can include the entire
|
|
19
|
+
* underlying pool on some runtimes, producing a Blob with extra bytes
|
|
20
|
+
* that corrupts multipart uploads.
|
|
21
|
+
*
|
|
22
|
+
* Copying into a standalone Uint8Array ensures the Blob receives only the
|
|
23
|
+
* intended bytes regardless of runtime behaviour.
|
|
24
|
+
*/
|
|
25
|
+
export declare function bytesToBlob(content: Uint8Array<ArrayBufferLike> | ArrayBuffer | Blob | string, contentType: string): Blob;
|
|
13
26
|
//# sourceMappingURL=files.d.ts.map
|
package/esm/lib/files.js
CHANGED
|
@@ -71,4 +71,22 @@ export function getContentTypeFromFileName(fileName) {
|
|
|
71
71
|
};
|
|
72
72
|
return mimeTypes[ext] || null;
|
|
73
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* Creates a Blob from file content with the given MIME type.
|
|
76
|
+
*
|
|
77
|
+
* Node.js Buffers are Uint8Array subclasses that may share a pooled
|
|
78
|
+
* ArrayBuffer (byteOffset > 0, byteLength < buffer.byteLength). Passing
|
|
79
|
+
* such a Buffer directly to `new Blob([buf])` can include the entire
|
|
80
|
+
* underlying pool on some runtimes, producing a Blob with extra bytes
|
|
81
|
+
* that corrupts multipart uploads.
|
|
82
|
+
*
|
|
83
|
+
* Copying into a standalone Uint8Array ensures the Blob receives only the
|
|
84
|
+
* intended bytes regardless of runtime behaviour.
|
|
85
|
+
*/
|
|
86
|
+
export function bytesToBlob(content, contentType) {
|
|
87
|
+
if (content instanceof Uint8Array) {
|
|
88
|
+
return new Blob([new Uint8Array(content)], { type: contentType });
|
|
89
|
+
}
|
|
90
|
+
return new Blob([content], { type: contentType });
|
|
91
|
+
}
|
|
74
92
|
//# sourceMappingURL=files.js.map
|
package/esm/lib/matchers.js
CHANGED
|
@@ -2,15 +2,21 @@ import type { OpenRouterCore } from '../core.js';
|
|
|
2
2
|
import type * as models from '../models/index.js';
|
|
3
3
|
import type { CallModelInput } from './async-params.js';
|
|
4
4
|
import type { RequestOptions } from './sdks.js';
|
|
5
|
-
import type {
|
|
5
|
+
import type { $ZodObject, $ZodShape } from 'zod/v4/core';
|
|
6
|
+
import type { ConversationState, ToolContextMapWithShared, ResponseStreamEvent, InferToolEventsUnion, InferToolOutputsUnion, ParsedToolCall, StateAccessor, StopWhen, Tool, ToolStreamEvent, TurnContext } from './tool-types.js';
|
|
7
|
+
import { type ContextInput } from './tool-context.js';
|
|
6
8
|
import { type StreamableOutputItem } from './stream-transformers.js';
|
|
7
|
-
export interface GetResponseOptions<TTools extends readonly Tool[]> {
|
|
8
|
-
request: CallModelInput<TTools>;
|
|
9
|
+
export interface GetResponseOptions<TTools extends readonly Tool[], TShared extends Record<string, unknown> = Record<string, never>> {
|
|
10
|
+
request: CallModelInput<TTools, TShared>;
|
|
9
11
|
client: OpenRouterCore;
|
|
10
12
|
options?: RequestOptions;
|
|
11
13
|
tools?: TTools;
|
|
12
14
|
stopWhen?: StopWhen<TTools>;
|
|
13
15
|
state?: StateAccessor<TTools>;
|
|
16
|
+
/** Typed context data passed to tools via contextSchema. `shared` key for shared context. */
|
|
17
|
+
context?: ContextInput<ToolContextMapWithShared<TTools, TShared>>;
|
|
18
|
+
/** Zod schema for shared context validation */
|
|
19
|
+
sharedContextSchema?: $ZodObject<$ZodShape>;
|
|
14
20
|
/**
|
|
15
21
|
* Call-level approval check - overrides tool-level requireApproval setting
|
|
16
22
|
* Receives the tool call and turn context, can be sync or async
|
|
@@ -18,6 +24,10 @@ export interface GetResponseOptions<TTools extends readonly Tool[]> {
|
|
|
18
24
|
requireApproval?: (toolCall: ParsedToolCall<TTools[number]>, context: TurnContext) => boolean | Promise<boolean>;
|
|
19
25
|
approveToolCalls?: string[];
|
|
20
26
|
rejectToolCalls?: string[];
|
|
27
|
+
/** Callback invoked at the start of each tool execution turn */
|
|
28
|
+
onTurnStart?: (context: TurnContext) => void | Promise<void>;
|
|
29
|
+
/** Callback invoked at the end of each tool execution turn */
|
|
30
|
+
onTurnEnd?: (context: TurnContext, response: models.OpenResponsesResult) => void | Promise<void>;
|
|
21
31
|
}
|
|
22
32
|
/**
|
|
23
33
|
* A wrapper around a streaming response that provides multiple consumption patterns.
|
|
@@ -26,7 +36,7 @@ export interface GetResponseOptions<TTools extends readonly Tool[]> {
|
|
|
26
36
|
* - `await result.getText()` - Get just the text
|
|
27
37
|
* - `await result.getResponse()` - Get the full response object
|
|
28
38
|
* - `for await (const delta of result.getTextStream())` - Stream text deltas
|
|
29
|
-
* - `for await (const msg of result.getNewMessagesStream())` - Stream
|
|
39
|
+
* - `for await (const msg of result.getNewMessagesStream())` - Stream cumulative message snapshots
|
|
30
40
|
* - `for await (const event of result.getFullResponsesStream())` - Stream all response events
|
|
31
41
|
*
|
|
32
42
|
* For message format conversion, use the helper functions:
|
|
@@ -37,8 +47,9 @@ export interface GetResponseOptions<TTools extends readonly Tool[]> {
|
|
|
37
47
|
* ReusableReadableStream implementation.
|
|
38
48
|
*
|
|
39
49
|
* @template TTools - The tools array type to enable typed tool calls and results
|
|
50
|
+
* @template TShared - The shape of the shared context (inferred from sharedContextSchema)
|
|
40
51
|
*/
|
|
41
|
-
export declare class ModelResult<TTools extends readonly Tool[]> {
|
|
52
|
+
export declare class ModelResult<TTools extends readonly Tool[], TShared extends Record<string, unknown> = Record<string, never>> {
|
|
42
53
|
private reusableStream;
|
|
43
54
|
private textPromise;
|
|
44
55
|
private options;
|
|
@@ -54,13 +65,42 @@ export declare class ModelResult<TTools extends readonly Tool[]> {
|
|
|
54
65
|
private approvedToolCalls;
|
|
55
66
|
private rejectedToolCalls;
|
|
56
67
|
private isResumingFromApproval;
|
|
57
|
-
|
|
68
|
+
private turnBroadcaster;
|
|
69
|
+
private initialStreamPipeStarted;
|
|
70
|
+
private initialPipePromise;
|
|
71
|
+
private contextStore;
|
|
72
|
+
constructor(options: GetResponseOptions<TTools, TShared>);
|
|
58
73
|
/**
|
|
59
|
-
* Get or create the
|
|
60
|
-
*
|
|
61
|
-
* Broadcasts both preliminary results and final tool results.
|
|
74
|
+
* Get or create the unified turn broadcaster (lazy initialization).
|
|
75
|
+
* Broadcasts all API stream events, tool events, and turn delimiters across turns.
|
|
62
76
|
*/
|
|
63
|
-
private
|
|
77
|
+
private ensureTurnBroadcaster;
|
|
78
|
+
/**
|
|
79
|
+
* Start piping the initial stream into the turn broadcaster.
|
|
80
|
+
* Idempotent — only starts once even if called multiple times.
|
|
81
|
+
* Wraps the initial stream events with turn.start(0) / turn.end(0) delimiters.
|
|
82
|
+
*/
|
|
83
|
+
private startInitialStreamPipe;
|
|
84
|
+
/**
|
|
85
|
+
* Pipe a follow-up stream into the turn broadcaster and capture the completed response.
|
|
86
|
+
* Emits turn.start / turn.end delimiters around the stream events.
|
|
87
|
+
*/
|
|
88
|
+
private pipeAndConsumeStream;
|
|
89
|
+
/**
|
|
90
|
+
* Push a tool result event to both the legacy tool event broadcaster
|
|
91
|
+
* and the unified turn broadcaster.
|
|
92
|
+
*/
|
|
93
|
+
private broadcastToolResult;
|
|
94
|
+
/**
|
|
95
|
+
* Push a preliminary result event to both the legacy tool event broadcaster
|
|
96
|
+
* and the unified turn broadcaster.
|
|
97
|
+
*/
|
|
98
|
+
private broadcastPreliminaryResult;
|
|
99
|
+
/**
|
|
100
|
+
* Set up the turn broadcaster with tool execution and return the consumer.
|
|
101
|
+
* Used by stream methods that need to iterate over all turns.
|
|
102
|
+
*/
|
|
103
|
+
private startTurnBroadcasterExecution;
|
|
64
104
|
/**
|
|
65
105
|
* Type guard to check if a value is a non-streaming response
|
|
66
106
|
* Only requires 'output' field and absence of 'toReadableStream' method
|
|
@@ -162,11 +202,7 @@ export declare class ModelResult<TTools extends readonly Tool[]> {
|
|
|
162
202
|
private applyNextTurnParams;
|
|
163
203
|
/**
|
|
164
204
|
* Make a follow-up API request with tool results.
|
|
165
|
-
*
|
|
166
|
-
*
|
|
167
|
-
* @param currentResponse - The response that contained tool calls
|
|
168
|
-
* @param toolResults - The results from executing those tools
|
|
169
|
-
* @returns The new response from the API
|
|
205
|
+
* Uses streaming and pipes events through the turn broadcaster when available.
|
|
170
206
|
*/
|
|
171
207
|
private makeFollowupRequest;
|
|
172
208
|
/**
|
|
@@ -229,18 +265,19 @@ export declare class ModelResult<TTools extends readonly Tool[]> {
|
|
|
229
265
|
/**
|
|
230
266
|
* Get the complete response object including usage information.
|
|
231
267
|
* This will consume the stream until completion and execute any tools.
|
|
232
|
-
* Returns the full
|
|
268
|
+
* Returns the full OpenResponsesResult with usage data (inputTokens, outputTokens, cachedTokens, etc.)
|
|
233
269
|
*/
|
|
234
|
-
getResponse(): Promise<models.
|
|
270
|
+
getResponse(): Promise<models.OpenResponsesResult>;
|
|
235
271
|
/**
|
|
236
|
-
* Stream all response events as they arrive.
|
|
272
|
+
* Stream all response events as they arrive across all turns.
|
|
237
273
|
* Multiple consumers can iterate over this stream concurrently.
|
|
238
|
-
*
|
|
274
|
+
* Includes API events, tool events, and turn.start/turn.end delimiters.
|
|
239
275
|
*/
|
|
240
276
|
getFullResponsesStream(): AsyncIterableIterator<ResponseStreamEvent<InferToolEventsUnion<TTools>, InferToolOutputsUnion<TTools>>>;
|
|
241
277
|
/**
|
|
242
|
-
* Stream only text deltas as they arrive.
|
|
243
|
-
* This filters the full event stream to only yield text content
|
|
278
|
+
* Stream only text deltas as they arrive from all turns.
|
|
279
|
+
* This filters the full event stream to only yield text content,
|
|
280
|
+
* including text from follow-up responses in multi-turn tool loops.
|
|
244
281
|
*/
|
|
245
282
|
getTextStream(): AsyncIterableIterator<string>;
|
|
246
283
|
/**
|
|
@@ -263,20 +300,21 @@ export declare class ModelResult<TTools extends readonly Tool[]> {
|
|
|
263
300
|
* while `getItemsStream()` streams all output item types (messages, function_calls,
|
|
264
301
|
* reasoning, etc.) with cumulative updates.
|
|
265
302
|
*
|
|
266
|
-
* Stream
|
|
303
|
+
* Stream cumulative message snapshots as content is added in responses format.
|
|
267
304
|
* Each iteration yields an updated version of the message with new content.
|
|
268
|
-
* Also yields function_call items and
|
|
269
|
-
* Returns
|
|
305
|
+
* Also yields function_call items and FunctionCallOutputItem after tool execution completes.
|
|
306
|
+
* Returns OutputMessage, OutputFunctionCallItem, or FunctionCallOutputItem
|
|
270
307
|
* compatible with OpenAI Responses API format.
|
|
271
308
|
*/
|
|
272
|
-
getNewMessagesStream(): AsyncIterableIterator<models.
|
|
309
|
+
getNewMessagesStream(): AsyncIterableIterator<models.OutputMessage | models.FunctionCallOutputItem | models.OutputFunctionCallItem>;
|
|
273
310
|
/**
|
|
274
|
-
* Stream only reasoning deltas as they arrive.
|
|
275
|
-
* This filters the full event stream to only yield reasoning content
|
|
311
|
+
* Stream only reasoning deltas as they arrive from all turns.
|
|
312
|
+
* This filters the full event stream to only yield reasoning content,
|
|
313
|
+
* including reasoning from follow-up responses in multi-turn tool loops.
|
|
276
314
|
*/
|
|
277
315
|
getReasoningStream(): AsyncIterableIterator<string>;
|
|
278
316
|
/**
|
|
279
|
-
* Stream tool call argument deltas and preliminary results.
|
|
317
|
+
* Stream tool call argument deltas and preliminary results from all turns.
|
|
280
318
|
* Preliminary results are streamed in REAL-TIME as generator tools yield.
|
|
281
319
|
* - Tool call argument deltas as { type: "delta", content: string }
|
|
282
320
|
* - Preliminary results as { type: "preliminary_result", toolCallId, result }
|
|
@@ -294,6 +332,19 @@ export declare class ModelResult<TTools extends readonly Tool[]> {
|
|
|
294
332
|
* Each iteration yields a complete tool call with parsed arguments.
|
|
295
333
|
*/
|
|
296
334
|
getToolCallsStream(): AsyncIterableIterator<ParsedToolCall<TTools[number]>>;
|
|
335
|
+
/**
|
|
336
|
+
* Returns an async iterable that emits a full context snapshot every time
|
|
337
|
+
* any tool calls ctx.update(). Can be consumed concurrently with getText(),
|
|
338
|
+
* getToolStream(), etc.
|
|
339
|
+
*
|
|
340
|
+
* @example
|
|
341
|
+
* ```typescript
|
|
342
|
+
* for await (const snapshot of result.getContextUpdates()) {
|
|
343
|
+
* console.log('Context changed:', snapshot);
|
|
344
|
+
* }
|
|
345
|
+
* ```
|
|
346
|
+
*/
|
|
347
|
+
getContextUpdates(): AsyncGenerator<ToolContextMapWithShared<TTools, TShared>>;
|
|
297
348
|
/**
|
|
298
349
|
* Cancel the underlying stream and all consumers
|
|
299
350
|
*/
|