All posts
In-product AI··3 min read

Command palette shortcuts: the cheatsheet users expect

Users have memorized ⌘K palettes from Linear, Slack, GitHub, and Notion. Ship the conventions: ⌘K to open, Esc to close, ↑↓ to navigate, Enter to invoke, ⌘Enter for background, Tab to accept suggestions, ⌘⌫ to clear. Use prefix modes (> commands, # issues, @ people, / docs, ? help) and surface a ⌘K chip plus per-row glyphs. Deviating from the convention is not differentiation — it's friction that costs adoption.

⌘
Command+K team
Design

Core bindings users expect

  • ⌘K / Ctrl+K — open palette
  • Esc — close palette
  • ↑ ↓ — move between results
  • Enter — invoke highlighted action
  • ⌘Enter — invoke in new tab / background
  • Tab — accept inline suggestion
  • ⌘⌫ — clear query

Mode prefixes

  • > — commands only
  • # — issues / tickets
  • @ — people
  • / — docs / files
  • ? — help / shortcuts

Make shortcuts discoverable

Show a ⌘K chip in the global header. Show shortcut glyphs on every result row. On first open, show a 3-line tip; never a modal tour.

FAQ

Why ⌘K and not ⌘/?
⌘K is the convention Slack, Linear, GitHub, and Notion use. Users already know it. Don't be different for its own sake.
Should Ctrl+K work on Windows?
Yes. Bind both. Detect platform and show the right glyph in tooltips.
What about screen readers?
Announce the palette as a dialog with role="combobox". Move focus on open; restore on close. aria-activedescendant for the highlighted row.

Keep reading

Go deeper