Connect a tool
Quail's server speaks the OpenAI and Anthropic APIs, so most tools that let you change their endpoint work with it.
The Connect page
Choose Connect a Tool… in the menu, or Connect in the Quail window. Pick a tool and a model, and Quail fills in its setup with your address, API key and model:
- Copy the snippet into the place it says (“Goes in: …”).
- Click Test: it sends one tiny request exactly as that tool would, and says whether it worked.
Using the tool on another computer? Choose Used from: Another device for your Mac's network address, and set Reachable from to Local network.
Quail never edits another app's settings. It gives you the snippet, and a link to the tool's own setup docs.
Or let Quail start the tool
For coding agents, quail launch starts the tool pointed at Quail, for that run only — the tool's own settings are untouched. Its context is set to what the model runs at.
quail launch claude # Claude Code, with the default model
quail launch codex -m qwen3-8b # a particular model
quail launch opencode -- run "fix the tests" # arguments after -- go to the tool
Supported: claude, codex, opencode, qwen, aider, goose.
Tools with a ready-made setup
| Tool | Speaks | Needs |
|---|---|---|
| Claude Code | Anthropic Messages | 32K context |
| OpenAI Codex CLI | OpenAI Responses | 16K context |
| opencode | OpenAI Chat Completions | 16K context |
| Cline, Roo Code | OpenAI Chat Completions | 32K context |
| aider, Goose, Qwen Code | OpenAI Chat Completions | |
| Continue, Zed | OpenAI Chat Completions | |
| Open WebUI, LibreChat | OpenAI Chat Completions | |
| curl, Python, JavaScript | OpenAI Chat Completions |
If a model's context is smaller than a tool needs, the Connect page says so; raise it in the model's settings (see Models) and restart the server.
Any other client
| OpenAI base URL | http://127.0.0.1:8080/v1 |
|---|---|
| Anthropic base URL | http://127.0.0.1:8080 (clients add /v1/messages) |
| API key | Sent as Authorization: Bearer <key> or x-api-key: <key> |
| Model | The model's id from the Models page |
curl http://127.0.0.1:8080/v1/chat/completions \
-H "Authorization: Bearer $QUAIL_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "Qwen3-8B-Q4_K_M", "messages": [{"role": "user", "content": "Hello"}]}'
The address and key are on the Server page, and quail config --show-key prints them.