Trae, Zed, and Windsurf Integration Guide
Applicable roles: Developer, Admin User, Member User Last updated: 2026-08-06
The level of custom Provider support in these three editors changes frequently. Before configuring, confirm whether your current version provides a custom Base URL field. If there is only an API Key input with no address field, you typically cannot connect to an OpenAI Compatible service directly.
Trae
If the model settings include "Custom Model" or "Model Service":
- Add a new OpenAI Compatible model.
- Set the Base URL to
https://<your-api-endpoint>. - Enter your platform API Key.
- Copy the model name from the console.
- Save and select the model in the chat panel.
Use the endpoint address shown on the "API Key" page in the console.
If there is no custom Base URL field, you can install Cline, Roo Code, or Continue and let the plugin handle the connection.
Zed
The Zed configuration structure varies by version. If the current version supports openai_compatible, you can register a Provider using its configuration format. Only confirmed connection values are listed below:
Provider ID: myplatform
API URL: https://<your-api-endpoint>
Model: deepseek-v4-flashModel context length and max output should be filled in according to the current model capabilities shown in the console. Do not use parameters from other providers. Save your API Key using the Zed settings UI, the system keychain, or an environment variable method officially supported by your version.
Windsurf
Windsurf's BYOK Provider scope may be affected by your version and subscription plan. If the settings provide fields for Provider, Base URL, and API Key simultaneously, select OpenAI Compatible and enter the platform address. If only built-in service keys are accepted, do not proceed with the configuration. Use a plugin that supports custom Providers instead.
Verifying Actual Requests
After saving, switch to the model in the model selector and send a short message, then check the usage records in the console. Completions, chat, and Agent features within the editor may use different backends, so verify each function you intend to use separately.