* fix: typo in contribution guidelines, update project metadata and pull_request_temp...md (#5010)
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* bump copyright year
resolves #5017
* feat: update light mode UI sidebar (#4996)
* implement light mode sidebar redesign
* Abstract hardcoded hex values into reusable css variables
* reorder ternary and apply bold font on hovered workspaces
* Remove double icon hack and use a state tracking whether workspace item is being hovered over for fill styles
* lint
* convert css variables and custom classes to default tailwind classes
* remove grab icon filling on hover logic
* revert css vars to original values
* remove light mode css vars | change bg of sidebar in light mode to right color | make icons correct color in light mode
* revert dark mode change
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* fix(frontend): fix event listener memory leak in useIsDisabled hook (#5027)
fix: optimize event listener management in useIsDisabled hook
* feat: dedicated dark theme option with system preference support (#5007)
* implement OS level theme switching and dark mode option
* simplify
* fix logo bug in login | place back useTheme comment
---------
Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* fix cleanup pr workflow
* Implement new home page redesign (#4931)
* remove legacy home page components, update home page to new layout
* update PromptInput component styles to match new designs, make quick action buttons functional
* home page chat creates new thread in last used workspace
* fix slash commands and agent popup on home page
* disable llm workspace selector action in home page
* add drag and drop file support to home page
* fix behavior of drag and drop on home page
* handle pasting attachments in home page
* update empty state of workspace chat to use new ui
* update empty workspace ui to match home page design, fix flickering loading states
* convert quick action buttons to component, add to empty state ws chat
* fix hover state light mode in quick actions
* add suggested messages subcomponent to empty ws/thread
* adjust width, rounded edges of prompt input
* only show quick actions for admin/manager role
* fix hover states for quick actions and suggested messages component
* make upload document quick action trigger parsed document upload
* fix mic behavior in homepage, ws chat, ws thread chat
* fix margin between prompt input and quick actions
* Simplify message presets by removing heading input (#4915)
* Remove heading input from message presets, merge legacy headings on edit
* filter out empty messages from state after saving
* mark form as dirty on input change
* styling
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* convert SuggestedMessages to component, render SuggestedMessages in home page to target ws
* fix broken handleMessageChange reference
* add translations for QuickActions
* lint
* fix home page chat submission broken by PromptInput onChange removal
* fix prompt input remount race condition, home page suggested message flicker
* remove unused handleSendSuggestedMessage from ChatHistory
* add greeting text to main-page translations, remove defaults
* fix file deletion in parsed files menu on home page
* add virtual thread sidebar state and workspace indicator on home page
* show workspace llm selector on home page when workspace exists
* show home page for all user roles with rbac quick actions
* fix positioning of agent and slash command popups
* remove workspace indicator from home page, match empty state spacing
* Normalize translations for home page redesign (#4986)
* normalize translations
* update translations with DMR
* accidentally changed es translation
* normalize translations for main-page.greeting
* update translations with DMR
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* update translations
* create new workspace in native language
Cleanup workspace page from empty state handling
* update quick action show logic
* fix send button
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* fix: GitLab connector infinite loop and rate limit crash for large repos (#5021)
* Fix infinite loop and rate limit crashes
* simplify logic | add max-retries to fetchNextPage and fetchSingleFileContents
---------
Co-authored-by: shatfield4 <seanhatfield5@gmail.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* fix: add password character validation to onboarding single-user setup (#5037)
* fix single user mode password bug
* share const
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* Native Tool calling (#5071)
* checkpoint
* test MCP and flows
* add native tool call detection back to LMStudio
* add native tool call loops for Ollama
* Add ablity detection to DMR (regex parse)
* bedrock and generic openai with ENV flag
* deepseek native tool calling
* localAI native function
* groq support
* linting, add litellm and OR native tool calling via flag
* fix: resolve Gemini agent 400 error on tool call responses (#5054)
* add gtc__ prefix to tool call names in Gemini agent message formatting
* resolve Gemini agent 400 error on tool call responses
* add comments explaining geminis thought signatures
---------
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* fix: prevent CMD/CTRL+Arrow scroll from overriding textarea cursor movement (#5053)
prevent CMD/CTRL+Arrow scroll from overriding textarea cursor movement
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* lint
* Normalize scraper runtimeargs for bulk-scraper (#5083)
resolves #5078
closes #5079
* resolve Ollama string strict num_ctx
resolves #5081
* Lemonade integration (#5077)
* lemonade integration
* lemonade embedder
* log
* load model
* readme updates
* update embedder privacy entry
* fix max tool call stack abort flow
* v1.11.1 Release tags (#5107)
bump tag
* 5112 or stream metrics and finish reason (#5117)
* update metric tracking for OR + fix finish_reason missing from transitive chunks
* linting + comments
closes #5113
resolves #5112
* Fix bug where `yarn setup:envs` fails if any .env file already exists. (#5116)
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* fix: show actionable error when LMStudio model listing fails or returns empty (#5131)
* fix: show actionable error when LMStudio model listing fails or returns empty
When the model listing request completes but returns no models (due to
connection failure, wrong URL, or server unreachable), the dropdown now
shows "No models found — check LMStudio is running and accessible"
instead of "--loading available models--", making it possible to
distinguish a failed request from one still in progress.
Affects both LLM and embedding provider selection components.
Closes recurring UX confusion reported in #3519, #1338, #3656.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* UI warning tooltip
---------
Co-authored-by: Morgan Giddings <morgan@MG-Mac-Studio.home.arpa>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
* Add automatic chat mode with native tool calling support (#5140)
Introduces a new automatic chat mode (now the default) that automatically invokes tools when the provider supports native tool calling. Conditionally shows/hides the @agent command based on whether native tooling is available.
- Add supportsNativeToolCalling() to AI providers (OpenAI, Anthropic, Azure always support; others opt-in via ENV)
- Update all locale translations with new mode descriptions
- Enhance translator to preserve Trans component tags
- Remove deprecated ability tags UI
* Revert "Add automatic chat mode with native tool calling support (#5140)"
- Need to support documents in agents
- Need to support images in agent mode
This reverts commit
|
||
|---|---|---|
| .devcontainer | ||
| .github | ||
| .vscode | ||
| browser-extension@385d36c080 | ||
| cloud-deployments | ||
| collector | ||
| docker | ||
| embed@4fb78337b1 | ||
| extras | ||
| frontend | ||
| images | ||
| locales | ||
| server | ||
| .dockerignore | ||
| .editorconfig | ||
| .gitattributes | ||
| .gitignore | ||
| .gitmodules | ||
| .hadolint.yaml | ||
| .nvmrc | ||
| .prettierignore | ||
| .prettierrc | ||
| BARE_METAL.md | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| README.md | ||
| SECURITY.md | ||
| TERMS_SELF_HOSTED.md | ||
| eslint.config.js | ||
| package.json | ||
| pull_request_template.md | ||
| render.yaml | ||
README.md
AnythingLLM: The all-in-one AI app you were looking for.
Chat with your docs, use AI Agents, hyper-configurable, multi-user, & no frustrating setup required.
|
|
Docs
|
Hosted Instance
👉 AnythingLLM for desktop (Mac, Windows, & Linux)! Download Now
A full-stack application that enables you to turn any document, resource, or piece of content into context that any LLM can use as a reference during chatting. This application allows you to pick and choose which LLM or Vector Database you want to use as well as supporting multi-user management and permissions.
Product Overview
AnythingLLM is a full-stack application where you can use commercial off-the-shelf LLMs or popular open source LLMs and vectorDB solutions to build a private ChatGPT with no compromises that you can run locally as well as host remotely and be able to chat intelligently with any documents you provide it.
AnythingLLM divides your documents into objects called workspaces. A Workspace functions a lot like a thread, but with the addition of containerization of your documents. Workspaces can share documents, but they do not talk to each other so you can keep your context for each workspace clean.
Cool features of AnythingLLM
- 🆕 Full MCP-compatibility
- 🆕 No-code AI Agent builder
- 🖼️ Multi-modal support (both closed and open-source LLMs!)
- Custom AI Agents
- 👤 Multi-user instance support and permissioning Docker version only
- 🦾 Agents inside your workspace (browse the web, etc)
- 💬 Custom Embeddable Chat widget for your website Docker version only
- 📖 Multiple document type support (PDF, TXT, DOCX, etc)
- Simple chat UI with Drag-n-Drop functionality and clear citations.
- 100% Cloud deployment ready.
- Works with all popular closed and open-source LLM providers.
- Built-in cost & time-saving measures for managing very large documents compared to any other chat UI.
- Full Developer API for custom integrations!
- Much more...install and find out!
Supported LLMs, Embedder Models, Speech models, and Vector Databases
Large Language Models (LLMs):
- Any open-source llama.cpp compatible model
- OpenAI
- OpenAI (Generic)
- Azure OpenAI
- AWS Bedrock
- Anthropic
- NVIDIA NIM (chat models)
- Google Gemini Pro
- Hugging Face (chat models)
- Ollama (chat models)
- LM Studio (all models)
- LocalAI (all models)
- Together AI (chat models)
- Fireworks AI (chat models)
- Perplexity (chat models)
- OpenRouter (chat models)
- DeepSeek (chat models)
- Mistral
- Groq
- Cohere
- KoboldCPP
- LiteLLM
- Text Generation Web UI
- Apipie
- xAI
- Z.AI (chat models)
- Novita AI (chat models)
- PPIO
- Gitee AI
- Moonshot AI
- Microsoft Foundry Local
- CometAPI (chat models)
- Docker Model Runner
- PrivateModeAI (chat models)
- SambaNova Cloud (chat models)
- Lemonade by AMD
Embedder models:
- AnythingLLM Native Embedder (default)
- OpenAI
- Azure OpenAI
- LocalAI (all)
- Ollama (all)
- LM Studio (all)
- Cohere
Audio Transcription models:
- AnythingLLM Built-in (default)
- OpenAI
TTS (text-to-speech) support:
- Native Browser Built-in (default)
- PiperTTSLocal - runs in browser
- OpenAI TTS
- ElevenLabs
- Any OpenAI Compatible TTS service.
STT (speech-to-text) support:
- Native Browser Built-in (default)
Vector Databases:
Technical Overview
This monorepo consists of six main sections:
frontend: A viteJS + React frontend that you can run to easily create and manage all your content the LLM can use.server: A NodeJS express server to handle all the interactions and do all the vectorDB management and LLM interactions.collector: NodeJS express server that processes and parses documents from the UI.docker: Docker instructions and build process + information for building from source.embed: Submodule for generation & creation of the web embed widget.browser-extension: Submodule for the chrome browser extension.
🛳 Self-Hosting
Mintplex Labs & the community maintain a number of deployment methods, scripts, and templates that you can use to run AnythingLLM locally. Refer to the table below to read how to deploy on your preferred environment or to automatically deploy.
| Docker | AWS | GCP | Digital Ocean | Render.com |
|---|---|---|---|---|
![]() |
![]() |
| Railway | RepoCloud | Elestio | Northflank |
|---|---|---|---|
![]() |
or set up a production AnythingLLM instance without Docker →
How to setup for development
yarn setupTo fill in the required.envfiles you'll need in each of the application sections (from root of repo).- Go fill those out before proceeding. Ensure
server/.env.developmentis filled or else things won't work right.
- Go fill those out before proceeding. Ensure
yarn dev:serverTo boot the server locally (from root of repo).yarn dev:frontendTo boot the frontend locally (from root of repo).yarn dev:collectorTo then run the document collector (from root of repo).
External Apps & Integrations
These are apps that are not maintained by Mintplex Labs, but are compatible with AnythingLLM. A listing here is not an endorsement.
- Midori AI Subsystem Manager - A streamlined and efficient way to deploy AI systems using Docker container technology.
- Coolify - Deploy AnythingLLM with a single click.
- GPTLocalhost for Microsoft Word - A local Word Add-in for you to use AnythingLLM in Microsoft Word.
Telemetry & Privacy
AnythingLLM by Mintplex Labs Inc contains a telemetry feature that collects anonymous usage information.
More about Telemetry & Privacy for AnythingLLM
Why?
We use this information to help us understand how AnythingLLM is used, to help us prioritize work on new features and bug fixes, and to help us improve AnythingLLM's performance and stability.
Opting out
Set DISABLE_TELEMETRY in your server or docker .env settings to "true" to opt out of telemetry. You can also do this in-app by going to the sidebar > Privacy and disabling telemetry.
What do you explicitly track?
We will only track usage details that help us make product and roadmap decisions, specifically:
-
Type of your installation (Docker or Desktop)
-
When a document is added or removed. No information about the document. Just that the event occurred. This gives us an idea of use.
-
Type of vector database in use. This helps us prioritize changes when updates arrive for that provider.
-
Type of LLM provider & model tag in use. This helps us prioritize changes when updates arrive for that provider or model, or combination thereof. eg: reasoning vs regular, multi-modal models, etc.
-
When a chat is sent. This is the most regular "event" and gives us an idea of the daily-activity of this project across all installations. Again, only the event is sent - we have no information on the nature or content of the chat itself.
You can verify these claims by finding all locations Telemetry.sendTelemetry is called. Additionally these events are written to the output log so you can also see the specific data which was sent - if enabled. No IP or other identifying information is collected. The Telemetry provider is PostHog - an open-source telemetry collection service.
We take privacy very seriously, and we hope you understand that we want to learn how our tool is used, without using annoying popup surveys, so we can build something worth using. The anonymous data is never shared with third parties, ever.
[View all telemetry events in source code](https://github.com/search?q=repo%3AMintplex-Labs%2Fanything-llm%20.sendTelemetry(&type=code)
👋 Contributing
- Contributing to AnythingLLM - How to contribute to AnythingLLM.
💖 Sponsors
Premium Sponsors
All Sponsors











































🌟 Contributors
🔗 More Products
- VectorAdmin: An all-in-one GUI & tool-suite for managing vector databases.
- OpenAI Assistant Swarm: Turn your entire library of OpenAI assistants into one single army commanded from a single agent.
Copyright © 2026 Mintplex Labs.
This project is MIT licensed.




