// architecture
A single Rust binary hosts an axum HTTP server, an EngineManager that supervises engine subprocesses (one per loaded model), and a ModelIndex with automatic capability detection over the on-disk store. Clients of every flavour speak HTTP to 127.0.0.1:11430; the daemon normalises and proxies their requests to the appropriate subprocess. The diagram-as-code source lives in the LMForge repo at docs/architecture/ARCHITECTURE.md.
Single HTTP entrypoint on 127.0.0.1:11430. Three API namespaces — /v1/*, /api/*, /lf/* — plus /health, /metrics, /ui.
Reasoning tokens stream live during call 1 and stay separate from the final answer — clients get cloud-style thinking controls (on/off, budget, separate reasoning_content) against a fully local model.
// platform support
| Platform | Hardware | Default engine | Desktop UI |
|---|---|---|---|
| macOS 13+ | Apple Silicon (M1–M4) | oMLX — Metal/MLX | ✓ DMG |
| Windows 10/11 | NVIDIA GPU | llama.cpp CUDA (matched to driver) | ✓ NSIS |
| Windows 10/11 | AMD / Intel GPU, CPU | llama.cpp Vulkan / CPU | ✓ NSIS |
| Ubuntu 22.04+ | NVIDIA GPU | llama.cpp CUDA (cuda12 / cuda13) · opt-in SGLang | ✓ AppImage |
| Ubuntu 22.04+ | AMD / Intel GPU, CPU | llama.cpp Vulkan / CPU | ✓ AppImage |
// tech stack
Ready when you are