Install Feather DB.
Feather v0.16.0 ships as a native Python binding with a C++ core, a lightning-fast Rust CLI, and the Cloud Edition Docker image with the Atlas admin SPA. New in v0.16: persisted HNSW graph (5–25× faster cold load), adaptive index capacity (7.7× less RAM). New in v0.15: in-RAM int8 quantization, real embedders via --embed-provider, and MCP remote backend for Claude Desktop/Code. One of the paths below has you running in under 5 minutes.
Cloud Edition (Docker)
feather-api + Atlas admin SPA
Run the managed-style REST server with the brand-aligned admin SPA at /admin/. One-call ingest_text, pluggable embeddings (OpenAI · Azure · Gemini · Voyage · Cohere · Ollama), ring-buffer observability. Compiles the C++ wheel inside the container — no host toolchain required.
git clone https://github.com/feather-store/feather.git
cd feather
docker compose -f feather-api/docker-compose.yml build
FEATHER_API_KEY="feather-$(openssl rand -hex 16)" \
docker compose -f feather-api/docker-compose.yml up -d
# health check
curl -sf http://localhost:8000/health
# → {"status":"ok","version":"0.16.0","namespaces_loaded":0}
# admin SPA
open http://localhost:8000/admin//admin/Atlas-style SPA — records, search, schema, hierarchy, graph, context, consolePOST /v1/{ns}/ingest_textembed + store in one call via your configured providerGET /v1/admin/metricsp50/p95/p99 latency + ops counts from the in-memory ring buffer
MCP Remote Backend (Claude Desktop / Code)
feather-serve + MCP connector
Run feather-serve as an MCP server and connect it to Claude Desktop or Claude Code as a persona context engine. Supports local .feather files or remote Cloud API. Real embedders via --embed-provider make persona recall fully semantic — no manual embedding calls needed.
pip install feather-db
# Local .feather file — semantic recall via Gemini
GOOGLE_API_KEY=… feather-serve myagent.feather \
--embed-provider gemini --dim 768 --port 8001
# Or point at Feather Cloud
feather-serve --api-url https://your-cloud-host.example.com \
--embed-provider openai --dim 1536 --port 8001{
"mcpServers": {
"feather-persona": {
"url": "http://localhost:8001/mcp"
}
}
}geminitext-embedding-004 · 768 dim · native Feather formatopenaitext-embedding-3-small/large · 1536 or 3072 dimvoyagevoyage-3 · 1024 dimcohereembed-v4 · 1024 dimollamaany local model · fully offline
In-RAM int8 Quantization
set_int8_ram() — v0.15.0
Quantize vectors in RAM to int8 after loading. At 60k × 768-dim, RAM drops from 227 MB to 129 MB (~1.7×). Recall@10 stays at ~0.88. File format bumped to v8; v3–v7 files load transparently.
import feather_db as fdb
db = fdb.DB.open("large.feather", dim=768)
db.set_int8_ram("text", max_abs=1.0) # quantize the "text" modality in RAM
# All searches now use int8 vectors — same API, less memory
results = db.search(query_vec, k=10)227 MB → 129 MBat 60k × 768-dim float32~0.88 recall@10vs 0.972 for float32 — acceptable for most workloadsfile format v8backward-compatible; v3–v7 load automatically
Python (recommended)
Python client
The standard way to integrate Feather into an LLM or embedded vector workflow. Ships wheels for macOS, Linux, and Windows.
pip install feather-dbPython 3.8+any modern CPython buildNumPy 1.22+for vector conversions
Rust CLI
feather CLI
A single static binary for ingestion, debugging, and CI/CD. Compiles fast, drops in anywhere.
cargo install feather-db-cli
# or
curl -sSf https://get.feather.store | shgit clone https://github.com/feather-store/feather.git
cd feather/cli
cargo build --releaseJavaScript (beta)
Node / Bun wrapper
Native bindings via N-API. Works in Node 20+, Bun 1.1+, and Deno (via npm specifier).
pnpm add feather-db
# or
bun add feather-db