Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

125 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo
recompose

Wire up your own AI network.
A free, open-source desktop app that composes your AI providers into local gateways.
Features · How it works · Building from source · Architecture

You define virtual models, wire them to real providers on a node canvas, and point clients such as Claude Code, Codex, and Cursor at one local endpoint.

The gateway canvas: virtual models wired through routers to provider targets

Features

  • One endpoint for every client: each gateway serves both API dialects on a single base URL, /v1/messages (Anthropic) and /v1/chat/completions (OpenAI). The request path disambiguates; there is nothing to configure per client.
  • Virtual models: clients see aliases such as fast or smart. Swap the real model behind that name without touching a single client config.
  • Composable routing: failover ladders send traffic to the topmost healthy target; round-robin pools spread it evenly or by weight. Chain routers to combine strategies.
  • Any provider: hold several Claude or Codex subscription accounts and pick which one their own tool signs in as, or add any OpenAI-compatible or Anthropic-compatible endpoint with a base URL and key. recompose never signs in for a subscription and never spends one, because the provider's own tool does both. The roadmap includes local runtimes (Ollama, LM Studio).
  • Offline-first and private: no signup, no telemetry. Credentials stay on your machine in ~/.recompose. Serving on a Local Area Network (LAN) is opt-in, and the app recommends turning on the local API token when you do.

How it works

A gateway is a running local server. Its canvas wires virtual models through routers to provider targets:

Claude Code ──▶ http://localhost:8397/my-gateway
                        │
                 [ virtual model "fast" ]
                        │
                 [ router: failover ]
                   #1 │        #2 │
        [ Claude · sonnet ]  [ OpenAI · gpt-5 ]

Clients connect through an environment variable:

export ANTHROPIC_BASE_URL=http://localhost:8397/my-gateway

OpenAI-dialect clients set OPENAI_BASE_URL to the same address.

Building from source

Requires Node 22+ and pnpm 11.

pnpm install
pnpm dev
Path What lives there
apps/desktop Electron app (main, preload, renderer)
docs/adr Architecture decision records

Architecture

The Electron shell hosts the UI. The gateway engine runs in a utilityProcess as a pure TypeScript package with no electron imports, keeping a future headless mode possible. The docs/adr index records every technical decision.

About

No description, website, or topics provided.

Resources

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages