HarborRAG is a modular, provider-agnostic RAG framework for engineering knowledge. It ingests from the systems your team already uses and resolves retrieval against the authoritative current document version, so a superseded version cannot be cited even while a reindex is in flight.
It is alpha software. The adapter layer contains real connectors, parsers, model clients, and storage providers; the runtime composes ingestion, retrieval, and chat behind the HTTP and CLI surfaces, and retrieval behind the MCP surface.
| You want to… | Go here |
|---|---|
| Understand what it does before installing | What is HarborRAG? |
| Get it running | Quick Start |
| Add it to an existing project | Installation |
| Use it as a Python library | Python SDK |
| Connect an IDE or agent | MCP Tools |
The Quick Start has two paths. Path A takes about five minutes and needs no Docker, no credentials, and no services - it confirms the install and shows the parser working. Path B brings up the full local stack for real ingestion, retrieval, and chat.
Every credential lives in an ignored env/ folder that you create once with
scripts/deployment/dev.sh bootstrap. Two values there have no safe default:
HARBORRAG_SECRETS_ENCRYPTION_KEY in env/.env.database - ships empty, and Docker
Compose refuses to start until you set it (openssl rand -hex 32).HARBOR_CHAT_* and HARBOR_EMBED_* values in env/.env.models - the active
model catalog expands references eagerly, so a missing embedding variable fails exactly
as hard as a missing chat one.Quick Start step 5 walks through both.