promptfoo 0.121.3 → 0.121.5

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 (394) hide show
  1. package/README.md +1 -1
  2. package/dist/src/{ListApp-Du7YVwj5.js → ListApp-BRUsT43Y.js} +1 -1
  3. package/dist/src/{accounts-BPyfpSeU.cjs → accounts-BIFntVWB.cjs} +5 -5
  4. package/dist/src/{accounts-CFLK3mnD.js → accounts-CLJHCDDb.js} +6 -6
  5. package/dist/src/{accounts-B2XmGjty.js → accounts-CaLNYnf7.js} +5 -5
  6. package/dist/src/{accounts-Xatc0RYb.js → accounts-bnyHT7Ju.js} +5 -5
  7. package/dist/src/{agentic-utils-36epdqwB.js → agentic-utils-B5krlibj.js} +3 -3
  8. package/dist/src/{agentic-utils-DIYAAYE7.js → agentic-utils-Ba67xmgs.js} +3 -3
  9. package/dist/src/{agentic-utils-D8yXo5Lm.js → agentic-utils-BclbiXiq.js} +4 -4
  10. package/dist/src/{agentic-utils-DAVsChuB.cjs → agentic-utils-D2x0wGhB.cjs} +3 -3
  11. package/dist/src/{agents-CLQ-P15P.js → agents-BGqaTDnr.js} +5 -7
  12. package/dist/src/{agents-wg3ohknq.js → agents-BV9yFpXX.js} +6 -7
  13. package/dist/src/{agents-CgBniSlI.js → agents-BYdMl1UE.js} +5 -9
  14. package/dist/src/{agents-Bqgfdokm.js → agents-DhxWMCtH.js} +35 -14
  15. package/dist/src/{agents-BBWxKSM0.cjs → agents-DiWmQYH9.cjs} +5 -7
  16. package/dist/src/{agents-CAYbM7qD.cjs → agents-WULPVjbH.cjs} +34 -12
  17. package/dist/src/{agents-DSSTV4bv.js → agents-emVcx3yh.js} +35 -13
  18. package/dist/src/{agents-BBVJCIYr.js → agents-n6vPqV3i.js} +35 -13
  19. package/dist/src/{aimlapi-BwGC1TtS.js → aimlapi-BxqK9HF_.js} +8 -14
  20. package/dist/src/{aimlapi-Bv8Fmc-b.cjs → aimlapi-BzLjZI_m.cjs} +8 -15
  21. package/dist/src/{aimlapi-MgSLdvy7.js → aimlapi-DR4pgeiC.js} +7 -14
  22. package/dist/src/{aimlapi-DaC3qZ-o.js → aimlapi-uPGp0Zdo.js} +7 -16
  23. package/dist/src/app/app/tsconfig.app.tsbuildinfo +1 -0
  24. package/dist/src/app/assets/Report-vjzrbgce.js +1 -0
  25. package/dist/src/app/assets/index-B3NQ8HTd.js +385 -0
  26. package/dist/src/app/assets/index-Cli2yAXv.css +1 -0
  27. package/dist/src/app/assets/rolldown-runtime-COnpUsM8.js +1 -0
  28. package/dist/src/app/assets/scroll-timeline-D9IT_e8Z.js +1 -0
  29. package/dist/src/app/assets/sync-IjzpWrOE.js +4 -0
  30. package/dist/src/app/assets/vendor-charts-BNdH8TCw.js +36 -0
  31. package/dist/src/app/assets/vendor-markdown-Ch00wnNI.js +29 -0
  32. package/dist/src/app/assets/vendor-react-CVvmk1UB.js +9 -0
  33. package/dist/src/app/assets/vendor-utils-BnEYbx2Q.js +37 -0
  34. package/dist/src/app/index.html +32 -7
  35. package/dist/src/{audio-Bn44pQxv.js → audio-BvpTOArF.js} +4 -4
  36. package/dist/src/{audio-DVFjQ67_.cjs → audio-C0vDeS0j.cjs} +4 -4
  37. package/dist/src/{audio-DjU9GswO.js → audio-CScmnmEB.js} +4 -5
  38. package/dist/src/{audio-DDA5WHdx.js → audio-Da8U9IS5.js} +4 -4
  39. package/dist/src/{base-CKjwebIH.js → base-BOMaNEes.js} +3 -3
  40. package/dist/src/{base-CqzQ4K8j.js → base-BTux96b1.js} +3 -3
  41. package/dist/src/{base-BboXIF_0.cjs → base-Tw6uhH8K.cjs} +3 -3
  42. package/dist/src/{base-Cz2ZC_iA.js → base-dYsl2hmL.js} +3 -3
  43. package/dist/src/{blobs-C6j0bvFz.cjs → blobs-B95F_7vE.cjs} +3 -3
  44. package/dist/src/{blobs-DXTl6J3H.js → blobs-BW4U31ue.js} +3 -3
  45. package/dist/src/{blobs-BUWmKWzo.js → blobs-D_gg8nbm.js} +4 -4
  46. package/dist/src/{blobs-B1JriOyi.js → blobs-DjLby-uP.js} +4 -4
  47. package/dist/src/cache-BI5BY7ey.js +280 -0
  48. package/dist/src/cache-BRkhlH3k.cjs +3 -0
  49. package/dist/src/cache-BlC6aeJ0.js +3 -0
  50. package/dist/src/cache-Bzttsk0X.js +310 -0
  51. package/dist/src/cache-Cr-qWIbP.js +310 -0
  52. package/dist/src/cache-DGg-yTZG.cjs +376 -0
  53. package/dist/src/{chat-BEwdgGEg.js → chat-BLOdH60v.js} +63 -37
  54. package/dist/src/{chat-B0iaWhoh.js → chat-Cx_LkwvZ.js} +63 -37
  55. package/dist/src/{chat-DK1U-eZ-.js → chat-D9nudO9b.js} +5 -14
  56. package/dist/src/{chat-pxmiVpWe.js → chat-DChSH_Es.js} +63 -37
  57. package/dist/src/{chat-B-52XYI1.js → chat-DG2LkwLq.js} +3 -13
  58. package/dist/src/{chat-BtIKkLKx.cjs → chat-DH97tVV9.cjs} +3 -13
  59. package/dist/src/{chat-BE0qTA8e.js → chat-aMQZw6R7.js} +4 -16
  60. package/dist/src/{chat-CM8qWR3_.cjs → chat-vYqqv1gP.cjs} +64 -38
  61. package/dist/src/{chatkit-_8eJqKcD.js → chatkit-B8X34dQc.js} +4 -4
  62. package/dist/src/{chatkit-BYGQlHlV.js → chatkit-BXu42Qwt.js} +4 -4
  63. package/dist/src/{chatkit-a2D6mY6s.js → chatkit-CbMRoeYw.js} +4 -4
  64. package/dist/src/{chatkit-Cx174XI3.cjs → chatkit-D44VyUyB.cjs} +4 -4
  65. package/dist/src/{claude-agent-sdk-8ddRp1L2.cjs → claude-agent-sdk-BRq0bbIK.cjs} +23 -18
  66. package/dist/src/{claude-agent-sdk-CMjh4LFH.js → claude-agent-sdk-BjriSVRZ.js} +20 -15
  67. package/dist/src/{claude-agent-sdk-HgbFioFw.js → claude-agent-sdk-BzNZeZ0N.js} +20 -15
  68. package/dist/src/{claude-agent-sdk-Bq5EArsX.js → claude-agent-sdk-DYv_AJ8u.js} +21 -17
  69. package/dist/src/cloud-CoD5OacT.js +3 -0
  70. package/dist/src/{cloud-z8KZpUoa.js → cloud-Da0bofJd.js} +25 -13
  71. package/dist/src/{cloudflare-ai-Bbp26N0L.js → cloudflare-ai-CXC4b1EU.js} +5 -14
  72. package/dist/src/{cloudflare-ai-BGyXlpXJ.js → cloudflare-ai-CyBoIs1Q.js} +7 -15
  73. package/dist/src/{cloudflare-ai-DdKP9TKT.js → cloudflare-ai-DGOwgexC.js} +6 -17
  74. package/dist/src/{cloudflare-ai-C62x6MQG.cjs → cloudflare-ai-DJv5qnyb.cjs} +6 -15
  75. package/dist/src/{cloudflare-gateway-DXhtXDRb.js → cloudflare-gateway-1sAoOyft.js} +6 -16
  76. package/dist/src/{cloudflare-gateway-D-e9i1Sn.js → cloudflare-gateway-D-dnkzCF.js} +5 -18
  77. package/dist/src/{cloudflare-gateway-Dx36ftqF.cjs → cloudflare-gateway-DKVjkDav.cjs} +4 -15
  78. package/dist/src/{cloudflare-gateway-BwAaUgeW.js → cloudflare-gateway-TJkVrZlB.js} +4 -15
  79. package/dist/src/codex-app-server-CCLjqCh9.js +1915 -0
  80. package/dist/src/codex-app-server-CCe0TiDc.js +1915 -0
  81. package/dist/src/codex-app-server-CPW1LFwh.js +1916 -0
  82. package/dist/src/codex-app-server-VMRnjZ68.cjs +1920 -0
  83. package/dist/src/codex-sdk-1jm_qPHf.js +3 -0
  84. package/dist/src/codex-sdk-Bd8UbO9q.cjs +1172 -0
  85. package/dist/src/codex-sdk-BgEFQ70r.js +1164 -0
  86. package/dist/src/codex-sdk-Bzb_TqX9.js +1165 -0
  87. package/dist/src/codex-sdk-Danroptg.cjs +2 -0
  88. package/dist/src/codex-sdk-DfvDTN33.js +1165 -0
  89. package/dist/src/{cometapi-BDyV-NNm.js → cometapi-B5ImDlSm.js} +9 -15
  90. package/dist/src/{cometapi-C3hOlM7-.cjs → cometapi-BgAkuYCw.cjs} +9 -16
  91. package/dist/src/{cometapi-hhL4TAh3.js → cometapi-CC7hWxmX.js} +8 -15
  92. package/dist/src/{cometapi-sp7sJpBD.js → cometapi-CCbpHkuF.js} +8 -17
  93. package/dist/src/{completion-DoYy49ti.js → completion-2iuYVxwi.js} +8 -57
  94. package/dist/src/{completion-BCimtq-h.js → completion-CrD6MQ93.js} +8 -57
  95. package/dist/src/{completion-DlXUhj5c.cjs → completion-DtQ72Bm3.cjs} +7 -62
  96. package/dist/src/{completion-DCjv7RZ3.js → completion-Vq_ad618.js} +8 -57
  97. package/dist/src/{createHash-CTQmL3G2.js → createHash-4gFQpDDv.js} +3 -3
  98. package/dist/src/{createHash-Da8fMwqB.js → createHash-DPpsZgFF.js} +3 -3
  99. package/dist/src/{createHash-DmPQkvBh.js → createHash-Un4Q_huE.js} +3 -3
  100. package/dist/src/{createHash-BYwImsYv.cjs → createHash-VvBIc-AW.cjs} +4 -4
  101. package/dist/src/{docker-CxCkwMzc.js → docker--3qzPa-6.js} +6 -14
  102. package/dist/src/{docker-Cqj2-QVi.cjs → docker-D3AY-5F5.cjs} +7 -15
  103. package/dist/src/{docker-FeBni2dw.js → docker-DCsCDvwM.js} +7 -14
  104. package/dist/src/{docker-DpguQj-w.js → docker-Dorv4_Dg.js} +6 -16
  105. package/dist/src/embedding-BXhN5lCH.cjs +63 -0
  106. package/dist/src/embedding-ChS1ivFS.js +58 -0
  107. package/dist/src/embedding-DNRvZwRN.js +59 -0
  108. package/dist/src/embedding-D_bI4NDq.js +58 -0
  109. package/dist/src/entrypoint.js +69 -6
  110. package/dist/src/{errors-P6ll7XSJ.js → errors-DFHe4L-n.js} +1 -1
  111. package/dist/src/{esm-SUNIX1x3.js → esm-B6whoAcf.js} +15 -6
  112. package/dist/src/{esm-CKWP3u_P.js → esm-BRkfNsYs.js} +16 -7
  113. package/dist/src/{esm-7UIl0pPM.js → esm-BX8fwlAO.js} +27 -18
  114. package/dist/src/{esm-CipptfDu.cjs → esm-B_rGuPTo.cjs} +15 -6
  115. package/dist/src/eval-BQPLBJbw.js +3 -0
  116. package/dist/src/{eval-BTqTn7lb.js → eval-DJ_4A-tr.js} +50 -21
  117. package/dist/src/evalResult-BBJAHAtw.cjs +2 -0
  118. package/dist/src/evalResult-BBK58h2B.js +3 -0
  119. package/dist/src/{evalResult-DpARzUCb.cjs → evalResult-Cx-8OWkb.cjs} +29 -11
  120. package/dist/src/{evalResult-DUDShQrm.js → evalResult-D6P5I5il.js} +29 -11
  121. package/dist/src/{evalResult-BkIhRdTe.js → evalResult-pSvGWFMo.js} +29 -11
  122. package/dist/src/evalResult-spPqh1G_.js +2 -0
  123. package/dist/src/{evaluator-BcvOGaam.js → evaluator-D-UIbbYq.js} +3975 -2152
  124. package/dist/src/evaluator-DgLKaZk8.js +3 -0
  125. package/dist/src/{extractor-D_wd8jxt.js → extractor-BM3jRERL.js} +6 -6
  126. package/dist/src/{extractor-DG3sSfXE.cjs → extractor-Dxr2J_wK.cjs} +6 -6
  127. package/dist/src/{extractor-CAZ2G3Kh.js → extractor-DxyiFhPk.js} +6 -6
  128. package/dist/src/{extractor-C8XwivI9.js → extractor-YlZbUMsL.js} +6 -6
  129. package/dist/src/fetch-8viavNv8.js +3 -0
  130. package/dist/src/{fetch-DoVRJZhJ.js → fetch-B6ch2nU2.js} +199 -60
  131. package/dist/src/{fetch-CVAtKnI3.js → fetch-D9xxyC1p.js} +404 -252
  132. package/dist/src/{fetch-BnR9wSnm.cjs → fetch-NuqXW1Xb.cjs} +415 -263
  133. package/dist/src/{fetch-BiYv2BZc.js → fetch-Y5qX_kST.js} +222 -70
  134. package/dist/src/{fileExtensions-LcDYkU4v.js → fileExtensions-8CjoL7vB.js} +1 -1
  135. package/dist/src/{fileExtensions-DnqA1y9x.js → fileExtensions-BGh-W-HT.js} +1 -1
  136. package/dist/src/{fileExtensions-bYh77CN8.cjs → fileExtensions-D9h-8Wxg.cjs} +1 -1
  137. package/dist/src/{fileExtensions-Ds-foDzt.js → fileExtensions-DysCsxNG.js} +1 -1
  138. package/dist/src/{formatDuration-DgBVMN65.js → formatDuration-Ch4A7G3o.js} +1 -1
  139. package/dist/src/{genaiTracer-BfxrvSUb.cjs → genaiTracer-BokHC-MW.cjs} +7 -3
  140. package/dist/src/{genaiTracer-C1rxGO8Q.js → genaiTracer-C3ZPQU60.js} +6 -2
  141. package/dist/src/{genaiTracer-70Z8BIuV.js → genaiTracer-CFny3gOy.js} +6 -2
  142. package/dist/src/{genaiTracer-D3fD9dNV.js → genaiTracer-DxODqT9e.js} +6 -2
  143. package/dist/src/golang/wrapper.go +1 -1
  144. package/dist/src/{graders-DG7mhg-b.js → graders-BoUqsCEm.js} +7402 -5699
  145. package/dist/src/{graders-BElhu9ZY.cjs → graders-Bw1wk_21.cjs} +5220 -3437
  146. package/dist/src/graders-C84JI-m5.js +2 -0
  147. package/dist/src/graders-CBbd0K0Q.cjs +2 -0
  148. package/dist/src/graders-CbQqpHSN.js +3 -0
  149. package/dist/src/{graders-RjHF8VfG.js → graders-CgPn32yp.js} +7400 -5697
  150. package/dist/src/{graders-BXAJ0sbS.js → graders-CwrbifOo.js} +6136 -4433
  151. package/dist/src/graders-DS42d3ZG.js +2 -0
  152. package/dist/src/{image-6WQXK8m8.js → image-BeWaInPF.js} +4 -4
  153. package/dist/src/{image-PoF6DN3x.js → image-BmilRNqO.js} +8 -8
  154. package/dist/src/{image--F58eEIn.cjs → image-CxJoa3aW.cjs} +8 -8
  155. package/dist/src/{image-fza3zuKs.cjs → image-D10dNAav.cjs} +4 -4
  156. package/dist/src/{image-DO0RYnjH.js → image-Dr_3I3nK.js} +4 -5
  157. package/dist/src/{image-B8b6f36E.js → image-DsGRlkh7.js} +8 -8
  158. package/dist/src/{image-CoxZp9PZ.js → image-a_SGUobh.js} +8 -8
  159. package/dist/src/{image-xNbw5ph2.js → image-qjO6FWPs.js} +4 -4
  160. package/dist/src/index.cjs +4835 -2582
  161. package/dist/src/index.d.cts +2782 -31
  162. package/dist/src/index.d.ts +2783 -32
  163. package/dist/src/index.js +4817 -2564
  164. package/dist/src/{interactiveCheck-BnMYOjMu.js → interactiveCheck-CCICw2cy.js} +2 -2
  165. package/dist/src/{invariant-BtWWVVhl.js → invariant-B2Rf6avk.js} +1 -1
  166. package/dist/src/{invariant-vgHWClmd.js → invariant-DIYf9sP1.js} +1 -1
  167. package/dist/src/{knowledgeBase-Bi7CmDbx.js → knowledgeBase-BBETc5-S.js} +6 -8
  168. package/dist/src/{knowledgeBase-DqrLX8fy.cjs → knowledgeBase-C8qOo26M.cjs} +6 -8
  169. package/dist/src/{knowledgeBase-DFRXPZl_.js → knowledgeBase-CzAi2rUI.js} +7 -8
  170. package/dist/src/{knowledgeBase-Ce3ofVan.js → knowledgeBase-Dr3Kib7F.js} +6 -10
  171. package/dist/src/{litellm-CKiAxnoM.js → litellm-BLSiANhk.js} +6 -14
  172. package/dist/src/{litellm-CnHI69aj.cjs → litellm-CaUmV7Mk.cjs} +6 -15
  173. package/dist/src/{litellm-Tc294Jhj.js → litellm-DQGo_juI.js} +5 -14
  174. package/dist/src/{litellm-Bo2gQXpo.js → litellm-DRc4qWfc.js} +5 -16
  175. package/dist/src/{logger-BcJBzSSA.js → logger-BbY6ypFL.js} +41 -12
  176. package/dist/src/{logger-D5iKBpu_.cjs → logger-COuQb2xB.cjs} +51 -10
  177. package/dist/src/{logger-DO8_zM18.js → logger-Ct2S6Yx-.js} +40 -11
  178. package/dist/src/{logger-BnkjG2jt.js → logger-KD8JjCRJ.js} +41 -12
  179. package/dist/src/{luma-ray-C9q8rdQe.js → luma-ray-B-tNZzqW.js} +6 -10
  180. package/dist/src/{luma-ray-DP0QA9qn.js → luma-ray-CtS3OlGq.js} +6 -10
  181. package/dist/src/{luma-ray-0ehMPt5N.js → luma-ray-PJJgUjOc.js} +6 -11
  182. package/dist/src/{luma-ray-m9Ku2meV.cjs → luma-ray-if-Ml4R9.cjs} +6 -10
  183. package/dist/src/main.d.ts +1 -26
  184. package/dist/src/main.js +1188 -679
  185. package/dist/src/messages-B9dSjrNf.js +544 -0
  186. package/dist/src/messages-BnsVHUnm.cjs +558 -0
  187. package/dist/src/messages-CI69Lasb.js +543 -0
  188. package/dist/src/messages-CewuNcNS.js +543 -0
  189. package/dist/src/{meteor-DLZZ3osF.cjs → meteor-BBGcGeCa.cjs} +1 -1
  190. package/dist/src/{meteor-DUiCJRC-.js → meteor-BKTM-7KS.js} +1 -1
  191. package/dist/src/{meteor-44VjEACX.js → meteor-CeGo0Lu2.js} +2 -2
  192. package/dist/src/{meteor-D-SotUw9.js → meteor-Wc_aUVvu.js} +2 -2
  193. package/dist/src/{modelslab-B5J-ZM5c.js → modelslab-BCLOtfek.js} +8 -10
  194. package/dist/src/{modelslab-IQbNg-r7.cjs → modelslab-BkapYJhh.cjs} +7 -10
  195. package/dist/src/{modelslab-BTOT8FUO.js → modelslab-D73OnKSx.js} +7 -10
  196. package/dist/src/{modelslab-BI458moT.js → modelslab-zpz9JcK0.js} +7 -12
  197. package/dist/src/{nova-reel-BZ9y-Y5s.js → nova-reel-B8F_TK5w.js} +7 -10
  198. package/dist/src/{nova-reel-Xw1SXLpg.js → nova-reel-Bx0NFV2f.js} +6 -10
  199. package/dist/src/{nova-reel-DEeQlnOJ.js → nova-reel-CNGJTLtG.js} +6 -12
  200. package/dist/src/{nova-reel-CE5etkv9.cjs → nova-reel-DkT7tnoB.cjs} +6 -10
  201. package/dist/src/{nova-sonic-Ogqf-csn.js → nova-sonic-BaXRN1cr.js} +5 -7
  202. package/dist/src/{nova-sonic-DXTLpi-r.js → nova-sonic-BeTRaFOh.js} +4 -7
  203. package/dist/src/{nova-sonic-DWswpN1E.js → nova-sonic-CL7Zqv0G.js} +4 -9
  204. package/dist/src/{nova-sonic-N0yCm0vb.cjs → nova-sonic-YT426juD.cjs} +4 -7
  205. package/dist/src/{openai-BcB5KlTk.js → openai-BMHD2Huo.js} +6 -3
  206. package/dist/src/{openai-BMcwgD5C.js → openai-BT-JvDse.js} +6 -3
  207. package/dist/src/{openai-CoxGAQwn.cjs → openai-Cy1XLs0c.cjs} +6 -3
  208. package/dist/src/{openai-D6wITiVn.js → openai-D4fxGvRx.js} +6 -3
  209. package/dist/src/openclaw-Bq7RVR3k.js +1200 -0
  210. package/dist/src/openclaw-DA8U4DsD.js +1201 -0
  211. package/dist/src/openclaw-DObVgpjC.js +1200 -0
  212. package/dist/src/openclaw-DUBZP3GL.cjs +1206 -0
  213. package/dist/src/{opencode-sdk-CHCs7dEb.js → opencode-sdk-BB40Wir1.js} +6 -8
  214. package/dist/src/{opencode-sdk-DDxj4QqH.js → opencode-sdk-BM1UAIv1.js} +6 -8
  215. package/dist/src/{opencode-sdk-WWJhnbKr.cjs → opencode-sdk-CeqiOcOU.cjs} +7 -9
  216. package/dist/src/{opencode-sdk-C71Z0ehR.js → opencode-sdk-ChdK7F7z.js} +6 -9
  217. package/dist/src/{otlpReceiver-CZL48YfC.js → otlpReceiver-C6thJRXi.js} +154 -98
  218. package/dist/src/{otlpReceiver-C9KlUtxh.js → otlpReceiver-CcdIikOu.js} +154 -98
  219. package/dist/src/{otlpReceiver-DHKqJlsz.cjs → otlpReceiver-DNSQj6bf.cjs} +154 -98
  220. package/dist/src/{otlpReceiver-CavGAA6k.js → otlpReceiver-UYMQx3sy.js} +154 -98
  221. package/dist/src/{providerRegistry-BkzVH5Ba.js → providerRegistry-1gB5vtzQ.js} +2 -2
  222. package/dist/src/{providerRegistry-BTDgfV5h.cjs → providerRegistry-BESeALrr.cjs} +2 -2
  223. package/dist/src/{providerRegistry-CUWki5mQ.js → providerRegistry-DoACwqhD.js} +2 -2
  224. package/dist/src/{providerRegistry-B9lh-_tx.js → providerRegistry-PMsleEzs.js} +2 -2
  225. package/dist/src/providers-BuyzKt7C.js +2 -0
  226. package/dist/src/providers-C7lNVBjX.cjs +3 -0
  227. package/dist/src/providers-CCE2COJi2.js +2 -0
  228. package/dist/src/{providers-Cn73d5sr.js → providers-CJh7iriU.js} +17180 -16823
  229. package/dist/src/providers-Ctcc592x.js +3 -0
  230. package/dist/src/{providers-DvddrgxL.js → providers-DRrerKra.js} +1052 -695
  231. package/dist/src/{providers-Ch6Mr0gn.js → providers-DT-GtF2t.js} +16716 -16359
  232. package/dist/src/{providers-CScd1wN6.cjs → providers-eDShy16E.cjs} +19893 -19506
  233. package/dist/src/python/persistent_wrapper.py +0 -5
  234. package/dist/src/{pythonUtils-Cpo0Ez1p.js → pythonUtils-C4tltmIn.js} +4 -4
  235. package/dist/src/{pythonUtils-dAVigVK-.cjs → pythonUtils-CoLaCwNY.cjs} +4 -4
  236. package/dist/src/{pythonUtils-Bzwbgpbg.js → pythonUtils-DMO68Jg7.js} +3 -3
  237. package/dist/src/{pythonUtils-wIqk7zAf.js → pythonUtils-DNqbnRdx.js} +3 -3
  238. package/dist/src/{quiverai-BeofbLVc.js → quiverai-BSS9a7wV.js} +4 -4
  239. package/dist/src/{quiverai-DVSEqJiq.js → quiverai-Bk1KrvL6.js} +4 -4
  240. package/dist/src/{quiverai-CcUhPIBg.cjs → quiverai-Bpx6MZ7T.cjs} +4 -4
  241. package/dist/src/{quiverai-CCQn73lq.js → quiverai-CPKhWgaT.js} +4 -5
  242. package/dist/src/render-7uNJ2V14.js +135 -0
  243. package/dist/src/render-DlscvAUJ.js +135 -0
  244. package/dist/src/render-eui5p5mL.js +136 -0
  245. package/dist/src/{render-BHl6QVq9.js → render-nj-UaPdn.js} +2 -3
  246. package/dist/src/render-tG6ir9_g.cjs +165 -0
  247. package/dist/src/{responses-CgNyTPsY.js → responses-1ztiVYsx.js} +56 -17
  248. package/dist/src/{responses-BKP_WYis.js → responses-B8haB-mD.js} +56 -17
  249. package/dist/src/{responses-CQb1Tj69.js → responses-BiaBguAu.js} +56 -17
  250. package/dist/src/{responses-mo0KQDbu.cjs → responses-CF-ayauu.cjs} +56 -17
  251. package/dist/src/rubyUtils-4hjGxvju.js +3 -0
  252. package/dist/src/{rubyUtils-DECSbsfY.js → rubyUtils-BI0p46eZ.js} +3 -3
  253. package/dist/src/{rubyUtils-CiVfln3g.js → rubyUtils-CIQFnVz4.js} +3 -3
  254. package/dist/src/rubyUtils-CO-tuszQ.cjs +2 -0
  255. package/dist/src/{rubyUtils-PgU-gHmx.js → rubyUtils-DGnoCYL2.js} +4 -4
  256. package/dist/src/{rubyUtils-CGeUtCfW.cjs → rubyUtils-DoifqkiA.cjs} +5 -4
  257. package/dist/src/{sagemaker-CqeASYE5.js → sagemaker-BDLeW29y.js} +14 -18
  258. package/dist/src/{sagemaker-MUbD5V3v.js → sagemaker-C5T60MKf.js} +14 -19
  259. package/dist/src/{sagemaker-CVv8W7so.js → sagemaker-ClS_NB07.js} +14 -18
  260. package/dist/src/{sagemaker-jiw1wQa-.cjs → sagemaker-ljtY12VM.cjs} +14 -18
  261. package/dist/src/{scanner-DVDeUz1r.js → scanner-nOCWNIXa.js} +130 -35
  262. package/dist/src/server/golang/wrapper.go +1 -1
  263. package/dist/src/server/index.js +4829 -2529
  264. package/dist/src/server/python/persistent_wrapper.py +0 -5
  265. package/dist/src/{server-BtoCXeXI.cjs → server-BEECpeGG.cjs} +140 -6
  266. package/dist/src/{server-DZ9MtCn0.js → server-ByiF3qlg.js} +129 -9
  267. package/dist/src/{server-Cns05F1j.js → server-ByxbqAcQ.js} +128 -8
  268. package/dist/src/server-C0XKRNB_.cjs +2 -0
  269. package/dist/src/server-C_15p79-.js +3 -0
  270. package/dist/src/{server-CP9qKM40.js → server-gyd6d4Hc.js} +126 -7
  271. package/dist/src/{signal-C3ZTsUgi.js → signal-DTtUuU3l.js} +3 -3
  272. package/dist/src/{slack-DCEV-vWP.js → slack-4zZX1OKP.js} +2 -2
  273. package/dist/src/{slack-94iG3T0s.cjs → slack-BLlsDpfG.cjs} +2 -2
  274. package/dist/src/{slack-BR0HtO3K.js → slack-BPYLQLgb.js} +2 -2
  275. package/dist/src/{slack-2sdpGzbt.js → slack-Bamy_7te.js} +2 -2
  276. package/dist/src/{store-CLyU7AtI.cjs → store-2K0kDi80.cjs} +3 -3
  277. package/dist/src/{store-VB0GP46K.js → store-2OXm_eBY.js} +3 -3
  278. package/dist/src/store-BELqNwvz.js +3 -0
  279. package/dist/src/{store-Cj258DgL.js → store-BPkzEyFM.js} +3 -3
  280. package/dist/src/{store-P8OKm19S.js → store-CPh25336.js} +3 -3
  281. package/dist/src/store-uQZ4AjPe.cjs +2 -0
  282. package/dist/src/{tables-BEIFz2tM.js → tables-BMSOS2Gg.js} +3 -3
  283. package/dist/src/{tables-BdZQEpRz.cjs → tables-CXbaZ9y1.cjs} +3 -3
  284. package/dist/src/{tables-DmzvLbeZ.js → tables-NlvH23ky.js} +3 -3
  285. package/dist/src/{tables-kC7R5kiK.js → tables-WgdUZ8Ck.js} +3 -3
  286. package/dist/src/{telemetry-DPXLd7UE.js → telemetry--iqaGyaS.js} +5 -4
  287. package/dist/src/{telemetry-re627Lre.cjs → telemetry-CEQxGnMZ.cjs} +8 -7
  288. package/dist/src/{telemetry-BugWqKiu.js → telemetry-CgdVGV8N.js} +5 -4
  289. package/dist/src/{telemetry-BnH5VJAU.js → telemetry-DWdGHvEf.js} +5 -4
  290. package/dist/src/telemetry-DjNoC_n3.cjs +2 -0
  291. package/dist/src/telemetry-ZdPZc0fm.js +3 -0
  292. package/dist/src/{text-CW1cyrwj.cjs → text-BiNME7QG.cjs} +1 -1
  293. package/dist/src/{text-Db-Wt2u2.js → text-D4lz-Jg_.js} +1 -1
  294. package/dist/src/{text-TIv0QYnd.js → text-DDQP0tuQ.js} +1 -1
  295. package/dist/src/{text-B_UCRPp2.js → text-NWvfMfkF.js} +1 -1
  296. package/dist/src/{tokenUsageUtils-DflFMjS0.js → tokenUsageUtils-2wIvAhB3.js} +7 -3
  297. package/dist/src/{tokenUsageUtils-BDGe-iyI.js → tokenUsageUtils-4c780gFd.js} +7 -3
  298. package/dist/src/{tokenUsageUtils-NYT-WKS6.js → tokenUsageUtils-BjVkdk18.js} +7 -3
  299. package/dist/src/{tokenUsageUtils-bVa1ga6f.cjs → tokenUsageUtils-C9odhsbW.cjs} +7 -3
  300. package/dist/src/{transcription-CaMivnjG.js → transcription-84t4ALo2.js} +7 -11
  301. package/dist/src/{transcription-Hb3VnC4M.js → transcription-Bm2emLmJ.js} +8 -11
  302. package/dist/src/{transcription-BvtsrzRG.cjs → transcription-CZ4LG5hQ.cjs} +9 -13
  303. package/dist/src/{transcription-DOMMTu01.js → transcription-D7Q0vJsh.js} +7 -13
  304. package/dist/src/{transform-DrleutM3.js → transform-B-b6Cq-q.js} +8 -6
  305. package/dist/src/transform-BQt0BeAW.js +3 -0
  306. package/dist/src/transform-Bq5oqC0s.cjs +2 -0
  307. package/dist/src/{transform-ZrG2dvlo.cjs → transform-C9izGX54.cjs} +5 -5
  308. package/dist/src/{transform-BzK09Q_9.js → transform-CwbAZ84V.js} +5 -5
  309. package/dist/src/{transform-0BwoBsvO.cjs → transform-Dg4LcO1Y.cjs} +18 -10
  310. package/dist/src/{transform-B2-jIv68.js → transform-DtooZqYY.js} +8 -6
  311. package/dist/src/{transform-ljLYHEPh.js → transform-DzCF-wqV.js} +5 -5
  312. package/dist/src/{transform-DyDAwEpE.js → transform-_DpNB4qp.js} +9 -7
  313. package/dist/src/{transform-BqPkNPYm.js → transform-eGiUAv86.js} +5 -5
  314. package/dist/src/{transformersAvailability-DKoRtQLy.cjs → transformersAvailability-B22swDxr.cjs} +1 -1
  315. package/dist/src/{transformersAvailability-BGkzavwb.js → transformersAvailability-lvCCvuPT.js} +1 -1
  316. package/dist/src/{transformersAvailability-D6c6ROpT.js → transformersAvailability-rJGPccjr.js} +1 -1
  317. package/dist/src/{types-Cd3ygw8W.js → types-BDjGOq4E.js} +354 -24
  318. package/dist/src/{types-CIhFeUC4.js → types-BVH9hjgW.js} +364 -23
  319. package/dist/src/{types-D8cGDZbL.cjs → types-CgG2rKiW.cjs} +534 -167
  320. package/dist/src/{types-q8GXGF65.js → types-DNRZVOue.js} +498 -167
  321. package/dist/src/{util-BLvy9qfE.js → util-3pBZZb_H.js} +151 -149
  322. package/dist/src/{util-CFj4YKIn.cjs → util-A5_ZsQUn.cjs} +66 -44
  323. package/dist/src/{util-BtoGs5Cb.js → util-B9CNhyac.js} +66 -44
  324. package/dist/src/{util-Bm3E9jpK.js → util-BQOCAHQC.js} +692 -690
  325. package/dist/src/{util-vNmDL5DT.js → util-BVXcTwXu.js} +138 -36
  326. package/dist/src/{util-CgDCK4KI.js → util-BlFVL0UF.js} +66 -44
  327. package/dist/src/{util-DM2rTn_6.js → util-C-kmRosx.js} +66 -44
  328. package/dist/src/{util-DbVG-yZU.js → util-DFPeFkiV.js} +138 -36
  329. package/dist/src/{util-DMFeUvLz.js → util-DN0-b81k.js} +138 -36
  330. package/dist/src/{util--9u9UVCt.cjs → util-Dpmm_dAI.cjs} +143 -35
  331. package/dist/src/{util-CMMkIxfU.js → util-Dub0f_ej.js} +693 -691
  332. package/dist/src/{util-CuLo2pMR.cjs → util-DvpHnLt0.cjs} +714 -719
  333. package/dist/src/{utils-DOjD4dTC.js → utils-BUMN8orw.js} +6 -4
  334. package/dist/src/{utils-DKw8mrgr.cjs → utils-DkVeShIB.cjs} +6 -4
  335. package/dist/src/{utils-DEuL4VNB.js → utils-kt7lv30R.js} +6 -4
  336. package/dist/src/{utils-CFxO9KGo.js → utils-o8S5huU2.js} +6 -4
  337. package/dist/src/version-0frU0UTr.js +16 -0
  338. package/dist/src/version-CbpiUINz.js +17 -0
  339. package/dist/src/version-CbuBKu2U.js +16 -0
  340. package/dist/src/version-D9zu9FWB.cjs +27 -0
  341. package/dist/tsconfig.tsbuildinfo +1 -1
  342. package/package.json +57 -46
  343. package/dist/src/app/assets/index-B6l9CVVb.js +0 -439
  344. package/dist/src/app/assets/index-DyZ0Ep37.css +0 -1
  345. package/dist/src/app/assets/scroll-timeline-BdJZVXlz.js +0 -1
  346. package/dist/src/app/assets/sync-CStkzc6u.js +0 -4
  347. package/dist/src/app/assets/vendor-charts-BnDWwBlI.js +0 -36
  348. package/dist/src/app/assets/vendor-markdown-Bz7N-ca6.js +0 -29
  349. package/dist/src/app/assets/vendor-react-AtKqiNEf.js +0 -4
  350. package/dist/src/app/assets/vendor-syntax-D06x6TQF.js +0 -2
  351. package/dist/src/app/assets/vendor-utils-BvMHZmO7.js +0 -37
  352. package/dist/src/cache-C5yFZ4gC.cjs +0 -816
  353. package/dist/src/cache-CaT5tPgo.js +0 -756
  354. package/dist/src/cache-CyCanoMu.js +0 -6
  355. package/dist/src/cache-DSqR6ezl.js +0 -726
  356. package/dist/src/cache-Df_QFDNu.cjs +0 -5
  357. package/dist/src/cache-HP0NP4k3.js +0 -756
  358. package/dist/src/cloud-DE3t1-ZI.js +0 -4
  359. package/dist/src/codex-sdk-BQEw16R_.js +0 -834
  360. package/dist/src/codex-sdk-C_07GuVS.js +0 -834
  361. package/dist/src/codex-sdk-DE5G18dx.js +0 -835
  362. package/dist/src/codex-sdk-ZLKfDjqP.cjs +0 -838
  363. package/dist/src/eval-7aEqoMs3.js +0 -15
  364. package/dist/src/evalResult-CYNHkk5A.js +0 -12
  365. package/dist/src/evalResult-CuvJeNiM.js +0 -10
  366. package/dist/src/evalResult-tGdilrWt.cjs +0 -10
  367. package/dist/src/evaluator-BBUqRhz1.js +0 -36
  368. package/dist/src/fetch-UWU706qb.js +0 -5
  369. package/dist/src/graders-BxfEguVY.js +0 -32
  370. package/dist/src/graders-CzVMbEnv.js +0 -34
  371. package/dist/src/graders-DjCXfj0l.cjs +0 -32
  372. package/dist/src/graders-kHzIWOKu.js +0 -32
  373. package/dist/src/messages-DJNo37Ko.js +0 -246
  374. package/dist/src/messages-Dy9QecMs.js +0 -245
  375. package/dist/src/messages-HJsyEh4o.cjs +0 -257
  376. package/dist/src/messages-biC_ex-p.js +0 -245
  377. package/dist/src/openclaw-0Sv7AK3O.js +0 -580
  378. package/dist/src/openclaw-CXxbKgDH.cjs +0 -586
  379. package/dist/src/openclaw-D1FSCps-.js +0 -580
  380. package/dist/src/openclaw-D2ENvu7a.js +0 -582
  381. package/dist/src/providers-BSLEaIQG.js +0 -32
  382. package/dist/src/providers-D-FnDg8k.cjs +0 -31
  383. package/dist/src/providers-DEYiFVAo.js +0 -30
  384. package/dist/src/providers-sS2WI8YD.js +0 -30
  385. package/dist/src/rubyUtils-B1HXG4ej.cjs +0 -4
  386. package/dist/src/rubyUtils-Rt6pKA96.js +0 -5
  387. package/dist/src/server-B0Xh1Gx-.js +0 -7
  388. package/dist/src/server-DJTKu9IR.cjs +0 -5
  389. package/dist/src/store-C5u6MgC8.js +0 -6
  390. package/dist/src/store-CNHk-De4.cjs +0 -5
  391. package/dist/src/telemetry-Yig0Tino.js +0 -7
  392. package/dist/src/telemetry-p8Pwqm1i.cjs +0 -5
  393. package/dist/src/transform-ChNIpHz7.js +0 -6
  394. package/dist/src/transform-PtQ6rAE3.cjs +0 -5
@@ -1,245 +0,0 @@
1
- import { C as getEnvString, S as getEnvInt, a as logger, x as getEnvFloat } from "./logger-DO8_zM18.js";
2
- import { d as maybeLoadToolsFromExternalFile, u as maybeLoadResponseFormatFromExternalFile } from "./util-CMMkIxfU.js";
3
- import { C as transformTools, S as transformToolChoice } from "./fetch-CVAtKnI3.js";
4
- import { a as isCacheEnabled, i as getCache } from "./cache-CaT5tPgo.js";
5
- import { n as withGenAISpan } from "./genaiTracer-D3fD9dNV.js";
6
- import { i as normalizeFinishReason, n as MCPClient } from "./chat-pxmiVpWe.js";
7
- import { a as createEmptyTokenUsage } from "./tokenUsageUtils-NYT-WKS6.js";
8
- import { n as transformMCPToolsToAnthropic } from "./transform-DyDAwEpE.js";
9
- import { a as parseMessages, i as outputFromMessage, n as calculateAnthropicCost, o as processAnthropicTools, r as getTokenUsage, t as ANTHROPIC_MODELS } from "./util-vNmDL5DT.js";
10
- import Anthropic, { APIError } from "@anthropic-ai/sdk";
11
- //#region src/providers/anthropic/generic.ts
12
- /**
13
- * Generic provider class for Anthropic APIs
14
- * Serves as a base class with shared functionality for all Anthropic providers
15
- */
16
- var AnthropicGenericProvider = class {
17
- modelName;
18
- config;
19
- env;
20
- apiKey;
21
- anthropic;
22
- constructor(modelName, options = {}) {
23
- const { config, id, env } = options;
24
- this.env = env;
25
- this.modelName = modelName;
26
- this.config = config || {};
27
- this.apiKey = this.getApiKey();
28
- this.anthropic = new Anthropic({
29
- apiKey: this.apiKey,
30
- baseURL: this.getApiBaseUrl()
31
- });
32
- this.id = id ? () => id : this.id;
33
- }
34
- id() {
35
- return `anthropic:${this.modelName}`;
36
- }
37
- toString() {
38
- return `[Anthropic Provider ${this.modelName}]`;
39
- }
40
- requiresApiKey() {
41
- return true;
42
- }
43
- getApiKey() {
44
- return this.config?.apiKey || this.env?.ANTHROPIC_API_KEY || getEnvString("ANTHROPIC_API_KEY");
45
- }
46
- getApiBaseUrl() {
47
- return this.config?.apiBaseUrl || this.env?.ANTHROPIC_BASE_URL || getEnvString("ANTHROPIC_BASE_URL");
48
- }
49
- /**
50
- * Base implementation - should be overridden by specific provider implementations
51
- */
52
- async callApi(_prompt, _context) {
53
- throw new Error("Not implemented: callApi must be implemented by subclasses");
54
- }
55
- };
56
- //#endregion
57
- //#region src/providers/anthropic/messages.ts
58
- function parseEnvFloat(value) {
59
- if (value === void 0) return;
60
- const parsed = Number.parseFloat(value);
61
- return Number.isNaN(parsed) ? void 0 : parsed;
62
- }
63
- var AnthropicMessagesProvider = class AnthropicMessagesProvider extends AnthropicGenericProvider {
64
- mcpClient = null;
65
- initializationPromise = null;
66
- static ANTHROPIC_MODELS = ANTHROPIC_MODELS;
67
- static ANTHROPIC_MODELS_NAMES = ANTHROPIC_MODELS.map((model) => model.id);
68
- constructor(modelName, options = {}) {
69
- if (!AnthropicMessagesProvider.ANTHROPIC_MODELS_NAMES.includes(modelName)) logger.warn(`Using unknown Anthropic model: ${modelName}`);
70
- super(modelName, options);
71
- const { id } = options;
72
- this.id = id ? () => id : this.id;
73
- if (this.config.mcp?.enabled) this.initializationPromise = this.initializeMCP();
74
- }
75
- async initializeMCP() {
76
- this.mcpClient = new MCPClient(this.config.mcp);
77
- await this.mcpClient.initialize();
78
- }
79
- async cleanup() {
80
- if (this.mcpClient) {
81
- await this.initializationPromise;
82
- await this.mcpClient.cleanup();
83
- this.mcpClient = null;
84
- }
85
- }
86
- toString() {
87
- if (!this.modelName) throw new Error("Anthropic model name is not set. Please provide a valid model name.");
88
- return `[Anthropic Messages Provider ${this.modelName}]`;
89
- }
90
- async callApi(prompt, context) {
91
- if (this.initializationPromise != null) await this.initializationPromise;
92
- if (!this.apiKey) throw new Error("Anthropic API key is not set. Set the ANTHROPIC_API_KEY environment variable or add `apiKey` to the provider config.");
93
- if (!this.modelName) throw new Error("Anthropic model name is not set. Please provide a valid model name.");
94
- const spanContext = {
95
- system: "anthropic",
96
- operationName: "chat",
97
- model: this.modelName,
98
- providerId: this.id(),
99
- maxTokens: this.config.max_tokens,
100
- temperature: this.config.temperature,
101
- testIndex: context?.test?.vars?.__testIdx,
102
- promptLabel: context?.prompt?.label,
103
- traceparent: context?.traceparent,
104
- requestBody: prompt
105
- };
106
- const resultExtractor = (response) => {
107
- const result = {};
108
- if (response.tokenUsage) result.tokenUsage = {
109
- prompt: response.tokenUsage.prompt,
110
- completion: response.tokenUsage.completion,
111
- total: response.tokenUsage.total,
112
- cached: response.tokenUsage.cached
113
- };
114
- if (response.finishReason) result.finishReasons = [response.finishReason];
115
- if (response.cached !== void 0) result.cacheHit = response.cached;
116
- if (response.output !== void 0) result.responseBody = typeof response.output === "string" ? response.output : JSON.stringify(response.output);
117
- return result;
118
- };
119
- return withGenAISpan(spanContext, () => this.callApiInternal(prompt, context), resultExtractor);
120
- }
121
- /**
122
- * Internal implementation of callApi without tracing wrapper.
123
- */
124
- async callApiInternal(prompt, context) {
125
- const config = {
126
- ...this.config,
127
- ...context?.prompt?.config
128
- };
129
- const { system, extractedMessages, thinking } = parseMessages(prompt);
130
- let mcpTools = [];
131
- if (this.mcpClient) mcpTools = transformMCPToolsToAnthropic(this.mcpClient.getAllTools());
132
- const { processedTools: processedConfigTools, requiredBetaFeatures } = processAnthropicTools(transformTools(await maybeLoadToolsFromExternalFile(config.tools, context?.vars) || [], "anthropic"));
133
- const allTools = [...mcpTools, ...processedConfigTools];
134
- const processedOutputFormat = maybeLoadResponseFormatFromExternalFile(config.output_format, context?.vars);
135
- const shouldStream = config.stream ?? false;
136
- const params = {
137
- model: this.modelName,
138
- ...system ? { system } : {},
139
- max_tokens: config?.max_tokens || getEnvInt("ANTHROPIC_MAX_TOKENS", config.thinking || thinking ? 2048 : 1024),
140
- messages: extractedMessages,
141
- stream: shouldStream,
142
- temperature: config.thinking || thinking ? config.temperature : config.temperature ?? parseEnvFloat(this.env?.ANTHROPIC_TEMPERATURE) ?? getEnvFloat("ANTHROPIC_TEMPERATURE", 0),
143
- ...allTools.length > 0 ? { tools: allTools } : {},
144
- ...config.tool_choice ? { tool_choice: transformToolChoice(config.tool_choice, "anthropic") } : {},
145
- ...config.thinking || thinking ? { thinking: config.thinking || thinking } : {},
146
- ...processedOutputFormat || config.effort ? { output_config: {
147
- ...processedOutputFormat ? { format: processedOutputFormat } : {},
148
- ...config.effort ? { effort: config.effort } : {}
149
- } } : {},
150
- ...typeof config?.extra_body === "object" && config.extra_body ? config.extra_body : {}
151
- };
152
- logger.debug("Calling Anthropic Messages API", { params });
153
- const headers = { ...config.headers || {} };
154
- let allBetaFeatures = [...config.beta || [], ...requiredBetaFeatures];
155
- if (processedOutputFormat && !allBetaFeatures.includes("structured-outputs-2025-11-13")) allBetaFeatures.push("structured-outputs-2025-11-13");
156
- allBetaFeatures = [...new Set(allBetaFeatures)];
157
- if (allBetaFeatures.length > 0) headers["anthropic-beta"] = allBetaFeatures.join(",");
158
- const cache = await getCache();
159
- const cacheKey = `anthropic:${JSON.stringify(params)}`;
160
- if (isCacheEnabled()) {
161
- const cachedResponse = await cache.get(cacheKey);
162
- if (cachedResponse) {
163
- logger.debug(`Returning cached response for ${prompt}: ${cachedResponse}`);
164
- try {
165
- const parsedCachedResponse = JSON.parse(cachedResponse);
166
- const finishReason = normalizeFinishReason(parsedCachedResponse.stop_reason);
167
- let output = outputFromMessage(parsedCachedResponse, config.showThinking ?? true);
168
- if (processedOutputFormat?.type === "json_schema" && typeof output === "string") try {
169
- output = JSON.parse(output);
170
- } catch (error) {
171
- logger.error(`Failed to parse JSON output from structured outputs: ${error}`);
172
- }
173
- return {
174
- output,
175
- tokenUsage: getTokenUsage(parsedCachedResponse, true),
176
- ...finishReason && { finishReason },
177
- cost: calculateAnthropicCost(this.modelName, config, parsedCachedResponse.usage?.input_tokens, parsedCachedResponse.usage?.output_tokens),
178
- cached: true
179
- };
180
- } catch {
181
- return {
182
- output: cachedResponse,
183
- tokenUsage: createEmptyTokenUsage()
184
- };
185
- }
186
- }
187
- }
188
- try {
189
- if (shouldStream) {
190
- const finalMessage = await (await this.anthropic.messages.stream(params, { ...typeof headers === "object" && Object.keys(headers).length > 0 ? { headers } : {} })).finalMessage();
191
- logger.debug(`Anthropic Messages API streaming complete`, { finalMessage });
192
- if (isCacheEnabled()) try {
193
- await cache.set(cacheKey, JSON.stringify(finalMessage));
194
- } catch (err) {
195
- logger.error(`Failed to cache response: ${String(err)}`);
196
- }
197
- const finishReason = normalizeFinishReason(finalMessage.stop_reason);
198
- let output = outputFromMessage(finalMessage, config.showThinking ?? true);
199
- if (processedOutputFormat?.type === "json_schema" && typeof output === "string") try {
200
- output = JSON.parse(output);
201
- } catch (error) {
202
- logger.error(`Failed to parse JSON output from structured outputs: ${error}`);
203
- }
204
- return {
205
- output,
206
- tokenUsage: getTokenUsage(finalMessage, false),
207
- ...finishReason && { finishReason },
208
- cost: calculateAnthropicCost(this.modelName, config, finalMessage.usage?.input_tokens, finalMessage.usage?.output_tokens)
209
- };
210
- } else {
211
- const response = await this.anthropic.messages.create(params, { ...typeof headers === "object" && Object.keys(headers).length > 0 ? { headers } : {} });
212
- logger.debug(`Anthropic Messages API response`, { response });
213
- if (isCacheEnabled()) try {
214
- await cache.set(cacheKey, JSON.stringify(response));
215
- } catch (err) {
216
- logger.error(`Failed to cache response: ${String(err)}`);
217
- }
218
- const finishReason = normalizeFinishReason(response.stop_reason);
219
- let output = outputFromMessage(response, config.showThinking ?? true);
220
- if (processedOutputFormat?.type === "json_schema" && typeof output === "string") try {
221
- output = JSON.parse(output);
222
- } catch (error) {
223
- logger.error(`Failed to parse JSON output from structured outputs: ${error}`);
224
- }
225
- return {
226
- output,
227
- tokenUsage: getTokenUsage(response, false),
228
- ...finishReason && { finishReason },
229
- cost: calculateAnthropicCost(this.modelName, config, response.usage?.input_tokens, response.usage?.output_tokens)
230
- };
231
- }
232
- } catch (err) {
233
- logger.error(`Anthropic Messages API call error: ${err instanceof Error ? err.message : String(err)}`);
234
- if (err instanceof APIError && err.error) {
235
- const errorDetails = err.error;
236
- return { error: `API call error: ${errorDetails.error.message}, status ${err.status}, type ${errorDetails.error.type}` };
237
- }
238
- return { error: `API call error: ${err instanceof Error ? err.message : String(err)}` };
239
- }
240
- }
241
- };
242
- //#endregion
243
- export { AnthropicGenericProvider as n, AnthropicMessagesProvider as t };
244
-
245
- //# sourceMappingURL=messages-Dy9QecMs.js.map
@@ -1,257 +0,0 @@
1
- const require_logger = require("./logger-D5iKBpu_.cjs");
2
- const require_util = require("./util-CuLo2pMR.cjs");
3
- const require_fetch = require("./fetch-BnR9wSnm.cjs");
4
- const require_cache = require("./cache-C5yFZ4gC.cjs");
5
- const require_genaiTracer = require("./genaiTracer-BfxrvSUb.cjs");
6
- const require_chat = require("./chat-CM8qWR3_.cjs");
7
- const require_tokenUsageUtils = require("./tokenUsageUtils-bVa1ga6f.cjs");
8
- const require_transform = require("./transform-0BwoBsvO.cjs");
9
- const require_util$1 = require("./util--9u9UVCt.cjs");
10
- let _anthropic_ai_sdk = require("@anthropic-ai/sdk");
11
- _anthropic_ai_sdk = require_logger.__toESM(_anthropic_ai_sdk);
12
- //#region src/providers/anthropic/generic.ts
13
- /**
14
- * Generic provider class for Anthropic APIs
15
- * Serves as a base class with shared functionality for all Anthropic providers
16
- */
17
- var AnthropicGenericProvider = class {
18
- modelName;
19
- config;
20
- env;
21
- apiKey;
22
- anthropic;
23
- constructor(modelName, options = {}) {
24
- const { config, id, env } = options;
25
- this.env = env;
26
- this.modelName = modelName;
27
- this.config = config || {};
28
- this.apiKey = this.getApiKey();
29
- this.anthropic = new _anthropic_ai_sdk.default({
30
- apiKey: this.apiKey,
31
- baseURL: this.getApiBaseUrl()
32
- });
33
- this.id = id ? () => id : this.id;
34
- }
35
- id() {
36
- return `anthropic:${this.modelName}`;
37
- }
38
- toString() {
39
- return `[Anthropic Provider ${this.modelName}]`;
40
- }
41
- requiresApiKey() {
42
- return true;
43
- }
44
- getApiKey() {
45
- return this.config?.apiKey || this.env?.ANTHROPIC_API_KEY || require_logger.getEnvString("ANTHROPIC_API_KEY");
46
- }
47
- getApiBaseUrl() {
48
- return this.config?.apiBaseUrl || this.env?.ANTHROPIC_BASE_URL || require_logger.getEnvString("ANTHROPIC_BASE_URL");
49
- }
50
- /**
51
- * Base implementation - should be overridden by specific provider implementations
52
- */
53
- async callApi(_prompt, _context) {
54
- throw new Error("Not implemented: callApi must be implemented by subclasses");
55
- }
56
- };
57
- //#endregion
58
- //#region src/providers/anthropic/messages.ts
59
- function parseEnvFloat(value) {
60
- if (value === void 0) return;
61
- const parsed = Number.parseFloat(value);
62
- return Number.isNaN(parsed) ? void 0 : parsed;
63
- }
64
- var AnthropicMessagesProvider = class AnthropicMessagesProvider extends AnthropicGenericProvider {
65
- mcpClient = null;
66
- initializationPromise = null;
67
- static ANTHROPIC_MODELS = require_util$1.ANTHROPIC_MODELS;
68
- static ANTHROPIC_MODELS_NAMES = require_util$1.ANTHROPIC_MODELS.map((model) => model.id);
69
- constructor(modelName, options = {}) {
70
- if (!AnthropicMessagesProvider.ANTHROPIC_MODELS_NAMES.includes(modelName)) require_logger.logger.warn(`Using unknown Anthropic model: ${modelName}`);
71
- super(modelName, options);
72
- const { id } = options;
73
- this.id = id ? () => id : this.id;
74
- if (this.config.mcp?.enabled) this.initializationPromise = this.initializeMCP();
75
- }
76
- async initializeMCP() {
77
- this.mcpClient = new require_chat.MCPClient(this.config.mcp);
78
- await this.mcpClient.initialize();
79
- }
80
- async cleanup() {
81
- if (this.mcpClient) {
82
- await this.initializationPromise;
83
- await this.mcpClient.cleanup();
84
- this.mcpClient = null;
85
- }
86
- }
87
- toString() {
88
- if (!this.modelName) throw new Error("Anthropic model name is not set. Please provide a valid model name.");
89
- return `[Anthropic Messages Provider ${this.modelName}]`;
90
- }
91
- async callApi(prompt, context) {
92
- if (this.initializationPromise != null) await this.initializationPromise;
93
- if (!this.apiKey) throw new Error("Anthropic API key is not set. Set the ANTHROPIC_API_KEY environment variable or add `apiKey` to the provider config.");
94
- if (!this.modelName) throw new Error("Anthropic model name is not set. Please provide a valid model name.");
95
- const spanContext = {
96
- system: "anthropic",
97
- operationName: "chat",
98
- model: this.modelName,
99
- providerId: this.id(),
100
- maxTokens: this.config.max_tokens,
101
- temperature: this.config.temperature,
102
- testIndex: context?.test?.vars?.__testIdx,
103
- promptLabel: context?.prompt?.label,
104
- traceparent: context?.traceparent,
105
- requestBody: prompt
106
- };
107
- const resultExtractor = (response) => {
108
- const result = {};
109
- if (response.tokenUsage) result.tokenUsage = {
110
- prompt: response.tokenUsage.prompt,
111
- completion: response.tokenUsage.completion,
112
- total: response.tokenUsage.total,
113
- cached: response.tokenUsage.cached
114
- };
115
- if (response.finishReason) result.finishReasons = [response.finishReason];
116
- if (response.cached !== void 0) result.cacheHit = response.cached;
117
- if (response.output !== void 0) result.responseBody = typeof response.output === "string" ? response.output : JSON.stringify(response.output);
118
- return result;
119
- };
120
- return require_genaiTracer.withGenAISpan(spanContext, () => this.callApiInternal(prompt, context), resultExtractor);
121
- }
122
- /**
123
- * Internal implementation of callApi without tracing wrapper.
124
- */
125
- async callApiInternal(prompt, context) {
126
- const config = {
127
- ...this.config,
128
- ...context?.prompt?.config
129
- };
130
- const { system, extractedMessages, thinking } = require_util$1.parseMessages(prompt);
131
- let mcpTools = [];
132
- if (this.mcpClient) mcpTools = require_transform.transformMCPToolsToAnthropic(this.mcpClient.getAllTools());
133
- const { processedTools: processedConfigTools, requiredBetaFeatures } = require_util$1.processAnthropicTools(require_fetch.transformTools(await require_util.maybeLoadToolsFromExternalFile(config.tools, context?.vars) || [], "anthropic"));
134
- const allTools = [...mcpTools, ...processedConfigTools];
135
- const processedOutputFormat = require_util.maybeLoadResponseFormatFromExternalFile(config.output_format, context?.vars);
136
- const shouldStream = config.stream ?? false;
137
- const params = {
138
- model: this.modelName,
139
- ...system ? { system } : {},
140
- max_tokens: config?.max_tokens || require_logger.getEnvInt("ANTHROPIC_MAX_TOKENS", config.thinking || thinking ? 2048 : 1024),
141
- messages: extractedMessages,
142
- stream: shouldStream,
143
- temperature: config.thinking || thinking ? config.temperature : config.temperature ?? parseEnvFloat(this.env?.ANTHROPIC_TEMPERATURE) ?? require_logger.getEnvFloat("ANTHROPIC_TEMPERATURE", 0),
144
- ...allTools.length > 0 ? { tools: allTools } : {},
145
- ...config.tool_choice ? { tool_choice: require_fetch.transformToolChoice(config.tool_choice, "anthropic") } : {},
146
- ...config.thinking || thinking ? { thinking: config.thinking || thinking } : {},
147
- ...processedOutputFormat || config.effort ? { output_config: {
148
- ...processedOutputFormat ? { format: processedOutputFormat } : {},
149
- ...config.effort ? { effort: config.effort } : {}
150
- } } : {},
151
- ...typeof config?.extra_body === "object" && config.extra_body ? config.extra_body : {}
152
- };
153
- require_logger.logger.debug("Calling Anthropic Messages API", { params });
154
- const headers = { ...config.headers || {} };
155
- let allBetaFeatures = [...config.beta || [], ...requiredBetaFeatures];
156
- if (processedOutputFormat && !allBetaFeatures.includes("structured-outputs-2025-11-13")) allBetaFeatures.push("structured-outputs-2025-11-13");
157
- allBetaFeatures = [...new Set(allBetaFeatures)];
158
- if (allBetaFeatures.length > 0) headers["anthropic-beta"] = allBetaFeatures.join(",");
159
- const cache = await require_cache.getCache();
160
- const cacheKey = `anthropic:${JSON.stringify(params)}`;
161
- if (require_cache.isCacheEnabled()) {
162
- const cachedResponse = await cache.get(cacheKey);
163
- if (cachedResponse) {
164
- require_logger.logger.debug(`Returning cached response for ${prompt}: ${cachedResponse}`);
165
- try {
166
- const parsedCachedResponse = JSON.parse(cachedResponse);
167
- const finishReason = require_chat.normalizeFinishReason(parsedCachedResponse.stop_reason);
168
- let output = require_util$1.outputFromMessage(parsedCachedResponse, config.showThinking ?? true);
169
- if (processedOutputFormat?.type === "json_schema" && typeof output === "string") try {
170
- output = JSON.parse(output);
171
- } catch (error) {
172
- require_logger.logger.error(`Failed to parse JSON output from structured outputs: ${error}`);
173
- }
174
- return {
175
- output,
176
- tokenUsage: require_util$1.getTokenUsage(parsedCachedResponse, true),
177
- ...finishReason && { finishReason },
178
- cost: require_util$1.calculateAnthropicCost(this.modelName, config, parsedCachedResponse.usage?.input_tokens, parsedCachedResponse.usage?.output_tokens),
179
- cached: true
180
- };
181
- } catch {
182
- return {
183
- output: cachedResponse,
184
- tokenUsage: require_tokenUsageUtils.createEmptyTokenUsage()
185
- };
186
- }
187
- }
188
- }
189
- try {
190
- if (shouldStream) {
191
- const finalMessage = await (await this.anthropic.messages.stream(params, { ...typeof headers === "object" && Object.keys(headers).length > 0 ? { headers } : {} })).finalMessage();
192
- require_logger.logger.debug(`Anthropic Messages API streaming complete`, { finalMessage });
193
- if (require_cache.isCacheEnabled()) try {
194
- await cache.set(cacheKey, JSON.stringify(finalMessage));
195
- } catch (err) {
196
- require_logger.logger.error(`Failed to cache response: ${String(err)}`);
197
- }
198
- const finishReason = require_chat.normalizeFinishReason(finalMessage.stop_reason);
199
- let output = require_util$1.outputFromMessage(finalMessage, config.showThinking ?? true);
200
- if (processedOutputFormat?.type === "json_schema" && typeof output === "string") try {
201
- output = JSON.parse(output);
202
- } catch (error) {
203
- require_logger.logger.error(`Failed to parse JSON output from structured outputs: ${error}`);
204
- }
205
- return {
206
- output,
207
- tokenUsage: require_util$1.getTokenUsage(finalMessage, false),
208
- ...finishReason && { finishReason },
209
- cost: require_util$1.calculateAnthropicCost(this.modelName, config, finalMessage.usage?.input_tokens, finalMessage.usage?.output_tokens)
210
- };
211
- } else {
212
- const response = await this.anthropic.messages.create(params, { ...typeof headers === "object" && Object.keys(headers).length > 0 ? { headers } : {} });
213
- require_logger.logger.debug(`Anthropic Messages API response`, { response });
214
- if (require_cache.isCacheEnabled()) try {
215
- await cache.set(cacheKey, JSON.stringify(response));
216
- } catch (err) {
217
- require_logger.logger.error(`Failed to cache response: ${String(err)}`);
218
- }
219
- const finishReason = require_chat.normalizeFinishReason(response.stop_reason);
220
- let output = require_util$1.outputFromMessage(response, config.showThinking ?? true);
221
- if (processedOutputFormat?.type === "json_schema" && typeof output === "string") try {
222
- output = JSON.parse(output);
223
- } catch (error) {
224
- require_logger.logger.error(`Failed to parse JSON output from structured outputs: ${error}`);
225
- }
226
- return {
227
- output,
228
- tokenUsage: require_util$1.getTokenUsage(response, false),
229
- ...finishReason && { finishReason },
230
- cost: require_util$1.calculateAnthropicCost(this.modelName, config, response.usage?.input_tokens, response.usage?.output_tokens)
231
- };
232
- }
233
- } catch (err) {
234
- require_logger.logger.error(`Anthropic Messages API call error: ${err instanceof Error ? err.message : String(err)}`);
235
- if (err instanceof _anthropic_ai_sdk.APIError && err.error) {
236
- const errorDetails = err.error;
237
- return { error: `API call error: ${errorDetails.error.message}, status ${err.status}, type ${errorDetails.error.type}` };
238
- }
239
- return { error: `API call error: ${err instanceof Error ? err.message : String(err)}` };
240
- }
241
- }
242
- };
243
- //#endregion
244
- Object.defineProperty(exports, "AnthropicGenericProvider", {
245
- enumerable: true,
246
- get: function() {
247
- return AnthropicGenericProvider;
248
- }
249
- });
250
- Object.defineProperty(exports, "AnthropicMessagesProvider", {
251
- enumerable: true,
252
- get: function() {
253
- return AnthropicMessagesProvider;
254
- }
255
- });
256
-
257
- //# sourceMappingURL=messages-HJsyEh4o.cjs.map