Skip to content

Codex/ChatGPT account load balancer & proxy with usage tracking, dashboard, and OpenCode-compatible endpoints

License

Notifications You must be signed in to change notification settings

Soju06/codex-lb

Repository files navigation

codex-lb

Load balancer for ChatGPT accounts. Pool multiple accounts, track usage, view everything in a dashboard.

Screenshots

Main Dashboard View

main dashboard view

Accounts View

Accounts list and details

Quick Start

Docker

docker run -d --name codex-lb \
  -p 2455:2455 -p 1455:1455 \
  -v ~/.codex-lb:/var/lib/codex-lb \
  ghcr.io/soju06/codex-lb:latest

uvx

uvx codex-lb

Open localhost:2455 → Add account → Done.

Codex CLI & Extension Setup

Add to ~/.codex/config.toml:

model = "gpt-5.2-codex"
model_reasoning_effort = "xhigh"
model_provider = "codex-lb"

[model_providers.codex-lb]
name = "OpenAI"  # MUST be "OpenAI" - enables /compact endpoint
base_url = "http://127.0.0.1:2455/backend-api/codex"
wire_api = "responses"
chatgpt_base_url = "http://127.0.0.1:2455"
requires_openai_auth = true  # Required: enables model selection in Codex IDE extension

OpenCode Setup

Run:

opencode auth login

Then select OpenAI -> Manually enter API Key and enter any value.

Add the following to ~/.config/opencode/opencode.json:

{
  ...
  "provider": {
    "openai": {
      "options": {
        "baseURL": "http://127.0.0.1:2455/v1"
      }
    },
    ...
  }
}

Data

All data stored in ~/.codex-lb/:

  • store.db – accounts, usage logs
  • encryption.key – encrypts tokens (auto-generated)

Backup this directory to preserve your accounts.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Soju06
Soju06

💻 ⚠️ 🚧 🚇
Jonas Kamsker
Jonas Kamsker

💻 🐛 🚧
Quack
Quack

💻 🐛 🚧 🎨
Jill Kok, San Mou
Jill Kok, San Mou

💻 ⚠️ 🚧
PARK CHANYOUNG
PARK CHANYOUNG

📖

This project follows the all-contributors specification. Contributions of any kind welcome!