JuliusBrussee/caveman · error · Error

bedrock endpoint must be runtime or mantle

Error message

bedrock endpoint must be runtime or mantle

What it means

Error "bedrock endpoint must be runtime or mantle" thrown in JuliusBrussee/caveman.

Source

Thrown at packages/sdk/typescript/src/index.ts:416

  anthropic(config: { upstreamKey?: string } = {}) {
    return providerClient(this, "anthropic", "/anthropic", config.upstreamKey);
  }

  gemini(config: { upstreamKey?: string } = {}) {
    return providerClient(this, "gemini", "/gemini", config.upstreamKey);
  }

  /**
   * Describe the first-party Bedrock gateway surface for an AWS SDK or agent
   * wrapper. Runtime is the default; Mantle remains an explicit opt-in lane.
   *
   * This descriptor performs no network request and carries no AWS secret.
   */
  bedrock(config: { region: string; endpoint?: "runtime" | "mantle" }) {
    const endpoint = config.endpoint ?? "runtime";
    if (endpoint !== "runtime" && endpoint !== "mantle") {
      throw new Error("bedrock endpoint must be runtime or mantle");
    }
    return {
      region: config.region,
      endpoint,
      gatewayPrefix: endpoint === "mantle" ? "/bedrock/anthropic" : "/bedrock",
      instrumented: true,
      sdkOnly: false,
    };
  }

  /**
   * Vertex AI client proxied through the gateway (`/vertex` prefix). Routes
   * Google Gemini and Anthropic Claude calls through Caveman for metering.
   *
   * `upstreamKey` is a Google OAuth2 access token (e.g. from
   * `gcloud auth print-access-token` or Application Default Credentials); the
   * gateway forwards it as `Authorization: Bearer …`. Use the returned client's
   * `raw` fetch for native Vertex paths

View on GitHub (pinned to 27d5a3981a)

Solutions

  1. Set the bedrock endpoint to "runtime" or "mantle".

When it happens

Trigger: Thrown at packages/sdk/typescript/src/index.ts:416 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of JuliusBrussee/caveman@27d5a3981a (2026-08-15). Data as JSON: /api/errors/33f21de2aad0fc65. Report an issue: GitHub.