Skip to main content

RAGLite

RAGLite: Compress first. Index second.

RAGLite is a local-first CLI that turns a folder of docs (PDF/HTML/TXT/MD) into structured, low-fluff Markdown — and then makes it searchable with Chroma 🧠 + ripgrep 🔎.

Security note (prompt injection)

RAGLite treats extracted document text as untrusted data. If you distill content from the web (or any third party), assume it may contain prompt injection attempts. The distillation prompts explicitly instruct the model to ignore any instructions inside source material and treat sources as data only.

Core idea: compression-before-embeddings ✂️➡️🧠

RAGLite workflow: condense, index, query

What you get

For each input file:

  • *.execution-notes.md — practical run/operate notes (checks, failure modes, commands)
  • *.tool-summary.md — compact index entry (purpose, capabilities, entrypoints, footguns)

Optionally:

  • raglite index stores embeddings in Chroma 🧠 (one DB, many collections)
  • raglite query runs hybrid search 🔎 (vector + keyword)

Why local + open-source?

If you want a private, local setup (no managed “fancy vector DB” required), RAGLite keeps everything on your machine:

  • Distilled Markdown artifacts are plain files you can audit + version control
  • Indexing uses Chroma (open-source, local) and keyword search uses ripgrep
  • You can still swap in a hosted vector DB later if you outgrow local

Engines

RAGLite supports two backends:

  • OpenClaw (recommended): uses your local OpenClaw Gateway /v1/responses endpoint for higher-quality, format-following condensation.
  • Ollama: uses POST /api/generate for fully local inference (often less reliable at strict templates).

Prereqs

  • Python 3.11+
  • An LLM engine:
    • OpenClaw (recommended) 🦞, or
    • Ollama 🦙
  • For search:
    • Chroma (open-source, local) 🧠 at http://127.0.0.1:8100

Install

# from repo root
python3 -m venv .venv
source .venv/bin/activate
pip install -e .

Quickstart (60s)

# 0) Setup
cd ~/Projects/raglite
source .venv/bin/activate

# 1) Condense → Index (one command)
raglite run /path/to/docs \
  --out ./raglite_out \
  --engine ollama --ollama-model llama3.2:3b \
  --collection my-docs \
  --chroma-url http://127.0.0.1:8100 \
  --skip-indexed

# 2) Query
raglite query ./raglite_out \
  --collection my-docs \
  "rollback procedure"

Usage

1) Distill docs ✍️

raglite condense /path/to/docs \
  --out ./raglite_out \
  --engine openclaw

(Or fully local: --engine ollama --ollama-model llama3.2:3b.)

2) Index distilled output (Chroma)

raglite index ./raglite_out \
  --collection my-docs \
  --chroma-url http://127.0.0.1:8100

3) Query (hybrid)

raglite query ./raglite_out \
  --collection my-docs \
  --top-k 5 \
  --keyword-top-k 5 \
  "rollback procedure"

Useful flags

  • --skip-existing : don’t redo files that already have both outputs
  • --skip-indexed : don’t re-embed chunks that are already indexed
  • --nodes : write per-section nodes + per-doc/root indices
  • --node-max-chars 1200 : keep nodes embed-friendly
  • --sleep-ms 200 : throttle between files (helps avoid timeouts)
  • --max-chars 180000 : cap extracted text per file before summarizing

Output layout

RAGLite preserves folder structure under your --out dir:

<out>/
  some/subdir/file.execution-notes.md
  some/subdir/file.tool-summary.md

(Default output folder is `./raglite_out`.)

Notes / gotchas

  • PDF extraction is best-effort: scanned PDFs without embedded text won’t be great.
  • If you use --engine openclaw, pass --gateway-token or set OPENCLAW_GATEWAY_TOKEN.
  • Indexing defaults to high-signal artifacts (nodes/summaries/notes) and skips *.outline.md unless you opt in.

Roadmap

Current (implemented)

  • condense — condense/summarize documents into Markdown artifacts
  • index — chunk + embed + store in Chroma collections
  • query — retrieve relevant chunks (vector + keyword)
  • run — one-command pipeline (condense → index)
  • Outline + nodes + indices: --outline, --nodes, root index.md + per-doc *.index.md

Next (near-term)

  • Detect deletions (prune removed chunks from Chroma)
  • Batch upserts to Chroma for speed
  • Better query output formatting (snippets + anchors)
  • raglite doctor (dependency checks)

(Full: ROADMAP.md)


Built to turn “docs” into usable, searchable tool knowledge.

Metadata

Release files for raglite-chromadb 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for raglite-chromadb 1.0.2
File Size Uploaded
raglite_chromadb-1.0.2.tar.gz 19.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for raglite-chromadb 1.0.2
File Interpreter ABI Platform
raglite_chromadb-1.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 39.6 kB

Release files / raglite_chromadb-1.0.2.tar.gz

Download URL raglite_chromadb-1.0.2.tar.gz
Size 19.8 kB
Tags Source
SHA-256 checksum
How to use checksums
2502fe9ca9c13809c74e929064cd78cc913de5a6e1890289e06eac6bb8747c87
BLAKE2b-256 checksum
How to use checksums
f6b14c2c772ae423105c1780e9c0f8d02d646a48e291de1c8848e121478ce720
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release files / raglite_chromadb-1.0.2-py3-none-any.whl

Download URL raglite_chromadb-1.0.2-py3-none-any.whl
Size 19.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f9ad1e4a143213a0714a715cfeb593d22e9d529e63e74b90b6763db5b3d2c85c
BLAKE2b-256 checksum
How to use checksums
88d16b976a0abf7d995fdc533455c9612a4734d53d85c8ffc7eea95e9f4fc2c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 9, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 release files

1.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page