tomoul cli

One binary. Local first.
Cloud when you need it.

A 12MB static Zig binary. tomoul serve bge-m3 runs locally on your laptop. --cloud points the same CLI at api.tomoul.ai with your API key. Same models, same API, only the compute moves.

$ brew install tomoul
# or, no Homebrew:
$ curl -fsSL https://tomoul.ai/install.sh | sh

Two modes. One tool.

Run locally for privacy and free. Flip a flag for cloud-grade scale.

local

tomoul serve bge-m3

Runs on your CPU, GPU, or Apple Silicon. No account. No telemetry.
$ tomoul serve bge-m3
Pulling baai/bge-m3...     done (1.2GB)
Compiling for Metal...     done
Loading weights...         done
 http://localhost:11434
 p95: 22ms · OpenAI-compat /v1
Press ^C to stop.
cloud

tomoul serve phi-4 --cloud

Same command, with --cloud. Routes to api.tomoul.ai using your API key.
$ tomoul serve phi-4 --cloud
Auth via $TOMOUL_KEY       ok
Region: eu-helsinki1
Routing /v1 → api.tomoul.ai
 http://localhost:11434
 p95: 178ms · 14B params · streaming
 Billed: $0.18/$0.54 per 1M tok

Built for builders.

OpenAI-compatible

Whether local or cloud, the CLI exposes /v1/chat/completions and /v1/embeddings. Point any OpenAI SDK at localhost:11434 and it just works.

12MB · zero deps

Single static Zig binary. No Python, no Node, no Docker. Runs on a Pi, a MacBook, or a bare-metal H100.

Apple Silicon native

First-class Metal support. M-series throughput within 18% of an A100 on bge-m3. Zero rosetta, zero ymalfs.

Pull any GGUF

tomoul pull hf://repo/model grabs from Hugging Face. tomoul pull tomoul://… grabs our quantised weights, often 30% smaller.

Doctor on board

tomoul doctor checks GPU drivers, KV-cache headroom, and quant compat. We tell you why a model won't run before you wait.

Cloud bridge

The --cloud flag turns the CLI into an authenticated client. Same model name, same flags — just a connection string change.

growth path

Start local. Scale without migrating.

The CLI is the same tool from your first brew install to your scale-up moment. We don't ask you to swap libraries when you outgrow your laptop.

1
brew install tomoul — 12MB, zero deps
2
tomoul serve bge-m3 — local on your laptop
3
Build your app against localhost:11434
4
Hit GPU memory? --cloud the model that won't fit
5
Same code, same API. grab a key