nolo-cli 0.79.0-alpha.1 → 0.79.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 (152) hide show
  1. package/README.md +2 -2
  2. package/{_executeModel-T3FPYFVF.js → _executeModel-U5V7LOJX.js} +46 -46
  3. package/{action-D22U6CTH.js → action-EXQVY3UO.js} +11 -11
  4. package/{addContentAction-XAPUTGL4.js → addContentAction-6IXQSRD2.js} +9 -9
  5. package/{addDialogAgentAction-M7VLLBZM.js → addDialogAgentAction-FZOB4BYM.js} +8 -8
  6. package/{agentDeleteCommand-2TYFURBN.js → agentDeleteCommand-4MIJFQQB.js} +30 -28
  7. package/{agentEmailCommands-7P35ZMUA.js → agentEmailCommands-JUXT36BY.js} +62 -60
  8. package/{agentGrantCommands-R3VQEZJR.js → agentGrantCommands-YW6PQAQ2.js} +2 -2
  9. package/{agentListCommands-IFUOWXP3.js → agentListCommands-MUVKMMZ5.js} +38 -30
  10. package/{agentMachineCommands-G46ZZ2ZQ.js → agentMachineCommands-56FTZLYV.js} +30 -28
  11. package/{agentProviderCommands-65ZC2WB4.js → agentProviderCommands-TOMVKJOV.js} +87 -0
  12. package/{agentPullCommand-N7L2CT7L.js → agentPullCommand-GLOOXJ2E.js} +3 -3
  13. package/{agentRecordCommands-R74LTQEQ.js → agentRecordCommands-FST3KAKG.js} +59 -57
  14. package/{agentRunCommand-IRSZYCEU.js → agentRunCommand-UMUEVIY2.js} +60 -58
  15. package/{agentRunControl-T44MESII.js → agentRunControl-XLGD3UZ5.js} +1 -1
  16. package/{agentRuntimeLocal-PUZINLWJ.js → agentRuntimeLocal-NH6GSGAJ.js} +28 -26
  17. package/{agentSlice-EACXUOWW.js → agentSlice-YZK6KG73.js} +10 -10
  18. package/{appDeleteCommands-U4NTEJYQ.js → appDeleteCommands-U45KXYX7.js} +30 -28
  19. package/{appDeployCommands-FXF45Q7F.js → appDeployCommands-LWQIQCFX.js} +30 -28
  20. package/{appDeployStatusCommands-KONVRM53.js → appDeployStatusCommands-LZO33PGD.js} +30 -28
  21. package/{appGetCommands-3VOGIZ7T.js → appGetCommands-OJSO6BCF.js} +30 -28
  22. package/{appListCommands-A6ROBW7P.js → appListCommands-NE56V7DI.js} +30 -28
  23. package/{authCommand-EVGFLAHO.js → authCommand-U5LA6H4Y.js} +164 -24
  24. package/{authCommands-ILTBI6JV.js → authCommands-RGOGCPP6.js} +4 -5
  25. package/builtinSkillRegistry-4NB7PCOF.js +33 -0
  26. package/{chatQueueReduxAdapter-XEIJO5WR.js → chatQueueReduxAdapter-FRMSYX7N.js} +24 -24
  27. package/{chunk-C3FZR5EC.js → chunk-2F7RJC6L.js} +1 -1
  28. package/{chunk-U6LKJRJB.js → chunk-377KM42Z.js} +42 -26
  29. package/{chunk-HQUORJTM.js → chunk-3BMYXEUW.js} +1 -1
  30. package/{chunk-AFIWC5NH.js → chunk-3XMOAYRC.js} +1 -1
  31. package/{chunk-UJ63UXGE.js → chunk-4CAPEGHN.js} +1077 -752
  32. package/{chunk-DWPNOYMB.js → chunk-4JBZUECA.js} +1 -1
  33. package/{chunk-NG4UT4K4.js → chunk-4QKBQHPQ.js} +1 -1
  34. package/{chunk-UZ6XXCVR.js → chunk-546FPOW3.js} +15 -2
  35. package/{chunk-5XTOKQLW.js → chunk-5UTFL4QJ.js} +6 -2
  36. package/chunk-5ZUL4CUO.js +10 -0
  37. package/{chunk-E6RGHPDR.js → chunk-6D6VBVEW.js} +4 -6
  38. package/{chunk-G3NT6BM3.js → chunk-7IBK6MYW.js} +142 -59
  39. package/{chunk-BYEJ7K2Z.js → chunk-7S4YWN7P.js} +1 -1
  40. package/{chunk-SREASRV5.js → chunk-ABQYVJBJ.js} +1 -1
  41. package/{chunk-H7UKKEIS.js → chunk-AQDH76OK.js} +1 -1
  42. package/{chunk-L2Y24GRM.js → chunk-B4S7MR5S.js} +16 -12
  43. package/{chunk-E36HZARC.js → chunk-BF2K6MRF.js} +3 -3
  44. package/{chunk-MGU5ADIQ.js → chunk-BKP7CFUD.js} +10 -10
  45. package/{chunk-2KDR4CWE.js → chunk-BYMV6QZG.js} +24 -1
  46. package/{chunk-AFIKMMGC.js → chunk-COM7GG76.js} +1 -1
  47. package/{chunk-HH65VA5U.js → chunk-CPH3W5A7.js} +15 -3
  48. package/{chunk-XWNRAIUL.js → chunk-DM4UNXPK.js} +6 -16
  49. package/{chunk-ZLPA7K55.js → chunk-DSX6K7C2.js} +29 -10
  50. package/{chunk-QA6YKM3H.js → chunk-E2NP7ZQU.js} +32 -4
  51. package/{chunk-FSFQ3A7S.js → chunk-E3VQ6S3A.js} +10 -10
  52. package/{chunk-YFADVSZE.js → chunk-F3UTRUDO.js} +6 -6
  53. package/{chunk-KIS76A2P.js → chunk-G5X57NDE.js} +38 -4
  54. package/{chunk-BJIRLHJR.js → chunk-GII32WZW.js} +1 -0
  55. package/{chunk-DSRXPQWA.js → chunk-GRDSMV4V.js} +43 -43
  56. package/{chunk-733J6D44.js → chunk-HGRDL36J.js} +6 -6
  57. package/{chunk-OZX2IPKM.js → chunk-HQCSU3DI.js} +1 -1
  58. package/{chunk-3JQ2NRYU.js → chunk-HVURBGF3.js} +4 -4
  59. package/{chunk-QC5LGHYP.js → chunk-HWZAXNO7.js} +10 -5
  60. package/{chunk-Q6FF2MCK.js → chunk-IIKPWSPX.js} +1 -1
  61. package/{chunk-KC5FAHVS.js → chunk-JEDZAO7L.js} +1 -1
  62. package/{chunk-6XIE5ZGI.js → chunk-JPGCXHNM.js} +1 -1
  63. package/{chunk-AJHEFRGJ.js → chunk-JTYPAMGP.js} +155 -1
  64. package/{chunk-UDQWGU7F.js → chunk-KR3YI36B.js} +1 -1
  65. package/{chunk-RXX4GDIH.js → chunk-LS2ZANRJ.js} +1 -1
  66. package/{chunk-SZLVDREM.js → chunk-LSSBA2TN.js} +3 -3
  67. package/{chunk-CMH2SYHX.js → chunk-MBEEYLGL.js} +2 -2
  68. package/{chunk-EVBFYPDC.js → chunk-MC4XLIJ7.js} +6 -2
  69. package/{chunk-PGSKWZCB.js → chunk-NKIH4Q7W.js} +1 -1
  70. package/{chunk-FPTQQSS6.js → chunk-OH7H6LPC.js} +26 -5
  71. package/{chunk-5J7W2VWW.js → chunk-OOLWKQSM.js} +6 -265
  72. package/{chunk-AETZ7AD6.js → chunk-Q554LLSI.js} +1 -1
  73. package/chunk-Q5FJJ6XI.js +103 -0
  74. package/{chunk-JYYZCK2Z.js → chunk-QFMFJZLO.js} +1 -1
  75. package/{chunk-P7FA2HMM.js → chunk-QMASIHYZ.js} +13 -15
  76. package/{chunk-ZY4K4CZR.js → chunk-R2YY6MWV.js} +909 -304
  77. package/chunk-RLEWGSM5.js +677 -0
  78. package/{chunk-PYXL2CJL.js → chunk-RZYQMSQA.js} +1 -1
  79. package/{chunk-XEEHSS64.js → chunk-S3UI4IUJ.js} +1200 -52
  80. package/{chunk-SPAQ4PVV.js → chunk-SAFZABH7.js} +1 -1
  81. package/{chunk-QRBAZ5PW.js → chunk-SASGLNUD.js} +3 -3
  82. package/{chunk-D74EWXL4.js → chunk-SUERPXJZ.js} +390 -47
  83. package/{chunk-3QPYFHAH.js → chunk-TMAZ3VHN.js} +1 -1
  84. package/{chunk-BJCWNHVU.js → chunk-U47DH2WO.js} +2 -2
  85. package/{chunk-MEVSATIF.js → chunk-UBNV6CS6.js} +66 -792
  86. package/{chunk-EXMHJN7C.js → chunk-UDEFS2PV.js} +4 -3
  87. package/{chunk-NHRQCXIQ.js → chunk-VMFTFOWF.js} +13 -3
  88. package/{chunk-4EJ5QYB5.js → chunk-VOOTT7HA.js} +1 -1
  89. package/{chunk-PZM3EENV.js → chunk-W2E6HIIK.js} +1 -1
  90. package/chunk-WKEUHK57.js +1625 -0
  91. package/{chunk-GBPZKFYK.js → chunk-WON762L4.js} +4 -4
  92. package/{chunk-X7Z7U4Z6.js → chunk-WP6BC7OF.js} +15 -15
  93. package/{chunk-QUH3XHL5.js → chunk-X2ZTVRXP.js} +7 -7
  94. package/{chunk-MYU3MJCF.js → chunk-XAQAF25W.js} +175 -7
  95. package/chunk-XGJAR4T5.js +283 -0
  96. package/{chunk-ZZCJUXUI.js → chunk-XLGHBHGP.js} +2 -2
  97. package/{chunk-V3ZKNK5D.js → chunk-YOXYA2GU.js} +10 -10
  98. package/{chunk-ALGK6TIE.js → chunk-YPYMGGPJ.js} +3 -3
  99. package/{chunk-K7AG465Q.js → chunk-ZHUTWJ3N.js} +4 -2
  100. package/{chunk-CDVGNZDA.js → chunk-ZKMYGRO7.js} +11 -173
  101. package/{contentThunks-3SPROFG5.js → contentThunks-TC3AENBY.js} +25 -25
  102. package/{createAgentAutomationAction-EIP2EG3O.js → createAgentAutomationAction-67EOD3WK.js} +25 -25
  103. package/{createDialogAction-RLUSTN4D.js → createDialogAction-4OCQC5MW.js} +28 -28
  104. package/{createPageAction-4Y52G7WG.js → createPageAction-JLGVP57B.js} +26 -26
  105. package/{dbSlice-GKGGFNOB.js → dbSlice-RDGCE5MU.js} +8 -8
  106. package/{deleteFile-LWSR674W.js → deleteFile-YG6QMJLU.js} +3 -3
  107. package/{dialogCommands-G223U5WU.js → dialogCommands-JHSDKCR5.js} +32 -30
  108. package/{dialogSlice-THY45JWM.js → dialogSlice-I2DK32ZT.js} +24 -24
  109. package/{docCreateCommands-2P47IJDK.js → docCreateCommands-QUL6VWK2.js} +31 -29
  110. package/{docDeleteCommands-N3EGDOIC.js → docDeleteCommands-DMQ2MU6I.js} +32 -30
  111. package/{docReadCommands-6BFV2HI7.js → docReadCommands-FVHENBU6.js} +31 -29
  112. package/{docStore-ZQ3ECOPY.js → docStore-OLC6MD7B.js} +9 -9
  113. package/{docUpdateCommands-ZTMPXHC5.js → docUpdateCommands-VA6V5C6L.js} +31 -29
  114. package/{fetchMessages-DRABNDPZ.js → fetchMessages-EIU7UFFK.js} +3 -4
  115. package/{getPricing-HRMSOF3E.js → getPricing-YYXTEPBP.js} +4 -4
  116. package/{handleSendMessageAction-CE4M5XIE.js → handleSendMessageAction-GRDIRXAK.js} +24 -24
  117. package/index.js +88 -80
  118. package/{localDialogRead-PUQKFI73.js → localDialogRead-BTFJ4V2I.js} +2 -2
  119. package/{localRuntimeDb-P37ZTX55.js → localRuntimeDb-SYQGUF4U.js} +1 -1
  120. package/{machineCommands-4OT7KVCD.js → machineCommands-IJJ66MYU.js} +59 -57
  121. package/{machineWsRunDispatch-TR3EYESP.js → machineWsRunDispatch-PP2ZBS6D.js} +57 -55
  122. package/{memberThunks-KATHH3F4.js → memberThunks-WQGQWYYT.js} +9 -9
  123. package/{models-GS72DVJS.js → models-UN7YGMPM.js} +2 -2
  124. package/{offlineMarxistsAgentCommand-GEH6SNNA.js → offlineMarxistsAgentCommand-JEWCIAWM.js} +1 -1
  125. package/package.json +1 -1
  126. package/providerPresetApply-NO73BG45.js +214 -0
  127. package/providerRegistry-OVY4VKNN.js +31 -0
  128. package/{read-LC6HVYBN.js → read-S4WC2OUK.js} +5 -4
  129. package/{readDocTool-N3ERJHHF.js → readDocTool-PQNM63KV.js} +1 -1
  130. package/{readlineWorkspace-GSL5CYNJ.js → readlineWorkspace-ASJECDJD.js} +196 -111
  131. package/{removeDialogAgentAction-F5GPTALR.js → removeDialogAgentAction-YJZ6XJV6.js} +11 -11
  132. package/{runAgentClientLoop-NE5EHXSS.js → runAgentClientLoop-KIOQSDRC.js} +45 -45
  133. package/{runtimeDoctorCommands-CROTMULY.js → runtimeDoctorCommands-X6WDBEQX.js} +2 -2
  134. package/{setDialogExtraReferencesAction-AY4ZCF3A.js → setDialogExtraReferencesAction-E6A3WL4E.js} +9 -9
  135. package/{setPrimaryDialogAgentAction-HPMG7V3R.js → setPrimaryDialogAgentAction-WBLIVICQ.js} +11 -11
  136. package/{settingSlice-OEJA4NQO.js → settingSlice-JR6S7TRD.js} +10 -10
  137. package/{spaceCommands-MRP5U3C3.js → spaceCommands-WDUNCAK5.js} +29 -27
  138. package/{streamAgentChatTurn-A6L6O22P.js → streamAgentChatTurn-EGQDPMAO.js} +57 -56
  139. package/{switchDialogAgentAction-HMDZTZ4I.js → switchDialogAgentAction-DTR36ZY2.js} +8 -8
  140. package/{tableCommands-SUNTHAYX.js → tableCommands-O6NWHFKV.js} +1 -1
  141. package/{toolApiClient-VGYUB4P5.js → toolApiClient-7PSIFQPJ.js} +2 -2
  142. package/{tools-JS475NYO.js → tools-AOVE5LKM.js} +41 -39
  143. package/tuiSummaryLlmCaller-XRQCSNYQ.js +127 -0
  144. package/{updateCommands-Y363MC3L.js → updateCommands-2M74UL7P.js} +2 -2
  145. package/{updateDialogTitleAction-GMZUT6RP.js → updateDialogTitleAction-T66TXHIR.js} +45 -28
  146. package/chunk-3IT2PFHL.js +0 -611
  147. package/chunk-I42VC5KR.js +0 -15
  148. package/codingSkills-E6KSDNSJ.js +0 -48
  149. package/tuiSummaryLlmCaller-3Z24VUWM.js +0 -116
  150. package/{chunk-3RAG2NAD.js → chunk-UKWGR5SS.js} +3 -3
  151. package/{db-VQSAOWAO.js → db-WK5MDZVN.js} +1 -1
  152. package/{localRuntimeAuthority-R5UBODT3.js → localRuntimeAuthority-6IR6BBXE.js} +3 -3
@@ -1,6 +1,6 @@
1
1
  import {
2
- publicAgentKey
3
- } from "./chunk-BJIRLHJR.js";
2
+ BUILTIN_PLATFORM_AGENT_KEYS
3
+ } from "./chunk-XGJAR4T5.js";
4
4
  import {
5
5
  getRuntimeServerContext,
6
6
  partitionReadServers,
@@ -10,7 +10,7 @@ import {
10
10
  scheduleExistingRecordReplication,
11
11
  shouldReplaceLocalWithRemoteRecord,
12
12
  shouldReplicateLocalRecord
13
- } from "./chunk-3RAG2NAD.js";
13
+ } from "./chunk-UKWGR5SS.js";
14
14
  import {
15
15
  fetchFromClientDb,
16
16
  fetchFromServer,
@@ -29,273 +29,21 @@ import {
29
29
  normalizeServerOrigin
30
30
  } from "./chunk-CF7PE763.js";
31
31
 
32
- // packages/core/builtinAgentCatalog.ts
33
- var BUILTIN_AGENT_CATALOG = [
34
- // ── 平台内置 6 个(builtinAgents BUILTIN_*)──
35
- {
36
- id: "01NOLOAPPBLD000000019KCKT0",
37
- group: "builtin",
38
- name: "nolo",
39
- provider: "nolo",
40
- model: "deepseek-flash",
41
- runtimeFallback: true
42
- },
43
- {
44
- id: "01APPBUILDER00000001YAII3I",
45
- group: "builtin",
46
- name: "\u5E94\u7528\u6784\u5EFA\u52A9\u624B",
47
- provider: "nolo",
48
- model: "deepseek-flash"
49
- },
50
- {
51
- id: "01ECOMMERCEAG00000001PYQ2J",
52
- group: "builtin",
53
- name: "\u7535\u5546\u5546\u54C1\u53C2\u6570\u52A9\u624B",
54
- provider: "openai",
55
- model: "gpt-5.6-luna"
56
- },
57
- {
58
- id: "01NOLOAGENTCRT000000000001",
59
- group: "builtin",
60
- name: "AI \u521B\u5EFA\u52A9\u624B",
61
- provider: "nolo",
62
- model: "deepseek-flash"
63
- },
64
- {
65
- id: "01NOLOFEEDBACKA000000000R2",
66
- group: "builtin",
67
- name: "\u53CD\u9988\u5165\u53E3",
68
- provider: "nolo",
69
- model: "deepseek-flash"
70
- },
71
- {
72
- id: "01CHROMEOPR000000000001",
73
- group: "builtin",
74
- name: "Chrome \u64CD\u4F5C\u5458",
75
- provider: "nolo",
76
- model: "deepseek-flash"
77
- },
78
- // ── quick-chat 档位 public(图片助手已无 runtimeFallback,见下方图片档段) ──
79
- // 2026-09-10 兜底最小化:runtimeFallback 只保留产品代码显式引用的条目
80
- // (nolo 默认档、PLATFORM_TIER_AGENT_KEYS 的 flash/image-compat、
81
- // SYSTEM_BUILTIN_TRUSTED 的 flash/pro/glm-flash)。广场档与图片助手不再
82
- // 兜底——记录缺失时明确报 Agent not found,而不是合成无 prompt 的裸配置。
83
- {
84
- id: "01DSV4FLASHPB00000000JFPFD",
85
- group: "public",
86
- name: "DeepSeek Flash",
87
- provider: "nolo",
88
- model: "deepseek-flash",
89
- runtimeFallback: true
90
- },
91
- {
92
- id: "01DSV4PRONPB00000001VIR3EK",
93
- group: "public",
94
- name: "DeepSeek V4 Pro",
95
- provider: "nolo",
96
- model: "deepseek-v4-pro",
97
- runtimeFallback: true
98
- },
99
- {
100
- id: "01GLM52DIPB00000000I3E2MY",
101
- group: "public",
102
- name: "GLM 5.3",
103
- provider: "nolo",
104
- model: "glm-5.3"
105
- },
106
- {
107
- id: "01GLMFLASHPB00000000BT20BC",
108
- group: "public",
109
- name: "GLM 5.3 Flash",
110
- provider: "nolo",
111
- model: "glm-5-3-flash",
112
- runtimeFallback: true
113
- },
114
- {
115
- id: "01KIMIK26OLLAMA0000000001",
116
- // 已下架的公共入口:保留 internal catalog entry 仅用于旧 Agent 记录的运行时兼容。
117
- group: "internal",
118
- name: "Kimi K2.6\uFF08\u517C\u5BB9\uFF09",
119
- provider: "nolo",
120
- model: "kimi-k2.6",
121
- runtimeFallback: true
122
- },
123
- // ── 广场公开聊天档(从 createSpaceAgents PUBLIC_AGENT_DEFS 收编,2026-08-19)──
124
- // ID 与 createSpaceAgents 的 deterministicId 结果一致;provider 按 agentSeedBuilder
125
- // 默认规则:显式 provider 用显式值,未写则 openai。
126
- // 2026-09-10 预设收敛:GPT-5.6 Sol/Terra、GPT-5.5 Pro 从广场退场转 internal 兼容,
127
- // 公开聊天档只保留 Luna + nolo 托管组 + 图片档(图片档仍在广场,但不再 runtimeFallback)。
128
- {
129
- id: "01GPT56SOLPB00000000VXMGCW",
130
- // 已从广场/预设退场(2026-09-10):保留 internal 兼容条目,仅为存量 agent
131
- // 记录提供运行时路由;不再出现在广场与 createSpaceAgents 播种清单。
132
- group: "internal",
133
- name: "GPT-5.6 Sol\uFF08\u517C\u5BB9\uFF09",
134
- provider: "openai",
135
- model: "gpt-5.6-sol"
136
- },
137
- {
138
- id: "01GPT56TERPB00000001UX7RKW",
139
- // 已从广场/预设退场(2026-09-10):同 Sol,internal 兼容。
140
- group: "internal",
141
- name: "GPT-5.6 Terra\uFF08\u517C\u5BB9\uFF09",
142
- provider: "openai",
143
- model: "gpt-5.6-terra"
144
- },
145
- {
146
- id: "01GPT56LUNPB00000001VVVZHS",
147
- group: "public",
148
- name: "GPT-5.6 Luna",
149
- provider: "openai",
150
- model: "gpt-5.6-luna"
151
- },
152
- {
153
- id: "01GPT55PROPUB00000000IV47M",
154
- // 已从广场/预设退场(2026-09-10):internal 兼容,理由同 Sol。
155
- group: "internal",
156
- name: "GPT-5.5 Pro\uFF08\u517C\u5BB9\uFF09",
157
- provider: "openai",
158
- model: "gpt-5.5-pro"
159
- },
160
- // Claude Sonnet/Opus/Fable 5 广场入口 2026-09-01 下架;平台托管通道已于
161
- // 2026-09-15 恢复真实 DeepInfra 模型(nolo 目录重新上架)。广场重新上架另行决策。
162
- // Gemini 文本档只上架最新一代:旧版留在广场只会分散选择、拉长列表,而
163
- // 用户想要的是「最新的那个 Gemini」。旧版模型仍可保留用于兼容历史请求,
164
- // (modelAbility / 定价表照旧),下架的只是广场入口。
165
- {
166
- id: "01GEM37FLPB00000000FJCRNC",
167
- group: "public",
168
- name: "Gemini 3.8 Flash",
169
- provider: "google",
170
- model: "gemini-3.8-flash"
171
- },
172
- {
173
- id: "01GROK46PLAZ00000001PTJZ3K",
174
- group: "public",
175
- name: "Grok 4.6",
176
- provider: "xai",
177
- model: "grok-4.6"
178
- },
179
- {
180
- id: "01GPTIMG2GEN00000000SSEBOS",
181
- group: "public",
182
- name: "GPT Image 2 \u56FE\u7247\u751F\u6210\u5668",
183
- provider: "openai",
184
- model: "gpt-5.6-luna",
185
- hasImageOutput: true,
186
- imageModel: "gpt-image-2",
187
- imageWorkflow: "generate",
188
- imageConfig: { enabled: true }
189
- },
190
- {
191
- id: "01GPTIMG2EDT00000001R4R4H4",
192
- group: "public",
193
- name: "GPT Image 2 \u56FE\u7247\u7F16\u8F91\u5668",
194
- provider: "openai",
195
- model: "gpt-5.6-luna",
196
- hasImageOutput: true,
197
- imageModel: "gpt-image-2",
198
- imageWorkflow: "edit",
199
- imageConfig: { enabled: true }
200
- },
201
- {
202
- id: "01GPTIMG2CNT00000000USKZFO",
203
- group: "public",
204
- name: "GPT Image 2 \u8FDE\u7EED\u521B\u4F5C\u52A9\u624B",
205
- provider: "openai",
206
- model: "gpt-5.6-luna",
207
- hasImageOutput: true,
208
- imageModel: "gpt-image-2",
209
- imageWorkflow: "continuous",
210
- imageConfig: { enabled: true }
211
- },
212
- {
213
- id: "01NB2LITEGEN00000001XE1MNO",
214
- group: "public",
215
- name: "Nano Banana 2 Lite \u6587\u751F\u56FE",
216
- provider: "google",
217
- model: "gemini-3.1-flash-lite-image",
218
- hasImageOutput: true
219
- }
220
- ];
221
- var CATALOG_BY_ID = new Map(BUILTIN_AGENT_CATALOG.map((e) => [e.id, e]));
222
- function builtinAgentCatalogEntryById(id) {
223
- if (!id) return void 0;
224
- return CATALOG_BY_ID.get(id);
225
- }
226
- function builtinRuntimeFallbackEntries() {
227
- return BUILTIN_AGENT_CATALOG.filter((e) => e.runtimeFallback === true);
228
- }
229
- function builtinPlatformEntries() {
230
- return BUILTIN_AGENT_CATALOG.filter((e) => e.group === "builtin");
231
- }
232
-
233
- // packages/core/builtinAgents.ts
234
- var entry = (id) => {
235
- const e = builtinAgentCatalogEntryById(id);
236
- if (!e) throw new Error(`missing builtin agent catalog entry: ${id}`);
237
- return e;
238
- };
239
- var BUILTIN_NOLO_AGENT_ID = entry("01NOLOAPPBLD000000019KCKT0").id;
240
- var BUILTIN_NOLO_AGENT_KEY = publicAgentKey(BUILTIN_NOLO_AGENT_ID);
241
- var BUILTIN_NOLO_AGENT_NAME = entry("01NOLOAPPBLD000000019KCKT0").name;
242
- var BUILTIN_NOLO_AGENT_MODEL = entry("01NOLOAPPBLD000000019KCKT0").model;
243
- var BUILTIN_APP_BUILDER_AGENT_ID = entry("01APPBUILDER00000001YAII3I").id;
244
- var BUILTIN_APP_BUILDER_AGENT_KEY = publicAgentKey(BUILTIN_APP_BUILDER_AGENT_ID);
245
- var BUILTIN_ECOMMERCE_AGENT_ID = entry("01ECOMMERCEAG00000001PYQ2J").id;
246
- var BUILTIN_ECOMMERCE_AGENT_KEY = publicAgentKey(BUILTIN_ECOMMERCE_AGENT_ID);
247
- var BUILTIN_AGENT_CREATOR_AGENT_ID = entry("01NOLOAGENTCRT000000000001").id;
248
- var BUILTIN_AGENT_CREATOR_AGENT_KEY = publicAgentKey(BUILTIN_AGENT_CREATOR_AGENT_ID);
249
- var BUILTIN_FEEDBACK_AGENT_ID = entry("01NOLOFEEDBACKA000000000R2").id;
250
- var BUILTIN_FEEDBACK_AGENT_KEY = publicAgentKey(BUILTIN_FEEDBACK_AGENT_ID);
251
- var BUILTIN_CHROME_OPERATOR_AGENT_ID = entry("01CHROMEOPR000000000001").id;
252
- var BUILTIN_CHROME_OPERATOR_AGENT_KEY = publicAgentKey(BUILTIN_CHROME_OPERATOR_AGENT_ID);
253
- var BUILTIN_PLATFORM_AGENT_KEYS = builtinPlatformEntries().map(
254
- (e) => publicAgentKey(e.id)
255
- );
256
- var BUILTIN_PLATFORM_AGENT_KEY_SET = new Set(BUILTIN_PLATFORM_AGENT_KEYS);
257
- var PUBLIC_DEEPSEEK_V4_FLASH_AGENT_ID = entry("01DSV4FLASHPB00000000JFPFD").id;
258
- var PUBLIC_DEEPSEEK_V4_FLASH_AGENT_KEY = publicAgentKey(PUBLIC_DEEPSEEK_V4_FLASH_AGENT_ID);
259
- var PUBLIC_DEEPSEEK_V4_PRO_AGENT_ID = entry("01DSV4PRONPB00000001VIR3EK").id;
260
- var PUBLIC_DEEPSEEK_V4_PRO_AGENT_KEY = publicAgentKey(PUBLIC_DEEPSEEK_V4_PRO_AGENT_ID);
261
- var PUBLIC_GLM_53_FLASH_AGENT_ID = entry("01GLMFLASHPB00000000BT20BC").id;
262
- var PUBLIC_GLM_53_FLASH_AGENT_KEY = publicAgentKey(PUBLIC_GLM_53_FLASH_AGENT_ID);
263
- var PUBLIC_KIMI_K26_IMAGE_AGENT_ID = entry("01KIMIK26OLLAMA0000000001").id;
264
- var PUBLIC_KIMI_K26_IMAGE_AGENT_KEY = publicAgentKey(PUBLIC_KIMI_K26_IMAGE_AGENT_ID);
265
- var PUBLIC_GPT_IMAGE_2_GENERATOR_AGENT_ID = entry("01GPTIMG2GEN00000000SSEBOS").id;
266
- var PUBLIC_GPT_IMAGE_2_GENERATOR_AGENT_KEY = publicAgentKey(PUBLIC_GPT_IMAGE_2_GENERATOR_AGENT_ID);
267
- var PUBLIC_GPT_IMAGE_2_EDITOR_AGENT_ID = entry("01GPTIMG2EDT00000001R4R4H4").id;
268
- var PUBLIC_GPT_IMAGE_2_EDITOR_AGENT_KEY = publicAgentKey(PUBLIC_GPT_IMAGE_2_EDITOR_AGENT_ID);
269
- var PUBLIC_GPT_IMAGE_2_CONTINUOUS_AGENT_ID = entry("01GPTIMG2CNT00000000USKZFO").id;
270
- var PUBLIC_GPT_IMAGE_2_CONTINUOUS_AGENT_KEY = publicAgentKey(PUBLIC_GPT_IMAGE_2_CONTINUOUS_AGENT_ID);
271
- var PUBLIC_NANO_BANANA_2_LITE_AGENT_ID = entry("01NB2LITEGEN00000001XE1MNO").id;
272
- var PUBLIC_NANO_BANANA_2_LITE_AGENT_KEY = publicAgentKey(PUBLIC_NANO_BANANA_2_LITE_AGENT_ID);
273
- var SYSTEM_BUILTIN_TRUSTED_AGENT_KEYS = [
274
- PUBLIC_DEEPSEEK_V4_FLASH_AGENT_KEY,
275
- PUBLIC_DEEPSEEK_V4_PRO_AGENT_KEY,
276
- PUBLIC_GLM_53_FLASH_AGENT_KEY
277
- ];
278
- var SYSTEM_BUILTIN_TRUSTED_AGENT_KEY_SET = new Set(
279
- SYSTEM_BUILTIN_TRUSTED_AGENT_KEYS
280
- );
281
- var isSystemBuiltinTrustedAgentKey = (key) => typeof key === "string" && SYSTEM_BUILTIN_TRUSTED_AGENT_KEY_SET.has(key);
282
- var isBuiltinPlatformAgentKey = (key) => typeof key === "string" && BUILTIN_PLATFORM_AGENT_KEY_SET.has(key);
283
-
284
32
  // packages/database/actions/agentReadResolution.ts
285
33
  var BUILTIN_PLATFORM_AGENT_KEYS2 = [
286
34
  ...BUILTIN_PLATFORM_AGENT_KEYS
287
35
  ];
288
- var BUILTIN_PLATFORM_AGENT_KEY_SET2 = new Set(
36
+ var BUILTIN_PLATFORM_AGENT_KEY_SET = new Set(
289
37
  BUILTIN_PLATFORM_AGENT_KEYS2
290
38
  );
291
39
  var normalizeServer = (server) => normalizeKnownServerOrigin(server) ?? normalizeServerOrigin(server);
292
- var isBuiltinPlatformAgentKey2 = (dbKey) => typeof dbKey === "string" && BUILTIN_PLATFORM_AGENT_KEY_SET2.has(dbKey);
40
+ var isBuiltinPlatformAgentKey = (dbKey) => typeof dbKey === "string" && BUILTIN_PLATFORM_AGENT_KEY_SET.has(dbKey);
293
41
  var resolveAgentReadServers = ({
294
42
  dbKey,
295
43
  configuredServers
296
44
  }) => {
297
45
  const normalized = configuredServers.map(normalizeServer);
298
- if (!isBuiltinPlatformAgentKey2(dbKey)) {
46
+ if (!isBuiltinPlatformAgentKey(dbKey)) {
299
47
  return Array.from(new Set(normalized));
300
48
  }
301
49
  return Array.from(/* @__PURE__ */ new Set([...normalized, ...NOLO_CLUSTER_SERVERS]));
@@ -695,13 +443,6 @@ var readAction = async (payload, thunkApi) => {
695
443
 
696
444
  export {
697
445
  readRequestManager,
698
- builtinAgentCatalogEntryById,
699
- builtinRuntimeFallbackEntries,
700
- BUILTIN_NOLO_AGENT_KEY,
701
- BUILTIN_NOLO_AGENT_NAME,
702
- BUILTIN_NOLO_AGENT_MODEL,
703
- isSystemBuiltinTrustedAgentKey,
704
- isBuiltinPlatformAgentKey,
705
446
  resolveAgentReadServers,
706
447
  readAction
707
448
  };
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-KHCLMKZZ.js";
5
5
  import {
6
6
  asTrimmedNonEmptyStringArray
7
- } from "./chunk-I42VC5KR.js";
7
+ } from "./chunk-VMFTFOWF.js";
8
8
  import {
9
9
  asOptionalTrimmedString
10
10
  } from "./chunk-G3SUCT4W.js";
@@ -0,0 +1,103 @@
1
+ // packages/agent-runtime/devinOAuth.ts
2
+ import { existsSync, readFileSync } from "node:fs";
3
+ import { homedir } from "node:os";
4
+ import { join } from "node:path";
5
+ var DEVIN_CONNECT_URL = "https://server.codeium.com/exa.api_server_pb.ApiServerService/GetChatMessage";
6
+ function buildDevinAuthUrl(orgId) {
7
+ const cleanOrg = orgId?.trim();
8
+ if (cleanOrg) {
9
+ return `https://app.devin.ai/org/${encodeURIComponent(cleanOrg)}/settings/keys`;
10
+ }
11
+ return "https://app.devin.ai/settings/keys";
12
+ }
13
+ function extractDevinToken(input) {
14
+ const raw = input?.trim();
15
+ if (!raw) return null;
16
+ if (/^https?:\/\//i.test(raw)) {
17
+ try {
18
+ const url = new URL(raw);
19
+ const queryToken = url.searchParams.get("token") || url.searchParams.get("access_token") || url.searchParams.get("auth_token");
20
+ if (queryToken?.trim()) return queryToken.trim();
21
+ if (url.hash) {
22
+ const hashParams = new URLSearchParams(url.hash.replace(/^#/, ""));
23
+ const hashToken = hashParams.get("token") || hashParams.get("access_token") || hashParams.get("auth_token");
24
+ if (hashToken?.trim()) return hashToken.trim();
25
+ }
26
+ } catch {
27
+ }
28
+ }
29
+ return raw || null;
30
+ }
31
+ function parseDevinCredentialsToml(content) {
32
+ for (const line of content.split(/\r?\n/)) {
33
+ const cogMatch = line.match(/(cog_[A-Za-z0-9_-]+)/);
34
+ if (cogMatch?.[1]) {
35
+ return cogMatch[1].trim();
36
+ }
37
+ const match = line.match(
38
+ /^\s*(?:windsurf_api_key|devin_api_key|api_key|api_token|token)\s*=\s*"([^"]+)"\s*$/i
39
+ );
40
+ if (match?.[1]) {
41
+ return match[1].trim();
42
+ }
43
+ }
44
+ return null;
45
+ }
46
+ function detectLocalDevinCredentials(options) {
47
+ const baseHome = options?.homeDir || homedir();
48
+ const xdgData = process.env.XDG_DATA_HOME;
49
+ const candidateCliPaths = [
50
+ xdgData ? join(xdgData, "devin", "credentials.toml") : null,
51
+ join(baseHome, ".local", "share", "devin", "credentials.toml"),
52
+ process.env.APPDATA ? join(process.env.APPDATA, "devin", "credentials.toml") : null
53
+ ].filter((p) => Boolean(p));
54
+ for (const credPath of candidateCliPaths) {
55
+ if (existsSync(credPath)) {
56
+ try {
57
+ const content = readFileSync(credPath, "utf-8");
58
+ const token = parseDevinCredentialsToml(content);
59
+ if (token) {
60
+ return {
61
+ found: true,
62
+ token,
63
+ source: "devin-cli",
64
+ sourcePath: credPath
65
+ };
66
+ }
67
+ } catch {
68
+ }
69
+ }
70
+ }
71
+ const codeiumPath = join(baseHome, ".codeium", "config.json");
72
+ if (existsSync(codeiumPath)) {
73
+ try {
74
+ const parsed = JSON.parse(readFileSync(codeiumPath, "utf-8"));
75
+ const token = parsed.apiKey || parsed.api_key;
76
+ if (token?.trim()) {
77
+ return {
78
+ found: true,
79
+ token: token.trim(),
80
+ source: "codeium-config",
81
+ sourcePath: codeiumPath
82
+ };
83
+ }
84
+ } catch {
85
+ }
86
+ }
87
+ return { found: false };
88
+ }
89
+ function buildDevinOAuthCredential(token, now = Date.now()) {
90
+ return {
91
+ provider: "devin",
92
+ accessToken: token.trim(),
93
+ obtainedAt: now
94
+ };
95
+ }
96
+
97
+ export {
98
+ DEVIN_CONNECT_URL,
99
+ buildDevinAuthUrl,
100
+ extractDevinToken,
101
+ detectLocalDevinCredentials,
102
+ buildDevinOAuthCredential
103
+ };
@@ -2,7 +2,7 @@ import {
2
2
  LOCAL_CODEX_AGENT_KEY,
3
3
  isLocalCliAgentKey,
4
4
  resolveCliAgentKeyInput
5
- } from "./chunk-SPAQ4PVV.js";
5
+ } from "./chunk-SAFZABH7.js";
6
6
  import {
7
7
  DEFAULT_NOLO_SERVER_URL
8
8
  } from "./chunk-OLZBQWZU.js";
@@ -9,7 +9,7 @@ import {
9
9
  initReactI18next,
10
10
  instance,
11
11
  toast
12
- } from "./chunk-D74EWXL4.js";
12
+ } from "./chunk-SUERPXJZ.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-XWNRAIUL.js";
21
+ } from "./chunk-546FPOW3.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-ZZCJUXUI.js";
30
+ } from "./chunk-XLGHBHGP.js";
31
31
  import {
32
32
  createSpaceKey,
33
33
  normalizeSpaceId
@@ -41,9 +41,10 @@ import {
41
41
  uploadFileAction,
42
42
  upsertSSREntity,
43
43
  write
44
- } from "./chunk-YFADVSZE.js";
44
+ } from "./chunk-F3UTRUDO.js";
45
45
  import {
46
46
  SEPARATOR,
47
+ asTrimmedNonEmptyStringArray,
47
48
  createKey,
48
49
  fileKey,
49
50
  isAgentKey,
@@ -52,16 +53,13 @@ import {
52
53
  rowKey,
53
54
  splitKey,
54
55
  ulid
55
- } from "./chunk-NHRQCXIQ.js";
56
+ } from "./chunk-VMFTFOWF.js";
56
57
  import {
57
58
  asOptionalFiniteNumber
58
59
  } from "./chunk-WWC7I6TA.js";
59
- import {
60
- asTrimmedNonEmptyStringArray
61
- } from "./chunk-I42VC5KR.js";
62
60
  import {
63
61
  extractUserId
64
- } from "./chunk-BJIRLHJR.js";
62
+ } from "./chunk-GII32WZW.js";
65
63
  import {
66
64
  DEVICE_LOCAL_OWNER_ID,
67
65
  createAsyncThunk,
@@ -70,7 +68,7 @@ import {
70
68
  resolveReplicationServers,
71
69
  scheduleDeleteReplication,
72
70
  scheduleWriteReplication
73
- } from "./chunk-3RAG2NAD.js";
71
+ } from "./chunk-UKWGR5SS.js";
74
72
  import {
75
73
  createClientLogger,
76
74
  isAbortError
@@ -81,15 +79,15 @@ import {
81
79
  import {
82
80
  buildTombstoneRecord
83
81
  } from "./chunk-GBRG75BQ.js";
82
+ import {
83
+ isRecord
84
+ } from "./chunk-KUG52IAP.js";
84
85
  import {
85
86
  asTrimmedString
86
87
  } from "./chunk-3EUW3WEO.js";
87
88
  import {
88
89
  asOptionalPositiveFiniteNumber
89
90
  } from "./chunk-U6VC4MU4.js";
90
- import {
91
- isRecord
92
- } from "./chunk-KUG52IAP.js";
93
91
  import {
94
92
  asOptionalTrimmedString
95
93
  } from "./chunk-G3SUCT4W.js";
@@ -1455,11 +1453,11 @@ var ENTITY_DELETE_STRATEGIES = {
1455
1453
  await dispatch(deleteTable({ dbKey: key })).unwrap();
1456
1454
  },
1457
1455
  file: async (key, { thunkAPI }) => {
1458
- const { deleteFileAction } = await import("./deleteFile-LWSR674W.js");
1456
+ const { deleteFileAction } = await import("./deleteFile-YG6QMJLU.js");
1459
1457
  await deleteFileAction(key, thunkAPI);
1460
1458
  },
1461
1459
  image: async (key, { thunkAPI }) => {
1462
- const { deleteFileAction } = await import("./deleteFile-LWSR674W.js");
1460
+ const { deleteFileAction } = await import("./deleteFile-YG6QMJLU.js");
1463
1461
  await deleteFileAction(key, thunkAPI);
1464
1462
  },
1465
1463
  agent: async (key, { dispatch, userId, sourceServerOrigin }) => {