API
The surfaces
| Surface | Where it answers | What it's for |
|---|---|---|
| The gateway | https://api.conifer.build | Cloud models, metered against your account. |
conifer serve | 127.0.0.1:8080 | Your machine as the host: local weights, or a door in front of the cloud. |
| The desktop app | the same door | A GUI over the engine and router. It attaches to the CLI's server; it never runs a second one. |
| Palm (beta) | 127.0.0.1:8791 | A macOS overlay for Claude Code: pause, resume, switch models mid-session. |
The same request body works against any of them. The wire is defined in the API reference and only grows; the contract is the versioned record of that rule.
The app is a client, not a second server
The desktop app ships the CLI inside it and drives the same door your terminal does, and shares the model registry, the endpoints file, and the keychain. If a door is already running, the app joins it and changes nothing.
Palm
A running claude pins its base URL at startup and can’t be re-pointed. Palm fixes that: Claude Code talks to Palm’s local broker for the whole session, and the switch lives inside the broker. Tap fn+^ to pause (requests pass byte-for-byte to Anthropic on your own credentials) or resume to route through Conifer and pick a different model, no restart. Palm keeps no state of its own: it reads the CLI’s endpoint registry and signs with the CLI’s login. macOS, Apple Silicon, beta.