Setup guides, indexed by tool
The promise of an OpenAI-compatible endpoint is one URL for everything. The reality is four different configuration carriers: an environment variable, a project JSON file, a UI field, or a per-node setting. This index keeps the tool-specific guides together so the next integration starts from a known shape.
How to pick a starting point
If the tool reads an environment variable, the change is reversible and applies to every project at once. If it stores credentials in a UI or a per-node field, later environment edits are silently ignored — that single difference explains most "the base URL is set but requests still go to the vendor" reports. Start with the guide for your client, then confirm the request appears in the gateway usage log.
Browse the other clusters
All 57 guides in this cluster
- Add an OpenAI-compatible endpoint to LibreChat
- Agno with a Custom OpenAI-Compatible Endpoint
- aichat with a Custom OpenAI-Compatible Endpoint
- Aider with an OpenAI-compatible endpoint
- API rate limits explained — and what to do when you hit one
- AutoGen with a custom endpoint
- avante.nvim with a Custom OpenAI-Compatible Endpoint
- Bolt.diy with a Custom OpenAI-Compatible Endpoint
- Cherry Studio with a Custom OpenAI-Compatible Provider
- claude-code-router with an OpenAI-Compatible Backend
- Cline with an OpenAI-compatible endpoint
- CodeCompanion.nvim with an OpenAI-Compatible Endpoint
- Cody with a Custom OpenAI-Compatible Endpoint
- Continue with an OpenAI-compatible endpoint
- CrewAI with an OpenAI-compatible endpoint
- Crush with a Custom OpenAI-Compatible Provider
- Cursor with an OpenAI-Compatible Endpoint: Base URL and Custom Models
- Dify with a custom OpenAI-compatible model endpoint
- DSPy with an OpenAI-compatible endpoint
- Ellama with a custom OpenAI-compatible endpoint
- Flowise with a Custom OpenAI-Compatible Endpoint
- Goose with a Custom OpenAI-Compatible Provider
- gptel with a Custom OpenAI-Compatible Backend
- Haystack with a custom OpenAI-compatible endpoint
- How to use the Claude API in Cursor with your own key
- Jan with a Custom OpenAI-Compatible Endpoint
- Kilo Code OpenAI Compatible Base URL: What Goes in the Field, and What Gets Rejected
- LangChain with a custom endpoint
- LangChain4j with a Custom OpenAI-Compatible Endpoint
- Langflow with a Custom OpenAI-Compatible Endpoint
- LiteLLM with a custom OpenAI-compatible endpoint
- LlamaIndex with a custom endpoint
- LobeChat with a Custom OpenAI-Compatible Endpoint
- Mastra with a Custom OpenAI-Compatible Endpoint
- MaxKB and the OpenAI-Compatible API, Both Directions
- n8n with an OpenAI-compatible endpoint
- Open Interpreter with a Custom OpenAI-Compatible Endpoint
- OpenCode OpenAI Compatible Provider: Setting the Base URL in opencode.json
- Plandex with a Custom OpenAI-Compatible Provider
- Point AnythingLLM at an OpenAI-compatible endpoint
- Point OpenHands at an OpenAI-compatible endpoint
- Point Roo Code at an OpenAI-compatible endpoint
- Prism PHP with a Custom OpenAI-Compatible Endpoint
- Pydantic AI with a custom OpenAI-compatible endpoint
- RAGFlow with a Custom OpenAI-Compatible Endpoint
- Raycast AI with a custom OpenAI-compatible endpoint
- Semantic Kernel with a Custom OpenAI-Compatible Endpoint
- Smolagents with a Custom OpenAI-Compatible Endpoint
- Spring AI with a Custom OpenAI-Compatible Endpoint
- Tabby with a Custom OpenAI-Compatible Endpoint
- Trae with a custom OpenAI-compatible endpoint
- Twinny with a custom OpenAI-compatible endpoint
- Use Claude in LangChain with a custom endpoint
- Void with a Custom OpenAI-Compatible Endpoint
- Windsurf Cascade with a custom OpenAI-compatible endpoint
- Zed with a custom OpenAI-compatible endpoint
- Zencoder with a custom OpenAI-compatible endpoint
FAQ
Which tools support a custom endpoint?
Any client that exposes a base URL, api_base or provider URL field can be pointed at an OpenAI-compatible route. This index covers the ones we have configured and verified, tool by tool.
Why does a tool ignore the environment variable I set?
Several clients persist the endpoint in their own config at first run, and that stored value wins over later environment changes. The per-tool guide says where the stored value lives and how to clear it.
Does the model list have to be entered by hand?
Sometimes. A few clients never call /v1/models and keep their own list, so a valid endpoint shows an empty picker until the model IDs are added manually.
Check the current rate for your model before you commit a workload.