78 lines
7.2 KiB
Markdown
78 lines
7.2 KiB
Markdown
# 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
|
|
1. When a first-time user enters the Agent Driven Development tutorial with Agent Modality enabled, Warp shows exactly two sequential callouts.
|
|
1. First-time Agent Driven Development users do not see the tab config/session config modal between completing onboarding slides and starting the callout tutorial.
|
|
1. 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.
|
|
1. 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.
|
|
1. Manual session configuration remains available from its existing non-FTUE entrypoints.
|
|
2. The two-callout sequence is:
|
|
- Callout 1: terminal input with natural language support.
|
|
- Callout 2: Warp's agent experience.
|
|
3. Callout 1 teaches that the terminal input can be used for terminal commands and can also support natural language requests for the agent.
|
|
4. 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.
|
|
5. If natural language detection was initially off, Callout 1 includes a checkbox labeled `Enable Natural Language Detection`.
|
|
6. The natural language detection checkbox reflects the current setting value while the callout is visible.
|
|
7. Toggling the natural language detection checkbox updates the setting immediately.
|
|
8. 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.
|
|
9. Callout 1 has a primary `Next` action for Agent Driven Development users.
|
|
10. Callout 1 shows the first active progress dot in a two-dot sequence for Agent Driven Development users.
|
|
11. 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.
|
|
12. Advancing from Callout 1 enters the scoped agent experience and shows Callout 2.
|
|
13. Callout 2 teaches that agent conversations are their own scoped view outside the terminal, and that the user can press `ESC` to return to the terminal.
|
|
14. Callout 2 shows the second active progress dot in a two-dot sequence.
|
|
15. 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 `Initialize` submits the initialization flow just as the current final onboarding callout does.
|
|
- Choosing skip finishes the tutorial without submitting initialization.
|
|
- Pressing `ESC` while this callout is focused still exits the scoped agent experience and returns to terminal context.
|
|
16. For users who did not select a project before the tutorial:
|
|
- Callout 2 offers a primary `Finish` action.
|
|
- Callout 2 offers a secondary `Back to terminal` action with the `ESC` keybinding.
|
|
- Choosing `Finish` ends the tutorial without submitting a prompt.
|
|
- Choosing `Back to terminal` exits the scoped agent experience, clears the tutorial prompt, and returns to terminal context.
|
|
17. 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 `/init` for the project initialization path.
|
|
- Finishing, skipping, or returning to terminal clears tutorial-provided input.
|
|
18. 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.
|
|
19. Keyboard shortcuts continue to work while each callout is focused:
|
|
- `Enter` advances or activates the primary action.
|
|
- `Backspace`/delete activates the skip action only when a skip action is visible.
|
|
- `Escape` returns to terminal while the final agent-experience callout is visible.
|
|
20. 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.
|
|
21. The shortened flow should not regress non-Agent-Modality onboarding. Universal Input onboarding should continue to use its existing flow.
|
|
22. If onboarding is triggered while Warp is running in a mode that cannot show onboarding, no callouts are shown, matching existing behavior.
|
|
23. If a tutorial is already active, starting the tutorial again should continue to be ignored rather than creating duplicate callouts.
|
|
24. 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.
|