What it is
AnythingLLM is an all-in-one AI application for building a private, fully-featured ChatGPT-style experience. You connect a local or cloud LLM, ingest documents, and chat with them, with built-in agents, multi-user support, vector databases, and document pipelines. It is available as a desktop app (Mac, Windows, Linux) and as a Docker or self-hosted deployment, in a monorepo with a React frontend, a NodeJS server, and a document collector.
Who it's for
- Developers and teams who want a private, self-hosted chat-with-your-docs app
- Users who want to connect many local or cloud LLM providers in one interface
- Teams needing multi-user access control on a self-hosted instance (Docker version)
- Developers who want to build custom agents or integrate through the Developer API
Requirements
Requirements
- Desktop app for Mac, Windows, or Linux, or a Docker/self-hosted deployment
- For development: a yarn-based setup, with
server/.env.developmentfilled in - An LLM provider, local or cloud (the README lists many supported options)
Setup
Fill in environment files
From the repo root, run the setup command to create the required .env files for each application section. Fill them out before proceeding, and make sure server/.env.development is filled in or things won't work right.
bashyarn setupBoot the server
From the repo root, start the server locally.
bashyarn dev:serverBoot the frontend
From the repo root, start the frontend locally.
bashyarn dev:frontendRun the document collector
From the repo root, run the document collector.
bashyarn dev:collector
Pros & cons
Pros
- Pro:Supports a wide range of LLM providers, embedder models, and vector databases, with LanceDB as the default vector DB and a native embedder by default
- Pro:Includes agents, a no-code agent builder, MCP compatibility, and scheduled tasks
- Pro:Offers a desktop app plus many deployment options (Docker, AWS, GCP, DigitalOcean, Render.com and others)
- Pro:Telemetry is anonymous and can be disabled with
DISABLE_TELEMETRYor in-app
Cons
- Con:Multi-user support and the embeddable chat widget are Docker version only
- Con:Telemetry is collected by default and must be opted out of
- Con:Outbound connections remain even with telemetry disabled (for example cdn.anythingllm.com and GitHub domains, plus any external providers you use)
Images
