nolo-cli 0.32.0 → 0.33.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 (170) hide show
  1. package/README.md +6 -12
  2. package/{_executeModel-LTMSIBS4.js → _executeModel-RWPVI3YV.js} +76 -67
  3. package/{action-HI3VRQLP.js → action-SMLG6OTB.js} +17 -15
  4. package/{addContentAction-NCURJ6PK.js → addContentAction-SFO244QN.js} +14 -13
  5. package/{addDialogAgentAction-RCY4ECF4.js → addDialogAgentAction-W44ZCEHB.js} +14 -13
  6. package/{agentDeleteCommand-D3MYZK6E.js → agentDeleteCommand-KU2RXQPP.js} +42 -59
  7. package/{agentEmailCommands-6BXS574I.js → agentEmailCommands-MPCMDENS.js} +89 -80
  8. package/{agentGrantCommands-E7ZZFRHK.js → agentGrantCommands-2LEZDADN.js} +2 -2
  9. package/{agentListCommands-SF3HEUTT.js → agentListCommands-EPD4N6FX.js} +73 -78
  10. package/{agentMachineCommands-YARVXRR6.js → agentMachineCommands-AF7C3YRT.js} +40 -57
  11. package/{agentPullCommand-ARSIDNVC.js → agentPullCommand-YH5GEBK4.js} +5 -5
  12. package/agentRecordCommands-EYE6MZZG.js +112 -0
  13. package/agentRunCommand-LL22SGTN.js +130 -0
  14. package/{agentRuntimeLocal-ATGJY6WC.js → agentRuntimeLocal-JX34G47Z.js} +35 -50
  15. package/{agentSlice-4XWW344Y.js → agentSlice-TNMFQQOV.js} +15 -13
  16. package/{appDeleteCommands-63JO7RXS.js → appDeleteCommands-43K5VXQB.js} +38 -55
  17. package/{appDeployCommands-Y7EWYUGM.js → appDeployCommands-FEEJSVDZ.js} +38 -55
  18. package/{appDeployStatusCommands-ZBEY3DWB.js → appDeployStatusCommands-H76CG45R.js} +38 -55
  19. package/{appGetCommands-QSSOSEYL.js → appGetCommands-MDZYFTYZ.js} +38 -55
  20. package/{appListCommands-PH3XWNDX.js → appListCommands-TUJJXPWG.js} +38 -55
  21. package/{authCommand-BBDHMSO6.js → authCommand-T7UK4CWS.js} +18 -18
  22. package/{authCommands-4UDEKRE6.js → authCommands-EAPFGNHN.js} +8 -8
  23. package/chatQueueReduxAdapter-LVQXC4ZY.js +180 -0
  24. package/chunk-2H3XIBY4.js +239 -0
  25. package/{chunk-TEYN42N3.js → chunk-2IVEXF7P.js} +11 -4
  26. package/{chunk-WTGCTVJG.js → chunk-2QTEYCR7.js} +3 -6
  27. package/{chunk-DOISARTV.js → chunk-2UECQ7RE.js} +1 -1
  28. package/{chunk-SWYMCHM7.js → chunk-37V5LNEQ.js} +69 -1
  29. package/{chunk-E3APEOIM.js → chunk-3GZXL6FM.js} +4 -19
  30. package/{chunk-O3JR45Q2.js → chunk-3VAQHAXT.js} +44 -44
  31. package/{chunk-O5OMJPPF.js → chunk-3WXRAHCG.js} +6 -5
  32. package/{chunk-LAXMH7JY.js → chunk-57QJXIB6.js} +18 -15
  33. package/chunk-5CS33IBL.js +301 -0
  34. package/{chunk-3UGKATZQ.js → chunk-5SBK2MTI.js} +8 -369
  35. package/chunk-6PO2SYCS.js +1800 -0
  36. package/{chunk-TA6EA2A3.js → chunk-6SXC35F4.js} +182 -20
  37. package/{chunk-MXFQHRSS.js → chunk-6XIE5ZGI.js} +1 -1
  38. package/{chunk-3GZT3L6F.js → chunk-73GINUCW.js} +326 -481
  39. package/{chunk-VMWR7VNI.js → chunk-7E72JMBB.js} +7 -7
  40. package/{chunk-4PNU7W7K.js → chunk-AAGCMVFT.js} +106 -124
  41. package/chunk-ADLYMQB6.js +642 -0
  42. package/{chunk-ZWJOGMKH.js → chunk-AETZ7AD6.js} +1 -1
  43. package/{chunk-UDA3ZYLW.js → chunk-AFV4FOT2.js} +70 -24
  44. package/{chunk-BGTUGS3T.js → chunk-AOXVOC6D.js} +4 -30
  45. package/{chunk-2ZRP5RUG.js → chunk-B2BSG6QQ.js} +12 -11
  46. package/{chunk-44HACRCK.js → chunk-BANYWEYY.js} +4 -4
  47. package/{chunk-TOW4E763.js → chunk-BJIRLHJR.js} +2 -0
  48. package/{chunk-ZJ2WITOO.js → chunk-BQXOGBFN.js} +2 -2
  49. package/{chunk-G5GVZAXF.js → chunk-CLP2K7U4.js} +15 -19
  50. package/{chunk-2K4NDPT5.js → chunk-DFUPZE6V.js} +20 -12
  51. package/{chunk-YHGHADBQ.js → chunk-DPMBNHOJ.js} +4 -4
  52. package/chunk-EGRJC4ZN.js +91 -0
  53. package/{chunk-K6QEHQZ3.js → chunk-EKLRRZIN.js} +1 -1
  54. package/{chunk-XFG3BAKN.js → chunk-FMEVI5TG.js} +65 -0
  55. package/{chunk-RH53LMEJ.js → chunk-FSSX3XRY.js} +2 -4
  56. package/{chunk-VP4WJWKW.js → chunk-GM6PU7B6.js} +431 -345
  57. package/{chunk-EEF23OOK.js → chunk-GMXWYXAF.js} +7 -7
  58. package/{chunk-SFWZUTCI.js → chunk-GTYM4HKV.js} +1 -1
  59. package/{chunk-MITD7CON.js → chunk-HDKRSRYU.js} +1461 -301
  60. package/chunk-HS7MLR74.js +38 -0
  61. package/{chunk-3AUWC6EM.js → chunk-HUCT7HID.js} +5 -84
  62. package/{chunk-PTHDLIRB.js → chunk-I6N2UVVY.js} +1 -1
  63. package/chunk-IDAU4UFS.js +437 -0
  64. package/{chunk-Q76I4SXI.js → chunk-IHEC7VBF.js} +1 -1
  65. package/{chunk-OWHNFZNW.js → chunk-IL545V3E.js} +4 -4
  66. package/{chunk-3LY4F7SV.js → chunk-INZZJSQF.js} +348 -331
  67. package/{chunk-CF2WZF4N.js → chunk-J6WH4PYZ.js} +0 -8
  68. package/{chunk-2HXKAPH7.js → chunk-JMPYDFHY.js} +6 -6
  69. package/{chunk-V54H24CQ.js → chunk-JTSGWTYZ.js} +3 -3
  70. package/{chunk-ATK5WJOA.js → chunk-JZ5AMMXU.js} +4 -4
  71. package/chunk-KHCLMKZZ.js +3062 -0
  72. package/{chunk-WHLVPK32.js → chunk-KMSZPTM6.js} +27 -3
  73. package/{chunk-L3GCUVOH.js → chunk-KSRFVP36.js} +1 -1
  74. package/{chunk-DLWCWUNW.js → chunk-LOD75GOS.js} +336 -32
  75. package/{chunk-UOJRKY5J.js → chunk-M2YMQOLC.js} +44 -53
  76. package/chunk-M3JEW6N6.js +193 -0
  77. package/{chunk-XDHHF73Q.js → chunk-M4NC7NF6.js} +95 -95
  78. package/{chunk-3FCNXC2J.js → chunk-MPZJVZDC.js} +3735 -1394
  79. package/{chunk-IXZX5CJK.js → chunk-MQRZ5QUH.js} +1 -1
  80. package/{chunk-3ASDTTEI.js → chunk-MRWGHF56.js} +2 -0
  81. package/{chunk-D34RI6NI.js → chunk-NNWHHCVP.js} +75 -1
  82. package/{chunk-6YABCOFU.js → chunk-NUO3QFWD.js} +1 -1
  83. package/{chunk-GAF5X6B7.js → chunk-O6GEBMIY.js} +269 -309
  84. package/{chunk-CAENRKNJ.js → chunk-OR2HNLVO.js} +126 -88
  85. package/chunk-OW765XBU.js +10 -0
  86. package/chunk-PREQU5QV.js +231 -0
  87. package/{chunk-Q3CSL43H.js → chunk-Q5ITEGIN.js} +1 -1
  88. package/{chunk-7S54ZGF6.js → chunk-RAZOLMJR.js} +256 -12
  89. package/chunk-RCFIB45Q.js +28 -0
  90. package/chunk-RY57GLGW.js +188 -0
  91. package/{chunk-KGEVMUMI.js → chunk-TFPUAELY.js} +11 -11
  92. package/{chunk-ZJH3LKEW.js → chunk-UK5JGQVU.js} +94 -15
  93. package/chunk-URMS4XY2.js +10 -0
  94. package/{chunk-RXVX5LFR.js → chunk-VH2F7ZB6.js} +1 -1
  95. package/chunk-VIDPVFP3.js +20 -0
  96. package/{chunk-W367V5CH.js → chunk-WHD6BG7M.js} +400 -115
  97. package/{chunk-5RDLGLAP.js → chunk-WJSW43QZ.js} +4 -7
  98. package/{chunk-CF7S2RYZ.js → chunk-WLH5BAKX.js} +6 -6
  99. package/{chunk-VVEH6XUE.js → chunk-X2DAEZ3X.js} +1 -1
  100. package/{chunk-2IJAKBK2.js → chunk-X664KVEV.js} +426 -246
  101. package/{chunk-43EPBPZ2.js → chunk-XCCGU6QB.js} +2 -2
  102. package/chunk-Y5GCAMGP.js +9 -0
  103. package/{chunk-V42OE5HT.js → chunk-YDTYDA5W.js} +3 -3
  104. package/chunk-YYLHWIW6.js +48 -0
  105. package/{chunk-AOS5IN2I.js → chunk-ZHYK3N56.js} +1 -1
  106. package/{chunk-ODS2MVMU.js → chunk-ZJMME4DS.js} +19 -303
  107. package/{chunk-PJ2DDQQM.js → chunk-ZURFOV5J.js} +2 -2
  108. package/chunk-ZZ2MH7LE.js +84 -0
  109. package/{cliExecutor-BBUVQU4L.js → cliExecutor-DW3PHGEL.js} +2 -2
  110. package/{clipboardy-BVE3LVEH.js → clipboardy-MMBYVRLF.js} +166 -372
  111. package/{codingSkills-V35TRR4Y.js → codingSkills-DY5MINPG.js} +5 -4
  112. package/{createAgentAutomationAction-WLRNE7C4.js → createAgentAutomationAction-INQT23LX.js} +40 -31
  113. package/createDialogAction-LDCPDI73.js +60 -0
  114. package/{createPageAction-7YROVZ3W.js → createPageAction-5YXOG2M4.js} +56 -47
  115. package/{db-6DPSJ6WT.js → db-3H3JECGY.js} +45 -5
  116. package/{dbSlice-BBL3PEVW.js → dbSlice-3SD5L5H2.js} +13 -12
  117. package/{deleteFile-RJTEPOT4.js → deleteFile-XQXPBFFB.js} +7 -6
  118. package/dialogCommands-CHJO47AX.js +81 -0
  119. package/{dialogSlice-N4HPG6HM.js → dialogSlice-DOWKOILN.js} +36 -29
  120. package/{docCreateCommands-GRA5BHSA.js → docCreateCommands-OVZARUFX.js} +40 -55
  121. package/{docDeleteCommands-ONIJM5MD.js → docDeleteCommands-E2XJ62LD.js} +42 -57
  122. package/{docReadCommands-H55VQ2US.js → docReadCommands-I7OSREPJ.js} +40 -55
  123. package/{docStore-B5AHDNW5.js → docStore-UAWSKZ2Y.js} +39 -30
  124. package/{docUpdateCommands-ZQIQVGC2.js → docUpdateCommands-X4Z26VJM.js} +43 -58
  125. package/{fetchMessages-VPPQDDZ4.js → fetchMessages-7QRCCRYK.js} +3 -3
  126. package/{getPricing-QO5TYNCK.js → getPricing-L2ENXWHV.js} +7 -6
  127. package/{handleSendMessageAction-IN5XX5U7.js → handleSendMessageAction-C3TSDWKH.js} +38 -31
  128. package/index.js +67 -67
  129. package/{lib-FYYBQIXS.js → lib-2ZTNRXR4.js} +432 -183
  130. package/{localDialogRead-3DBXVYXS.js → localDialogRead-SLMPV5SK.js} +2 -2
  131. package/{localRuntimeAuthority-NDUA2D7Y.js → localRuntimeAuthority-E3R24J4T.js} +4 -2
  132. package/{localRuntimeDb-GKYRBWLQ.js → localRuntimeDb-DDZCJFQZ.js} +1 -1
  133. package/{machineCommands-H3UMKE76.js → machineCommands-BUOIYJAD.js} +93 -84
  134. package/{machineWsRunDispatch-HONRUK3R.js → machineWsRunDispatch-7CRWAA6O.js} +83 -74
  135. package/{models-WDUTTYFS.js → models-OX2S5C6Q.js} +2 -2
  136. package/{offlineMarxistsAgentCommand-E6LUG63A.js → offlineMarxistsAgentCommand-GEH6SNNA.js} +1 -1
  137. package/package.json +1 -4
  138. package/{read-64OQDO3I.js → read-6G73BMEY.js} +8 -7
  139. package/{readDocTool-MXM3T6PE.js → readDocTool-DK4EI2GA.js} +1 -2
  140. package/{readlineWorkspace-XVJZDCSC.js → readlineWorkspace-ZDWEASJV.js} +265 -428
  141. package/{removeDialogAgentAction-NEKVAMSH.js → removeDialogAgentAction-E7H557UO.js} +19 -17
  142. package/{runAgentClientLoop-H7U53QB6.js → runAgentClientLoop-U7HYA3O5.js} +72 -64
  143. package/{runtimeDoctorCommands-WI2YZUSJ.js → runtimeDoctorCommands-KIKM6BIO.js} +5 -5
  144. package/{setDialogExtraReferencesAction-WTOHQDIV.js → setDialogExtraReferencesAction-RMMGBR5F.js} +15 -14
  145. package/{setPrimaryDialogAgentAction-LDJOYC4F.js → setPrimaryDialogAgentAction-FWBKKLVA.js} +19 -17
  146. package/{settingSlice-4M37TN7V.js → settingSlice-73PV4KG4.js} +16 -14
  147. package/{skillDiscovery-5U6RYAHN.js → skillDiscovery-KLLKXPUO.js} +4 -4
  148. package/{slateUtils-2M7MUTWX.js → slateUtils-VO2FU36K.js} +1 -1
  149. package/{spaceCommands-7VVKJBDV.js → spaceCommands-GEWZXGHM.js} +43 -240
  150. package/{spaceSlice-T6YK6D34.js → spaceSlice-B6MOVY4N.js} +38 -61
  151. package/{streamAgentChatTurn-RQ63QFQ7.js → streamAgentChatTurn-T527EQTT.js} +1261 -150
  152. package/{switchDialogAgentAction-XVWGKR2Z.js → switchDialogAgentAction-US6QNL3N.js} +14 -13
  153. package/syncMapping-RK2MANUX.js +43 -0
  154. package/{tableCommands-RJZ3V4TF.js → tableCommands-QE47K72R.js} +8 -7
  155. package/{toolApiClient-ARGFDJAG.js → toolApiClient-B2MFXMEG.js} +3 -3
  156. package/tools-XMWCVMPM.js +98 -0
  157. package/{tuiSummaryLlmCaller-SRZ4QQUP.js → tuiSummaryLlmCaller-NCAJSVSD.js} +24 -21
  158. package/{updateDialogTitleAction-BBDSWHNG.js → updateDialogTitleAction-XPJZRJEL.js} +48 -38
  159. package/agentRecordCommands-JFZRQJQ4.js +0 -103
  160. package/agentRunCommand-NOX5FLKO.js +0 -121
  161. package/chunk-AYMOSAHE.js +0 -3158
  162. package/chunk-D2BPX6DQ.js +0 -1707
  163. package/chunk-DCDL3GC4.js +0 -171
  164. package/chunk-F3MP7CP6.js +0 -73
  165. package/chunk-WZSRQNQG.js +0 -2587
  166. package/createDialogAction-Y6YV64QB.js +0 -52
  167. package/dialogCommands-XLO5CAHZ.js +0 -95
  168. package/tools-KYZX3BGO.js +0 -90
  169. package/{chunk-Z5MXSEOJ.js → chunk-RQSOAMPJ.js} +2 -2
  170. package/{chunk-JDSUTNYY.js → chunk-SAQQLJZ5.js} +3 -3
@@ -401,8 +401,12 @@ var DEEPINFRA_CLAUDE_SONNET_PRICE = {
401
401
  output: 15 * 9
402
402
  };
403
403
  var DEEPINFRA_CLAUDE_OPUS_PRICE = {
404
- input: 5 * 9,
405
- output: 25 * 9
404
+ input: 5 * 8,
405
+ output: 25 * 8
406
+ };
407
+ var DEEPINFRA_CLAUDE_FABLE_PRICE = {
408
+ input: 10 * 8,
409
+ output: 50 * 8
406
410
  };
407
411
  var deepinfraModels = [
408
412
  {
@@ -424,13 +428,22 @@ var deepinfraModels = [
424
428
  supportsTool: false
425
429
  },
426
430
  {
427
- name: "anthropic/claude-opus-4-8",
428
- displayName: "Anthropic: Claude Opus 4.8",
431
+ name: "anthropic/claude-opus-5",
432
+ displayName: "Anthropic: Claude Opus 5",
429
433
  hasVision: true,
430
434
  price: { ...DEEPINFRA_CLAUDE_OPUS_PRICE },
431
435
  contextWindow: 976e3,
432
436
  maxOutputTokens: 4092,
433
437
  supportsTool: false
438
+ },
439
+ {
440
+ name: "anthropic/claude-fable-5",
441
+ displayName: "Anthropic: Claude Fable 5",
442
+ hasVision: true,
443
+ price: { ...DEEPINFRA_CLAUDE_FABLE_PRICE },
444
+ contextWindow: 976e3,
445
+ maxOutputTokens: 4092,
446
+ supportsTool: false
434
447
  }
435
448
  ];
436
449
 
@@ -464,24 +477,6 @@ var fireworksModels = [
464
477
  }
465
478
  ];
466
479
 
467
- // packages/ai/llm/cloudflare.ts
468
- var getCloudflareWorkersAiChatCompletionsUrl = (accountId = process.env.CLOUDFLARE_ACCOUNT_ID?.trim()) => {
469
- if (!accountId) {
470
- throw new Error(
471
- "CLOUDFLARE_ACCOUNT_ID is required for Cloudflare Workers AI chat completions"
472
- );
473
- }
474
- return `https://api.cloudflare.com/client/v4/accounts/${accountId}/ai/v1/chat/completions`;
475
- };
476
- var cloudflareModels = [];
477
-
478
- // packages/ai/llm/gmi.ts
479
- var GMI_CHAT_COMPLETIONS_URL = "https://api.gmi-serving.com/v1/chat/completions";
480
- var gmiModels = [];
481
-
482
- // packages/ai/llm/zai.ts
483
- var zaiModels = [];
484
-
485
480
  // packages/ai/llm/kimi.ts
486
481
  var PLATFORM_HOSTED_KIMI_K3_MODEL = "kimi-k3";
487
482
  var PLATFORM_HOSTED_KIMI_K26_MODEL = "kimi-k2.6";
@@ -506,52 +501,77 @@ var resolveFireworksKimiModel = (model) => {
506
501
 
507
502
  // packages/ai/llm/platformHosted.ts
508
503
  var PLATFORM_HOSTED_CLAUDE_SONNET_5_MODEL = "anthropic/claude-sonnet-5";
509
- var PLATFORM_HOSTED_CLAUDE_OPUS_4_8_MODEL = "anthropic/claude-opus-4-8";
504
+ var PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL = "anthropic/claude-opus-5";
505
+ var PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL = "anthropic/claude-fable-5";
510
506
  var PLATFORM_HOSTED_CLAUDE_MODELS = [
511
507
  PLATFORM_HOSTED_CLAUDE_SONNET_5_MODEL,
512
- PLATFORM_HOSTED_CLAUDE_OPUS_4_8_MODEL
508
+ PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL,
509
+ PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL
513
510
  ];
514
511
  var isPlatformHostedClaudeModel = (model) => PLATFORM_HOSTED_CLAUDE_MODELS.some(
515
512
  (m) => asTrimmedLowercaseString(model) === m
516
513
  );
514
+ var PLATFORM_CREDITS_PER_USD = 8;
515
+ var toPlatformCredits = (usdPerMillion) => Number((usdPerMillion * PLATFORM_CREDITS_PER_USD).toFixed(6));
517
516
  var PLATFORM_HOSTED_GROK_4_6_MODEL = "grok-4.6";
518
517
  var isPlatformHostedGrokModel = (model) => asTrimmedLowercaseString(model) === PLATFORM_HOSTED_GROK_4_6_MODEL;
519
- var PLATFORM_HOSTED_QWEN_37_FLASH_MODEL = "qwen3.7-flash";
520
- var PLATFORM_CREDITS_PER_USD = 7;
521
- var EXTERNAL_API_DISCOUNT = 0.8;
522
- var toPlatformCredits = (usdPerMillion) => Number(
523
- (usdPerMillion * EXTERNAL_API_DISCOUNT * PLATFORM_CREDITS_PER_USD).toFixed(
524
- 6
525
- )
526
- );
518
+ var PLATFORM_HOSTED_GROK_PRICE = {
519
+ input: toPlatformCredits(2),
520
+ // 16 credits
521
+ output: toPlatformCredits(6)
522
+ // 48 credits
523
+ };
524
+ var isPlatformHostedKimiK26Model = (model) => asTrimmedLowercaseString(model) === PLATFORM_HOSTED_KIMI_K26_MODEL;
527
525
  var PLATFORM_HOSTED_KIMI_PRICE = {
528
- input: toPlatformCredits(0.6),
529
- output: toPlatformCredits(2.4)
526
+ input: toPlatformCredits(0.4),
527
+ // 3.2 credits
528
+ // 缺了这一项时 calculatePrice 的 nolo 分支会退回 calculateSimpleCost,
529
+ // 把 cache_read_input_tokens 按 input 全价收 —— agentic 循环每轮重放整个
530
+ // 上下文,实测 92% 的 input 是缓存读取,等于按原价重复收 10 倍以上。
531
+ inputCacheHit: toPlatformCredits(0.04),
532
+ // 0.32 credits
533
+ output: toPlatformCredits(3)
534
+ // 24.0 credits (3 * 8 = 24)
530
535
  };
531
536
  var PLATFORM_HOSTED_KIMI_K3_PRICE = {
532
537
  input: 16,
533
- // crof $2 × 8,特殊价不走通用 0.8×7 换算
538
+ // crof $2 × 8
534
539
  inputCacheHit: 2,
535
540
  // crof $0.25 × 8
536
541
  output: 64
537
542
  // crof $8 × 8
538
543
  };
544
+ var PLATFORM_HOSTED_GLM_53_MODEL = "glm-5.3";
545
+ var PLATFORM_HOSTED_GLM_52_MODEL = "glm-5.2";
546
+ var isPlatformHostedGlmModel = (model) => {
547
+ const m = asTrimmedLowercaseString(model);
548
+ return m === PLATFORM_HOSTED_GLM_53_MODEL || m === PLATFORM_HOSTED_GLM_52_MODEL;
549
+ };
539
550
  var PLATFORM_HOSTED_GLM_PRICE = {
540
551
  input: toPlatformCredits(1.4),
552
+ // 11.2 credits
541
553
  inputCacheHit: toPlatformCredits(0.26),
554
+ // 2.08 credits
542
555
  output: toPlatformCredits(4.4)
556
+ // 35.2 credits (4.4 * 8 = 35.2)
543
557
  };
544
- var PLATFORM_HOSTED_GLM_52_MODEL = "glm-5.2";
545
558
  var PLATFORM_HOSTED_GEMINI_37_FLASH_MODEL = "gemini-3.7-flash";
546
559
  var PLATFORM_HOSTED_GEMINI_37_FLASH_PRICE = {
547
560
  input: toPlatformCredits(0.75),
561
+ // 6.0 credits
548
562
  output: toPlatformCredits(3.75),
563
+ // 30.0 credits
549
564
  cachingWrite: toPlatformCredits(0.075),
565
+ // 0.6 credits
550
566
  cachingRead: toPlatformCredits(0.075)
567
+ // 0.6 credits
551
568
  };
569
+ var isPlatformHostedGeminiModel = (model) => asTrimmedLowercaseString(model) === PLATFORM_HOSTED_GEMINI_37_FLASH_MODEL;
570
+ var PLATFORM_HOSTED_QWEN_37_FLASH_MODEL = "qwen3.7-flash";
571
+ var isPlatformHostedQwen37FlashModel = (model) => asTrimmedLowercaseString(model) === PLATFORM_HOSTED_QWEN_37_FLASH_MODEL;
552
572
  var PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL = "deepseek-v4-flash";
573
+ var PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL = "deepseek-v4-flash-vision-exp";
553
574
  var PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL = "deepseek-v4-pro";
554
- var DEEPSEEK_V4_PRICING_EFFECTIVE_AT_MS = Date.UTC(2026, 7, 16, 16);
555
575
  var PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE = {
556
576
  input: 3,
557
577
  inputCacheHit: 0.1,
@@ -562,16 +582,6 @@ var PLATFORM_HOSTED_DEEPSEEK_PRO_PEAK_PRICE = {
562
582
  inputCacheHit: 0.3,
563
583
  output: 27
564
584
  };
565
- var PLATFORM_HOSTED_DEEPSEEK_FLASH_PRICE = {
566
- input: 1,
567
- inputCacheHit: 0.02,
568
- output: 2
569
- };
570
- var PLATFORM_HOSTED_DEEPSEEK_PRO_PRICE = {
571
- input: 3,
572
- inputCacheHit: 0.025,
573
- output: 6
574
- };
575
585
  var PLATFORM_HOSTED_DEEPSEEK_FLASH_OFF_PEAK_PRICE = {
576
586
  input: 1.5,
577
587
  inputCacheHit: 0.05,
@@ -582,25 +592,19 @@ var PLATFORM_HOSTED_DEEPSEEK_PRO_OFF_PEAK_PRICE = {
582
592
  inputCacheHit: 0.15,
583
593
  output: 13.5
584
594
  };
595
+ var isDeepSeekOffPeakBeijingTime = (nowMs = Date.now()) => {
596
+ const beijingHour = (new Date(nowMs).getUTCHours() + 8 + 24) % 24;
597
+ return beijingHour >= 0 && beijingHour < 8;
598
+ };
585
599
  var getPlatformHostedDeepSeekV4Price = (model, nowMs = Date.now()) => {
586
- if (nowMs < DEEPSEEK_V4_PRICING_EFFECTIVE_AT_MS) {
587
- return model === PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL ? PLATFORM_HOSTED_DEEPSEEK_PRO_PRICE : PLATFORM_HOSTED_DEEPSEEK_FLASH_PRICE;
588
- }
589
- const hour = Number(
590
- new Intl.DateTimeFormat("en-US", {
591
- timeZone: "Asia/Shanghai",
592
- hour: "numeric",
593
- hourCycle: "h23"
594
- }).format(new Date(nowMs))
595
- );
596
- const peak = hour >= 9 && hour < 12 || hour >= 14 && hour < 18;
597
- if (!peak) {
598
- return model === PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL ? PLATFORM_HOSTED_DEEPSEEK_PRO_OFF_PEAK_PRICE : PLATFORM_HOSTED_DEEPSEEK_FLASH_OFF_PEAK_PRICE;
600
+ const isOffPeak = isDeepSeekOffPeakBeijingTime(nowMs);
601
+ if (model === PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL) {
602
+ return isOffPeak ? PLATFORM_HOSTED_DEEPSEEK_PRO_OFF_PEAK_PRICE : PLATFORM_HOSTED_DEEPSEEK_PRO_PEAK_PRICE;
599
603
  }
600
- return model === PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL ? PLATFORM_HOSTED_DEEPSEEK_PRO_PEAK_PRICE : PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE;
604
+ return isOffPeak ? PLATFORM_HOSTED_DEEPSEEK_FLASH_OFF_PEAK_PRICE : PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE;
601
605
  };
602
- var isPlatformHostedDeepSeekV4Model = (model) => model === PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL || model === PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL;
603
- var PLATFORM_HOSTED_CHAT_COMPLETIONS_URL = "https://ollama.com/v1/chat/completions";
606
+ var isPlatformHostedDeepSeekV4Model = (model) => model === PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL || model === PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL || model === PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL;
607
+ var isPlatformHostedDeepseekModel = (model) => model === PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL || model === PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL || model === PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL;
604
608
  var platformHostedModels = [
605
609
  {
606
610
  name: PLATFORM_HOSTED_KIMI_K3_MODEL,
@@ -622,12 +626,12 @@ var platformHostedModels = [
622
626
  supportsTool: true
623
627
  },
624
628
  {
625
- name: PLATFORM_HOSTED_GLM_52_MODEL,
626
- displayName: "GLM 5.2",
629
+ name: PLATFORM_HOSTED_GLM_53_MODEL,
630
+ displayName: "GLM 5.3",
627
631
  hasVision: false,
628
632
  price: { ...PLATFORM_HOSTED_GLM_PRICE },
629
633
  maxOutputTokens: 131072,
630
- contextWindow: 1e6,
634
+ contextWindow: 105e4,
631
635
  supportsTool: true,
632
636
  supportsReasoningEffort: true
633
637
  },
@@ -645,7 +649,21 @@ var platformHostedModels = [
645
649
  name: PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL,
646
650
  displayName: "DeepSeek V4 Flash",
647
651
  hasVision: false,
648
- price: { ...PLATFORM_HOSTED_DEEPSEEK_FLASH_PRICE },
652
+ price: { ...PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE },
653
+ peakPrice: { ...PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE },
654
+ offPeakPrice: { ...PLATFORM_HOSTED_DEEPSEEK_FLASH_OFF_PEAK_PRICE },
655
+ maxOutputTokens: 384e3,
656
+ contextWindow: 1e6,
657
+ supportsTool: true,
658
+ supportsReasoningEffort: true
659
+ },
660
+ {
661
+ name: PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL,
662
+ displayName: "DeepSeek V4 Flash Vision Exp",
663
+ hasVision: true,
664
+ price: { ...PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE },
665
+ peakPrice: { ...PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE },
666
+ offPeakPrice: { ...PLATFORM_HOSTED_DEEPSEEK_FLASH_OFF_PEAK_PRICE },
649
667
  maxOutputTokens: 384e3,
650
668
  contextWindow: 1e6,
651
669
  supportsTool: true,
@@ -655,7 +673,9 @@ var platformHostedModels = [
655
673
  name: PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL,
656
674
  displayName: "DeepSeek V4 Pro",
657
675
  hasVision: false,
658
- price: { ...PLATFORM_HOSTED_DEEPSEEK_PRO_PRICE },
676
+ price: { ...PLATFORM_HOSTED_DEEPSEEK_PRO_PEAK_PRICE },
677
+ peakPrice: { ...PLATFORM_HOSTED_DEEPSEEK_PRO_PEAK_PRICE },
678
+ offPeakPrice: { ...PLATFORM_HOSTED_DEEPSEEK_PRO_OFF_PEAK_PRICE },
659
679
  maxOutputTokens: 384e3,
660
680
  contextWindow: 1e6,
661
681
  supportsTool: true,
@@ -671,39 +691,52 @@ var platformHostedModels = [
671
691
  supportsTool: false
672
692
  },
673
693
  {
674
- name: PLATFORM_HOSTED_CLAUDE_OPUS_4_8_MODEL,
675
- displayName: "Claude Opus 4.8",
694
+ name: PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL,
695
+ displayName: "Claude Opus 5",
676
696
  hasVision: true,
677
697
  price: { ...DEEPINFRA_CLAUDE_OPUS_PRICE },
678
698
  maxOutputTokens: 4092,
679
699
  contextWindow: 976e3,
680
700
  supportsTool: false
681
701
  },
702
+ {
703
+ name: PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL,
704
+ displayName: "Claude Fable 5",
705
+ hasVision: true,
706
+ price: { ...DEEPINFRA_CLAUDE_FABLE_PRICE },
707
+ maxOutputTokens: 4092,
708
+ contextWindow: 976e3,
709
+ supportsTool: false
710
+ },
682
711
  {
683
712
  name: PLATFORM_HOSTED_GROK_4_6_MODEL,
684
713
  displayName: "Grok 4.6",
685
714
  hasVision: true,
686
- // 上游 xAI 官方 API:$2/$6 per 1M ×7(同 xai/models.ts 报价口径)。
687
- price: { input: 2 * 7, output: 6 * 7 },
715
+ price: { ...PLATFORM_HOSTED_GROK_PRICE },
688
716
  maxOutputTokens: 1e5,
689
717
  contextWindow: 5e5,
690
718
  supportsTool: true
691
- },
692
- {
693
- name: PLATFORM_HOSTED_QWEN_37_FLASH_MODEL,
694
- displayName: "Qwen 3.7 Flash",
695
- hasVision: true,
696
- // 上游 OpenRouter:$0.03/$0.13 per 1M → nolo 8 折 ×7
697
- price: {
698
- input: toPlatformCredits(0.03),
699
- output: toPlatformCredits(0.13)
700
- },
701
- maxOutputTokens: 65536,
702
- contextWindow: 1e6,
703
- supportsTool: true
704
719
  }
705
720
  ];
706
721
 
722
+ // packages/ai/llm/cloudflare.ts
723
+ var getCloudflareWorkersAiChatCompletionsUrl = (accountId = process.env.CLOUDFLARE_ACCOUNT_ID?.trim()) => {
724
+ if (!accountId) {
725
+ throw new Error(
726
+ "CLOUDFLARE_ACCOUNT_ID is required for Cloudflare Workers AI chat completions"
727
+ );
728
+ }
729
+ return `https://api.cloudflare.com/client/v4/accounts/${accountId}/ai/v1/chat/completions`;
730
+ };
731
+ var cloudflareModels = [];
732
+
733
+ // packages/ai/llm/gmi.ts
734
+ var GMI_CHAT_COMPLETIONS_URL = "https://api.gmi-serving.com/v1/chat/completions";
735
+ var gmiModels = [];
736
+
737
+ // packages/ai/llm/zai.ts
738
+ var zaiModels = [];
739
+
707
740
  export {
708
741
  googleModels,
709
742
  openAIModels,
@@ -711,7 +744,7 @@ export {
711
744
  deepinfraModels,
712
745
  xaiModels,
713
746
  fireworksModels,
714
- PLATFORM_HOSTED_KIMI_K26_MODEL,
747
+ PLATFORM_HOSTED_KIMI_K3_MODEL,
715
748
  PLATFORM_HOSTED_KIMI_PROVIDER,
716
749
  isNoloHostedProvider,
717
750
  isFireworksKimiModel,
@@ -719,12 +752,17 @@ export {
719
752
  resolveFireworksKimiModel,
720
753
  isPlatformHostedClaudeModel,
721
754
  isPlatformHostedGrokModel,
755
+ isPlatformHostedKimiK26Model,
756
+ isPlatformHostedGlmModel,
757
+ isPlatformHostedGeminiModel,
722
758
  PLATFORM_HOSTED_QWEN_37_FLASH_MODEL,
759
+ isPlatformHostedQwen37FlashModel,
723
760
  PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL,
724
- PLATFORM_HOSTED_DEEPSEEK_FLASH_PRICE,
761
+ PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL,
762
+ PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE,
725
763
  getPlatformHostedDeepSeekV4Price,
726
764
  isPlatformHostedDeepSeekV4Model,
727
- PLATFORM_HOSTED_CHAT_COMPLETIONS_URL,
765
+ isPlatformHostedDeepseekModel,
728
766
  platformHostedModels,
729
767
  getCloudflareWorkersAiChatCompletionsUrl,
730
768
  cloudflareModels,
@@ -0,0 +1,10 @@
1
+ // packages/database/levelNotFoundError.ts
2
+ function isLevelNotFoundError(error) {
3
+ if (!error || typeof error !== "object") return false;
4
+ const e = error;
5
+ return e.notFound === true || e.name === "NotFoundError" || e.code === "LEVEL_NOT_FOUND" || e.code === "LEVEL_NOT_FOUND_ERROR" || e.message === "NotFound";
6
+ }
7
+
8
+ export {
9
+ isLevelNotFoundError
10
+ };
@@ -0,0 +1,231 @@
1
+ import {
2
+ DEFAULT_AGENT_BASE_POLICY,
3
+ DEFAULT_USER_PREFERENCE_PROFILE
4
+ } from "./chunk-CLP2K7U4.js";
5
+
6
+ // packages/ai/policy/runtimePolicy.ts
7
+ var clampLevel = (value, fallback) => {
8
+ const n = Number(value);
9
+ if (n === 1 || n === 2 || n === 3 || n === 4) {
10
+ return n;
11
+ }
12
+ return fallback;
13
+ };
14
+ var normalizeTonePreset = (value, fallback) => {
15
+ switch (value) {
16
+ case "professional":
17
+ case "friendly":
18
+ case "direct":
19
+ case "pragmatic":
20
+ case "default":
21
+ return value;
22
+ default:
23
+ return fallback;
24
+ }
25
+ };
26
+ var normalizeToneResolutionMode = (value, fallback) => {
27
+ switch (value) {
28
+ case "agent_first":
29
+ case "user_first":
30
+ case "blend":
31
+ return value;
32
+ default:
33
+ return fallback;
34
+ }
35
+ };
36
+ var normalizeSelfEvolutionMode = (value, fallback) => {
37
+ switch (value) {
38
+ case "none":
39
+ case "knowledge_only":
40
+ case "prompt_and_refs":
41
+ case "full":
42
+ return value;
43
+ default:
44
+ return fallback;
45
+ }
46
+ };
47
+ var resolveAgentBasePolicy = (agentConfig) => {
48
+ const raw = agentConfig?.basePolicy ?? {};
49
+ return {
50
+ version: 1,
51
+ tone: {
52
+ preset: normalizeTonePreset(
53
+ raw?.tone?.preset,
54
+ DEFAULT_AGENT_BASE_POLICY.tone?.preset ?? "default"
55
+ ),
56
+ resolutionMode: normalizeToneResolutionMode(
57
+ raw?.tone?.resolutionMode,
58
+ DEFAULT_AGENT_BASE_POLICY.tone?.resolutionMode ?? "blend"
59
+ )
60
+ },
61
+ knowledgeCaptureMaxLevel: clampLevel(
62
+ raw?.knowledgeCaptureMaxLevel,
63
+ DEFAULT_AGENT_BASE_POLICY.knowledgeCaptureMaxLevel
64
+ ),
65
+ spaceContextMaxLevel: clampLevel(
66
+ raw?.spaceContextMaxLevel,
67
+ DEFAULT_AGENT_BASE_POLICY.spaceContextMaxLevel
68
+ ),
69
+ selfEvolutionMode: normalizeSelfEvolutionMode(
70
+ raw?.selfEvolutionMode,
71
+ DEFAULT_AGENT_BASE_POLICY.selfEvolutionMode
72
+ )
73
+ };
74
+ };
75
+ var resolveUserPreferenceProfile = (settingsRecord) => {
76
+ const fallbackSpaceLevel = settingsRecord?.enableReadCurrentSpace === false ? 1 : DEFAULT_USER_PREFERENCE_PROFILE.spaceContextLevel;
77
+ return {
78
+ version: 1,
79
+ tone: {
80
+ preset: normalizeTonePreset(
81
+ settingsRecord?.userTonePreset,
82
+ DEFAULT_USER_PREFERENCE_PROFILE.tone?.preset ?? "default"
83
+ )
84
+ },
85
+ knowledgeCaptureLevel: clampLevel(
86
+ settingsRecord?.knowledgeCaptureLevel,
87
+ DEFAULT_USER_PREFERENCE_PROFILE.knowledgeCaptureLevel
88
+ ),
89
+ spaceContextLevel: clampLevel(
90
+ settingsRecord?.spaceContextLevel,
91
+ fallbackSpaceLevel
92
+ )
93
+ };
94
+ };
95
+ var containsAny = (text, patterns) => patterns.some((pattern) => text.includes(pattern));
96
+ var inferCaptureIntent = (userInput) => {
97
+ const normalized = userInput.toLowerCase();
98
+ if (containsAny(normalized, [
99
+ "\u4FDD\u5B58",
100
+ "\u5B58\u4E00\u4E0B",
101
+ "\u6C89\u6DC0",
102
+ "\u8BB0\u4F4F",
103
+ "\u5199\u5165\u6587\u6863",
104
+ "\u5EFA\u6587\u6863",
105
+ "\u521B\u5EFA\u6587\u6863",
106
+ "\u5BFC\u5165 skill",
107
+ "\u5BFC\u5165\u8FD9\u4E2A skill",
108
+ "\u786E\u8BA4\u5BFC\u5165",
109
+ "\u786E\u8BA4\u5BFC\u5165\u8FD9\u4E2A skill",
110
+ "\u5BFC\u5165\u8FD9\u4E2A\u6280\u80FD",
111
+ "\u786E\u8BA4\u5BFC\u5165\u8FD9\u4E2A\u6280\u80FD",
112
+ "\u521B\u5EFA skill",
113
+ "\u521B\u5EFA\u8FD9\u4E2A skill",
114
+ "skill \u6587\u6863",
115
+ "\u521B\u5EFA\u8868\u683C",
116
+ "createtable",
117
+ "addtablerow",
118
+ "addtablerows",
119
+ "\u5EFA\u8868",
120
+ "\u5EFA\u4E2A\u8868",
121
+ "\u505A\u4E2A\u8868",
122
+ "\u505A\u4E00\u5F20\u8868",
123
+ "\u5199\u8868",
124
+ "\u5199\u5165\u8868",
125
+ "\u5199\u5165\u4E00\u884C",
126
+ "\u5199\u5165 table",
127
+ "\u653E\u5230 table",
128
+ "\u5B58\u5230 table",
129
+ "\u4FDD\u5B58\u5230 table",
130
+ "\u8BB0\u5F55\u4E0B\u6765",
131
+ "\u91C7\u96C6",
132
+ "\u505A\u6570\u636E\u96C6",
133
+ "\u505A\u6210\u6570\u636E\u96C6",
134
+ "\u6574\u7406\u6210\u6570\u636E\u96C6",
135
+ "\u6574\u7406\u6210\u8868",
136
+ "\u6574\u7406\u6210\u4E00\u5F20\u8868",
137
+ "\u5EFA\u7ACB\u4E00\u4E2A\u8868",
138
+ "\u5EFA\u7ACB\u4E00\u5F20\u8868",
139
+ "\u5EFA\u7ACB\u6210\u8868",
140
+ "\u5EFA\u7ACB\u6210\u4E00\u5F20\u8868",
141
+ "\u521B\u5EFA\u8FD9\u4E2A\u8868\u683C",
142
+ "\u786E\u8BA4\u521B\u5EFA",
143
+ "\u786E\u8BA4\u521B\u5EFA\u8FD9\u5F20\u8868\u683C",
144
+ "create doc",
145
+ "import skill",
146
+ "confirm import",
147
+ "create skill",
148
+ "create table",
149
+ "write table",
150
+ "save to table",
151
+ "dataset",
152
+ "save this",
153
+ "remember this",
154
+ "document this"
155
+ ])) {
156
+ return "strong";
157
+ }
158
+ if (containsAny(normalized, [
159
+ "\u603B\u7ED3",
160
+ "\u65B9\u6848",
161
+ "\u8C03\u7814",
162
+ "\u89C4\u8303",
163
+ "\u4F1A\u8BAE\u7EAA\u8981",
164
+ "\u603B\u7ED3\u4E00\u4E0B",
165
+ "research",
166
+ "proposal",
167
+ "spec",
168
+ "summary"
169
+ ])) {
170
+ return "possible";
171
+ }
172
+ return "none";
173
+ };
174
+ var resolveTonePreset = (agentTone, userTone, mode) => {
175
+ if (mode === "agent_first") {
176
+ return agentTone === "default" ? userTone : agentTone;
177
+ }
178
+ if (mode === "user_first") {
179
+ return userTone === "default" ? agentTone : userTone;
180
+ }
181
+ if (userTone !== "default") return userTone;
182
+ return agentTone;
183
+ };
184
+ var preloadSummaryCountByLevel = (level) => ({ 1: 0, 2: 0, 3: 8, 4: 16 })[level];
185
+ var preloadBudgetRatioByLevel = (level) => ({ 1: 0, 2: 0.01, 3: 0.04, 4: 0.08 })[level];
186
+ var knowledgeCaptureLevelLabel = (level) => ({
187
+ 1: "\u4E0D\u4E3B\u52A8\u521B\u5EFA",
188
+ 2: "\u5148\u95EE\u518D\u521B\u5EFA",
189
+ 3: "\u56DE\u7B54\u540E\u5EFA\u8BAE\u521B\u5EFA",
190
+ 4: "\u9AD8\u4EF7\u503C\u7ED3\u679C\u53EF\u81EA\u52A8\u521B\u5EFA"
191
+ })[level] ?? "\u672A\u77E5\u7EA7\u522B";
192
+ var spaceContextLevelLabel = (level) => ({
193
+ 1: "\u4E0D\u81EA\u52A8\u8BFB\u53D6",
194
+ 2: "\u53EA\u770B\u7ED3\u6784\u548C\u6807\u9898",
195
+ 3: "\u8F7B\u91CF\u8BFB\u53D6",
196
+ 4: "\u81EA\u9002\u5E94\u8BFB\u53D6"
197
+ })[level] ?? "\u672A\u77E5\u7EA7\u522B";
198
+ var buildStaticUserPolicyContext = (params) => {
199
+ const agentBasePolicy = resolveAgentBasePolicy(params.agentConfig);
200
+ const userPreferenceProfile = resolveUserPreferenceProfile(params.settingsRecord);
201
+ const tonePreset = resolveTonePreset(
202
+ agentBasePolicy.tone?.preset ?? "default",
203
+ userPreferenceProfile.tone?.preset ?? "default",
204
+ agentBasePolicy.tone?.resolutionMode ?? "blend"
205
+ );
206
+ const knowledgeLevel = Math.min(
207
+ agentBasePolicy.knowledgeCaptureMaxLevel,
208
+ userPreferenceProfile.knowledgeCaptureLevel
209
+ );
210
+ const spaceLevel = Math.min(
211
+ agentBasePolicy.spaceContextMaxLevel,
212
+ userPreferenceProfile.spaceContextLevel
213
+ );
214
+ return [
215
+ `\u7528\u6237\u8BED\u6C14\u504F\u597D\uFF1A${tonePreset}`,
216
+ `\u77E5\u8BC6\u6C89\u6DC0\u7EA7\u522B\uFF1A${knowledgeLevel}\uFF08${knowledgeCaptureLevelLabel(knowledgeLevel)}\uFF09`,
217
+ `\u7A7A\u95F4\u4E0A\u4E0B\u6587\u7EA7\u522B\uFF1A${spaceLevel}\uFF08${spaceContextLevelLabel(spaceLevel)}\uFF09`,
218
+ "\u8BF7\u5C3D\u91CF\u4FDD\u7559 agent \u81EA\u8EAB\u89D2\u8272\u8BBE\u5B9A\uFF0C\u540C\u65F6\u6309\u7528\u6237\u504F\u597D\u8C03\u6574\u8868\u8FBE\u548C\u81EA\u52A8\u5316\u7A0B\u5EA6\u3002"
219
+ ].join("\n");
220
+ };
221
+ var resolveSpaceContextPreloadPlan = (level) => ({
222
+ preloadSummaryCount: preloadSummaryCountByLevel(level),
223
+ preloadBudgetRatio: preloadBudgetRatioByLevel(level),
224
+ includeRecentContent: level >= 3
225
+ });
226
+
227
+ export {
228
+ inferCaptureIntent,
229
+ buildStaticUserPolicyContext,
230
+ resolveSpaceContextPreloadPlan
231
+ };
@@ -14,7 +14,7 @@ function buildCliLocalRuntimeDbEnv(env = process.env) {
14
14
  };
15
15
  }
16
16
  async function getDefaultCliLocalRuntimeDb(options = {}) {
17
- const { getDefaultCliLocalRuntimeDb: getAuthorityBackedDb } = await import("./localRuntimeAuthority-NDUA2D7Y.js");
17
+ const { getDefaultCliLocalRuntimeDb: getAuthorityBackedDb } = await import("./localRuntimeAuthority-E3R24J4T.js");
18
18
  return getAuthorityBackedDb(options);
19
19
  }
20
20