7.2 KiB
GH11107: Reduce first-time agent onboarding callouts
Summary
Reduce the first-time Agent Modality onboarding tutorial from four callouts to two callouts, and remove the FTUE tab/session configuration modal from the handoff into the tutorial. The shorter flow should teach the same essential concepts with less interruption: terminal input can route commands or natural language, and agent conversations now live in their own scoped agent experience.
Problem
The current Agent Modality first-time tutorial shows four sequential callouts before the user can finish onboarding. That amount of instructional UI is too heavy for a first-run experience, especially because some concepts can be combined without losing clarity.
Goals
- Show at most two callouts for the Agent Driven Development onboarding tutorial.
- Preserve the natural language detection opt-in/override explanation.
- Preserve the transition from terminal input into the scoped agent experience.
- Preserve project initialization behavior for users who selected a project.
- Preserve the ability to finish without submitting anything for users who did not select a project.
- Start the post-slide tutorial directly without requiring first-time users to configure a tab, session type, worktree, or startup config.
- Reuse the existing callout visual style, button conventions, keyboard shortcuts, progress dots, and placement patterns.
Non-goals
- Redesigning the callout component.
- Changing the broader onboarding slides before the callout tutorial starts.
- Changing the natural language detection setting outside the first-run tutorial.
- Changing how the agent experience itself works after the tutorial completes.
- Removing or changing the manual session configuration modal outside FTUE.
- Changing reusable tab config, worktree, or new-session menu behavior outside the FTUE handoff.
- Introducing a new visual treatment, animation, or Figma-driven layout for the callouts.
Figma
Figma: none provided. This change uses the existing onboarding callout component and consolidates existing callout content.
Behavior
- When a first-time user enters the Agent Driven Development tutorial with Agent Modality enabled, Warp shows exactly two sequential callouts.
- First-time Agent Driven Development users do not see the tab config/session config modal between completing onboarding slides and starting the callout tutorial.
- First-time Agent Driven Development users are not required to choose a session type, project setup, worktree setup, or startup tab config before the callout tutorial starts.
- If the user selected a project in the onboarding slides, Warp should continue using that selection for the tutorial/project initialization path without re-asking through the tab config modal.
- Manual session configuration remains available from its existing non-FTUE entrypoints.
- The two-callout sequence is:
- Callout 1: terminal input with natural language support.
- Callout 2: Warp's agent experience.
- Callout 1 teaches that the terminal input can be used for terminal commands and can also support natural language requests for the agent.
- Callout 1 includes the natural language detection explanation:
- Natural language detection is off by default when the user's setting is initially off.
- If enabled, Warp can autodetect plain-English agent requests typed into terminal input.
- The user can override auto-detection with the configured input-mode toggle keybinding.
- If natural language detection was initially off, Callout 1 includes a checkbox labeled
Enable Natural Language Detection. - The natural language detection checkbox reflects the current setting value while the callout is visible.
- Toggling the natural language detection checkbox updates the setting immediately.
- If natural language detection was already enabled before the tutorial started, Callout 1 does not need to show the enable checkbox. It should instead use shorter copy focused on the override keybinding.
- Callout 1 has a primary
Nextaction for Agent Driven Development users. - Callout 1 shows the first active progress dot in a two-dot sequence for Agent Driven Development users.
- While Callout 1 is visible, the tutorial remains anchored to the terminal input / terminal context. The user should not be moved into the scoped agent experience before advancing past Callout 1.
- Advancing from Callout 1 enters the scoped agent experience and shows Callout 2.
- Callout 2 teaches that agent conversations are their own scoped view outside the terminal, and that the user can press
ESCto return to the terminal. - Callout 2 shows the second active progress dot in a two-dot sequence.
- For users who selected a project before the tutorial:
- Callout 2 offers an initialization action.
- The primary action is
Initialize. - A secondary action lets the user skip initialization.
- Choosing
Initializesubmits the initialization flow just as the current final onboarding callout does. - Choosing skip finishes the tutorial without submitting initialization.
- Pressing
ESCwhile this callout is focused still exits the scoped agent experience and returns to terminal context.
- For users who did not select a project before the tutorial:
- Callout 2 offers a primary
Finishaction. - Callout 2 offers a secondary
Back to terminalaction with theESCkeybinding. - Choosing
Finishends the tutorial without submitting a prompt. - Choosing
Back to terminalexits the scoped agent experience, clears the tutorial prompt, and returns to terminal context.
- The existing placeholder prompt behavior should remain coherent:
- Callout 1 should populate terminal-context sample input.
- Callout 2 should populate agent-context sample input, or
/initfor the project initialization path. - Finishing, skipping, or returning to terminal clears tutorial-provided input.
- Terminal-intention onboarding remains terminal-focused. It should not enter the scoped agent experience or show the agent-experience callout unless the user chose the Agent Driven Development path.
- Keyboard shortcuts continue to work while each callout is focused:
Enteradvances or activates the primary action.Backspace/delete activates the skip action only when a skip action is visible.Escapereturns to terminal while the final agent-experience callout is visible.
- Existing telemetry concepts remain meaningful:
- A display event is recorded for each visible callout.
- A next event is recorded when the user advances.
- A completion event is recorded with the user's completion type.
- Removed callouts should not be reported as displayed.
- The shortened flow should not regress non-Agent-Modality onboarding. Universal Input onboarding should continue to use its existing flow.
- If onboarding is triggered while Warp is running in a mode that cannot show onboarding, no callouts are shown, matching existing behavior.
- If a tutorial is already active, starting the tutorial again should continue to be ignored rather than creating duplicate callouts.
- The callout UI uses the existing component styling, theme colors, progress dots, button styling, and layout behavior. This change is a content and flow reduction, not a visual redesign.