Install Genesis, run onboarding, and chat with your AI assistant — all in about 5 minutes. By the end you will have a running Gateway, configured auth, and a working chat session.

What you need

  • Node.js — Node 24 recommended (Node 22.14+ also supported)
  • An API key from a model provider (Anthropic, OpenAI, Google, etc.) — onboarding will prompt you
Check your Node version with `node --version`. **Windows users:** both native Windows and WSL2 are supported. WSL2 is more stable and recommended for the full experience. See [Windows](/platforms/windows). Need to install Node? See [Node setup](/install/node).

Quick setup

Install Genesis

macOS / Linux

    ```bash
    curl -fsSL https://genesis.pixelzx.com/install.sh | bash
    ```
    <img

src="/assets/install-script.svg" alt="Install Script Process" className="rounded-lg" />

Windows (PowerShell)

    ```powershell
    iwr -useb https://genesis.pixelzx.com/install.ps1 | iex
    ```
  




<div class="callout note">
Other install methods (Docker, Nix, npm): [Install](/install).
</div>

Run onboarding

```bash
genesis onboard --install-daemon
```

The wizard walks you through choosing a model provider, setting an API key,
and configuring the Gateway. It takes about 2 minutes.

See [Onboarding (CLI)](/start/wizard) for the full reference.

Verify the Gateway is running

```bash
genesis gateway status
```

You should see the Gateway listening on port 18789.

Open the dashboard

```bash
genesis dashboard
```

This opens the Control UI in your browser. If it loads, everything is working.

Send your first message

Type a message in the Control UI chat and you should get an AI reply.

Want to chat from your phone instead? The fastest channel to set up is
[Telegram](/channels/telegram) (just a bot token). See [Channels](/channels)
for all options.

Advanced: mount a custom Control UI build

If you maintain a localized or customized dashboard build, point gateway.controlUi.root to a directory that contains your built static assets and index.html.

mkdir -p "$HOME/.genesis/control-ui-custom"
# Copy your built static files into that directory.

Then set:

{
  "gateway": {
    "controlUi": {
      "enabled": true,
      "root": "$HOME/.genesis/control-ui-custom"
    }
  }
}

Restart the gateway and reopen the dashboard:

genesis gateway restart
genesis dashboard

What to do next

Advanced: environment variables

If you run Genesis as a service account or want custom paths:

  • GENESIS_HOME — home directory for internal path resolution
  • GENESIS_STATE_DIR — override the state directory
  • GENESIS_CONFIG_PATH — override the config file path

Full reference: Environment variables.

Related