Argo Knowledge RAG

Argo Knowledge RAG

A local-first RAG (Retrieval-Augmented Generation) system that turns your markdown knowledge base into a semantically searchable index. Built for privacy-conscious users who want powerful search without sending data to the cloud.

The Problem

I have 3,000+ markdown files across multiple Obsidian vaults. Conversations, debugging sessions, technical documentation, legal notes. Finding anything meaningful with keyword search is nearly impossible when you’re looking for “that conversation about Docker networking where I fixed the bridge issue” and all you remember is it was sometime last summer.

The Solution

# Index your vault (one-time)
argo-rag index --vault ~/Vaults/knowledge-base

# Search with natural language
argo-rag search "docker bridge networking problems"

No cloud APIs. No subscription. No sending private documents to external servers.

Architecture

┌─────────────────────────────────────────────────────────────┐
│                     Argo Knowledge RAG                       │
├─────────────────────────────────────────────────────────────┤
│                                                              │
│  ┌──────────┐    ┌──────────┐    ┌──────────┐               │
│  │ Markdown │───▶│ Chunker  │───▶│ Embedder │               │
│  │  Files   │    │          │    │ (GPU/CPU)│               │
│  └──────────┘    └──────────┘    └────┬─────┘               │
│                                       │                      │
│       ┌─────────────────────────────────────┐               │
│       │          ChromaDB Index             │               │
│       │  - Vector embeddings                │               │
│       │  - Document metadata                │               │
│       │  - Cosine similarity search         │               │
│       └─────────────────────────────────────┘               │
│                       │                                      │
│       ┌───────────────┼───────────────┐                     │
│       │               │               │                     │
│  ┌────▼────┐    ┌────▼────┐    ┌────▼────┐                 │
│  │   CLI   │    │ Web UI  │    │REST API │                 │
│  └─────────┘    └─────────┘    └─────────┘                 │
│                                                              │
└─────────────────────────────────────────────────────────────┘

Features

  • Local-first: All processing on your machine. Data never leaves.
  • GPU accelerated: ~30 minutes to index 3,000 files on RTX 4070 Ti
  • Obsidian native: Extracts frontmatter, preserves folder structure
  • Smart chunking: Respects paragraph and code block boundaries
  • Multiple interfaces: CLI, Web UI, REST API
  • Docker ready: One-command deployment

Quick Start

Docker

git clone https://github.com/lazarusoftheshadows/argo-knowledge-rag.git
cd argo-knowledge-rag

export VAULT_PATH=~/your-obsidian-vault
docker-compose up -d
# Open http://localhost:8000

Local Install

pip install argo-knowledge-rag
argo-rag index --vault ~/Vaults/my-vault
argo-rag web

Performance

HardwareIndex Time (3000 files)Search Latency
RTX 4070 Ti~35 minutes<100ms
CPU Only~2 hours<150ms

Why This Exists

OpenWebUI’s knowledge feature chokes on large file counts.

Obsidian search is keyword-only — useless for semantic queries.

Cloud RAG services require sending your data externally.

This runs entirely local, uses your GPU, and handles thousands of files.

Try the Demo

A live demo with sanitized technical content is available at the demo link above. Search for things like “gentoo emerge” or “kubernetes networking” to see it in action.