Skip to main content

Onboarding and Settings

The TUI includes a full onboarding flow plus in-app dialogs for defaults, providers, themes, and keybindings.

When onboarding appears​

On first launch, onboarding is shown when either of these is true:

  • the user is not logged in
  • there is no default model and no default agent configured

This logic comes from packages/gotui/internal/app/app_model.go.

Onboarding flow​

The onboarding flow is implemented in packages/gotui/internal/flows/onboarding.

The sequence is:

  1. Login, if needed
  2. Theme selection
  3. Provider selection and key validation
  4. Model selection
  5. Agent selection

Login behavior​

When login is required, the TUI:

  • creates a portal login token
  • builds a Codebolt portal URL
  • copies that URL to the clipboard
  • attempts to open it in the browser
  • polls for the completed login token
  • creates or validates the local user against the running server

After successful login, the TUI fetches providers, models, and agents.

Provider and model setup​

During onboarding, provider configuration is not just cosmetic:

  • provider API keys can be validated
  • validated providers can return their available models
  • the selected model is then stored as the default model on the server

Application settings dialog​

The application settings dialog currently has these categories:

CategoryPurpose
Default SettingsChange default model and default agent
LLM ProvidersReview providers and save API keys
AgentsChange the default agent
AppearanceChange theme
AboutShow project/server/TUI metadata

The Providers page supports inline API-key editing, and the About page exposes the active project and server identity details.

Keybindings dialog​

The keybindings dialog:

  • lists bindings grouped by category
  • includes leader-only chord actions in the displayed list
  • lets you rebind the selected action with Enter
  • lets you reset the selected binding to default with D

Overrides are persisted to the user config directory.

Pickers and dialogs​

The TUI codebase also includes dialogs and pickers for:

  • agents
  • models
  • providers
  • themes
  • conversation tree navigation
  • slash-command support
  • steps and todo side panels

See also​