Mintplex-Labs/anything-llm · error · Error

Cerebras API key must be provided to use agents.

Error message

Cerebras API key must be provided to use agents.

What it means

Thrown by checkSetup() (server/utils/agents/index.js:128) when the resolved agent provider is 'cerebras' but process.env.CEREBRAS_API_KEY is unset/empty. It is a precondition gate in agent.init() ensuring the Cerebras client is never built without an API key.

Source

Thrown at server/utils/agents/index.js:293

      case "sambanova":
        if (!process.env.SAMBANOVA_LLM_API_KEY)
          throw new Error("SambaNova API key must be provided to use agents.");
        break;
      case "lemonade":
        if (!process.env.LEMONADE_LLM_BASE_PATH)
          throw new Error("Lemonade base path must be provided to use agents.");
        break;
      case "omlx":
        if (!process.env.OMLX_LLM_BASE_PATH)
          throw new Error("OMLX base path must be provided to use agents.");
        break;
      case "minimax":
        if (!process.env.MINIMAX_API_KEY)
          throw new Error("Minimax API key must be provided to use agents.");
        break;
      case "cerebras":
        if (!process.env.CEREBRAS_API_KEY)
          throw new Error("Cerebras API key must be provided to use agents.");
        break;
      default:
        throw new Error(
          "No workspace agent provider set. Please set your agent provider in the workspace's settings"
        );
    }
  }

  /**
   * Finds the default model for a given provider. If no default model is set for it's associated ENV then
   * it will return a reasonable base model for the provider if one exists.
   * @param {string} provider - The provider to find the default model for.
   * @returns {string|null} The default model for the provider.
   */
  providerDefault(provider = this.provider) {
    switch (provider) {
      case "openai":
        return process.env.OPEN_MODEL_PREF ?? "gpt-4.1-nano";

View on GitHub (pinned to 526360e320)

Solutions

  1. Set CEREBRAS_API_KEY in .env to a valid Cerebras key and restart the server.
  2. Verify the process loaded the key via a status probe.
  3. Switch provider if Cerebras is not intended.

Example fix

// before (.env)
CEREBRAS_API_KEY=
// after (.env)
CEREBRAS_API_KEY=<your-cerebras-key>
Defensive patterns

Strategy: validation

Validate before calling

function assertCerebrasReady(workspaceAgentProvider) {
  const using = workspaceAgentProvider === 'cerebras' || process.env.LLM_PROVIDER === 'cerebras';
  if (using && !process.env.CEREBRAS_API_KEY)
    throw new Error('CEREBRAS_API_KEY missing - set it before starting an agent.');
}

Try / catch

try { await agent.init(); } catch (e) { if (/Cerebras API key must be provided/.test(e.message)) return showProviderConfig('cerebras'); throw e; }

Prevention

When it happens

Trigger: A chat turn calls agent.init(); this.provider resolves to 'cerebras'; case 'cerebras' runs and process.env.CEREBRAS_API_KEY is falsy.

Common situations: Cerebras selected as agent provider but the key was not saved; key expired/rotated; server not restarted after .env change.

Related errors


AI-assisted analysis of Mintplex-Labs/anything-llm@526360e320 (2026-08-13). Data as JSON: /api/errors/cc60ff941ed9e74a. Report an issue: GitHub.