AnythingLLM
A self-hosted workspace for document chat and AI-driven workflows.
- Source repo
- Mintplex-Labs/anything-llm
- Stars
- ★ 68k
- Last updated
- 1d ago
- License
- MIT
- Primary language
- JavaScript
- FA score
- 48/100 · Major gaps
At a glance
- How it runs
- Works with
- Universal · cross-platformOpenAI API · Claude API
- Cost
- Free software; you pay for model usage
- Setup effort
- Medium · a few setup steps
- You'll need
- Typical use
- A team that wants source-cited answers over internal PDFs, DOCX files, and text documents can run a private workspace for document chat.
- Not a fit if
- Teams that need zero outbound connections
- Users who want a vendor-hosted cloud, not self-hosting
- Non-Docker users needing multi-user permissions or the embed widget
- Source review
- 48/100 · Major gaps 1 safety controls not found
What does this agent do, and when should you use it?
AnythingLLM is a local-first AI application for connecting local or cloud models, ingesting documents, and chatting with them in a workspace. The monorepo contains a ViteJS and React frontend, a Node.js Express server, a document-processing collector, and Docker build and deployment materials. The server manages vector databases and LLM interactions, while the collector parses documents uploaded through the UI. Built-in agents, no-code Agent Flows, scheduled tasks, memories, model routing, and MCP compatibility extend the document-chat workflow. It can be deployed as a private application or integrated through a developer API and embeddable chat widget; multi-user permissions and the embed widget are marked as Docker-only features.
Users drag and drop supported files such as PDFs, TXT files, and DOCX documents in the frontend. The Node.js Express collector processes and parses those documents, while the Node.js Express server manages vector databases and LLM interactions. A workspace can store retrieval data in default LanceDB or another listed vector database, then send chat requests to a selected local or cloud LLM. The UI returns chat responses with source citations, and workspace agents can perform actions such as browsing the web. Administrators can also configure Dynamic Model Routing, Automatic & User Managed Memories, cron-based Scheduled Tasks, and no-code Agent Flows.
- A team that wants source-cited answers over internal PDFs, DOCX files, and text documents can run a private workspace for document chat.
- A local-model operator using Ollama, LM Studio, LocalAI, or a llama.cpp-compatible model can connect it to a document retrieval workflow.
- An administrator routing different conversations to different models or providers can define rules with Dynamic Model Routing.
- An operations user who needs recurring prompt-based work can schedule tasks with cron and full agent capabilities.
- An organization that needs distinct user access can use the Docker deployment's documented multi-user and permissioning support.
- A web development team that wants an embedded chat entry point can use AnythingLLM Embed, which the README marks as Docker-only.
How do you install or deploy this agent?
The documented development workflow is run from the repository root:
yarn setupFill in the required .env files for each application section; server/.env.development must be completed. Then run:
yarn dev:server
yarn dev:frontend
yarn dev:collectorThe README identifies the server and collector as Node.js Express services and the frontend as ViteJS plus React, so Node.js and Yarn are required for this workflow. A selected cloud LLM, embedder, or vector database will require that service's connection details or credentials in its applicable environment configuration. The supplied material does not document exact variable names, ports, default model setup, or the first browser URL.
How do you use this agent?
After starting the server, frontend, and collector, use the frontend to create and manage content available to the model, then drag and drop supported documents for ingestion. Configure one of the documented LLM, embedding-model, and vector-database options, and chat in a workspace; the UI provides source citations. For automation, create Scheduled Tasks or a no-code Agent Flow. For custom integration, use the documented Full Developer API. The supplied README does not include a copyable API request, endpoint list, authentication flow, or complete Agent Flow example.
What are this agent's strengths and limitations?
- Combines document parsing, vector retrieval, a chat UI, workspace agents, and a developer API in one application rather than providing only a model connector.
- Supports both local paths—Ollama, LM Studio, LocalAI, and llama.cpp-compatible models—and cloud providers including OpenAI, Anthropic, AWS Bedrock, and Gemini.
- Dynamic Model Routing, memories, cron-based scheduled tasks, and MCP compatibility provide documented mechanisms for model selection and workflow automation.
- Uses LanceDB by default while documenting alternatives including PGVector, Pinecone, Qdrant, Milvus, and Weaviate.
- Telemetry can be disabled with
DISABLE_TELEMETRY=trueor in the Privacy settings; the README describes anonymous events rather than chat or document content.
- The documented development setup requires separate server, frontend, and collector processes plus manual completion of multiple
.envfiles, including the requiredserver/.env.development. - The supplied README omits exact environment variables, ports, API authentication, API request examples, and a complete first-use configuration path.
- Multi-user permissioning and the embeddable chat widget are explicitly marked Docker-only, so non-Docker deployments may not include them.
- External LLMs, embedding models, tools, and vector databases create outbound connections to their respective providers and remain subject to their terms.
- Even with telemetry disabled, model downloads may use
cdn.anythingllm.com, and context-window caching may contact GitHub or GitHubusercontent.
How does this agent compare with similar options?
The README positions AnythingLLM as a way to build a private, fully featured ChatGPT-style application. Unlike a chat interface tied to one model service, it explicitly documents local and cloud provider paths plus multiple vector-database options; however, the supplied material provides no feature matrix, benchmark, or migration guidance against ChatGPT or another product.
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| AnythingLLM This agent | 48 · Major gaps | Self-hosted serviceFree + model costs | ★ 68k | 1d ago | JavaScript | OpenAI API · Claude API |
| NextClaw | 58 · Major gaps | Desktop appFree + model costs | ★ 263 | 1d ago | TypeScript | Codex · Claude Code |
| MindsHub Cowork | 55 · Major gaps | Web appFreemium | ★ 40k | 13d ago | Makefile | — |
| LazyMind | 50 · Major gaps | Desktop appFree + model costs | ★ 585 | 1d ago | Go | Codex |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence shows: README clearly explains telemetry and opt-out, lists other outbound connections; SECURITY.md states admin-enabled tools are intentional, but no default least-privilege configuration. Deductions: no default least-privilege config, user confirmation unclear, sensitive data handling details insufficient, dependency security only mentions VEX without specific vulnerabilities, external effects not fully transparent, rollback not mentioned, source attribution only via author field and repo metadata.
Evidence shows: README and package.json consistently describe project structure and dev commands, but no documentation of error handling or failure messages. Deductions: dependency availability not verified, failure messages not specified.
Evidence shows: README clearly identifies target users (developers, enterprises) and multiple deployment scenarios, lists many supported LLMs and vector DBs, but trigger precision (e.g., agent tool triggers) not detailed. Deductions: trigger precision insufficient, environment fit broad but lacks detailed configuration guides.
Evidence shows: README well-structured, provides install and dev guides, naming stable (version numbers clear), examples and FAQ links, MIT license clear, but known limitations not explicitly listed, changelog not provided, maintenance responsibility via author and repo metadata. Deductions: known limitations and changelog missing.
Evidence shows: README emphasizes output usability (e.g., source citations), marginal value (e.g., reduced token usage), cost-benefit (e.g., local running reduces costs), but no specific data or comparisons. Deductions: lack of quantitative evidence.
Evidence shows: Feature claims in README lack specific implementation details or test evidence, cross-source verification insufficient, facts and inferences not clearly separated. Deductions: claims lack traceability, no test results or independent verification.
- Not found in source: rollback or recovery pathBack up first, or work on a git branch or snapshot, so its changes can be undone.
- Telemetry is enabled by default; must be manually disabled; outbound connections may involve third-party services.
- Admin-enabled agent tools (e.g., SQL, filesystem) may pose security risks; configure carefully.
- No rollback mechanism provided; back up data before upgrading.
Recent releases
Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.
-
v1.19.0 AnythingLLM v1.19.0
Release notes excerpt
Built-in LLM for Docker <img width="3680" height="2212" alt="AnythingLLM Docker built-in LLM powered by Lemonade and llama.cpp" src="https://github.com/user-attachments/assets/410b5784-ca15-4027-a1c4-056d9d5c748e" /> AnythingLLM Docker now has a default local LLM experience right out of the box. The same kind of built-in engine that ships with [AnythingLLM Desktop](https://docs.anythingllm.com/setup/llm-configuration/local/built-in) can now run inside the container: [Lemonade](https://lemonade-server.ai), the fully [open-source](https://github.com/lemonade-sdk/lemonade) local inferenc …View on GitHub ↗ -
v1.18.0 AnythingLLM v1.18.0
Release notes excerpt
What's Changed * fix: point k8s probes at the server's /api/ping by @u00dxk2 in https://github.com/Mintplex-Labs/anything-llm/pull/6592 * fix: don't crash when removing a parsed file while an image is attached by @marmar9615-cloud in https://github.com/Mintplex-Labs/anything-llm/pull/6585 * fix: open the clicked image when attachments share a file name by @marmar9615-cloud in https://github.com/Mintplex-Labs/anything-llm/pull/6586 …View on GitHub ↗ -
v1.17.0 AnythingLLM v1.17.0
Release notes excerpt
What's Changed * fix(collector): read spreadsheet dates as dates, not serial numbers by @L4XB in https://github.com/Mintplex-Labs/anything-llm/pull/6478 * Drop temp param for Anthropic models by @shatfield4 in https://github.com/Mintplex-Labs/anything-llm/pull/6472 * Allow Generic OpenAI max tokens of 0 to omit max_tokens from request by @shatfield4 in https://github.com/Mintplex-Labs/anything-llm/pull/6470 * fix: support SearchApi engines in agent web browsing by @evilive3000 in https://github.com/Mintplex-Labs/anything-llm/pull/6465 …View on GitHub ↗
FAQ
Can it run entirely locally?
Does it collect my chats or document contents?
DISABLE_TELEMETRY=true to opt out.