rcmd

Reimagined Command-Tab
App switching at the speed of thought
brew install rcmd
Migrating from the App Store?
Pressing Right Command and S to bring Safari to the front

Instant app switching

Hold down ⌘ Right Command and press the first letter of the app name to focus apps instantly.
vs

Zero configuration

Apps get dynamically assigned letters so app switching works out of the box.

Pick your trigger

Replace ⌘ Right Command with any key like ⇪ Caps Lock, fn, Command - Control

No key conflicts

The ⌘ Left Command key remains fully functional for macOS shortcuts like Cmd C and Cmd V.

App launching

Press ⌘ rcmd + ⌥ ralt + any letter to assign that letter to the focused app.

Custom letters can be assigned per-app so the same key combo will launch the app if it's not already running.

Show/hide and cycle without moving your fingers

Show and hide

⌘ rcmd letter 2x · show/hide an app

  • press T to view Terminal
  • press T again to hide it
Cycle windows

⌘ rcmd letter 2x · cycle windows

  • press F to focus Finder
  • press F again for its next window
Cycle apps

⌘ rcmd letter 2x · cycle apps

  • press M for Mail
  • press M again for Music

Fuzzy search appsPro

Hold ⌘ rcmd and type to search directly to launch any app.
Hold · type · release

You can fuzzy type things like px for Pixelmator or ff for Firefox, rcmd will learn from your choices.

Fuzzy launcherPro

Press ⌘ rcmd Space to open a launcher where you can fuzzy search apps, launch them, focus or quit running apps.

Pin a multi-letter query to an app, so that you can hold ⌘ rcmd, type those letters and release to always launch and focus the same app.

Cmd-Tab to switch, type to fuzzy search

Press ⌘ Right Command Tab to see a grid of windows from the current Space or Stage, navigate with tab and arrows. Press F3 to see all windows.
Start typing to fuzzy search window titles and contents and find any window instantly.

Same-app cycling

Press ⌘ Command backtick to cycle between windows of the same app, even if they’re on different Spaces.

Grid of windows (⌘ Right Command Tab)
Type to search windows

Window actions

Familiar key combos work by default on the highlighted window:
  • ⌘Wto close the window
  • ⌘Mto minimize it
  • ⌘Hto hide the whole app
  • ⌘Qto quit the app
  • Spaceto Quick Look a window
  • ⌘Pto show the window as floating Picture-in-Picture (using Pipiri)

Search inside windowsPro

Type to fuzzy search text inside your windows, so you can find a terminal based on a specific command, or a PDF window based on its title.
The text is parsed using Apple's on-device Vision models, running on the Neural Engine.
Grid of windows (⌘ Right Command Tab)
Exposé

Instant Space SwitchingPro

Hold ⌘ Right Command and press 1…9 to jump to any Space instantly, no sliding animations to slow you down.

Jump to any Space

Move the focused window to a Space

Adjacent Spaces

Turn on macOS Spaces integration in Settings for these keys, and Previous and next Space for the brackets.

Exposé

Every open window on one screen, with keys to find one and act on it.

All Spaces and displays
windows from all of them, side by side
Fuzzy search
search window names and contents
Act in place
close, hide or move the hovered window
Press ⌘ rcmd + . to see the windows of every Space and every display at once.
Use letter keys to focus apps. Press / and type to fuzzy search in windows.

Same familiar key combos for window management work on the hovered window

LensesPro

Extend rcmd to find, launch and focus content inside your apps

Browser tabs
Safari, Chrome, Arc, Brave, Edge, Vivaldi, Firefox
Terminal panes
Terminal, iTerm, Ghostty, kitty, tmux, zellij, herdr
Code editor projects
VS Code, Cursor, Zed, Sublime Text, Nova, Xcode

Browser tabs, projects, anything really

Hold ⌥ Right Option and type to search browser tabs, terminal panes, code editor projects.
The flexible Lens system allows rcmd to see inside your apps and interact with their content directly.

Add more lenses from the presets in Settings, or tell a coding agent to create new ones for you using rcmd's MCP server.

StagesPro

Save the windows on screen as a Stage, then restore it from the menu bar or the window switcher.
Weather app dev
  • VS Code~/Projects/weather-appTop-left
  • Terminal~/Projects/weather-appBottom-left
  • Safarilocalhost:5173Right half

A modifier can be assigned to Stages to quickly restore, focus and even close complete stages with a specific key combination.

On-screen key hints

Keep holding ⌘ rcmd a moment longer and Keylume will show an on-screen keyboard with the app assigned to each letter.

rcmd can install and fully configure Keylume for you, and it can be used for free, no paid license is required.

on-screen keyboard showing rcmd app layer

Themes and customization

A theming engine allows you to customize the appearance of the whole app switcher and search experience.
Pick one of the built-in themes or create your own.

For scripts and agents

MCP server

AI agents can list and focus windows, switch Spaces, open Stages and create lenses through rcmd's MCP server.

Command line

Control windows, apps and Spaces from a terminal or a script with the rcmd command.

Config file

Keys, settings and Stages are saved in ~/.config/rcmd/config.yaml, which can be kept in a dotfiles repo.

Free vs Pro

Free version features are free forever
After the 14-day trial, the app will continue to work with the free features
Featurercmd ProFree version
Instant app switching
Dynamic and custom key assignments
Hold a letter to assign it
Same letter to hide, cycle or show all windows
Spaces navigation by number
Tab cycling between recent windows
Command-Tab replacement
Companion Keylume on-screen keyboard
Exposé of every Space and display
Fuzzy search of apps and windows
Window switcher with live thumbnails
Search inside windows
Recently closed windows
Lenses for tabs, panes and projects
Instant Space Switching (no animation)
Stages (workspace saving and restoring)
Favorites for pages, files and projects
Move window to another Space (⌥+digit)
Mouse follows focused app
Try for free14-day trial of Pro features

No credit card required, keep using for free after the trial

Refunds accepted within 14 days of purchase, no questions asked

FAQ

Migrating from the App Store rcmd

If you previously installed rcmd from App Store, these are the steps needed to migrate to this version:

  • delete rcmd.app using Finder (don't delete using Launchpad or app cleaners, we need to keep settings around)
  • download rcmd.dmg from this page
  • open the DMG and move rcmd.app in Applications
  • launch rcmd

What will happen next:

  • the old settings will be migrated to the new version (old settings are kept intact in case you want to go back to the App Store version)
  • a 14-day trial starts with the Pro features enabled
  • after 14 days, the app keeps working in Free mode

License transfer

There's no license transfer needed because rcmd now has a free tier which has the same features that were in the App Store version.

You would only need to pay if you want to use the newly added Pro features.


How can I see app logs?

You can do that either through Console.app or through the log Terminal command.

Terminal

Streaming logs for viewing:

log stream --level debug --source --style compact --predicate 'subsystem BEGINSWITH "com.lowtechguys.rcmd"'

Streaming and collecting logs to a file:

log stream --level debug --style compact --predicate 'subsystem BEGINSWITH "com.lowtechguys.rcmd"' | tee ~/Desktop/rcmd.txt

Console.app

  1. Write com.lowtechguys.rcmd in the search bar and press Enter
  2. Click on Any and choose Subsystem
  3. Make sure Info and Debug messages are enabled in the Action menu
  4. Start streaming logs
filtering console logs by subsystem showing console info debug messages

Saving Console logs

In the Console window, select 1 log line, then press Cmd-A and Cmd-C to copy all log lines to clipboard.

After that you can press Cmd-V to paste it in a Discord chat, the Contact form or in an editor like TextEdit to save it to a file.


License doesn't stay activated

Possible causes

  • Tampered bundle (usually because of app cleaners deleting files from inside the app)
  • App can't access internet (usually because of LuLu or Little Snitch, or VPN/DNS)
  • Corrupt license files

Resetting app and license files

  • delete the license files (.padl and .spadl) from ~/Library/Application Support/rcmd/
  • delete the app from Applications
  • restart the app and retry activating

First quit the app before doing any of these changes.

To delete the license files, press Cmd-Shift-G in Finder, paste this path and press Enter:

~/Library/Application Support/rcmd/

Delete the files ending in .padl and .spadl in that folder.

Re-download the app, open the DMG and move it to Applications replacing the existing app.

Launch the app and activate.

Make sure Paddle can be reached

Paddle is the licensing provider that rcmd is using.

If the issue persists, try checking if Paddle's servers are reachable by your Mac. Ensure the following domains are not blocked in your network:

  • paddle.com
  • paddleapi.com
  • v3.paddleapi.com
  • access.paddle.com
  • checkout.paddle.com
  • vendors.paddle.com
  • paddle.s3.amazonaws.com

For example, loading v3.paddleapi.com/3.2/license/verify in a browser (or with curl) should show a response like the following:

{
    "success": false,
    "error": {
        "code": 102,
        "message": "Unable to authenticate"
    }
}

If it shows a browser error or if it keeps loading continuously, then the domain is blocked and that's preventing activation and license checking.

Firewalls

Try disabling LuLu, Little Snitch or try adding rcmd to the exclusion list of these firewalls.


What permissions does rcmd need?

Everything rcmd reads with these permissions stays in memory on your Mac. Nothing is sent outside your Mac.

Accessibility

Needed for reading your trigger key, and for focusing, moving, resizing, closing and minimizing windows.

Without it rcmd can't see any key press, so nothing works.

Screen Recording

rcmd uses it for:

  • window titles: since macOS Catalina, reading another app's window titles is only possible with this permission, and without titles rcmd sees no windows at all
  • window thumbnails in the window switcher, the window grid and Exposé
  • Quick Look: pressing space on a window tile shows that window live, for as long as Quick Look is open
  • Search window contents: the text in each thumbnail is read by Apple's on-device Vision models, so you can find a window by text contents

rcmd captures only single windows, not your whole screen, and it does not record video. The thumbnails and the text read from them are kept in memory only.

Automation (Apple Events)

macOS asks for this once for each app, the first time rcmd sends a command to that app.

rcmd uses it to:

  • read the URL of the active tab in Safari, Chrome, Edge, Brave, Arc, Vivaldi and Opera
  • read the folder of a Finder window and the working directory of an iTerm2 window
  • run a Stage's terminal command in Terminal, iTerm2 or Ghostty when the Stage opens
  • list and focus the tabs, panes and other items of the enabled Lenses (no lens is enabled by default)

Without it, rcmd still saves and opens the apps and windows of a Stage, but windows might open empty, without the document or page they had.

Only when you use them

  • Full Disk Access: for Lens scripts that need access to protected locations (e.g. Safari history)
  • Downloads folder (and other folders): for Lens scripts that may access those folders to list projects or files