Mintplex-Labs/anything-llm · critical · Error

TogetherAI API key must be provided to use agents.

Error message

TogetherAI API key must be provided to use agents.

What it means

checkSetup() (index.js:150-153) throws for provider === "togetherai" when process.env.TOGETHER_AI_API_KEY is falsy, preventing an unauthenticated call to Together AI.

Source

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

      case "anthropic":
        if (!process.env.ANTHROPIC_API_KEY)
          throw new Error("Anthropic API key must be provided to use agents.");
        break;
      case "lmstudio":
        if (!process.env.LMSTUDIO_BASE_PATH)
          throw new Error("LMStudio base path must be provided to use agents.");
        break;
      case "ollama":
        if (!process.env.OLLAMA_BASE_PATH)
          throw new Error("Ollama base path must be provided to use agents.");
        break;
      case "groq":
        if (!process.env.GROQ_API_KEY)
          throw new Error("Groq API key must be provided to use agents.");
        break;
      case "togetherai":
        if (!process.env.TOGETHER_AI_API_KEY)
          throw new Error("TogetherAI API key must be provided to use agents.");
        break;
      case "azure":
        if (!process.env.AZURE_OPENAI_ENDPOINT || !process.env.AZURE_OPENAI_KEY)
          throw new Error(
            "Azure OpenAI API endpoint and key must be provided to use agents."
          );
        break;
      case "koboldcpp":
        if (!process.env.KOBOLD_CPP_BASE_PATH)
          throw new Error(
            "KoboldCPP must have a valid base path to use for the api."
          );
        break;
      case "localai":
        if (!process.env.LOCAL_AI_BASE_PATH)
          throw new Error(
            "LocalAI must have a valid base path to use for the api."
          );

View on GitHub (pinned to 526360e320)

Solutions

  1. Set TOGETHER_AI_API_KEY in .env to a valid Together AI API key.
  2. Restart the server so the new env loads.
  3. For Docker, inject the key via compose env or -e.
  4. Confirm the key is active in the Together AI dashboard.

Example fix

# before (.env)
# TOGETHER_AI_API_KEY=

# after (.env)
TOGETHER_AI_API_KEY=...validkey...
Defensive patterns

Strategy: validation

Validate before calling

function togetherAgentReady() {
  return Boolean(process.env.TOGETHER_AI_API_KEY && process.env.TOGETHER_AI_API_KEY.trim());
}
if (provider === "togetherai" && !togetherAgentReady())
  throw new Error("Set TOGETHER_AI_API_KEY before enabling the togetherai agent.");

Try / catch

try {
  agent.checkSetup();
} catch (e) {
  if (/TOGETHER_AI_API_KEY|API key must be provided/i.test(e.message)) {
    throw new Error("TogetherAI agent is not configured: set TOGETHER_AI_API_KEY in .env and restart.");
  }
  throw e;
}

Prevention

When it happens

Trigger: Selecting the togetherai agent provider while TOGETHER_AI_API_KEY is unset or empty in the server environment.

Common situations: Together AI provider chosen without the key, a typo'd env var, or a container missing the secret.

Related errors


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