Run Claude Code, Codex CLI, and VS Code Copilot Chat with local models on your Mac.
| Your tool | What you run |
|---|---|
| Claude Code | claude-local |
| Codex CLI | codex-local |
| VS Code | local models in Copilot Chat |
Local models. Local data. One configuration.
ailocal runs the coding tools you already use against models on your own machine. Nothing is sent to Anthropic or OpenAI, and there is nothing to pay per token.
What it configures for you: the models, the local API they are served on, and every supported client you have installed. You do not edit a config file by hand.
What it does not do: install software. You install the prerequisites and whichever clients you want; ailocal detects what is present and configures it.
Supported clients — all optional:
- Claude Code — run
claude-local - Codex CLI — run
codex-local - VS Code Copilot Chat — pick an
ailocal-*model in the chat model picker
Requirements: macOS on Apple Silicon, 16 GB unified memory minimum.
If you do not have Homebrew, install it first from brew.sh.
Docker Desktop and Ollama are required. They run the models and the local API; ailocal cannot work without them.
brew install --cask docker-desktop ollama-appNow open Docker Desktop and Ollama once, from your Applications folder. Both need one manual launch before anything can use them.
pipx is how you install ailocal, not something ailocal needs at runtime:
brew install pipxYou do not need to install Python or set up a virtual environment. Homebrew's pipx brings its own Python and keeps ailocal isolated for you.
Install whichever you want to use, or none. You can add one later at any time.
brew install --cask claude-code # Claude Code
brew install --cask codex # Codex CLI
brew install --cask visual-studio-code # VS Code Copilot ChatIf you install VS Code, open it once — it creates its settings folder on first launch, and ailocal cannot configure it before that.
ailocal works with no client at all: it still serves a local OpenAI- and Anthropic-compatible API at http://127.0.0.1:4000 for any app you point at it.
pipx install git+https://github.com/DevelopSolutionsLLC/ailocal.git
ailocal installailocal install measures your Mac, picks models that fit its memory, downloads them, starts the services, and configures the clients it finds. It will ask you before touching any client configuration.
Expect a download of roughly 6–40 GB of models, depending on your Mac. Run it once; it is safe to re-run.
ailocal checkSuccess is CHECK: OK on the last line. The report is grouped by area; the Clients group shows what ailocal did with each supported client:
Clients
✓ Claude Code configured
— Codex CLI not installed (optional)
→ brew install --cask codex
✓ VS Code configured
✓— configured and working.—— not installed. Not an error: ailocal left it alone. Install it and runailocal clientsif you want it.⚠— advisory. The line below it is the exact command that fixes it.
Open a new terminal, then:
claude-local # Claude Code, against your local models
codex-local # Codex CLI, against your local modelsInstalled a client after ailocal? Run ailocal clients and it picks it up.
ailocal configures everything on the VS Code side except the key itself. VS Code keeps model API keys in its own encrypted storage, and offers no supported way for another program to write to it — so this one step is yours. It is a limitation of the VS Code boundary, not something ailocal skipped.
grep LITELLM_MASTER_KEY ~/.config/ailocal/.envThen in VS Code: Copilot Chat → model picker → Manage Models… → LiteLLM → paste the key. The ailocal-* models appear in the picker right after.
Until you do, ailocal check reports VS Code provider configured; API key not initialized and repeats these two steps.
Copilot Chat ships inside VS Code — there is no extension to install and no Copilot subscription needed.
| Command | What it does |
|---|---|
ailocal install |
set everything up (run once) |
ailocal start |
bring the models and proxy up |
ailocal stop |
bring them down |
ailocal status |
what is loaded right now |
ailocal check |
is everything configured and working? |
ailocal clients |
configure the supported clients you have installed |
ailocal check answers the whole question end to end — configuration, running services, every model, and one real response — and prints the fixing command next to anything that is wrong.
To upgrade: pipx upgrade ailocal && ailocal start.
| Tool | Status |
|---|---|
| Claude Code | Fully supported — tools, web search, and Python language support |
| VS Code Copilot | Supported for chat and code completion |
| Codex CLI | Configured and routed correctly, but interactive sessions do not finish — an upstream bug (BerriAI/litellm#27442) |
Any OpenAI- or Anthropic-compatible app also works directly: point it at http://127.0.0.1:4000 with the key from ~/.config/ailocal/.env.
Local models are capable everyday assistants, not frontier models. Expect strong routine work, not hosted Opus or GPT on the hardest problems.
ailocal measures your Mac's memory and chooses a profile automatically. You do not need to think about this to install or use it.
| Memory | Main model | Context window | Models on disk |
|---|---|---|---|
| 16 GB | qwen3.5:4b |
64K | ~6 GB |
| 32 GB | qwen3.5:9b |
64K | ~9 GB |
| 64 GB | gemma4:26b-mlx |
96K | ~40 GB |
| 128 GB | gemma4:26b-mlx |
96K | ~40 GB (not yet validated on hardware) |
ailocal never picks a profile your machine cannot hold. To override it: ailocal profile use 32gb, then ailocal start.
To change which model a profile uses, edit the file in ~/.config/ailocal/profiles/ and run ailocal start. Your edits are preserved across upgrades.
| Document | Purpose |
|---|---|
| docs/architecture.md | how the pieces fit together |
| docs/troubleshooting.md | symptoms and fixes |
| docs/security.md | secrets, permissions, exposure |
| AGENTS.md | developing and validating ailocal |
Apache-2.0 — see LICENSE.
Developed and maintained by Victor T. Chevalier for DevelopSolutions, LLC.