Feature · Getting started

Onboarding

The setup wizard has seven pages. It prepares your CEO to start work. You can stop at any time and come back later.

Last changed

Generated from commit be57775 ·

How it works

The seven pages

  1. Your business: the business brief and your brand. See Your business.
  2. Your computer: where the work runs. See Your computer.
  3. AI access: how your CEO reaches a model. See AI access.
  4. Channels: web chat and WhatsApp. This page is optional. See Channels.
  5. Repositories: the code your CEO may work on. See Repositories.
  6. Your CEO: how much it does alone, and how it hires. See Your CEO.
  7. First task: the first request to your CEO. This page is optional. See First task.

The rail on the left shows each page. A page you passed shows as done. The Repositories page shows as done only when at least one repository is ready.

Who can change the setup

Only an owner or an admin can save values in the wizard. A member sees the values but cannot change them.

Finish later

Select Finish later to go to the console. Your choices stay saved. Until setup is finished, the console opens the wizard for an owner or admin again, at most one time in 12 hours on the same browser.

Skip a page

Some pages have Skip for now. Skip does not save anything on that page. You can come back to the page from the rail at any time.

Ask Ava about a page

Each page has the link Ask Ava about this step. It opens Ava, the assistant, with a question about that page. See Ava, your assistant.

After setup

Everything in the wizard can be changed later. Each article for a page names the place in the console where you change its values.

From the help article The setup wizard, checked against the product on .

What you can do

The operations this feature's screens call. Each one is POST /api/<name>, and the badge says who may call it.

  • listOrgRepositories

    Viewer

    Lists org repositories.

    Types: EmptyRequest returns import('./orgSetup.js').ListOrgRepositoriesResult

  • updateOnboardingWizard

    AdminNo API tokens

    Saves the first-run wizard's page, where work runs (applied to the org's execution profile) and whether it is finished.

    Types: UpdateOnboardingWizardRequest returns OnboardingStateDto

  • getSignupOptions

    Anyone

    Gets signup options.

    Types: EmptyRequest returns SignupOptionsDto

  • signupStart

    Anyone

    Emails a six-digit sign-in code (also usable as a link). The same answer whether or not the address has an account.

    Types: SignupStartRequest returns SignupStartResponse

  • signupVerify

    Anyone

    Checks an emailed code and signs the person in.

    Types: SignupVerifyRequest returns SignupVerifyResponse

  • oauthStart

    Anyone

    The provider's consent URL; its callback signs the person in (or links the provider to them, for connect, or accepts an invitation, for invite).

    Types: OAuthStartRequest returns OAuthStartResponse

  • createOrg

    AnyoneNo API tokens

    The signed-in person's own organization, with them as owner; the session switches to it.

    Types: CreateOrgRequest returns CreateOrgResponse

  • getOnboarding

    Viewer

    Gets onboarding.

    Types: EmptyRequest returns OnboardingStateDto

  • skipOnboardingStep

    Admin

    Skips the onboarding step.

    Types: SkipOnboardingStepRequest returns OnboardingStateDto

  • connectStart

    AdminNo API tokens

    Connects the start.

    Types: ConnectStartRequest returns ConnectStartResponse

  • getConnect

    Admin

    Gets the connect.

    Types: ConnectIdRequest returns ConnectSessionDto

  • completeConnect

    AdminNo API tokens

    Completes the connect.

    Types: CompleteConnectRequest returns ConnectSessionDto

  • getInvite

    Anyone

    What an invitation link is for, and how this person can accept it here.

    Types: InviteLookupRequest returns InvitePreviewDto

  • inviteCodeStart

    Anyone

    Emails a sign-in code to the invited address, so accepting proves it. The same answer as signupStart.

    Types: InviteCodeStartRequest returns SignupStartResponse

  • importOrgWebsite

    AdminNo API tokens

    Saves nothing: the owner reviews the proposal and saves it with setOrgConfig.

    Types: import('./orgSetup.js').ImportOrgWebsiteRequest returns import('./orgSetup.js').WebsiteImportDto

  • getOrgConfig

    Viewer

    Gets org config.

    Types: GetOrgConfigRequest returns OrgConfigView

  • setOrgConfig

    Admin

    Sets org config.

    Types: SetOrgConfigRequest returns OrgConfigView

  • updateLocalRunnerSettings

    AdminNo API tokens

    Updates local runner settings.

    Types: UpdateLocalRunnerSettingsRequest returns LocalRunnerSettingsDto

  • listModelAccounts

    ViewerNo API tokens

    Lists model accounts.

    Types: EmptyRequest returns ListModelAccountsResponse

  • connectModelAccount

    MemberNo API tokens

    Connects the model account.

    Types: ConnectModelAccountRequest returns ModelAccountDto

  • whatsapp/status

    Viewer

    WhatsApp: status.

    Types: EmptyRequest returns WhatsAppStatusDto

  • getRecommendedSetup

    Admin

    Gets recommended setup.

    Types: EmptyRequest returns import('./orgSetup.js').RecommendedSetupDto

  • applyRecommendedSetup

    AdminNo API tokens

    Applies recommended setup.

    Types: import('./orgSetup.js').ApplyRecommendedSetupRequest returns import('./orgSetup.js').RecommendedSetupDto

  • getWorkLaunchReadiness

    Member

    Gets work launch readiness.

    Types: { workerId?: string; templateId?: string } returns import('./execution.js').WorkLaunchReadinessDto

  • getFirstTaskSuggestions

    Member

    Gets first task suggestions.

    Types: EmptyRequest returns import('./orgSetup.js').FirstTaskSuggestionsResult

  • sendConversationMessage

    MemberNo API tokens

    Sends a conversation message.

    Types: SendConversationMessageRequest returns SendConversationMessageResponse

  • listLocalRunners

    Member

    Lists local runners.

    Types: ListLocalRunnersRequest returns LocalRunnerListDto

  • getLocalRunnerSettings

    Viewer

    Gets local runner settings.

    Types: EmptyRequest returns LocalRunnerSettingsDto

  • connectRepositorySuggestions

    MemberNo API tokens

    Connects chosen suggestions as runner repositories, as `agent-runner repo connect` would.

    Types: import('./orgSetup.js').ConnectRepositorySuggestionsRequest returns import('./orgSetup.js').ConnectRepositorySuggestionsResult

  • listRepositorySuggestions

    Member

    The person's own runners' checkouts that are not connected yet.

    Types: EmptyRequest returns import('./orgSetup.js').ListRepositorySuggestionsResult

  • whatsapp/embeddedSignup

    AdminNo API tokens

    WhatsApp: embedded signup.

    Types: WhatsAppEmbeddedSignupRequest returns WhatsAppStatusDto

  • whatsapp/retrySetup

    AdminNo API tokens

    WhatsApp: retries setup.

    Types: WhatsAppRetrySetupRequest returns WhatsAppStatusDto

  • listMembers

    Viewer

    Lists members.

    Types: EmptyRequest returns ListMembersResponse

Screens

What it records

The feature writes these events to the audit log, the permanent record of what happened.

  • Integration changed
  • Policy changed
  • Integration connected
  • Onboarding changed
  • Action denied
  • Approval expired
  • Approval received
  • Integration connect failed
  • Integration connect started
  • Org change applied
  • Org change proposed
  • Org change settled

Generated from code at commit be57775 ·

Turn the numbers into shipped work.

Agent runs these choices for you: a persistent AI worker with memory and rules, on your Claude and Codex subscriptions.