threads
threads

BE-1Local LLM fleet / Agent infrastructure

belt

Status
Shipped
License
BSL 1.1 — free non-production, commercial license
Runtime
Bun + MLX (rapid-mlx), Apple Silicon
Fleet
Code · extract · reason · Danish · rerank, on :8901–:8913
Measured on
M5 Max, 128 GB unified memory
The namesake / A worn cognac belt, coiled. Antique brass buckle.
The namesake / A worn cognac belt, coiled. Antique brass buckle.

The fleet your agents call.

Five parallel Claude Code lanes hit :8901 at once. Nobody waits on a remote round-trip for a four-line extraction, and nobody notices the cloud is down. Belt is a swarm of MLX specialists on localhost — code, extract, reason, rerank — behind a deterministic keyword router.

The swarm.

Port and model pairs exist in one registry; the lifecycle and the router both read it. Change a model there and everything follows.

8901
Code — Qwen3-Coder-30B, 16 GB, resident.
8902
Extract — Qwen3-4B, 2 GB, resident.
8903
Reason — Qwen3.5-35B, 20–38 GB, resident.
8906
Danish and general — Qwen3.5-9B, 5.6 GB, on demand.
8913
Rerank — Qwen3-Reranker-0.6B, 1 GB, resident.

Kept warm.

Idle MLX weights page out, and the first token after an idle stretch pays a 27–50 second paging stall. Suspenders' keepwarm pings the resident ports every four minutes so the weights stay paged in. Belt stays warm because the control plane never lets it cool.

The router.

A deterministic keyword router sends each request to its specialist — no model decides where a request goes. One switch, set-cloud.ts off, keeps everything local: the agent fleet keeps working when the cloud doesn't.

Measured.

Every benchmark run is logged to benchmarks.jsonl — prompts, medians, labels. Nothing is remembered from vibes.

The trio.

suspenders
The control plane — sessions, claims, the work graph, the fleet board.
belt
The local LLM fleet — specialists, router, benchmark rig.
speedy-claude
The speed and safety layer — skills, hooks, personas, settings. Installs both.

Why belt.

Belt and suspenders: suspenders catches the stalled lane, belt does the lifting underneath. The models live on your machine — no API keys, no rate limits, no one else's uptime.

Getting started.

Requires a Mac on Apple Silicon, Bun, and roughly 64 GB of memory headroom for the resident tier — measured on an M5 Max with 128 GB. ./install.sh deploys the fleet; --with-launchd keeps it alive across reboots. BSL 1.1 — free for non-production use, commercial license for the rest.

Project context & license

Part of the trio with suspenders and speedy-claude; the three share the runtime path at ~/.claude/local-llm/. BSL 1.1 — free for non-production use, commercial license available.

github.com/klh/belt ↗github.com/klh/suspenders ↗github.com/klh/speedy-claude ↗
threads © 2026[email protected] ↗Colophon