DEMO A showcase of hev ask⌘K agentic search — running on Coder's real docs. Unaffiliated with Coder; not the official documentation. Official Coder docs ↗ Add ask to your docs ↗
Documentation › Mux

Mux

Note AI Gateway requires the AI Governance Add-On. As of Coder v2.32, deployments without the add-on will not be able to access AI Gateway.

Mux makes it easy to run parallel coding agents, each with its own isolated workspace, from your browser or desktop; it is open source and provider-agnostic.

Mux can be configured to route OpenAI- and Anthropic-compatible traffic through AI Gateway by setting a custom provider base URL and using a Coder-issued token for authentication.

Prerequisites

Configuration

OpenAI

  1. Open Mux settings (Cmd+, / Ctrl+,).
  2. Go to ProvidersOpenAI.
  3. Set API Key to your Coder API token.
  4. Set Base URL to https://coder.example.com/api/v2/aibridge/openai/v1.

Anthropic

  1. Open Mux settings (Cmd+, / Ctrl+,).
  2. Go to ProvidersAnthropic.
  3. Set API Key to your Coder API token.
  4. Set Base URL to https://coder.example.com/api/v2/aibridge/anthropic.

Replace coder.example.com with your Coder deployment URL.

Environment variables

Mux reads provider configuration from its settings UI and also from environment variables. Environment variables are useful in CI or when running Mux inside a Coder workspace.

Note Mux treats environment variables as a fallback when a provider is not configured in settings. If you have already configured a provider in the UI, clear it (or update it) for env vars to take effect.

# OpenAI-compatible traffic (GPT, Codex, etc.)
export OPENAI_API_KEY="<your-coder-api-token>"
export OPENAI_BASE_URL="https://coder.example.com/api/v2/aibridge/openai/v1"

# Anthropic-compatible traffic (Claude, etc.)
export ANTHROPIC_API_KEY="<your-coder-api-token>"
export ANTHROPIC_BASE_URL="https://coder.example.com/api/v2/aibridge/anthropic"

Running Mux in a Coder workspace

If you want to run Mux inside a Coder workspace (for example, as a Coder app), you can install it with the Mux module and pre-configure AI Gateway via environment variables on the agent:

data "coder_workspace" "me" {}

data "coder_workspace_owner" "me" {}

resource "coder_agent" "main" {
  # ... other agent configuration
  env = {
    OPENAI_API_KEY     = data.coder_workspace_owner.me.session_token
    OPENAI_BASE_URL    = "${data.coder_workspace.me.access_url}/api/v2/aibridge/openai/v1"
    ANTHROPIC_API_KEY  = data.coder_workspace_owner.me.session_token
    ANTHROPIC_BASE_URL = "${data.coder_workspace.me.access_url}/api/v2/aibridge/anthropic"
  }
}

module "mux" {
  source   = "registry.coder.com/coder/mux/coder"
  version  = "~> 1.0" # See the module page for the latest version.
  agent_id = coder_agent.main.id
}

Advanced: providers.jsonc

If you prefer a file-based config, edit ~/.mux/providers.jsonc:

{
  "openai": {
    "apiKey": "<your-coder-api-token>",
    "baseUrl": "https://coder.example.com/api/v2/aibridge/openai/v1"
  },
  "anthropic": {
    "apiKey": "<your-coder-api-token>",
    "baseUrl": "https://coder.example.com/api/v2/aibridge/anthropic"
  }
}

References: Mux provider environment variables

esc