gitextract_mfj9ft39/ ├── .devcontainer/ │ ├── Dockerfile │ └── devcontainer.json ├── .dockerignore ├── .env ├── .env.ci ├── .eslintignore ├── .eslintrc.cjs ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug-report--chat-ui-.md │ │ ├── config-support.md │ │ ├── feature-request--chat-ui-.md │ │ └── huggingchat.md │ ├── release.yml │ └── workflows/ │ ├── build-docs.yml │ ├── build-image.yml │ ├── build-pr-docs.yml │ ├── deploy-dev.yml │ ├── deploy-prod.yml │ ├── lint-and-test.yml │ ├── slugify.yaml │ ├── trufflehog.yml │ └── upload-pr-documentation.yml ├── .gitignore ├── .husky/ │ ├── lint-stage-config.js │ └── pre-commit ├── .npmrc ├── .prettierignore ├── .prettierrc ├── .vscode/ │ ├── launch.json │ └── settings.json ├── CLAUDE.md ├── Dockerfile ├── LICENSE ├── PRIVACY.md ├── README.md ├── chart/ │ ├── Chart.yaml │ ├── env/ │ │ ├── dev.yaml │ │ └── prod.yaml │ ├── templates/ │ │ ├── _helpers.tpl │ │ ├── config.yaml │ │ ├── deployment.yaml │ │ ├── hpa.yaml │ │ ├── infisical.yaml │ │ ├── ingress-internal.yaml │ │ ├── ingress.yaml │ │ ├── network-policy.yaml │ │ ├── service-account.yaml │ │ ├── service-monitor.yaml │ │ └── service.yaml │ └── values.yaml ├── docker-compose.yml ├── docs/ │ └── source/ │ ├── _toctree.yml │ ├── configuration/ │ │ ├── common-issues.md │ │ ├── llm-router.md │ │ ├── mcp-tools.md │ │ ├── metrics.md │ │ ├── open-id.md │ │ ├── overview.md │ │ └── theming.md │ ├── developing/ │ │ └── architecture.md │ ├── index.md │ └── installation/ │ ├── docker.md │ ├── helm.md │ └── local.md ├── entrypoint.sh ├── models/ │ └── add-your-models-here.txt ├── package.json ├── postcss.config.js ├── scripts/ │ ├── config.ts │ ├── populate.ts │ ├── samples.txt │ ├── setups/ │ │ ├── vitest-setup-client.ts │ │ └── vitest-setup-server.ts │ └── updateLocalEnv.ts ├── server.log ├── src/ │ ├── ambient.d.ts │ ├── app.d.ts │ ├── app.html │ ├── hooks.server.ts │ ├── hooks.ts │ ├── lib/ │ │ ├── APIClient.ts │ │ ├── actions/ │ │ │ ├── clickOutside.ts │ │ │ └── snapScrollToBottom.ts │ │ ├── buildPrompt.ts │ │ ├── components/ │ │ │ ├── AnnouncementBanner.svelte │ │ │ ├── BackgroundGenerationPoller.svelte │ │ │ ├── CodeBlock.svelte │ │ │ ├── CopyToClipBoardBtn.svelte │ │ │ ├── DeleteConversationModal.svelte │ │ │ ├── EditConversationModal.svelte │ │ │ ├── ExpandNavigation.svelte │ │ │ ├── HoverTooltip.svelte │ │ │ ├── HtmlPreviewModal.svelte │ │ │ ├── InfiniteScroll.svelte │ │ │ ├── MobileNav.svelte │ │ │ ├── Modal.svelte │ │ │ ├── ModelCardMetadata.svelte │ │ │ ├── NavConversationItem.svelte │ │ │ ├── NavMenu.svelte │ │ │ ├── Pagination.svelte │ │ │ ├── PaginationArrow.svelte │ │ │ ├── Portal.svelte │ │ │ ├── RetryBtn.svelte │ │ │ ├── ScrollToBottomBtn.svelte │ │ │ ├── ScrollToPreviousBtn.svelte │ │ │ ├── ShareConversationModal.svelte │ │ │ ├── StopGeneratingBtn.svelte │ │ │ ├── SubscribeModal.svelte │ │ │ ├── Switch.svelte │ │ │ ├── SystemPromptModal.svelte │ │ │ ├── Toast.svelte │ │ │ ├── Tooltip.svelte │ │ │ ├── WelcomeModal.svelte │ │ │ ├── chat/ │ │ │ │ ├── Alternatives.svelte │ │ │ │ ├── BlockWrapper.svelte │ │ │ │ ├── ChatInput.svelte │ │ │ │ ├── ChatIntroduction.svelte │ │ │ │ ├── ChatMessage.svelte │ │ │ │ ├── ChatWindow.svelte │ │ │ │ ├── FileDropzone.svelte │ │ │ │ ├── ImageLightbox.svelte │ │ │ │ ├── MarkdownBlock.svelte │ │ │ │ ├── MarkdownRenderer.svelte │ │ │ │ ├── MarkdownRenderer.svelte.test.ts │ │ │ │ ├── MessageAvatar.svelte │ │ │ │ ├── ModelSwitch.svelte │ │ │ │ ├── OpenReasoningResults.svelte │ │ │ │ ├── ToolUpdate.svelte │ │ │ │ ├── UploadedFile.svelte │ │ │ │ ├── UrlFetchModal.svelte │ │ │ │ └── VoiceRecorder.svelte │ │ │ ├── icons/ │ │ │ │ ├── IconBurger.svelte │ │ │ │ ├── IconCheap.svelte │ │ │ │ ├── IconChevron.svelte │ │ │ │ ├── IconDazzled.svelte │ │ │ │ ├── IconFast.svelte │ │ │ │ ├── IconLoading.svelte │ │ │ │ ├── IconMCP.svelte │ │ │ │ ├── IconMoon.svelte │ │ │ │ ├── IconNew.svelte │ │ │ │ ├── IconOmni.svelte │ │ │ │ ├── IconPaperclip.svelte │ │ │ │ ├── IconPro.svelte │ │ │ │ ├── IconShare.svelte │ │ │ │ ├── IconSun.svelte │ │ │ │ ├── Logo.svelte │ │ │ │ └── LogoHuggingFaceBorderless.svelte │ │ │ ├── mcp/ │ │ │ │ ├── AddServerForm.svelte │ │ │ │ ├── MCPServerManager.svelte │ │ │ │ └── ServerCard.svelte │ │ │ ├── players/ │ │ │ │ └── AudioPlayer.svelte │ │ │ └── voice/ │ │ │ └── AudioWaveform.svelte │ │ ├── constants/ │ │ │ ├── mcpExamples.ts │ │ │ ├── mime.ts │ │ │ ├── pagination.ts │ │ │ ├── publicSepToken.ts │ │ │ └── routerExamples.ts │ │ ├── createShareLink.ts │ │ ├── jobs/ │ │ │ └── refresh-conversation-stats.ts │ │ ├── migrations/ │ │ │ ├── lock.ts │ │ │ ├── migrations.spec.ts │ │ │ ├── migrations.ts │ │ │ └── routines/ │ │ │ ├── 01-update-search-assistants.ts │ │ │ ├── 02-update-assistants-models.ts │ │ │ ├── 04-update-message-updates.ts │ │ │ ├── 05-update-message-files.ts │ │ │ ├── 06-trim-message-updates.ts │ │ │ ├── 08-update-featured-to-review.ts │ │ │ ├── 09-delete-empty-conversations.spec.ts │ │ │ ├── 09-delete-empty-conversations.ts │ │ │ ├── 10-update-reports-assistantid.ts │ │ │ └── index.ts │ │ ├── server/ │ │ │ ├── __tests__/ │ │ │ │ └── conversation-stop-generating.spec.ts │ │ │ ├── abortRegistry.ts │ │ │ ├── abortedGenerations.ts │ │ │ ├── adminToken.ts │ │ │ ├── api/ │ │ │ │ ├── __tests__/ │ │ │ │ │ ├── conversations-id.spec.ts │ │ │ │ │ ├── conversations-message.spec.ts │ │ │ │ │ ├── conversations.spec.ts │ │ │ │ │ ├── misc.spec.ts │ │ │ │ │ ├── testHelpers.ts │ │ │ │ │ ├── user-reports.spec.ts │ │ │ │ │ └── user.spec.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils/ │ │ │ │ ├── requireAuth.ts │ │ │ │ ├── resolveConversation.ts │ │ │ │ ├── resolveModel.ts │ │ │ │ └── superjsonResponse.ts │ │ │ ├── apiToken.ts │ │ │ ├── auth.ts │ │ │ ├── config.ts │ │ │ ├── conversation.ts │ │ │ ├── database.ts │ │ │ ├── endpoints/ │ │ │ │ ├── document.ts │ │ │ │ ├── endpoints.ts │ │ │ │ ├── images.ts │ │ │ │ ├── openai/ │ │ │ │ │ ├── endpointOai.ts │ │ │ │ │ ├── openAIChatToTextGenerationStream.ts │ │ │ │ │ └── openAICompletionToTextGenerationStream.ts │ │ │ │ └── preprocessMessages.ts │ │ │ ├── exitHandler.ts │ │ │ ├── files/ │ │ │ │ ├── downloadFile.ts │ │ │ │ └── uploadFile.ts │ │ │ ├── findRepoRoot.ts │ │ │ ├── generateFromDefaultEndpoint.ts │ │ │ ├── hooks/ │ │ │ │ ├── error.ts │ │ │ │ ├── fetch.ts │ │ │ │ ├── handle.ts │ │ │ │ └── init.ts │ │ │ ├── isURLLocal.spec.ts │ │ │ ├── isURLLocal.ts │ │ │ ├── logger.ts │ │ │ ├── mcp/ │ │ │ │ ├── clientPool.ts │ │ │ │ ├── hf.ts │ │ │ │ ├── httpClient.ts │ │ │ │ ├── registry.ts │ │ │ │ └── tools.ts │ │ │ ├── metrics.ts │ │ │ ├── models.ts │ │ │ ├── requestContext.ts │ │ │ ├── router/ │ │ │ │ ├── arch.ts │ │ │ │ ├── endpoint.ts │ │ │ │ ├── multimodal.ts │ │ │ │ ├── policy.ts │ │ │ │ ├── toolsRoute.ts │ │ │ │ └── types.ts │ │ │ ├── sendSlack.ts │ │ │ ├── textGeneration/ │ │ │ │ ├── generate.ts │ │ │ │ ├── index.ts │ │ │ │ ├── mcp/ │ │ │ │ │ ├── fileRefs.ts │ │ │ │ │ ├── routerResolution.ts │ │ │ │ │ ├── runMcpFlow.ts │ │ │ │ │ └── toolInvocation.ts │ │ │ │ ├── reasoning.ts │ │ │ │ ├── title.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils/ │ │ │ │ ├── prepareFiles.ts │ │ │ │ ├── routing.ts │ │ │ │ └── toolPrompt.ts │ │ │ ├── urlSafety.ts │ │ │ └── usageLimits.ts │ │ ├── stores/ │ │ │ ├── backgroundGenerations.svelte.ts │ │ │ ├── backgroundGenerations.ts │ │ │ ├── errors.ts │ │ │ ├── isAborted.ts │ │ │ ├── isPro.ts │ │ │ ├── loading.ts │ │ │ ├── mcpServers.ts │ │ │ ├── pendingChatInput.ts │ │ │ ├── pendingMessage.ts │ │ │ ├── settings.ts │ │ │ ├── shareModal.ts │ │ │ └── titleUpdate.ts │ │ ├── switchTheme.ts │ │ ├── types/ │ │ │ ├── AbortedGeneration.ts │ │ │ ├── Assistant.ts │ │ │ ├── AssistantStats.ts │ │ │ ├── ConfigKey.ts │ │ │ ├── ConvSidebar.ts │ │ │ ├── Conversation.ts │ │ │ ├── ConversationStats.ts │ │ │ ├── Message.ts │ │ │ ├── MessageEvent.ts │ │ │ ├── MessageUpdate.ts │ │ │ ├── MigrationResult.ts │ │ │ ├── Model.ts │ │ │ ├── Report.ts │ │ │ ├── Review.ts │ │ │ ├── Semaphore.ts │ │ │ ├── Session.ts │ │ │ ├── Settings.ts │ │ │ ├── SharedConversation.ts │ │ │ ├── Template.ts │ │ │ ├── Timestamps.ts │ │ │ ├── TokenCache.ts │ │ │ ├── Tool.ts │ │ │ ├── UrlDependency.ts │ │ │ └── User.ts │ │ ├── utils/ │ │ │ ├── PublicConfig.svelte.ts │ │ │ ├── auth.ts │ │ │ ├── chunk.ts │ │ │ ├── cookiesAreEnabled.ts │ │ │ ├── debounce.ts │ │ │ ├── deepestChild.ts │ │ │ ├── favicon.ts │ │ │ ├── fetchJSON.ts │ │ │ ├── file2base64.ts │ │ │ ├── formatUserCount.ts │ │ │ ├── generationState.spec.ts │ │ │ ├── generationState.ts │ │ │ ├── getHref.ts │ │ │ ├── getReturnFromGenerator.ts │ │ │ ├── haptics.ts │ │ │ ├── hashConv.ts │ │ │ ├── hf.ts │ │ │ ├── isDesktop.ts │ │ │ ├── isUrl.ts │ │ │ ├── isVirtualKeyboard.ts │ │ │ ├── loadAttachmentsFromUrls.ts │ │ │ ├── marked.spec.ts │ │ │ ├── marked.ts │ │ │ ├── mcpValidation.ts │ │ │ ├── mergeAsyncGenerators.ts │ │ │ ├── messageUpdates.spec.ts │ │ │ ├── messageUpdates.ts │ │ │ ├── mime.ts │ │ │ ├── models.ts │ │ │ ├── parseBlocks.ts │ │ │ ├── parseIncompleteMarkdown.ts │ │ │ ├── parseStringToList.ts │ │ │ ├── randomUuid.ts │ │ │ ├── searchTokens.ts │ │ │ ├── sha256.ts │ │ │ ├── stringifyError.ts │ │ │ ├── sum.ts │ │ │ ├── template.spec.ts │ │ │ ├── template.ts │ │ │ ├── timeout.ts │ │ │ ├── toolProgress.spec.ts │ │ │ ├── toolProgress.ts │ │ │ ├── tree/ │ │ │ │ ├── addChildren.spec.ts │ │ │ │ ├── addChildren.ts │ │ │ │ ├── addSibling.spec.ts │ │ │ │ ├── addSibling.ts │ │ │ │ ├── buildSubtree.spec.ts │ │ │ │ ├── buildSubtree.ts │ │ │ │ ├── convertLegacyConversation.spec.ts │ │ │ │ ├── convertLegacyConversation.ts │ │ │ │ ├── isMessageId.spec.ts │ │ │ │ ├── isMessageId.ts │ │ │ │ ├── tree.d.ts │ │ │ │ └── treeHelpers.spec.ts │ │ │ ├── updates.ts │ │ │ └── urlParams.ts │ │ └── workers/ │ │ └── markdownWorker.ts │ ├── routes/ │ │ ├── +error.svelte │ │ ├── +layout.svelte │ │ ├── +layout.ts │ │ ├── +page.svelte │ │ ├── .well-known/ │ │ │ └── oauth-cimd/ │ │ │ └── +server.ts │ │ ├── __debug/ │ │ │ └── openai/ │ │ │ └── +server.ts │ │ ├── admin/ │ │ │ ├── export/ │ │ │ │ └── +server.ts │ │ │ └── stats/ │ │ │ └── compute/ │ │ │ └── +server.ts │ │ ├── api/ │ │ │ ├── conversation/ │ │ │ │ └── [id]/ │ │ │ │ ├── +server.ts │ │ │ │ └── message/ │ │ │ │ └── [messageId]/ │ │ │ │ └── +server.ts │ │ │ ├── conversations/ │ │ │ │ └── +server.ts │ │ │ ├── fetch-url/ │ │ │ │ └── +server.ts │ │ │ ├── mcp/ │ │ │ │ ├── health/ │ │ │ │ │ └── +server.ts │ │ │ │ └── servers/ │ │ │ │ └── +server.ts │ │ │ ├── models/ │ │ │ │ └── +server.ts │ │ │ ├── transcribe/ │ │ │ │ └── +server.ts │ │ │ ├── user/ │ │ │ │ ├── +server.ts │ │ │ │ └── validate-token/ │ │ │ │ └── +server.ts │ │ │ └── v2/ │ │ │ ├── conversations/ │ │ │ │ ├── +server.ts │ │ │ │ ├── [id]/ │ │ │ │ │ ├── +server.ts │ │ │ │ │ └── message/ │ │ │ │ │ └── [messageId]/ │ │ │ │ │ └── +server.ts │ │ │ │ └── import-share/ │ │ │ │ └── +server.ts │ │ │ ├── debug/ │ │ │ │ ├── config/ │ │ │ │ │ └── +server.ts │ │ │ │ └── refresh/ │ │ │ │ └── +server.ts │ │ │ ├── export/ │ │ │ │ └── +server.ts │ │ │ ├── feature-flags/ │ │ │ │ └── +server.ts │ │ │ ├── models/ │ │ │ │ ├── +server.ts │ │ │ │ ├── [namespace]/ │ │ │ │ │ ├── +server.ts │ │ │ │ │ ├── [model]/ │ │ │ │ │ │ ├── +server.ts │ │ │ │ │ │ └── subscribe/ │ │ │ │ │ │ └── +server.ts │ │ │ │ │ └── subscribe/ │ │ │ │ │ └── +server.ts │ │ │ │ ├── old/ │ │ │ │ │ └── +server.ts │ │ │ │ └── refresh/ │ │ │ │ └── +server.ts │ │ │ ├── public-config/ │ │ │ │ └── +server.ts │ │ │ └── user/ │ │ │ ├── +server.ts │ │ │ ├── billing-orgs/ │ │ │ │ └── +server.ts │ │ │ ├── reports/ │ │ │ │ └── +server.ts │ │ │ └── settings/ │ │ │ └── +server.ts │ │ ├── conversation/ │ │ │ ├── +server.ts │ │ │ └── [id]/ │ │ │ ├── +page.svelte │ │ │ ├── +page.ts │ │ │ ├── +server.ts │ │ │ ├── message/ │ │ │ │ └── [messageId]/ │ │ │ │ └── prompt/ │ │ │ │ └── +server.ts │ │ │ ├── output/ │ │ │ │ └── [sha256]/ │ │ │ │ └── +server.ts │ │ │ ├── share/ │ │ │ │ └── +server.ts │ │ │ └── stop-generating/ │ │ │ └── +server.ts │ │ ├── healthcheck/ │ │ │ └── +server.ts │ │ ├── login/ │ │ │ ├── +server.ts │ │ │ └── callback/ │ │ │ ├── +server.ts │ │ │ ├── updateUser.spec.ts │ │ │ └── updateUser.ts │ │ ├── logout/ │ │ │ └── +server.ts │ │ ├── metrics/ │ │ │ └── +server.ts │ │ ├── models/ │ │ │ ├── +page.svelte │ │ │ └── [...model]/ │ │ │ ├── +page.svelte │ │ │ └── +page.ts │ │ ├── privacy/ │ │ │ └── +page.svelte │ │ ├── r/ │ │ │ └── [id]/ │ │ │ └── +page.ts │ │ └── settings/ │ │ ├── (nav)/ │ │ │ ├── +layout.svelte │ │ │ ├── +layout.ts │ │ │ ├── +page.svelte │ │ │ ├── +server.ts │ │ │ ├── [...model]/ │ │ │ │ ├── +page.svelte │ │ │ │ └── +page.ts │ │ │ └── application/ │ │ │ └── +page.svelte │ │ └── +layout.svelte │ └── styles/ │ ├── highlight-js.css │ └── main.css ├── static/ │ ├── chatui/ │ │ └── manifest.json │ ├── huggingchat/ │ │ ├── manifest.json │ │ └── routes.chat.json │ └── robots.txt ├── stub/ │ └── @reflink/ │ └── reflink/ │ ├── index.js │ └── package.json ├── svelte.config.js ├── tailwind.config.cjs ├── tsconfig.json └── vite.config.ts