@promptbook/cli 0.113.0-7 → 0.113.0-9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (593) hide show
  1. package/apps/agents-server/next.config.ts +6 -3
  2. package/apps/agents-server/src/app/admin/resource-monitor/page.tsx +456 -0
  3. package/apps/agents-server/src/app/admin/task-manager/TaskManagerClient.tsx +14 -2
  4. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskLogActions.tsx +150 -0
  5. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskRow.tsx +58 -18
  6. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTaskTerminalDialog.tsx +125 -0
  7. package/apps/agents-server/src/app/admin/task-manager/TaskManagerTasksCard.tsx +3 -1
  8. package/apps/agents-server/src/app/admin/task-manager/page.tsx +3 -2
  9. package/apps/agents-server/src/app/admin/update/AdvancedOriginRepositoryPanel.tsx +14 -9
  10. package/apps/agents-server/src/app/admin/update/AutomaticSelfUpdateConfigurationCard.tsx +93 -0
  11. package/apps/agents-server/src/app/admin/update/CurrentDeploymentCard.tsx +15 -13
  12. package/apps/agents-server/src/app/admin/update/CustomCommitPicker.tsx +10 -10
  13. package/apps/agents-server/src/app/admin/update/InstalledVersionsCard.tsx +112 -0
  14. package/apps/agents-server/src/app/admin/update/PendingCommitsCard.tsx +9 -8
  15. package/apps/agents-server/src/app/admin/update/TargetEnvironmentCard.tsx +14 -14
  16. package/apps/agents-server/src/app/admin/update/UpdateClient.tsx +18 -8
  17. package/apps/agents-server/src/app/admin/update/UpdateDatabaseMigrationsPanel.tsx +305 -0
  18. package/apps/agents-server/src/app/admin/update/UpdateJobCard.tsx +29 -8
  19. package/apps/agents-server/src/app/admin/update/UpdateOverview.ts +68 -0
  20. package/apps/agents-server/src/app/admin/update/updatePageCardClassName.ts +6 -0
  21. package/apps/agents-server/src/app/admin/update/useUpdateClientState.ts +241 -7
  22. package/apps/agents-server/src/app/agents/[agentName]/AgentChatWrapper.tsx +17 -3
  23. package/apps/agents-server/src/app/agents/[agentName]/chat/CanonicalAgentChatSurface.tsx +6 -2
  24. package/apps/agents-server/src/app/api/admin/chat-tasks/[taskId]/terminal/route.ts +52 -0
  25. package/apps/agents-server/src/app/api/admin/update/route.ts +55 -8
  26. package/apps/agents-server/src/app/api/admin/update/versions/route.ts +34 -0
  27. package/apps/agents-server/src/app/api/auth/shibboleth/acs/route.ts +4 -2
  28. package/apps/agents-server/src/app/api/auth/shibboleth/login/route.ts +3 -1
  29. package/apps/agents-server/src/app/api/auth/shibboleth/metadata/route.ts +5 -2
  30. package/apps/agents-server/src/app/api/auth/shibboleth/status/route.ts +5 -2
  31. package/apps/agents-server/src/app/layout.tsx +39 -25
  32. package/apps/agents-server/src/components/AgentAvatar/AgentAvatar.tsx +1 -1
  33. package/apps/agents-server/src/components/AgentAvatar/DefaultAgentAvatarVisualProvider.tsx +1 -1
  34. package/apps/agents-server/src/components/Header/Header.tsx +16 -3
  35. package/apps/agents-server/src/components/Header/HeaderTypes.ts +6 -0
  36. package/apps/agents-server/src/components/Header/buildAgentMenuStructure.tsx +6 -4
  37. package/apps/agents-server/src/components/Header/buildHeaderSystemMenuItems.ts +13 -1
  38. package/apps/agents-server/src/components/Homepage/useAgentsListState.ts +1 -1
  39. package/apps/agents-server/src/components/LayoutWrapper/LayoutWrapper.tsx +21 -5
  40. package/apps/agents-server/src/constants/defaultAgentAvatarVisual.ts +4 -3
  41. package/apps/agents-server/src/database/metadataDefaults.ts +1 -1
  42. package/apps/agents-server/src/database/migrate.ts +25 -1
  43. package/apps/agents-server/src/database/migratePrefix.ts +24 -0
  44. package/apps/agents-server/src/database/runDatabaseMigrations.ts +9 -1
  45. package/apps/agents-server/src/instrumentation-node.ts +15 -0
  46. package/apps/agents-server/src/languages/ServerTranslationKeys.ts +1 -0
  47. package/apps/agents-server/src/languages/translations/czech.yaml +1 -0
  48. package/apps/agents-server/src/languages/translations/english.yaml +1 -0
  49. package/apps/agents-server/src/{components/Homepage → utils/agentOrganization}/hiddenFolders.ts +49 -29
  50. package/apps/agents-server/src/utils/backup/createServerBackupZipStream.ts +7 -1382
  51. package/apps/agents-server/src/utils/backup/serverBackup/appendAgentBackupEntriesToZip.ts +27 -0
  52. package/apps/agents-server/src/utils/backup/serverBackup/appendConversationBackupEntriesToZip.ts +140 -0
  53. package/apps/agents-server/src/utils/backup/serverBackup/appendFileBackupEntriesToZip.ts +147 -0
  54. package/apps/agents-server/src/utils/backup/serverBackup/appendMessageBackupEntriesToZip.ts +65 -0
  55. package/apps/agents-server/src/utils/backup/serverBackup/appendMetadataBackupEntriesToZip.ts +39 -0
  56. package/apps/agents-server/src/utils/backup/serverBackup/appendSectionEntriesToZip.ts +92 -0
  57. package/apps/agents-server/src/utils/backup/serverBackup/appendUserBackupEntriesToZip.ts +80 -0
  58. package/apps/agents-server/src/utils/backup/serverBackup/createRedactedWalletBackupRecord.ts +34 -0
  59. package/apps/agents-server/src/utils/backup/serverBackup/createServerBackupManifest.ts +82 -0
  60. package/apps/agents-server/src/utils/backup/serverBackup/downloadBackupBinaryContent.ts +39 -0
  61. package/apps/agents-server/src/utils/backup/serverBackup/resolveFeedbackThreadMessages.ts +53 -0
  62. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupAttachments.ts +151 -0
  63. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupContext.ts +167 -0
  64. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupFilenames.ts +161 -0
  65. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupPreviews.ts +97 -0
  66. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupRowUtilities.ts +158 -0
  67. package/apps/agents-server/src/utils/backup/serverBackup/serverBackupTypes.ts +59 -0
  68. package/apps/agents-server/src/utils/chat/createAttachmentAwareCitationLabelResolver.ts +147 -0
  69. package/apps/agents-server/src/utils/chatTasksAdmin.ts +1 -1
  70. package/apps/agents-server/src/utils/externalChatRunner/processExternalUserChatJob.ts +11 -5
  71. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/GetAdminChatTasksData.ts +12 -0
  72. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskSqlQuery.ts +264 -0
  73. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskSqlValues.ts +35 -0
  74. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/adminChatTaskTimeUtilities.ts +30 -0
  75. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/compareAdminChatTasks.ts +135 -0
  76. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/createAdminChatTaskCounters.ts +29 -0
  77. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/filterAdminChatTasks.ts +78 -0
  78. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/getAdminChatTasksViaClientSql.ts +62 -0
  79. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/getAdminChatTasksViaSupabaseQuery.ts +29 -0
  80. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/loadAdminChatTaskFallbackData.ts +193 -0
  81. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/mapAdminChatTaskFallbackRows.ts +99 -0
  82. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks/mapAdminChatTaskSqlRows.ts +94 -0
  83. package/apps/agents-server/src/utils/getAdminChatTasksResponse/getAdminChatTasks.ts +4 -947
  84. package/apps/agents-server/src/utils/getAdminChatTasksResponse/mapVpsSelfUpdateJobToAdminChatTask.ts +18 -5
  85. package/apps/agents-server/src/utils/getAdminChatTasksResponse.ts +57 -21
  86. package/apps/agents-server/src/utils/localChatRunner/processLocalUserChatJob.ts +20 -5
  87. package/apps/agents-server/src/utils/pagePreviewBrowserSessions.ts +13 -1
  88. package/apps/agents-server/src/utils/resourceMonitor/formatResourceMonitorValue.ts +50 -0
  89. package/apps/agents-server/src/utils/resourceMonitor/readCpuResourceUsage.ts +75 -0
  90. package/apps/agents-server/src/utils/resourceMonitor/readDiskResourceUsage.ts +42 -0
  91. package/apps/agents-server/src/utils/resourceMonitor/readMemoryResourceUsage.ts +28 -0
  92. package/apps/agents-server/src/utils/resourceMonitor/readNetworkResourceUsage.ts +271 -0
  93. package/apps/agents-server/src/utils/resourceMonitor/readServerResourceMonitorSnapshot.ts +47 -0
  94. package/apps/agents-server/src/utils/resourceMonitor/resolveServerResourceWarningStatus.ts +72 -0
  95. package/apps/agents-server/src/utils/resourceMonitor/resourceMonitorConstants.ts +29 -0
  96. package/apps/agents-server/src/utils/resourceMonitor/resourceMonitorTypes.ts +155 -0
  97. package/apps/agents-server/src/utils/resourceMonitor/waitForResourceMonitorSample.ts +11 -0
  98. package/apps/agents-server/src/utils/shibbolethAuthentication/createShibbolethSamlClient.ts +35 -0
  99. package/apps/agents-server/src/utils/shibbolethAuthentication/createShibbolethServiceProviderMetadataXml.ts +25 -0
  100. package/apps/agents-server/src/utils/shibbolethAuthentication/extractShibbolethProfileAttributes.ts +173 -0
  101. package/apps/agents-server/src/utils/shibbolethAuthentication/fetchIdentityProviderMetadataXml.ts +21 -0
  102. package/apps/agents-server/src/utils/shibbolethAuthentication/findOrCreateShibbolethUser.ts +323 -0
  103. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethAuthenticationAttemptTableName.ts +13 -0
  104. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethRequestDetails.ts +19 -0
  105. package/apps/agents-server/src/utils/shibbolethAuthentication/getShibbolethUserIdentityTableName.ts +13 -0
  106. package/apps/agents-server/src/utils/shibbolethAuthentication/parseIdentityProviderMetadataXml.ts +110 -0
  107. package/apps/agents-server/src/utils/shibbolethAuthentication/recordShibbolethAuthenticationAttempt.ts +57 -0
  108. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethAuthenticationConfiguration.ts +78 -0
  109. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethPublicRequestUrl.ts +101 -0
  110. package/apps/agents-server/src/utils/shibbolethAuthentication/resolveShibbolethServiceProviderUrls.ts +63 -0
  111. package/apps/agents-server/src/utils/shibbolethAuthentication/sanitizeShibbolethRelayState.ts +17 -0
  112. package/apps/agents-server/src/utils/shibbolethAuthentication/shibbolethAuthenticationConstants.ts +62 -0
  113. package/apps/agents-server/src/utils/shibbolethAuthentication/shibbolethAuthenticationTypes.ts +105 -0
  114. package/apps/agents-server/src/utils/shibbolethAuthentication.ts +25 -957
  115. package/apps/agents-server/src/utils/taskTerminal/resolveAdminTaskTerminalSession.ts +322 -0
  116. package/apps/agents-server/src/utils/taskTerminal/runWithTaskTerminalCapture.ts +134 -0
  117. package/apps/agents-server/src/utils/taskTerminal/taskTerminalLog.ts +360 -0
  118. package/apps/agents-server/src/utils/userChat/finalizeUserChatJob.ts +16 -0
  119. package/apps/agents-server/src/utils/userChatTimeout/userChatTimeoutStore/updateUserChatTimeoutTerminalState.ts +3 -0
  120. package/apps/agents-server/src/utils/userChatTimeout/userChatTimeoutWorker.ts +4 -1
  121. package/apps/agents-server/src/utils/vpsConfiguration.ts +4 -0
  122. package/apps/agents-server/src/utils/vpsSelfUpdate/deleteVpsSelfUpdateInstalledVersion.ts +81 -0
  123. package/apps/agents-server/src/utils/vpsSelfUpdate/listVpsSelfUpdateCandidateCommits.ts +217 -0
  124. package/apps/agents-server/src/utils/vpsSelfUpdate/readPersistedVpsSelfUpdateJob.ts +310 -0
  125. package/apps/agents-server/src/utils/vpsSelfUpdate/readVpsSelfUpdateOverview.ts +178 -0
  126. package/apps/agents-server/src/utils/vpsSelfUpdate/resolveVpsSelfUpdateJobForOverview.ts +42 -0
  127. package/apps/agents-server/src/utils/vpsSelfUpdate/startVpsSelfUpdate.ts +201 -0
  128. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateAutomaticConfiguration.ts +152 -0
  129. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateConfiguration.ts +81 -0
  130. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateCron.ts +357 -0
  131. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateEnvironment.ts +120 -0
  132. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateInstalledVersions.ts +162 -0
  133. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobConstants.ts +15 -0
  134. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobHistory.ts +387 -0
  135. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateJobIdentity.ts +26 -0
  136. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateOriginRepository.ts +90 -0
  137. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateRepository.ts +286 -0
  138. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateScheduler.ts +191 -0
  139. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateStateFiles.ts +197 -0
  140. package/apps/agents-server/src/utils/vpsSelfUpdate/vpsSelfUpdateTypes.ts +452 -0
  141. package/apps/agents-server/src/utils/vpsSelfUpdate.ts +66 -1547
  142. package/esm/apps/agents-server/src/database/migratePrefix.d.ts +19 -0
  143. package/esm/apps/agents-server/src/database/runDatabaseMigrations.d.ts +4 -0
  144. package/esm/book/scripts/import-markdown/increaseHeadings.d.ts +8 -0
  145. package/esm/index.es.js +28566 -27913
  146. package/esm/index.es.js.map +1 -1
  147. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentAutoPuller.d.ts +27 -0
  148. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentGithubSynchronizer.d.ts +26 -0
  149. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentRunUiPresenter.d.ts +66 -0
  150. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/RunMultipleAgentMessageTaskScheduler.d.ts +67 -0
  151. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/formatProjectPath.d.ts +6 -0
  152. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/loadLocalAgentRunnerProjectSummaries.d.ts +11 -0
  153. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages/wait.d.ts +6 -0
  154. package/esm/scripts/run-agent-messages/main/runMultipleAgentMessages.d.ts +1 -1
  155. package/esm/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeRunner.d.ts +4 -0
  156. package/esm/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeSessionResurrection.d.ts +37 -0
  157. package/esm/scripts/run-codex-prompts/runners/claude-code/parseClaudeCodeOutputEvents.d.ts +47 -0
  158. package/esm/scripts/run-codex-prompts/ui/CoderRunUiState.d.ts +6 -4
  159. package/esm/scripts/run-codex-prompts/ui/buildCoderRunAgentVisual.d.ts +30 -5
  160. package/esm/scripts/run-codex-prompts/ui/buildCoderRunUiFrame.d.ts +7 -1
  161. package/esm/scripts/run-codex-prompts/ui/coderRunUiRefresh.d.ts +2 -2
  162. package/esm/src/_packages/types.index.d.ts +2 -2
  163. package/esm/src/avatars/renderAvatarVisualAsciiArt.d.ts +24 -1
  164. package/esm/src/avatars/visuals/octopus3dAvatarVisualShared.d.ts +1 -1
  165. package/esm/src/book-components/BookEditor/BookEditorMonacoUploadPanel.d.ts +1 -1
  166. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.d.ts +120 -0
  167. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.d.ts +6 -0
  168. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.d.ts +26 -0
  169. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.d.ts +23 -0
  170. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.d.ts +21 -0
  171. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.d.ts +12 -0
  172. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.d.ts +27 -0
  173. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.d.ts +12 -0
  174. package/esm/src/book-components/BookEditor/useBookEditorMonacoUploads.d.ts +5 -58
  175. package/esm/src/book-components/Chat/Chat/ChatImageAttachmentModal.d.ts +25 -0
  176. package/esm/src/book-components/Chat/Chat/ChatInputArea.d.ts +3 -0
  177. package/esm/src/book-components/Chat/Chat/ChatMessageAttachments.d.ts +27 -0
  178. package/esm/src/book-components/Chat/Chat/ChatMessageItem.d.ts +1 -1
  179. package/esm/src/book-components/Chat/Chat/ChatMessageList.d.ts +1 -0
  180. package/esm/src/book-components/Chat/Chat/ChatProps.d.ts +8 -0
  181. package/esm/src/book-components/Chat/Chat/useChatInputAreaComposer.d.ts +12 -0
  182. package/esm/src/book-components/Chat/Chat/useChatInputAreaComposer.draftMessage.test.d.ts +2 -0
  183. package/esm/src/book-components/Chat/utils/isVisibleChatToolCall.d.ts +1 -1
  184. package/esm/src/book-components/Chat/utils/parseMessageButtons.d.ts +16 -2
  185. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.d.ts +6 -0
  186. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.d.ts +6 -0
  187. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.d.ts +6 -0
  188. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.d.ts +10 -0
  189. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.d.ts +10 -0
  190. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.d.ts +6 -0
  191. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.d.ts +18 -0
  192. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.d.ts +6 -0
  193. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +28 -0
  194. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.d.ts +19 -0
  195. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.d.ts +11 -0
  196. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.d.ts +6 -0
  197. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.d.ts +6 -0
  198. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.d.ts +7 -0
  199. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.d.ts +6 -0
  200. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.d.ts +6 -0
  201. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.d.ts +6 -0
  202. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.d.ts +6 -0
  203. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.d.ts +6 -0
  204. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.d.ts +6 -0
  205. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.d.ts +6 -0
  206. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.d.ts +9 -0
  207. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.d.ts +8 -0
  208. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.d.ts +6 -0
  209. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.d.ts +9 -0
  210. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.d.ts +7 -0
  211. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.d.ts +6 -0
  212. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.d.ts +6 -0
  213. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.d.ts +12 -0
  214. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.d.ts +6 -0
  215. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.d.ts +11 -0
  216. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.d.ts +7 -0
  217. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +8 -109
  218. package/esm/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.d.ts +1 -1
  219. package/esm/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.d.ts +1 -1
  220. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.d.ts +16 -0
  221. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.d.ts +30 -0
  222. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.d.ts +19 -0
  223. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.d.ts +37 -0
  224. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.d.ts +9 -0
  225. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.d.ts +13 -0
  226. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.d.ts +24 -0
  227. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.d.ts +6 -0
  228. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.d.ts +9 -0
  229. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.d.ts +13 -0
  230. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.d.ts +6 -0
  231. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.d.ts +18 -0
  232. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.d.ts +6 -0
  233. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.d.ts +7 -0
  234. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.d.ts +20 -0
  235. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.d.ts +15 -0
  236. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.d.ts +8 -0
  237. package/esm/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.d.ts +16 -0
  238. package/esm/src/cli/cli-commands/agents-server/startAgentsServer.d.ts +3 -30
  239. package/esm/src/cli/cli-commands/common/promptRunnerCliOptions.d.ts +1 -1
  240. package/esm/src/collection/agent-collection/CreateAgentInput.d.ts +1 -1
  241. package/esm/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.d.ts +1 -1
  242. package/esm/src/commitments/META/META.d.ts +2 -2
  243. package/esm/src/commitments/META_AVATAR/META_AVATAR.d.ts +9 -4
  244. package/esm/src/commitments/index.d.ts +1 -1
  245. package/esm/src/conversion/validation/validatePipeline/createPipelineValidationContext.d.ts +16 -0
  246. package/esm/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.d.ts +7 -0
  247. package/esm/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.d.ts +7 -0
  248. package/esm/src/conversion/validation/validatePipeline/validatePipelineMetadata.d.ts +7 -0
  249. package/esm/src/conversion/validation/validatePipeline/validatePipelineParameters.d.ts +7 -0
  250. package/esm/src/conversion/validation/validatePipeline/validatePipelineTasks.d.ts +7 -0
  251. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.d.ts +46 -0
  252. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.d.ts +11 -0
  253. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.d.ts +7 -0
  254. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.d.ts +7 -0
  255. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.d.ts +7 -0
  256. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.d.ts +14 -0
  257. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.d.ts +7 -0
  258. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  259. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.d.ts +7 -0
  260. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.d.ts +7 -0
  261. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.d.ts +9 -0
  262. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.d.ts +7 -0
  263. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.d.ts +7 -0
  264. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.d.ts +7 -0
  265. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.d.ts +8 -0
  266. package/esm/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  267. package/esm/src/utils/agents/resolveAgentAvatarImageUrl.d.ts +2 -2
  268. package/esm/src/utils/color/Color.d.ts +1 -1
  269. package/esm/src/version.d.ts +1 -1
  270. package/package.json +1 -1
  271. package/src/_packages/types.index.ts +2 -2
  272. package/src/avatars/Avatar.tsx +2 -13
  273. package/src/avatars/renderAvatarVisual.ts +2 -13
  274. package/src/avatars/renderAvatarVisualAsciiArt.ts +137 -18
  275. package/src/avatars/visuals/asciiOctopusAvatarVisual.ts +1 -6
  276. package/src/avatars/visuals/avatarVisualRegistry.ts +1 -1
  277. package/src/avatars/visuals/minecraft2AvatarVisual.ts +1 -2
  278. package/src/avatars/visuals/octopus2AvatarVisual.ts +1 -5
  279. package/src/avatars/visuals/octopus3AvatarVisual.ts +1 -8
  280. package/src/avatars/visuals/octopus3d2AvatarVisual.ts +4 -13
  281. package/src/avatars/visuals/octopus3d3AvatarVisual.ts +4 -13
  282. package/src/avatars/visuals/octopus3d4AvatarVisual.ts +4 -13
  283. package/src/avatars/visuals/octopus3dAvatarVisual.ts +3 -3
  284. package/src/avatars/visuals/octopus3dAvatarVisualShared.ts +2 -7
  285. package/src/book-2.0/agent-source/parseAgentSource/applyMetaCommitment.ts +2 -1
  286. package/src/book-2.0/book-language-documentation/createStandaloneBookLanguageMarkdown.ts +3 -5
  287. package/src/book-3.0/CliAgent.ts +1 -7
  288. package/src/book-3.0/LiteAgent.ts +5 -5
  289. package/src/book-components/AvatarProfile/AvatarProfile/AvatarProfile.tsx +1 -4
  290. package/src/book-components/BookEditor/BookEditor.tsx +2 -2
  291. package/src/book-components/BookEditor/BookEditorAboutPromptbookInformation.tsx +3 -2
  292. package/src/book-components/BookEditor/BookEditorActionbar.tsx +1 -1
  293. package/src/book-components/BookEditor/BookEditorMonaco.tsx +2 -2
  294. package/src/book-components/BookEditor/BookEditorMonacoUploadPanel.tsx +1 -1
  295. package/src/book-components/BookEditor/useBookEditorMonacoLanguage.ts +1 -1
  296. package/src/book-components/BookEditor/useBookEditorMonacoStyles.ts +1 -1
  297. package/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.ts +147 -0
  298. package/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.ts +10 -0
  299. package/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.ts +209 -0
  300. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.ts +164 -0
  301. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.ts +121 -0
  302. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.ts +81 -0
  303. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.ts +360 -0
  304. package/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.ts +47 -0
  305. package/src/book-components/BookEditor/useBookEditorMonacoUploads.ts +10 -1067
  306. package/src/book-components/Chat/Chat/Chat.module.css +159 -0
  307. package/src/book-components/Chat/Chat/Chat.tsx +16 -1
  308. package/src/book-components/Chat/Chat/ChatCitationModal.tsx +2 -2
  309. package/src/book-components/Chat/Chat/ChatImageAttachmentModal.tsx +108 -0
  310. package/src/book-components/Chat/Chat/ChatInputArea.tsx +43 -27
  311. package/src/book-components/Chat/Chat/ChatMessageAttachments.tsx +212 -0
  312. package/src/book-components/Chat/Chat/ChatMessageItem.tsx +32 -18
  313. package/src/book-components/Chat/Chat/ChatMessageList.tsx +3 -0
  314. package/src/book-components/Chat/Chat/ChatProps.tsx +9 -0
  315. package/src/book-components/Chat/Chat/renderTimeoutToolCallDetails.tsx +1 -5
  316. package/src/book-components/Chat/Chat/useChatInputAreaComposer.ts +59 -7
  317. package/src/book-components/Chat/Chat/useChatInputAreaDictation.ts +7 -7
  318. package/src/book-components/Chat/Chat/useChatToolCallModalState.ts +1 -4
  319. package/src/book-components/Chat/hooks/useChatRatings.ts +1 -1
  320. package/src/book-components/Chat/save/html/htmlSaveFormatDefinition.ts +2 -3
  321. package/src/book-components/Chat/save/markdown/mdSaveFormatDefinition.ts +2 -2
  322. package/src/book-components/Chat/save/pdf/buildChatPdf.ts +1 -1
  323. package/src/book-components/Chat/utils/getToolCallChipletInfo.ts +1 -5
  324. package/src/book-components/Chat/utils/isVisibleChatToolCall.ts +2 -1
  325. package/src/book-components/Chat/utils/parseMessageButtons.ts +27 -2
  326. package/src/cli/cli-commands/about.ts +1 -1
  327. package/src/cli/cli-commands/agent/agentCliOptions.ts +2 -5
  328. package/src/cli/cli-commands/agent-folder/agentProjectPaths.ts +6 -12
  329. package/src/cli/cli-commands/agent-folder/init.ts +3 -8
  330. package/src/cli/cli-commands/agent-folder/initializeAgentProjectConfiguration.ts +2 -11
  331. package/src/cli/cli-commands/agent-folder/printAgentInitializationSummary.ts +2 -9
  332. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.ts +6 -0
  333. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.ts +6 -0
  334. package/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.ts +6 -0
  335. package/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.ts +11 -0
  336. package/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.ts +9 -0
  337. package/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.ts +6 -0
  338. package/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.ts +19 -0
  339. package/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.ts +71 -0
  340. package/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.ts +69 -0
  341. package/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.ts +59 -0
  342. package/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.ts +23 -0
  343. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.ts +20 -0
  344. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.ts +17 -0
  345. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.ts +27 -0
  346. package/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.ts +21 -0
  347. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.ts +22 -0
  348. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.ts +30 -0
  349. package/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.ts +41 -0
  350. package/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.ts +14 -0
  351. package/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.ts +10 -0
  352. package/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.ts +10 -0
  353. package/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.ts +31 -0
  354. package/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.ts +35 -0
  355. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.ts +33 -0
  356. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.ts +30 -0
  357. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.ts +19 -0
  358. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.ts +21 -0
  359. package/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.ts +19 -0
  360. package/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.ts +184 -0
  361. package/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.ts +48 -0
  362. package/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.ts +179 -0
  363. package/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.ts +28 -0
  364. package/src/cli/cli-commands/agents-server/buildAgentsServer.ts +22 -1045
  365. package/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.ts +2 -1
  366. package/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.ts +2 -1
  367. package/src/cli/cli-commands/agents-server/run.ts +2 -5
  368. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.ts +67 -0
  369. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.ts +43 -0
  370. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.ts +44 -0
  371. package/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.ts +59 -0
  372. package/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.ts +9 -0
  373. package/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.ts +14 -0
  374. package/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.ts +26 -0
  375. package/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.ts +15 -0
  376. package/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.ts +29 -0
  377. package/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.ts +32 -0
  378. package/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.ts +18 -0
  379. package/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.ts +81 -0
  380. package/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.ts +52 -0
  381. package/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.ts +17 -0
  382. package/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.ts +97 -0
  383. package/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.ts +132 -0
  384. package/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.ts +14 -0
  385. package/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.ts +132 -0
  386. package/src/cli/cli-commands/agents-server/startAgentsServer.ts +24 -797
  387. package/src/cli/cli-commands/agents-server.ts +2 -6
  388. package/src/cli/cli-commands/coder/agentCodingFile.ts +1 -7
  389. package/src/cli/cli-commands/coder/generate-boilerplates.ts +2 -6
  390. package/src/cli/cli-commands/coder/initializeCoderProjectConfiguration.ts +2 -7
  391. package/src/cli/cli-commands/coder/server.ts +4 -2
  392. package/src/cli/cli-commands/common/promptRunnerCliOptions.ts +3 -8
  393. package/src/cli/cli-commands/make.ts +1 -1
  394. package/src/cli/cli-commands/run/runCommandAction.ts +1 -1
  395. package/src/collection/agent-collection/CreateAgentInput.ts +2 -5
  396. package/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.ts +1 -1
  397. package/src/commitments/MEMORY/createMemoryToolFunctions.ts +1 -10
  398. package/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.ts +1 -10
  399. package/src/commitments/MEMORY/parseMemoryToolArgs.ts +1 -6
  400. package/src/commitments/META/META.ts +4 -4
  401. package/src/commitments/META_AVATAR/META_AVATAR.ts +16 -10
  402. package/src/commitments/USE_CALENDAR/createUseCalendarToolFunctions.ts +1 -4
  403. package/src/commitments/USE_PROJECT/createUseProjectToolFunctions.ts +2 -10
  404. package/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.ts +1 -11
  405. package/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.ts +1 -6
  406. package/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.ts +1 -6
  407. package/src/commitments/WALLET/createWalletToolFunctions.ts +2 -11
  408. package/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.ts +1 -6
  409. package/src/commitments/WALLET/parseWalletToolArgs.ts +1 -10
  410. package/src/commitments/index.ts +1 -0
  411. package/src/conversion/parsePipeline/applyPipelineHead.ts +1 -1
  412. package/src/conversion/parsePipeline/createUniqueSectionNameResolver.ts +1 -1
  413. package/src/conversion/parsePipeline/processPipelineSection.ts +1 -1
  414. package/src/conversion/validation/validatePipeline/createPipelineValidationContext.ts +43 -0
  415. package/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.ts +72 -0
  416. package/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.ts +220 -0
  417. package/src/conversion/validation/validatePipeline/validatePipelineMetadata.ts +66 -0
  418. package/src/conversion/validation/validatePipeline/validatePipelineParameters.ts +136 -0
  419. package/src/conversion/validation/validatePipeline/validatePipelineTasks.ts +243 -0
  420. package/src/conversion/validation/validatePipeline.ts +7 -750
  421. package/src/execution/LlmExecutionTools.ts +1 -6
  422. package/src/execution/createPipelineExecutor/getReservedParametersForTask.ts +1 -5
  423. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.ts +51 -0
  424. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.ts +30 -0
  425. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.ts +62 -0
  426. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.ts +10 -0
  427. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.ts +75 -0
  428. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.ts +101 -0
  429. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.ts +24 -0
  430. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.ts +17 -0
  431. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.ts +15 -0
  432. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.ts +19 -0
  433. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.ts +44 -0
  434. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.ts +21 -0
  435. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.ts +97 -0
  436. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.ts +17 -0
  437. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.ts +30 -0
  438. package/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.ts +32 -0
  439. package/src/llm-providers/_common/register/$registeredLlmToolsMessage.ts +5 -568
  440. package/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.ts +1 -6
  441. package/src/llm-providers/openai/OpenAiAgentKitExecutionTools.ts +2 -2
  442. package/src/llm-providers/openai/OpenAiAssistantExecutionTools.ts +1 -1
  443. package/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.ts +2 -2
  444. package/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.ts +1 -1
  445. package/src/llm-providers/openai/OpenAiCompatibleExecutionTools.ts +2 -7
  446. package/src/llm-providers/openai/utils/OpenAiCompatibleChatPromptBuilder.ts +1 -1
  447. package/src/llm-providers/openai/utils/OpenAiCompatibleChatToolCaller.ts +2 -2
  448. package/src/llm-providers/openai/utils/OpenAiCompatibleUnsupportedParameterRetrier.ts +1 -5
  449. package/src/llm-providers/openai/utils/buildToolInvocationScript.ts +1 -6
  450. package/src/other/templates/getTemplatesPipelineCollection.ts +705 -791
  451. package/src/remote-server/startRemoteServer/registerExecutionRoutes.ts +1 -1
  452. package/src/remote-server/startRemoteServer/registerServerIndexRoute.ts +1 -1
  453. package/src/scrapers/_common/utils/makeKnowledgeSourceHandler.ts +1 -6
  454. package/src/speech-recognition/OpenAiSpeechRecognition.ts +1 -6
  455. package/src/transpilers/_common/prepareSdkTranspilerContext.ts +1 -4
  456. package/src/types/Prompt.ts +1 -7
  457. package/src/types/string_host.ts +1 -9
  458. package/src/types/string_pipeline_url.ts +1 -4
  459. package/src/utils/agents/resolveAgentAvatarImageUrl.ts +2 -2
  460. package/src/utils/color/Color.ts +2 -2
  461. package/src/utils/markdown/parseMarkdownSection.ts +1 -5
  462. package/src/utils/random/$randomFullnameWithColor.ts +1 -6
  463. package/src/version.ts +2 -2
  464. package/src/versions.txt +2 -1
  465. package/umd/apps/agents-server/src/database/migratePrefix.d.ts +19 -0
  466. package/umd/apps/agents-server/src/database/runDatabaseMigrations.d.ts +4 -0
  467. package/umd/book/scripts/import-markdown/increaseHeadings.d.ts +8 -0
  468. package/umd/index.umd.js +28568 -27915
  469. package/umd/index.umd.js.map +1 -1
  470. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentAutoPuller.d.ts +27 -0
  471. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentGithubSynchronizer.d.ts +26 -0
  472. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/MultipleAgentRunUiPresenter.d.ts +66 -0
  473. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/RunMultipleAgentMessageTaskScheduler.d.ts +67 -0
  474. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/formatProjectPath.d.ts +6 -0
  475. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/loadLocalAgentRunnerProjectSummaries.d.ts +11 -0
  476. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages/wait.d.ts +6 -0
  477. package/umd/scripts/run-agent-messages/main/runMultipleAgentMessages.d.ts +1 -1
  478. package/umd/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeRunner.d.ts +4 -0
  479. package/umd/scripts/run-codex-prompts/runners/claude-code/ClaudeCodeSessionResurrection.d.ts +37 -0
  480. package/umd/scripts/run-codex-prompts/runners/claude-code/parseClaudeCodeOutputEvents.d.ts +47 -0
  481. package/umd/scripts/run-codex-prompts/ui/CoderRunUiState.d.ts +6 -4
  482. package/umd/scripts/run-codex-prompts/ui/buildCoderRunAgentVisual.d.ts +30 -5
  483. package/umd/scripts/run-codex-prompts/ui/buildCoderRunUiFrame.d.ts +7 -1
  484. package/umd/scripts/run-codex-prompts/ui/coderRunUiRefresh.d.ts +2 -2
  485. package/umd/src/_packages/types.index.d.ts +2 -2
  486. package/umd/src/avatars/renderAvatarVisualAsciiArt.d.ts +24 -1
  487. package/umd/src/avatars/visuals/octopus3dAvatarVisualShared.d.ts +1 -1
  488. package/umd/src/book-components/BookEditor/BookEditorMonacoUploadPanel.d.ts +1 -1
  489. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/bookEditorMonacoUploadTypes.d.ts +120 -0
  490. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/clearScheduledTimer.d.ts +6 -0
  491. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/enqueueFilesForUpload.d.ts +26 -0
  492. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadEditorSync.d.ts +23 -0
  493. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadItemsState.d.ts +21 -0
  494. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadProgressQueue.d.ts +12 -0
  495. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useBookEditorMonacoUploadQueue.d.ts +27 -0
  496. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads/useCompletedUploadsAutoClear.d.ts +12 -0
  497. package/umd/src/book-components/BookEditor/useBookEditorMonacoUploads.d.ts +5 -58
  498. package/umd/src/book-components/Chat/Chat/ChatImageAttachmentModal.d.ts +25 -0
  499. package/umd/src/book-components/Chat/Chat/ChatInputArea.d.ts +3 -0
  500. package/umd/src/book-components/Chat/Chat/ChatMessageAttachments.d.ts +27 -0
  501. package/umd/src/book-components/Chat/Chat/ChatMessageItem.d.ts +1 -1
  502. package/umd/src/book-components/Chat/Chat/ChatMessageList.d.ts +1 -0
  503. package/umd/src/book-components/Chat/Chat/ChatProps.d.ts +8 -0
  504. package/umd/src/book-components/Chat/Chat/useChatInputAreaComposer.d.ts +12 -0
  505. package/umd/src/book-components/Chat/Chat/useChatInputAreaComposer.draftMessage.test.d.ts +2 -0
  506. package/umd/src/book-components/Chat/utils/isVisibleChatToolCall.d.ts +1 -1
  507. package/umd/src/book-components/Chat/utils/parseMessageButtons.d.ts +16 -2
  508. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_FILENAME.d.ts +6 -0
  509. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_BUILD_CACHE_VERSION.d.ts +6 -0
  510. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AGENTS_SERVER_NEXT_BUILD_ID_FILENAME.d.ts +6 -0
  511. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCache.d.ts +10 -0
  512. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/AgentsServerBuildCacheOptions.d.ts +10 -0
  513. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/NODE_MODULES_DIRECTORY_NAME.d.ts +6 -0
  514. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/PreparedAgentsServerRuntime.d.ts +18 -0
  515. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerBuildSourceFingerprint.d.ts +6 -0
  516. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +28 -0
  517. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.d.ts +19 -0
  518. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/getAgentsServerBuildInputRelativePaths.d.ts +11 -0
  519. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPath.d.ts +6 -0
  520. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerAppPathMaterialized.d.ts +6 -0
  521. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildCacheCurrent.d.ts +7 -0
  522. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isAgentsServerBuildInputTestFile.d.ts +6 -0
  523. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputDirectoryName.d.ts +6 -0
  524. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerBuildInputPath.d.ts +6 -0
  525. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isExcludedAgentsServerRuntimeSourcePath.d.ts +6 -0
  526. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isFile.d.ts +6 -0
  527. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/isPathInsideNodeModules.d.ts +6 -0
  528. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/normalizeAgentsServerBuildInputPath.d.ts +6 -0
  529. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/prepareAgentsServerRuntime.d.ts +9 -0
  530. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/readAgentsServerBuildCache.d.ts +8 -0
  531. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerAppPath.d.ts +6 -0
  532. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildAppPath.d.ts +9 -0
  533. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveAgentsServerBuildOutputPath.d.ts +7 -0
  534. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNextCliPath.d.ts +6 -0
  535. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/resolveNodeModulesPath.d.ts +6 -0
  536. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/runNextBuild.d.ts +12 -0
  537. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/shouldCopyAgentsServerRuntimePath.d.ts +6 -0
  538. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/synchronizeMaterializedAgentsServerRuntime.d.ts +11 -0
  539. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/writeAgentsServerBuildCache.d.ts +7 -0
  540. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +8 -109
  541. package/umd/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.d.ts +1 -1
  542. package/umd/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.d.ts +1 -1
  543. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerChildEnvironment.d.ts +16 -0
  544. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerLogStreams.d.ts +30 -0
  545. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerRuntimePaths.d.ts +19 -0
  546. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/AgentsServerSupervisorState.d.ts +37 -0
  547. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/LocalAgentRunnerLimits.d.ts +9 -0
  548. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/PreparedAgentsServerLaunch.d.ts +13 -0
  549. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/StartAgentsServerOptions.d.ts +24 -0
  550. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/createInternalRouteErrorMessage.d.ts +6 -0
  551. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/createLocalAgentRunOptions.d.ts +9 -0
  552. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/forwardChildOutput.d.ts +13 -0
  553. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/loadAgentsServerProjectEnvironment.d.ts +6 -0
  554. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/prepareAgentsServerLaunch.d.ts +18 -0
  555. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/readInternalRouteErrorDetails.d.ts +6 -0
  556. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/resolveAgentsServerChildHostname.d.ts +7 -0
  557. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/startNextServer.d.ts +20 -0
  558. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/startUserChatJobWorkerPump.d.ts +15 -0
  559. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/stopChildProcess.d.ts +8 -0
  560. package/umd/src/cli/cli-commands/agents-server/startAgentsServer/waitForLocalAgentRunnerLimits.d.ts +16 -0
  561. package/umd/src/cli/cli-commands/agents-server/startAgentsServer.d.ts +3 -30
  562. package/umd/src/cli/cli-commands/common/promptRunnerCliOptions.d.ts +1 -1
  563. package/umd/src/collection/agent-collection/CreateAgentInput.d.ts +1 -1
  564. package/umd/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.d.ts +1 -1
  565. package/umd/src/commitments/META/META.d.ts +2 -2
  566. package/umd/src/commitments/META_AVATAR/META_AVATAR.d.ts +9 -4
  567. package/umd/src/commitments/index.d.ts +1 -1
  568. package/umd/src/conversion/validation/validatePipeline/createPipelineValidationContext.d.ts +16 -0
  569. package/umd/src/conversion/validation/validatePipeline/validatePipelineCollectionsStructure.d.ts +7 -0
  570. package/umd/src/conversion/validation/validatePipeline/validatePipelineDependencyResolution.d.ts +7 -0
  571. package/umd/src/conversion/validation/validatePipeline/validatePipelineMetadata.d.ts +7 -0
  572. package/umd/src/conversion/validation/validatePipeline/validatePipelineParameters.d.ts +7 -0
  573. package/umd/src/conversion/validation/validatePipeline/validatePipelineTasks.d.ts +7 -0
  574. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/RegisteredLlmToolsMessageContext.d.ts +46 -0
  575. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/USED_ENV_FILENAME.d.ts +11 -0
  576. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolConfigurationStatusMessage.d.ts +7 -0
  577. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolEntryKey.d.ts +7 -0
  578. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolInstallationStatusMessage.d.ts +7 -0
  579. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolStatus.d.ts +14 -0
  580. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/createRegisteredLlmToolsMessageContext.d.ts +7 -0
  581. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/getAvailableRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  582. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/getRegisteredLlmToolRegisters.d.ts +7 -0
  583. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/hasRegisteredLlmToolEntry.d.ts +7 -0
  584. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolEntries.d.ts +9 -0
  585. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/listRegisteredLlmToolStatuses.d.ts +7 -0
  586. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderAvailableRegisteredLlmTools.d.ts +7 -0
  587. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderNoRegisteredLlmToolsMessage.d.ts +7 -0
  588. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRegisteredLlmToolsMessage.d.ts +8 -0
  589. package/umd/src/llm-providers/_common/register/$registeredLlmToolsMessage/renderRelevantRegisteredLlmToolsEnvironmentVariables.d.ts +7 -0
  590. package/umd/src/utils/agents/resolveAgentAvatarImageUrl.d.ts +2 -2
  591. package/umd/src/utils/color/Color.d.ts +1 -1
  592. package/umd/src/version.d.ts +1 -1
  593. package/apps/agents-server/src/utils/userChat/createUserChatRunnerProgressCard.ts +0 -57
@@ -78,7 +78,7 @@ const nextConfig: NextConfig = {
78
78
  },
79
79
  },
80
80
 
81
- webpack(config, { isServer }) {
81
+ webpack(config, { isServer, nextRuntime }) {
82
82
  config.resolve.alias = {
83
83
  ...config.resolve.alias,
84
84
  '@': path.resolve(__dirname),
@@ -92,11 +92,14 @@ const nextConfig: NextConfig = {
92
92
  );
93
93
  }
94
94
 
95
- // Exclude Node.js-only modules from client bundle
96
- if (!isServer) {
95
+ // Exclude Node.js-only modules from client and edge bundles
96
+ if (!isServer || nextRuntime === 'edge') {
97
97
  config.resolve.fallback = {
98
98
  ...config.resolve.fallback,
99
99
  fs: false,
100
+ 'fs/promises': false,
101
+ path: false,
102
+ util: false,
100
103
  net: false,
101
104
  tls: false,
102
105
  dns: false,
@@ -0,0 +1,456 @@
1
+ import { Cpu, HardDrive, MemoryStick, Network, RefreshCcw, TriangleAlert, type LucideIcon } from 'lucide-react';
2
+ import Link from 'next/link';
3
+
4
+ import { ForbiddenPage } from '../../../components/ForbiddenPage/ForbiddenPage';
5
+ import { isUserGlobalAdmin } from '../../../utils/isUserGlobalAdmin';
6
+ import {
7
+ formatResourceBytes,
8
+ formatResourcePercentage,
9
+ formatResourceRate,
10
+ } from '../../../utils/resourceMonitor/formatResourceMonitorValue';
11
+ import { readServerResourceMonitorSnapshot } from '../../../utils/resourceMonitor/readServerResourceMonitorSnapshot';
12
+ import type {
13
+ ResourceMonitorResource,
14
+ ServerResourceMonitorSnapshot,
15
+ ServerResourceWarningIssue,
16
+ } from '../../../utils/resourceMonitor/resourceMonitorTypes';
17
+
18
+ /**
19
+ * Forces fresh resource readings for every request.
20
+ */
21
+ export const dynamic = 'force-dynamic';
22
+
23
+ /**
24
+ * Visual tone for resource metric cards.
25
+ */
26
+ type ResourceMetricTone = 'neutral' | 'warning' | 'unavailable';
27
+
28
+ /**
29
+ * One row in a detail list.
30
+ */
31
+ type DetailListItem = {
32
+ readonly label: string;
33
+ readonly value: string;
34
+ };
35
+
36
+ /**
37
+ * Card tone class names.
38
+ */
39
+ const METRIC_CARD_TONE_CLASS_NAMES: Record<ResourceMetricTone, string> = {
40
+ neutral: 'border-gray-200 bg-white',
41
+ warning: 'border-amber-300 bg-amber-50',
42
+ unavailable: 'border-gray-200 bg-gray-50',
43
+ };
44
+
45
+ /**
46
+ * Metric value tone class names.
47
+ */
48
+ const METRIC_VALUE_TONE_CLASS_NAMES: Record<ResourceMetricTone, string> = {
49
+ neutral: 'text-gray-950',
50
+ warning: 'text-amber-900',
51
+ unavailable: 'text-gray-500',
52
+ };
53
+
54
+ /**
55
+ * Meter fill tone class names.
56
+ */
57
+ const METER_FILL_TONE_CLASS_NAMES: Record<ResourceMetricTone, string> = {
58
+ neutral: 'bg-emerald-500',
59
+ warning: 'bg-amber-500',
60
+ unavailable: 'bg-gray-300',
61
+ };
62
+
63
+ /**
64
+ * Super-admin page showing live server resource usage.
65
+ */
66
+ export default async function ResourceMonitorPage() {
67
+ if (!(await isUserGlobalAdmin())) {
68
+ return <ForbiddenPage />;
69
+ }
70
+
71
+ const snapshot = await readServerResourceMonitorSnapshot();
72
+
73
+ return (
74
+ <div className="container mx-auto space-y-6 px-4 py-8">
75
+ <ResourceMonitorHeader measuredAt={snapshot.measuredAt} />
76
+ <ResourceWarningBanner issues={snapshot.warningStatus.issues} />
77
+ <ResourceSummaryGrid snapshot={snapshot} />
78
+ <ResourceDetailGrid snapshot={snapshot} />
79
+ </div>
80
+ );
81
+ }
82
+
83
+ /**
84
+ * Renders the page header and refresh action.
85
+ *
86
+ * @param props - Header props.
87
+ * @returns Header element.
88
+ */
89
+ function ResourceMonitorHeader({ measuredAt }: { readonly measuredAt: string }) {
90
+ return (
91
+ <div className="mt-20 flex flex-col gap-4 md:flex-row md:items-end md:justify-between">
92
+ <div>
93
+ <p className="text-xs font-semibold uppercase tracking-[0.22em] text-gray-400">Super Admin</p>
94
+ <h1 className="mt-1 text-3xl font-light text-gray-900">Resource monitor</h1>
95
+ <p className="mt-1 max-w-3xl text-sm text-gray-500">
96
+ Current CPU, memory, disk, and network usage for this Agents Server process and host.
97
+ </p>
98
+ </div>
99
+ <div className="flex flex-wrap items-center gap-2 text-xs text-gray-500">
100
+ <span className="rounded-md border border-gray-200 bg-white px-3 py-1.5">
101
+ Measured: <span className="font-mono text-gray-700">{formatMeasuredAt(measuredAt)}</span>
102
+ </span>
103
+ <Link
104
+ href="/admin/resource-monitor"
105
+ className="inline-flex items-center gap-2 rounded-md border border-blue-200 bg-blue-50 px-3 py-1.5 font-semibold text-blue-700 hover:bg-blue-100"
106
+ >
107
+ <RefreshCcw className="h-3.5 w-3.5" />
108
+ Refresh
109
+ </Link>
110
+ </div>
111
+ </div>
112
+ );
113
+ }
114
+
115
+ /**
116
+ * Renders resource warning issues.
117
+ *
118
+ * @param props - Warning props.
119
+ * @returns Warning banner.
120
+ */
121
+ function ResourceWarningBanner({ issues }: { readonly issues: ReadonlyArray<ServerResourceWarningIssue> }) {
122
+ if (issues.length === 0) {
123
+ return (
124
+ <div className="rounded-lg border border-emerald-200 bg-emerald-50 px-4 py-3 text-sm text-emerald-800">
125
+ Resources are within the configured warning thresholds.
126
+ </div>
127
+ );
128
+ }
129
+
130
+ return (
131
+ <div className="rounded-lg border border-amber-300 bg-amber-50 px-4 py-3 text-sm text-amber-900">
132
+ <div className="flex items-start gap-3">
133
+ <TriangleAlert className="mt-0.5 h-5 w-5 shrink-0 text-amber-600" aria-hidden />
134
+ <div>
135
+ <p className="font-semibold">Resource pressure detected</p>
136
+ <ul className="mt-2 list-disc space-y-1 pl-5">
137
+ {issues.map((issue) => (
138
+ <li key={`${issue.resource}-${issue.message}`}>{issue.message}</li>
139
+ ))}
140
+ </ul>
141
+ </div>
142
+ </div>
143
+ </div>
144
+ );
145
+ }
146
+
147
+ /**
148
+ * Renders the top resource summary cards.
149
+ *
150
+ * @param props - Summary props.
151
+ * @returns Summary grid.
152
+ */
153
+ function ResourceSummaryGrid({ snapshot }: { readonly snapshot: ServerResourceMonitorSnapshot }) {
154
+ const isCpuWarning = isWarningIssuePresent(snapshot.warningStatus.issues, 'cpu');
155
+ const isMemoryWarning = isWarningIssuePresent(snapshot.warningStatus.issues, 'memory');
156
+ const isDiskWarning = isWarningIssuePresent(snapshot.warningStatus.issues, 'disk');
157
+ const isDiskUsageAvailable = snapshot.disk.usedRatio !== null;
158
+ const isNetworkTrafficAvailable = snapshot.network.isTrafficAvailable;
159
+
160
+ return (
161
+ <div className="grid gap-4 md:grid-cols-2 xl:grid-cols-4">
162
+ <ResourceMetricCard
163
+ icon={Cpu}
164
+ label="CPU load"
165
+ value={formatResourcePercentage(snapshot.cpu.loadRatio)}
166
+ caption={`${formatLoadValue(snapshot.cpu.averageLoadOneMinute)} load across ${
167
+ snapshot.cpu.coreCount
168
+ } logical cores`}
169
+ tone={isCpuWarning ? 'warning' : 'neutral'}
170
+ ratio={snapshot.cpu.loadRatio}
171
+ />
172
+ <ResourceMetricCard
173
+ icon={MemoryStick}
174
+ label="Memory used"
175
+ value={formatResourcePercentage(snapshot.memory.usedRatio)}
176
+ caption={`${formatResourceBytes(snapshot.memory.freeBytes)} free of ${formatResourceBytes(
177
+ snapshot.memory.totalBytes,
178
+ )}`}
179
+ tone={isMemoryWarning ? 'warning' : 'neutral'}
180
+ ratio={snapshot.memory.usedRatio}
181
+ />
182
+ <ResourceMetricCard
183
+ icon={HardDrive}
184
+ label="Disk used"
185
+ value={isDiskUsageAvailable ? formatResourcePercentage(snapshot.disk.usedRatio) : 'Not available'}
186
+ caption={`${formatNullableBytes(snapshot.disk.availableBytes)} available on ${
187
+ snapshot.disk.inspectedPath
188
+ }`}
189
+ tone={!isDiskUsageAvailable ? 'unavailable' : isDiskWarning ? 'warning' : 'neutral'}
190
+ ratio={snapshot.disk.usedRatio}
191
+ />
192
+ <ResourceMetricCard
193
+ icon={Network}
194
+ label="Network rate"
195
+ value={
196
+ isNetworkTrafficAvailable
197
+ ? `In ${formatResourceRate(
198
+ snapshot.network.totalReceivedBytesPerSecond,
199
+ )} Out ${formatResourceRate(snapshot.network.totalTransmittedBytesPerSecond)}`
200
+ : 'Not available'
201
+ }
202
+ caption={`${snapshot.network.networkInterfaceCount} interfaces, ${snapshot.network.networkAddressCount} addresses`}
203
+ tone={isNetworkTrafficAvailable ? 'neutral' : 'unavailable'}
204
+ ratio={null}
205
+ />
206
+ </div>
207
+ );
208
+ }
209
+
210
+ /**
211
+ * Renders detailed CPU, memory, disk, and network panels.
212
+ *
213
+ * @param props - Detail props.
214
+ * @returns Detail grid.
215
+ */
216
+ function ResourceDetailGrid({ snapshot }: { readonly snapshot: ServerResourceMonitorSnapshot }) {
217
+ const cpuItems: DetailListItem[] = [
218
+ { label: '1-minute load', value: formatLoadValue(snapshot.cpu.averageLoadOneMinute) },
219
+ { label: '5-minute load', value: formatLoadValue(snapshot.cpu.averageLoadFiveMinutes) },
220
+ { label: '15-minute load', value: formatLoadValue(snapshot.cpu.averageLoadFifteenMinutes) },
221
+ { label: 'Logical cores', value: snapshot.cpu.coreCount.toLocaleString() },
222
+ { label: 'Process CPU sample', value: formatResourcePercentage(snapshot.cpu.processUsageRatio) },
223
+ ];
224
+ const memoryItems: DetailListItem[] = [
225
+ { label: 'Total memory', value: formatResourceBytes(snapshot.memory.totalBytes) },
226
+ { label: 'Free memory', value: formatResourceBytes(snapshot.memory.freeBytes) },
227
+ { label: 'Process RSS', value: formatResourceBytes(snapshot.memory.processRssBytes) },
228
+ { label: 'Heap used', value: formatResourceBytes(snapshot.memory.processHeapUsedBytes) },
229
+ { label: 'Heap total', value: formatResourceBytes(snapshot.memory.processHeapTotalBytes) },
230
+ { label: 'External memory', value: formatResourceBytes(snapshot.memory.processExternalBytes) },
231
+ { label: 'Array buffers', value: formatResourceBytes(snapshot.memory.processArrayBuffersBytes) },
232
+ ];
233
+ const diskItems: DetailListItem[] = [
234
+ { label: 'Path', value: snapshot.disk.inspectedPath },
235
+ { label: 'Total space', value: formatNullableBytes(snapshot.disk.totalBytes) },
236
+ { label: 'Free space', value: formatNullableBytes(snapshot.disk.freeBytes) },
237
+ { label: 'Available space', value: formatNullableBytes(snapshot.disk.availableBytes) },
238
+ { label: 'Used space', value: formatNullableBytes(snapshot.disk.usedBytes) },
239
+ { label: 'Available ratio', value: formatResourcePercentage(snapshot.disk.availableRatio) },
240
+ ...(snapshot.disk.errorMessage ? [{ label: 'Error', value: snapshot.disk.errorMessage }] : []),
241
+ ];
242
+
243
+ return (
244
+ <div className="grid gap-6 xl:grid-cols-2">
245
+ <ResourcePanel icon={Cpu} title="CPU">
246
+ <DetailList items={cpuItems} />
247
+ </ResourcePanel>
248
+ <ResourcePanel icon={MemoryStick} title="Memory">
249
+ <DetailList items={memoryItems} />
250
+ </ResourcePanel>
251
+ <ResourcePanel icon={HardDrive} title="Disk">
252
+ <DetailList items={diskItems} />
253
+ </ResourcePanel>
254
+ <ResourcePanel icon={Network} title="Network">
255
+ <NetworkUsageTable snapshot={snapshot} />
256
+ </ResourcePanel>
257
+ </div>
258
+ );
259
+ }
260
+
261
+ /**
262
+ * Summary card for one monitored resource.
263
+ *
264
+ * @param props - Card props.
265
+ * @returns Metric card.
266
+ */
267
+ function ResourceMetricCard({
268
+ icon: Icon,
269
+ label,
270
+ value,
271
+ caption,
272
+ tone,
273
+ ratio,
274
+ }: {
275
+ readonly icon: LucideIcon;
276
+ readonly label: string;
277
+ readonly value: string;
278
+ readonly caption: string;
279
+ readonly tone: ResourceMetricTone;
280
+ readonly ratio: number | null;
281
+ }) {
282
+ return (
283
+ <section className={`rounded-lg border p-5 shadow-sm ${METRIC_CARD_TONE_CLASS_NAMES[tone]}`}>
284
+ <div className="flex items-center justify-between gap-3">
285
+ <div className="text-xs font-semibold uppercase tracking-wide text-gray-500">{label}</div>
286
+ <Icon className="h-5 w-5 shrink-0 text-gray-400" aria-hidden />
287
+ </div>
288
+ <div className={`mt-2 text-3xl font-light ${METRIC_VALUE_TONE_CLASS_NAMES[tone]}`}>{value}</div>
289
+ <div className="mt-1 min-h-10 text-sm text-gray-500">{caption}</div>
290
+ <ResourceMeter ratio={ratio} tone={tone} />
291
+ </section>
292
+ );
293
+ }
294
+
295
+ /**
296
+ * Renders one resource utilization meter.
297
+ *
298
+ * @param props - Meter props.
299
+ * @returns Meter element.
300
+ */
301
+ function ResourceMeter({ ratio, tone }: { readonly ratio: number | null; readonly tone: ResourceMetricTone }) {
302
+ const isRatioAvailable = ratio !== null && Number.isFinite(ratio);
303
+ const percentage = isRatioAvailable ? Math.min(Math.max(ratio, 0), 1) * 100 : 0;
304
+
305
+ return (
306
+ <div className="mt-4 h-2 overflow-hidden rounded-full bg-gray-100">
307
+ <div
308
+ className={`h-full rounded-full ${METER_FILL_TONE_CLASS_NAMES[tone]}`}
309
+ style={{ width: `${percentage}%` }}
310
+ />
311
+ </div>
312
+ );
313
+ }
314
+
315
+ /**
316
+ * Bordered panel for detailed metrics.
317
+ *
318
+ * @param props - Panel props.
319
+ * @returns Resource panel.
320
+ */
321
+ function ResourcePanel({
322
+ icon: Icon,
323
+ title,
324
+ children,
325
+ }: {
326
+ readonly icon: LucideIcon;
327
+ readonly title: string;
328
+ readonly children: React.ReactNode;
329
+ }) {
330
+ return (
331
+ <section className="rounded-lg border border-gray-200 bg-white p-5 shadow-sm">
332
+ <div className="mb-4 flex items-center gap-2">
333
+ <Icon className="h-5 w-5 text-gray-500" aria-hidden />
334
+ <h2 className="text-lg font-semibold text-gray-900">{title}</h2>
335
+ </div>
336
+ {children}
337
+ </section>
338
+ );
339
+ }
340
+
341
+ /**
342
+ * Renders label/value rows.
343
+ *
344
+ * @param props - Detail list props.
345
+ * @returns Detail list.
346
+ */
347
+ function DetailList({ items }: { readonly items: ReadonlyArray<DetailListItem> }) {
348
+ return (
349
+ <dl className="space-y-3 text-sm">
350
+ {items.map((item) => (
351
+ <div key={item.label} className="grid gap-1 sm:grid-cols-[minmax(0,13rem)_minmax(0,1fr)]">
352
+ <dt className="font-medium text-gray-500">{item.label}</dt>
353
+ <dd className="min-w-0 break-words text-gray-900">{item.value}</dd>
354
+ </div>
355
+ ))}
356
+ </dl>
357
+ );
358
+ }
359
+
360
+ /**
361
+ * Renders network traffic counters.
362
+ *
363
+ * @param props - Network props.
364
+ * @returns Network table or fallback.
365
+ */
366
+ function NetworkUsageTable({ snapshot }: { readonly snapshot: ServerResourceMonitorSnapshot }) {
367
+ if (!snapshot.network.isTrafficAvailable) {
368
+ return (
369
+ <div className="rounded-md border border-gray-200 bg-gray-50 px-4 py-3 text-sm text-gray-600">
370
+ {snapshot.network.errorMessage || 'Network traffic counters are not available.'}
371
+ </div>
372
+ );
373
+ }
374
+
375
+ return (
376
+ <div className="overflow-x-auto">
377
+ <table className="min-w-full text-left text-sm">
378
+ <thead>
379
+ <tr className="border-b border-gray-200 text-xs uppercase tracking-wide text-gray-400">
380
+ <th className="py-2 pr-4 font-semibold">Interface</th>
381
+ <th className="py-2 pr-4 font-semibold">Received</th>
382
+ <th className="py-2 pr-4 font-semibold">Sent</th>
383
+ <th className="py-2 pr-4 font-semibold">Receive rate</th>
384
+ <th className="py-2 pr-4 font-semibold">Send rate</th>
385
+ </tr>
386
+ </thead>
387
+ <tbody>
388
+ {snapshot.network.interfaces.map((networkInterface) => (
389
+ <tr key={networkInterface.name} className="border-b border-gray-100 last:border-0">
390
+ <td className="py-2 pr-4 font-mono text-gray-900">{networkInterface.name}</td>
391
+ <td className="py-2 pr-4 text-gray-700">
392
+ {formatResourceBytes(networkInterface.receivedBytes)}
393
+ </td>
394
+ <td className="py-2 pr-4 text-gray-700">
395
+ {formatResourceBytes(networkInterface.transmittedBytes)}
396
+ </td>
397
+ <td className="py-2 pr-4 text-gray-700">
398
+ {formatResourceRate(networkInterface.receivedBytesPerSecond)}
399
+ </td>
400
+ <td className="py-2 pr-4 text-gray-700">
401
+ {formatResourceRate(networkInterface.transmittedBytesPerSecond)}
402
+ </td>
403
+ </tr>
404
+ ))}
405
+ </tbody>
406
+ </table>
407
+ </div>
408
+ );
409
+ }
410
+
411
+ /**
412
+ * Returns whether a resource has an active warning issue.
413
+ *
414
+ * @param issues - Warning issues.
415
+ * @param resource - Resource to find.
416
+ * @returns `true` when the resource is warning.
417
+ */
418
+ function isWarningIssuePresent(
419
+ issues: ReadonlyArray<ServerResourceWarningIssue>,
420
+ resource: ResourceMonitorResource,
421
+ ): boolean {
422
+ return issues.some((issue) => issue.resource === resource);
423
+ }
424
+
425
+ /**
426
+ * Formats nullable byte values with a distinct unavailable fallback.
427
+ *
428
+ * @param bytes - Nullable byte count.
429
+ * @returns Display value.
430
+ */
431
+ function formatNullableBytes(bytes: number | null): string {
432
+ return bytes === null ? 'Not available' : formatResourceBytes(bytes);
433
+ }
434
+
435
+ /**
436
+ * Formats load average values.
437
+ *
438
+ * @param value - Nullable load average.
439
+ * @returns Display value.
440
+ */
441
+ function formatLoadValue(value: number | null): string {
442
+ return value === null ? 'Not available' : value.toFixed(2);
443
+ }
444
+
445
+ /**
446
+ * Formats the server measurement timestamp.
447
+ *
448
+ * @param measuredAt - ISO timestamp.
449
+ * @returns Display value.
450
+ */
451
+ function formatMeasuredAt(measuredAt: string): string {
452
+ return new Date(measuredAt).toLocaleString('en-US', {
453
+ dateStyle: 'medium',
454
+ timeStyle: 'medium',
455
+ });
456
+ }
@@ -7,12 +7,24 @@ import { TaskManagerSummaryMetrics } from './TaskManagerSummaryMetrics';
7
7
  import { TaskManagerTasksCard } from './TaskManagerTasksCard';
8
8
  import { useTaskManagerState } from './useTaskManagerState';
9
9
 
10
+ /**
11
+ * Props for the admin task-manager dashboard client.
12
+ *
13
+ * @private route component of AdminTaskManagerPage
14
+ */
15
+ type TaskManagerClientProps = {
16
+ /**
17
+ * Whether the current user is the environment-backed super-admin who may open task terminals.
18
+ */
19
+ isSuperAdmin: boolean;
20
+ };
21
+
10
22
  /**
11
23
  * Admin task-manager dashboard client.
12
24
  *
13
25
  * @private route component of AdminTaskManagerPage
14
26
  */
15
- export function TaskManagerClient() {
27
+ export function TaskManagerClient({ isSuperAdmin }: TaskManagerClientProps) {
16
28
  const { language } = useServerLanguage();
17
29
  const taskManagerState = useTaskManagerState(language);
18
30
 
@@ -55,7 +67,7 @@ export function TaskManagerClient() {
55
67
  </Card>
56
68
  ) : null}
57
69
 
58
- <TaskManagerTasksCard language={language} state={taskManagerState} />
70
+ <TaskManagerTasksCard language={language} state={taskManagerState} isSuperAdmin={isSuperAdmin} />
59
71
  </div>
60
72
  );
61
73
  }
@@ -0,0 +1,150 @@
1
+ 'use client';
2
+
3
+ import { ClipboardCopy, FileDown } from 'lucide-react';
4
+ import { useEffect, useRef, useState } from 'react';
5
+ import type { AdminChatTaskRecord } from '@/src/utils/chatTasksAdmin';
6
+ import { downloadBlob } from '@/src/utils/download/browserFileDownload';
7
+
8
+ /**
9
+ * Duration (ms) of the transient feedback shown next to the log action buttons.
10
+ *
11
+ * @private constant of `<TaskManagerTaskLogActions/>`
12
+ */
13
+ const TASK_LOG_ACTION_FEEDBACK_DURATION_MS = 2500;
14
+
15
+ /**
16
+ * Props for the post-mortem log copy/download actions of one task row.
17
+ *
18
+ * @private function of TaskManagerTaskRow
19
+ */
20
+ type TaskManagerTaskLogActionsProps = {
21
+ task: AdminChatTaskRecord;
22
+ };
23
+
24
+ /**
25
+ * Builds the downloadable post-mortem log text of one background task.
26
+ *
27
+ * @private function of TaskManagerTaskRow
28
+ */
29
+ export function createTaskPostMortemLogText(task: AdminChatTaskRecord): string {
30
+ const logLines: Array<string> = [
31
+ `Task: ${task.id}`,
32
+ `Kind: ${task.kind}`,
33
+ `Status: ${task.status}`,
34
+ `Created: ${task.createdAt}`,
35
+ `Queued: ${task.queuedAt}`,
36
+ `Started: ${task.startedAt || '-'}`,
37
+ `Finished: ${task.finishedAt || '-'}`,
38
+ `Attempts: ${task.attemptCount}`,
39
+ `Retries: ${task.retryCount}`,
40
+ `Worker: ${task.workerId || '-'}`,
41
+ `Queue: ${task.queueName || '-'}`,
42
+ ];
43
+
44
+ if (task.lastErrorSummary) {
45
+ logLines.push('', 'Last error summary:', task.lastErrorSummary);
46
+ }
47
+
48
+ if (task.lastErrorDetails) {
49
+ logLines.push('', 'Last error details:', task.lastErrorDetails);
50
+ }
51
+
52
+ return logLines.join('\n') + '\n';
53
+ }
54
+
55
+ /**
56
+ * Resolves a filesystem-safe download filename for one task log.
57
+ *
58
+ * @private function of TaskManagerTaskRow
59
+ */
60
+ function createTaskLogDownloadFilename(task: AdminChatTaskRecord): string {
61
+ const sanitizedTaskId = task.id.replace(/[^a-zA-Z0-9_-]+/g, '-');
62
+ return `task-${sanitizedTaskId}-log.txt`;
63
+ }
64
+
65
+ /**
66
+ * Copy and download buttons for the post-mortem log of one background task.
67
+ *
68
+ * @private function of TaskManagerTaskRow
69
+ */
70
+ export function TaskManagerTaskLogActions({ task }: TaskManagerTaskLogActionsProps) {
71
+ const [actionFeedback, setActionFeedback] = useState<string | null>(null);
72
+ const [actionErrorMessage, setActionErrorMessage] = useState<string | null>(null);
73
+ const feedbackTimeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);
74
+
75
+ useEffect(() => {
76
+ return () => {
77
+ if (feedbackTimeoutRef.current !== null) {
78
+ clearTimeout(feedbackTimeoutRef.current);
79
+ feedbackTimeoutRef.current = null;
80
+ }
81
+ };
82
+ }, []);
83
+
84
+ function showActionFeedback(feedbackMessage: string): void {
85
+ if (feedbackTimeoutRef.current !== null) {
86
+ clearTimeout(feedbackTimeoutRef.current);
87
+ }
88
+ setActionFeedback(feedbackMessage);
89
+ setActionErrorMessage(null);
90
+ feedbackTimeoutRef.current = setTimeout(() => {
91
+ setActionFeedback(null);
92
+ feedbackTimeoutRef.current = null;
93
+ }, TASK_LOG_ACTION_FEEDBACK_DURATION_MS);
94
+ }
95
+
96
+ async function handleCopyLog(): Promise<void> {
97
+ try {
98
+ if (!navigator.clipboard?.writeText) {
99
+ throw new Error('The browser clipboard API is unavailable in this context.');
100
+ }
101
+ await navigator.clipboard.writeText(createTaskPostMortemLogText(task));
102
+ showActionFeedback('Copied!');
103
+ } catch (error) {
104
+ setActionErrorMessage(error instanceof Error ? error.message : 'Failed to copy the task log.');
105
+ }
106
+ }
107
+
108
+ function handleDownloadLog(): void {
109
+ try {
110
+ const logBlob = new Blob([createTaskPostMortemLogText(task)], { type: 'text/plain;charset=utf-8' });
111
+ downloadBlob(logBlob, createTaskLogDownloadFilename(task));
112
+ showActionFeedback('Saved!');
113
+ } catch (error) {
114
+ setActionErrorMessage(error instanceof Error ? error.message : 'Failed to download the task log.');
115
+ }
116
+ }
117
+
118
+ return (
119
+ <div className="flex flex-wrap items-center gap-2">
120
+ <button
121
+ type="button"
122
+ onClick={() => void handleCopyLog()}
123
+ className="inline-flex items-center gap-1 rounded-md border border-gray-200 bg-white px-2 py-1 text-[10px] font-semibold text-gray-600 hover:bg-gray-50"
124
+ title="Copy the post-mortem log of this task"
125
+ >
126
+ <ClipboardCopy className="h-3 w-3" />
127
+ Copy log
128
+ </button>
129
+ <button
130
+ type="button"
131
+ onClick={handleDownloadLog}
132
+ className="inline-flex items-center gap-1 rounded-md border border-gray-200 bg-white px-2 py-1 text-[10px] font-semibold text-gray-600 hover:bg-gray-50"
133
+ title="Download the post-mortem log of this task"
134
+ >
135
+ <FileDown className="h-3 w-3" />
136
+ Download log
137
+ </button>
138
+ {actionFeedback && (
139
+ <span className="text-[10px] text-emerald-600" role="status" aria-live="polite">
140
+ {actionFeedback}
141
+ </span>
142
+ )}
143
+ {actionErrorMessage && (
144
+ <span className="text-[10px] text-rose-700" role="alert">
145
+ {actionErrorMessage}
146
+ </span>
147
+ )}
148
+ </div>
149
+ );
150
+ }