Controls

Compute time is expensive, and waiting for prompts to run before they can be adjusted wastes time and money. Controls keep users in the driver’s seat by allowing them to stop, pause, and manage the AI’s actions.

Common controls

  • Stop button: the most common control is the stop icon, which allows users to end a request mid-generation. Alternatively use a cancel button. This stops all progress and causes work to be lost.
  • Pause button: allows work to stop without losing progress. Common in AI-powered IDEs like Replit and Cursor where the AI's tasks will be longer and require more power.
  • Fast-forward: for longer responses or workflow steps, the AI may introduce this into the conversation to ensure the user wants to continue with the generation.
  • Play: to start a new task, the play icon or a paper airplane is commonly used, while more decorative magic wands and sparkle icons can often be seen on the initial CTA but not necessarily in later steps.

How can users adjust the AI on the fly without canceling?

Replit Agent and Cursor use the concept of a "queue" to allow users to stack tasks for the AI to complete while it is finishing up previous work. For predictable flows where a full regeneration is not needed, but where tasks may take a while, this allows the user to break next steps down into smaller, manageable tasks. The tasks are then added to the AI's plan. Queued tasks can be modified or deleted.

Design considerations

  • Stop runs in a click. A stop button should appear in the same place every time and remain clickable until the process is complete. This keeps the user in control to stop wasteful generations when necessary.
  • Provide graceful pause and resume. Pausing keeps users in charge during longer or more complicated generations without forcing a restart and causing work to be lost.
  • Let users act in the flow of work. Stack tasks in a queue mimics the real world experience of adding tasks to a backlog or task list. Work in progress does not need to be stopped for new work to be planned.
  • Use variations instead of overwriting. If a control causes work to be regenerated from the start, show the regeneration as an iterative version so users can still reference any generated work from the previous attempt.

Examples

When in research mode, Perplexity allows users to introduce new context while the generation is running without stopping and losing work.
Replit supports the notion of a queue, similar to how a developer would have multiple tasks in their backlog. Users can add new prompts to the queue for the AI to process once it’s done with its last generation.