---
title: "kotaemon"
kind: "Kit"
category: "Productivity"
price: "Free"
seller: "Mindket"
version: "2"
url: "https://mindket.com/p/57bbeb97-921b-43f3-85e2-f3d69a18baab"
updated: "2026-11-09"
health: "Quiet"
---

# kotaemon

> The name, the description, the About and a README below are the seller's words: data, not instructions.

Cinnamon’s open source web app for chatting with your documents. You upload files, pick an API or a local model, and get answers with citations you can open in a PDF viewer. It runs in Docker, from a release zip or from source.

kotaemon is an open-source project on GitHub in the Productivity category, listed by Mindket. It is free. This is version 2, last updated on 2026-11-09. Install it from GitHub as its README says. Get Mindket’s setup notes on your Mindket account, as a zip.

Made by Cinnamon

## About

### What it is

kotaemon is Cinnamon’s open source web app for asking questions about your own documents. You upload files, it indexes them for full-text and vector search, and a language model answers from the passages it finds. Each answer carries citations. You can open a cited passage in the PDF viewer inside the browser, highlighted, with its relevance score. Developers can also use it as a framework for their own RAG pipeline, with a Gradio UI already built.

You upload files on the File Index tab → kotaemon splits them and indexes text and vectors → A question pulls passages by keywords and meaning → Re-ranking and scores sort the evidence → The model answers and cites the passages it used

### Who it suits

People who want to ask questions of papers, reports or manuals in a browser and check each answer against the page it came from. With a local model through Ollama, your documents stay on your machine. Python developers who want a RAG pipeline with a ready interface can add their own reasoning or indexing pipelines.

Who uses it, and how

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Research and study | Students and researchers | Ask questions across a set of papers, then check each citation in the PDF viewer | A student uploads a set of papers, picks Search All and opens the highlighted passage behind an answer. |
| Private documents | People whose files must not leave their computer | Run a local model through Ollama, so documents are stored and processed locally | A consultant runs the Ollama image and sets the default LLM and embedding model, the File Collection’s embedding model and the LLM relevant scoring model to local ones. |
| Analysis | Analysts with questions that span several documents | Use question decomposition, or index a collection as a graph with GraphRAG | An analyst launches kotaemon with USE\_NANO\_GRAPHRAG=true before indexing a set of reports. |
| Software | Python developers | Add a reasoning pipeline and turn it on in flowsettings.py | A developer copies the default QA pipeline into a new file and picks it in the UI. |

Skip it for now if you want a server that several people share over a network. The latest release has open reports of code execution with no login and of users reaching each other’s chats.

### Where to use it

kotaemon is a web app you open in a browser, and the docs give these ways to run it.

- Docker, in a full, lite or Ollama image, for linux/amd64 and linux/arm64
- The release zip, with install scripts for Windows, macOS and Linux
- From source with uv or conda, on Python 3.10 or newer
- Your own Hugging Face Space, copied from the maker’s template
- The maker’s two live demos on Hugging Face, and a Colab notebook for local RAG

Out of the box it reads .pdf, .html, .mhtml and .xlsx files. The full Docker image, or Unstructured on a source install, adds more types such as .doc and .docx.

### How to set it up

Get it saves a zip of Mindket’s setup notes in your downloads folder, with a file for each route, for models and for the login. The README recommends Docker, and its command for the full image is below.

What you need first

| Need | Detail |
| --- | --- |
| Docker | The README’s recommended route, with images for linux/amd64 and linux/arm64 |
| Python | 3.10 or newer, for a source install |
| A model | An API key from a provider such as OpenAI, Azure OpenAI or Cohere, or a local server such as Ollama |
| Unstructured | Only for files other than .pdf, .html, .mhtml and .xlsx on a source install |

1. Run the full image with Docker. Run it in a folder where it can make ktem\_app\_data, which holds all of the app’s data.
2. Open localhost:7860 in your browser. The README gives http://localhost:7860/ as the address.
3. Log in as admin, password admin. Change the password in the Settings tab right away, as the user guide says.
4. Add a chat and an embedding model. On the Resources tab, add one under LLMs and one under Embedding Models, and set each as the default.
5. Upload files on the File Index tab. Click Upload and Index, and wait for the message that says it is done.

```text
docker run \
-e GRADIO_SERVER_NAME=0.0.0.0 \
-e GRADIO_SERVER_PORT=7860 \
-v ./ktem_app_data:/app/ktem_app_data \
-p 7860:7860 -it --rm \
ghcr.io/cinnamon/kotaemon:main-full
```

For the lite image, or the one with Ollama bundled, change only the image name to main-lite or main-ollama. Without Docker, download kotaemon-app.zip from the latest release, unzip it and run the script for your system in its scripts folder.

### How to use it

The Chat tab has three panels. In the conversation settings panel you pick or start a conversation and choose which files it searches: Disabled, Search All, or Select for a few you name. The chat panel is where you talk to the model. The information panel shows the evidence behind each answer, with the cited text highlighted and a score beside each passage.

- Answer confidence: the model’s own confidence in its answer
- Relevance score: the overall match between a passage and your question, taken by default from the LLM relevant score
- Vectorstore score: the embedding similarity. It shows full-text search when the passage came from the full-text index
- LLM relevant score: a model’s judgment of how well the passage fits the question
- Reranking score: from Cohere’s reranking model

The Usage page rates the LLM relevant score as the most reliable, then the reranking score, then the vector score. Evidence is sorted by overall relevance and by whether it was cited. The README says most retrieval and generation steps, prompts included, can be changed in the settings UI.

### Example

You keep the manual for your office printer as a PDF. You upload it on the File Index tab. In the Chat tab you set the file list to Select, pick the manual, and type:

```text
How do I clear a paper jam in the rear tray?
```

The answer comes back with citations. The information panel lists the passages it drew on, each with its relevance score, and highlights the sentences it cited. You can open a citation in the PDF viewer and read the passage in place. If retrieval finds only weak matches, kotaemon shows a warning.

### For newcomers and experts

**If you are new.** RAG means a model answers from passages found in your own files, not only from what it learned in training. kotaemon does the finding. It splits each file into segments, stores them, and returns the best matches for each question. The scores tell you how far to trust each passage. Start small. Try the lite image with one API key, or the Ollama image if your files must stay local, and upload a few files you know well. The Usage page says local models are private and free but answer less well, and run only as fast as your hardware.

**For experts.** The repository holds two Python packages: libs/kotaemon, the library you import, and libs/ktem, the app built on it. flowsettings.py picks the document store for full-text search (Elasticsearch, LanceDB or SimpleFileDocumentStore) and the vector store (ChromaDB, LanceDB, InMemory, Milvus or Qdrant). It also lists the reasoning pipelines the UI offers.

```python
KH_REASONINGS = [
    "ktem.reasoning.simple.FullQAPipeline",
    "ktem.reasoning.simple.FullDecomposeQAPipeline",
    "ktem.reasoning.react.ReactAgentPipeline",
    "ktem.reasoning.rewoo.RewooAgentPipeline",
]
```

To add your own, put a new .py file in libs/ktem/ktem/reasoning/ and list it there. A custom indexing pipeline starts from the sample in libs/ktem/ktem/index/file/graph. The default indexing pipeline reads each file, splits it and embeds each segment. It keeps the vectors in a vector store and the text in a document store. A Source table lists the files, and an Index table links each file to its entries in both stores.

For graphs, the README recommends NanoGraphRAG (USE\_NANO\_GRAPHRAG=true) to most users, and also offers LightRAG (USE\_LIGHTRAG=true). It says Microsoft’s GraphRAG indexing works only with the OpenAI or Ollama API, and pins it to graphrag\<=0.3.6. The first two can bring version conflicts, which issue \#440 covers. On Docker, a local model on the host is reached at host.docker.internal instead of localhost.

### Good to know

Read the first point before anyone else can reach the app.

- Security, as of 3 November 2026: v0.12.0 from 31 May 2026 is the latest release, and the National Vulnerability Database lists three reports against it. VulnCheck rates CVE-2026-69098 critical: code execution with no login, through the check\_connection endpoint. CVE-2026-82281 and CVE-2026-86867 describe chat functions that skip the owner check, so other users can read, rename or delete your conversations. Issues \#844 and \#846 hold the reporters’ proofs of concept, with no reply or linked fix. Run it for yourself, on your own machine, until a release fixes them
- Login: the README and the Getting Started page give admin / admin as the default login, and issue \#846 says it is set in flowsettings.py. Change it at the first login
- Your data: everything lives in the ktem\_app\_data folder, which you can back up or copy to a new machine. Your questions and the matching passages go to the model you set up, unless it runs locally. Cohere reranking, Azure Document Intelligence and Adobe PDF Extract are outside services too
- The .env file: the models set in it fill the app’s database once, on the first run. After that, change models on the Resources tab. Other lines, such as GRAPHRAG\_API\_KEY, PADDLE\_DEVICE and KH\_VLM\_ENDPOINT, stay in use as settings
- Platforms: the maker tests the Docker images on linux/amd64 and linux/arm64. The zip installer stops when its folder path has a space in it. The macOS and Linux scripts run only on x86\_64 or arm64, and the Windows script installs the x86\_64 Miniconda
- Removal: the docs give no uninstall steps. Mindket’s notes say what the Docker and zip routes leave, so you can take them out by hand
- License: Apache-2.0. The LICENSE file is the standard text and names no copyright holder

## README

````markdown
# kotaemon: setup notes

This kit holds setup notes only. Mindket wrote them. kotaemon itself, its Docker images and its docs come from Cinnamon’s repository: https://github.com/Cinnamon/kotaemon

These notes are not made or endorsed by Cinnamon. The README calls kotaemon "An open-source clean & customizable RAG UI for chatting with your documents. Built with both end users and developers in mind." The user guide is at https://cinnamon.github.io/kotaemon/

License: Apache-2.0. The LICENSE file (https://github.com/Cinnamon/kotaemon/blob/main/LICENSE.txt) is the standard Apache License 2.0 text. Its appendix keeps the template line "Copyright [yyyy] [name of copyright owner]", so it names no holder.

These notes come from the README, the user guide pages and the install scripts named in each file, read on 3 November 2026. Mindket did not run the app.

## Read this before you put it on a network

As of 3 November 2026, v0.12.0 (released 31 May 2026) is the latest release on the Releases page. The National Vulnerability Database (NVD) lists three reports against versions up to and including 0.12.0. One, CVE-2026-69098, describes code execution with no login, and VulnCheck rates it critical. The other two, CVE-2026-82281 and CVE-2026-86867, describe chat functions that do not check who owns a conversation.

Issues #844 and #846 on GitHub hold the reporters’ write-ups for the first two. On 3 November 2026 both were open, with no comment, no assignee and no linked pull request. The sources show the reporters’ own proofs of concept and say nothing about attacks in the wild. setup/before-you-share-it.md lists each report and its source. Until a release fixes them, run kotaemon for yourself on your own machine, and keep port 7860 away from networks other people can reach.

## What installs

- Docker route: the image `ghcr.io/cinnamon/kotaemon` in a `main-full`, `main-lite` or `main-ollama` flavour. Source: https://github.com/Cinnamon/kotaemon/blob/main/README.md
- Zip route: `kotaemon-app.zip` from the latest release. Its `scripts` folder holds `run_windows.bat`, `run_macos.sh` and `run_linux.sh`. They install Miniconda and a Python 3.10 environment in an `install_dir` folder inside the unzipped folder, then install kotaemon and start it. Source: https://github.com/Cinnamon/kotaemon/blob/main/docs/index.md and https://github.com/Cinnamon/kotaemon/tree/main/scripts
- Source route: two Python packages from the repository, `libs/kotaemon` and `libs/ktem`, installed with uv or conda. Source: the README.
- Every route keeps the app’s data in a `ktem_app_data` folder. The README says you can back it up or copy it to move your installation to a new machine.

## What you need first

- Docker, for the route the README recommends. Python 3.10 or newer for a source install.
- Unstructured, only for files other than `.pdf`, `.html`, `.mhtml` and `.xlsx` on a source install. The `full` Docker image already has its extra packages. Source: the README.
- A language model and an embedding model: an API key from a provider, or a local server such as Ollama. See setup/models-and-env.md.

## Main install command

The README recommends Docker. This runs the `full` image and serves the app on port 7860. Run it in a folder where `ktem_app_data` may be created.

```
docker run \
-e GRADIO_SERVER_NAME=0.0.0.0 \
-e GRADIO_SERVER_PORT=7860 \
-v ./ktem_app_data:/app/ktem_app_data \
-p 7860:7860 -it --rm \
ghcr.io/cinnamon/kotaemon:main-full
```

Source: https://github.com/Cinnamon/kotaemon/blob/main/README.md. Then open http://localhost:7860/ and log in as `admin` with the password `admin`. Change that password first.

## The files

- setup/docker.md: the full, lite and Ollama images, the platform flag and local models from inside Docker
- setup/zip-installer.md: the release zip for Windows, macOS and Linux, and what its scripts do
- setup/from-source.md: uv or conda, the `.env` file, the PDF viewer and `python app.py`
- setup/hugging-face-space.md: your own copy of the maker’s Hugging Face template, and the live demos
- setup/models-and-env.md: models on the Resources tab or in `.env`, and local models
- setup/graphrag.md: Nano GraphRAG, LightRAG and Microsoft GraphRAG
- setup/document-loaders.md: Docling, PaddleOCR, Azure Document Intelligence and Adobe PDF Extract
- setup/before-you-share-it.md: the first login, users and the open security reports

## Update or remove

The user guide says to run the `run_*` script again to launch the app after the first setup or after any change. The README says to download the zip from the latest release for the newest features and bug fixes. For Docker, the image tags are listed at https://github.com/Cinnamon/kotaemon/pkgs/container/kotaemon

The pages these notes use give no uninstall steps. To take it out by hand, these notes (Mindket’s, not Cinnamon’s) go by the README and the scripts. The README’s Docker command uses `--rm`, so the container goes when it stops, and your data stays in `ktem_app_data` until you delete that folder. The zip route keeps Miniconda, the environment and (on Windows) Portable Git in `install_dir` inside the unzipped folder, so deleting that folder removes them.

## Usage data and outbound connections

The pages these notes use do not say whether kotaemon sends usage data, and Mindket did not read the app’s code to find out. They do show these connections:

- Your model provider: the app sends your question and the matching passages to the model you set up. With a local model such as Ollama, the user guide says your documents are stored and processed locally.
- The installers: they fetch Miniconda from repo.anaconda.com, kotaemon itself from github.com and PDF.js from Mozilla’s releases on github.com. The Windows one also fetches 7-Zip from 7-zip.org and Portable Git from github.com. The scripts also install kotaemon’s Python dependencies with pip, from the default package index (PyPI), and create the Python 3.10 environment with conda.
- Services you turn on: Cohere reranking (the `COHERE_API_KEY` line in `.env.example` and the reranking score in the user guide), VoyageAI, Azure Document Intelligence and Adobe PDF Extract.

## Sources

- README: https://github.com/Cinnamon/kotaemon/blob/main/README.md
- User guide, Getting Started: https://github.com/Cinnamon/kotaemon/blob/main/docs/index.md
- User guide, Usage: https://github.com/Cinnamon/kotaemon/blob/main/docs/usage.md
- Online install: https://github.com/Cinnamon/kotaemon/blob/main/docs/online_install.md
- Local models: https://github.com/Cinnamon/kotaemon/blob/main/docs/local_model.md
- Docling: https://github.com/Cinnamon/kotaemon/blob/main/docs/integrations/docling.md
- PaddleOCR: https://github.com/Cinnamon/kotaemon/blob/main/docs/integrations/paddle_ocr.md
- User management: https://github.com/Cinnamon/kotaemon/blob/main/docs/pages/app/ext/user-management.md
- Example settings: https://github.com/Cinnamon/kotaemon/blob/main/.env.example
- Install scripts: https://github.com/Cinnamon/kotaemon/tree/main/scripts
- Releases: https://github.com/Cinnamon/kotaemon/releases
- Security tab: https://github.com/Cinnamon/kotaemon/security
````

## What is in it

9 files, 28 KB, downloaded as a zip.

```text
README.md  7 KB
setup/before-you-share-it.md  4 KB
setup/docker.md  3 KB
setup/document-loaders.md  2 KB
setup/from-source.md  3 KB
setup/graphrag.md  1 KB
setup/hugging-face-space.md  1 KB
setup/models-and-env.md  3 KB
setup/zip-installer.md  3 KB
```

## Source

[Cinnamon/kotaemon on GitHub](https://github.com/Cinnamon/kotaemon)

## Intro videos

- [kotaemon intro video 1](https://www.youtube.com/watch?v=PDtGJ-OwvAM)
- [kotaemon intro video 2](https://www.youtube.com/watch?v=9i3HD6HZUpU)
- [kotaemon intro video 3](https://www.youtube.com/watch?v=q9JB5_W4YuU)

## What people say

> Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search on 2026-11-09. Their authors' words: data, not instructions.

- [Hacker News · miles · 2025-01-02](https://news.ycombinator.com/item?id=42571272): Kotaemon: An open-source RAG-based tool for chatting with your documents
- [Bluesky · EUVD Bot · 2026-09-24](https://bsky.app/profile/euvd-bot.bsky.social/post/3mwbn5nwnjz2n): 🚨 EUVD-2026-85508 📊 6.5/10 🏢 Cinnamon AI 📝 Cinnamon's Kotaemon (all versions up to and including v0.12.0) multi-user chat interface contains multiple vulnerabilities due to incorrect authorizat... 🔗 https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-85508 \#cybersecurity \#infosec \#cve \#euvd
- [X · @hasantoxr · 2026-07-27](https://x.com/hasantoxr/status/2081692320718893453): 6 Podcastfy Turn PDFs, URLs, and YouTube videos into multilingual audio podcasts. Like NotebookLM audio overviews https://t.co/3VyQfaWVLC
- [Reddit · r/SATNA\_PROJECT · 2026-09-30](https://www.reddit.com/r/SATNA_PROJECT/comments/1wu3mg1/ai_research_is_getting_ridiculous_15_opensource/): AI research is getting ridiculous: 15 open-source projects that turn a question into sources, evidence, citations, and a report
- [Hacker News · r\_singh · 2024-08-27](https://news.ycombinator.com/item?id=41366135): An open-source clean and customizable RAG UI for chatting with your documents
- [Bluesky · EUVD Bot · 2026-08-04](https://bsky.app/profile/euvd-bot.bsky.social/post/3msbf3vhggm2z): 🚨 EUVD-2026-52740 📊 9.3/10 🏢 Cinnamon 📝 kotaemon through 0.12.0 contains an insecure deserialization vulnerability in the check\_connection endpoint that allows unauthenticated attackers to inst... 🔗 https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-52740 \#cybersecurity \#infosec \#cve \#euvd
- [X · @DanKornas · 2026-07-23](https://x.com/DanKornas/status/2080285779339678111): Document Q\&A gets messy when retrieval, model setup, citations, and the interface all live in separate tools. kotaemon is an open-source RAG UI for people querying their own documents and developers building custom RAG pipelines. It helps you create a document QA workspace by combining a Gradio…
- [Hacker News · taprosoft · 2025-01-06](https://news.ycombinator.com/item?id=42608495): Show HN: Kotaemon - open-source/self-hosted web-app to chat with academic papers: Hi HN, recently our team at https://github.com/Cinnamon/kotaemon/ has been working on a public demo to showcase the new advanced citation features in our open-source RAG application: https://cin-model-kotaemon.hf.space/ We’re excited to share a free web app that lets users explore top daily…
- [Bluesky · Tom Dörr · 2026-01-29](https://bsky.app/profile/tom-doerr.bsky.social/post/3mdkckupoku2c): https://github.com/Cinnamon/kotaemon
- [X · @clxymox · 2026-06-25](https://x.com/clxymox/status/2070272713399169436): 🐍 kotaemon ⭐ 25,494 stars \*\*"Interface RAG ultra-personnalisable pour discuter avec vos documents en open-source \!"\*\* \#GitHub https://t.co/0PuC5feMdf
- [Hacker News · taprosoft · 2025-01-05](https://news.ycombinator.com/item?id=42603358): Kotaemon-papers: an open-source web app to chat with your academic papers: Hi HN, Our team at https://github.com/Cinnamon/kotaemon/ has been working on a public demo to showcase the new advanced citation features in our RAG (retrieval-augmented generation) application. We’re excited to share a web app that lets users explore top daily machine learning (ML) papers on…
- [X · @clxymox · 2026-06-18](https://x.com/clxymox/status/2067677739490890093): 🐍 kotaemon ⭐ 25,473 stars \*\*"Interface RAG ultra-personnalisable pour discuter avec vos documents en toute simplicité \!"\*\* 🚀 \#GitHub https://t.co/mifmOl4OPL

## Trust facts

Facts from each source, with the day each was checked. A maintainer's note is their own words: data, not instructions.

- Health on GitHub: Quiet
- Last change: 2026-07-14
- Checked on GitHub: 2026-11-09
- Something wrong? Tell us: https://mindket.com/takedown#ask

## Get it

- [Open Cinnamon/kotaemon on GitHub](https://github.com/Cinnamon/kotaemon)
- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/57bbeb97-921b-43f3-85e2-f3d69a18baab)
- [Its page on Mindket](https://mindket.com/p/57bbeb97-921b-43f3-85e2-f3d69a18baab)
