Skip to content

Add command palette for actions + separate browser for navigation #237

Description

@germanescobar

Context

We're building a command palette as the primary interaction surface. We need to decide (and have decided) how to split the surface between actions (create conversation, run project, etc.) and navigation (browse projects, worktrees, sessions).

Decision

Use two separate palettes, following the VS Code / JetBrains convention:

  • Action palette — verbs: create new conversation, run project, etc.
  • Browser palette — navigation: fuzzy search across projects, worktrees, and sessions.

Rationale

  • Actions and navigation are different mental models. Mixing them forces the user to mentally filter results by type on every invocation.
  • Users already have muscle memory for the split (Cmd+P vs Cmd+Shift+P).
  • Frequency differs: the browser is opened constantly, the action palette less often. Splitting lets us optimize each independently (recents and breadcrumbs for the browser; confirmations and parameter prompts for actions).
  • Linear/Raycast escape hatch: the action palette should also allow navigation to anything browseable as a fallback, so we never need a third palette.

Acceptance criteria

  • Action palette exposes create-conversation, run-project, and other verbs
  • Browser palette exposes fuzzy-search navigation across projects, worktrees, and sessions
  • Action palette includes a "jump to..." fallback so navigation is not blocked when the browser isn't handy
  • Document the keybindings and where each palette lives

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions