@mastra/server 1.63.1-alpha.0 → 1.63.1-alpha.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.
Files changed (173) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/LICENSE.md +6 -4
  3. package/dist/{a2a-BtXFFv-0.cjs → a2a-C7OgMND3.cjs} +2 -2
  4. package/dist/{a2a-BtXFFv-0.cjs.map → a2a-C7OgMND3.cjs.map} +1 -1
  5. package/dist/{a2a-DZhtQeFL.js → a2a-CMi5AZNR.js} +2 -2
  6. package/dist/{a2a-DZhtQeFL.js.map → a2a-CMi5AZNR.js.map} +1 -1
  7. package/dist/{api-schema-manifest-DrTLp1Fv.cjs → api-schema-manifest-BC-yts9Q.cjs} +3 -3
  8. package/dist/{api-schema-manifest-DrTLp1Fv.cjs.map → api-schema-manifest-BC-yts9Q.cjs.map} +1 -1
  9. package/dist/{api-schema-manifest-BVgosvca.js → api-schema-manifest-C0fowe3V.js} +3 -3
  10. package/dist/{api-schema-manifest-BVgosvca.js.map → api-schema-manifest-C0fowe3V.js.map} +1 -1
  11. package/dist/{background-tasks-8M9W_27g.cjs → background-tasks-BJhziawt.cjs} +2 -2
  12. package/dist/{background-tasks-8M9W_27g.cjs.map → background-tasks-BJhziawt.cjs.map} +1 -1
  13. package/dist/{background-tasks-BtWM0sZs.js → background-tasks-Bl7Hn8h9.js} +2 -2
  14. package/dist/{background-tasks-BtWM0sZs.js.map → background-tasks-Bl7Hn8h9.js.map} +1 -1
  15. package/dist/{builder-registry-Dcd_ApmT.cjs → builder-registry-BINitddV.cjs} +2 -2
  16. package/dist/{builder-registry-Dcd_ApmT.cjs.map → builder-registry-BINitddV.cjs.map} +1 -1
  17. package/dist/{builder-registry-DnEa4qnF.js → builder-registry-Bcpr74BB.js} +2 -2
  18. package/dist/{builder-registry-DnEa4qnF.js.map → builder-registry-Bcpr74BB.js.map} +1 -1
  19. package/dist/{channels-BO3Zd38V.js → channels-CnEljW9e.js} +2 -2
  20. package/dist/{channels-BO3Zd38V.js.map → channels-CnEljW9e.js.map} +1 -1
  21. package/dist/{channels-D9WRnKzU.cjs → channels-D8e5YDTn.cjs} +2 -2
  22. package/dist/{channels-D9WRnKzU.cjs.map → channels-D8e5YDTn.cjs.map} +1 -1
  23. package/dist/{dist-CJKQBH69.cjs → dist-B6qmZNb0.cjs} +4 -4
  24. package/dist/dist-B6qmZNb0.cjs.map +1 -0
  25. package/dist/{dist-D4NzuG3G.cjs → dist-C76EmJsT.cjs} +3 -3
  26. package/dist/{dist-D4NzuG3G.cjs.map → dist-C76EmJsT.cjs.map} +1 -1
  27. package/dist/{dist-8-Z5v77M.cjs → dist-C9yKk16g.cjs} +3 -3
  28. package/dist/{dist-8-Z5v77M.cjs.map → dist-C9yKk16g.cjs.map} +1 -1
  29. package/dist/{dist-2zVeGGHi.cjs → dist-CLQt62Pi.cjs} +3 -3
  30. package/dist/{dist-2zVeGGHi.cjs.map → dist-CLQt62Pi.cjs.map} +1 -1
  31. package/dist/{dist-F_Ql1co6.js → dist-Chgswf37.js} +4 -4
  32. package/dist/dist-Chgswf37.js.map +1 -0
  33. package/dist/{dist-Be7Caz3Z.cjs → dist-D6F_HzDS.cjs} +4 -4
  34. package/dist/{dist-Be7Caz3Z.cjs.map → dist-D6F_HzDS.cjs.map} +1 -1
  35. package/dist/{dist-Jn3uXsoB.js → dist-Da8AufS5.js} +4 -4
  36. package/dist/{dist-Jn3uXsoB.js.map → dist-Da8AufS5.js.map} +1 -1
  37. package/dist/{dist-L0EogwX_.js → dist-DmVdNrSg.js} +79 -19
  38. package/dist/dist-DmVdNrSg.js.map +1 -0
  39. package/dist/{dist-bAFqx06T.js → dist-DoTDZ7wF.js} +3 -3
  40. package/dist/{dist-bAFqx06T.js.map → dist-DoTDZ7wF.js.map} +1 -1
  41. package/dist/{dist-BfVTO0pC.cjs → dist-DpM-6UBk.cjs} +3 -3
  42. package/dist/{dist-BfVTO0pC.cjs.map → dist-DpM-6UBk.cjs.map} +1 -1
  43. package/dist/{dist-CRgxcDTg.js → dist-Wjq6PT76.js} +3 -3
  44. package/dist/{dist-CRgxcDTg.js.map → dist-Wjq6PT76.js.map} +1 -1
  45. package/dist/{dist-CHJcZQdS.js → dist-XnA2Lowr.js} +3 -3
  46. package/dist/{dist-CHJcZQdS.js.map → dist-XnA2Lowr.js.map} +1 -1
  47. package/dist/{dist-Xj9TvH1A.cjs → dist-fQ5zEP_z.cjs} +78 -18
  48. package/dist/dist-fQ5zEP_z.cjs.map +1 -0
  49. package/dist/{dist-CscF1cF8.js → dist-k6UeNFHu.js} +3 -3
  50. package/dist/{dist-CscF1cF8.js.map → dist-k6UeNFHu.js.map} +1 -1
  51. package/dist/docs/SKILL.md +1 -1
  52. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  53. package/dist/{dynamic-workflows-BZ5ru36x.cjs → dynamic-workflows-BT_ryQUl.cjs} +2 -2
  54. package/dist/{dynamic-workflows-BZ5ru36x.cjs.map → dynamic-workflows-BT_ryQUl.cjs.map} +1 -1
  55. package/dist/{dynamic-workflows-C6U0Rdoc.js → dynamic-workflows-CzkrhMwZ.js} +2 -2
  56. package/dist/{dynamic-workflows-C6U0Rdoc.js.map → dynamic-workflows-CzkrhMwZ.js.map} +1 -1
  57. package/dist/{editor-builder-BmRQift0.cjs → editor-builder-B-KatZ10.cjs} +2 -2
  58. package/dist/{editor-builder-BmRQift0.cjs.map → editor-builder-B-KatZ10.cjs.map} +1 -1
  59. package/dist/{editor-builder-EP9FAtQm.js → editor-builder-c7QiLUV9.js} +2 -2
  60. package/dist/{editor-builder-EP9FAtQm.js.map → editor-builder-c7QiLUV9.js.map} +1 -1
  61. package/dist/{observability-new-endpoints-4GcBP0uJ.cjs → observability-new-endpoints-BGXu1TX-.cjs} +2 -2
  62. package/dist/{observability-new-endpoints-4GcBP0uJ.cjs.map → observability-new-endpoints-BGXu1TX-.cjs.map} +1 -1
  63. package/dist/{observability-new-endpoints-0RLfcyw6.js → observability-new-endpoints-CsXPhgyd.js} +2 -2
  64. package/dist/{observability-new-endpoints-0RLfcyw6.js.map → observability-new-endpoints-CsXPhgyd.js.map} +1 -1
  65. package/dist/{route-builder-YQ_gLIvW.js → route-builder-BveLN9LU.js} +2 -2
  66. package/dist/route-builder-BveLN9LU.js.map +1 -0
  67. package/dist/{route-builder-CWsok5ci.cjs → route-builder-C8n4ugUf.cjs} +2 -2
  68. package/dist/route-builder-C8n4ugUf.cjs.map +1 -0
  69. package/dist/{routes-CDsvr7BB.cjs → routes-BAnhbh9P.cjs} +10 -10
  70. package/dist/{routes-CDsvr7BB.cjs.map → routes-BAnhbh9P.cjs.map} +1 -1
  71. package/dist/{routes-DCEudTA7.js → routes-D9HqtkO2.js} +10 -10
  72. package/dist/{routes-DCEudTA7.js.map → routes-D9HqtkO2.js.map} +1 -1
  73. package/dist/{schedules-RjPcNOmY.js → schedules-BcEUUuX_.js} +2 -2
  74. package/dist/{schedules-RjPcNOmY.js.map → schedules-BcEUUuX_.js.map} +1 -1
  75. package/dist/{schedules-7YUg_TRM.cjs → schedules-fj9U0_tA.cjs} +2 -2
  76. package/dist/{schedules-7YUg_TRM.cjs.map → schedules-fj9U0_tA.cjs.map} +1 -1
  77. package/dist/server/handlers/a2a.cjs +1 -1
  78. package/dist/server/handlers/a2a.js +1 -1
  79. package/dist/server/handlers/agent-builder.cjs +2 -2
  80. package/dist/server/handlers/agent-builder.js +2 -2
  81. package/dist/server/handlers/agent-controller.cjs +1 -1
  82. package/dist/server/handlers/agent-controller.js +1 -1
  83. package/dist/server/handlers/agent-versions.cjs +1 -1
  84. package/dist/server/handlers/agent-versions.js +1 -1
  85. package/dist/server/handlers/agents.cjs +1 -1
  86. package/dist/server/handlers/agents.js +1 -1
  87. package/dist/server/handlers/auth.cjs +1 -1
  88. package/dist/server/handlers/auth.js +1 -1
  89. package/dist/server/handlers/background-tasks.cjs +1 -1
  90. package/dist/server/handlers/background-tasks.js +1 -1
  91. package/dist/server/handlers/builder-registry.cjs +1 -1
  92. package/dist/server/handlers/builder-registry.js +1 -1
  93. package/dist/server/handlers/channels.cjs +1 -1
  94. package/dist/server/handlers/channels.js +1 -1
  95. package/dist/server/handlers/conversations.cjs +1 -1
  96. package/dist/server/handlers/conversations.js +1 -1
  97. package/dist/server/handlers/datasets.cjs +1 -1
  98. package/dist/server/handlers/datasets.js +1 -1
  99. package/dist/server/handlers/dynamic-workflows.cjs +1 -1
  100. package/dist/server/handlers/dynamic-workflows.js +1 -1
  101. package/dist/server/handlers/editor-builder.cjs +1 -1
  102. package/dist/server/handlers/editor-builder.js +1 -1
  103. package/dist/server/handlers/favorites-enrichment.cjs +1 -1
  104. package/dist/server/handlers/favorites-enrichment.js +1 -1
  105. package/dist/server/handlers/logs.cjs +1 -1
  106. package/dist/server/handlers/logs.js +1 -1
  107. package/dist/server/handlers/mcp-client-versions.cjs +1 -1
  108. package/dist/server/handlers/mcp-client-versions.js +1 -1
  109. package/dist/server/handlers/mcp.cjs +1 -1
  110. package/dist/server/handlers/mcp.js +1 -1
  111. package/dist/server/handlers/memory.cjs +1 -1
  112. package/dist/server/handlers/memory.js +1 -1
  113. package/dist/server/handlers/observability-new-endpoints.cjs +1 -1
  114. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  115. package/dist/server/handlers/observability-shared.cjs +1 -1
  116. package/dist/server/handlers/observability-shared.js +1 -1
  117. package/dist/server/handlers/observability.cjs +2 -2
  118. package/dist/server/handlers/observability.js +2 -2
  119. package/dist/server/handlers/plans.cjs +1 -1
  120. package/dist/server/handlers/plans.js +1 -1
  121. package/dist/server/handlers/processor-providers.cjs +1 -1
  122. package/dist/server/handlers/processor-providers.js +1 -1
  123. package/dist/server/handlers/processors.cjs +1 -1
  124. package/dist/server/handlers/processors.js +1 -1
  125. package/dist/server/handlers/prompt-block-versions.cjs +1 -1
  126. package/dist/server/handlers/prompt-block-versions.js +1 -1
  127. package/dist/server/handlers/responses.cjs +1 -1
  128. package/dist/server/handlers/responses.js +1 -1
  129. package/dist/server/handlers/schedules.cjs +1 -1
  130. package/dist/server/handlers/schedules.js +1 -1
  131. package/dist/server/handlers/scorer-versions.cjs +1 -1
  132. package/dist/server/handlers/scorer-versions.js +1 -1
  133. package/dist/server/handlers/scores.cjs +1 -1
  134. package/dist/server/handlers/scores.js +1 -1
  135. package/dist/server/handlers/stored-agent-favorites.cjs +2 -2
  136. package/dist/server/handlers/stored-agent-favorites.js +2 -2
  137. package/dist/server/handlers/stored-agents.cjs +2 -2
  138. package/dist/server/handlers/stored-agents.js +2 -2
  139. package/dist/server/handlers/stored-mcp-clients.cjs +1 -1
  140. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  141. package/dist/server/handlers/stored-prompt-blocks.cjs +1 -1
  142. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  143. package/dist/server/handlers/stored-scorers.cjs +1 -1
  144. package/dist/server/handlers/stored-scorers.js +1 -1
  145. package/dist/server/handlers/stored-skill-favorites.cjs +2 -2
  146. package/dist/server/handlers/stored-skill-favorites.js +2 -2
  147. package/dist/server/handlers/stored-skills.cjs +2 -2
  148. package/dist/server/handlers/stored-skills.js +2 -2
  149. package/dist/server/handlers/stored-workspaces.cjs +1 -1
  150. package/dist/server/handlers/stored-workspaces.js +1 -1
  151. package/dist/server/handlers/system.cjs +2 -2
  152. package/dist/server/handlers/system.js +2 -2
  153. package/dist/server/handlers/tool-providers.cjs +1 -1
  154. package/dist/server/handlers/tool-providers.js +1 -1
  155. package/dist/server/handlers/tools.cjs +1 -1
  156. package/dist/server/handlers/tools.js +1 -1
  157. package/dist/server/handlers/vector.cjs +1 -1
  158. package/dist/server/handlers/vector.js +1 -1
  159. package/dist/server/handlers/workflows.cjs +1 -1
  160. package/dist/server/handlers/workflows.js +1 -1
  161. package/dist/server/handlers/workspace.cjs +1 -1
  162. package/dist/server/handlers/workspace.js +1 -1
  163. package/dist/server/handlers.cjs +2 -2
  164. package/dist/server/handlers.js +2 -2
  165. package/dist/server/server-adapter/index.cjs +2 -2
  166. package/dist/server/server-adapter/index.js +2 -2
  167. package/package.json +5 -5
  168. package/dist/dist-CJKQBH69.cjs.map +0 -1
  169. package/dist/dist-F_Ql1co6.js.map +0 -1
  170. package/dist/dist-L0EogwX_.js.map +0 -1
  171. package/dist/dist-Xj9TvH1A.cjs.map +0 -1
  172. package/dist/route-builder-CWsok5ci.cjs.map +0 -1
  173. package/dist/route-builder-YQ_gLIvW.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dist-Jn3uXsoB.js","names":["_exhaustiveCheck","z","UnsupportedFunctionalityError2","z2","z3","z4","postJsonToApi4","combineHeaders4","createJsonErrorResponseHandler4","createJsonResponseHandler4","z5","z"],"sources":["../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/openai-compatible/0.2.16/14d16023375e4285f28bf43f0144b3a20c76cf33b87a5f1aa78442edd8cdb72b/node_modules/@ai-sdk/openai-compatible/dist/index.mjs","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/xai/1.2.18/e3f955585c44d055f94d715b8082af482ddc3dc0afe91d2240c8fec8ec5bfec4/node_modules/@ai-sdk/xai/dist/index.mjs"],"sourcesContent":["// src/openai-compatible-chat-language-model.ts\nimport {\n InvalidResponseDataError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonErrorResponseHandler,\n createJsonResponseHandler,\n generateId,\n isParsableJson,\n postJsonToApi\n} from \"@ai-sdk/provider-utils\";\nimport { z as z2 } from \"zod\";\n\n// src/convert-to-openai-compatible-chat-messages.ts\nimport {\n UnsupportedFunctionalityError\n} from \"@ai-sdk/provider\";\nimport { convertUint8ArrayToBase64 } from \"@ai-sdk/provider-utils\";\nfunction getOpenAIMetadata(message) {\n var _a, _b;\n return (_b = (_a = message == null ? void 0 : message.providerMetadata) == null ? void 0 : _a.openaiCompatible) != null ? _b : {};\n}\nfunction convertToOpenAICompatibleChatMessages(prompt) {\n const messages = [];\n for (const { role, content, ...message } of prompt) {\n const metadata = getOpenAIMetadata({ ...message });\n switch (role) {\n case \"system\": {\n messages.push({ role: \"system\", content, ...metadata });\n break;\n }\n case \"user\": {\n if (content.length === 1 && content[0].type === \"text\") {\n messages.push({\n role: \"user\",\n content: content[0].text,\n ...getOpenAIMetadata(content[0])\n });\n break;\n }\n messages.push({\n role: \"user\",\n content: content.map((part) => {\n var _a;\n const partMetadata = getOpenAIMetadata(part);\n switch (part.type) {\n case \"text\": {\n return { type: \"text\", text: part.text, ...partMetadata };\n }\n case \"image\": {\n return {\n type: \"image_url\",\n image_url: {\n url: part.image instanceof URL ? part.image.toString() : `data:${(_a = part.mimeType) != null ? _a : \"image/jpeg\"};base64,${convertUint8ArrayToBase64(part.image)}`\n },\n ...partMetadata\n };\n }\n case \"file\": {\n throw new UnsupportedFunctionalityError({\n functionality: \"File content parts in user messages\"\n });\n }\n }\n }),\n ...metadata\n });\n break;\n }\n case \"assistant\": {\n let text = \"\";\n const toolCalls = [];\n for (const part of content) {\n const partMetadata = getOpenAIMetadata(part);\n switch (part.type) {\n case \"text\": {\n text += part.text;\n break;\n }\n case \"tool-call\": {\n toolCalls.push({\n id: part.toolCallId,\n type: \"function\",\n function: {\n name: part.toolName,\n arguments: JSON.stringify(part.args)\n },\n ...partMetadata\n });\n break;\n }\n }\n }\n messages.push({\n role: \"assistant\",\n content: text,\n tool_calls: toolCalls.length > 0 ? toolCalls : void 0,\n ...metadata\n });\n break;\n }\n case \"tool\": {\n for (const toolResponse of content) {\n const toolResponseMetadata = getOpenAIMetadata(toolResponse);\n messages.push({\n role: \"tool\",\n tool_call_id: toolResponse.toolCallId,\n content: JSON.stringify(toolResponse.result),\n ...toolResponseMetadata\n });\n }\n break;\n }\n default: {\n const _exhaustiveCheck = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n return messages;\n}\n\n// src/get-response-metadata.ts\nfunction getResponseMetadata({\n id,\n model,\n created\n}) {\n return {\n id: id != null ? id : void 0,\n modelId: model != null ? model : void 0,\n timestamp: created != null ? new Date(created * 1e3) : void 0\n };\n}\n\n// src/map-openai-compatible-finish-reason.ts\nfunction mapOpenAICompatibleFinishReason(finishReason) {\n switch (finishReason) {\n case \"stop\":\n return \"stop\";\n case \"length\":\n return \"length\";\n case \"content_filter\":\n return \"content-filter\";\n case \"function_call\":\n case \"tool_calls\":\n return \"tool-calls\";\n default:\n return \"unknown\";\n }\n}\n\n// src/openai-compatible-error.ts\nimport { z } from \"zod\";\nvar openaiCompatibleErrorDataSchema = z.object({\n error: z.object({\n message: z.string(),\n // The additional information below is handled loosely to support\n // OpenAI-compatible providers that have slightly different error\n // responses:\n type: z.string().nullish(),\n param: z.any().nullish(),\n code: z.union([z.string(), z.number()]).nullish()\n })\n});\nvar defaultOpenAICompatibleErrorStructure = {\n errorSchema: openaiCompatibleErrorDataSchema,\n errorToMessage: (data) => data.error.message\n};\n\n// src/openai-compatible-prepare-tools.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError2\n} from \"@ai-sdk/provider\";\nfunction prepareTools({\n mode,\n structuredOutputs\n}) {\n var _a;\n const tools = ((_a = mode.tools) == null ? void 0 : _a.length) ? mode.tools : void 0;\n const toolWarnings = [];\n if (tools == null) {\n return { tools: void 0, tool_choice: void 0, toolWarnings };\n }\n const toolChoice = mode.toolChoice;\n const openaiCompatTools = [];\n for (const tool of tools) {\n if (tool.type === \"provider-defined\") {\n toolWarnings.push({ type: \"unsupported-tool\", tool });\n } else {\n openaiCompatTools.push({\n type: \"function\",\n function: {\n name: tool.name,\n description: tool.description,\n parameters: tool.parameters\n }\n });\n }\n }\n if (toolChoice == null) {\n return { tools: openaiCompatTools, tool_choice: void 0, toolWarnings };\n }\n const type = toolChoice.type;\n switch (type) {\n case \"auto\":\n case \"none\":\n case \"required\":\n return { tools: openaiCompatTools, tool_choice: type, toolWarnings };\n case \"tool\":\n return {\n tools: openaiCompatTools,\n tool_choice: {\n type: \"function\",\n function: {\n name: toolChoice.toolName\n }\n },\n toolWarnings\n };\n default: {\n const _exhaustiveCheck = type;\n throw new UnsupportedFunctionalityError2({\n functionality: `Unsupported tool choice type: ${_exhaustiveCheck}`\n });\n }\n }\n}\n\n// src/openai-compatible-chat-language-model.ts\nvar OpenAICompatibleChatLanguageModel = class {\n // type inferred via constructor\n constructor(modelId, settings, config) {\n this.specificationVersion = \"v1\";\n var _a, _b;\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n const errorStructure = (_a = config.errorStructure) != null ? _a : defaultOpenAICompatibleErrorStructure;\n this.chunkSchema = createOpenAICompatibleChatChunkSchema(\n errorStructure.errorSchema\n );\n this.failedResponseHandler = createJsonErrorResponseHandler(errorStructure);\n this.supportsStructuredOutputs = (_b = config.supportsStructuredOutputs) != null ? _b : false;\n }\n get defaultObjectGenerationMode() {\n return this.config.defaultObjectGenerationMode;\n }\n get provider() {\n return this.config.provider;\n }\n get providerOptionsName() {\n return this.config.provider.split(\".\")[0].trim();\n }\n getArgs({\n mode,\n prompt,\n maxTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n providerMetadata,\n stopSequences,\n responseFormat,\n seed\n }) {\n var _a, _b, _c, _d, _e;\n const type = mode.type;\n const warnings = [];\n if (topK != null) {\n warnings.push({\n type: \"unsupported-setting\",\n setting: \"topK\"\n });\n }\n if ((responseFormat == null ? void 0 : responseFormat.type) === \"json\" && responseFormat.schema != null && !this.supportsStructuredOutputs) {\n warnings.push({\n type: \"unsupported-setting\",\n setting: \"responseFormat\",\n details: \"JSON response format schema is only supported with structuredOutputs\"\n });\n }\n const baseArgs = {\n // model id:\n model: this.modelId,\n // model specific settings:\n user: this.settings.user,\n // standardized settings:\n max_tokens: maxTokens,\n temperature,\n top_p: topP,\n frequency_penalty: frequencyPenalty,\n presence_penalty: presencePenalty,\n response_format: (responseFormat == null ? void 0 : responseFormat.type) === \"json\" ? this.supportsStructuredOutputs === true && responseFormat.schema != null ? {\n type: \"json_schema\",\n json_schema: {\n schema: responseFormat.schema,\n name: (_a = responseFormat.name) != null ? _a : \"response\",\n description: responseFormat.description\n }\n } : { type: \"json_object\" } : void 0,\n stop: stopSequences,\n seed,\n ...providerMetadata == null ? void 0 : providerMetadata[this.providerOptionsName],\n reasoning_effort: (_d = (_b = providerMetadata == null ? void 0 : providerMetadata[this.providerOptionsName]) == null ? void 0 : _b.reasoningEffort) != null ? _d : (_c = providerMetadata == null ? void 0 : providerMetadata[\"openai-compatible\"]) == null ? void 0 : _c.reasoningEffort,\n // messages:\n messages: convertToOpenAICompatibleChatMessages(prompt)\n };\n switch (type) {\n case \"regular\": {\n const { tools, tool_choice, toolWarnings } = prepareTools({\n mode,\n structuredOutputs: this.supportsStructuredOutputs\n });\n return {\n args: { ...baseArgs, tools, tool_choice },\n warnings: [...warnings, ...toolWarnings]\n };\n }\n case \"object-json\": {\n return {\n args: {\n ...baseArgs,\n response_format: this.supportsStructuredOutputs === true && mode.schema != null ? {\n type: \"json_schema\",\n json_schema: {\n schema: mode.schema,\n name: (_e = mode.name) != null ? _e : \"response\",\n description: mode.description\n }\n } : { type: \"json_object\" }\n },\n warnings\n };\n }\n case \"object-tool\": {\n return {\n args: {\n ...baseArgs,\n tool_choice: {\n type: \"function\",\n function: { name: mode.tool.name }\n },\n tools: [\n {\n type: \"function\",\n function: {\n name: mode.tool.name,\n description: mode.tool.description,\n parameters: mode.tool.parameters\n }\n }\n ]\n },\n warnings\n };\n }\n default: {\n const _exhaustiveCheck = type;\n throw new Error(`Unsupported type: ${_exhaustiveCheck}`);\n }\n }\n }\n async doGenerate(options) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;\n const { args, warnings } = this.getArgs({ ...options });\n const body = JSON.stringify(args);\n const {\n responseHeaders,\n value: responseBody,\n rawValue: rawResponse\n } = await postJsonToApi({\n url: this.config.url({\n path: \"/chat/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body: args,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n OpenAICompatibleChatResponseSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const { messages: rawPrompt, ...rawSettings } = args;\n const choice = responseBody.choices[0];\n const providerMetadata = {\n [this.providerOptionsName]: {},\n ...(_b = (_a = this.config.metadataExtractor) == null ? void 0 : _a.extractMetadata) == null ? void 0 : _b.call(_a, {\n parsedBody: rawResponse\n })\n };\n const completionTokenDetails = (_c = responseBody.usage) == null ? void 0 : _c.completion_tokens_details;\n const promptTokenDetails = (_d = responseBody.usage) == null ? void 0 : _d.prompt_tokens_details;\n if ((completionTokenDetails == null ? void 0 : completionTokenDetails.reasoning_tokens) != null) {\n providerMetadata[this.providerOptionsName].reasoningTokens = completionTokenDetails == null ? void 0 : completionTokenDetails.reasoning_tokens;\n }\n if ((completionTokenDetails == null ? void 0 : completionTokenDetails.accepted_prediction_tokens) != null) {\n providerMetadata[this.providerOptionsName].acceptedPredictionTokens = completionTokenDetails == null ? void 0 : completionTokenDetails.accepted_prediction_tokens;\n }\n if ((completionTokenDetails == null ? void 0 : completionTokenDetails.rejected_prediction_tokens) != null) {\n providerMetadata[this.providerOptionsName].rejectedPredictionTokens = completionTokenDetails == null ? void 0 : completionTokenDetails.rejected_prediction_tokens;\n }\n if ((promptTokenDetails == null ? void 0 : promptTokenDetails.cached_tokens) != null) {\n providerMetadata[this.providerOptionsName].cachedPromptTokens = promptTokenDetails == null ? void 0 : promptTokenDetails.cached_tokens;\n }\n return {\n text: (_e = choice.message.content) != null ? _e : void 0,\n reasoning: (_f = choice.message.reasoning_content) != null ? _f : void 0,\n toolCalls: (_g = choice.message.tool_calls) == null ? void 0 : _g.map((toolCall) => {\n var _a2;\n return {\n toolCallType: \"function\",\n toolCallId: (_a2 = toolCall.id) != null ? _a2 : generateId(),\n toolName: toolCall.function.name,\n args: toolCall.function.arguments\n };\n }),\n finishReason: mapOpenAICompatibleFinishReason(choice.finish_reason),\n usage: {\n promptTokens: (_i = (_h = responseBody.usage) == null ? void 0 : _h.prompt_tokens) != null ? _i : NaN,\n completionTokens: (_k = (_j = responseBody.usage) == null ? void 0 : _j.completion_tokens) != null ? _k : NaN\n },\n providerMetadata,\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders, body: rawResponse },\n response: getResponseMetadata(responseBody),\n warnings,\n request: { body }\n };\n }\n async doStream(options) {\n var _a;\n if (this.settings.simulateStreaming) {\n const result = await this.doGenerate(options);\n const simulatedStream = new ReadableStream({\n start(controller) {\n controller.enqueue({ type: \"response-metadata\", ...result.response });\n if (result.reasoning) {\n if (Array.isArray(result.reasoning)) {\n for (const part of result.reasoning) {\n if (part.type === \"text\") {\n controller.enqueue({\n type: \"reasoning\",\n textDelta: part.text\n });\n }\n }\n } else {\n controller.enqueue({\n type: \"reasoning\",\n textDelta: result.reasoning\n });\n }\n }\n if (result.text) {\n controller.enqueue({\n type: \"text-delta\",\n textDelta: result.text\n });\n }\n if (result.toolCalls) {\n for (const toolCall of result.toolCalls) {\n controller.enqueue({\n type: \"tool-call\",\n ...toolCall\n });\n }\n }\n controller.enqueue({\n type: \"finish\",\n finishReason: result.finishReason,\n usage: result.usage,\n logprobs: result.logprobs,\n providerMetadata: result.providerMetadata\n });\n controller.close();\n }\n });\n return {\n stream: simulatedStream,\n rawCall: result.rawCall,\n rawResponse: result.rawResponse,\n warnings: result.warnings\n };\n }\n const { args, warnings } = this.getArgs({ ...options });\n const body = {\n ...args,\n stream: true,\n // only include stream_options when in strict compatibility mode:\n stream_options: this.config.includeUsage ? { include_usage: true } : void 0\n };\n const metadataExtractor = (_a = this.config.metadataExtractor) == null ? void 0 : _a.createStreamExtractor();\n const { responseHeaders, value: response } = await postJsonToApi({\n url: this.config.url({\n path: \"/chat/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler(\n this.chunkSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const { messages: rawPrompt, ...rawSettings } = args;\n const toolCalls = [];\n let finishReason = \"unknown\";\n let usage = {\n completionTokens: void 0,\n completionTokensDetails: {\n reasoningTokens: void 0,\n acceptedPredictionTokens: void 0,\n rejectedPredictionTokens: void 0\n },\n promptTokens: void 0,\n promptTokensDetails: {\n cachedTokens: void 0\n }\n };\n let isFirstChunk = true;\n let providerOptionsName = this.providerOptionsName;\n return {\n stream: response.pipeThrough(\n new TransformStream({\n // TODO we lost type safety on Chunk, most likely due to the error schema. MUST FIX\n transform(chunk, controller) {\n var _a2, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;\n if (!chunk.success) {\n finishReason = \"error\";\n controller.enqueue({ type: \"error\", error: chunk.error });\n return;\n }\n const value = chunk.value;\n metadataExtractor == null ? void 0 : metadataExtractor.processChunk(chunk.rawValue);\n if (\"error\" in value) {\n finishReason = \"error\";\n controller.enqueue({ type: \"error\", error: value.error.message });\n return;\n }\n if (isFirstChunk) {\n isFirstChunk = false;\n controller.enqueue({\n type: \"response-metadata\",\n ...getResponseMetadata(value)\n });\n }\n if (value.usage != null) {\n const {\n prompt_tokens,\n completion_tokens,\n prompt_tokens_details,\n completion_tokens_details\n } = value.usage;\n usage.promptTokens = prompt_tokens != null ? prompt_tokens : void 0;\n usage.completionTokens = completion_tokens != null ? completion_tokens : void 0;\n if ((completion_tokens_details == null ? void 0 : completion_tokens_details.reasoning_tokens) != null) {\n usage.completionTokensDetails.reasoningTokens = completion_tokens_details == null ? void 0 : completion_tokens_details.reasoning_tokens;\n }\n if ((completion_tokens_details == null ? void 0 : completion_tokens_details.accepted_prediction_tokens) != null) {\n usage.completionTokensDetails.acceptedPredictionTokens = completion_tokens_details == null ? void 0 : completion_tokens_details.accepted_prediction_tokens;\n }\n if ((completion_tokens_details == null ? void 0 : completion_tokens_details.rejected_prediction_tokens) != null) {\n usage.completionTokensDetails.rejectedPredictionTokens = completion_tokens_details == null ? void 0 : completion_tokens_details.rejected_prediction_tokens;\n }\n if ((prompt_tokens_details == null ? void 0 : prompt_tokens_details.cached_tokens) != null) {\n usage.promptTokensDetails.cachedTokens = prompt_tokens_details == null ? void 0 : prompt_tokens_details.cached_tokens;\n }\n }\n const choice = value.choices[0];\n if ((choice == null ? void 0 : choice.finish_reason) != null) {\n finishReason = mapOpenAICompatibleFinishReason(\n choice.finish_reason\n );\n }\n if ((choice == null ? void 0 : choice.delta) == null) {\n return;\n }\n const delta = choice.delta;\n if (delta.reasoning_content != null) {\n controller.enqueue({\n type: \"reasoning\",\n textDelta: delta.reasoning_content\n });\n }\n if (delta.content != null) {\n controller.enqueue({\n type: \"text-delta\",\n textDelta: delta.content\n });\n }\n if (delta.tool_calls != null) {\n for (const toolCallDelta of delta.tool_calls) {\n const index = toolCallDelta.index;\n if (toolCalls[index] == null) {\n if (toolCallDelta.type !== \"function\") {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'function' type.`\n });\n }\n if (toolCallDelta.id == null) {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'id' to be a string.`\n });\n }\n if (((_a2 = toolCallDelta.function) == null ? void 0 : _a2.name) == null) {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'function.name' to be a string.`\n });\n }\n toolCalls[index] = {\n id: toolCallDelta.id,\n type: \"function\",\n function: {\n name: toolCallDelta.function.name,\n arguments: (_b = toolCallDelta.function.arguments) != null ? _b : \"\"\n },\n hasFinished: false\n };\n const toolCall2 = toolCalls[index];\n if (((_c = toolCall2.function) == null ? void 0 : _c.name) != null && ((_d = toolCall2.function) == null ? void 0 : _d.arguments) != null) {\n if (toolCall2.function.arguments.length > 0) {\n controller.enqueue({\n type: \"tool-call-delta\",\n toolCallType: \"function\",\n toolCallId: toolCall2.id,\n toolName: toolCall2.function.name,\n argsTextDelta: toolCall2.function.arguments\n });\n }\n if (isParsableJson(toolCall2.function.arguments)) {\n controller.enqueue({\n type: \"tool-call\",\n toolCallType: \"function\",\n toolCallId: (_e = toolCall2.id) != null ? _e : generateId(),\n toolName: toolCall2.function.name,\n args: toolCall2.function.arguments\n });\n toolCall2.hasFinished = true;\n }\n }\n continue;\n }\n const toolCall = toolCalls[index];\n if (toolCall.hasFinished) {\n continue;\n }\n if (((_f = toolCallDelta.function) == null ? void 0 : _f.arguments) != null) {\n toolCall.function.arguments += (_h = (_g = toolCallDelta.function) == null ? void 0 : _g.arguments) != null ? _h : \"\";\n }\n controller.enqueue({\n type: \"tool-call-delta\",\n toolCallType: \"function\",\n toolCallId: toolCall.id,\n toolName: toolCall.function.name,\n argsTextDelta: (_i = toolCallDelta.function.arguments) != null ? _i : \"\"\n });\n if (((_j = toolCall.function) == null ? void 0 : _j.name) != null && ((_k = toolCall.function) == null ? void 0 : _k.arguments) != null && isParsableJson(toolCall.function.arguments)) {\n controller.enqueue({\n type: \"tool-call\",\n toolCallType: \"function\",\n toolCallId: (_l = toolCall.id) != null ? _l : generateId(),\n toolName: toolCall.function.name,\n args: toolCall.function.arguments\n });\n toolCall.hasFinished = true;\n }\n }\n }\n },\n flush(controller) {\n var _a2, _b;\n const providerMetadata = {\n [providerOptionsName]: {},\n ...metadataExtractor == null ? void 0 : metadataExtractor.buildMetadata()\n };\n if (usage.completionTokensDetails.reasoningTokens != null) {\n providerMetadata[providerOptionsName].reasoningTokens = usage.completionTokensDetails.reasoningTokens;\n }\n if (usage.completionTokensDetails.acceptedPredictionTokens != null) {\n providerMetadata[providerOptionsName].acceptedPredictionTokens = usage.completionTokensDetails.acceptedPredictionTokens;\n }\n if (usage.completionTokensDetails.rejectedPredictionTokens != null) {\n providerMetadata[providerOptionsName].rejectedPredictionTokens = usage.completionTokensDetails.rejectedPredictionTokens;\n }\n if (usage.promptTokensDetails.cachedTokens != null) {\n providerMetadata[providerOptionsName].cachedPromptTokens = usage.promptTokensDetails.cachedTokens;\n }\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage: {\n promptTokens: (_a2 = usage.promptTokens) != null ? _a2 : NaN,\n completionTokens: (_b = usage.completionTokens) != null ? _b : NaN\n },\n providerMetadata\n });\n }\n })\n ),\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders },\n warnings,\n request: { body: JSON.stringify(body) }\n };\n }\n};\nvar openaiCompatibleTokenUsageSchema = z2.object({\n prompt_tokens: z2.number().nullish(),\n completion_tokens: z2.number().nullish(),\n prompt_tokens_details: z2.object({\n cached_tokens: z2.number().nullish()\n }).nullish(),\n completion_tokens_details: z2.object({\n reasoning_tokens: z2.number().nullish(),\n accepted_prediction_tokens: z2.number().nullish(),\n rejected_prediction_tokens: z2.number().nullish()\n }).nullish()\n}).nullish();\nvar OpenAICompatibleChatResponseSchema = z2.object({\n id: z2.string().nullish(),\n created: z2.number().nullish(),\n model: z2.string().nullish(),\n choices: z2.array(\n z2.object({\n message: z2.object({\n role: z2.literal(\"assistant\").nullish(),\n content: z2.string().nullish(),\n reasoning_content: z2.string().nullish(),\n tool_calls: z2.array(\n z2.object({\n id: z2.string().nullish(),\n type: z2.literal(\"function\"),\n function: z2.object({\n name: z2.string(),\n arguments: z2.string()\n })\n })\n ).nullish()\n }),\n finish_reason: z2.string().nullish()\n })\n ),\n usage: openaiCompatibleTokenUsageSchema\n});\nvar createOpenAICompatibleChatChunkSchema = (errorSchema) => z2.union([\n z2.object({\n id: z2.string().nullish(),\n created: z2.number().nullish(),\n model: z2.string().nullish(),\n choices: z2.array(\n z2.object({\n delta: z2.object({\n role: z2.enum([\"assistant\"]).nullish(),\n content: z2.string().nullish(),\n reasoning_content: z2.string().nullish(),\n tool_calls: z2.array(\n z2.object({\n index: z2.number().optional(),\n id: z2.string().nullish(),\n type: z2.literal(\"function\").nullish(),\n function: z2.object({\n name: z2.string().nullish(),\n arguments: z2.string().nullish()\n })\n })\n ).nullish()\n }).nullish(),\n finish_reason: z2.string().nullish()\n })\n ),\n usage: openaiCompatibleTokenUsageSchema\n }),\n errorSchema\n]);\n\n// src/openai-compatible-completion-language-model.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError4\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders2,\n createEventSourceResponseHandler as createEventSourceResponseHandler2,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler2,\n createJsonResponseHandler as createJsonResponseHandler2,\n postJsonToApi as postJsonToApi2\n} from \"@ai-sdk/provider-utils\";\nimport { z as z3 } from \"zod\";\n\n// src/convert-to-openai-compatible-completion-prompt.ts\nimport {\n InvalidPromptError,\n UnsupportedFunctionalityError as UnsupportedFunctionalityError3\n} from \"@ai-sdk/provider\";\nfunction convertToOpenAICompatibleCompletionPrompt({\n prompt,\n inputFormat,\n user = \"user\",\n assistant = \"assistant\"\n}) {\n if (inputFormat === \"prompt\" && prompt.length === 1 && prompt[0].role === \"user\" && prompt[0].content.length === 1 && prompt[0].content[0].type === \"text\") {\n return { prompt: prompt[0].content[0].text };\n }\n let text = \"\";\n if (prompt[0].role === \"system\") {\n text += `${prompt[0].content}\n\n`;\n prompt = prompt.slice(1);\n }\n for (const { role, content } of prompt) {\n switch (role) {\n case \"system\": {\n throw new InvalidPromptError({\n message: \"Unexpected system message in prompt: ${content}\",\n prompt\n });\n }\n case \"user\": {\n const userMessage = content.map((part) => {\n switch (part.type) {\n case \"text\": {\n return part.text;\n }\n case \"image\": {\n throw new UnsupportedFunctionalityError3({\n functionality: \"images\"\n });\n }\n }\n }).join(\"\");\n text += `${user}:\n${userMessage}\n\n`;\n break;\n }\n case \"assistant\": {\n const assistantMessage = content.map((part) => {\n switch (part.type) {\n case \"text\": {\n return part.text;\n }\n case \"tool-call\": {\n throw new UnsupportedFunctionalityError3({\n functionality: \"tool-call messages\"\n });\n }\n }\n }).join(\"\");\n text += `${assistant}:\n${assistantMessage}\n\n`;\n break;\n }\n case \"tool\": {\n throw new UnsupportedFunctionalityError3({\n functionality: \"tool messages\"\n });\n }\n default: {\n const _exhaustiveCheck = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n text += `${assistant}:\n`;\n return {\n prompt: text,\n stopSequences: [`\n${user}:`]\n };\n}\n\n// src/openai-compatible-completion-language-model.ts\nvar OpenAICompatibleCompletionLanguageModel = class {\n // type inferred via constructor\n constructor(modelId, settings, config) {\n this.specificationVersion = \"v1\";\n this.defaultObjectGenerationMode = void 0;\n var _a;\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n const errorStructure = (_a = config.errorStructure) != null ? _a : defaultOpenAICompatibleErrorStructure;\n this.chunkSchema = createOpenAICompatibleCompletionChunkSchema(\n errorStructure.errorSchema\n );\n this.failedResponseHandler = createJsonErrorResponseHandler2(errorStructure);\n }\n get provider() {\n return this.config.provider;\n }\n get providerOptionsName() {\n return this.config.provider.split(\".\")[0].trim();\n }\n getArgs({\n mode,\n inputFormat,\n prompt,\n maxTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n stopSequences: userStopSequences,\n responseFormat,\n seed,\n providerMetadata\n }) {\n var _a;\n const type = mode.type;\n const warnings = [];\n if (topK != null) {\n warnings.push({\n type: \"unsupported-setting\",\n setting: \"topK\"\n });\n }\n if (responseFormat != null && responseFormat.type !== \"text\") {\n warnings.push({\n type: \"unsupported-setting\",\n setting: \"responseFormat\",\n details: \"JSON response format is not supported.\"\n });\n }\n const { prompt: completionPrompt, stopSequences } = convertToOpenAICompatibleCompletionPrompt({ prompt, inputFormat });\n const stop = [...stopSequences != null ? stopSequences : [], ...userStopSequences != null ? userStopSequences : []];\n const baseArgs = {\n // model id:\n model: this.modelId,\n // model specific settings:\n echo: this.settings.echo,\n logit_bias: this.settings.logitBias,\n suffix: this.settings.suffix,\n user: this.settings.user,\n // standardized settings:\n max_tokens: maxTokens,\n temperature,\n top_p: topP,\n frequency_penalty: frequencyPenalty,\n presence_penalty: presencePenalty,\n seed,\n ...providerMetadata == null ? void 0 : providerMetadata[this.providerOptionsName],\n // prompt:\n prompt: completionPrompt,\n // stop sequences:\n stop: stop.length > 0 ? stop : void 0\n };\n switch (type) {\n case \"regular\": {\n if ((_a = mode.tools) == null ? void 0 : _a.length) {\n throw new UnsupportedFunctionalityError4({\n functionality: \"tools\"\n });\n }\n if (mode.toolChoice) {\n throw new UnsupportedFunctionalityError4({\n functionality: \"toolChoice\"\n });\n }\n return { args: baseArgs, warnings };\n }\n case \"object-json\": {\n throw new UnsupportedFunctionalityError4({\n functionality: \"object-json mode\"\n });\n }\n case \"object-tool\": {\n throw new UnsupportedFunctionalityError4({\n functionality: \"object-tool mode\"\n });\n }\n default: {\n const _exhaustiveCheck = type;\n throw new Error(`Unsupported type: ${_exhaustiveCheck}`);\n }\n }\n }\n async doGenerate(options) {\n var _a, _b, _c, _d;\n const { args, warnings } = this.getArgs(options);\n const {\n responseHeaders,\n value: response,\n rawValue: rawResponse\n } = await postJsonToApi2({\n url: this.config.url({\n path: \"/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders2(this.config.headers(), options.headers),\n body: args,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler2(\n openaiCompatibleCompletionResponseSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const { prompt: rawPrompt, ...rawSettings } = args;\n const choice = response.choices[0];\n return {\n text: choice.text,\n usage: {\n promptTokens: (_b = (_a = response.usage) == null ? void 0 : _a.prompt_tokens) != null ? _b : NaN,\n completionTokens: (_d = (_c = response.usage) == null ? void 0 : _c.completion_tokens) != null ? _d : NaN\n },\n finishReason: mapOpenAICompatibleFinishReason(choice.finish_reason),\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders, body: rawResponse },\n response: getResponseMetadata(response),\n warnings,\n request: { body: JSON.stringify(args) }\n };\n }\n async doStream(options) {\n const { args, warnings } = this.getArgs(options);\n const body = {\n ...args,\n stream: true,\n // only include stream_options when in strict compatibility mode:\n stream_options: this.config.includeUsage ? { include_usage: true } : void 0\n };\n const { responseHeaders, value: response } = await postJsonToApi2({\n url: this.config.url({\n path: \"/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders2(this.config.headers(), options.headers),\n body,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler2(\n this.chunkSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const { prompt: rawPrompt, ...rawSettings } = args;\n let finishReason = \"unknown\";\n let usage = {\n promptTokens: Number.NaN,\n completionTokens: Number.NaN\n };\n let isFirstChunk = true;\n return {\n stream: response.pipeThrough(\n new TransformStream({\n transform(chunk, controller) {\n if (!chunk.success) {\n finishReason = \"error\";\n controller.enqueue({ type: \"error\", error: chunk.error });\n return;\n }\n const value = chunk.value;\n if (\"error\" in value) {\n finishReason = \"error\";\n controller.enqueue({ type: \"error\", error: value.error });\n return;\n }\n if (isFirstChunk) {\n isFirstChunk = false;\n controller.enqueue({\n type: \"response-metadata\",\n ...getResponseMetadata(value)\n });\n }\n if (value.usage != null) {\n usage = {\n promptTokens: value.usage.prompt_tokens,\n completionTokens: value.usage.completion_tokens\n };\n }\n const choice = value.choices[0];\n if ((choice == null ? void 0 : choice.finish_reason) != null) {\n finishReason = mapOpenAICompatibleFinishReason(\n choice.finish_reason\n );\n }\n if ((choice == null ? void 0 : choice.text) != null) {\n controller.enqueue({\n type: \"text-delta\",\n textDelta: choice.text\n });\n }\n },\n flush(controller) {\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage\n });\n }\n })\n ),\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders },\n warnings,\n request: { body: JSON.stringify(body) }\n };\n }\n};\nvar openaiCompatibleCompletionResponseSchema = z3.object({\n id: z3.string().nullish(),\n created: z3.number().nullish(),\n model: z3.string().nullish(),\n choices: z3.array(\n z3.object({\n text: z3.string(),\n finish_reason: z3.string()\n })\n ),\n usage: z3.object({\n prompt_tokens: z3.number(),\n completion_tokens: z3.number()\n }).nullish()\n});\nvar createOpenAICompatibleCompletionChunkSchema = (errorSchema) => z3.union([\n z3.object({\n id: z3.string().nullish(),\n created: z3.number().nullish(),\n model: z3.string().nullish(),\n choices: z3.array(\n z3.object({\n text: z3.string(),\n finish_reason: z3.string().nullish(),\n index: z3.number()\n })\n ),\n usage: z3.object({\n prompt_tokens: z3.number(),\n completion_tokens: z3.number()\n }).nullish()\n }),\n errorSchema\n]);\n\n// src/openai-compatible-embedding-model.ts\nimport {\n TooManyEmbeddingValuesForCallError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders3,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler3,\n createJsonResponseHandler as createJsonResponseHandler3,\n postJsonToApi as postJsonToApi3\n} from \"@ai-sdk/provider-utils\";\nimport { z as z4 } from \"zod\";\nvar OpenAICompatibleEmbeddingModel = class {\n constructor(modelId, settings, config) {\n this.specificationVersion = \"v1\";\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n get provider() {\n return this.config.provider;\n }\n get maxEmbeddingsPerCall() {\n var _a;\n return (_a = this.config.maxEmbeddingsPerCall) != null ? _a : 2048;\n }\n get supportsParallelCalls() {\n var _a;\n return (_a = this.config.supportsParallelCalls) != null ? _a : true;\n }\n async doEmbed({\n values,\n headers,\n abortSignal\n }) {\n var _a;\n if (values.length > this.maxEmbeddingsPerCall) {\n throw new TooManyEmbeddingValuesForCallError({\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values\n });\n }\n const { responseHeaders, value: response } = await postJsonToApi3({\n url: this.config.url({\n path: \"/embeddings\",\n modelId: this.modelId\n }),\n headers: combineHeaders3(this.config.headers(), headers),\n body: {\n model: this.modelId,\n input: values,\n encoding_format: \"float\",\n dimensions: this.settings.dimensions,\n user: this.settings.user\n },\n failedResponseHandler: createJsonErrorResponseHandler3(\n (_a = this.config.errorStructure) != null ? _a : defaultOpenAICompatibleErrorStructure\n ),\n successfulResponseHandler: createJsonResponseHandler3(\n openaiTextEmbeddingResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n embeddings: response.data.map((item) => item.embedding),\n usage: response.usage ? { tokens: response.usage.prompt_tokens } : void 0,\n rawResponse: { headers: responseHeaders }\n };\n }\n};\nvar openaiTextEmbeddingResponseSchema = z4.object({\n data: z4.array(z4.object({ embedding: z4.array(z4.number()) })),\n usage: z4.object({ prompt_tokens: z4.number() }).nullish()\n});\n\n// src/openai-compatible-image-model.ts\nimport {\n combineHeaders as combineHeaders4,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler4,\n createJsonResponseHandler as createJsonResponseHandler4,\n postJsonToApi as postJsonToApi4\n} from \"@ai-sdk/provider-utils\";\nimport { z as z5 } from \"zod\";\nvar OpenAICompatibleImageModel = class {\n constructor(modelId, settings, config) {\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n this.specificationVersion = \"v1\";\n }\n get maxImagesPerCall() {\n var _a;\n return (_a = this.settings.maxImagesPerCall) != null ? _a : 10;\n }\n get provider() {\n return this.config.provider;\n }\n async doGenerate({\n prompt,\n n,\n size,\n aspectRatio,\n seed,\n providerOptions,\n headers,\n abortSignal\n }) {\n var _a, _b, _c, _d, _e;\n const warnings = [];\n if (aspectRatio != null) {\n warnings.push({\n type: \"unsupported-setting\",\n setting: \"aspectRatio\",\n details: \"This model does not support aspect ratio. Use `size` instead.\"\n });\n }\n if (seed != null) {\n warnings.push({ type: \"unsupported-setting\", setting: \"seed\" });\n }\n const currentDate = (_c = (_b = (_a = this.config._internal) == null ? void 0 : _a.currentDate) == null ? void 0 : _b.call(_a)) != null ? _c : /* @__PURE__ */ new Date();\n const { value: response, responseHeaders } = await postJsonToApi4({\n url: this.config.url({\n path: \"/images/generations\",\n modelId: this.modelId\n }),\n headers: combineHeaders4(this.config.headers(), headers),\n body: {\n model: this.modelId,\n prompt,\n n,\n size,\n ...(_d = providerOptions.openai) != null ? _d : {},\n response_format: \"b64_json\",\n ...this.settings.user ? { user: this.settings.user } : {}\n },\n failedResponseHandler: createJsonErrorResponseHandler4(\n (_e = this.config.errorStructure) != null ? _e : defaultOpenAICompatibleErrorStructure\n ),\n successfulResponseHandler: createJsonResponseHandler4(\n openaiCompatibleImageResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n images: response.data.map((item) => item.b64_json),\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders\n }\n };\n }\n};\nvar openaiCompatibleImageResponseSchema = z5.object({\n data: z5.array(z5.object({ b64_json: z5.string() }))\n});\n\n// src/openai-compatible-provider.ts\nimport { withoutTrailingSlash } from \"@ai-sdk/provider-utils\";\nfunction createOpenAICompatible(options) {\n const baseURL = withoutTrailingSlash(options.baseURL);\n const providerName = options.name;\n const getHeaders = () => ({\n ...options.apiKey && { Authorization: `Bearer ${options.apiKey}` },\n ...options.headers\n });\n const getCommonModelConfig = (modelType) => ({\n provider: `${providerName}.${modelType}`,\n url: ({ path }) => {\n const url = new URL(`${baseURL}${path}`);\n if (options.queryParams) {\n url.search = new URLSearchParams(options.queryParams).toString();\n }\n return url.toString();\n },\n headers: getHeaders,\n fetch: options.fetch\n });\n const createLanguageModel = (modelId, settings = {}, config) => createChatModel(modelId, settings, config);\n const createChatModel = (modelId, settings = {}, config) => new OpenAICompatibleChatLanguageModel(modelId, settings, {\n ...getCommonModelConfig(\"chat\"),\n defaultObjectGenerationMode: \"tool\",\n ...config\n });\n const createCompletionModel = (modelId, settings = {}) => new OpenAICompatibleCompletionLanguageModel(\n modelId,\n settings,\n getCommonModelConfig(\"completion\")\n );\n const createEmbeddingModel = (modelId, settings = {}) => new OpenAICompatibleEmbeddingModel(\n modelId,\n settings,\n getCommonModelConfig(\"embedding\")\n );\n const createImageModel = (modelId, settings = {}) => new OpenAICompatibleImageModel(\n modelId,\n settings,\n getCommonModelConfig(\"image\")\n );\n const provider = (modelId, settings, config) => createLanguageModel(modelId, settings, config);\n provider.languageModel = createLanguageModel;\n provider.chatModel = createChatModel;\n provider.completionModel = createCompletionModel;\n provider.textEmbeddingModel = createEmbeddingModel;\n provider.imageModel = createImageModel;\n return provider;\n}\nexport {\n OpenAICompatibleChatLanguageModel,\n OpenAICompatibleCompletionLanguageModel,\n OpenAICompatibleEmbeddingModel,\n OpenAICompatibleImageModel,\n createOpenAICompatible\n};\n//# sourceMappingURL=index.mjs.map","// src/xai-provider.ts\nimport {\n NoSuchModelError\n} from \"@ai-sdk/provider\";\nimport {\n OpenAICompatibleChatLanguageModel,\n OpenAICompatibleImageModel\n} from \"@ai-sdk/openai-compatible\";\nimport {\n loadApiKey,\n withoutTrailingSlash\n} from \"@ai-sdk/provider-utils\";\n\n// src/xai-chat-settings.ts\nfunction supportsStructuredOutputs(modelId) {\n return [\n \"grok-3\",\n \"grok-3-beta\",\n \"grok-3-latest\",\n \"grok-3-fast\",\n \"grok-3-fast-beta\",\n \"grok-3-fast-latest\",\n \"grok-3-mini\",\n \"grok-3-mini-beta\",\n \"grok-3-mini-latest\",\n \"grok-3-mini-fast\",\n \"grok-3-mini-fast-beta\",\n \"grok-3-mini-fast-latest\",\n \"grok-2-1212\",\n \"grok-2-vision-1212\"\n ].includes(modelId);\n}\n\n// src/xai-error.ts\nimport { z } from \"zod\";\nvar xaiErrorSchema = z.object({\n code: z.string(),\n error: z.string()\n});\n\n// src/xai-provider.ts\nvar xaiErrorStructure = {\n errorSchema: xaiErrorSchema,\n errorToMessage: (data) => data.error\n};\nfunction createXai(options = {}) {\n var _a;\n const baseURL = withoutTrailingSlash(\n (_a = options.baseURL) != null ? _a : \"https://api.x.ai/v1\"\n );\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: \"XAI_API_KEY\",\n description: \"xAI API key\"\n })}`,\n ...options.headers\n });\n const createLanguageModel = (modelId, settings = {}) => {\n const structuredOutputs = supportsStructuredOutputs(modelId);\n return new OpenAICompatibleChatLanguageModel(modelId, settings, {\n provider: \"xai.chat\",\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n defaultObjectGenerationMode: structuredOutputs ? \"json\" : \"tool\",\n errorStructure: xaiErrorStructure,\n supportsStructuredOutputs: structuredOutputs,\n includeUsage: true\n });\n };\n const createImageModel = (modelId, settings = {}) => {\n return new OpenAICompatibleImageModel(modelId, settings, {\n provider: \"xai.image\",\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n errorStructure: xaiErrorStructure\n });\n };\n const provider = (modelId, settings) => createLanguageModel(modelId, settings);\n provider.languageModel = createLanguageModel;\n provider.chat = createLanguageModel;\n provider.textEmbeddingModel = (modelId) => {\n throw new NoSuchModelError({ modelId, modelType: \"textEmbeddingModel\" });\n };\n provider.imageModel = createImageModel;\n provider.image = createImageModel;\n return provider;\n}\nvar xai = createXai();\nexport {\n createXai,\n xai\n};\n//# sourceMappingURL=index.mjs.map"],"x_google_ignoreList":[0,1],"mappings":"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"}
1
+ {"version":3,"file":"dist-Da8AufS5.js","names":["_exhaustiveCheck","z","UnsupportedFunctionalityError2","z2","z3","z4","postJsonToApi4","combineHeaders4","createJsonErrorResponseHandler4","createJsonResponseHandler4","z5","z"],"sources":["../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/openai-compatible/0.2.16/63d67b12d91b4b6d70e19e8f5de070192c46e48fc7e6530421aaae42ee391469/node_modules/@ai-sdk/openai-compatible/dist/index.mjs","../../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@ai-sdk/xai/1.2.18/4b387f8ddda90c6e0e48380d23aa5eb65b6709f617e7bbfdcfe33ab276c620ff/node_modules/@ai-sdk/xai/dist/index.mjs"],"sourcesContent":["// src/openai-compatible-chat-language-model.ts\nimport {\n InvalidResponseDataError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonErrorResponseHandler,\n createJsonResponseHandler,\n generateId,\n isParsableJson,\n postJsonToApi\n} from \"@ai-sdk/provider-utils\";\nimport { z as z2 } from \"zod\";\n\n// src/convert-to-openai-compatible-chat-messages.ts\nimport {\n UnsupportedFunctionalityError\n} from \"@ai-sdk/provider\";\nimport { convertUint8ArrayToBase64 } from \"@ai-sdk/provider-utils\";\nfunction getOpenAIMetadata(message) {\n var _a, _b;\n return (_b = (_a = message == null ? void 0 : message.providerMetadata) == null ? void 0 : _a.openaiCompatible) != null ? _b : {};\n}\nfunction convertToOpenAICompatibleChatMessages(prompt) {\n const messages = [];\n for (const { role, content, ...message } of prompt) {\n const metadata = getOpenAIMetadata({ ...message });\n switch (role) {\n case \"system\": {\n messages.push({ role: \"system\", content, ...metadata });\n break;\n }\n case \"user\": {\n if (content.length === 1 && content[0].type === \"text\") {\n messages.push({\n role: \"user\",\n content: content[0].text,\n ...getOpenAIMetadata(content[0])\n });\n break;\n }\n messages.push({\n role: \"user\",\n content: content.map((part) => {\n var _a;\n const partMetadata = getOpenAIMetadata(part);\n switch (part.type) {\n case \"text\": {\n return { type: \"text\", text: part.text, ...partMetadata };\n }\n case \"image\": {\n return {\n type: \"image_url\",\n image_url: {\n url: part.image instanceof URL ? part.image.toString() : `data:${(_a = part.mimeType) != null ? _a : \"image/jpeg\"};base64,${convertUint8ArrayToBase64(part.image)}`\n },\n ...partMetadata\n };\n }\n case \"file\": {\n throw new UnsupportedFunctionalityError({\n functionality: \"File content parts in user messages\"\n });\n }\n }\n }),\n ...metadata\n });\n break;\n }\n case \"assistant\": {\n let text = \"\";\n const toolCalls = [];\n for (const part of content) {\n const partMetadata = getOpenAIMetadata(part);\n switch (part.type) {\n case \"text\": {\n text += part.text;\n break;\n }\n case \"tool-call\": {\n toolCalls.push({\n id: part.toolCallId,\n type: \"function\",\n function: {\n name: part.toolName,\n arguments: JSON.stringify(part.args)\n },\n ...partMetadata\n });\n break;\n }\n }\n }\n messages.push({\n role: \"assistant\",\n content: text,\n tool_calls: toolCalls.length > 0 ? toolCalls : void 0,\n ...metadata\n });\n break;\n }\n case \"tool\": {\n for (const toolResponse of content) {\n const toolResponseMetadata = getOpenAIMetadata(toolResponse);\n messages.push({\n role: \"tool\",\n tool_call_id: toolResponse.toolCallId,\n content: JSON.stringify(toolResponse.result),\n ...toolResponseMetadata\n });\n }\n break;\n }\n default: {\n const _exhaustiveCheck = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n return messages;\n}\n\n// src/get-response-metadata.ts\nfunction getResponseMetadata({\n id,\n model,\n created\n}) {\n return {\n id: id != null ? id : void 0,\n modelId: model != null ? model : void 0,\n timestamp: created != null ? new Date(created * 1e3) : void 0\n };\n}\n\n// src/map-openai-compatible-finish-reason.ts\nfunction mapOpenAICompatibleFinishReason(finishReason) {\n switch (finishReason) {\n case \"stop\":\n return \"stop\";\n case \"length\":\n return \"length\";\n case \"content_filter\":\n return \"content-filter\";\n case \"function_call\":\n case \"tool_calls\":\n return \"tool-calls\";\n default:\n return \"unknown\";\n }\n}\n\n// src/openai-compatible-error.ts\nimport { z } from \"zod\";\nvar openaiCompatibleErrorDataSchema = z.object({\n error: z.object({\n message: z.string(),\n // The additional information below is handled loosely to support\n // OpenAI-compatible providers that have slightly different error\n // responses:\n type: z.string().nullish(),\n param: z.any().nullish(),\n code: z.union([z.string(), z.number()]).nullish()\n })\n});\nvar defaultOpenAICompatibleErrorStructure = {\n errorSchema: openaiCompatibleErrorDataSchema,\n errorToMessage: (data) => data.error.message\n};\n\n// src/openai-compatible-prepare-tools.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError2\n} from \"@ai-sdk/provider\";\nfunction prepareTools({\n mode,\n structuredOutputs\n}) {\n var _a;\n const tools = ((_a = mode.tools) == null ? void 0 : _a.length) ? mode.tools : void 0;\n const toolWarnings = [];\n if (tools == null) {\n return { tools: void 0, tool_choice: void 0, toolWarnings };\n }\n const toolChoice = mode.toolChoice;\n const openaiCompatTools = [];\n for (const tool of tools) {\n if (tool.type === \"provider-defined\") {\n toolWarnings.push({ type: \"unsupported-tool\", tool });\n } else {\n openaiCompatTools.push({\n type: \"function\",\n function: {\n name: tool.name,\n description: tool.description,\n parameters: tool.parameters\n }\n });\n }\n }\n if (toolChoice == null) {\n return { tools: openaiCompatTools, tool_choice: void 0, toolWarnings };\n }\n const type = toolChoice.type;\n switch (type) {\n case \"auto\":\n case \"none\":\n case \"required\":\n return { tools: openaiCompatTools, tool_choice: type, toolWarnings };\n case \"tool\":\n return {\n tools: openaiCompatTools,\n tool_choice: {\n type: \"function\",\n function: {\n name: toolChoice.toolName\n }\n },\n toolWarnings\n };\n default: {\n const _exhaustiveCheck = type;\n throw new UnsupportedFunctionalityError2({\n functionality: `Unsupported tool choice type: ${_exhaustiveCheck}`\n });\n }\n }\n}\n\n// src/openai-compatible-chat-language-model.ts\nvar OpenAICompatibleChatLanguageModel = class {\n // type inferred via constructor\n constructor(modelId, settings, config) {\n this.specificationVersion = \"v1\";\n var _a, _b;\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n const errorStructure = (_a = config.errorStructure) != null ? _a : defaultOpenAICompatibleErrorStructure;\n this.chunkSchema = createOpenAICompatibleChatChunkSchema(\n errorStructure.errorSchema\n );\n this.failedResponseHandler = createJsonErrorResponseHandler(errorStructure);\n this.supportsStructuredOutputs = (_b = config.supportsStructuredOutputs) != null ? _b : false;\n }\n get defaultObjectGenerationMode() {\n return this.config.defaultObjectGenerationMode;\n }\n get provider() {\n return this.config.provider;\n }\n get providerOptionsName() {\n return this.config.provider.split(\".\")[0].trim();\n }\n getArgs({\n mode,\n prompt,\n maxTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n providerMetadata,\n stopSequences,\n responseFormat,\n seed\n }) {\n var _a, _b, _c, _d, _e;\n const type = mode.type;\n const warnings = [];\n if (topK != null) {\n warnings.push({\n type: \"unsupported-setting\",\n setting: \"topK\"\n });\n }\n if ((responseFormat == null ? void 0 : responseFormat.type) === \"json\" && responseFormat.schema != null && !this.supportsStructuredOutputs) {\n warnings.push({\n type: \"unsupported-setting\",\n setting: \"responseFormat\",\n details: \"JSON response format schema is only supported with structuredOutputs\"\n });\n }\n const baseArgs = {\n // model id:\n model: this.modelId,\n // model specific settings:\n user: this.settings.user,\n // standardized settings:\n max_tokens: maxTokens,\n temperature,\n top_p: topP,\n frequency_penalty: frequencyPenalty,\n presence_penalty: presencePenalty,\n response_format: (responseFormat == null ? void 0 : responseFormat.type) === \"json\" ? this.supportsStructuredOutputs === true && responseFormat.schema != null ? {\n type: \"json_schema\",\n json_schema: {\n schema: responseFormat.schema,\n name: (_a = responseFormat.name) != null ? _a : \"response\",\n description: responseFormat.description\n }\n } : { type: \"json_object\" } : void 0,\n stop: stopSequences,\n seed,\n ...providerMetadata == null ? void 0 : providerMetadata[this.providerOptionsName],\n reasoning_effort: (_d = (_b = providerMetadata == null ? void 0 : providerMetadata[this.providerOptionsName]) == null ? void 0 : _b.reasoningEffort) != null ? _d : (_c = providerMetadata == null ? void 0 : providerMetadata[\"openai-compatible\"]) == null ? void 0 : _c.reasoningEffort,\n // messages:\n messages: convertToOpenAICompatibleChatMessages(prompt)\n };\n switch (type) {\n case \"regular\": {\n const { tools, tool_choice, toolWarnings } = prepareTools({\n mode,\n structuredOutputs: this.supportsStructuredOutputs\n });\n return {\n args: { ...baseArgs, tools, tool_choice },\n warnings: [...warnings, ...toolWarnings]\n };\n }\n case \"object-json\": {\n return {\n args: {\n ...baseArgs,\n response_format: this.supportsStructuredOutputs === true && mode.schema != null ? {\n type: \"json_schema\",\n json_schema: {\n schema: mode.schema,\n name: (_e = mode.name) != null ? _e : \"response\",\n description: mode.description\n }\n } : { type: \"json_object\" }\n },\n warnings\n };\n }\n case \"object-tool\": {\n return {\n args: {\n ...baseArgs,\n tool_choice: {\n type: \"function\",\n function: { name: mode.tool.name }\n },\n tools: [\n {\n type: \"function\",\n function: {\n name: mode.tool.name,\n description: mode.tool.description,\n parameters: mode.tool.parameters\n }\n }\n ]\n },\n warnings\n };\n }\n default: {\n const _exhaustiveCheck = type;\n throw new Error(`Unsupported type: ${_exhaustiveCheck}`);\n }\n }\n }\n async doGenerate(options) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;\n const { args, warnings } = this.getArgs({ ...options });\n const body = JSON.stringify(args);\n const {\n responseHeaders,\n value: responseBody,\n rawValue: rawResponse\n } = await postJsonToApi({\n url: this.config.url({\n path: \"/chat/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body: args,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n OpenAICompatibleChatResponseSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const { messages: rawPrompt, ...rawSettings } = args;\n const choice = responseBody.choices[0];\n const providerMetadata = {\n [this.providerOptionsName]: {},\n ...(_b = (_a = this.config.metadataExtractor) == null ? void 0 : _a.extractMetadata) == null ? void 0 : _b.call(_a, {\n parsedBody: rawResponse\n })\n };\n const completionTokenDetails = (_c = responseBody.usage) == null ? void 0 : _c.completion_tokens_details;\n const promptTokenDetails = (_d = responseBody.usage) == null ? void 0 : _d.prompt_tokens_details;\n if ((completionTokenDetails == null ? void 0 : completionTokenDetails.reasoning_tokens) != null) {\n providerMetadata[this.providerOptionsName].reasoningTokens = completionTokenDetails == null ? void 0 : completionTokenDetails.reasoning_tokens;\n }\n if ((completionTokenDetails == null ? void 0 : completionTokenDetails.accepted_prediction_tokens) != null) {\n providerMetadata[this.providerOptionsName].acceptedPredictionTokens = completionTokenDetails == null ? void 0 : completionTokenDetails.accepted_prediction_tokens;\n }\n if ((completionTokenDetails == null ? void 0 : completionTokenDetails.rejected_prediction_tokens) != null) {\n providerMetadata[this.providerOptionsName].rejectedPredictionTokens = completionTokenDetails == null ? void 0 : completionTokenDetails.rejected_prediction_tokens;\n }\n if ((promptTokenDetails == null ? void 0 : promptTokenDetails.cached_tokens) != null) {\n providerMetadata[this.providerOptionsName].cachedPromptTokens = promptTokenDetails == null ? void 0 : promptTokenDetails.cached_tokens;\n }\n return {\n text: (_e = choice.message.content) != null ? _e : void 0,\n reasoning: (_f = choice.message.reasoning_content) != null ? _f : void 0,\n toolCalls: (_g = choice.message.tool_calls) == null ? void 0 : _g.map((toolCall) => {\n var _a2;\n return {\n toolCallType: \"function\",\n toolCallId: (_a2 = toolCall.id) != null ? _a2 : generateId(),\n toolName: toolCall.function.name,\n args: toolCall.function.arguments\n };\n }),\n finishReason: mapOpenAICompatibleFinishReason(choice.finish_reason),\n usage: {\n promptTokens: (_i = (_h = responseBody.usage) == null ? void 0 : _h.prompt_tokens) != null ? _i : NaN,\n completionTokens: (_k = (_j = responseBody.usage) == null ? void 0 : _j.completion_tokens) != null ? _k : NaN\n },\n providerMetadata,\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders, body: rawResponse },\n response: getResponseMetadata(responseBody),\n warnings,\n request: { body }\n };\n }\n async doStream(options) {\n var _a;\n if (this.settings.simulateStreaming) {\n const result = await this.doGenerate(options);\n const simulatedStream = new ReadableStream({\n start(controller) {\n controller.enqueue({ type: \"response-metadata\", ...result.response });\n if (result.reasoning) {\n if (Array.isArray(result.reasoning)) {\n for (const part of result.reasoning) {\n if (part.type === \"text\") {\n controller.enqueue({\n type: \"reasoning\",\n textDelta: part.text\n });\n }\n }\n } else {\n controller.enqueue({\n type: \"reasoning\",\n textDelta: result.reasoning\n });\n }\n }\n if (result.text) {\n controller.enqueue({\n type: \"text-delta\",\n textDelta: result.text\n });\n }\n if (result.toolCalls) {\n for (const toolCall of result.toolCalls) {\n controller.enqueue({\n type: \"tool-call\",\n ...toolCall\n });\n }\n }\n controller.enqueue({\n type: \"finish\",\n finishReason: result.finishReason,\n usage: result.usage,\n logprobs: result.logprobs,\n providerMetadata: result.providerMetadata\n });\n controller.close();\n }\n });\n return {\n stream: simulatedStream,\n rawCall: result.rawCall,\n rawResponse: result.rawResponse,\n warnings: result.warnings\n };\n }\n const { args, warnings } = this.getArgs({ ...options });\n const body = {\n ...args,\n stream: true,\n // only include stream_options when in strict compatibility mode:\n stream_options: this.config.includeUsage ? { include_usage: true } : void 0\n };\n const metadataExtractor = (_a = this.config.metadataExtractor) == null ? void 0 : _a.createStreamExtractor();\n const { responseHeaders, value: response } = await postJsonToApi({\n url: this.config.url({\n path: \"/chat/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler(\n this.chunkSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const { messages: rawPrompt, ...rawSettings } = args;\n const toolCalls = [];\n let finishReason = \"unknown\";\n let usage = {\n completionTokens: void 0,\n completionTokensDetails: {\n reasoningTokens: void 0,\n acceptedPredictionTokens: void 0,\n rejectedPredictionTokens: void 0\n },\n promptTokens: void 0,\n promptTokensDetails: {\n cachedTokens: void 0\n }\n };\n let isFirstChunk = true;\n let providerOptionsName = this.providerOptionsName;\n return {\n stream: response.pipeThrough(\n new TransformStream({\n // TODO we lost type safety on Chunk, most likely due to the error schema. MUST FIX\n transform(chunk, controller) {\n var _a2, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;\n if (!chunk.success) {\n finishReason = \"error\";\n controller.enqueue({ type: \"error\", error: chunk.error });\n return;\n }\n const value = chunk.value;\n metadataExtractor == null ? void 0 : metadataExtractor.processChunk(chunk.rawValue);\n if (\"error\" in value) {\n finishReason = \"error\";\n controller.enqueue({ type: \"error\", error: value.error.message });\n return;\n }\n if (isFirstChunk) {\n isFirstChunk = false;\n controller.enqueue({\n type: \"response-metadata\",\n ...getResponseMetadata(value)\n });\n }\n if (value.usage != null) {\n const {\n prompt_tokens,\n completion_tokens,\n prompt_tokens_details,\n completion_tokens_details\n } = value.usage;\n usage.promptTokens = prompt_tokens != null ? prompt_tokens : void 0;\n usage.completionTokens = completion_tokens != null ? completion_tokens : void 0;\n if ((completion_tokens_details == null ? void 0 : completion_tokens_details.reasoning_tokens) != null) {\n usage.completionTokensDetails.reasoningTokens = completion_tokens_details == null ? void 0 : completion_tokens_details.reasoning_tokens;\n }\n if ((completion_tokens_details == null ? void 0 : completion_tokens_details.accepted_prediction_tokens) != null) {\n usage.completionTokensDetails.acceptedPredictionTokens = completion_tokens_details == null ? void 0 : completion_tokens_details.accepted_prediction_tokens;\n }\n if ((completion_tokens_details == null ? void 0 : completion_tokens_details.rejected_prediction_tokens) != null) {\n usage.completionTokensDetails.rejectedPredictionTokens = completion_tokens_details == null ? void 0 : completion_tokens_details.rejected_prediction_tokens;\n }\n if ((prompt_tokens_details == null ? void 0 : prompt_tokens_details.cached_tokens) != null) {\n usage.promptTokensDetails.cachedTokens = prompt_tokens_details == null ? void 0 : prompt_tokens_details.cached_tokens;\n }\n }\n const choice = value.choices[0];\n if ((choice == null ? void 0 : choice.finish_reason) != null) {\n finishReason = mapOpenAICompatibleFinishReason(\n choice.finish_reason\n );\n }\n if ((choice == null ? void 0 : choice.delta) == null) {\n return;\n }\n const delta = choice.delta;\n if (delta.reasoning_content != null) {\n controller.enqueue({\n type: \"reasoning\",\n textDelta: delta.reasoning_content\n });\n }\n if (delta.content != null) {\n controller.enqueue({\n type: \"text-delta\",\n textDelta: delta.content\n });\n }\n if (delta.tool_calls != null) {\n for (const toolCallDelta of delta.tool_calls) {\n const index = toolCallDelta.index;\n if (toolCalls[index] == null) {\n if (toolCallDelta.type !== \"function\") {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'function' type.`\n });\n }\n if (toolCallDelta.id == null) {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'id' to be a string.`\n });\n }\n if (((_a2 = toolCallDelta.function) == null ? void 0 : _a2.name) == null) {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'function.name' to be a string.`\n });\n }\n toolCalls[index] = {\n id: toolCallDelta.id,\n type: \"function\",\n function: {\n name: toolCallDelta.function.name,\n arguments: (_b = toolCallDelta.function.arguments) != null ? _b : \"\"\n },\n hasFinished: false\n };\n const toolCall2 = toolCalls[index];\n if (((_c = toolCall2.function) == null ? void 0 : _c.name) != null && ((_d = toolCall2.function) == null ? void 0 : _d.arguments) != null) {\n if (toolCall2.function.arguments.length > 0) {\n controller.enqueue({\n type: \"tool-call-delta\",\n toolCallType: \"function\",\n toolCallId: toolCall2.id,\n toolName: toolCall2.function.name,\n argsTextDelta: toolCall2.function.arguments\n });\n }\n if (isParsableJson(toolCall2.function.arguments)) {\n controller.enqueue({\n type: \"tool-call\",\n toolCallType: \"function\",\n toolCallId: (_e = toolCall2.id) != null ? _e : generateId(),\n toolName: toolCall2.function.name,\n args: toolCall2.function.arguments\n });\n toolCall2.hasFinished = true;\n }\n }\n continue;\n }\n const toolCall = toolCalls[index];\n if (toolCall.hasFinished) {\n continue;\n }\n if (((_f = toolCallDelta.function) == null ? void 0 : _f.arguments) != null) {\n toolCall.function.arguments += (_h = (_g = toolCallDelta.function) == null ? void 0 : _g.arguments) != null ? _h : \"\";\n }\n controller.enqueue({\n type: \"tool-call-delta\",\n toolCallType: \"function\",\n toolCallId: toolCall.id,\n toolName: toolCall.function.name,\n argsTextDelta: (_i = toolCallDelta.function.arguments) != null ? _i : \"\"\n });\n if (((_j = toolCall.function) == null ? void 0 : _j.name) != null && ((_k = toolCall.function) == null ? void 0 : _k.arguments) != null && isParsableJson(toolCall.function.arguments)) {\n controller.enqueue({\n type: \"tool-call\",\n toolCallType: \"function\",\n toolCallId: (_l = toolCall.id) != null ? _l : generateId(),\n toolName: toolCall.function.name,\n args: toolCall.function.arguments\n });\n toolCall.hasFinished = true;\n }\n }\n }\n },\n flush(controller) {\n var _a2, _b;\n const providerMetadata = {\n [providerOptionsName]: {},\n ...metadataExtractor == null ? void 0 : metadataExtractor.buildMetadata()\n };\n if (usage.completionTokensDetails.reasoningTokens != null) {\n providerMetadata[providerOptionsName].reasoningTokens = usage.completionTokensDetails.reasoningTokens;\n }\n if (usage.completionTokensDetails.acceptedPredictionTokens != null) {\n providerMetadata[providerOptionsName].acceptedPredictionTokens = usage.completionTokensDetails.acceptedPredictionTokens;\n }\n if (usage.completionTokensDetails.rejectedPredictionTokens != null) {\n providerMetadata[providerOptionsName].rejectedPredictionTokens = usage.completionTokensDetails.rejectedPredictionTokens;\n }\n if (usage.promptTokensDetails.cachedTokens != null) {\n providerMetadata[providerOptionsName].cachedPromptTokens = usage.promptTokensDetails.cachedTokens;\n }\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage: {\n promptTokens: (_a2 = usage.promptTokens) != null ? _a2 : NaN,\n completionTokens: (_b = usage.completionTokens) != null ? _b : NaN\n },\n providerMetadata\n });\n }\n })\n ),\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders },\n warnings,\n request: { body: JSON.stringify(body) }\n };\n }\n};\nvar openaiCompatibleTokenUsageSchema = z2.object({\n prompt_tokens: z2.number().nullish(),\n completion_tokens: z2.number().nullish(),\n prompt_tokens_details: z2.object({\n cached_tokens: z2.number().nullish()\n }).nullish(),\n completion_tokens_details: z2.object({\n reasoning_tokens: z2.number().nullish(),\n accepted_prediction_tokens: z2.number().nullish(),\n rejected_prediction_tokens: z2.number().nullish()\n }).nullish()\n}).nullish();\nvar OpenAICompatibleChatResponseSchema = z2.object({\n id: z2.string().nullish(),\n created: z2.number().nullish(),\n model: z2.string().nullish(),\n choices: z2.array(\n z2.object({\n message: z2.object({\n role: z2.literal(\"assistant\").nullish(),\n content: z2.string().nullish(),\n reasoning_content: z2.string().nullish(),\n tool_calls: z2.array(\n z2.object({\n id: z2.string().nullish(),\n type: z2.literal(\"function\"),\n function: z2.object({\n name: z2.string(),\n arguments: z2.string()\n })\n })\n ).nullish()\n }),\n finish_reason: z2.string().nullish()\n })\n ),\n usage: openaiCompatibleTokenUsageSchema\n});\nvar createOpenAICompatibleChatChunkSchema = (errorSchema) => z2.union([\n z2.object({\n id: z2.string().nullish(),\n created: z2.number().nullish(),\n model: z2.string().nullish(),\n choices: z2.array(\n z2.object({\n delta: z2.object({\n role: z2.enum([\"assistant\"]).nullish(),\n content: z2.string().nullish(),\n reasoning_content: z2.string().nullish(),\n tool_calls: z2.array(\n z2.object({\n index: z2.number().optional(),\n id: z2.string().nullish(),\n type: z2.literal(\"function\").nullish(),\n function: z2.object({\n name: z2.string().nullish(),\n arguments: z2.string().nullish()\n })\n })\n ).nullish()\n }).nullish(),\n finish_reason: z2.string().nullish()\n })\n ),\n usage: openaiCompatibleTokenUsageSchema\n }),\n errorSchema\n]);\n\n// src/openai-compatible-completion-language-model.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError4\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders2,\n createEventSourceResponseHandler as createEventSourceResponseHandler2,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler2,\n createJsonResponseHandler as createJsonResponseHandler2,\n postJsonToApi as postJsonToApi2\n} from \"@ai-sdk/provider-utils\";\nimport { z as z3 } from \"zod\";\n\n// src/convert-to-openai-compatible-completion-prompt.ts\nimport {\n InvalidPromptError,\n UnsupportedFunctionalityError as UnsupportedFunctionalityError3\n} from \"@ai-sdk/provider\";\nfunction convertToOpenAICompatibleCompletionPrompt({\n prompt,\n inputFormat,\n user = \"user\",\n assistant = \"assistant\"\n}) {\n if (inputFormat === \"prompt\" && prompt.length === 1 && prompt[0].role === \"user\" && prompt[0].content.length === 1 && prompt[0].content[0].type === \"text\") {\n return { prompt: prompt[0].content[0].text };\n }\n let text = \"\";\n if (prompt[0].role === \"system\") {\n text += `${prompt[0].content}\n\n`;\n prompt = prompt.slice(1);\n }\n for (const { role, content } of prompt) {\n switch (role) {\n case \"system\": {\n throw new InvalidPromptError({\n message: \"Unexpected system message in prompt: ${content}\",\n prompt\n });\n }\n case \"user\": {\n const userMessage = content.map((part) => {\n switch (part.type) {\n case \"text\": {\n return part.text;\n }\n case \"image\": {\n throw new UnsupportedFunctionalityError3({\n functionality: \"images\"\n });\n }\n }\n }).join(\"\");\n text += `${user}:\n${userMessage}\n\n`;\n break;\n }\n case \"assistant\": {\n const assistantMessage = content.map((part) => {\n switch (part.type) {\n case \"text\": {\n return part.text;\n }\n case \"tool-call\": {\n throw new UnsupportedFunctionalityError3({\n functionality: \"tool-call messages\"\n });\n }\n }\n }).join(\"\");\n text += `${assistant}:\n${assistantMessage}\n\n`;\n break;\n }\n case \"tool\": {\n throw new UnsupportedFunctionalityError3({\n functionality: \"tool messages\"\n });\n }\n default: {\n const _exhaustiveCheck = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n text += `${assistant}:\n`;\n return {\n prompt: text,\n stopSequences: [`\n${user}:`]\n };\n}\n\n// src/openai-compatible-completion-language-model.ts\nvar OpenAICompatibleCompletionLanguageModel = class {\n // type inferred via constructor\n constructor(modelId, settings, config) {\n this.specificationVersion = \"v1\";\n this.defaultObjectGenerationMode = void 0;\n var _a;\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n const errorStructure = (_a = config.errorStructure) != null ? _a : defaultOpenAICompatibleErrorStructure;\n this.chunkSchema = createOpenAICompatibleCompletionChunkSchema(\n errorStructure.errorSchema\n );\n this.failedResponseHandler = createJsonErrorResponseHandler2(errorStructure);\n }\n get provider() {\n return this.config.provider;\n }\n get providerOptionsName() {\n return this.config.provider.split(\".\")[0].trim();\n }\n getArgs({\n mode,\n inputFormat,\n prompt,\n maxTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n stopSequences: userStopSequences,\n responseFormat,\n seed,\n providerMetadata\n }) {\n var _a;\n const type = mode.type;\n const warnings = [];\n if (topK != null) {\n warnings.push({\n type: \"unsupported-setting\",\n setting: \"topK\"\n });\n }\n if (responseFormat != null && responseFormat.type !== \"text\") {\n warnings.push({\n type: \"unsupported-setting\",\n setting: \"responseFormat\",\n details: \"JSON response format is not supported.\"\n });\n }\n const { prompt: completionPrompt, stopSequences } = convertToOpenAICompatibleCompletionPrompt({ prompt, inputFormat });\n const stop = [...stopSequences != null ? stopSequences : [], ...userStopSequences != null ? userStopSequences : []];\n const baseArgs = {\n // model id:\n model: this.modelId,\n // model specific settings:\n echo: this.settings.echo,\n logit_bias: this.settings.logitBias,\n suffix: this.settings.suffix,\n user: this.settings.user,\n // standardized settings:\n max_tokens: maxTokens,\n temperature,\n top_p: topP,\n frequency_penalty: frequencyPenalty,\n presence_penalty: presencePenalty,\n seed,\n ...providerMetadata == null ? void 0 : providerMetadata[this.providerOptionsName],\n // prompt:\n prompt: completionPrompt,\n // stop sequences:\n stop: stop.length > 0 ? stop : void 0\n };\n switch (type) {\n case \"regular\": {\n if ((_a = mode.tools) == null ? void 0 : _a.length) {\n throw new UnsupportedFunctionalityError4({\n functionality: \"tools\"\n });\n }\n if (mode.toolChoice) {\n throw new UnsupportedFunctionalityError4({\n functionality: \"toolChoice\"\n });\n }\n return { args: baseArgs, warnings };\n }\n case \"object-json\": {\n throw new UnsupportedFunctionalityError4({\n functionality: \"object-json mode\"\n });\n }\n case \"object-tool\": {\n throw new UnsupportedFunctionalityError4({\n functionality: \"object-tool mode\"\n });\n }\n default: {\n const _exhaustiveCheck = type;\n throw new Error(`Unsupported type: ${_exhaustiveCheck}`);\n }\n }\n }\n async doGenerate(options) {\n var _a, _b, _c, _d;\n const { args, warnings } = this.getArgs(options);\n const {\n responseHeaders,\n value: response,\n rawValue: rawResponse\n } = await postJsonToApi2({\n url: this.config.url({\n path: \"/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders2(this.config.headers(), options.headers),\n body: args,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler2(\n openaiCompatibleCompletionResponseSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const { prompt: rawPrompt, ...rawSettings } = args;\n const choice = response.choices[0];\n return {\n text: choice.text,\n usage: {\n promptTokens: (_b = (_a = response.usage) == null ? void 0 : _a.prompt_tokens) != null ? _b : NaN,\n completionTokens: (_d = (_c = response.usage) == null ? void 0 : _c.completion_tokens) != null ? _d : NaN\n },\n finishReason: mapOpenAICompatibleFinishReason(choice.finish_reason),\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders, body: rawResponse },\n response: getResponseMetadata(response),\n warnings,\n request: { body: JSON.stringify(args) }\n };\n }\n async doStream(options) {\n const { args, warnings } = this.getArgs(options);\n const body = {\n ...args,\n stream: true,\n // only include stream_options when in strict compatibility mode:\n stream_options: this.config.includeUsage ? { include_usage: true } : void 0\n };\n const { responseHeaders, value: response } = await postJsonToApi2({\n url: this.config.url({\n path: \"/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders2(this.config.headers(), options.headers),\n body,\n failedResponseHandler: this.failedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler2(\n this.chunkSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const { prompt: rawPrompt, ...rawSettings } = args;\n let finishReason = \"unknown\";\n let usage = {\n promptTokens: Number.NaN,\n completionTokens: Number.NaN\n };\n let isFirstChunk = true;\n return {\n stream: response.pipeThrough(\n new TransformStream({\n transform(chunk, controller) {\n if (!chunk.success) {\n finishReason = \"error\";\n controller.enqueue({ type: \"error\", error: chunk.error });\n return;\n }\n const value = chunk.value;\n if (\"error\" in value) {\n finishReason = \"error\";\n controller.enqueue({ type: \"error\", error: value.error });\n return;\n }\n if (isFirstChunk) {\n isFirstChunk = false;\n controller.enqueue({\n type: \"response-metadata\",\n ...getResponseMetadata(value)\n });\n }\n if (value.usage != null) {\n usage = {\n promptTokens: value.usage.prompt_tokens,\n completionTokens: value.usage.completion_tokens\n };\n }\n const choice = value.choices[0];\n if ((choice == null ? void 0 : choice.finish_reason) != null) {\n finishReason = mapOpenAICompatibleFinishReason(\n choice.finish_reason\n );\n }\n if ((choice == null ? void 0 : choice.text) != null) {\n controller.enqueue({\n type: \"text-delta\",\n textDelta: choice.text\n });\n }\n },\n flush(controller) {\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage\n });\n }\n })\n ),\n rawCall: { rawPrompt, rawSettings },\n rawResponse: { headers: responseHeaders },\n warnings,\n request: { body: JSON.stringify(body) }\n };\n }\n};\nvar openaiCompatibleCompletionResponseSchema = z3.object({\n id: z3.string().nullish(),\n created: z3.number().nullish(),\n model: z3.string().nullish(),\n choices: z3.array(\n z3.object({\n text: z3.string(),\n finish_reason: z3.string()\n })\n ),\n usage: z3.object({\n prompt_tokens: z3.number(),\n completion_tokens: z3.number()\n }).nullish()\n});\nvar createOpenAICompatibleCompletionChunkSchema = (errorSchema) => z3.union([\n z3.object({\n id: z3.string().nullish(),\n created: z3.number().nullish(),\n model: z3.string().nullish(),\n choices: z3.array(\n z3.object({\n text: z3.string(),\n finish_reason: z3.string().nullish(),\n index: z3.number()\n })\n ),\n usage: z3.object({\n prompt_tokens: z3.number(),\n completion_tokens: z3.number()\n }).nullish()\n }),\n errorSchema\n]);\n\n// src/openai-compatible-embedding-model.ts\nimport {\n TooManyEmbeddingValuesForCallError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders3,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler3,\n createJsonResponseHandler as createJsonResponseHandler3,\n postJsonToApi as postJsonToApi3\n} from \"@ai-sdk/provider-utils\";\nimport { z as z4 } from \"zod\";\nvar OpenAICompatibleEmbeddingModel = class {\n constructor(modelId, settings, config) {\n this.specificationVersion = \"v1\";\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n }\n get provider() {\n return this.config.provider;\n }\n get maxEmbeddingsPerCall() {\n var _a;\n return (_a = this.config.maxEmbeddingsPerCall) != null ? _a : 2048;\n }\n get supportsParallelCalls() {\n var _a;\n return (_a = this.config.supportsParallelCalls) != null ? _a : true;\n }\n async doEmbed({\n values,\n headers,\n abortSignal\n }) {\n var _a;\n if (values.length > this.maxEmbeddingsPerCall) {\n throw new TooManyEmbeddingValuesForCallError({\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values\n });\n }\n const { responseHeaders, value: response } = await postJsonToApi3({\n url: this.config.url({\n path: \"/embeddings\",\n modelId: this.modelId\n }),\n headers: combineHeaders3(this.config.headers(), headers),\n body: {\n model: this.modelId,\n input: values,\n encoding_format: \"float\",\n dimensions: this.settings.dimensions,\n user: this.settings.user\n },\n failedResponseHandler: createJsonErrorResponseHandler3(\n (_a = this.config.errorStructure) != null ? _a : defaultOpenAICompatibleErrorStructure\n ),\n successfulResponseHandler: createJsonResponseHandler3(\n openaiTextEmbeddingResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n embeddings: response.data.map((item) => item.embedding),\n usage: response.usage ? { tokens: response.usage.prompt_tokens } : void 0,\n rawResponse: { headers: responseHeaders }\n };\n }\n};\nvar openaiTextEmbeddingResponseSchema = z4.object({\n data: z4.array(z4.object({ embedding: z4.array(z4.number()) })),\n usage: z4.object({ prompt_tokens: z4.number() }).nullish()\n});\n\n// src/openai-compatible-image-model.ts\nimport {\n combineHeaders as combineHeaders4,\n createJsonErrorResponseHandler as createJsonErrorResponseHandler4,\n createJsonResponseHandler as createJsonResponseHandler4,\n postJsonToApi as postJsonToApi4\n} from \"@ai-sdk/provider-utils\";\nimport { z as z5 } from \"zod\";\nvar OpenAICompatibleImageModel = class {\n constructor(modelId, settings, config) {\n this.modelId = modelId;\n this.settings = settings;\n this.config = config;\n this.specificationVersion = \"v1\";\n }\n get maxImagesPerCall() {\n var _a;\n return (_a = this.settings.maxImagesPerCall) != null ? _a : 10;\n }\n get provider() {\n return this.config.provider;\n }\n async doGenerate({\n prompt,\n n,\n size,\n aspectRatio,\n seed,\n providerOptions,\n headers,\n abortSignal\n }) {\n var _a, _b, _c, _d, _e;\n const warnings = [];\n if (aspectRatio != null) {\n warnings.push({\n type: \"unsupported-setting\",\n setting: \"aspectRatio\",\n details: \"This model does not support aspect ratio. Use `size` instead.\"\n });\n }\n if (seed != null) {\n warnings.push({ type: \"unsupported-setting\", setting: \"seed\" });\n }\n const currentDate = (_c = (_b = (_a = this.config._internal) == null ? void 0 : _a.currentDate) == null ? void 0 : _b.call(_a)) != null ? _c : /* @__PURE__ */ new Date();\n const { value: response, responseHeaders } = await postJsonToApi4({\n url: this.config.url({\n path: \"/images/generations\",\n modelId: this.modelId\n }),\n headers: combineHeaders4(this.config.headers(), headers),\n body: {\n model: this.modelId,\n prompt,\n n,\n size,\n ...(_d = providerOptions.openai) != null ? _d : {},\n response_format: \"b64_json\",\n ...this.settings.user ? { user: this.settings.user } : {}\n },\n failedResponseHandler: createJsonErrorResponseHandler4(\n (_e = this.config.errorStructure) != null ? _e : defaultOpenAICompatibleErrorStructure\n ),\n successfulResponseHandler: createJsonResponseHandler4(\n openaiCompatibleImageResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n images: response.data.map((item) => item.b64_json),\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders\n }\n };\n }\n};\nvar openaiCompatibleImageResponseSchema = z5.object({\n data: z5.array(z5.object({ b64_json: z5.string() }))\n});\n\n// src/openai-compatible-provider.ts\nimport { withoutTrailingSlash } from \"@ai-sdk/provider-utils\";\nfunction createOpenAICompatible(options) {\n const baseURL = withoutTrailingSlash(options.baseURL);\n const providerName = options.name;\n const getHeaders = () => ({\n ...options.apiKey && { Authorization: `Bearer ${options.apiKey}` },\n ...options.headers\n });\n const getCommonModelConfig = (modelType) => ({\n provider: `${providerName}.${modelType}`,\n url: ({ path }) => {\n const url = new URL(`${baseURL}${path}`);\n if (options.queryParams) {\n url.search = new URLSearchParams(options.queryParams).toString();\n }\n return url.toString();\n },\n headers: getHeaders,\n fetch: options.fetch\n });\n const createLanguageModel = (modelId, settings = {}, config) => createChatModel(modelId, settings, config);\n const createChatModel = (modelId, settings = {}, config) => new OpenAICompatibleChatLanguageModel(modelId, settings, {\n ...getCommonModelConfig(\"chat\"),\n defaultObjectGenerationMode: \"tool\",\n ...config\n });\n const createCompletionModel = (modelId, settings = {}) => new OpenAICompatibleCompletionLanguageModel(\n modelId,\n settings,\n getCommonModelConfig(\"completion\")\n );\n const createEmbeddingModel = (modelId, settings = {}) => new OpenAICompatibleEmbeddingModel(\n modelId,\n settings,\n getCommonModelConfig(\"embedding\")\n );\n const createImageModel = (modelId, settings = {}) => new OpenAICompatibleImageModel(\n modelId,\n settings,\n getCommonModelConfig(\"image\")\n );\n const provider = (modelId, settings, config) => createLanguageModel(modelId, settings, config);\n provider.languageModel = createLanguageModel;\n provider.chatModel = createChatModel;\n provider.completionModel = createCompletionModel;\n provider.textEmbeddingModel = createEmbeddingModel;\n provider.imageModel = createImageModel;\n return provider;\n}\nexport {\n OpenAICompatibleChatLanguageModel,\n OpenAICompatibleCompletionLanguageModel,\n OpenAICompatibleEmbeddingModel,\n OpenAICompatibleImageModel,\n createOpenAICompatible\n};\n//# sourceMappingURL=index.mjs.map","// src/xai-provider.ts\nimport {\n NoSuchModelError\n} from \"@ai-sdk/provider\";\nimport {\n OpenAICompatibleChatLanguageModel,\n OpenAICompatibleImageModel\n} from \"@ai-sdk/openai-compatible\";\nimport {\n loadApiKey,\n withoutTrailingSlash\n} from \"@ai-sdk/provider-utils\";\n\n// src/xai-chat-settings.ts\nfunction supportsStructuredOutputs(modelId) {\n return [\n \"grok-3\",\n \"grok-3-beta\",\n \"grok-3-latest\",\n \"grok-3-fast\",\n \"grok-3-fast-beta\",\n \"grok-3-fast-latest\",\n \"grok-3-mini\",\n \"grok-3-mini-beta\",\n \"grok-3-mini-latest\",\n \"grok-3-mini-fast\",\n \"grok-3-mini-fast-beta\",\n \"grok-3-mini-fast-latest\",\n \"grok-2-1212\",\n \"grok-2-vision-1212\"\n ].includes(modelId);\n}\n\n// src/xai-error.ts\nimport { z } from \"zod\";\nvar xaiErrorSchema = z.object({\n code: z.string(),\n error: z.string()\n});\n\n// src/xai-provider.ts\nvar xaiErrorStructure = {\n errorSchema: xaiErrorSchema,\n errorToMessage: (data) => data.error\n};\nfunction createXai(options = {}) {\n var _a;\n const baseURL = withoutTrailingSlash(\n (_a = options.baseURL) != null ? _a : \"https://api.x.ai/v1\"\n );\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: \"XAI_API_KEY\",\n description: \"xAI API key\"\n })}`,\n ...options.headers\n });\n const createLanguageModel = (modelId, settings = {}) => {\n const structuredOutputs = supportsStructuredOutputs(modelId);\n return new OpenAICompatibleChatLanguageModel(modelId, settings, {\n provider: \"xai.chat\",\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n defaultObjectGenerationMode: structuredOutputs ? \"json\" : \"tool\",\n errorStructure: xaiErrorStructure,\n supportsStructuredOutputs: structuredOutputs,\n includeUsage: true\n });\n };\n const createImageModel = (modelId, settings = {}) => {\n return new OpenAICompatibleImageModel(modelId, settings, {\n provider: \"xai.image\",\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n errorStructure: xaiErrorStructure\n });\n };\n const provider = (modelId, settings) => createLanguageModel(modelId, settings);\n provider.languageModel = createLanguageModel;\n provider.chat = createLanguageModel;\n provider.textEmbeddingModel = (modelId) => {\n throw new NoSuchModelError({ modelId, modelType: \"textEmbeddingModel\" });\n };\n provider.imageModel = createImageModel;\n provider.image = createImageModel;\n return provider;\n}\nvar xai = createXai();\nexport {\n createXai,\n xai\n};\n//# sourceMappingURL=index.mjs.map"],"x_google_ignoreList":[0,1],"mappings":"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"}
@@ -2,7 +2,7 @@ import { o as __toESM$1, t as __commonJSMin$1 } from "./rolldown-runtime-maW3aOI
2
2
  import { n as standardSchemaToJSONSchema, r as toStandardSchema$1, t as isStandardSchemaWithJSON$1 } from "./schema-Bv9OdW1f-DLSJSqQv.js";
3
3
  import "./schema-CGeYTFwm.js";
4
4
  import { t as require_sync } from "./sync-BG15Yae1.js";
5
- import { openai } from "./dist-bAFqx06T.js";
5
+ import { openai } from "./dist-DoTDZ7wF.js";
6
6
  import { createRequire } from "module";
7
7
  import * as z4 from "zod/v4";
8
8
  import { z } from "zod/v4";
@@ -17,7 +17,7 @@ import { createTool } from "@mastra/core/tools";
17
17
  import { inspect, promisify } from "util";
18
18
  import { createHash, randomBytes, randomUUID } from "crypto";
19
19
  import { generateEmptyFromSchema } from "@mastra/core/utils";
20
- import { InMemoryStore, assertKnowledgeScopeWithinCeiling, canonicalizeKnowledgeScope, createKnowledgeNodeCursor, expandKnowledgeScope, isKnowledgeScopeVisible, knowledgeScopeKey } from "@mastra/core/storage";
20
+ import { InMemoryStore, MAX_KNOWLEDGE_NODE_DESCRIPTION_LENGTH, assertKnowledgeScopeWithinCeiling, canonicalizeKnowledgeScope, createKnowledgeNodeCursor, expandKnowledgeScope, isKnowledgeScopeVisible, knowledgeScopeKey } from "@mastra/core/storage";
21
21
  import { coreFeatures } from "@mastra/core/features";
22
22
  import { EntityType, SpanType, createObservabilityContext, getOrCreateSpan } from "@mastra/core/observability";
23
23
  import { MASTRA_THREAD_ID_KEY, RequestContext } from "@mastra/core/request-context";
@@ -4693,7 +4693,7 @@ function splitLines(text) {
4693
4693
  return result;
4694
4694
  }
4695
4695
  //#endregion
4696
- //#region ../memory/dist/src-BATJenuZ.js
4696
+ //#region ../memory/dist/src-BNtoxIHL.js
4697
4697
  var __defProp$3 = Object.defineProperty;
4698
4698
  var __exportAll = (all, no_symbols) => {
4699
4699
  let target = {};
@@ -4869,7 +4869,7 @@ let customAlphabet = (alphabet, defaultSize = 21) => {
4869
4869
  return (size = defaultSize) => {
4870
4870
  let id = "";
4871
4871
  let i = size | 0;
4872
- while (i--) id += alphabet[Math.random() * alphabet.length | 0];
4872
+ while (i-- > 0) id += alphabet[Math.random() * alphabet.length | 0];
4873
4873
  return id;
4874
4874
  };
4875
4875
  };
@@ -19888,6 +19888,7 @@ Return nodes with short stable names, a freeform kind, and knowledge records nes
19888
19888
  Use common kinds such as person, task, event, project, organization, or document when they fit.
19889
19889
  Set node scope to the narrowest level where that identity and content should be shared. Omit it to use the configured default scope.
19890
19890
  Knowledge records must be grounded in the conversation, concise, and written as prose. Do not infer unstated information.
19891
+ When the conversation states a canonical identifier or URL for an entity, preserve it verbatim in the record text.
19891
19892
  Wrap every named node mentioned in record text in [[wikilinks]].
19892
19893
  Set a record scope only when the conversation establishes where it applies. Use org for organization-wide records, resource for records shared across this resource's conversations, and thread for conversation-private records.
19893
19894
  Omit scope when uncertain; omitted record scopes stay private to the current thread.
@@ -20747,7 +20748,7 @@ function createKnowledgeWriteTools(memory, options) {
20747
20748
  }),
20748
20749
  knowledge_update_node: createTool({
20749
20750
  id: "knowledge_update_node",
20750
- description: "Update a visible node name or kind using optimistic concurrency.",
20751
+ description: "Update a visible node name or kind using optimistic concurrency. Provide at least one of name or kind.",
20751
20752
  inputSchema: {
20752
20753
  type: "object",
20753
20754
  properties: {
@@ -20769,11 +20770,11 @@ function createKnowledgeWriteTools(memory, options) {
20769
20770
  }
20770
20771
  },
20771
20772
  required: ["node", "expectedVersion"],
20772
- anyOf: [{ required: ["name"] }, { required: ["kind"] }],
20773
20773
  additionalProperties: false
20774
20774
  },
20775
20775
  execute: async (input) => {
20776
20776
  const value = input;
20777
+ if (value.name === void 0 && value.kind === void 0) throw new Error("knowledge_update_node requires at least one of: name, kind.");
20777
20778
  const store = await getStore(memory);
20778
20779
  const node = await store.getNode(value.node);
20779
20780
  if (!node || node.mergedInto) throw new Error(`Knowledge node not found: ${value.node}`);
@@ -20851,6 +20852,48 @@ function createKnowledgeWriteTools(memory, options) {
20851
20852
  });
20852
20853
  }
20853
20854
  }),
20855
+ knowledge_write_node_description: createTool({
20856
+ id: "knowledge_write_node_description",
20857
+ description: `Write the bounded synopsis (max ${MAX_KNOWLEDGE_NODE_DESCRIPTION_LENGTH} UTF-16 code units) on an existing visible node using optimistic concurrency. Pass an empty string to clear it. Does not create nodes.`,
20858
+ inputSchema: {
20859
+ type: "object",
20860
+ properties: {
20861
+ node: {
20862
+ type: "string",
20863
+ minLength: 1
20864
+ },
20865
+ expectedVersion: {
20866
+ type: "integer",
20867
+ minimum: 1
20868
+ },
20869
+ description: {
20870
+ type: "string",
20871
+ minLength: 0,
20872
+ maxLength: MAX_KNOWLEDGE_NODE_DESCRIPTION_LENGTH,
20873
+ description: `One or two plain-text sentences describing the node, targeting 40-75 tokens. Hard limit ${MAX_KNOWLEDGE_NODE_DESCRIPTION_LENGTH} UTF-16 code units, enforced by storage on every write; the length check on execution is authoritative. Long-form detail belongs in node content, not here. An empty string clears the description.`
20874
+ }
20875
+ },
20876
+ required: [
20877
+ "node",
20878
+ "expectedVersion",
20879
+ "description"
20880
+ ],
20881
+ additionalProperties: false
20882
+ },
20883
+ execute: async (input) => {
20884
+ const value = input;
20885
+ if (value.description.length > MAX_KNOWLEDGE_NODE_DESCRIPTION_LENGTH) throw new Error(`Node descriptions are limited to ${MAX_KNOWLEDGE_NODE_DESCRIPTION_LENGTH} UTF-16 code units. Shorten the description and retry.`);
20886
+ const store = await getStore(memory);
20887
+ const node = await store.getNode(value.node);
20888
+ if (!node || node.mergedInto) throw new Error(`Knowledge node not found: ${value.node}`);
20889
+ requireVisible(node.scope, options, "Knowledge node");
20890
+ return store.updateNode({
20891
+ id: node.id,
20892
+ version: value.expectedVersion,
20893
+ description: value.description
20894
+ });
20895
+ }
20896
+ }),
20854
20897
  knowledge_write_node_content: createTool({
20855
20898
  id: "knowledge_write_node_content",
20856
20899
  description: "Create or replace long-form content on a scoped knowledge node. Existing nodes require expectedVersion.",
@@ -21057,7 +21100,7 @@ var KnowledgeSemanticIndexCoordinator = class {
21057
21100
  const node = await this.#knowledge.getNode(entry.documentId.slice(15));
21058
21101
  if (!node || node.mergedInto) return null;
21059
21102
  return {
21060
- text: `${node.name}\n${node.content ?? ""}`,
21103
+ text: node.description ? `${node.name}\n${node.description}\n${node.content ?? ""}` : `${node.name}\n${node.content ?? ""}`,
21061
21104
  name: node.name,
21062
21105
  scope: node.scope,
21063
21106
  recordId: node.id,
@@ -21125,7 +21168,14 @@ var subconscious_exports = /* @__PURE__ */ __exportAll({
21125
21168
  });
21126
21169
  const BUILT_IN_OBSERVATION = /* @__PURE__ */ new Set(["capture", "remind"]);
21127
21170
  const BUILT_IN_REFLECTION = /* @__PURE__ */ new Set(["curate", "learn"]);
21128
- const DEFAULT_MAX_STEPS = 5;
21171
+ const DEFAULT_MAX_STEPS = 50;
21172
+ /**
21173
+ * Curation walks a worklist that can reach hundreds of records, and its completion marker is
21174
+ * fail-closed: a curator that runs out of steps advances no cursor at all. It gets a much larger
21175
+ * default budget than the other agents, which each handle a single bounded prompt.
21176
+ */
21177
+ const DEFAULT_MAX_STEPS_BY_AGENT = { curate: 200 };
21178
+ const MAX_MAX_STEPS = 500;
21129
21179
  const DEFAULT_RECENT_UPDATES = 10;
21130
21180
  const MAX_RECENT_UPDATES = 100;
21131
21181
  function entryName(entry) {
@@ -21142,7 +21192,7 @@ function assertUniqueNames(entries, phase) {
21142
21192
  }
21143
21193
  function boundedSteps(entry, fallback) {
21144
21194
  const steps = entry?.maxSteps ?? fallback;
21145
- if (!Number.isInteger(steps) || steps < 1 || steps > 25) throw new Error("Subconscious maxSteps must be an integer between 1 and 25.");
21195
+ if (!Number.isInteger(steps) || steps < 1 || steps > MAX_MAX_STEPS) throw new Error(`Subconscious maxSteps must be an integer between 1 and ${MAX_MAX_STEPS}.`);
21146
21196
  return steps;
21147
21197
  }
21148
21198
  function resolveExtractor(entry) {
@@ -21157,12 +21207,13 @@ function resolveExtractor(entry) {
21157
21207
  function resolveAgent(entry, builtIns, globalModel, globalMaxSteps) {
21158
21208
  const config = typeof entry === "string" ? void 0 : entry;
21159
21209
  const name = entryName(entry);
21210
+ const fallbackMaxSteps = globalMaxSteps ?? DEFAULT_MAX_STEPS_BY_AGENT[name] ?? DEFAULT_MAX_STEPS;
21160
21211
  return {
21161
21212
  name,
21162
21213
  instructions: config?.instructions,
21163
21214
  model: config?.model ?? globalModel,
21164
21215
  agent: config?.agent,
21165
- maxSteps: boundedSteps(config, globalMaxSteps),
21216
+ maxSteps: boundedSteps(config, fallbackMaxSteps),
21166
21217
  builtIn: builtIns.has(name)
21167
21218
  };
21168
21219
  }
@@ -21179,7 +21230,7 @@ var Subconscious = class {
21179
21230
  const reflection = config.reflection ?? ["curate", "learn"];
21180
21231
  assertUniqueNames(observation, "observation");
21181
21232
  assertUniqueNames(reflection, "reflection");
21182
- const maxSteps = boundedSteps(config, DEFAULT_MAX_STEPS);
21233
+ const maxSteps = config.maxSteps === void 0 ? void 0 : boundedSteps(config, DEFAULT_MAX_STEPS);
21183
21234
  for (const entry of observation) this.#validateObservationEntry(entry);
21184
21235
  for (const entry of reflection) this.#validateReflectionEntry(entry);
21185
21236
  const recentUpdates = config.activity === false ? false : config.activity?.recentUpdates ?? DEFAULT_RECENT_UPDATES;
@@ -21271,6 +21322,8 @@ const DEFAULT_INSTRUCTIONS$1 = `Maintain durable scoped knowledge from the commi
21271
21322
 
21272
21323
  Use the read tools to inspect existing nodes, knowledge records, mentions, backlinks, and long-form node content. Use the write tools to merge true duplicates, repair names and links, soft-delete superseded knowledge records, rescope knowledge records only when justified and permitted by their ceilings, and synthesize useful node content. Never restore deleted knowledge records. Never invent provenance, capture timestamps, scopes, ceilings, IDs, or versions; those are enforced by code. Resolve optimistic-concurrency conflicts by reading the latest record and retrying the intended mutation. Keep the reserved capture-guidance node concise and update it only with durable guidance that will improve future capture.
21273
21324
 
21325
+ For each significant entity node touched by a KnowledgeRecord in the current worklist, including people, projects, pull requests, issues, repositories, documents, and organizations, maintain a short entity description; do not walk nodes outside the worklist for this. Use the supplied record and read the named node once; do not search or browse unless its identity is ambiguous. Describe what the entity is, its current state, and links to its real-world object, then write it with knowledge_write_node_description, which always requires expectedVersion from the node you just read; after a version conflict, re-read the node and regenerate the description from its current state before retrying. If the node does not exist yet, create it first with knowledge_write_node_content, then re-read it for its fresh version before writing the description. Write one or two plain-text sentences, roughly 40 to 75 tokens; storage rejects any description over its hard length cap, so keep them tight and put long-form detail in node content instead. Include links only from the entity's own records or observations that explicitly associate the link with that entity; never invent a URL, identifier, file path, or provenance. Leave long-form node content alone unless you are synthesizing it deliberately; never shrink content into a synopsis. For entity-description maintenance only, skip low-signal nodes with only a trivial record, any system-kind node, and the reserved capture-guidance node.
21326
+
21274
21327
  Process the worklist in ID order. Every time you finish processing a KnowledgeRecord, include <curation-complete through="RECORD_ID" /> in your next text response with that record's ID. The latest marker is your acknowledged cursor, so progress survives if you run out of steps mid-batch. Your final response must end with the marker for the last KnowledgeRecord you fully processed. If you cannot finish the batch, acknowledge only the last KnowledgeRecord you did finish. Do not emit a completion marker when no KnowledgeRecord was fully processed.`;
21275
21328
  const PINNED_INSTRUCTIONS = `Maintain the pin set with knowledge_pin, knowledge_edit_pin, and knowledge_unpin. Pinned entries are delivered to the main agent on every turn, so they cost tokens permanently and must stay short. Pin only knowledge that should apply without being asked for, such as standing instructions, durable preferences, and hard constraints. Pin only knowledge that is BOTH costly to rediscover AND not the kind of thing a future agent would think to search for; anything a reminder can surface on demand does not belong in the pin set. Unpin an entry as soon as it stops being unconditionally true.`;
21276
21329
  function resolveScope$1(context) {
@@ -21282,6 +21335,11 @@ function resolveScope$1(context) {
21282
21335
  `thread:${context.parentThreadId}`
21283
21336
  ]);
21284
21337
  }
21338
+ /**
21339
+ * Upper bound on records pulled into a single reflection prompt. `hasMore` tells the agent the
21340
+ * worklist was truncated; the cursor it advances lets the next cycle pick up the remainder.
21341
+ */
21342
+ const MAX_WORKLIST_RECORDS$1 = 1e3;
21285
21343
  async function readWorklist$1(store, sourceThreadId, scope, after) {
21286
21344
  const records = [];
21287
21345
  let cursor = after;
@@ -21295,7 +21353,7 @@ async function readWorklist$1(store, sourceThreadId, scope, after) {
21295
21353
  });
21296
21354
  records.push(...page.records);
21297
21355
  cursor = page.nextCursor;
21298
- } while (cursor && records.length < 500);
21356
+ } while (cursor && records.length < MAX_WORKLIST_RECORDS$1);
21299
21357
  return {
21300
21358
  records,
21301
21359
  hasMore: Boolean(cursor)
@@ -21415,6 +21473,8 @@ function resolveScope(context) {
21415
21473
  `thread:${context.parentThreadId}`
21416
21474
  ]);
21417
21475
  }
21476
+ /** Upper bound on records pulled into a single reflection prompt; `hasMore` signals truncation. */
21477
+ const MAX_WORKLIST_RECORDS = 1e3;
21418
21478
  async function readWorklist(store, sourceThreadId, scope, after) {
21419
21479
  const records = [];
21420
21480
  let cursor = after;
@@ -21427,7 +21487,7 @@ async function readWorklist(store, sourceThreadId, scope, after) {
21427
21487
  });
21428
21488
  records.push(...page.records);
21429
21489
  cursor = page.nextCursor;
21430
- } while (cursor && records.length < 500);
21490
+ } while (cursor && records.length < MAX_WORKLIST_RECORDS);
21431
21491
  return {
21432
21492
  records,
21433
21493
  hasMore: Boolean(cursor)
@@ -36766,23 +36826,23 @@ const createModelInstance = async (provider, modelId, version = "v2") => {
36766
36826
  try {
36767
36827
  const providerFn = version === `v1` ? { v1: {
36768
36828
  openai: async () => {
36769
- const { openai } = await import("./dist-bAFqx06T.js");
36829
+ const { openai } = await import("./dist-DoTDZ7wF.js");
36770
36830
  return openai(modelId);
36771
36831
  },
36772
36832
  anthropic: async () => {
36773
- const { anthropic } = await import("./dist-CscF1cF8.js");
36833
+ const { anthropic } = await import("./dist-k6UeNFHu.js");
36774
36834
  return anthropic(modelId);
36775
36835
  },
36776
36836
  groq: async () => {
36777
- const { groq } = await import("./dist-CHJcZQdS.js");
36837
+ const { groq } = await import("./dist-XnA2Lowr.js");
36778
36838
  return groq(modelId);
36779
36839
  },
36780
36840
  xai: async () => {
36781
- const { xai } = await import("./dist-Jn3uXsoB.js");
36841
+ const { xai } = await import("./dist-Da8AufS5.js");
36782
36842
  return xai(modelId);
36783
36843
  },
36784
36844
  google: async () => {
36785
- const { google } = await import("./dist-CRgxcDTg.js");
36845
+ const { google } = await import("./dist-Wjq6PT76.js");
36786
36846
  return google(modelId);
36787
36847
  }
36788
36848
  } }[version][provider] : () => new ModelRouterLanguageModel(`${provider}/${modelId}`);
@@ -46361,4 +46421,4 @@ const agentBuilderWorkflows = {
46361
46421
  //#endregion
46362
46422
  export { agentBuilderWorkflows };
46363
46423
 
46364
- //# sourceMappingURL=dist-L0EogwX_.js.map
46424
+ //# sourceMappingURL=dist-DmVdNrSg.js.map