Skip to content

Initial Setup

Suggest Edits
Terminal window
bakin onboard

That’s the whole setup for most folks. Want the full breakdown before you run it? Here’s what onboarding does.

Terminal window
bakin doctor

bakin doctor runs every health check in one shot. Green across the board means you’re done.

If something fails, run the specific check to narrow it down:

Terminal window
bakin check runtime # configured runtime is installed, reachable, and parsable
bakin check llm # at least one LLM provider is configured
bakin check channels # messaging channels are wired up (when on)
bakin check plugin-assets # plugin defaults projected into ~/.bakin/
bakin check agent-assets # agent package files installed and current

Full command reference lives in the CLI docs.

  • Creates ~/.bakin/, your local data directory
  • Seeds default settings
  • Confirms the configured runtime is reachable
  • Confirms at least one LLM provider is configured
  • Confirms messaging channels if you’ve enabled messaging

If any check fails, onboarding tells you what’s missing.

Everything Bakin owns lives in ~/.bakin/ by default: settings, plugins, assets, agent state, schedules, logs, audit trail, and so on. See exactly what’s resolved at runtime:

Terminal window
bakin paths

Anything owned by the runtime (agent identity, skills, tools, workspace data) stays in the runtime home. With the default OpenClaw adapter, that is ~/.openclaw/.

For demos or disposable tests, point Bakin at a different directory with BAKIN_HOME:

Terminal window
BAKIN_HOME="$PWD/.bakin-demo" bakin onboard --yes

Resolution order: BAKIN_HOME~/.bakin/.

For CI or scripted setup, skip prompts and emit JSON:

Terminal window
bakin onboard --yes --json