Install¶
WARM is a Rust engine. Use it directly, install the Node bindings, connect an editor through MCP, or call a self-hosted server from Python. Choose an integration before installing. Package installation needs network access; the engine can run offline after installation.
Requirements¶
| You need | For |
|---|---|
| Rust 1.89 or newer (the MSRV) | the Rust crate, the HTTP server and the Node build |
| Node 22 or newer | the Node bindings; Node 24 for the quickstart, which uses node:sqlite |
| Python 3.10 or newer | the Python SDK (warm-python needs 3.9) |
For Python, create and activate a virtual environment first: uv venv, then source .venv/bin/activate (PowerShell: .venv\Scripts\Activate.ps1).
Install for your runtime¶
default = []: nothing is on unless you ask. Turn on what you need, for example cargo add warm-rust --features security for AES-256-GCM stores and signed audit logs. Every feature, what it turns on and whether it is experimental: Cargo features.
The Python SDK is an HTTP client for warm-server, which holds the engine and stores the vectors you supply:
Build and start the server from a checkout, then point the client at it:
git clone https://github.com/writerslogic/warm
cd warm
cargo build --release --features server --bin warm-server
WARM_API_KEY=change-me target/release/warm-server --input-dim 384
The warm-python wheel provides native vector search and phase vectors, imported as writerslogic_warm. It does not include document search.
Check that it works¶
The quickstart runs a full ingest and search against the same checkout.
The Python check verifies the SDK import; it does not contact the server. For a complete round trip, run the Python tab in the quickstart.
Connect an editor¶
Run the separate MCP launcher from npm:
To build warm-mcp from this checkout instead and configure your editor to launch its absolute path:
Follow the editor setup guide for your host. The MCP reference covers tools, storage and shared HTTP access.
If setup fails¶
See troubleshooting for import errors, missing native binaries, server authentication, vector dimensions and locked stores.