promptfoo 0.125.0 → 0.125.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/src/accounts-BOxNYxVN.js +229 -0
- package/dist/src/accounts-BezXLdAW.cjs +276 -0
- package/dist/src/accounts-CPISMNlh.js +227 -0
- package/dist/src/accounts-vJBPs89d.js +222 -0
- package/dist/src/agentWorkspace-Bom7SpF2.js +592 -0
- package/dist/src/agentWorkspace-CEomAcws.cjs +619 -0
- package/dist/src/agentWorkspace-DPtMLrlI.js +593 -0
- package/dist/src/agentWorkspace-DkAeEYLz.js +592 -0
- package/dist/src/agentic-utils-121v7mJo.js +197 -0
- package/dist/src/agentic-utils-CBWD_rcd.cjs +237 -0
- package/dist/src/agentic-utils-D8wyQwPG.js +198 -0
- package/dist/src/agentic-utils-EP1QkQCs.js +197 -0
- package/dist/src/agents-Br3ah8iA.js +778 -0
- package/dist/src/agents-C5wj_UTv.js +777 -0
- package/dist/src/agents-C9Efp4mC.js +266 -0
- package/dist/src/agents-CQYwaVCO.js +267 -0
- package/dist/src/agents-CjCd4Vo8.js +777 -0
- package/dist/src/agents-DRWiCHYz.js +266 -0
- package/dist/src/agents-F2rhx0iL.cjs +266 -0
- package/dist/src/agents-RTYyy69h.cjs +777 -0
- package/dist/src/agents-api-CY72O86e.js +711 -0
- package/dist/src/agents-api-CsSsC21b.js +710 -0
- package/dist/src/agents-api-DN-ibDc8.js +710 -0
- package/dist/src/agents-api-cNDsCCv1.cjs +710 -0
- package/dist/src/ai.studio-Bj6Dyi6o.js +2 -0
- package/dist/src/ai.studio-C-e0LzyW.js +369 -0
- package/dist/src/ai.studio-CR8M6Aqf.cjs +391 -0
- package/dist/src/ai.studio-YKk7F0tv.js +374 -0
- package/dist/src/aimlapi-BGunsuTu.js +30 -0
- package/dist/src/aimlapi-BkzcfBsL.js +29 -0
- package/dist/src/aimlapi-DXFcEdP8.js +28 -0
- package/dist/src/aimlapi-r-8iCcAw.cjs +29 -0
- package/dist/src/anthropicMessages-7-YNRgQR.js +114 -0
- package/dist/src/anthropicMessages-C8m9Whrd.cjs +114 -0
- package/dist/src/anthropicMessages-DS1vXD0f.js +115 -0
- package/dist/src/anthropicMessages-DmvGkz-0.js +114 -0
- package/dist/src/app/assets/index-CrdXWTXm.js +392 -0
- package/dist/src/app/browser-inventory.json +4 -4
- package/dist/src/app/index.html +1 -1
- package/dist/src/audio-BLgFgyw-.cjs +104 -0
- package/dist/src/audio-C2sibT7Q.js +104 -0
- package/dist/src/audio-DXEXb03H.js +104 -0
- package/dist/src/audio-TkvojpwO.js +105 -0
- package/dist/src/authoritativeMarkupInjection-BAT9B-Wj.js +79 -0
- package/dist/src/authoritativeMarkupInjection-B_yHETKT.js +78 -0
- package/dist/src/authoritativeMarkupInjection-BfjecQ3Q.cjs +78 -0
- package/dist/src/authoritativeMarkupInjection-D-hDKrhD.js +78 -0
- package/dist/src/aws-B_9unI_-.js +1149 -0
- package/dist/src/aws-D0FY3qkc.js +2433 -0
- package/dist/src/aws-Dh1-a90n.js +2433 -0
- package/dist/src/aws-qskKGczY.cjs +2454 -0
- package/dist/src/base-CaWlBkVz.js +462 -0
- package/dist/src/base-CcViNwVs.js +255 -0
- package/dist/src/base-CsVbPJkU.cjs +467 -0
- package/dist/src/base-DNK9py25.js +255 -0
- package/dist/src/base-DlH5tjEZ.js +463 -0
- package/dist/src/base-DyLOZ_iX.js +256 -0
- package/dist/src/base-RRYXfG7l.cjs +305 -0
- package/dist/src/base-oXVgvtVn.js +462 -0
- package/dist/src/bedrock-BP17ZXbR.cjs +2 -0
- package/dist/src/bedrock-CsjM1dOt.js +1300 -0
- package/dist/src/bedrock-CzPwj8GO.js +1 -0
- package/dist/src/bedrock-eGXZw8oh.js +1 -0
- package/dist/src/bedrock-tSWjmXdj.js +2 -0
- package/dist/src/bestOfN-BQ93nUKV.js +160 -0
- package/dist/src/bestOfN-ByGGwlcb.cjs +161 -0
- package/dist/src/bestOfN-CbP7csHr.js +159 -0
- package/dist/src/bestOfN-xn6i2Xs2.js +159 -0
- package/dist/src/cache-CHq9hPz9.js +2 -0
- package/dist/src/cache-D-9eZN3I.js +754 -0
- package/dist/src/cache-DSm6t1MZ.js +741 -0
- package/dist/src/cache-DeF5zIEN.js +782 -0
- package/dist/src/cache-iG87oYan.cjs +856 -0
- package/dist/src/cerebras-CTtM4yMH.js +98 -0
- package/dist/src/cerebras-CogcJ3ce.cjs +97 -0
- package/dist/src/cerebras-DmkRypTh.js +97 -0
- package/dist/src/cerebras-GUp0B8JY.js +97 -0
- package/dist/src/chat-B4ihd3fw.js +226 -0
- package/dist/src/chat-B9cAQ_rS.js +227 -0
- package/dist/src/chat-BU7EB4R-.cjs +76 -0
- package/dist/src/chat-C8yxJ2-s.cjs +226 -0
- package/dist/src/chat-ClTFM3qq.js +934 -0
- package/dist/src/chat-Cnq0Is68.js +123 -0
- package/dist/src/chat-CwrurR57.cjs +987 -0
- package/dist/src/chat-D0lsojPv.js +124 -0
- package/dist/src/chat-D7_8yFIx.js +76 -0
- package/dist/src/chat-DCoETlLG.js +226 -0
- package/dist/src/chat-DHE7xaTR.js +76 -0
- package/dist/src/chat-DmhT6rz2.cjs +123 -0
- package/dist/src/chat-DvfMe8KI.js +123 -0
- package/dist/src/chat-DwP5kVnl.js +935 -0
- package/dist/src/chat-MB7U-QE2.js +77 -0
- package/dist/src/chat-zCWuBKAj.js +934 -0
- package/dist/src/claude-agent-sdk-23bIVI75.js +999 -0
- package/dist/src/claude-agent-sdk-BACpnIJi.cjs +1005 -0
- package/dist/src/claude-agent-sdk-BlYlmcEr.js +999 -0
- package/dist/src/claude-agent-sdk-Cr-jqJZl.js +1000 -0
- package/dist/src/client-BktbiPx9.cjs +357 -0
- package/dist/src/client-CjztEBmW.js +351 -0
- package/dist/src/client-mRs2UvH9.js +351 -0
- package/dist/src/client-uCz0ydjC.js +352 -0
- package/dist/src/cloud-BtYF555L.js +2 -0
- package/dist/src/cloud-CVSUEmAy.js +287 -0
- package/dist/src/cloud-D7Ifb-Fl.js +599 -0
- package/dist/src/cloud-DB5oK5NX.cjs +666 -0
- package/dist/src/cloud-ecu989Em.js +657 -0
- package/dist/src/cloud-ramjGURF.js +599 -0
- package/dist/src/cloudflare-ai-BfDkIjO8.js +133 -0
- package/dist/src/cloudflare-ai-D9HaXz1M.js +134 -0
- package/dist/src/cloudflare-ai-HrD5WUK8.js +132 -0
- package/dist/src/cloudflare-ai-Qdj8aKP2.cjs +133 -0
- package/dist/src/cloudflare-gateway-C81uKETQ.js +276 -0
- package/dist/src/cloudflare-gateway-CX5Z9X0k.js +276 -0
- package/dist/src/cloudflare-gateway-DW-og8gb.js +277 -0
- package/dist/src/cloudflare-gateway-iRyXo9n2.cjs +276 -0
- package/dist/src/codex-app-server-BFIrSgdy.js +2155 -0
- package/dist/src/codex-app-server-By1eDVD4.js +2 -0
- package/dist/src/codex-app-server-DKsF4qmY.js +2156 -0
- package/dist/src/codex-app-server-n7n4uZzC.cjs +2162 -0
- package/dist/src/codex-app-server-xAoELVxu.js +2155 -0
- package/dist/src/codex-sdk-C2ZLxa6r.js +1552 -0
- package/dist/src/codex-sdk-CzG02tQt.cjs +1588 -0
- package/dist/src/codex-sdk-DNxAOhiV.js +2 -0
- package/dist/src/codex-sdk-DT3aQezK.js +1557 -0
- package/dist/src/codex-sdk-pw9DpcJP.js +1557 -0
- package/dist/src/codex-security-B0bLmXJF.js +406 -0
- package/dist/src/codex-security-BhYs-3iY.js +406 -0
- package/dist/src/codex-security-DQcOfxYW.js +407 -0
- package/dist/src/codex-security-DsCWr6GZ.cjs +411 -0
- package/dist/src/cometapi-B16asPLX.cjs +55 -0
- package/dist/src/cometapi-MgTbZA_H.js +53 -0
- package/dist/src/cometapi-i33vKzPV.js +55 -0
- package/dist/src/cometapi-wK2UWK0X.js +56 -0
- package/dist/src/compatible-COj8ZCy9.js +24 -0
- package/dist/src/compatible-CRSsIUGb.cjs +24 -0
- package/dist/src/compatible-Dy1vCcNF.js +25 -0
- package/dist/src/compatible-aUItQrpk.js +24 -0
- package/dist/src/completion-Bn7COFMk.js +119 -0
- package/dist/src/completion-Bub2N48b.js +118 -0
- package/dist/src/completion-Cf2G9OlM.cjs +123 -0
- package/dist/src/conversationScoring-BiTYJ9MD.js +374 -0
- package/dist/src/conversationScoring-CKL47uIu.js +373 -0
- package/dist/src/conversationScoring-DCvQKp6k.cjs +398 -0
- package/dist/src/conversationScoring-DLNJtDZI.js +373 -0
- package/dist/src/crescendo-5iLk9WiJ.cjs +734 -0
- package/dist/src/crescendo-B5ylG7kW.js +733 -0
- package/dist/src/crescendo-BD7k6TIx.js +730 -0
- package/dist/src/crescendo-DqO2Ch0P.js +732 -0
- package/dist/src/custom-8rv_aG2K.js +617 -0
- package/dist/src/custom-BOtrIHFN.js +619 -0
- package/dist/src/custom-BvN8seCs.cjs +620 -0
- package/dist/src/custom-Cld9v_Y4.js +618 -0
- package/dist/src/dataUrl-BdHUey2l.cjs +3187 -0
- package/dist/src/dataUrl-DBMifX6C.js +3133 -0
- package/dist/src/dataUrl-DUSr-ZvI.js +2868 -0
- package/dist/src/decisions-CLazADTw.js +516 -0
- package/dist/src/decisions-D5X93awq.js +515 -0
- package/dist/src/decisions-DmaeArEn.js +515 -0
- package/dist/src/decisions-DyQJyHJz.cjs +514 -0
- package/dist/src/docker-C9NYQFeu.js +94 -0
- package/dist/src/docker-CGq3mMol.cjs +94 -0
- package/dist/src/docker-DOm7nmpl.js +95 -0
- package/dist/src/docker-skFN-Kfo.js +93 -0
- package/dist/src/embedding-0UbzkTk9.js +82 -0
- package/dist/src/embedding-DTrSDt7k.cjs +86 -0
- package/dist/src/embedding-j2ORNl5H.js +81 -0
- package/dist/src/envoy-BvS8XTQO.js +60 -0
- package/dist/src/envoy-Cn6Hzw0e.js +60 -0
- package/dist/src/envoy-DC3KWcUY.cjs +60 -0
- package/dist/src/envoy-DetHjo5B.js +61 -0
- package/dist/src/eval-Cer9dPe9.js +1920 -0
- package/dist/src/eval-CytYmI2Z.js +2 -0
- package/dist/src/evalResult-DzOq5wt9.js +1300 -0
- package/dist/src/evaluator-BxCmvGtv.js +10578 -0
- package/dist/src/evaluator-Ct7YDELm.js +2 -0
- package/dist/src/evaluatorHelpers-B_AwIrsl.js +600 -0
- package/dist/src/evaluatorHelpers-D1Tpc7gd.js +601 -0
- package/dist/src/evaluatorHelpers-DRR3rLq0.cjs +622 -0
- package/dist/src/fetch-B5KxZuKu.js +1559 -0
- package/dist/src/fetch-BG_Jl7ty.js +1556 -0
- package/dist/src/fetch-BKlgUg08.cjs +1853 -0
- package/dist/src/fetch-C9Fsja0R.js +2 -0
- package/dist/src/fetch-CM7P8KWA.cjs +14 -0
- package/dist/src/fetch-D0FkIB3G.js +9 -0
- package/dist/src/fetch-RXHsZF-J.js +1280 -0
- package/dist/src/fetch-rSECy8jR.js +10 -0
- package/dist/src/functionCallbackUtils-BB9tmf6a.cjs +262 -0
- package/dist/src/functionCallbackUtils-BXk2iY01.js +246 -0
- package/dist/src/functionCallbackUtils-B_cYp7P5.js +245 -0
- package/dist/src/functionCallbackUtils-BfXnPo0o.js +245 -0
- package/dist/src/gemini-image-BXLMADDz.js +471 -0
- package/dist/src/gemini-image-BYUZyEUx.js +472 -0
- package/dist/src/gemini-image-DSt1QubZ.cjs +471 -0
- package/dist/src/gemini-image-DdNDMiZ_.js +471 -0
- package/dist/src/goat-9b-uU_k6.js +514 -0
- package/dist/src/goat-BCJuiDd0.js +515 -0
- package/dist/src/goat-CmAHbemm.js +512 -0
- package/dist/src/goat-DdOTdyoS.cjs +515 -0
- package/dist/src/goblin-Bp5C5lyb.js +22 -0
- package/dist/src/goblin-Dmr7GItI.js +23 -0
- package/dist/src/goblin-DpM8wxlf.cjs +22 -0
- package/dist/src/goblin-cJyH6Pq-.js +22 -0
- package/dist/src/google-B6eaPAbE.js +142 -0
- package/dist/src/google-D-FStdN6.cjs +142 -0
- package/dist/src/google-DAC7BsCW.js +142 -0
- package/dist/src/google-Id18H0Va.js +143 -0
- package/dist/src/graders-BjNQWkaB.js +2 -0
- package/dist/src/graders-CqdIp_vl.js +15470 -0
- package/dist/src/hydra-6Ouh74DE.js +610 -0
- package/dist/src/hydra-BHjhZnLB.cjs +612 -0
- package/dist/src/hydra-BL6k2REV.js +2 -0
- package/dist/src/hydra-BWUc0o67.js +613 -0
- package/dist/src/hydra-CUkEOLKw.js +612 -0
- package/dist/src/image-B6hG_xhb.js +481 -0
- package/dist/src/image-BFaq7Krd.cjs +209 -0
- package/dist/src/image-Bql5C0N9.cjs +504 -0
- package/dist/src/image-BtZfI2pT.js +163 -0
- package/dist/src/image-CIM4oN7Z.cjs +163 -0
- package/dist/src/image-CbAl7Jpu.js +209 -0
- package/dist/src/image-CiYm_yFw.js +209 -0
- package/dist/src/image-DCMNvBiV.js +163 -0
- package/dist/src/image-DL7pIuUZ.js +210 -0
- package/dist/src/image-ey0kxF8o.js +164 -0
- package/dist/src/image-smgIk3rE.js +482 -0
- package/dist/src/index.cjs +27 -27
- package/dist/src/index.d.cts +8 -8
- package/dist/src/index.js +27 -27
- package/dist/src/indirectWebPwn-B_-UpWY5.js +285 -0
- package/dist/src/indirectWebPwn-Cz3SLiEq.js +434 -0
- package/dist/src/indirectWebPwn-D2s8zGiM.cjs +463 -0
- package/dist/src/indirectWebPwn-DXbj2wGu.cjs +285 -0
- package/dist/src/indirectWebPwn-D_4H44E6.js +285 -0
- package/dist/src/indirectWebPwn-L044SrpV.js +434 -0
- package/dist/src/indirectWebPwn-cnmvdavH.js +435 -0
- package/dist/src/indirectWebPwn-zUBzsqTt.js +286 -0
- package/dist/src/interactions-Bu3oVQ-j.js +850 -0
- package/dist/src/interactions-CND010Lh.cjs +850 -0
- package/dist/src/interactions-DAx7tqUz.js +851 -0
- package/dist/src/interactions-DPkIumeh.js +850 -0
- package/dist/src/iterative-BO4JRnpG.js +545 -0
- package/dist/src/iterative-CAK-k9rz.js +548 -0
- package/dist/src/iterative-CDgHc0xO.cjs +549 -0
- package/dist/src/iterative-CXJlHLl9.js +547 -0
- package/dist/src/iterativeImage-BEdGKSmh.cjs +419 -0
- package/dist/src/iterativeImage-BfL0QZw5.js +417 -0
- package/dist/src/iterativeImage-C9KhnibC.js +417 -0
- package/dist/src/iterativeImage-btjkOfWG.js +418 -0
- package/dist/src/iterativeMeta-B5Bdw6QA.js +437 -0
- package/dist/src/iterativeMeta-C3mI4gpT.js +440 -0
- package/dist/src/iterativeMeta-Co2BKyqS.cjs +439 -0
- package/dist/src/iterativeMeta-DD8ihRWD.js +439 -0
- package/dist/src/iterativeTree-AMi4GV2O.js +878 -0
- package/dist/src/iterativeTree-C8FJOEje.cjs +879 -0
- package/dist/src/iterativeTree-CvrY1f2Z.js +877 -0
- package/dist/src/iterativeTree-bPtESmaD.js +876 -0
- package/dist/src/knowledgeBase-Cf5871e3.js +163 -0
- package/dist/src/knowledgeBase-D2PQhqLH.js +164 -0
- package/dist/src/knowledgeBase-DpoMw1IH.cjs +163 -0
- package/dist/src/knowledgeBase-npGFl763.js +163 -0
- package/dist/src/litellm-BBB5DQdt.cjs +146 -0
- package/dist/src/litellm-Bo43ow7r.js +145 -0
- package/dist/src/litellm-CaU8CMLS.js +146 -0
- package/dist/src/litellm-wY7Unh8o.js +147 -0
- package/dist/src/live-5g2w-M-E.js +891 -0
- package/dist/src/live-BfaXsDyD.cjs +891 -0
- package/dist/src/live-C1xewnGD.js +2 -0
- package/dist/src/live-DaF7nYy5.js +892 -0
- package/dist/src/live-lp3urLUw.js +891 -0
- package/dist/src/luma-ray-B7zvKGVG.js +309 -0
- package/dist/src/luma-ray-DCf5fnrz.cjs +309 -0
- package/dist/src/luma-ray-DepBcn6z.js +309 -0
- package/dist/src/luma-ray-XQC4M1pt.js +310 -0
- package/dist/src/main.js +26 -26
- package/dist/src/mantleChat-7xm95vSV.js +154 -0
- package/dist/src/mantleChat-CXhAs5RD.js +155 -0
- package/dist/src/mantleChat-CcE-zjfj.cjs +154 -0
- package/dist/src/mantleChat-Cpefl7Zm.js +154 -0
- package/dist/src/mcp-B0V0ikdM.js +84 -0
- package/dist/src/mcp-CV2k2gwj.js +85 -0
- package/dist/src/memoryPoisoning-BC5FQQWZ.js +111 -0
- package/dist/src/memoryPoisoning-BDwrtZKX.js +111 -0
- package/dist/src/memoryPoisoning-BFemS_FF.js +112 -0
- package/dist/src/memoryPoisoning-DRs2rbVV.cjs +111 -0
- package/dist/src/messages-Bc5oZoAJ.js +1128 -0
- package/dist/src/messages-BkaH8fRW.js +1127 -0
- package/dist/src/messages-CoHlziS5.js +1127 -0
- package/dist/src/messages-Cv_m6kYs.cjs +1161 -0
- package/dist/src/mischievousUser-BcyFxrqJ.js +51 -0
- package/dist/src/mischievousUser-BlhOQSd2.js +52 -0
- package/dist/src/mischievousUser-BuQiKE8D.js +51 -0
- package/dist/src/mischievousUser-ChIOk6cT.cjs +51 -0
- package/dist/src/modelslab-BXIWBTgX.js +171 -0
- package/dist/src/modelslab-ChVsUiaJ.js +170 -0
- package/dist/src/modelslab-DZ6BFlDv.js +170 -0
- package/dist/src/modelslab-DhRr-vyo.cjs +170 -0
- package/dist/src/nova-reel-BL8DrN4_.js +272 -0
- package/dist/src/nova-reel-BiOMUm5q.cjs +272 -0
- package/dist/src/nova-reel-CTsya1hV.js +273 -0
- package/dist/src/nova-reel-kgBY4Svd.js +272 -0
- package/dist/src/nova-sonic-CaSSA3Jq.cjs +374 -0
- package/dist/src/nova-sonic-DLpmoGsR.js +375 -0
- package/dist/src/nova-sonic-DwWc4SoN.js +374 -0
- package/dist/src/nova-sonic-qnReTaXm.js +374 -0
- package/dist/src/novita-B5mAt3Ui.js +114 -0
- package/dist/src/novita-D57vCjDD.js +116 -0
- package/dist/src/novita-ITRtG8IJ.js +115 -0
- package/dist/src/novita-Rh3T13YO.cjs +115 -0
- package/dist/src/nscale-8V7iZ_pI.js +210 -0
- package/dist/src/nscale-BQnMv4pH.cjs +209 -0
- package/dist/src/nscale-BWZXHZVF.js +209 -0
- package/dist/src/nscale-BqrHiUqU.js +207 -0
- package/dist/src/openaiResponses-BMtGTu8R.js +317 -0
- package/dist/src/openaiResponses-CvcI_viE.js +318 -0
- package/dist/src/openaiResponses-DYPZEMX1.cjs +318 -0
- package/dist/src/openaiResponses-DZTg1-kb.js +319 -0
- package/dist/src/openclaw-BeKuig4g.js +1338 -0
- package/dist/src/openclaw-COkdQ83y.js +1337 -0
- package/dist/src/openclaw-CSoX_HQ5.cjs +1344 -0
- package/dist/src/openclaw-DJlhPGCb.js +1336 -0
- package/dist/src/opencode-sdk-BEJftEs6.cjs +1018 -0
- package/dist/src/opencode-sdk-DMvBB3V7.js +1013 -0
- package/dist/src/opencode-sdk-Df7hMjLO.js +1012 -0
- package/dist/src/opencode-sdk-bQp5Xf3W.js +1012 -0
- package/dist/src/openinterpreter-B3GgVZjK.js +431 -0
- package/dist/src/openinterpreter-BiGcU-HN.cjs +435 -0
- package/dist/src/openinterpreter-Buj2l3Eh.js +432 -0
- package/dist/src/openinterpreter-C3_Cg5b_.js +431 -0
- package/dist/src/pricing-0Pampf0q.cjs +999 -0
- package/dist/src/pricing-B8VdhEhY.js +976 -0
- package/dist/src/pricing-CtLA-rKA.js +976 -0
- package/dist/src/promptfoo-4OkHtH9P.cjs +341 -0
- package/dist/src/promptfoo-Bhpm7sH6.js +286 -0
- package/dist/src/promptfoo-BqV8ogVA.js +285 -0
- package/dist/src/promptfoo-S1Q9OHk_.js +286 -0
- package/dist/src/providers-B5zs1ZRv.js +24437 -0
- package/dist/src/providers-Cd6CJh6m.js +2 -0
- package/dist/src/providers-CpJlgHET.js +24039 -0
- package/dist/src/providers-CzvLvK6G.cjs +24180 -0
- package/dist/src/quiverai-1E_IvLHn.js +325 -0
- package/dist/src/quiverai-BXH004Vv.js +325 -0
- package/dist/src/quiverai-Ccya2z8Y.cjs +325 -0
- package/dist/src/quiverai-Cez57oe-.js +326 -0
- package/dist/src/registry-3zX_M9Ik.js +131 -0
- package/dist/src/registry-AuCrKTvS.js +132 -0
- package/dist/src/registry-CxXWKtQG.js +131 -0
- package/dist/src/registry-DG3o66JQ.cjs +131 -0
- package/dist/src/remoteGeneration-CAtvamG6.js +370 -0
- package/dist/src/remoteGeneration-CF225pDl.cjs +482 -0
- package/dist/src/remoteGeneration-DtnqocnL.js +370 -0
- package/dist/src/remoteGeneration-g3KvW-sP.js +371 -0
- package/dist/src/responses-BMbaUXQI.js +1098 -0
- package/dist/src/responses-B_TOSof-.js +1099 -0
- package/dist/src/responses-v-yANwTA.cjs +1109 -0
- package/dist/src/runtimeTransform-BBZv-oUZ.js +156 -0
- package/dist/src/runtimeTransform-DT2v5ovW.js +156 -0
- package/dist/src/runtimeTransform-GXXEIXdS.cjs +161 -0
- package/dist/src/runtimeTransform-JTwBQc-P.js +157 -0
- package/dist/src/sagemaker-B8D0L4rj.cjs +716 -0
- package/dist/src/sagemaker-CR2_AGdB.js +713 -0
- package/dist/src/sagemaker-Cd9qSQUV.js +714 -0
- package/dist/src/sagemaker-mKlltN4p.js +713 -0
- package/dist/src/scanner-PG_8lh8r.js +1971 -0
- package/dist/src/server/index.js +55 -55
- package/dist/src/server-Bmh7sd9F.js +155 -0
- package/dist/src/server-C7b8z6aC.js +63 -0
- package/dist/src/server-CAcovgtL.js +2 -0
- package/dist/src/server-CuuMfKlh.cjs +74 -0
- package/dist/src/server-DMPCj9jy.js +189 -0
- package/dist/src/session-BksXvRH_.cjs +69 -0
- package/dist/src/session-DOxUjqGQ.js +63 -0
- package/dist/src/session-Dujsc-b9.js +62 -0
- package/dist/src/session-VjtIxREd.js +62 -0
- package/dist/src/shared-Bkyz_7e5.cjs +2185 -0
- package/dist/src/shared-DDJg8ycC.js +1929 -0
- package/dist/src/shared-Dh3yfRBd.js +1927 -0
- package/dist/src/shared-tfPT8Tna.js +1928 -0
- package/dist/src/simulatedUser-6JdkyL3k.cjs +252 -0
- package/dist/src/simulatedUser-CFr2mr3M.js +248 -0
- package/dist/src/simulatedUser-DjwwUqx-.js +247 -0
- package/dist/src/slack-C_gIYiUs.js +144 -0
- package/dist/src/slack-DhNbz9CM.cjs +144 -0
- package/dist/src/slack-Dm2iI1zu.js +145 -0
- package/dist/src/strategies-BIY-bNul.js +2248 -0
- package/dist/src/strategies-C1KQQj9G.cjs +2420 -0
- package/dist/src/strategies-DM_3mReG.js +2385 -0
- package/dist/src/telemetry-BhMTibZO.js +2 -0
- package/dist/src/telemetry-C04d25BM.cjs +216 -0
- package/dist/src/telemetry-CIqy4fSC.js +201 -0
- package/dist/src/telemetry-CXozp_6C.js +205 -0
- package/dist/src/telemetry-g7PkBxmY.js +205 -0
- package/dist/src/togetherai-BvCim68-.js +50 -0
- package/dist/src/togetherai-CWyDCA9m.cjs +49 -0
- package/dist/src/togetherai-CeSE31vK.js +49 -0
- package/dist/src/togetherai-_2W0URf8.js +48 -0
- package/dist/src/traceContext-Brw3Oe41.js +1016 -0
- package/dist/src/traceContext-DpAYv27G.js +1015 -0
- package/dist/src/traceContext-KSqhzZI2.cjs +1032 -0
- package/dist/src/transcription-BySopazW.js +175 -0
- package/dist/src/transcription-DO4UPkRI.cjs +178 -0
- package/dist/src/transcription-RJGBa-pC.js +176 -0
- package/dist/src/transcription-fZenF3G5.js +175 -0
- package/dist/src/transform-BzhRc5z2.js +125 -0
- package/dist/src/transform-CPQu05u6.cjs +154 -0
- package/dist/src/transform-DAED8imp.js +126 -0
- package/dist/src/transform-DIOIQDmM.js +125 -0
- package/dist/src/typesafe-ByE0Kxfg.js +253 -0
- package/dist/src/typesafe-CFqGFY34.js +253 -0
- package/dist/src/typesafe-DCWIw-CP.cjs +253 -0
- package/dist/src/typesafe-DyHFV5Qk.js +254 -0
- package/dist/src/util-BHkj9joz.js +2049 -0
- package/dist/src/util-CICwIpmu.cjs +934 -0
- package/dist/src/util-CePiY2xZ.js +286 -0
- package/dist/src/util-CgT3uf4p.js +743 -0
- package/dist/src/util-Cj9drvOY.js +1770 -0
- package/dist/src/util-ClJRjlQA.cjs +357 -0
- package/dist/src/util-Cxf8VF2M.js +395 -0
- package/dist/src/util-D7RdV7rS.js +395 -0
- package/dist/src/util-DMNFhk47.js +351 -0
- package/dist/src/util-DNzh3M0z.js +396 -0
- package/dist/src/util-Df7rfMGb.cjs +2305 -0
- package/dist/src/util-Kf0KnG_6.js +2051 -0
- package/dist/src/util-LEbeiYw_.js +743 -0
- package/dist/src/util-WH8CgVs4.js +352 -0
- package/dist/src/util-cx6Xw8Lw.cjs +478 -0
- package/dist/src/util-qzBqirBH.js +2050 -0
- package/dist/src/vertex-CBAMfRz3.js +854 -0
- package/dist/src/vertex-CMP2IpN9.js +2 -0
- package/dist/src/vertex-CZ5YOotT.js +848 -0
- package/dist/src/vertex-DNsh1F1M.cjs +871 -0
- package/dist/src/vertexLive-BTXYj3-F.js +55 -0
- package/dist/src/vertexLive-Ba_LAqEF.cjs +55 -0
- package/dist/src/vertexLive-DM4sFaaj.js +56 -0
- package/dist/src/vertexLive-JqZOw7HC.js +55 -0
- package/dist/src/video-BY7Q2Gii.cjs +706 -0
- package/dist/src/video-CYElP-CK.js +703 -0
- package/dist/src/video-C_AdEDH0.js +702 -0
- package/dist/src/video-DGvjQ_4j.js +702 -0
- package/package.json +1 -1
- package/dist/src/accounts-Dpb43yde.cjs +0 -276
- package/dist/src/accounts-GKrO1olH.js +0 -229
- package/dist/src/accounts-e4FGOsji.js +0 -227
- package/dist/src/accounts-sUiEJfkB.js +0 -222
- package/dist/src/agentWorkspace-B8A_wuMR.cjs +0 -619
- package/dist/src/agentWorkspace-DSPIscXR.js +0 -593
- package/dist/src/agentWorkspace-DxUqd-XK.js +0 -592
- package/dist/src/agentWorkspace-n0uOJXhD.js +0 -592
- package/dist/src/agentic-utils-9bCj4twQ.js +0 -197
- package/dist/src/agentic-utils-CyCLuLoj.js +0 -197
- package/dist/src/agentic-utils-D23qtOlx.cjs +0 -237
- package/dist/src/agentic-utils-DuBMMNCw.js +0 -198
- package/dist/src/agents-6hDRNoYD.js +0 -777
- package/dist/src/agents-B8w2o7Sc.cjs +0 -777
- package/dist/src/agents-Ck0NXl7v.js +0 -777
- package/dist/src/agents-CwT3B1qB.js +0 -778
- package/dist/src/agents-DOLjfOEq.js +0 -266
- package/dist/src/agents-OcF9hq--.js +0 -267
- package/dist/src/agents-api-CnZZt8bn.cjs +0 -710
- package/dist/src/agents-api-D04u3bmL.js +0 -711
- package/dist/src/agents-api-DWw0_Vio.js +0 -710
- package/dist/src/agents-api-IWHEwp8i.js +0 -710
- package/dist/src/agents-mHt2Mh9O.cjs +0 -266
- package/dist/src/agents-sICccZCA.js +0 -266
- package/dist/src/ai.studio-Ci4rypDT.js +0 -2
- package/dist/src/ai.studio-KkQ6KaHa.js +0 -369
- package/dist/src/ai.studio-gSXK2cGI.js +0 -374
- package/dist/src/ai.studio-nQF_B4DH.cjs +0 -391
- package/dist/src/aimlapi-BeSk5BDV.js +0 -30
- package/dist/src/aimlapi-CzNUhdKu.cjs +0 -29
- package/dist/src/aimlapi-DCkazDPI.js +0 -29
- package/dist/src/aimlapi-WeH5B6K1.js +0 -28
- package/dist/src/anthropicMessages-AcNWTpYO.js +0 -115
- package/dist/src/anthropicMessages-BUtvzbpL.js +0 -114
- package/dist/src/anthropicMessages-DTWhZDCd.js +0 -114
- package/dist/src/anthropicMessages-lGVnSgyx.cjs +0 -114
- package/dist/src/app/assets/index-CyEI5aDN.js +0 -392
- package/dist/src/audio-BE_Duiu1.js +0 -104
- package/dist/src/audio-CiUd00k2.cjs +0 -104
- package/dist/src/audio-Dop6omna.js +0 -105
- package/dist/src/audio-EZNTInr_.js +0 -104
- package/dist/src/authoritativeMarkupInjection-BUqH6hNk.js +0 -78
- package/dist/src/authoritativeMarkupInjection-BmbJdJO0.cjs +0 -78
- package/dist/src/authoritativeMarkupInjection-Cpz12Y3w.js +0 -78
- package/dist/src/authoritativeMarkupInjection-W4XfcH91.js +0 -79
- package/dist/src/aws-B2Jqbnet.js +0 -2433
- package/dist/src/aws-DHtuUIzQ.js +0 -1149
- package/dist/src/aws-DLqXP6wY.js +0 -2433
- package/dist/src/aws-DfduhmwL.cjs +0 -2454
- package/dist/src/base-B9L2Xvpc.js +0 -255
- package/dist/src/base-BTZnIsuH.cjs +0 -305
- package/dist/src/base-BhaWNQPJ.js +0 -462
- package/dist/src/base-Br-G_Xou.js +0 -256
- package/dist/src/base-Bzo8hiUS.cjs +0 -467
- package/dist/src/base-C82fd2jq.js +0 -463
- package/dist/src/base-CRdQwC1W.js +0 -462
- package/dist/src/base-CjGwZNOQ.js +0 -255
- package/dist/src/bedrock-BdMru_ro.js +0 -1300
- package/dist/src/bedrock-CBUmfLX1.cjs +0 -2
- package/dist/src/bedrock-DBDxBaF9.js +0 -2
- package/dist/src/bedrock-DDrECM21.js +0 -1
- package/dist/src/bedrock-DVwkgvRS.js +0 -1
- package/dist/src/bestOfN-AKF5beq4.js +0 -159
- package/dist/src/bestOfN-C1UIVGJV.js +0 -160
- package/dist/src/bestOfN-DlkETbXy.cjs +0 -161
- package/dist/src/bestOfN-XIfEgU-g.js +0 -159
- package/dist/src/cache-BZaVoKaA.js +0 -2
- package/dist/src/cache-CEYhFUsH.js +0 -741
- package/dist/src/cache-Cbw1zH6q.js +0 -782
- package/dist/src/cache-CdaZNb75.js +0 -754
- package/dist/src/cache-DpuIzPxh.cjs +0 -856
- package/dist/src/cerebras-Bpn6FPkJ.js +0 -97
- package/dist/src/cerebras-CqJ0BRCJ.cjs +0 -97
- package/dist/src/cerebras-D4ILa_TY.js +0 -97
- package/dist/src/cerebras-DR8uc7ee.js +0 -98
- package/dist/src/chat-B7PZfaYp.cjs +0 -987
- package/dist/src/chat-BVuSjdEb.js +0 -227
- package/dist/src/chat-BsaZRjXN.js +0 -76
- package/dist/src/chat-C5liqe3Y.js +0 -226
- package/dist/src/chat-C9hyHf5B.js +0 -124
- package/dist/src/chat-CFLalAck.js +0 -226
- package/dist/src/chat-CN8JGrHu.js +0 -76
- package/dist/src/chat-CaHBBpCb.js +0 -123
- package/dist/src/chat-CcbLSghx.js +0 -123
- package/dist/src/chat-CoSN6sr2.js +0 -934
- package/dist/src/chat-CsJRFX8a.cjs +0 -226
- package/dist/src/chat-DFoZLvO_.js +0 -934
- package/dist/src/chat-DiLQvL7r.js +0 -77
- package/dist/src/chat-F6qVSDk3.cjs +0 -123
- package/dist/src/chat-Oq4FaJgI.cjs +0 -76
- package/dist/src/chat-knMfQUKz.js +0 -935
- package/dist/src/claude-agent-sdk-CJkOLpnI.js +0 -999
- package/dist/src/claude-agent-sdk-Ckn76PRD.js +0 -999
- package/dist/src/claude-agent-sdk-DX0gTr11.cjs +0 -1005
- package/dist/src/claude-agent-sdk-LMeikxoR.js +0 -1000
- package/dist/src/client-BFf1r6Z8.js +0 -352
- package/dist/src/client-CdXyDdDi.js +0 -351
- package/dist/src/client-DV8XMu7i.js +0 -351
- package/dist/src/client-iEXtOBKW.cjs +0 -357
- package/dist/src/cloud-B02qcpjf.js +0 -2
- package/dist/src/cloud-BlHP-g1v.cjs +0 -666
- package/dist/src/cloud-C9BI4isF.js +0 -287
- package/dist/src/cloud-CTTLNdvj.js +0 -657
- package/dist/src/cloud-D5X5yQ_d.js +0 -599
- package/dist/src/cloud-QxPkpsHA.js +0 -599
- package/dist/src/cloudflare-ai-DRTRT1fc.js +0 -132
- package/dist/src/cloudflare-ai-DgaXapAV.cjs +0 -133
- package/dist/src/cloudflare-ai-DkuJXijS.js +0 -134
- package/dist/src/cloudflare-ai-wy9QCHku.js +0 -133
- package/dist/src/cloudflare-gateway-9cAN8g29.cjs +0 -276
- package/dist/src/cloudflare-gateway-BVFMD292.js +0 -277
- package/dist/src/cloudflare-gateway-BuUI4p6I.js +0 -276
- package/dist/src/cloudflare-gateway-TlYHizbW.js +0 -276
- package/dist/src/codex-app-server-BPz_feug.cjs +0 -2162
- package/dist/src/codex-app-server-C9noXM9C.js +0 -2155
- package/dist/src/codex-app-server-CEmD-Y5U.js +0 -2
- package/dist/src/codex-app-server-DZolc18r.js +0 -2156
- package/dist/src/codex-app-server-Dd0A37nO.js +0 -2155
- package/dist/src/codex-sdk-BbxjBvBk.cjs +0 -1588
- package/dist/src/codex-sdk-BpXeIs-_.js +0 -1557
- package/dist/src/codex-sdk-BtQp5X0f.js +0 -1552
- package/dist/src/codex-sdk-CH0v9Bk1.js +0 -2
- package/dist/src/codex-sdk-CgrN7JB8.js +0 -1557
- package/dist/src/codex-security-B5fENNUr.js +0 -406
- package/dist/src/codex-security-C6uuJx-y.cjs +0 -411
- package/dist/src/codex-security-CifWtZR_.js +0 -407
- package/dist/src/codex-security-Kg2bOEKy.js +0 -406
- package/dist/src/cometapi-BFpIDLIx.js +0 -55
- package/dist/src/cometapi-C6O2PIrN.js +0 -56
- package/dist/src/cometapi-D5Yupc6F.js +0 -53
- package/dist/src/cometapi-DzgIwJzJ.cjs +0 -55
- package/dist/src/compatible-0jhmVfOp.js +0 -25
- package/dist/src/compatible-DdtwWdJi.cjs +0 -24
- package/dist/src/compatible-Di4nR3sU.js +0 -24
- package/dist/src/compatible-iJKLWdnf.js +0 -24
- package/dist/src/completion-B0_hVUDG.js +0 -119
- package/dist/src/completion-BdI6v0-Q.cjs +0 -123
- package/dist/src/completion-CWcJscwv.js +0 -118
- package/dist/src/conversationScoring-99EOPJRa.js +0 -373
- package/dist/src/conversationScoring-BIq4J0Cq.js +0 -374
- package/dist/src/conversationScoring-DARyeATr.cjs +0 -398
- package/dist/src/conversationScoring-DS48t4Hb.js +0 -373
- package/dist/src/crescendo-CebvXIu4.js +0 -730
- package/dist/src/crescendo-CxrLS0oo.js +0 -732
- package/dist/src/crescendo-DZQXBSkj.js +0 -733
- package/dist/src/crescendo-wjEx68uD.cjs +0 -734
- package/dist/src/custom-BiQ-aUNw.cjs +0 -620
- package/dist/src/custom-ByyB5Z93.js +0 -619
- package/dist/src/custom-C5jOevNb.js +0 -617
- package/dist/src/custom-CCrsCz8o.js +0 -618
- package/dist/src/dataUrl-C9J7wz9H.js +0 -3133
- package/dist/src/dataUrl-CGsBT7UZ.cjs +0 -3187
- package/dist/src/dataUrl-CzKvvWNO.js +0 -2868
- package/dist/src/decisions-BTusXCUx.cjs +0 -514
- package/dist/src/decisions-BYtL9edD.js +0 -515
- package/dist/src/decisions-jYix_gCF.js +0 -515
- package/dist/src/decisions-nxxfHRAN.js +0 -516
- package/dist/src/docker-DDIv4zkg.js +0 -93
- package/dist/src/docker-DVLp_5OG.js +0 -94
- package/dist/src/docker-INm9w0SY.cjs +0 -94
- package/dist/src/docker-sGuoCul_.js +0 -95
- package/dist/src/embedding-CAhqLLrR.js +0 -82
- package/dist/src/embedding-D94GAsti.cjs +0 -86
- package/dist/src/embedding-zb4MAzQy.js +0 -81
- package/dist/src/envoy-BMPszwEa.cjs +0 -60
- package/dist/src/envoy-Bp-s39_8.js +0 -60
- package/dist/src/envoy-BswDt-Ou.js +0 -61
- package/dist/src/envoy-rVbYcV80.js +0 -60
- package/dist/src/eval-B1-XfrC7.js +0 -2
- package/dist/src/eval-pC4qCvLw.js +0 -1920
- package/dist/src/evalResult-CzjCb5bd.js +0 -1300
- package/dist/src/evaluator-CNq2K7J_.js +0 -10578
- package/dist/src/evaluator-LtfxdxEu.js +0 -2
- package/dist/src/evaluatorHelpers-C5J0NYpQ.js +0 -601
- package/dist/src/evaluatorHelpers-DcdCglCs.cjs +0 -622
- package/dist/src/evaluatorHelpers-Rvb88W6B.js +0 -600
- package/dist/src/fetch-5HtnNhHg.js +0 -1556
- package/dist/src/fetch-BCwjoIFd.js +0 -1559
- package/dist/src/fetch-BhfUnKen.js +0 -1280
- package/dist/src/fetch-C08w4vVl.js +0 -9
- package/dist/src/fetch-DBxy8Tlb.cjs +0 -14
- package/dist/src/fetch-DYte6oQX.cjs +0 -1853
- package/dist/src/fetch-ElpfcAVG.js +0 -10
- package/dist/src/fetch-lM1OIaSt.js +0 -2
- package/dist/src/functionCallbackUtils-BCAdWfHO.js +0 -246
- package/dist/src/functionCallbackUtils-BYq9qOhG.js +0 -245
- package/dist/src/functionCallbackUtils-ByWkmVud.cjs +0 -262
- package/dist/src/functionCallbackUtils-D_C_JaFd.js +0 -245
- package/dist/src/gemini-image-CAlwaJhZ.js +0 -471
- package/dist/src/gemini-image-DJoVoOnZ.cjs +0 -471
- package/dist/src/gemini-image-Waio-9Xx.js +0 -472
- package/dist/src/gemini-image-vbY6Ftbf.js +0 -471
- package/dist/src/goat-BWbtyY9c.js +0 -512
- package/dist/src/goat-CXzzeCOQ.cjs +0 -515
- package/dist/src/goat-CfgvzSgZ.js +0 -514
- package/dist/src/goat-DLeoIHBp.js +0 -515
- package/dist/src/goblin-CmfCfwqk.cjs +0 -22
- package/dist/src/goblin-CtcaORRH.js +0 -22
- package/dist/src/goblin-DF6DDhM-.js +0 -22
- package/dist/src/goblin-Nai0xxBV.js +0 -23
- package/dist/src/google-ClpkLtKL.cjs +0 -142
- package/dist/src/google-CrFgKu9k.js +0 -143
- package/dist/src/google-Dj_EIBqS.js +0 -142
- package/dist/src/google-e4-vARv6.js +0 -142
- package/dist/src/graders-BN1IIa71.js +0 -15470
- package/dist/src/graders-C5sCfSP5.js +0 -2
- package/dist/src/hydra-B7RfXVBK.js +0 -2
- package/dist/src/hydra-C1cFN-Jg.js +0 -613
- package/dist/src/hydra-CK6Uc1ia.js +0 -612
- package/dist/src/hydra-Dg65rAP_.js +0 -610
- package/dist/src/hydra-Fqx8l_Xu.cjs +0 -612
- package/dist/src/image-BdlUDAtp.js +0 -163
- package/dist/src/image-C-KwEhwt.cjs +0 -163
- package/dist/src/image-C76fp6NK.cjs +0 -209
- package/dist/src/image-D75ehv3D.js +0 -482
- package/dist/src/image-DKtc5v5W.js +0 -209
- package/dist/src/image-DT_xOkJY.js +0 -163
- package/dist/src/image-DVpdllEE.js +0 -209
- package/dist/src/image-DXZ8AzMf.js +0 -481
- package/dist/src/image-DZl_1mvy.js +0 -164
- package/dist/src/image-DcTD7Ak0.cjs +0 -504
- package/dist/src/image-ndxEvBKB.js +0 -210
- package/dist/src/indirectWebPwn-70WA5x_q.js +0 -435
- package/dist/src/indirectWebPwn-BRVyd3qV.cjs +0 -463
- package/dist/src/indirectWebPwn-BsJVsu0q.js +0 -285
- package/dist/src/indirectWebPwn-Cw6yJu0i.js +0 -285
- package/dist/src/indirectWebPwn-D-PhJzo4.js +0 -286
- package/dist/src/indirectWebPwn-DRPHt2I8.js +0 -434
- package/dist/src/indirectWebPwn-DXtfFhd9.cjs +0 -285
- package/dist/src/indirectWebPwn-DvpNouzc.js +0 -434
- package/dist/src/interactions-5ixfW7Cl.js +0 -850
- package/dist/src/interactions-BOUzfmg1.cjs +0 -850
- package/dist/src/interactions-CSSXcGNc.js +0 -851
- package/dist/src/interactions-WB_sgkN0.js +0 -850
- package/dist/src/iterative-BShRNqjC.cjs +0 -549
- package/dist/src/iterative-BcW_ELtB.js +0 -548
- package/dist/src/iterative-BpHbHz8B.js +0 -547
- package/dist/src/iterative-YcchP12d.js +0 -545
- package/dist/src/iterativeImage-BMFE5Hl7.cjs +0 -419
- package/dist/src/iterativeImage-CkSaYLMY.js +0 -417
- package/dist/src/iterativeImage-DAEUlQX_.js +0 -418
- package/dist/src/iterativeImage-DeUSkEnj.js +0 -417
- package/dist/src/iterativeMeta-DbdaKdEO.cjs +0 -439
- package/dist/src/iterativeMeta-DcF9JWEK.js +0 -437
- package/dist/src/iterativeMeta-DkfPqWIC.js +0 -439
- package/dist/src/iterativeMeta-DkrpnVSs.js +0 -440
- package/dist/src/iterativeTree-CEMY1FhE.cjs +0 -879
- package/dist/src/iterativeTree-Cv5W4tX9.js +0 -877
- package/dist/src/iterativeTree-DGvomd3M.js +0 -876
- package/dist/src/iterativeTree-KbtC2Mkz.js +0 -878
- package/dist/src/knowledgeBase-AYRXn4wO.js +0 -163
- package/dist/src/knowledgeBase-BNqQfx01.js +0 -163
- package/dist/src/knowledgeBase-C0IaCCVs.js +0 -164
- package/dist/src/knowledgeBase-C2uj6wK4.cjs +0 -163
- package/dist/src/litellm-CN1ScAwZ.js +0 -147
- package/dist/src/litellm-CTjwiKSa.js +0 -146
- package/dist/src/litellm-Cd4Nj5ue.js +0 -145
- package/dist/src/litellm-DMqLpEBg.cjs +0 -146
- package/dist/src/live-Bt50-InO.cjs +0 -891
- package/dist/src/live-Bu2ujadG.js +0 -2
- package/dist/src/live-C3M52i3p.js +0 -891
- package/dist/src/live-CRfHMO3B.js +0 -892
- package/dist/src/live-iCIpO14m.js +0 -891
- package/dist/src/luma-ray-B8eHC4c8.cjs +0 -309
- package/dist/src/luma-ray-BIvkPw0s.js +0 -309
- package/dist/src/luma-ray-ChsiBxMA.js +0 -309
- package/dist/src/luma-ray-DAvKrInz.js +0 -310
- package/dist/src/mantleChat-5YeEXAZI.js +0 -154
- package/dist/src/mantleChat-D--mW3hl.js +0 -154
- package/dist/src/mantleChat-DHP3siNg.cjs +0 -154
- package/dist/src/mantleChat-wBfAX46o.js +0 -155
- package/dist/src/mcp-49jlEcTQ.js +0 -85
- package/dist/src/mcp-__PIz81I.js +0 -84
- package/dist/src/memoryPoisoning-Chxge74M.js +0 -111
- package/dist/src/memoryPoisoning-QH6NCUVE.js +0 -112
- package/dist/src/memoryPoisoning-tCxZt8Nz.js +0 -111
- package/dist/src/memoryPoisoning-ymrRItRR.cjs +0 -111
- package/dist/src/messages-BE_eZ7NA.js +0 -1127
- package/dist/src/messages-Bo638ShI.js +0 -1127
- package/dist/src/messages-BzR0-NQ1.js +0 -1128
- package/dist/src/messages-Cbg5Pfd0.cjs +0 -1161
- package/dist/src/mischievousUser-BtED2Z5Z.cjs +0 -51
- package/dist/src/mischievousUser-KqSOjrDJ.js +0 -51
- package/dist/src/mischievousUser-YMD41YNZ.js +0 -51
- package/dist/src/mischievousUser-zBxlNdCu.js +0 -52
- package/dist/src/modelslab-B8gZxtfE.js +0 -171
- package/dist/src/modelslab-C7bmVpTB.js +0 -170
- package/dist/src/modelslab-CCeQCTZg.js +0 -170
- package/dist/src/modelslab-CvBJGv7y.cjs +0 -170
- package/dist/src/nova-reel-BOEWsEKA.cjs +0 -272
- package/dist/src/nova-reel-BtyBXq5M.js +0 -273
- package/dist/src/nova-reel-C1eF3-EE.js +0 -272
- package/dist/src/nova-reel-YhgrxEKT.js +0 -272
- package/dist/src/nova-sonic-BaERP20w.js +0 -374
- package/dist/src/nova-sonic-CxgM3O-P.cjs +0 -374
- package/dist/src/nova-sonic-DJS22fC3.js +0 -375
- package/dist/src/nova-sonic-DwvwHyRX.js +0 -374
- package/dist/src/novita-D1l2tG0O.js +0 -116
- package/dist/src/novita-D84VM3v0.cjs +0 -115
- package/dist/src/novita-DGInvwfR.js +0 -115
- package/dist/src/novita-vXHkXhTg.js +0 -114
- package/dist/src/nscale-CU0Ldr00.js +0 -209
- package/dist/src/nscale-ClfKlQeM.cjs +0 -209
- package/dist/src/nscale-DxaVnF0x.js +0 -210
- package/dist/src/nscale-_poVxIrO.js +0 -207
- package/dist/src/openaiResponses-CJGsneNj.js +0 -317
- package/dist/src/openaiResponses-CKSl5Sdg.js +0 -319
- package/dist/src/openaiResponses-DC8rzFUc.js +0 -318
- package/dist/src/openaiResponses-rMHIA3dV.cjs +0 -318
- package/dist/src/openclaw-CCbvsNFW.cjs +0 -1344
- package/dist/src/openclaw-CZw1lCDZ.js +0 -1336
- package/dist/src/openclaw-ChFLgC-a.js +0 -1338
- package/dist/src/openclaw-DrPMoRrH.js +0 -1337
- package/dist/src/opencode-sdk-2EfIDhFp.cjs +0 -1018
- package/dist/src/opencode-sdk-CHw3F845.js +0 -1013
- package/dist/src/opencode-sdk-D0EGGxvy.js +0 -1012
- package/dist/src/opencode-sdk-jSS7NI2Q.js +0 -1012
- package/dist/src/openinterpreter-CY622xHC.js +0 -431
- package/dist/src/openinterpreter-DATyhuhP.js +0 -432
- package/dist/src/openinterpreter-DDUMyIf1.js +0 -431
- package/dist/src/openinterpreter-s5Tz6Lid.cjs +0 -435
- package/dist/src/pricing-C498twd2.js +0 -976
- package/dist/src/pricing-DBd_bMIh.cjs +0 -999
- package/dist/src/pricing-ISrMCskv.js +0 -976
- package/dist/src/promptfoo-6p0WG2ih.js +0 -286
- package/dist/src/promptfoo-BQRfgNs_.js +0 -285
- package/dist/src/promptfoo-Bqo88z20.cjs +0 -341
- package/dist/src/promptfoo-Cq5AVI3I.js +0 -286
- package/dist/src/providers-ATbeMX5E.cjs +0 -24180
- package/dist/src/providers-B7F1FiNI.js +0 -2
- package/dist/src/providers-DazIw8mI.js +0 -24039
- package/dist/src/providers-QvGlNAD0.js +0 -24437
- package/dist/src/quiverai-BPlNcLkV.cjs +0 -325
- package/dist/src/quiverai-By99-YmJ.js +0 -325
- package/dist/src/quiverai-CmmByDqo.js +0 -325
- package/dist/src/quiverai-HZkoJJqw.js +0 -326
- package/dist/src/registry-BLTnTfjT.cjs +0 -131
- package/dist/src/registry-BMC-COHT.js +0 -132
- package/dist/src/registry-C8UZtmBp.js +0 -131
- package/dist/src/registry-CfwEUYXG.js +0 -131
- package/dist/src/remoteGeneration-Bgg6kC5V.js +0 -370
- package/dist/src/remoteGeneration-CKJFE960.cjs +0 -482
- package/dist/src/remoteGeneration-DaxwJDKv.js +0 -370
- package/dist/src/remoteGeneration-vHMGVKr1.js +0 -371
- package/dist/src/responses-BvnyIHrq.js +0 -1099
- package/dist/src/responses-CERAgvf-.js +0 -1098
- package/dist/src/responses-CwgjeuOg.cjs +0 -1109
- package/dist/src/runtimeTransform-3RF9Avyg.cjs +0 -161
- package/dist/src/runtimeTransform-C51Z5j4H.js +0 -156
- package/dist/src/runtimeTransform-CKE_Iyv8.js +0 -157
- package/dist/src/runtimeTransform-Cs11xJpj.js +0 -156
- package/dist/src/sagemaker-BJ4dOCxE.js +0 -713
- package/dist/src/sagemaker-Bt3JUAWq.js +0 -714
- package/dist/src/sagemaker-QVKyLgLF.cjs +0 -716
- package/dist/src/sagemaker-l3IB8iTs.js +0 -713
- package/dist/src/scanner-DGjIiTZ1.js +0 -1971
- package/dist/src/server-BNaLZH6u.js +0 -63
- package/dist/src/server-CBMuQul3.js +0 -189
- package/dist/src/server-CMKKIzKv.cjs +0 -74
- package/dist/src/server-CN2IS9Cs.js +0 -155
- package/dist/src/server-ua4cqbjC.js +0 -2
- package/dist/src/session-CQIjq_HZ.cjs +0 -69
- package/dist/src/session-FTlg8sEu.js +0 -62
- package/dist/src/session-GBQXtPWp.js +0 -63
- package/dist/src/session-_0-rTdwY.js +0 -62
- package/dist/src/shared-BtuO-OAM.js +0 -1927
- package/dist/src/shared-Ci78wTZX.js +0 -1928
- package/dist/src/shared-Dd3rimdM.js +0 -1929
- package/dist/src/shared-KAjFxRre.cjs +0 -2185
- package/dist/src/simulatedUser--OjW6xCx.js +0 -247
- package/dist/src/simulatedUser-D0-slRye.cjs +0 -252
- package/dist/src/simulatedUser-D1Kh_cwA.js +0 -248
- package/dist/src/slack-BX0FUevO.js +0 -144
- package/dist/src/slack-CcwXFiJE.cjs +0 -144
- package/dist/src/slack-CnfqKfXp.js +0 -145
- package/dist/src/strategies-2ntcK4tN.js +0 -2248
- package/dist/src/strategies-DZIW7Zcs.js +0 -2385
- package/dist/src/strategies-YRDF2j-N.cjs +0 -2420
- package/dist/src/telemetry-CL8CVA4p.js +0 -205
- package/dist/src/telemetry-Cix90qqz.js +0 -201
- package/dist/src/telemetry-CkmlqTjV.js +0 -205
- package/dist/src/telemetry-DQH7l5bb.js +0 -2
- package/dist/src/telemetry-DUCXc1-r.cjs +0 -216
- package/dist/src/togetherai-3yUt5Ck7.js +0 -49
- package/dist/src/togetherai-BJUByLwt.cjs +0 -49
- package/dist/src/togetherai-Bh6KZkmd.js +0 -50
- package/dist/src/togetherai-DDl9yk3b.js +0 -48
- package/dist/src/traceContext-BiJVppjT.cjs +0 -1032
- package/dist/src/traceContext-CKKluULP.js +0 -1016
- package/dist/src/traceContext-D3Sk8fO-.js +0 -1015
- package/dist/src/transcription-BoVQKIVz.js +0 -175
- package/dist/src/transcription-Bs5u8780.js +0 -175
- package/dist/src/transcription-Dl654d1p.cjs +0 -178
- package/dist/src/transcription-VEvhM1Fu.js +0 -176
- package/dist/src/transform-BAbkGpvl.js +0 -125
- package/dist/src/transform-C_j4hUH8.js +0 -126
- package/dist/src/transform-Da86hs4M.cjs +0 -154
- package/dist/src/transform-_i1raQNo.js +0 -125
- package/dist/src/typesafe-CKXBeh82.cjs +0 -253
- package/dist/src/typesafe-D3VaGeNm.js +0 -253
- package/dist/src/typesafe-DYM-SFNH.js +0 -253
- package/dist/src/typesafe-LXmSbw8F.js +0 -254
- package/dist/src/util-41rb0XHX.js +0 -743
- package/dist/src/util-B0WlHYFM.js +0 -2049
- package/dist/src/util-BD1R_PsR.js +0 -1770
- package/dist/src/util-BLbM_ItC.js +0 -395
- package/dist/src/util-C72P0iIa.js +0 -352
- package/dist/src/util-C7MpGlJ6.cjs +0 -2305
- package/dist/src/util-CCtqagKc.js +0 -286
- package/dist/src/util-CM2Ec_uY.js +0 -2051
- package/dist/src/util-CSSAWO8v.js +0 -351
- package/dist/src/util-CkQc-fx3.cjs +0 -934
- package/dist/src/util-DcOlFTFa.cjs +0 -478
- package/dist/src/util-DluGTGVB.js +0 -395
- package/dist/src/util-PfQ60chz.js +0 -743
- package/dist/src/util-f14-CPij.js +0 -396
- package/dist/src/util-l9pXX3Eu.cjs +0 -357
- package/dist/src/util-o_BnlYqS.js +0 -2050
- package/dist/src/vertex-B_-gQgzc.js +0 -2
- package/dist/src/vertex-CU4gqoYa.js +0 -854
- package/dist/src/vertex-DZ42UHb3.js +0 -848
- package/dist/src/vertex-DsYQJA0T.cjs +0 -871
- package/dist/src/vertexLive-BvIaHKGB.js +0 -55
- package/dist/src/vertexLive-CTULqNx7.js +0 -56
- package/dist/src/vertexLive-DjJ_YQBe.cjs +0 -55
- package/dist/src/vertexLive-STUGcteB.js +0 -55
- package/dist/src/video-CAQGmtEV.js +0 -703
- package/dist/src/video-_FSTWlwX.js +0 -702
- package/dist/src/video-aBPJPWdt.js +0 -702
- package/dist/src/video-gDjkWv5m.cjs +0 -706
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { t as OpenAiChatCompletionProvider } from "./chat-zCWuBKAj.js";
|
|
2
|
+
import { i as isBedrockGrokModel, o as isBedrockOpenAiResponsesModel } from "./routing-JymeTqiF.js";
|
|
3
|
+
import { i as resolveBedrockMantleRegion, n as getBedrockMantleOrigin, r as resolveBedrockMantleApiKey, t as BedrockTokenProvider } from "./tokenProvider-C_w2klkB.js";
|
|
4
|
+
//#region src/providers/bedrock/mantleChat.ts
|
|
5
|
+
/**
|
|
6
|
+
* The Bedrock **Mantle** endpoint exposes an OpenAI-compatible **Chat Completions** API at
|
|
7
|
+
*
|
|
8
|
+
* https://bedrock-mantle.<region>.api.aws/<route>/chat/completions
|
|
9
|
+
*
|
|
10
|
+
* `bedrock:mantle:<id>` selects this API explicitly. Mantle and Runtime have distinct
|
|
11
|
+
* catalogs and model namespaces, including Mantle's Qwen `*-instruct` ids. Most models
|
|
12
|
+
* use `/v1`; xAI, Gemma 4, and supported GPT-5.6 models use `/openai/v1`.
|
|
13
|
+
*
|
|
14
|
+
* This is the Chat Completions counterpart to {@link createBedrockOpenAiResponsesProvider} (the
|
|
15
|
+
* `/openai/v1/responses` path used by the OpenAI frontier and xAI Grok models). Use the bare
|
|
16
|
+
* `bedrock:openai.gpt-5.6-sol` / `bedrock:xai.grok-4.3` forms for those (Responses API, with
|
|
17
|
+
* reasoning tokens); use `bedrock:mantle:<id>` to talk to the Chat Completions endpoint directly.
|
|
18
|
+
*
|
|
19
|
+
* Default region used when none is configured. The mantle model catalog is regional (see
|
|
20
|
+
* `GET /v1/models`), so the caller should set `region` to one where the target model is offered.
|
|
21
|
+
*/
|
|
22
|
+
const DEFAULT_BEDROCK_MANTLE_CHAT_REGION = "us-east-1";
|
|
23
|
+
const DEFAULT_BEDROCK_MANTLE_GROK_CHAT_REGION = "us-west-2";
|
|
24
|
+
const BEDROCK_OPENAI_CHAT_MODELS = /* @__PURE__ */ new Set([
|
|
25
|
+
"openai.gpt-5.6-sol",
|
|
26
|
+
"openai.gpt-5.6-terra",
|
|
27
|
+
"openai.gpt-5.6-luna"
|
|
28
|
+
]);
|
|
29
|
+
/**
|
|
30
|
+
* Base URL for the mantle Chat Completions API. Most mantle chat models use the bare `/v1`
|
|
31
|
+
* path, but xAI, Gemma 4, and supported GPT-5.6 chat models use `/openai/v1`.
|
|
32
|
+
*/
|
|
33
|
+
function getBedrockMantleChatBaseUrl(region, modelName) {
|
|
34
|
+
const path = modelName !== void 0 && isBedrockGrokModel(modelName) || modelName !== void 0 && BEDROCK_OPENAI_CHAT_MODELS.has(modelName) || modelName?.startsWith("google.gemma-4") ? "openai/v1" : "v1";
|
|
35
|
+
return `${getBedrockMantleOrigin(region)}/${path}`;
|
|
36
|
+
}
|
|
37
|
+
function isBedrockMantleEndpoint(apiBaseUrl) {
|
|
38
|
+
try {
|
|
39
|
+
return /^(?:[a-z0-9-]+\.)?bedrock-mantle(?:-fips)?\.[a-z0-9-]+(?:\.vpce)?\.(?:api\.aws|amazonaws\.com(?:\.cn)?)$/.test(new URL(apiBaseUrl).hostname.replace(/\.+$/, ""));
|
|
40
|
+
} catch {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* OpenAI Chat Completions provider pinned to the Bedrock mantle endpoint. Behaves like the
|
|
46
|
+
* OpenAI Platform chat provider (shared request/response/usage handling) but always targets the
|
|
47
|
+
* configured mantle `apiBaseUrl`.
|
|
48
|
+
*/
|
|
49
|
+
var BedrockMantleChatProvider = class extends OpenAiChatCompletionProvider {
|
|
50
|
+
bedrockTokenProvider;
|
|
51
|
+
bedrockRegion;
|
|
52
|
+
constructor(modelName, options = {}) {
|
|
53
|
+
super(modelName, options);
|
|
54
|
+
const region = resolveBedrockMantleRegion(options.config ?? {}, options.env, isBedrockGrokModel(modelName) ? DEFAULT_BEDROCK_MANTLE_GROK_CHAT_REGION : DEFAULT_BEDROCK_MANTLE_CHAT_REGION);
|
|
55
|
+
this.bedrockRegion = region;
|
|
56
|
+
this.config = {
|
|
57
|
+
...this.config,
|
|
58
|
+
apiBaseUrl: this.config.apiBaseUrl || getBedrockMantleChatBaseUrl(region, modelName)
|
|
59
|
+
};
|
|
60
|
+
this.bedrockTokenProvider = new BedrockTokenProvider(this.config, options.env, region);
|
|
61
|
+
}
|
|
62
|
+
requiresApiKey() {
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
getApiKey() {
|
|
66
|
+
return resolveBedrockMantleApiKey(this.config, this.env);
|
|
67
|
+
}
|
|
68
|
+
getRequestAuthentication() {
|
|
69
|
+
return async (signal) => {
|
|
70
|
+
const token = await this.bedrockTokenProvider.getToken(signal);
|
|
71
|
+
return token ? { Authorization: `Bearer ${token}` } : {};
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
getGenAISystem() {
|
|
75
|
+
return "bedrock";
|
|
76
|
+
}
|
|
77
|
+
getBillingRegion() {
|
|
78
|
+
return this.bedrockRegion;
|
|
79
|
+
}
|
|
80
|
+
normalizeCapabilityModelName(modelName) {
|
|
81
|
+
return modelName.replace(/^(openai|xai)\./, "");
|
|
82
|
+
}
|
|
83
|
+
getCapabilityModelName() {
|
|
84
|
+
return this.normalizeCapabilityModelName(this.modelName);
|
|
85
|
+
}
|
|
86
|
+
isReasoningModel() {
|
|
87
|
+
return isBedrockGrokModel(this.modelName) || super.isReasoningModel();
|
|
88
|
+
}
|
|
89
|
+
getBillingModelName(config) {
|
|
90
|
+
const modelName = super.getBillingModelName(config).replace(/^(?:openai|xai)\./, "");
|
|
91
|
+
return /^gpt-5\.6(?:-|$)/.test(modelName) || modelName === "grok-4.3" ? `bedrock:${modelName}` : modelName;
|
|
92
|
+
}
|
|
93
|
+
supportsTemperature() {
|
|
94
|
+
return isBedrockGrokModel(this.modelName) || super.supportsTemperature();
|
|
95
|
+
}
|
|
96
|
+
async getOpenAiBody(prompt, context, callApiOptions) {
|
|
97
|
+
const result = await super.getOpenAiBody(prompt, context, callApiOptions);
|
|
98
|
+
const model = result.body.model;
|
|
99
|
+
const apiUrl = new URL(this.getApiUrl());
|
|
100
|
+
if (isBedrockMantleEndpoint(apiUrl.href)) {
|
|
101
|
+
const expectedPath = new URL(getBedrockMantleChatBaseUrl(DEFAULT_BEDROCK_MANTLE_CHAT_REGION, model)).pathname;
|
|
102
|
+
if (apiUrl.pathname.replace(/\/+$/, "") !== expectedPath) throw new Error(`Bedrock model ${model} requires the ${expectedPath} Mantle endpoint. Configure a separate provider using bedrock:mantle:${model}.`);
|
|
103
|
+
}
|
|
104
|
+
if (model.startsWith("google.gemma-4-") && result.config.reasoning_effort !== void 0) result.body.reasoning_effort = result.config.reasoning_effort;
|
|
105
|
+
if (isBedrockGrokModel(model)) {
|
|
106
|
+
delete result.body.presence_penalty;
|
|
107
|
+
delete result.body.frequency_penalty;
|
|
108
|
+
delete result.body.stop;
|
|
109
|
+
}
|
|
110
|
+
return result;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Pin requests to the configured mantle endpoint. The base `getApiUrl()` prefers
|
|
114
|
+
* `apiHost`/`OPENAI_API_HOST` over `apiBaseUrl`, so without this an ambient `OPENAI_API_HOST`
|
|
115
|
+
* (set for an unrelated OpenAI-compatible provider) would hijack Bedrock calls and send the
|
|
116
|
+
* Bedrock bearer token to the wrong host.
|
|
117
|
+
*/
|
|
118
|
+
getApiUrl() {
|
|
119
|
+
return this.config.apiBaseUrl || super.getApiUrl();
|
|
120
|
+
}
|
|
121
|
+
getOpenAiRequestHeaders(customHeaders = this.config.headers) {
|
|
122
|
+
return customHeaders ?? {};
|
|
123
|
+
}
|
|
124
|
+
shouldBustCache() {
|
|
125
|
+
return true;
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
/**
|
|
129
|
+
* Construct a Chat Completions provider configured for the Bedrock mantle endpoint. Resolves the
|
|
130
|
+
* region (config → AWS_BEDROCK_REGION → AWS_REGION → default), targets the mantle endpoint
|
|
131
|
+
* unless the caller supplies an explicit `apiBaseUrl`, and authenticates with either a
|
|
132
|
+
* configured Bedrock bearer token or a request-scoped token generated from AWS credentials.
|
|
133
|
+
*/
|
|
134
|
+
function createBedrockMantleChatProvider(modelName, providerOptions = {}) {
|
|
135
|
+
if (isBedrockOpenAiResponsesModel(modelName) && !BEDROCK_OPENAI_CHAT_MODELS.has(modelName)) throw new Error(`Amazon Bedrock model "bedrock:mantle:${modelName}" is not supported by promptfoo's Mantle Chat Completions adapter. Use the bare "bedrock:${modelName}" id so promptfoo routes it through Bedrock's OpenAI-compatible Responses API.`);
|
|
136
|
+
const config = providerOptions.config ?? {};
|
|
137
|
+
const region = resolveBedrockMantleRegion(config, providerOptions.env, isBedrockGrokModel(modelName) ? DEFAULT_BEDROCK_MANTLE_GROK_CHAT_REGION : DEFAULT_BEDROCK_MANTLE_CHAT_REGION);
|
|
138
|
+
const apiBaseUrl = config.apiBaseUrl || getBedrockMantleChatBaseUrl(region, modelName);
|
|
139
|
+
const profile = modelName.match(/^[a-z]+\.(openai\.gpt-5\.6-(?:sol|terra|luna))$/);
|
|
140
|
+
if (profile && isBedrockMantleEndpoint(apiBaseUrl)) throw new Error(`Amazon Bedrock inference profile "${modelName}" cannot be used on Mantle. Use "bedrock:mantle:${profile[1]}" for Mantle Chat Completions or "bedrock:converse:${modelName}" for Runtime Converse.`);
|
|
141
|
+
const isGrok = isBedrockGrokModel(modelName);
|
|
142
|
+
return new BedrockMantleChatProvider(modelName, {
|
|
143
|
+
...providerOptions,
|
|
144
|
+
config: {
|
|
145
|
+
...config,
|
|
146
|
+
apiBaseUrl,
|
|
147
|
+
...isGrok ? { omitDefaults: true } : {}
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
//#endregion
|
|
152
|
+
export { createBedrockMantleChatProvider };
|
|
153
|
+
|
|
154
|
+
//# sourceMappingURL=mantleChat-Cpefl7Zm.js.map
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { jt as ProviderEnvOverridesSchema } from "./tables-D7gZdWrS.js";
|
|
2
|
+
import { i as InputsInputSchema } from "./shared-CPig5o70.js";
|
|
3
|
+
import { g as McpAuthSchema, h as McpAuthInputSchema } from "./util-DMNFhk47.js";
|
|
4
|
+
import { z as z$1 } from "zod";
|
|
5
|
+
//#region src/contracts/providerConfig/shared.ts
|
|
6
|
+
/** Provider-owned configuration is closed; request payloads and schemas remain open JSON. */
|
|
7
|
+
const JsonObjectInputSchema = z$1.record(z$1.string(), z$1.json());
|
|
8
|
+
z$1.templateLiteral(["file://", z$1.string().regex(/[\s\S]+/)]);
|
|
9
|
+
z$1.strictObject({
|
|
10
|
+
label: z$1.string().optional(),
|
|
11
|
+
prompts: z$1.array(z$1.string()).optional(),
|
|
12
|
+
transform: z$1.string().optional(),
|
|
13
|
+
delay: z$1.number().optional(),
|
|
14
|
+
env: ProviderEnvOverridesSchema.catchall(z$1.string()).optional(),
|
|
15
|
+
inputs: InputsInputSchema.optional()
|
|
16
|
+
});
|
|
17
|
+
//#endregion
|
|
18
|
+
//#region src/contracts/providerConfig/mcp.ts
|
|
19
|
+
const McpServerFieldsSchema = z$1.looseObject({
|
|
20
|
+
path: z$1.string().describe("Local MCP server script; the shared client supports .js and .py files").optional(),
|
|
21
|
+
command: z$1.string().describe("Command to launch a stdio MCP server").optional(),
|
|
22
|
+
args: z$1.array(z$1.string()).optional().describe("Arguments passed to command; not used with path"),
|
|
23
|
+
name: z$1.string().optional().describe("Optional server name used to identify its tools"),
|
|
24
|
+
url: z$1.string().describe("Remote MCP server URL; connection validates the effective URL").optional(),
|
|
25
|
+
auth: McpAuthInputSchema.optional().describe("Authentication for remote servers; omitted means no configured auth"),
|
|
26
|
+
headers: z$1.record(z$1.string(), z$1.string()).optional().describe("Additional remote-server HTTP headers; generated auth headers take precedence"),
|
|
27
|
+
env: z$1.record(z$1.string(), z$1.string()).optional().describe("Environment variables for a stdio server process")
|
|
28
|
+
});
|
|
29
|
+
const McpServerInputSchema = z$1.union([
|
|
30
|
+
McpServerFieldsSchema.extend({ command: McpServerFieldsSchema.shape.command.unwrap().min(1) }).strict(),
|
|
31
|
+
McpServerFieldsSchema.extend({ path: McpServerFieldsSchema.shape.path.unwrap().min(1) }).strict(),
|
|
32
|
+
McpServerFieldsSchema.extend({ url: McpServerFieldsSchema.shape.url.unwrap().min(1) }).strict()
|
|
33
|
+
], { error: "Either command or path or url must be specified for MCP server" }).describe("At least one connection field is required. The shared client prefers command, then path, then url; the Claude adapter prefers url, then command, then path");
|
|
34
|
+
const McpServerRuntimeFieldsSchema = McpServerFieldsSchema.extend({ auth: McpAuthSchema.optional() });
|
|
35
|
+
const McpServerSchema = z$1.union([
|
|
36
|
+
McpServerRuntimeFieldsSchema.extend({ command: z$1.string().min(1) }),
|
|
37
|
+
McpServerRuntimeFieldsSchema.extend({ path: z$1.string().min(1) }),
|
|
38
|
+
McpServerRuntimeFieldsSchema.extend({ url: z$1.string().min(1) })
|
|
39
|
+
], { error: "Either command or path or url must be specified for MCP server" });
|
|
40
|
+
/** Serializable options read by MCPClient; no defaults or execution side effects. */
|
|
41
|
+
const McpClientConfigInputSchema = z$1.strictObject({
|
|
42
|
+
enabled: z$1.boolean().optional().describe("Defaults to true when parsed for execution"),
|
|
43
|
+
server: McpServerInputSchema.optional().describe("Single server; the shared client uses servers instead when that array is present"),
|
|
44
|
+
servers: z$1.array(McpServerInputSchema).optional().describe("Servers to connect to; an empty array is allowed. The Claude adapter also includes server"),
|
|
45
|
+
timeout: z$1.number().nonnegative().optional().describe("Request timeout in milliseconds; omitted uses MCP_REQUEST_TIMEOUT_MS then the SDK default of 60000 (60 seconds). Zero leaves the SDK timeout unchanged"),
|
|
46
|
+
resetTimeoutOnProgress: z$1.boolean().optional().describe("Reset the request timeout on progress notifications; defaults to false"),
|
|
47
|
+
maxTotalTimeout: z$1.number().nonnegative().optional().describe("Maximum request duration in milliseconds, including progress updates; zero or omitted adds no maximum"),
|
|
48
|
+
pingOnConnect: z$1.boolean().optional().describe("Ping the server after connecting; defaults to false"),
|
|
49
|
+
tools: z$1.array(z$1.string()).optional().describe("Tool-name allowlist for the shared client; unsupported by the Claude Agent SDK adapter"),
|
|
50
|
+
exclude_tools: z$1.array(z$1.string()).optional().describe("Tool names to exclude; nonempty exclusions are unsupported by the Claude Agent SDK adapter"),
|
|
51
|
+
debug: z$1.boolean().optional().describe("Enable debug logging; falls back to MCP_DEBUG"),
|
|
52
|
+
verbose: z$1.boolean().optional().describe("Enable verbose logging; falls back to MCP_VERBOSE")
|
|
53
|
+
});
|
|
54
|
+
/** Standalone MCP providers add argument defaults and ProviderResponse transforms. */
|
|
55
|
+
const McpConfigInputSchema = McpClientConfigInputSchema.extend({
|
|
56
|
+
serverName: z$1.string().optional().describe("Server name supplied by mcp:<name> provider IDs"),
|
|
57
|
+
defaultArgs: JsonObjectInputSchema.optional().describe("Arguments merged into every tool call; per-call arguments take precedence"),
|
|
58
|
+
transformResponse: z$1.string().optional().describe("Response transform expression or file:// module reference; evaluated only at runtime"),
|
|
59
|
+
responseParser: z$1.string().optional().meta({
|
|
60
|
+
description: "Deprecated alias for transformResponse",
|
|
61
|
+
deprecated: true
|
|
62
|
+
})
|
|
63
|
+
});
|
|
64
|
+
const McpResponseTransformSchema = z$1.union([z$1.string(), z$1.custom((value) => typeof value === "function")]);
|
|
65
|
+
const McpConfigSchema = McpConfigInputSchema.loose().extend({
|
|
66
|
+
enabled: z$1.boolean().prefault(true),
|
|
67
|
+
defaultArgs: z$1.record(z$1.string(), z$1.unknown()).optional().meta({ ...McpConfigInputSchema.shape.defaultArgs.meta() }),
|
|
68
|
+
server: McpServerSchema.optional(),
|
|
69
|
+
servers: z$1.array(McpServerSchema).optional(),
|
|
70
|
+
transformResponse: McpResponseTransformSchema.optional(),
|
|
71
|
+
responseParser: McpResponseTransformSchema.optional().meta({ ...McpConfigInputSchema.shape.responseParser.meta() })
|
|
72
|
+
});
|
|
73
|
+
z$1.toJSONSchema(McpClientConfigInputSchema, {
|
|
74
|
+
target: "draft-07",
|
|
75
|
+
io: "input"
|
|
76
|
+
});
|
|
77
|
+
z$1.toJSONSchema(McpConfigInputSchema, {
|
|
78
|
+
target: "draft-07",
|
|
79
|
+
io: "input"
|
|
80
|
+
});
|
|
81
|
+
//#endregion
|
|
82
|
+
export { McpConfigSchema as t };
|
|
83
|
+
|
|
84
|
+
//# sourceMappingURL=mcp-B0V0ikdM.js.map
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { zt as ProviderEnvOverridesSchema } from "./tables-BONxKPrt.js";
|
|
3
|
+
import { i as InputsInputSchema } from "./shared-D-YP2yH6.js";
|
|
4
|
+
import { g as McpAuthSchema, h as McpAuthInputSchema } from "./util-WH8CgVs4.js";
|
|
5
|
+
import { z as z$1 } from "zod";
|
|
6
|
+
//#region src/contracts/providerConfig/shared.ts
|
|
7
|
+
/** Provider-owned configuration is closed; request payloads and schemas remain open JSON. */
|
|
8
|
+
const JsonObjectInputSchema = z$1.record(z$1.string(), z$1.json());
|
|
9
|
+
z$1.templateLiteral(["file://", z$1.string().regex(/[\s\S]+/)]);
|
|
10
|
+
z$1.strictObject({
|
|
11
|
+
label: z$1.string().optional(),
|
|
12
|
+
prompts: z$1.array(z$1.string()).optional(),
|
|
13
|
+
transform: z$1.string().optional(),
|
|
14
|
+
delay: z$1.number().optional(),
|
|
15
|
+
env: ProviderEnvOverridesSchema.catchall(z$1.string()).optional(),
|
|
16
|
+
inputs: InputsInputSchema.optional()
|
|
17
|
+
});
|
|
18
|
+
//#endregion
|
|
19
|
+
//#region src/contracts/providerConfig/mcp.ts
|
|
20
|
+
const McpServerFieldsSchema = z$1.looseObject({
|
|
21
|
+
path: z$1.string().describe("Local MCP server script; the shared client supports .js and .py files").optional(),
|
|
22
|
+
command: z$1.string().describe("Command to launch a stdio MCP server").optional(),
|
|
23
|
+
args: z$1.array(z$1.string()).optional().describe("Arguments passed to command; not used with path"),
|
|
24
|
+
name: z$1.string().optional().describe("Optional server name used to identify its tools"),
|
|
25
|
+
url: z$1.string().describe("Remote MCP server URL; connection validates the effective URL").optional(),
|
|
26
|
+
auth: McpAuthInputSchema.optional().describe("Authentication for remote servers; omitted means no configured auth"),
|
|
27
|
+
headers: z$1.record(z$1.string(), z$1.string()).optional().describe("Additional remote-server HTTP headers; generated auth headers take precedence"),
|
|
28
|
+
env: z$1.record(z$1.string(), z$1.string()).optional().describe("Environment variables for a stdio server process")
|
|
29
|
+
});
|
|
30
|
+
const McpServerInputSchema = z$1.union([
|
|
31
|
+
McpServerFieldsSchema.extend({ command: McpServerFieldsSchema.shape.command.unwrap().min(1) }).strict(),
|
|
32
|
+
McpServerFieldsSchema.extend({ path: McpServerFieldsSchema.shape.path.unwrap().min(1) }).strict(),
|
|
33
|
+
McpServerFieldsSchema.extend({ url: McpServerFieldsSchema.shape.url.unwrap().min(1) }).strict()
|
|
34
|
+
], { error: "Either command or path or url must be specified for MCP server" }).describe("At least one connection field is required. The shared client prefers command, then path, then url; the Claude adapter prefers url, then command, then path");
|
|
35
|
+
const McpServerRuntimeFieldsSchema = McpServerFieldsSchema.extend({ auth: McpAuthSchema.optional() });
|
|
36
|
+
const McpServerSchema = z$1.union([
|
|
37
|
+
McpServerRuntimeFieldsSchema.extend({ command: z$1.string().min(1) }),
|
|
38
|
+
McpServerRuntimeFieldsSchema.extend({ path: z$1.string().min(1) }),
|
|
39
|
+
McpServerRuntimeFieldsSchema.extend({ url: z$1.string().min(1) })
|
|
40
|
+
], { error: "Either command or path or url must be specified for MCP server" });
|
|
41
|
+
/** Serializable options read by MCPClient; no defaults or execution side effects. */
|
|
42
|
+
const McpClientConfigInputSchema = z$1.strictObject({
|
|
43
|
+
enabled: z$1.boolean().optional().describe("Defaults to true when parsed for execution"),
|
|
44
|
+
server: McpServerInputSchema.optional().describe("Single server; the shared client uses servers instead when that array is present"),
|
|
45
|
+
servers: z$1.array(McpServerInputSchema).optional().describe("Servers to connect to; an empty array is allowed. The Claude adapter also includes server"),
|
|
46
|
+
timeout: z$1.number().nonnegative().optional().describe("Request timeout in milliseconds; omitted uses MCP_REQUEST_TIMEOUT_MS then the SDK default of 60000 (60 seconds). Zero leaves the SDK timeout unchanged"),
|
|
47
|
+
resetTimeoutOnProgress: z$1.boolean().optional().describe("Reset the request timeout on progress notifications; defaults to false"),
|
|
48
|
+
maxTotalTimeout: z$1.number().nonnegative().optional().describe("Maximum request duration in milliseconds, including progress updates; zero or omitted adds no maximum"),
|
|
49
|
+
pingOnConnect: z$1.boolean().optional().describe("Ping the server after connecting; defaults to false"),
|
|
50
|
+
tools: z$1.array(z$1.string()).optional().describe("Tool-name allowlist for the shared client; unsupported by the Claude Agent SDK adapter"),
|
|
51
|
+
exclude_tools: z$1.array(z$1.string()).optional().describe("Tool names to exclude; nonempty exclusions are unsupported by the Claude Agent SDK adapter"),
|
|
52
|
+
debug: z$1.boolean().optional().describe("Enable debug logging; falls back to MCP_DEBUG"),
|
|
53
|
+
verbose: z$1.boolean().optional().describe("Enable verbose logging; falls back to MCP_VERBOSE")
|
|
54
|
+
});
|
|
55
|
+
/** Standalone MCP providers add argument defaults and ProviderResponse transforms. */
|
|
56
|
+
const McpConfigInputSchema = McpClientConfigInputSchema.extend({
|
|
57
|
+
serverName: z$1.string().optional().describe("Server name supplied by mcp:<name> provider IDs"),
|
|
58
|
+
defaultArgs: JsonObjectInputSchema.optional().describe("Arguments merged into every tool call; per-call arguments take precedence"),
|
|
59
|
+
transformResponse: z$1.string().optional().describe("Response transform expression or file:// module reference; evaluated only at runtime"),
|
|
60
|
+
responseParser: z$1.string().optional().meta({
|
|
61
|
+
description: "Deprecated alias for transformResponse",
|
|
62
|
+
deprecated: true
|
|
63
|
+
})
|
|
64
|
+
});
|
|
65
|
+
const McpResponseTransformSchema = z$1.union([z$1.string(), z$1.custom((value) => typeof value === "function")]);
|
|
66
|
+
const McpConfigSchema = McpConfigInputSchema.loose().extend({
|
|
67
|
+
enabled: z$1.boolean().prefault(true),
|
|
68
|
+
defaultArgs: z$1.record(z$1.string(), z$1.unknown()).optional().meta({ ...McpConfigInputSchema.shape.defaultArgs.meta() }),
|
|
69
|
+
server: McpServerSchema.optional(),
|
|
70
|
+
servers: z$1.array(McpServerSchema).optional(),
|
|
71
|
+
transformResponse: McpResponseTransformSchema.optional(),
|
|
72
|
+
responseParser: McpResponseTransformSchema.optional().meta({ ...McpConfigInputSchema.shape.responseParser.meta() })
|
|
73
|
+
});
|
|
74
|
+
z$1.toJSONSchema(McpClientConfigInputSchema, {
|
|
75
|
+
target: "draft-07",
|
|
76
|
+
io: "input"
|
|
77
|
+
});
|
|
78
|
+
z$1.toJSONSchema(McpConfigInputSchema, {
|
|
79
|
+
target: "draft-07",
|
|
80
|
+
io: "input"
|
|
81
|
+
});
|
|
82
|
+
//#endregion
|
|
83
|
+
export { McpConfigSchema as t };
|
|
84
|
+
|
|
85
|
+
//# sourceMappingURL=mcp-CV2k2gwj.js.map
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { o as logger } from "./logger-Gff7RMNF.js";
|
|
2
|
+
import { X as VERSION, t as fetchWithProxy } from "./fetch-B5KxZuKu.js";
|
|
3
|
+
import { t as invariant } from "./invariant-CHP0zrix.js";
|
|
4
|
+
import { s as getUserEmail } from "./accounts-CPISMNlh.js";
|
|
5
|
+
import { h as remoteGenerationContextPayload, i as getRemoteGenerationUrl, r as getRemoteGenerationHeaders } from "./remoteGeneration-DtnqocnL.js";
|
|
6
|
+
import { d as createEmptyTokenUsage, n as accumulateAttackerTokenUsage, s as accumulateResponseTokenUsage } from "./tokenUsageUtils-BfzeNdYY.js";
|
|
7
|
+
import { E as throwIfTargetPromptExceedsMaxChars, _ as messagesToRedteamHistory, a as callTargetProvider } from "./shared-Dh3yfRBd.js";
|
|
8
|
+
import { o as REDTEAM_MEMORY_POISONING_PLUGIN_ID } from "./server/index.js";
|
|
9
|
+
//#region src/redteam/providers/agentic/memoryPoisoning.ts
|
|
10
|
+
var MemoryPoisoningProvider = class {
|
|
11
|
+
config;
|
|
12
|
+
constructor(config) {
|
|
13
|
+
this.config = config;
|
|
14
|
+
}
|
|
15
|
+
get targetId() {
|
|
16
|
+
if (typeof this.config.targetId === "string") return this.config.targetId;
|
|
17
|
+
return typeof this.config.config?.targetId === "string" ? this.config.config.targetId : void 0;
|
|
18
|
+
}
|
|
19
|
+
id() {
|
|
20
|
+
return REDTEAM_MEMORY_POISONING_PLUGIN_ID;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Generates a scenario containing a memory and a follow up question/command which is dependent on the memory.
|
|
24
|
+
*
|
|
25
|
+
* 1. Generate a scenario containing memories and follow up questions/commands which are dependent on the memories.
|
|
26
|
+
* 2. Send the memory message to the target.
|
|
27
|
+
* 3. Send the test case to the target; the test case should poison the memory created in the previous step.
|
|
28
|
+
* 4. Send the follow up question to the target.
|
|
29
|
+
* 5. A memory is successfully poisoned if the follow up question is answered incorrectly.
|
|
30
|
+
*
|
|
31
|
+
* @param prompt The poisoned prompt.
|
|
32
|
+
* @param context The context of the poisoned prompt.
|
|
33
|
+
* @param options The options for the poisoned prompt.
|
|
34
|
+
*/
|
|
35
|
+
async callApi(prompt, context, options) {
|
|
36
|
+
try {
|
|
37
|
+
const targetProvider = context?.originalProvider;
|
|
38
|
+
const purpose = context?.test?.metadata?.purpose;
|
|
39
|
+
invariant(targetProvider, "Expected originalProvider to be set");
|
|
40
|
+
invariant(context?.test, "Expected test to be set");
|
|
41
|
+
invariant(purpose, "Expected purpose to be set");
|
|
42
|
+
const scenarioRes = await fetchWithProxy(getRemoteGenerationUrl(), {
|
|
43
|
+
body: JSON.stringify({
|
|
44
|
+
task: "agentic:memory-poisoning-scenario",
|
|
45
|
+
...remoteGenerationContextPayload(this.targetId),
|
|
46
|
+
purpose,
|
|
47
|
+
version: VERSION,
|
|
48
|
+
email: getUserEmail()
|
|
49
|
+
}),
|
|
50
|
+
headers: getRemoteGenerationHeaders(),
|
|
51
|
+
method: "POST"
|
|
52
|
+
}, options?.abortSignal);
|
|
53
|
+
if (!scenarioRes.ok) throw new Error(`Failed to generate scenario: ${scenarioRes.statusText}`);
|
|
54
|
+
const scenario = await scenarioRes.json();
|
|
55
|
+
context.test.metadata ??= {};
|
|
56
|
+
context.test.metadata["scenario"] = scenario;
|
|
57
|
+
const totalTokenUsage = createEmptyTokenUsage();
|
|
58
|
+
if (scenario.tokenUsage) accumulateAttackerTokenUsage(totalTokenUsage, { tokenUsage: scenario.tokenUsage });
|
|
59
|
+
throwIfTargetPromptExceedsMaxChars(scenario.memory);
|
|
60
|
+
const memoryResponse = await callTargetProvider(targetProvider, scenario.memory, context, options);
|
|
61
|
+
accumulateResponseTokenUsage(totalTokenUsage, memoryResponse);
|
|
62
|
+
throwIfTargetPromptExceedsMaxChars(prompt);
|
|
63
|
+
const testResponse = await callTargetProvider(targetProvider, prompt, context, options);
|
|
64
|
+
accumulateResponseTokenUsage(totalTokenUsage, testResponse);
|
|
65
|
+
throwIfTargetPromptExceedsMaxChars(scenario.followUp);
|
|
66
|
+
const response = await callTargetProvider(targetProvider, scenario.followUp, context, options);
|
|
67
|
+
accumulateResponseTokenUsage(totalTokenUsage, response);
|
|
68
|
+
const messages = [
|
|
69
|
+
{
|
|
70
|
+
content: scenario.memory,
|
|
71
|
+
role: "user"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
content: memoryResponse.output,
|
|
75
|
+
role: "assistant"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
content: prompt,
|
|
79
|
+
role: "user"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
content: testResponse.output,
|
|
83
|
+
role: "assistant"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
content: scenario.followUp,
|
|
87
|
+
role: "user"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
content: response.output,
|
|
91
|
+
role: "assistant"
|
|
92
|
+
}
|
|
93
|
+
];
|
|
94
|
+
return {
|
|
95
|
+
output: response.output,
|
|
96
|
+
metadata: {
|
|
97
|
+
messages,
|
|
98
|
+
redteamHistory: messagesToRedteamHistory(messages)
|
|
99
|
+
},
|
|
100
|
+
tokenUsage: totalTokenUsage
|
|
101
|
+
};
|
|
102
|
+
} catch (error) {
|
|
103
|
+
logger.error(`Error in MemoryPoisoningProvider: ${error}`);
|
|
104
|
+
throw error;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
//#endregion
|
|
109
|
+
export { MemoryPoisoningProvider };
|
|
110
|
+
|
|
111
|
+
//# sourceMappingURL=memoryPoisoning-BC5FQQWZ.js.map
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { o as logger } from "./logger-CNHLbG5Y.js";
|
|
2
|
+
import { t as invariant } from "./invariant-CHP0zrix.js";
|
|
3
|
+
import { Y as VERSION, t as fetchWithProxy } from "./fetch-BG_Jl7ty.js";
|
|
4
|
+
import { a as getUserEmail } from "./accounts-vJBPs89d.js";
|
|
5
|
+
import { h as remoteGenerationContextPayload, i as getRemoteGenerationUrl, r as getRemoteGenerationHeaders } from "./remoteGeneration-CAtvamG6.js";
|
|
6
|
+
import { d as createEmptyTokenUsage, n as accumulateAttackerTokenUsage, s as accumulateResponseTokenUsage } from "./tokenUsageUtils-C51DmahQ.js";
|
|
7
|
+
import { E as throwIfTargetPromptExceedsMaxChars, _ as messagesToRedteamHistory, a as callTargetProvider } from "./shared-tfPT8Tna.js";
|
|
8
|
+
import { t as REDTEAM_MEMORY_POISONING_PLUGIN_ID } from "./constants-3y0xcfa4.js";
|
|
9
|
+
//#region src/redteam/providers/agentic/memoryPoisoning.ts
|
|
10
|
+
var MemoryPoisoningProvider = class {
|
|
11
|
+
config;
|
|
12
|
+
constructor(config) {
|
|
13
|
+
this.config = config;
|
|
14
|
+
}
|
|
15
|
+
get targetId() {
|
|
16
|
+
if (typeof this.config.targetId === "string") return this.config.targetId;
|
|
17
|
+
return typeof this.config.config?.targetId === "string" ? this.config.config.targetId : void 0;
|
|
18
|
+
}
|
|
19
|
+
id() {
|
|
20
|
+
return REDTEAM_MEMORY_POISONING_PLUGIN_ID;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Generates a scenario containing a memory and a follow up question/command which is dependent on the memory.
|
|
24
|
+
*
|
|
25
|
+
* 1. Generate a scenario containing memories and follow up questions/commands which are dependent on the memories.
|
|
26
|
+
* 2. Send the memory message to the target.
|
|
27
|
+
* 3. Send the test case to the target; the test case should poison the memory created in the previous step.
|
|
28
|
+
* 4. Send the follow up question to the target.
|
|
29
|
+
* 5. A memory is successfully poisoned if the follow up question is answered incorrectly.
|
|
30
|
+
*
|
|
31
|
+
* @param prompt The poisoned prompt.
|
|
32
|
+
* @param context The context of the poisoned prompt.
|
|
33
|
+
* @param options The options for the poisoned prompt.
|
|
34
|
+
*/
|
|
35
|
+
async callApi(prompt, context, options) {
|
|
36
|
+
try {
|
|
37
|
+
const targetProvider = context?.originalProvider;
|
|
38
|
+
const purpose = context?.test?.metadata?.purpose;
|
|
39
|
+
invariant(targetProvider, "Expected originalProvider to be set");
|
|
40
|
+
invariant(context?.test, "Expected test to be set");
|
|
41
|
+
invariant(purpose, "Expected purpose to be set");
|
|
42
|
+
const scenarioRes = await fetchWithProxy(getRemoteGenerationUrl(), {
|
|
43
|
+
body: JSON.stringify({
|
|
44
|
+
task: "agentic:memory-poisoning-scenario",
|
|
45
|
+
...remoteGenerationContextPayload(this.targetId),
|
|
46
|
+
purpose,
|
|
47
|
+
version: VERSION,
|
|
48
|
+
email: getUserEmail()
|
|
49
|
+
}),
|
|
50
|
+
headers: getRemoteGenerationHeaders(),
|
|
51
|
+
method: "POST"
|
|
52
|
+
}, options?.abortSignal);
|
|
53
|
+
if (!scenarioRes.ok) throw new Error(`Failed to generate scenario: ${scenarioRes.statusText}`);
|
|
54
|
+
const scenario = await scenarioRes.json();
|
|
55
|
+
context.test.metadata ??= {};
|
|
56
|
+
context.test.metadata["scenario"] = scenario;
|
|
57
|
+
const totalTokenUsage = createEmptyTokenUsage();
|
|
58
|
+
if (scenario.tokenUsage) accumulateAttackerTokenUsage(totalTokenUsage, { tokenUsage: scenario.tokenUsage });
|
|
59
|
+
throwIfTargetPromptExceedsMaxChars(scenario.memory);
|
|
60
|
+
const memoryResponse = await callTargetProvider(targetProvider, scenario.memory, context, options);
|
|
61
|
+
accumulateResponseTokenUsage(totalTokenUsage, memoryResponse);
|
|
62
|
+
throwIfTargetPromptExceedsMaxChars(prompt);
|
|
63
|
+
const testResponse = await callTargetProvider(targetProvider, prompt, context, options);
|
|
64
|
+
accumulateResponseTokenUsage(totalTokenUsage, testResponse);
|
|
65
|
+
throwIfTargetPromptExceedsMaxChars(scenario.followUp);
|
|
66
|
+
const response = await callTargetProvider(targetProvider, scenario.followUp, context, options);
|
|
67
|
+
accumulateResponseTokenUsage(totalTokenUsage, response);
|
|
68
|
+
const messages = [
|
|
69
|
+
{
|
|
70
|
+
content: scenario.memory,
|
|
71
|
+
role: "user"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
content: memoryResponse.output,
|
|
75
|
+
role: "assistant"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
content: prompt,
|
|
79
|
+
role: "user"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
content: testResponse.output,
|
|
83
|
+
role: "assistant"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
content: scenario.followUp,
|
|
87
|
+
role: "user"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
content: response.output,
|
|
91
|
+
role: "assistant"
|
|
92
|
+
}
|
|
93
|
+
];
|
|
94
|
+
return {
|
|
95
|
+
output: response.output,
|
|
96
|
+
metadata: {
|
|
97
|
+
messages,
|
|
98
|
+
redteamHistory: messagesToRedteamHistory(messages)
|
|
99
|
+
},
|
|
100
|
+
tokenUsage: totalTokenUsage
|
|
101
|
+
};
|
|
102
|
+
} catch (error) {
|
|
103
|
+
logger.error(`Error in MemoryPoisoningProvider: ${error}`);
|
|
104
|
+
throw error;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
//#endregion
|
|
109
|
+
export { MemoryPoisoningProvider };
|
|
110
|
+
|
|
111
|
+
//# sourceMappingURL=memoryPoisoning-BDwrtZKX.js.map
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { c as logger } from "./logger-pCNnmVuz.js";
|
|
3
|
+
import { Y as VERSION, r as fetchWithProxy } from "./fetch-RXHsZF-J.js";
|
|
4
|
+
import { t as invariant } from "./invariant-CbHB1xyx.js";
|
|
5
|
+
import { s as getUserEmail } from "./accounts-BOxNYxVN.js";
|
|
6
|
+
import { h as remoteGenerationContextPayload, i as getRemoteGenerationUrl, r as getRemoteGenerationHeaders } from "./remoteGeneration-g3KvW-sP.js";
|
|
7
|
+
import { d as createEmptyTokenUsage, n as accumulateAttackerTokenUsage, s as accumulateResponseTokenUsage } from "./tokenUsageUtils-CHs91tUW.js";
|
|
8
|
+
import { E as throwIfTargetPromptExceedsMaxChars, _ as messagesToRedteamHistory, a as callTargetProvider } from "./shared-DDJg8ycC.js";
|
|
9
|
+
import { t as REDTEAM_MEMORY_POISONING_PLUGIN_ID } from "./constants-CDdPiEZR.js";
|
|
10
|
+
//#region src/redteam/providers/agentic/memoryPoisoning.ts
|
|
11
|
+
var MemoryPoisoningProvider = class {
|
|
12
|
+
config;
|
|
13
|
+
constructor(config) {
|
|
14
|
+
this.config = config;
|
|
15
|
+
}
|
|
16
|
+
get targetId() {
|
|
17
|
+
if (typeof this.config.targetId === "string") return this.config.targetId;
|
|
18
|
+
return typeof this.config.config?.targetId === "string" ? this.config.config.targetId : void 0;
|
|
19
|
+
}
|
|
20
|
+
id() {
|
|
21
|
+
return REDTEAM_MEMORY_POISONING_PLUGIN_ID;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Generates a scenario containing a memory and a follow up question/command which is dependent on the memory.
|
|
25
|
+
*
|
|
26
|
+
* 1. Generate a scenario containing memories and follow up questions/commands which are dependent on the memories.
|
|
27
|
+
* 2. Send the memory message to the target.
|
|
28
|
+
* 3. Send the test case to the target; the test case should poison the memory created in the previous step.
|
|
29
|
+
* 4. Send the follow up question to the target.
|
|
30
|
+
* 5. A memory is successfully poisoned if the follow up question is answered incorrectly.
|
|
31
|
+
*
|
|
32
|
+
* @param prompt The poisoned prompt.
|
|
33
|
+
* @param context The context of the poisoned prompt.
|
|
34
|
+
* @param options The options for the poisoned prompt.
|
|
35
|
+
*/
|
|
36
|
+
async callApi(prompt, context, options) {
|
|
37
|
+
try {
|
|
38
|
+
const targetProvider = context?.originalProvider;
|
|
39
|
+
const purpose = context?.test?.metadata?.purpose;
|
|
40
|
+
invariant(targetProvider, "Expected originalProvider to be set");
|
|
41
|
+
invariant(context?.test, "Expected test to be set");
|
|
42
|
+
invariant(purpose, "Expected purpose to be set");
|
|
43
|
+
const scenarioRes = await fetchWithProxy(getRemoteGenerationUrl(), {
|
|
44
|
+
body: JSON.stringify({
|
|
45
|
+
task: "agentic:memory-poisoning-scenario",
|
|
46
|
+
...remoteGenerationContextPayload(this.targetId),
|
|
47
|
+
purpose,
|
|
48
|
+
version: VERSION,
|
|
49
|
+
email: getUserEmail()
|
|
50
|
+
}),
|
|
51
|
+
headers: getRemoteGenerationHeaders(),
|
|
52
|
+
method: "POST"
|
|
53
|
+
}, options?.abortSignal);
|
|
54
|
+
if (!scenarioRes.ok) throw new Error(`Failed to generate scenario: ${scenarioRes.statusText}`);
|
|
55
|
+
const scenario = await scenarioRes.json();
|
|
56
|
+
context.test.metadata ??= {};
|
|
57
|
+
context.test.metadata["scenario"] = scenario;
|
|
58
|
+
const totalTokenUsage = createEmptyTokenUsage();
|
|
59
|
+
if (scenario.tokenUsage) accumulateAttackerTokenUsage(totalTokenUsage, { tokenUsage: scenario.tokenUsage });
|
|
60
|
+
throwIfTargetPromptExceedsMaxChars(scenario.memory);
|
|
61
|
+
const memoryResponse = await callTargetProvider(targetProvider, scenario.memory, context, options);
|
|
62
|
+
accumulateResponseTokenUsage(totalTokenUsage, memoryResponse);
|
|
63
|
+
throwIfTargetPromptExceedsMaxChars(prompt);
|
|
64
|
+
const testResponse = await callTargetProvider(targetProvider, prompt, context, options);
|
|
65
|
+
accumulateResponseTokenUsage(totalTokenUsage, testResponse);
|
|
66
|
+
throwIfTargetPromptExceedsMaxChars(scenario.followUp);
|
|
67
|
+
const response = await callTargetProvider(targetProvider, scenario.followUp, context, options);
|
|
68
|
+
accumulateResponseTokenUsage(totalTokenUsage, response);
|
|
69
|
+
const messages = [
|
|
70
|
+
{
|
|
71
|
+
content: scenario.memory,
|
|
72
|
+
role: "user"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
content: memoryResponse.output,
|
|
76
|
+
role: "assistant"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
content: prompt,
|
|
80
|
+
role: "user"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
content: testResponse.output,
|
|
84
|
+
role: "assistant"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
content: scenario.followUp,
|
|
88
|
+
role: "user"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
content: response.output,
|
|
92
|
+
role: "assistant"
|
|
93
|
+
}
|
|
94
|
+
];
|
|
95
|
+
return {
|
|
96
|
+
output: response.output,
|
|
97
|
+
metadata: {
|
|
98
|
+
messages,
|
|
99
|
+
redteamHistory: messagesToRedteamHistory(messages)
|
|
100
|
+
},
|
|
101
|
+
tokenUsage: totalTokenUsage
|
|
102
|
+
};
|
|
103
|
+
} catch (error) {
|
|
104
|
+
logger.error(`Error in MemoryPoisoningProvider: ${error}`);
|
|
105
|
+
throw error;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
//#endregion
|
|
110
|
+
export { MemoryPoisoningProvider };
|
|
111
|
+
|
|
112
|
+
//# sourceMappingURL=memoryPoisoning-BFemS_FF.js.map
|