Reference

Keyboard controls, settings, notifications, refresh behavior, and product boundaries.

Keyboard shortcuts

Character shortcuts work from dashboard controls, but not while typing in Search, the repository picker, or Settings. Arrow keys, Enter, and Space belong to the focused control. The app footer opens an in-app shortcut reference.

ActionShortcut
Select a PR /
Open selected PREnter / o
Copy selected PR URLy
Watch or unwatchw
Snoozes
Involving me / My PRs · Review queue1 / 2
Toggle queuev
Refreshr
Search loaded PRs/
Toggle detailsSpace
Cycle system, light, darkt
Close dialog or detailsEsc
Quit⌘Q / q on macOS; Ctrl+Q / q on Linux

Settings and notifications

Open Settings to edit reviewer suggestions, refresh interval, theme, notification options, update checks, and Advanced issue-link settings. Save validates and applies changes; manual config-file edits require a restart. CLI options override environment variables, which override the file.

The config path is $XDG_CONFIG_HOME/prmarmot/config.toml when XDG_CONFIG_HOME is absolute, otherwise ~/.config/prmarmot/config.toml. Every setting is optional; a clean config starts in All repositories. The app preserves comments and unrelated valid TOML, and refuses to overwrite an unparseable file.

Notifications work only while PR Marmot is open; no background helper is installed. If notifications are disabled on macOS, open System Settings → Notifications → PR Marmot and enable Allow Notifications, then recheck in the app. If PR Marmot is missing, reopen the installed app and check again. On Linux, permission controls vary by desktop environment; allow PR Marmot there if it appears. The first permission action on macOS may show the system prompt, but it does not send a test notification.

Refresh, limits, and boundaries

Automatic refresh defaults to 300 seconds with a hard floor of 30 seconds. The header shows the last sync time and GitHub API budget. Press r for an immediate refresh. Rate-limit pauses wait for budget; repository discovery is bounded to 1,000 repositories across 10 pages.

  • Initial authored or involvement search: up to 60 PRs.
  • Initial review search: up to 60 requested PRs plus 60 candidates before filtering.
  • Load more: at most five pages per active search alias.
  • Reviewer, label, thread, and stack fields also have per-PR GraphQL limits.

GitHub permissions and organization SSO determine visibility. PR Marmot is read-only toward GitHub: it opens PRs or linked issues and copies data, but does not assign reviewers, comment, merge, or modify repository state. Local preferences, watches, snoozes, and seen-state do change on disk. Attention state is stored under $XDG_STATE_HOME/prmarmot, or ~/.local/state/prmarmot, and is namespaced by GitHub host and account.

Return to Getting started or review the GitHub source for implementation detail.

Something unclear? Tell us on GitHub