-
Notifications
You must be signed in to change notification settings - Fork 0
Determinism and Local Only
Two design choices define how Columbus behaves: it is deterministic and it is local-only.
There is no LLM in Columbus. Search embeds the query with a fixed, bundled on-device model and ranks by vector similarity re-scored with deterministic heuristics — the "why relevant" text and risk hints are heuristic too. The same query against the same tree (and the same model) produces the same result, in the same order, every time.
$ columbus search "parse config" --json | sha256sum
$ columbus search "parse config" --json | sha256sum # identicalWhy this is valuable:
- Reproducible — a result you can reproduce is a result you can debug.
-
Auditable — the
whyfield explains every hit (exact name match,signature match, …). - Cache-friendly — agents and tools can rely on stable output.
- No surprise drift — output changes only when your code or query changes.
Vector (semantic) similarity blended with deterministic heuristics: exact /
prefix / signature name matches, symbol role (impl weighted over test/doc), and
content density. Scores and the why string are emitted with every hit so the
ranking is never a black box.
Columbus runs entirely on your machine.
- No network calls. It works offline. Nothing about your code leaves the host.
- On-device embeddings. The vector model (bge-small-en-v1.5, via ONNX) runs locally; code is never shipped to a cloud to be vectorized.
- No API keys, no per-query cost. There is nothing to bill.
- Private by default. The database lives in your OS data dir; config is git-excluded.
The only hard runtime dependency is git. The onnxruntime shared library
enables semantic search (bundled in release archives; search falls back to
keyword without it). ripgrep is a recommended fast-path (pure-Go fallback
otherwise) and ast-grep is optional.
Deterministic + local-only means an agent gets context that is fast, free, private, and reproducible — the opposite of fuzzy, cloud-dependent, pay-per-query similarity search.
How Columbus Works · Never Stale: Live Reconstruction · Scope Boundary
Columbus — the navigator your coding agent has been missing · local-only, deterministic code context · Repository · Issues · MIT License
Getting started
Concepts
Guides
- Using Columbus with Your Agent
- Searching Effectively
- Navigating Code
- Project Memory
- Tracking Work: Epics, Stories & Tasks
- Keeping the Index Fresh
Command reference
Reference
- Output Modes
- JSON Contract & Errors
- Exit Codes
- Configuration
- Supported Languages
- Color & Environment
Project