nolo-cli 0.33.0-alpha.9 → 0.34.0-alpha.3

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 (164) hide show
  1. package/{_executeModel-2WR4RTZZ.js → _executeModel-TMUXL7J5.js} +64 -65
  2. package/{action-OQWPNKAH.js → action-KMBZ3LCZ.js} +12 -12
  3. package/{addContentAction-YVINZQTF.js → addContentAction-KQ44UT2U.js} +10 -10
  4. package/{addDialogAgentAction-6IOCIEPI.js → addDialogAgentAction-ILSDCMYL.js} +9 -9
  5. package/{agentDeleteCommand-H22WRYC6.js → agentDeleteCommand-KA2IQAPG.js} +40 -39
  6. package/{agentEmailCommands-DGJVCMCG.js → agentEmailCommands-UIYBGCZW.js} +74 -75
  7. package/{agentListCommands-6NWMLIMQ.js → agentListCommands-L6JNUOLH.js} +47 -37
  8. package/{agentMachineCommands-5MUO6RDI.js → agentMachineCommands-5CQW5NZR.js} +37 -36
  9. package/agentProviderCommands-65ZC2WB4.js +122 -0
  10. package/{agentPullCommand-YH5GEBK4.js → agentPullCommand-TSWAJPS2.js} +1 -1
  11. package/agentRecordCommands-VUDJQIZH.js +112 -0
  12. package/agentRunCommand-EJWYF3BL.js +132 -0
  13. package/{agentRunControl-SCIVRZWX.js → agentRunControl-7MUPSYDQ.js} +7 -1
  14. package/{agentRuntimeLocal-PRAR3NCW.js → agentRuntimeLocal-XXBMDMBU.js} +33 -33
  15. package/{agentSlice-AMDSTXP5.js → agentSlice-HTIEYKIU.js} +12 -12
  16. package/agentSuperviseCommands-MKWW3ICX.js +640 -0
  17. package/{appDeleteCommands-L5PKC42V.js → appDeleteCommands-OUBL6VHB.js} +35 -34
  18. package/{appDeployCommands-3J7Z4XWV.js → appDeployCommands-BZSS2MX4.js} +35 -34
  19. package/{appDeployStatusCommands-YTRPXE72.js → appDeployStatusCommands-P2ZQOY5X.js} +35 -34
  20. package/{appGetCommands-JVXV5WXD.js → appGetCommands-WCFWQZZM.js} +35 -34
  21. package/{appListCommands-7KDEOJSO.js → appListCommands-FVJ3QNL7.js} +35 -34
  22. package/{authCommand-6Y5LTMZB.js → authCommand-B2XRHNJH.js} +19 -19
  23. package/{authCommands-EAPFGNHN.js → authCommands-GWABTFMR.js} +6 -6
  24. package/{chatQueueReduxAdapter-ZKSS6XRV.js → chatQueueReduxAdapter-ZP2ZS63U.js} +28 -28
  25. package/{chunk-UM4H3URE.js → chunk-23KKIMD5.js} +7 -7
  26. package/chunk-2BWU4ORW.js +2574 -0
  27. package/{chunk-2UECQ7RE.js → chunk-3AOLVADY.js} +1 -1
  28. package/{chunk-M2YMQOLC.js → chunk-4APLX2RT.js} +75 -10
  29. package/{chunk-ZHYK3N56.js → chunk-4AWH4LQA.js} +3 -1
  30. package/{chunk-3GZXL6FM.js → chunk-4DMPISV6.js} +7 -3
  31. package/{chunk-BQ3OHLR5.js → chunk-5GQ6XCJY.js} +1217 -691
  32. package/{chunk-GOIDVXK5.js → chunk-5LDKQUOT.js} +21 -8
  33. package/{chunk-OIQPORYI.js → chunk-64KIQZA2.js} +175 -2
  34. package/{chunk-6XIE5ZGI.js → chunk-6HIGYUBQ.js} +1 -1
  35. package/chunk-6XG52ZQ6.js +146 -0
  36. package/{chunk-FMEVI5TG.js → chunk-7CH6U3FL.js} +1 -1
  37. package/chunk-AA2YUJNV.js +54 -0
  38. package/{chunk-7INB7NXF.js → chunk-AE5GVFMG.js} +294 -54
  39. package/{chunk-UNOTBWZZ.js → chunk-B6H5XCT2.js} +8 -8
  40. package/{chunk-NNWHHCVP.js → chunk-BMB563Y6.js} +10 -4
  41. package/{chunk-DFUPZE6V.js → chunk-C6ELZQ7H.js} +249 -34
  42. package/{chunk-7KNERA53.js → chunk-E2OQ5N2F.js} +87 -13
  43. package/{chunk-6HYVJV7B.js → chunk-ESHYE7WU.js} +2 -1
  44. package/{chunk-KHCLMKZZ.js → chunk-EY7V7REW.js} +280 -6
  45. package/{chunk-JZPBVBIY.js → chunk-FD36SCCD.js} +19 -8
  46. package/{chunk-DKMOY3QI.js → chunk-FGLKRJDI.js} +54 -3
  47. package/{chunk-MQWVAOIU.js → chunk-FT4XBCK4.js} +33 -158
  48. package/{chunk-2QTEYCR7.js → chunk-FTM4KUOZ.js} +17 -17
  49. package/{chunk-U4TRT5V4.js → chunk-GEPHJJW4.js} +1 -1
  50. package/{chunk-7YYHKBJP.js → chunk-GKHV4UH5.js} +1 -1
  51. package/{chunk-2IVEXF7P.js → chunk-GUYMR3JL.js} +6 -33
  52. package/{chunk-YDTYDA5W.js → chunk-GZRMWK5R.js} +6 -4
  53. package/{chunk-X664KVEV.js → chunk-HHBXCRJS.js} +204 -123
  54. package/{chunk-AN7DGYMW.js → chunk-I7VDDN45.js} +4579 -3131
  55. package/{chunk-DSBGWT2C.js → chunk-IEEEWIVO.js} +10 -10
  56. package/{chunk-75U775RZ.js → chunk-IFS5CUEH.js} +1 -1
  57. package/{chunk-WLH5BAKX.js → chunk-IIOHYLIG.js} +9 -4
  58. package/{chunk-UEAUAXYS.js → chunk-ILZY5B4U.js} +2063 -214
  59. package/chunk-IMHO5LC6.js +370 -0
  60. package/{chunk-ADLYMQB6.js → chunk-IZCHPD7T.js} +52 -3
  61. package/{chunk-ITIA6OAQ.js → chunk-IZNJDUJ4.js} +5 -5
  62. package/{chunk-X2DAEZ3X.js → chunk-J5NMOM35.js} +1 -1
  63. package/{chunk-RPRRIFXV.js → chunk-JI2TIPLP.js} +1 -1
  64. package/{chunk-EGRJC4ZN.js → chunk-JIADXJYU.js} +1 -1
  65. package/{chunk-IHEC7VBF.js → chunk-K4KIFRIN.js} +1 -1
  66. package/{chunk-WJSW43QZ.js → chunk-L3JWI7WX.js} +0 -1
  67. package/{chunk-3RUW3ONU.js → chunk-LD6Y6RJY.js} +4 -4
  68. package/chunk-M3JQWYBC.js +387 -0
  69. package/{chunk-GM6PU7B6.js → chunk-MEYIRKDN.js} +0 -1
  70. package/{chunk-6YXDOOSH.js → chunk-MGIHZ5CJ.js} +4 -4
  71. package/{chunk-4F5M2MW5.js → chunk-MJWX4JQO.js} +2 -2
  72. package/{chunk-Q5ITEGIN.js → chunk-N4XRDM26.js} +1 -1
  73. package/{chunk-5CS33IBL.js → chunk-NQ4N4IGO.js} +11 -12
  74. package/{chunk-ZZ2MH7LE.js → chunk-O6OSWFZQ.js} +0 -1
  75. package/{chunk-RJKIB55Y.js → chunk-OSCSEJJR.js} +15 -8
  76. package/{chunk-HUCT7HID.js → chunk-P2I7ELDC.js} +3 -3
  77. package/{chunk-BXPBZVRE.js → chunk-PILJX4DH.js} +285 -251
  78. package/{chunk-SCUETSRP.js → chunk-PV734VZX.js} +1 -1
  79. package/{chunk-XLLTJXAD.js → chunk-QI3CHZUT.js} +39 -2672
  80. package/{chunk-WNHST4IE.js → chunk-RKRXAL3V.js} +5451 -5013
  81. package/{chunk-7E72JMBB.js → chunk-SMPAUSX5.js} +46 -5
  82. package/{chunk-5X4GQ53C.js → chunk-TLBZMLLJ.js} +7 -7
  83. package/{chunk-ASDXPOJH.js → chunk-U6QQLXWI.js} +1 -1
  84. package/{chunk-NUO3QFWD.js → chunk-UNHKVD2N.js} +1 -1
  85. package/{chunk-GE6IWA5N.js → chunk-UNZDCI3O.js} +126 -1
  86. package/{chunk-CPYYM4RJ.js → chunk-V5GA74HI.js} +19 -5
  87. package/{chunk-FXFGNOT2.js → chunk-VFVCYIRQ.js} +1 -1
  88. package/{chunk-G7E4NWFE.js → chunk-W445DPVT.js} +1 -1
  89. package/{chunk-EMW55KKX.js → chunk-WBZE7C6S.js} +1 -1
  90. package/{chunk-3UG2IIZ3.js → chunk-WN5AJG5I.js} +1 -1
  91. package/{chunk-KSRFVP36.js → chunk-WRN7L5CS.js} +1 -1
  92. package/{chunk-GJXRIOLS.js → chunk-WRP5TTM6.js} +4 -84
  93. package/chunk-X2K2JSO4.js +163 -0
  94. package/{chunk-OR2HNLVO.js → chunk-X6EN3KJX.js} +279 -477
  95. package/{chunk-VWY2CZD2.js → chunk-XMFDQYWA.js} +3 -3
  96. package/{chunk-IKWTTKWG.js → chunk-XQES6LXQ.js} +2 -2
  97. package/{chunk-IR6W62Q6.js → chunk-XT73C4VH.js} +18 -21
  98. package/{chunk-7L5CQQIT.js → chunk-Y5W623XU.js} +15 -15
  99. package/{chunk-RY57GLGW.js → chunk-YPREESF4.js} +42 -5
  100. package/{chunk-BQXOGBFN.js → chunk-YZ2WE6CW.js} +2 -2
  101. package/{chunk-DNQK7M7K.js → chunk-Z7COG62J.js} +4 -4
  102. package/{chunk-3WXRAHCG.js → chunk-ZBB3MZR3.js} +3 -3
  103. package/{cliExecutor-DW3PHGEL.js → cliExecutor-BBUVQU4L.js} +2 -2
  104. package/{clipboardy-MMBYVRLF.js → clipboardy-PRUHGPGC.js} +4 -3
  105. package/{codingSkills-DY5MINPG.js → codingSkills-6F4EQFCM.js} +4 -5
  106. package/cooldownCommands-C2SZLEEO.js +90 -0
  107. package/{createAgentAutomationAction-GVSJL2CI.js → createAgentAutomationAction-TGUXUZCY.js} +28 -30
  108. package/createDialogAction-FD5AEOUF.js +58 -0
  109. package/{createPageAction-M2VDKBYS.js → createPageAction-NPC3LYNK.js} +31 -34
  110. package/{dbSlice-UI2VCBLG.js → dbSlice-PIQGICNM.js} +9 -9
  111. package/{deleteFile-XQXPBFFB.js → deleteFile-NPZ64DFN.js} +4 -4
  112. package/{dialogCommands-26DBYNBT.js → dialogCommands-ZF2RSNCG.js} +37 -36
  113. package/{dialogSlice-FFGLRCBL.js → dialogSlice-6BINHWQT.js} +27 -27
  114. package/dist-VODFSGNG.js +7442 -0
  115. package/{docCreateCommands-F2ASWG6B.js → docCreateCommands-4VQ5MOHP.js} +36 -36
  116. package/{docDeleteCommands-A4URDZPI.js → docDeleteCommands-M7WLNVPB.js} +37 -37
  117. package/{docReadCommands-DO6VHDZD.js → docReadCommands-6LU6P2WT.js} +36 -36
  118. package/{docStore-EDAE7RNT.js → docStore-SIUFLABN.js} +29 -31
  119. package/{docUpdateCommands-ZTXZ3RTP.js → docUpdateCommands-S2LX4ENL.js} +39 -39
  120. package/{fetchMessages-7QRCCRYK.js → fetchMessages-CUEFN4GQ.js} +4 -4
  121. package/{getPricing-L2ENXWHV.js → getPricing-P3E2WRIH.js} +5 -5
  122. package/{handleSendMessageAction-CIRLGHOC.js → handleSendMessageAction-QVG5YNZY.js} +29 -29
  123. package/index.js +92 -77
  124. package/{localDialogRead-SLMPV5SK.js → localDialogRead-P7CHFMIC.js} +1 -1
  125. package/{localRuntimeAuthority-E3R24J4T.js → localRuntimeAuthority-S77B5QVB.js} +6 -2
  126. package/{localRuntimeDb-DDZCJFQZ.js → localRuntimeDb-N3H3HQ7G.js} +1 -1
  127. package/{machineCommands-NIQNCYJV.js → machineCommands-OSEBN7BZ.js} +76 -77
  128. package/{machineInfo-M6KB6HZN.js → machineInfo-66ZFUMLE.js} +1 -1
  129. package/{machineWsRunDispatch-EMTSQGAR.js → machineWsRunDispatch-NTJQCIIF.js} +68 -69
  130. package/{models-OX2S5C6Q.js → models-L7S2EKPM.js} +2 -2
  131. package/package.json +1 -1
  132. package/{read-2VHEHCAN.js → read-6C2XD3YZ.js} +5 -5
  133. package/{readDocTool-CSWD6NPC.js → readDocTool-Y7AB365O.js} +1 -1
  134. package/{readlineWorkspace-A2JBJWLI.js → readlineWorkspace-JPME5S7A.js} +4860 -3476
  135. package/{removeDialogAgentAction-2T7BPM3T.js → removeDialogAgentAction-KG5WMJRZ.js} +13 -13
  136. package/{runAgentClientLoop-BV4736ED.js → runAgentClientLoop-SOKEXCUF.js} +61 -61
  137. package/{runtimeDoctorCommands-KIKM6BIO.js → runtimeDoctorCommands-HT4O2PXL.js} +6 -6
  138. package/{setDialogExtraReferencesAction-GPT37HTW.js → setDialogExtraReferencesAction-O2NLXMSM.js} +10 -10
  139. package/{setPrimaryDialogAgentAction-3746P7IW.js → setPrimaryDialogAgentAction-FYYUY7PB.js} +13 -13
  140. package/{settingSlice-FIFOQ6OR.js → settingSlice-GPLI6E3M.js} +11 -11
  141. package/{skillDiscovery-KLLKXPUO.js → skillDiscovery-GPUDHDTZ.js} +3 -4
  142. package/{slateUtils-VO2FU36K.js → slateUtils-RIZES3PV.js} +1 -1
  143. package/{spaceCommands-AYZQHDB3.js → spaceCommands-Z5JLMFFJ.js} +223 -37
  144. package/{spaceSlice-43BNF22B.js → spaceSlice-Z3BGCLGX.js} +28 -30
  145. package/{streamAgentChatTurn-OLLRSITV.js → streamAgentChatTurn-INF5RGK4.js} +115 -129
  146. package/{switchDialogAgentAction-MQTUTQHL.js → switchDialogAgentAction-GH5P6Q3Z.js} +9 -9
  147. package/{chunk-IDAU4UFS.js → syncMapping-N6RGXGBW.js} +11 -11
  148. package/{tableCommands-QE47K72R.js → tableCommands-PQUJ55AS.js} +3 -3
  149. package/{tools-2SI3FXLL.js → tools-ZELMSJZ3.js} +45 -47
  150. package/{tuiSummaryLlmCaller-EAWQ3IZX.js → tuiSummaryLlmCaller-LH7F2SP7.js} +18 -18
  151. package/{updateCommands-AK2RDOFR.js → updateCommands-MNDUIKN7.js} +2 -2
  152. package/{updateDialogTitleAction-YJEQFYOA.js → updateDialogTitleAction-EDUCIB7G.js} +31 -33
  153. package/agentRecordCommands-YMGKT2WF.js +0 -113
  154. package/agentRunCommand-LYEMVQJH.js +0 -131
  155. package/chunk-AETZ7AD6.js +0 -274
  156. package/chunk-D5JI6VDM.js +0 -1800
  157. package/chunk-M3JEW6N6.js +0 -193
  158. package/chunk-ZURFOV5J.js +0 -105
  159. package/chunk-ZWS6DUHX.js +0 -480
  160. package/createDialogAction-VVR46Q2A.js +0 -61
  161. package/syncMapping-RK2MANUX.js +0 -43
  162. package/{chunk-KMSZPTM6.js → chunk-2WKUUY2E.js} +3 -3
  163. package/{chunk-CWMSB67P.js → chunk-AGGIDPCZ.js} +0 -0
  164. package/{chunk-SAQQLJZ5.js → chunk-JDSUTNYY.js} +3 -3
@@ -4,16 +4,13 @@ import {
4
4
  PLATFORM_HOSTED_KIMI_PROVIDER,
5
5
  cloudflareModels,
6
6
  deepinfraModels,
7
- fireworksModels,
8
7
  getCloudflareWorkersAiChatCompletionsUrl,
9
8
  gmiModels,
10
- googleModels,
11
- openAIModels,
12
9
  openrouterModels,
13
10
  platformHostedModels,
14
- xaiModels,
11
+ toCnyCredits,
15
12
  zaiModels
16
- } from "./chunk-OR2HNLVO.js";
13
+ } from "./chunk-X6EN3KJX.js";
17
14
 
18
15
  // packages/integrations/anthropic/anthropicModels.ts
19
16
  var anthropicModels = [
@@ -26,13 +23,9 @@ var anthropicModels = [
26
23
  maxOutputTokens: 8192,
27
24
  price: {
28
25
  input: 27,
29
- // $3/MTok * 9
30
26
  output: 135,
31
- // $15/MTok * 9
32
27
  cachingWrite: 33.75,
33
- // $3.75/MTok * 9
34
28
  cachingRead: 2.7
35
- // $0.30/MTok * 9
36
29
  }
37
30
  },
38
31
  {
@@ -44,13 +37,9 @@ var anthropicModels = [
44
37
  maxOutputTokens: 8192,
45
38
  price: {
46
39
  input: 27,
47
- // $3/MTok * 9
48
40
  output: 135,
49
- // $15/MTok * 9
50
41
  cachingWrite: 33.75,
51
- // $3.75/MTok * 9
52
42
  cachingRead: 2.7
53
- // $0.30/MTok * 9
54
43
  }
55
44
  },
56
45
  {
@@ -62,13 +51,9 @@ var anthropicModels = [
62
51
  maxOutputTokens: 8192,
63
52
  price: {
64
53
  input: 7.2,
65
- // $0.80/MTok * 9
66
54
  output: 36,
67
- // $4/MTok * 9
68
55
  cachingWrite: 9,
69
- // $1/MTok * 9
70
56
  cachingRead: 0.72
71
- // $0.08/MTok * 9
72
57
  }
73
58
  }
74
59
  ];
@@ -112,6 +97,236 @@ function isAdaptiveThinkingModelId(model) {
112
97
  return n.includes("fable-5") || n.includes("opus-5") || n.includes("sonnet-5") || n.includes("opus-4-8") || n.includes("opus-4-7") || n.includes("sonnet-4-6") || n.includes("opus-4-6");
113
98
  }
114
99
 
100
+ // packages/ai/agent/liveAudioModel.ts
101
+ var DEFAULT_GOOGLE_LIVE_AUDIO_MODEL = "gemini-3.1-flash-live-preview";
102
+
103
+ // packages/integrations/google/models.ts
104
+ var googleModels = [
105
+ {
106
+ name: DEFAULT_GOOGLE_LIVE_AUDIO_MODEL,
107
+ displayName: "Gemini 3.1 Flash Live",
108
+ provider: "google",
109
+ description: "Gemini Live API model for low-latency real-time voice conversations.",
110
+ hasVision: true,
111
+ hasAudio: true,
112
+ contextWindow: 1048576,
113
+ maxOutputTokens: 65500,
114
+ supportsTool: true,
115
+ price: {
116
+ input: 4,
117
+ output: 24,
118
+ cachingWrite: 0.4,
119
+ cachingRead: 0.4
120
+ }
121
+ },
122
+ {
123
+ name: "gemini-3.6-flash",
124
+ displayName: "Gemini 3.6 Flash",
125
+ provider: "google",
126
+ description: "Gemini 3.6 Flash model for fast frontier agentic, coding, and multimodal tasks.",
127
+ hasVision: true,
128
+ hasAudio: true,
129
+ contextWindow: 1048576,
130
+ maxOutputTokens: 65536,
131
+ supportsTool: true,
132
+ supportsReasoningEffort: true,
133
+ price: {
134
+ input: 12,
135
+ output: 72,
136
+ cachingWrite: 1.2,
137
+ cachingRead: 1.2
138
+ },
139
+ serviceTierPriceMultipliers: {
140
+ batch: { inputOutput: 0.5, cache: 0.5 },
141
+ flex: { inputOutput: 0.5, cache: 0.08 / 0.15 },
142
+ priority: { inputOutput: 1.8, cache: 1.8 }
143
+ }
144
+ },
145
+ {
146
+ name: "gemini-3.7-flash",
147
+ displayName: "Gemini 3.7 Flash",
148
+ provider: "google",
149
+ description: "Gemini 3.7 Flash model for fast frontier agentic, coding, and multimodal tasks.",
150
+ hasVision: true,
151
+ hasAudio: true,
152
+ contextWindow: 1048576,
153
+ maxOutputTokens: 65536,
154
+ supportsTool: true,
155
+ supportsReasoningEffort: true,
156
+ // Antigravity's subscription wire route is tiered; Gemini API uses this logical id.
157
+ price: {
158
+ input: 6,
159
+ output: 30,
160
+ cachingWrite: 0.6,
161
+ cachingRead: 0.6
162
+ }
163
+ }
164
+ ];
165
+
166
+ // packages/integrations/openai/models.ts
167
+ var GPT_5_5_STANDARD_PRICE = {
168
+ input: 40,
169
+ output: 240,
170
+ inputCacheHit: 4
171
+ };
172
+ var GPT_5_5_LONG_CONTEXT_PRICE = {
173
+ input: 80,
174
+ output: 360,
175
+ inputCacheHit: 8
176
+ };
177
+ var GPT_5_5_PRO_STANDARD_PRICE = {
178
+ input: 240,
179
+ output: 1440,
180
+ inputCacheHit: 0
181
+ };
182
+ var GPT_5_5_PRO_LONG_CONTEXT_PRICE = {
183
+ input: 480,
184
+ output: 2160,
185
+ inputCacheHit: 0
186
+ };
187
+ var GPT_5_6_SOL_STANDARD_PRICE = {
188
+ input: 40,
189
+ output: 240,
190
+ inputCacheHit: 4
191
+ };
192
+ var GPT_5_6_SOL_LONG_CONTEXT_PRICE = {
193
+ input: 80,
194
+ output: 360,
195
+ inputCacheHit: 8
196
+ };
197
+ var GPT_5_6_TERRA_STANDARD_PRICE = {
198
+ input: 16,
199
+ output: 96,
200
+ inputCacheHit: 1.6
201
+ };
202
+ var GPT_5_6_TERRA_LONG_CONTEXT_PRICE = {
203
+ input: 32,
204
+ output: 144,
205
+ inputCacheHit: 3.2
206
+ };
207
+ var GPT_5_6_LUNA_PRICE = {
208
+ input: 1.6,
209
+ output: 9.6,
210
+ inputCacheHit: 0.16
211
+ };
212
+ var openAIModels = [
213
+ {
214
+ name: "gpt-5.5",
215
+ displayName: "GPT-5.5 Standard",
216
+ endpointKey: "responses",
217
+ hasVision: true,
218
+ contextWindow: 1047576,
219
+ maxOutputTokens: 128e3,
220
+ supportsReasoningEffort: true,
221
+ price: GPT_5_5_STANDARD_PRICE,
222
+ pricingStrategy: {
223
+ type: "tiered_context",
224
+ tiers: [
225
+ {
226
+ minContext: 272001,
227
+ price: GPT_5_5_LONG_CONTEXT_PRICE
228
+ }
229
+ ]
230
+ }
231
+ },
232
+ {
233
+ name: "gpt-5.6-sol",
234
+ displayName: "GPT-5.6 Sol (Flagship)",
235
+ endpointKey: "responses",
236
+ hasVision: true,
237
+ contextWindow: 105e4,
238
+ maxOutputTokens: 128e3,
239
+ supportsReasoningEffort: true,
240
+ price: GPT_5_6_SOL_STANDARD_PRICE,
241
+ pricingStrategy: {
242
+ type: "tiered_context",
243
+ tiers: [
244
+ {
245
+ minContext: 272001,
246
+ price: GPT_5_6_SOL_LONG_CONTEXT_PRICE
247
+ }
248
+ ]
249
+ }
250
+ },
251
+ {
252
+ name: "gpt-5.6-terra",
253
+ displayName: "GPT-5.6 Terra (Balanced)",
254
+ endpointKey: "responses",
255
+ hasVision: true,
256
+ contextWindow: 105e4,
257
+ maxOutputTokens: 128e3,
258
+ supportsReasoningEffort: true,
259
+ price: GPT_5_6_TERRA_STANDARD_PRICE,
260
+ pricingStrategy: {
261
+ type: "tiered_context",
262
+ tiers: [
263
+ {
264
+ minContext: 272001,
265
+ price: GPT_5_6_TERRA_LONG_CONTEXT_PRICE
266
+ }
267
+ ]
268
+ }
269
+ },
270
+ {
271
+ name: "gpt-5.6-luna",
272
+ displayName: "GPT-5.6 Luna (Fast)",
273
+ endpointKey: "responses",
274
+ hasVision: true,
275
+ contextWindow: 105e4,
276
+ maxOutputTokens: 128e3,
277
+ supportsReasoningEffort: true,
278
+ price: GPT_5_6_LUNA_PRICE
279
+ },
280
+ {
281
+ name: "gpt-5.5-pro",
282
+ displayName: "GPT-5.5 Pro",
283
+ endpointKey: "responses",
284
+ hasVision: true,
285
+ contextWindow: 1047576,
286
+ maxOutputTokens: 128e3,
287
+ supportsReasoningEffort: true,
288
+ price: GPT_5_5_PRO_STANDARD_PRICE,
289
+ pricingStrategy: {
290
+ type: "tiered_context",
291
+ tiers: [
292
+ {
293
+ minContext: 272001,
294
+ price: GPT_5_5_PRO_LONG_CONTEXT_PRICE
295
+ }
296
+ ]
297
+ }
298
+ }
299
+ ];
300
+
301
+ // packages/integrations/xai/models.ts
302
+ var xaiModels = [
303
+ {
304
+ name: "grok-4.6",
305
+ displayName: "Grok 4.6",
306
+ hasVision: true,
307
+ contextWindow: 5e5,
308
+ price: { input: 16, output: 48 },
309
+ fnCall: true,
310
+ jsonOutput: true
311
+ }
312
+ ];
313
+
314
+ // packages/ai/llm/fireworks.ts
315
+ var fireworksModels = [
316
+ {
317
+ name: "accounts/fireworks/models/minimax-m3",
318
+ displayName: "MiniMax: MiniMax M3",
319
+ hasVision: true,
320
+ price: {
321
+ input: 2.4,
322
+ output: 9.6,
323
+ cachingRead: 0.48
324
+ },
325
+ contextWindow: 512e3,
326
+ supportsTool: true
327
+ }
328
+ ];
329
+
115
330
  // packages/integrations/qwen/models.ts
116
331
  var qwenModels = [
117
332
  // ── Qwen3 旗舰 ──
@@ -126,7 +341,7 @@ var qwenModels = [
126
341
  supportsTool: true,
127
342
  supportsReasoningEffort: true,
128
343
  // 官方价:输入 ¥12/M、输出 ¥36/M;缓存命中 ¥1.5/M、显式缓存创建 ¥15/M、显式缓存命中 ¥1/M。
129
- price: { input: 12, output: 36 },
344
+ price: { input: toCnyCredits(12), output: toCnyCredits(36) },
130
345
  provider: "qwen",
131
346
  description: "2.4\u4E07\u4EBF\u53C2\u6570 MoE \u65D7\u8230\uFF0C1M \u4E0A\u4E0B\u6587\uFF08\u8F93\u5165 991K / \u8F93\u51FA 131K / \u601D\u7EF4\u94FE 262K\uFF09\uFF0C\u539F\u751F\u89C6\u89C9\u7406\u89E3\u8D2F\u7A7F\u89C4\u5212-\u6267\u884C-\u9A8C\u8BC1\uFF0C\u81EA\u4E3B\u7F16\u7A0B\u53EF\u4EA4\u4ED8\u5B8C\u6574\u9879\u76EE\u3002"
132
347
  },
@@ -140,7 +355,7 @@ var qwenModels = [
140
355
  fnCall: true,
141
356
  supportsTool: true,
142
357
  supportsReasoningEffort: true,
143
- price: { input: 6, output: 24 },
358
+ price: { input: toCnyCredits(6), output: toCnyCredits(24) },
144
359
  provider: "qwen",
145
360
  description: "\u5343\u95EE3 \u65D7\u8230\u6A21\u578B\uFF0C\u652F\u6301\u601D\u8003\u6A21\u5F0F\u3001\u51FD\u6570\u8C03\u7528\u3001\u7ED3\u6784\u5316\u8F93\u51FA\u3002"
146
361
  },
@@ -154,7 +369,7 @@ var qwenModels = [
154
369
  fnCall: true,
155
370
  supportsTool: true,
156
371
  supportsReasoningEffort: true,
157
- price: { input: 6, output: 24 },
372
+ price: { input: toCnyCredits(6), output: toCnyCredits(24) },
158
373
  provider: "qwen"
159
374
  },
160
375
  {
@@ -167,7 +382,7 @@ var qwenModels = [
167
382
  fnCall: true,
168
383
  supportsTool: true,
169
384
  supportsReasoningEffort: true,
170
- price: { input: 4, output: 12 },
385
+ price: { input: toCnyCredits(4), output: toCnyCredits(12) },
171
386
  provider: "qwen"
172
387
  },
173
388
  {
@@ -180,7 +395,7 @@ var qwenModels = [
180
395
  fnCall: true,
181
396
  supportsTool: true,
182
397
  supportsReasoningEffort: true,
183
- price: { input: 2, output: 6 },
398
+ price: { input: toCnyCredits(2), output: toCnyCredits(6) },
184
399
  provider: "qwen"
185
400
  },
186
401
  // ── Qwen3-Coder 编程系列 ──
@@ -194,7 +409,7 @@ var qwenModels = [
194
409
  fnCall: true,
195
410
  supportsTool: true,
196
411
  supportsReasoningEffort: true,
197
- price: { input: 3, output: 9 },
412
+ price: { input: toCnyCredits(3), output: toCnyCredits(9) },
198
413
  provider: "qwen",
199
414
  description: "\u5343\u95EE3 \u7F16\u7A0B\u65D7\u8230\uFF0C1M \u957F\u4E0A\u4E0B\u6587\uFF0C\u9002\u5408\u4EE3\u7801\u751F\u6210\u4E0E Agent \u7F16\u7A0B\u3002"
200
415
  },
@@ -208,7 +423,7 @@ var qwenModels = [
208
423
  fnCall: true,
209
424
  supportsTool: true,
210
425
  supportsReasoningEffort: true,
211
- price: { input: 1, output: 3 },
426
+ price: { input: toCnyCredits(1), output: toCnyCredits(3) },
212
427
  provider: "qwen"
213
428
  },
214
429
  {
@@ -221,7 +436,7 @@ var qwenModels = [
221
436
  fnCall: true,
222
437
  supportsTool: true,
223
438
  supportsReasoningEffort: true,
224
- price: { input: 5, output: 15 },
439
+ price: { input: toCnyCredits(5), output: toCnyCredits(15) },
225
440
  provider: "qwen"
226
441
  },
227
442
  // ── 长上下文 ──
@@ -234,7 +449,7 @@ var qwenModels = [
234
449
  jsonOutput: true,
235
450
  fnCall: false,
236
451
  supportsTool: false,
237
- price: { input: 0.5, output: 2 },
452
+ price: { input: toCnyCredits(0.5), output: toCnyCredits(2) },
238
453
  provider: "qwen",
239
454
  description: "10M \u8D85\u957F\u4E0A\u4E0B\u6587\uFF0C\u9002\u5408\u957F\u6587\u6863\u5904\u7406\u3002"
240
455
  },
@@ -249,7 +464,7 @@ var qwenModels = [
249
464
  fnCall: true,
250
465
  supportsTool: true,
251
466
  supportsReasoningEffort: true,
252
- price: { input: 0.8, output: 2 },
467
+ price: { input: toCnyCredits(0.8), output: toCnyCredits(2) },
253
468
  provider: "qwen"
254
469
  },
255
470
  {
@@ -261,7 +476,7 @@ var qwenModels = [
261
476
  jsonOutput: true,
262
477
  fnCall: true,
263
478
  supportsTool: true,
264
- price: { input: 0.3, output: 0.6 },
479
+ price: { input: toCnyCredits(0.3), output: toCnyCredits(0.6) },
265
480
  provider: "qwen"
266
481
  },
267
482
  {
@@ -273,7 +488,7 @@ var qwenModels = [
273
488
  jsonOutput: true,
274
489
  fnCall: true,
275
490
  supportsTool: true,
276
- price: { input: 0.1, output: 0.3 },
491
+ price: { input: toCnyCredits(0.1), output: toCnyCredits(0.3) },
277
492
  provider: "qwen"
278
493
  },
279
494
  // ── 推理(QwQ) ──
@@ -287,7 +502,7 @@ var qwenModels = [
287
502
  fnCall: true,
288
503
  supportsTool: true,
289
504
  supportsReasoningEffort: true,
290
- price: { input: 2, output: 8 },
505
+ price: { input: toCnyCredits(2), output: toCnyCredits(8) },
291
506
  provider: "qwen",
292
507
  description: "\u6DF1\u5EA6\u601D\u8003\u63A8\u7406\u6A21\u578B\u3002"
293
508
  }
@@ -418,7 +633,7 @@ var moonshotModels = [
418
633
  fnCall: true,
419
634
  supportsTool: true,
420
635
  supportsReasoningEffort: true,
421
- price: { input: 3 * 7, output: 15 * 7 },
636
+ price: { input: 24, output: 120 },
422
637
  provider: "moonshot",
423
638
  description: "Moonshot \u65D7\u8230\u6A21\u578B\uFF0C\u539F\u751F\u591A\u6A21\u6001\uFF0C1M \u4E0A\u4E0B\u6587\uFF0C\u957F\u7A0B\u7F16\u7A0B\u4E0E\u6DF1\u5EA6\u63A8\u7406\u3002"
424
639
  },
@@ -433,7 +648,7 @@ var moonshotModels = [
433
648
  fnCall: true,
434
649
  supportsTool: true,
435
650
  supportsReasoningEffort: true,
436
- price: { input: 0.6 * 7, output: 2.4 * 7 },
651
+ price: { input: 4.8, output: 19.2 },
437
652
  provider: "moonshot",
438
653
  description: "Moonshot \u9AD8\u6027\u80FD\u901A\u7528\u6A21\u578B\u3002"
439
654
  }
@@ -1230,7 +1445,6 @@ var REASONING_MODEL_NAMES = /* @__PURE__ */ new Set([
1230
1445
  "gpt-5.4-pro",
1231
1446
  "gpt-5",
1232
1447
  "gpt-5-mini",
1233
- // Legacy model ids from retired Fireworks/DeepInfra/GMI/CF/Z.AI catalog rows
1234
1448
  "@cf/zai-org/glm-5.2",
1235
1449
  "zai-org/GLM-5.2",
1236
1450
  "accounts/fireworks/models/glm-5p2",
@@ -1318,7 +1532,8 @@ var ANTHROPIC_MODEL_ALIASES = {
1318
1532
  "claude-sonnet-4.5": "claude-3-5-sonnet-latest"
1319
1533
  };
1320
1534
  var NOLO_MODEL_ALIASES = {
1321
- "glm-5.2": "glm-5.3"
1535
+ "glm-5.2": "glm-5.3",
1536
+ "glm-5.3-flash": "glm-5-3-flash"
1322
1537
  };
1323
1538
  var normalizeLookupProvider = (provider) => {
1324
1539
  if (!provider) return null;
@@ -8,7 +8,7 @@ import {
8
8
 
9
9
  // packages/cli/agentRunControl.ts
10
10
  import { homedir as nodeHomedir } from "node:os";
11
- import { isAbsolute, join, resolve } from "node:path";
11
+ import { dirname, isAbsolute, join, resolve } from "node:path";
12
12
  import * as nodeFs from "node:fs";
13
13
  import { execFileSync as nodeExecFileSync, spawn as nodeSpawn } from "node:child_process";
14
14
  var RUN_TERMINAL_STATUSES = /* @__PURE__ */ new Set([
@@ -35,6 +35,12 @@ function resolveRunRecordPath(runId, env, homedir = nodeHomedir) {
35
35
  function resolveRunLogPath(runId, env, homedir = nodeHomedir) {
36
36
  return join(resolveRunsDir(env, homedir), `${runId}.log`);
37
37
  }
38
+ function resolveRunReportPath(runId, env, homedir = nodeHomedir) {
39
+ return join(resolveRunsDir(env, homedir), `${runId}.report.md`);
40
+ }
41
+ function resolveRunReportJsonPath(runId, env, homedir = nodeHomedir) {
42
+ return join(resolveRunsDir(env, homedir), `${runId}.report.json`);
43
+ }
38
44
  function defaultGenerateRunId() {
39
45
  const timestamp = (/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-");
40
46
  const random = Math.random().toString(36).slice(2, 8);
@@ -149,12 +155,17 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
149
155
  counters.llmCalls += 1;
150
156
  break;
151
157
  case "tool-start":
152
- inFlight = { kind: "tool", name: event.name, startMs: event.atMs };
158
+ inFlight = {
159
+ kind: "tool",
160
+ name: event.toolName ?? event.name ?? "tool",
161
+ startMs: event.atMs
162
+ };
153
163
  break;
154
164
  case "tool-end":
155
165
  inFlight = null;
156
166
  counters.toolCalls += 1;
157
- if (FILE_EDIT_TOOL_NAMES.has(event.name)) {
167
+ const toolEndName = event.toolName ?? event.name;
168
+ if (toolEndName && FILE_EDIT_TOOL_NAMES.has(toolEndName)) {
158
169
  counters.fileEdits += 1;
159
170
  }
160
171
  break;
@@ -285,9 +296,13 @@ function gcRunRecords(deps = {}, options = {}) {
285
296
  if (!Number.isFinite(ageMs) || ageMs < retentionMs) continue;
286
297
  const jsonPath = resolveRunRecordPath(record.runId, deps.env, deps.homedir);
287
298
  const logPath = resolveRunLogPath(record.runId, deps.env, deps.homedir);
299
+ const reportPath = resolveRunReportPath(record.runId, deps.env, deps.homedir);
300
+ const reportJsonPath = resolveRunReportJsonPath(record.runId, deps.env, deps.homedir);
288
301
  const msgPath = record.msgFile ?? join(resolveRunsDir(deps.env, deps.homedir), `${record.runId}.msg.md`);
289
302
  const logOk = tryUnlinkFile(fs, logPath);
290
303
  const msgOk = tryUnlinkFile(fs, msgPath);
304
+ tryUnlinkFile(fs, reportPath);
305
+ tryUnlinkFile(fs, reportJsonPath);
291
306
  if (!logOk || !msgOk) {
292
307
  failedIds.push(record.runId);
293
308
  continue;
@@ -365,16 +380,42 @@ function rewriteMsgFileArg(args, messagePath) {
365
380
  }
366
381
  return result;
367
382
  }
368
- function buildAgentRunChildCommand(options) {
383
+ function resolveValidCliEntrypoint(cliEntrypointPath, fs = nodeFs) {
384
+ if (cliEntrypointPath && fs.existsSync(cliEntrypointPath)) {
385
+ return cliEntrypointPath;
386
+ }
387
+ const fallback = resolveCliEntrypointPath();
388
+ if (fs.existsSync(fallback)) {
389
+ return fallback;
390
+ }
391
+ const candidates = [
392
+ join(dirname(fallback), "cli", "index.ts"),
393
+ join(dirname(fallback), "cli", "index.js"),
394
+ join(dirname(fallback), "..", "packages", "cli", "index.ts"),
395
+ join(dirname(fallback), "..", "packages", "cli", "index.js"),
396
+ join(dirname(fallback), "..", "index.js")
397
+ ];
398
+ for (const cand of candidates) {
399
+ if (fs.existsSync(cand)) {
400
+ return cand;
401
+ }
402
+ }
403
+ return fallback;
404
+ }
405
+ function buildAgentRunChildCommand(options, deps = {}) {
406
+ const fs = deps.fs ?? nodeFs;
369
407
  const execPath = process.execPath;
370
- const entrypoint = options.cliEntrypointPath || resolveCliEntrypointPath();
371
408
  const commandParts = options.commandPath ?? [];
372
409
  let strippedArgs = stripBackgroundFlag(options.rawArgs);
373
410
  if (options.messagePath) {
374
411
  strippedArgs = rewriteMsgFileArg(strippedArgs, options.messagePath);
375
412
  }
376
413
  strippedArgs = absolutizeSkillArgs(strippedArgs);
377
- if (isCompiledBinary() || entrypoint === execPath) {
414
+ if (isCompiledBinary() || options.cliEntrypointPath === execPath) {
415
+ return { execPath, childArgs: [...commandParts, ...strippedArgs] };
416
+ }
417
+ const entrypoint = resolveValidCliEntrypoint(options.cliEntrypointPath, fs);
418
+ if (entrypoint === execPath) {
378
419
  return { execPath, childArgs: [...commandParts, ...strippedArgs] };
379
420
  }
380
421
  return { execPath, childArgs: [entrypoint, ...commandParts, ...strippedArgs] };
@@ -397,6 +438,31 @@ async function spawnLocalBackgroundRun(input, deps = {}) {
397
438
  messagePath = join(runsDir, `${runId}.msg.md`);
398
439
  fs.writeFileSync(messagePath, input.message);
399
440
  }
441
+ const rawDodCommands = [];
442
+ if (Array.isArray(input.rawArgs)) {
443
+ for (let index = 0; index < input.rawArgs.length; index += 1) {
444
+ if (input.rawArgs[index] === "--dod" && input.rawArgs[index + 1]) {
445
+ rawDodCommands.push(input.rawArgs[index + 1]);
446
+ index += 1;
447
+ }
448
+ }
449
+ }
450
+ const dodCommands = input.dodCommands && input.dodCommands.length > 0 ? input.dodCommands : rawDodCommands.length > 0 ? rawDodCommands : void 0;
451
+ let spawnHead;
452
+ const targetCwd = input.cwd ?? process.cwd();
453
+ try {
454
+ const execFile = deps.execFileSync ?? nodeExecFileSync;
455
+ const out = execFile("git", ["rev-parse", "HEAD"], {
456
+ cwd: targetCwd,
457
+ encoding: "utf8",
458
+ stdio: ["ignore", "pipe", "ignore"],
459
+ timeout: 3e3
460
+ }).trim();
461
+ if (out && /^[0-9a-fA-F]{7,40}$/.test(out)) {
462
+ spawnHead = out;
463
+ }
464
+ } catch {
465
+ }
400
466
  const record = {
401
467
  runId,
402
468
  agentKey: input.agentKey,
@@ -408,15 +474,20 @@ async function spawnLocalBackgroundRun(input, deps = {}) {
408
474
  status: "running",
409
475
  logPath,
410
476
  batchId,
411
- ...typeof input.parentDialogId === "string" && input.parentDialogId.trim() ? { parentDialogId: input.parentDialogId.trim() } : {}
477
+ ...typeof input.parentDialogId === "string" && input.parentDialogId.trim() ? { parentDialogId: input.parentDialogId.trim() } : {},
478
+ ...dodCommands && dodCommands.length > 0 ? { dodCommands } : {},
479
+ ...spawnHead ? { spawnHead } : {}
412
480
  };
413
481
  fs.writeFileSync(recordPath, JSON.stringify(record, null, 2));
414
- const { execPath, childArgs } = buildAgentRunChildCommand({
415
- rawArgs: input.rawArgs,
416
- commandPath: input.commandPath,
417
- cliEntrypointPath: input.cliEntrypointPath,
418
- messagePath
419
- });
482
+ const { execPath, childArgs } = buildAgentRunChildCommand(
483
+ {
484
+ rawArgs: input.rawArgs,
485
+ commandPath: input.commandPath,
486
+ cliEntrypointPath: input.cliEntrypointPath,
487
+ messagePath
488
+ },
489
+ deps
490
+ );
420
491
  const childEnv = {
421
492
  ...env,
422
493
  NOLO_AGENT_RUN_CHILD: "1",
@@ -982,6 +1053,8 @@ export {
982
1053
  resolveRunsDir,
983
1054
  resolveRunRecordPath,
984
1055
  resolveRunLogPath,
1056
+ resolveRunReportPath,
1057
+ resolveRunReportJsonPath,
985
1058
  defaultGenerateRunId,
986
1059
  defaultGenerateBatchId,
987
1060
  writeRunRecord,
@@ -998,6 +1071,7 @@ export {
998
1071
  stripBackgroundFlag,
999
1072
  absolutizeSkillArgs,
1000
1073
  rewriteMsgFileArg,
1074
+ buildAgentRunChildCommand,
1001
1075
  spawnLocalBackgroundRun,
1002
1076
  ackRunRecord,
1003
1077
  DEFAULT_ACK_LEASE_TTL_MS,
@@ -66,7 +66,8 @@ function detectRuntimeCapabilities(options = {}) {
66
66
  // packages/connector-experimental/machineInfo.ts
67
67
  var CONNECTOR_VERSION = "0.1.0-experimental";
68
68
  function defaultMachineIdPath() {
69
- return join2(homedir(), ".nolo", "machine-id");
69
+ const noloHome = process.env.NOLO_HOME?.trim();
70
+ return noloHome ? join2(noloHome, "machine-id") : join2(homedir(), ".nolo", "machine-id");
70
71
  }
71
72
  function resolveMachineId(path = defaultMachineIdPath()) {
72
73
  try {