@promptbook/cli 0.113.0-1 → 0.113.0-11

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 (735) hide show
  1. package/README.md +1 -17
  2. package/agents/default/developer.book +3 -0
  3. package/apps/agents-server/next.config.ts +6 -3
  4. package/apps/agents-server/src/app/admin/{code-runners/CodeRunnersClient.tsx → harness-auth/HarnessAuthClient.tsx} +98 -65
  5. package/apps/agents-server/src/app/admin/{code-runners → harness-auth}/page.tsx +4 -4
  6. package/apps/agents-server/src/app/admin/resource-monitor/page.tsx +456 -0
  7. package/apps/agents-server/src/app/admin/task-manager/TaskManagerClient.tsx +17 -5
  8. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskLogActions.tsx +150 -0
  9. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskRow.tsx +62 -18
  10. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskTerminalDialog.tsx +125 -0
  11. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTasksCard.tsx +8 -6
  12. package/apps/agents-server/src/app/admin/task-manager/page.tsx +3 -2
  13. package/apps/agents-server/src/app/admin/update/AdvancedOriginRepositoryPanel.tsx +81 -0
  14. package/apps/agents-server/src/app/admin/update/AutomaticSelfUpdateConfigurationCard.tsx +90 -0
  15. package/apps/agents-server/src/app/admin/update/CurrentDeploymentCard.tsx +162 -0
  16. package/apps/agents-server/src/app/admin/update/CustomCommitPicker.tsx +10 -10
  17. package/apps/agents-server/src/app/admin/update/InstalledVersionsCard.tsx +112 -0
  18. package/apps/agents-server/src/app/admin/update/PendingCommitsCard.tsx +87 -0
  19. package/apps/agents-server/src/app/admin/update/TargetEnvironmentCard.tsx +331 -0
  20. package/apps/agents-server/src/app/admin/update/UpdateClient.tsx +35 -878
  21. package/apps/agents-server/src/app/admin/update/UpdateDatabaseMigrationsPanel.tsx +305 -0
  22. package/apps/agents-server/src/app/admin/update/UpdateJobCard.tsx +350 -0
  23. package/apps/agents-server/src/app/admin/update/UpdateOverview.ts +142 -0
  24. package/apps/agents-server/src/app/admin/update/buildDeploymentTimeBehindLabel.ts +29 -0
  25. package/apps/agents-server/src/app/admin/update/formatHumanReadableTimestamp.ts +18 -0
  26. package/apps/agents-server/src/app/admin/update/getUpdateJobFailureMessage.ts +13 -0
  27. package/apps/agents-server/src/app/admin/update/getUpdateJobSuccessMessage.ts +13 -0
  28. package/apps/agents-server/src/app/admin/update/updatePageCardClassName.ts +6 -0
  29. package/apps/agents-server/src/app/admin/update/useUpdateClientState.ts +675 -0
  30. package/apps/agents-server/src/app/agents/[agentName]/AgentChatWrapper.tsx +17 -3
  31. package/apps/agents-server/src/app/agents/[agentName]/api/book/route.ts +13 -1
  32. package/apps/agents-server/src/app/agents/[agentName]/chat/CanonicalAgentChatSurface.tsx +6 -2
  33. package/apps/agents-server/src/app/agents/[agentName]/export-as-transpiled-code/AgentCodePageClient.tsx +14 -559
  34. package/apps/agents-server/src/app/agents/[agentName]/export-as-transpiled-code/AgentCodePageHeader.tsx +84 -0
  35. package/apps/agents-server/src/app/agents/[agentName]/export-as-transpiled-code/AgentCodePageSection.tsx +52 -0
  36. package/apps/agents-server/src/app/agents/[agentName]/export-as-transpiled-code/GeneratedCodePreview.tsx +138 -0
  37. package/apps/agents-server/src/app/agents/[agentName]/export-as-transpiled-code/GeneratedHarnessSection.tsx +98 -0
  38. package/apps/agents-server/src/app/agents/[agentName]/export-as-transpiled-code/SourceBookSection.tsx +66 -0
  39. package/apps/agents-server/src/app/agents/[agentName]/export-as-transpiled-code/TranspiledCodeErrorBanner.tsx +30 -0
  40. package/apps/agents-server/src/app/agents/[agentName]/export-as-transpiled-code/TranspiledCodeExportWarningBanner.tsx +62 -0
  41. package/apps/agents-server/src/app/agents/[agentName]/export-as-transpiled-code/Transpiler.ts +9 -0
  42. package/apps/agents-server/src/app/agents/[agentName]/export-as-transpiled-code/useAgentCodeExportState.ts +478 -0
  43. package/apps/agents-server/src/app/api/admin/chat-tasks/[taskId]/terminal/route.ts +52 -0
  44. package/apps/agents-server/src/app/api/admin/{code-runners → harness-auth}/authentication/route.ts +17 -17
  45. package/apps/agents-server/src/app/api/admin/{code-runners → harness-auth}/route.ts +13 -13
  46. package/apps/agents-server/src/app/api/admin/update/route.ts +55 -8
  47. package/apps/agents-server/src/app/api/admin/update/versions/route.ts +34 -0
  48. package/apps/agents-server/src/app/api/auth/shibboleth/acs/route.ts +4 -2
  49. package/apps/agents-server/src/app/api/auth/shibboleth/login/route.ts +3 -1
  50. package/apps/agents-server/src/app/api/auth/shibboleth/metadata/route.ts +5 -2
  51. package/apps/agents-server/src/app/api/auth/shibboleth/status/route.ts +5 -2
  52. package/apps/agents-server/src/app/api/page-preview/check/route.ts +20 -5
  53. package/apps/agents-server/src/app/api/page-preview/input/route.ts +161 -0
  54. package/apps/agents-server/src/app/api/page-preview/screenshot/route.ts +21 -13
  55. package/apps/agents-server/src/app/api/page-preview/stream/route.ts +81 -0
  56. package/apps/agents-server/src/app/layout.tsx +55 -25
  57. package/apps/agents-server/src/app/system/utilities/mocked-chats/cloneMockedChatPreset.ts +17 -0
  58. package/apps/agents-server/src/app/system/utilities/mocked-chats/confirmDeleteMockedChat.ts +16 -0
  59. package/apps/agents-server/src/app/system/utilities/mocked-chats/createDraftWithUpdatedMessage.ts +81 -0
  60. package/apps/agents-server/src/app/system/utilities/mocked-chats/createDraftWithUpdatedParticipant.ts +146 -0
  61. package/apps/agents-server/src/app/system/utilities/mocked-chats/createDraftWithUpdatedSettings.ts +19 -0
  62. package/apps/agents-server/src/app/system/utilities/mocked-chats/createDuplicatedDraft.ts +66 -0
  63. package/apps/agents-server/src/app/system/utilities/mocked-chats/findMockedChatById.ts +51 -0
  64. package/apps/agents-server/src/app/system/utilities/mocked-chats/persistMockedChats.ts +51 -0
  65. package/apps/agents-server/src/app/system/utilities/mocked-chats/useMockedChatsEditorState.ts +16 -426
  66. package/apps/agents-server/src/components/AdminTerminal/AdminTerminalCard.tsx +32 -24
  67. package/apps/agents-server/src/components/AgentAvatar/AgentAvatar.tsx +1 -1
  68. package/apps/agents-server/src/components/AgentAvatar/DefaultAgentAvatarVisualProvider.tsx +1 -1
  69. package/apps/agents-server/src/components/CronJobConfiguration/CronJobConfiguration.tsx +834 -0
  70. package/apps/agents-server/src/components/Footer/Footer.tsx +38 -15
  71. package/apps/agents-server/src/components/Header/Header.tsx +16 -3
  72. package/apps/agents-server/src/components/Header/HeaderDesktopTopMenuNavigation.tsx +22 -2
  73. package/apps/agents-server/src/components/Header/HeaderHomepageLink.tsx +1 -1
  74. package/apps/agents-server/src/components/Header/HeaderMobileDrawer.tsx +22 -2
  75. package/apps/agents-server/src/components/Header/HeaderTypes.ts +12 -1
  76. package/apps/agents-server/src/components/Header/buildAgentMenuStructure.tsx +6 -4
  77. package/apps/agents-server/src/components/Header/buildDocumentationDropdownItems.tsx +198 -3
  78. package/apps/agents-server/src/components/Header/buildHeaderMenuItems.ts +6 -0
  79. package/apps/agents-server/src/components/Header/buildHeaderSystemMenuItems.ts +185 -18
  80. package/apps/agents-server/src/components/Homepage/buildFreeGraphBoxLayout.ts +446 -0
  81. package/apps/agents-server/src/components/Homepage/buildGraphLayoutNodes.ts +415 -157
  82. package/apps/agents-server/src/components/Homepage/useAgentsGraphCanvasState.ts +2 -1
  83. package/apps/agents-server/src/components/Homepage/useAgentsListState.ts +1 -1
  84. package/apps/agents-server/src/components/LayoutWrapper/LayoutWrapper.tsx +25 -6
  85. package/apps/agents-server/src/constants/defaultAgentAvatarVisual.ts +4 -3
  86. package/apps/agents-server/src/constants/harnessAuthRoutes.ts +20 -0
  87. package/apps/agents-server/src/database/metadataDefaults.ts +1 -1
  88. package/apps/agents-server/src/database/migrate.ts +25 -1
  89. package/apps/agents-server/src/database/migratePrefix.ts +24 -0
  90. package/apps/agents-server/src/database/runDatabaseMigrations.ts +9 -1
  91. package/apps/agents-server/src/database/sqlite/$provideLocalSqliteSupabase.ts +3 -1541
  92. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/LocalSqliteQueryBuilder.ts +623 -0
  93. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/LocalSqliteSupabaseClient.ts +64 -0
  94. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/ensureTable.ts +93 -0
  95. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/localSqliteFilters.ts +202 -0
  96. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/localSqliteMutationPayload.ts +131 -0
  97. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/localSqliteRowOperations.ts +102 -0
  98. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/localSqliteSql.ts +59 -0
  99. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/localSqliteTableSchema.ts +329 -0
  100. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/localSqliteTypes.ts +84 -0
  101. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/localSqliteValueCodec.ts +63 -0
  102. package/apps/agents-server/src/database/sqlite/localSqliteSupabase/normalizeSqliteError.ts +22 -0
  103. package/apps/agents-server/src/instrumentation-node.ts +15 -0
  104. package/apps/agents-server/src/languages/ServerTranslationKeys.ts +2 -1
  105. package/apps/agents-server/src/languages/translations/czech.yaml +3 -2
  106. package/apps/agents-server/src/languages/translations/english.yaml +2 -1
  107. package/apps/agents-server/src/search/createDefaultServerSearchProviders/loadLocalOrganizationSearchDataset.ts +12 -1
  108. package/apps/agents-server/src/tools/send_email.ts +1 -2
  109. package/apps/agents-server/src/{components/Homepage → utils/agentOrganization}/hiddenFolders.ts +49 -29
  110. package/apps/agents-server/src/utils/agentOrganization/loadAgentOrganizationState.ts +13 -1
  111. package/apps/agents-server/src/utils/backup/createServerBackupZipStream.ts +7 -1382
  112. package/apps/agents-server/src/utils/backup/serverBackup/appendAgentBackupEntriesToZip.ts +27 -0
  113. package/apps/agents-server/src/utils/backup/serverBackup/appendConversationBackupEntriesToZip.ts +140 -0
  114. package/apps/agents-server/src/utils/backup/serverBackup/appendFileBackupEntriesToZip.ts +147 -0
  115. package/apps/agents-server/src/utils/backup/serverBackup/appendMessageBackupEntriesToZip.ts +65 -0
  116. package/apps/agents-server/src/utils/backup/serverBackup/appendMetadataBackupEntriesToZip.ts +39 -0
  117. package/apps/agents-server/src/utils/backup/serverBackup/appendSectionEntriesToZip.ts +92 -0
  118. package/apps/agents-server/src/utils/backup/serverBackup/appendUserBackupEntriesToZip.ts +80 -0
  119. package/apps/agents-server/src/utils/backup/serverBackup/createRedactedWalletBackupRecord.ts +34 -0
  120. package/apps/agents-server/src/utils/backup/serverBackup/createServerBackupManifest.ts +82 -0
  121. package/apps/agents-server/src/utils/backup/serverBackup/downloadBackupBinaryContent.ts +39 -0
  122. package/apps/agents-server/src/utils/backup/serverBackup/resolveFeedbackThreadMessages.ts +53 -0
  123. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupAttachments.ts +151 -0
  124. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupContext.ts +167 -0
  125. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupFilenames.ts +161 -0
  126. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupPreviews.ts +97 -0
  127. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupRowUtilities.ts +158 -0
  128. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupTypes.ts +59 -0
  129. package/apps/agents-server/src/utils/chat/createAttachmentAwareCitationLabelResolver.ts +147 -0
  130. package/apps/agents-server/src/utils/chatTasksAdmin.ts +3 -2
  131. package/apps/agents-server/src/utils/createLocalAgentSourceImporter.ts +159 -0
  132. package/apps/agents-server/src/utils/createMissingImportedAgentFallback.ts +60 -0
  133. package/apps/agents-server/src/utils/createPagePreviewBrowserStream.ts +179 -0
  134. package/apps/agents-server/src/utils/customDomainRouting.ts +157 -12
  135. package/apps/agents-server/src/utils/externalChatRunner/processExternalUserChatJob.ts +12 -6
  136. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/GetAdminChatTasksData.ts +12 -0
  137. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskSqlQuery.ts +264 -0
  138. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskSqlValues.ts +35 -0
  139. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskTimeUtilities.ts +30 -0
  140. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/compareAdminChatTasks.ts +135 -0
  141. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/createAdminChatTaskCounters.ts +29 -0
  142. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/filterAdminChatTasks.ts +78 -0
  143. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/getAdminChatTasksViaClientSql.ts +62 -0
  144. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/getAdminChatTasksViaSupabaseQuery.ts +29 -0
  145. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/loadAdminChatTaskFallbackData.ts +193 -0
  146. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/mapAdminChatTaskFallbackRows.ts +99 -0
  147. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/mapAdminChatTaskSqlRows.ts +94 -0
  148. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks.ts +4 -947
  149. package/apps/agents-server/src/utils/getAdminChatTasksResponse/mapVpsSelfUpdateJobToAdminChatTask.ts +18 -5
  150. package/apps/agents-server/src/utils/getAdminChatTasksResponse.ts +103 -41
  151. package/apps/agents-server/src/utils/{codeRunnerAuthentication.ts → harnessAuthentication.ts} +72 -56
  152. package/apps/agents-server/src/utils/{codeRunnerConfiguration.ts → harnessConfiguration.ts} +18 -12
  153. package/apps/agents-server/src/utils/importAgentWithFallback.ts +1 -58
  154. package/apps/agents-server/src/utils/localAgentRouteReferences.ts +167 -0
  155. package/apps/agents-server/src/utils/localChatRunner/processLocalUserChatJob.ts +21 -6
  156. package/apps/agents-server/src/utils/managementApi/managementApiAgents.ts +17 -3
  157. package/apps/agents-server/src/utils/messages/sendMessage.ts +5 -3
  158. package/apps/agents-server/src/utils/pagePreviewBrowserSessions.ts +246 -0
  159. package/apps/agents-server/src/utils/resolveAgentStateFromSource.ts +7 -1
  160. package/apps/agents-server/src/utils/resolveInheritedAgentSource.ts +54 -5
  161. package/apps/agents-server/src/utils/resolveServerAgentContext.ts +12 -1
  162. package/apps/agents-server/src/utils/resolveStoredAgentState.ts +2 -1
  163. package/apps/agents-server/src/utils/resourceMonitor/formatResourceMonitorValue.ts +50 -0
  164. package/apps/agents-server/src/utils/resourceMonitor/readCpuResourceUsage.ts +75 -0
  165. package/apps/agents-server/src/utils/resourceMonitor/readDiskResourceUsage.ts +42 -0
  166. package/apps/agents-server/src/utils/resourceMonitor/readMemoryResourceUsage.ts +28 -0
  167. package/apps/agents-server/src/utils/resourceMonitor/readNetworkResourceUsage.ts +271 -0
  168. package/apps/agents-server/src/utils/resourceMonitor/readServerResourceMonitorSnapshot.ts +47 -0
  169. package/apps/agents-server/src/utils/resourceMonitor/resolveServerResourceWarningStatus.ts +72 -0
  170. package/apps/agents-server/src/utils/resourceMonitor/resourceMonitorConstants.ts +29 -0
  171. package/apps/agents-server/src/utils/resourceMonitor/resourceMonitorTypes.ts +155 -0
  172. package/apps/agents-server/src/utils/resourceMonitor/waitForResourceMonitorSample.ts +11 -0
  173. package/apps/agents-server/src/utils/shibbolethAuthentication/createShibbolethSamlClient.ts +35 -0
  174. package/apps/agents-server/src/utils/shibbolethAuthentication/createShibbolethServiceProviderMetadataXml.ts +25 -0
  175. package/apps/agents-server/src/utils/shibbolethAuthentication/extractShibbolethProfileAttributes.ts +173 -0
  176. package/apps/agents-server/src/utils/shibbolethAuthentication/fetchIdentityProviderMetadataXml.ts +21 -0
  177. package/apps/agents-server/src/utils/shibbolethAuthentication/findOrCreateShibbolethUser.ts +323 -0
  178. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethAuthenticationAttemptTableName.ts +13 -0
  179. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethRequestDetails.ts +19 -0
  180. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethUserIdentityTableName.ts +13 -0
  181. package/apps/agents-server/src/utils/shibbolethAuthentication/parseIdentityProviderMetadataXml.ts +110 -0
  182. package/apps/agents-server/src/utils/shibbolethAuthentication/recordShibbolethAuthenticationAttempt.ts +57 -0
  183. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethAuthenticationConfiguration.ts +78 -0
  184. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethPublicRequestUrl.ts +101 -0
  185. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethServiceProviderUrls.ts +63 -0
  186. package/apps/agents-server/src/utils/shibbolethAuthentication/sanitizeShibbolethRelayState.ts +17 -0
  187. package/apps/agents-server/src/utils/shibbolethAuthentication/shibbolethAuthenticationConstants.ts +62 -0
  188. package/apps/agents-server/src/utils/shibbolethAuthentication/shibbolethAuthenticationTypes.ts +105 -0
  189. package/apps/agents-server/src/utils/shibbolethAuthentication.ts +25 -957
  190. package/apps/agents-server/src/utils/speech-to-text/SpeechToTextFailoverRecognition/SpeechToTextFailoverRecognitionProviderRuntime.ts +0 -1
  191. package/apps/agents-server/src/utils/speech-to-text/SpeechToTextFailoverRecognition.ts +34 -2
  192. package/apps/agents-server/src/utils/taskTerminal/resolveAdminTaskTerminalSession.ts +535 -0
  193. package/apps/agents-server/src/utils/taskTerminal/runWithTaskTerminalCapture.ts +134 -0
  194. package/apps/agents-server/src/utils/taskTerminal/taskTerminalLog.ts +360 -0
  195. package/apps/agents-server/src/utils/userChat/finalizeUserChatJob.ts +16 -0
  196. package/apps/agents-server/src/utils/userChat/userChatMessageLifecycle.ts +39 -9
  197. package/apps/agents-server/src/utils/userChatTimeout/userChatTimeoutStore/updateUserChatTimeoutTerminalState.ts +3 -0
  198. package/apps/agents-server/src/utils/userChatTimeout/userChatTimeoutWorker.ts +4 -1
  199. package/apps/agents-server/src/utils/vpsConfiguration.ts +7 -3
  200. package/apps/agents-server/src/utils/vpsSelfUpdate/deleteVpsSelfUpdateInstalledVersion.ts +81 -0
  201. package/apps/agents-server/src/utils/vpsSelfUpdate/listVpsSelfUpdateCandidateCommits.ts +217 -0
  202. package/apps/agents-server/src/utils/vpsSelfUpdate/readAgentsServerFooterVersion.ts +335 -0
  203. package/apps/agents-server/src/utils/vpsSelfUpdate/readPersistedVpsSelfUpdateJob.ts +310 -0
  204. package/apps/agents-server/src/utils/vpsSelfUpdate/readVpsSelfUpdateOverview.ts +178 -0
  205. package/apps/agents-server/src/utils/vpsSelfUpdate/resolveVpsSelfUpdateJobForOverview.ts +42 -0
  206. package/apps/agents-server/src/utils/vpsSelfUpdate/startVpsSelfUpdate.ts +201 -0
  207. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateAutomaticConfiguration.ts +152 -0
  208. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateConfiguration.ts +81 -0
  209. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateCron.ts +357 -0
  210. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateEnvironment.ts +120 -0
  211. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateInstalledVersions.ts +162 -0
  212. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobConstants.ts +15 -0
  213. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobHistory.ts +490 -0
  214. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobIdentity.ts +26 -0
  215. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateOriginRepository.ts +90 -0
  216. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateRepository.ts +286 -0
  217. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateScheduler.ts +191 -0
  218. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateStateFiles.ts +197 -0
  219. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateTypes.ts +452 -0
  220. package/apps/agents-server/src/utils/vpsSelfUpdate.ts +66 -1547
  221. package/apps/agents-server/tests/e2e/support/ChatHistoryNavigationSupport.ts +5 -0
  222. package/esm/apps/agents-server/src/database/migratePrefix.d.ts +19 -0
  223. package/esm/apps/agents-server/src/database/runDatabaseMigrations.d.ts +4 -0
  224. package/esm/book/scripts/import-markdown/increaseHeadings.d.ts +8 -0
  225. package/esm/index.es.js +30174 -28539
  226. package/esm/index.es.js.map +1 -1
  227. package/esm/scripts/find-refactor-candidates/find-refactor-candidates.d.ts +7 -0
  228. package/esm/scripts/find-refactor-candidates/selectMostImportantRefactorCandidates.d.ts +12 -0
  229. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentAutoPuller.d.ts +27 -0
  230. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentGithubSynchronizer.d.ts +26 -0
  231. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentRunUiPresenter.d.ts +66 -0
  232. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/RunMultipleAgentMessageTaskScheduler.d.ts +67 -0
  233. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/formatProjectPath.d.ts +6 -0
  234. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/loadLocalAgentRunnerProjectSummaries.d.ts +11 -0
  235. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/wait.d.ts +6 -0
  236. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages.d.ts +1 -1
  237. package/esm/scripts/run-codex-prompts/common/buildCoderRunProgressSnapshot.d.ts +1 -1
  238. package/esm/scripts/run-codex-prompts/common/cliProgressDisplay.d.ts +2 -1
  239. package/esm/scripts/run-codex-prompts/common/resolveCoderAgent.d.ts +20 -0
  240. package/esm/scripts/run-codex-prompts/common/sleepWithCountdown.d.ts +1 -0
  241. package/esm/scripts/run-codex-prompts/common/waitUntilWorldTimeDeadline.d.ts +17 -0
  242. package/esm/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeRunner.d.ts +4 -0
  243. package/esm/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeSessionResurrection.d.ts +37 -0
  244. package/esm/scripts/run-codex-prompts/runners/claude-code/parseClaudeCodeOutputEvents.d.ts +47 -0
  245. package/esm/scripts/run-codex-prompts/ui/CoderRunUiState.d.ts +8 -1
  246. package/esm/scripts/run-codex-prompts/ui/buildCoderRunAgentVisual.d.ts +41 -0
  247. package/esm/scripts/run-codex-prompts/ui/buildCoderRunUiFrame.d.ts +10 -0
  248. package/esm/scripts/run-codex-prompts/ui/coderRunUiRefresh.d.ts +2 -2
  249. package/esm/src/_packages/types.index.d.ts +2 -2
  250. package/esm/src/avatars/renderAvatarVisualAsciiArt.d.ts +98 -0
  251. package/esm/src/avatars/visuals/octopus3dAvatarVisualShared.d.ts +1 -1
  252. package/esm/src/book-components/BookEditor/BookEditorMonacoUploadPanel.d.ts +1 -1
  253. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.d.ts +120 -0
  254. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.d.ts +6 -0
  255. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.d.ts +26 -0
  256. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.d.ts +23 -0
  257. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.d.ts +21 -0
  258. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.d.ts +12 -0
  259. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.d.ts +27 -0
  260. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.d.ts +12 -0
  261. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads.d.ts +5 -58
  262. package/esm/src/book-components/Chat/Chat/ChatImageAttachmentModal.d.ts +25 -0
  263. package/esm/src/book-components/Chat/Chat/ChatInputArea.d.ts +3 -0
  264. package/esm/src/book-components/Chat/Chat/ChatMessageAttachments.d.ts +27 -0
  265. package/esm/src/book-components/Chat/Chat/ChatMessageItem.d.ts +1 -1
  266. package/esm/src/book-components/Chat/Chat/ChatMessageList.d.ts +1 -0
  267. package/esm/src/book-components/Chat/Chat/ChatProps.d.ts +8 -0
  268. package/esm/src/book-components/Chat/Chat/CitationIframePreview.d.ts +1 -1
  269. package/esm/src/book-components/Chat/Chat/CitationIframePreview.test.d.ts +2 -0
  270. package/esm/src/book-components/Chat/Chat/insertDictationChunk.d.ts +1 -1
  271. package/esm/src/book-components/Chat/Chat/insertDictationChunk.test.d.ts +1 -0
  272. package/esm/src/book-components/Chat/Chat/learnDictationDictionary.test.d.ts +1 -0
  273. package/esm/src/book-components/Chat/Chat/refineFinalDictationChunk.test.d.ts +1 -0
  274. package/esm/src/book-components/Chat/Chat/useChatInputAreaComposer.d.ts +12 -0
  275. package/esm/src/book-components/Chat/Chat/useChatInputAreaComposer.draftMessage.test.d.ts +2 -0
  276. package/esm/src/book-components/Chat/utils/isVisibleChatToolCall.d.ts +1 -1
  277. package/esm/src/book-components/Chat/utils/parseMessageButtons.d.ts +16 -2
  278. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.d.ts +6 -0
  279. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.d.ts +6 -0
  280. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.d.ts +6 -0
  281. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.d.ts +10 -0
  282. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.d.ts +10 -0
  283. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.d.ts +6 -0
  284. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.d.ts +18 -0
  285. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.d.ts +6 -0
  286. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +28 -0
  287. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.d.ts +19 -0
  288. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.d.ts +11 -0
  289. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.d.ts +6 -0
  290. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.d.ts +6 -0
  291. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.d.ts +7 -0
  292. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.d.ts +6 -0
  293. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.d.ts +6 -0
  294. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.d.ts +6 -0
  295. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.d.ts +6 -0
  296. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.d.ts +6 -0
  297. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.d.ts +6 -0
  298. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.d.ts +6 -0
  299. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.d.ts +9 -0
  300. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.d.ts +8 -0
  301. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.d.ts +6 -0
  302. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.d.ts +9 -0
  303. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.d.ts +7 -0
  304. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.d.ts +6 -0
  305. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.d.ts +6 -0
  306. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.d.ts +12 -0
  307. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.d.ts +6 -0
  308. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.d.ts +11 -0
  309. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.d.ts +7 -0
  310. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +8 -109
  311. package/esm/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.d.ts +1 -1
  312. package/esm/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.d.ts +1 -1
  313. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.d.ts +16 -0
  314. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.d.ts +30 -0
  315. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.d.ts +19 -0
  316. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.d.ts +37 -0
  317. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.d.ts +9 -0
  318. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.d.ts +13 -0
  319. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.d.ts +24 -0
  320. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.d.ts +6 -0
  321. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.d.ts +9 -0
  322. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.d.ts +13 -0
  323. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.d.ts +6 -0
  324. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.d.ts +18 -0
  325. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.d.ts +6 -0
  326. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.d.ts +7 -0
  327. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.d.ts +20 -0
  328. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.d.ts +15 -0
  329. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.d.ts +8 -0
  330. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.d.ts +16 -0
  331. package/esm/src/cli/cli-commands/agents-server/startAgentsServer.d.ts +3 -30
  332. package/esm/src/cli/cli-commands/common/createPositiveIntegerOptionParser.d.ts +10 -0
  333. package/esm/src/cli/cli-commands/common/promptRunnerCliOptions.d.ts +1 -1
  334. package/esm/src/collection/agent-collection/CreateAgentInput.d.ts +1 -1
  335. package/esm/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.d.ts +1 -1
  336. package/esm/src/commitments/META/META.d.ts +2 -2
  337. package/esm/src/commitments/META_AVATAR/META_AVATAR.d.ts +9 -4
  338. package/esm/src/commitments/index.d.ts +1 -1
  339. package/esm/src/conversion/validation/validatePipeline/createPipelineValidationContext.d.ts +16 -0
  340. package/esm/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.d.ts +7 -0
  341. package/esm/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.d.ts +7 -0
  342. package/esm/src/conversion/validation/validatePipeline/validatePipelineMetadata.d.ts +7 -0
  343. package/esm/src/conversion/validation/validatePipeline/validatePipelineParameters.d.ts +7 -0
  344. package/esm/src/conversion/validation/validatePipeline/validatePipelineTasks.d.ts +7 -0
  345. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.d.ts +46 -0
  346. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.d.ts +11 -0
  347. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.d.ts +7 -0
  348. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.d.ts +7 -0
  349. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.d.ts +7 -0
  350. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.d.ts +14 -0
  351. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.d.ts +7 -0
  352. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  353. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.d.ts +7 -0
  354. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.d.ts +7 -0
  355. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.d.ts +9 -0
  356. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.d.ts +7 -0
  357. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.d.ts +7 -0
  358. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.d.ts +7 -0
  359. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.d.ts +8 -0
  360. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  361. package/esm/src/utils/agent-message-runtime/agentMessageRuntimePaths.d.ts +24 -0
  362. package/esm/src/utils/agents/resolveAgentAvatarImageUrl.d.ts +2 -2
  363. package/esm/src/utils/agents/terminalAgentAvatarVisual.d.ts +94 -0
  364. package/esm/src/utils/agents/terminalAgentAvatarVisual.test.d.ts +1 -0
  365. package/esm/src/utils/ascii-art/$detectTerminalAnsiColorDepth.d.ts +15 -0
  366. package/esm/src/utils/ascii-art/convertImageDataToAsciiArt.d.ts +80 -0
  367. package/esm/src/utils/color/Color.d.ts +1 -1
  368. package/esm/src/version.d.ts +1 -1
  369. package/package.json +1 -1
  370. package/src/_packages/types.index.ts +2 -2
  371. package/src/avatars/Avatar.tsx +2 -13
  372. package/src/avatars/avatarAnimationScheduler.ts +2 -1
  373. package/src/avatars/renderAvatarVisual.ts +2 -13
  374. package/src/avatars/renderAvatarVisualAsciiArt.ts +257 -0
  375. package/src/avatars/visuals/asciiOctopusAvatarVisual.ts +1 -6
  376. package/src/avatars/visuals/avatarVisualRegistry.ts +1 -1
  377. package/src/avatars/visuals/minecraft2AvatarVisual.ts +1 -2
  378. package/src/avatars/visuals/octopus2AvatarVisual.ts +1 -5
  379. package/src/avatars/visuals/octopus3AvatarVisual.ts +1 -8
  380. package/src/avatars/visuals/octopus3d2AvatarVisual.ts +4 -13
  381. package/src/avatars/visuals/octopus3d3AvatarVisual.ts +10 -15
  382. package/src/avatars/visuals/octopus3d4AvatarVisual.ts +18 -31
  383. package/src/avatars/visuals/octopus3dAvatarVisual.ts +3 -3
  384. package/src/avatars/visuals/octopus3dAvatarVisualShared.ts +2 -7
  385. package/src/book-2.0/agent-source/parseAgentSource/applyMetaCommitment.ts +2 -1
  386. package/src/book-2.0/book-language-documentation/createStandaloneBookLanguageMarkdown.ts +3 -5
  387. package/src/book-3.0/CliAgent.ts +1 -7
  388. package/src/book-3.0/LiteAgent.ts +5 -5
  389. package/src/book-components/AvatarProfile/AvatarProfile/AvatarProfile.tsx +1 -4
  390. package/src/book-components/BookEditor/BookEditor.tsx +2 -2
  391. package/src/book-components/BookEditor/BookEditorAboutPromptbookInformation.tsx +3 -2
  392. package/src/book-components/BookEditor/BookEditorActionbar.tsx +1 -1
  393. package/src/book-components/BookEditor/BookEditorMonaco.tsx +2 -2
  394. package/src/book-components/BookEditor/BookEditorMonacoUploadPanel.tsx +1 -1
  395. package/src/book-components/BookEditor/useBookEditorMonacoLanguage.ts +1 -1
  396. package/src/book-components/BookEditor/useBookEditorMonacoStyles.ts +1 -1
  397. package/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.ts +147 -0
  398. package/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.ts +10 -0
  399. package/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.ts +209 -0
  400. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.ts +164 -0
  401. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.ts +121 -0
  402. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.ts +81 -0
  403. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.ts +360 -0
  404. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.ts +47 -0
  405. package/src/book-components/BookEditor/useBookEditorMonacoUploads.ts +10 -1067
  406. package/src/book-components/Chat/Chat/Chat.module.css +199 -12
  407. package/src/book-components/Chat/Chat/Chat.tsx +16 -1
  408. package/src/book-components/Chat/Chat/ChatCitationModal.tsx +2 -2
  409. package/src/book-components/Chat/Chat/ChatImageAttachmentModal.tsx +108 -0
  410. package/src/book-components/Chat/Chat/ChatInputArea.tsx +43 -27
  411. package/src/book-components/Chat/Chat/ChatMessageAttachments.tsx +212 -0
  412. package/src/book-components/Chat/Chat/ChatMessageItem.tsx +32 -18
  413. package/src/book-components/Chat/Chat/ChatMessageList.tsx +3 -0
  414. package/src/book-components/Chat/Chat/ChatProps.tsx +9 -0
  415. package/src/book-components/Chat/Chat/CitationIframePreview.tsx +108 -156
  416. package/src/book-components/Chat/Chat/createProgressCardChecklistMarkdown.ts +1 -8
  417. package/src/book-components/Chat/Chat/insertDictationChunk.ts +3 -3
  418. package/src/book-components/Chat/Chat/learnDictationDictionary.ts +1 -1
  419. package/src/book-components/Chat/Chat/renderTimeoutToolCallDetails.tsx +1 -5
  420. package/src/book-components/Chat/Chat/useChatInputAreaComposer.ts +59 -7
  421. package/src/book-components/Chat/Chat/useChatInputAreaDictation.ts +140 -33
  422. package/src/book-components/Chat/Chat/useChatToolCallModalState.ts +1 -4
  423. package/src/book-components/Chat/hooks/useChatRatings.ts +1 -1
  424. package/src/book-components/Chat/save/html/htmlSaveFormatDefinition.ts +2 -3
  425. package/src/book-components/Chat/save/markdown/mdSaveFormatDefinition.ts +2 -2
  426. package/src/book-components/Chat/save/pdf/buildChatPdf.ts +1 -1
  427. package/src/book-components/Chat/utils/getToolCallChipletInfo.ts +1 -5
  428. package/src/book-components/Chat/utils/isVisibleChatToolCall.ts +2 -1
  429. package/src/book-components/Chat/utils/parseMessageButtons.ts +27 -2
  430. package/src/cli/cli-commands/about.ts +1 -1
  431. package/src/cli/cli-commands/agent/agentCliOptions.ts +2 -5
  432. package/src/cli/cli-commands/agent-folder/agentProjectPaths.ts +6 -12
  433. package/src/cli/cli-commands/agent-folder/init.ts +3 -8
  434. package/src/cli/cli-commands/agent-folder/initializeAgentProjectConfiguration.ts +2 -11
  435. package/src/cli/cli-commands/agent-folder/printAgentInitializationSummary.ts +2 -9
  436. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.ts +6 -0
  437. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.ts +6 -0
  438. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.ts +6 -0
  439. package/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.ts +11 -0
  440. package/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.ts +9 -0
  441. package/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.ts +6 -0
  442. package/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.ts +19 -0
  443. package/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.ts +71 -0
  444. package/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.ts +69 -0
  445. package/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.ts +59 -0
  446. package/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.ts +23 -0
  447. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.ts +20 -0
  448. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.ts +17 -0
  449. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.ts +27 -0
  450. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.ts +21 -0
  451. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.ts +22 -0
  452. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.ts +30 -0
  453. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.ts +41 -0
  454. package/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.ts +14 -0
  455. package/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.ts +10 -0
  456. package/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.ts +10 -0
  457. package/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.ts +31 -0
  458. package/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.ts +35 -0
  459. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.ts +33 -0
  460. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.ts +30 -0
  461. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.ts +19 -0
  462. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.ts +21 -0
  463. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.ts +19 -0
  464. package/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.ts +184 -0
  465. package/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.ts +48 -0
  466. package/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.ts +179 -0
  467. package/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.ts +28 -0
  468. package/src/cli/cli-commands/agents-server/buildAgentsServer.ts +22 -1043
  469. package/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.ts +2 -1
  470. package/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.ts +2 -1
  471. package/src/cli/cli-commands/agents-server/run.ts +2 -5
  472. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.ts +67 -0
  473. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.ts +43 -0
  474. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.ts +44 -0
  475. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.ts +59 -0
  476. package/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.ts +9 -0
  477. package/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.ts +14 -0
  478. package/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.ts +26 -0
  479. package/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.ts +15 -0
  480. package/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.ts +29 -0
  481. package/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.ts +32 -0
  482. package/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.ts +18 -0
  483. package/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.ts +81 -0
  484. package/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.ts +52 -0
  485. package/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.ts +17 -0
  486. package/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.ts +97 -0
  487. package/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.ts +132 -0
  488. package/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.ts +14 -0
  489. package/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.ts +132 -0
  490. package/src/cli/cli-commands/agents-server/startAgentsServer.ts +24 -797
  491. package/src/cli/cli-commands/agents-server.ts +2 -6
  492. package/src/cli/cli-commands/coder/agentCodingFile.ts +1 -7
  493. package/src/cli/cli-commands/coder/boilerplateTemplates.ts +14 -21
  494. package/src/cli/cli-commands/coder/find-refactor-candidates.ts +9 -2
  495. package/src/cli/cli-commands/coder/generate-boilerplates.ts +2 -6
  496. package/src/cli/cli-commands/coder/initializeCoderProjectConfiguration.ts +2 -10
  497. package/src/cli/cli-commands/coder/run.ts +3 -27
  498. package/src/cli/cli-commands/coder/server.ts +4 -2
  499. package/src/cli/cli-commands/common/createPositiveIntegerOptionParser.ts +31 -0
  500. package/src/cli/cli-commands/common/promptRunnerCliOptions.ts +3 -8
  501. package/src/cli/cli-commands/make.ts +1 -1
  502. package/src/cli/cli-commands/run/runCommandAction.ts +1 -1
  503. package/src/cli/promptbookCli.ts +28 -3
  504. package/src/collection/agent-collection/CreateAgentInput.ts +2 -5
  505. package/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.ts +1 -1
  506. package/src/commitments/MEMORY/createMemoryToolFunctions.ts +1 -10
  507. package/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.ts +1 -10
  508. package/src/commitments/MEMORY/parseMemoryToolArgs.ts +1 -6
  509. package/src/commitments/META/META.ts +4 -4
  510. package/src/commitments/META_AVATAR/META_AVATAR.ts +16 -10
  511. package/src/commitments/TEAM/TEAM.ts +5 -5
  512. package/src/commitments/USE_CALENDAR/createUseCalendarToolFunctions.ts +1 -4
  513. package/src/commitments/USE_PROJECT/createUseProjectToolFunctions.ts +2 -10
  514. package/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.ts +1 -11
  515. package/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.ts +1 -6
  516. package/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.ts +1 -6
  517. package/src/commitments/WALLET/createWalletToolFunctions.ts +2 -11
  518. package/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.ts +1 -6
  519. package/src/commitments/WALLET/parseWalletToolArgs.ts +1 -10
  520. package/src/commitments/index.ts +1 -0
  521. package/src/conversion/parsePipeline/applyPipelineHead.ts +1 -1
  522. package/src/conversion/parsePipeline/createUniqueSectionNameResolver.ts +1 -1
  523. package/src/conversion/parsePipeline/processPipelineSection.ts +1 -1
  524. package/src/conversion/validation/validatePipeline/createPipelineValidationContext.ts +43 -0
  525. package/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.ts +72 -0
  526. package/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.ts +220 -0
  527. package/src/conversion/validation/validatePipeline/validatePipelineMetadata.ts +66 -0
  528. package/src/conversion/validation/validatePipeline/validatePipelineParameters.ts +136 -0
  529. package/src/conversion/validation/validatePipeline/validatePipelineTasks.ts +243 -0
  530. package/src/conversion/validation/validatePipeline.ts +7 -750
  531. package/src/execution/LlmExecutionTools.ts +1 -6
  532. package/src/execution/createPipelineExecutor/getReservedParametersForTask.ts +1 -5
  533. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.ts +51 -0
  534. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.ts +30 -0
  535. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.ts +62 -0
  536. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.ts +10 -0
  537. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.ts +75 -0
  538. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.ts +101 -0
  539. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.ts +24 -0
  540. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.ts +17 -0
  541. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.ts +15 -0
  542. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.ts +19 -0
  543. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.ts +44 -0
  544. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.ts +21 -0
  545. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.ts +97 -0
  546. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.ts +17 -0
  547. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.ts +30 -0
  548. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.ts +32 -0
  549. package/src/llm-providers/_common/register/$registeredLlmToolsMessage.ts +5 -568
  550. package/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.ts +1 -6
  551. package/src/llm-providers/openai/OpenAiAgentKitExecutionTools.ts +2 -2
  552. package/src/llm-providers/openai/OpenAiAssistantExecutionTools.ts +1 -1
  553. package/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.ts +2 -2
  554. package/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.ts +1 -1
  555. package/src/llm-providers/openai/OpenAiCompatibleExecutionTools.ts +2 -7
  556. package/src/llm-providers/openai/utils/OpenAiCompatibleChatPromptBuilder.ts +1 -1
  557. package/src/llm-providers/openai/utils/OpenAiCompatibleChatToolCaller.ts +2 -2
  558. package/src/llm-providers/openai/utils/OpenAiCompatibleUnsupportedParameterRetrier.ts +1 -5
  559. package/src/llm-providers/openai/utils/buildToolInvocationScript.ts +1 -6
  560. package/src/other/templates/getTemplatesPipelineCollection.ts +840 -755
  561. package/src/remote-server/startRemoteServer/registerExecutionRoutes.ts +1 -1
  562. package/src/remote-server/startRemoteServer/registerServerIndexRoute.ts +1 -1
  563. package/src/scrapers/_common/utils/makeKnowledgeSourceHandler.ts +1 -6
  564. package/src/speech-recognition/OpenAiSpeechRecognition.ts +1 -6
  565. package/src/transpilers/_common/prepareSdkTranspilerContext.ts +1 -4
  566. package/src/types/Prompt.ts +1 -7
  567. package/src/types/string_host.ts +1 -9
  568. package/src/types/string_pipeline_url.ts +1 -4
  569. package/src/utils/agent-message-runtime/agentMessageRuntimePaths.ts +66 -0
  570. package/src/utils/agents/resolveAgentAvatarImageUrl.ts +2 -2
  571. package/src/utils/agents/terminalAgentAvatarVisual.ts +261 -0
  572. package/src/utils/ascii-art/$detectTerminalAnsiColorDepth.ts +45 -0
  573. package/src/utils/ascii-art/convertImageDataToAsciiArt.ts +396 -0
  574. package/src/utils/color/Color.ts +2 -2
  575. package/src/utils/markdown/parseMarkdownSection.ts +1 -5
  576. package/src/utils/random/$randomFullnameWithColor.ts +1 -6
  577. package/src/version.ts +2 -2
  578. package/src/versions.txt +7 -0
  579. package/umd/apps/agents-server/src/database/migratePrefix.d.ts +19 -0
  580. package/umd/apps/agents-server/src/database/runDatabaseMigrations.d.ts +4 -0
  581. package/umd/book/scripts/import-markdown/increaseHeadings.d.ts +8 -0
  582. package/umd/index.umd.js +30176 -28541
  583. package/umd/index.umd.js.map +1 -1
  584. package/umd/scripts/find-refactor-candidates/find-refactor-candidates.d.ts +7 -0
  585. package/umd/scripts/find-refactor-candidates/selectMostImportantRefactorCandidates.d.ts +12 -0
  586. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentAutoPuller.d.ts +27 -0
  587. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentGithubSynchronizer.d.ts +26 -0
  588. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentRunUiPresenter.d.ts +66 -0
  589. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/RunMultipleAgentMessageTaskScheduler.d.ts +67 -0
  590. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/formatProjectPath.d.ts +6 -0
  591. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/loadLocalAgentRunnerProjectSummaries.d.ts +11 -0
  592. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/wait.d.ts +6 -0
  593. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages.d.ts +1 -1
  594. package/umd/scripts/run-codex-prompts/common/buildCoderRunProgressSnapshot.d.ts +1 -1
  595. package/umd/scripts/run-codex-prompts/common/cliProgressDisplay.d.ts +2 -1
  596. package/umd/scripts/run-codex-prompts/common/resolveCoderAgent.d.ts +20 -0
  597. package/umd/scripts/run-codex-prompts/common/sleepWithCountdown.d.ts +1 -0
  598. package/umd/scripts/run-codex-prompts/common/waitUntilWorldTimeDeadline.d.ts +17 -0
  599. package/umd/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeRunner.d.ts +4 -0
  600. package/umd/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeSessionResurrection.d.ts +37 -0
  601. package/umd/scripts/run-codex-prompts/runners/claude-code/parseClaudeCodeOutputEvents.d.ts +47 -0
  602. package/umd/scripts/run-codex-prompts/ui/CoderRunUiState.d.ts +8 -1
  603. package/umd/scripts/run-codex-prompts/ui/buildCoderRunAgentVisual.d.ts +41 -0
  604. package/umd/scripts/run-codex-prompts/ui/buildCoderRunUiFrame.d.ts +10 -0
  605. package/umd/scripts/run-codex-prompts/ui/coderRunUiRefresh.d.ts +2 -2
  606. package/umd/src/_packages/types.index.d.ts +2 -2
  607. package/umd/src/avatars/renderAvatarVisualAsciiArt.d.ts +98 -0
  608. package/umd/src/avatars/visuals/octopus3dAvatarVisualShared.d.ts +1 -1
  609. package/umd/src/book-components/BookEditor/BookEditorMonacoUploadPanel.d.ts +1 -1
  610. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.d.ts +120 -0
  611. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.d.ts +6 -0
  612. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.d.ts +26 -0
  613. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.d.ts +23 -0
  614. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.d.ts +21 -0
  615. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.d.ts +12 -0
  616. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.d.ts +27 -0
  617. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.d.ts +12 -0
  618. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads.d.ts +5 -58
  619. package/umd/src/book-components/Chat/Chat/ChatImageAttachmentModal.d.ts +25 -0
  620. package/umd/src/book-components/Chat/Chat/ChatInputArea.d.ts +3 -0
  621. package/umd/src/book-components/Chat/Chat/ChatMessageAttachments.d.ts +27 -0
  622. package/umd/src/book-components/Chat/Chat/ChatMessageItem.d.ts +1 -1
  623. package/umd/src/book-components/Chat/Chat/ChatMessageList.d.ts +1 -0
  624. package/umd/src/book-components/Chat/Chat/ChatProps.d.ts +8 -0
  625. package/umd/src/book-components/Chat/Chat/CitationIframePreview.d.ts +1 -1
  626. package/umd/src/book-components/Chat/Chat/CitationIframePreview.test.d.ts +2 -0
  627. package/umd/src/book-components/Chat/Chat/insertDictationChunk.d.ts +1 -1
  628. package/umd/src/book-components/Chat/Chat/insertDictationChunk.test.d.ts +1 -0
  629. package/umd/src/book-components/Chat/Chat/learnDictationDictionary.test.d.ts +1 -0
  630. package/umd/src/book-components/Chat/Chat/refineFinalDictationChunk.test.d.ts +1 -0
  631. package/umd/src/book-components/Chat/Chat/useChatInputAreaComposer.d.ts +12 -0
  632. package/umd/src/book-components/Chat/Chat/useChatInputAreaComposer.draftMessage.test.d.ts +2 -0
  633. package/umd/src/book-components/Chat/utils/isVisibleChatToolCall.d.ts +1 -1
  634. package/umd/src/book-components/Chat/utils/parseMessageButtons.d.ts +16 -2
  635. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.d.ts +6 -0
  636. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.d.ts +6 -0
  637. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.d.ts +6 -0
  638. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.d.ts +10 -0
  639. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.d.ts +10 -0
  640. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.d.ts +6 -0
  641. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.d.ts +18 -0
  642. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.d.ts +6 -0
  643. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +28 -0
  644. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.d.ts +19 -0
  645. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.d.ts +11 -0
  646. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.d.ts +6 -0
  647. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.d.ts +6 -0
  648. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.d.ts +7 -0
  649. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.d.ts +6 -0
  650. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.d.ts +6 -0
  651. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.d.ts +6 -0
  652. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.d.ts +6 -0
  653. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.d.ts +6 -0
  654. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.d.ts +6 -0
  655. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.d.ts +6 -0
  656. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.d.ts +9 -0
  657. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.d.ts +8 -0
  658. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.d.ts +6 -0
  659. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.d.ts +9 -0
  660. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.d.ts +7 -0
  661. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.d.ts +6 -0
  662. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.d.ts +6 -0
  663. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.d.ts +12 -0
  664. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.d.ts +6 -0
  665. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.d.ts +11 -0
  666. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.d.ts +7 -0
  667. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +8 -109
  668. package/umd/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.d.ts +1 -1
  669. package/umd/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.d.ts +1 -1
  670. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.d.ts +16 -0
  671. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.d.ts +30 -0
  672. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.d.ts +19 -0
  673. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.d.ts +37 -0
  674. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.d.ts +9 -0
  675. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.d.ts +13 -0
  676. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.d.ts +24 -0
  677. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.d.ts +6 -0
  678. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.d.ts +9 -0
  679. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.d.ts +13 -0
  680. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.d.ts +6 -0
  681. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.d.ts +18 -0
  682. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.d.ts +6 -0
  683. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.d.ts +7 -0
  684. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.d.ts +20 -0
  685. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.d.ts +15 -0
  686. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.d.ts +8 -0
  687. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.d.ts +16 -0
  688. package/umd/src/cli/cli-commands/agents-server/startAgentsServer.d.ts +3 -30
  689. package/umd/src/cli/cli-commands/common/createPositiveIntegerOptionParser.d.ts +10 -0
  690. package/umd/src/cli/cli-commands/common/promptRunnerCliOptions.d.ts +1 -1
  691. package/umd/src/collection/agent-collection/CreateAgentInput.d.ts +1 -1
  692. package/umd/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.d.ts +1 -1
  693. package/umd/src/commitments/META/META.d.ts +2 -2
  694. package/umd/src/commitments/META_AVATAR/META_AVATAR.d.ts +9 -4
  695. package/umd/src/commitments/index.d.ts +1 -1
  696. package/umd/src/conversion/validation/validatePipeline/createPipelineValidationContext.d.ts +16 -0
  697. package/umd/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.d.ts +7 -0
  698. package/umd/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.d.ts +7 -0
  699. package/umd/src/conversion/validation/validatePipeline/validatePipelineMetadata.d.ts +7 -0
  700. package/umd/src/conversion/validation/validatePipeline/validatePipelineParameters.d.ts +7 -0
  701. package/umd/src/conversion/validation/validatePipeline/validatePipelineTasks.d.ts +7 -0
  702. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.d.ts +46 -0
  703. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.d.ts +11 -0
  704. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.d.ts +7 -0
  705. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.d.ts +7 -0
  706. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.d.ts +7 -0
  707. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.d.ts +14 -0
  708. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.d.ts +7 -0
  709. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  710. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.d.ts +7 -0
  711. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.d.ts +7 -0
  712. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.d.ts +9 -0
  713. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.d.ts +7 -0
  714. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.d.ts +7 -0
  715. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.d.ts +7 -0
  716. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.d.ts +8 -0
  717. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  718. package/umd/src/utils/agent-message-runtime/agentMessageRuntimePaths.d.ts +24 -0
  719. package/umd/src/utils/agents/resolveAgentAvatarImageUrl.d.ts +2 -2
  720. package/umd/src/utils/agents/terminalAgentAvatarVisual.d.ts +94 -0
  721. package/umd/src/utils/agents/terminalAgentAvatarVisual.test.d.ts +1 -0
  722. package/umd/src/utils/ascii-art/$detectTerminalAnsiColorDepth.d.ts +15 -0
  723. package/umd/src/utils/ascii-art/convertImageDataToAsciiArt.d.ts +80 -0
  724. package/umd/src/utils/color/Color.d.ts +1 -1
  725. package/umd/src/version.d.ts +1 -1
  726. package/apps/agents-server/src/app/api/page-preview/interact/route.ts +0 -179
  727. package/apps/agents-server/src/app/api/page-preview/live/route.ts +0 -67
  728. package/apps/agents-server/src/utils/pagePreview/livePagePreviewSessions.ts +0 -365
  729. package/apps/agents-server/src/utils/pagePreview/resolvePagePreviewRequestUrl.ts +0 -74
  730. package/apps/agents-server/src/utils/userChat/createUserChatRunnerProgressCard.ts +0 -57
  731. package/esm/scripts/run-codex-prompts/common/resolveAgentSystemMessage.d.ts +0 -6
  732. package/esm/src/book-components/Chat/utils/livePagePreviewConstants.d.ts +0 -12
  733. package/src/book-components/Chat/utils/livePagePreviewConstants.ts +0 -17
  734. package/umd/scripts/run-codex-prompts/common/resolveAgentSystemMessage.d.ts +0 -6
  735. package/umd/src/book-components/Chat/utils/livePagePreviewConstants.d.ts +0 -12
@@ -0,0 +1,81 @@
1
+ import { rm, stat } from 'fs/promises';
2
+ import { resolve } from 'path';
3
+ import { spaceTrim } from 'spacetrim';
4
+ import { NotAllowed } from '../../../../../src/errors/NotAllowed';
5
+ import { readPersistedVpsSelfUpdateJob } from './readPersistedVpsSelfUpdateJob';
6
+ import { resolveManagedPromptbookRepositoryDirectory } from './vpsSelfUpdateConfiguration';
7
+ import { resolveVpsSelfUpdateReleasesDirectory } from './vpsSelfUpdateInstalledVersions';
8
+
9
+ /**
10
+ * Deletes one old installed Agents Server version from the releases directory.
11
+ *
12
+ * Only non-current version directories inside the releases directory can be deleted,
13
+ * and never while a self-update job is running (the installer may be using them).
14
+ *
15
+ * @param versionName - Release directory name shown on the Update page (e.g. `10dbbe7`).
16
+ *
17
+ * @private function of `vpsSelfUpdate`
18
+ */
19
+ export async function deleteVpsSelfUpdateInstalledVersion(versionName: string): Promise<void> {
20
+ if (process.platform !== 'linux') {
21
+ throw new NotAllowed(
22
+ spaceTrim(`
23
+ Installed Agents Server versions can be deleted only on the standalone Linux VPS deployment.
24
+ `),
25
+ );
26
+ }
27
+
28
+ const normalizedVersionName = versionName?.trim() || '';
29
+ if (!/^[A-Za-z0-9._-]+$/u.test(normalizedVersionName) || normalizedVersionName.startsWith('.')) {
30
+ throw new NotAllowed(
31
+ spaceTrim(`
32
+ The version name \`${versionName}\` is not a valid installed version.
33
+
34
+ **Version names contain only letters, digits, dots, underscores, and dashes and do not start with a dot.**
35
+ `),
36
+ );
37
+ }
38
+
39
+ const currentJob = await readPersistedVpsSelfUpdateJob({ isLogTailIncluded: false });
40
+ if (currentJob.status === 'running' && !currentJob.isStale) {
41
+ throw new NotAllowed(
42
+ spaceTrim(`
43
+ Installed versions cannot be deleted while a standalone VPS self-update is running.
44
+ `),
45
+ );
46
+ }
47
+
48
+ const releasesDirectory = await resolveVpsSelfUpdateReleasesDirectory();
49
+ if (!releasesDirectory) {
50
+ throw new NotAllowed(
51
+ spaceTrim(`
52
+ The releases directory with installed Agents Server versions could not be resolved on this server.
53
+ `),
54
+ );
55
+ }
56
+
57
+ const versionDirectory = resolve(releasesDirectory, normalizedVersionName);
58
+ const currentRepositoryDirectory = await resolveManagedPromptbookRepositoryDirectory();
59
+ if (currentRepositoryDirectory !== null && versionDirectory === currentRepositoryDirectory) {
60
+ throw new NotAllowed(
61
+ spaceTrim(`
62
+ The version \`${normalizedVersionName}\` is the currently deployed Agents Server version and cannot be deleted.
63
+ `),
64
+ );
65
+ }
66
+
67
+ try {
68
+ const versionDirectoryStats = await stat(versionDirectory);
69
+ if (!versionDirectoryStats.isDirectory()) {
70
+ throw new Error('Not a directory');
71
+ }
72
+ } catch {
73
+ throw new NotAllowed(
74
+ spaceTrim(`
75
+ The version \`${normalizedVersionName}\` is not installed in the releases directory.
76
+ `),
77
+ );
78
+ }
79
+
80
+ await rm(versionDirectory, { recursive: true, force: true });
81
+ }
@@ -0,0 +1,217 @@
1
+ import { resolveManagedPromptbookRepositoryDirectory } from './vpsSelfUpdateConfiguration';
2
+ import { readConfiguredVpsSelfUpdateOriginRepositoryUrl } from './vpsSelfUpdateOriginRepository';
3
+ import { GIT_LOG_FIELD_SEPARATOR, runGitInRepository } from './vpsSelfUpdateRepository';
4
+ import type { VpsSelfUpdateCandidateCommit, VpsSelfUpdateCandidateCommitsFilter } from './vpsSelfUpdateTypes';
5
+
6
+ /**
7
+ * Hard ceiling for the candidate-commit listing to avoid streaming the entire repository to the browser.
8
+ *
9
+ * @private constant of `vpsSelfUpdate`
10
+ */
11
+ const VPS_SELF_UPDATE_MAX_CANDIDATE_COMMITS = 500;
12
+
13
+ /**
14
+ * Default candidate-commit count returned to the browser.
15
+ *
16
+ * @private constant of `vpsSelfUpdate`
17
+ */
18
+ const VPS_SELF_UPDATE_DEFAULT_CANDIDATE_COMMITS = 200;
19
+
20
+ /**
21
+ * Lists commits from the managed repository for the custom-target picker.
22
+ *
23
+ * Fetches the latest refs from the configured upstream first so the picker can include
24
+ * recent commits that have not been deployed yet, then resolves branches/tags per commit.
25
+ *
26
+ * @param filter - Filter applied to the result.
27
+ * @returns Browser-safe commit list.
28
+ *
29
+ * @private function of `vpsSelfUpdate`
30
+ */
31
+ export async function listVpsSelfUpdateCandidateCommits(
32
+ filter: VpsSelfUpdateCandidateCommitsFilter = {},
33
+ ): Promise<ReadonlyArray<VpsSelfUpdateCandidateCommit>> {
34
+ if (process.platform !== 'linux') {
35
+ return [];
36
+ }
37
+
38
+ const repositoryDirectory = await resolveManagedPromptbookRepositoryDirectory();
39
+ if (!repositoryDirectory) {
40
+ return [];
41
+ }
42
+
43
+ const originRepositoryUrl = await readConfiguredVpsSelfUpdateOriginRepositoryUrl();
44
+ await runGitInRepository(repositoryDirectory, [
45
+ 'fetch',
46
+ '--no-tags',
47
+ '--prune',
48
+ '--depth=200',
49
+ originRepositoryUrl,
50
+ '+refs/heads/*:refs/remotes/origin/*',
51
+ ]);
52
+ await runGitInRepository(repositoryDirectory, [
53
+ 'fetch',
54
+ '--tags',
55
+ '--force',
56
+ originRepositoryUrl,
57
+ '+refs/tags/*:refs/tags/*',
58
+ ]);
59
+
60
+ const limit = clampVpsSelfUpdateCandidateCommitLimit(filter.limit);
61
+ const gitLogArguments = [
62
+ 'log',
63
+ `--max-count=${VPS_SELF_UPDATE_MAX_CANDIDATE_COMMITS}`,
64
+ '--all',
65
+ `--format=%H${GIT_LOG_FIELD_SEPARATOR}%aI${GIT_LOG_FIELD_SEPARATOR}%an${GIT_LOG_FIELD_SEPARATOR}%ae${GIT_LOG_FIELD_SEPARATOR}%s`,
66
+ ];
67
+
68
+ if (filter.authoredAfter) {
69
+ gitLogArguments.push(`--since=${filter.authoredAfter}`);
70
+ }
71
+ if (filter.authoredBefore) {
72
+ gitLogArguments.push(`--until=${filter.authoredBefore}`);
73
+ }
74
+
75
+ const gitLogOutput = await runGitInRepository(repositoryDirectory, gitLogArguments);
76
+ if (!gitLogOutput) {
77
+ return [];
78
+ }
79
+
80
+ const branchesByCommit = await readVpsSelfUpdateRefsByCommit(repositoryDirectory, 'refs/remotes/origin');
81
+ const tagsByCommit = await readVpsSelfUpdateRefsByCommit(repositoryDirectory, 'refs/tags');
82
+ const searchText = filter.searchText?.trim().toLowerCase() || '';
83
+
84
+ const commits: Array<VpsSelfUpdateCandidateCommit> = [];
85
+ for (const line of gitLogOutput.split('\n')) {
86
+ if (!line) {
87
+ continue;
88
+ }
89
+
90
+ const fields = line.split(GIT_LOG_FIELD_SEPARATOR);
91
+ const commitSha = fields[0] ?? '';
92
+ if (!commitSha) {
93
+ continue;
94
+ }
95
+
96
+ const authoredAt = fields[1] ?? '';
97
+ const authorName = fields[2] ?? '';
98
+ const authorEmail = fields[3] ?? '';
99
+ const subject = fields.slice(4).join(GIT_LOG_FIELD_SEPARATOR);
100
+ const branches = branchesByCommit.get(commitSha) ?? [];
101
+ const tags = tagsByCommit.get(commitSha) ?? [];
102
+
103
+ if (
104
+ searchText &&
105
+ !matchesVpsSelfUpdateCandidateCommitSearchText(searchText, commitSha, subject, authorName, branches, tags)
106
+ ) {
107
+ continue;
108
+ }
109
+
110
+ commits.push({
111
+ commitSha,
112
+ shortCommitSha: commitSha.slice(0, 7),
113
+ subject,
114
+ authorName,
115
+ authorEmail,
116
+ authoredAt,
117
+ branches,
118
+ tags,
119
+ isReleaseTag: tags.length > 0,
120
+ });
121
+
122
+ if (commits.length >= limit) {
123
+ break;
124
+ }
125
+ }
126
+
127
+ return commits;
128
+ }
129
+
130
+ /**
131
+ * Clamps an external limit value to the safe candidate-commit range.
132
+ *
133
+ * @param value - Raw user-provided limit.
134
+ * @returns Clamped value.
135
+ */
136
+ function clampVpsSelfUpdateCandidateCommitLimit(value: number | null | undefined): number {
137
+ if (value === null || value === undefined || !Number.isFinite(value)) {
138
+ return VPS_SELF_UPDATE_DEFAULT_CANDIDATE_COMMITS;
139
+ }
140
+
141
+ return Math.max(1, Math.min(VPS_SELF_UPDATE_MAX_CANDIDATE_COMMITS, Math.floor(value)));
142
+ }
143
+
144
+ /**
145
+ * Returns `true` when one commit matches the free-text filter applied to the picker.
146
+ *
147
+ * @param searchText - Lower-cased search text.
148
+ * @param commitSha - Full commit hash.
149
+ * @param subject - Commit subject.
150
+ * @param authorName - Author display name.
151
+ * @param branches - Branches pointing at the commit.
152
+ * @param tags - Tags pointing at the commit.
153
+ * @returns `true` when the commit should be included.
154
+ */
155
+ function matchesVpsSelfUpdateCandidateCommitSearchText(
156
+ searchText: string,
157
+ commitSha: string,
158
+ subject: string,
159
+ authorName: string,
160
+ branches: ReadonlyArray<string>,
161
+ tags: ReadonlyArray<string>,
162
+ ): boolean {
163
+ if (commitSha.toLowerCase().startsWith(searchText)) {
164
+ return true;
165
+ }
166
+
167
+ if (subject.toLowerCase().includes(searchText)) {
168
+ return true;
169
+ }
170
+
171
+ if (authorName.toLowerCase().includes(searchText)) {
172
+ return true;
173
+ }
174
+
175
+ if (branches.some((branch) => branch.toLowerCase().includes(searchText))) {
176
+ return true;
177
+ }
178
+
179
+ return tags.some((tag) => tag.toLowerCase().includes(searchText));
180
+ }
181
+
182
+ /**
183
+ * Reads refs grouped by commit hash so the picker can annotate each commit with its branches/tags.
184
+ *
185
+ * @param repositoryDirectory - Repository checkout path.
186
+ * @param refPrefix - Ref namespace passed to `git for-each-ref` (e.g. `refs/tags`).
187
+ * @returns Map keyed by commit hash.
188
+ */
189
+ async function readVpsSelfUpdateRefsByCommit(
190
+ repositoryDirectory: string,
191
+ refPrefix: string,
192
+ ): Promise<Map<string, Array<string>>> {
193
+ const output = await runGitInRepository(repositoryDirectory, [
194
+ 'for-each-ref',
195
+ '--format=%(objectname)\x1f%(refname:short)',
196
+ refPrefix,
197
+ ]);
198
+ const refsByCommit = new Map<string, Array<string>>();
199
+
200
+ if (!output) {
201
+ return refsByCommit;
202
+ }
203
+
204
+ for (const line of output.split('\n')) {
205
+ const [commitSha, refName] = line.split('\x1f');
206
+ if (!commitSha || !refName) {
207
+ continue;
208
+ }
209
+
210
+ const cleanRefName = refName.replace(/^origin\//u, '');
211
+ const list = refsByCommit.get(commitSha) ?? [];
212
+ list.push(cleanRefName);
213
+ refsByCommit.set(commitSha, list);
214
+ }
215
+
216
+ return refsByCommit;
217
+ }
@@ -0,0 +1,335 @@
1
+ import { PROMPTBOOK_ENGINE_VERSION } from '../../../../../src/version';
2
+ import {
3
+ readConfiguredVpsSelfUpdateOriginRepositoryUrl,
4
+ VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL,
5
+ } from './vpsSelfUpdateOriginRepository';
6
+ import { resolveManagedPromptbookRepositoryDirectory } from './vpsSelfUpdateConfiguration';
7
+ import { abbreviateCommitSha, readCommitMetadataFromRepository, runGitInRepository } from './vpsSelfUpdateRepository';
8
+
9
+ /**
10
+ * Git tag pattern used for Promptbook/Agents Server release tags.
11
+ *
12
+ * @private constant of `vpsSelfUpdate`
13
+ */
14
+ const AGENTS_SERVER_VERSION_TAG_PATTERN = /^v?[0-9]+\.[0-9]+\.[0-9]+(?:-[0-9A-Za-z.-]+)?$/u;
15
+
16
+ /**
17
+ * Generated version tag used when the local Git checkout does not expose reachable tags.
18
+ *
19
+ * @private constant of `vpsSelfUpdate`
20
+ */
21
+ const DEFAULT_AGENTS_SERVER_VERSION_TAG = `v${PROMPTBOOK_ENGINE_VERSION}`;
22
+
23
+ /**
24
+ * How long the Git-derived footer version summary stays cached.
25
+ *
26
+ * @private constant of `vpsSelfUpdate`
27
+ */
28
+ const AGENTS_SERVER_FOOTER_VERSION_CACHE_TTL_MILLISECONDS = 60 * 1000;
29
+
30
+ /**
31
+ * Git tag match patterns accepted by `git describe`.
32
+ *
33
+ * @private constant of `vpsSelfUpdate`
34
+ */
35
+ const GIT_DESCRIBE_VERSION_TAG_MATCH_ARGUMENTS = ['--match', 'v[0-9]*', '--match', '[0-9]*'] as const;
36
+
37
+ /**
38
+ * Cached footer version promise shared by concurrent layout renders.
39
+ *
40
+ * @private variable of `vpsSelfUpdate`
41
+ */
42
+ let cachedAgentsServerFooterVersionPromise: Promise<AgentsServerFooterVersion> | null = null;
43
+
44
+ /**
45
+ * Expiration timestamp for {@link cachedAgentsServerFooterVersionPromise}.
46
+ *
47
+ * @private variable of `vpsSelfUpdate`
48
+ */
49
+ let cachedAgentsServerFooterVersionExpiresAt = 0;
50
+
51
+ /**
52
+ * Lightweight Agents Server version summary consumed by the shared footer.
53
+ *
54
+ * @private type of `vpsSelfUpdate`
55
+ */
56
+ export type AgentsServerFooterVersion = {
57
+ /**
58
+ * Release tag shown as the base Agents Server version.
59
+ */
60
+ readonly versionTag: string;
61
+ /**
62
+ * Display label, optionally including the deployed commit short hash.
63
+ */
64
+ readonly label: string;
65
+ /**
66
+ * Browser URL of the backing Git repository.
67
+ */
68
+ readonly repositoryUrl: string;
69
+ /**
70
+ * Browser URL linked from the footer version text.
71
+ */
72
+ readonly versionUrl: string;
73
+ /**
74
+ * Current deployed commit hash.
75
+ */
76
+ readonly currentCommitSha: string | null;
77
+ /**
78
+ * Current deployed commit short hash.
79
+ */
80
+ readonly currentCommitShortSha: string | null;
81
+ /**
82
+ * Commit hash that the release tag points to.
83
+ */
84
+ readonly versionCommitSha: string | null;
85
+ /**
86
+ * Release commit author timestamp in ISO format.
87
+ */
88
+ readonly releasedAt: string | null;
89
+ };
90
+
91
+ /**
92
+ * Reads the footer version summary while caching the Git work outside the client footer render path.
93
+ *
94
+ * @returns Git-derived Agents Server version information safe to pass into the client footer.
95
+ *
96
+ * @private function of `vpsSelfUpdate`
97
+ */
98
+ export async function readAgentsServerFooterVersion(): Promise<AgentsServerFooterVersion> {
99
+ const now = Date.now();
100
+ const cachedAgentsServerFooterVersion = cachedAgentsServerFooterVersionPromise;
101
+ const isCacheFresh = cachedAgentsServerFooterVersion !== null && cachedAgentsServerFooterVersionExpiresAt > now;
102
+
103
+ if (isCacheFresh) {
104
+ return cachedAgentsServerFooterVersion;
105
+ }
106
+
107
+ cachedAgentsServerFooterVersionPromise = readUncachedAgentsServerFooterVersion();
108
+ cachedAgentsServerFooterVersionExpiresAt = now + AGENTS_SERVER_FOOTER_VERSION_CACHE_TTL_MILLISECONDS;
109
+ return cachedAgentsServerFooterVersionPromise;
110
+ }
111
+
112
+ /**
113
+ * Formats the compact version label shown in the footer.
114
+ *
115
+ * @param options - Release tag and optional deployed commit short hash.
116
+ * @returns Footer version label.
117
+ *
118
+ * @private utility of `vpsSelfUpdate`
119
+ */
120
+ export function formatAgentsServerFooterVersionLabel(options: {
121
+ readonly versionTag: string;
122
+ readonly currentCommitShortSha: string | null;
123
+ }): string {
124
+ if (!options.currentCommitShortSha) {
125
+ return options.versionTag;
126
+ }
127
+
128
+ return `${options.versionTag} (${options.currentCommitShortSha})`;
129
+ }
130
+
131
+ /**
132
+ * Normalizes a Git repository clone URL to a browser URL.
133
+ *
134
+ * @param repositoryUrl - Git clone URL.
135
+ * @returns Browser URL for the repository.
136
+ *
137
+ * @private utility of `vpsSelfUpdate`
138
+ */
139
+ export function normalizeGitRepositoryWebUrl(repositoryUrl: string): string {
140
+ const normalizedRepositoryUrl = repositoryUrl
141
+ .trim()
142
+ .replace(/^git\+/u, '')
143
+ .replace(/\.git$/u, '');
144
+ return normalizedRepositoryUrl || VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL.replace(/\.git$/u, '');
145
+ }
146
+
147
+ /**
148
+ * Normalizes a release version into the repository tag format.
149
+ *
150
+ * @param value - Raw tag or generated version.
151
+ * @returns Normalized version tag or `null` when the value is not a release tag.
152
+ *
153
+ * @private utility of `vpsSelfUpdate`
154
+ */
155
+ export function normalizeAgentsServerVersionTag(value: string | null | undefined): string | null {
156
+ const trimmedValue = value?.trim() || '';
157
+ if (!AGENTS_SERVER_VERSION_TAG_PATTERN.test(trimmedValue)) {
158
+ return null;
159
+ }
160
+
161
+ return trimmedValue.startsWith('v') ? trimmedValue : `v${trimmedValue}`;
162
+ }
163
+
164
+ /**
165
+ * Resolves the URL linked from the footer version text.
166
+ *
167
+ * @param options - Repository URL, tag, current commit and comparison state.
168
+ * @returns Browser URL for the most specific Git reference.
169
+ *
170
+ * @private utility of `vpsSelfUpdate`
171
+ */
172
+ export function resolveAgentsServerFooterVersionUrl(options: {
173
+ readonly repositoryUrl: string;
174
+ readonly versionTag: string;
175
+ readonly currentCommitSha: string | null;
176
+ readonly isCurrentCommitNewerThanVersionTag: boolean;
177
+ }): string {
178
+ if (!options.repositoryUrl.startsWith('https://github.com/')) {
179
+ return options.repositoryUrl;
180
+ }
181
+
182
+ if (options.isCurrentCommitNewerThanVersionTag && options.currentCommitSha) {
183
+ return `${options.repositoryUrl}/commit/${options.currentCommitSha}`;
184
+ }
185
+
186
+ return `${options.repositoryUrl}/releases/tag/${encodeURIComponent(options.versionTag)}`;
187
+ }
188
+
189
+ /**
190
+ * Reads the footer version summary without using the module-level cache.
191
+ *
192
+ * @returns Git-derived Agents Server version information.
193
+ */
194
+ async function readUncachedAgentsServerFooterVersion(): Promise<AgentsServerFooterVersion> {
195
+ const repositoryUrl = normalizeGitRepositoryWebUrl(await readFooterVersionOriginRepositoryUrl());
196
+ const repositoryDirectory = await resolveAgentsServerFooterRepositoryDirectory();
197
+
198
+ if (!repositoryDirectory) {
199
+ return createFallbackAgentsServerFooterVersion(repositoryUrl);
200
+ }
201
+
202
+ const [currentCommit, versionTag] = await Promise.all([
203
+ readCommitMetadataFromRepository(repositoryDirectory, 'HEAD'),
204
+ readAgentsServerVersionTagFromRepository(repositoryDirectory),
205
+ ]);
206
+ const versionCommit = await readCommitMetadataFromRepository(repositoryDirectory, `${versionTag}^{commit}`);
207
+ const currentCommitSha = currentCommit?.commitSha ?? readCurrentCommitShaFromEnvironment();
208
+ const currentCommitShortSha = abbreviateCommitSha(currentCommitSha);
209
+ const versionCommitSha = versionCommit?.commitSha ?? null;
210
+ const isCurrentCommitNewerThanVersionTag = Boolean(
211
+ currentCommitSha && versionCommitSha && currentCommitSha !== versionCommitSha,
212
+ );
213
+ const displayedCommitShortSha = isCurrentCommitNewerThanVersionTag ? currentCommitShortSha : null;
214
+
215
+ return {
216
+ versionTag,
217
+ label: formatAgentsServerFooterVersionLabel({
218
+ versionTag,
219
+ currentCommitShortSha: displayedCommitShortSha,
220
+ }),
221
+ repositoryUrl,
222
+ versionUrl: resolveAgentsServerFooterVersionUrl({
223
+ repositoryUrl,
224
+ versionTag,
225
+ currentCommitSha,
226
+ isCurrentCommitNewerThanVersionTag,
227
+ }),
228
+ currentCommitSha,
229
+ currentCommitShortSha,
230
+ versionCommitSha,
231
+ releasedAt: versionCommit?.authoredAt ?? null,
232
+ };
233
+ }
234
+
235
+ /**
236
+ * Reads the configured origin URL without letting optional VPS configuration block footer rendering.
237
+ *
238
+ * @returns Configured origin URL or the default Promptbook repository.
239
+ */
240
+ async function readFooterVersionOriginRepositoryUrl(): Promise<string> {
241
+ try {
242
+ return await readConfiguredVpsSelfUpdateOriginRepositoryUrl();
243
+ } catch {
244
+ return VPS_SELF_UPDATE_DEFAULT_ORIGIN_REPOSITORY_URL;
245
+ }
246
+ }
247
+
248
+ /**
249
+ * Resolves a local Git checkout suitable for lightweight version metadata reads.
250
+ *
251
+ * @returns Repository directory or `null` when Git metadata is unavailable.
252
+ */
253
+ async function resolveAgentsServerFooterRepositoryDirectory(): Promise<string | null> {
254
+ const managedRepositoryDirectory = await resolveManagedPromptbookRepositoryDirectory().catch(() => null);
255
+ const candidateDirectories = [
256
+ managedRepositoryDirectory,
257
+ process.env.PTBK_REPOSITORY_DIR?.trim() || null,
258
+ process.cwd(),
259
+ ];
260
+
261
+ for (const candidateDirectory of candidateDirectories) {
262
+ if (!candidateDirectory) {
263
+ continue;
264
+ }
265
+
266
+ const gitRepositoryRoot = await runGitInRepository(candidateDirectory, ['rev-parse', '--show-toplevel']);
267
+ if (gitRepositoryRoot) {
268
+ return candidateDirectory;
269
+ }
270
+ }
271
+
272
+ return null;
273
+ }
274
+
275
+ /**
276
+ * Reads the nearest reachable release tag for the deployed checkout.
277
+ *
278
+ * @param repositoryDirectory - Repository checkout path.
279
+ * @returns Normalized release tag.
280
+ */
281
+ async function readAgentsServerVersionTagFromRepository(repositoryDirectory: string): Promise<string> {
282
+ const describedTag = await runGitInRepository(repositoryDirectory, [
283
+ 'describe',
284
+ '--tags',
285
+ '--abbrev=0',
286
+ ...GIT_DESCRIBE_VERSION_TAG_MATCH_ARGUMENTS,
287
+ 'HEAD',
288
+ ]);
289
+
290
+ return (
291
+ normalizeAgentsServerVersionTag(describedTag) ??
292
+ normalizeAgentsServerVersionTag(DEFAULT_AGENTS_SERVER_VERSION_TAG) ??
293
+ DEFAULT_AGENTS_SERVER_VERSION_TAG
294
+ );
295
+ }
296
+
297
+ /**
298
+ * Reads the deployed commit hash from public deployment metadata when local Git is unavailable.
299
+ *
300
+ * @returns Commit hash or `null`.
301
+ */
302
+ function readCurrentCommitShaFromEnvironment(): string | null {
303
+ return process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_SHA?.trim() || null;
304
+ }
305
+
306
+ /**
307
+ * Creates a resilient fallback when the server cannot inspect a Git checkout.
308
+ *
309
+ * @param repositoryUrl - Browser URL of the configured Git repository.
310
+ * @returns Fallback footer version summary.
311
+ */
312
+ function createFallbackAgentsServerFooterVersion(repositoryUrl: string): AgentsServerFooterVersion {
313
+ const currentCommitSha = readCurrentCommitShaFromEnvironment();
314
+ const versionTag =
315
+ normalizeAgentsServerVersionTag(DEFAULT_AGENTS_SERVER_VERSION_TAG) ?? DEFAULT_AGENTS_SERVER_VERSION_TAG;
316
+
317
+ return {
318
+ versionTag,
319
+ label: formatAgentsServerFooterVersionLabel({
320
+ versionTag,
321
+ currentCommitShortSha: null,
322
+ }),
323
+ repositoryUrl,
324
+ versionUrl: resolveAgentsServerFooterVersionUrl({
325
+ repositoryUrl,
326
+ versionTag,
327
+ currentCommitSha,
328
+ isCurrentCommitNewerThanVersionTag: false,
329
+ }),
330
+ currentCommitSha,
331
+ currentCommitShortSha: abbreviateCommitSha(currentCommitSha),
332
+ versionCommitSha: null,
333
+ releasedAt: null,
334
+ };
335
+ }