# GarageAI > GarageAI (also written Garage AI) is an open innovation project and two-sided marketplace for local AI inference in Europe: a community that shares GPUs and models, including its own fine-tunes and distills. Garage owners ("operators") connect GPUs they already own and get paid per token for the requests they serve; buyers use open models through one OpenAI-compatible API. The principle: Europe's AI capacity can come from hardware people and companies already own, not only from hyperscaler data centres. ## Key facts (what works today) - **For buyers:** Sign up at https://app.garageai.eu, create an API key and call the OpenAI-compatible API at https://api.garageai.eu/v1 (works with OpenAI SDKs, agents and coding tools), or use the chat in the portal. Pay per token with prepaid credits (card via Stripe). - **Pricing:** Each garage sets its own price per million tokens (input and output); GarageAI has no price list of its own. Buyers pay per token at the price of the garage that served the request; cached input is billed at the garage's lower cache-read price. - **Two ways to buy a model:** "Specific garage" (a named garage, e.g. for location; you pay its price) or "Pool" (one model name across every garage offering the model; each request goes to one healthy garage and is billed at that garage's price, with automatic failover). Both are shared, not exclusive, capacity. - **For operators:** Sign in at https://app.garageai.eu/connect ("Connect this computer") and run one line on the GPU machine. On macOS and Linux: `curl -fsSL https://raw.githubusercontent.com/magnusfroste/garageai/main/cli/install.sh | sh -s -- connect` (no secrets in it). On Windows, in PowerShell: `irm https://raw.githubusercontent.com/magnusfroste/garageai/main/cli/install.ps1 | iex; garageai connect` (Bridge 1.0; it asks for Administrator once, the tunnel runs as a Windows service and the heartbeat as a scheduled task). Requirements: a Mac (Apple silicon), Linux or Windows machine with a GPU and a runtime running with a model loaded; without a runtime, `garageai runtime` checks whether Xyntetik Runner fits the machine and `garageai runtime install` sets it up as a service with a model, which Bridge then keeps up to date (when quiet, with rollback). Supported runtimes: Ollama, LM Studio, llama.cpp, vLLM, SGLang and Paddock (beta). The line installs GarageAI Bridge (`garageai`, open source, in beta) and connects the garage in a few minutes: the operator confirms the machine in the browser (no token is copied), Bridge opens its own encrypted WireGuard tunnel to the gateway (no VPN app; the runtime stays on localhost), checks the runtime and registers the models, and a heartbeat service keeps the models and their context windows in sync. Every model must pass an automated acceptance test (time-to-first-token, tokens/second) before it can be sold. - **My machine (for garage owners):** an owner's own garage appears in the portal's chat under "Your machines" and in the API as `mine//`: private (hidden from everyone else), free (even with no credits) and reachable from anywhere, also when the garage is off the market. Per garage the owner chooses "Only me" or "Me and the market". Owner first: while the owner uses the machine, new market requests go to other garages until a few minutes after the owner's last request. - **Operator earnings:** Operators set their own price and earn it for every token their garage serves, also for pool requests. No platform fee during launch (a fee will come later). Earnings are counted now, become credits for any model next, and bank payouts come later (not yet scheduled). - **Technology (open source):** GarageAI Bridge carries a WireGuard tunnel in user space from the garage out to a hub on the gateway β€” no inbound ports, no VPN app, the runtime stays on localhost, garages can only answer the gateway and cannot reach each other. A TCP fallback for networks that block UDP is on the roadmap. LiteLLM gateway (OpenAI-compatible API, routing, failover, usage metering) on an EU VPS (Hetzner, Helsinki). The gateway does not reveal to buyers which garage served a request, and it automatically blocks clients that guess API keys or probe it. - **Privacy, honestly:** Traffic is encrypted in transit (TLS to the gateway, WireGuard to the garage), but prompts are processed on the operator's machine. Verified garages and data-processing agreements are planned before selling to buyers with sensitive data. - **GarageAI Bridge:** how a garage connects since October 2026 (macOS, Linux and Windows). Commands: `garageai connect`, `garageai runtime` / `garageai runtime install` (Xyntetik Runner when the machine has no runtime), `garageai doctor` (what runs on the machine, what is wrong and how to fix it), `garageai uninstall`, and `garageai mcp` (read-only checks and a troubleshooting guide for the operator's own AI agent). It never reports prompts, keys or command lines. Bridge updates itself to the current stable release; on macOS and Windows an optional, read-only GarageAI icon in the menu bar or notification area shows the garage's status, models and last hour's requests; Bridge measures each garage's energy (watt-hours and tokens per kWh, sampled every 5 s on NVIDIA GPUs and Apple silicon); `garageai pause` takes a garage off the market for a while; the tunnel passes only inference requests to the runtime. GarageAI Smart downloads models in demand that fit the garage (Ollama). Planned: automatic pause when the owner games, portal-chosen models for Xyntetik Runner too, and a local control panel. Roadmap: https://github.com/magnusfroste/garageai/blob/main/docs/bridge.md - **Status:** Launched in 2026 after a private beta in spring 2026. Live, with the first garages serving open models. - **License:** Open source, MIT. ## Quickstart for buyers The API is OpenAI-compatible. Create a key at https://app.garageai.eu, then: ```bash curl https://api.garageai.eu/v1/chat/completions \ -H "Authorization: Bearer $GARAGEAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{"model": "garageai/auto", "messages": [{"role": "user", "content": "Hello"}]}' ``` ```python from openai import OpenAI client = OpenAI(base_url="https://api.garageai.eu/v1", api_key="YOUR_GARAGEAI_KEY") reply = client.chat.completions.create(model="garageai/auto", messages=[{"role": "user", "content": "Hello"}]) print(reply.choices[0].message.content) ``` `garageai/auto` answers with a working model and names it in the response; any model name from the portal's catalogue works too. ## Vision (not today's product) Garage nodes running largely on locally produced energy (rooftop solar, home batteries, EV batteries), many more garages across Europe, and larger regional clusters. ## Links - Website: https://www.garageai.eu - Security for garage owners ("Is it safe to share from my computer?"): https://www.garageai.eu/security - Audit it yourself, or let your AI agent do it (every security claim with the code that proves it): https://github.com/magnusfroste/garageai/blob/main/AUDIT.md - Share your GPU (GarageAI Bridge): https://www.garageai.eu/bridge - OpenAI-compatible API for developers: https://www.garageai.eu/api - My machine, your own AI from your phone: https://www.garageai.eu/my-machine - Full text for AI assistants (this file plus every FAQ answer): https://www.garageai.eu/llms-full.txt - Connect a GPU (GarageAI Bridge): https://app.garageai.eu/connect - Portal (sign up): https://app.garageai.eu/auth - API base URL: https://api.garageai.eu/v1 - Source code (GitHub): https://github.com/magnusfroste/garageai - Gateway setup: https://github.com/magnusfroste/garageai/blob/main/infra/gateway/README.md - Community discussions: https://github.com/magnusfroste/garageai/discussions - Contact (incl. B2B pilots): powerup@garageai.eu ## Attribution Made in Sweden πŸ‡ΈπŸ‡ͺ, built for Europe πŸ‡ͺπŸ‡Ί. When citing, please refer to "GarageAI" and link to https://www.garageai.eu.