EWACS
Run open models on your own terms.
A self-hosted model server that speaks the Ollama and OpenAI APIs unchanged — with a commercial-use-aware marketplace built in, so the models you ship are licensed to ship.
One daemon. Two APIs. Your infrastructure.
Point any Ollama or OpenAI client at EWACS and it just works — then add the things Ollama doesn't give you.
Ollama-compatible
The full /api/* surface — generate, chat, embeddings, tags, show, pull, create — with byte-for-byte streaming.
OpenAI surface
/v1/chat/completions with SSE, plus completions, embeddings, and models. Your OpenAI SDK doesn't know the difference.
Licensed to ship
A curated marketplace of open models whose licenses permit commercial use — gated, so you never serve what you can't.
Pluggable inference
Engines sit behind a trait. Swap or add a backend without touching the API or model-management layers.
Self-hosted
Your weights, your hardware, your network. Runs as a service on Windows and Linux; macOS best-effort.
Marketplace + fallback
Pull from your marketplace first; on a miss it ports a permitted model in from upstream, then serves it.
Up and serving in a minute.
Rust stable is the only prerequisite for the default build — no C/C++ toolchain required.
# build the daemon (binary is `ewacs`) cargo build --release # run it (dev marketplace + placeholder backend) EWACS_MOCK_MARKETPLACE=1 ./target/release/ewacs # in another terminal — pull a model and generate curl -X POST localhost:11434/api/pull -d '{"name":"demo"}' curl -X POST localhost:11434/api/generate \ -d '{"model":"demo","prompt":"hello world","stream":false}' # OpenAI clients work against the same port, unchanged curl -X POST localhost:11434/v1/chat/completions \ -d '{"model":"demo","messages":[{"role":"user","content":"hi"}]}'
Pull models you're allowed to use.
EWACS pulls from a curated marketplace of open-source models whose licenses permit commercial use. When a model isn't in the catalog yet, the marketplace checks upstream, evaluates the license, and — if it passes the gate — ports it in and serves it. The license travels with the model, and a non-commercial license is a hard stop, not a footnote.