usebruno/bruno · error · Error

${providerLabel(def.providerId, aiPreferences)} is missing a

Error message

${providerLabel(def.providerId, aiPreferences)} is missing a Base URL. Set one in Preferences > AI.

What it means

Error "${providerLabel(def.providerId, aiPreferences)} is missing a Base URL. Set one in Preferences > AI." thrown in usebruno/bruno.

Source

Thrown at packages/bruno-electron/src/ipc/ai/providers.js:222

 * Throws if the provider isn't configured (no key) or the model is unknown.
 */
const getModel = (modelId, { aiPreferences, getApiKey }) => {
  const def = resolveModelDefinition(modelId, aiPreferences);
  if (!def) throw new Error(`Unknown model: ${modelId}`);

  const providerConfig = aiPreferences?.providers?.[def.providerId];
  if (!providerConfig?.enabled) {
    throw new Error(`${providerLabel(def.providerId, aiPreferences)} is not enabled. Enable it in Preferences > AI.`);
  }

  const isCompat = isOpenAiCompatibleProviderId(def.providerId);
  const apiKey = getApiKey(def.providerId);
  if (!apiKey && !isCompat) {
    throw new Error(`${providerLabel(def.providerId, aiPreferences)} API key is not configured. Add it in Preferences > AI.`);
  }

  if (isCompat && !def.baseURL) {
    throw new Error(`${providerLabel(def.providerId, aiPreferences)} is missing a Base URL. Set one in Preferences > AI.`);
  }

  const sdk = getSdk({ providerId: def.providerId, apiKey, baseURL: def.baseURL });
  if (isOpenAiCompatibleProviderId(def.providerId)) return sdk.chat(def.sdkModelId);
  return sdk(def.sdkModelId);
};

/**
 * List models that are usable right now (provider enabled + key configured + model not disabled).
 */
const getAvailableModels = ({ aiPreferences, hasApiKey }) => {
  const out = [];
  for (const model of listModels(aiPreferences)) {
    const providerConfig = aiPreferences?.providers?.[model.provider];
    if (!providerConfig?.enabled) continue;
    const isCompat = isOpenAiCompatibleProviderId(model.provider);
    if (!isCompat && !hasApiKey(model.provider)) continue;

View on GitHub (pinned to 9bdd81c7bd)

Solutions

  1. Set the provider's Base URL in Preferences > AI, then retry.

When it happens

Trigger: Thrown at packages/bruno-electron/src/ipc/ai/providers.js:222 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of usebruno/bruno@9bdd81c7bd (2026-08-13). Data as JSON: /api/errors/1b5eb80809ad518c. Report an issue: GitHub.