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
@@ -0,0 +1,230 @@
1
+ // packages/ai/chat/errorDiagnostics.ts
2
+ var record = (value) => value !== null && typeof value === "object" && !Array.isArray(value) ? value : {};
3
+ function httpOrigin(value) {
4
+ if (typeof value !== "string") return void 0;
5
+ try {
6
+ const url = new URL(value);
7
+ return url.protocol === "http:" || url.protocol === "https:" ? url.origin : void 0;
8
+ } catch {
9
+ return void 0;
10
+ }
11
+ }
12
+ 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;
13
+ function sanitizeErrorDiagnostics(value) {
14
+ const input = record(value);
15
+ const out = {};
16
+ for (const key of ["requestId", "provider", "model", "code"]) {
17
+ const safe = identifier(input[key], key === "code" ? 80 : 160);
18
+ if (safe) out[key] = safe;
19
+ }
20
+ if (typeof input.releaseSha === "string" && /^[a-fA-F0-9]{7,64}$/.test(input.releaseSha)) out.releaseSha = input.releaseSha;
21
+ const origin = httpOrigin(input.requestOrigin);
22
+ if (origin) out.requestOrigin = origin;
23
+ if (["found", "not_found", "invalid_record", "lookup_error", "not_requested"].includes(input.lookupStatus)) out.lookupStatus = input.lookupStatus;
24
+ if (typeof input.status === "number" && Number.isInteger(input.status) && input.status >= 100 && input.status <= 599) out.status = input.status;
25
+ if (["config_protocol", "empty", "policy", "quota", "transient"].includes(input.category)) out.category = input.category;
26
+ return Object.keys(out).length ? out : void 0;
27
+ }
28
+ function extractErrorDiagnostics(value, status) {
29
+ const envelope = record(value);
30
+ const error = record(envelope.error ?? value);
31
+ const diagnostics = record(record(error.details).diagnostics);
32
+ return sanitizeErrorDiagnostics({ ...diagnostics, code: error.code, status: status ?? error.status });
33
+ }
34
+
35
+ // packages/ai/chat/parseApiError.ts
36
+ var CONTEXT_OVERFLOW_ACTIONS = [
37
+ "compact-and-retry",
38
+ "new-dialog",
39
+ "switch-model",
40
+ "retry"
41
+ ];
42
+ var CONTEXT_TOO_LARGE_ACTIONS = [
43
+ "new-dialog",
44
+ "switch-model",
45
+ "retry"
46
+ ];
47
+ var truncateErrorMessage = (message, maxChars = 320) => message.length <= maxChars ? message : `${message.slice(0, maxChars)}\u2026`;
48
+ 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(
49
+ message
50
+ );
51
+ var isQuotaExhaustedError = (status, ...texts) => status === 402 || /insufficient[_\s-]?(?:quota|balance|credits)|余额不足|wallet\s+balance\s+is\s+insufficient|payment[_ ]required/i.test(
52
+ texts.filter((t) => typeof t === "string").join(" ")
53
+ );
54
+ 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";
55
+ function classifyApiError(input) {
56
+ const { status, message, body, code } = input;
57
+ const errorMessage = message;
58
+ let defaultMessage = `\u72B6\u6001\u7801 ${status} ${input.statusText ?? ""}`;
59
+ switch (status) {
60
+ case 400:
61
+ if (isContextOverflowText(errorMessage) || isContextOverflowText(body) || code === "UPSTREAM_400") {
62
+ return {
63
+ kind: "context_overflow",
64
+ 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",
65
+ code,
66
+ status,
67
+ retryable: true,
68
+ actions: [...CONTEXT_OVERFLOW_ACTIONS]
69
+ };
70
+ }
71
+ if (code === "MISSING_PROVIDER_API_KEY") {
72
+ return {
73
+ kind: "generic",
74
+ message: truncateErrorMessage(errorMessage),
75
+ code,
76
+ status,
77
+ retryable: false
78
+ };
79
+ }
80
+ if (errorMessage && errorMessage !== defaultMessage) {
81
+ return {
82
+ kind: "generic",
83
+ message: `\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF: ${truncateErrorMessage(errorMessage)}`,
84
+ code,
85
+ status,
86
+ retryable: false
87
+ };
88
+ }
89
+ return { kind: "generic", message: "\u8BF7\u6C42\u53C2\u6570\u9519\u8BEF\uFF0C\u8BF7\u68C0\u67E5\u8F93\u5165", code, status, retryable: false };
90
+ case 413:
91
+ return {
92
+ kind: "context_too_large",
93
+ 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",
94
+ code,
95
+ status,
96
+ retryable: true,
97
+ actions: [...CONTEXT_TOO_LARGE_ACTIONS]
98
+ };
99
+ case 401:
100
+ return {
101
+ kind: "auth",
102
+ 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",
103
+ code,
104
+ status,
105
+ retryable: true,
106
+ actions: ["retry"]
107
+ };
108
+ case 503:
109
+ return {
110
+ kind: "server",
111
+ message: errorMessage && errorMessage !== `\u72B6\u6001\u7801 503 Service Unavailable` ? truncateErrorMessage(errorMessage) : "\u670D\u52A1\u6682\u65F6\u4E0D\u53EF\u7528\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5",
112
+ code,
113
+ status,
114
+ retryable: true,
115
+ actions: ["retry"]
116
+ };
117
+ case 504:
118
+ return {
119
+ kind: "timeout",
120
+ message: "\u8BF7\u6C42\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5",
121
+ code,
122
+ status,
123
+ retryable: true,
124
+ actions: ["retry"]
125
+ };
126
+ // 402 Payment Required(LithosAI/OpenAI 兼容网关的余额耗尽)。此前无 case,
127
+ // 落进 default(generic + retryable:true + 重试按钮),误导用户重发。
128
+ case 402:
129
+ return {
130
+ kind: "quota",
131
+ message: QUOTA_EXHAUSTED_MESSAGE,
132
+ code,
133
+ status,
134
+ // 余额耗尽重发无效:上游亦带 x-should-retry:false。
135
+ retryable: false
136
+ };
137
+ default:
138
+ if (isQuotaExhaustedError(status, errorMessage, body, code)) {
139
+ return {
140
+ kind: "quota",
141
+ message: QUOTA_EXHAUSTED_MESSAGE,
142
+ code,
143
+ status,
144
+ retryable: false
145
+ };
146
+ }
147
+ return {
148
+ kind: "generic",
149
+ message: `API\u8BF7\u6C42\u5931\u8D25: ${truncateErrorMessage(errorMessage)}`,
150
+ code,
151
+ status,
152
+ retryable: true,
153
+ actions: ["retry"]
154
+ };
155
+ }
156
+ }
157
+ async function parseApiErrorInfo(response) {
158
+ const errorBody = await response.text();
159
+ let errorMessage = `\u72B6\u6001\u7801 ${response.status} ${response.statusText}`;
160
+ let errorCode = `E${response.status}`;
161
+ try {
162
+ const errorJson = JSON.parse(errorBody);
163
+ errorMessage = errorJson?.error?.message || errorJson?.message || errorJson?.msg || errorBody || errorMessage;
164
+ errorCode = errorJson?.error?.code || errorJson?.code || errorCode;
165
+ } catch (_e) {
166
+ if (errorBody) {
167
+ errorMessage = errorBody;
168
+ }
169
+ }
170
+ return classifyApiError({
171
+ status: response.status,
172
+ statusText: response.statusText,
173
+ message: errorMessage,
174
+ body: errorBody,
175
+ code: errorCode
176
+ });
177
+ }
178
+ async function parseApiError(response) {
179
+ return (await parseApiErrorInfo(response)).message;
180
+ }
181
+ 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";
182
+ function classifyGenerationError(data, status) {
183
+ const error = data?.error ?? data;
184
+ const upstreamStatus = error?.status ?? data?.status;
185
+ if (status === void 0 && typeof upstreamStatus === "number") status = upstreamStatus;
186
+ const rawCode = error?.code ?? data?.code;
187
+ const code = typeof rawCode === "string" && /^[a-zA-Z0-9_.:-]{1,80}$/.test(rawCode) && !/^(sk-|Bearer|AIza)/i.test(rawCode) ? rawCode : void 0;
188
+ const message = typeof error?.message === "string" ? error.message : typeof error?.msg === "string" ? error.msg : typeof data === "string" ? data : "";
189
+ const evidence = `${code ?? ""} ${message}`;
190
+ let category = "config_protocol";
191
+ if (/content[_ -]filter|content[_ -]policy|safety[_ -](?:violation|blocked)|policy[_ -]violation|prohibited[_ -]content/i.test(evidence)) {
192
+ category = "policy";
193
+ } else if (isQuotaExhaustedError(status ?? 0, evidence, code)) {
194
+ category = "quota";
195
+ } else if (/thought_signature|reasoning_effort|not supported|invalid[_ -](?:request|argument)|authentication|api[_ -]key/i.test(evidence) || status === 401 || status === 403) {
196
+ category = "config_protocol";
197
+ } else if (code === "EMPTY_RESPONSE" || /空响应|empty response/i.test(message)) {
198
+ category = "empty";
199
+ } 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)) {
200
+ category = "transient";
201
+ }
202
+ const authFailure = status === 401 || status === 403 || /authentication|unauthori[sz]ed|forbidden|invalid[_ -]api[_ -]key|api[_ -]key (?:invalid|revoked)/i.test(
203
+ evidence
204
+ );
205
+ const messages = {
206
+ 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",
207
+ empty: "\u6A21\u578B\u8FD4\u56DE\u4E86\u7A7A\u54CD\u5E94\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\u68C0\u67E5\u670D\u52A1\u54CD\u5E94\u3002",
208
+ 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",
209
+ quota: QUOTA_EXHAUSTED_MESSAGE,
210
+ 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"
211
+ };
212
+ return {
213
+ category,
214
+ message: messages[category],
215
+ retryable: category === "transient",
216
+ actions: category === "transient" ? ["retry"] : [],
217
+ diagnostic: { ...extractErrorDiagnostics(data, status) }
218
+ };
219
+ }
220
+
221
+ export {
222
+ extractErrorDiagnostics,
223
+ CONTEXT_OVERFLOW_ACTIONS,
224
+ CONTEXT_TOO_LARGE_ACTIONS,
225
+ isContextOverflowText,
226
+ isQuotaExhaustedError,
227
+ classifyApiError,
228
+ parseApiError,
229
+ classifyGenerationError
230
+ };
@@ -4,13 +4,7 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __getProtoOf = Object.getPrototypeOf;
6
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
8
- get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
9
- }) : x)(function(x) {
10
- if (typeof require !== "undefined") return require.apply(this, arguments);
11
- throw Error('Dynamic require of "' + x + '" is not supported');
12
- });
13
- var __commonJS = (cb, mod) => function __require2() {
7
+ var __commonJS = (cb, mod) => function __require() {
14
8
  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
15
9
  };
16
10
  var __export = (target, all) => {
@@ -35,7 +29,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
35
29
  ));
36
30
 
37
31
  export {
38
- __require,
39
32
  __commonJS,
40
33
  __export,
41
34
  __toESM
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  formatImageSummary,
3
3
  readLocalImage
4
- } from "./chunk-Y63ZSOR6.js";
4
+ } from "./chunk-AL3TYDIF.js";
5
5
  import {
6
6
  toErrorMessage
7
7
  } from "./chunk-HNMXYYJR.js";
@@ -690,6 +690,7 @@ export {
690
690
  NOLO_CONNECTOR_EXTENSION_IDS,
691
691
  NOLO_CHROME_CONNECTOR_PROTOCOL_VERSION,
692
692
  NOLO_CHROME_CONNECTOR_DEFAULT_PORTS,
693
+ validateChromeConnectorPayload,
693
694
  createChromeConnectorClient,
694
695
  REQUIRED_CHROME_CONNECTOR_FEATURES,
695
696
  createChromeConnectorClientResolver,
@@ -1,16 +1,12 @@
1
1
  import {
2
- resolveBuiltinCapability,
3
- resolveBuiltinSkillEntry
4
- } from "./chunk-WRYQ35LQ.js";
2
+ WORKFLOW_GUIDANCE_SKILL_SLUGS
3
+ } from "./chunk-PJCIP64Z.js";
5
4
  import {
6
5
  noloAgentId
7
- } from "./chunk-Y6ORVLSS.js";
6
+ } from "./chunk-7ET2U67U.js";
8
7
  import {
9
8
  normalizeServerOrigin
10
9
  } from "./chunk-CF7PE763.js";
11
- import {
12
- asTrimmedNonEmptyStringArray
13
- } from "./chunk-I42VC5KR.js";
14
10
 
15
11
  // packages/ai/policy/types.ts
16
12
  var DEFAULT_AGENT_BASE_POLICY = {
@@ -84,71 +80,6 @@ var normalizeSystemBuiltinSkills = (value, defaults) => {
84
80
  return result;
85
81
  };
86
82
 
87
- // packages/ai/tools/agentSkillConfig.ts
88
- var MODES = [
89
- "required",
90
- "recommended",
91
- "disabled"
92
- ];
93
- var DEFAULT_RECOMMENDED_SKILL_SLUGS = [
94
- "worktree-isolation",
95
- "systematic-investigation",
96
- "show-me",
97
- // 凭据管理:仓库已有 nolo secret(set/list/run/bind),但技能发现只扫
98
- // `.agents/skills`,内置的 secrets-manager 不会出现在"可用技能"里。放进默认
99
- // 提示名单让它至少以一行提示出现(不授工具、不放宽权限)。
100
- "secrets-manager"
101
- ];
102
- var asMode = (value) => typeof value === "string" && MODES.includes(value) ? value : null;
103
- var resolveAgentSkillConfig = (source) => {
104
- const out = {};
105
- const skills = source?.skills;
106
- if (skills && typeof skills === "object" && !Array.isArray(skills)) {
107
- for (const [rawSlug, rawMode] of Object.entries(skills)) {
108
- const slug = typeof rawSlug === "string" ? rawSlug.trim() : "";
109
- const mode = asMode(rawMode);
110
- if (slug && mode) out[slug] = mode;
111
- }
112
- return out;
113
- }
114
- for (const slug of asTrimmedNonEmptyStringArray(source?.enabledPacks) ?? []) {
115
- out[slug] = "required";
116
- }
117
- return out;
118
- };
119
- var resolveAgentRequiredPackIds = (source) => {
120
- const config = resolveAgentSkillConfig(source);
121
- return Object.keys(config).filter((slug) => config[slug] === "required");
122
- };
123
- var resolveAgentRecommendedSkillNames = (source, lookup) => {
124
- const config = resolveAgentSkillConfig(source);
125
- const resolve = lookup ?? defaultSkillTitleLookup;
126
- const seen = /* @__PURE__ */ new Set();
127
- const out = [];
128
- const push = (slug) => {
129
- const title = resolve(slug)?.title || slug;
130
- if (seen.has(title)) return;
131
- seen.add(title);
132
- out.push(title);
133
- };
134
- for (const slug of Object.keys(config)) {
135
- if (config[slug] !== "recommended") continue;
136
- push(slug);
137
- }
138
- for (const slug of DEFAULT_RECOMMENDED_SKILL_SLUGS) {
139
- if (Object.hasOwn(config, slug)) continue;
140
- push(slug);
141
- }
142
- return out;
143
- };
144
- var defaultSkillTitleLookup = (slug) => {
145
- const cap = resolveBuiltinCapability(slug);
146
- if (cap) return { title: cap.title };
147
- const skill = resolveBuiltinSkillEntry(slug);
148
- return skill ? { title: skill.title } : null;
149
- };
150
- var isAgentSkillDisabled = (source, slug) => resolveAgentSkillConfig(source)[slug] === "disabled";
151
-
152
83
  // packages/ai/skills/userPromptSkills.ts
153
84
  var RECOMMENDED_PROMPT_SKILL_SLUGS = ["ub-mode"];
154
85
  var ALLOWED_PROMPT_SKILL_SLUGS = new Set(
@@ -174,6 +105,10 @@ function normalizeEnabledPromptSkills(value) {
174
105
  }
175
106
 
176
107
  // packages/ai/skills/userSkills.ts
108
+ var NEW_ACCOUNT_DEFAULT_WORKFLOW_SKILLS = WORKFLOW_GUIDANCE_SKILL_SLUGS;
109
+ function isAccountOnDemandWorkflowSkill(slug) {
110
+ return typeof slug === "string" && NEW_ACCOUNT_DEFAULT_WORKFLOW_SKILLS.some((candidate) => candidate === slug.trim());
111
+ }
177
112
  var SUPPORTED_USER_SKILL_SLUGS = [
178
113
  "ub-mode",
179
114
  "auto-review",
@@ -187,7 +122,9 @@ var SUPPORTED_USER_SKILL_SLUGS = [
187
122
  "code-planning",
188
123
  "coding",
189
124
  "coding-review",
190
- "android-adb"
125
+ "android-adb",
126
+ "stock-quotes",
127
+ ...NEW_ACCOUNT_DEFAULT_WORKFLOW_SKILLS
191
128
  ];
192
129
  var SUPPORTED_USER_SKILL_SLUG_SET = new Set(
193
130
  SUPPORTED_USER_SKILL_SLUGS
@@ -268,10 +205,6 @@ var normalizeAgentUpdateFieldList = (value, fallback = DEFAULT_AUTO_APPROVED_SEL
268
205
  };
269
206
 
270
207
  export {
271
- resolveAgentSkillConfig,
272
- resolveAgentRequiredPackIds,
273
- resolveAgentRecommendedSkillNames,
274
- isAgentSkillDisabled,
275
208
  DEFAULT_AGENT_BASE_POLICY,
276
209
  DEFAULT_USER_PREFERENCE_PROFILE,
277
210
  AGENT_UPDATE_FIELD_NAMES,
@@ -287,6 +220,7 @@ export {
287
220
  omitKeys,
288
221
  normalizeSystemBuiltinSkills,
289
222
  normalizeEnabledPromptSkills,
223
+ isAccountOnDemandWorkflowSkill,
290
224
  normalizeEnabledSkills,
291
225
  resolveUserEnabledSkills
292
226
  };
@@ -3,10 +3,10 @@ import {
3
3
  require_interopRequireDefault,
4
4
  require_requiredArgs,
5
5
  require_toDate
6
- } from "./chunk-MMA3LZ3W.js";
6
+ } from "./chunk-YNIYE47Z.js";
7
7
  import {
8
8
  __commonJS
9
- } from "./chunk-4VNS5WPM.js";
9
+ } from "./chunk-U67V476Y.js";
10
10
 
11
11
  // node_modules/date-fns/formatISO/index.js
12
12
  var require_formatISO = __commonJS({
@@ -1,12 +1,3 @@
1
- import {
2
- isCompiledBinary
3
- } from "./chunk-WACI5I6V.js";
4
- import {
5
- DEFAULT_NOLO_SERVER_URL
6
- } from "./chunk-OLZBQWZU.js";
7
- import {
8
- normalizeServerOrigin
9
- } from "./chunk-CF7PE763.js";
10
1
  import {
11
2
  loadProfileConfig
12
3
  } from "./chunk-R5GO3YZP.js";
@@ -15,10 +6,19 @@ import {
15
6
  } from "./chunk-4O22PGNQ.js";
16
7
  import {
17
8
  scheduleWindowsSelfUpdate
18
- } from "./chunk-INUFILG6.js";
9
+ } from "./chunk-5RKUPJYL.js";
19
10
  import {
20
11
  t
21
- } from "./chunk-VNYYOX3V.js";
12
+ } from "./chunk-OB6DVWPF.js";
13
+ import {
14
+ isCompiledBinary
15
+ } from "./chunk-2THCNKE4.js";
16
+ import {
17
+ DEFAULT_NOLO_SERVER_URL
18
+ } from "./chunk-OLZBQWZU.js";
19
+ import {
20
+ normalizeServerOrigin
21
+ } from "./chunk-CF7PE763.js";
22
22
 
23
23
  // packages/cli/updateCommands.ts
24
24
  import { existsSync, readFileSync, accessSync, constants } from "node:fs";
@@ -443,13 +443,15 @@ function compareCliVersions(a, b) {
443
443
  }
444
444
  return 0;
445
445
  }
446
- async function checkForCliUpdate(currentVersion, serverUrl, options = {}) {
446
+ async function probeCliUpdate(currentVersion, serverUrl, options = {}) {
447
447
  const env = options.env ?? process.env;
448
448
  if ((env[NOLO_UPDATE_CHECK_KILL_SWITCH] ?? process.env[NOLO_UPDATE_CHECK_KILL_SWITCH]) === "1") {
449
- return null;
449
+ return { kind: "unknown", reason: "disabled" };
450
450
  }
451
- if (!currentVersion || !parseCliVersion(currentVersion)) return null;
452
451
  const channel = getCliInstallChannel(serverUrl);
452
+ if (!currentVersion || !parseCliVersion(currentVersion)) {
453
+ return { kind: "unknown", reason: "unparsable-version" };
454
+ }
453
455
  const fetchImpl = options.fetchImpl ?? fetch;
454
456
  const timeoutMs = options.timeoutMs ?? 2e3;
455
457
  try {
@@ -460,17 +462,24 @@ async function checkForCliUpdate(currentVersion, serverUrl, options = {}) {
460
462
  headers: { accept: "application/json" }
461
463
  }
462
464
  );
463
- if (!res.ok) return null;
465
+ if (!res.ok) return { kind: "unknown", reason: "network" };
464
466
  const data = await res.json();
465
467
  const latestVersion = data.version;
466
- if (!latestVersion || !parseCliVersion(latestVersion) || compareCliVersions(latestVersion, currentVersion) <= 0) {
467
- return null;
468
+ if (!latestVersion || !parseCliVersion(latestVersion)) {
469
+ return { kind: "unknown", reason: "invalid-payload" };
470
+ }
471
+ if (compareCliVersions(latestVersion, currentVersion) <= 0) {
472
+ return { kind: "current", channel };
468
473
  }
469
- return { latestVersion, channel };
474
+ return { kind: "available", latestVersion, channel };
470
475
  } catch {
471
- return null;
476
+ return { kind: "unknown", reason: "network" };
472
477
  }
473
478
  }
479
+ async function checkForCliUpdate(currentVersion, serverUrl, options = {}) {
480
+ const probe = await probeCliUpdate(currentVersion, serverUrl, options);
481
+ return probe.kind === "available" ? { latestVersion: probe.latestVersion, channel: probe.channel } : null;
482
+ }
474
483
  async function runSelfUpdateDetailed(outputOrOptions) {
475
484
  const options = outputOrOptions === void 0 ? {} : isRunSelfUpdateOptions(outputOrOptions) ? outputOrOptions : { output: outputOrOptions };
476
485
  if (isCompiledBinary()) {
@@ -589,6 +598,7 @@ export {
589
598
  runStandaloneBundleUpdate,
590
599
  NOLO_UPDATE_CHECK_KILL_SWITCH,
591
600
  compareCliVersions,
601
+ probeCliUpdate,
592
602
  checkForCliUpdate,
593
603
  runSelfUpdateDetailed,
594
604
  runSelfUpdate
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createSelector
3
- } from "./chunk-P5L7CXOC.js";
3
+ } from "./chunk-7Z6EW7AH.js";
4
4
  import {
5
5
  getAllServers,
6
6
  getIsDesktopApp
@@ -7,7 +7,7 @@ import {
7
7
  scheduleExistingRecordReplication,
8
8
  shouldReplaceLocalWithRemoteRecord,
9
9
  shouldReplicateLocalRecord
10
- } from "./chunk-PYRUW7XN.js";
10
+ } from "./chunk-2VUZSVAS.js";
11
11
  import {
12
12
  fetchFromClientDb,
13
13
  fetchFromServer,
@@ -16,13 +16,13 @@ import {
16
16
  } from "./chunk-AGP3YSEC.js";
17
17
  import {
18
18
  shouldReplaceWithNextRecord
19
- } from "./chunk-SVYO6AO7.js";
19
+ } from "./chunk-BV3FLP2L.js";
20
20
  import {
21
21
  isAbortError
22
22
  } from "./chunk-7DPNBQSV.js";
23
23
  import {
24
24
  isBuiltinPlatformAgentKey
25
- } from "./chunk-LOEO7LRC.js";
25
+ } from "./chunk-3IK6ILVW.js";
26
26
  import {
27
27
  NOLO_CLUSTER_SERVERS,
28
28
  normalizeKnownServerOrigin
@@ -3,10 +3,7 @@ import {
3
3
  parseFlagWithOptionalValue,
4
4
  runCloudflareOAuthLogin,
5
5
  upsertEnvVariable
6
- } from "./chunk-7OCO4TDT.js";
7
- import {
8
- defaultOpenBrowser
9
- } from "./chunk-3CGG2PAL.js";
6
+ } from "./chunk-WJVYAO6P.js";
10
7
  import {
11
8
  ANTHROPIC_OAUTH_AUTHORIZE_URL,
12
9
  ANTHROPIC_OAUTH_CALLBACK_PORT,
@@ -50,7 +47,10 @@ import {
50
47
  startCallbackServer,
51
48
  validateXAIEndpoint,
52
49
  xaiOAuthDiscovery
53
- } from "./chunk-RPQXPZZF.js";
50
+ } from "./chunk-F3GRJO4Z.js";
51
+ import {
52
+ defaultOpenBrowser
53
+ } from "./chunk-DVQH4BTR.js";
54
54
  import {
55
55
  extractGoogleValidationLink
56
56
  } from "./chunk-BMQ2MJUK.js";
@@ -60,33 +60,33 @@ import {
60
60
  detectLocalDevinCredentials,
61
61
  extractDevinToken,
62
62
  fetchAntigravityCloudCodeCompletion
63
- } from "./chunk-CTPXME7U.js";
63
+ } from "./chunk-3LMUPOHG.js";
64
+ import {
65
+ getProfileOAuthSync,
66
+ saveProfileOAuthSync
67
+ } from "./chunk-R5GO3YZP.js";
68
+ import {
69
+ t
70
+ } from "./chunk-OB6DVWPF.js";
64
71
  import {
65
72
  toErrorMessage
66
73
  } from "./chunk-HNMXYYJR.js";
74
+ import {
75
+ asTrimmedString
76
+ } from "./chunk-3EUW3WEO.js";
67
77
  import {
68
78
  isRecord
69
79
  } from "./chunk-KUG52IAP.js";
70
80
  import {
71
- parseUserIdFromAuthToken
72
- } from "./chunk-WACI5I6V.js";
73
- import {
74
- getProfileOAuthSync,
75
- saveProfileOAuthSync
76
- } from "./chunk-R5GO3YZP.js";
81
+ asOptionalFiniteNumber
82
+ } from "./chunk-WWC7I6TA.js";
77
83
  import {
78
- t
79
- } from "./chunk-VNYYOX3V.js";
84
+ parseUserIdFromAuthToken
85
+ } from "./chunk-2THCNKE4.js";
80
86
  import {
81
87
  createOAuthTokenStore,
82
88
  resolveFreshAccessToken
83
89
  } from "./chunk-G7Y4GXTY.js";
84
- import {
85
- asOptionalFiniteNumber
86
- } from "./chunk-WWC7I6TA.js";
87
- import {
88
- asTrimmedString
89
- } from "./chunk-3EUW3WEO.js";
90
90
 
91
91
  // packages/cli/oauth/flows/xai.ts
92
92
  function buildXAIAuthorizeUrl(opts) {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  generatePkcePair,
3
3
  startCallbackServer
4
- } from "./chunk-RPQXPZZF.js";
4
+ } from "./chunk-F3GRJO4Z.js";
5
5
  import {
6
6
  toErrorMessage
7
7
  } from "./chunk-HNMXYYJR.js";
@@ -4,7 +4,7 @@ import {
4
4
  openrouterModels,
5
5
  platformHostedModels,
6
6
  zaiModels
7
- } from "./chunk-GOO6G4PY.js";
7
+ } from "./chunk-CKG3PRZ7.js";
8
8
 
9
9
  // packages/ai/llm/modelAbility.ts
10
10
  var MODEL_ABILITY_TABLE = {