nolo-cli 0.213.0 → 0.222.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 (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
@@ -10,7 +10,7 @@ import {
10
10
  resolvePlatformEffectiveModel,
11
11
  toCnyCredits,
12
12
  zaiModels
13
- } from "./chunk-GOO6G4PY.js";
13
+ } from "./chunk-CKG3PRZ7.js";
14
14
 
15
15
  // packages/integrations/qwen/models.ts
16
16
  var qwenModels = [
@@ -2939,6 +2939,25 @@ var xaiModels = [
2939
2939
 
2940
2940
  // packages/ai/llm/fireworks.ts
2941
2941
  var fireworksModels = [
2942
+ {
2943
+ // 2026-11-04:Kimi 三条历史 id 统一指向这里。Fireworks 真实 id 为 kimi-k3
2944
+ // (https://app.fireworks.ai/models/fireworks/kimi-k3);价格沿用平台 Kimi K3 目录价。
2945
+ name: "accounts/fireworks/models/kimi-k3",
2946
+ displayName: "MoonshotAI: Kimi K3",
2947
+ hasVision: true,
2948
+ price: { input: 24, output: 120, cachingRead: 2.4 },
2949
+ contextWindow: 256e3,
2950
+ supportsTool: true
2951
+ },
2952
+ {
2953
+ // 2026-11-04:minimax-m3 记录迁移到这里。Fireworks 真实 id 为 minimax-m3p1-flash
2954
+ name: "accounts/fireworks/models/minimax-m3p1-flash",
2955
+ displayName: "MiniMax: MiniMax M3.1 Flash",
2956
+ hasVision: true,
2957
+ price: { input: 0.6, output: 2.4, cachingRead: 0.06 },
2958
+ contextWindow: 512e3,
2959
+ supportsTool: true
2960
+ },
2942
2961
  {
2943
2962
  name: "accounts/fireworks/models/minimax-m3",
2944
2963
  displayName: "MiniMax: MiniMax M3",
@@ -8,7 +8,7 @@ import {
8
8
  noloUploadRequest,
9
9
  noloWriteRequest,
10
10
  syncWithServers
11
- } from "./chunk-P5L7CXOC.js";
11
+ } from "./chunk-7Z6EW7AH.js";
12
12
  import {
13
13
  getAllServers,
14
14
  getIsDesktopApp
@@ -18,28 +18,31 @@ import {
18
18
  selectIdentityUser,
19
19
  selectIdentityUserId
20
20
  } from "./chunk-PXYBUFDB.js";
21
+ import {
22
+ isTombstoneRecord
23
+ } from "./chunk-BV3FLP2L.js";
24
+ import {
25
+ asTrimmedString
26
+ } from "./chunk-3EUW3WEO.js";
21
27
  import {
22
28
  isRecord
23
29
  } from "./chunk-KUG52IAP.js";
30
+ import {
31
+ asOptionalPositiveFiniteNumber
32
+ } from "./chunk-U6VC4MU4.js";
24
33
  import {
25
34
  SERVERS,
26
35
  normalizeKnownServerOrigin
27
36
  } from "./chunk-LCBAMY2M.js";
37
+ import {
38
+ asOptionalTrimmedString
39
+ } from "./chunk-G3SUCT4W.js";
28
40
  import {
29
41
  isLocalServerUrl
30
42
  } from "./chunk-4SN6J65J.js";
31
43
  import {
32
44
  normalizeServerOrigin
33
45
  } from "./chunk-CF7PE763.js";
34
- import {
35
- asOptionalPositiveFiniteNumber
36
- } from "./chunk-U6VC4MU4.js";
37
- import {
38
- asTrimmedString
39
- } from "./chunk-3EUW3WEO.js";
40
- import {
41
- asOptionalTrimmedString
42
- } from "./chunk-G3SUCT4W.js";
43
46
 
44
47
  // packages/app/stateViews/runtime.ts
45
48
  var selectCurrentToken = (state) => {
@@ -184,8 +187,16 @@ var parseOwnerUserIdFromDbKey = (dbKey, options = {}) => {
184
187
  }
185
188
  return null;
186
189
  }
187
- if (parts[0] === "dialog" && parts[2] === "msg") {
188
- return null;
190
+ if (prefix === "dialog") {
191
+ const messageSeparator = normalized.lastIndexOf("-msg-");
192
+ if (messageSeparator !== -1) {
193
+ const dialogPrefix = normalized.slice("dialog-".length, messageSeparator);
194
+ const candidateOwner2 = resolveCandidateOwnerFromKeyRemainder(
195
+ dialogPrefix,
196
+ options.candidateOwnerUserIds
197
+ );
198
+ return candidateOwner2 && dialogPrefix.length > candidateOwner2.length + 1 ? candidateOwner2 : null;
199
+ }
189
200
  }
190
201
  const ownerAndRest = normalized.slice(prefix.length + 1);
191
202
  const candidateOwner = resolveCandidateOwnerFromKeyRemainder(
@@ -200,6 +211,48 @@ var parseOwnerUserIdFromDbKey = (dbKey, options = {}) => {
200
211
  return ownerUserId;
201
212
  };
202
213
 
214
+ // packages/database/authority/deviceLocal.ts
215
+ var DEVICE_LOCAL_OWNER_ID = "local";
216
+ var DEVICE_LOCAL_DB_KEY_PREFIXES = [
217
+ "dialog-local-",
218
+ "agent-local-"
219
+ ];
220
+ var clean = (value) => asOptionalTrimmedString(value) ?? null;
221
+ var isDeviceLocalOwnerId = (userId) => clean(userId) === DEVICE_LOCAL_OWNER_ID;
222
+ var resolveEffectiveSpaceActorId = (accountUserId) => {
223
+ const cleaned = clean(accountUserId);
224
+ if (!cleaned || isDeviceLocalOwnerId(cleaned)) {
225
+ return DEVICE_LOCAL_OWNER_ID;
226
+ }
227
+ return cleaned;
228
+ };
229
+ var isDeviceLocalSpaceMembership = (membership) => isDeviceLocalOwnerId(membership?.userId);
230
+ var isDeviceLocalSpaceBody = (space) => isDeviceLocalOwnerId(space?.userId) || isDeviceLocalOwnerId(space?.ownerId);
231
+ var isDeviceLocalDbKey = (dbKey) => {
232
+ const key = clean(dbKey);
233
+ if (!key) return false;
234
+ for (const prefix of DEVICE_LOCAL_DB_KEY_PREFIXES) {
235
+ if (key.startsWith(prefix)) return true;
236
+ }
237
+ return parseOwnerUserIdFromDbKey(key, {
238
+ candidateOwnerUserIds: [DEVICE_LOCAL_OWNER_ID]
239
+ }) === DEVICE_LOCAL_OWNER_ID;
240
+ };
241
+ var resolveRecordOwnerUserId = (record) => {
242
+ if (!record) return null;
243
+ const explicit = clean(record.userId);
244
+ if (explicit) return explicit;
245
+ if (isDeviceLocalDbKey(record.dbKey) || isDeviceLocalDbKey(record.id)) {
246
+ return DEVICE_LOCAL_OWNER_ID;
247
+ }
248
+ const fromKey = parseOwnerUserIdFromDbKey(clean(record.dbKey) ?? "", {
249
+ candidateOwnerUserIds: [DEVICE_LOCAL_OWNER_ID]
250
+ }) ?? parseOwnerUserIdFromDbKey(clean(record.id) ?? "", {
251
+ candidateOwnerUserIds: [DEVICE_LOCAL_OWNER_ID]
252
+ });
253
+ return fromKey;
254
+ };
255
+
203
256
  // packages/database/authority/userAuthorityRegistry.ts
204
257
  var normalizeAuthorityServerOrigin = (value) => {
205
258
  const normalized = normalizeServerOrigin(value);
@@ -285,6 +338,23 @@ var partitionReadServers = ({
285
338
  };
286
339
  };
287
340
  var compareRemoteRecordsByComparableTime = (left, right) => toComparableTimestamp(left) - toComparableTimestamp(right);
341
+ var isPageRecord = (record) => {
342
+ if (!record || typeof record !== "object") return false;
343
+ if (typeof record.type === "string") return record.type === "page";
344
+ return typeof record.dbKey === "string" && record.dbKey.startsWith("page-");
345
+ };
346
+ var hasRecordBodyPayload = (record) => {
347
+ if (!record || typeof record !== "object") return false;
348
+ if (Array.isArray(record.slateData)) return true;
349
+ return typeof record.content === "string";
350
+ };
351
+ var shouldPreferRemoteBodyOverLocalProjection = (localData, remoteData) => {
352
+ if (!isPageRecord(localData) || !isPageRecord(remoteData)) return false;
353
+ if (isTombstoneRecord(localData) || isTombstoneRecord(remoteData)) return false;
354
+ if (!hasRecordBodyPayload(remoteData)) return false;
355
+ if (hasRecordBodyPayload(localData)) return false;
356
+ return compareRemoteRecordsByComparableTime(localData, remoteData) <= 0;
357
+ };
288
358
  var pickBestSettledRemoteRecord = ({
289
359
  settledResults,
290
360
  isBetterCandidate
@@ -306,6 +376,7 @@ var shouldReplaceLocalWithRemoteRecord = ({
306
376
  }) => {
307
377
  if (!remoteData || typeof remoteData !== "object") return false;
308
378
  if (!localData || typeof localData !== "object") return true;
379
+ if (shouldPreferRemoteBodyOverLocalProjection(localData, remoteData)) return true;
309
380
  return isRemoteNewer(remoteData, localData);
310
381
  };
311
382
  var shouldReplicateLocalRecord = ({
@@ -360,53 +431,13 @@ var planServersForTenant = (allServers, currentServer, tenantId) => {
360
431
  return Array.from(set);
361
432
  };
362
433
 
363
- // packages/database/authority/deviceLocal.ts
364
- var DEVICE_LOCAL_OWNER_ID = "local";
365
- var DEVICE_LOCAL_DB_KEY_PREFIXES = [
366
- "dialog-local-",
367
- "agent-local-"
368
- ];
369
- var clean = (value) => asOptionalTrimmedString(value) ?? null;
370
- var isDeviceLocalOwnerId = (userId) => clean(userId) === DEVICE_LOCAL_OWNER_ID;
371
- var resolveEffectiveSpaceActorId = (accountUserId) => {
372
- const cleaned = clean(accountUserId);
373
- if (!cleaned || isDeviceLocalOwnerId(cleaned)) {
374
- return DEVICE_LOCAL_OWNER_ID;
375
- }
376
- return cleaned;
377
- };
378
- var isDeviceLocalSpaceMembership = (membership) => isDeviceLocalOwnerId(membership?.userId);
379
- var isDeviceLocalSpaceBody = (space) => isDeviceLocalOwnerId(space?.userId) || isDeviceLocalOwnerId(space?.ownerId);
380
- var isDeviceLocalDbKey = (dbKey) => {
381
- const key = clean(dbKey);
382
- if (!key) return false;
383
- for (const prefix of DEVICE_LOCAL_DB_KEY_PREFIXES) {
384
- if (key.startsWith(prefix)) return true;
385
- }
386
- return parseOwnerUserIdFromDbKey(key, {
387
- candidateOwnerUserIds: [DEVICE_LOCAL_OWNER_ID]
388
- }) === DEVICE_LOCAL_OWNER_ID;
389
- };
390
- var resolveRecordOwnerUserId = (record) => {
391
- if (!record) return null;
392
- const explicit = clean(record.userId);
393
- if (explicit) return explicit;
394
- if (isDeviceLocalDbKey(record.dbKey) || isDeviceLocalDbKey(record.id)) {
395
- return DEVICE_LOCAL_OWNER_ID;
396
- }
397
- const fromKey = parseOwnerUserIdFromDbKey(clean(record.dbKey) ?? "", {
398
- candidateOwnerUserIds: [DEVICE_LOCAL_OWNER_ID]
399
- }) ?? parseOwnerUserIdFromDbKey(clean(record.id) ?? "", {
400
- candidateOwnerUserIds: [DEVICE_LOCAL_OWNER_ID]
401
- });
402
- return fromKey;
403
- };
404
-
405
434
  // packages/database/actions/writeAck.ts
435
+ var DEFAULT_WRITE_ACK_TIMEOUT_MS = 1500;
406
436
  var ACK_ENTRY_RETENTION_MS = 1e4;
407
437
  var ACK_ENTRY_MAX = 256;
408
438
  var replicationTargetKey = (server) => normalizeKnownServerOrigin(server) ?? normalizeServerOrigin(server);
409
439
  var ackEntries = /* @__PURE__ */ new Map();
440
+ var nowMs = () => typeof performance !== "undefined" ? performance.now() : Date.now();
410
441
  var sweepAckEntries = () => {
411
442
  const wallClock = Date.now();
412
443
  for (const [key, entry] of ackEntries) {
@@ -475,6 +506,54 @@ var beginWriteAck = (dbKey) => {
475
506
  markAborted: () => entry.settle("aborted")
476
507
  };
477
508
  };
509
+ var waitForWriteAck = async (dbKey, options = {}) => {
510
+ const timeoutMs = options.timeoutMs ?? DEFAULT_WRITE_ACK_TIMEOUT_MS;
511
+ const entry = ackEntries.get(dbKey);
512
+ if (!entry) {
513
+ return {
514
+ outcome: { status: "unknown" },
515
+ timedOut: false,
516
+ waitedMs: 0,
517
+ waitTarget: "none"
518
+ };
519
+ }
520
+ const targetKey = replicationTargetKey(options.targetServer);
521
+ let ack = entry.promise;
522
+ let waitTarget = "primary";
523
+ if (targetKey) {
524
+ const targetAck = entry.targetAcks.get(targetKey);
525
+ if (targetAck) {
526
+ ack = targetAck;
527
+ waitTarget = "run-target";
528
+ } else if (entry.planRegistered) {
529
+ waitTarget = "primary-fallback";
530
+ console.warn(
531
+ `[WriteAck] run target ${targetKey} is not in this write's replication plan [${entry.servers.join(
532
+ ", "
533
+ )}] for ${dbKey}; waiting on primary ${entry.primaryTargetKey ?? "unknown"} instead`
534
+ );
535
+ }
536
+ }
537
+ const startedAt = nowMs();
538
+ let timer;
539
+ const raced = await Promise.race([
540
+ ack,
541
+ new Promise((resolve) => {
542
+ timer = setTimeout(() => resolve(null), Math.max(0, timeoutMs));
543
+ })
544
+ ]);
545
+ if (timer !== void 0) clearTimeout(timer);
546
+ const waitedMs = nowMs() - startedAt;
547
+ if (raced === null) {
548
+ return {
549
+ outcome: { status: "pending" },
550
+ timedOut: true,
551
+ waitedMs,
552
+ waitTarget
553
+ };
554
+ }
555
+ return { outcome: { status: raced }, timedOut: false, waitedMs, waitTarget };
556
+ };
478
557
 
479
558
  // packages/database/actions/replication.ts
480
559
  var isReadonlyPublicRecordKey = (dbKey) => dbKey.startsWith("agent-pub-");
@@ -851,10 +930,13 @@ export {
851
930
  isDeviceLocalSpaceMembership,
852
931
  isDeviceLocalSpaceBody,
853
932
  resolveRecordOwnerUserId,
933
+ resolveUserAuthorityServer,
854
934
  resolveRecordAuthority,
855
935
  beginWriteAck,
936
+ waitForWriteAck,
856
937
  partitionReadServers,
857
938
  compareRemoteRecordsByComparableTime,
939
+ shouldPreferRemoteBodyOverLocalProjection,
858
940
  pickBestSettledRemoteRecord,
859
941
  shouldReplaceLocalWithRemoteRecord,
860
942
  shouldReplicateLocalRecord,
@@ -49,75 +49,9 @@ function clipToolText(content, maxChars, headRatio, marker = "\n\n[... tool outp
49
49
  return `${normalized.slice(0, headChars)}${marker}${normalized.slice(-tailChars)}`;
50
50
  }
51
51
 
52
- // packages/ai/context/retention.ts
53
- var SAFE_BUFFER_RATIO = 0.95;
54
- var CACHE_FIRST_RETENTION_STRENGTH = 0.95;
55
- var clamp = (v, min, max) => Math.min(max, Math.max(min, v));
56
- var planContextUsage = (params) => {
57
- const { contextWindow, summaryTokens, recentLoad } = params;
58
- const safeWindowLimit = Math.floor(contextWindow * SAFE_BUFFER_RATIO);
59
- const iq = CACHE_FIRST_RETENTION_STRENGTH;
60
- const isLargeWindow = contextWindow >= 512e3;
61
- const isSmallWindow = contextWindow <= 64e3;
62
- let baseHistoryRatio;
63
- if (isLargeWindow) {
64
- baseHistoryRatio = 0.8 + 0.2 * iq;
65
- } else if (isSmallWindow) {
66
- baseHistoryRatio = 0.35 + 0.3 * iq;
67
- } else {
68
- baseHistoryRatio = 0.55 + 0.3 * iq;
69
- }
70
- let historyRatio = baseHistoryRatio;
71
- switch (recentLoad) {
72
- case "light": {
73
- const maxRatio = isLargeWindow ? 1 : isSmallWindow ? 0.75 : 0.85;
74
- historyRatio = clamp(historyRatio * 1.05, 0.3, maxRatio);
75
- break;
76
- }
77
- case "heavy": {
78
- const maxRatio = isLargeWindow ? 0.98 : isSmallWindow ? 0.7 : 0.8;
79
- const multiplier = isLargeWindow ? 0.98 : isSmallWindow ? 0.9 : 0.9;
80
- historyRatio = clamp(historyRatio * multiplier, 0.3, maxRatio);
81
- break;
82
- }
83
- case "medium":
84
- default: {
85
- const maxRatio = isLargeWindow ? 1 : isSmallWindow ? 0.75 : 0.85;
86
- historyRatio = clamp(historyRatio, 0.3, maxRatio);
87
- break;
88
- }
89
- }
90
- const historyBudget = Math.max(
91
- 0,
92
- Math.floor(safeWindowLimit * historyRatio)
93
- );
94
- const minRawRatio = isSmallWindow ? 0.5 : isLargeWindow ? 0.2 : 0.3;
95
- const rawMessageBudget = Math.max(
96
- Math.floor(historyBudget * minRawRatio),
97
- historyBudget - summaryTokens,
98
- 0
99
- );
100
- let minTailTokens;
101
- if (recentLoad === "light") {
102
- minTailTokens = Math.min(
103
- Math.floor(safeWindowLimit * 0.3),
104
- 8e3
105
- );
106
- } else if (recentLoad === "heavy") {
107
- minTailTokens = Math.max(
108
- Math.floor(safeWindowLimit * 0.25),
109
- 16e3
110
- );
111
- } else {
112
- minTailTokens = Math.floor(safeWindowLimit * 0.2);
113
- }
114
- return { historyBudget, rawMessageBudget, minTailTokens };
115
- };
116
-
117
52
  export {
118
53
  resolveToolOutputProfile,
119
54
  resolveHistoricalToolContentCap,
120
55
  projectToolMessageContent,
121
- clipToolText,
122
- planContextUsage
56
+ clipToolText
123
57
  };
@@ -0,0 +1,30 @@
1
+ // packages/cli/client/browserShellApprovalClient.ts
2
+ var BROWSER_SHELL_BRIDGE_ENV = "NOLO_BROWSER_SHELL_BRIDGE";
3
+ async function requestBrowserShellAction(args) {
4
+ const raw = args.env[BROWSER_SHELL_BRIDGE_ENV];
5
+ if (!raw || !["eval_script", "click", "type", "press", "set_select_value"].includes(args.action)) {
6
+ return args.execute(args.action, args.payload);
7
+ }
8
+ const transports = JSON.parse(raw);
9
+ const transport = transports[args.browser];
10
+ const url = new URL(transport.endpoint);
11
+ if (url.protocol !== "http:" || url.hostname !== "127.0.0.1" || url.pathname !== "/approval" || url.username || url.password) throw new Error("Invalid browser host transport");
12
+ const send = async (body) => {
13
+ const response = await fetch(url, { method: "POST", headers: { authorization: `Bearer ${transport.capability}`, "content-type": "application/json" }, body: JSON.stringify(body), signal: AbortSignal.timeout(6e4), redirect: "error" });
14
+ if (!response.ok) throw new Error("Browser host unavailable");
15
+ return await response.json();
16
+ };
17
+ const payload = structuredClone(args.payload);
18
+ const prepared = await send({ op: "prepare", action: args.action, browser: args.browser, payload });
19
+ const result = prepared.result?.result;
20
+ if (!result) throw new Error("Browser host rejected original action");
21
+ if (result.code !== "USER_APPROVAL_PENDING") return result;
22
+ const decision = await send({ approvalId: result.approvalId, browser: args.browser });
23
+ if (decision.status !== "retry_once") return { ...result, message: "Host approval was not granted; action not executed." };
24
+ return args.execute(args.action, { ...payload, approvalId: result.approvalId, hostApproval: true });
25
+ }
26
+
27
+ export {
28
+ BROWSER_SHELL_BRIDGE_ENV,
29
+ requestBrowserShellAction
30
+ };
@@ -0,0 +1,13 @@
1
+ import {
2
+ buildAgentRuntimeAgentLookupKeys,
3
+ shouldFetchAgentRuntimeRecordRemotely
4
+ } from "./chunk-C4VAR65S.js";
5
+
6
+ // packages/cli/client/localAgentRecords.ts
7
+ var buildLocalAgentLookupKeys = buildAgentRuntimeAgentLookupKeys;
8
+ var shouldReadAgentKeyRemotely = shouldFetchAgentRuntimeRecordRemotely;
9
+
10
+ export {
11
+ buildLocalAgentLookupKeys,
12
+ shouldReadAgentKeyRemotely
13
+ };
@@ -2,29 +2,30 @@ import {
2
2
  fnv1a32Hex
3
3
  } from "./chunk-UEILX4EV.js";
4
4
  import {
5
- compareAgentSelection
6
- } from "./chunk-RZOV7OMV.js";
5
+ compareAgentSelection,
6
+ resolveModelTier
7
+ } from "./chunk-C4VAR65S.js";
7
8
  import {
8
9
  DEFAULT_PROVIDER_RETRY_MS,
9
10
  isAgentUnavailableNow,
10
11
  resolveAgentAvailability
11
- } from "./chunk-3UKL3HPD.js";
12
+ } from "./chunk-HOCHUZQ7.js";
12
13
  import {
13
14
  isOAuthApiKeyRef
14
15
  } from "./chunk-UKZX3NHN.js";
15
16
  import {
16
17
  getModelAbility
17
- } from "./chunk-T43B7LB2.js";
18
+ } from "./chunk-WKGQSYTB.js";
19
+ import {
20
+ isAntigravityOAuthAgent,
21
+ isSubscriptionEndpoint,
22
+ isSubscriptionOAuthCredential
23
+ } from "./chunk-SY3C4SQ7.js";
18
24
  import {
19
25
  isOwnedAgentKey,
20
26
  ownedAgentKey,
21
27
  publicAgentKey
22
28
  } from "./chunk-M2EJHDJP.js";
23
- import {
24
- isAntigravityOAuthAgent,
25
- isSubscriptionEndpoint,
26
- isSubscriptionOAuthCredential
27
- } from "./chunk-KIM6CLW5.js";
28
29
 
29
30
  // packages/ai/agent/agentBilling.ts
30
31
  function resolveBillingSource(candidate) {
@@ -220,24 +221,6 @@ function resolveEconomicsSnapshot(input, at, policies = ECONOMICS_POLICIES) {
220
221
  };
221
222
  }
222
223
 
223
- // packages/ai/agent/agentTier.ts
224
- var FAST_MARKERS = /* @__PURE__ */ new Set(["flash", "mini", "lite", "nano", "haiku", "luna"]);
225
- var BALANCED_MARKERS = /* @__PURE__ */ new Set(["sonnet", "turbo", "plus"]);
226
- var TOP_MARKERS = /* @__PURE__ */ new Set(["opus", "sol", "pro", "max", "ultra"]);
227
- function tokenizeModel(model) {
228
- return model.toLowerCase().split(/[-._/\s]+/).filter(Boolean);
229
- }
230
- function resolveDefaultAgentTier(model) {
231
- if (typeof model !== "string") return { tier: "unknown" };
232
- const tokens = tokenizeModel(model);
233
- if (tokens.length === 0) return { tier: "unknown" };
234
- const hits = (markers) => tokens.some((token) => markers.has(token));
235
- if (hits(FAST_MARKERS)) return { tier: "fast" };
236
- if (hits(BALANCED_MARKERS)) return { tier: "balanced" };
237
- if (hits(TOP_MARKERS)) return { tier: "top" };
238
- return { tier: "unknown" };
239
- }
240
-
241
224
  // packages/ai/agent/safeAgentSummary.ts
242
225
  function deriveCredentialGroup(ref) {
243
226
  if (!ref || typeof ref !== "string") return void 0;
@@ -444,7 +427,6 @@ function toSafeAgentSummary(record, options) {
444
427
  const credInfo = deriveCredentialGroup(record?.credentialGroup ?? rawCredRef);
445
428
  const credentialGroup = record?.credentialGroup ?? credInfo?.credentialGroup;
446
429
  const credentialKind = record?.credentialKind ?? credInfo?.credentialKind;
447
- const { tier } = resolveDefaultAgentTier(record?.model);
448
430
  const availability = resolveAgentAvailability(
449
431
  { nextAvailableAt, quota, quotaExhaustion },
450
432
  options?.now ?? Date.now()
@@ -457,7 +439,7 @@ function toSafeAgentSummary(record, options) {
457
439
  handle,
458
440
  introduction,
459
441
  model,
460
- tier,
442
+ modelTier: resolveModelTier(model),
461
443
  provider,
462
444
  apiSource,
463
445
  cliProvider,
@@ -494,8 +476,7 @@ var COMPACT_AGENT_SUMMARY_FIELDS = [
494
476
  "agentKey",
495
477
  "name",
496
478
  "model",
497
- // 能力档弱先验(unknown = 模型名没给出信号,不推断强弱)。
498
- "tier",
479
+ "modelTier",
499
480
  "billingSource",
500
481
  "availabilityStatus",
501
482
  "credentialGroup",
@@ -545,7 +526,7 @@ var ULTRA_COMPACT_AGENT_SUMMARY_FIELDS = [
545
526
  "agentKey",
546
527
  "name",
547
528
  "model",
548
- "tier",
529
+ "modelTier",
549
530
  "billingSource",
550
531
  "availabilityStatus",
551
532
  "credentialGroup",
@@ -27,7 +27,10 @@ var BUILTIN_AGENT_CATALOG = [
27
27
  id: "01ECOMMERCEAG00000001PYQ2J",
28
28
  group: "builtin",
29
29
  name: "\u7535\u5546\u5546\u54C1\u53C2\u6570\u52A9\u624B",
30
- provider: "openai",
30
+ // provider 必须是 "nolo"(平台托管命名空间):平台价只注册在 nolo 下,
31
+ // 写上游名 "openai" 会落零价虚拟模型(gpt-6-luna 在此口径下 cost=0 →
32
+ // 该 agent 的调用永久不计费)。同 01GPT56LUNPB 的既定约定。
33
+ provider: "nolo",
31
34
  model: "gpt-6-luna"
32
35
  },
33
36
  {
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  streamSseDataValues
3
3
  } from "./chunk-HNUWUO75.js";
4
+ import {
5
+ resolveToolImagePolicy
6
+ } from "./chunk-OBWT45ZU.js";
4
7
  import {
5
8
  projectOpenAiToolImages
6
9
  } from "./chunk-E2BESSAW.js";
7
- import {
8
- resolveToolImagePolicy
9
- } from "./chunk-YWSEPJ7C.js";
10
10
  import {
11
11
  getAntigravityUserAgent,
12
12
  readAntigravityProjectId,
13
13
  resolveAntigravityCloudCodeBaseUrl
14
- } from "./chunk-KIM6CLW5.js";
14
+ } from "./chunk-SY3C4SQ7.js";
15
15
  import {
16
16
  asOptionalTrimmedString
17
17
  } from "./chunk-G3SUCT4W.js";
@@ -34,7 +34,7 @@ function parseUpstreamErrorBody(errorText, statusText) {
34
34
  }
35
35
 
36
36
  // packages/agent-runtime/antigravityCloudCodeProvider.ts
37
- import { randomUUID } from "node:crypto";
37
+ import { createHash, randomUUID } from "node:crypto";
38
38
 
39
39
  // packages/agent-runtime/antigravityWireModel.ts
40
40
  var WIRE_PROFILES = {
@@ -867,6 +867,29 @@ function buildGeminiGenerateContentRequest(args) {
867
867
 
868
868
  // packages/agent-runtime/antigravityCloudCodeProvider.ts
869
869
  var STREAM_PATH = "/v1internal:streamGenerateContent?alt=sse";
870
+ function firstUserText(messages) {
871
+ for (const raw of messages) {
872
+ if (!raw || typeof raw !== "object") continue;
873
+ const message = raw;
874
+ if (message.role !== "user") continue;
875
+ const content = message.content;
876
+ if (typeof content === "string") return content.trim();
877
+ if (Array.isArray(content)) {
878
+ return content.map(
879
+ (part) => part && typeof part === "object" && typeof part.text === "string" ? part.text : ""
880
+ ).join("").trim();
881
+ }
882
+ return "";
883
+ }
884
+ return "";
885
+ }
886
+ var ANTIGRAVITY_SESSION_SALT = "nolo.antigravity.session.v1";
887
+ function antigravitySessionIdFor(messages) {
888
+ const seed = firstUserText(messages);
889
+ if (!seed) return `-${Math.floor(Math.random() * 9e15)}`;
890
+ const digest = createHash("sha256").update(ANTIGRAVITY_SESSION_SALT).update("\0").update(seed).digest();
891
+ return `-${digest.readUIntBE(0, 6)}`;
892
+ }
870
893
  function buildCloudCodeAssistPayload(args) {
871
894
  const projectId = readAntigravityProjectId(args.metadata);
872
895
  if (!projectId) {
@@ -934,7 +957,7 @@ function buildCloudCodeAssistPayload(args) {
934
957
  labels.model_enum = profile.modelEnum;
935
958
  }
936
959
  request.labels = labels;
937
- request.sessionId = `-${Math.floor(Math.random() * 9e15)}`;
960
+ request.sessionId = antigravitySessionIdFor(rawMessages);
938
961
  return {
939
962
  url: `${resolveAntigravityCloudCodeBaseUrl(args.agentConfig.customProviderUrl)}${STREAM_PATH}`,
940
963
  envelope: {