AnythingLLM is a free, open source ai interaction & interfaces project written in JavaScript and released under MIT. It has 67,862 GitHub stars, 7,658 forks and 311 open issues, and was last pushed 3 days ago. On this registry it ranks #8 of 156 tracked projects in AI Interaction & Interfaces, with 5 head-to-head comparisons available. It gained 1,234 stars over the last 30 tracked days.

AnythingLLM — Chat with your documents using any LLM, fully private

What is AnythingLLM?

What it is

AnythingLLM is a local-first AI application that enables users to chat with their documents using any large language model (LLM), local or cloud-hosted. It runs as a self-hosted service—by default in Docker—and provides a complete interface for document ingestion, agent orchestration, multi-user access, and workflow automation without requiring external cloud dependencies. The project lives in the local AI and AI-interaction ecosystem, targeting users who want full control over their data and model selection.

It solves the problem of fragmented, proprietary, or cloud-dependent AI chat interfaces by unifying document chat, agent capabilities, and workflow automation into a single, configurable platform. Users avoid vendor lock-in, data leakage risks, and costly API usage by running everything on their own infrastructure.

Key capabilities

  • Dynamic model routing based on user-defined rules to select optimal LLMs per query
  • Automatic and user-managed memory storage for persistent context across sessions
  • Scheduled tasks using cron-based triggers with full agent execution
  • Intelligent skill selection that reduces token usage by up to 80% per query
  • No-code AI agent builder with drag-and-drop workflow design
  • Multi-modal support for both open-source and closed-source LLMs
  • MCP-compatibility for tool integration and extended agent functionality

Who uses it and how

  • Developers deploy it as a private, self-hosted alternative to commercial chat interfaces for internal RAG or agent workflows
  • Teams use multi-user support and permissioning to share document workspaces securely across departments
  • Researchers run local LLMs (e.g., via Ollama or llama.cpp) to process sensitive documents without sending data externally

Getting started

Install via Docker using mintplexlabs/anythingllm image, or download desktop binaries for Mac, Windows, or Linux. No-code setup is available via the web UI after initial launch.

When to use it — and when not to

Use AnythingLLM when full data sovereignty, local LLM support, and agent automation are required, especially where compliance or cost rules forbid cloud APIs. Avoid it if you lack Docker or Node.js experience, as self-hosting requires managing a PostgreSQL database, vector storage, and optional SMTP for notifications. It does not replace cloud-native orchestration platforms but offers a more integrated, local-first experience than stitching separate tools together.

project readme (upstream, from github) — read inline

[!NOTE] We are also working on Open Computer which gives an entire computer environment for AI Agents to use.

This will bring AnythingLLM's agent capabilities to a new level and a novel UX paradigm for AI Agent use.

⭐ Star the repo to stay updated!

AnythingLLM logo

Mintplex-Labs%2Fanything-llm | Trendshift

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.

Discord | License | Docs | Hosted Instance

English · 简体中文 · 日本語

👉 AnythingLLM for desktop (Mac, Windows, & Linux)! Download Now

Chat with your docs. Automate complex workflows with AI Agents. Hyper-configurable, multi-user ready, battle-tested—and runs locally by default with zero setup friction.

Chatting

Watch the demo!

Watch the video

Product Overview

AnythingLLM is the all-in-one AI application that lets you build a private, fully-featured ChatGPT—without compromises. Connect your favorite local or cloud LLM, ingest your documents, and start chatting in minutes. Out of the box you get built-in agents, multi-user support, vector databases, and document pipelines — no extra configuration required.

AnythingLLM supports multiple users as well where you can control the access and experience per user without compromising the security or privacy of the instance or your intellectual property.

Cool Features of AnythingLLM

Supported LLMs, Embedder Models, Speech models, and Vector Databases

Large Language Models (LLMs):

Embedder models:

Audio Transcription models:

TTS (text-to-speech) support:

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
Deploy on Docker Deploy on AWS Deploy on GCP Deploy on DigitalOcean Deploy on Render.com
Railway RepoCloud Elestio Northflank Sealos
Deploy on Railway Deploy on RepoCloud Deploy on Elestio Deploy on Northflank Deploy on Sealos

or set up a production AnythingLLM instance without Docker →

How to setup for development

  • yarn setup To fill in the required .env files you'll need in each of the application sections (from root of repo).
    • Go fill those out before proceeding. Ensure server/.env.development is filled or else things won't work right.
  • yarn dev:server To boot the server locally (from root of repo).
  • yarn dev:frontend To boot the frontend locally (from root of repo).
  • yarn dev:collector To then run the document collector (from root of repo).

Learn about documents

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

Other outbound connections

If you disable telemetry, you would still see outbound connections to the following services:

  • If using an external tool, LLM, Embedding models, or Vector databases, you will still see outbound connections to the respective service provider.
  • cdn.anythingllm.com for pulling models from our mirror CDN. This is not tracked by telemetry and is actually useful for those in VPN restricted regions.
  • github/githubusercontent.com There are some various flat files that are downloaded from these domains for context window caching.

Basically, if telemetry is disabled we don't collect anything. However, depending on your setup you may still see outbound connections and would be subject to the terms of service of the respective service provider.

👋 Contributing

💖 Sponsors

All Sponsors

🌟 Contributors

anythingllm contributors

Star History Chart

🔗 More Products


Copyright © 2026 Mintplex Labs.
This project is MIT licensed.

Frequently asked questions

Is AnythingLLM free to use?

AnythingLLM is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does AnythingLLM do?

Chat with your documents using any LLM, fully private

What is AnythingLLM written in?

AnythingLLM is primarily written in JavaScript. Its source is publicly available at https://github.com/mintplex-labs/anything-llm, and it has 67,862 GitHub stars.