@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
@@ -0,0 +1,57 @@
1
+ import { $provideSupabaseForServer } from '@/src/database/$provideSupabaseForServer';
2
+ import type { Json } from '@/src/database/schema';
3
+ import { getShibbolethAuthenticationAttemptTableName } from './getShibbolethAuthenticationAttemptTableName';
4
+ import type { ShibbolethRequestDetails } from './shibbolethAuthenticationTypes';
5
+
6
+ /**
7
+ * Options for recording a Shibboleth authentication attempt.
8
+ *
9
+ * @private type of `shibbolethAuthentication`
10
+ */
11
+ type RecordShibbolethAuthenticationAttemptOptions = {
12
+ readonly stage: string;
13
+ readonly status: string;
14
+ readonly requestDetails?: ShibbolethRequestDetails;
15
+ readonly userId?: number | null;
16
+ readonly email?: string | null;
17
+ readonly displayName?: string | null;
18
+ readonly nameId?: string | null;
19
+ readonly relayState?: string | null;
20
+ readonly errorMessage?: string | null;
21
+ readonly rawAttributes?: Json | null;
22
+ };
23
+
24
+ /**
25
+ * Records one Shibboleth authentication attempt.
26
+ *
27
+ * @param options - Attempt details.
28
+ *
29
+ * @private function of `shibbolethAuthentication`
30
+ */
31
+ export async function recordShibbolethAuthenticationAttempt(
32
+ options: RecordShibbolethAuthenticationAttemptOptions,
33
+ ): Promise<void> {
34
+ try {
35
+ const supabase = $provideSupabaseForServer();
36
+ const tableName = await getShibbolethAuthenticationAttemptTableName();
37
+ const { error } = await supabase.from(tableName).insert({
38
+ stage: options.stage,
39
+ status: options.status,
40
+ userId: options.userId ?? null,
41
+ email: options.email ?? null,
42
+ displayName: options.displayName ?? null,
43
+ nameId: options.nameId ?? null,
44
+ relayState: options.relayState ?? null,
45
+ ip: options.requestDetails?.ip ?? null,
46
+ userAgent: options.requestDetails?.userAgent ?? null,
47
+ errorMessage: options.errorMessage ?? null,
48
+ rawAttributes: options.rawAttributes ?? null,
49
+ } as never);
50
+
51
+ if (error) {
52
+ console.error('Failed to record Shibboleth authentication attempt:', error);
53
+ }
54
+ } catch (error) {
55
+ console.error('Failed to record Shibboleth authentication attempt:', error);
56
+ }
57
+ }
@@ -0,0 +1,78 @@
1
+ import {
2
+ IS_SHIBBOLETH_AUTH_ACTIVE_METADATA_KEY,
3
+ SHIBBOLETH_AUTHENTICATION_METADATA_KEYS,
4
+ SHIBBOLETH_IDENTITY_PROVIDER_METADATA_URL_METADATA_KEY,
5
+ SHIBBOLETH_IDENTITY_PROVIDER_METADATA_XML_METADATA_KEY,
6
+ parseShibbolethBooleanMetadata,
7
+ } from '@/src/constants/shibbolethAuth';
8
+ import { getMetadataMap } from '@/src/database/getMetadata';
9
+ import { fetchIdentityProviderMetadataXml } from './fetchIdentityProviderMetadataXml';
10
+ import { parseIdentityProviderMetadataXml } from './parseIdentityProviderMetadataXml';
11
+ import { resolveShibbolethServiceProviderUrls } from './resolveShibbolethServiceProviderUrls';
12
+ import type {
13
+ ShibbolethAuthenticationConfiguration,
14
+ ShibbolethIdentityProviderMetadata,
15
+ } from './shibbolethAuthenticationTypes';
16
+
17
+ /**
18
+ * Options for resolving Shibboleth authentication configuration.
19
+ *
20
+ * @private type of `shibbolethAuthentication`
21
+ */
22
+ type ResolveShibbolethAuthenticationConfigurationOptions = {
23
+ readonly requestUrl: string;
24
+ readonly isIdentityProviderMetadataValidationEnabled?: boolean;
25
+ };
26
+
27
+ /**
28
+ * Resolves Shibboleth configuration from metadata for a route-handler request.
29
+ *
30
+ * @param options - Request URL and validation options.
31
+ * @returns Shibboleth configuration status and parsed IdP metadata when validation is enabled.
32
+ *
33
+ * @private function of `shibbolethAuthentication`
34
+ */
35
+ export async function resolveShibbolethAuthenticationConfiguration(
36
+ options: ResolveShibbolethAuthenticationConfigurationOptions,
37
+ ): Promise<ShibbolethAuthenticationConfiguration> {
38
+ const metadata = await getMetadataMap(SHIBBOLETH_AUTHENTICATION_METADATA_KEYS);
39
+ const isActive = parseShibbolethBooleanMetadata(metadata[IS_SHIBBOLETH_AUTH_ACTIVE_METADATA_KEY]);
40
+ const identityProviderMetadataUrl =
41
+ (metadata[SHIBBOLETH_IDENTITY_PROVIDER_METADATA_URL_METADATA_KEY] || '').trim() || null;
42
+ const identityProviderMetadataXml =
43
+ (metadata[SHIBBOLETH_IDENTITY_PROVIDER_METADATA_XML_METADATA_KEY] || '').trim() || null;
44
+ const serviceProviderUrls = resolveShibbolethServiceProviderUrls(options.requestUrl, metadata);
45
+ const errors: string[] = [];
46
+ let identityProviderMetadata: ShibbolethIdentityProviderMetadata | null = null;
47
+
48
+ if (!identityProviderMetadataUrl && !identityProviderMetadataXml) {
49
+ errors.push(
50
+ `Set ${SHIBBOLETH_IDENTITY_PROVIDER_METADATA_URL_METADATA_KEY} or ${SHIBBOLETH_IDENTITY_PROVIDER_METADATA_XML_METADATA_KEY}.`,
51
+ );
52
+ }
53
+
54
+ if (
55
+ options.isIdentityProviderMetadataValidationEnabled === true &&
56
+ (identityProviderMetadataUrl || identityProviderMetadataXml)
57
+ ) {
58
+ try {
59
+ const metadataXml =
60
+ identityProviderMetadataXml || (await fetchIdentityProviderMetadataXml(identityProviderMetadataUrl!));
61
+ identityProviderMetadata = parseIdentityProviderMetadataXml(metadataXml);
62
+ } catch (error) {
63
+ errors.push(
64
+ error instanceof Error ? error.message : 'Failed to load Shibboleth Identity Provider metadata.',
65
+ );
66
+ }
67
+ }
68
+
69
+ return {
70
+ isActive,
71
+ isConfigured: errors.length === 0,
72
+ errors,
73
+ identityProviderMetadataUrl,
74
+ isIdentityProviderMetadataXmlConfigured: Boolean(identityProviderMetadataXml),
75
+ serviceProviderUrls,
76
+ identityProviderMetadata,
77
+ };
78
+ }
@@ -0,0 +1,101 @@
1
+ /**
2
+ * HTTP protocols accepted from proxy forwarding headers.
3
+ */
4
+ const SHIBBOLETH_FORWARDED_PROTOCOLS = new Set(['http', 'https']);
5
+
6
+ /**
7
+ * Local hostnames that should keep their request protocol in development.
8
+ */
9
+ const SHIBBOLETH_LOCAL_HOSTNAMES = new Set(['localhost', '127.0.0.1', '::1']);
10
+
11
+ /**
12
+ * Resolves the externally visible URL for one Shibboleth route request.
13
+ *
14
+ * @param request - Route-handler request received by the Agents Server.
15
+ * @returns Public request URL reconstructed from trusted reverse-proxy headers when present.
16
+ *
17
+ * @private function of `shibbolethAuthentication`
18
+ */
19
+ export function resolveShibbolethPublicRequestUrl(request: Request): string {
20
+ const publicRequestUrl = new URL(request.url);
21
+ const forwardedHost = getFirstHeaderValue(request.headers.get('x-forwarded-host'));
22
+ const requestHost = getFirstHeaderValue(request.headers.get('host'));
23
+ const host = forwardedHost || requestHost;
24
+
25
+ if (host) {
26
+ publicRequestUrl.host = host;
27
+ if (!hasExplicitPort(host)) {
28
+ publicRequestUrl.port = '';
29
+ }
30
+ }
31
+
32
+ publicRequestUrl.protocol = resolvePublicProtocol({
33
+ forwardedProtocol: getFirstHeaderValue(request.headers.get('x-forwarded-proto')),
34
+ fallbackProtocol: publicRequestUrl.protocol,
35
+ host: host || publicRequestUrl.host,
36
+ });
37
+
38
+ return publicRequestUrl.toString();
39
+ }
40
+
41
+ /**
42
+ * Returns the first value from a comma-separated forwarding header.
43
+ *
44
+ * @param value - Raw header value.
45
+ * @returns First trimmed value, or `null` when empty.
46
+ */
47
+ function getFirstHeaderValue(value: string | null): string | null {
48
+ return value?.split(',')[0]?.trim() || null;
49
+ }
50
+
51
+ /**
52
+ * Checks whether one host header explicitly carries a port.
53
+ *
54
+ * @param host - Request or forwarded host.
55
+ * @returns `true` when the host includes a non-implicit port segment.
56
+ */
57
+ function hasExplicitPort(host: string): boolean {
58
+ const trimmedHost = host.trim();
59
+
60
+ return /^\[[^\]]+\]:\d+$/u.test(trimmedHost) || /^[^:]+:\d+$/u.test(trimmedHost);
61
+ }
62
+
63
+ /**
64
+ * Resolves the public protocol for a Shibboleth request URL.
65
+ *
66
+ * @param options - Forwarded protocol, fallback protocol, and public host.
67
+ * @returns Protocol string ending with `:`.
68
+ */
69
+ function resolvePublicProtocol(options: {
70
+ readonly forwardedProtocol: string | null;
71
+ readonly fallbackProtocol: string;
72
+ readonly host: string;
73
+ }): string {
74
+ const normalizedForwardedProtocol = options.forwardedProtocol?.toLowerCase();
75
+
76
+ if (normalizedForwardedProtocol && SHIBBOLETH_FORWARDED_PROTOCOLS.has(normalizedForwardedProtocol)) {
77
+ return `${normalizedForwardedProtocol}:`;
78
+ }
79
+
80
+ if (!isLocalDevelopmentHost(options.host)) {
81
+ return 'https:';
82
+ }
83
+
84
+ return options.fallbackProtocol;
85
+ }
86
+
87
+ /**
88
+ * Checks whether the host should be treated as local development.
89
+ *
90
+ * @param host - Request or forwarded host.
91
+ * @returns `true` for localhost and loopback hosts.
92
+ */
93
+ function isLocalDevelopmentHost(host: string): boolean {
94
+ const hostname = host
95
+ .trim()
96
+ .toLowerCase()
97
+ .replace(/^\[(.+)\](?::\d+)?$/u, '$1')
98
+ .replace(/:\d+$/u, '');
99
+
100
+ return SHIBBOLETH_LOCAL_HOSTNAMES.has(hostname);
101
+ }
@@ -0,0 +1,63 @@
1
+ import { SHIBBOLETH_SERVICE_PROVIDER_ENTITY_ID_METADATA_KEY } from '@/src/constants/shibbolethAuth';
2
+ import type { ShibbolethServiceProviderUrls } from './shibbolethAuthenticationTypes';
3
+
4
+ /**
5
+ * Local hostnames that should not override a configured public site URL.
6
+ */
7
+ const LOCAL_DEVELOPMENT_HOSTNAMES = new Set(['localhost', '127.0.0.1', '::1']);
8
+
9
+ /**
10
+ * Resolves SP URLs from request URL, environment, and metadata.
11
+ *
12
+ * @private function of `shibbolethAuthentication`
13
+ */
14
+ export function resolveShibbolethServiceProviderUrls(
15
+ requestUrl: string,
16
+ metadata: Readonly<Record<string, string | null>>,
17
+ ): ShibbolethServiceProviderUrls {
18
+ const requestOrigin = new URL(requestUrl).origin;
19
+ const configuredSiteUrl = (process.env.NEXT_PUBLIC_SITE_URL || '').trim();
20
+ const configuredOrigin = configuredSiteUrl ? new URL(configuredSiteUrl).origin : null;
21
+ const origin = resolveShibbolethPublicOrigin(requestOrigin, configuredOrigin);
22
+ const assertionConsumerServiceUrl = new URL('/api/auth/shibboleth/acs', origin).toString();
23
+ const metadataUrl = new URL('/api/auth/shibboleth/metadata', origin).toString();
24
+ const configuredEntityId = (metadata[SHIBBOLETH_SERVICE_PROVIDER_ENTITY_ID_METADATA_KEY] || '').trim();
25
+
26
+ return {
27
+ origin,
28
+ entityId: configuredEntityId || metadataUrl,
29
+ assertionConsumerServiceUrl,
30
+ metadataUrl,
31
+ };
32
+ }
33
+
34
+ /**
35
+ * Chooses the public origin used in Shibboleth metadata, ACS validation, and redirects.
36
+ *
37
+ * @param requestOrigin - Origin reconstructed from the current request and proxy headers.
38
+ * @param configuredOrigin - Optional origin from `NEXT_PUBLIC_SITE_URL`.
39
+ * @returns Origin that should be visible to the Identity Provider and browser.
40
+ */
41
+ function resolveShibbolethPublicOrigin(requestOrigin: string, configuredOrigin: string | null): string {
42
+ if (!isLocalDevelopmentOrigin(requestOrigin)) {
43
+ return requestOrigin;
44
+ }
45
+
46
+ if (configuredOrigin && !isLocalDevelopmentOrigin(configuredOrigin)) {
47
+ return configuredOrigin;
48
+ }
49
+
50
+ return configuredOrigin || requestOrigin;
51
+ }
52
+
53
+ /**
54
+ * Checks whether one origin points to a local development host.
55
+ *
56
+ * @param origin - Origin to inspect.
57
+ * @returns `true` when the origin is localhost or loopback.
58
+ */
59
+ function isLocalDevelopmentOrigin(origin: string): boolean {
60
+ const hostname = new URL(origin).hostname.toLowerCase();
61
+
62
+ return LOCAL_DEVELOPMENT_HOSTNAMES.has(hostname);
63
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Returns a safe relative URL to redirect to after Shibboleth finishes.
3
+ *
4
+ * @param relayState - Raw RelayState value from the request or SAML response.
5
+ * @returns Safe relative URL.
6
+ *
7
+ * @private function of `shibbolethAuthentication`
8
+ */
9
+ export function sanitizeShibbolethRelayState(relayState: string | null | undefined): string {
10
+ const trimmedRelayState = (relayState || '').trim();
11
+
12
+ if (!trimmedRelayState || !trimmedRelayState.startsWith('/') || trimmedRelayState.startsWith('//')) {
13
+ return '/';
14
+ }
15
+
16
+ return trimmedRelayState;
17
+ }
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Persistent NameID format recommended for Shibboleth integrations.
3
+ *
4
+ * @private constant of `shibbolethAuthentication`
5
+ */
6
+ export const SHIBBOLETH_PERSISTENT_NAME_ID_FORMAT = 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent';
7
+
8
+ /**
9
+ * SAML HTTP Redirect binding URL.
10
+ *
11
+ * @private constant of `shibbolethAuthentication`
12
+ */
13
+ export const SAML_HTTP_REDIRECT_BINDING = 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect';
14
+
15
+ /**
16
+ * Timeout for loading remote Identity Provider metadata.
17
+ *
18
+ * @private constant of `shibbolethAuthentication`
19
+ */
20
+ export const SHIBBOLETH_IDENTITY_PROVIDER_METADATA_TIMEOUT_MS = 10_000;
21
+
22
+ /**
23
+ * Clock skew accepted when validating SAML assertion timestamps.
24
+ *
25
+ * @private constant of `shibbolethAuthentication`
26
+ */
27
+ export const SHIBBOLETH_ACCEPTED_CLOCK_SKEW_MS = 120_000;
28
+
29
+ /**
30
+ * Placeholder password hash for database users that can only sign in via Shibboleth.
31
+ *
32
+ * @private constant of `shibbolethAuthentication`
33
+ */
34
+ export const SHIBBOLETH_PASSWORDLESS_USER_PASSWORD_HASH = 'shibboleth-passwordless-user';
35
+
36
+ /**
37
+ * Marker stored on database users that authenticate with username/password only.
38
+ *
39
+ * @private constant of `shibbolethAuthentication`
40
+ */
41
+ export const LOCAL_AUTHENTICATION_PROVIDER = 'LOCAL';
42
+
43
+ /**
44
+ * Marker stored on database users that authenticate with Shibboleth only.
45
+ *
46
+ * @private constant of `shibbolethAuthentication`
47
+ */
48
+ export const SHIBBOLETH_AUTHENTICATION_PROVIDER = 'SHIBBOLETH';
49
+
50
+ /**
51
+ * Marker stored on database users that authenticate with username/password and Shibboleth.
52
+ *
53
+ * @private constant of `shibbolethAuthentication`
54
+ */
55
+ export const LOCAL_AND_SHIBBOLETH_AUTHENTICATION_PROVIDER = 'LOCAL_AND_SHIBBOLETH';
56
+
57
+ /**
58
+ * Supabase projection for user fields needed while linking Shibboleth identities.
59
+ *
60
+ * @private constant of `shibbolethAuthentication`
61
+ */
62
+ export const SHIBBOLETH_USER_SELECT_COLUMNS: string = 'id, username, isAdmin, email, displayName, authenticationProvider';
@@ -0,0 +1,105 @@
1
+ import type { Json } from '@/src/database/schema';
2
+
3
+ /**
4
+ * Prefixed Shibboleth identity row.
5
+ *
6
+ * @private type of `shibbolethAuthentication`
7
+ */
8
+ export type ShibbolethUserIdentityRow = {
9
+ readonly id: number;
10
+ readonly createdAt: string;
11
+ readonly updatedAt: string;
12
+ readonly userId: number;
13
+ readonly email: string;
14
+ readonly displayName: string | null;
15
+ readonly nameId: string | null;
16
+ readonly nameIdFormat: string | null;
17
+ readonly unstructuredName: string | null;
18
+ readonly eduPersonPrincipalName: string | null;
19
+ readonly rawAttributes: Json | null;
20
+ readonly lastLoggedInAt: string | null;
21
+ readonly loginCount: number;
22
+ };
23
+
24
+ /**
25
+ * Prefixed Shibboleth authentication attempt row.
26
+ *
27
+ * @private type of `shibbolethAuthentication`
28
+ */
29
+ export type ShibbolethAuthenticationAttemptRow = {
30
+ readonly id: number;
31
+ readonly createdAt: string;
32
+ readonly stage: string;
33
+ readonly status: string;
34
+ readonly userId: number | null;
35
+ readonly email: string | null;
36
+ readonly displayName: string | null;
37
+ readonly nameId: string | null;
38
+ readonly relayState: string | null;
39
+ readonly ip: string | null;
40
+ readonly userAgent: string | null;
41
+ readonly errorMessage: string | null;
42
+ readonly rawAttributes: Json | null;
43
+ };
44
+
45
+ /**
46
+ * Request metadata recorded with Shibboleth authentication attempts.
47
+ *
48
+ * @private type of `shibbolethAuthentication`
49
+ */
50
+ export type ShibbolethRequestDetails = {
51
+ readonly ip: string | null;
52
+ readonly userAgent: string | null;
53
+ };
54
+
55
+ /**
56
+ * Parsed Shibboleth user attributes extracted from SAML profile data.
57
+ *
58
+ * @private type of `shibbolethAuthentication`
59
+ */
60
+ export type ShibbolethProfileAttributes = {
61
+ readonly email: string;
62
+ readonly displayName: string | null;
63
+ readonly nameId: string | null;
64
+ readonly nameIdFormat: string | null;
65
+ readonly unstructuredName: string | null;
66
+ readonly eduPersonPrincipalName: string | null;
67
+ readonly rawAttributes: Json;
68
+ };
69
+
70
+ /**
71
+ * Service Provider URLs derived for the current request.
72
+ *
73
+ * @private type of `shibbolethAuthentication`
74
+ */
75
+ export type ShibbolethServiceProviderUrls = {
76
+ readonly origin: string;
77
+ readonly entityId: string;
78
+ readonly assertionConsumerServiceUrl: string;
79
+ readonly metadataUrl: string;
80
+ };
81
+
82
+ /**
83
+ * Parsed Identity Provider metadata needed by Node-SAML.
84
+ *
85
+ * @private type of `shibbolethAuthentication`
86
+ */
87
+ export type ShibbolethIdentityProviderMetadata = {
88
+ readonly singleSignOnServiceUrl: string;
89
+ readonly signingCertificates: ReadonlyArray<string>;
90
+ };
91
+
92
+ /**
93
+ * Resolved Shibboleth authentication configuration status.
94
+ *
95
+ * @private type of `shibbolethAuthentication`
96
+ */
97
+ export type ShibbolethAuthenticationConfiguration = {
98
+ readonly isActive: boolean;
99
+ readonly isConfigured: boolean;
100
+ readonly errors: ReadonlyArray<string>;
101
+ readonly identityProviderMetadataUrl: string | null;
102
+ readonly isIdentityProviderMetadataXmlConfigured: boolean;
103
+ readonly serviceProviderUrls: ShibbolethServiceProviderUrls;
104
+ readonly identityProviderMetadata: ShibbolethIdentityProviderMetadata | null;
105
+ };