@promptbook/cli 0.113.0-8 → 0.113.0-9

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 (575) hide show
  1. package/apps/agents-server/next.config.ts +6 -3
  2. package/apps/agents-server/src/app/admin/resource-monitor/page.tsx +456 -0
  3. package/apps/agents-server/src/app/admin/task-manager/TaskManagerClient.tsx +14 -2
  4. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskLogActions.tsx +150 -0
  5. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskRow.tsx +58 -18
  6. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskTerminalDialog.tsx +125 -0
  7. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTasksCard.tsx +3 -1
  8. package/apps/agents-server/src/app/admin/task-manager/page.tsx +3 -2
  9. package/apps/agents-server/src/app/admin/update/AdvancedOriginRepositoryPanel.tsx +14 -9
  10. package/apps/agents-server/src/app/admin/update/AutomaticSelfUpdateConfigurationCard.tsx +93 -0
  11. package/apps/agents-server/src/app/admin/update/CurrentDeploymentCard.tsx +15 -13
  12. package/apps/agents-server/src/app/admin/update/CustomCommitPicker.tsx +10 -10
  13. package/apps/agents-server/src/app/admin/update/InstalledVersionsCard.tsx +112 -0
  14. package/apps/agents-server/src/app/admin/update/PendingCommitsCard.tsx +9 -8
  15. package/apps/agents-server/src/app/admin/update/TargetEnvironmentCard.tsx +14 -14
  16. package/apps/agents-server/src/app/admin/update/UpdateClient.tsx +18 -8
  17. package/apps/agents-server/src/app/admin/update/UpdateDatabaseMigrationsPanel.tsx +305 -0
  18. package/apps/agents-server/src/app/admin/update/UpdateJobCard.tsx +29 -8
  19. package/apps/agents-server/src/app/admin/update/UpdateOverview.ts +68 -0
  20. package/apps/agents-server/src/app/admin/update/updatePageCardClassName.ts +6 -0
  21. package/apps/agents-server/src/app/admin/update/useUpdateClientState.ts +241 -7
  22. package/apps/agents-server/src/app/agents/[agentName]/AgentChatWrapper.tsx +17 -3
  23. package/apps/agents-server/src/app/agents/[agentName]/chat/CanonicalAgentChatSurface.tsx +6 -2
  24. package/apps/agents-server/src/app/api/admin/chat-tasks/[taskId]/terminal/route.ts +52 -0
  25. package/apps/agents-server/src/app/api/admin/update/route.ts +55 -8
  26. package/apps/agents-server/src/app/api/admin/update/versions/route.ts +34 -0
  27. package/apps/agents-server/src/app/api/auth/shibboleth/acs/route.ts +4 -2
  28. package/apps/agents-server/src/app/api/auth/shibboleth/login/route.ts +3 -1
  29. package/apps/agents-server/src/app/api/auth/shibboleth/metadata/route.ts +5 -2
  30. package/apps/agents-server/src/app/api/auth/shibboleth/status/route.ts +5 -2
  31. package/apps/agents-server/src/app/layout.tsx +39 -25
  32. package/apps/agents-server/src/components/AgentAvatar/AgentAvatar.tsx +1 -1
  33. package/apps/agents-server/src/components/AgentAvatar/DefaultAgentAvatarVisualProvider.tsx +1 -1
  34. package/apps/agents-server/src/components/Header/Header.tsx +16 -3
  35. package/apps/agents-server/src/components/Header/HeaderTypes.ts +6 -0
  36. package/apps/agents-server/src/components/Header/buildAgentMenuStructure.tsx +6 -4
  37. package/apps/agents-server/src/components/Header/buildHeaderSystemMenuItems.ts +13 -1
  38. package/apps/agents-server/src/components/Homepage/useAgentsListState.ts +1 -1
  39. package/apps/agents-server/src/components/LayoutWrapper/LayoutWrapper.tsx +21 -5
  40. package/apps/agents-server/src/constants/defaultAgentAvatarVisual.ts +4 -3
  41. package/apps/agents-server/src/database/metadataDefaults.ts +1 -1
  42. package/apps/agents-server/src/database/migrate.ts +25 -1
  43. package/apps/agents-server/src/database/migratePrefix.ts +24 -0
  44. package/apps/agents-server/src/database/runDatabaseMigrations.ts +9 -1
  45. package/apps/agents-server/src/instrumentation-node.ts +15 -0
  46. package/apps/agents-server/src/languages/ServerTranslationKeys.ts +1 -0
  47. package/apps/agents-server/src/languages/translations/czech.yaml +1 -0
  48. package/apps/agents-server/src/languages/translations/english.yaml +1 -0
  49. package/apps/agents-server/src/{components/Homepage → utils/agentOrganization}/hiddenFolders.ts +49 -29
  50. package/apps/agents-server/src/utils/chat/createAttachmentAwareCitationLabelResolver.ts +147 -0
  51. package/apps/agents-server/src/utils/chatTasksAdmin.ts +1 -1
  52. package/apps/agents-server/src/utils/externalChatRunner/processExternalUserChatJob.ts +11 -5
  53. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/GetAdminChatTasksData.ts +12 -0
  54. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskSqlQuery.ts +264 -0
  55. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskSqlValues.ts +35 -0
  56. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskTimeUtilities.ts +30 -0
  57. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/compareAdminChatTasks.ts +135 -0
  58. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/createAdminChatTaskCounters.ts +29 -0
  59. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/filterAdminChatTasks.ts +78 -0
  60. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/getAdminChatTasksViaClientSql.ts +62 -0
  61. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/getAdminChatTasksViaSupabaseQuery.ts +29 -0
  62. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/loadAdminChatTaskFallbackData.ts +193 -0
  63. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/mapAdminChatTaskFallbackRows.ts +99 -0
  64. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/mapAdminChatTaskSqlRows.ts +94 -0
  65. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks.ts +4 -947
  66. package/apps/agents-server/src/utils/getAdminChatTasksResponse/mapVpsSelfUpdateJobToAdminChatTask.ts +18 -5
  67. package/apps/agents-server/src/utils/getAdminChatTasksResponse.ts +57 -21
  68. package/apps/agents-server/src/utils/localChatRunner/processLocalUserChatJob.ts +20 -5
  69. package/apps/agents-server/src/utils/pagePreviewBrowserSessions.ts +13 -1
  70. package/apps/agents-server/src/utils/resourceMonitor/formatResourceMonitorValue.ts +50 -0
  71. package/apps/agents-server/src/utils/resourceMonitor/readCpuResourceUsage.ts +75 -0
  72. package/apps/agents-server/src/utils/resourceMonitor/readDiskResourceUsage.ts +42 -0
  73. package/apps/agents-server/src/utils/resourceMonitor/readMemoryResourceUsage.ts +28 -0
  74. package/apps/agents-server/src/utils/resourceMonitor/readNetworkResourceUsage.ts +271 -0
  75. package/apps/agents-server/src/utils/resourceMonitor/readServerResourceMonitorSnapshot.ts +47 -0
  76. package/apps/agents-server/src/utils/resourceMonitor/resolveServerResourceWarningStatus.ts +72 -0
  77. package/apps/agents-server/src/utils/resourceMonitor/resourceMonitorConstants.ts +29 -0
  78. package/apps/agents-server/src/utils/resourceMonitor/resourceMonitorTypes.ts +155 -0
  79. package/apps/agents-server/src/utils/resourceMonitor/waitForResourceMonitorSample.ts +11 -0
  80. package/apps/agents-server/src/utils/shibbolethAuthentication/createShibbolethSamlClient.ts +35 -0
  81. package/apps/agents-server/src/utils/shibbolethAuthentication/createShibbolethServiceProviderMetadataXml.ts +25 -0
  82. package/apps/agents-server/src/utils/shibbolethAuthentication/extractShibbolethProfileAttributes.ts +173 -0
  83. package/apps/agents-server/src/utils/shibbolethAuthentication/fetchIdentityProviderMetadataXml.ts +21 -0
  84. package/apps/agents-server/src/utils/shibbolethAuthentication/findOrCreateShibbolethUser.ts +323 -0
  85. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethAuthenticationAttemptTableName.ts +13 -0
  86. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethRequestDetails.ts +19 -0
  87. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethUserIdentityTableName.ts +13 -0
  88. package/apps/agents-server/src/utils/shibbolethAuthentication/parseIdentityProviderMetadataXml.ts +110 -0
  89. package/apps/agents-server/src/utils/shibbolethAuthentication/recordShibbolethAuthenticationAttempt.ts +57 -0
  90. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethAuthenticationConfiguration.ts +78 -0
  91. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethPublicRequestUrl.ts +101 -0
  92. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethServiceProviderUrls.ts +63 -0
  93. package/apps/agents-server/src/utils/shibbolethAuthentication/sanitizeShibbolethRelayState.ts +17 -0
  94. package/apps/agents-server/src/utils/shibbolethAuthentication/shibbolethAuthenticationConstants.ts +62 -0
  95. package/apps/agents-server/src/utils/shibbolethAuthentication/shibbolethAuthenticationTypes.ts +105 -0
  96. package/apps/agents-server/src/utils/shibbolethAuthentication.ts +25 -957
  97. package/apps/agents-server/src/utils/taskTerminal/resolveAdminTaskTerminalSession.ts +322 -0
  98. package/apps/agents-server/src/utils/taskTerminal/runWithTaskTerminalCapture.ts +134 -0
  99. package/apps/agents-server/src/utils/taskTerminal/taskTerminalLog.ts +360 -0
  100. package/apps/agents-server/src/utils/userChat/finalizeUserChatJob.ts +16 -0
  101. package/apps/agents-server/src/utils/userChatTimeout/userChatTimeoutStore/updateUserChatTimeoutTerminalState.ts +3 -0
  102. package/apps/agents-server/src/utils/userChatTimeout/userChatTimeoutWorker.ts +4 -1
  103. package/apps/agents-server/src/utils/vpsConfiguration.ts +4 -0
  104. package/apps/agents-server/src/utils/vpsSelfUpdate/deleteVpsSelfUpdateInstalledVersion.ts +81 -0
  105. package/apps/agents-server/src/utils/vpsSelfUpdate/listVpsSelfUpdateCandidateCommits.ts +217 -0
  106. package/apps/agents-server/src/utils/vpsSelfUpdate/readPersistedVpsSelfUpdateJob.ts +310 -0
  107. package/apps/agents-server/src/utils/vpsSelfUpdate/readVpsSelfUpdateOverview.ts +178 -0
  108. package/apps/agents-server/src/utils/vpsSelfUpdate/resolveVpsSelfUpdateJobForOverview.ts +42 -0
  109. package/apps/agents-server/src/utils/vpsSelfUpdate/startVpsSelfUpdate.ts +201 -0
  110. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateAutomaticConfiguration.ts +152 -0
  111. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateConfiguration.ts +81 -0
  112. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateCron.ts +357 -0
  113. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateEnvironment.ts +120 -0
  114. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateInstalledVersions.ts +162 -0
  115. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobConstants.ts +15 -0
  116. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobHistory.ts +387 -0
  117. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobIdentity.ts +26 -0
  118. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateOriginRepository.ts +90 -0
  119. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateRepository.ts +286 -0
  120. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateScheduler.ts +191 -0
  121. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateStateFiles.ts +197 -0
  122. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateTypes.ts +452 -0
  123. package/apps/agents-server/src/utils/vpsSelfUpdate.ts +66 -1547
  124. package/esm/apps/agents-server/src/database/migratePrefix.d.ts +19 -0
  125. package/esm/apps/agents-server/src/database/runDatabaseMigrations.d.ts +4 -0
  126. package/esm/book/scripts/import-markdown/increaseHeadings.d.ts +8 -0
  127. package/esm/index.es.js +28566 -27913
  128. package/esm/index.es.js.map +1 -1
  129. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentAutoPuller.d.ts +27 -0
  130. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentGithubSynchronizer.d.ts +26 -0
  131. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentRunUiPresenter.d.ts +66 -0
  132. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/RunMultipleAgentMessageTaskScheduler.d.ts +67 -0
  133. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/formatProjectPath.d.ts +6 -0
  134. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/loadLocalAgentRunnerProjectSummaries.d.ts +11 -0
  135. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/wait.d.ts +6 -0
  136. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages.d.ts +1 -1
  137. package/esm/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeRunner.d.ts +4 -0
  138. package/esm/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeSessionResurrection.d.ts +37 -0
  139. package/esm/scripts/run-codex-prompts/runners/claude-code/parseClaudeCodeOutputEvents.d.ts +47 -0
  140. package/esm/scripts/run-codex-prompts/ui/CoderRunUiState.d.ts +6 -4
  141. package/esm/scripts/run-codex-prompts/ui/buildCoderRunAgentVisual.d.ts +30 -5
  142. package/esm/scripts/run-codex-prompts/ui/buildCoderRunUiFrame.d.ts +7 -1
  143. package/esm/scripts/run-codex-prompts/ui/coderRunUiRefresh.d.ts +2 -2
  144. package/esm/src/_packages/types.index.d.ts +2 -2
  145. package/esm/src/avatars/renderAvatarVisualAsciiArt.d.ts +24 -1
  146. package/esm/src/avatars/visuals/octopus3dAvatarVisualShared.d.ts +1 -1
  147. package/esm/src/book-components/BookEditor/BookEditorMonacoUploadPanel.d.ts +1 -1
  148. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.d.ts +120 -0
  149. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.d.ts +6 -0
  150. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.d.ts +26 -0
  151. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.d.ts +23 -0
  152. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.d.ts +21 -0
  153. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.d.ts +12 -0
  154. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.d.ts +27 -0
  155. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.d.ts +12 -0
  156. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads.d.ts +5 -58
  157. package/esm/src/book-components/Chat/Chat/ChatImageAttachmentModal.d.ts +25 -0
  158. package/esm/src/book-components/Chat/Chat/ChatInputArea.d.ts +3 -0
  159. package/esm/src/book-components/Chat/Chat/ChatMessageAttachments.d.ts +27 -0
  160. package/esm/src/book-components/Chat/Chat/ChatMessageItem.d.ts +1 -1
  161. package/esm/src/book-components/Chat/Chat/ChatMessageList.d.ts +1 -0
  162. package/esm/src/book-components/Chat/Chat/ChatProps.d.ts +8 -0
  163. package/esm/src/book-components/Chat/Chat/useChatInputAreaComposer.d.ts +12 -0
  164. package/esm/src/book-components/Chat/Chat/useChatInputAreaComposer.draftMessage.test.d.ts +2 -0
  165. package/esm/src/book-components/Chat/utils/isVisibleChatToolCall.d.ts +1 -1
  166. package/esm/src/book-components/Chat/utils/parseMessageButtons.d.ts +16 -2
  167. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.d.ts +6 -0
  168. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.d.ts +6 -0
  169. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.d.ts +6 -0
  170. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.d.ts +10 -0
  171. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.d.ts +10 -0
  172. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.d.ts +6 -0
  173. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.d.ts +18 -0
  174. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.d.ts +6 -0
  175. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +28 -0
  176. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.d.ts +19 -0
  177. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.d.ts +11 -0
  178. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.d.ts +6 -0
  179. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.d.ts +6 -0
  180. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.d.ts +7 -0
  181. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.d.ts +6 -0
  182. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.d.ts +6 -0
  183. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.d.ts +6 -0
  184. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.d.ts +6 -0
  185. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.d.ts +6 -0
  186. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.d.ts +6 -0
  187. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.d.ts +6 -0
  188. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.d.ts +9 -0
  189. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.d.ts +8 -0
  190. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.d.ts +6 -0
  191. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.d.ts +9 -0
  192. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.d.ts +7 -0
  193. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.d.ts +6 -0
  194. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.d.ts +6 -0
  195. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.d.ts +12 -0
  196. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.d.ts +6 -0
  197. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.d.ts +11 -0
  198. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.d.ts +7 -0
  199. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +8 -109
  200. package/esm/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.d.ts +1 -1
  201. package/esm/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.d.ts +1 -1
  202. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.d.ts +16 -0
  203. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.d.ts +30 -0
  204. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.d.ts +19 -0
  205. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.d.ts +37 -0
  206. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.d.ts +9 -0
  207. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.d.ts +13 -0
  208. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.d.ts +24 -0
  209. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.d.ts +6 -0
  210. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.d.ts +9 -0
  211. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.d.ts +13 -0
  212. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.d.ts +6 -0
  213. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.d.ts +18 -0
  214. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.d.ts +6 -0
  215. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.d.ts +7 -0
  216. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.d.ts +20 -0
  217. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.d.ts +15 -0
  218. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.d.ts +8 -0
  219. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.d.ts +16 -0
  220. package/esm/src/cli/cli-commands/agents-server/startAgentsServer.d.ts +3 -30
  221. package/esm/src/cli/cli-commands/common/promptRunnerCliOptions.d.ts +1 -1
  222. package/esm/src/collection/agent-collection/CreateAgentInput.d.ts +1 -1
  223. package/esm/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.d.ts +1 -1
  224. package/esm/src/commitments/META/META.d.ts +2 -2
  225. package/esm/src/commitments/META_AVATAR/META_AVATAR.d.ts +9 -4
  226. package/esm/src/commitments/index.d.ts +1 -1
  227. package/esm/src/conversion/validation/validatePipeline/createPipelineValidationContext.d.ts +16 -0
  228. package/esm/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.d.ts +7 -0
  229. package/esm/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.d.ts +7 -0
  230. package/esm/src/conversion/validation/validatePipeline/validatePipelineMetadata.d.ts +7 -0
  231. package/esm/src/conversion/validation/validatePipeline/validatePipelineParameters.d.ts +7 -0
  232. package/esm/src/conversion/validation/validatePipeline/validatePipelineTasks.d.ts +7 -0
  233. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.d.ts +46 -0
  234. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.d.ts +11 -0
  235. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.d.ts +7 -0
  236. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.d.ts +7 -0
  237. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.d.ts +7 -0
  238. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.d.ts +14 -0
  239. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.d.ts +7 -0
  240. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  241. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.d.ts +7 -0
  242. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.d.ts +7 -0
  243. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.d.ts +9 -0
  244. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.d.ts +7 -0
  245. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.d.ts +7 -0
  246. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.d.ts +7 -0
  247. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.d.ts +8 -0
  248. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  249. package/esm/src/utils/agents/resolveAgentAvatarImageUrl.d.ts +2 -2
  250. package/esm/src/utils/color/Color.d.ts +1 -1
  251. package/esm/src/version.d.ts +1 -1
  252. package/package.json +1 -1
  253. package/src/_packages/types.index.ts +2 -2
  254. package/src/avatars/Avatar.tsx +2 -13
  255. package/src/avatars/renderAvatarVisual.ts +2 -13
  256. package/src/avatars/renderAvatarVisualAsciiArt.ts +137 -18
  257. package/src/avatars/visuals/asciiOctopusAvatarVisual.ts +1 -6
  258. package/src/avatars/visuals/avatarVisualRegistry.ts +1 -1
  259. package/src/avatars/visuals/minecraft2AvatarVisual.ts +1 -2
  260. package/src/avatars/visuals/octopus2AvatarVisual.ts +1 -5
  261. package/src/avatars/visuals/octopus3AvatarVisual.ts +1 -8
  262. package/src/avatars/visuals/octopus3d2AvatarVisual.ts +4 -13
  263. package/src/avatars/visuals/octopus3d3AvatarVisual.ts +4 -13
  264. package/src/avatars/visuals/octopus3d4AvatarVisual.ts +4 -13
  265. package/src/avatars/visuals/octopus3dAvatarVisual.ts +3 -3
  266. package/src/avatars/visuals/octopus3dAvatarVisualShared.ts +2 -7
  267. package/src/book-2.0/agent-source/parseAgentSource/applyMetaCommitment.ts +2 -1
  268. package/src/book-2.0/book-language-documentation/createStandaloneBookLanguageMarkdown.ts +3 -5
  269. package/src/book-3.0/CliAgent.ts +1 -7
  270. package/src/book-3.0/LiteAgent.ts +5 -5
  271. package/src/book-components/AvatarProfile/AvatarProfile/AvatarProfile.tsx +1 -4
  272. package/src/book-components/BookEditor/BookEditor.tsx +2 -2
  273. package/src/book-components/BookEditor/BookEditorAboutPromptbookInformation.tsx +3 -2
  274. package/src/book-components/BookEditor/BookEditorActionbar.tsx +1 -1
  275. package/src/book-components/BookEditor/BookEditorMonaco.tsx +2 -2
  276. package/src/book-components/BookEditor/BookEditorMonacoUploadPanel.tsx +1 -1
  277. package/src/book-components/BookEditor/useBookEditorMonacoLanguage.ts +1 -1
  278. package/src/book-components/BookEditor/useBookEditorMonacoStyles.ts +1 -1
  279. package/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.ts +147 -0
  280. package/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.ts +10 -0
  281. package/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.ts +209 -0
  282. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.ts +164 -0
  283. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.ts +121 -0
  284. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.ts +81 -0
  285. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.ts +360 -0
  286. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.ts +47 -0
  287. package/src/book-components/BookEditor/useBookEditorMonacoUploads.ts +10 -1067
  288. package/src/book-components/Chat/Chat/Chat.module.css +159 -0
  289. package/src/book-components/Chat/Chat/Chat.tsx +16 -1
  290. package/src/book-components/Chat/Chat/ChatCitationModal.tsx +2 -2
  291. package/src/book-components/Chat/Chat/ChatImageAttachmentModal.tsx +108 -0
  292. package/src/book-components/Chat/Chat/ChatInputArea.tsx +43 -27
  293. package/src/book-components/Chat/Chat/ChatMessageAttachments.tsx +212 -0
  294. package/src/book-components/Chat/Chat/ChatMessageItem.tsx +32 -18
  295. package/src/book-components/Chat/Chat/ChatMessageList.tsx +3 -0
  296. package/src/book-components/Chat/Chat/ChatProps.tsx +9 -0
  297. package/src/book-components/Chat/Chat/renderTimeoutToolCallDetails.tsx +1 -5
  298. package/src/book-components/Chat/Chat/useChatInputAreaComposer.ts +59 -7
  299. package/src/book-components/Chat/Chat/useChatInputAreaDictation.ts +7 -7
  300. package/src/book-components/Chat/Chat/useChatToolCallModalState.ts +1 -4
  301. package/src/book-components/Chat/hooks/useChatRatings.ts +1 -1
  302. package/src/book-components/Chat/save/html/htmlSaveFormatDefinition.ts +2 -3
  303. package/src/book-components/Chat/save/markdown/mdSaveFormatDefinition.ts +2 -2
  304. package/src/book-components/Chat/save/pdf/buildChatPdf.ts +1 -1
  305. package/src/book-components/Chat/utils/getToolCallChipletInfo.ts +1 -5
  306. package/src/book-components/Chat/utils/isVisibleChatToolCall.ts +2 -1
  307. package/src/book-components/Chat/utils/parseMessageButtons.ts +27 -2
  308. package/src/cli/cli-commands/about.ts +1 -1
  309. package/src/cli/cli-commands/agent/agentCliOptions.ts +2 -5
  310. package/src/cli/cli-commands/agent-folder/agentProjectPaths.ts +6 -12
  311. package/src/cli/cli-commands/agent-folder/init.ts +3 -8
  312. package/src/cli/cli-commands/agent-folder/initializeAgentProjectConfiguration.ts +2 -11
  313. package/src/cli/cli-commands/agent-folder/printAgentInitializationSummary.ts +2 -9
  314. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.ts +6 -0
  315. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.ts +6 -0
  316. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.ts +6 -0
  317. package/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.ts +11 -0
  318. package/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.ts +9 -0
  319. package/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.ts +6 -0
  320. package/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.ts +19 -0
  321. package/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.ts +71 -0
  322. package/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.ts +69 -0
  323. package/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.ts +59 -0
  324. package/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.ts +23 -0
  325. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.ts +20 -0
  326. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.ts +17 -0
  327. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.ts +27 -0
  328. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.ts +21 -0
  329. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.ts +22 -0
  330. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.ts +30 -0
  331. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.ts +41 -0
  332. package/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.ts +14 -0
  333. package/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.ts +10 -0
  334. package/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.ts +10 -0
  335. package/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.ts +31 -0
  336. package/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.ts +35 -0
  337. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.ts +33 -0
  338. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.ts +30 -0
  339. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.ts +19 -0
  340. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.ts +21 -0
  341. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.ts +19 -0
  342. package/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.ts +184 -0
  343. package/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.ts +48 -0
  344. package/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.ts +179 -0
  345. package/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.ts +28 -0
  346. package/src/cli/cli-commands/agents-server/buildAgentsServer.ts +22 -1045
  347. package/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.ts +2 -1
  348. package/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.ts +2 -1
  349. package/src/cli/cli-commands/agents-server/run.ts +2 -5
  350. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.ts +67 -0
  351. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.ts +43 -0
  352. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.ts +44 -0
  353. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.ts +59 -0
  354. package/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.ts +9 -0
  355. package/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.ts +14 -0
  356. package/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.ts +26 -0
  357. package/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.ts +15 -0
  358. package/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.ts +29 -0
  359. package/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.ts +32 -0
  360. package/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.ts +18 -0
  361. package/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.ts +81 -0
  362. package/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.ts +52 -0
  363. package/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.ts +17 -0
  364. package/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.ts +97 -0
  365. package/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.ts +132 -0
  366. package/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.ts +14 -0
  367. package/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.ts +132 -0
  368. package/src/cli/cli-commands/agents-server/startAgentsServer.ts +24 -797
  369. package/src/cli/cli-commands/agents-server.ts +2 -6
  370. package/src/cli/cli-commands/coder/agentCodingFile.ts +1 -7
  371. package/src/cli/cli-commands/coder/generate-boilerplates.ts +2 -6
  372. package/src/cli/cli-commands/coder/initializeCoderProjectConfiguration.ts +2 -7
  373. package/src/cli/cli-commands/coder/server.ts +4 -2
  374. package/src/cli/cli-commands/common/promptRunnerCliOptions.ts +3 -8
  375. package/src/cli/cli-commands/make.ts +1 -1
  376. package/src/cli/cli-commands/run/runCommandAction.ts +1 -1
  377. package/src/collection/agent-collection/CreateAgentInput.ts +2 -5
  378. package/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.ts +1 -1
  379. package/src/commitments/MEMORY/createMemoryToolFunctions.ts +1 -10
  380. package/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.ts +1 -10
  381. package/src/commitments/MEMORY/parseMemoryToolArgs.ts +1 -6
  382. package/src/commitments/META/META.ts +4 -4
  383. package/src/commitments/META_AVATAR/META_AVATAR.ts +16 -10
  384. package/src/commitments/USE_CALENDAR/createUseCalendarToolFunctions.ts +1 -4
  385. package/src/commitments/USE_PROJECT/createUseProjectToolFunctions.ts +2 -10
  386. package/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.ts +1 -11
  387. package/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.ts +1 -6
  388. package/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.ts +1 -6
  389. package/src/commitments/WALLET/createWalletToolFunctions.ts +2 -11
  390. package/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.ts +1 -6
  391. package/src/commitments/WALLET/parseWalletToolArgs.ts +1 -10
  392. package/src/commitments/index.ts +1 -0
  393. package/src/conversion/parsePipeline/applyPipelineHead.ts +1 -1
  394. package/src/conversion/parsePipeline/createUniqueSectionNameResolver.ts +1 -1
  395. package/src/conversion/parsePipeline/processPipelineSection.ts +1 -1
  396. package/src/conversion/validation/validatePipeline/createPipelineValidationContext.ts +43 -0
  397. package/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.ts +72 -0
  398. package/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.ts +220 -0
  399. package/src/conversion/validation/validatePipeline/validatePipelineMetadata.ts +66 -0
  400. package/src/conversion/validation/validatePipeline/validatePipelineParameters.ts +136 -0
  401. package/src/conversion/validation/validatePipeline/validatePipelineTasks.ts +243 -0
  402. package/src/conversion/validation/validatePipeline.ts +7 -750
  403. package/src/execution/LlmExecutionTools.ts +1 -6
  404. package/src/execution/createPipelineExecutor/getReservedParametersForTask.ts +1 -5
  405. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.ts +51 -0
  406. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.ts +30 -0
  407. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.ts +62 -0
  408. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.ts +10 -0
  409. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.ts +75 -0
  410. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.ts +101 -0
  411. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.ts +24 -0
  412. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.ts +17 -0
  413. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.ts +15 -0
  414. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.ts +19 -0
  415. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.ts +44 -0
  416. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.ts +21 -0
  417. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.ts +97 -0
  418. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.ts +17 -0
  419. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.ts +30 -0
  420. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.ts +32 -0
  421. package/src/llm-providers/_common/register/$registeredLlmToolsMessage.ts +5 -568
  422. package/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.ts +1 -6
  423. package/src/llm-providers/openai/OpenAiAgentKitExecutionTools.ts +2 -2
  424. package/src/llm-providers/openai/OpenAiAssistantExecutionTools.ts +1 -1
  425. package/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.ts +2 -2
  426. package/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.ts +1 -1
  427. package/src/llm-providers/openai/OpenAiCompatibleExecutionTools.ts +2 -7
  428. package/src/llm-providers/openai/utils/OpenAiCompatibleChatPromptBuilder.ts +1 -1
  429. package/src/llm-providers/openai/utils/OpenAiCompatibleChatToolCaller.ts +2 -2
  430. package/src/llm-providers/openai/utils/OpenAiCompatibleUnsupportedParameterRetrier.ts +1 -5
  431. package/src/llm-providers/openai/utils/buildToolInvocationScript.ts +1 -6
  432. package/src/other/templates/getTemplatesPipelineCollection.ts +692 -774
  433. package/src/remote-server/startRemoteServer/registerExecutionRoutes.ts +1 -1
  434. package/src/remote-server/startRemoteServer/registerServerIndexRoute.ts +1 -1
  435. package/src/scrapers/_common/utils/makeKnowledgeSourceHandler.ts +1 -6
  436. package/src/speech-recognition/OpenAiSpeechRecognition.ts +1 -6
  437. package/src/transpilers/_common/prepareSdkTranspilerContext.ts +1 -4
  438. package/src/types/Prompt.ts +1 -7
  439. package/src/types/string_host.ts +1 -9
  440. package/src/types/string_pipeline_url.ts +1 -4
  441. package/src/utils/agents/resolveAgentAvatarImageUrl.ts +2 -2
  442. package/src/utils/color/Color.ts +2 -2
  443. package/src/utils/markdown/parseMarkdownSection.ts +1 -5
  444. package/src/utils/random/$randomFullnameWithColor.ts +1 -6
  445. package/src/version.ts +2 -2
  446. package/src/versions.txt +1 -0
  447. package/umd/apps/agents-server/src/database/migratePrefix.d.ts +19 -0
  448. package/umd/apps/agents-server/src/database/runDatabaseMigrations.d.ts +4 -0
  449. package/umd/book/scripts/import-markdown/increaseHeadings.d.ts +8 -0
  450. package/umd/index.umd.js +28568 -27915
  451. package/umd/index.umd.js.map +1 -1
  452. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentAutoPuller.d.ts +27 -0
  453. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentGithubSynchronizer.d.ts +26 -0
  454. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentRunUiPresenter.d.ts +66 -0
  455. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/RunMultipleAgentMessageTaskScheduler.d.ts +67 -0
  456. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/formatProjectPath.d.ts +6 -0
  457. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/loadLocalAgentRunnerProjectSummaries.d.ts +11 -0
  458. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/wait.d.ts +6 -0
  459. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages.d.ts +1 -1
  460. package/umd/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeRunner.d.ts +4 -0
  461. package/umd/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeSessionResurrection.d.ts +37 -0
  462. package/umd/scripts/run-codex-prompts/runners/claude-code/parseClaudeCodeOutputEvents.d.ts +47 -0
  463. package/umd/scripts/run-codex-prompts/ui/CoderRunUiState.d.ts +6 -4
  464. package/umd/scripts/run-codex-prompts/ui/buildCoderRunAgentVisual.d.ts +30 -5
  465. package/umd/scripts/run-codex-prompts/ui/buildCoderRunUiFrame.d.ts +7 -1
  466. package/umd/scripts/run-codex-prompts/ui/coderRunUiRefresh.d.ts +2 -2
  467. package/umd/src/_packages/types.index.d.ts +2 -2
  468. package/umd/src/avatars/renderAvatarVisualAsciiArt.d.ts +24 -1
  469. package/umd/src/avatars/visuals/octopus3dAvatarVisualShared.d.ts +1 -1
  470. package/umd/src/book-components/BookEditor/BookEditorMonacoUploadPanel.d.ts +1 -1
  471. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.d.ts +120 -0
  472. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.d.ts +6 -0
  473. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.d.ts +26 -0
  474. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.d.ts +23 -0
  475. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.d.ts +21 -0
  476. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.d.ts +12 -0
  477. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.d.ts +27 -0
  478. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.d.ts +12 -0
  479. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads.d.ts +5 -58
  480. package/umd/src/book-components/Chat/Chat/ChatImageAttachmentModal.d.ts +25 -0
  481. package/umd/src/book-components/Chat/Chat/ChatInputArea.d.ts +3 -0
  482. package/umd/src/book-components/Chat/Chat/ChatMessageAttachments.d.ts +27 -0
  483. package/umd/src/book-components/Chat/Chat/ChatMessageItem.d.ts +1 -1
  484. package/umd/src/book-components/Chat/Chat/ChatMessageList.d.ts +1 -0
  485. package/umd/src/book-components/Chat/Chat/ChatProps.d.ts +8 -0
  486. package/umd/src/book-components/Chat/Chat/useChatInputAreaComposer.d.ts +12 -0
  487. package/umd/src/book-components/Chat/Chat/useChatInputAreaComposer.draftMessage.test.d.ts +2 -0
  488. package/umd/src/book-components/Chat/utils/isVisibleChatToolCall.d.ts +1 -1
  489. package/umd/src/book-components/Chat/utils/parseMessageButtons.d.ts +16 -2
  490. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.d.ts +6 -0
  491. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.d.ts +6 -0
  492. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.d.ts +6 -0
  493. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.d.ts +10 -0
  494. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.d.ts +10 -0
  495. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.d.ts +6 -0
  496. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.d.ts +18 -0
  497. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.d.ts +6 -0
  498. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +28 -0
  499. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.d.ts +19 -0
  500. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.d.ts +11 -0
  501. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.d.ts +6 -0
  502. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.d.ts +6 -0
  503. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.d.ts +7 -0
  504. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.d.ts +6 -0
  505. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.d.ts +6 -0
  506. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.d.ts +6 -0
  507. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.d.ts +6 -0
  508. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.d.ts +6 -0
  509. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.d.ts +6 -0
  510. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.d.ts +6 -0
  511. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.d.ts +9 -0
  512. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.d.ts +8 -0
  513. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.d.ts +6 -0
  514. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.d.ts +9 -0
  515. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.d.ts +7 -0
  516. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.d.ts +6 -0
  517. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.d.ts +6 -0
  518. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.d.ts +12 -0
  519. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.d.ts +6 -0
  520. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.d.ts +11 -0
  521. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.d.ts +7 -0
  522. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +8 -109
  523. package/umd/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.d.ts +1 -1
  524. package/umd/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.d.ts +1 -1
  525. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.d.ts +16 -0
  526. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.d.ts +30 -0
  527. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.d.ts +19 -0
  528. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.d.ts +37 -0
  529. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.d.ts +9 -0
  530. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.d.ts +13 -0
  531. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.d.ts +24 -0
  532. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.d.ts +6 -0
  533. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.d.ts +9 -0
  534. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.d.ts +13 -0
  535. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.d.ts +6 -0
  536. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.d.ts +18 -0
  537. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.d.ts +6 -0
  538. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.d.ts +7 -0
  539. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.d.ts +20 -0
  540. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.d.ts +15 -0
  541. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.d.ts +8 -0
  542. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.d.ts +16 -0
  543. package/umd/src/cli/cli-commands/agents-server/startAgentsServer.d.ts +3 -30
  544. package/umd/src/cli/cli-commands/common/promptRunnerCliOptions.d.ts +1 -1
  545. package/umd/src/collection/agent-collection/CreateAgentInput.d.ts +1 -1
  546. package/umd/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.d.ts +1 -1
  547. package/umd/src/commitments/META/META.d.ts +2 -2
  548. package/umd/src/commitments/META_AVATAR/META_AVATAR.d.ts +9 -4
  549. package/umd/src/commitments/index.d.ts +1 -1
  550. package/umd/src/conversion/validation/validatePipeline/createPipelineValidationContext.d.ts +16 -0
  551. package/umd/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.d.ts +7 -0
  552. package/umd/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.d.ts +7 -0
  553. package/umd/src/conversion/validation/validatePipeline/validatePipelineMetadata.d.ts +7 -0
  554. package/umd/src/conversion/validation/validatePipeline/validatePipelineParameters.d.ts +7 -0
  555. package/umd/src/conversion/validation/validatePipeline/validatePipelineTasks.d.ts +7 -0
  556. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.d.ts +46 -0
  557. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.d.ts +11 -0
  558. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.d.ts +7 -0
  559. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.d.ts +7 -0
  560. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.d.ts +7 -0
  561. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.d.ts +14 -0
  562. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.d.ts +7 -0
  563. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  564. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.d.ts +7 -0
  565. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.d.ts +7 -0
  566. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.d.ts +9 -0
  567. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.d.ts +7 -0
  568. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.d.ts +7 -0
  569. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.d.ts +7 -0
  570. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.d.ts +8 -0
  571. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  572. package/umd/src/utils/agents/resolveAgentAvatarImageUrl.d.ts +2 -2
  573. package/umd/src/utils/color/Color.d.ts +1 -1
  574. package/umd/src/version.d.ts +1 -1
  575. package/apps/agents-server/src/utils/userChat/createUserChatRunnerProgressCard.ts +0 -57
@@ -0,0 +1,387 @@
1
+ import { mkdir, readFile, writeFile } from 'fs/promises';
2
+ import { dirname } from 'path';
3
+ import { resolveVpsSelfUpdateEnvironment } from './vpsSelfUpdateEnvironment';
4
+ import { resolveVpsSelfUpdateJobIdentity } from './vpsSelfUpdateJobIdentity';
5
+ import { readPersistedVpsSelfUpdateJob } from './readPersistedVpsSelfUpdateJob';
6
+ import { resolveVpsSelfUpdateTaskHistoryFilePath } from './vpsSelfUpdateStateFiles';
7
+ import type {
8
+ VpsSelfUpdateDatabaseMigrationSnapshot,
9
+ VpsSelfUpdateDatabaseMigrationStatus,
10
+ VpsSelfUpdateJobSnapshot,
11
+ VpsSelfUpdateJobStatus,
12
+ VpsSelfUpdateJobTrigger,
13
+ } from './vpsSelfUpdateTypes';
14
+
15
+ /**
16
+ * Version of the persisted self-update task history file.
17
+ *
18
+ * @private constant of `vpsSelfUpdate`
19
+ */
20
+ const VPS_SELF_UPDATE_TASK_HISTORY_VERSION = 1;
21
+
22
+ /**
23
+ * Statuses accepted from the persisted task history file.
24
+ *
25
+ * @private constant of `vpsSelfUpdate`
26
+ */
27
+ const VPS_SELF_UPDATE_JOB_STATUSES = new Set<VpsSelfUpdateJobStatus>([
28
+ 'idle',
29
+ 'running',
30
+ 'succeeded',
31
+ 'failed',
32
+ ]);
33
+
34
+ /**
35
+ * Database migration statuses accepted from the persisted task history file.
36
+ *
37
+ * @private constant of `vpsSelfUpdate`
38
+ */
39
+ const VPS_SELF_UPDATE_DATABASE_MIGRATION_STATUSES = new Set<VpsSelfUpdateDatabaseMigrationStatus>([
40
+ 'pending',
41
+ 'running',
42
+ 'succeeded',
43
+ 'failed',
44
+ 'skipped',
45
+ 'unknown',
46
+ ]);
47
+
48
+ /**
49
+ * Persisted self-update task history file shape.
50
+ *
51
+ * @private type of `vpsSelfUpdate`
52
+ */
53
+ type VpsSelfUpdateTaskHistoryFile = {
54
+ readonly version: typeof VPS_SELF_UPDATE_TASK_HISTORY_VERSION;
55
+ readonly jobs: ReadonlyArray<VpsSelfUpdateJobSnapshot>;
56
+ };
57
+
58
+ /**
59
+ * Archives one latest self-update snapshot before a new self-update overwrites the singleton status file.
60
+ *
61
+ * @param job - Latest job snapshot to preserve in task history.
62
+ *
63
+ * @private function of `vpsSelfUpdate`
64
+ */
65
+ export async function preserveVpsSelfUpdateJobInTaskHistory(job: VpsSelfUpdateJobSnapshot): Promise<void> {
66
+ if (job.status === 'idle') {
67
+ return;
68
+ }
69
+
70
+ const history = await readVpsSelfUpdateJobTaskHistory();
71
+ const jobs = collectUniqueVpsSelfUpdateJobs([sanitizeVpsSelfUpdateJobForTaskHistory(job), ...history]);
72
+ await writeVpsSelfUpdateJobTaskHistory(jobs);
73
+ }
74
+
75
+ /**
76
+ * Reads all self-update task snapshots that should be surfaced in the admin task manager.
77
+ *
78
+ * @returns Latest singleton status followed by archived history, with duplicates removed.
79
+ *
80
+ * @private function of `vpsSelfUpdate`
81
+ */
82
+ export async function readVpsSelfUpdateJobTaskSnapshots(): Promise<Array<VpsSelfUpdateJobSnapshot>> {
83
+ const latestJob = await readPersistedVpsSelfUpdateJob({ isLogTailIncluded: false });
84
+ const history = await readVpsSelfUpdateJobTaskHistory();
85
+ return collectUniqueVpsSelfUpdateJobs([latestJob, ...history]).filter((job) => job.status !== 'idle');
86
+ }
87
+
88
+ /**
89
+ * Reads archived self-update task snapshots from disk.
90
+ *
91
+ * @returns Archived task snapshots.
92
+ *
93
+ * @private function of `vpsSelfUpdate`
94
+ */
95
+ export async function readVpsSelfUpdateJobTaskHistory(): Promise<Array<VpsSelfUpdateJobSnapshot>> {
96
+ const historyFilePath = resolveVpsSelfUpdateTaskHistoryFilePath();
97
+
98
+ try {
99
+ const rawHistory = await readFile(historyFilePath, 'utf-8');
100
+ const parsedHistory = JSON.parse(rawHistory) as unknown;
101
+ if (!isVpsSelfUpdateTaskHistoryFile(parsedHistory)) {
102
+ return [];
103
+ }
104
+
105
+ return parsedHistory.jobs
106
+ .map(normalizeVpsSelfUpdateJobFromTaskHistory)
107
+ .filter((job): job is VpsSelfUpdateJobSnapshot => job !== null);
108
+ } catch (error) {
109
+ if ((error as NodeJS.ErrnoException).code === 'ENOENT' || error instanceof SyntaxError) {
110
+ return [];
111
+ }
112
+
113
+ throw error;
114
+ }
115
+ }
116
+
117
+ /**
118
+ * Writes archived self-update task snapshots to disk.
119
+ *
120
+ * @param jobs - Archived task snapshots.
121
+ *
122
+ * @private function of `vpsSelfUpdate`
123
+ */
124
+ async function writeVpsSelfUpdateJobTaskHistory(jobs: ReadonlyArray<VpsSelfUpdateJobSnapshot>): Promise<void> {
125
+ const historyFilePath = resolveVpsSelfUpdateTaskHistoryFilePath();
126
+ const history: VpsSelfUpdateTaskHistoryFile = {
127
+ version: VPS_SELF_UPDATE_TASK_HISTORY_VERSION,
128
+ jobs,
129
+ };
130
+
131
+ await mkdir(dirname(historyFilePath), { recursive: true });
132
+ await writeFile(historyFilePath, `${JSON.stringify(history, null, 2)}\n`, 'utf-8');
133
+ }
134
+
135
+ /**
136
+ * Removes duplicate self-update jobs while preserving the first snapshot for each identity.
137
+ *
138
+ * @param jobs - Candidate self-update job snapshots.
139
+ * @returns Unique self-update job snapshots.
140
+ *
141
+ * @private function of `vpsSelfUpdate`
142
+ */
143
+ function collectUniqueVpsSelfUpdateJobs(
144
+ jobs: ReadonlyArray<VpsSelfUpdateJobSnapshot>,
145
+ ): Array<VpsSelfUpdateJobSnapshot> {
146
+ const jobsByIdentity = new Map<string, VpsSelfUpdateJobSnapshot>();
147
+
148
+ for (const job of jobs) {
149
+ const identity = resolveVpsSelfUpdateJobIdentity(job);
150
+ if (!jobsByIdentity.has(identity)) {
151
+ jobsByIdentity.set(identity, job);
152
+ }
153
+ }
154
+
155
+ return [...jobsByIdentity.values()];
156
+ }
157
+
158
+ /**
159
+ * Removes log text before persisting a task-history snapshot.
160
+ *
161
+ * @param job - Self-update job snapshot.
162
+ * @returns Compact task-history snapshot.
163
+ *
164
+ * @private function of `vpsSelfUpdate`
165
+ */
166
+ function sanitizeVpsSelfUpdateJobForTaskHistory(job: VpsSelfUpdateJobSnapshot): VpsSelfUpdateJobSnapshot {
167
+ return {
168
+ ...job,
169
+ logTail: null,
170
+ };
171
+ }
172
+
173
+ /**
174
+ * Checks whether a parsed JSON value is a task-history file.
175
+ *
176
+ * @param value - Parsed JSON value.
177
+ * @returns `true` when the value has the expected task-history shape.
178
+ *
179
+ * @private function of `vpsSelfUpdate`
180
+ */
181
+ function isVpsSelfUpdateTaskHistoryFile(value: unknown): value is { readonly jobs: ReadonlyArray<unknown> } {
182
+ return (
183
+ isRecord(value) &&
184
+ value.version === VPS_SELF_UPDATE_TASK_HISTORY_VERSION &&
185
+ Array.isArray(value.jobs)
186
+ );
187
+ }
188
+
189
+ /**
190
+ * Normalizes one untrusted task-history job snapshot.
191
+ *
192
+ * @param value - Raw job snapshot from JSON.
193
+ * @returns Normalized job snapshot or `null` when invalid.
194
+ *
195
+ * @private function of `vpsSelfUpdate`
196
+ */
197
+ function normalizeVpsSelfUpdateJobFromTaskHistory(value: unknown): VpsSelfUpdateJobSnapshot | null {
198
+ if (!isRecord(value)) {
199
+ return null;
200
+ }
201
+
202
+ const status = normalizeVpsSelfUpdateJobStatus(value.status);
203
+ if (!status || status === 'idle') {
204
+ return null;
205
+ }
206
+
207
+ const trigger = normalizeVpsSelfUpdateJobTrigger(value.trigger);
208
+ const targetBranch = normalizeNullableString(value.targetBranch);
209
+ const targetEnvironment = resolveVpsSelfUpdateEnvironment(targetBranch);
210
+ const databaseMigrations = normalizeVpsSelfUpdateDatabaseMigrationSnapshot(value.databaseMigrations);
211
+
212
+ return {
213
+ jobId: normalizeNullableString(value.jobId),
214
+ status,
215
+ trigger,
216
+ pid: normalizeNullableNumber(value.pid),
217
+ targetBranch,
218
+ targetEnvironment,
219
+ currentStep: normalizeNullableString(value.currentStep),
220
+ currentCommitSha: normalizeNullableString(value.currentCommitSha),
221
+ targetCommitSha: normalizeNullableString(value.targetCommitSha),
222
+ errorMessage: normalizeNullableString(value.errorMessage),
223
+ startedAt: normalizeNullableString(value.startedAt),
224
+ finishedAt: normalizeNullableString(value.finishedAt),
225
+ isStale: value.isStale === true,
226
+ logTail: null,
227
+ logFilePath: normalizeNullableString(value.logFilePath),
228
+ databaseMigrations,
229
+ };
230
+ }
231
+
232
+ /**
233
+ * Normalizes the database migration snapshot nested in a task-history job.
234
+ *
235
+ * @param value - Raw database migration snapshot from JSON.
236
+ * @returns Normalized database migration snapshot.
237
+ *
238
+ * @private function of `vpsSelfUpdate`
239
+ */
240
+ function normalizeVpsSelfUpdateDatabaseMigrationSnapshot(value: unknown): VpsSelfUpdateDatabaseMigrationSnapshot {
241
+ if (!isRecord(value)) {
242
+ return createEmptyVpsSelfUpdateDatabaseMigrationSnapshot();
243
+ }
244
+
245
+ return {
246
+ status: normalizeVpsSelfUpdateDatabaseMigrationStatus(value.status) || 'unknown',
247
+ processedPrefixes: normalizeStringArray(value.processedPrefixes),
248
+ totalMigrationFiles: normalizeNullableNumber(value.totalMigrationFiles),
249
+ perPrefix: normalizeVpsSelfUpdateDatabaseMigrationPrefixSummaries(value.perPrefix),
250
+ isSkippedDueToActiveMigrationLock:
251
+ typeof value.isSkippedDueToActiveMigrationLock === 'boolean'
252
+ ? value.isSkippedDueToActiveMigrationLock
253
+ : null,
254
+ errorMessage: normalizeNullableString(value.errorMessage),
255
+ summaryFilePath: normalizeNullableString(value.summaryFilePath),
256
+ };
257
+ }
258
+
259
+ /**
260
+ * Creates an empty database migration snapshot for old or invalid task-history entries.
261
+ *
262
+ * @returns Empty database migration snapshot.
263
+ *
264
+ * @private function of `vpsSelfUpdate`
265
+ */
266
+ function createEmptyVpsSelfUpdateDatabaseMigrationSnapshot(): VpsSelfUpdateDatabaseMigrationSnapshot {
267
+ return {
268
+ status: 'unknown',
269
+ processedPrefixes: [],
270
+ totalMigrationFiles: null,
271
+ perPrefix: [],
272
+ isSkippedDueToActiveMigrationLock: null,
273
+ errorMessage: null,
274
+ summaryFilePath: null,
275
+ };
276
+ }
277
+
278
+ /**
279
+ * Normalizes per-prefix migration summaries from untrusted task-history JSON.
280
+ *
281
+ * @param value - Raw per-prefix JSON value.
282
+ * @returns Normalized per-prefix summaries.
283
+ *
284
+ * @private function of `vpsSelfUpdate`
285
+ */
286
+ function normalizeVpsSelfUpdateDatabaseMigrationPrefixSummaries(
287
+ value: unknown,
288
+ ): VpsSelfUpdateDatabaseMigrationSnapshot['perPrefix'] {
289
+ if (!Array.isArray(value)) {
290
+ return [];
291
+ }
292
+
293
+ return value.filter(isRecord).map((summary) => ({
294
+ prefix: typeof summary.prefix === 'string' ? summary.prefix : '',
295
+ appliedCount: normalizeNullableNumber(summary.appliedCount) ?? 0,
296
+ appliedMigrationFiles: normalizeStringArray(summary.appliedMigrationFiles),
297
+ }));
298
+ }
299
+
300
+ /**
301
+ * Normalizes one self-update job status from task-history JSON.
302
+ *
303
+ * @param value - Raw status value.
304
+ * @returns Supported status or `null`.
305
+ *
306
+ * @private function of `vpsSelfUpdate`
307
+ */
308
+ function normalizeVpsSelfUpdateJobStatus(value: unknown): VpsSelfUpdateJobStatus | null {
309
+ return typeof value === 'string' && VPS_SELF_UPDATE_JOB_STATUSES.has(value as VpsSelfUpdateJobStatus)
310
+ ? (value as VpsSelfUpdateJobStatus)
311
+ : null;
312
+ }
313
+
314
+ /**
315
+ * Normalizes one self-update trigger from task-history JSON.
316
+ *
317
+ * @param value - Raw trigger value.
318
+ * @returns Supported trigger.
319
+ *
320
+ * @private function of `vpsSelfUpdate`
321
+ */
322
+ function normalizeVpsSelfUpdateJobTrigger(value: unknown): VpsSelfUpdateJobTrigger {
323
+ return value === 'automatic' ? 'automatic' : 'manual';
324
+ }
325
+
326
+ /**
327
+ * Normalizes one database migration status from task-history JSON.
328
+ *
329
+ * @param value - Raw status value.
330
+ * @returns Supported migration status or `null`.
331
+ *
332
+ * @private function of `vpsSelfUpdate`
333
+ */
334
+ function normalizeVpsSelfUpdateDatabaseMigrationStatus(value: unknown): VpsSelfUpdateDatabaseMigrationStatus | null {
335
+ return typeof value === 'string' &&
336
+ VPS_SELF_UPDATE_DATABASE_MIGRATION_STATUSES.has(value as VpsSelfUpdateDatabaseMigrationStatus)
337
+ ? (value as VpsSelfUpdateDatabaseMigrationStatus)
338
+ : null;
339
+ }
340
+
341
+ /**
342
+ * Normalizes one nullable string field from task-history JSON.
343
+ *
344
+ * @param value - Raw field value.
345
+ * @returns String value or `null`.
346
+ *
347
+ * @private function of `vpsSelfUpdate`
348
+ */
349
+ function normalizeNullableString(value: unknown): string | null {
350
+ return typeof value === 'string' && value !== '' ? value : null;
351
+ }
352
+
353
+ /**
354
+ * Normalizes one nullable non-negative number field from task-history JSON.
355
+ *
356
+ * @param value - Raw field value.
357
+ * @returns Number value or `null`.
358
+ *
359
+ * @private function of `vpsSelfUpdate`
360
+ */
361
+ function normalizeNullableNumber(value: unknown): number | null {
362
+ return typeof value === 'number' && Number.isFinite(value) && value >= 0 ? value : null;
363
+ }
364
+
365
+ /**
366
+ * Normalizes an array of strings from task-history JSON.
367
+ *
368
+ * @param value - Raw field value.
369
+ * @returns String array.
370
+ *
371
+ * @private function of `vpsSelfUpdate`
372
+ */
373
+ function normalizeStringArray(value: unknown): Array<string> {
374
+ return Array.isArray(value) ? value.filter((item): item is string => typeof item === 'string') : [];
375
+ }
376
+
377
+ /**
378
+ * Checks whether a raw JSON value is a record.
379
+ *
380
+ * @param value - Raw JSON value.
381
+ * @returns `true` when the value is a non-array object.
382
+ *
383
+ * @private function of `vpsSelfUpdate`
384
+ */
385
+ function isRecord(value: unknown): value is Record<string, unknown> {
386
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
387
+ }
@@ -0,0 +1,26 @@
1
+ import type { VpsSelfUpdateJobSnapshot } from './vpsSelfUpdateTypes';
2
+
3
+ /**
4
+ * Resolves a stable identity for one self-update run.
5
+ *
6
+ * Newer jobs carry `jobId`; older persisted statuses fall back to their timestamps and target metadata
7
+ * so they can still be archived without duplicating the latest singleton status row.
8
+ *
9
+ * @param job - Self-update job snapshot.
10
+ * @returns Stable self-update job identity.
11
+ *
12
+ * @private function of `vpsSelfUpdate`
13
+ */
14
+ export function resolveVpsSelfUpdateJobIdentity(job: VpsSelfUpdateJobSnapshot): string {
15
+ if (job.jobId) {
16
+ return job.jobId;
17
+ }
18
+
19
+ return [
20
+ job.trigger,
21
+ job.targetBranch || job.targetEnvironment.branch || 'unknown-target',
22
+ job.startedAt || 'unknown-start',
23
+ job.finishedAt || 'unfinished',
24
+ job.targetCommitSha || 'unknown-target-commit',
25
+ ].join(':');
26
+ }
@@ -0,0 +1,90 @@
1
+ import { mkdir, readFile, writeFile } from 'fs/promises';
2
+ import { dirname } from 'path';
3
+ import { NotAllowed } from '../../../../../src/errors/NotAllowed';
4
+ import { spaceTrim } from 'spacetrim';
5
+ import { resolveVpsEnvironmentFilePath } from '../vpsConfiguration';
6
+ import { readVpsSelfUpdateConfiguredEnvironmentValue } from './vpsSelfUpdateConfiguration';
7
+
8
+ /**
9
+ * Default upstream repository URL used when no custom origin is configured.
10
+ *
11
+ * @private constant of `vpsSelfUpdate`
12
+ */
13
+ export const VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL = 'https://github.com/webgptorg/promptbook.git';
14
+
15
+ /**
16
+ * Validates a user-provided upstream repository URL.
17
+ *
18
+ * @param value - Raw URL string.
19
+ * @returns Normalized URL or `null` when the user did not request an override.
20
+ *
21
+ * @private function of `vpsSelfUpdate`
22
+ */
23
+ export function normalizeVpsSelfUpdateOriginRepositoryUrl(value: string | null | undefined): string | null {
24
+ if (value === null || value === undefined) {
25
+ return null;
26
+ }
27
+
28
+ const trimmedValue = value.trim();
29
+ if (!trimmedValue) {
30
+ return null;
31
+ }
32
+
33
+ if (!/^https:\/\/[\w.-]+\/[\w./-]+(?:\.git)?$/u.test(trimmedValue)) {
34
+ throw new NotAllowed(
35
+ spaceTrim(`
36
+ The upstream repository URL \`${trimmedValue}\` is not a valid public **https** git URL.
37
+ `),
38
+ );
39
+ }
40
+
41
+ return trimmedValue;
42
+ }
43
+
44
+ /**
45
+ * Reads the configured upstream repository URL from `.env` (falling back to the default upstream).
46
+ *
47
+ * @returns Configured upstream URL.
48
+ *
49
+ * @private function of `vpsSelfUpdate`
50
+ */
51
+ export async function readConfiguredVpsSelfUpdateOriginRepositoryUrl(): Promise<string> {
52
+ const configuredUrl = await readVpsSelfUpdateConfiguredEnvironmentValue('PROMPTBOOK_REPOSITORY_URL');
53
+ return configuredUrl?.trim() || VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL;
54
+ }
55
+
56
+ /**
57
+ * Persists the configured upstream repository URL into the standalone VPS `.env` file.
58
+ *
59
+ * Setting the value to the default upstream URL removes any previous override so that the
60
+ * installer falls back to the bundled default the next time it runs.
61
+ *
62
+ * @param originRepositoryUrl - Normalized upstream URL.
63
+ *
64
+ * @private function of `vpsSelfUpdate`
65
+ */
66
+ export async function persistVpsSelfUpdateOriginRepositoryUrl(originRepositoryUrl: string): Promise<void> {
67
+ const environmentFilePath = resolveVpsEnvironmentFilePath();
68
+ let existingContent = '';
69
+ try {
70
+ existingContent = await readFile(environmentFilePath, 'utf-8');
71
+ } catch (error) {
72
+ if ((error as NodeJS.ErrnoException).code !== 'ENOENT') {
73
+ throw error;
74
+ }
75
+ }
76
+
77
+ const lines = existingContent.split(/\r?\n/u);
78
+ const keyPattern = /^\s*(?:export\s+)?PROMPTBOOK_REPOSITORY_URL=/u;
79
+ const isDefaultUpstream = originRepositoryUrl === VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL;
80
+ const filteredLines = lines.filter((line) => !keyPattern.test(line));
81
+
82
+ if (!isDefaultUpstream) {
83
+ filteredLines.push(`PROMPTBOOK_REPOSITORY_URL=${originRepositoryUrl}`);
84
+ }
85
+
86
+ const nextContent = `${filteredLines.join('\n').replace(/\n+$/u, '')}\n`;
87
+ await mkdir(dirname(environmentFilePath), { recursive: true });
88
+ await writeFile(environmentFilePath, nextContent, { encoding: 'utf-8', mode: 0o600 });
89
+ process.env.PROMPTBOOK_REPOSITORY_URL = isDefaultUpstream ? '' : originRepositoryUrl;
90
+ }