Responsibilities and data flow
Blue stores the gateway credential envelope-encrypted and gives the client a session-bound, inference-only JWT. Provider credentials, LiteLLM administrator credentials, the signing key, and the managed gateway key remain server-side.Prerequisites
- A global
gatewayblock inblue.yaml. - Your reachable LiteLLM gateway and the Blue inference proxy.
- A provisioner selected by
gateway.provisioner.type. - Encryption configured for stored gateway credentials.
- Matching user identities in Blue and the gateway.
Configure gateway access
- Built-in LiteLLM
- Custom executable
blue/blue.yaml
HARNESS_LITELLM_ADMIN_KEY and the configured
gateway URL. It does not use executable fields.blue.yaml.
See Bring your own gateway for deployment topology and
Blue YAML for the complete configuration schema.
Provision and reconcile a user
Users can provision from the dashboard’s Gateway page or the CLI:POST /gateway/key/validate. Validation rechecks the upstream key at most once every 60 seconds. A confirmed invalid credential is cleared and reported as invalid; replacement requires the ensure operation, such as running blue gateway. A missing credential is reported without contacting the provisioner.
The provisioner receives the authenticated Blue identity, ensure reason, and
the previous external ID, alias, and metadata when a credential already
exists. It creates a credential when none exists, updates it when configuration
or policy_revision changes, and periodically reconciles it after the TTL.
Harness launch and personalized configuration fetch both ensure access before
governed inference begins.
An executable can return credential: null only when retaining the previous
encrypted credential. A rotated credential causes Blue to replace the stored
encrypted value and invalidate cached credential mappings. If ensure fails,
Blue records the public error, stores no partial
result, and retries on the next governed launch or configuration fetch.
Relaunch gateway-routed harnesses after credential rotation or access-profile
changes. A process that is already running retains the configuration it
received at launch.
Dashboard and permissions
The Gateway page appears only when gateway policy is active.- Key is visible to members and administrators and shows managed access status without exposing plaintext credentials.
- Overview is administrator-only and shows upstream and client-facing endpoints, supported harnesses, proxy health, and a non-secret runtime checklist.
- Logs is administrator-only and shows organization-wide request metadata and filters.
Request history
Blue records metadata for authenticated requests forwarded through the proxy, including upstream errors and transport failures. Filters include user, key, model, harness, result, and date. Records can include allowlisted repository, branch, commit, dirty-state, and run attribution. Blue does not store prompts, request or response bodies, credentials, query strings, inference JWTs, virtual keys, or arbitrary headers in request history. Delivery is asynchronous and best effort so a Control API logging failure does not delay inference traffic. Expired database rows are removed automatically aftercontrol_api.gateway_request_logs.retention_days.
Change or disable access
- Change provisioner policy and its policy revision to reconcile existing credentials.
- Remove a user’s gateway access through the source gateway or identity policy; Blue retries idempotent revocation where applicable.
- Remove the top-level
gatewayblock to disable gateway personalization for the deployment. Native agents then use their normal provider configuration. - Stop the inference proxy after the policy no longer advertises gateway mode.
blue, for example blue codex.
