nolo-cli 0.50.0-alpha.1 → 0.50.0

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 (131) hide show
  1. package/{_executeModel-4BPV4B2U.js → _executeModel-JKEH7ACW.js} +48 -42
  2. package/{action-IU6ON7ZB.js → action-VSG2IYP3.js} +8 -8
  3. package/{addContentAction-5V5CCI3I.js → addContentAction-2HJJITDI.js} +8 -7
  4. package/{addDialogAgentAction-KF3KZZNZ.js → addDialogAgentAction-7BSQVVL5.js} +10 -9
  5. package/{agentDeleteCommand-KZSETRE3.js → agentDeleteCommand-SVXKS5SC.js} +30 -28
  6. package/{agentEmailCommands-5TEW64UO.js → agentEmailCommands-WN7QBTP3.js} +57 -52
  7. package/{agentListCommands-KVLURCS7.js → agentListCommands-2BEBOQIG.js} +42 -33
  8. package/{agentMachineCommands-4LQF5YB5.js → agentMachineCommands-WALP3ONU.js} +30 -28
  9. package/{agentRecordCommands-OXC6JSH6.js → agentRecordCommands-E652SW57.js} +55 -50
  10. package/{agentRunCommand-4AXTA7MR.js → agentRunCommand-6VXWXKCS.js} +60 -53
  11. package/{agentRunControl-4GHHSXFZ.js → agentRunControl-LJVFDJGU.js} +3 -1
  12. package/{agentRuntimeLocal-SIQYQGSK.js → agentRuntimeLocal-SBG7BDFQ.js} +30 -26
  13. package/{agentSlice-VD3BAJAU.js → agentSlice-3WYXIGEO.js} +8 -8
  14. package/{agentSuperviseCommands-VB6BUS5H.js → agentSuperviseCommands-F3RFAL7K.js} +2 -2
  15. package/{appDeleteCommands-LSIIQFYN.js → appDeleteCommands-NTUNMEXY.js} +31 -29
  16. package/{appDeployCommands-VYGKN7HU.js → appDeployCommands-DISWXRTL.js} +31 -29
  17. package/{appDeployStatusCommands-ODFHFUR7.js → appDeployStatusCommands-IKRA6B6F.js} +31 -29
  18. package/{appGetCommands-DPQY67UZ.js → appGetCommands-UMOP2DFV.js} +31 -29
  19. package/{appListCommands-EFXENXWX.js → appListCommands-ZKFD2AKS.js} +31 -29
  20. package/{authCommand-WLWOEVYI.js → authCommand-BS3CQC6I.js} +11 -11
  21. package/{chatQueueReduxAdapter-N5432EP2.js → chatQueueReduxAdapter-A3YH4MT4.js} +24 -21
  22. package/{chunk-76UA7376.js → chunk-273FJUYI.js} +6 -6
  23. package/{chunk-7CH6U3FL.js → chunk-2GRGFCF6.js} +2 -4
  24. package/{chunk-T27IEBNQ.js → chunk-2QDDKFG5.js} +74 -1
  25. package/{chunk-WWXZYFWM.js → chunk-2TLYVDTN.js} +464 -1135
  26. package/{chunk-6BYAXNH5.js → chunk-3QOCS5IF.js} +11 -2
  27. package/chunk-6IGD47IC.js +19 -0
  28. package/{chunk-QDNFRWAX.js → chunk-6TUT5ZJD.js} +4 -6
  29. package/chunk-6YTOJY35.js +352 -0
  30. package/{chunk-B54WOZ77.js → chunk-7H7GQL6V.js} +2 -2
  31. package/{chunk-OYNDYVSE.js → chunk-B45YNDAE.js} +1 -1
  32. package/{chunk-OZ4JNDIL.js → chunk-BKIDF5LV.js} +1 -1
  33. package/{chunk-5XCW6RQG.js → chunk-BUBPRCIU.js} +1 -1
  34. package/chunk-BYXBJQAS.js +0 -0
  35. package/{chunk-X7S7OFUX.js → chunk-CEVCRRHU.js} +4 -4
  36. package/{chunk-JBL24PK6.js → chunk-DEIGUGP6.js} +2 -2
  37. package/{chunk-V2IPBG5U.js → chunk-DGEPT6FH.js} +1 -1
  38. package/{chunk-3AOLVADY.js → chunk-DVINR3PL.js} +1 -1
  39. package/{chunk-HMMOAG2I.js → chunk-DXOELY7S.js} +67 -69
  40. package/{chunk-OFZPJ3NT.js → chunk-E4MARS3Q.js} +1 -1
  41. package/{chunk-27MWS6HD.js → chunk-EAYBPWHX.js} +179 -86
  42. package/{chunk-DQLYEGP7.js → chunk-EGVY3GMT.js} +1 -1
  43. package/{chunk-2JYSSXLY.js → chunk-EJFW7TRP.js} +5 -26
  44. package/{chunk-4YAMAMNA.js → chunk-FGRCSLPV.js} +36 -46
  45. package/{chunk-VFN256RI.js → chunk-G4WSLTQF.js} +56 -97
  46. package/{chunk-HR5XDXYM.js → chunk-G5SQVIFZ.js} +3 -3
  47. package/{chunk-J3UALFHL.js → chunk-GHE5XMVR.js} +1 -1
  48. package/{chunk-7M72YPM2.js → chunk-GKB4AZKV.js} +440 -2981
  49. package/{chunk-S3HB4CQY.js → chunk-GKNGRBE6.js} +256 -40
  50. package/{chunk-Q24S4NDF.js → chunk-HQTK2SFT.js} +1 -1
  51. package/{chunk-XB7ACJFH.js → chunk-IPTZ5TVU.js} +7 -6
  52. package/{chunk-4RXXP6WD.js → chunk-J7KDNHUO.js} +5 -64
  53. package/{chunk-BO3YFOZR.js → chunk-KNQ5LYVZ.js} +57 -2
  54. package/{chunk-AV4Z57LV.js → chunk-KVVNC5V3.js} +2 -2
  55. package/{chunk-VKSBVRGP.js → chunk-LVCAWHI5.js} +4 -4
  56. package/{chunk-5JXRVJAC.js → chunk-N6SLQMSA.js} +6 -6
  57. package/{chunk-SQTVMYMU.js → chunk-NTZO3KX2.js} +3 -3
  58. package/{chunk-LGUQHYAL.js → chunk-O5FLGN2L.js} +3 -2
  59. package/{chunk-72COHDZR.js → chunk-OSUZKICS.js} +1600 -190
  60. package/{chunk-HIDPTO4B.js → chunk-Q2QN2RHG.js} +7 -7
  61. package/{chunk-L3JWI7WX.js → chunk-QOKAKDPE.js} +15 -11
  62. package/{chunk-4ZL2KBI7.js → chunk-RFYXK6KI.js} +1 -1
  63. package/chunk-RQSN75DW.js +1766 -0
  64. package/{chunk-RPO6WAZV.js → chunk-S3JNURSO.js} +2 -2
  65. package/{chunk-YZ2WE6CW.js → chunk-SAJSBPI2.js} +2 -2
  66. package/{chunk-WHVQA7PJ.js → chunk-SCBBGS2N.js} +23 -5
  67. package/chunk-SGSJBBKP.js +297 -0
  68. package/{chunk-FTSPVLKJ.js → chunk-TUBNQ3OF.js} +2 -2
  69. package/{chunk-BANYWEYY.js → chunk-TY3ADTX5.js} +1 -1
  70. package/chunk-UAD2WT54.js +64 -0
  71. package/{chunk-F22JQTSX.js → chunk-UEV5WVQV.js} +3 -3
  72. package/{chunk-MCX2LX27.js → chunk-UMCMW5R3.js} +51 -34
  73. package/{chunk-6L6UPZNH.js → chunk-VFDRZHPM.js} +16 -16
  74. package/{chunk-C2WF2OY7.js → chunk-W22UTILW.js} +3 -3
  75. package/{chunk-W3RZLXMA.js → chunk-WERPP2S7.js} +2 -2
  76. package/{chunk-AZ6DT2UD.js → chunk-WSUHBABG.js} +1 -1
  77. package/{chunk-3YVCM5PE.js → chunk-X3OGKR5Q.js} +4 -4
  78. package/{chunk-IERBSHMR.js → chunk-X5LRMXTS.js} +10 -10
  79. package/{chunk-DIQCV4FR.js → chunk-X665UCNM.js} +1 -1
  80. package/{chunk-HCBQVVFZ.js → chunk-X7P6EJUY.js} +4 -4
  81. package/{chunk-HHBXCRJS.js → chunk-XOJRZUPF.js} +4 -4
  82. package/{chunk-MRWGHF56.js → chunk-YDH3FDFQ.js} +12 -356
  83. package/{chunk-TNPCQNGQ.js → chunk-YEFRCO5N.js} +4 -9
  84. package/{chunk-RO2IUWZE.js → chunk-YUKTCDVN.js} +1 -1
  85. package/{chunk-Y7TGWSUN.js → chunk-YWY25N4V.js} +1 -1
  86. package/{chunk-Z7A54NFZ.js → chunk-ZDS63Y4O.js} +2 -2
  87. package/chunk-ZJ7UHBJS.js +89 -0
  88. package/{chunk-SG65C33A.js → chunk-ZLMG6NRV.js} +4 -4
  89. package/{codingSkills-BYQI6EPT.js → codingSkills-FQPCEIWL.js} +2 -2
  90. package/contentThunks-J33BZB3E.js +71 -0
  91. package/{createAgentAutomationAction-IHKV53QC.js → createAgentAutomationAction-HTMTGX6Q.js} +25 -21
  92. package/{createDialogAction-4ARDCKPP.js → createDialogAction-WYQBSN6A.js} +27 -23
  93. package/{createPageAction-GQOCPICU.js → createPageAction-ICRRK3SA.js} +27 -22
  94. package/{dbSlice-FWF5F4L7.js → dbSlice-YORO4VL4.js} +6 -6
  95. package/{deleteFile-NPZ64DFN.js → deleteFile-JYKRT7C3.js} +4 -4
  96. package/{dialogCommands-YOTCP26N.js → dialogCommands-FRSIAPKY.js} +31 -29
  97. package/{dialogSlice-NX26W623.js → dialogSlice-5KPVIAWH.js} +24 -21
  98. package/{docCreateCommands-JVAMHES4.js → docCreateCommands-DBRJMPDX.js} +30 -28
  99. package/{docDeleteCommands-LW5DWICT.js → docDeleteCommands-BCYPLWXN.js} +31 -29
  100. package/{docReadCommands-AQOZS3I5.js → docReadCommands-L5JX4Q7G.js} +30 -28
  101. package/{docStore-YAE7GYHZ.js → docStore-34NXLCEO.js} +8 -33
  102. package/{docUpdateCommands-FFGGX5RG.js → docUpdateCommands-RELG7XJD.js} +30 -28
  103. package/fetchMessages-KZQVBXKY.js +1 -1
  104. package/{getPricing-JNOCWYDH.js → getPricing-FM7TJZFV.js} +4 -4
  105. package/{handleSendMessageAction-7YKH4UBI.js → handleSendMessageAction-MEYK7RPD.js} +25 -22
  106. package/index.js +64 -64
  107. package/{machineCommands-FMMFBMCQ.js → machineCommands-YSXTOWHQ.js} +59 -54
  108. package/{machineWsRunDispatch-UODRJY63.js → machineWsRunDispatch-DNAYOPQT.js} +54 -49
  109. package/memberThunks-KVPBG4V7.js +638 -0
  110. package/{models-N4NXQ44D.js → models-CW5EL6Z7.js} +2 -2
  111. package/package.json +2 -3
  112. package/{read-J7RVVCHH.js → read-NIOV5F7W.js} +4 -4
  113. package/{readDocTool-G2WBM4IH.js → readDocTool-ULKJ5BEM.js} +1 -1
  114. package/{readlineWorkspace-GVDEA7RH.js → readlineWorkspace-KZ3LPQG2.js} +866 -377
  115. package/{removeDialogAgentAction-RMPISD42.js → removeDialogAgentAction-JGSCPML3.js} +12 -11
  116. package/{runAgentClientLoop-6NCW5AS6.js → runAgentClientLoop-O2AUHIJT.js} +46 -40
  117. package/{setDialogExtraReferencesAction-7BUTHDAL.js → setDialogExtraReferencesAction-CORU64NM.js} +9 -8
  118. package/{setPrimaryDialogAgentAction-WCYIBGZ4.js → setPrimaryDialogAgentAction-5VS2VKLZ.js} +12 -11
  119. package/{settingSlice-7NN2MI6Y.js → settingSlice-3GNGTC2T.js} +7 -7
  120. package/{skillDiscovery-COX56OBO.js → skillDiscovery-CYUCJMAG.js} +3 -3
  121. package/{spaceCommands-7MJVL4XR.js → spaceCommands-OI7RIB2T.js} +30 -28
  122. package/{streamAgentChatTurn-UAKCHWFN.js → streamAgentChatTurn-TA3PGS6C.js} +61 -54
  123. package/{switchDialogAgentAction-WGMMQHDI.js → switchDialogAgentAction-LP433X4D.js} +10 -9
  124. package/{tableCommands-P2TXJ3CF.js → tableCommands-R6WFRDYF.js} +1 -1
  125. package/{toolApiClient-B2MFXMEG.js → toolApiClient-53U4UDFF.js} +3 -2
  126. package/{tools-ROUITGAR.js → tools-6ZPQ75XA.js} +37 -32
  127. package/{tuiSummaryLlmCaller-U4EGD2SX.js → tuiSummaryLlmCaller-YKYQB4ZL.js} +17 -15
  128. package/{updateDialogTitleAction-R4M6ZXCX.js → updateDialogTitleAction-LRJ7NSOS.js} +26 -22
  129. package/chunk-EUG45QJR.js +0 -6104
  130. package/spaceSlice-JVVDCGA3.js +0 -127
  131. package/{chunk-NQ4N4IGO.js → chunk-CS6TCJ7E.js} +3 -3
@@ -10,14 +10,14 @@ import {
10
10
  scheduleExistingRecordReplication,
11
11
  shouldReplaceLocalWithRemoteRecord,
12
12
  shouldReplicateLocalRecord
13
- } from "./chunk-HHBXCRJS.js";
13
+ } from "./chunk-XOJRZUPF.js";
14
14
  import {
15
15
  fetchFromClientDb,
16
16
  fetchFromServer,
17
17
  isAbortError,
18
18
  isReadTimeoutError,
19
19
  logger
20
- } from "./chunk-L3JWI7WX.js";
20
+ } from "./chunk-QOKAKDPE.js";
21
21
  import {
22
22
  shouldReplaceWithNextRecord
23
23
  } from "./chunk-GBRG75BQ.js";
@@ -152,30 +152,9 @@ var BUILTIN_AGENT_CATALOG = [
152
152
  model: "gpt-5.5-pro",
153
153
  runtimeFallback: true
154
154
  },
155
- {
156
- id: "01CLSO50DIPB00000000A1DVVU",
157
- group: "public",
158
- name: "Claude Sonnet 5",
159
- provider: "deepinfra",
160
- model: "anthropic/claude-sonnet-5",
161
- runtimeFallback: true
162
- },
163
- {
164
- id: "01CLOP48DIPB0000000001OI1W",
165
- group: "public",
166
- name: "Claude Opus 5",
167
- provider: "deepinfra",
168
- model: "anthropic/claude-opus-5",
169
- runtimeFallback: true
170
- },
171
- {
172
- id: "01FABLE5DIPB00000001VJBKM4",
173
- group: "public",
174
- name: "Claude Fable 5",
175
- provider: "deepinfra",
176
- model: "anthropic/claude-fable-5",
177
- runtimeFallback: true
178
- },
155
+ // Claude Sonnet/Opus/Fable 5 已从广场下架(2026-09-01,平台停止维护 Claude 系):
156
+ // 存量记录由 modelUpgradeTable 迁移到 nolo/glm-5-3-flash,兼容期请求由
157
+ // platformHostedRoutingTable 重映射;客户端下架提示走 publicAgents.removedFromPlaza。
179
158
  // Gemini 文本档只上架最新一代:旧版留在广场只会分散选择、拉长列表,而
180
159
  // 用户想要的是「最新的那个 Gemini」。gemini-3.6-flash 这个**模型**仍然保留
181
160
  // (modelAbility / 定价表照旧),下架的只是广场入口。
@@ -1,16 +1,19 @@
1
+ import {
2
+ buildResponseGuidelines
3
+ } from "./chunk-6IGD47IC.js";
1
4
  import {
2
5
  getLocalProviderSecret
3
6
  } from "./chunk-HS7MLR74.js";
4
7
  import {
5
8
  ANTIGRAVITY_CLOUD_CODE_BASE_URL,
6
9
  isAntigravityOAuthAgent
7
- } from "./chunk-4ZL2KBI7.js";
10
+ } from "./chunk-RFYXK6KI.js";
8
11
  import {
9
12
  clipMultilineText,
10
13
  fetchAndSerializeTable,
11
14
  resolveBuiltinSkillPage,
12
15
  waitForAbortableDelay
13
- } from "./chunk-72COHDZR.js";
16
+ } from "./chunk-OSUZKICS.js";
14
17
  import {
15
18
  isGatewayHttpStatus
16
19
  } from "./chunk-NF64D32W.js";
@@ -22,55 +25,55 @@ import {
22
25
  } from "./chunk-3L2WKC3W.js";
23
26
  import {
24
27
  slateToSimplifiedMarkdown
25
- } from "./chunk-5XCW6RQG.js";
28
+ } from "./chunk-BUBPRCIU.js";
26
29
  import {
27
30
  extractCategorizedMentions
28
31
  } from "./chunk-MEYIRKDN.js";
29
32
  import {
30
33
  fetchAndCacheMessages
31
- } from "./chunk-MCX2LX27.js";
34
+ } from "./chunk-UMCMW5R3.js";
32
35
  import {
33
36
  shouldUseServerProxy
34
37
  } from "./chunk-YYLHWIW6.js";
35
38
  import {
36
39
  fetchServerSyncedCredential
37
- } from "./chunk-5JXRVJAC.js";
40
+ } from "./chunk-N6SLQMSA.js";
38
41
  import {
39
42
  buildSkillGuidancePromptBlock,
40
43
  extractRuntimePageCapabilities,
41
44
  resolveSkillGraphFromRoots
42
- } from "./chunk-V2IPBG5U.js";
45
+ } from "./chunk-DGEPT6FH.js";
43
46
  import {
44
47
  buildCurrentTimeBlock,
45
48
  buildIdentityBlock,
46
49
  buildRuntimeGuidanceBlocks,
47
50
  normalizeChatCompletionsBodyForProvider,
48
51
  resolveToolGuidedSections
49
- } from "./chunk-HMMOAG2I.js";
52
+ } from "./chunk-DXOELY7S.js";
50
53
  import {
51
54
  convertMessagesToResponsesInput,
52
55
  getUsageRequestOptions,
53
56
  preserveAgentStateFields
54
- } from "./chunk-6BYAXNH5.js";
57
+ } from "./chunk-3QOCS5IF.js";
55
58
  import {
56
59
  buildProviderAuthHeaders
57
- } from "./chunk-JBL24PK6.js";
60
+ } from "./chunk-DEIGUGP6.js";
58
61
  import {
59
62
  estimateTokenCount
60
- } from "./chunk-HR5XDXYM.js";
63
+ } from "./chunk-G5SQVIFZ.js";
61
64
  import {
62
65
  isOpenAiResponsesModel,
63
66
  resolvePlatformChatCompletionsEndpoint,
64
67
  resolvePlatformResponsesEndpoint
65
- } from "./chunk-AV4Z57LV.js";
66
- import {
67
- createFileCredentialBroker
68
- } from "./chunk-NQ4N4IGO.js";
68
+ } from "./chunk-KVVNC5V3.js";
69
69
  import {
70
70
  clampReasoningEffort,
71
71
  getModelConfig,
72
72
  isModelSupportReasoningEffort
73
- } from "./chunk-BO3YFOZR.js";
73
+ } from "./chunk-KNQ5LYVZ.js";
74
+ import {
75
+ createFileCredentialBroker
76
+ } from "./chunk-CS6TCJ7E.js";
74
77
  import {
75
78
  toErrorMessage
76
79
  } from "./chunk-HNMXYYJR.js";
@@ -78,7 +81,7 @@ import {
78
81
  MEMORY_USE_GUIDANCE,
79
82
  buildUserResponseLanguageContext,
80
83
  wrapHistoricalSummaryWithReplayGuard
81
- } from "./chunk-7CH6U3FL.js";
84
+ } from "./chunk-2GRGFCF6.js";
82
85
  import {
83
86
  canonicalizeToolNames
84
87
  } from "./chunk-O6OSWFZQ.js";
@@ -86,13 +89,13 @@ import {
86
89
  isDeepInfraKimiModel,
87
90
  isFireworksKimiModel,
88
91
  resolveFireworksKimiModel
89
- } from "./chunk-VFN256RI.js";
92
+ } from "./chunk-G4WSLTQF.js";
90
93
  import {
91
94
  createSpaceKey
92
- } from "./chunk-4RXXP6WD.js";
95
+ } from "./chunk-UAD2WT54.js";
93
96
  import {
94
97
  read
95
- } from "./chunk-76UA7376.js";
98
+ } from "./chunk-273FJUYI.js";
96
99
  import {
97
100
  asTrimmedLowercaseString
98
101
  } from "./chunk-QSJ3HFEF.js";
@@ -101,16 +104,16 @@ import {
101
104
  } from "./chunk-BJIRLHJR.js";
102
105
  import {
103
106
  getRuntimeServerContext
104
- } from "./chunk-HHBXCRJS.js";
107
+ } from "./chunk-XOJRZUPF.js";
105
108
  import {
106
109
  isAbortError
107
- } from "./chunk-L3JWI7WX.js";
108
- import {
109
- isRecord
110
- } from "./chunk-KUG52IAP.js";
110
+ } from "./chunk-QOKAKDPE.js";
111
111
  import {
112
112
  asTrimmedString
113
113
  } from "./chunk-3EUW3WEO.js";
114
+ import {
115
+ isRecord
116
+ } from "./chunk-KUG52IAP.js";
114
117
  import {
115
118
  API_ENDPOINTS
116
119
  } from "./chunk-LCBAMY2M.js";
@@ -473,8 +476,8 @@ function resolveAgentCallPlan(agentConfig, _env) {
473
476
  model: agentConfig.model,
474
477
  endpointKey: agentConfig.endpointKey
475
478
  });
476
- const upstreamWire = useResponses ? "responses" : "chat.completions";
477
- const endpoint = useResponses ? resolvePlatformResponsesEndpoint(provider) ?? "" : resolvePlatformChatCompletionsEndpoint(provider, agentConfig.model) ?? "";
479
+ const upstreamWire = provider === "nolo" && agentConfig.model === "deepseek-v4-pro" ? "chat.completions" : useResponses ? "responses" : "chat.completions";
480
+ const endpoint = upstreamWire === "responses" ? resolvePlatformResponsesEndpoint(provider) ?? "" : resolvePlatformChatCompletionsEndpoint(provider, agentConfig.model) ?? "";
478
481
  return {
479
482
  authMethod: { kind: "platform-key" },
480
483
  transport,
@@ -559,22 +562,6 @@ var createContextSection = (title, description, content) => content ? `### ${tit
559
562
  ${description}
560
563
 
561
564
  ${content} ` : "";
562
- var buildResponseGuidelines = (isMobile) => {
563
- if (isMobile) {
564
- return `--- \u54CD\u5E94\u5C55\u793A\u6307\u5357\uFF08\u7A84\u5C4F / TUI / \u79FB\u52A8\u7AEF\uFF09 ---
565
- \u5F53\u524D\u5904\u4E8E\u7A84\u5C4F\u6216\u7EC8\u7AEF\u89C6\u56FE\uFF0C\u8BF7\u91C7\u7528\u7D27\u51D1\u3001\u9AD8\u626B\u63CF\u7387\u7684\u6392\u7248\uFF1A
566
- - **\u7ED3\u6784\u4E0E\u7559\u767D**\uFF1A\u7ED3\u8BBA\u6216\u5173\u952E\u72B6\u6001\u7F6E\u9876\uFF0C\u76F4\u5954\u4E3B\u9898\uFF1B\u77ED\u6BB5\u843D\uFF082-4 \u53E5\uFF09\u5E76\u4FDD\u6301\u7A7A\u884C\u547C\u5438\uFF0C\u62D2\u7EDD\u957F\u6BB5\u6587\u5B57\u5899\u3002
567
- - **\u5217\u8868\u4E0E\u7F29\u8FDB**\uFF1A\u5217\u8868\u9879\u7528\u300C- **\u6838\u5FC3\u8BCD**\uFF1A\u8BF4\u660E\u300D\uFF1B\u5D4C\u5957\u6700\u591A 2 \u5C42\uFF0C\u5B50\u5217\u8868\u7F29\u8FDB 2 \u7A7A\u683C\uFF0C\u9632\u6B62\u7EC8\u7AEF\u4E0E\u79FB\u52A8\u7AEF\u6298\u884C\u9519\u4F4D\uFF1B\u5E76\u5217\u7528\u65E0\u5E8F\u5217\u8868\uFF0C\u6B65\u9AA4\u7528\u6709\u5E8F\u5217\u8868\u3002
568
- - **\u8868\u683C\u964D\u7EA7**\uFF1A\u4E25\u7981\u4F7F\u7528 \u22654 \u5217\u7684\u5927\u5BBD\u8868\uFF08\u7A84\u5C4F/\u7EC8\u7AEF\u4E0B\u6298\u884C\u4E25\u91CD\u9519\u4F4D\uFF09\uFF0C\u6539\u7528\u300C\u952E\u503C\u6E05\u5355\u300D\u6216\u7EB5\u5411\u5361\u7247\u3002
569
- - **\u7B26\u53F7\u4E0E\u4EE3\u7801**\uFF1A\u514B\u5236\u4F7F\u7528\u300C---\u300D\u5206\u5272\u7EBF\uFF08\u4EC5\u5927\u4E3B\u9898\u5207\u6362\u6216\u7ED3\u8BBA\u524D\uFF0C\u524D\u540E\u7559\u7A7A\u884C\uFF09\uFF1B\u8DEF\u5F84\u3001\u547D\u4EE4\u4E0E\u53C2\u6570\u4E00\u5F8B\u7528\u53CD\u5F15\u53F7 \` \` \u5305\u88F9\uFF1B\u4EE3\u7801\u5757\u6807\u660E\u8BED\u8A00\u4E14\u907F\u514D\u6A2A\u5411\u8D85\u957F\u884C\uFF1B\u514B\u5236 Emoji\u3002`;
570
- }
571
- return `--- \u54CD\u5E94\u5C55\u793A\u6307\u5357\uFF08\u5BBD\u5C4F / \u684C\u9762\u7AEF\uFF09 ---
572
- \u5F53\u524D\u5904\u4E8E\u5927\u5C4F\u89C6\u56FE\uFF0C\u53EF\u5145\u5206\u53D1\u6325\u7A7A\u95F4\u4F18\u52BF\uFF1A
573
- - **\u7ED3\u6784\u4E0E\u7559\u767D**\uFF1A\u63D0\u4F9B\u5C42\u6B21\u6E05\u6670\u7684\u5168\u666F\u7ED3\u6784\uFF0C\u91CD\u8981\u6A21\u5757\u7528\u4E8C\u7EA7/\u4E09\u7EA7\u6807\u9898\u5212\u5206\uFF1B\u6BB5\u843D\u4FDD\u6301 2-4 \u53E5\u5E76\u7559\u7A7A\u884C\u547C\u5438\uFF0C\u76F4\u5954\u4E3B\u9898\u3002
574
- - **\u5217\u8868\u4E0E\u7F29\u8FDB**\uFF1A\u5217\u8868\u9879\u7528\u300C- **\u6838\u5FC3\u8BCD**\uFF1A\u8BF4\u660E\u300D\uFF1B\u5D4C\u5957\u6700\u591A 2 \u5C42\uFF0C\u5B50\u5217\u8868\u7F29\u8FDB 2 \u7A7A\u683C\uFF1B\u5E76\u5217\u7528\u65E0\u5E8F\u5217\u8868\uFF0C\u6B65\u9AA4\u7528\u6709\u5E8F\u5217\u8868\u3002
575
- - **\u8868\u683C\u4E0E\u5BF9\u6BD4**\uFF1A\u5BBD\u5C4F\u4E0B\u53EF\u9002\u5EA6\u4F7F\u7528 Markdown \u591A\u5217\u8868\u683C\u8FDB\u884C\u65B9\u6848\u6A2A\u5411\u5BF9\u6BD4\u3001\u53C2\u6570\u6C47\u603B\u6216\u77E9\u9635\u5206\u6790\u3002
576
- - **\u7B26\u53F7\u4E0E\u4EE3\u7801**\uFF1A\u53EF\u5C55\u793A\u66F4\u5B8C\u6574\u7684\u4EE3\u7801\u4E0A\u4E0B\u6587\u4E0E\u591A\u6B65\u6267\u884C\u793A\u4F8B\uFF1B\u8DEF\u5F84\u3001\u547D\u4EE4\u4E0E\u53C2\u6570\u7528\u53CD\u5F15\u53F7 \` \` \u5305\u88F9\uFF0C\u4EE3\u7801\u5757\u6807\u660E\u8BED\u8A00\uFF1B\u514B\u5236\u4F7F\u7528\u5206\u5272\u7EBF\u4E0E Emoji\u3002`;
577
- };
578
565
  var buildReferenceMaterialsBlock = (contexts) => {
579
566
  const sections = [
580
567
  createContextSection(
@@ -675,13 +662,14 @@ var buildSystemPromptContext = (options) => {
675
662
  const corePersonaSection = mainPrompt ? `-- - \u6838\u5FC3\u89D2\u8272\u4E0E\u4EFB\u52A1-- -
676
663
  ${mainPrompt}` : "";
677
664
  const agentTools = canonicalizeToolNames(agentConfig.tools ?? []);
665
+ const hasAskTool = agentTools.includes("ask_user");
678
666
  const toolSections = resolveToolGuidedSections(agentTools);
679
667
  const {
680
668
  startupProtocol,
681
669
  contextLayerContract,
682
670
  emailRegistrationWorkflow
683
671
  } = buildRuntimeGuidanceBlocks(agentTools);
684
- const clarifyingSection = !mainPrompt ? CLARIFICATION_MODE_INSTRUCTIONS : "";
672
+ const clarifyingSection = !mainPrompt || hasAskTool ? CLARIFICATION_MODE_INSTRUCTIONS : "";
685
673
  const userGlobalPromptSection = contexts.userGlobalPrompt?.trim() ? `-- - \u7528\u6237\u5168\u5C40\u504F\u597D-- -
686
674
  ${contexts.userGlobalPrompt.trim()} ` : "";
687
675
  const effectiveViewport = viewport ?? contexts.viewport;
@@ -712,8 +700,7 @@ ${wrapHistoricalSummaryWithReplayGuard(contexts.dialogSummary)}` : "";
712
700
  { id: "clarification-mode", owner: "platform", cacheScope: "session", content: clarifyingSection },
713
701
  { id: "knowledge-management", owner: "platform", cacheScope: "session", content: toolSections.knowledgeManagement },
714
702
  { id: "memory-capture", owner: "platform", cacheScope: "session", content: toolSections.memoryCapture },
715
- { id: "self-update", owner: "platform", cacheScope: "session", content: toolSections.selfUpdate },
716
- { id: "generic-agent-update", owner: "platform", cacheScope: "session", content: toolSections.genericAgentUpdate },
703
+ { id: "agent-config-maintenance", owner: "platform", cacheScope: "session", content: toolSections.agentConfigMaintenance },
717
704
  { id: "context-layer-contract", owner: "platform", cacheScope: "static", content: contextLayerContract },
718
705
  {
719
706
  id: "email-registration-workflow",
@@ -808,6 +795,7 @@ var buildRequestBody = (options) => {
808
795
  model,
809
796
  messages,
810
797
  providerName,
798
+ customProviderUrl,
811
799
  temperature,
812
800
  top_p,
813
801
  frequency_penalty,
@@ -824,7 +812,8 @@ var buildRequestBody = (options) => {
824
812
  stream: true
825
813
  };
826
814
  const usageRequestOptions = getUsageRequestOptions(providerName, {
827
- api: "chat-completions"
815
+ api: "chat-completions",
816
+ endpoint: customProviderUrl
828
817
  });
829
818
  Object.assign(bodyData, usageRequestOptions);
830
819
  if (reasoning_effort && isModelSupportReasoningEffort(model)) {
@@ -880,6 +869,7 @@ var generateOpenAIRequestBody = (agentConfig, providerName, messages, contexts,
880
869
  model: resolvedModel,
881
870
  messages: messagesWithPrompt,
882
871
  providerName,
872
+ customProviderUrl: agentConfig.customProviderUrl,
883
873
  temperature: agentConfig.temperature,
884
874
  top_p: agentConfig.top_p,
885
875
  frequency_penalty: agentConfig.frequency_penalty,
@@ -45,6 +45,7 @@ var PLATFORM_HOSTED_OPENAI_IMAGE_MODEL = "gpt-image-2";
45
45
  var PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL = "deepseek-v4-flash";
46
46
  var PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL = "deepseek-v4-flash-vision-exp";
47
47
  var PLATFORM_HOSTED_DEEPSEEK_PRO_MODEL = "deepseek-v4-pro";
48
+ var PLATFORM_HOSTED_NEMOTRON_35_LIGHTNING_MODEL = "nemotron-3-5-lightning-30b";
48
49
  var PLATFORM_HOSTED_KIMI_K3_MIN_CLIENT_VERSION = "0.38.0-alpha.4";
49
50
  var PLATFORM_HOSTED_GLM_53_FLASH_MIN_CLIENT_VERSION = "0.33.0-alpha.1";
50
51
  var PLATFORM_HOSTED_ROUTING_TABLE = {
@@ -127,27 +128,32 @@ var PLATFORM_HOSTED_ROUTING_TABLE = {
127
128
  wire: "chat.completions",
128
129
  agentRunHosted: true
129
130
  },
130
- // Claude models -> DeepInfra(server agentRun 侧未分流,保持 no upstream route 报错)
131
+ // Claude 系已下架(2026-09-01):旧模型名保留路由做兼容,一律重映射到
132
+ // RunInfra 的 glm-5-3-flash(同 kimi-k2.6 → qwen 先例)。存量 agent 记录由
133
+ // modelUpgradeTable 迁移,这里兜住迁移窗口期与漏网请求。
131
134
  [PLATFORM_HOSTED_CLAUDE_SONNET_5_MODEL]: {
132
- endpoint: "https://api.deepinfra.com/v1/openai/chat/completions",
133
- usageProvider: "deepinfra",
134
- keyName: "deepinfra",
135
+ endpoint: "https://api.runinfra.ai/v1/chat/completions",
136
+ usageProvider: "runinfra",
137
+ keyName: "runinfra",
135
138
  wire: "chat.completions",
136
- agentRunHosted: false
139
+ agentRunHosted: true,
140
+ upstreamModelId: PLATFORM_HOSTED_GLM_53_FLASH_MODEL
137
141
  },
138
142
  [PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL]: {
139
- endpoint: "https://api.deepinfra.com/v1/openai/chat/completions",
140
- usageProvider: "deepinfra",
141
- keyName: "deepinfra",
143
+ endpoint: "https://api.runinfra.ai/v1/chat/completions",
144
+ usageProvider: "runinfra",
145
+ keyName: "runinfra",
142
146
  wire: "chat.completions",
143
- agentRunHosted: false
147
+ agentRunHosted: true,
148
+ upstreamModelId: PLATFORM_HOSTED_GLM_53_FLASH_MODEL
144
149
  },
145
150
  [PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL]: {
146
- endpoint: "https://api.deepinfra.com/v1/openai/chat/completions",
147
- usageProvider: "deepinfra",
148
- keyName: "deepinfra",
151
+ endpoint: "https://api.runinfra.ai/v1/chat/completions",
152
+ usageProvider: "runinfra",
153
+ keyName: "runinfra",
149
154
  wire: "chat.completions",
150
- agentRunHosted: false
155
+ agentRunHosted: true,
156
+ upstreamModelId: PLATFORM_HOSTED_GLM_53_FLASH_MODEL
151
157
  },
152
158
  // Grok -> xAI(server agentRun 侧未分流,保持 no upstream route 报错)
153
159
  [PLATFORM_HOSTED_GROK_4_6_MODEL]: {
@@ -165,6 +171,15 @@ var PLATFORM_HOSTED_ROUTING_TABLE = {
165
171
  wire: "responses",
166
172
  agentRunHosted: true
167
173
  },
174
+ // Nemotron 标题 LLM 内部专用,走 chatProxy;agentRun 不分流。
175
+ [PLATFORM_HOSTED_NEMOTRON_35_LIGHTNING_MODEL]: {
176
+ endpoint: "https://api.runinfra.ai/v1/chat/completions",
177
+ usageProvider: "runinfra",
178
+ keyName: "runinfra",
179
+ upstreamModelId: "nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-BF16",
180
+ wire: "chat.completions",
181
+ agentRunHosted: false
182
+ },
168
183
  // DeepSeek Flash / Vision -> DeepSeek Responses API(agentRun 走专用 responses 编排)
169
184
  [PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL]: {
170
185
  endpoint: "https://api.deepseek.com/responses",
@@ -319,63 +334,15 @@ function buildClientVersionGateErrorDetail(decision) {
319
334
  };
320
335
  }
321
336
 
322
- // packages/ai/llm/deepinfra.ts
323
- var DEEPINFRA_CLAUDE_HAIKU_PRICE = {
324
- input: 1 * 9,
325
- output: 5 * 9
326
- };
327
- var DEEPINFRA_CLAUDE_SONNET_PRICE = {
328
- input: 3 * 9,
329
- output: 15 * 9
330
- };
331
- var DEEPINFRA_CLAUDE_OPUS_PRICE = {
332
- input: 5 * 9,
333
- output: 25 * 9
334
- };
335
- var DEEPINFRA_CLAUDE_FABLE_PRICE = {
336
- input: 10 * 9,
337
- output: 50 * 9
338
- };
339
- var deepinfraModels = [
340
- {
341
- name: "anthropic/claude-haiku-4-5",
342
- displayName: "Anthropic: Claude Haiku 4.5",
343
- hasVision: true,
344
- price: { ...DEEPINFRA_CLAUDE_HAIKU_PRICE },
345
- contextWindow: 195e3,
346
- maxOutputTokens: 4092,
347
- supportsTool: false
348
- },
349
- {
350
- name: "anthropic/claude-sonnet-5",
351
- displayName: "Anthropic: Claude Sonnet 5",
352
- hasVision: true,
353
- price: { ...DEEPINFRA_CLAUDE_SONNET_PRICE },
354
- contextWindow: 976e3,
355
- maxOutputTokens: 4092,
356
- supportsTool: false
357
- },
358
- {
359
- name: "anthropic/claude-opus-5",
360
- displayName: "Anthropic: Claude Opus 5",
361
- hasVision: true,
362
- price: { ...DEEPINFRA_CLAUDE_OPUS_PRICE },
363
- contextWindow: 976e3,
364
- maxOutputTokens: 4092,
365
- supportsTool: false
366
- },
367
- {
368
- name: "anthropic/claude-fable-5",
369
- displayName: "Anthropic: Claude Fable 5",
370
- hasVision: true,
371
- price: { ...DEEPINFRA_CLAUDE_FABLE_PRICE },
372
- contextWindow: 976e3,
373
- maxOutputTokens: 4092,
374
- supportsTool: false
375
- }
376
- ];
377
-
378
337
  // packages/ai/llm/platformHosted.ts
338
+ var PLATFORM_HOSTED_CLAUDE_MODELS = [
339
+ PLATFORM_HOSTED_CLAUDE_SONNET_5_MODEL,
340
+ PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL,
341
+ PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL
342
+ ];
343
+ var isPlatformHostedClaudeModel = (model) => PLATFORM_HOSTED_CLAUDE_MODELS.some(
344
+ (m) => asTrimmedLowercaseString(model) === m
345
+ );
379
346
  var PLATFORM_CREDITS_PER_USD = 8;
380
347
  var toPlatformCredits = (usdPerMillion) => Number((usdPerMillion * PLATFORM_CREDITS_PER_USD).toFixed(6));
381
348
  var CNY_UPSTREAM_MULTIPLIER = 1.2;
@@ -492,6 +459,11 @@ var PLATFORM_HOSTED_DEEPSEEK_FLASH_OFF_PEAK_PRICE = {
492
459
  output: toCnyCredits(4.5)
493
460
  // ¥4.5
494
461
  };
462
+ var PLATFORM_HOSTED_NEMOTRON_35_LIGHTNING_PRICE = {
463
+ input: toPlatformCredits(0.05),
464
+ inputCacheHit: toPlatformCredits(0.01),
465
+ output: toPlatformCredits(0.15)
466
+ };
495
467
  var PLATFORM_HOSTED_DEEPSEEK_PRO_PRICE = {
496
468
  input: 3.36,
497
469
  // 4.8 credits
@@ -515,6 +487,16 @@ var getPlatformHostedDeepSeekV4Price = (_model, nowMs = Date.now()) => {
515
487
  var isPlatformHostedDeepSeekV4Model = (model) => model === PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL || model === PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL;
516
488
  var isPlatformHostedDeepseekModel = (model) => model === PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL || model === PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL;
517
489
  var platformHostedModels = [
490
+ {
491
+ name: PLATFORM_HOSTED_NEMOTRON_35_LIGHTNING_MODEL,
492
+ displayName: "Nemotron 3.5 Lightning 30B",
493
+ hasVision: false,
494
+ price: { ...PLATFORM_HOSTED_NEMOTRON_35_LIGHTNING_PRICE },
495
+ maxOutputTokens: 32768,
496
+ contextWindow: 262144,
497
+ supportsTool: true,
498
+ supportsReasoningEffort: true
499
+ },
518
500
  {
519
501
  name: PLATFORM_HOSTED_KIMI_K3_MODEL,
520
502
  displayName: "Kimi K3",
@@ -603,33 +585,9 @@ var platformHostedModels = [
603
585
  supportsReasoningEffort: false,
604
586
  minClientVersion: PLATFORM_HOSTED_GLM_53_FLASH_MIN_CLIENT_VERSION
605
587
  },
606
- {
607
- name: PLATFORM_HOSTED_CLAUDE_SONNET_5_MODEL,
608
- displayName: "Claude Sonnet 5",
609
- hasVision: true,
610
- price: { ...DEEPINFRA_CLAUDE_SONNET_PRICE },
611
- maxOutputTokens: 4092,
612
- contextWindow: 976e3,
613
- supportsTool: false
614
- },
615
- {
616
- name: PLATFORM_HOSTED_CLAUDE_OPUS_5_MODEL,
617
- displayName: "Claude Opus 5",
618
- hasVision: true,
619
- price: { ...DEEPINFRA_CLAUDE_OPUS_PRICE },
620
- maxOutputTokens: 4092,
621
- contextWindow: 976e3,
622
- supportsTool: false
623
- },
624
- {
625
- name: PLATFORM_HOSTED_CLAUDE_FABLE_5_MODEL,
626
- displayName: "Claude Fable 5",
627
- hasVision: true,
628
- price: { ...DEEPINFRA_CLAUDE_FABLE_PRICE },
629
- maxOutputTokens: 4092,
630
- contextWindow: 976e3,
631
- supportsTool: false
632
- },
588
+ // Claude 系已下架(2026-09-01),不再出现在 nolo 托管模型列表;旧模型名请求由
589
+ // platformHostedRoutingTable 重映射到 glm-5-3-flash 做兼容。deepinfra 直连通道
590
+ // (用户自有 key)不受影响,见 ./deepinfra.ts。
633
591
  {
634
592
  name: PLATFORM_HOSTED_GROK_4_6_MODEL,
635
593
  displayName: "Grok 4.6",
@@ -791,13 +749,13 @@ var zaiModels = [];
791
749
 
792
750
  export {
793
751
  openrouterModels,
794
- deepinfraModels,
795
752
  PLATFORM_HOSTED_KIMI_K3_MODEL,
796
753
  PLATFORM_HOSTED_KIMI_PROVIDER,
797
754
  isNoloHostedProvider,
798
755
  isFireworksKimiModel,
799
756
  isDeepInfraKimiModel,
800
757
  resolveFireworksKimiModel,
758
+ PLATFORM_HOSTED_GLM_53_FLASH_MODEL,
801
759
  PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL,
802
760
  PLATFORM_HOSTED_DEEPSEEK_FLASH_VISION_EXP_MODEL,
803
761
  resolvePlatformHostedRouting,
@@ -806,6 +764,7 @@ export {
806
764
  buildClientVersionUpgradeMessage,
807
765
  evaluatePlatformHostedClientVersionGate,
808
766
  buildClientVersionGateErrorDetail,
767
+ isPlatformHostedClaudeModel,
809
768
  toCnyCredits,
810
769
  isPlatformHostedOpenAIImageModel,
811
770
  isPlatformHostedImageModel,
@@ -3,13 +3,13 @@ import {
3
3
  } from "./chunk-DWLEOOGR.js";
4
4
  import {
5
5
  addContentAction
6
- } from "./chunk-4RXXP6WD.js";
6
+ } from "./chunk-J7KDNHUO.js";
7
7
  import {
8
8
  upload
9
- } from "./chunk-76UA7376.js";
9
+ } from "./chunk-273FJUYI.js";
10
10
  import {
11
11
  getRuntimeServerContext
12
- } from "./chunk-HHBXCRJS.js";
12
+ } from "./chunk-XOJRZUPF.js";
13
13
  import {
14
14
  API_ENDPOINTS
15
15
  } from "./chunk-LCBAMY2M.js";
@@ -3,7 +3,7 @@ import {
3
3
  resolveRunReportJsonPath,
4
4
  resolveRunReportPath,
5
5
  resolveRunsDir
6
- } from "./chunk-WHVQA7PJ.js";
6
+ } from "./chunk-SCBBGS2N.js";
7
7
 
8
8
  // packages/cli/agentRunReport.ts
9
9
  import { homedir as nodeHomedir } from "node:os";