nolo-cli 0.1.44 → 0.1.46

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 (613) hide show
  1. package/README.md +258 -102
  2. package/index.js +73433 -0
  3. package/package.json +10 -633
  4. package/LICENSE +0 -21
  5. package/agent-runtime/agentConfigOptions.ts +0 -12
  6. package/agent-runtime/agentRecordConfig.ts +0 -101
  7. package/agent-runtime/agentRecordKeys.ts +0 -14
  8. package/agent-runtime/agentThread.ts +0 -222
  9. package/agent-runtime/agentThreadAdmission.ts +0 -74
  10. package/agent-runtime/dialogMessageRecord.ts +0 -16
  11. package/agent-runtime/dialogWritePlan.ts +0 -211
  12. package/agent-runtime/hostAdapter.ts +0 -81
  13. package/agent-runtime/hybridRecordStore.ts +0 -170
  14. package/agent-runtime/index.ts +0 -184
  15. package/agent-runtime/localDialogRead.ts +0 -23
  16. package/agent-runtime/localLoop.ts +0 -334
  17. package/agent-runtime/localToolPolicy.ts +0 -179
  18. package/agent-runtime/localWorkspaceTools.ts +0 -2310
  19. package/agent-runtime/noloWorkspaceTools.ts +0 -390
  20. package/agent-runtime/openAiCompatibleProvider.ts +0 -74
  21. package/agent-runtime/openAiCompatibleProviderConfig.ts +0 -27
  22. package/agent-runtime/platformChatProvider.ts +0 -229
  23. package/agent-runtime/providerResolution.ts +0 -302
  24. package/agent-runtime/runtimeDecision.ts +0 -70
  25. package/agent-runtime/runtimeFacts.ts +0 -40
  26. package/agent-runtime/runtimeToolPolicy.ts +0 -191
  27. package/agent-runtime/runtimeToolSurface.ts +0 -199
  28. package/agent-runtime/shellCommandPolicy.ts +0 -120
  29. package/agent-runtime/types.ts +0 -137
  30. package/agentAliases.ts +0 -110
  31. package/agentCommandSupport.ts +0 -81
  32. package/agentInternalCommandEntries.ts +0 -44
  33. package/agentListCommands.ts +0 -185
  34. package/agentListHelpers.ts +0 -242
  35. package/agentMachineCommands.ts +0 -403
  36. package/agentPullCommand.ts +0 -142
  37. package/agentRecordCommands.ts +0 -226
  38. package/agentRecordHelpers.ts +0 -571
  39. package/agentRunCommand.ts +0 -556
  40. package/agentRuntimeCommands.ts +0 -7
  41. package/agentRuntimeLocal.ts +0 -45
  42. package/ai/agent/_executeModel.ts +0 -146
  43. package/ai/agent/agentSlice.ts +0 -557
  44. package/ai/agent/appWorkingMemory.ts +0 -126
  45. package/ai/agent/buildEditingContext.ts +0 -378
  46. package/ai/agent/buildSystemPrompt.ts +0 -599
  47. package/ai/agent/canvasEditingContext.ts +0 -49
  48. package/ai/agent/cleanAgentMessages.ts +0 -140
  49. package/ai/agent/cliChatClient.ts +0 -153
  50. package/ai/agent/cliExecutor.ts +0 -1465
  51. package/ai/agent/cliPrompt.ts +0 -10
  52. package/ai/agent/contextCompiler.ts +0 -107
  53. package/ai/agent/contextLayerContract.ts +0 -44
  54. package/ai/agent/createAgentSchema.ts +0 -272
  55. package/ai/agent/currentTimeContext.ts +0 -65
  56. package/ai/agent/executeToolCall.ts +0 -58
  57. package/ai/agent/fetchAgentContexts.ts +0 -42
  58. package/ai/agent/generatePrompt.ts +0 -3
  59. package/ai/agent/getFullChatContextKeys.ts +0 -168
  60. package/ai/agent/guidedCreation/capabilities.ts +0 -84
  61. package/ai/agent/guidedCreation/types.ts +0 -38
  62. package/ai/agent/isLiveAudioOnlyAgent.ts +0 -26
  63. package/ai/agent/liveAudioModel.ts +0 -2
  64. package/ai/agent/machineRunPermissions.ts +0 -113
  65. package/ai/agent/pageBuilderHandoffRules.ts +0 -75
  66. package/ai/agent/persistMessageWithFixedId.ts +0 -37
  67. package/ai/agent/planSlice.ts +0 -259
  68. package/ai/agent/referenceUtils.ts +0 -229
  69. package/ai/agent/runAgentBackground.ts +0 -310
  70. package/ai/agent/runAgentClientLoop.ts +0 -164
  71. package/ai/agent/runtimeGuidance.ts +0 -116
  72. package/ai/agent/serverOrigin.ts +0 -7
  73. package/ai/agent/startParallelAgentStreams.ts +0 -424
  74. package/ai/agent/startupProtocol.ts +0 -53
  75. package/ai/agent/streamAgentChatTurn.ts +0 -2135
  76. package/ai/agent/streamAgentChatTurnUtils.ts +0 -923
  77. package/ai/agent/toolFailureGuard.ts +0 -99
  78. package/ai/agent/types.ts +0 -73
  79. package/ai/agent/utils/imageOutput.ts +0 -37
  80. package/ai/agent/utils/publicImageAgentMode.ts +0 -26
  81. package/ai/agent.ts +0 -2
  82. package/ai/ai.locale.ts +0 -1165
  83. package/ai/chat/accumulateToolCallChunks.ts +0 -126
  84. package/ai/chat/fetchUtils.ts +0 -143
  85. package/ai/chat/inlineImageUrlsForCustomProvider.ts +0 -122
  86. package/ai/chat/parseApiError.ts +0 -67
  87. package/ai/chat/parseMultilineSSE.ts +0 -95
  88. package/ai/chat/sendOpenAICompletionsRequest.ts +0 -921
  89. package/ai/chat/sendOpenAIResponseRequest.ts +0 -720
  90. package/ai/chat/serverProxyRetry.ts +0 -102
  91. package/ai/chat/shouldUseServerProxy.ts +0 -18
  92. package/ai/chat/streamRetry.ts +0 -46
  93. package/ai/chat/updateTotalUsage.ts +0 -89
  94. package/ai/context/buildReferenceContext.ts +0 -437
  95. package/ai/context/retention.ts +0 -165
  96. package/ai/context/tokenUtils.ts +0 -78
  97. package/ai/index.ts +0 -1
  98. package/ai/llm/agentCapabilities.ts +0 -74
  99. package/ai/llm/deepinfra.ts +0 -79
  100. package/ai/llm/fireworks.ts +0 -68
  101. package/ai/llm/generateRequestBody.ts +0 -165
  102. package/ai/llm/getModelContextWindow.ts +0 -93
  103. package/ai/llm/getPricing.ts +0 -252
  104. package/ai/llm/imagePricing.ts +0 -66
  105. package/ai/llm/isResponseAPIModel.ts +0 -13
  106. package/ai/llm/kimi.ts +0 -22
  107. package/ai/llm/mimo.ts +0 -99
  108. package/ai/llm/mistral.ts +0 -21
  109. package/ai/llm/models.ts +0 -45
  110. package/ai/llm/openrouterModels.ts +0 -31
  111. package/ai/llm/providers.ts +0 -313
  112. package/ai/llm/reasoningModels.ts +0 -27
  113. package/ai/llm/types.ts +0 -82
  114. package/ai/llm/usageRequestOptions.ts +0 -59
  115. package/ai/memory/policy.ts +0 -49
  116. package/ai/memory/queryShared.ts +0 -167
  117. package/ai/memory/recentRelationshipRecap.ts +0 -251
  118. package/ai/memory/remember.ts +0 -111
  119. package/ai/memory/scope.ts +0 -74
  120. package/ai/memory/store.ts +0 -20
  121. package/ai/memory/storeShared.ts +0 -76
  122. package/ai/memory/types.ts +0 -52
  123. package/ai/memory/understanding.ts +0 -341
  124. package/ai/memory/understandingGreeting.ts +0 -264
  125. package/ai/policy/personalizationDialog.ts +0 -333
  126. package/ai/policy/runtimePolicy.ts +0 -526
  127. package/ai/policy/selfUpdateFields.ts +0 -48
  128. package/ai/policy/types.ts +0 -64
  129. package/ai/skills/referenceRuntime.ts +0 -274
  130. package/ai/skills/skillDiagnostics.ts +0 -251
  131. package/ai/skills/skillDocBuilder.ts +0 -139
  132. package/ai/skills/skillDocProtocol.ts +0 -526
  133. package/ai/skills/skillSummaryMarker.ts +0 -26
  134. package/ai/token/calculatePrice.ts +0 -576
  135. package/ai/token/missingUsageEstimate.ts +0 -42
  136. package/ai/token/normalizeUsage.ts +0 -124
  137. package/ai/token/openaiImageGenerationUsage.ts +0 -56
  138. package/ai/token/prepareTokenUsageData.ts +0 -93
  139. package/ai/token/resolveBillingTarget.ts +0 -52
  140. package/ai/token/saveTokenRecord.ts +0 -53
  141. package/ai/token/types.ts +0 -103
  142. package/ai/tools/agent/agentTools.ts +0 -214
  143. package/ai/tools/agent/agentUpdateShared.ts +0 -311
  144. package/ai/tools/agent/callAgentTool.ts +0 -139
  145. package/ai/tools/agent/createAgentTool.ts +0 -512
  146. package/ai/tools/agent/createDialogTool.ts +0 -69
  147. package/ai/tools/agent/createSkillAgentTool.ts +0 -62
  148. package/ai/tools/agent/parallelBudget.ts +0 -221
  149. package/ai/tools/agent/prepareAgentDraftTool.ts +0 -159
  150. package/ai/tools/agent/presets/appBuilderPreset.ts +0 -154
  151. package/ai/tools/agent/runLlmTool.ts +0 -96
  152. package/ai/tools/agent/runStreamingAgentTool.ts +0 -73
  153. package/ai/tools/agent/skillAgentArgs.ts +0 -106
  154. package/ai/tools/agent/startAgentDialogTool.ts +0 -54
  155. package/ai/tools/agent/streamParallelAgentsTool.ts +0 -123
  156. package/ai/tools/agent/updateAgentTool.ts +0 -96
  157. package/ai/tools/agent/updateSelfTool.ts +0 -113
  158. package/ai/tools/amazonProductScraperTool.ts +0 -86
  159. package/ai/tools/apifyActorClient.ts +0 -45
  160. package/ai/tools/appEditGuard.ts +0 -372
  161. package/ai/tools/appReadSnapshot.ts +0 -153
  162. package/ai/tools/appTools.ts +0 -1549
  163. package/ai/tools/applyEditTool.ts +0 -259
  164. package/ai/tools/applyLineEditsTool.ts +0 -315
  165. package/ai/tools/browserTools/click.ts +0 -33
  166. package/ai/tools/browserTools/closeSession.ts +0 -29
  167. package/ai/tools/browserTools/common.ts +0 -27
  168. package/ai/tools/browserTools/openSession.ts +0 -48
  169. package/ai/tools/browserTools/readContent.ts +0 -38
  170. package/ai/tools/browserTools/selectOption.ts +0 -46
  171. package/ai/tools/browserTools/typeText.ts +0 -42
  172. package/ai/tools/category/createCategoryTool.ts +0 -66
  173. package/ai/tools/category/queryContentsByCategoryTool.ts +0 -69
  174. package/ai/tools/category/updateContentCategoryTool.ts +0 -75
  175. package/ai/tools/cfBrowserTools.ts +0 -319
  176. package/ai/tools/cfSpeechToTextTool.ts +0 -49
  177. package/ai/tools/checkEnvTool.ts +0 -102
  178. package/ai/tools/cloudflareCrawlTool.ts +0 -289
  179. package/ai/tools/codeSearchTool.ts +0 -123
  180. package/ai/tools/codeTools.ts +0 -101
  181. package/ai/tools/convertMarxistsBookTool.ts +0 -103
  182. package/ai/tools/createDocTool.ts +0 -132
  183. package/ai/tools/createSkillDocTool.ts +0 -155
  184. package/ai/tools/createWorkflowTool.ts +0 -154
  185. package/ai/tools/delayTool.ts +0 -31
  186. package/ai/tools/deleteSpacesTool.ts +0 -325
  187. package/ai/tools/deleteSpacesToolModel.ts +0 -159
  188. package/ai/tools/devReloadUtils.ts +0 -29
  189. package/ai/tools/dialogMessageSearch.ts +0 -137
  190. package/ai/tools/doctorSkillTool.ts +0 -72
  191. package/ai/tools/ecommerceScraperTool.ts +0 -86
  192. package/ai/tools/emailTools.ts +0 -549
  193. package/ai/tools/evalSkillTool.ts +0 -92
  194. package/ai/tools/exaSearchTool.ts +0 -63
  195. package/ai/tools/execShellTool.ts +0 -266
  196. package/ai/tools/executeSqlTool.ts +0 -192
  197. package/ai/tools/fetchWebpageSupport.ts +0 -333
  198. package/ai/tools/fetchWebpageTool.ts +0 -97
  199. package/ai/tools/geminiImagePreviewTool.ts +0 -386
  200. package/ai/tools/generateDocxTool.ts +0 -215
  201. package/ai/tools/googleSearchScraperTool.ts +0 -106
  202. package/ai/tools/importDataTool.ts +0 -133
  203. package/ai/tools/importSkillTool.ts +0 -162
  204. package/ai/tools/index.ts +0 -2290
  205. package/ai/tools/jdProductScraperTool.ts +0 -821
  206. package/ai/tools/listUserSpacesTool.ts +0 -113
  207. package/ai/tools/localFilesTool.ts +0 -276
  208. package/ai/tools/marxistsOfflineBook.ts +0 -253
  209. package/ai/tools/modelUsageTools.ts +0 -206
  210. package/ai/tools/noloWorkspaceReadTools.ts +0 -467
  211. package/ai/tools/olmOcrTool.ts +0 -33
  212. package/ai/tools/openaiImageTool.ts +0 -267
  213. package/ai/tools/prepareTools.ts +0 -193
  214. package/ai/tools/readDocTool.ts +0 -88
  215. package/ai/tools/readFileTool.ts +0 -214
  216. package/ai/tools/readTool.ts +0 -194
  217. package/ai/tools/readXPostTool.ts +0 -229
  218. package/ai/tools/readXhsProfileTool.ts +0 -638
  219. package/ai/tools/rememberMemoryTool.ts +0 -84
  220. package/ai/tools/remotionVideoTool.ts +0 -151
  221. package/ai/tools/searchDialogMessagesTool.ts +0 -222
  222. package/ai/tools/searchWorkspaceTool.ts +0 -259
  223. package/ai/tools/skillFollowup.ts +0 -86
  224. package/ai/tools/surfWeatherTool.ts +0 -169
  225. package/ai/tools/table/addTableRowTool.ts +0 -217
  226. package/ai/tools/table/createTableTool.ts +0 -326
  227. package/ai/tools/table/rowTools.ts +0 -386
  228. package/ai/tools/table/schemaTools.ts +0 -244
  229. package/ai/tools/table/shareTableTool.ts +0 -148
  230. package/ai/tools/table/toolShared.ts +0 -129
  231. package/ai/tools/taobaoTmallProductScraperTool.ts +0 -49
  232. package/ai/tools/toolApiClient.ts +0 -279
  233. package/ai/tools/toolNameAliases.ts +0 -70
  234. package/ai/tools/toolPacks.ts +0 -19
  235. package/ai/tools/toolResultError.ts +0 -42
  236. package/ai/tools/toolRunSlice.ts +0 -303
  237. package/ai/tools/toolSchemaCompatibility.ts +0 -53
  238. package/ai/tools/uiAskChoiceTool.ts +0 -104
  239. package/ai/tools/updateContentTitleTool.ts +0 -84
  240. package/ai/tools/updateDocTool.ts +0 -105
  241. package/ai/tools/updateUserPreferenceProfileTool.ts +0 -153
  242. package/ai/tools/wereadGatewayTool.ts +0 -152
  243. package/ai/tools/whisperTool.ts +0 -76
  244. package/ai/tools/writeFileTool.ts +0 -213
  245. package/ai/tools/youtubeScraperTool.ts +0 -116
  246. package/ai/tools/ziweiChartTool.ts +0 -678
  247. package/ai/types.ts +0 -58
  248. package/ai/workflow/workflowExecutor.ts +0 -323
  249. package/ai/workflow/workflowSlice.ts +0 -73
  250. package/ai/workflow/workflowTypes.ts +0 -106
  251. package/app/actions/syncAppRecord.ts +0 -73
  252. package/app/constants/animationSets.ts +0 -21
  253. package/app/constants/appEditor.ts +0 -99
  254. package/app/favorite/deletedFavoriteProjection.ts +0 -31
  255. package/app/favorite/favoriteSlice.ts +0 -690
  256. package/app/favorite/type.ts +0 -43
  257. package/app/hooks/deleteDbKey.ts +0 -254
  258. package/app/i18n/client.ts +0 -13
  259. package/app/i18n/i18n.base.ts +0 -14
  260. package/app/i18n/i18n.config.ts +0 -77
  261. package/app/i18n/index.ts +0 -15
  262. package/app/i18n/mapLanguage.ts +0 -11
  263. package/app/i18n/translations/appBuilder.locale.ts +0 -453
  264. package/app/i18n/translations/error.locale.ts +0 -246
  265. package/app/i18n/translations/interface.locale.ts +0 -2206
  266. package/app/i18n/translations/pricing.locale.ts +0 -397
  267. package/app/i18n/translations/privacy.locale.ts +0 -168
  268. package/app/i18n/translations/seo.locale.ts +0 -129
  269. package/app/i18n/translations/terms.locale.ts +0 -124
  270. package/app/i18n/types.ts +0 -6
  271. package/app/notifications/model.ts +0 -77
  272. package/app/notifications/notificationSlice.ts +0 -141
  273. package/app/reducer.ts +0 -36
  274. package/app/settings/dbActionThunks.ts +0 -34
  275. package/app/settings/defaultSpacePreference.ts +0 -87
  276. package/app/settings/settingSlice.tsx +0 -1212
  277. package/app/settings/settingsRecord.ts +0 -8
  278. package/app/stateViews/runtime.ts +0 -90
  279. package/app/store.ts +0 -55
  280. package/app/theme/colors.ts +0 -280
  281. package/app/theme/fontPreference.ts +0 -77
  282. package/app/theme/theme.config.ts +0 -120
  283. package/app/theme/themeModeBootstrap.ts +0 -123
  284. package/app/types/appSummary.ts +0 -118
  285. package/app/types.ts +0 -358
  286. package/app/utils/appKeys.ts +0 -55
  287. package/app/utils/async.ts +0 -28
  288. package/app/utils/desktopAgentRuntimeTurnClient.ts +0 -75
  289. package/app/utils/env.ts +0 -17
  290. package/app/utils/fileUtils.ts +0 -229
  291. package/app/utils/imageUtils.ts +0 -274
  292. package/app/utils/myContentItems.ts +0 -317
  293. package/app/utils/retryAfter.ts +0 -36
  294. package/app/utils/retryFetch.ts +0 -61
  295. package/app/utils/toast.ts +0 -3
  296. package/auth/action/signUpAction.ts +0 -227
  297. package/auth/adminPermissions.ts +0 -78
  298. package/auth/authSlice.ts +0 -531
  299. package/auth/client/loginRequest.ts +0 -14
  300. package/auth/resetAuthScopedClientState.ts +0 -27
  301. package/auth/routes.ts +0 -183
  302. package/auth/token.ts +0 -63
  303. package/auth/types.ts +0 -40
  304. package/authCommands.ts +0 -230
  305. package/chat/chat.locale.ts +0 -817
  306. package/chat/dialog/actions/addCybotAction.ts +0 -52
  307. package/chat/dialog/actions/addReferenceKeysAction.ts +0 -62
  308. package/chat/dialog/actions/builtinDialogLlm.ts +0 -35
  309. package/chat/dialog/actions/cleanupCliSession.ts +0 -40
  310. package/chat/dialog/actions/createDialogAction.ts +0 -379
  311. package/chat/dialog/actions/createScheduledTaskAction.ts +0 -78
  312. package/chat/dialog/actions/handleSendMessageAction.ts +0 -202
  313. package/chat/dialog/actions/handleSendMessageResolver.ts +0 -27
  314. package/chat/dialog/actions/removeCybotAction.ts +0 -6
  315. package/chat/dialog/actions/removeDialogAgentAction.ts +0 -44
  316. package/chat/dialog/actions/replacePrimaryCybotAction.ts +0 -6
  317. package/chat/dialog/actions/setPrimaryDialogAgentAction.ts +0 -52
  318. package/chat/dialog/actions/updateDialogSummaryAction.ts +0 -430
  319. package/chat/dialog/actions/updateDialogTitleAction.ts +0 -151
  320. package/chat/dialog/actions/updateDialogTitlePolicy.ts +0 -30
  321. package/chat/dialog/actions/updateTokensAction.ts +0 -233
  322. package/chat/dialog/dialogAgents.ts +0 -72
  323. package/chat/dialog/dialogAttachmentCleanup.ts +0 -135
  324. package/chat/dialog/dialogSlice.ts +0 -985
  325. package/chat/dialog/dialogTitle.ts +0 -81
  326. package/chat/dialog/dialogTokenStats.ts +0 -12
  327. package/chat/dialog/dialogUrl.ts +0 -6
  328. package/chat/dialog/goal.ts +0 -108
  329. package/chat/dialog/objectAssistantRegistry.ts +0 -286
  330. package/chat/dialog/schedule.ts +0 -17
  331. package/chat/messages/activityCompletion.ts +0 -97
  332. package/chat/messages/fetchAndCacheMessages.ts +0 -119
  333. package/chat/messages/fetchConvMsgs.ts +0 -51
  334. package/chat/messages/fetchMessages.ts +0 -84
  335. package/chat/messages/fileUrl.ts +0 -13
  336. package/chat/messages/imagePayloadPersistence.ts +0 -22
  337. package/chat/messages/messageAgent.ts +0 -8
  338. package/chat/messages/messageContent.ts +0 -203
  339. package/chat/messages/messageContract.ts +0 -88
  340. package/chat/messages/messageSlice.ts +0 -1386
  341. package/chat/messages/toolThunks.ts +0 -646
  342. package/chat/messages/types.ts +0 -192
  343. package/chat/messages/web/toolDisplayName.ts +0 -686
  344. package/cli/agentAliases.ts +0 -110
  345. package/cli/agentCommandSupport.ts +0 -81
  346. package/cli/agentInternalCommandEntries.ts +0 -44
  347. package/cli/agentListCommands.ts +0 -185
  348. package/cli/agentListHelpers.ts +0 -242
  349. package/cli/agentMachineCommands.ts +0 -403
  350. package/cli/agentPullCommand.ts +0 -142
  351. package/cli/agentRecordCommands.ts +0 -226
  352. package/cli/agentRecordHelpers.ts +0 -571
  353. package/cli/agentRunCommand.ts +0 -556
  354. package/cli/agentRuntimeLocal.ts +0 -45
  355. package/cli/authCommands.ts +0 -230
  356. package/cli/cliCommandAdapters.ts +0 -28
  357. package/cli/cliCommandDispatch.ts +0 -66
  358. package/cli/cliCommandFactories.ts +0 -66
  359. package/cli/cliCommandTypes.ts +0 -49
  360. package/cli/cliEnvHelpers.ts +0 -116
  361. package/cli/cliSpaceHelpers.ts +0 -39
  362. package/cli/client/agentConfigResolver.ts +0 -1
  363. package/cli/client/agentRun.ts +0 -795
  364. package/cli/client/compactDialog.ts +0 -222
  365. package/cli/client/hybridRecordStore.ts +0 -52
  366. package/cli/client/localAgentRecords.ts +0 -7
  367. package/cli/client/localDialogRecords.ts +0 -30
  368. package/cli/client/localProviderResolver.ts +0 -1
  369. package/cli/client/localRuntimeAdapter.ts +0 -1104
  370. package/cli/client/localToolPolicy.ts +0 -8
  371. package/cli/client/profileConfig.ts +0 -101
  372. package/cli/client/streamingOutput.ts +0 -38
  373. package/cli/commandRegistry.ts +0 -98
  374. package/cli/connectorRunArtifact.ts +0 -120
  375. package/cli/connectorWebSocketTarget.ts +0 -112
  376. package/cli/defaultServer.ts +0 -1
  377. package/cli/dialogAttachmentCleanup.ts +0 -151
  378. package/cli/dialogCommands.ts +0 -1120
  379. package/cli/dialogInternalCommandEntries.ts +0 -17
  380. package/cli/docCreateCommands.ts +0 -345
  381. package/cli/docInternalCommandEntries.ts +0 -11
  382. package/cli/docPageHelpers.ts +0 -80
  383. package/cli/docSkillHelpers.ts +0 -67
  384. package/cli/docSpaceHelpers.ts +0 -46
  385. package/cli/globalRecordOperations.ts +0 -258
  386. package/cli/internalCommandEntries.ts +0 -18
  387. package/cli/localRuntimeAuthority.ts +0 -182
  388. package/cli/localRuntimeDb.ts +0 -26
  389. package/cli/machineCommands.ts +0 -307
  390. package/cli/machineDaemonCommands.ts +0 -185
  391. package/cli/machineHeartbeatCommands.ts +0 -30
  392. package/cli/machineStatusCommands.ts +0 -95
  393. package/cli/machineWatchCommands.ts +0 -41
  394. package/cli/machineWsPromptMaterialization.ts +0 -89
  395. package/cli/machineWsRunDispatch.ts +0 -695
  396. package/cli/machineWsSession.ts +0 -213
  397. package/cli/memoryCommands.ts +0 -253
  398. package/cli/memoryInternalCommandEntries.ts +0 -9
  399. package/cli/offlineMarxistsAgentCommand.ts +0 -316
  400. package/cli/qoderUsageProbe.ts +0 -252
  401. package/cli/runtimeDoctorCommands.ts +0 -174
  402. package/cli/runtimeModeArgs.ts +0 -33
  403. package/cli/scriptCommandEntries.ts +0 -66
  404. package/cli/secretScan.ts +0 -31
  405. package/cli/systemInternalCommandEntries.ts +0 -65
  406. package/cli/tableCommands.ts +0 -453
  407. package/cli/tui/readlineWorkspace.ts +0 -210
  408. package/cli/tui/session.ts +0 -554
  409. package/cli/updateCommands.ts +0 -134
  410. package/cli/workflowInternalCommandEntries.ts +0 -10
  411. package/cliCommandAdapters.ts +0 -28
  412. package/cliCommandDispatch.ts +0 -66
  413. package/cliCommandFactories.ts +0 -66
  414. package/cliCommandTypes.ts +0 -49
  415. package/cliEnvHelpers.ts +0 -116
  416. package/cliSpaceHelpers.ts +0 -39
  417. package/client/agentConfigResolver.test.ts +0 -69
  418. package/client/agentConfigResolver.ts +0 -1
  419. package/client/agentRun.test.ts +0 -1344
  420. package/client/agentRun.ts +0 -795
  421. package/client/compactDialog.test.ts +0 -238
  422. package/client/compactDialog.ts +0 -222
  423. package/client/hybridRecordStore.test.ts +0 -157
  424. package/client/hybridRecordStore.ts +0 -52
  425. package/client/localAgentRecords.test.ts +0 -27
  426. package/client/localAgentRecords.ts +0 -7
  427. package/client/localDialogRecords.test.ts +0 -124
  428. package/client/localDialogRecords.ts +0 -30
  429. package/client/localProviderResolver.test.ts +0 -102
  430. package/client/localProviderResolver.ts +0 -1
  431. package/client/localRuntimeAdapter.test.ts +0 -2804
  432. package/client/localRuntimeAdapter.ts +0 -1104
  433. package/client/localRuntimeDryRun.test.ts +0 -135
  434. package/client/localToolPolicy.test.ts +0 -48
  435. package/client/localToolPolicy.ts +0 -8
  436. package/client/profileConfig.test.ts +0 -106
  437. package/client/profileConfig.ts +0 -101
  438. package/client/streamingOutput.test.ts +0 -22
  439. package/client/streamingOutput.ts +0 -38
  440. package/commandRegistry.ts +0 -98
  441. package/connector-experimental/capabilities.ts +0 -75
  442. package/connector-experimental/codexBinary.ts +0 -41
  443. package/connector-experimental/heartbeatLoop.ts +0 -22
  444. package/connector-experimental/machineInfo.ts +0 -46
  445. package/connector-experimental/protocol.ts +0 -54
  446. package/connectorRunArtifact.ts +0 -120
  447. package/connectorWebSocketTarget.ts +0 -112
  448. package/core/builtinAgents.ts +0 -209
  449. package/core/config.ts +0 -15
  450. package/core/crypto.ts +0 -51
  451. package/core/generateKeyPairFromSeedV1.ts +0 -15
  452. package/core/generateMainKey.ts +0 -22
  453. package/core/init.ts +0 -41
  454. package/core/localOrigins.ts +0 -8
  455. package/core/password.ts +0 -13
  456. package/core/prefix.ts +0 -23
  457. package/create/editor/transforms/fromMarkdown/index.ts +0 -260
  458. package/create/editor/transforms/fromMarkdown/inline.ts +0 -285
  459. package/create/editor/transforms/fromMarkdown/table.ts +0 -130
  460. package/create/editor/transforms/markdownToSlate.ts +0 -24
  461. package/create/editor/transforms/slateToRenderMarkdown.ts +0 -218
  462. package/create/editor/transforms/slateToSimplifiedMarkdown.ts +0 -224
  463. package/create/editor/transforms/slateToText.ts +0 -33
  464. package/create/editor/utils/slateUtils.ts +0 -233
  465. package/create/space/addSpaceAction.ts +0 -193
  466. package/create/space/category/categoryActions.ts +0 -427
  467. package/create/space/changeSpaceAction.ts +0 -36
  468. package/create/space/constants.ts +0 -8
  469. package/create/space/content/addContentAction.ts +0 -116
  470. package/create/space/content/contentThunks.ts +0 -90
  471. package/create/space/content/deleteContentFromSpaceAction.ts +0 -187
  472. package/create/space/content/deleteMultipleContentAction.ts +0 -112
  473. package/create/space/content/moveContentAction.ts +0 -285
  474. package/create/space/content/updateContentCategoryAction.ts +0 -154
  475. package/create/space/content/updateContentTitleAction.ts +0 -151
  476. package/create/space/content/uploadAndAddFileToSpaceAction.ts +0 -98
  477. package/create/space/contentKeyUtils.ts +0 -117
  478. package/create/space/deleteSpaceAction.ts +0 -276
  479. package/create/space/fetchSpaceAction.ts +0 -70
  480. package/create/space/fetchSpaceSidebarStateAction.ts +0 -26
  481. package/create/space/loadDefaultSpaceAction.ts +0 -57
  482. package/create/space/member/addMemberAction.ts +0 -79
  483. package/create/space/member/fetchUserSpaceMembershipsAction.ts +0 -386
  484. package/create/space/member/memberThunks.ts +0 -47
  485. package/create/space/member/removeMemberAction.ts +0 -67
  486. package/create/space/resolvePreferredSpaceId.ts +0 -113
  487. package/create/space/sidebarVisibleTypes.ts +0 -260
  488. package/create/space/space.locale.ts +0 -1087
  489. package/create/space/spaceAccess.ts +0 -182
  490. package/create/space/spaceCollapsedState.ts +0 -54
  491. package/create/space/spaceKeys.ts +0 -65
  492. package/create/space/spaceSlice.ts +0 -328
  493. package/create/space/spaceThunks.ts +0 -410
  494. package/create/space/types.ts +0 -27
  495. package/create/space/updateSpaceAction.ts +0 -107
  496. package/create/space/utils/permissions.ts +0 -47
  497. package/create/types.ts +0 -21
  498. package/database/actions/agentReadResolution.ts +0 -33
  499. package/database/actions/common.ts +0 -243
  500. package/database/actions/deleteFile.ts +0 -40
  501. package/database/actions/fileContent.ts +0 -125
  502. package/database/actions/patch.ts +0 -155
  503. package/database/actions/read.ts +0 -358
  504. package/database/actions/readAndWait.ts +0 -260
  505. package/database/actions/readRequestManager.ts +0 -120
  506. package/database/actions/readResolution.ts +0 -125
  507. package/database/actions/remove.ts +0 -94
  508. package/database/actions/replication.ts +0 -477
  509. package/database/actions/upload.ts +0 -186
  510. package/database/actions/upsert.ts +0 -56
  511. package/database/actions/write.ts +0 -146
  512. package/database/authority/ownerKey.ts +0 -80
  513. package/database/authority/recordAuthority.ts +0 -67
  514. package/database/authority/userAuthorityRegistry.ts +0 -54
  515. package/database/client/fetchUserData.ts +0 -61
  516. package/database/config.ts +0 -40
  517. package/database/dbActionThunks.ts +0 -1
  518. package/database/dbSlice.ts +0 -149
  519. package/database/fileRing.ts +0 -51
  520. package/database/fileStorage.ts +0 -232
  521. package/database/fileUrl.ts +0 -34
  522. package/database/keys.ts +0 -767
  523. package/database/queryPrefixes.ts +0 -14
  524. package/database/requests.ts +0 -443
  525. package/database/runtimeServerContext.ts +0 -54
  526. package/database/server/authorityStoreTypes.ts +0 -31
  527. package/database/server/cliAuthorityBrokerClient.ts +0 -227
  528. package/database/server/cliAuthorityBrokerServer.ts +0 -283
  529. package/database/server/cliAuthorityBrokerTypes.ts +0 -43
  530. package/database/server/cliAuthorityStoreDriver.ts +0 -98
  531. package/database/server/db.ts +0 -99
  532. package/database/server/dbPath.ts +0 -20
  533. package/database/server/ensureDbOpen.ts +0 -12
  534. package/database/server/legacyServerDb.ts +0 -58
  535. package/database/server/levelAuthorityStore.ts +0 -114
  536. package/database/server/memoryAuthorityStore.ts +0 -133
  537. package/database/server/serverStoreFactory.ts +0 -118
  538. package/database/tenantPlacement.ts +0 -57
  539. package/database/tombstones.ts +0 -52
  540. package/database/userDataMerge.ts +0 -95
  541. package/database/userPreferenceRegister.ts +0 -131
  542. package/database/utils/ulid.ts +0 -1
  543. package/defaultServer.ts +0 -1
  544. package/dialogAttachmentCleanup.ts +0 -151
  545. package/dialogCommands.ts +0 -1120
  546. package/dialogInternalCommandEntries.ts +0 -17
  547. package/docCreateCommands.ts +0 -345
  548. package/docInternalCommandEntries.ts +0 -11
  549. package/docPageHelpers.ts +0 -80
  550. package/docSkillHelpers.ts +0 -67
  551. package/docSpaceHelpers.ts +0 -46
  552. package/globalRecordOperations.ts +0 -258
  553. package/index.ts +0 -78
  554. package/integrations/anthropic/anthropicModels.ts +0 -47
  555. package/integrations/deepseek/models.ts +0 -37
  556. package/integrations/google/models.ts +0 -341
  557. package/integrations/openai/chatCompletionStreamMode.ts +0 -10
  558. package/integrations/openai/filterAndCleanMessages.ts +0 -284
  559. package/integrations/openai/flexTier.ts +0 -102
  560. package/integrations/openai/generateOpenAIRequestBody.ts +0 -271
  561. package/integrations/openai/generateResponseRequestBody.ts +0 -77
  562. package/integrations/openai/models.ts +0 -271
  563. package/integrations/openai/providerBodyCompatibility.ts +0 -23
  564. package/integrations/openai/responsesHelpers.ts +0 -297
  565. package/integrations/x-reader/types.ts +0 -109
  566. package/integrations/xai/models.ts +0 -13
  567. package/integrations/xhs-reader/redaction.ts +0 -68
  568. package/integrations/xhs-reader/types.ts +0 -277
  569. package/integrations/xhs-reader/url.ts +0 -80
  570. package/internalCommandEntries.ts +0 -18
  571. package/localRuntimeAuthority.ts +0 -182
  572. package/localRuntimeDb.ts +0 -26
  573. package/machineCommands.ts +0 -307
  574. package/machineDaemonCommands.ts +0 -185
  575. package/machineHeartbeatCommands.ts +0 -30
  576. package/machineStatusCommands.ts +0 -95
  577. package/machineWatchCommands.ts +0 -41
  578. package/machineWsPromptMaterialization.ts +0 -89
  579. package/machineWsRunDispatch.ts +0 -695
  580. package/machineWsSession.ts +0 -213
  581. package/memoryCommands.ts +0 -253
  582. package/memoryInternalCommandEntries.ts +0 -9
  583. package/offlineMarxistsAgentCommand.ts +0 -316
  584. package/qoderUsageProbe.ts +0 -252
  585. package/render/contentIcon/types.ts +0 -167
  586. package/render/page/createPageAction.ts +0 -183
  587. package/render/page/docSlice.ts +0 -495
  588. package/render/page/types.ts +0 -19
  589. package/render/table/activityColumns.ts +0 -6
  590. package/render/table/createTableAction.ts +0 -274
  591. package/render/table/deleteTableAction.ts +0 -193
  592. package/render/table/fetchAndCacheTableRows.ts +0 -174
  593. package/render/table/tableSlice.ts +0 -1167
  594. package/render/table/toolValueUtils.ts +0 -363
  595. package/render/table/types.ts +0 -262
  596. package/render/table/utils/tableSerialization.ts +0 -50
  597. package/runtimeDoctorCommands.ts +0 -174
  598. package/runtimeModeArgs.ts +0 -33
  599. package/scriptCommandEntries.ts +0 -66
  600. package/secretScan.ts +0 -31
  601. package/server/handlers/agentRun/types.ts +0 -105
  602. package/share/action.ts +0 -225
  603. package/share/helpers.ts +0 -302
  604. package/share/keys.ts +0 -243
  605. package/share/publicSharePolicy.ts +0 -27
  606. package/share/shareSlice.ts +0 -53
  607. package/share/types.ts +0 -100
  608. package/systemInternalCommandEntries.ts +0 -65
  609. package/tableCommands.ts +0 -453
  610. package/tui/readlineWorkspace.ts +0 -210
  611. package/tui/session.ts +0 -554
  612. package/updateCommands.ts +0 -134
  613. package/workflowInternalCommandEntries.ts +0 -10
package/ai/types.ts DELETED
@@ -1,58 +0,0 @@
1
- // packages/ai/types.ts
2
-
3
- export type ModeType =
4
- | "text"
5
- | "image"
6
- | "stream"
7
- | "audio"
8
- | "speech"
9
- | "surf"
10
- | "vision";
11
-
12
- export interface PromptFormData {
13
- name: string;
14
- content: string;
15
- category?: string;
16
- tags?: string[];
17
- }
18
-
19
- export interface Contexts {
20
- // High priority: context from the user's current input for this request.
21
- currentInputContext?: string | null;
22
-
23
- // Medium priority: references from past conversation messages.
24
- historyContext?: string | null;
25
-
26
- // Specific rules and processes for the bot/agent.
27
- botInstructionsContext?: string | null;
28
-
29
- // General knowledge base documents for lookup.
30
- botKnowledgeContext?: string | null;
31
-
32
- // 🔹 新增:用户级通用提示词
33
- userGlobalPrompt?: string;
34
-
35
- /** 当前正在编辑的对象描述(表格 / 页面 / 文章等),由 buildEditingContextSummary 构造 */
36
- editingContext?: string | null;
37
-
38
- /** 当前对话里最近一次 app 相关工具调用提炼出的工作记忆,不依赖右侧 editing target */
39
- appWorkingMemory?: string | null;
40
-
41
- /** 当前所在的 Space 信息(Agent 所处的工作台),包含标题、描述等 */
42
- spaceContext?: string | null;
43
-
44
- /** 用户偏好与自动化边界(tone / capture / read policy) */
45
- userPolicyContext?: string | null;
46
-
47
- /** 长期记忆召回层,由服务端 memory API 基于当前用户、space、agent 和输入生成 */
48
- memoryOverlay?: string | null;
49
-
50
- /** 对话增量摘要:已压缩的历史消息概要 */
51
- dialogSummary?: string | null;
52
-
53
- /** 主动工作摘要:阶段性沉淀,不代表原始消息已被裁剪 */
54
- proactiveSummary?: string | null;
55
-
56
- /** 压缩消息中提取的引用 Key */
57
- referenceKeys?: string[];
58
- }
@@ -1,323 +0,0 @@
1
- /**
2
- * Workflow Executor
3
- *
4
- * Deterministic execution engine — zero LLM orchestration tokens.
5
- * Each step runs directly without asking LLM "what to do next".
6
- * Only "llm" type steps call the model (single call, no tool loop).
7
- */
8
-
9
- import { createAsyncThunk } from "@reduxjs/toolkit";
10
- import type { RootState } from "../../app/store";
11
- import { runLlm } from "../agent/agentSlice";
12
- import { toolExecutors } from "../tools";
13
- import {
14
- setWorkflow,
15
- updateStep,
16
- incrementStepsExecuted,
17
- incrementFailedSteps,
18
- } from "./workflowSlice";
19
- import type {
20
- WorkflowDefinition,
21
- WorkflowStep,
22
- WorkflowToolStep,
23
- WorkflowLlmStep,
24
- WorkflowParallelStep,
25
- WorkflowStepState,
26
- WorkflowResult,
27
- } from "./workflowTypes";
28
-
29
- // --- Template Resolution ---
30
-
31
- /**
32
- * Resolves {{steps.<id>.result}} and {{steps.<id>.result[N]}} templates.
33
- * Walks nested objects/arrays recursively.
34
- */
35
- function resolveTemplates(
36
- value: any,
37
- results: Record<string, any>
38
- ): any {
39
- if (typeof value === "string") {
40
- return value.replace(
41
- /\{\{steps\.([^.}\s]+)\.result(\[\d+\])?\}\}/g,
42
- (match, stepId, indexPart) => {
43
- const stepResult = results[stepId];
44
- if (stepResult === undefined) {
45
- console.warn(`Workflow: cannot resolve {{steps.${stepId}.result}} — step not completed yet`);
46
- return match;
47
- }
48
- let resolved = stepResult;
49
- if (indexPart) {
50
- const idx = parseInt(indexPart.slice(1, -1), 10);
51
- if (Array.isArray(resolved) && idx < resolved.length) {
52
- resolved = resolved[idx];
53
- } else {
54
- console.warn(`Workflow: index ${idx} out of range for steps.${stepId}.result`);
55
- return match;
56
- }
57
- }
58
- return typeof resolved === "object" ? JSON.stringify(resolved) : String(resolved);
59
- }
60
- );
61
- }
62
- if (Array.isArray(value)) {
63
- return value.map((v) => resolveTemplates(v, results));
64
- }
65
- if (value !== null && typeof value === "object") {
66
- return Object.fromEntries(
67
- Object.entries(value).map(([k, v]) => [k, resolveTemplates(v, results)])
68
- );
69
- }
70
- return value;
71
- }
72
-
73
- // --- Condition Evaluation (safe allowlist interpreter) ---
74
-
75
- /**
76
- * Validates that an expression contains ONLY:
77
- * - steps.<identifier> property paths
78
- * - comparison operators: === !== > < >= <=
79
- * - logical operators: && || !
80
- * - string literals, number literals, boolean/null keywords
81
- * - parentheses and whitespace
82
- *
83
- * Strategy: substitute every safe token with a placeholder, then assert
84
- * nothing else remains. This allowlist approach is far more robust than a
85
- * blocklist, which can be bypassed with Unicode escapes or bracket notation.
86
- */
87
- function isSafeConditionExpression(expr: string): boolean {
88
- let s = expr.trim();
89
- if (!s) return false;
90
-
91
- // 1. Replace double/single-quoted string literals (no newlines inside)
92
- s = s.replace(/"[^"\n\\]*(?:\\.[^"\n\\]*)*"/g, "0");
93
- s = s.replace(/'[^'\n\\]*(?:\\.[^'\n\\]*)*/g, "0");
94
-
95
- // 2. Replace number literals (int / float)
96
- s = s.replace(/\b\d+(?:\.\d+)?\b/g, "0");
97
-
98
- // 3. Replace allowed keywords
99
- s = s.replace(/\b(true|false|null|undefined)\b/g, "0");
100
-
101
- // 4. Replace steps.<dotted-path> (e.g. steps.fetchData.output)
102
- s = s.replace(/\bsteps\.[a-zA-Z_][a-zA-Z0-9_.]*\b/g, "0");
103
-
104
- // 5. What's left should only be operators, parens, whitespace
105
- // Allowed characters: 0 (placeholder) space ( ) ! & | = < >
106
- return /^[0\s()!&|=<>]+$/.test(s);
107
- }
108
-
109
- /**
110
- * Safely resolves a dotted property path like "steps.fetchData.output"
111
- * against the given results object. Returns undefined for any unknown path.
112
- */
113
- function resolvePath(path: string, results: Record<string, any>): unknown {
114
- // path must be "steps.<segment>[.<segment>...]"
115
- const parts = path.split(".");
116
- if (parts[0] !== "steps" || parts.length < 2) return undefined;
117
- let cur: any = results;
118
- for (let i = 1; i < parts.length; i++) {
119
- if (cur === null || cur === undefined || typeof cur !== "object") return undefined;
120
- cur = cur[parts[i]];
121
- }
122
- return cur;
123
- }
124
-
125
- /**
126
- * Evaluates a condition expression against step results.
127
- *
128
- * Uses an allowlist validator to guarantee the expression contains nothing
129
- * but property lookups, comparison/logical operators, and literals before
130
- * delegating to the JS engine. This eliminates the code-execution surface
131
- * that a keyword blocklist cannot reliably close.
132
- */
133
- function evaluateCondition(
134
- expression: string,
135
- results: Record<string, any>
136
- ): boolean {
137
- if (!isSafeConditionExpression(expression)) {
138
- console.warn(
139
- `Workflow: condition expression rejected by allowlist: "${expression}"`
140
- );
141
- return false;
142
- }
143
- try {
144
- // At this point the expression has been validated to contain only safe
145
- // tokens. We substitute all steps.* paths with their runtime values so
146
- // the final eval string never needs to reference external globals.
147
- const resolved = expression.replace(
148
- /\bsteps\.[a-zA-Z_][a-zA-Z0-9_.]*\b/g,
149
- (match) => JSON.stringify(resolvePath(match, results))
150
- );
151
- // eslint-disable-next-line no-new-func
152
- const fn = new Function(`"use strict"; return !!(${resolved})`);
153
- return fn();
154
- } catch (e) {
155
- console.warn(`Workflow: condition eval failed: "${expression}"`, e);
156
- return false;
157
- }
158
- }
159
-
160
-
161
-
162
- /**
163
- * Executes `fn` up to `maxRetries + 1` times total.
164
- * Throws the last error if all attempts fail.
165
- */
166
- async function executeWithRetry<T>(
167
- fn: () => Promise<T>,
168
- maxRetries: number
169
- ): Promise<T> {
170
- let lastError: any;
171
- for (let attempt = 0; attempt <= maxRetries; attempt++) {
172
- try {
173
- return await fn();
174
- } catch (err) {
175
- lastError = err;
176
- }
177
- }
178
- throw lastError;
179
- }
180
-
181
- // --- Single Step Executors ---
182
-
183
- async function executeToolStep(
184
- step: WorkflowToolStep,
185
- results: Record<string, any>,
186
- thunkApi: any
187
- ): Promise<any> {
188
- const executor = toolExecutors[step.tool];
189
- if (!executor) throw new Error(`Workflow: unknown tool "${step.tool}"`);
190
- const resolvedArgs = resolveTemplates(step.args, results);
191
- const result = await executor(resolvedArgs, thunkApi);
192
- return result?.rawData ?? result;
193
- }
194
-
195
- async function executeLlmStep(
196
- step: WorkflowLlmStep,
197
- results: Record<string, any>,
198
- thunkApi: any
199
- ): Promise<any> {
200
- const { dispatch } = thunkApi;
201
- const resolvedPrompt = resolveTemplates(step.prompt, results);
202
- const result = await dispatch(
203
- runLlm({
204
- content: resolvedPrompt,
205
- isStreaming: false,
206
- ...(step.model && { modelOverride: step.model }),
207
- })
208
- ).unwrap();
209
- return result;
210
- }
211
-
212
- async function executeParallelStep(
213
- step: WorkflowParallelStep,
214
- results: Record<string, any>,
215
- thunkApi: any
216
- ): Promise<Record<string, any>> {
217
- const subResults = await Promise.all(
218
- step.steps.map(async (sub) => {
219
- const subResult =
220
- sub.type === "tool"
221
- ? await executeToolStep(sub as WorkflowToolStep, results, thunkApi)
222
- : await executeLlmStep(sub as WorkflowLlmStep, results, thunkApi);
223
- return [sub.id, subResult] as [string, any];
224
- })
225
- );
226
- return Object.fromEntries(subResults);
227
- }
228
-
229
- // --- Main Executor Thunk ---
230
-
231
- export const runWorkflow = createAsyncThunk<
232
- WorkflowResult,
233
- { definition: WorkflowDefinition; dialogKey?: string },
234
- { state: RootState }
235
- >("workflow/run", async ({ definition }, thunkApi) => {
236
- const { dispatch } = thunkApi;
237
-
238
- // Initialize Redux state for UI visibility
239
- const initialStepStates: WorkflowStepState[] = definition.steps.map((s) => ({
240
- id: s.id,
241
- title: s.title,
242
- type: s.type,
243
- status: "pending",
244
- }));
245
- dispatch(setWorkflow({ title: definition.title, steps: initialStepStates }));
246
-
247
- const results: Record<string, any> = {};
248
- // Set of step IDs to skip (controlled by condition steps)
249
- const skippedIds = new Set<string>();
250
-
251
- for (const step of definition.steps) {
252
- if (skippedIds.has(step.id)) {
253
- dispatch(updateStep({ id: step.id, updates: { status: "skipped" } }));
254
- continue;
255
- }
256
-
257
- dispatch(updateStep({ id: step.id, updates: { status: "in-progress" } }));
258
-
259
- try {
260
- let result: any;
261
-
262
- if (step.type === "tool" || step.type === "llm") {
263
- const retryable = step as WorkflowToolStep | WorkflowLlmStep;
264
- const policy = retryable.onError ?? "stop";
265
- const maxRetries =
266
- policy === "retry" ? ((retryable as WorkflowToolStep).retryCount ?? 1) : 0;
267
-
268
- result = await executeWithRetry(
269
- () =>
270
- step.type === "tool"
271
- ? executeToolStep(step as WorkflowToolStep, results, thunkApi)
272
- : executeLlmStep(step as WorkflowLlmStep, results, thunkApi),
273
- maxRetries
274
- );
275
-
276
- } else if (step.type === "parallel") {
277
- result = await executeParallelStep(step, results, thunkApi);
278
- // Flatten sub-step results into the top-level map so subsequent steps
279
- // can reference them directly via {{steps.<subId>.result}}.
280
- for (const [subId, subResult] of Object.entries(
281
- result as Record<string, any>
282
- )) {
283
- results[subId] = subResult;
284
- }
285
-
286
- } else if (step.type === "condition") {
287
- const passed = evaluateCondition(step.check, results);
288
- result = { passed, check: step.check };
289
- const active = passed ? step.ifTrue : step.ifFalse;
290
- const inactive = passed ? step.ifFalse : step.ifTrue;
291
- // Mark steps not on the active branch as skipped
292
- if (inactive) inactive.forEach((id) => skippedIds.add(id));
293
- // Steps on the active branch are explicitly NOT skipped
294
- if (active) active.forEach((id) => skippedIds.delete(id));
295
- }
296
-
297
- results[step.id] = result;
298
- dispatch(updateStep({ id: step.id, updates: { status: "completed", result } }));
299
- dispatch(incrementStepsExecuted());
300
-
301
- } catch (err: any) {
302
- dispatch(incrementFailedSteps());
303
- dispatch(
304
- updateStep({ id: step.id, updates: { status: "failed", error: err?.message ?? String(err) } })
305
- );
306
-
307
- const policy = (step as WorkflowToolStep | WorkflowLlmStep).onError ?? "stop";
308
-
309
- if (policy === "stop") {
310
- return {
311
- success: false,
312
- results,
313
- failedStep: step.id,
314
- error: err?.message ?? String(err),
315
- };
316
- }
317
- // skip / retry-exhausted: record null and continue
318
- results[step.id] = null;
319
- }
320
- }
321
-
322
- return { success: true, results };
323
- });
@@ -1,73 +0,0 @@
1
- import { type PayloadAction, createSlice } from "@reduxjs/toolkit";
2
- import type { RootState } from "../../app/store";
3
- import type {
4
- WorkflowStepState,
5
- WorkflowExecutionStats,
6
- } from "./workflowTypes";
7
-
8
- interface WorkflowSliceState {
9
- title: string | null;
10
- steps: WorkflowStepState[];
11
- stats: WorkflowExecutionStats;
12
- }
13
-
14
- const initialState: WorkflowSliceState = {
15
- title: null,
16
- steps: [],
17
- stats: {
18
- startTime: null,
19
- totalStepsExecuted: 0,
20
- failedSteps: 0,
21
- },
22
- };
23
-
24
- const workflowSlice = createSlice({
25
- name: "workflow",
26
- initialState,
27
- reducers: {
28
- setWorkflow: (
29
- state,
30
- action: PayloadAction<{ title: string; steps: WorkflowStepState[] }>
31
- ) => {
32
- state.title = action.payload.title;
33
- state.steps = action.payload.steps;
34
- state.stats = { startTime: Date.now(), totalStepsExecuted: 0, failedSteps: 0 };
35
- },
36
-
37
- updateStep: (
38
- state,
39
- action: PayloadAction<{ id: string; updates: Partial<WorkflowStepState> }>
40
- ) => {
41
- const step = state.steps.find((s) => s.id === action.payload.id);
42
- if (step) Object.assign(step, action.payload.updates);
43
- },
44
-
45
- incrementStepsExecuted: (state) => {
46
- state.stats.totalStepsExecuted += 1;
47
- },
48
-
49
- incrementFailedSteps: (state) => {
50
- state.stats.failedSteps += 1;
51
- },
52
-
53
- clearWorkflow: () => initialState,
54
- },
55
- });
56
-
57
- export const {
58
- setWorkflow,
59
- updateStep,
60
- incrementStepsExecuted,
61
- incrementFailedSteps,
62
- clearWorkflow,
63
- } = workflowSlice.actions;
64
-
65
- export const selectWorkflowSteps = (state: RootState) => state.workflow.steps;
66
- export const selectWorkflowTitle = (state: RootState) => state.workflow.title;
67
- export const selectWorkflowStats = (state: RootState) => state.workflow.stats;
68
- export const selectPendingSteps = (state: RootState) =>
69
- state.workflow.steps.filter((s) => s.status === "pending");
70
- export const selectCompletedSteps = (state: RootState) =>
71
- state.workflow.steps.filter((s) => s.status === "completed");
72
-
73
- export default workflowSlice.reducer;
@@ -1,106 +0,0 @@
1
- // Workflow: deterministic execution engine, zero LLM orchestration tokens.
2
- // LLM calls createWorkflow once to define steps; engine executes without further LLM involvement.
3
- // Only "llm" type steps invoke the model; all others run as pure tool calls.
4
-
5
- export type WorkflowStepStatus = "pending" | "in-progress" | "completed" | "failed" | "skipped";
6
-
7
- export type OnErrorPolicy = "stop" | "skip" | "retry";
8
-
9
- // --- Step Types ---
10
-
11
- export interface WorkflowToolStep {
12
- id: string;
13
- type: "tool";
14
- title?: string;
15
- /** Registered tool name */
16
- tool: string;
17
- /** Args supporting {{steps.<id>.result}} and {{steps.<id>.result[N]}} templates */
18
- args: Record<string, any>;
19
- onError?: OnErrorPolicy;
20
- retryCount?: number;
21
- }
22
-
23
- export interface WorkflowLlmStep {
24
- id: string;
25
- type: "llm";
26
- title?: string;
27
- /** Prompt supporting {{steps.<id>.result}} templates */
28
- prompt: string;
29
- model?: string;
30
- onError?: OnErrorPolicy;
31
- }
32
-
33
- /** All steps inside run concurrently via Promise.all */
34
- export interface WorkflowParallelStep {
35
- id: string;
36
- type: "parallel";
37
- title?: string;
38
- steps: (WorkflowToolStep | WorkflowLlmStep)[];
39
- }
40
-
41
- /**
42
- * Pure JS condition check — no LLM.
43
- * `check` is a JS expression string evaluated with step results in scope.
44
- *
45
- * Supported syntax (allowlist):
46
- * - Dotted property access: `steps.<stepId>.<property>[.<nested>...]`
47
- * - Comparison operators: === !== > < >= <=
48
- * - Logical operators: && || !
49
- * - String / number / boolean / null literals
50
- * - Parentheses for grouping
51
- *
52
- * Note: bracket notation (`steps['id']`) and `.result` wrappers are NOT supported.
53
- * The value stored for each step is the raw executor return value, accessed directly:
54
- * e.g. `"steps.validate.isValid === true"`
55
- * `"steps.score.value >= 80 && steps.flag.ok !== false"`
56
- */
57
- export interface WorkflowConditionStep {
58
- id: string;
59
- type: "condition";
60
- title?: string;
61
- check: string;
62
- /** Step IDs to execute when check is truthy (skip others) */
63
- ifTrue?: string[];
64
- /** Step IDs to execute when check is falsy (skip others) */
65
- ifFalse?: string[];
66
- }
67
-
68
- export type WorkflowStep =
69
- | WorkflowToolStep
70
- | WorkflowLlmStep
71
- | WorkflowParallelStep
72
- | WorkflowConditionStep;
73
-
74
- // --- Workflow Definition ---
75
-
76
- export interface WorkflowDefinition {
77
- title: string;
78
- steps: WorkflowStep[];
79
- }
80
-
81
- // --- Execution State (stored in Redux) ---
82
-
83
- export interface WorkflowStepState {
84
- id: string;
85
- title?: string;
86
- type: WorkflowStep["type"];
87
- status: WorkflowStepStatus;
88
- result?: any;
89
- error?: string;
90
- }
91
-
92
- export interface WorkflowExecutionStats {
93
- startTime: number | null;
94
- totalStepsExecuted: number;
95
- failedSteps: number;
96
- }
97
-
98
- // --- Result ---
99
-
100
- export interface WorkflowResult {
101
- success: boolean;
102
- /** Results keyed by step id */
103
- results: Record<string, any>;
104
- failedStep?: string;
105
- error?: string;
106
- }
@@ -1,73 +0,0 @@
1
- // 文件路径: app/actions/syncAppRecord.ts
2
- //
3
- // 将 app record 同步到客户端本地 DB + 所有 syncServers。
4
- // 适用场景:
5
- // - 应用部署成功后(currentServer 已写入,syncServers 还没有)
6
- // - 应用可见性/元数据更新后
7
- //
8
- // 不写 currentServer(它在 deploy/update 时已由服务端直接写入)。
9
-
10
- import type { AppDispatch, RootState } from "../store";
11
- import {
12
- selectCurrentServer,
13
- selectSyncServers,
14
- } from "../settings/settingSlice";
15
- import { DataType } from "../../create/types";
16
- import { noloWriteRequest } from "../../database/requests";
17
-
18
- interface SyncAppRecordOptions {
19
- includeCurrentServer?: boolean;
20
- }
21
-
22
- export const syncAppRecord =
23
- (
24
- appKey: string,
25
- appRecord: Record<string, any>,
26
- options: SyncAppRecordOptions = {}
27
- ) =>
28
- async (_dispatch: AppDispatch, getState: () => RootState, extra: any): Promise<void> => {
29
- if (!appKey || !appRecord) return;
30
-
31
- const state = getState();
32
- const currentServer = selectCurrentServer(state);
33
- const syncServers = selectSyncServers(state) ?? [];
34
- const { db: clientDb } = extra ?? {};
35
-
36
- // This path is intentionally still keyed off deployment settings instead of
37
- // the shared runtime helpers. App records are mixed local/remote state:
38
- // local cache for local-first reads, plus explicit fan-out to deploy peers.
39
- // Keep this separate from generic content CRUD until app local-dev/deploy
40
- // ownership is redesigned in the later app phase.
41
-
42
- const normalizedRecord = {
43
- ...appRecord,
44
- dbKey: appKey,
45
- type: DataType.APP,
46
- };
47
-
48
- // 1. 写本地 DB(供离线读 / local-first 查询)
49
- if (clientDb) {
50
- await clientDb.put(appKey, normalizedRecord).catch((err: unknown) => {
51
- console.warn("[syncAppRecord] local DB write failed:", appKey, err);
52
- });
53
- }
54
-
55
- // 2. 推送到目标服务器。
56
- // 默认跳过 currentServer(deploy/update 主写路径已在当前 server 完成),
57
- // 但在“远端回读后本地收敛”场景下可以显式要求把 currentServer 也补齐。
58
- const rawServers = options.includeCurrentServer
59
- ? [currentServer, ...syncServers]
60
- : syncServers.filter((s) => s !== currentServer);
61
- const serversToSync = [...new Set(rawServers.filter((s): s is string => !!s))];
62
- if (serversToSync.length === 0) return;
63
-
64
- await Promise.allSettled(
65
- serversToSync.map((server) =>
66
- noloWriteRequest(
67
- server,
68
- { data: normalizedRecord, customKey: appKey, userId: normalizedRecord.userId },
69
- state
70
- )
71
- )
72
- );
73
- };
@@ -1,21 +0,0 @@
1
- export const ANIMATION_SETS = [
2
- ["·", "◇", "◆", "◈", "❖"], // 菱形展开
3
- ["·", "+", "✚", "✛", "✜"], // 十字扩展
4
- ["✾", "❀", "✿", "❁", "❃"], // 开花
5
- ["✦", "✧", "✩", "✪", "✫"], // 星辰
6
- ["·", "❄", "❅", "❆", "❉"], // 雪花
7
- ["◌", "⊚", "⊛", "⊝", "◎"], // 螺旋
8
- ["☙", "❦", "❧", "⸙", "⸎"], // 禅意
9
- ] as const;
10
-
11
- export const ANIMATION_SET_NAMES = [
12
- "菱形展开",
13
- "十字扩展",
14
- "花开富贵",
15
- "星辰大海",
16
- "冬日雪花",
17
- "螺旋上升",
18
- "禅意时刻",
19
- ];
20
-
21
- export const DEFAULT_ANIMATION_SET_INDEX = 0;