Newborn Newborn TypeScript TS
↑ 58 ?
modelmux bluechonk/modelmux

One endpoint takes over the quotas of 10 AI clients: WorkBuddy, Qoder, Loomy, LobsterAI, Raccoon, TRAE, CatPaw, AStudio… are consolidated into an OpenAI-compatible gateway. A dynamic model pool (<channel>/<model>) routes automatically by billing usage, and failing channels enter cooldown. Multi-account pools, auto check-in, and quota refresh every 3 minutes are all built in. TypeScript with zero runtime dependencies; `npx modelmux` works out of the box.

https://bluechonk.github.io/modelmux/ ↗
HEALTH ? 100 / Healthy
// solo builder// hidden gem api-proxyclideepseekglmllm-gatewaymulti-channelopenai-compatibletypescriptai-gatewayllm-proxy ?

// readme

modelmux

One endpoint that takes over the quotas of multiple AI clients. It consolidates channels such as AStudio, WorkBuddy, Qoder, Loomy, LobsterAI, Raccoon, TRAE, and CatPaw into one OpenAI-compatible endpoint, exposing the real models from each channel’s catalog as <channel>/<model> pool IDs (the requester chooses the channel). It focuses on one thing: npx modelmux starts the gateway, and any OpenAI-compatible client pointed at it can use it. Login, multi-account pools, auto check-in, and quota refresh all run automatically inside the gateway.

What it is

  • One gateway: listens on 127.0.0.1:4412 and serves /v1/chat/completions, /v1/models, and /health.
  • Dynamic model pool: externally, model IDs take the form <cid>/<model> (e.g. loomy/kimi-k2.6), and /v1/models aggregates the normalized results of every channel’s catalog in real time. Clients select a channel explicitly with the channel prefix; same-named models in different channels are separate IDs.
  • Multi-channel routing: each channel is a pool (model catalog + credentials + upstream protocol), registered under packages/core/channels/. The number of channels is determined by…