Skip to content

Skip onboarding UIs in SDK/headless mode#9590

Merged
bnavetta merged 1 commit into
masterfrom
ben/sdk-skip-onboarding
Apr 30, 2026
Merged

Skip onboarding UIs in SDK/headless mode#9590
bnavetta merged 1 commit into
masterfrom
ben/sdk-skip-onboarding

Conversation

@bnavetta
Copy link
Copy Markdown
Contributor

Description

The onboarding flow managed by OnboardingCalloutModel was getting triggered when Warp runs in headless SDK/CLI mode. There is no real user to interact with the callout in those runs, so the tutorial would silently take over the input and discard the prompt the SDK had submitted.

This PR adds an AppExecutionMode::can_show_onboarding gate (which mirrors the other is_app()-based capability checks) and uses it to skip every onboarding entry point in SDK mode:

  • Workspace::start_agent_onboarding_tutorial
  • Workspace::dispatch_tutorial_when_bootstrapped
  • Workspace::should_show_agent_onboarding
  • Workspace::should_trigger_get_started_onboarding
  • Workspace::check_and_trigger_onboarding

In App mode behavior is unchanged.

Testing

cargo check -p warp_core and cargo check -p warp both pass.

Server API dependencies

No server changes.

Agent Mode

  • Warp Agent Mode - This PR was created via Warp's AI Agent Mode

Changelog Entries for Stable

CHANGELOG-BUG-FIX: Don't trigger the agent onboarding tutorial when Warp is running in headless SDK/CLI mode.

Conversation: https://staging.warp.dev/conversation/e7e67056-a174-4995-9fb0-54c104d09d12
Run: https://oz.staging.warp.dev/runs/019dde8f-ff05-716f-8c3a-e7644e40f40d

This PR was generated with Oz.

Adds AppExecutionMode::can_show_onboarding which returns true only when
running as the desktop app. The OnboardingCalloutModel-driven tutorial,
the get-started tab onboarding, and check_and_trigger_onboarding all
gate on this so SDK/CLI runs no longer trigger onboarding flows that
require a real user.

Co-Authored-By: Oz <oz-agent@warp.dev>
@cla-bot cla-bot Bot added the cla-signed label Apr 30, 2026
@bnavetta bnavetta marked this pull request as ready for review April 30, 2026 14:46
@bnavetta bnavetta requested a review from ianhodge April 30, 2026 14:46
@oz-for-oss
Copy link
Copy Markdown
Contributor

oz-for-oss Bot commented Apr 30, 2026

@bnavetta

I'm starting a first review of this pull request.

You can view the conversation on Warp.

I completed the review and posted feedback on this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

Copy link
Copy Markdown
Contributor

@oz-for-oss oz-for-oss Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overview

This PR adds an AppExecutionMode::can_show_onboarding capability and uses it to suppress workspace-level onboarding flows in SDK/headless mode while preserving app-mode behavior.

Concerns

  • No blocking correctness or security concerns found in the changed hunks.

Verdict

Found: 0 critical, 0 important, 0 suggestions

Approve

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

@bnavetta bnavetta merged commit aa2ac33 into master Apr 30, 2026
40 checks passed
@bnavetta bnavetta deleted the ben/sdk-skip-onboarding branch April 30, 2026 15:10
wolverine2k pushed a commit to wolverine2k/warp that referenced this pull request May 5, 2026
The onboarding flow managed by `OnboardingCalloutModel` was getting
triggered when Warp runs in headless SDK/CLI mode. There is no real user
to interact with the callout in those runs, so the tutorial would
silently take over the input and discard the prompt the SDK had
submitted.

This PR adds an `AppExecutionMode::can_show_onboarding` gate (which
mirrors the other `is_app()`-based capability checks) and uses it to
skip every onboarding entry point in SDK mode:

- `Workspace::start_agent_onboarding_tutorial`
- `Workspace::dispatch_tutorial_when_bootstrapped`
- `Workspace::should_show_agent_onboarding`
- `Workspace::should_trigger_get_started_onboarding`
- `Workspace::check_and_trigger_onboarding`

In `App` mode behavior is unchanged.

`cargo check -p warp_core` and `cargo check -p warp` both pass.

No server changes.

- [x] Warp Agent Mode - This PR was created via Warp's AI Agent Mode

CHANGELOG-BUG-FIX: Don't trigger the agent onboarding tutorial when Warp
is running in headless SDK/CLI mode.

_Conversation:
https://staging.warp.dev/conversation/e7e67056-a174-4995-9fb0-54c104d09d12_
_Run:
https://oz.staging.warp.dev/runs/019dde8f-ff05-716f-8c3a-e7644e40f40d_

_This PR was generated with [Oz](https://warp.dev/oz)._

Co-authored-by: Oz <oz-agent@warp.dev>
@timomak timomak mentioned this pull request May 10, 2026
1 task
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants