nolo-cli 0.213.0 → 0.223.0-alpha.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.
Files changed (262) hide show
  1. package/README.md +3 -2
  2. package/{_executeModel-CUJLCFWR.js → _executeModel-4GGQQHOB.js} +111 -82
  3. package/{accountResolver-4LKIHEKL.js → accountResolver-EK2S4PWF.js} +6 -6
  4. package/{action-DF5UYSJF.js → action-CK64LS6S.js} +12 -11
  5. package/{addContentAction-WERAONNY.js → addContentAction-GDHDOF4U.js} +18 -17
  6. package/{addDialogAgentAction-7VI7YRML.js → addDialogAgentAction-CAKRU3ZT.js} +21 -20
  7. package/{agentDeleteCommand-XJORXPGU.js → agentDeleteCommand-BPV2XZL7.js} +128 -119
  8. package/{agentEmailCommands-XTYYFR6Z.js → agentEmailCommands-EJOS75YL.js} +132 -124
  9. package/{agentFavoriteCommands-EDK743YA.js → agentFavoriteCommands-2LKGKSUD.js} +7 -8
  10. package/{agentGrantCommands-RQWK2TEV.js → agentGrantCommands-QQV4N4JW.js} +5 -5
  11. package/{agentListCommands-OBLRBLHS.js → agentListCommands-HIZODBF3.js} +155 -92
  12. package/{agentMachineCommands-5FMT3OT5.js → agentMachineCommands-ZMQ2CY7Y.js} +62 -54
  13. package/{agentProviderCommands-Q5O33MED.js → agentProviderCommands-WKJOAWBP.js} +5 -5
  14. package/{agentPullCommand-6EM3URVK.js → agentPullCommand-XN6ZPBUW.js} +7 -7
  15. package/agentRecordCommands-OMXVDLDX.js +176 -0
  16. package/agentRunCommand-CB34YWMV.js +206 -0
  17. package/{agentRunControl-TAMHJQSR.js → agentRunControl-JNONH3RP.js} +30 -15
  18. package/{agentRuntimeLocal-SOO2OPJG.js → agentRuntimeLocal-QZPFWMLG.js} +52 -45
  19. package/{agentSlice-CHR6KOZN.js → agentSlice-RD2CDU7T.js} +20 -19
  20. package/{appDeleteCommands-GUP6P5YE.js → appDeleteCommands-QCCFDIEQ.js} +61 -53
  21. package/{appDeployCommands-MH2FX4O5.js → appDeployCommands-V2T7TNMQ.js} +61 -53
  22. package/{appDeployStatusCommands-SUHN3HPJ.js → appDeployStatusCommands-6PGH7ZCG.js} +61 -53
  23. package/{appGetCommands-YWDEX6Z4.js → appGetCommands-3L7WWJA6.js} +61 -53
  24. package/{appListCommands-ZQVMLPAY.js → appListCommands-ENJCK4PO.js} +61 -53
  25. package/{authCommand-PWX2ZNUP.js → authCommand-6V47SYGK.js} +29 -28
  26. package/{authCommands-HV3EAU3V.js → authCommands-GAJ3NIXO.js} +14 -13
  27. package/{builtinSkillRegistry-2QETTQPM.js → builtinSkillRegistry-2ECA42FC.js} +11 -13
  28. package/{chromeCommands-REEAH4SX.js → chromeCommands-G5UDKVSV.js} +3 -3
  29. package/{chromeOpsCommands-DIVM2K3T.js → chromeOpsCommands-YKX2QX3A.js} +20 -10
  30. package/{chunk-CRHOO2ZR.js → chunk-27PCUMJI.js} +2 -2
  31. package/chunk-2CI3ZFWD.js +97 -0
  32. package/{chunk-NSAPDIN2.js → chunk-2GJKRKI6.js} +541 -31
  33. package/{chunk-SM3NSZJV.js → chunk-2UCBGYO4.js} +20 -1
  34. package/{chunk-PYRUW7XN.js → chunk-2VUZSVAS.js} +136 -54
  35. package/{chunk-YB3YZK56.js → chunk-2WZXXAQD.js} +1 -67
  36. package/chunk-2YGBI2XB.js +30 -0
  37. package/chunk-2ZKFCIJJ.js +13 -0
  38. package/{chunk-QG4AOSON.js → chunk-34J5K2YA.js} +13 -32
  39. package/{chunk-LOEO7LRC.js → chunk-3IK6ILVW.js} +4 -1
  40. package/{chunk-CTPXME7U.js → chunk-3LMUPOHG.js} +29 -6
  41. package/chunk-44X52WOJ.js +1621 -0
  42. package/{chunk-6VLJ6YA7.js → chunk-4DESLZTK.js} +9 -9
  43. package/{chunk-MYOH447Z.js → chunk-4JVNURX4.js} +1 -1
  44. package/chunk-5CHGAKRT.js +364 -0
  45. package/{chunk-YDH3FDFQ.js → chunk-5FUN7EG4.js} +1 -1
  46. package/{chunk-INUFILG6.js → chunk-5RKUPJYL.js} +1 -1
  47. package/{chunk-ZC3CMUKU.js → chunk-6OVNSQHN.js} +84 -2
  48. package/{chunk-MOIJOHA5.js → chunk-6WU5572L.js} +36 -25
  49. package/{chunk-IXNGOHV5.js → chunk-7EEZJ6BS.js} +11 -152
  50. package/{chunk-Y6ORVLSS.js → chunk-7ET2U67U.js} +1 -1
  51. package/{chunk-G7MLNNEX.js → chunk-7JLY4WYF.js} +5 -5
  52. package/{chunk-P5L7CXOC.js → chunk-7Z6EW7AH.js} +3 -2
  53. package/{chunk-NJLL224W.js → chunk-AD5EWDFD.js} +2 -2
  54. package/{chunk-J2NHJ7WX.js → chunk-AIHYNKGV.js} +4 -4
  55. package/{chunk-HPFCI4SK.js → chunk-AK5O76CC.js} +3 -3
  56. package/{chunk-Y63ZSOR6.js → chunk-AL3TYDIF.js} +1 -1
  57. package/{chunk-ALQ3657A.js → chunk-AMEOV5VZ.js} +32 -12
  58. package/chunk-AN74ON4G.js +675 -0
  59. package/{chunk-HRMJUN5J.js → chunk-AQZ6BMRK.js} +1 -1
  60. package/{chunk-XHQC4PXX.js → chunk-B4GOW4MT.js} +424 -194
  61. package/{chunk-4KB6WQUL.js → chunk-BGP2EDFG.js} +1 -1
  62. package/{chunk-NBTY7YJF.js → chunk-BR3GT6MR.js} +1 -0
  63. package/{chunk-7RFNTILS.js → chunk-BUDVRYES.js} +2 -2
  64. package/{chunk-SVYO6AO7.js → chunk-BV3FLP2L.js} +41 -1
  65. package/{chunk-RZOV7OMV.js → chunk-C4VAR65S.js} +83 -141
  66. package/{chunk-COFEN36Z.js → chunk-C4WTX5TU.js} +2 -2
  67. package/{chunk-ZL5RAEEB.js → chunk-CIRB724Q.js} +1 -1
  68. package/{chunk-F6UUQOG6.js → chunk-CKT6QUE2.js} +4 -4
  69. package/{chunk-X7SDOJUM.js → chunk-CMZ3Z5PT.js} +14 -14
  70. package/{secretCommands-LXDWOLZ6.js → chunk-D726I5AZ.js} +191 -16
  71. package/{chunk-TAKB25RM.js → chunk-DNKTQ3IN.js} +4 -4
  72. package/chunk-DVQH4BTR.js +1137 -0
  73. package/{chunk-WYDI6TGM.js → chunk-DWX2HEVC.js} +91 -132
  74. package/{chunk-5MQRBSMW.js → chunk-EIAI3PPH.js} +111 -113
  75. package/chunk-EUCFKKDM.js +247 -0
  76. package/chunk-EWQ3HGNZ.js +90 -0
  77. package/{chunk-RPQXPZZF.js → chunk-F3GRJO4Z.js} +908 -13
  78. package/{chunk-YTF4WH7J.js → chunk-FIYSMXHY.js} +1 -1
  79. package/{chunk-75XIDFBW.js → chunk-FJ23FZXF.js} +72 -28
  80. package/{chunk-INN4LTAJ.js → chunk-FJK526XH.js} +2 -2
  81. package/chunk-FS2XP5D7.js +142 -0
  82. package/{chunk-FUGMREBO.js → chunk-FYF2TONJ.js} +5 -5
  83. package/{chunk-PCLE46CE.js → chunk-GBWGPTA7.js} +2 -1
  84. package/{chunk-TX5EYMGT.js → chunk-GYVCJABP.js} +30 -254
  85. package/{chunk-3UKL3HPD.js → chunk-HOCHUZQ7.js} +8 -78
  86. package/{chunk-EHSZD5OI.js → chunk-HXER7YJF.js} +4 -4
  87. package/chunk-HYIETXA6.js +99 -0
  88. package/{chunk-H2TJUNCH.js → chunk-I4EADJ4P.js} +6 -6
  89. package/{chunk-TCZHTTUU.js → chunk-I7WBYGBP.js} +8 -8
  90. package/{chunk-6DWMYIUY.js → chunk-IILMY4W4.js} +14 -9
  91. package/chunk-JA3ICVJY.js +271 -0
  92. package/{chunk-ZRSNONOB.js → chunk-JWXITTQB.js} +8 -3
  93. package/{chunk-H4UOTUOX.js → chunk-KEN3N2TN.js} +148 -18
  94. package/{chunk-LEC5ALIN.js → chunk-KEPOVMF4.js} +1 -1
  95. package/{chunk-UHJGXRJ4.js → chunk-KQSYAIZR.js} +3 -3
  96. package/{chunk-4VJAC32I.js → chunk-L5I543VB.js} +3 -2
  97. package/chunk-LKA64WH4.js +227 -0
  98. package/{chunk-QHPRUL4O.js → chunk-LVL6GFCM.js} +4 -4
  99. package/{chunk-H5HF7TJA.js → chunk-MAIITKBT.js} +2 -2
  100. package/chunk-MBG66ZBH.js +226 -0
  101. package/{chunk-YUA6OAH5.js → chunk-MDLS23JK.js} +2 -2
  102. package/{chunk-VL5KOY2C.js → chunk-MK2Q7ZJD.js} +67 -5
  103. package/{chunk-MDB67IWP.js → chunk-MS4NZNKI.js} +10 -10
  104. package/{chunk-VO4WSAVP.js → chunk-MYHNBEXD.js} +3 -3
  105. package/{chunk-ZXOUUDCG.js → chunk-MZLE5HQ3.js} +3654 -231
  106. package/{chunk-AZMYUSVF.js → chunk-N5Z2V73W.js} +1 -1
  107. package/{chunk-V5Y3R6BT.js → chunk-NIZ2BXFD.js} +213 -210
  108. package/{chunk-KFLT5KAD.js → chunk-NWP2OYOX.js} +20 -20
  109. package/{chunk-G2BQWAVT.js → chunk-O6J3OTOP.js} +4 -4
  110. package/{chunk-VNYYOX3V.js → chunk-OB6DVWPF.js} +141 -48
  111. package/{chunk-YWSEPJ7C.js → chunk-OBWT45ZU.js} +3 -3
  112. package/{chunk-ZNWI6OVT.js → chunk-ODJ7BVSI.js} +80 -11
  113. package/{chunk-XJWWBO34.js → chunk-OJKUU3LP.js} +5 -7
  114. package/{chunk-HUBHAQK2.js → chunk-ON37YXGX.js} +29 -29
  115. package/{chunk-UYD5HQ6T.js → chunk-P5ZJRTCH.js} +5429 -1752
  116. package/{chunk-6XIE5ZGI.js → chunk-PDCV7P5W.js} +1 -1
  117. package/{chunk-WRYQ35LQ.js → chunk-PJCIP64Z.js} +859 -57
  118. package/{chunk-7QTZCMKL.js → chunk-PJVKMGPZ.js} +1089 -1639
  119. package/{chunk-A7TFUNZO.js → chunk-PPJYZRSQ.js} +6 -2
  120. package/chunk-QHEN7NZ7.js +46 -0
  121. package/{chunk-OQPKUBPB.js → chunk-QNWG52I4.js} +19 -7
  122. package/{chunk-YGILMZ7N.js → chunk-QVBXJNZ2.js} +1 -1
  123. package/{chunk-7BT37FK3.js → chunk-RDH5CQ4T.js} +648 -131
  124. package/{chunk-C6KNNXWU.js → chunk-RGQ4UUWZ.js} +25 -2
  125. package/{chunk-OWYYDMGJ.js → chunk-S2NTVGA2.js} +4 -2
  126. package/{chunk-KC4XDTT3.js → chunk-SOF4OWDM.js} +6 -4
  127. package/{chunk-RLBNLZVC.js → chunk-SQYIK6HO.js} +1 -1
  128. package/{chunk-YJAFKXMU.js → chunk-SVT62ULE.js} +50 -48
  129. package/{chunk-KIM6CLW5.js → chunk-SY3C4SQ7.js} +42 -15
  130. package/{chunk-JY5NGFFH.js → chunk-SYTHYBMI.js} +5 -5
  131. package/{chunk-WMTBPBMP.js → chunk-T6DXNI6Z.js} +52 -50
  132. package/chunk-TLE77UJ5.js +230 -0
  133. package/{chunk-4VNS5WPM.js → chunk-U67V476Y.js} +1 -8
  134. package/{chunk-F7CI2ZC5.js → chunk-UAIHKQIA.js} +2 -1
  135. package/{chunk-R5O4QAWG.js → chunk-UB3D4TRQ.js} +11 -77
  136. package/{chunk-WPORQFYN.js → chunk-UVLYNWIE.js} +2 -2
  137. package/{chunk-NOKUNJON.js → chunk-UYOICCYG.js} +29 -19
  138. package/{chunk-4I7ERB7F.js → chunk-VREDDN25.js} +1 -1
  139. package/{chunk-O2TZF4AI.js → chunk-WAE3GFCJ.js} +3 -3
  140. package/{chunk-H7PPIYWP.js → chunk-WI67URFP.js} +20 -20
  141. package/{chunk-7OCO4TDT.js → chunk-WJVYAO6P.js} +1 -1
  142. package/{chunk-T43B7LB2.js → chunk-WKGQSYTB.js} +1 -1
  143. package/{chunk-BBJ22CLB.js → chunk-WUUH4LWZ.js} +60 -30
  144. package/{chunk-4T2WNOY7.js → chunk-X7UF53VA.js} +33 -22
  145. package/{chunk-TY3TIUJK.js → chunk-XI2BWJM5.js} +65 -0
  146. package/{chunk-LLRPJECG.js → chunk-XWVCYUUU.js} +16 -159
  147. package/{chunk-J5JTMQIA.js → chunk-YFLVRVYK.js} +1 -1
  148. package/{chunk-EYLGAEB4.js → chunk-YGMBIXCF.js} +132 -0
  149. package/chunk-YL3EFYL3.js +199 -0
  150. package/{chunk-MMA3LZ3W.js → chunk-YNIYE47Z.js} +1 -1
  151. package/{chunk-W4S457LU.js → chunk-YU4ZPWVF.js} +41 -5
  152. package/{chunk-7Y4YTDQF.js → chunk-YWWDC3O7.js} +281 -159
  153. package/chunk-YZMNK53S.js +68 -0
  154. package/{chunk-RSHTSUEG.js → chunk-Z2PITYZN.js} +2060 -602
  155. package/{chunk-FY7F4Q6X.js → chunk-Z4PCXPUE.js} +2 -2
  156. package/{cliAgentConfigHelpers-WJBZQTLW.js → cliAgentConfigHelpers-TKYL43MT.js} +15 -16
  157. package/{cliAuthorityBrokerClient-PM3U6Q6J.js → cliAuthorityBrokerClient-XHH7MH2P.js} +1 -1
  158. package/{cliAuthorityStoreDriver-TKLXNNTG.js → cliAuthorityStoreDriver-6FE3BJNB.js} +1 -1
  159. package/{cliEnvHelpers-BVYTMUPJ.js → cliEnvHelpers-VPSJ4XWC.js} +3 -3
  160. package/{cliExecutor-BWBF2MTI.js → cliExecutor-4MAX3PZL.js} +2 -2
  161. package/cliLocalAgentRecordReader-MHHD4T7R.js +90 -0
  162. package/{commandRegistry-W63CYRZJ.js → commandRegistry-5DA5UP7S.js} +105 -97
  163. package/{contentThunks-U7PL5MQD.js → contentThunks-5GUQ7FWJ.js} +47 -43
  164. package/{cooldownCommands-TIGUHXTD.js → cooldownCommands-X7P5M2V5.js} +5 -4
  165. package/{createAgentAutomationAction-OLBQDD6R.js → createAgentAutomationAction-UCLTHQRI.js} +51 -49
  166. package/{createDialogAction-SVH6B3SB.js → createDialogAction-UPN774AF.js} +46 -48
  167. package/{createPageAction-F4DIWZ2Z.js → createPageAction-JRQ2TA4O.js} +50 -48
  168. package/{cursorProvider-YGGNMVWX.js → cursorProvider-2RACMEMF.js} +1 -1
  169. package/{db-HUCI5R4G.js → db-CS4ZJQKV.js} +1 -1
  170. package/{dbSlice-BVH2YZPQ.js → dbSlice-WNON7TOL.js} +17 -16
  171. package/{deleteFile-5YOEKV4U.js → deleteFile-Q3YDB4ML.js} +9 -9
  172. package/{desktopFolderProjects-SFY5EZS3.js → desktopFolderProjects-4POAMVJN.js} +2 -2
  173. package/{dialogCommands-KHIEPY3M.js → dialogCommands-VRI7VCXH.js} +64 -57
  174. package/dialogNotifyCommand-6TMCX4D2.js +36 -0
  175. package/{dialogSlice-ZCTDV2PZ.js → dialogSlice-LFNVUSAN.js} +42 -40
  176. package/{dialogUsageCommand-7KCPYGHG.js → dialogUsageCommand-HTVPR2CX.js} +11 -10
  177. package/{docCreateCommands-DPMZI7G5.js → docCreateCommands-AMPXMOX3.js} +61 -55
  178. package/{docDeleteCommands-IRQQLUBT.js → docDeleteCommands-I5WFAEHP.js} +63 -57
  179. package/{docReadCommands-LK37XH6L.js → docReadCommands-X53ELNIE.js} +61 -55
  180. package/{docStore-V2KECILA.js → docStore-2VAWVLWH.js} +21 -20
  181. package/{docUpdateCommands-O6T3HJHH.js → docUpdateCommands-6QPNDC7M.js} +64 -58
  182. package/{fetchMessages-NR4KNQLO.js → fetchMessages-TQEUZD7H.js} +8 -7
  183. package/{getPricing-2MNMXEVG.js → getPricing-MB2GBXOK.js} +6 -6
  184. package/{handleSendMessageAction-2PE25WM3.js → handleSendMessageAction-AAJOHXOB.js} +194 -302
  185. package/{hostCredentialCreate-S233UMAP.js → hostCredentialCreate-GLMJ22M6.js} +123 -114
  186. package/index.js +29 -29
  187. package/{keys-BEGDOTRL.js → keys-RWF7UCB4.js} +5 -4
  188. package/legacyMigration-TF4SYJCZ.js +19 -0
  189. package/{lib-5KKIBFIT.js → lib-OT5OTXRU.js} +7087 -6664
  190. package/{localDialogRead-7NNDVVF7.js → localDialogRead-SVTPA5GY.js} +3 -3
  191. package/{localFirstLog-DHNOY2NA.js → localFirstLog-OIETGK66.js} +1 -1
  192. package/localRecall-2J6QPOK2.js +15 -0
  193. package/{localRuntimeAdapter-KY6WXNBR.js → localRuntimeAdapter-BMP57P42.js} +119 -110
  194. package/{localRuntimeAuthority-OYH4AE4G.js → localRuntimeAuthority-IBJAT62G.js} +1 -1
  195. package/{localRuntimeDb-VBIMCWUC.js → localRuntimeDb-N7KHDXS2.js} +2 -2
  196. package/{machineCommands-Q6HA3IXF.js → machineCommands-3MLIAK5Q.js} +128 -119
  197. package/{machineInfo-UKPTZO5Y.js → machineInfo-LWHTEBHJ.js} +1 -1
  198. package/machineWsRunDispatch-FKIGROQF.js +191 -0
  199. package/{memberThunks-7EDJADWU.js → memberThunks-ZGLZ36PK.js} +29 -28
  200. package/{memoryCommands-ASCE5STX.js → memoryCommands-5WC3T66U.js} +4 -4
  201. package/models-ULVWLSQ6.js +9 -0
  202. package/{oauthTokenStore-OEERZFUC.js → oauthTokenStore-RUYNYALS.js} +1 -1
  203. package/{offlineMarxistsAgentCommand-2QTHJCHV.js → offlineMarxistsAgentCommand-4IC3Y4C6.js} +4 -4
  204. package/overlay-THLKYIWY.js +11 -0
  205. package/package.json +2 -2
  206. package/{pdf-U6KSUEZZ.js → pdf-KE3QI2V7.js} +1 -1
  207. package/{processSpawn-ZU5QFM43.js → processSpawn-6GEO77KV.js} +1 -1
  208. package/{profileConfig-KN3N2BLF.js → profileConfig-KOWK4HOG.js} +1 -1
  209. package/{projectArchive-DRTDIMEV.js → projectArchive-HK63GMF4.js} +52 -50
  210. package/{providerPresetApply-YXGV6NXB.js → providerPresetApply-OIFQ73LH.js} +19 -12
  211. package/{providerRegistry-S6UL6UNA.js → providerRegistry-KZ3SDZ3D.js} +10 -10
  212. package/{read-4V2RMG7N.js → read-MRQHJMJ2.js} +10 -10
  213. package/{readDocTool-BH6ATGQO.js → readDocTool-4BGTXTXA.js} +2 -2
  214. package/{readlineWorkspace-2W4WRCOU.js → readlineWorkspace-AKAHSCNY.js} +7982 -6274
  215. package/{removeDialogAgentAction-LYAZGNKW.js → removeDialogAgentAction-B6H7DXFM.js} +23 -22
  216. package/{runAgentClientLoop-J2VQBS2Z.js → runAgentClientLoop-UVAWGEON.js} +81 -79
  217. package/{runtimeDoctorCommands-QAI3MBKQ.js → runtimeDoctorCommands-FW6XKDUG.js} +12 -12
  218. package/{runtimeModeArgs-2Y7BALTO.js → runtimeModeArgs-X7DL7PUN.js} +1 -1
  219. package/secretCommands-LJXOOYA7.js +24 -0
  220. package/{setDialogExtraReferencesAction-OCRPGPYH.js → setDialogExtraReferencesAction-EVCY3TRW.js} +22 -21
  221. package/{setPrimaryDialogAgentAction-HFJDQIBU.js → setPrimaryDialogAgentAction-KPFVPHCJ.js} +23 -22
  222. package/{settingThunks-RAMHMTGM.js → settingThunks-ENOAK2WV.js} +97 -88
  223. package/{skillDiscovery-XKHROSH2.js → skillDiscovery-B5V23AXP.js} +4 -4
  224. package/{skillSummaryMarker-42HKSXYY.js → skillSummaryMarker-62UW7HI7.js} +1 -1
  225. package/{slateToRenderMarkdown-Y5IYN73U.js → slateToRenderMarkdown-R3X74MCX.js} +1 -1
  226. package/{slateUtils-NGV2NMKM.js → slateUtils-ESQAJ6RN.js} +1 -1
  227. package/{spaceCommands-KVJZVKVO.js → spaceCommands-DTTNAS2L.js} +61 -53
  228. package/store-JRVN62NM.js +46 -0
  229. package/{streamAgentChatTurn-GHBMJJ6S.js → streamAgentChatTurn-R5UY25VB.js} +875 -618
  230. package/{switchDialogAgentAction-EBRMW3RA.js → switchDialogAgentAction-SZ44XDRY.js} +21 -20
  231. package/{tableCommands-MP6VFSVT.js → tableCommands-HITDSLHS.js} +10 -10
  232. package/tombstones-FQQMEDOW.js +32 -0
  233. package/{toolApiClient-HGNO53TC.js → toolApiClient-OGQEBQVX.js} +4 -4
  234. package/{tools-EWKCPKMS.js → tools-HWFG6GMJ.js} +75 -74
  235. package/tuiSummaryLlmCaller-HQQZAMYF.js +44 -0
  236. package/{updateCommands-ZQYU6SCI.js → updateCommands-RJVCRSBP.js} +10 -8
  237. package/{updateDialogTitleAction-5GGMBTDF.js → updateDialogTitleAction-KNPOAMVS.js} +48 -46
  238. package/{usageCommand-F4IPVMIZ.js → usageCommand-FWZCB7AM.js} +11 -10
  239. package/{usageRebuildCommand-HAW2AD5N.js → usageRebuildCommand-SP2BLNJU.js} +12 -11
  240. package/userDataMerge-HT2ZVHBJ.js +13 -0
  241. package/{windowsSelfUpdate-257DV2T6.js → windowsSelfUpdate-KERHIAB4.js} +3 -3
  242. package/{workloadLifecycle-4C42SVBD.js → workloadLifecycle-DYNEYHV5.js} +6 -6
  243. package/agentRecordCommands-ZQ7SVYGG.js +0 -167
  244. package/agentRunCommand-WS7IGO2W.js +0 -196
  245. package/chunk-3CGG2PAL.js +0 -594
  246. package/chunk-5XBUWM6I.js +0 -89
  247. package/chunk-CJEIOP3E.js +0 -0
  248. package/chunk-EHGEOAHI.js +0 -636
  249. package/chunk-FW6YHHLI.js +0 -842
  250. package/chunk-GPVRUGGY.js +0 -115
  251. package/chunk-HSVBJRF4.js +0 -339
  252. package/chunk-WJZOQR2J.js +0 -151
  253. package/chunk-ZCWRMUWT.js +0 -89
  254. package/dist-M676ULYG.js +0 -7314
  255. package/machineWsRunDispatch-WWJQ6WR3.js +0 -182
  256. package/models-PJBE6JDV.js +0 -9
  257. package/tuiSummaryLlmCaller-ALQYUUWB.js +0 -189
  258. package/{chunk-WACI5I6V.js → chunk-2THCNKE4.js} +3 -3
  259. package/{chunk-2QHFH3DR.js → chunk-47ITIXO7.js} +6 -6
  260. package/{chunk-GOO6G4PY.js → chunk-CKG3PRZ7.js} +0 -0
  261. package/{chunk-OQHIVPG4.js → chunk-SNBZZPYH.js} +3 -3
  262. package/{chunk-AETZ7AD6.js → chunk-W6RFEDN4.js} +3 -3
@@ -2,7 +2,7 @@ import {
2
2
  clipMultilineText,
3
3
  fetchAndSerializeTable,
4
4
  waitForAbortableDelay
5
- } from "./chunk-HUBHAQK2.js";
5
+ } from "./chunk-ON37YXGX.js";
6
6
  import {
7
7
  isGatewayHttpStatus
8
8
  } from "./chunk-NF64D32W.js";
@@ -12,269 +12,52 @@ import {
12
12
  normalizeNonNegativeMs,
13
13
  parseRetryAfterHeaderMs
14
14
  } from "./chunk-3L2WKC3W.js";
15
- import {
16
- resolvePageReadMarkdown,
17
- slateToSimplifiedMarkdown
18
- } from "./chunk-RLBNLZVC.js";
19
15
  import {
20
16
  extractCategorizedMentions
21
17
  } from "./chunk-AGIM7IMJ.js";
18
+ import {
19
+ resolvePageReadMarkdown,
20
+ slateToSimplifiedMarkdown
21
+ } from "./chunk-SQYIK6HO.js";
22
22
  import {
23
23
  fetchAndCacheMessages
24
- } from "./chunk-ZXOUUDCG.js";
24
+ } from "./chunk-MZLE5HQ3.js";
25
25
  import {
26
26
  createSpaceKey
27
27
  } from "./chunk-UAD2WT54.js";
28
28
  import {
29
29
  read
30
- } from "./chunk-FW6YHHLI.js";
30
+ } from "./chunk-44X52WOJ.js";
31
31
  import {
32
32
  getRuntimeServerContext
33
- } from "./chunk-PYRUW7XN.js";
33
+ } from "./chunk-2VUZSVAS.js";
34
34
  import {
35
- extractRuntimePageCapabilities,
36
- resolveBuiltinSkillPage,
37
- resolveSkillGraphFromRoots
38
- } from "./chunk-WRYQ35LQ.js";
35
+ classifyGenerationError
36
+ } from "./chunk-TLE77UJ5.js";
39
37
  import {
40
38
  isAbortError
41
39
  } from "./chunk-7DPNBQSV.js";
42
40
  import {
43
- wrapHistoricalSummaryWithReplayGuard
44
- } from "./chunk-4VJAC32I.js";
41
+ extractRuntimePageCapabilities,
42
+ resolveBuiltinSkillPage,
43
+ resolveSkillGraphFromRoots
44
+ } from "./chunk-PJCIP64Z.js";
45
45
  import {
46
46
  extractCustomId
47
47
  } from "./chunk-M2EJHDJP.js";
48
+ import {
49
+ isDialogRecordKey
50
+ } from "./chunk-OJKUU3LP.js";
51
+ import {
52
+ wrapHistoricalSummaryWithReplayGuard
53
+ } from "./chunk-L5I543VB.js";
48
54
  import {
49
55
  estimateTokenCount
50
56
  } from "./chunk-PSCNXBYA.js";
51
- import {
52
- isDialogRecordKey
53
- } from "./chunk-XJWWBO34.js";
54
57
  import {
55
58
  asTrimmedString
56
59
  } from "./chunk-3EUW3WEO.js";
57
60
 
58
- // packages/ai/chat/errorDiagnostics.ts
59
- var record = (value) => value !== null && typeof value === "object" && !Array.isArray(value) ? value : {};
60
- function httpOrigin(value) {
61
- if (typeof value !== "string") return void 0;
62
- try {
63
- const url = new URL(value);
64
- return url.protocol === "http:" || url.protocol === "https:" ? url.origin : void 0;
65
- } catch {
66
- return void 0;
67
- }
68
- }
69
- var identifier = (value, max = 160) => typeof value === "string" && value.length <= max && /^[a-zA-Z0-9][a-zA-Z0-9._:/-]*$/.test(value) && !value.includes("://") && !/^(sk-|Bearer|AIza)/i.test(value) ? value : void 0;
70
- function sanitizeErrorDiagnostics(value) {
71
- const input = record(value);
72
- const out = {};
73
- for (const key of ["requestId", "provider", "model", "code"]) {
74
- const safe = identifier(input[key], key === "code" ? 80 : 160);
75
- if (safe) out[key] = safe;
76
- }
77
- if (typeof input.releaseSha === "string" && /^[a-fA-F0-9]{7,64}$/.test(input.releaseSha)) out.releaseSha = input.releaseSha;
78
- const origin = httpOrigin(input.requestOrigin);
79
- if (origin) out.requestOrigin = origin;
80
- if (["found", "not_found", "invalid_record", "lookup_error", "not_requested"].includes(input.lookupStatus)) out.lookupStatus = input.lookupStatus;
81
- if (typeof input.status === "number" && Number.isInteger(input.status) && input.status >= 100 && input.status <= 599) out.status = input.status;
82
- if (["config_protocol", "empty", "policy", "quota", "transient"].includes(input.category)) out.category = input.category;
83
- return Object.keys(out).length ? out : void 0;
84
- }
85
- function extractErrorDiagnostics(value, status) {
86
- const envelope = record(value);
87
- const error = record(envelope.error ?? value);
88
- const diagnostics = record(record(error.details).diagnostics);
89
- return sanitizeErrorDiagnostics({ ...diagnostics, code: error.code, status: status ?? error.status });
90
- }
91
-
92
- // packages/ai/chat/parseApiError.ts
93
- var CONTEXT_OVERFLOW_ACTIONS = [
94
- "compact-and-retry",
95
- "new-dialog",
96
- "switch-model",
97
- "retry"
98
- ];
99
- var CONTEXT_TOO_LARGE_ACTIONS = [
100
- "new-dialog",
101
- "switch-model",
102
- "retry"
103
- ];
104
- var truncateErrorMessage = (message, maxChars = 320) => message.length <= maxChars ? message : `${message.slice(0, maxChars)}\u2026`;
105
- var isContextOverflowText = (message) => /maximum context|context (length|window|overflow|limit)|context_length_exceed\w*|requested about .*tokens|too many tokens|prompt is too long|exceeds? (the )?(model|max)/i.test(
106
- message
107
- );
108
- var isQuotaExhaustedError = (status, ...texts) => status === 402 || /insufficient[_\s-]?(?:quota|balance|credits)|余额不足|wallet\s+balance\s+is\s+insufficient|payment[_ ]required/i.test(
109
- texts.filter((t) => typeof t === "string").join(" ")
110
- );
111
- var QUOTA_EXHAUSTED_MESSAGE = "\u4F59\u989D\u6216\u914D\u989D\u5DF2\u8017\u5C3D\uFF0C\u672C\u6B21\u8BF7\u6C42\u672A\u88AB\u53D7\u7406\u3002\u8BF7\u5728 console \u7684 Billing \u9875\u9762\u5145\u503C\u540E\u91CD\u8BD5\uFF1B\u76F4\u63A5\u91CD\u53D1\u540C\u4E00\u8BF7\u6C42\u4E0D\u4F1A\u89E3\u51B3\u6B64\u95EE\u9898\u3002";
112
- function classifyApiError(input) {
113
- const { status, message, body, code } = input;
114
- const errorMessage = message;
115
- let defaultMessage = `\u72B6\u6001\u7801 ${status} ${input.statusText ?? ""}`;
116
- switch (status) {
117
- case 400:
118
- if (isContextOverflowText(errorMessage) || isContextOverflowText(body) || code === "UPSTREAM_400") {
119
- return {
120
- kind: "context_overflow",
121
- message: "\u4E0A\u4E0B\u6587\u8FC7\u957F\uFF1A\u672C\u8F6E\u6D88\u606F\u6216\u5DE5\u5177\u7ED3\u679C\u592A\u5927\u3002\u8BF7\u7F29\u5C0F\u8303\u56F4\uFF0C\u6216\u5148\u8BFB\u53D6\u66F4\u5C0F\u7247\u6BB5\u540E\u518D\u7EE7\u7EED\u3002",
122
- code,
123
- status,
124
- retryable: true,
125
- actions: [...CONTEXT_OVERFLOW_ACTIONS]
126
- };
127
- }
128
- if (code === "MISSING_PROVIDER_API_KEY") {
129
- return {
130
- kind: "generic",
131
- message: truncateErrorMessage(errorMessage),
132
- code,
133
- status,
134
- retryable: false
135
- };
136
- }
137
- if (errorMessage && errorMessage !== defaultMessage) {
138
- return {
139
- kind: "generic",
140
- message: `\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF: ${truncateErrorMessage(errorMessage)}`,
141
- code,
142
- status,
143
- retryable: false
144
- };
145
- }
146
- return { kind: "generic", message: "\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u8F93\u5165", code, status, retryable: false };
147
- case 413:
148
- return {
149
- kind: "context_too_large",
150
- message: "\u8BF7\u6C42\u5185\u5BB9\u8FC7\u5927\uFF1A\u8BF7\u51CF\u5C11\u4E00\u6B21\u53D1\u9001\u7684\u6D88\u606F\u3001\u6587\u4EF6\u6216\u5DE5\u5177\u7ED3\u679C\u3002",
151
- code,
152
- status,
153
- retryable: true,
154
- actions: [...CONTEXT_TOO_LARGE_ACTIONS]
155
- };
156
- case 401:
157
- return {
158
- kind: "auth",
159
- message: code === "AUTH_TOKEN_EXPIRED" ? "\u767B\u5F55\u72B6\u6001\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u5148\u767B\u51FA\u540E\u91CD\u65B0\u767B\u5F55" : code === "AUTH_ACCOUNT_INVALID" ? "\u8D26\u6237\u65E0\u6548\u6216\u5DF2\u88AB\u505C\u7528\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458" : code === "AUTH_NO_TOKEN" ? "\u672A\u68C0\u6D4B\u5230\u767B\u5F55\u72B6\u6001\uFF0C\u8BF7\u5148\u767B\u5F55" : code === "AUTH_INVALID_TOKEN" ? "\u767B\u5F55\u51ED\u8BC1\u65E0\u6548\uFF0C\u8BF7\u5148\u767B\u51FA\u540E\u91CD\u65B0\u767B\u5F55" : code === "AUTH_TOKEN_NOT_ACTIVE" ? "\u4EE4\u724C\u5C1A\u672A\u751F\u6548\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5" : errorMessage && errorMessage !== `\u72B6\u6001\u7801 401 Unauthorized` ? `\u8BA4\u8BC1\u9519\u8BEF: ${truncateErrorMessage(errorMessage)}` : "\u8EAB\u4EFD\u9A8C\u8BC1\u5931\u8D25\uFF0C\u8BF7\u5148\u767B\u51FA\u540E\u91CD\u65B0\u767B\u5F55",
160
- code,
161
- status,
162
- retryable: true,
163
- actions: ["retry"]
164
- };
165
- case 503:
166
- return {
167
- kind: "server",
168
- message: errorMessage && errorMessage !== `\u72B6\u6001\u7801 503 Service Unavailable` ? truncateErrorMessage(errorMessage) : "\u670D\u52A1\u6682\u65F6\u4E0D\u53EF\u7528\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5",
169
- code,
170
- status,
171
- retryable: true,
172
- actions: ["retry"]
173
- };
174
- case 504:
175
- return {
176
- kind: "timeout",
177
- message: "\u8BF7\u6C42\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5",
178
- code,
179
- status,
180
- retryable: true,
181
- actions: ["retry"]
182
- };
183
- // 402 Payment Required(LithosAI/OpenAI 兼容网关的余额耗尽)。此前无 case,
184
- // 落进 default(generic + retryable:true + 重试按钮),误导用户重发。
185
- case 402:
186
- return {
187
- kind: "quota",
188
- message: QUOTA_EXHAUSTED_MESSAGE,
189
- code,
190
- status,
191
- // 余额耗尽重发无效:上游亦带 x-should-retry:false。
192
- retryable: false
193
- };
194
- default:
195
- if (isQuotaExhaustedError(status, errorMessage, body, code)) {
196
- return {
197
- kind: "quota",
198
- message: QUOTA_EXHAUSTED_MESSAGE,
199
- code,
200
- status,
201
- retryable: false
202
- };
203
- }
204
- return {
205
- kind: "generic",
206
- message: `API\u8BF7\u6C42\u5931\u8D25: ${truncateErrorMessage(errorMessage)}`,
207
- code,
208
- status,
209
- retryable: true,
210
- actions: ["retry"]
211
- };
212
- }
213
- }
214
- async function parseApiErrorInfo(response) {
215
- const errorBody = await response.text();
216
- let errorMessage = `\u72B6\u6001\u7801 ${response.status} ${response.statusText}`;
217
- let errorCode = `E${response.status}`;
218
- try {
219
- const errorJson = JSON.parse(errorBody);
220
- errorMessage = errorJson?.error?.message || errorJson?.message || errorJson?.msg || errorBody || errorMessage;
221
- errorCode = errorJson?.error?.code || errorJson?.code || errorCode;
222
- } catch (_e) {
223
- if (errorBody) {
224
- errorMessage = errorBody;
225
- }
226
- }
227
- return classifyApiError({
228
- status: response.status,
229
- statusText: response.statusText,
230
- message: errorMessage,
231
- body: errorBody,
232
- code: errorCode
233
- });
234
- }
235
- async function parseApiError(response) {
236
- return (await parseApiErrorInfo(response)).message;
237
- }
238
- var UPSTREAM_AUTH_FAILURE_MESSAGE = "\u4E0A\u6E38\u9274\u6743\u5931\u8D25\uFF08401/403\uFF09\u3002\u82E5\u4F7F\u7528\u5E73\u53F0\u6258\u7BA1\u6A21\u578B\uFF0C\u8FD9\u662F\u5E73\u53F0\u4FA7\u51ED\u636E\u95EE\u9898\u3001\u4E0D\u662F\u4F60\u7684\u914D\u7F6E\u95EE\u9898\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\uFF1B\u82E5\u4F7F\u7528\u81EA\u5DF1\u7684 API Key\uFF0C\u8BF7\u68C0\u67E5\u8BE5 Key \u662F\u5426\u6709\u6548\u3002\u91CD\u590D\u53D1\u9001\u4E0D\u4F1A\u89E3\u51B3\u6B64\u95EE\u9898\u3002";
239
- function classifyGenerationError(data, status) {
240
- const error = data?.error ?? data;
241
- const upstreamStatus = error?.status ?? data?.status;
242
- if (status === void 0 && typeof upstreamStatus === "number") status = upstreamStatus;
243
- const rawCode = error?.code ?? data?.code;
244
- const code = typeof rawCode === "string" && /^[a-zA-Z0-9_.:-]{1,80}$/.test(rawCode) && !/^(sk-|Bearer|AIza)/i.test(rawCode) ? rawCode : void 0;
245
- const message = typeof error?.message === "string" ? error.message : typeof error?.msg === "string" ? error.msg : typeof data === "string" ? data : "";
246
- const evidence = `${code ?? ""} ${message}`;
247
- let category = "config_protocol";
248
- if (/content[_ -]filter|content[_ -]policy|safety[_ -](?:violation|blocked)|policy[_ -]violation|prohibited[_ -]content/i.test(evidence)) {
249
- category = "policy";
250
- } else if (isQuotaExhaustedError(status ?? 0, evidence, code)) {
251
- category = "quota";
252
- } else if (/thought_signature|reasoning_effort|not supported|invalid[_ -](?:request|argument)|authentication|api[_ -]key/i.test(evidence) || status === 401 || status === 403) {
253
- category = "config_protocol";
254
- } else if (code === "EMPTY_RESPONSE" || /空响应|empty response/i.test(message)) {
255
- category = "empty";
256
- } else if (status === 408 || status === 429 || status !== void 0 && status >= 500 || /timeout|timed out|秒内没有返回新内容|network|fetch failed|failed to fetch|ECONNRESET|ECONNREFUSED|EPIPE|socket hang up|connection (?:reset|closed)|rate[_ -]limit|overloaded|temporarily unavailable|internal_server_error|service_unavailable/i.test(evidence)) {
257
- category = "transient";
258
- }
259
- const authFailure = status === 401 || status === 403 || /authentication|unauthori[sz]ed|forbidden|invalid[_ -]api[_ -]key|api[_ -]key (?:invalid|revoked)/i.test(
260
- evidence
261
- );
262
- const messages = {
263
- config_protocol: authFailure ? UPSTREAM_AUTH_FAILURE_MESSAGE : "\u6A21\u578B\u914D\u7F6E\u6216\u5DE5\u5177\u901A\u4FE1\u4E0D\u517C\u5BB9\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\u68C0\u67E5\u914D\u7F6E\uFF1B\u91CD\u590D\u53D1\u9001\u4E0D\u4F1A\u89E3\u51B3\u6B64\u95EE\u9898\u3002",
264
- empty: "\u6A21\u578B\u8FD4\u56DE\u4E86\u7A7A\u54CD\u5E94\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\u68C0\u67E5\u670D\u52A1\u54CD\u5E94\u3002",
265
- policy: "\u670D\u52A1\u5546\u7684\u5185\u5BB9\u5B89\u5168\u89C4\u5219\u963B\u6B62\u4E86\u672C\u6B21\u8BF7\u6C42\u3002\u8BF7\u68C0\u67E5\u8BF7\u6C42\u662F\u5426\u7B26\u5408\u5176\u89C4\u5219\uFF1B\u4E0D\u4F1A\u81EA\u52A8\u91CD\u8BD5\u6216\u6539\u5199\u5185\u5BB9\u3002",
266
- quota: QUOTA_EXHAUSTED_MESSAGE,
267
- transient: "\u6A21\u578B\u670D\u52A1\u6682\u65F6\u4E0D\u53EF\u7528\u3002\u4F60\u53EF\u4EE5\u7A0D\u540E\u624B\u52A8\u91CD\u8BD5\u540C\u4E00\u6A21\u578B\uFF08\u65B0\u8BF7\u6C42\u53EF\u80FD\u4EA7\u751F\u8D39\u7528\uFF09\u3002"
268
- };
269
- return {
270
- category,
271
- message: messages[category],
272
- retryable: category === "transient",
273
- actions: category === "transient" ? ["retry"] : [],
274
- diagnostic: { ...extractErrorDiagnostics(data, status) }
275
- };
276
- }
277
-
278
61
  // packages/ai/chat/serverProxyRetry.ts
279
62
  var DEFAULT_SERVER_PROXY_RETRY_AFTER_MS = 1500;
280
63
  var MAX_SERVER_PROXY_RETRIES = 2;
@@ -464,12 +247,12 @@ var resolveReferenceAssets = async (references, dispatch) => {
464
247
  }
465
248
  const resolvedSkillLinks = await resolveSkillGraphFromRoots({
466
249
  roots: [
467
- ...Array.from(hardSkillKeys).map((identifier2) => ({ identifier: identifier2, mode: "required" })),
468
- ...Array.from(softSkillKeys).map((identifier2) => ({ identifier: identifier2, mode: "recommended" }))
250
+ ...Array.from(hardSkillKeys).map((identifier) => ({ identifier, mode: "required" })),
251
+ ...Array.from(softSkillKeys).map((identifier) => ({ identifier, mode: "recommended" }))
469
252
  ],
470
- loadPage: async (identifier2) => {
471
- const loaded = await loadContentsByKeys([identifier2], dispatch, contentByKey);
472
- return loaded.get(identifier2) ?? null;
253
+ loadPage: async (identifier) => {
254
+ const loaded = await loadContentsByKeys([identifier], dispatch, contentByKey);
255
+ return loaded.get(identifier) ?? null;
473
256
  },
474
257
  contentByKey
475
258
  });
@@ -532,12 +315,12 @@ var resolveToolsFromKeys = async (keys, dispatch, preloaded) => {
532
315
  }
533
316
  const resolvedSkillLinks = await resolveSkillGraphFromRoots({
534
317
  roots: [
535
- ...Array.from(hardSkillKeys).map((identifier2) => ({ identifier: identifier2, mode: "required" })),
536
- ...Array.from(softSkillKeys).map((identifier2) => ({ identifier: identifier2, mode: "recommended" }))
318
+ ...Array.from(hardSkillKeys).map((identifier) => ({ identifier, mode: "required" })),
319
+ ...Array.from(softSkillKeys).map((identifier) => ({ identifier, mode: "recommended" }))
537
320
  ],
538
- loadPage: async (identifier2) => {
539
- const loaded = await loadContentsByKeys([identifier2], dispatch, contentByKey);
540
- return loaded.get(identifier2) ?? null;
321
+ loadPage: async (identifier) => {
322
+ const loaded = await loadContentsByKeys([identifier], dispatch, contentByKey);
323
+ return loaded.get(identifier) ?? null;
541
324
  },
542
325
  contentByKey
543
326
  });
@@ -900,13 +683,6 @@ var fetchReferenceContents = async (references, dispatch, options = { format: "s
900
683
  };
901
684
 
902
685
  export {
903
- extractErrorDiagnostics,
904
- CONTEXT_OVERFLOW_ACTIONS,
905
- CONTEXT_TOO_LARGE_ACTIONS,
906
- isContextOverflowText,
907
- classifyApiError,
908
- parseApiError,
909
- classifyGenerationError,
910
686
  performServerProxyFetchWithRetry,
911
687
  fetchReferenceContents,
912
688
  mergeReferences,
@@ -1,74 +1,6 @@
1
- // packages/ai/tools/agent/quotaCircuitBreaker.ts
2
- var QUOTA_ERROR_PATTERNS = [
3
- /429/,
4
- /quota/i,
5
- /access_terminated_error/i,
6
- /(?:weekly|monthly)\s*(?:\([^)]*\)\s*)?usage\s+limit/i,
7
- /rate\s*limit/i,
8
- /too\s*many\s*requests/i,
9
- /额度/,
10
- /上限/,
11
- /用尽/,
12
- /CliProviderQuotaError/i
13
- ];
14
- function isCliProviderQuotaErrorShape(error) {
15
- if (!error || typeof error !== "object") return false;
16
- const e = error;
17
- return e.name === "CliProviderQuotaError" || typeof e.message === "string" && e.message.startsWith("[QUOTA_LIMITED:");
18
- }
19
- function isQuotaExhaustedError(error) {
20
- if (!error) return false;
21
- if (isCliProviderQuotaErrorShape(error)) return true;
22
- if (error instanceof Error) {
23
- return QUOTA_ERROR_PATTERNS.some((pattern) => pattern.test(error.message));
24
- }
25
- if (typeof error === "string") {
26
- return QUOTA_ERROR_PATTERNS.some((pattern) => pattern.test(error));
27
- }
28
- const maybeStatus = error.status;
29
- const maybeStatusCode = error.statusCode;
30
- const status = typeof maybeStatus === "number" ? maybeStatus : maybeStatusCode;
31
- if (status === 429) return true;
32
- if (status === 403) {
33
- const message = extractMessage(error);
34
- return QUOTA_ERROR_PATTERNS.some((pattern) => pattern.test(message));
35
- }
36
- return false;
37
- }
38
- function extractMessage(error) {
39
- if (typeof error === "string") return error;
40
- if (error instanceof Error) return error.message;
41
- if (error && typeof error === "object") {
42
- const m = error.message;
43
- return typeof m === "string" ? m : "";
44
- }
45
- return "";
46
- }
47
- function parseResetsInMs(text) {
48
- if (!text) return void 0;
49
- const sanitized = text.replace(/\btrace[\s_-]?id\b[^)\n]*/gi, " ").replace(/\b[0-9a-f]{16,}\b/gi, " ");
50
- const unitMs = (n, unit) => {
51
- if (/^d/.test(unit)) return n * 24 * 3600 * 1e3;
52
- if (/^h/.test(unit)) return n * 3600 * 1e3;
53
- if (/^m/.test(unit)) return n * 60 * 1e3;
54
- if (/^s/.test(unit)) return n * 1e3;
55
- return NaN;
56
- };
57
- const re = /(\d+)\s*(d(?:ay|ays)?|h(?:r|rs|our|ours)?|m(?:in|ins|inute|inutes)?|s(?:ec|ecs|econd|econds)?)/gi;
58
- const MAX_SINGLE_MATCH_MS = 7 * 24 * 3600 * 1e3;
59
- let totalMs = 0;
60
- let matched = false;
61
- let m;
62
- while ((m = re.exec(sanitized)) !== null) {
63
- const ms = unitMs(Number(m[1]), m[2]);
64
- if (!Number.isFinite(ms) || ms > MAX_SINGLE_MATCH_MS) continue;
65
- totalMs += ms;
66
- matched = true;
67
- }
68
- return matched ? totalMs : void 0;
69
- }
70
- var DEFAULT_QUOTA_BREAKER_MS = 6 * 3600 * 1e3;
71
- var DEFAULT_AGENT_NOT_FOUND_BREAKER_MS = 15 * 60 * 1e3;
1
+ import {
2
+ parseResetsInMs
3
+ } from "./chunk-EWQ3HGNZ.js";
72
4
 
73
5
  // packages/ai/agent/quotaSnapshot.ts
74
6
  function normalizeHeaders(headers) {
@@ -571,7 +503,7 @@ function readResetTimestamp(body, now) {
571
503
  }
572
504
  }
573
505
  const details = !Array.isArray(error.details) && error.details && typeof error.details === "object" ? error.details : void 0;
574
- const raw = error.resets_at ?? error.resetsAt ?? details?.resets_at ?? details?.resetsAt;
506
+ const raw = error.resets_at ?? error.resetsAt ?? error.reset_at ?? error.resetAt ?? details?.resets_at ?? details?.resetsAt ?? details?.reset_at ?? details?.resetAt;
575
507
  if (typeof raw === "number" && Number.isFinite(raw)) {
576
508
  return raw > 1e12 ? raw : raw * 1e3;
577
509
  }
@@ -790,8 +722,8 @@ function inspectQuotaWindowExhaustion(window, now) {
790
722
  } else if (typeof w.resets_at === "number" && Number.isFinite(w.resets_at)) {
791
723
  resetAt = w.resets_at >= 1e12 ? w.resets_at : w.resets_at * 1e3;
792
724
  }
793
- const hasResetAt = typeof resetAt === "number" && Number.isFinite(resetAt);
794
- if (hasResetAt && resetAt <= now) {
725
+ const resetAtIsFinite = typeof resetAt === "number" && Number.isFinite(resetAt);
726
+ if (resetAtIsFinite && resetAt !== void 0 && resetAt <= now) {
795
727
  return {
796
728
  isExhausted: true,
797
729
  isActive: false,
@@ -802,7 +734,7 @@ function inspectQuotaWindowExhaustion(window, now) {
802
734
  utilizationHigh: isHigh
803
735
  };
804
736
  }
805
- if (hasResetAt && resetAt > now) {
737
+ if (resetAtIsFinite && resetAt !== void 0 && resetAt > now) {
806
738
  return {
807
739
  isExhausted: true,
808
740
  isActive: true,
@@ -860,7 +792,7 @@ function classifyFailureSubclass(input, now = Date.now()) {
860
792
  } else if (input && typeof input === "object") {
861
793
  const rec = input;
862
794
  status = typeof rec.status === "number" ? rec.status : typeof rec.statusCode === "number" ? rec.statusCode : void 0;
863
- rawMessage = typeof rec.message === "string" ? rec.message : typeof rec.message === "string" ? rec.message : "";
795
+ rawMessage = typeof rec.message === "string" ? rec.message : "";
864
796
  body = rec.body ?? ("status" in rec || "message" in rec ? void 0 : input);
865
797
  headers = rec.headers;
866
798
  quota = rec.quota;
@@ -901,8 +833,6 @@ function classifyFailureSubclass(input, now = Date.now()) {
901
833
  }
902
834
 
903
835
  export {
904
- QUOTA_ERROR_PATTERNS,
905
- isQuotaExhaustedError,
906
836
  extractQuotaSnapshot,
907
837
  formatQuotaSummary,
908
838
  DEFAULT_PROVIDER_RETRY_MS,
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  isTombstoneRecord
3
- } from "./chunk-SVYO6AO7.js";
3
+ } from "./chunk-BV3FLP2L.js";
4
+ import {
5
+ dialogMessageRange
6
+ } from "./chunk-OJKUU3LP.js";
4
7
  import {
5
8
  isRecord
6
9
  } from "./chunk-KUG52IAP.js";
7
- import {
8
- dialogMessageRange
9
- } from "./chunk-XJWWBO34.js";
10
10
 
11
11
  // packages/chat/messages/fetchMessages.ts
12
12
  function isUnboundedMessageLimit(limit) {
@@ -0,0 +1,99 @@
1
+ import {
2
+ BUILTIN_NOLO_AGENT_KEY,
3
+ builtinAgentCatalogEntryById,
4
+ builtinRuntimeFallbackEntries,
5
+ isBuiltinPlatformAgentKey,
6
+ parseBuiltinPlatformAgentId
7
+ } from "./chunk-3IK6ILVW.js";
8
+ import {
9
+ publicAgentKey
10
+ } from "./chunk-M2EJHDJP.js";
11
+
12
+ // packages/agent-runtime/builtinPlatformAgentRoute.ts
13
+ function resolveBuiltinAgentRuntimeFields(agentKey) {
14
+ if (!isBuiltinPlatformAgentKey(agentKey)) return null;
15
+ const entry = builtinAgentCatalogEntryById(parseBuiltinPlatformAgentId(agentKey));
16
+ if (!entry) return null;
17
+ return { provider: entry.provider, model: entry.model };
18
+ }
19
+
20
+ // packages/agent-runtime/builtinPlatformAgentConfigs.ts
21
+ function buildConfig(e) {
22
+ const key = publicAgentKey(e.id);
23
+ const rawRecord = {
24
+ dbKey: key,
25
+ isPublic: true,
26
+ provider: e.provider,
27
+ model: e.model,
28
+ apiSource: e.apiSource ?? "platform",
29
+ useServerProxy: e.useServerProxy ?? true
30
+ };
31
+ if (e.hasImageOutput) rawRecord.hasImageOutput = true;
32
+ if (e.imageModel) rawRecord.imageModel = e.imageModel;
33
+ if (e.imageWorkflow) rawRecord.imageWorkflow = e.imageWorkflow;
34
+ if (e.imageConfig) rawRecord.imageConfig = e.imageConfig;
35
+ return {
36
+ key,
37
+ name: e.name,
38
+ provider: e.provider,
39
+ model: e.model,
40
+ apiSource: e.apiSource ?? "platform",
41
+ useServerProxy: e.useServerProxy ?? true,
42
+ rawRecord
43
+ };
44
+ }
45
+ var BUILTIN_PLATFORM_AGENT_CONFIGS = Object.fromEntries(
46
+ builtinRuntimeFallbackEntries().map((e) => [publicAgentKey(e.id), buildConfig(e)])
47
+ );
48
+ function resolveBuiltinPlatformAgentConfig(agentRef) {
49
+ return BUILTIN_PLATFORM_AGENT_CONFIGS[agentRef] ?? null;
50
+ }
51
+ function resolveBuiltinPlatformAgentRecord(agentRef) {
52
+ const config = resolveBuiltinPlatformAgentConfig(agentRef);
53
+ if (!config) return null;
54
+ return {
55
+ ...config.rawRecord,
56
+ dbKey: agentRef,
57
+ ...config.name ? { name: config.name } : {}
58
+ };
59
+ }
60
+ var BUILTIN_RUNTIME_EXTRA_OVERRIDES = {
61
+ [BUILTIN_NOLO_AGENT_KEY]: { reasoningEffort: "max" }
62
+ };
63
+ function applyBuiltinAgentRuntimeOverride(agentKey, record) {
64
+ const fields = resolveBuiltinAgentRuntimeFields(agentKey);
65
+ if (!fields) return record;
66
+ const extraFields = BUILTIN_RUNTIME_EXTRA_OVERRIDES[agentKey];
67
+ const extraNeedsOverride = (target) => {
68
+ if (extraFields == null || target == null || typeof target !== "object") {
69
+ return false;
70
+ }
71
+ const flat = target;
72
+ return Object.entries(extraFields).some(([key, value]) => flat[key] !== value);
73
+ };
74
+ const current = record;
75
+ const rawNeedsOverride = current.rawRecord != null && (current.rawRecord.provider !== fields.provider || current.rawRecord.model !== fields.model || extraNeedsOverride(current.rawRecord));
76
+ if (current.provider === fields.provider && current.model === fields.model && !rawNeedsOverride && !extraNeedsOverride(record)) {
77
+ return record;
78
+ }
79
+ return {
80
+ ...record,
81
+ provider: fields.provider,
82
+ model: fields.model,
83
+ ...extraFields ?? {},
84
+ ...current.rawRecord ? {
85
+ rawRecord: {
86
+ ...current.rawRecord,
87
+ provider: fields.provider,
88
+ model: fields.model,
89
+ ...extraFields ?? {}
90
+ }
91
+ } : {}
92
+ };
93
+ }
94
+
95
+ export {
96
+ resolveBuiltinPlatformAgentConfig,
97
+ resolveBuiltinPlatformAgentRecord,
98
+ applyBuiltinAgentRuntimeOverride
99
+ };
@@ -1,6 +1,3 @@
1
- import {
2
- getModelPricing
3
- } from "./chunk-INN4LTAJ.js";
4
1
  import {
5
2
  PUBLIC_DEEPSEEK_V4_FLASH_AGENT_ID,
6
3
  PUBLIC_DEEPSEEK_V4_PRO_AGENT_ID,
@@ -15,22 +12,25 @@ import {
15
12
  builtinAgentCatalogEntryById,
16
13
  catalogReleasedAtMs,
17
14
  isRetiredCatalogEntry
18
- } from "./chunk-LOEO7LRC.js";
15
+ } from "./chunk-3IK6ILVW.js";
19
16
  import {
20
17
  parsePublicAgentId,
21
18
  parseSystemAgentId,
22
19
  publicAgentKey
23
20
  } from "./chunk-M2EJHDJP.js";
21
+ import {
22
+ getModelPricing
23
+ } from "./chunk-FJK526XH.js";
24
24
  import {
25
25
  getModelConfig
26
- } from "./chunk-SM3NSZJV.js";
26
+ } from "./chunk-2UCBGYO4.js";
27
27
  import {
28
28
  isRecord
29
29
  } from "./chunk-KUG52IAP.js";
30
30
  import {
31
31
  isNoloHostedProvider,
32
32
  isPlatformHostedImageModel
33
- } from "./chunk-GOO6G4PY.js";
33
+ } from "./chunk-CKG3PRZ7.js";
34
34
 
35
35
  // packages/core/publicAgentSeeds.ts
36
36
  var AGENT_SEED_DEFAULTS = {
@@ -4,7 +4,10 @@ import {
4
4
  resolvePlatformHostedCredentialProvider,
5
5
  resolvePlatformProxyChatGatewayEndpoint,
6
6
  resolvePlatformResponsesEndpoint
7
- } from "./chunk-YUA6OAH5.js";
7
+ } from "./chunk-MDLS23JK.js";
8
+ import {
9
+ asTrimmedString
10
+ } from "./chunk-3EUW3WEO.js";
8
11
  import {
9
12
  CLI_PROVIDER_VALUES
10
13
  } from "./chunk-JRTNUU5Z.js";
@@ -12,19 +15,16 @@ import {
12
15
  CLIENT_VERSION_TOO_OLD_CODE,
13
16
  buildClientVersionGateErrorDetail,
14
17
  evaluatePlatformHostedClientVersionGate
15
- } from "./chunk-GOO6G4PY.js";
18
+ } from "./chunk-CKG3PRZ7.js";
16
19
  import {
17
20
  asTrimmedLowercaseString
18
21
  } from "./chunk-QSJ3HFEF.js";
19
- import {
20
- normalizeServerOrigin
21
- } from "./chunk-CF7PE763.js";
22
- import {
23
- asTrimmedString
24
- } from "./chunk-3EUW3WEO.js";
25
22
  import {
26
23
  asOptionalTrimmedString
27
24
  } from "./chunk-G3SUCT4W.js";
25
+ import {
26
+ normalizeServerOrigin
27
+ } from "./chunk-CF7PE763.js";
28
28
 
29
29
  // packages/agent-runtime/agentConfigOptions.ts
30
30
  function pickAgentRuntimeInferenceOptions(agentConfig) {