tirth8205/code-review-graph · error · ValueError

MINIMAX_API_KEY environment variable is required for the Min

Error message

MINIMAX_API_KEY environment variable is required for the MiniMax embedding provider.

What it means

The minimax provider needs MINIMAX_API_KEY in the environment; unlike the OpenAI path there are no defaults or base-URL fallbacks, so absence is fatal.

Source

Thrown at code_review_graph/embeddings.py:955

            )
        dim_env = os.environ.get("CRG_OPENAI_DIMENSION")
        dimension = int(dim_env) if dim_env else None
        batch_env = os.environ.get("CRG_OPENAI_BATCH_SIZE")
        batch_size = int(batch_env) if batch_env else None
        if not _is_localhost_url(base_url):
            _warn_cloud_egress("openai")
        return OpenAIEmbeddingProvider(
            api_key=api_key,
            base_url=base_url,
            model=resolved_model,
            dimension=dimension,
            batch_size=batch_size,
        )

    if name == "minimax":
        api_key = os.environ.get("MINIMAX_API_KEY")
        if not api_key:
            raise ValueError(
                "MINIMAX_API_KEY environment variable is required for "
                "the MiniMax embedding provider."
            )
        _warn_cloud_egress("minimax")
        return MiniMaxEmbeddingProvider(api_key=api_key)

    if name == "voyage":
        api_key = os.environ.get("VOYAGE_API_KEY")
        if not api_key:
            raise ValueError(
                "VOYAGE_API_KEY environment variable is required for "
                "the Voyage embedding provider."
            )
        base_url = (
            os.environ.get("CRG_VOYAGE_BASE_URL")
            or VoyageEmbeddingProvider._DEFAULT_BASE_URL
        )
        resolved_model = (

View on GitHub (pinned to b58668751a)

Solutions

  1. export MINIMAX_API_KEY=<your key> (or inject it via your secret manager)
  2. Confirm with: printenv MINIMAX_API_KEY
  3. Restart the process/shell after setting the variable

Example fix

# before
provider=minimax  # MINIMAX_API_KEY unset
# after
export MINIMAX_API_KEY=eyJ...
provider=minimax
Defensive patterns

Strategy: validation

Validate before calling

if not os.environ.get("MINIMAX_API_KEY"):
    raise RuntimeError("MINIMAX_API_KEY not set; cannot use minimax provider")

Try / catch

try:
    provider = get_provider("minimax")
except ValueError as e:
    if "MINIMAX_API_KEY" in str(e):
        provider = get_provider("local")
    else:
        raise

Prevention

When it happens

Trigger: Passing provider='minimax' (any case) to get_provider() without MINIMAX_API_KEY set.

Common situations: Key stored in a shell rc not sourced by the agent/daemon, deploying to a container without secret injection, or forgetting that this provider reads MINIMAX_API_KEY not a CRG_-prefixed var.

Understand the failure class

Background: "environment variable is not set" and "Missing keys in environment" errors: what missing required env var messages mean and how to fix them — this error's family across 28 libraries.

Related errors


AI-assisted analysis of tirth8205/code-review-graph@b58668751a (2026-08-28). Data as JSON: /api/errors/d3ca47f794a0dcc3. Report an issue: GitHub.