Overview
Yuxi is a self-hostable, multi-tenant knowledge agent platform. It puts knowledge-base retrieval, knowledge graphs, LangGraph multi-agent orchestration, MCP servers and Skills, sandboxed tools and permission management into a single workspace, aimed at teams that need to keep control of their own data, models and access rules.
Documents are uploaded, parsed, chunked and vector-indexed into Milvus so agents can answer from retrieved content; entities and relations are extracted from those chunks into Neo4j and participate in retrieval alongside the vector index. Agents combine tools, MCP servers, Skills, subagents and a sandbox to carry out multi-step tasks, and produce files you can preview and download rather than just text in a chat log.
The multi-tenancy is the part that distinguishes it from a single-user RAG app: knowledge bases, agents, Skills and models are scoped by user, department and sharing scope, and key operations such as file modification or calls to high-risk external interfaces raise an approval card for a human before proceeding. Retrieval quality can be evaluated against a question set, and whole agent tasks can be evaluated with a Langfuse dataset. The stack is Vue 3 and Ant Design on the front end, FastAPI with LangGraph and an ARQ worker behind it, with PostgreSQL, Redis, MinIO, Milvus and Neo4j for storage, MinerU, PaddleX and RapidOCR for document processing, and Docker Compose for deployment. Its primary documentation is written in Chinese, with an English README alongside it.
What it does
- Knowledge bases with multi-format ingestion, configurable embedding and rerank models, retrieval testing and built-in RAG evaluation
- Knowledge graph construction into Neo4j from indexed document chunks, browsable as subgraphs and used during retrieval
- LangGraph multi-agent workflows with subagents, tools, MCP servers and Skills, plus a sandboxed workspace producing previewable, downloadable files
- Multi-tenant governance: knowledge bases, agents, Skills and models scoped by user, department and sharing scope, with API keys and a dashboard
- Human approval cards before file modifications and other high-risk operations, with live task decomposition, tool-call status and token usage
- Self-hosted via Docker Compose across PostgreSQL, Redis, MinIO, Milvus and Neo4j; document parsing through MinerU, PaddleX and RapidOCR
Getting started
Yuxi runs as a Docker Compose stack. You need Docker Engine with Docker Compose and an LLM API to point it at. The README pins its default configuration to a specific release tag, so clone the tag rather than main.
Clone a release and initialise
The init script creates .env, reads an API key and generates separate secrets for JWT, API-key derivation and the sandbox provisioner. You can instead copy .env.template and fill those in by hand.
git clone --branch v0.7.3 --depth 1 https://github.com/xerrors/Yuxi.git
cd Yuxi
# Linux/macOS
./scripts/init.sh
# Windows PowerShell
.\scripts\init.ps1Start the stack
Brings up the full set of services.
docker compose up --build -dWait for ready, then log in
Once the readiness endpoint reports ready, open the UI and follow the prompts to create the super administrator. The API docs are served at http://localhost:5050/docs.
docker compose ps
curl --fail http://localhost:5050/api/system/ready
# then open http://localhost:5173Configure models and build a knowledge base
Connect chat, embedding and rerank models, then create a knowledge base and verify retrieval. Guides for model configuration, knowledge bases, agent development and production deployment are at xerrors.github.io/Yuxi. Note that upgrading from v0.7.1 or v0.7.2 needs the deployment guide's backup and migration steps, not a plain docker compose up.
Commands and code are distilled from the project's own documentation — always check the official repo for the latest.
When to use it
- Run a private knowledge assistant over company documents where the data, models and permissions all stay on your own infrastructure
- Give different departments their own knowledge bases, agents and model access from one deployment
- Combine vector retrieval with a knowledge graph so answers can follow entity relationships, not just chunk similarity
- Run multi-step agent tasks that produce downloadable files, with a human approving high-risk operations before they execute
How Yuxi compares
Yuxi alongside other open-source rag frameworks & platforms tools AI/TLDR tracks, ranked by GitHub stars.
| Tool | Stars | What it does |
|---|---|---|
| Dify | ★ 156k | An open-source platform with a visual workflow builder for creating LLM and RAG applications without writing much code. |
| graphify | ★ 119k | Turns a folder of code, docs, PDFs and images into a local knowledge graph with tree-sitter AST parsing and Leiden communities — queryable by agents over MCP, no vector store. |
| RAGFlow | ★ 90.9k | A RAG engine built around deep document understanding that turns complex files into a grounded, citation-backed question-answering layer. |
| Pathway | ★ 62.3k | A Python framework with a Rust streaming engine that keeps ETL, real-time analytics and RAG pipelines continuously up to date as source data changes. |
| Context7 | ★ 62.2k | Context7 pulls current, version-specific documentation and code examples for any library and feeds them into your LLM, available as a CLI skill or an MCP server. |
| LightRAG | ★ 39.7k | A graph-based RAG system that builds an entity-and-relationship knowledge graph for fast retrieval and easy incremental updates. |
| Quivr | ★ 39.5k | Quivr is an open-source RAG framework that ingests your documents and answers questions about them, working with any LLM and any file type. |
| Yuxi | ★ 7.1k | Self-hosted knowledge agent platform: RAG, knowledge graphs and multi-agent runs, with per-department permissions |