nolo-cli 0.54.0-alpha.2 → 0.61.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 (172) hide show
  1. package/README.md +3 -3
  2. package/{_executeModel-ANY4SIAS.js → _executeModel-CKT6RGTL.js} +58 -49
  3. package/{action-Q4W5JPI5.js → action-76JX3JX3.js} +9 -8
  4. package/{addContentAction-O25HFR37.js → addContentAction-V3NAZRTJ.js} +9 -7
  5. package/{addDialogAgentAction-GH7AUPPB.js → addDialogAgentAction-RZOAF46K.js} +11 -9
  6. package/{agentDeleteCommand-JWIKNWWI.js → agentDeleteCommand-VN7NPXQ4.js} +37 -32
  7. package/{agentEmailCommands-PL22BEU5.js → agentEmailCommands-F2TNAV4A.js} +73 -65
  8. package/{agentGrantCommands-2LEZDADN.js → agentGrantCommands-R3VQEZJR.js} +1 -1
  9. package/{agentListCommands-6NR7AQEK.js → agentListCommands-OSM2ANI3.js} +78 -39
  10. package/{agentMachineCommands-TASPU6OA.js → agentMachineCommands-MTPWYVRV.js} +38 -33
  11. package/{agentPullCommand-M552CYSI.js → agentPullCommand-N7L2CT7L.js} +2 -2
  12. package/agentRecordCommands-VWAWTVVC.js +122 -0
  13. package/agentRunCommand-PLZOBNVK.js +149 -0
  14. package/{agentRunControl-4GHHSXFZ.js → agentRunControl-WECMOO6O.js} +13 -6
  15. package/{agentRuntimeLocal-PCJJ56J2.js → agentRuntimeLocal-XCJLRWQE.js} +35 -28
  16. package/{agentSlice-KYLDUSNN.js → agentSlice-F6DOP4IW.js} +10 -9
  17. package/{appDeleteCommands-WLHMJAVT.js → appDeleteCommands-3BCFTRFJ.js} +37 -32
  18. package/{appDeployCommands-CKON7N2E.js → appDeployCommands-B4GMHCYA.js} +37 -32
  19. package/{appDeployStatusCommands-PXRLDASH.js → appDeployStatusCommands-4MN36WIG.js} +37 -32
  20. package/{appGetCommands-RAB5RM4M.js → appGetCommands-4GJIEUAX.js} +37 -32
  21. package/{appListCommands-GU57FB62.js → appListCommands-CHU53GSX.js} +37 -32
  22. package/{authCommand-QOPOEYEK.js → authCommand-WOTWLJNF.js} +38 -32
  23. package/{authCommands-SBQVTD6V.js → authCommands-ILTBI6JV.js} +8 -6
  24. package/{chatQueueReduxAdapter-5O2WLITN.js → chatQueueReduxAdapter-HNSQXNIR.js} +29 -24
  25. package/{chunk-WL3UOGYO.js → chunk-22BTGNSP.js} +151 -155
  26. package/{chunk-7CH6U3FL.js → chunk-2GRGFCF6.js} +2 -4
  27. package/{chunk-V4KZGLOI.js → chunk-2HPRMEEZ.js} +3059 -1079
  28. package/{chunk-UNZDCI3O.js → chunk-2KDR4CWE.js} +35 -4
  29. package/{chunk-VRZIH5JO.js → chunk-2PGGC63K.js} +1 -1
  30. package/{chunk-T27IEBNQ.js → chunk-2QDDKFG5.js} +74 -1
  31. package/{chunk-7K5VMB4Q.js → chunk-37QVS7BU.js} +21 -8
  32. package/{chunk-UITMHBVK.js → chunk-37XDGCY7.js} +1 -1
  33. package/chunk-3BLB7QKO.js +433 -0
  34. package/{chunk-NQ4N4IGO.js → chunk-3JQ2NRYU.js} +33 -10
  35. package/{chunk-UW4INMD2.js → chunk-3JWKQDA4.js} +2 -2
  36. package/{chunk-IKTHA3JH.js → chunk-3QGUVVX5.js} +2 -2
  37. package/{chunk-WHVQA7PJ.js → chunk-45YO6H7P.js} +97 -35
  38. package/chunk-4C4ST2YE.js +20015 -0
  39. package/{chunk-32I5RVMY.js → chunk-4NJEIGBQ.js} +5 -5
  40. package/{chunk-KUUTWU4I.js → chunk-5ZYA4JJ3.js} +90 -22
  41. package/chunk-6YTOJY35.js +352 -0
  42. package/{chunk-INXBNYCG.js → chunk-7A3RRUCQ.js} +155 -12
  43. package/{chunk-GV35EHNA.js → chunk-7O7KH4X5.js} +1262 -971
  44. package/{chunk-Y7LNKP32.js → chunk-7UF7CQ6B.js} +4 -6
  45. package/{chunk-2BWU4ORW.js → chunk-AQMVUA7N.js} +2 -1
  46. package/{chunk-LA4IDAK7.js → chunk-AVE2YR4F.js} +1056 -3591
  47. package/{chunk-TI5BCZCH.js → chunk-B7DXRX7F.js} +59 -121
  48. package/chunk-BFU6C242.js +66 -0
  49. package/{chunk-FA4SY4F5.js → chunk-BYEJ7K2Z.js} +1 -1
  50. package/chunk-BYXBJQAS.js +0 -0
  51. package/{chunk-IA3A5373.js → chunk-C3FZR5EC.js} +1 -1
  52. package/{chunk-IWUMSAQF.js → chunk-CJCJF5XB.js} +26 -3
  53. package/{chunk-PAHILFNT.js → chunk-CP7VIDZ7.js} +4 -4
  54. package/{chunk-OYNDYVSE.js → chunk-CTCW7U7N.js} +1 -1
  55. package/{chunk-BJLYCOZK.js → chunk-D5XKNNUV.js} +135 -795
  56. package/{chunk-AV6KQCM5.js → chunk-DNNSCSA2.js} +19 -14
  57. package/{chunk-3AOLVADY.js → chunk-DVINR3PL.js} +1 -1
  58. package/{chunk-NI2BS6UD.js → chunk-DWUCB2A3.js} +1 -1
  59. package/{chunk-AA564GBL.js → chunk-DZZL7UBV.js} +1 -1
  60. package/{chunk-6FGXGFAH.js → chunk-E6RGHPDR.js} +6 -4
  61. package/chunk-EDKF7RX4.js +30 -0
  62. package/{chunk-6SZ52ORL.js → chunk-ES6CVKVD.js} +24 -30
  63. package/{chunk-DQLYEGP7.js → chunk-FHAGENAS.js} +3 -4
  64. package/{chunk-56W233KG.js → chunk-FKFMIBTT.js} +5 -1
  65. package/{chunk-INZZJSQF.js → chunk-FZGV4FGK.js} +24 -12
  66. package/{chunk-D3JQPONH.js → chunk-GAL47RNP.js} +1 -1
  67. package/{chunk-6FQ2552G.js → chunk-HBPV76EK.js} +1085 -1150
  68. package/{chunk-LN3OQJGG.js → chunk-HLU5Q2GV.js} +4 -4
  69. package/{chunk-U2A47SVI.js → chunk-HQP7HJDL.js} +7 -7
  70. package/{chunk-H2G6JXTR.js → chunk-HQUORJTM.js} +1 -1
  71. package/{chunk-3Z3DXZBD.js → chunk-IYCUMIYS.js} +24 -20
  72. package/{chunk-7APQB6R6.js → chunk-JX5PJCWS.js} +8 -6
  73. package/{chunk-LYGNQHUW.js → chunk-JYYZCK2Z.js} +2 -4
  74. package/{chunk-PYKV6FSC.js → chunk-KWSQR2KK.js} +16 -31
  75. package/{chunk-VULELK4T.js → chunk-L7B47JXR.js} +37 -64
  76. package/{chunk-4NN3EK7H.js → chunk-LAFC3B2I.js} +1 -1
  77. package/{chunk-VRJUIUIY.js → chunk-LJKICKVC.js} +2 -2
  78. package/chunk-M3JEW6N6.js +193 -0
  79. package/chunk-MBOEV4L2.js +301 -0
  80. package/{chunk-QDHZCAH3.js → chunk-MMZ6ZTVO.js} +229 -74
  81. package/{chunk-JDSUTNYY.js → chunk-MP64VFGD.js} +2 -2
  82. package/{chunk-U5Z7LFZF.js → chunk-MXUDQZXQ.js} +47 -8
  83. package/chunk-N4G4PKQ6.js +23 -0
  84. package/{chunk-SVEUG45B.js → chunk-NHRQCXIQ.js} +0 -24
  85. package/{chunk-KXKQO4Q6.js → chunk-NTW5GWDM.js} +58 -1
  86. package/chunk-ONXOABJR.js +215 -0
  87. package/{chunk-BANYWEYY.js → chunk-OZX2IPKM.js} +8 -3
  88. package/{chunk-Q24S4NDF.js → chunk-P7OOB7QP.js} +1 -1
  89. package/{chunk-GLGD2JGY.js → chunk-PEZJEQAO.js} +7 -7
  90. package/{chunk-GBADO3SM.js → chunk-PQDIDWGX.js} +1 -1
  91. package/chunk-PSCNXBYA.js +11 -0
  92. package/chunk-QEFJJS2I.js +508 -0
  93. package/{chunk-757BGY6Y.js → chunk-QEW2MFDQ.js} +1 -1
  94. package/{chunk-SP3DPVBH.js → chunk-RDBARW6T.js} +8 -3
  95. package/{chunk-TNPCQNGQ.js → chunk-RJ2SAFB5.js} +83 -41
  96. package/{chunk-FGEYVPPR.js → chunk-RVWRKFUB.js} +8 -65
  97. package/{chunk-43CXXVJD.js → chunk-RXX4GDIH.js} +1 -1
  98. package/chunk-SEJ5OS6F.js +49 -0
  99. package/{chunk-MFI4FGHX.js → chunk-SOJM57FX.js} +5 -2
  100. package/{chunk-EKLRRZIN.js → chunk-SPAQ4PVV.js} +0 -5
  101. package/{chunk-L7NG2M6H.js → chunk-TRV2MIDW.js} +89 -74
  102. package/chunk-UAD2WT54.js +64 -0
  103. package/{chunk-RTLJUGQH.js → chunk-UZPQSVM6.js} +2 -2
  104. package/{chunk-3QJTD6DO.js → chunk-VMWYBIXG.js} +9 -7
  105. package/{chunk-ZHXJ6M7T.js → chunk-W7XHHYWM.js} +4 -0
  106. package/{chunk-5WADL4O7.js → chunk-XAVSS3KE.js} +21 -3
  107. package/{chunk-CVT7L2WZ.js → chunk-XOKOSO35.js} +13 -22
  108. package/{chunk-6BYAXNH5.js → chunk-XTJTN3RW.js} +57 -4
  109. package/{chunk-T5HJEUQN.js → chunk-YCDWJX45.js} +1 -1
  110. package/{chunk-MRWGHF56.js → chunk-YDH3FDFQ.js} +12 -356
  111. package/{chunk-H4RYESI6.js → chunk-Z4QSJILV.js} +85 -13
  112. package/chunk-ZJ7UHBJS.js +89 -0
  113. package/{chunk-O5FLGN2L.js → chunk-ZRSJ3JEH.js} +6 -2
  114. package/{cliExecutor-BBUVQU4L.js → cliExecutor-HG3S345O.js} +1 -1
  115. package/{codingSkills-BCQXRZOI.js → codingSkills-VDXQYWX4.js} +2 -2
  116. package/contentThunks-7YG2ZYQC.js +73 -0
  117. package/{cooldownCommands-GI5NNWGL.js → cooldownCommands-BSCH2W7P.js} +2 -2
  118. package/{createAgentAutomationAction-UJLNFFFC.js → createAgentAutomationAction-PJQSCAIO.js} +32 -26
  119. package/createDialogAction-SFEJX6SP.js +64 -0
  120. package/{createPageAction-N3IYABHV.js → createPageAction-B7WRHOQO.js} +35 -28
  121. package/{dbSlice-D5CNGWPD.js → dbSlice-IBVOBVMS.js} +7 -6
  122. package/{deleteFile-44TUM34Y.js → deleteFile-FWP2PSBG.js} +4 -3
  123. package/{dialogCommands-35M6RBAC.js → dialogCommands-VL2X22QC.js} +38 -33
  124. package/{dialogSlice-KO7ADD7H.js → dialogSlice-ANMACABO.js} +29 -24
  125. package/{docCreateCommands-VXHZWQ3P.js → docCreateCommands-ITLGZ5YI.js} +40 -35
  126. package/{docDeleteCommands-4WFAJR6A.js → docDeleteCommands-LH3YNL4C.js} +37 -32
  127. package/{docReadCommands-OYREEFAR.js → docReadCommands-YAJ77F36.js} +36 -31
  128. package/{docStore-5BU76DFK.js → docStore-D4HGHPWI.js} +9 -33
  129. package/{docUpdateCommands-A7QERSME.js → docUpdateCommands-DQBOMH2G.js} +40 -35
  130. package/{fetchMessages-KZQVBXKY.js → fetchMessages-DRABNDPZ.js} +3 -3
  131. package/{getPricing-HAU62AFM.js → getPricing-NM3NUTAS.js} +5 -5
  132. package/handleSendMessageAction-DF2OABGW.js +675 -0
  133. package/index.js +79 -88
  134. package/{lib-2ZTNRXR4.js → lib-FRRS27KN.js} +63 -28
  135. package/{localDialogRead-NQ33HBSI.js → localDialogRead-PUQKFI73.js} +1 -1
  136. package/{localRuntimeAuthority-KQDAE64E.js → localRuntimeAuthority-R5UBODT3.js} +6 -4
  137. package/{localRuntimeDb-PF7CFKDL.js → localRuntimeDb-P37ZTX55.js} +1 -1
  138. package/{machineCommands-J43U3TX5.js → machineCommands-JXDYQ5LB.js} +309 -87
  139. package/{machineWsRunDispatch-Z2Z6STXZ.js → machineWsRunDispatch-3QHI7JX5.js} +67 -59
  140. package/memberThunks-VZI6G7YZ.js +640 -0
  141. package/{models-4QF4BJVY.js → models-FAMINFZ7.js} +2 -2
  142. package/package.json +3 -2
  143. package/{read-RGNPI5H2.js → read-2BYWW7AA.js} +4 -3
  144. package/{readDocTool-6ESWKTXD.js → readDocTool-LC3A7QTB.js} +1 -1
  145. package/{readlineWorkspace-YRPV6JPN.js → readlineWorkspace-KVZTEAHB.js} +4609 -2698
  146. package/{removeDialogAgentAction-JYT73FU2.js → removeDialogAgentAction-SFYZXHNK.js} +14 -12
  147. package/{runAgentClientLoop-5YM5WMAY.js → runAgentClientLoop-KGTEL7ZP.js} +60 -50
  148. package/{runtimeDoctorCommands-JKTTN723.js → runtimeDoctorCommands-CROTMULY.js} +7 -5
  149. package/{setDialogExtraReferencesAction-D564LMYQ.js → setDialogExtraReferencesAction-Q32RGFTA.js} +10 -8
  150. package/{setPrimaryDialogAgentAction-ACY3BLYA.js → setPrimaryDialogAgentAction-BFYJHUJS.js} +14 -12
  151. package/{settingSlice-MKI3MNZJ.js → settingSlice-IRUU4VFB.js} +8 -7
  152. package/{skillDiscovery-GPUDHDTZ.js → skillDiscovery-NTRLM6KP.js} +3 -3
  153. package/{spaceCommands-MY26V52L.js → spaceCommands-KNAYWMCZ.js} +40 -220
  154. package/{streamAgentChatTurn-XV5X5TNQ.js → streamAgentChatTurn-FLYPTXKZ.js} +140 -95
  155. package/{switchDialogAgentAction-CJ5H6SAR.js → switchDialogAgentAction-L2KOKCGG.js} +11 -9
  156. package/{tableCommands-R6WFRDYF.js → tableCommands-SUNTHAYX.js} +1 -1
  157. package/{toolApiClient-B2MFXMEG.js → toolApiClient-VGYUB4P5.js} +4 -2
  158. package/{tools-MIMELA2Y.js → tools-CVLUXK6P.js} +46 -38
  159. package/{tuiSummaryLlmCaller-XJ5BKNNS.js → tuiSummaryLlmCaller-F3DPFFZM.js} +20 -16
  160. package/{updateCommands-IYKLF3JX.js → updateCommands-AJYSD73Y.js} +2 -2
  161. package/{updateDialogTitleAction-EIZUSWHR.js → updateDialogTitleAction-HWJIZEIV.js} +33 -27
  162. package/agentRecordCommands-Z64TA63M.js +0 -114
  163. package/agentRunCommand-4QJQLPRW.js +0 -134
  164. package/agentSuperviseCommands-VB6BUS5H.js +0 -640
  165. package/chunk-6BGAQ3KR.js +0 -7081
  166. package/chunk-FD36SCCD.js +0 -105
  167. package/chunk-J3UALFHL.js +0 -370
  168. package/chunk-RU5D3B22.js +0 -230
  169. package/chunk-YBV6QJKM.js +0 -441
  170. package/createDialogAction-TJCX6GUE.js +0 -58
  171. package/handleSendMessageAction-OSGQJQ45.js +0 -406
  172. package/spaceSlice-JUIXC365.js +0 -127
@@ -1,16 +1,15 @@
1
1
  import {
2
2
  GMI_CHAT_COMPLETIONS_URL,
3
- PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL,
3
+ PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL,
4
4
  PLATFORM_HOSTED_KIMI_PROVIDER,
5
5
  cloudflareModels,
6
- deepinfraModels,
7
6
  getCloudflareWorkersAiChatCompletionsUrl,
8
7
  gmiModels,
9
8
  openrouterModels,
10
9
  platformHostedModels,
11
10
  toCnyCredits,
12
11
  zaiModels
13
- } from "./chunk-WL3UOGYO.js";
12
+ } from "./chunk-22BTGNSP.js";
14
13
 
15
14
  // packages/integrations/anthropic/anthropicModels.ts
16
15
  var anthropicModels = [
@@ -160,6 +159,60 @@ var googleModels = [
160
159
  cachingWrite: 0.6,
161
160
  cachingRead: 0.6
162
161
  }
162
+ },
163
+ {
164
+ name: "gemini-3.8-flash",
165
+ displayName: "Gemini 3.8 Flash",
166
+ provider: "google",
167
+ description: "Gemini 3.8 Flash model for fast frontier agentic, coding, and multimodal tasks.",
168
+ hasVision: true,
169
+ hasAudio: true,
170
+ contextWindow: 1048576,
171
+ maxOutputTokens: 65536,
172
+ supportsTool: true,
173
+ supportsReasoningEffort: true,
174
+ price: {
175
+ input: 6,
176
+ output: 30,
177
+ cachingWrite: 0.6,
178
+ cachingRead: 0.6
179
+ }
180
+ },
181
+ {
182
+ name: "gemini-2.5-pro",
183
+ displayName: "Gemini 2.5 Pro",
184
+ provider: "google",
185
+ description: "Gemini 2.5 Pro model for complex reasoning, coding, and large context multimodal tasks.",
186
+ hasVision: true,
187
+ hasAudio: true,
188
+ contextWindow: 1048576,
189
+ maxOutputTokens: 65536,
190
+ supportsTool: true,
191
+ supportsReasoningEffort: true,
192
+ price: {
193
+ input: 10,
194
+ output: 40,
195
+ cachingWrite: 2.5,
196
+ cachingRead: 2.5
197
+ }
198
+ },
199
+ {
200
+ name: "gemini-3.1-pro",
201
+ displayName: "Gemini 3.1 Pro",
202
+ provider: "google",
203
+ description: "Gemini 3.1 Pro frontier reasoning, coding, and multimodal model.",
204
+ hasVision: true,
205
+ hasAudio: true,
206
+ contextWindow: 1048576,
207
+ maxOutputTokens: 65536,
208
+ supportsTool: true,
209
+ supportsReasoningEffort: true,
210
+ price: {
211
+ input: 16,
212
+ output: 96,
213
+ cachingWrite: 4,
214
+ cachingRead: 4
215
+ }
163
216
  }
164
217
  ];
165
218
 
@@ -209,6 +262,16 @@ var GPT_5_6_LUNA_PRICE = {
209
262
  output: 9.6,
210
263
  inputCacheHit: 0.16
211
264
  };
265
+ var GPT_6_ASTRA_STANDARD_PRICE = {
266
+ input: 80,
267
+ output: 400,
268
+ inputCacheHit: 8
269
+ };
270
+ var GPT_6_ASTRA_LONG_CONTEXT_PRICE = {
271
+ input: 160,
272
+ output: 600,
273
+ inputCacheHit: 16
274
+ };
212
275
  var openAIModels = [
213
276
  {
214
277
  name: "gpt-5.5",
@@ -277,6 +340,25 @@ var openAIModels = [
277
340
  supportsReasoningEffort: true,
278
341
  price: GPT_5_6_LUNA_PRICE
279
342
  },
343
+ {
344
+ name: "gpt-6-astra",
345
+ displayName: "GPT-6 Astra",
346
+ endpointKey: "responses",
347
+ hasVision: true,
348
+ contextWindow: 105e4,
349
+ maxOutputTokens: 128e3,
350
+ supportsReasoningEffort: true,
351
+ price: GPT_6_ASTRA_STANDARD_PRICE,
352
+ pricingStrategy: {
353
+ type: "tiered_context",
354
+ tiers: [
355
+ {
356
+ minContext: 272001,
357
+ price: GPT_6_ASTRA_LONG_CONTEXT_PRICE
358
+ }
359
+ ]
360
+ }
361
+ },
280
362
  {
281
363
  name: "gpt-5.5-pro",
282
364
  displayName: "GPT-5.5 Pro",
@@ -298,6 +380,102 @@ var openAIModels = [
298
380
  }
299
381
  ];
300
382
 
383
+ // packages/ai/llm/deepinfra.ts
384
+ var DEEPINFRA_CLAUDE_HAIKU_PRICE = {
385
+ input: 1 * 9,
386
+ output: 5 * 9
387
+ };
388
+ var DEEPINFRA_CLAUDE_SONNET_PRICE = {
389
+ input: 3 * 9,
390
+ output: 15 * 9
391
+ };
392
+ var DEEPINFRA_CLAUDE_OPUS_PRICE = {
393
+ input: 5 * 9,
394
+ output: 25 * 9
395
+ };
396
+ var DEEPINFRA_CLAUDE_FABLE_PRICE = {
397
+ input: 10 * 9,
398
+ output: 50 * 9
399
+ };
400
+ var deepinfraModels = [
401
+ {
402
+ name: "anthropic/claude-haiku-4-5",
403
+ displayName: "Anthropic: Claude Haiku 4.5",
404
+ hasVision: true,
405
+ price: { ...DEEPINFRA_CLAUDE_HAIKU_PRICE },
406
+ contextWindow: 195e3,
407
+ maxOutputTokens: 4092,
408
+ supportsTool: false
409
+ },
410
+ {
411
+ name: "anthropic/claude-sonnet-5",
412
+ displayName: "Anthropic: Claude Sonnet 5",
413
+ hasVision: true,
414
+ price: { ...DEEPINFRA_CLAUDE_SONNET_PRICE },
415
+ contextWindow: 976e3,
416
+ maxOutputTokens: 4092,
417
+ supportsTool: false
418
+ },
419
+ {
420
+ name: "anthropic/claude-opus-5",
421
+ displayName: "Anthropic: Claude Opus 5",
422
+ hasVision: true,
423
+ price: { ...DEEPINFRA_CLAUDE_OPUS_PRICE },
424
+ contextWindow: 976e3,
425
+ maxOutputTokens: 4092,
426
+ supportsTool: false
427
+ },
428
+ {
429
+ name: "anthropic/claude-fable-5",
430
+ displayName: "Anthropic: Claude Fable 5",
431
+ hasVision: true,
432
+ price: { ...DEEPINFRA_CLAUDE_FABLE_PRICE },
433
+ contextWindow: 976e3,
434
+ maxOutputTokens: 4092,
435
+ supportsTool: false
436
+ }
437
+ ];
438
+
439
+ // packages/ai/llm/baseten.ts
440
+ var BASETEN_GLM_53_FLASH_MODEL = "zai-org/GLM-5.3-Flash";
441
+ var BASETEN_GLM_53_FLASH_PRICE = {
442
+ input: 1.2,
443
+ inputCacheHit: 0.24,
444
+ output: 4
445
+ };
446
+ var basetenModels = [
447
+ {
448
+ name: BASETEN_GLM_53_FLASH_MODEL,
449
+ displayName: "GLM 5.3 Flash",
450
+ hasVision: true,
451
+ price: { ...BASETEN_GLM_53_FLASH_PRICE },
452
+ maxOutputTokens: 131072,
453
+ contextWindow: 1048576,
454
+ supportsTool: true,
455
+ supportsReasoningEffort: true
456
+ }
457
+ ];
458
+
459
+ // packages/ai/llm/runinfra.ts
460
+ var RUNINFRA_GLM_53_FLASH_MODEL = "glm-5-3-flash";
461
+ var RUNINFRA_GLM_53_FLASH_PRICE = {
462
+ input: 0.8,
463
+ inputCacheHit: 0.08,
464
+ output: 3.2
465
+ };
466
+ var runinfraModels = [
467
+ {
468
+ name: RUNINFRA_GLM_53_FLASH_MODEL,
469
+ displayName: "GLM 5.3 Flash",
470
+ hasVision: true,
471
+ price: { ...RUNINFRA_GLM_53_FLASH_PRICE },
472
+ maxOutputTokens: 1048576,
473
+ contextWindow: 1048576,
474
+ supportsTool: true,
475
+ supportsReasoningEffort: true
476
+ }
477
+ ];
478
+
301
479
  // packages/integrations/xai/models.ts
302
480
  var xaiModels = [
303
481
  {
@@ -667,7 +845,7 @@ var kimiCodeModels = [
667
845
  {
668
846
  name: "k3",
669
847
  displayName: "Kimi K3",
670
- hasVision: false,
848
+ hasVision: true,
671
849
  contextWindow: 1e6,
672
850
  maxOutputTokens: 262144,
673
851
  jsonOutput: true,
@@ -682,7 +860,7 @@ var kimiCodeModels = [
682
860
  {
683
861
  name: "k3-256k",
684
862
  displayName: "Kimi K3 256K",
685
- hasVision: false,
863
+ hasVision: true,
686
864
  contextWindow: 262144,
687
865
  maxOutputTokens: 262144,
688
866
  jsonOutput: true,
@@ -697,7 +875,7 @@ var kimiCodeModels = [
697
875
  {
698
876
  name: "kimi-for-coding",
699
877
  displayName: "Kimi K2.7 Code",
700
- hasVision: false,
878
+ hasVision: true,
701
879
  contextWindow: 262144,
702
880
  maxOutputTokens: 262144,
703
881
  jsonOutput: true,
@@ -712,7 +890,7 @@ var kimiCodeModels = [
712
890
  {
713
891
  name: "kimi-for-coding-highspeed",
714
892
  displayName: "Kimi K2.7 Code \u9AD8\u901F\u7248",
715
- hasVision: false,
893
+ hasVision: true,
716
894
  contextWindow: 262144,
717
895
  maxOutputTokens: 262144,
718
896
  jsonOutput: true,
@@ -935,21 +1113,9 @@ function _addIssue(context, label, dataset, config$1, other) {
935
1113
  if (dataset.issues) dataset.issues.push(issue);
936
1114
  else dataset.issues = [issue];
937
1115
  }
938
- var _standardCache = /* @__PURE__ */ new WeakMap();
939
1116
  // @__NO_SIDE_EFFECTS__
940
- function _getStandardProps(context) {
941
- let cached = _standardCache.get(context);
942
- if (!cached) {
943
- cached = {
944
- version: 1,
945
- vendor: "valibot",
946
- validate(value$1) {
947
- return context["~run"]({ value: value$1 }, /* @__PURE__ */ getGlobalConfig());
948
- }
949
- };
950
- _standardCache.set(context, cached);
951
- }
952
- return cached;
1117
+ function _isSameValueZero(value1, value2) {
1118
+ return value1 === value2 || Number.isNaN(value1) && Number.isNaN(value2);
953
1119
  }
954
1120
  // @__NO_SIDE_EFFECTS__
955
1121
  function _isValidObjectKey(object$1, key) {
@@ -961,6 +1127,14 @@ function _joinExpects(values$1, separator) {
961
1127
  if (list.length > 1) return `(${list.join(` ${separator} `)})`;
962
1128
  return list[0] ?? "never";
963
1129
  }
1130
+ function _standardSchema(schema) {
1131
+ schema["~standard"] = {
1132
+ version: 1,
1133
+ vendor: "valibot",
1134
+ validate: (value$1) => schema["~run"]({ value: value$1 }, /* @__PURE__ */ getGlobalConfig())
1135
+ };
1136
+ return schema;
1137
+ }
964
1138
  var EMOJI_REGEX = new RegExp("^(?:[\\u{1F1E6}-\\u{1F1FF}]{2}|\\u{1F3F4}[\\u{E0061}-\\u{E007A}]{2}[\\u{E0030}-\\u{E0039}\\u{E0061}-\\u{E007A}]{1,3}\\u{E007F}|(?:\\p{Emoji}\\uFE0F\\u20E3?|\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|(?![\\p{Emoji_Modifier_Base}\\u{1F1E6}-\\u{1F1FF}])\\p{Emoji_Presentation})(?:\\u200D(?:\\p{Emoji}\\uFE0F\\u20E3?|\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|(?![\\p{Emoji_Modifier_Base}\\u{1F1E6}-\\u{1F1FF}])\\p{Emoji_Presentation}))*)+$", "u");
965
1139
  // @__NO_SIDE_EFFECTS__
966
1140
  function minLength(requirement, message$1) {
@@ -1015,7 +1189,7 @@ function getDefault(schema, dataset, config$1) {
1015
1189
  }
1016
1190
  // @__NO_SIDE_EFFECTS__
1017
1191
  function array(item, message$1) {
1018
- return {
1192
+ return _standardSchema({
1019
1193
  kind: "schema",
1020
1194
  type: "array",
1021
1195
  reference: array,
@@ -1023,9 +1197,6 @@ function array(item, message$1) {
1023
1197
  async: false,
1024
1198
  item,
1025
1199
  message: message$1,
1026
- get "~standard"() {
1027
- return /* @__PURE__ */ _getStandardProps(this);
1028
- },
1029
1200
  "~run"(dataset, config$1) {
1030
1201
  const input = dataset.value;
1031
1202
  if (Array.isArray(input)) {
@@ -1059,11 +1230,11 @@ function array(item, message$1) {
1059
1230
  } else _addIssue(this, "type", dataset, config$1);
1060
1231
  return dataset;
1061
1232
  }
1062
- };
1233
+ });
1063
1234
  }
1064
1235
  // @__NO_SIDE_EFFECTS__
1065
1236
  function literal(literal_, message$1) {
1066
- return {
1237
+ return _standardSchema({
1067
1238
  kind: "schema",
1068
1239
  type: "literal",
1069
1240
  reference: literal,
@@ -1071,19 +1242,16 @@ function literal(literal_, message$1) {
1071
1242
  async: false,
1072
1243
  literal: literal_,
1073
1244
  message: message$1,
1074
- get "~standard"() {
1075
- return /* @__PURE__ */ _getStandardProps(this);
1076
- },
1077
1245
  "~run"(dataset, config$1) {
1078
- if (dataset.value === this.literal) dataset.typed = true;
1246
+ if (/* @__PURE__ */ _isSameValueZero(dataset.value, this.literal)) dataset.typed = true;
1079
1247
  else _addIssue(this, "type", dataset, config$1);
1080
1248
  return dataset;
1081
1249
  }
1082
- };
1250
+ });
1083
1251
  }
1084
1252
  // @__NO_SIDE_EFFECTS__
1085
1253
  function looseObject(entries$1, message$1) {
1086
- return {
1254
+ return _standardSchema({
1087
1255
  kind: "schema",
1088
1256
  type: "loose_object",
1089
1257
  reference: looseObject,
@@ -1091,9 +1259,6 @@ function looseObject(entries$1, message$1) {
1091
1259
  async: false,
1092
1260
  entries: entries$1,
1093
1261
  message: message$1,
1094
- get "~standard"() {
1095
- return /* @__PURE__ */ _getStandardProps(this);
1096
- },
1097
1262
  "~run"(dataset, config$1) {
1098
1263
  const input = dataset.value;
1099
1264
  if (input && typeof input === "object") {
@@ -1142,16 +1307,16 @@ function looseObject(entries$1, message$1) {
1142
1307
  }
1143
1308
  }
1144
1309
  if (!dataset.issues || !config$1.abortEarly) {
1145
- for (const key in input) if (/* @__PURE__ */ _isValidObjectKey(input, key) && !(key in this.entries)) dataset.value[key] = input[key];
1310
+ for (const key in input) if (/* @__PURE__ */ _isValidObjectKey(input, key) && !Object.prototype.hasOwnProperty.call(this.entries, key)) dataset.value[key] = input[key];
1146
1311
  }
1147
1312
  } else _addIssue(this, "type", dataset, config$1);
1148
1313
  return dataset;
1149
1314
  }
1150
- };
1315
+ });
1151
1316
  }
1152
1317
  // @__NO_SIDE_EFFECTS__
1153
1318
  function object(entries$1, message$1) {
1154
- return {
1319
+ return _standardSchema({
1155
1320
  kind: "schema",
1156
1321
  type: "object",
1157
1322
  reference: object,
@@ -1159,9 +1324,6 @@ function object(entries$1, message$1) {
1159
1324
  async: false,
1160
1325
  entries: entries$1,
1161
1326
  message: message$1,
1162
- get "~standard"() {
1163
- return /* @__PURE__ */ _getStandardProps(this);
1164
- },
1165
1327
  "~run"(dataset, config$1) {
1166
1328
  const input = dataset.value;
1167
1329
  if (input && typeof input === "object") {
@@ -1212,11 +1374,11 @@ function object(entries$1, message$1) {
1212
1374
  } else _addIssue(this, "type", dataset, config$1);
1213
1375
  return dataset;
1214
1376
  }
1215
- };
1377
+ });
1216
1378
  }
1217
1379
  // @__NO_SIDE_EFFECTS__
1218
1380
  function optional(wrapped, default_) {
1219
- return {
1381
+ return _standardSchema({
1220
1382
  kind: "schema",
1221
1383
  type: "optional",
1222
1384
  reference: optional,
@@ -1224,9 +1386,6 @@ function optional(wrapped, default_) {
1224
1386
  async: false,
1225
1387
  wrapped,
1226
1388
  default: default_,
1227
- get "~standard"() {
1228
- return /* @__PURE__ */ _getStandardProps(this);
1229
- },
1230
1389
  "~run"(dataset, config$1) {
1231
1390
  if (dataset.value === void 0) {
1232
1391
  if (this.default !== void 0) dataset.value = /* @__PURE__ */ getDefault(this, dataset, config$1);
@@ -1237,11 +1396,11 @@ function optional(wrapped, default_) {
1237
1396
  }
1238
1397
  return this.wrapped["~run"](dataset, config$1);
1239
1398
  }
1240
- };
1399
+ });
1241
1400
  }
1242
1401
  // @__NO_SIDE_EFFECTS__
1243
1402
  function picklist(options, message$1) {
1244
- return {
1403
+ return _standardSchema({
1245
1404
  kind: "schema",
1246
1405
  type: "picklist",
1247
1406
  reference: picklist,
@@ -1249,19 +1408,16 @@ function picklist(options, message$1) {
1249
1408
  async: false,
1250
1409
  options,
1251
1410
  message: message$1,
1252
- get "~standard"() {
1253
- return /* @__PURE__ */ _getStandardProps(this);
1254
- },
1255
1411
  "~run"(dataset, config$1) {
1256
1412
  if (this.options.includes(dataset.value)) dataset.typed = true;
1257
1413
  else _addIssue(this, "type", dataset, config$1);
1258
1414
  return dataset;
1259
1415
  }
1260
- };
1416
+ });
1261
1417
  }
1262
1418
  // @__NO_SIDE_EFFECTS__
1263
1419
  function record(key, value$1, message$1) {
1264
- return {
1420
+ return _standardSchema({
1265
1421
  kind: "schema",
1266
1422
  type: "record",
1267
1423
  reference: record,
@@ -1270,9 +1426,6 @@ function record(key, value$1, message$1) {
1270
1426
  key,
1271
1427
  value: value$1,
1272
1428
  message: message$1,
1273
- get "~standard"() {
1274
- return /* @__PURE__ */ _getStandardProps(this);
1275
- },
1276
1429
  "~run"(dataset, config$1) {
1277
1430
  const input = dataset.value;
1278
1431
  if (input && typeof input === "object") {
@@ -1325,35 +1478,29 @@ function record(key, value$1, message$1) {
1325
1478
  } else _addIssue(this, "type", dataset, config$1);
1326
1479
  return dataset;
1327
1480
  }
1328
- };
1481
+ });
1329
1482
  }
1330
1483
  // @__NO_SIDE_EFFECTS__
1331
1484
  function string(message$1) {
1332
- return {
1485
+ return _standardSchema({
1333
1486
  kind: "schema",
1334
1487
  type: "string",
1335
1488
  reference: string,
1336
1489
  expects: "string",
1337
1490
  async: false,
1338
1491
  message: message$1,
1339
- get "~standard"() {
1340
- return /* @__PURE__ */ _getStandardProps(this);
1341
- },
1342
1492
  "~run"(dataset, config$1) {
1343
1493
  if (typeof dataset.value === "string") dataset.typed = true;
1344
1494
  else _addIssue(this, "type", dataset, config$1);
1345
1495
  return dataset;
1346
1496
  }
1347
- };
1497
+ });
1348
1498
  }
1349
1499
  // @__NO_SIDE_EFFECTS__
1350
1500
  function pipe(...pipe$1) {
1351
- return {
1501
+ return _standardSchema({
1352
1502
  ...pipe$1[0],
1353
1503
  pipe: pipe$1,
1354
- get "~standard"() {
1355
- return /* @__PURE__ */ _getStandardProps(this);
1356
- },
1357
1504
  "~run"(dataset, config$1) {
1358
1505
  for (const item of pipe$1) if (item.kind !== "metadata") {
1359
1506
  if (dataset.issues && (item.kind === "schema" || item.kind === "transformation")) {
@@ -1364,7 +1511,7 @@ function pipe(...pipe$1) {
1364
1511
  }
1365
1512
  return dataset;
1366
1513
  }
1367
- };
1514
+ });
1368
1515
  }
1369
1516
 
1370
1517
  // packages/ai/agent/createAgentSchema.ts
@@ -1387,7 +1534,10 @@ var PROVIDER_REASONING_EFFORT_VALUES = {
1387
1534
  // Cursor: 推理强度在模型名后缀 (如 -high),不走独立参数
1388
1535
  cursor: [],
1389
1536
  // MiMo: 保守默认
1390
- mimo: ["low", "medium", "high"]
1537
+ mimo: ["low", "medium", "high"],
1538
+ // CommandCode Provider API 透传 reasoning_effort(low/medium/high/xhigh/max),
1539
+ // 端点按各模型支持的子集自动 clamp(见 commandcode.ai/docs/provider-api)。
1540
+ commandcode: ["low", "medium", "high", "xhigh", "max"]
1391
1541
  };
1392
1542
  var greetingMenuItemSchema = object({
1393
1543
  id: pipe(string(), minLength(1)),
@@ -1429,10 +1579,9 @@ var referenceItemSchema = pipe(
1429
1579
 
1430
1580
  // packages/ai/llm/reasoningModels.ts
1431
1581
  var REASONING_MODEL_NAMES = /* @__PURE__ */ new Set([
1432
- "deepseek-v4-flash",
1433
- "deepseek-v4-flash-vision-exp",
1434
- "deepseek-v4-pro",
1582
+ "deepseek-flash",
1435
1583
  "gemini-3.7-flash",
1584
+ "gemini-3.8-flash",
1436
1585
  "gemini-3.6-flash",
1437
1586
  // Legacy Gemini ids — 已从模型注册表下线,保留只为存量 agent 的 reasoning UI。
1438
1587
  "gemini-3.5-flash",
@@ -1440,6 +1589,7 @@ var REASONING_MODEL_NAMES = /* @__PURE__ */ new Set([
1440
1589
  "gemini-3-pro-preview",
1441
1590
  "gemini-3.1-pro-preview",
1442
1591
  "gpt-5.5-pro",
1592
+ "gpt-6-astra",
1443
1593
  "gpt-5.6-sol",
1444
1594
  "gpt-5.6-terra",
1445
1595
  "gpt-5.6-luna",
@@ -1520,6 +1670,8 @@ var MODEL_MAP = {
1520
1670
  google: googleModels,
1521
1671
  openai: openAIModels,
1522
1672
  deepinfra: deepinfraModels,
1673
+ baseten: basetenModels,
1674
+ runinfra: runinfraModels,
1523
1675
  openrouter: openrouterModels,
1524
1676
  fireworks: fireworksModels,
1525
1677
  nolo: platformHostedModels,
@@ -1542,7 +1694,10 @@ var ANTHROPIC_MODEL_ALIASES = {
1542
1694
  };
1543
1695
  var NOLO_MODEL_ALIASES = {
1544
1696
  "glm-5.2": "glm-5.3",
1545
- "glm-5.3-flash": "glm-5-3-flash"
1697
+ "glm-5.3-flash": "glm-5-3-flash",
1698
+ "deepseek-v4-flash": "deepseek-flash",
1699
+ "deepseek-v4-flash-vision-exp": "deepseek-flash",
1700
+ "deepseek-v4-pro": "deepseek-flash"
1546
1701
  };
1547
1702
  var normalizeLookupProvider = (provider) => {
1548
1703
  if (!provider) return null;
@@ -1681,7 +1836,7 @@ function getProviderByModelName(modelName) {
1681
1836
  }
1682
1837
  var DEFAULT_MODEL = {
1683
1838
  provider: PLATFORM_HOSTED_KIMI_PROVIDER,
1684
- name: PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL
1839
+ name: PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL
1685
1840
  };
1686
1841
  function getApiEndpoint(agent) {
1687
1842
  const { provider, customProviderUrl, endpointKey, model } = agent;
@@ -428,7 +428,7 @@ function parseGeminiStreamJson(stdout) {
428
428
  }
429
429
  function executeGemini(prompt, options) {
430
430
  const {
431
- model = "gemini-3.7-flash",
431
+ model = "gemini-3.8-flash",
432
432
  timeout = 12e4,
433
433
  cwd = process.cwd(),
434
434
  yolo = true
@@ -1434,7 +1434,7 @@ function executeCliStreaming(provider, prompt, options) {
1434
1434
  }
1435
1435
  function executeGeminiStreaming(prompt, options) {
1436
1436
  const {
1437
- model = "gemini-3.7-flash",
1437
+ model = "gemini-3.8-flash",
1438
1438
  timeout = 12e4,
1439
1439
  cwd = process.cwd(),
1440
1440
  yolo = true,
@@ -11,22 +11,22 @@ import {
11
11
  getAntigravityUserAgent,
12
12
  normalizeAntigravityTokenPayload,
13
13
  refreshAntigravityToken
14
- } from "./chunk-757BGY6Y.js";
14
+ } from "./chunk-QEW2MFDQ.js";
15
15
  import {
16
16
  writeOAuthCredential
17
- } from "./chunk-FD36SCCD.js";
17
+ } from "./chunk-ONXOABJR.js";
18
18
  import {
19
19
  toErrorMessage
20
20
  } from "./chunk-HNMXYYJR.js";
21
21
  import {
22
22
  asOptionalFiniteNumber
23
23
  } from "./chunk-WWC7I6TA.js";
24
- import {
25
- isRecord
26
- } from "./chunk-KUG52IAP.js";
27
24
  import {
28
25
  asTrimmedString
29
26
  } from "./chunk-3EUW3WEO.js";
27
+ import {
28
+ isRecord
29
+ } from "./chunk-KUG52IAP.js";
30
30
 
31
31
  // packages/cli/oauth/callback-server.ts
32
32
  import { createServer } from "node:http";
@@ -483,6 +483,39 @@ async function refreshOpenAiCodexToken(credential, deps = {}) {
483
483
  });
484
484
  }
485
485
 
486
+ // packages/cli/oauth/deviceCodeDisplay.ts
487
+ var BOLD = "\x1B[1m";
488
+ var RESET = "\x1B[0m";
489
+ function renderDeviceCodeDisplay(args) {
490
+ const { provider, verificationUrl, completeUrl, userCode, notes = [] } = args;
491
+ const bold = args.isTTY ?? Boolean(process.stdout.isTTY);
492
+ const rows = [
493
+ { rendered: ` URL: ${verificationUrl} `, plain: ` URL: ${verificationUrl} ` }
494
+ ];
495
+ if (completeUrl) {
496
+ rows.push({
497
+ rendered: ` Link: ${completeUrl} `,
498
+ plain: ` Link: ${completeUrl} `
499
+ });
500
+ }
501
+ rows.push({
502
+ rendered: ` Code: ${bold ? `${BOLD}${userCode}${RESET}` : userCode} `,
503
+ plain: ` Code: ${userCode} `
504
+ });
505
+ const innerWidth = Math.max(...rows.map((row) => row.plain.length));
506
+ const top = `\u250C${"\u2500".repeat(innerWidth)}\u2510`;
507
+ const bottom = `\u2514${"\u2500".repeat(innerWidth)}\u2518`;
508
+ return [
509
+ `Authorize nolo-cli for ${provider} (device code / headless):`,
510
+ top,
511
+ ...rows.map(
512
+ (row) => `\u2502${row.rendered}${" ".repeat(innerWidth - row.plain.length)}\u2502`
513
+ ),
514
+ bottom,
515
+ ...notes
516
+ ];
517
+ }
518
+
486
519
  // packages/cli/oauth/pkce.ts
487
520
  import { createHash, randomBytes } from "node:crypto";
488
521
  var PKCE_VERIFIER_LENGTH = 64;
@@ -612,9 +645,14 @@ async function pollDeviceCodeToken(args) {
612
645
  async function runOpenAiCodexDeviceCode(deps = {}) {
613
646
  const now = deps.now ?? Date.now;
614
647
  const start = await startDeviceCodeFlow(deps);
615
- deps.output?.log?.("Authorize nolo-cli for ChatGPT / OpenAI Codex:");
616
- deps.output?.log?.(OPENAI_CODEX_DEVICE_VERIFICATION_URL);
617
- deps.output?.log?.(`Enter code: ${start.userCode}`);
648
+ for (const line of renderDeviceCodeDisplay({
649
+ provider: "ChatGPT / OpenAI Codex",
650
+ verificationUrl: OPENAI_CODEX_DEVICE_VERIFICATION_URL,
651
+ userCode: start.userCode,
652
+ notes: ["Code expires in ~15 minutes. Never share the code or tokens."]
653
+ })) {
654
+ deps.output?.log?.(line);
655
+ }
618
656
  if (deps.openBrowser) {
619
657
  const opened = await deps.openBrowser(OPENAI_CODEX_DEVICE_VERIFICATION_URL);
620
658
  if (!opened) deps.output?.log?.("Could not open a browser automatically. Open the URL above.");
@@ -1116,6 +1154,7 @@ export {
1116
1154
  startCallbackServer,
1117
1155
  runAntigravityOAuthLogin,
1118
1156
  refreshAntigravityOAuthToken,
1157
+ renderDeviceCodeDisplay,
1119
1158
  generatePkcePair,
1120
1159
  runOpenAiCodexDeviceCode,
1121
1160
  runOpenAiCodexBrowserPkce,
@@ -0,0 +1,23 @@
1
+ // packages/core/abortableDelay.ts
2
+ function waitForAbortableDelay(ms, signal) {
3
+ const delayMs = Number.isFinite(ms) && ms >= 0 ? Math.round(ms) : 0;
4
+ if (signal?.aborted) {
5
+ return Promise.reject(new DOMException("Aborted", "AbortError"));
6
+ }
7
+ return new Promise((resolve, reject) => {
8
+ const onAbort = () => {
9
+ clearTimeout(timeoutId);
10
+ signal?.removeEventListener("abort", onAbort);
11
+ reject(new DOMException("Aborted", "AbortError"));
12
+ };
13
+ const timeoutId = setTimeout(() => {
14
+ signal?.removeEventListener("abort", onAbort);
15
+ resolve();
16
+ }, delayMs);
17
+ signal?.addEventListener("abort", onAbort, { once: true });
18
+ });
19
+ }
20
+
21
+ export {
22
+ waitForAbortableDelay
23
+ };