Install the kb binary from a GitHub Release. No Rust toolchain required.
Contributors who hack on the source: see Build from source or CONTRIBUTING.md.
| Platform | Archive | Binary inside |
|---|---|---|
| Linux x86_64 | glossa-{version}-x86_64-unknown-linux-gnu.tar.gz |
kb |
| Windows x86_64 | glossa-{version}-x86_64-pc-windows-msvc.zip |
kb.exe |
| macOS Apple Silicon | glossa-{version}-aarch64-apple-darwin.tar.gz |
kb |
| macOS Intel | glossa-{version}-x86_64-apple-darwin.tar.gz |
kb |
Replace {version} with the tag you download (e.g. 0.5.2 for release v0.5.2).
VERSION=0.5.2
TARGET=x86_64-unknown-linux-gnu # or aarch64-apple-darwin / x86_64-apple-darwin
curl -LO "https://github.com/metalmon/glossa/releases/download/v${VERSION}/glossa-${VERSION}-${TARGET}.tar.gz"
tar -xzf "glossa-${VERSION}-${TARGET}.tar.gz"
sudo install -m 755 "glossa-${VERSION}-${TARGET}/kb" /usr/local/bin/kb
kb --version$Version = "0.5.2"
$Zip = "glossa-$Version-x86_64-pc-windows-msvc.zip"
$Url = "https://github.com/metalmon/glossa/releases/download/v$Version/$Zip"
Invoke-WebRequest -Uri $Url -OutFile $Zip
Expand-Archive -Path $Zip -DestinationPath "$env:ProgramFiles\glossa" -Force
# Add to PATH (current user):
[Environment]::SetEnvironmentVariable("Path", $env:Path + ";$env:ProgramFiles\glossa\glossa-$Version-x86_64-pc-windows-msvc", "User")Adjust paths if you install elsewhere.
Scripts download the same release artifacts and register a background MCP server:
| Platform | Path | Guide |
|---|---|---|
| Linux | deploy/ansible/ |
Ansible playbook + systemd |
| Windows | deploy/windows/ |
PowerShell + Windows Service |
| macOS | deploy/macos/ |
Shell script + launchd |
See deploy/service.md for an overview.
Point glossa at any folder that contains your documents (PDF, Office, Markdown, text, etc.):
mkdir -p ~/Documents/my-kb
# copy or symlink your files into ~/Documents/my-kb
kb index ~/Documents/my-kbThis creates ~/Documents/my-kb/.glossa/ (index + graph). Your files stay the source of truth — deleting .glossa/ only loses derived state; re-run kb index to rebuild.
Quick sanity check:
cd ~/Documents/my-kb
kb search "connection timeout"
kb grep maxTsdrAfter the first index, MCP and CLI calls auto-refresh when files change — you usually do not need to re-run kb index manually.
Once indexed, attach the corpus to Claude, Cursor, ZeroClaw, or any MCP client:
git clone https://github.com/metalmon/glossa.git
cd glossa
cargo build --release
# binary: target/release/kb (or target\release\kb.exe on Windows)See getting-started.md for the full developer workflow.
- connect-to-agents.md — Claude Desktop, Cursor, ZeroClaw
- deploy/service.md — run as a system service
- mcp.md — tool reference
- integrations/zeroclaw.md — ZeroClaw MCP config