libre-webui 0.17.0 → 0.19.0
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.
- package/README.md +30 -17
- package/backend/dist/db.d.ts.map +1 -1
- package/backend/dist/db.js +195 -6
- package/backend/dist/db.js.map +1 -1
- package/backend/dist/index.d.ts.map +1 -1
- package/backend/dist/index.js +48 -19
- package/backend/dist/index.js.map +1 -1
- package/backend/dist/middleware/auth.d.ts.map +1 -1
- package/backend/dist/middleware/auth.js +35 -3
- package/backend/dist/middleware/auth.js.map +1 -1
- package/backend/dist/middleware/index.d.ts.map +1 -1
- package/backend/dist/models/personaModel.d.ts.map +1 -1
- package/backend/dist/models/personaModel.js.map +1 -1
- package/backend/dist/models/userModel.d.ts +24 -0
- package/backend/dist/models/userModel.d.ts.map +1 -1
- package/backend/dist/models/userModel.js +92 -24
- package/backend/dist/models/userModel.js.map +1 -1
- package/backend/dist/routes/agentCli.d.ts.map +1 -1
- package/backend/dist/routes/agentCli.js +4 -2
- package/backend/dist/routes/agentCli.js.map +1 -1
- package/backend/dist/routes/auth.d.ts.map +1 -1
- package/backend/dist/routes/auth.js +118 -55
- package/backend/dist/routes/auth.js.map +1 -1
- package/backend/dist/routes/chat.d.ts.map +1 -1
- package/backend/dist/routes/chat.js +106 -3
- package/backend/dist/routes/chat.js.map +1 -1
- package/backend/dist/routes/documents.d.ts.map +1 -1
- package/backend/dist/routes/documents.js +179 -41
- package/backend/dist/routes/documents.js.map +1 -1
- package/backend/dist/routes/embeddings.d.ts.map +1 -1
- package/backend/dist/routes/embeddings.js +2 -2
- package/backend/dist/routes/embeddings.js.map +1 -1
- package/backend/dist/routes/huggingfaceHub.d.ts.map +1 -1
- package/backend/dist/routes/huggingfaceHub.js +3 -1
- package/backend/dist/routes/huggingfaceHub.js.map +1 -1
- package/backend/dist/routes/imageGen.d.ts.map +1 -1
- package/backend/dist/routes/imageGen.js +2 -0
- package/backend/dist/routes/imageGen.js.map +1 -1
- package/backend/dist/routes/libreClaw.d.ts.map +1 -1
- package/backend/dist/routes/media.d.ts +3 -0
- package/backend/dist/routes/media.d.ts.map +1 -0
- package/backend/dist/routes/media.js +429 -0
- package/backend/dist/routes/media.js.map +1 -0
- package/backend/dist/routes/notes.d.ts +3 -0
- package/backend/dist/routes/notes.d.ts.map +1 -0
- package/backend/dist/routes/notes.js +121 -0
- package/backend/dist/routes/notes.js.map +1 -0
- package/backend/dist/routes/ollama.d.ts.map +1 -1
- package/backend/dist/routes/ollama.js +17 -85
- package/backend/dist/routes/ollama.js.map +1 -1
- package/backend/dist/routes/personas.d.ts.map +1 -1
- package/backend/dist/routes/personas.js +2 -0
- package/backend/dist/routes/personas.js.map +1 -1
- package/backend/dist/routes/plugins.d.ts.map +1 -1
- package/backend/dist/routes/plugins.js +28 -0
- package/backend/dist/routes/plugins.js.map +1 -1
- package/backend/dist/routes/preferences.d.ts.map +1 -1
- package/backend/dist/routes/systemDiagnostics.d.ts +3 -0
- package/backend/dist/routes/systemDiagnostics.d.ts.map +1 -0
- package/backend/dist/routes/systemDiagnostics.js +49 -0
- package/backend/dist/routes/systemDiagnostics.js.map +1 -0
- package/backend/dist/routes/tts.d.ts.map +1 -1
- package/backend/dist/routes/tts.js +4 -0
- package/backend/dist/routes/tts.js.map +1 -1
- package/backend/dist/routes/users.d.ts.map +1 -1
- package/backend/dist/routes/users.js +79 -0
- package/backend/dist/routes/users.js.map +1 -1
- package/backend/dist/routes/work.d.ts.map +1 -1
- package/backend/dist/routes/work.js +84 -0
- package/backend/dist/routes/work.js.map +1 -1
- package/backend/dist/services/agentCliService.d.ts +37 -4
- package/backend/dist/services/agentCliService.d.ts.map +1 -1
- package/backend/dist/services/agentCliService.js +229 -10
- package/backend/dist/services/agentCliService.js.map +1 -1
- package/backend/dist/services/assistantCompletionService.d.ts.map +1 -1
- package/backend/dist/services/authService.d.ts +15 -9
- package/backend/dist/services/authService.d.ts.map +1 -1
- package/backend/dist/services/authService.js +39 -29
- package/backend/dist/services/authService.js.map +1 -1
- package/backend/dist/services/chatGenerationService.d.ts.map +1 -1
- package/backend/dist/services/chatGenerationService.js +3 -3
- package/backend/dist/services/chatGenerationService.js.map +1 -1
- package/backend/dist/services/chatRequestService.d.ts +8 -2
- package/backend/dist/services/chatRequestService.d.ts.map +1 -1
- package/backend/dist/services/chatRequestService.js +30 -3
- package/backend/dist/services/chatRequestService.js.map +1 -1
- package/backend/dist/services/chatService.d.ts +6 -1
- package/backend/dist/services/chatService.d.ts.map +1 -1
- package/backend/dist/services/chatService.js +54 -1
- package/backend/dist/services/chatService.js.map +1 -1
- package/backend/dist/services/codexOAuthService.d.ts +22 -0
- package/backend/dist/services/codexOAuthService.d.ts.map +1 -0
- package/backend/dist/services/codexOAuthService.js +176 -0
- package/backend/dist/services/codexOAuthService.js.map +1 -0
- package/backend/dist/services/documentService.d.ts +17 -10
- package/backend/dist/services/documentService.d.ts.map +1 -1
- package/backend/dist/services/documentService.js +79 -58
- package/backend/dist/services/documentService.js.map +1 -1
- package/backend/dist/services/embeddingService.d.ts.map +1 -1
- package/backend/dist/services/encryptionService.d.ts.map +1 -1
- package/backend/dist/services/encryptionService.js +18 -8
- package/backend/dist/services/encryptionService.js.map +1 -1
- package/backend/dist/services/followUpService.d.ts +44 -0
- package/backend/dist/services/followUpService.d.ts.map +1 -0
- package/backend/dist/services/followUpService.js +123 -0
- package/backend/dist/services/followUpService.js.map +1 -0
- package/backend/dist/services/galleryService.d.ts +23 -1
- package/backend/dist/services/galleryService.d.ts.map +1 -1
- package/backend/dist/services/galleryService.js +125 -8
- package/backend/dist/services/galleryService.js.map +1 -1
- package/backend/dist/services/libreClawService.d.ts.map +1 -1
- package/backend/dist/services/mediaGenerationJobService.d.ts +25 -0
- package/backend/dist/services/mediaGenerationJobService.d.ts.map +1 -0
- package/backend/dist/services/mediaGenerationJobService.js +82 -0
- package/backend/dist/services/mediaGenerationJobService.js.map +1 -0
- package/backend/dist/services/memoryService.d.ts.map +1 -1
- package/backend/dist/services/memoryService.js.map +1 -1
- package/backend/dist/services/mutationEngineService.d.ts.map +1 -1
- package/backend/dist/services/oauthSecurity.d.ts +14 -0
- package/backend/dist/services/oauthSecurity.d.ts.map +1 -0
- package/backend/dist/services/oauthSecurity.js +101 -0
- package/backend/dist/services/oauthSecurity.js.map +1 -0
- package/backend/dist/services/ollamaService.d.ts +8 -2
- package/backend/dist/services/ollamaService.d.ts.map +1 -1
- package/backend/dist/services/ollamaService.js +40 -2
- package/backend/dist/services/ollamaService.js.map +1 -1
- package/backend/dist/services/personaService.d.ts.map +1 -1
- package/backend/dist/services/personaService.js.map +1 -1
- package/backend/dist/services/pluginActivationService.d.ts.map +1 -1
- package/backend/dist/services/pluginActivationService.js.map +1 -1
- package/backend/dist/services/pluginAudioGenerationService.d.ts +34 -0
- package/backend/dist/services/pluginAudioGenerationService.d.ts.map +1 -0
- package/backend/dist/services/pluginAudioGenerationService.js +211 -0
- package/backend/dist/services/pluginAudioGenerationService.js.map +1 -0
- package/backend/dist/services/pluginCapabilityRegistryService.d.ts.map +1 -1
- package/backend/dist/services/pluginCapabilityRegistryService.js +6 -0
- package/backend/dist/services/pluginCapabilityRegistryService.js.map +1 -1
- package/backend/dist/services/pluginCredentialsService.d.ts.map +1 -1
- package/backend/dist/services/pluginEmbeddingService.d.ts +2 -0
- package/backend/dist/services/pluginEmbeddingService.d.ts.map +1 -1
- package/backend/dist/services/pluginEmbeddingService.js +66 -35
- package/backend/dist/services/pluginEmbeddingService.js.map +1 -1
- package/backend/dist/services/pluginImageGenerationService.d.ts +2 -0
- package/backend/dist/services/pluginImageGenerationService.d.ts.map +1 -1
- package/backend/dist/services/pluginImageGenerationService.js +63 -38
- package/backend/dist/services/pluginImageGenerationService.js.map +1 -1
- package/backend/dist/services/pluginService.d.ts +43 -1
- package/backend/dist/services/pluginService.d.ts.map +1 -1
- package/backend/dist/services/pluginService.js +441 -71
- package/backend/dist/services/pluginService.js.map +1 -1
- package/backend/dist/services/pluginTTSService.d.ts +2 -0
- package/backend/dist/services/pluginTTSService.d.ts.map +1 -1
- package/backend/dist/services/pluginTTSService.js +27 -2
- package/backend/dist/services/pluginTTSService.js.map +1 -1
- package/backend/dist/services/pluginUsageService.d.ts +100 -0
- package/backend/dist/services/pluginUsageService.d.ts.map +1 -0
- package/backend/dist/services/pluginUsageService.js +291 -0
- package/backend/dist/services/pluginUsageService.js.map +1 -0
- package/backend/dist/services/pluginVariablesService.d.ts.map +1 -1
- package/backend/dist/services/pluginVariablesService.js.map +1 -1
- package/backend/dist/services/pluginVideoGenerationService.d.ts +45 -0
- package/backend/dist/services/pluginVideoGenerationService.d.ts.map +1 -0
- package/backend/dist/services/pluginVideoGenerationService.js +198 -0
- package/backend/dist/services/pluginVideoGenerationService.js.map +1 -0
- package/backend/dist/services/preferencesService.d.ts.map +1 -1
- package/backend/dist/services/preferencesService.js +16 -1
- package/backend/dist/services/preferencesService.js.map +1 -1
- package/backend/dist/services/registrationPolicy.d.ts +5 -0
- package/backend/dist/services/registrationPolicy.d.ts.map +1 -0
- package/backend/dist/services/registrationPolicy.js +21 -0
- package/backend/dist/services/registrationPolicy.js.map +1 -0
- package/backend/dist/services/simpleGitHubOAuth.d.ts +1 -1
- package/backend/dist/services/simpleGitHubOAuth.d.ts.map +1 -1
- package/backend/dist/services/simpleGitHubOAuth.js +13 -13
- package/backend/dist/services/simpleGitHubOAuth.js.map +1 -1
- package/backend/dist/services/simpleHuggingFaceOAuth.d.ts +1 -1
- package/backend/dist/services/simpleHuggingFaceOAuth.d.ts.map +1 -1
- package/backend/dist/services/simpleHuggingFaceOAuth.js +12 -17
- package/backend/dist/services/simpleHuggingFaceOAuth.js.map +1 -1
- package/backend/dist/services/systemDiagnosticsService.d.ts +117 -0
- package/backend/dist/services/systemDiagnosticsService.d.ts.map +1 -0
- package/backend/dist/services/systemDiagnosticsService.js +326 -0
- package/backend/dist/services/systemDiagnosticsService.js.map +1 -0
- package/backend/dist/services/titleGenerationService.d.ts.map +1 -1
- package/backend/dist/services/turnstileService.d.ts +2 -1
- package/backend/dist/services/turnstileService.d.ts.map +1 -1
- package/backend/dist/services/turnstileService.js +28 -2
- package/backend/dist/services/turnstileService.js.map +1 -1
- package/backend/dist/services/userService.d.ts +1 -0
- package/backend/dist/services/userService.js +1 -1
- package/backend/dist/services/workAgentService.d.ts.map +1 -1
- package/backend/dist/services/workAgentService.js.map +1 -1
- package/backend/dist/services/workEventService.d.ts.map +1 -1
- package/backend/dist/services/workEventService.js.map +1 -1
- package/backend/dist/services/workHostWorkspaceService.d.ts.map +1 -1
- package/backend/dist/services/workModelProviderService.d.ts +3 -0
- package/backend/dist/services/workModelProviderService.d.ts.map +1 -1
- package/backend/dist/services/workModelProviderService.js +67 -10
- package/backend/dist/services/workModelProviderService.js.map +1 -1
- package/backend/dist/services/workPreviewProxyService.d.ts +27 -0
- package/backend/dist/services/workPreviewProxyService.d.ts.map +1 -0
- package/backend/dist/services/workPreviewProxyService.js +514 -0
- package/backend/dist/services/workPreviewProxyService.js.map +1 -0
- package/backend/dist/services/workRuntimeService.d.ts +28 -7
- package/backend/dist/services/workRuntimeService.d.ts.map +1 -1
- package/backend/dist/services/workRuntimeService.js +287 -8
- package/backend/dist/services/workRuntimeService.js.map +1 -1
- package/backend/dist/services/workTaskService.d.ts.map +1 -1
- package/backend/dist/services/workTaskService.js.map +1 -1
- package/backend/dist/services/workTerminalService.d.ts +1 -1
- package/backend/dist/services/workTerminalService.d.ts.map +1 -1
- package/backend/dist/services/workTerminalService.js.map +1 -1
- package/backend/dist/storage.d.ts +12 -1
- package/backend/dist/storage.d.ts.map +1 -1
- package/backend/dist/storage.js +183 -9
- package/backend/dist/storage.js.map +1 -1
- package/backend/dist/storageMappers.d.ts +13 -0
- package/backend/dist/storageMappers.d.ts.map +1 -1
- package/backend/dist/storageMappers.js +5 -0
- package/backend/dist/storageMappers.js.map +1 -1
- package/backend/dist/types/index.d.ts +106 -1
- package/backend/dist/types/index.d.ts.map +1 -1
- package/backend/dist/types/index.js.map +1 -1
- package/backend/dist/types/work.d.ts +31 -0
- package/backend/dist/types/work.d.ts.map +1 -1
- package/backend/dist/utils/chatContext.js.map +1 -1
- package/backend/dist/utils/chatDocumentContext.d.ts +1 -1
- package/backend/dist/utils/chatDocumentContext.d.ts.map +1 -1
- package/backend/dist/utils/chatDocumentContext.js +9 -4
- package/backend/dist/utils/chatDocumentContext.js.map +1 -1
- package/backend/dist/utils/chatProviderSelection.d.ts.map +1 -1
- package/backend/dist/utils/generationUtils.d.ts.map +1 -1
- package/backend/dist/utils/hash.d.ts.map +1 -1
- package/backend/dist/utils/hash.js +13 -2
- package/backend/dist/utils/hash.js.map +1 -1
- package/backend/dist/utils/logger.d.ts +1 -1
- package/backend/dist/utils/logger.d.ts.map +1 -1
- package/backend/dist/utils/ollamaStreaming.d.ts +6 -2
- package/backend/dist/utils/ollamaStreaming.d.ts.map +1 -1
- package/backend/dist/utils/ollamaStreaming.js +12 -2
- package/backend/dist/utils/ollamaStreaming.js.map +1 -1
- package/backend/dist/utils/openAIResponsesAdapter.js.map +1 -1
- package/backend/dist/utils/packagePaths.js.map +1 -1
- package/backend/dist/utils/pluginChatAdapter.d.ts.map +1 -1
- package/backend/dist/utils/pluginChatAdapter.js +11 -4
- package/backend/dist/utils/pluginChatAdapter.js.map +1 -1
- package/backend/dist/utils/pluginChatContext.js.map +1 -1
- package/backend/dist/utils/pluginDefinitionTrust.d.ts.map +1 -1
- package/backend/dist/utils/pluginDefinitionTrust.js +2 -1
- package/backend/dist/utils/pluginDefinitionTrust.js.map +1 -1
- package/backend/dist/utils/pluginStreamAdapter.d.ts +10 -1
- package/backend/dist/utils/pluginStreamAdapter.d.ts.map +1 -1
- package/backend/dist/utils/pluginStreamAdapter.js +30 -23
- package/backend/dist/utils/pluginStreamAdapter.js.map +1 -1
- package/backend/dist/utils/pluginValidation.d.ts +4 -3
- package/backend/dist/utils/pluginValidation.d.ts.map +1 -1
- package/backend/dist/utils/pluginValidation.js +47 -2
- package/backend/dist/utils/pluginValidation.js.map +1 -1
- package/backend/dist/utils/resourceLimits.d.ts +10 -0
- package/backend/dist/utils/resourceLimits.d.ts.map +1 -0
- package/backend/dist/utils/resourceLimits.js +29 -0
- package/backend/dist/utils/resourceLimits.js.map +1 -0
- package/backend/dist/utils/thinkingPhaseTimer.d.ts +21 -0
- package/backend/dist/utils/thinkingPhaseTimer.d.ts.map +1 -0
- package/backend/dist/utils/thinkingPhaseTimer.js +84 -0
- package/backend/dist/utils/thinkingPhaseTimer.js.map +1 -0
- package/backend/dist/utils/webpageFetcher.d.ts +25 -0
- package/backend/dist/utils/webpageFetcher.d.ts.map +1 -0
- package/backend/dist/utils/webpageFetcher.js +231 -0
- package/backend/dist/utils/webpageFetcher.js.map +1 -0
- package/backend/dist/utils/websocketMessages.js.map +1 -1
- package/backend/dist/utils/workGit.d.ts +14 -0
- package/backend/dist/utils/workGit.d.ts.map +1 -0
- package/backend/dist/utils/workGit.js +207 -0
- package/backend/dist/utils/workGit.js.map +1 -0
- package/backend/dist/websocketServer.d.ts +1 -0
- package/backend/dist/websocketServer.d.ts.map +1 -1
- package/backend/dist/websocketServer.js +110 -25
- package/backend/dist/websocketServer.js.map +1 -1
- package/backend/dist/workTerminalServer.d.ts.map +1 -1
- package/backend/dist/workTerminalServer.js +3 -1
- package/backend/dist/workTerminalServer.js.map +1 -1
- package/backend/package.json +8 -7
- package/bin/cli.js +2 -2
- package/frontend/dist/assets/index-CFhy8YLA.css +1 -0
- package/frontend/dist/assets/index-_lG_lwU-.js +164 -0
- package/frontend/dist/assets/markdown-math-ClQbWekD.css +1 -0
- package/frontend/dist/assets/xterm-DHcfr8qj.css +1 -0
- package/frontend/dist/index.html +41 -16
- package/frontend/dist/js/ArtifactContainer-CjpvtR8G.js +1 -0
- package/frontend/dist/js/{ArtifactDemoPage-B4qsvUnF.js → ArtifactDemoPage-yrPXLBQo.js} +1 -1
- package/frontend/dist/js/ArtifactSlideOutPanel-DdsL2AOQ.js +1 -0
- package/frontend/dist/js/{Button-CRwzOaDZ.js → Button-X9TT9gTD.js} +1 -1
- package/frontend/dist/js/ChatPage-D9lWGM8g.js +16 -0
- package/frontend/dist/js/FirstTimeSetup-CwLPbHkI.js +1 -0
- package/frontend/dist/js/GalleryPage-C9DTdo_-.js +1 -0
- package/frontend/dist/js/HomePage-iF44c34e.js +1 -0
- package/frontend/dist/js/LibreClawPage-B9wWZIz6.js +1 -0
- package/frontend/dist/js/{ModelManagerModals-DMoEav1l.js → ModelManagerModals-D9j9RECi.js} +1 -1
- package/frontend/dist/js/ModelSelector-B0RKEJwC.js +1 -0
- package/frontend/dist/js/ModelsPage-DJXoIOs8.js +2 -0
- package/frontend/dist/js/NotesPage-BTNH6JR2.js +1 -0
- package/frontend/dist/js/{OptimizedSyntaxHighlighter-Ci9sRc78.js → OptimizedSyntaxHighlighter-CWYUn9Oe.js} +1 -1
- package/frontend/dist/js/PersonasPage--nqoJ-wA.js +13 -0
- package/frontend/dist/js/PluginUsagePage-BHwm-BBr.js +1 -0
- package/frontend/dist/js/{RichMessageContent-BJ49VN9j.js → RichMessageContent-DYRrXJ75.js} +3 -3
- package/frontend/dist/js/SettingsModal-y1Nzg55O.js +1 -0
- package/frontend/dist/js/SystemPage-CHez8h3p.js +1 -0
- package/frontend/dist/js/UserManagementPage-aJhKXQxG.js +1 -0
- package/frontend/dist/js/WorkPage-Ccla0MDm.js +5 -0
- package/frontend/dist/js/addon-fit-DIOBYJe3.js +1 -0
- package/frontend/dist/js/api-DVP8xiYT.js +19 -0
- package/frontend/dist/js/appStore-Cw7PmG-J.js +2 -0
- package/frontend/dist/js/ar-ONXFvOB1.js +2 -0
- package/frontend/dist/js/artifactHtml-C0Hu9I1u.js +41 -0
- package/frontend/dist/js/authStore-gv_MgDKr.js +3 -0
- package/frontend/dist/js/babel-CmENXdZw.js +16 -0
- package/frontend/dist/js/bn-BLhREPm6.js +2 -0
- package/frontend/dist/js/chatStore-DmDbolTg.js +2 -0
- package/frontend/dist/js/cs-Bg8E9fG5.js +2 -0
- package/frontend/dist/js/da-ODCU8w4x.js +2 -0
- package/frontend/dist/js/de-nuGHRJ5N.js +2 -0
- package/frontend/dist/js/es-DcN_cwum.js +2 -0
- package/frontend/dist/js/estree-DJwQLE88.js +44 -0
- package/frontend/dist/js/fr-C-L_xGr5.js +2 -0
- package/frontend/dist/js/hi-DUEtwA9G.js +2 -0
- package/frontend/dist/js/html-DdAOfeK4.js +25 -0
- package/frontend/dist/js/i18n-xir4Zz7C.js +2 -0
- package/frontend/dist/js/i18next-DgmgtwsV.js +1 -0
- package/frontend/dist/js/id-DNTYhti_.js +2 -0
- package/frontend/dist/js/imageGenModels-Dx_QMLJQ.js +1 -0
- package/frontend/dist/js/is-Bx28ymbQ.js +2 -0
- package/frontend/dist/js/it-BjW-JLlS.js +2 -0
- package/frontend/dist/js/ja-uThj4Q1w.js +2 -0
- package/frontend/dist/js/ko-DqgmMYXK.js +2 -0
- package/frontend/dist/js/logger-DSXjF4ye.js +1 -0
- package/frontend/dist/js/markdown-RaVsONor.js +70 -0
- package/frontend/dist/js/markdown-core-DHnR5Hw8.js +16 -0
- package/frontend/dist/js/markdown-math-B7FlYsmr.js +261 -0
- package/frontend/dist/js/messageCodeStyles-cTX0rQGK.js +2 -0
- package/frontend/dist/js/ms-R9kt_P0T.js +2 -0
- package/frontend/dist/js/nl-BjmtEgpK.js +2 -0
- package/frontend/dist/js/pl-C8_gU9r1.js +2 -0
- package/frontend/dist/js/postcss-B5WIGhAY.js +62 -0
- package/frontend/dist/js/pt-7BJForUD.js +2 -0
- package/frontend/dist/js/react-vendor-DPNXrO-8.js +9 -0
- package/frontend/dist/js/{rolldown-runtime-QTnfLwEv.js → rolldown-runtime-hePW80VL.js} +1 -1
- package/frontend/dist/js/router-vendor-Ca9zqOqT.js +1 -0
- package/frontend/dist/js/ru-D2HmhY6Y.js +2 -0
- package/frontend/dist/js/{standalone-DmLfI4Qj.js → standalone-B_aPlu7o.js} +8 -8
- package/frontend/dist/js/sv-zny3sDBM.js +2 -0
- package/frontend/dist/js/syntax-highlight-Ca9bHsaz.js +8 -0
- package/frontend/dist/js/th-CAzEKRz8.js +2 -0
- package/frontend/dist/js/tr-BmYgtmUo.js +2 -0
- package/frontend/dist/js/{typescript-Bcq62agC.js → typescript-Dz4OUZSl.js} +10 -10
- package/frontend/dist/js/ui-DDlcz2oy.js +2 -0
- package/frontend/dist/js/ui-vendor-D_pYT79f.js +177 -0
- package/frontend/dist/js/uk-eiYZ0uRq.js +2 -0
- package/frontend/dist/js/useTranslation-CdeLZqSW.js +1 -0
- package/frontend/dist/js/utils-BhpNrGnR.js +1 -0
- package/frontend/dist/js/utils-vendor-1zob7nK9.js +9 -0
- package/frontend/dist/js/vi-C7SVAWpO.js +2 -0
- package/frontend/dist/js/welcomePrompts-to5mv_gx.js +1 -0
- package/frontend/dist/js/xterm-Da5ppSVt.js +18 -0
- package/frontend/dist/js/{yaml-mLy9chOK.js → yaml-QD4znPfZ.js} +20 -20
- package/frontend/dist/js/zh-2Q3cQv3s.js +2 -0
- package/package.json +20 -13
- package/plugins/codex-oauth.json +19 -0
- package/plugins/openrouter.json +89 -0
- package/backend/dist/services/systemSettingsService.d.ts +0 -12
- package/backend/dist/services/systemSettingsService.d.ts.map +0 -1
- package/backend/dist/services/systemSettingsService.js +0 -70
- package/backend/dist/services/systemSettingsService.js.map +0 -1
- package/frontend/dist/assets/index-BqI0kezz.css +0 -1
- package/frontend/dist/assets/index-CRC6g6bL.js +0 -3
- package/frontend/dist/assets/markdown-math-CYlHEDRF.css +0 -1
- package/frontend/dist/assets/xterm-CmMoOwwu.css +0 -1
- package/frontend/dist/js/ArtifactContainer-Cdy-973y.js +0 -1
- package/frontend/dist/js/ArtifactSlideOutPanel-CmKgQ4eD.js +0 -1
- package/frontend/dist/js/ChatPage-CYT69oBR.js +0 -16
- package/frontend/dist/js/FirstTimeSetup-C8LdLP5J.js +0 -1
- package/frontend/dist/js/GalleryPage-Bm89pnS8.js +0 -1
- package/frontend/dist/js/HomePage-CeCYnMUG.js +0 -1
- package/frontend/dist/js/LibreClawPage-DGMEV6dm.js +0 -1
- package/frontend/dist/js/ModelSelector-DXPdGdQ_.js +0 -1
- package/frontend/dist/js/ModelsPage-D-FIy2x-.js +0 -2
- package/frontend/dist/js/PersonasPage-CIrEVFo5.js +0 -13
- package/frontend/dist/js/SettingsModal-CxtOXPY7.js +0 -1
- package/frontend/dist/js/UserManagementPage-BfyYGGFQ.js +0 -1
- package/frontend/dist/js/WorkPage-C7bW6Hxx.js +0 -4
- package/frontend/dist/js/addon-fit-Cj0_dfHF.js +0 -1
- package/frontend/dist/js/api-DCD41-l9.js +0 -19
- package/frontend/dist/js/appStore-Bw-8Exsx.js +0 -2
- package/frontend/dist/js/ar-BAHlIvy0.js +0 -2
- package/frontend/dist/js/artifactHtml-B7Oy2e__.js +0 -27
- package/frontend/dist/js/authStore-mOYH_AXI.js +0 -4
- package/frontend/dist/js/babel-BnLuavNv.js +0 -16
- package/frontend/dist/js/bn-BxquDVbd.js +0 -2
- package/frontend/dist/js/cs-C4DoKzRm.js +0 -2
- package/frontend/dist/js/da-CFslpGTw.js +0 -2
- package/frontend/dist/js/de-ChudoRh2.js +0 -2
- package/frontend/dist/js/demoMode-BhEpMVh5.js +0 -1
- package/frontend/dist/js/es-B36fefE-.js +0 -2
- package/frontend/dist/js/estree-0vwU39qX.js +0 -44
- package/frontend/dist/js/fr-BSVeTM5W.js +0 -2
- package/frontend/dist/js/hi-BGoFbl5V.js +0 -2
- package/frontend/dist/js/html-CApr2Bvi.js +0 -25
- package/frontend/dist/js/id-BfYs2p_j.js +0 -2
- package/frontend/dist/js/is-DZ1MS-5A.js +0 -2
- package/frontend/dist/js/it-CXtrPCG1.js +0 -2
- package/frontend/dist/js/ja-FPJ_NK_y.js +0 -2
- package/frontend/dist/js/ko-DVwD4ZZF.js +0 -2
- package/frontend/dist/js/logger-DbNs3-DK.js +0 -1
- package/frontend/dist/js/markdown-C78Qc6xu.js +0 -70
- package/frontend/dist/js/markdown-core-GI9BPwrB.js +0 -16
- package/frontend/dist/js/markdown-math-E4O1gcxj.js +0 -261
- package/frontend/dist/js/ms-PKPP0RX3.js +0 -2
- package/frontend/dist/js/nl-DWM5HJZ8.js +0 -2
- package/frontend/dist/js/pl-B9va8Tuf.js +0 -2
- package/frontend/dist/js/postcss-DSDkwgFE.js +0 -62
- package/frontend/dist/js/pt-P0IQi-Zr.js +0 -2
- package/frontend/dist/js/react-vendor-DyG_ODzn.js +0 -9
- package/frontend/dist/js/router-vendor-BjDI9mRe.js +0 -1
- package/frontend/dist/js/ru-Ca2bxYnc.js +0 -2
- package/frontend/dist/js/sv-DI4RDwyZ.js +0 -2
- package/frontend/dist/js/syntax-highlight-pM1xnNpY.js +0 -8
- package/frontend/dist/js/th-DN0bDS9d.js +0 -2
- package/frontend/dist/js/tr-ChqMv5Q4.js +0 -2
- package/frontend/dist/js/ui-vendor-DohPFHDW.js +0 -177
- package/frontend/dist/js/uk-Cr51h_XQ.js +0 -2
- package/frontend/dist/js/useBaseQuery-BAOlhjar.js +0 -1
- package/frontend/dist/js/useQuery-CcRqxveh.js +0 -1
- package/frontend/dist/js/useTranslation-Cs6iTP4m.js +0 -1
- package/frontend/dist/js/utils-DmZD5uA3.js +0 -1
- package/frontend/dist/js/utils-vendor-Cbaj0BC5.js +0 -9
- package/frontend/dist/js/vi-D4OhoVMH.js +0 -2
- package/frontend/dist/js/xterm-DKl1QLiw.js +0 -7
- package/frontend/dist/js/zh-Bvau7hlR.js +0 -2
|
@@ -21,13 +21,21 @@ import { huggingFaceOAuthService } from '../services/simpleHuggingFaceOAuth.js';
|
|
|
21
21
|
import { authService } from '../services/authService.js';
|
|
22
22
|
import { authenticate, requireAdmin, } from '../middleware/auth.js';
|
|
23
23
|
import { encryptionService } from '../services/encryptionService.js';
|
|
24
|
-
import { systemSettingsService } from '../services/systemSettingsService.js';
|
|
25
24
|
import { turnstileService } from '../services/turnstileService.js';
|
|
25
|
+
import { beginOAuthFlow, consumeOAuthSessionCookie, consumeOAuthState, setOAuthSessionCookie, } from '../services/oauthSecurity.js';
|
|
26
|
+
import { validatePasswordStrength } from '../utils/hash.js';
|
|
26
27
|
import { createLogger } from '../utils/logger.js';
|
|
27
28
|
const router = express.Router();
|
|
28
29
|
const logger = createLogger('auth-routes');
|
|
29
30
|
// Fallback frontend URL for OAuth redirects
|
|
30
31
|
const FALLBACK_FRONTEND_URL = 'http://localhost:5173';
|
|
32
|
+
const getFrontendUrl = () => (process.env.CORS_ORIGIN || FALLBACK_FRONTEND_URL)
|
|
33
|
+
.split(',')[0]
|
|
34
|
+
.trim()
|
|
35
|
+
.replace(/\/$/, '');
|
|
36
|
+
const frontendRedirect = (search) => `${getFrontendUrl()}${search}`;
|
|
37
|
+
const pendingApprovalRedirect = () => frontendRedirect('/login?approval=pending');
|
|
38
|
+
const oauthErrorRedirect = (error) => frontendRedirect(`?error=${encodeURIComponent(error)}`);
|
|
31
39
|
const getClientIp = (req) => {
|
|
32
40
|
const cfConnectingIp = req.headers['cf-connecting-ip'];
|
|
33
41
|
if (typeof cfConnectingIp === 'string' && cfConnectingIp.trim()) {
|
|
@@ -66,7 +74,7 @@ const generalAuthRateLimiter = rateLimit({
|
|
|
66
74
|
*/
|
|
67
75
|
router.post('/login', authRateLimiter, async (req, res) => {
|
|
68
76
|
try {
|
|
69
|
-
const { username, password } = req.body;
|
|
77
|
+
const { username, password, turnstileToken } = req.body;
|
|
70
78
|
if (!username || !password) {
|
|
71
79
|
res.status(400).json({
|
|
72
80
|
success: false,
|
|
@@ -74,6 +82,14 @@ router.post('/login', authRateLimiter, async (req, res) => {
|
|
|
74
82
|
});
|
|
75
83
|
return;
|
|
76
84
|
}
|
|
85
|
+
const turnstileValid = await turnstileService.verify(turnstileToken, getClientIp(req), 'login');
|
|
86
|
+
if (!turnstileValid) {
|
|
87
|
+
res.status(400).json({
|
|
88
|
+
success: false,
|
|
89
|
+
message: 'Verification failed. Please try again.',
|
|
90
|
+
});
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
77
93
|
const result = await authService.login(username, password);
|
|
78
94
|
if (!result) {
|
|
79
95
|
res.status(401).json({
|
|
@@ -82,6 +98,14 @@ router.post('/login', authRateLimiter, async (req, res) => {
|
|
|
82
98
|
});
|
|
83
99
|
return;
|
|
84
100
|
}
|
|
101
|
+
if (result.status === 'pending') {
|
|
102
|
+
res.status(403).json({
|
|
103
|
+
success: false,
|
|
104
|
+
code: 'ACCOUNT_PENDING',
|
|
105
|
+
message: 'Your account is waiting for administrator approval',
|
|
106
|
+
});
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
85
109
|
const systemInfo = authService.getSystemInfo();
|
|
86
110
|
res.json({
|
|
87
111
|
success: true,
|
|
@@ -166,42 +190,15 @@ router.get('/system-info', async (req, res) => {
|
|
|
166
190
|
});
|
|
167
191
|
}
|
|
168
192
|
});
|
|
169
|
-
/**
|
|
170
|
-
* Update model pull permission (admin only)
|
|
171
|
-
*/
|
|
172
|
-
router.patch('/system-settings/model-pull', generalAuthRateLimiter, authenticate, requireAdmin, async (req, res) => {
|
|
173
|
-
try {
|
|
174
|
-
const { allowUserModelPull } = req.body;
|
|
175
|
-
if (typeof allowUserModelPull !== 'boolean') {
|
|
176
|
-
res.status(400).json({
|
|
177
|
-
success: false,
|
|
178
|
-
message: 'allowUserModelPull must be a boolean',
|
|
179
|
-
});
|
|
180
|
-
return;
|
|
181
|
-
}
|
|
182
|
-
systemSettingsService.setAllowUserModelPull(allowUserModelPull);
|
|
183
|
-
const systemInfo = authService.getSystemInfo();
|
|
184
|
-
res.json({
|
|
185
|
-
success: true,
|
|
186
|
-
data: systemInfo,
|
|
187
|
-
});
|
|
188
|
-
}
|
|
189
|
-
catch (error) {
|
|
190
|
-
logger.error('Update model pull setting error:', error);
|
|
191
|
-
res.status(500).json({
|
|
192
|
-
success: false,
|
|
193
|
-
message: 'Internal server error',
|
|
194
|
-
});
|
|
195
|
-
}
|
|
196
|
-
});
|
|
197
193
|
/**
|
|
198
194
|
* Get encryption key for first-time setup
|
|
199
195
|
* Only accessible during initial setup (when only one user exists - the newly created admin)
|
|
200
196
|
*/
|
|
201
|
-
router.get('/encryption-key', generalAuthRateLimiter, async (
|
|
197
|
+
router.get('/encryption-key', generalAuthRateLimiter, authenticate, requireAdmin, async (_req, res) => {
|
|
202
198
|
try {
|
|
203
199
|
const systemInfo = authService.getSystemInfo();
|
|
204
|
-
//
|
|
200
|
+
// Keep the first-time setup behavior, but bind disclosure to the
|
|
201
|
+
// authenticated administrator created by that setup.
|
|
205
202
|
if (systemInfo.userCount !== 1) {
|
|
206
203
|
res.status(403).json({
|
|
207
204
|
success: false,
|
|
@@ -228,6 +225,13 @@ router.get('/encryption-key', generalAuthRateLimiter, async (req, res) => {
|
|
|
228
225
|
*/
|
|
229
226
|
router.post('/signup', authRateLimiter, async (req, res) => {
|
|
230
227
|
try {
|
|
228
|
+
if (!authService.canCreateLocalAccount()) {
|
|
229
|
+
res.status(403).json({
|
|
230
|
+
success: false,
|
|
231
|
+
message: 'Registration is disabled',
|
|
232
|
+
});
|
|
233
|
+
return;
|
|
234
|
+
}
|
|
231
235
|
const { username, password, email, turnstileToken } = req.body;
|
|
232
236
|
if (!username || !password) {
|
|
233
237
|
res.status(400).json({
|
|
@@ -236,6 +240,15 @@ router.post('/signup', authRateLimiter, async (req, res) => {
|
|
|
236
240
|
});
|
|
237
241
|
return;
|
|
238
242
|
}
|
|
243
|
+
const passwordValidation = validatePasswordStrength(password);
|
|
244
|
+
if (!passwordValidation.isValid) {
|
|
245
|
+
res.status(400).json({
|
|
246
|
+
success: false,
|
|
247
|
+
message: 'Password does not meet security requirements',
|
|
248
|
+
errors: passwordValidation.errors,
|
|
249
|
+
});
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
239
252
|
// Check if user already exists
|
|
240
253
|
const existingUser = await authService.getUserByUsername(username);
|
|
241
254
|
if (existingUser) {
|
|
@@ -245,7 +258,7 @@ router.post('/signup', authRateLimiter, async (req, res) => {
|
|
|
245
258
|
});
|
|
246
259
|
return;
|
|
247
260
|
}
|
|
248
|
-
const turnstileValid = await turnstileService.verify(turnstileToken, getClientIp(req));
|
|
261
|
+
const turnstileValid = await turnstileService.verify(turnstileToken, getClientIp(req), 'signup');
|
|
249
262
|
if (!turnstileValid) {
|
|
250
263
|
res.status(400).json({
|
|
251
264
|
success: false,
|
|
@@ -262,6 +275,17 @@ router.post('/signup', authRateLimiter, async (req, res) => {
|
|
|
262
275
|
return;
|
|
263
276
|
}
|
|
264
277
|
const systemInfo = authService.getSystemInfo();
|
|
278
|
+
if (result.status === 'pending') {
|
|
279
|
+
res.status(202).json({
|
|
280
|
+
success: true,
|
|
281
|
+
data: {
|
|
282
|
+
user: result.user,
|
|
283
|
+
approvalRequired: true,
|
|
284
|
+
systemInfo,
|
|
285
|
+
},
|
|
286
|
+
});
|
|
287
|
+
return;
|
|
288
|
+
}
|
|
265
289
|
res.json({
|
|
266
290
|
success: true,
|
|
267
291
|
data: {
|
|
@@ -292,7 +316,8 @@ router.get('/oauth/github', generalAuthRateLimiter, (req, res) => {
|
|
|
292
316
|
if (!isGitHubConfigured) {
|
|
293
317
|
return res.status(404).json({ error: 'GitHub OAuth not configured' });
|
|
294
318
|
}
|
|
295
|
-
const
|
|
319
|
+
const state = beginOAuthFlow(req, res, 'github');
|
|
320
|
+
const authUrl = githubOAuthService.getAuthUrl(state);
|
|
296
321
|
res.redirect(authUrl);
|
|
297
322
|
});
|
|
298
323
|
/**
|
|
@@ -301,36 +326,40 @@ router.get('/oauth/github', generalAuthRateLimiter, (req, res) => {
|
|
|
301
326
|
router.get('/oauth/github/callback', generalAuthRateLimiter, async (req, res) => {
|
|
302
327
|
try {
|
|
303
328
|
if (!isGitHubConfigured) {
|
|
304
|
-
return res.redirect(
|
|
329
|
+
return res.redirect(oauthErrorRedirect('oauth_not_configured'));
|
|
305
330
|
}
|
|
306
|
-
const { code } = req.query;
|
|
307
|
-
|
|
308
|
-
|
|
331
|
+
const { code, state } = req.query;
|
|
332
|
+
const stateIsValid = consumeOAuthState(req, res, 'github', typeof state === 'string' ? state : '');
|
|
333
|
+
if (!code || typeof code !== 'string' || !stateIsValid) {
|
|
334
|
+
return res.redirect(oauthErrorRedirect('oauth_failed'));
|
|
309
335
|
}
|
|
310
336
|
// Exchange code for access token
|
|
311
337
|
const accessToken = await githubOAuthService.exchangeCodeForToken(code);
|
|
312
338
|
if (!accessToken) {
|
|
313
|
-
return res.redirect(
|
|
339
|
+
return res.redirect(oauthErrorRedirect('oauth_failed'));
|
|
314
340
|
}
|
|
315
341
|
// Get user profile
|
|
316
342
|
const profile = await githubOAuthService.getUserProfile(accessToken);
|
|
317
343
|
if (!profile) {
|
|
318
|
-
return res.redirect(
|
|
344
|
+
return res.redirect(oauthErrorRedirect('oauth_failed'));
|
|
319
345
|
}
|
|
320
346
|
// Process user with GitHub OAuth service
|
|
321
347
|
const user = await githubOAuthService.processUser(profile);
|
|
322
348
|
if (!user) {
|
|
323
|
-
return res.redirect(
|
|
349
|
+
return res.redirect(oauthErrorRedirect('oauth_failed'));
|
|
350
|
+
}
|
|
351
|
+
if (user.status !== 'active') {
|
|
352
|
+
return res.redirect(pendingApprovalRedirect());
|
|
324
353
|
}
|
|
325
354
|
// Generate JWT token using existing auth service
|
|
326
355
|
const token = authService.generateToken(user);
|
|
327
356
|
logger.debug('GitHub OAuth successful for user:', user.username);
|
|
328
|
-
|
|
329
|
-
res.redirect(
|
|
357
|
+
setOAuthSessionCookie(req, res, token);
|
|
358
|
+
res.redirect(frontendRedirect('?auth=success'));
|
|
330
359
|
}
|
|
331
360
|
catch (error) {
|
|
332
361
|
logger.error('GitHub OAuth callback error:', error);
|
|
333
|
-
res.redirect(
|
|
362
|
+
res.redirect(oauthErrorRedirect('oauth_failed'));
|
|
334
363
|
}
|
|
335
364
|
});
|
|
336
365
|
/**
|
|
@@ -352,7 +381,8 @@ router.get('/oauth/huggingface', generalAuthRateLimiter, (req, res) => {
|
|
|
352
381
|
if (!isHuggingFaceConfigured) {
|
|
353
382
|
return res.status(404).json({ error: 'Hugging Face OAuth not configured' });
|
|
354
383
|
}
|
|
355
|
-
const
|
|
384
|
+
const state = beginOAuthFlow(req, res, 'huggingface');
|
|
385
|
+
const authUrl = huggingFaceOAuthService.getAuthUrl(state);
|
|
356
386
|
res.redirect(authUrl);
|
|
357
387
|
});
|
|
358
388
|
/**
|
|
@@ -361,36 +391,40 @@ router.get('/oauth/huggingface', generalAuthRateLimiter, (req, res) => {
|
|
|
361
391
|
router.get('/oauth/huggingface/callback', generalAuthRateLimiter, async (req, res) => {
|
|
362
392
|
try {
|
|
363
393
|
if (!isHuggingFaceConfigured) {
|
|
364
|
-
return res.redirect(
|
|
394
|
+
return res.redirect(oauthErrorRedirect('oauth_not_configured'));
|
|
365
395
|
}
|
|
366
|
-
const { code } = req.query;
|
|
367
|
-
|
|
368
|
-
|
|
396
|
+
const { code, state } = req.query;
|
|
397
|
+
const stateIsValid = consumeOAuthState(req, res, 'huggingface', typeof state === 'string' ? state : '');
|
|
398
|
+
if (!code || typeof code !== 'string' || !stateIsValid) {
|
|
399
|
+
return res.redirect(oauthErrorRedirect('oauth_failed'));
|
|
369
400
|
}
|
|
370
401
|
// Exchange code for access token
|
|
371
402
|
const accessToken = await huggingFaceOAuthService.exchangeCodeForToken(code);
|
|
372
403
|
if (!accessToken) {
|
|
373
|
-
return res.redirect(
|
|
404
|
+
return res.redirect(oauthErrorRedirect('oauth_failed'));
|
|
374
405
|
}
|
|
375
406
|
// Get user profile
|
|
376
407
|
const profile = await huggingFaceOAuthService.getUserProfile(accessToken);
|
|
377
408
|
if (!profile) {
|
|
378
|
-
return res.redirect(
|
|
409
|
+
return res.redirect(oauthErrorRedirect('oauth_failed'));
|
|
379
410
|
}
|
|
380
411
|
// Process user with Hugging Face OAuth service
|
|
381
412
|
const user = await huggingFaceOAuthService.processUser(profile);
|
|
382
413
|
if (!user) {
|
|
383
|
-
return res.redirect(
|
|
414
|
+
return res.redirect(oauthErrorRedirect('oauth_failed'));
|
|
415
|
+
}
|
|
416
|
+
if (user.status !== 'active') {
|
|
417
|
+
return res.redirect(pendingApprovalRedirect());
|
|
384
418
|
}
|
|
385
419
|
// Generate JWT token
|
|
386
420
|
const token = authService.generateToken(user);
|
|
387
421
|
logger.debug('Hugging Face OAuth successful for user:', user.username);
|
|
388
|
-
|
|
389
|
-
res.redirect(
|
|
422
|
+
setOAuthSessionCookie(req, res, token);
|
|
423
|
+
res.redirect(frontendRedirect('?auth=success'));
|
|
390
424
|
}
|
|
391
425
|
catch (error) {
|
|
392
426
|
logger.error('Hugging Face OAuth callback error:', error);
|
|
393
|
-
res.redirect(
|
|
427
|
+
res.redirect(oauthErrorRedirect('oauth_failed'));
|
|
394
428
|
}
|
|
395
429
|
});
|
|
396
430
|
/**
|
|
@@ -399,6 +433,35 @@ router.get('/oauth/huggingface/callback', generalAuthRateLimiter, async (req, re
|
|
|
399
433
|
router.get('/oauth/huggingface/status', generalAuthRateLimiter, (req, res) => {
|
|
400
434
|
res.json({ configured: isHuggingFaceConfigured });
|
|
401
435
|
});
|
|
436
|
+
/**
|
|
437
|
+
* Exchange the short-lived HttpOnly OAuth transfer cookie for the application's
|
|
438
|
+
* normal bearer-token response. The cookie is cleared even when it is invalid.
|
|
439
|
+
*/
|
|
440
|
+
router.post('/oauth/exchange', generalAuthRateLimiter, async (req, res) => {
|
|
441
|
+
res.set('Cache-Control', 'no-store');
|
|
442
|
+
const token = consumeOAuthSessionCookie(req, res);
|
|
443
|
+
if (!token) {
|
|
444
|
+
return res.status(401).json({
|
|
445
|
+
success: false,
|
|
446
|
+
message: 'OAuth session is missing or expired',
|
|
447
|
+
});
|
|
448
|
+
}
|
|
449
|
+
const user = await authService.getUserFromToken(token);
|
|
450
|
+
if (!user) {
|
|
451
|
+
return res.status(401).json({
|
|
452
|
+
success: false,
|
|
453
|
+
message: 'OAuth session is invalid or expired',
|
|
454
|
+
});
|
|
455
|
+
}
|
|
456
|
+
return res.json({
|
|
457
|
+
success: true,
|
|
458
|
+
data: {
|
|
459
|
+
user,
|
|
460
|
+
token,
|
|
461
|
+
systemInfo: authService.getSystemInfo(),
|
|
462
|
+
},
|
|
463
|
+
});
|
|
464
|
+
});
|
|
402
465
|
/**
|
|
403
466
|
* Get current user info (works with both regular JWT and GitHub OAuth JWT)
|
|
404
467
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/routes/auth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/routes/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/routes/chat.ts"],"names":[],"mappings":"AA4DA,QAAA,MAAM,MAAM,4CAAmB,CAAC;eAshCjB,MAAM"}
|
|
@@ -24,14 +24,27 @@ import { authenticate } from '../middleware/auth.js';
|
|
|
24
24
|
import { extractStatistics } from '../utils/generationUtils.js';
|
|
25
25
|
import agentCliService from '../services/agentCliService.js';
|
|
26
26
|
import chatGenerationService from '../services/chatGenerationService.js';
|
|
27
|
+
import preferencesService from '../services/preferencesService.js';
|
|
27
28
|
import { ChatRequestService } from '../services/chatRequestService.js';
|
|
28
29
|
import { TitleGenerationService } from '../services/titleGenerationService.js';
|
|
30
|
+
import { FollowUpService } from '../services/followUpService.js';
|
|
29
31
|
import { getErrorMessage, } from '../types/index.js';
|
|
30
32
|
import { createLogger } from '../utils/logger.js';
|
|
31
33
|
import { buildChatDocumentContext } from '../utils/chatDocumentContext.js';
|
|
32
34
|
import { ChatProviderSelectionError } from '../utils/chatProviderSelection.js';
|
|
33
35
|
import { formatPluginStreamToolCalls } from '../utils/pluginStreaming.js';
|
|
36
|
+
import { ResourcePolicyError } from '../utils/resourceLimits.js';
|
|
34
37
|
const logger = createLogger('routes:chat');
|
|
38
|
+
function sendSessionFolderError(res, error, fallback) {
|
|
39
|
+
if (error instanceof ResourcePolicyError) {
|
|
40
|
+
res.status(error.statusCode).json({ success: false, error: error.message });
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
res.status(500).json({
|
|
44
|
+
success: false,
|
|
45
|
+
error: getErrorMessage(error, fallback),
|
|
46
|
+
});
|
|
47
|
+
}
|
|
35
48
|
const router = express.Router();
|
|
36
49
|
const titleGenerationService = new TitleGenerationService({
|
|
37
50
|
chatService,
|
|
@@ -42,6 +55,13 @@ const titleGenerationService = new TitleGenerationService({
|
|
|
42
55
|
const chatRequestService = new ChatRequestService({
|
|
43
56
|
chatGenerationService,
|
|
44
57
|
personaService,
|
|
58
|
+
preferencesService,
|
|
59
|
+
});
|
|
60
|
+
const followUpService = new FollowUpService({
|
|
61
|
+
chatService,
|
|
62
|
+
chatGenerationService,
|
|
63
|
+
pluginService,
|
|
64
|
+
ollamaService,
|
|
45
65
|
});
|
|
46
66
|
// Rate limiter for chat routes: 60 requests per minute (reasonable for chat)
|
|
47
67
|
const chatRateLimiter = rateLimit({
|
|
@@ -309,7 +329,7 @@ router.post('/sessions/:sessionId/generate', async (req, res) => {
|
|
|
309
329
|
hasRelevantContext: false,
|
|
310
330
|
};
|
|
311
331
|
try {
|
|
312
|
-
documentContext = await buildChatDocumentContext(message, sessionId);
|
|
332
|
+
documentContext = await buildChatDocumentContext(message, sessionId, userId);
|
|
313
333
|
}
|
|
314
334
|
catch (error) {
|
|
315
335
|
logger.error('Error during document search:', error);
|
|
@@ -414,7 +434,7 @@ router.post('/sessions/:sessionId/generate/stream', async (req, res) => {
|
|
|
414
434
|
let fullResponse = '';
|
|
415
435
|
let assistantProviderMetadata;
|
|
416
436
|
if (target.providerType === 'agent' && target.providerId) {
|
|
417
|
-
for await (const chunk of agentCliService.executeAgentStreamRequest(target.providerId, pluginMessages, userId)) {
|
|
437
|
+
for await (const chunk of agentCliService.executeAgentStreamRequest(target.providerId, pluginMessages, userId, { model: target.actualModelName })) {
|
|
418
438
|
if (chunk.type === 'content' && chunk.content) {
|
|
419
439
|
fullResponse += chunk.content;
|
|
420
440
|
res.write(`data: ${JSON.stringify({
|
|
@@ -532,7 +552,7 @@ router.post('/sessions/:sessionId/generate/stream', async (req, res) => {
|
|
|
532
552
|
}
|
|
533
553
|
res.write(`data: ${JSON.stringify({ type: 'done' })}\n\n`);
|
|
534
554
|
res.end();
|
|
535
|
-
});
|
|
555
|
+
}, undefined, { userId });
|
|
536
556
|
}
|
|
537
557
|
catch (error) {
|
|
538
558
|
if (!res.headersSent) {
|
|
@@ -599,6 +619,89 @@ router.post('/sessions/:sessionId/generate-title', async (req, res) => {
|
|
|
599
619
|
});
|
|
600
620
|
}
|
|
601
621
|
});
|
|
622
|
+
// Session folders
|
|
623
|
+
router.get('/folders', (req, res) => {
|
|
624
|
+
try {
|
|
625
|
+
const userId = req.user?.userId || 'default';
|
|
626
|
+
res.json({ success: true, data: chatService.getSessionFolders(userId) });
|
|
627
|
+
}
|
|
628
|
+
catch (error) {
|
|
629
|
+
res.status(500).json({
|
|
630
|
+
success: false,
|
|
631
|
+
error: getErrorMessage(error, 'Failed to load folders'),
|
|
632
|
+
});
|
|
633
|
+
}
|
|
634
|
+
});
|
|
635
|
+
router.post('/folders', (req, res) => {
|
|
636
|
+
try {
|
|
637
|
+
const { name } = req.body;
|
|
638
|
+
const userId = req.user?.userId || 'default';
|
|
639
|
+
res.json({
|
|
640
|
+
success: true,
|
|
641
|
+
data: chatService.createSessionFolder(name, userId),
|
|
642
|
+
});
|
|
643
|
+
}
|
|
644
|
+
catch (error) {
|
|
645
|
+
sendSessionFolderError(res, error, 'Failed to create folder');
|
|
646
|
+
}
|
|
647
|
+
});
|
|
648
|
+
router.put('/folders/:folderId', (req, res) => {
|
|
649
|
+
try {
|
|
650
|
+
const { name } = req.body;
|
|
651
|
+
const userId = req.user?.userId || 'default';
|
|
652
|
+
const folder = chatService.renameSessionFolder(req.params.folderId, name, userId);
|
|
653
|
+
if (!folder) {
|
|
654
|
+
res.status(404).json({ success: false, error: 'Folder not found' });
|
|
655
|
+
return;
|
|
656
|
+
}
|
|
657
|
+
res.json({ success: true, data: folder });
|
|
658
|
+
}
|
|
659
|
+
catch (error) {
|
|
660
|
+
sendSessionFolderError(res, error, 'Failed to rename folder');
|
|
661
|
+
}
|
|
662
|
+
});
|
|
663
|
+
router.delete('/folders/:folderId', (req, res) => {
|
|
664
|
+
try {
|
|
665
|
+
const userId = req.user?.userId || 'default';
|
|
666
|
+
const deleted = chatService.deleteSessionFolder(req.params.folderId, userId);
|
|
667
|
+
if (!deleted) {
|
|
668
|
+
res.status(404).json({ success: false, error: 'Folder not found' });
|
|
669
|
+
return;
|
|
670
|
+
}
|
|
671
|
+
res.json({ success: true, message: 'Folder deleted' });
|
|
672
|
+
}
|
|
673
|
+
catch (error) {
|
|
674
|
+
res.status(500).json({
|
|
675
|
+
success: false,
|
|
676
|
+
error: getErrorMessage(error, 'Failed to delete folder'),
|
|
677
|
+
});
|
|
678
|
+
}
|
|
679
|
+
});
|
|
680
|
+
// Suggest follow-up messages for the latest exchange in a session
|
|
681
|
+
router.post('/sessions/:sessionId/followups', async (req, res) => {
|
|
682
|
+
try {
|
|
683
|
+
const sessionId = req.params.sessionId;
|
|
684
|
+
const userId = req.user?.userId || 'default';
|
|
685
|
+
const suggestions = await followUpService.generateFollowUpsForSession(sessionId, userId);
|
|
686
|
+
if (suggestions === null) {
|
|
687
|
+
res.status(404).json({
|
|
688
|
+
success: false,
|
|
689
|
+
error: 'Session not found',
|
|
690
|
+
});
|
|
691
|
+
return;
|
|
692
|
+
}
|
|
693
|
+
res.json({
|
|
694
|
+
success: true,
|
|
695
|
+
data: { suggestions },
|
|
696
|
+
});
|
|
697
|
+
}
|
|
698
|
+
catch (error) {
|
|
699
|
+
res.status(500).json({
|
|
700
|
+
success: false,
|
|
701
|
+
error: getErrorMessage(error, 'Failed to generate follow-ups'),
|
|
702
|
+
});
|
|
703
|
+
}
|
|
704
|
+
});
|
|
602
705
|
/**
|
|
603
706
|
* Switch to a different branch of a message
|
|
604
707
|
* POST /api/chat/sessions/:sessionId/messages/:messageId/branch
|