-
Notifications
You must be signed in to change notification settings - Fork 0
Installation
Rafael Fragoso edited this page Jun 7, 2026
·
3 revisions
Columbus is a single Go binary. It is always built with -tags fts5 and
CGO_ENABLED=1 (tree-sitter and SQLite are C libraries).
| Requirement | Why |
|---|---|
| Go 1.26+ | Build toolchain |
| A C compiler (cgo) | tree-sitter + SQLite/FTS5 |
| git | The only hard runtime dependency — Columbus anchors the index to git state |
| ripgrep (recommended) | Search fast-path; a pure-Go fallback covers the rest |
| ast-grep (optional) | Optional structural matching |
CGO_ENABLED=1 go install -tags fts5 github.com/orafaelfragoso/columbus/cmd/columbus@latestThis installs columbus into $(go env GOPATH)/bin. Make sure that directory
is on your PATH:
export PATH="$(go env GOPATH)/bin:$PATH"git clone https://github.com/orafaelfragoso/columbus
cd columbus
brew install zig goreleaser ripgrep ast-grep # build/dev toolchain (macOS)
make install # -> ~/.local/bin/columbus (override with PREFIX=/usr/local/bin)make build drops the binary in dist/columbus; make install puts it on your
PATH (PREFIX defaults to ~/.local/bin).
columbus version
columbus doctordoctor confirms your environment is ready — git, ripgrep, ast-grep, the
embedded grammars, and (inside a project) the database and index. See
Command: doctor.
[ok] columbus version 0.1.0
[ok] git /usr/bin/git
[ok] ripgrep /usr/bin/rg
[ok] ast-grep /usr/local/bin/ast-grep
[ok] grammars 6 languages loaded
healthy
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