Automatically tile all open windows into a main-pane-plus-stack layout without touching the mouse.
Cycle through layouts, Wide, Fullscreen, Binary Space Partitioning, to match your current workflow.
Throw windows to a different screen or virtual desktop with a single keyboard shortcut.
Must grant macOS Accessibility permission under Security and Privacy on first run.
Amethyst is a tiling window manager for macOS. Instead of leaving you to drag and resize app windows by hand, it automatically arranges the windows on each screen into a clean grid, and lets you move, resize, and reshuffle them entirely from the keyboard. The README describes it as being "along the lines of xmonad", a well-known tiling window manager from the Linux world. The way it works is straightforward in spirit. Whenever you open, close, or focus a window, Amethyst picks one of its built-in layouts and slots all visible windows into it. The default layout, called Tall, gives you one "main pane" on the left holding the primary window and a second pane on the right where every other window stacks. There are many alternative layouts to cycle through: Tall-Right, Wide, three different three-column layouts, Widescreen-Tall, Fullscreen, Column, Row, a free-floating mode, and a Binary Space Partitioning layout that recursively splits the screen as you add windows. A long list of keyboard shortcuts using two modifier combinations (option+shift and ctrl+option+shift) lets you change focus, swap windows, throw a window to another screen or virtual space, shrink or grow the main pane, toggle a window into floating mode, and pick a specific layout. You would reach for Amethyst if you work with many windows at once on a Mac and find macOS's manual window management slow or fiddly. Because it relies on the macOS accessibility APIs, you must grant Amethyst Accessibility permission under Security & Privacy on first run. Amethyst is written in Swift and supports macOS 10.12 and newer. You can install it from the GitHub releases page or through Homebrew Cask.
← ianyh on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.