---
summary: "Overview of KaijiBot onboarding options and flows"
read_when:
  - Choosing an onboarding path
  - Setting up a new environment
title: "Onboarding Overview"
sidebarTitle: "Onboarding Overview"
---

# Onboarding Overview

KaijiBot has two onboarding paths. Both configure auth, the Gateway, and
optional chat channels — they just differ in how you interact with the setup.

## Which path should I use?

|                | CLI onboarding                         |
| -------------- | -------------------------------------- |
| **Platforms**  | macOS, Linux, Windows (native or WSL2) |
| **Interface**  | Terminal wizard                        |
| **Best for**   | Servers, headless, full control        |
| **Automation** | `--non-interactive` for scripts        |
| **Command**    | `kaijibot onboard`                     |

Most users should start with **CLI onboarding** — it works everywhere and gives
you the most control.

## What onboarding configures

Regardless of which path you choose, onboarding sets up:

1. **Model provider and auth** — API key, OAuth, or setup token for your chosen provider
2. **Workspace** — directory for agent files, bootstrap templates, and memory
3. **Gateway** — port, bind address, auth mode
4. **Channels** (optional) — Feishu is the primary chat channel.
   Configure your Feishu App ID and App Secret from [open.feishu.cn](https://open.feishu.cn/).
5. **Daemon** (optional) — background service so the Gateway starts automatically

## CLI onboarding

Run in any terminal:

```bash
kaijibot onboard
```

Add `--install-daemon` to also install the background service in one step.

Full reference: [Onboarding (CLI)](/start/wizard)
CLI command docs: [`kaijibot onboard`](/cli/onboard)

## macOS / iOS app onboarding

> **Note:** KaijiBot does not ship native macOS or iOS apps. Use CLI onboarding
> (`kaijibot onboard`) on all platforms.

Full reference: [Onboarding (CLI)](/start/wizard)

## Custom or unlisted providers

If your provider is not listed in onboarding, choose **Custom Provider** and
enter:

- API compatibility mode (OpenAI-compatible, Anthropic-compatible, or auto-detect)
- Base URL and API key
- Model ID and optional alias

Multiple custom endpoints can coexist — each gets its own endpoint ID.
