nolo-cli 0.88.0-alpha.2 → 0.90.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/{_executeModel-S7KQX4XS.js → _executeModel-W26HVI75.js} +38 -38
- package/{action-JZ62BXLX.js → action-6DXQGJMX.js} +7 -7
- package/{addContentAction-2ETXWERA.js → addContentAction-I7VX5SAC.js} +5 -5
- package/{addDialogAgentAction-COSPGJ4K.js → addDialogAgentAction-OJSFV7DZ.js} +4 -4
- package/{agentDeleteCommand-J6Y2C5X2.js → agentDeleteCommand-XNFWCKBH.js} +25 -24
- package/{agentEmailCommands-TGZ5DJAB.js → agentEmailCommands-W3X3EJ3V.js} +53 -52
- package/{agentGrantCommands-R3VQEZJR.js → agentGrantCommands-YW6PQAQ2.js} +2 -2
- package/{agentListCommands-UIDWO3EG.js → agentListCommands-DFWFU6XO.js} +33 -26
- package/{agentMachineCommands-FPSZ6FJ4.js → agentMachineCommands-LMFOAEL4.js} +25 -24
- package/{agentProviderCommands-65ZC2WB4.js → agentProviderCommands-ZBYHGTGY.js} +87 -0
- package/{agentPullCommand-N7L2CT7L.js → agentPullCommand-GLOOXJ2E.js} +3 -3
- package/{agentRecordCommands-6SCONH5I.js → agentRecordCommands-FVVVCQFM.js} +51 -50
- package/{agentRunCommand-2IXI6Z2U.js → agentRunCommand-HTBVIBGV.js} +52 -51
- package/{agentRunControl-T44MESII.js → agentRunControl-XLGD3UZ5.js} +1 -1
- package/{agentRuntimeLocal-UYU2POZ7.js → agentRuntimeLocal-2JFG4HDU.js} +21 -20
- package/{agentSlice-J5XXG3H7.js → agentSlice-ZNLGFUB5.js} +5 -5
- package/{appDeleteCommands-BVSKDJNM.js → appDeleteCommands-2UN4N2NR.js} +25 -24
- package/{appDeployCommands-UTPULKP3.js → appDeployCommands-37D74KRR.js} +25 -24
- package/{appDeployStatusCommands-DKDE2ECO.js → appDeployStatusCommands-QBLWL2IA.js} +25 -24
- package/{appGetCommands-KT7A7JJQ.js → appGetCommands-6KXIDF2T.js} +25 -24
- package/{appListCommands-MTHRLBXS.js → appListCommands-G2WFGEWQ.js} +25 -24
- package/{authCommand-NNFLRLGJ.js → authCommand-V2DJ7DB7.js} +85 -19
- package/{authCommands-364ESL7K.js → authCommands-RGOGCPP6.js} +3 -3
- package/{builtinSkillRegistry-VXSNE7LM.js → builtinSkillRegistry-WBGYKIAZ.js} +5 -5
- package/{chatQueueReduxAdapter-6I4F5TQW.js → chatQueueReduxAdapter-XCJHIY3R.js} +17 -17
- package/{chunk-BXLB7DXE.js → chunk-2ADBVBEM.js} +98 -2
- package/{chunk-WKJC6UOK.js → chunk-2AYMFHUG.js} +4 -4
- package/{chunk-CADAR6QU.js → chunk-2F4VYGFW.js} +2 -2
- package/{chunk-C3FZR5EC.js → chunk-2F7RJC6L.js} +1 -1
- package/{chunk-IBT5GKZM.js → chunk-3CMTBX3X.js} +6 -6
- package/{chunk-T2EUOLNJ.js → chunk-3CR2LC6X.js} +1 -1
- package/{chunk-UMYXJWI3.js → chunk-3R5PH4IP.js} +1 -1
- package/{chunk-EVCXTAOR.js → chunk-4BYPU626.js} +294 -203
- package/{chunk-M67M3AK5.js → chunk-4DRWWIOL.js} +1 -1
- package/{chunk-KR3MGGC7.js → chunk-576IMUGH.js} +1 -1
- package/{chunk-MGRRXGZD.js → chunk-5DFFKASO.js} +3 -3
- package/{chunk-SENTM5XJ.js → chunk-5NMZNPTN.js} +5 -5
- package/{chunk-5XTOKQLW.js → chunk-5UTFL4QJ.js} +6 -2
- package/{chunk-5CEIOSBX.js → chunk-5V4NJHRM.js} +6 -6
- package/chunk-5ZUL4CUO.js +10 -0
- package/{chunk-XPMTSMUR.js → chunk-6BEA566T.js} +2 -2
- package/{chunk-KIAHQ37Z.js → chunk-6D6VBVEW.js} +2 -2
- package/{chunk-PP3LAL6G.js → chunk-7MYYE7WX.js} +23 -19
- package/{chunk-BQKN5ZHZ.js → chunk-A2C4AKKM.js} +1 -1
- package/{chunk-PBMUDRON.js → chunk-AQZRTHDZ.js} +1192 -44
- package/{chunk-AJHEFRGJ.js → chunk-ASGDO77C.js} +122 -1
- package/{chunk-2KDR4CWE.js → chunk-BYMV6QZG.js} +24 -1
- package/{chunk-WVXCW7DR.js → chunk-CLI4LFSM.js} +9 -4
- package/{chunk-HH65VA5U.js → chunk-CPH3W5A7.js} +15 -3
- package/{chunk-A3GDWRW6.js → chunk-DNQPPRHY.js} +1 -1
- package/{chunk-SR2I44ML.js → chunk-DPQ2WVBY.js} +1 -1
- package/{chunk-IZWQKAGJ.js → chunk-F2CGG72C.js} +40 -40
- package/{chunk-QDOYVIIL.js → chunk-FQYMLZ6C.js} +5 -5
- package/{chunk-BJIRLHJR.js → chunk-GII32WZW.js} +1 -0
- package/{chunk-TR54UTFI.js → chunk-GRYGRGPS.js} +4 -4
- package/{chunk-QIU65GHY.js → chunk-HMEMJ7GH.js} +364 -24
- package/{chunk-OZX2IPKM.js → chunk-HQCSU3DI.js} +1 -1
- package/{chunk-KMIMGCZT.js → chunk-HYZHJ5GW.js} +3 -3
- package/{chunk-OAJRZ35U.js → chunk-IIKPWSPX.js} +1 -1
- package/{chunk-EFWQMKEG.js → chunk-JBBZ5KUM.js} +10 -10
- package/{chunk-KC5FAHVS.js → chunk-JEDZAO7L.js} +1 -1
- package/{chunk-4YIWJYIX.js → chunk-JTK3TJYV.js} +1 -1
- package/{chunk-TMPLPCVX.js → chunk-K7M3MWCE.js} +2 -2
- package/{chunk-OHUU52T3.js → chunk-L2ICPOAL.js} +1 -1
- package/{chunk-RXX4GDIH.js → chunk-LS2ZANRJ.js} +1 -1
- package/{chunk-EVBFYPDC.js → chunk-MC4XLIJ7.js} +6 -2
- package/{chunk-LHDV2QUI.js → chunk-MJHQ3NRV.js} +1 -1
- package/{chunk-WHYTL6XG.js → chunk-N3OAPEZE.js} +28 -9
- package/{chunk-PZCTYKGU.js → chunk-ND2J3NRB.js} +2 -2
- package/{chunk-M2ZBPSGH.js → chunk-NFMHIUY3.js} +65 -50
- package/{chunk-S6FCVZ4I.js → chunk-PH5J5VUY.js} +2 -2
- package/{chunk-FMODTASJ.js → chunk-Q5FJJ6XI.js} +1 -7
- package/{chunk-JYYZCK2Z.js → chunk-QFMFJZLO.js} +1 -1
- package/{chunk-5XV64MAU.js → chunk-QHETQ3KI.js} +35 -1
- package/{chunk-BEQGQMYW.js → chunk-RZANZZL2.js} +2 -2
- package/{chunk-SPAQ4PVV.js → chunk-SAFZABH7.js} +1 -1
- package/{chunk-6LUUGZTS.js → chunk-SMZSWB44.js} +10 -5
- package/{chunk-HJKGQPYF.js → chunk-TL6L5XUT.js} +1 -1
- package/{chunk-M5K26BH3.js → chunk-TVNI5FLG.js} +4 -4
- package/{chunk-X7WAX4JU.js → chunk-UA5S3LQQ.js} +3 -3
- package/{chunk-2LX7X7HX.js → chunk-UTCCPWB2.js} +31 -3
- package/{chunk-DJM4BCSB.js → chunk-VHJLQHPQ.js} +2 -2
- package/{chunk-MXUSPS2N.js → chunk-VRLI2WNW.js} +1563 -1529
- package/{chunk-NG4UT4K4.js → chunk-WS22FPWT.js} +1 -1
- package/{chunk-NJBLAV2R.js → chunk-WXPVOQD7.js} +35 -33
- package/{chunk-5HKWE6OQ.js → chunk-XKQJJK4F.js} +1 -1
- package/{chunk-N4X2KIYL.js → chunk-XMGHGEN6.js} +1 -1
- package/{chunk-6IHWRTUK.js → chunk-XTUY5EL4.js} +16 -12
- package/{chunk-OKCTLCKS.js → chunk-YOXYA2GU.js} +1 -1
- package/{chunk-EDZAJS6E.js → chunk-Z33ARZCP.js} +1 -1
- package/chunk-ZAB3A45K.js +677 -0
- package/{chunk-YZHP76TR.js → chunk-ZBT3WNBK.js} +1 -1
- package/{contentThunks-2N2J3EGF.js → contentThunks-VURN3DFW.js} +18 -18
- package/{createAgentAutomationAction-7QO4ZVVP.js → createAgentAutomationAction-QZAAY77R.js} +18 -18
- package/{createDialogAction-PC2IQ4T7.js → createDialogAction-CHGXVTAC.js} +20 -20
- package/{createPageAction-EFL5EC22.js → createPageAction-IOGAFIN7.js} +18 -18
- package/{dbSlice-JNK4XZ27.js → dbSlice-YXQ6RYIH.js} +4 -4
- package/{dialogCommands-BSOWO6CA.js → dialogCommands-XREAP6WQ.js} +26 -25
- package/{dialogSlice-W6X5G2KS.js → dialogSlice-DOPGWGS4.js} +17 -17
- package/{docCreateCommands-LWZU23FP.js → docCreateCommands-3PYZGSCL.js} +24 -23
- package/{docDeleteCommands-RR6GKDDF.js → docDeleteCommands-3Y6MU44Q.js} +25 -24
- package/{docReadCommands-JP77ZTCY.js → docReadCommands-UBANMAFR.js} +24 -23
- package/{docStore-DMNGPTL4.js → docStore-SYYFBENY.js} +5 -5
- package/{docUpdateCommands-T4OACV4V.js → docUpdateCommands-4GK2X6BN.js} +24 -23
- package/{getPricing-QVTUQQTM.js → getPricing-F2C65RIX.js} +3 -3
- package/{handleSendMessageAction-RJEXW5VS.js → handleSendMessageAction-NPVTY2GE.js} +17 -17
- package/index.js +85 -81
- package/{localDialogRead-GKTRZFAP.js → localDialogRead-BTFJ4V2I.js} +1 -1
- package/{localRuntimeDb-P37ZTX55.js → localRuntimeDb-SYQGUF4U.js} +1 -1
- package/{machineCommands-K3VQUSAX.js → machineCommands-I66X2XB7.js} +49 -48
- package/{machineWsRunDispatch-P7RNOLMU.js → machineWsRunDispatch-W4FVBOUM.js} +49 -48
- package/{memberThunks-A6OAY77F.js → memberThunks-5T4J6KXQ.js} +5 -5
- package/{models-GS72DVJS.js → models-WW7VFNXB.js} +2 -2
- package/{offlineMarxistsAgentCommand-GEH6SNNA.js → offlineMarxistsAgentCommand-JEWCIAWM.js} +1 -1
- package/package.json +1 -1
- package/providerPresetApply-OCWWKBSD.js +214 -0
- package/providerRegistry-ZJQU7AJ7.js +31 -0
- package/{read-2PV4PN2E.js → read-M2Q6WEKB.js} +3 -3
- package/{readDocTool-FGK5XGAW.js → readDocTool-T37P3YPB.js} +1 -1
- package/{readlineWorkspace-FGQLVWLE.js → readlineWorkspace-VY5AMOGR.js} +127 -95
- package/{removeDialogAgentAction-6SGBZWSW.js → removeDialogAgentAction-HB3JBVAI.js} +7 -7
- package/{runAgentClientLoop-75TQMT2H.js → runAgentClientLoop-3NDADLVE.js} +36 -36
- package/{runtimeDoctorCommands-CROTMULY.js → runtimeDoctorCommands-X6WDBEQX.js} +2 -2
- package/{setDialogExtraReferencesAction-LC3SOVJO.js → setDialogExtraReferencesAction-4XLHRV37.js} +5 -5
- package/{setPrimaryDialogAgentAction-XE2HIEVY.js → setPrimaryDialogAgentAction-C3JOFC4W.js} +7 -7
- package/{settingSlice-GJYAXZZ6.js → settingSlice-CZRURSTH.js} +6 -6
- package/{spaceCommands-7GMVZQYI.js → spaceCommands-ENYCUUZH.js} +24 -23
- package/{streamAgentChatTurn-JYKKAOEU.js → streamAgentChatTurn-634OFUSR.js} +46 -44
- package/{switchDialogAgentAction-EDYI5RLR.js → switchDialogAgentAction-C6KVUKJP.js} +4 -4
- package/{tableCommands-SUNTHAYX.js → tableCommands-O6NWHFKV.js} +1 -1
- package/{toolApiClient-VGYUB4P5.js → toolApiClient-7PSIFQPJ.js} +2 -2
- package/{tools-PCY3TDNR.js → tools-ILBLCF7D.js} +33 -33
- package/tuiSummaryLlmCaller-LFUBZKXK.js +127 -0
- package/{updateCommands-Y363MC3L.js → updateCommands-2M74UL7P.js} +2 -2
- package/{updateDialogTitleAction-36NOSXEX.js → updateDialogTitleAction-RKFET73N.js} +38 -21
- package/tuiSummaryLlmCaller-CCYGQDGB.js +0 -116
- package/{db-VQSAOWAO.js → db-WK5MDZVN.js} +1 -1
- package/{localRuntimeAuthority-R5UBODT3.js → localRuntimeAuthority-6IR6BBXE.js} +3 -3
|
@@ -19,8 +19,20 @@ var FIREWORKS_KIMI_LATEST_MODEL = "accounts/fireworks/models/kimi-latest";
|
|
|
19
19
|
var FIREWORKS_KIMI_CURRENT_MODEL = "accounts/fireworks/models/kimi-k2p7-code";
|
|
20
20
|
var FIREWORKS_KIMI_K2P6_MODEL = "accounts/fireworks/models/kimi-k2p6";
|
|
21
21
|
var DEEPINFRA_KIMI_FALLBACK_MODEL = "moonshotai/Kimi-K2.6";
|
|
22
|
+
var isOllamaCloudKimiModel = (model) => model === PLATFORM_HOSTED_KIMI_K3_MODEL || model === PLATFORM_HOSTED_KIMI_K26_MODEL;
|
|
22
23
|
var isFireworksKimiModel = (model) => model === FIREWORKS_KIMI_LATEST_MODEL || model === FIREWORKS_KIMI_CURRENT_MODEL || model === FIREWORKS_KIMI_K2P6_MODEL;
|
|
23
24
|
var isDeepInfraKimiModel = (model) => model === DEEPINFRA_KIMI_FALLBACK_MODEL;
|
|
25
|
+
var isPlatformKimiProviderModel = (provider, model) => {
|
|
26
|
+
const normalizedProvider = asTrimmedLowercaseString(provider);
|
|
27
|
+
if (normalizedProvider === PLATFORM_HOSTED_KIMI_PROVIDER || normalizedProvider === LEGACY_OLLAMA_CLOUD_PROVIDER) {
|
|
28
|
+
return isOllamaCloudKimiModel(model);
|
|
29
|
+
}
|
|
30
|
+
return false;
|
|
31
|
+
};
|
|
32
|
+
var isPlatformManagedProvider = (provider, model) => {
|
|
33
|
+
const normalized = asTrimmedLowercaseString(provider);
|
|
34
|
+
return isNoloHostedProvider(normalized) || normalized === "deepseek" || isPlatformKimiProviderModel(normalized, model);
|
|
35
|
+
};
|
|
24
36
|
var resolveFireworksKimiModel = (model) => {
|
|
25
37
|
if (model === FIREWORKS_KIMI_LATEST_MODEL) {
|
|
26
38
|
return FIREWORKS_KIMI_CURRENT_MODEL;
|
|
@@ -50,6 +62,9 @@ var PLATFORM_HOSTED_GEMINI_FLASH_IMAGE_MODEL = "gemini-3.1-flash-image-preview";
|
|
|
50
62
|
var PLATFORM_HOSTED_GEMINI_PRO_IMAGE_MODEL = "gemini-3-pro-image-preview";
|
|
51
63
|
var PLATFORM_HOSTED_GEMINI_FLASH_LITE_IMAGE_MODEL = "gemini-3.1-flash-lite-image";
|
|
52
64
|
var PLATFORM_HOSTED_OPENAI_IMAGE_MODEL = "gpt-image-2";
|
|
65
|
+
var PLATFORM_HOSTED_MIMO_FLASH_MODEL = "mimo-v2.6-flash";
|
|
66
|
+
var PLATFORM_HOSTED_MIMO_PRO_MODEL = "mimo-v2.6-pro";
|
|
67
|
+
var PLATFORM_HOSTED_MIMO_PRO_ULTRASPEED_MODEL = "mimo-v2.6-pro-ultraspeed";
|
|
53
68
|
var PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL = "deepseek-flash";
|
|
54
69
|
var PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL = "deepseek-v4-flash-vision-exp";
|
|
55
70
|
var PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL = "deepseek-v4-pro";
|
|
@@ -239,6 +254,39 @@ var PLATFORM_HOSTED_ROUTING_TABLE = {
|
|
|
239
254
|
wire: "chat.completions",
|
|
240
255
|
agentRunHosted: false
|
|
241
256
|
},
|
|
257
|
+
// MiMo V2.6 系 -> 小米官方按量计费 API(api.xiaomimimo.com,key 用 MIMO_API_KEY)。
|
|
258
|
+
// 模型 id 与上游一致,无 upstreamModelId(直传,不做 remap);
|
|
259
|
+
// wire 是 chat.completions(不是 responses 特例,走通用 hostedRoute 分支)。
|
|
260
|
+
//
|
|
261
|
+
// 上游事实(mimo.mi.com 官方文档 /api/chat/openai-api,2026-09-20 版):
|
|
262
|
+
// - `thinking.type` 默认 enabled;平台未显式开启思考时补 {type:"disabled"}
|
|
263
|
+
// (判据同时认 provider=mimo / xiaomimimo.com 端点与下面的托管模型 id);
|
|
264
|
+
// - 同时兼容 `max_tokens` 与 `max_completion_tokens`(实测 200 OK);文档
|
|
265
|
+
// 未提及 `stream_options` / `include_usage`——平台因此不请求
|
|
266
|
+
// include_usage,usage 由响应体自带(含 prompt_tokens_details.cached_tokens,
|
|
267
|
+
// 缓存命中按 inputCacheHit 价计入积分);
|
|
268
|
+
// - 1M 上下文 / 128K 最大输出 / 文本+图+音视频输入(全模态理解)。
|
|
269
|
+
[PLATFORM_HOSTED_MIMO_FLASH_MODEL]: {
|
|
270
|
+
endpoint: "https://api.xiaomimimo.com/v1/chat/completions",
|
|
271
|
+
usageProvider: "mimo",
|
|
272
|
+
keyName: "mimo",
|
|
273
|
+
wire: "chat.completions",
|
|
274
|
+
agentRunHosted: true
|
|
275
|
+
},
|
|
276
|
+
[PLATFORM_HOSTED_MIMO_PRO_MODEL]: {
|
|
277
|
+
endpoint: "https://api.xiaomimimo.com/v1/chat/completions",
|
|
278
|
+
usageProvider: "mimo",
|
|
279
|
+
keyName: "mimo",
|
|
280
|
+
wire: "chat.completions",
|
|
281
|
+
agentRunHosted: true
|
|
282
|
+
},
|
|
283
|
+
[PLATFORM_HOSTED_MIMO_PRO_ULTRASPEED_MODEL]: {
|
|
284
|
+
endpoint: "https://api.xiaomimimo.com/v1/chat/completions",
|
|
285
|
+
usageProvider: "mimo",
|
|
286
|
+
keyName: "mimo",
|
|
287
|
+
wire: "chat.completions",
|
|
288
|
+
agentRunHosted: true
|
|
289
|
+
},
|
|
242
290
|
// OpenAI Image -> OpenAI Responses API
|
|
243
291
|
[PLATFORM_HOSTED_OPENAI_IMAGE_MODEL]: {
|
|
244
292
|
endpoint: "https://api.openai.com/v1/responses",
|
|
@@ -415,7 +463,7 @@ function buildClientVersionGateErrorDetail(decision) {
|
|
|
415
463
|
// packages/ai/llm/platformHosted.ts
|
|
416
464
|
var PLATFORM_CREDITS_PER_USD = 8;
|
|
417
465
|
var toPlatformCredits = (usdPerMillion) => Number((usdPerMillion * PLATFORM_CREDITS_PER_USD).toFixed(6));
|
|
418
|
-
var CNY_UPSTREAM_MULTIPLIER = 1.
|
|
466
|
+
var CNY_UPSTREAM_MULTIPLIER = 1.1;
|
|
419
467
|
var toCnyCredits = (cnyPerMillion) => Number((cnyPerMillion * CNY_UPSTREAM_MULTIPLIER).toFixed(6));
|
|
420
468
|
var PLATFORM_HOSTED_GROK_PRICE = {
|
|
421
469
|
input: toPlatformCredits(2),
|
|
@@ -597,6 +645,40 @@ var createPlatformHostedGeminiImageModel = ({
|
|
|
597
645
|
imageGenerationProfiles,
|
|
598
646
|
supportsTool: false
|
|
599
647
|
});
|
|
648
|
+
var PLATFORM_HOSTED_MIMO_MODELS = [
|
|
649
|
+
PLATFORM_HOSTED_MIMO_FLASH_MODEL,
|
|
650
|
+
PLATFORM_HOSTED_MIMO_PRO_MODEL,
|
|
651
|
+
PLATFORM_HOSTED_MIMO_PRO_ULTRASPEED_MODEL
|
|
652
|
+
];
|
|
653
|
+
var isPlatformHostedMimoModel = (model) => {
|
|
654
|
+
const m = asTrimmedLowercaseString(model);
|
|
655
|
+
return PLATFORM_HOSTED_MIMO_MODELS.includes(m);
|
|
656
|
+
};
|
|
657
|
+
var isPlatformMimoProviderModel = (provider, model) => isPlatformManagedProvider(provider) && isPlatformHostedMimoModel(model);
|
|
658
|
+
var PLATFORM_HOSTED_MIMO_FLASH_PRICE = {
|
|
659
|
+
input: toCnyCredits(1),
|
|
660
|
+
// ¥1.00
|
|
661
|
+
inputCacheHit: toCnyCredits(0.02),
|
|
662
|
+
// ¥0.02
|
|
663
|
+
output: toCnyCredits(2)
|
|
664
|
+
// ¥2.00
|
|
665
|
+
};
|
|
666
|
+
var PLATFORM_HOSTED_MIMO_PRO_PRICE = {
|
|
667
|
+
input: toCnyCredits(3),
|
|
668
|
+
// ¥3.00
|
|
669
|
+
inputCacheHit: toCnyCredits(0.025),
|
|
670
|
+
// ¥0.025
|
|
671
|
+
output: toCnyCredits(6)
|
|
672
|
+
// ¥6.00
|
|
673
|
+
};
|
|
674
|
+
var PLATFORM_HOSTED_MIMO_PRO_ULTRASPEED_PRICE = {
|
|
675
|
+
input: toCnyCredits(30),
|
|
676
|
+
// ¥30.00
|
|
677
|
+
inputCacheHit: toCnyCredits(0.25),
|
|
678
|
+
// ¥0.25
|
|
679
|
+
output: toCnyCredits(60)
|
|
680
|
+
// ¥60.00
|
|
681
|
+
};
|
|
600
682
|
var PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE = {
|
|
601
683
|
input: toCnyCredits(2),
|
|
602
684
|
// ¥2
|
|
@@ -754,6 +836,40 @@ var platformHostedModels = [
|
|
|
754
836
|
supportsReasoningEffort: true,
|
|
755
837
|
minClientVersion: PLATFORM_HOSTED_GLM_53_FLASH_MIN_CLIENT_VERSION
|
|
756
838
|
},
|
|
839
|
+
// MiMo V2.6 系(小米官方按量计费 API,key 用 MIMO_API_KEY):1M 上下文、
|
|
840
|
+
// 最大输出 128K、原生多模态输入(文本/图/音/视频)、函数调用与深度思考。
|
|
841
|
+
// 能力值来源:mimo.mi.com 模型列表页 + 官方模型目录(max_output_length
|
|
842
|
+
// 131072、context 1048576、input_modalities 含 image/audio/video),2026-09-21。
|
|
843
|
+
{
|
|
844
|
+
name: PLATFORM_HOSTED_MIMO_FLASH_MODEL,
|
|
845
|
+
displayName: "MiMo V2.6 Flash",
|
|
846
|
+
hasVision: true,
|
|
847
|
+
price: { ...PLATFORM_HOSTED_MIMO_FLASH_PRICE },
|
|
848
|
+
maxOutputTokens: 131072,
|
|
849
|
+
contextWindow: 1048576,
|
|
850
|
+
supportsTool: true,
|
|
851
|
+
supportsReasoningEffort: true
|
|
852
|
+
},
|
|
853
|
+
{
|
|
854
|
+
name: PLATFORM_HOSTED_MIMO_PRO_MODEL,
|
|
855
|
+
displayName: "MiMo V2.6 Pro",
|
|
856
|
+
hasVision: true,
|
|
857
|
+
price: { ...PLATFORM_HOSTED_MIMO_PRO_PRICE },
|
|
858
|
+
maxOutputTokens: 131072,
|
|
859
|
+
contextWindow: 1048576,
|
|
860
|
+
supportsTool: true,
|
|
861
|
+
supportsReasoningEffort: true
|
|
862
|
+
},
|
|
863
|
+
{
|
|
864
|
+
name: PLATFORM_HOSTED_MIMO_PRO_ULTRASPEED_MODEL,
|
|
865
|
+
displayName: "MiMo V2.6 Pro Ultraspeed",
|
|
866
|
+
hasVision: true,
|
|
867
|
+
price: { ...PLATFORM_HOSTED_MIMO_PRO_ULTRASPEED_PRICE },
|
|
868
|
+
maxOutputTokens: 131072,
|
|
869
|
+
contextWindow: 1048576,
|
|
870
|
+
supportsTool: true,
|
|
871
|
+
supportsReasoningEffort: true
|
|
872
|
+
},
|
|
757
873
|
// Claude 系(真实 DeepInfra 模型,官方 id 与平台 id 同名):无缓存价,
|
|
758
874
|
// 计费按 input 全价(见 calculatePrice 的 deepinfra 分支)。
|
|
759
875
|
{
|
|
@@ -1012,6 +1128,11 @@ export {
|
|
|
1012
1128
|
PLATFORM_HOSTED_GLM_53_FLASH_BASETEN_PRICE,
|
|
1013
1129
|
isPlatformHostedOpenAIImageModel,
|
|
1014
1130
|
isPlatformHostedImageModel,
|
|
1131
|
+
isPlatformMimoProviderModel,
|
|
1132
|
+
PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE,
|
|
1133
|
+
PLATFORM_HOSTED_DEEPSEEK_FLASH_OFF_PEAK_PRICE,
|
|
1134
|
+
PLATFORM_HOSTED_DEEPSEEK_PRO_PEAK_PRICE,
|
|
1135
|
+
PLATFORM_HOSTED_DEEPSEEK_PRO_OFF_PEAK_PRICE,
|
|
1015
1136
|
getPlatformHostedDeepSeekV4Price,
|
|
1016
1137
|
isPlatformHostedDeepseekModel,
|
|
1017
1138
|
isPlatformHostedDeepSeekV4Model,
|
|
@@ -285,6 +285,27 @@ function saveProfileAgentSelection(selection, path = getDefaultProfileConfigPath
|
|
|
285
285
|
`, "utf8");
|
|
286
286
|
return config;
|
|
287
287
|
}
|
|
288
|
+
function getProfileOAuthSync(provider, path = getDefaultProfileConfigPath()) {
|
|
289
|
+
const config = loadProfileConfig(path);
|
|
290
|
+
if (!config) return void 0;
|
|
291
|
+
const profile = config.profiles[config.currentProfile];
|
|
292
|
+
return profile?.oauthSync?.[provider];
|
|
293
|
+
}
|
|
294
|
+
function saveProfileOAuthSync(provider, sync, path = getDefaultProfileConfigPath()) {
|
|
295
|
+
if (isProtectedHomeProfileWrite(path)) return null;
|
|
296
|
+
const config = loadProfileConfig(path);
|
|
297
|
+
if (!config) return null;
|
|
298
|
+
const profile = config.profiles[config.currentProfile];
|
|
299
|
+
if (!profile) return null;
|
|
300
|
+
profile.oauthSync = {
|
|
301
|
+
...profile.oauthSync ?? {},
|
|
302
|
+
[provider]: sync
|
|
303
|
+
};
|
|
304
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
305
|
+
writeFileSync(path, `${JSON.stringify(config, null, 2)}
|
|
306
|
+
`, "utf8");
|
|
307
|
+
return config;
|
|
308
|
+
}
|
|
288
309
|
|
|
289
310
|
export {
|
|
290
311
|
getDefaultProfileConfigPath,
|
|
@@ -299,5 +320,7 @@ export {
|
|
|
299
320
|
saveProfileLocale,
|
|
300
321
|
getAgentSelectionAuditPath,
|
|
301
322
|
readLastAgentSelectionAudit,
|
|
302
|
-
saveProfileAgentSelection
|
|
323
|
+
saveProfileAgentSelection,
|
|
324
|
+
getProfileOAuthSync,
|
|
325
|
+
saveProfileOAuthSync
|
|
303
326
|
};
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
SYSTEM_AGENT_CAPABILITIES,
|
|
6
6
|
SYSTEM_AGENT_CAPABILITY_IDS
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-RZANZZL2.js";
|
|
8
8
|
import {
|
|
9
9
|
createKey
|
|
10
10
|
} from "./chunk-VMFTFOWF.js";
|
|
@@ -50,6 +50,9 @@ var TOOL_PACKS = {
|
|
|
50
50
|
// queryModelUsage / queryUserGrowthReport:server-only 工具(web/CLI executor
|
|
51
51
|
// 直接返回 serverOnlyResult),不随 CORE 常驻——server 端由 agent 显式
|
|
52
52
|
// tools 配置按需挂载(utilityServerTools 执行器),web 端不再挂死 schema。
|
|
53
|
+
// setTodoList 已移至「conversation-todo」系统能力包(defaultEnabled:true)
|
|
54
|
+
// 作为唯一 owner——single source of truth:普通 agent 默认仍有 setTodoList,
|
|
55
|
+
// 但关闭「对话 Todo」开关即可真正摘掉它(CORE 常驻时该开关形同虚设)。
|
|
53
56
|
CORE: [
|
|
54
57
|
"read",
|
|
55
58
|
"createDoc",
|
|
@@ -58,8 +61,7 @@ var TOOL_PACKS = {
|
|
|
58
61
|
"updateSelf",
|
|
59
62
|
"ask_user",
|
|
60
63
|
"createAgentAutomation",
|
|
61
|
-
"notifyUser"
|
|
62
|
-
"setTodoList"
|
|
64
|
+
"notifyUser"
|
|
63
65
|
],
|
|
64
66
|
// L2 - 联网搜索:与 CAPABILITY_PACKS「web-search」对齐。
|
|
65
67
|
// 社交读工具属于「social-reader」包,不得因 exa_search 被旁路注入。
|
|
@@ -278,7 +280,10 @@ function resolveEffectiveEnabledPacks(args) {
|
|
|
278
280
|
];
|
|
279
281
|
}
|
|
280
282
|
var SYSTEM_BUILTIN_SKILL_PACK_IDS = SYSTEM_AGENT_CAPABILITY_IDS;
|
|
281
|
-
var DEFAULT_MOUNT_SYSTEM_CAPABILITY_IDS = [
|
|
283
|
+
var DEFAULT_MOUNT_SYSTEM_CAPABILITY_IDS = [
|
|
284
|
+
"agent-orchestration",
|
|
285
|
+
"conversation-todo"
|
|
286
|
+
];
|
|
282
287
|
function getDefaultSystemCapabilityTools() {
|
|
283
288
|
const ids = DEFAULT_MOUNT_SYSTEM_CAPABILITY_IDS;
|
|
284
289
|
return SYSTEM_AGENT_CAPABILITY_PACKS.filter((pack) => ids.includes(pack.id)).flatMap((pack) => [...pack.tools]);
|
|
@@ -405,6 +405,8 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
|
|
|
405
405
|
const fs = deps.fs ?? nodeFs;
|
|
406
406
|
const now = deps.now ?? (() => /* @__PURE__ */ new Date());
|
|
407
407
|
const minWriteIntervalMs = options.minWriteIntervalMs ?? DEFAULT_ACTIVITY_WRITE_INTERVAL_MS;
|
|
408
|
+
const keepAlive = options.keepAlive ?? true;
|
|
409
|
+
let disposed = false;
|
|
408
410
|
let lastEventAt = now().toISOString();
|
|
409
411
|
let inFlight = null;
|
|
410
412
|
const counters = { llmCalls: 0, toolCalls: 0, fileEdits: 0 };
|
|
@@ -425,7 +427,9 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
|
|
|
425
427
|
};
|
|
426
428
|
}
|
|
427
429
|
function doWrite() {
|
|
430
|
+
if (disposed) return;
|
|
428
431
|
writeTimer = void 0;
|
|
432
|
+
const attemptAt = now().getTime();
|
|
429
433
|
withRunRecordLock(
|
|
430
434
|
runId,
|
|
431
435
|
deps,
|
|
@@ -438,7 +442,10 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
|
|
|
438
442
|
},
|
|
439
443
|
{ strict: true }
|
|
440
444
|
);
|
|
445
|
+
if (lastWriteAt < attemptAt) lastWriteAt = attemptAt;
|
|
446
|
+
if (keepAlive) scheduleWrite();
|
|
441
447
|
}
|
|
448
|
+
scheduleWrite();
|
|
442
449
|
function scheduleWrite() {
|
|
443
450
|
if (writeTimer !== void 0) return;
|
|
444
451
|
const elapsed = now().getTime() - lastWriteAt;
|
|
@@ -446,6 +453,7 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
|
|
|
446
453
|
writeTimer = setTimeout(doWrite, delay);
|
|
447
454
|
}
|
|
448
455
|
function onLoopEvent(event) {
|
|
456
|
+
if (disposed) return;
|
|
449
457
|
lastEventAt = new Date(event.atMs).toISOString();
|
|
450
458
|
switch (event.kind) {
|
|
451
459
|
case "llm-start":
|
|
@@ -480,6 +488,7 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
|
|
|
480
488
|
doWrite();
|
|
481
489
|
}
|
|
482
490
|
function dispose() {
|
|
491
|
+
disposed = true;
|
|
483
492
|
if (writeTimer !== void 0) {
|
|
484
493
|
clearTimeout(writeTimer);
|
|
485
494
|
writeTimer = void 0;
|
|
@@ -817,10 +826,13 @@ async function spawnLocalBackgroundRun(input, deps = {}) {
|
|
|
817
826
|
});
|
|
818
827
|
proc.unref();
|
|
819
828
|
if (typeof proc.pid === "number") {
|
|
820
|
-
record.pid = proc.pid;
|
|
821
829
|
const processStartedAt = (deps.getProcessStartTime ?? defaultGetProcessStartTime)(proc.pid);
|
|
822
|
-
|
|
823
|
-
|
|
830
|
+
withRunRecordLock(runId, deps, () => {
|
|
831
|
+
const latest = readRunRecord(runId, deps) ?? record;
|
|
832
|
+
latest.pid = proc.pid;
|
|
833
|
+
if (processStartedAt) latest.processStartedAt = processStartedAt.toISOString();
|
|
834
|
+
writeRunRecord(latest, deps);
|
|
835
|
+
});
|
|
824
836
|
}
|
|
825
837
|
return { runId, pid: proc.pid, logPath, queuePath, batchId };
|
|
826
838
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
normalizeTimingMs
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-VHJLQHPQ.js";
|
|
4
4
|
import {
|
|
5
5
|
MODEL_LOOKUP_MAP
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-VRLI2WNW.js";
|
|
7
7
|
import {
|
|
8
8
|
ALL_MODELS
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-WS22FPWT.js";
|
|
10
10
|
import {
|
|
11
11
|
asTrimmedNonEmptyStringArray
|
|
12
12
|
} from "./chunk-VMFTFOWF.js";
|
|
@@ -15,11 +15,47 @@ import {
|
|
|
15
15
|
} from "./chunk-WWC7I6TA.js";
|
|
16
16
|
import {
|
|
17
17
|
BUILTIN_NOLO_AGENT_KEY
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-TL6L5XUT.js";
|
|
19
19
|
import {
|
|
20
20
|
asOptionalTrimmedString
|
|
21
21
|
} from "./chunk-G3SUCT4W.js";
|
|
22
22
|
|
|
23
|
+
// packages/ai/token/cacheTokenFields.ts
|
|
24
|
+
var finiteTokenCount = (value) => {
|
|
25
|
+
if (typeof value !== "number" || !Number.isFinite(value)) return void 0;
|
|
26
|
+
return Math.max(0, Math.floor(value));
|
|
27
|
+
};
|
|
28
|
+
var readNested = (value, path) => {
|
|
29
|
+
let cursor = value;
|
|
30
|
+
for (const key of path) {
|
|
31
|
+
if (!cursor || typeof cursor !== "object") return void 0;
|
|
32
|
+
cursor = cursor[key];
|
|
33
|
+
}
|
|
34
|
+
return finiteTokenCount(cursor);
|
|
35
|
+
};
|
|
36
|
+
var firstPositive = (usage, readers) => {
|
|
37
|
+
for (const read of readers) {
|
|
38
|
+
const value = read(usage);
|
|
39
|
+
if (value !== void 0 && value !== 0) return value;
|
|
40
|
+
}
|
|
41
|
+
return 0;
|
|
42
|
+
};
|
|
43
|
+
var topLevel = (field) => (usage) => {
|
|
44
|
+
if (!usage || typeof usage !== "object") return void 0;
|
|
45
|
+
return finiteTokenCount(usage[field]);
|
|
46
|
+
};
|
|
47
|
+
var nested = (path) => (usage) => readNested(usage, path);
|
|
48
|
+
var readCacheReadInputTokens = (usage) => firstPositive(usage, [
|
|
49
|
+
topLevel("cache_read_input_tokens"),
|
|
50
|
+
topLevel("prompt_cache_hit_tokens"),
|
|
51
|
+
nested(["input_tokens_details", "cached_tokens"]),
|
|
52
|
+
nested(["prompt_tokens_details", "cached_tokens"])
|
|
53
|
+
]);
|
|
54
|
+
var readCacheCreationInputTokens = (usage) => firstPositive(usage, [
|
|
55
|
+
topLevel("cache_creation_input_tokens"),
|
|
56
|
+
topLevel("prompt_cache_miss_tokens")
|
|
57
|
+
]);
|
|
58
|
+
|
|
23
59
|
// packages/ai/llm/getModelContextWindow.ts
|
|
24
60
|
var DEFAULT_CONTEXT_WINDOW = 256e3;
|
|
25
61
|
var QWEN_3_6_CONTEXT_WINDOW = 262144;
|
|
@@ -157,42 +193,6 @@ var getModelInfo = (modelName) => {
|
|
|
157
193
|
return map.get(modelName) || map.get(modelName.toLowerCase()) || null;
|
|
158
194
|
};
|
|
159
195
|
|
|
160
|
-
// packages/ai/token/cacheTokenFields.ts
|
|
161
|
-
var finiteTokenCount = (value) => {
|
|
162
|
-
if (typeof value !== "number" || !Number.isFinite(value)) return void 0;
|
|
163
|
-
return Math.max(0, Math.floor(value));
|
|
164
|
-
};
|
|
165
|
-
var readNested = (value, path) => {
|
|
166
|
-
let cursor = value;
|
|
167
|
-
for (const key of path) {
|
|
168
|
-
if (!cursor || typeof cursor !== "object") return void 0;
|
|
169
|
-
cursor = cursor[key];
|
|
170
|
-
}
|
|
171
|
-
return finiteTokenCount(cursor);
|
|
172
|
-
};
|
|
173
|
-
var firstPositive = (usage, readers) => {
|
|
174
|
-
for (const read of readers) {
|
|
175
|
-
const value = read(usage);
|
|
176
|
-
if (value !== void 0 && value !== 0) return value;
|
|
177
|
-
}
|
|
178
|
-
return 0;
|
|
179
|
-
};
|
|
180
|
-
var topLevel = (field) => (usage) => {
|
|
181
|
-
if (!usage || typeof usage !== "object") return void 0;
|
|
182
|
-
return finiteTokenCount(usage[field]);
|
|
183
|
-
};
|
|
184
|
-
var nested = (path) => (usage) => readNested(usage, path);
|
|
185
|
-
var readCacheReadInputTokens = (usage) => firstPositive(usage, [
|
|
186
|
-
topLevel("cache_read_input_tokens"),
|
|
187
|
-
topLevel("prompt_cache_hit_tokens"),
|
|
188
|
-
nested(["input_tokens_details", "cached_tokens"]),
|
|
189
|
-
nested(["prompt_tokens_details", "cached_tokens"])
|
|
190
|
-
]);
|
|
191
|
-
var readCacheCreationInputTokens = (usage) => firstPositive(usage, [
|
|
192
|
-
topLevel("cache_creation_input_tokens"),
|
|
193
|
-
topLevel("prompt_cache_miss_tokens")
|
|
194
|
-
]);
|
|
195
|
-
|
|
196
196
|
// packages/ai/token/normalizeUsage.ts
|
|
197
197
|
var normalizeStringArray = (value) => {
|
|
198
198
|
if (!Array.isArray(value)) return void 0;
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
initReactI18next,
|
|
10
10
|
instance,
|
|
11
11
|
toast
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-HMEMJ7GH.js";
|
|
13
13
|
import {
|
|
14
14
|
require_date_fns
|
|
15
15
|
} from "./chunk-M76ECQRD.js";
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
} from "./chunk-YDH3FDFQ.js";
|
|
19
19
|
import {
|
|
20
20
|
isSystemAdmin
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-RZANZZL2.js";
|
|
22
22
|
import {
|
|
23
23
|
asRecordOrEmpty
|
|
24
24
|
} from "./chunk-KX6YBIHG.js";
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
addContentAction,
|
|
28
28
|
checkSpaceMembership,
|
|
29
29
|
localSpaceAuthorityPatchStamp
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-4DRWWIOL.js";
|
|
31
31
|
import {
|
|
32
32
|
createSpaceKey,
|
|
33
33
|
normalizeSpaceId
|
|
@@ -41,7 +41,7 @@ import {
|
|
|
41
41
|
uploadFileAction,
|
|
42
42
|
upsertSSREntity,
|
|
43
43
|
write
|
|
44
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-UA5S3LQQ.js";
|
|
45
45
|
import {
|
|
46
46
|
SEPARATOR,
|
|
47
47
|
asTrimmedNonEmptyStringArray,
|
|
@@ -59,7 +59,7 @@ import {
|
|
|
59
59
|
} from "./chunk-WWC7I6TA.js";
|
|
60
60
|
import {
|
|
61
61
|
extractUserId
|
|
62
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-GII32WZW.js";
|
|
63
63
|
import {
|
|
64
64
|
DEVICE_LOCAL_OWNER_ID,
|
|
65
65
|
createAsyncThunk,
|
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
listUserRecordsFromServers,
|
|
8
8
|
readDbRecordFromServers,
|
|
9
9
|
readLiveDbRecordAfterTombstoneMerge
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-A2C4AKKM.js";
|
|
11
11
|
import {
|
|
12
12
|
fetchWithTransientRetry
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-5UTFL4QJ.js";
|
|
14
14
|
import {
|
|
15
15
|
DRAIN_EXHAUSTED_USER_MESSAGE,
|
|
16
16
|
isDrainExhaustedResponse
|
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
boundSummaryText,
|
|
31
31
|
buildDialogReadEnvelope,
|
|
32
32
|
projectDialogReadForAgent
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-YOXYA2GU.js";
|
|
34
34
|
import {
|
|
35
35
|
toErrorMessage
|
|
36
36
|
} from "./chunk-HNMXYYJR.js";
|
|
@@ -724,7 +724,7 @@ function isExplicitDialogIdMismatch(meta, dialogId) {
|
|
|
724
724
|
return meta && typeof meta === "object" && "id" in meta && meta.id != null && String(meta.id) !== dialogId;
|
|
725
725
|
}
|
|
726
726
|
async function readDialogFromLocalDb(dialogKey, dialogId, limit, readLocalDialog) {
|
|
727
|
-
const reader = readLocalDialog ?? (await import("./localDialogRead-
|
|
727
|
+
const reader = readLocalDialog ?? (await import("./localDialogRead-BTFJ4V2I.js")).readDialogFromLocalDb;
|
|
728
728
|
const result = await reader({ dialogKey, dialogId, limit });
|
|
729
729
|
return {
|
|
730
730
|
...result,
|