nolo-cli 0.149.0-alpha.1 → 0.151.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (258) hide show
  1. package/{_executeModel-OW3H7ICR.js → _executeModel-XHAFJ2MM.js} +134 -91
  2. package/accountResolver-7RYB4D2P.js +300 -0
  3. package/action-SXJD5N5R.js +23 -0
  4. package/{addContentAction-B2DRF7P6.js → addContentAction-ZV774PHH.js} +20 -14
  5. package/{addDialogAgentAction-2P2FLTLD.js → addDialogAgentAction-A6SMKAGH.js} +26 -22
  6. package/{agentDeleteCommand-7IDWF6E3.js → agentDeleteCommand-DPUUS56Z.js} +181 -93
  7. package/{agentEmailCommands-A6XBQZBN.js → agentEmailCommands-V4P5EFLP.js} +132 -112
  8. package/{agentGrantCommands-M3XFO6EN.js → agentGrantCommands-HOJ3JBBQ.js} +3 -3
  9. package/agentListCommands-TWFLUYIZ.js +802 -0
  10. package/{agentMachineCommands-DQPUIMAC.js → agentMachineCommands-MELPAZZI.js} +58 -62
  11. package/{agentProviderCommands-YK2BIIXZ.js → agentProviderCommands-HL6MBLCL.js} +149 -2
  12. package/{agentPullCommand-HF4A42D4.js → agentPullCommand-FA43RBRU.js} +7 -7
  13. package/agentRecordCommands-FSWSSQIO.js +154 -0
  14. package/agentRunCommand-GDBJVOAT.js +183 -0
  15. package/{agentRunControl-2SKCR4SB.js → agentRunControl-IFM7IGMG.js} +10 -2
  16. package/{agentRuntimeLocal-AK2QVJHY.js → agentRuntimeLocal-KKSQJMTE.js} +47 -50
  17. package/{agentSlice-O4RUQUMT.js → agentSlice-YO2ZLJMD.js} +23 -16
  18. package/{appDeleteCommands-N3XEVVYC.js → appDeleteCommands-4PL4KYRN.js} +58 -59
  19. package/{appDeployCommands-AWFIXYVW.js → appDeployCommands-EEEXCEB6.js} +67 -63
  20. package/{appDeployStatusCommands-CZRON2FO.js → appDeployStatusCommands-35ZX7T66.js} +56 -56
  21. package/{appGetCommands-XQIUY4TD.js → appGetCommands-WFCHXJWF.js} +56 -56
  22. package/{appListCommands-NNG4H36Y.js → appListCommands-XY2U6DPF.js} +57 -59
  23. package/{authCommand-UBJ4EWYZ.js → authCommand-QYN47CQD.js} +371 -68
  24. package/{authCommands-H6WKKCRW.js → authCommands-77CHYBGF.js} +12 -9
  25. package/{builtinSkillRegistry-ZMF6YGNO.js → builtinSkillRegistry-TDQ6JB2E.js} +13 -11
  26. package/{chromeCommands-2N6MEWRU.js → chromeCommands-OBBNJCLS.js} +314 -13
  27. package/chromeOpsCommands-3Z34RKSE.js +472 -0
  28. package/{chunk-ALXHV7NK.js → chunk-2GGXHQIW.js} +43 -4
  29. package/{localRuntimeAuthority-5W6IJRAD.js → chunk-2IXDJNZI.js} +154 -75
  30. package/{chunk-IVZJWTDI.js → chunk-36OMEXXR.js} +89 -21
  31. package/{chunk-H6A6X4EK.js → chunk-3MZAGMYY.js} +16 -0
  32. package/chunk-3PVYUPXK.js +40 -0
  33. package/chunk-3SZA4U64.js +1192 -0
  34. package/{chunk-GNMAFAIS.js → chunk-44WXLHFI.js} +1 -1
  35. package/{chunk-AGGIDPCZ.js → chunk-4JH2UMJR.js} +6 -0
  36. package/chunk-4LCOCOR5.js +50 -0
  37. package/chunk-4YRTZIVN.js +871 -0
  38. package/chunk-556RW72X.js +14110 -0
  39. package/{chunk-N7J63Q6C.js → chunk-56GBUMO5.js} +10 -1
  40. package/{chunk-W7XHHYWM.js → chunk-5BHQICF2.js} +5 -1
  41. package/{chunk-XUWRURDF.js → chunk-5EBLANFT.js} +1 -1
  42. package/{chunk-3AH7LNUB.js → chunk-5EMSBTQ6.js} +33 -14
  43. package/{chunk-YRRASA5Q.js → chunk-5MM7NNO6.js} +113 -52
  44. package/chunk-5MMAK75Q.js +15 -0
  45. package/{chunk-M5PVFLD4.js → chunk-64K7WX26.js} +90 -21
  46. package/{chunk-AKG5W4LG.js → chunk-6CCFTVBP.js} +76 -221
  47. package/chunk-6MJNEXUU.js +614 -0
  48. package/{chunk-62IL3KQV.js → chunk-6MXDOUMH.js} +15 -3
  49. package/{chunk-QOKAKDPE.js → chunk-6Q7UTJKR.js} +6 -94
  50. package/chunk-6QDYSCPW.js +223 -0
  51. package/{chunk-HYZIYH2H.js → chunk-74RAWNQN.js} +56 -63
  52. package/chunk-7DPNBQSV.js +9 -0
  53. package/chunk-7MOXKPHC.js +119 -0
  54. package/{chunk-ZUEK6A6C.js → chunk-7XKL25PW.js} +1973 -754
  55. package/{chunk-IAESIMK7.js → chunk-A4MW3YZL.js} +10 -14
  56. package/chunk-AGIM7IMJ.js +147 -0
  57. package/{chunk-7CHC4W22.js → chunk-AIZE5TDM.js} +3 -3
  58. package/{chunk-YAQJJDC2.js → chunk-AOCM7HPT.js} +214 -51
  59. package/{chunk-5GVBDNTO.js → chunk-AU7AXHUL.js} +1 -1
  60. package/{chunk-4H22P2JV.js → chunk-AUIJZACN.js} +2073 -1275
  61. package/{chunk-CIF4X6ZM.js → chunk-AWVFQMOV.js} +25 -3
  62. package/{chunk-RYZINGPM.js → chunk-BPMPOFWP.js} +347 -235
  63. package/{chunk-YUNJN43V.js → chunk-BU2YQBV4.js} +215 -28
  64. package/{chunk-XPRWFQQK.js → chunk-CBHGZRCE.js} +38 -12
  65. package/{chunk-Y3PMXGLH.js → chunk-CHCS6XPJ.js} +365 -144
  66. package/chunk-CHOZJMJS.js +78 -0
  67. package/{chunk-GBRG75BQ.js → chunk-D2MDMY2M.js} +1 -0
  68. package/{chunk-3SV7RM24.js → chunk-D2QN6CTI.js} +117 -72
  69. package/{chunk-5TEEECZM.js → chunk-E2AKSW7L.js} +10 -7
  70. package/{chunk-RSEEDUMS.js → chunk-EDX5XSJM.js} +2 -2
  71. package/{chunk-ATLTFRYJ.js → chunk-ES633ZS5.js} +280 -98
  72. package/{chunk-QDSINZM3.js → chunk-EUGTFFO6.js} +2 -23
  73. package/{chunk-UNYJU5L6.js → chunk-EYLGAEB4.js} +5 -1
  74. package/{chunk-CU3QB4HW.js → chunk-EYWJT7A2.js} +12 -12
  75. package/{chunk-BNGW5ASC.js → chunk-EZVK3N5L.js} +66 -18
  76. package/{chunk-6FGTMQCL.js → chunk-F32Z66T4.js} +6 -10
  77. package/chunk-FJMRBOPO.js +11507 -0
  78. package/{chunk-ZOVKKMF6.js → chunk-FY4SDK2E.js} +1 -1
  79. package/chunk-G6OOUQWJ.js +417 -0
  80. package/{chunk-PQWU42UQ.js → chunk-GCKHQECX.js} +6 -6
  81. package/chunk-GKXCHNTE.js +15 -0
  82. package/{chunk-TXH4IWJL.js → chunk-GQN2WLAI.js} +20 -11
  83. package/{chunk-P6GMCCAT.js → chunk-GQV5KHJU.js} +78 -12
  84. package/{chunk-B2XUQXQX.js → chunk-HIQ4GF53.js} +191 -68
  85. package/{chunk-MST6R3E4.js → chunk-HKX3ULQB.js} +34 -22
  86. package/{chunk-GMZLP5DV.js → chunk-HNUWUO75.js} +30 -19
  87. package/{chunk-5UTFL4QJ.js → chunk-I2ZMGXXF.js} +10 -5
  88. package/chunk-I42VC5KR.js +15 -0
  89. package/{chunk-3BXNTXYI.js → chunk-I4SN4NUQ.js} +1199 -56
  90. package/chunk-IA7TRNNR.js +11 -0
  91. package/{chunk-WIWM4FE3.js → chunk-IJERIUXS.js} +55 -748
  92. package/{chunk-CPUFH46E.js → chunk-ILU2NPWY.js} +10 -10
  93. package/{chunk-SLLGJZDT.js → chunk-ISQL4V7C.js} +4 -4
  94. package/chunk-IT3ZZRJE.js +12 -0
  95. package/{chunk-TZZ2WRBL.js → chunk-IZ7OJB6K.js} +20 -16
  96. package/{chunk-DY7ANLKG.js → chunk-JKMLSTZK.js} +43 -12
  97. package/{chunk-6TPOEJMQ.js → chunk-JZX2XLKC.js} +64 -23
  98. package/{chunk-27ONFIEY.js → chunk-K2AER7RX.js} +19 -12
  99. package/{chunk-O2OWEFII.js → chunk-KFHQQ3NO.js} +1 -1
  100. package/{chunk-QXGPFY6J.js → chunk-LGN377P3.js} +27 -17
  101. package/{chunk-L36OWPP3.js → chunk-LIQJTQRN.js} +118 -139
  102. package/{chunk-UASIEDKM.js → chunk-LTRUTOHX.js} +36 -31
  103. package/{chunk-BFU6C242.js → chunk-NMFV26UG.js} +1 -1
  104. package/{chunk-5J3PYNUP.js → chunk-NYYFIKHI.js} +17 -3
  105. package/{chunk-6O4IK4V2.js → chunk-OFFL4DCR.js} +1 -1
  106. package/{chunk-B6SAMB33.js → chunk-OWYYDMGJ.js} +209 -9
  107. package/{chunk-KQHGZWSV.js → chunk-OXME3PEE.js} +1 -1
  108. package/{chunk-CTUQJVQM.js → chunk-P5QACQDK.js} +1 -1
  109. package/{chunk-DXHL7G2L.js → chunk-PCKVQXYV.js} +274 -93
  110. package/{chunk-4JMDLJAD.js → chunk-PJNFNEJE.js} +114 -37
  111. package/{chunk-Z4CSIXYP.js → chunk-PLSVXHSA.js} +3 -3
  112. package/{chunk-BIDGLJQ3.js → chunk-PLXDDGBK.js} +45 -8
  113. package/chunk-PWTNI4N7.js +47 -0
  114. package/chunk-QFEW2ULV.js +42 -0
  115. package/{chunk-RGNEEJ3Y.js → chunk-QLQ573SU.js} +35 -9
  116. package/chunk-QQ56R7KS.js +88 -0
  117. package/chunk-QYPE3TS3.js +43 -0
  118. package/{chunk-4DPP773Q.js → chunk-RSHPU4PD.js} +59 -11
  119. package/chunk-RVWMAFIT.js +134 -0
  120. package/{chunk-ESHYE7WU.js → chunk-S73EPYNC.js} +10 -7
  121. package/{chunk-UQNS32WZ.js → chunk-SCMHQUMK.js} +1 -1
  122. package/{chunk-HTVYCXBP.js → chunk-SMENBO3M.js} +354 -120
  123. package/{chunk-OMRJYNCI.js → chunk-SSFDFOVT.js} +26 -31
  124. package/chunk-SW4S4XYB.js +1794 -0
  125. package/{chunk-TB3MIBRC.js → chunk-T6X3D7NB.js} +572 -430
  126. package/chunk-TY3TIUJK.js +89 -0
  127. package/{chunk-X2QRZXZH.js → chunk-TYJ5XFEA.js} +4 -4
  128. package/{chunk-ALFH24P3.js → chunk-TYYRSFBG.js} +197 -155
  129. package/{chunk-7KVZ5LDQ.js → chunk-UBUH2TCC.js} +18 -4
  130. package/chunk-UEILX4EV.js +15 -0
  131. package/chunk-UHTDNB5Y.js +140 -0
  132. package/{chunk-YYLHWIW6.js → chunk-UKZX3NHN.js} +1 -1
  133. package/{chunk-OHOVNO7I.js → chunk-UOKFKFPO.js} +6 -3
  134. package/{chunk-XISEYOGH.js → chunk-USHQX6VT.js} +5 -5
  135. package/chunk-UUPR3TD7.js +53 -0
  136. package/{chunk-HDLLCBRF.js → chunk-VEA7H5FG.js} +2 -2
  137. package/chunk-VHGD6FHV.js +116 -0
  138. package/chunk-VIWDGTDA.js +8 -0
  139. package/{chunk-GOH6RW6F.js → chunk-VJXHL6MH.js} +34 -11
  140. package/{chunk-4XEYAFLY.js → chunk-VL5KOY2C.js} +623 -94
  141. package/{chunk-EADNWBAZ.js → chunk-VP3BINY7.js} +13 -0
  142. package/{chunk-EOARMOVD.js → chunk-W4S6OTSC.js} +6 -3
  143. package/chunk-WD4XYDYC.js +567 -0
  144. package/chunk-WJZOQR2J.js +151 -0
  145. package/{chunk-AUDNYVRC.js → chunk-XETG4RIX.js} +5 -5
  146. package/{chunk-MX574M24.js → chunk-XI7DGLUK.js} +4 -4
  147. package/{chunk-3L2WKC3W.js → chunk-XPWGOTBQ.js} +8 -1
  148. package/chunk-XRUSXPCQ.js +514 -0
  149. package/{chunk-I4OPU5TK.js → chunk-XS47QOFV.js} +273 -11
  150. package/{chunk-S5XGT6GB.js → chunk-XZNCX52W.js} +30 -9
  151. package/{chunk-ID7LNBWR.js → chunk-Y2DXOPSO.js} +1920 -644
  152. package/{chunk-5OA5HMTL.js → chunk-YLMMECCH.js} +1 -1
  153. package/{chunk-CFT5HBGW.js → chunk-YVLQXTUB.js} +448 -12
  154. package/chunk-YVPQATSC.js +709 -0
  155. package/{chunk-3DAVPNFT.js → chunk-Z7OJUX6S.js} +122 -107
  156. package/chunk-ZEZC7IIM.js +126 -0
  157. package/{chunk-ALGORS6Y.js → chunk-ZF6526IQ.js} +43 -8
  158. package/chunk-ZIWPQEFU.js +165 -0
  159. package/chunk-ZKZ5X2HS.js +7012 -0
  160. package/chunk-ZRAU6T47.js +56 -0
  161. package/{cliExecutor-AWYR3T33.js → cliExecutor-BWBF2MTI.js} +4 -3
  162. package/{clipboardy-BX4NMYHE.js → clipboardy-GCO3GT3I.js} +3 -8
  163. package/{commandRegistry-2KBOXZQC.js → commandRegistry-XN7C5GHO.js} +183 -107
  164. package/contentThunks-5L7YQI3S.js +84 -0
  165. package/{cooldownCommands-ZLEPIB4A.js → cooldownCommands-JFKTYS2D.js} +2 -2
  166. package/{createAgentAutomationAction-5UGTB26P.js → createAgentAutomationAction-QOPOLCRK.js} +53 -44
  167. package/createDialogAction-MZ66VY5Q.js +76 -0
  168. package/{createPageAction-CDLDKPRM.js → createPageAction-VQDJIXMY.js} +65 -54
  169. package/cursorProvider-YGGNMVWX.js +6123 -0
  170. package/{db-VQSAOWAO.js → db-2QOTXYGH.js} +11 -5
  171. package/{dbSlice-DQ32LYTJ.js → dbSlice-J37OGIXH.js} +19 -13
  172. package/{deleteFile-NX6QHCWZ.js → deleteFile-6JWDDRVP.js} +10 -6
  173. package/dialogCommands-YZLSJB6X.js +113 -0
  174. package/{dialogSlice-N3YB65G5.js → dialogSlice-6RODVYCK.js} +53 -39
  175. package/{docCreateCommands-ZSLGVBZT.js → docCreateCommands-JB2RRMRJ.js} +54 -57
  176. package/{docDeleteCommands-5N4GVZBG.js → docDeleteCommands-AQENULNM.js} +56 -58
  177. package/{docReadCommands-YJSAA7AV.js → docReadCommands-DYD25YLQ.js} +53 -56
  178. package/{docStore-E3CEOV5Q.js → docStore-ZZA3OPM5.js} +25 -16
  179. package/{docUpdateCommands-WEMLSW6W.js → docUpdateCommands-3GVS23QL.js} +54 -57
  180. package/{fetchMessages-67MEFPZR.js → fetchMessages-IIJWQ3HR.js} +5 -4
  181. package/{getPricing-NMMFT3YI.js → getPricing-FKK3F5EJ.js} +11 -9
  182. package/{handleSendMessageAction-DQAD5ERJ.js → handleSendMessageAction-DVG5U26T.js} +422 -118
  183. package/index.js +11 -7
  184. package/{lib-FRRS27KN.js → lib-4YTWAGY7.js} +581 -248
  185. package/{localDialogRead-EBRS242U.js → localDialogRead-FSOMOPDZ.js} +2 -2
  186. package/localRuntimeAdapter-HXRHFKRC.js +244 -0
  187. package/localRuntimeAuthority-JDAD7CB6.js +16 -0
  188. package/{localRuntimeDb-3LRMNLCM.js → localRuntimeDb-CVC62PM5.js} +1 -1
  189. package/{machineCommands-HAP75VSG.js → machineCommands-5KBF4RCC.js} +503 -161
  190. package/{machineInfo-66ZFUMLE.js → machineInfo-UKPTZO5Y.js} +2 -2
  191. package/machineWsRunDispatch-4OQDEDOR.js +169 -0
  192. package/{memberThunks-5ZXPR63F.js → memberThunks-66DH6ABQ.js} +25 -18
  193. package/{models-ZPU5EDF4.js → models-LAS4B2B5.js} +2 -2
  194. package/package.json +1 -1
  195. package/{providerPresetApply-DD6NGWW6.js → providerPresetApply-MY66I6NT.js} +10 -10
  196. package/{providerRegistry-XDRLMYGJ.js → providerRegistry-QOE2FT57.js} +13 -9
  197. package/{read-EPTJRAEF.js → read-DC4NUGN6.js} +12 -8
  198. package/{readDocTool-W4NDXNEX.js → readDocTool-NCJ5NT25.js} +1 -1
  199. package/{readlineWorkspace-7BC66QSX.js → readlineWorkspace-RIE62QVZ.js} +5022 -921
  200. package/{removeDialogAgentAction-OSYNZRX7.js → removeDialogAgentAction-E2H3OZU6.js} +29 -28
  201. package/{runAgentClientLoop-6E6UC3CE.js → runAgentClientLoop-KLUUXBZS.js} +154 -97
  202. package/{runtimeDoctorCommands-ID23PNNZ.js → runtimeDoctorCommands-GIOGC5SC.js} +17 -17
  203. package/secretCommands-ZXZRLR3R.js +700 -0
  204. package/setDialogExtraReferencesAction-SITRPMYU.js +37 -0
  205. package/{setPrimaryDialogAgentAction-WZ7KI3YA.js → setPrimaryDialogAgentAction-U7N45TGC.js} +30 -29
  206. package/{chunk-SONWNI3L.js → settingThunks-Y7SVJOMZ.js} +223 -928
  207. package/{skillDiscovery-ZBU76COE.js → skillDiscovery-QC35EQY4.js} +2 -2
  208. package/{slateUtils-RIZES3PV.js → slateUtils-NGV2NMKM.js} +1 -1
  209. package/{spaceCommands-UJOVU4XI.js → spaceCommands-ZR5BR3GX.js} +59 -59
  210. package/{streamAgentChatTurn-3UXPYFNX.js → streamAgentChatTurn-MN2SSPGA.js} +309 -165
  211. package/{switchDialogAgentAction-GMR7WN3P.js → switchDialogAgentAction-OMGBD3N2.js} +26 -22
  212. package/{tableCommands-G7RV3RU3.js → tableCommands-U3QDY4L6.js} +19 -17
  213. package/{toolApiClient-CVGWM4PN.js → toolApiClient-7WSJJJBV.js} +6 -5
  214. package/tools-W2MOLERY.js +124 -0
  215. package/tuiSummaryLlmCaller-BM3VSTBU.js +130 -0
  216. package/{updateCommands-4EHDLF5J.js → updateCommands-NQXAGFM7.js} +3 -3
  217. package/{updateDialogTitleAction-UPFV7TDT.js → updateDialogTitleAction-Z4JX6REN.js} +102 -57
  218. package/workloadLifecycle-36DXRZKU.js +320 -0
  219. package/action-GI44T4DR.js +0 -31
  220. package/agentListCommands-IW3GQVUP.js +0 -427
  221. package/agentRecordCommands-VCA76W6B.js +0 -134
  222. package/agentRunCommand-YNLDKVR7.js +0 -161
  223. package/browser-image-compression-MFDTD7K6.js +0 -1763
  224. package/chatQueueReduxAdapter-TJRMXMYA.js +0 -186
  225. package/chromeOpsCommands-IXRLN57H.js +0 -289
  226. package/chunk-36KZDDO5.js +0 -2415
  227. package/chunk-ACQD6YI2.js +0 -25363
  228. package/chunk-CQ3WA2NE.js +0 -299
  229. package/chunk-CYSYR67N.js +0 -93
  230. package/chunk-JBTJAPUF.js +0 -35
  231. package/chunk-K2CSUCHJ.js +0 -620
  232. package/chunk-LTRXGFMS.js +0 -83
  233. package/chunk-M76ECQRD.js +0 -13658
  234. package/chunk-MEYIRKDN.js +0 -8967
  235. package/chunk-OCZKATRC.js +0 -129
  236. package/chunk-OTGFTBLI.js +0 -13
  237. package/chunk-PUOC4YRO.js +0 -394
  238. package/chunk-PZZTFEKK.js +0 -34
  239. package/chunk-URMS4XY2.js +0 -10
  240. package/chunk-UV6VISQJ.js +0 -20
  241. package/chunk-VJVNU77E.js +0 -83
  242. package/chunk-XYJSY4KG.js +0 -13807
  243. package/chunk-Y5GCAMGP.js +0 -9
  244. package/chunk-YPREESF4.js +0 -225
  245. package/contentThunks-BDIQRZR6.js +0 -73
  246. package/createDialogAction-B7VGVEVU.js +0 -66
  247. package/dialogCommands-G7YBVAMC.js +0 -102
  248. package/levelLazyShim-GZBKODGI.js +0 -7
  249. package/machineWsRunDispatch-L32G7C4P.js +0 -149
  250. package/serverStoreFactory-YMXDF4NI.js +0 -20
  251. package/setDialogExtraReferencesAction-M32UYNCG.js +0 -30
  252. package/settingSlice-Q6EKL7EQ.js +0 -204
  253. package/syncMapping-N6RGXGBW.js +0 -437
  254. package/tools-MKYDMWA4.js +0 -111
  255. package/tuiSummaryLlmCaller-3YFNHCTW.js +0 -128
  256. package/{chunk-SV5IJK6K.js → chunk-NBTY7YJF.js} +3 -3
  257. package/{chunk-2SYTUTLI.js → chunk-YBNHPX4S.js} +3 -3
  258. package/{offlineMarxistsAgentCommand-HGXZV4XJ.js → offlineMarxistsAgentCommand-2QTHJCHV.js} +4 -4
@@ -46,14 +46,26 @@ var PLATFORM_HOSTED_CLAUDE_SONNET_5_MODEL = "anthropic/claude-sonnet-5";
46
46
  var PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL = "anthropic/claude-opus-5";
47
47
  var PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL = "anthropic/claude-fable-5";
48
48
  var PLATFORM_HOSTED_CLAUDE_HAIKU_45_MODEL = "anthropic/claude-haiku-4-5";
49
+ var PLATFORM_HOSTED_CLAUDE_HAIKU_55_MODEL = "anthropic/claude-haiku-5-5";
49
50
  var PLATFORM_HOSTED_CLAUDE_OPUS_5_5_MODEL = "anthropic/claude-opus-5-5";
50
51
  var PLATFORM_HOSTED_CLAUDE_FABLE_5_1_MODEL = "anthropic/claude-fable-5-1";
52
+ var PLATFORM_HOSTED_CLAUDE_SONNET_5_5_MODEL = "anthropic/claude-sonnet-5-5";
53
+ var CLOUDFLARE_CLAUDE_SONNET_5_UPSTREAM_MODEL_ID = "anthropic/claude-sonnet-5";
54
+ var CLOUDFLARE_CLAUDE_OPUS_5_UPSTREAM_MODEL_ID = "anthropic/claude-opus-5";
55
+ var CLOUDFLARE_CLAUDE_FABLE_5_UPSTREAM_MODEL_ID = "anthropic/claude-fable-5";
56
+ var CLOUDFLARE_CLAUDE_HAIKU_45_UPSTREAM_MODEL_ID = "anthropic/claude-haiku-4.5";
57
+ var CLOUDFLARE_CLAUDE_HAIKU_55_UPSTREAM_MODEL_ID = "anthropic/claude-haiku-5.5";
58
+ var CLOUDFLARE_CLAUDE_OPUS_5_5_UPSTREAM_MODEL_ID = "anthropic/claude-opus-5.5";
59
+ var CLOUDFLARE_CLAUDE_FABLE_5_1_UPSTREAM_MODEL_ID = "anthropic/claude-fable-5.1";
60
+ var CLOUDFLARE_CLAUDE_SONNET_5_5_UPSTREAM_MODEL_ID = "anthropic/claude-sonnet-5.5";
61
+ var CLOUDFLARE_AI_MESSAGES_ENDPOINT_TEMPLATE = "https://api.cloudflare.com/client/v4/accounts/{account}/ai/v1/messages";
51
62
  var PLATFORM_HOSTED_GROK_4_6_MODEL = "grok-4.6";
52
63
  var PLATFORM_HOSTED_GPT_6_ASTRA_MODEL = "gpt-6-astra";
53
64
  var PLATFORM_HOSTED_GPT_6_LUNA_MODEL = "gpt-6-luna";
54
65
  var PLATFORM_HOSTED_GPT_56_SOL_MODEL = "gpt-5.6-sol";
55
66
  var PLATFORM_HOSTED_GPT_56_TERRA_MODEL = "gpt-5.6-terra";
56
67
  var PLATFORM_HOSTED_GPT_56_LUNA_MODEL = "gpt-5.6-luna";
68
+ var PLATFORM_HOSTED_GPT_6_1_SOL_MODEL = "gpt-6.1-sol";
57
69
  var PLATFORM_HOSTED_KIMI_K26_OPENROUTER_MODEL_ID = "qwen/qwen3.8-27b";
58
70
  var PLATFORM_HOSTED_GLM_53_MODEL = "glm-5.3";
59
71
  var PLATFORM_HOSTED_GLM_52_MODEL = "glm-5.2";
@@ -61,9 +73,10 @@ var PLATFORM_HOSTED_GLM_53_FLASH_MODEL = "glm-5-3-flash";
61
73
  var PLATFORM_HOSTED_GEMINI_38_FLASH_MODEL = "gemini-3.8-flash";
62
74
  var PLATFORM_HOSTED_GEMINI_37_FLASH_MODEL = "gemini-3.7-flash";
63
75
  var PLATFORM_HOSTED_GEMINI_25_PRO_MODEL = "gemini-2.5-pro";
64
- var PLATFORM_HOSTED_GEMINI_31_PRO_MODEL = "gemini-3.1-pro";
65
- var PLATFORM_HOSTED_GEMINI_FLASH_IMAGE_MODEL = "gemini-3.1-flash-image-preview";
66
- var PLATFORM_HOSTED_GEMINI_PRO_IMAGE_MODEL = "gemini-3-pro-image-preview";
76
+ var PLATFORM_HOSTED_GEMINI_4_ARGON_MODEL = "gemini-4-argon";
77
+ var PLATFORM_HOSTED_GEMINI_FLASH_IMAGE_MODEL = "gemini-3.1-flash-image";
78
+ var PLATFORM_HOSTED_GEMINI_NANO_BANANA_21_MODEL = "gemini-nano-banana-2.1";
79
+ var PLATFORM_HOSTED_GEMINI_PRO_IMAGE_MODEL = "gemini-3-pro-image";
67
80
  var PLATFORM_HOSTED_GEMINI_FLASH_LITE_IMAGE_MODEL = "gemini-3.1-flash-lite-image";
68
81
  var PLATFORM_HOSTED_OPENAI_IMAGE_MODEL = "gpt-image-2";
69
82
  var PLATFORM_HOSTED_MIMO_FLASH_MODEL = "mimo-v2.6-flash";
@@ -73,6 +86,12 @@ var PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL = "deepseek-flash";
73
86
  var PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL = "deepseek-v4-flash-vision-exp";
74
87
  var PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL = "deepseek-v4-pro";
75
88
  var PLATFORM_HOSTED_LEGACY_DEEPSEEK_V4_FLASH_MODEL = "deepseek-v4-flash";
89
+ var CLOUDFLARE_GPT_6_ASTRA_UPSTREAM_MODEL_ID = "openai/gpt-6-astra";
90
+ var CLOUDFLARE_GPT_6_LUNA_UPSTREAM_MODEL_ID = "openai/gpt-6-luna";
91
+ var CLOUDFLARE_GPT_56_TERRA_UPSTREAM_MODEL_ID = "openai/gpt-5.6-terra";
92
+ var CLOUDFLARE_GPT_56_LUNA_UPSTREAM_MODEL_ID = "openai/gpt-5.6-luna";
93
+ var CLOUDFLARE_GPT_6_1_SOL_UPSTREAM_MODEL_ID = "openai/gpt-6.1-sol";
94
+ var CLOUDFLARE_AI_RESPONSES_ENDPOINT_TEMPLATE = "https://api.cloudflare.com/client/v4/accounts/{account}/ai/v1/responses";
76
95
  var PLATFORM_HOSTED_KIMI_K3_MIN_CLIENT_VERSION = "0.38.0-alpha.4";
77
96
  var PLATFORM_HOSTED_GLM_53_FLASH_MIN_CLIENT_VERSION = "0.33.0-alpha.1";
78
97
  var PLATFORM_HOSTED_ROUTING_TABLE = {
@@ -112,10 +131,14 @@ var PLATFORM_HOSTED_ROUTING_TABLE = {
112
131
  agentRunHosted: true,
113
132
  minClientVersion: PLATFORM_HOSTED_GLM_53_FLASH_MIN_CLIENT_VERSION
114
133
  },
134
+ // 同一模型的旧公开 id(点号):RunInfra 只认连字符 id,必须显式 remap,
135
+ // 否则会把 "glm-5.3-flash" 直传给上游并拿到
136
+ // `Model 'glm-5.3-flash' is not available as a verified deployment`(404)。
115
137
  "glm-5.3-flash": {
116
138
  endpoint: "https://api.runinfra.ai/v1/chat/completions",
117
139
  usageProvider: "runinfra",
118
140
  keyName: "runinfra",
141
+ upstreamModelId: PLATFORM_HOSTED_GLM_53_FLASH_MODEL,
119
142
  wire: "chat.completions",
120
143
  agentRunHosted: true,
121
144
  minClientVersion: PLATFORM_HOSTED_GLM_53_FLASH_MIN_CLIENT_VERSION
@@ -155,8 +178,16 @@ var PLATFORM_HOSTED_ROUTING_TABLE = {
155
178
  wire: "chat.completions",
156
179
  agentRunHosted: true
157
180
  },
158
- // Gemini 3.1 Pro -> Google official OpenAI-compatible endpoint
159
- [PLATFORM_HOSTED_GEMINI_31_PRO_MODEL]: {
181
+ // Gemini 4 Argon -> Google official OpenAI-compatible endpoint
182
+ [PLATFORM_HOSTED_GEMINI_4_ARGON_MODEL]: {
183
+ endpoint: "https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",
184
+ usageProvider: "google",
185
+ keyName: "google",
186
+ wire: "chat.completions",
187
+ agentRunHosted: true
188
+ },
189
+ // Gemini Nano Banana 2.1(图片线唯一在售档)-> Google official OpenAI-compatible endpoint
190
+ [PLATFORM_HOSTED_GEMINI_NANO_BANANA_21_MODEL]: {
160
191
  endpoint: "https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",
161
192
  usageProvider: "google",
162
193
  keyName: "google",
@@ -185,99 +216,132 @@ var PLATFORM_HOSTED_ROUTING_TABLE = {
185
216
  wire: "chat.completions",
186
217
  agentRunHosted: true
187
218
  },
188
- // Claude 系(真实模型):DeepInfra 官方 id 与平台 id 同名,无需重映射。
189
- // 旧批模型无缓存价(rate_per_input_token_cached=null),计费侧对无
190
- // inputCacheHit 的模型按 input 全价计(见 calculatePrice);Fable 5.1 起
191
- // 官方给出缓存读价(输入 1/4),在 platformHosted.ts 的 price 里带
192
- // inputCacheHit。
219
+ // Claude 系(Cloudflare Workers AI 上游,遵循 Anthropic Messages 协议):
220
+ // 端点使用统一 accounts/{account}/ai/v1/messages 占位模板,上游使用官方 Catalog ID;
221
+ // 专用分支按 agentRunHosted 开关放行,缺 CF 凭据/账号在任何 fetch 前显式失败。
193
222
  [PLATFORM_HOSTED_CLAUDE_SONNET_5_MODEL]: {
194
- endpoint: "https://api.deepinfra.com/v1/openai/chat/completions",
195
- usageProvider: "deepinfra",
196
- keyName: "deepinfra",
197
- upstreamModelId: PLATFORM_HOSTED_CLAUDE_SONNET_5_MODEL,
198
- wire: "chat.completions",
223
+ endpoint: CLOUDFLARE_AI_MESSAGES_ENDPOINT_TEMPLATE,
224
+ usageProvider: "cloudflare",
225
+ keyName: "cloudflare",
226
+ upstreamModelId: CLOUDFLARE_CLAUDE_SONNET_5_UPSTREAM_MODEL_ID,
227
+ wire: "anthropic.messages",
199
228
  agentRunHosted: true
200
229
  },
201
230
  [PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL]: {
202
- endpoint: "https://api.deepinfra.com/v1/openai/chat/completions",
203
- usageProvider: "deepinfra",
204
- keyName: "deepinfra",
205
- upstreamModelId: PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL,
206
- wire: "chat.completions",
231
+ endpoint: CLOUDFLARE_AI_MESSAGES_ENDPOINT_TEMPLATE,
232
+ usageProvider: "cloudflare",
233
+ keyName: "cloudflare",
234
+ upstreamModelId: CLOUDFLARE_CLAUDE_OPUS_5_UPSTREAM_MODEL_ID,
235
+ wire: "anthropic.messages",
207
236
  agentRunHosted: true
208
237
  },
209
238
  [PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL]: {
210
- endpoint: "https://api.deepinfra.com/v1/openai/chat/completions",
211
- usageProvider: "deepinfra",
212
- keyName: "deepinfra",
213
- upstreamModelId: PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL,
214
- wire: "chat.completions",
239
+ endpoint: CLOUDFLARE_AI_MESSAGES_ENDPOINT_TEMPLATE,
240
+ usageProvider: "cloudflare",
241
+ keyName: "cloudflare",
242
+ upstreamModelId: CLOUDFLARE_CLAUDE_FABLE_5_UPSTREAM_MODEL_ID,
243
+ wire: "anthropic.messages",
215
244
  agentRunHosted: true
216
245
  },
217
246
  [PLATFORM_HOSTED_CLAUDE_HAIKU_45_MODEL]: {
218
- endpoint: "https://api.deepinfra.com/v1/openai/chat/completions",
219
- usageProvider: "deepinfra",
220
- keyName: "deepinfra",
221
- upstreamModelId: PLATFORM_HOSTED_CLAUDE_HAIKU_45_MODEL,
222
- wire: "chat.completions",
247
+ endpoint: CLOUDFLARE_AI_MESSAGES_ENDPOINT_TEMPLATE,
248
+ usageProvider: "cloudflare",
249
+ keyName: "cloudflare",
250
+ upstreamModelId: CLOUDFLARE_CLAUDE_HAIKU_45_UPSTREAM_MODEL_ID,
251
+ wire: "anthropic.messages",
223
252
  agentRunHosted: true
224
253
  },
225
- // 新一代 Claude(2026-09-24 收进广场):同 DeepInfra 通道、官方 id 直传。
254
+ [PLATFORM_HOSTED_CLAUDE_HAIKU_55_MODEL]: {
255
+ endpoint: CLOUDFLARE_AI_MESSAGES_ENDPOINT_TEMPLATE,
256
+ usageProvider: "cloudflare",
257
+ keyName: "cloudflare",
258
+ upstreamModelId: CLOUDFLARE_CLAUDE_HAIKU_55_UPSTREAM_MODEL_ID,
259
+ wire: "anthropic.messages",
260
+ agentRunHosted: true
261
+ },
262
+ // 新一代 Claude(2026-09-24 收进广场):同 Cloudflare 通道、官方 Catalog ID。
226
263
  [PLATFORM_HOSTED_CLAUDE_OPUS_5_5_MODEL]: {
227
- endpoint: "https://api.deepinfra.com/v1/openai/chat/completions",
228
- usageProvider: "deepinfra",
229
- keyName: "deepinfra",
230
- upstreamModelId: PLATFORM_HOSTED_CLAUDE_OPUS_5_5_MODEL,
231
- wire: "chat.completions",
264
+ endpoint: CLOUDFLARE_AI_MESSAGES_ENDPOINT_TEMPLATE,
265
+ usageProvider: "cloudflare",
266
+ keyName: "cloudflare",
267
+ upstreamModelId: CLOUDFLARE_CLAUDE_OPUS_5_5_UPSTREAM_MODEL_ID,
268
+ wire: "anthropic.messages",
232
269
  agentRunHosted: true
233
270
  },
234
271
  [PLATFORM_HOSTED_CLAUDE_FABLE_5_1_MODEL]: {
235
- endpoint: "https://api.deepinfra.com/v1/openai/chat/completions",
236
- usageProvider: "deepinfra",
237
- keyName: "deepinfra",
238
- upstreamModelId: PLATFORM_HOSTED_CLAUDE_FABLE_5_1_MODEL,
239
- wire: "chat.completions",
272
+ endpoint: CLOUDFLARE_AI_MESSAGES_ENDPOINT_TEMPLATE,
273
+ usageProvider: "cloudflare",
274
+ keyName: "cloudflare",
275
+ upstreamModelId: CLOUDFLARE_CLAUDE_FABLE_5_1_UPSTREAM_MODEL_ID,
276
+ wire: "anthropic.messages",
240
277
  agentRunHosted: true
241
278
  },
242
- // GPT-6 / GPT-5.6 系(OpenAI 官方 chat.completions):
243
- // 平台价按短上下文价目定(长上下文档差价由平台吸收),见 platformHosted.ts。
244
- [PLATFORM_HOSTED_GPT_6_ASTRA_MODEL]: {
245
- endpoint: "https://api.openai.com/v1/chat/completions",
246
- usageProvider: "openai",
247
- keyName: "openai",
248
- wire: "chat.completions",
279
+ // Claude Sonnet 5.5(2026-09-28 发布,与 opus-5-5 同通道同协议):
280
+ // 目录侧它以新 id 上架,补齐这条路由;上一代 sonnet-5 的路由条目**保留**,
281
+ // 供存量记录继续解析上游(下架 ≠ 删除)。
282
+ [PLATFORM_HOSTED_CLAUDE_SONNET_5_5_MODEL]: {
283
+ endpoint: CLOUDFLARE_AI_MESSAGES_ENDPOINT_TEMPLATE,
284
+ usageProvider: "cloudflare",
285
+ keyName: "cloudflare",
286
+ upstreamModelId: CLOUDFLARE_CLAUDE_SONNET_5_5_UPSTREAM_MODEL_ID,
287
+ wire: "anthropic.messages",
249
288
  agentRunHosted: true
250
289
  },
251
- // GPT-6 Luna(2026-09-22 随 GPT-6 Sol/Luna 上线;官方模型页
252
- // developers.openai.com/api/docs/models/gpt-6-luna,2026-09-23 核对):
253
- // 官方 id 即 `gpt-6-luna`,Chat Completions 与 Responses 端点均可用;
254
- // 平台托管沿用 GPT-6 系既有 chat.completions 分流(与 astra 同线同源)。
255
- [PLATFORM_HOSTED_GPT_6_LUNA_MODEL]: {
256
- endpoint: "https://api.openai.com/v1/chat/completions",
257
- usageProvider: "openai",
258
- keyName: "openai",
259
- wire: "chat.completions",
290
+ // GPT-6 / GPT-6.1 / GPT-5.6 文本系(Cloudflare AI 上游,Responses 协议):
291
+ // 平台价仍按短上下文价目定(长上下文档差价由平台吸收),见 platformHosted.ts;
292
+ // 计价口径不随上游迁移变化,对客价目不动。
293
+ //
294
+ // ⚠️ 隔离改动(2026-10-13):catalog-only 路由切换,**未启用生产**。
295
+ // endpoint 是账号作用域占位模板(含字面量 `{account}`),必须由运行时 resolver 用
296
+ // CLOUDFLARE_ACCOUNT_ID 替换、并按 Responses wire 组装请求体;而旧消费者
297
+ // (server agentRun / chatProxy / agent-runtime platformProviderEndpoints)尚未具备该能力
298
+ // —— 它们会把 OpenAI chat.completions 形状的 body POST 到这个模板 URL,或用字面量
299
+ // `{account}` 直接发请求。因此在 wire adapter + account 替换 + 专用 wire 门控合入前,
300
+ // 集成块(2026-10-13)已为 server agentRun 加专用 wire 分支:这 6 条(含兼容别名 id)
301
+ // 的 agentRunHosted 翻为 true,专用分支按该开关放行、token/账号缺一在任何 fetch 前显式失败;
302
+ [PLATFORM_HOSTED_GPT_6_ASTRA_MODEL]: {
303
+ endpoint: CLOUDFLARE_AI_RESPONSES_ENDPOINT_TEMPLATE,
304
+ usageProvider: "cloudflare",
305
+ keyName: "cloudflare",
306
+ upstreamModelId: CLOUDFLARE_GPT_6_ASTRA_UPSTREAM_MODEL_ID,
307
+ wire: "responses",
260
308
  agentRunHosted: true
261
309
  },
262
- [PLATFORM_HOSTED_GPT_56_SOL_MODEL]: {
263
- endpoint: "https://api.openai.com/v1/chat/completions",
264
- usageProvider: "openai",
265
- keyName: "openai",
266
- wire: "chat.completions",
310
+ // GPT-6 Luna(2026-09-22 随 GPT-6 Sol/Luna 上线):CF catalog id `openai/gpt-6-luna`。
311
+ [PLATFORM_HOSTED_GPT_6_LUNA_MODEL]: {
312
+ endpoint: CLOUDFLARE_AI_RESPONSES_ENDPOINT_TEMPLATE,
313
+ usageProvider: "cloudflare",
314
+ keyName: "cloudflare",
315
+ upstreamModelId: CLOUDFLARE_GPT_6_LUNA_UPSTREAM_MODEL_ID,
316
+ wire: "responses",
267
317
  agentRunHosted: true
268
318
  },
319
+ // gpt-5.6-sol 不再单独建条目:它是 gpt-6.1-sol 的兼容别名
320
+ // (PLATFORM_MODEL_ALIASES),resolvePlatformHostedRouting 解析到 6.1 的条目。
269
321
  [PLATFORM_HOSTED_GPT_56_TERRA_MODEL]: {
270
- endpoint: "https://api.openai.com/v1/chat/completions",
271
- usageProvider: "openai",
272
- keyName: "openai",
273
- wire: "chat.completions",
322
+ endpoint: CLOUDFLARE_AI_RESPONSES_ENDPOINT_TEMPLATE,
323
+ usageProvider: "cloudflare",
324
+ keyName: "cloudflare",
325
+ upstreamModelId: CLOUDFLARE_GPT_56_TERRA_UPSTREAM_MODEL_ID,
326
+ wire: "responses",
274
327
  agentRunHosted: true
275
328
  },
276
329
  [PLATFORM_HOSTED_GPT_56_LUNA_MODEL]: {
277
- endpoint: "https://api.openai.com/v1/chat/completions",
278
- usageProvider: "openai",
279
- keyName: "openai",
280
- wire: "chat.completions",
330
+ endpoint: CLOUDFLARE_AI_RESPONSES_ENDPOINT_TEMPLATE,
331
+ usageProvider: "cloudflare",
332
+ keyName: "cloudflare",
333
+ upstreamModelId: CLOUDFLARE_GPT_56_LUNA_UPSTREAM_MODEL_ID,
334
+ wire: "responses",
335
+ agentRunHosted: true
336
+ },
337
+ // GPT-6.1 Sol(2026-10-13 新增):CF 官方页只声明「Responses, Chat Completions」
338
+ // 两种请求格式与 reasoning_effort;本表按 Responses 统一线走。
339
+ [PLATFORM_HOSTED_GPT_6_1_SOL_MODEL]: {
340
+ endpoint: CLOUDFLARE_AI_RESPONSES_ENDPOINT_TEMPLATE,
341
+ usageProvider: "cloudflare",
342
+ keyName: "cloudflare",
343
+ upstreamModelId: CLOUDFLARE_GPT_6_1_SOL_UPSTREAM_MODEL_ID,
344
+ wire: "responses",
281
345
  agentRunHosted: true
282
346
  },
283
347
  // Grok -> xAI(server agentRun 侧未分流,保持 no upstream route 报错)
@@ -321,7 +385,9 @@ var PLATFORM_HOSTED_ROUTING_TABLE = {
321
385
  wire: "chat.completions",
322
386
  agentRunHosted: true
323
387
  },
324
- // OpenAI Image -> OpenAI Responses API
388
+ // OpenAI Image(legacy 入口):gpt-image-2 已弃用,真实出图只走 images API 或
389
+ // Responses 的 image_generation 工具(工具内注入 model)。这条保留只为存量
390
+ // agent 记录仍能解析上游/凭据,不再作为新预设的主模型。
325
391
  [PLATFORM_HOSTED_OPENAI_IMAGE_MODEL]: {
326
392
  endpoint: "https://api.openai.com/v1/responses",
327
393
  usageProvider: "openai",
@@ -364,10 +430,22 @@ var PLATFORM_HOSTED_ROUTING_TABLE = {
364
430
  agentRunHosted: false
365
431
  }
366
432
  };
367
- function resolvePlatformHostedRouting(model) {
433
+ var PLATFORM_MODEL_ALIASES = {
434
+ [PLATFORM_HOSTED_GPT_56_SOL_MODEL]: {
435
+ aliasOf: PLATFORM_HOSTED_GPT_6_1_SOL_MODEL,
436
+ since: "2026-10-13",
437
+ reason: "CF \u5B98\u65B9\u76EE\u5F55\u6362\u4EE3\uFF1Agpt-5.6-sol \u7531 gpt-6.1-sol \u627F\u63A5\uFF08owner \u6388\u6743\u900F\u660E\u6620\u5C04\uFF0C\u6309 6.1 \u8BA1\u8D39\uFF09\u3002"
438
+ }
439
+ };
440
+ function resolvePlatformEffectiveModel(model) {
368
441
  const normalized = asTrimmedLowercaseString(model);
369
442
  if (!normalized) return void 0;
370
- return PLATFORM_HOSTED_ROUTING_TABLE[normalized];
443
+ return PLATFORM_MODEL_ALIASES[normalized]?.aliasOf ?? normalized;
444
+ }
445
+ function resolvePlatformHostedRouting(model) {
446
+ const effective = resolvePlatformEffectiveModel(model);
447
+ if (!effective) return void 0;
448
+ return PLATFORM_HOSTED_ROUTING_TABLE[effective];
371
449
  }
372
450
  function resolvePlatformHostedMinClientVersion(model) {
373
451
  return resolvePlatformHostedRouting(model)?.minClientVersion;
@@ -535,62 +613,116 @@ var PLATFORM_HOSTED_GLM_PRICE = {
535
613
  var PLATFORM_HOSTED_CLAUDE_FABLE_5_PRICE = {
536
614
  input: toPlatformCredits(10),
537
615
  // 80 credits
538
- output: toPlatformCredits(50)
616
+ output: toPlatformCredits(50),
539
617
  // 400 credits
618
+ cachingWrite: toPlatformCredits(12.5),
619
+ // 100 credits
620
+ cachingRead: toPlatformCredits(1)
621
+ // 8 credits
540
622
  };
541
623
  var PLATFORM_HOSTED_CLAUDE_OPUS_5_PRICE = {
542
624
  input: toPlatformCredits(5),
543
625
  // 40 credits
544
- output: toPlatformCredits(25)
626
+ output: toPlatformCredits(25),
545
627
  // 200 credits
628
+ cachingWrite: toPlatformCredits(6.25),
629
+ // 50 credits
630
+ cachingRead: toPlatformCredits(0.5)
631
+ // 4 credits
546
632
  };
547
633
  var PLATFORM_HOSTED_CLAUDE_SONNET_5_PRICE = {
548
- input: toPlatformCredits(3),
549
- // 24 credits
550
- output: toPlatformCredits(15)
551
- // 120 credits
634
+ input: toPlatformCredits(2),
635
+ // 16 credits
636
+ output: toPlatformCredits(10),
637
+ // 80 credits
638
+ cachingWrite: toPlatformCredits(2.5),
639
+ // 20 credits
640
+ cachingRead: toPlatformCredits(0.2)
641
+ // 1.6 credits
552
642
  };
553
643
  var PLATFORM_HOSTED_CLAUDE_HAIKU_45_PRICE = {
554
644
  input: toPlatformCredits(1),
555
645
  // 8 credits
556
- output: toPlatformCredits(5)
646
+ output: toPlatformCredits(5),
557
647
  // 40 credits
648
+ cachingWrite: toPlatformCredits(1.25),
649
+ // 10 credits
650
+ cachingRead: toPlatformCredits(0.1)
651
+ // 0.8 credits
652
+ };
653
+ var PLATFORM_HOSTED_CLAUDE_HAIKU_55_PRICE = {
654
+ input: toPlatformCredits(0.5),
655
+ // 4 credits
656
+ output: toPlatformCredits(2.5),
657
+ // 20 credits
658
+ cachingWrite: toPlatformCredits(0.625),
659
+ // 5 credits
660
+ cachingRead: toPlatformCredits(0.05)
661
+ // 0.4 credits
558
662
  };
559
663
  var PLATFORM_HOSTED_CLAUDE_OPUS_5_5_PRICE = {
560
664
  input: toPlatformCredits(4),
561
665
  // 32 credits
562
- output: toPlatformCredits(20)
666
+ output: toPlatformCredits(20),
563
667
  // 160 credits
668
+ cachingWrite: toPlatformCredits(5),
669
+ // 40 credits
670
+ cachingRead: toPlatformCredits(0.2)
671
+ // 1.6 credits
564
672
  };
565
673
  var PLATFORM_HOSTED_CLAUDE_FABLE_5_1_PRICE = {
566
674
  input: toPlatformCredits(10),
567
675
  // 80 credits
568
- inputCacheHit: toPlatformCredits(2.5),
569
- // 20 credits(官方缓存读 = 输入 1/4)
570
- output: toPlatformCredits(50)
676
+ output: toPlatformCredits(50),
571
677
  // 400 credits
678
+ cachingWrite: toPlatformCredits(12.5),
679
+ // 100 credits
680
+ cachingRead: toPlatformCredits(0.25)
681
+ // 2 credits
682
+ };
683
+ var PLATFORM_HOSTED_CLAUDE_SONNET_5_5_PRICE = {
684
+ input: toPlatformCredits(2),
685
+ // 16 credits
686
+ output: toPlatformCredits(10),
687
+ // 80 credits
688
+ cachingWrite: toPlatformCredits(2.5),
689
+ // 20 credits
690
+ cachingRead: toPlatformCredits(0.2)
691
+ // 1.6 credits
572
692
  };
573
693
  var PLATFORM_HOSTED_GPT_6_ASTRA_PRICE = {
574
694
  input: toPlatformCredits(10),
575
695
  // 80 credits
576
696
  inputCacheHit: toPlatformCredits(1),
577
697
  // 8 credits
698
+ cachingRead: toPlatformCredits(1),
699
+ // 8 credits(CF 官方短档 cached in)
700
+ cachingWrite: toPlatformCredits(12),
701
+ // 96 credits(CF 官方短档 cache write)
578
702
  output: toPlatformCredits(50)
579
703
  // 400 credits
580
704
  };
581
705
  var PLATFORM_HOSTED_GPT_56_SOL_PRICE = {
582
- input: toPlatformCredits(4),
583
- // 32 credits
584
- inputCacheHit: toPlatformCredits(0.4),
585
- // 3.2 credits
586
- output: toPlatformCredits(20)
587
- // 160 credits
706
+ input: toPlatformCredits(2),
707
+ // 16 credits
708
+ inputCacheHit: toPlatformCredits(0.25),
709
+ // 2 credits
710
+ cachingRead: toPlatformCredits(0.25),
711
+ // 2 credits(CF 官方短档 cached in)
712
+ cachingWrite: toPlatformCredits(3.125),
713
+ // 25 credits(CF 官方短档 cache write)
714
+ output: toPlatformCredits(10)
715
+ // 80 credits
588
716
  };
589
717
  var PLATFORM_HOSTED_GPT_56_TERRA_PRICE = {
590
718
  input: toPlatformCredits(2),
591
719
  // 16 credits
592
720
  inputCacheHit: toPlatformCredits(0.2),
593
721
  // 1.6 credits
722
+ cachingRead: toPlatformCredits(0.2),
723
+ // 1.6 credits(CF 官方短档 cached in)
724
+ cachingWrite: toPlatformCredits(2.5),
725
+ // 20 credits(CF 官方短档 cache write)
594
726
  output: toPlatformCredits(12)
595
727
  // 96 credits
596
728
  };
@@ -599,6 +731,10 @@ var PLATFORM_HOSTED_GPT_56_LUNA_PRICE = {
599
731
  // 1.6 credits
600
732
  inputCacheHit: toPlatformCredits(0.02),
601
733
  // 0.16 credits
734
+ cachingRead: toPlatformCredits(0.02),
735
+ // 0.16 credits(CF 官方短档 cached in)
736
+ cachingWrite: toPlatformCredits(0.25),
737
+ // 2.0 credits(CF 官方短档 cache write)
602
738
  output: toPlatformCredits(1.2)
603
739
  // 9.6 credits
604
740
  };
@@ -607,9 +743,25 @@ var PLATFORM_HOSTED_GPT_6_LUNA_PRICE = {
607
743
  // 0.8 credits
608
744
  inputCacheHit: toPlatformCredits(0.01),
609
745
  // 0.08 credits
746
+ cachingRead: toPlatformCredits(0.01),
747
+ // 0.08 credits(CF 官方短档 cached in)
748
+ cachingWrite: toPlatformCredits(0.125),
749
+ // 1.0 credits(CF 官方短档 cache write)
610
750
  output: toPlatformCredits(0.5)
611
751
  // 4.0 credits
612
752
  };
753
+ var PLATFORM_HOSTED_GPT_6_1_SOL_PRICE = {
754
+ input: toPlatformCredits(2),
755
+ // 16 credits
756
+ inputCacheHit: toPlatformCredits(0.1),
757
+ // 0.8 credits
758
+ cachingRead: toPlatformCredits(0.1),
759
+ // 0.8 credits(CF 官方短档 cached in)
760
+ cachingWrite: toPlatformCredits(2.5),
761
+ // 20 credits(CF 官方短档 cache write)
762
+ output: toPlatformCredits(10)
763
+ // 80 credits
764
+ };
613
765
  var PLATFORM_HOSTED_GLM_53_FLASH_PRICE = {
614
766
  input: toPlatformCredits(0.1),
615
767
  // 0.8 credits
@@ -643,18 +795,19 @@ var PLATFORM_HOSTED_GEMINI_25_PRO_PRICE = {
643
795
  cachingRead: toPlatformCredits(0.3125)
644
796
  // 2.5 credits
645
797
  };
646
- var PLATFORM_HOSTED_GEMINI_31_PRO_PRICE = {
798
+ var PLATFORM_HOSTED_GEMINI_4_ARGON_PRICE = {
647
799
  input: toPlatformCredits(2),
648
800
  // 16.0 credits
649
- output: toPlatformCredits(12),
650
- // 96.0 credits
651
- cachingWrite: toPlatformCredits(0.5),
652
- // 4.0 credits
653
- cachingRead: toPlatformCredits(0.5)
654
- // 4.0 credits
801
+ output: toPlatformCredits(10),
802
+ // 80.0 credits
803
+ cachingWrite: toPlatformCredits(0.1),
804
+ // 0.8 credits
805
+ cachingRead: toPlatformCredits(0.1)
806
+ // 0.8 credits
655
807
  };
656
808
  var isPlatformHostedOpenAIImageModel = (model) => asTrimmedLowercaseString(model) === PLATFORM_HOSTED_OPENAI_IMAGE_MODEL;
657
809
  var PLATFORM_HOSTED_GEMINI_IMAGE_MODELS = [
810
+ PLATFORM_HOSTED_GEMINI_NANO_BANANA_21_MODEL,
658
811
  PLATFORM_HOSTED_GEMINI_FLASH_LITE_IMAGE_MODEL,
659
812
  PLATFORM_HOSTED_GEMINI_FLASH_IMAGE_MODEL,
660
813
  PLATFORM_HOSTED_GEMINI_PRO_IMAGE_MODEL
@@ -792,6 +945,9 @@ var isPlatformHostedDeepSeekModel = (model) => {
792
945
  };
793
946
  var isPlatformHostedDeepseekModel = isPlatformHostedDeepSeekModel;
794
947
  var isPlatformHostedDeepSeekV4Model = isPlatformHostedDeepSeekModel;
948
+ var LITHOS_DEEPSEEK_FLASH_BASE_URL = "https://api.lithosai.cloud/v1";
949
+ var LITHOS_DEEPSEEK_FLASH_CHAT_COMPLETIONS_URL = `${LITHOS_DEEPSEEK_FLASH_BASE_URL}/chat/completions`;
950
+ var catalogReleasedAt = (year, month, day) => Date.UTC(year, month - 1, day);
795
951
  var platformHostedModels = [
796
952
  {
797
953
  name: PLATFORM_HOSTED_KIMI_K3_MODEL,
@@ -847,10 +1003,10 @@ var platformHostedModels = [
847
1003
  supportsReasoningEffort: true
848
1004
  },
849
1005
  {
850
- name: PLATFORM_HOSTED_GEMINI_31_PRO_MODEL,
851
- displayName: "Gemini 3.1 Pro",
1006
+ name: PLATFORM_HOSTED_GEMINI_4_ARGON_MODEL,
1007
+ displayName: "Gemini 4 Argon",
852
1008
  hasVision: true,
853
- price: { ...PLATFORM_HOSTED_GEMINI_31_PRO_PRICE },
1009
+ price: { ...PLATFORM_HOSTED_GEMINI_4_ARGON_PRICE },
854
1010
  maxOutputTokens: 65536,
855
1011
  contextWindow: 1048576,
856
1012
  supportsTool: true,
@@ -926,50 +1082,40 @@ var platformHostedModels = [
926
1082
  supportsTool: true,
927
1083
  supportsReasoningEffort: true
928
1084
  },
929
- // Claude 系(真实 DeepInfra 模型,官方 id 与平台 id 同名):旧批无缓存价,
930
- // 计费按 input 全价(见 calculatePrice);Fable 5.1 带官方缓存读价。
931
- {
932
- name: PLATFORM_HOSTED_CLAUDE_SONNET_5_MODEL,
933
- displayName: "Claude Sonnet 5",
934
- hasVision: true,
935
- price: { ...PLATFORM_HOSTED_CLAUDE_SONNET_5_PRICE },
936
- maxOutputTokens: 4092,
937
- contextWindow: 1e6,
938
- supportsTool: false
939
- },
1085
+ // Claude 系(Cloudflare Workers AI 上游):全面支持 5m TTL 缓存写入与命中读取
1086
+ // (cachingWrite / cachingRead);官方 API 统一按 Anthropic Messages 协议暴露。
1087
+ //
1088
+ // ⚠️ 2026-10-18:上一代 Sonnet 5 / Opus 5 / Fable 5 已从**上架目录**撤下(新装
1089
+ // 客户端不再看到)。下架 ≠ 删除:对应的 PLATFORM_HOSTED_CLAUDE_SONNET_5_PRICE /
1090
+ // OPUS_5 / FABLE_5 价格常量与 routing 条目一律保留,供存量 agent/消息记录继续
1091
+ // 解析上游并计价,绝不因目录下架而让历史记录解析失败。
940
1092
  {
941
- name: PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL,
942
- displayName: "Claude Opus 5",
1093
+ name: PLATFORM_HOSTED_CLAUDE_HAIKU_45_MODEL,
1094
+ displayName: "Claude Haiku 4.5",
943
1095
  hasVision: true,
944
- price: { ...PLATFORM_HOSTED_CLAUDE_OPUS_5_PRICE },
1096
+ price: { ...PLATFORM_HOSTED_CLAUDE_HAIKU_45_PRICE },
945
1097
  maxOutputTokens: 4092,
946
- contextWindow: 1e6,
1098
+ contextWindow: 2e5,
947
1099
  supportsTool: false
948
1100
  },
949
1101
  {
950
- name: PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL,
951
- displayName: "Claude Fable 5",
1102
+ // Claude Haiku 5.5(2026-10-18):接替 4.5,官方 1M 上下文。
1103
+ name: PLATFORM_HOSTED_CLAUDE_HAIKU_55_MODEL,
1104
+ displayName: "Claude Haiku 5.5",
952
1105
  hasVision: true,
953
- price: { ...PLATFORM_HOSTED_CLAUDE_FABLE_5_PRICE },
954
- maxOutputTokens: 4092,
1106
+ price: { ...PLATFORM_HOSTED_CLAUDE_HAIKU_55_PRICE },
1107
+ maxOutputTokens: 8192,
955
1108
  contextWindow: 1e6,
956
1109
  supportsTool: false
957
1110
  },
958
- {
959
- name: PLATFORM_HOSTED_CLAUDE_HAIKU_45_MODEL,
960
- displayName: "Claude Haiku 4.5",
961
- hasVision: true,
962
- price: { ...PLATFORM_HOSTED_CLAUDE_HAIKU_45_PRICE },
963
- maxOutputTokens: 4092,
964
- contextWindow: 2e5,
965
- supportsTool: false
966
- },
967
1111
  {
968
1112
  // Claude Opus 5.5(2026-09-22 发布):官方 1M 上下文 / 128K 输出。
969
1113
  name: PLATFORM_HOSTED_CLAUDE_OPUS_5_5_MODEL,
970
1114
  displayName: "Claude Opus 5.5",
971
1115
  hasVision: true,
972
1116
  price: { ...PLATFORM_HOSTED_CLAUDE_OPUS_5_5_PRICE },
1117
+ // 2026-09-22 发布(出处:本条目注释与上方 PLATFORM_HOSTED_CLAUDE_OPUS_5_5_PRICE 注释)。
1118
+ releasedAtMs: catalogReleasedAt(2026, 9, 22),
973
1119
  maxOutputTokens: 128e3,
974
1120
  contextWindow: 1e6,
975
1121
  supportsTool: false
@@ -980,10 +1126,25 @@ var platformHostedModels = [
980
1126
  displayName: "Claude Fable 5.1",
981
1127
  hasVision: true,
982
1128
  price: { ...PLATFORM_HOSTED_CLAUDE_FABLE_5_1_PRICE },
1129
+ // 2026-09-24:代码注释未记录 Fable 5.1 的发布日,此值按编排者指定填入
1130
+ // (与 Opus 5.5 / Sonnet 5.5 同代)。拿到官方日期后请以官方为准替换。
1131
+ releasedAtMs: catalogReleasedAt(2026, 9, 24),
983
1132
  maxOutputTokens: 4092,
984
1133
  contextWindow: 1e6,
985
1134
  supportsTool: false
986
1135
  },
1136
+ {
1137
+ // Claude Sonnet 5.5(2026-09-28 发布):官方价与 Sonnet 5 相同
1138
+ name: PLATFORM_HOSTED_CLAUDE_SONNET_5_5_MODEL,
1139
+ displayName: "Claude Sonnet 5.5",
1140
+ hasVision: true,
1141
+ price: { ...PLATFORM_HOSTED_CLAUDE_SONNET_5_5_PRICE },
1142
+ // 2026-09-28 发布(出处:本条目注释与 PLATFORM_HOSTED_CLAUDE_SONNET_5_5_PRICE 注释)。
1143
+ releasedAtMs: catalogReleasedAt(2026, 9, 28),
1144
+ maxOutputTokens: 128e3,
1145
+ contextWindow: 1e6,
1146
+ supportsTool: false
1147
+ },
987
1148
  // GPT-6 / GPT-5.6 系:OpenAI 官方 chat.completions,平台价按短上下文价目。
988
1149
  {
989
1150
  name: PLATFORM_HOSTED_GPT_6_ASTRA_MODEL,
@@ -1003,21 +1164,34 @@ var platformHostedModels = [
1003
1164
  displayName: "GPT-6 Luna",
1004
1165
  hasVision: true,
1005
1166
  price: { ...PLATFORM_HOSTED_GPT_6_LUNA_PRICE },
1167
+ // 2026-09-22 随 GPT-6 Sol/Luna 上线(出处:PLATFORM_HOSTED_GPT_6_LUNA_PRICE 注释)。
1168
+ releasedAtMs: catalogReleasedAt(2026, 9, 22),
1006
1169
  maxOutputTokens: 128e3,
1007
1170
  contextWindow: 105e4,
1008
1171
  supportsTool: true,
1009
1172
  supportsReasoningEffort: true
1010
1173
  },
1011
1174
  {
1012
- name: PLATFORM_HOSTED_GPT_56_SOL_MODEL,
1013
- displayName: "GPT-5.6 Sol",
1014
- hasVision: true,
1015
- price: { ...PLATFORM_HOSTED_GPT_56_SOL_PRICE },
1016
- maxOutputTokens: 128e3,
1175
+ // GPT-6.1 Sol(2026-10-13 收进广场,上游 Cloudflare AI Responses):
1176
+ // 事实仅取 CF 官方模型页(developers.cloudflare.com/ai/models/openai/gpt-6.1-sol/,
1177
+ // 2026-10-13 核对):上下文 1,050,000 tokens;请求格式 Responses / Chat Completions;
1178
+ // 价格见 PLATFORM_HOSTED_GPT_6_1_SOL_PRICE;示例使用 reasoning.effort。
1179
+ // 未声明视觉能力(官方页无 vision/图像输入声明)→ hasVision: false(声明式缺省,
1180
+ // 不等同于「该模型不支持视觉」这一未经验证的能力主张——待官方页确认前不作断言);
1181
+ // 同理不声明 supportsTool(官方页无模型级 tools 能力声明);
1182
+ // 官方页未给出该模型的 max output → 不填 maxOutputTokens(沿用缺省,不猜数值)。
1183
+ name: PLATFORM_HOSTED_GPT_6_1_SOL_MODEL,
1184
+ displayName: "GPT-6.1 Sol",
1185
+ hasVision: false,
1186
+ price: { ...PLATFORM_HOSTED_GPT_6_1_SOL_PRICE },
1187
+ // 2026-10-13 收进广场(= 平台上架日;出处:PLATFORM_HOSTED_GPT_6_1_SOL_PRICE 注释)。
1188
+ releasedAtMs: catalogReleasedAt(2026, 10, 13),
1017
1189
  contextWindow: 105e4,
1018
- supportsTool: true,
1019
1190
  supportsReasoningEffort: true
1020
1191
  },
1192
+ // gpt-5.6-sol(2026-10-13):旧 id 是 gpt-6.1-sol 的兼容别名(PLATFORM_MODEL_ALIASES),
1193
+ // 不再作为可选商品上架;平台托管请求透明落到 6.1 的上游与 6.1 目录价。
1194
+ // 旧价目常量 PLATFORM_HOSTED_GPT_56_SOL_PRICE 保留给历史记录只读重放(不追溯)。
1021
1195
  {
1022
1196
  name: PLATFORM_HOSTED_GPT_56_TERRA_MODEL,
1023
1197
  displayName: "GPT-5.6 Terra",
@@ -1089,7 +1263,7 @@ var platformHostedModels = [
1089
1263
  {
1090
1264
  key: "speed",
1091
1265
  label: "\u901F\u5EA6\u4F18\u5148",
1092
- imageModel: "gemini-3.1-flash-image-preview",
1266
+ imageModel: "gemini-nano-banana-2.1",
1093
1267
  waitTimeSeconds: {
1094
1268
  min: 10,
1095
1269
  max: 25
@@ -1098,7 +1272,46 @@ var platformHostedModels = [
1098
1272
  {
1099
1273
  key: "quality",
1100
1274
  label: "\u8D28\u91CF\u4F18\u5148",
1101
- imageModel: "gemini-3-pro-image-preview",
1275
+ imageModel: "gemini-3-pro-image",
1276
+ waitTimeSeconds: {
1277
+ min: 25,
1278
+ max: 60
1279
+ }
1280
+ }
1281
+ ]
1282
+ }),
1283
+ // Nano Banana 2.1(gemini-nano-banana-2.1):2026-10-06 GA。
1284
+ createPlatformHostedGeminiImageModel({
1285
+ name: PLATFORM_HOSTED_GEMINI_NANO_BANANA_21_MODEL,
1286
+ displayName: "Nano Banana 2.1 (Gemini 2.1 Image)",
1287
+ inputPrice: 12,
1288
+ outputPrice: 60,
1289
+ imageTokenPricePerMillion: 240,
1290
+ imageOutputTokenEstimateBySize: {
1291
+ "1K": 1120,
1292
+ "2K": 1680,
1293
+ "4K": 3780
1294
+ },
1295
+ maxOutputTokens: 65536,
1296
+ contextWindow: 65536,
1297
+ imageGenerationWaitTimeSeconds: {
1298
+ min: 10,
1299
+ max: 25
1300
+ },
1301
+ imageGenerationProfiles: [
1302
+ {
1303
+ key: "speed",
1304
+ label: "\u901F\u5EA6\u4F18\u5148",
1305
+ imageModel: PLATFORM_HOSTED_GEMINI_NANO_BANANA_21_MODEL,
1306
+ waitTimeSeconds: {
1307
+ min: 10,
1308
+ max: 25
1309
+ }
1310
+ },
1311
+ {
1312
+ key: "quality",
1313
+ label: "\u8D28\u91CF\u4F18\u5148",
1314
+ imageModel: "gemini-3-pro-image",
1102
1315
  waitTimeSeconds: {
1103
1316
  min: 25,
1104
1317
  max: 60
@@ -1109,13 +1322,13 @@ var platformHostedModels = [
1109
1322
  createPlatformHostedGeminiImageModel({
1110
1323
  name: PLATFORM_HOSTED_GEMINI_FLASH_IMAGE_MODEL,
1111
1324
  displayName: "Nano Banana 2 (Gemini 3.1 Flash Image Preview)",
1112
- inputPrice: 4,
1113
- outputPrice: 24,
1114
- imageTokenPricePerMillion: 480,
1325
+ inputPrice: 12,
1326
+ outputPrice: 60,
1327
+ imageTokenPricePerMillion: 240,
1115
1328
  imageOutputTokenEstimateBySize: {
1116
1329
  "1K": 1120,
1117
1330
  "2K": 1680,
1118
- "4K": 2520
1331
+ "4K": 3780
1119
1332
  },
1120
1333
  maxOutputTokens: 65536,
1121
1334
  contextWindow: 65536,
@@ -1127,7 +1340,7 @@ var platformHostedModels = [
1127
1340
  {
1128
1341
  key: "speed",
1129
1342
  label: "\u901F\u5EA6\u4F18\u5148",
1130
- imageModel: "gemini-3.1-flash-image-preview",
1343
+ imageModel: "gemini-nano-banana-2.1",
1131
1344
  waitTimeSeconds: {
1132
1345
  min: 10,
1133
1346
  max: 25
@@ -1136,7 +1349,7 @@ var platformHostedModels = [
1136
1349
  {
1137
1350
  key: "quality",
1138
1351
  label: "\u8D28\u91CF\u4F18\u5148",
1139
- imageModel: "gemini-3-pro-image-preview",
1352
+ imageModel: "gemini-3-pro-image",
1140
1353
  waitTimeSeconds: {
1141
1354
  min: 25,
1142
1355
  max: 60
@@ -1149,7 +1362,7 @@ var platformHostedModels = [
1149
1362
  displayName: "Nano Banana 2 Lite (Gemini 3.1 Flash Lite Image)",
1150
1363
  inputPrice: 2,
1151
1364
  outputPrice: 12,
1152
- pricePerImage: 0.272,
1365
+ pricePerImage: 0.2688,
1153
1366
  maxOutputTokens: 65536,
1154
1367
  contextWindow: 65536,
1155
1368
  imageGenerationWaitTimeSeconds: {
@@ -1169,7 +1382,7 @@ var platformHostedModels = [
1169
1382
  {
1170
1383
  key: "quality",
1171
1384
  label: "\u8D28\u91CF\u4F18\u5148",
1172
- imageModel: "gemini-3-pro-image-preview",
1385
+ imageModel: "gemini-3-pro-image",
1173
1386
  waitTimeSeconds: {
1174
1387
  min: 25,
1175
1388
  max: 60
@@ -1205,9 +1418,14 @@ export {
1205
1418
  isNoloHostedProvider,
1206
1419
  isFireworksKimiModel,
1207
1420
  isDeepInfraKimiModel,
1421
+ isPlatformManagedProvider,
1208
1422
  resolveFireworksKimiModel,
1423
+ PLATFORM_HOSTED_CLAUDE_SONNET_5_MODEL,
1424
+ PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL,
1425
+ PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL,
1209
1426
  PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL,
1210
1427
  PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL,
1428
+ resolvePlatformEffectiveModel,
1211
1429
  resolvePlatformHostedRouting,
1212
1430
  NOLO_CLIENT_VERSION_HEADER,
1213
1431
  CLIENT_VERSION_TOO_OLD_CODE,
@@ -1215,6 +1433,9 @@ export {
1215
1433
  evaluatePlatformHostedClientVersionGate,
1216
1434
  buildClientVersionGateErrorDetail,
1217
1435
  toCnyCredits,
1436
+ PLATFORM_HOSTED_CLAUDE_FABLE_5_PRICE,
1437
+ PLATFORM_HOSTED_CLAUDE_OPUS_5_PRICE,
1438
+ PLATFORM_HOSTED_CLAUDE_SONNET_5_PRICE,
1218
1439
  PLATFORM_HOSTED_GLM_53_FLASH_BASETEN_PRICE,
1219
1440
  isPlatformHostedOpenAIImageModel,
1220
1441
  isPlatformHostedImageModel,