opencode настраивает провайдеров в opencode.json через адаптеры AI-SDK. Используйте @ai-sdk/openai-compatible, укажите baseURL на DaoXE и перечислите ID моделей. Один блок открывает всех вендоров за вашим ключом — см. гайд по дешёвым API.
Зачем направлять opencode через DaoXE#
- Терминальный агент. opencode выполняет многошаговые задачи из шелла вашей моделью DaoXE.
- Декларативные провайдеры. Один JSON-блок добавляет DaoXE и его модели.
- Один ключ, много вендоров. GPT, Claude, Gemini, DeepSeek и Kimi за одним ключом.
Настройка в opencode#
- Откройте opencode.json. Создайте/правьте
opencode.json(проект) или~/.config/opencode/opencode.json(глобально). - Добавьте провайдера. В
providerукажитеnpm: "@ai-sdk/openai-compatible"иoptions.baseURL=https://daoxe.com/v1. - Перечислите точные ID. В
modelsдобавьте ключи, совпадающие с ID изGET /v1/models. Ключ задайте через env вoptions.apiKey. - Перезапуск и проверка. Перезапустите opencode и выполните
/models, чтобы увидеть DaoXE и его модели.
// opencode.json (project) or ~/.config/opencode/opencode.json (global)
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"daoxe": {
"npm": "@ai-sdk/openai-compatible",
"name": "DaoXE",
"options": {
"baseURL": "https://daoxe.com/v1",
"apiKey": "{env:DAOXE_API_KEY}"
},
"models": {
"YOUR_EXACT_MODEL_ID": { "name": "DaoXE model" }
}
}
}
}Что важно учесть
Используйте @ai-sdk/openai-compatible для /v1/chat/completions; если конкретной модели нужен /v1/responses, используйте для неё @ai-sdk/openai. Ключи моделей должны точно совпадать с ID аккаунта (GET /v1/models). Метаданные лимитов/цен можно подтянуть с models.dev, но ключ модели всё равно должен быть реальным ID. После правки конфига — перезапуск.
Убедитесь, что отдают настоящую модель#
Сначала проверьте эндпоинт, а не клиент — если это не работает, настройки не помогут:
export DAOXE_API_KEY="your_api_key"
# List the exact model IDs your account can call
curl --fail-with-body --show-error --silent \
https://daoxe.com/v1/models \
-H "Authorization: Bearer ${DAOXE_API_KEY}"Проверьте эндпоинт независимо, затем сравните фиксированный промпт с официальным API при temperature 0:
curl --fail-with-body --show-error --silent \
https://daoxe.com/v1/chat/completions \
-H "Authorization: Bearer ${DAOXE_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"model": "YOUR_EXACT_MODEL_ID",
"max_tokens": 64,
"messages": [{"role": "user", "content": "Say hello in one sentence."}]
}'Проверяйте нас, а не верьте на слово
Направьте открытый бенчмарк на DaoXE и на официальный API и сравните при temperature 0. Затем изучите, как поймать подмену модели, чтобы дешёвый эндпоинт не подменил вам модель на меньшую.
Частые вопросы#
Какой npm-адаптер использовать?
@ai-sdk/openai-compatible для chat completions. Для модели с /v1/responses — @ai-sdk/openai.
Куда указать base URL?
В options.baseURL = https://daoxe.com/v1 внутри блока провайдера.
Модель не видна в /models?
Ключ модели должен равняться точному ID из GET /v1/models, и после правки конфига нужен перезапуск.
Как не хранить ключ в файле?
Сошлитесь на переменную окружения в options.apiKey и экспортируйте DAOXE_API_KEY.
Попробуйте DaoXE — и проверьте его сами
Один ключ для GPT, Claude, Gemini, DeepSeek и других. Направьте открытый бенчмарк на нас и сравните — не верьте на слово.