Problem
Fixing text through a separate chat requires copying it out and pasting the result back. People need to make changes where they are already writing.
Solution
Let people select text and request a change in place. Offer a short menu of clear actions, such as shortening text or fixing grammar, plus a field for other requests.
Provide both a visible control and a keyboard shortcut. Show the proposed result before replacing the original, with options to accept, discard, or try again.
Limit changes to the selected content. Keep the original formatting where possible, and let people undo the accepted change in one step. Keep common edits fast enough to avoid interrupting the writing task.
Use when
People use an assistant inside an editor to revise their own text.
Don’t use when
The task needs conversation to pin down. An ambiguous request, a multi-step change, or anything needing back-and-forth belongs in a panel where a thread can develop, since an inline popover with one input has no room for the second turn.
Trade-offs
A selection gives a clear boundary, but some edits need changes beyond it. Reviewing every proposal adds a step. Selection controls can also overlap the editor’s formatting toolbar or the device’s text-selection menu.
Checklist
- Is the selection the only thing that changes?
- Are accept, discard and try-again all available before the document changes?
- Does a single undo reverse the whole operation?
- Is there a keyboard path, or only a floating control?
- What happens on a selection spanning several blocks, a table, or an image?
- How long does the common case take, and is that fast enough to hold a thought?
- Does the control collide with the editor’s existing selection toolbar?
- Can the viewer type a free-text instruction as well as pick a verb?
- What does the assist see beyond the selection, and is that stated?
- Does it work in a read-only document, and should it?
Compare
Notion runs the full triad on a selection, offering fixes and tone changes with accept, discard or retry before anything is written, and pairs it with an @-mention so other pages can be pulled in as context. Google Docs puts the equivalent at the cursor for generation and keeps the refinement controls attached to the produced block rather than the selection. Linear scopes its assist to the object rather than the prose, acting on an issue as a record instead of on highlighted characters. Figma applies the same idea to non-text objects, where the selection is a frame and the verbs are structural. Very little of this pattern is actually about writing.
Related
Suggestion diff highlights proposed changes. Ghost text offers completions while people type. Assistant sidebar supports requests that need a longer conversation.
AI entry point helps people find these actions. Prompt starters suggest requests for selected content.