fusionkit
Get started

Quickstart

From install to a fused coding session.

1. Install, provision, and check your environment

npm install -g @fusionkit/cli
fusionkit setup
cd your-git-repo
fusionkit init
fusionkit doctor

Edit the generated .routekit/router.yaml to enable providers for FusionKit's embedded router; fusionkit doctor validates its live namespaced catalog. FusionKit stores no provider credentials. The standalone RouteKit singleton does not discover this project file unless you explicitly run routekit config import --from .routekit/router.yaml. fusionkit setup warms the Python engine before the first session.

2. Launch a coding agent

From inside your git repo:

cd your-git-repo
fusionkit codex      # or: fusionkit claude | cursor | opencode

On a TTY you will see a live boot checklist as the panel, synthesizer, and gateway come up, then your agent launches pre-wired to the gateway. One Ctrl+C tears the stack down. FusionKit does not implement a separate cloud cost-consent prompt; use --budget and review the configured RouteKit providers and live models before launching.

A healthy launch prints three useful things before handing control to the agent:

  • the gateway URL or portless name the agent will use;
  • the fused model id, normally fusion-panel;
  • a temp log directory for per-process output if anything later fails.

If the first run pauses while provisioning the Python engine, let it finish once or run fusionkit setup ahead of time on new machines.

fusionkit init writes committed Fusion v4 settings plus a safe RouteKit router placeholder. See Configuration.

Per-tool quickstarts

Each supported tool has its own page covering wiring, the model picker, sub-agents, and caveats: Codex, Claude Code, and Cursor. OpenCode uses the same generic launcher/driver path.

fusionkit codex

Codex talks to the gateway through the OpenAI Responses dialect. FusionKit writes a temporary provider config so Codex sees fusion-panel as a normal model. See Codex.

fusionkit claude

Claude Code talks to the gateway through the Anthropic Messages dialect. FusionKit sets the base URL and auth token for the launched process. See Claude Code.

fusionkit cursor

Cursorkit ships bundled with the npm package; you only need a logged-in cursor-agent CLI. Use fusionkit cursor --ide to wire the Cursor IDE through the local desktop proxy without creating a public tunnel. See Cursor.

Run the gateway and call it from curl, an SDK, or another OpenAI-compatible client:

fusionkit serve

See Inference endpoint for streaming and tool-calling examples.

Common flags

  • --ensemble <name>: select a configured namespaced-model ensemble.
  • --budget <usd>: stop after gateway-observed spend crosses the cap.
  • --on-rate-limit fusion|passthrough|fail: choose failover behavior for vendor throttling.
  • --continue or --resume <id>: resume a durable session.
  • --observe: boot the local trace dashboard.

fusionkit's own flags must come before anything you forward to the tool. Everything after the first forwarded argument (or after --) goes to the tool itself, as in fusionkit codex -- "fix the build". See the full command reference.

For non-interactive environments, use a fixed port or disable portless:

fusionkit serve --no-portless --port 8787

Pick a fused ensemble

The gateway exposes the default ensemble as fusion-panel and every other ensemble as fusion-<name>. Namespaced RouteKit model IDs remain the routing boundary. Use the independent RouteKit CLI for single-model launches.

Run fusionkit models list to inspect local MLX models. Use routekit models list to inspect the standalone singleton's live provider models after configuring its canonical document or explicitly importing the project file. Use fusionkit config show to see the effective namespaced-model ensembles for the current repo.