Install
Maki requires macOS 26 or later. It runs in the menu bar and has no Dock icon.
- Download Maki and move it to the Applications folder.
- Open Maki. The guided start describes the strip and the basic shortcuts.
- When the guided start prompts you, give Maki the Accessibility permission in System Settings.
- Check the macOS settings in the list below. The guided start and Settings › Mac Setup show which ones you still need to change.
- Accessibility permission
- Maki requires this permission to move and resize windows.
- Displays have separate Spaces
- Turn this on in Desktop & Dock, so that each display keeps its own strip.
- Stage Manager is off
- Stage Manager moves windows on its own. Turn it off in Desktop & Dock.
- macOS window tiling is off
- Turn off “Drag windows to screen edges to tile” in Desktop & Dock. macOS tiling resizes a window when you drag it to reorder the strip.
- Trackpad swipe is free
- macOS uses the same swipe to switch desktops. In Trackpad › More Gestures, set “Swipe between full-screen applications” to a different number of fingers, or turn it off.
- No other window manager is running
- Quit any other window manager, so that only Maki moves your windows.
The overview shows a picture of each window. For those pictures, macOS prompts you for the Screen Recording permission the first time you open the overview. The rest of Maki works without it.
Concepts
The strip and its columns
Each display has a horizontal strip that extends past its edges. Each window is a column on the strip. A new window opens beside the focused column, and the other columns keep their widths.
Scrolling and centring
When you focus a column, the strip scrolls only far enough to show it. In Settings › General you can centre the focused column never, only when the strip is wider than the display, or always.
Stacks and tabs
A column can hold several windows. They are either stacked from top to bottom or shown as tabs, one at a time. Stack a window into the column beside it, and pop it out again to give it a column of its own.
Floating windows
Windows with a fixed size, such as Calculator, float in front of the strip. You can float any window, or make every window of an application float with a rule in Settings › Rules.
Displays and Spaces
Each display and each Space has its own strip. A window on a Space that you have not visited since Maki started is added to a strip when you first go to that Space.
Saved layout
Maki saves the order and width of the columns, and restores them when it restarts.
Keyboard shortcuts
Every shortcut uses Control ⌃ and Option ⌥. Some add Shift ⇧ or Command ⌘. You can change each shortcut in Settings › Shortcuts.
Focus
| Focus the column on the left | ⌃⌥Hor⌃⌥← |
| Focus the column on the right | ⌃⌥Lor⌃⌥→ |
| Focus the window above | ⌃⌥Kor⌃⌥↑ |
| Focus the window below | ⌃⌥Jor⌃⌥↓ |
| Focus the first column | ⌃⌥⌘← |
| Focus the last column | ⌃⌥⌘→ |
| Focus column N, from 1 to 9 | ⌃⌥1 … 9 |
| Show or hide the overview of the strip | ⌃⌥O |
Move
| Move the column left | ⌃⌥⇧Hor⌃⌥⇧← |
| Move the column right | ⌃⌥⇧Lor⌃⌥⇧→ |
| Move the window up in its stack | ⌃⌥⇧Kor⌃⌥⇧↑ |
| Move the window down in its stack | ⌃⌥⇧Jor⌃⌥⇧↓ |
| Move the column to the start | ⌃⌥⇧⌘← |
| Move the column to the end | ⌃⌥⇧⌘→ |
| Move the column to position N, from 1 to 9 | ⌃⌥⇧1 … 9 |
| Send the window to the next display | ⌃⌥N |
Width and height
| Cycle through the preset widths | ⌃⌥R |
| Make the column full width | ⌃⌥F |
| Centre the column | ⌃⌥C |
| Make the column wider | ⌃⌥= |
| Make the column narrower | ⌃⌥- |
| Make the window taller | ⌃⌥⇧= |
| Make the window shorter | ⌃⌥⇧- |
| Equalize the heights in the stack | ⌃⌥0 |
| Equalize the widths of the columns in view | ⌃⌥⇧0 |
Stacks, tabs and floating windows
| Stack the window into the left column | ⌃⌥] |
| Stack the window into the right column | ⌃⌥[ |
| Pop the window out to the right | ⌃⌥⇧] |
| Pop the window out to the left | ⌃⌥⇧[ |
| Switch the column between stacked and tabbed | ⌃⌥⇧T |
| Float or tile the window | ⌃⌥T |
Window management
| Stop or start window management | ⌃⌥Q |
Trackpad and pointer
- Swipe with three or four fingers to scroll the strip. The strip stops at the nearest column.
- Drag a window onto another column to reorder the strip.
- Resize a window with the pointer to change the width of its column.
- Focus follows mouse and mouse follows focus are optional. Both are off at first.
macOS uses the same swipe to switch between full-screen applications. In System Settings › Trackpad › More Gestures, set that gesture to a different number of fingers, or turn it off.
Settings
Open Settings from the Maki menu in the menu bar.
- General
- Start at login, and restart after a failure. Animate scrolling. When to centre the focused column. Keep windows clear of a Dock at the side of the display. Show the strip minimap while navigating. Focus follows mouse. Mouse follows focus. Which swipe scrolls the strip: three fingers, four fingers or off. Install the maki command.
- Layout
- Gaps between windows and at the screen edges. The width of a new window. The preset widths, in percent, separated by commas.
- Appearance
- A border around the focused window, with its width and colour. Dimming of the windows that are not focused, with its amount.
- Shortcuts
- Change the shortcut of each command.
- Displays
- Turn window management on or off for each display. Windows on a display that is turned off stay where you put them.
- Rules
- Make every window of an application float, or give an application a fixed slot from 1 to 9 on the strip.
- MCP Server
- Run the MCP server and choose its port.
- Mac Setup
- The macOS settings that affect Maki, and whether each one is set.
- Licence
- Activate, manage or remove your licence.
Automation
The command-line tool, the URL scheme and the Raycast script commands accept the same command names. Each command does the same as its keyboard shortcut.
Command line
To use the maki command in Terminal, choose Install in Settings › General › Command line. That adds a link at /usr/local/bin/maki to the tool inside the application. macOS can prompt you for an administrator password. maki help lists every command.
maki focus-leftURL scheme
Open maki:// followed by the command name.
open "maki://cycle-width"Raycast
The source repository has one Raycast script command for each command, in Integrations/Raycast. Add that folder in Raycast under Extensions › Script Commands.
Command reference
In focus-column-N and move-to-column-N, replace N with a number from 1 to 9.
| Focus | |
|---|---|
focus-left | Focus the column on the left |
focus-right | Focus the column on the right |
focus-up | Focus the window above |
focus-down | Focus the window below |
focus-first | Focus the first column |
focus-last | Focus the last column |
focus-column-N | Focus column N, from 1 to 9 |
toggle-overview | Show or hide the overview of the strip |
| Move | |
move-left | Move the column left |
move-right | Move the column right |
move-up | Move the window up in its stack |
move-down | Move the window down in its stack |
move-first | Move the column to the start |
move-last | Move the column to the end |
move-to-column-N | Move the column to position N, from 1 to 9 |
move-to-next-display | Send the window to the next display |
| Width and height | |
cycle-width | Cycle through the preset widths |
toggle-full-width | Make the column full width |
center-column | Centre the column |
widen | Make the column wider |
narrow | Make the column narrower |
taller | Make the window taller |
shorter | Make the window shorter |
equalize-heights | Equalize the heights in the stack |
equalize-widths | Equalize the widths of the columns in view |
| Stacks, tabs and floating windows | |
stack-into-left-column | Stack the window into the left column |
stack-into-right-column | Stack the window into the right column |
pop-out-right | Pop the window out to the right |
pop-out-left | Pop the window out to the left |
toggle-tabbed-column | Switch the column between stacked and tabbed |
toggle-floating | Float or tile the window |
| Window management | |
toggle-management | Stop or start window management |
MCP server
Maki can serve the Model Context Protocol, so that an AI assistant can get and change the arrangement of your windows. Turn it on in Settings › MCP Server. It is off at first.
The server accepts connections at http://127.0.0.1:7475/mcp from this Mac only. Any program on this Mac can then read the titles of your windows. It uses the Streamable HTTP transport. The settings show the setup for each client, with the port that you chose.
| Claude Code | claude mcp add --transport http maki http://127.0.0.1:7475/mcp |
| Codex CLI | codex mcp add maki --url http://127.0.0.1:7475/mcp |
| Gemini CLI | gemini mcp add --transport http maki http://127.0.0.1:7475/mcp |
| Amp | amp mcp add maki http://127.0.0.1:7475/mcp |
Clients that start a local process instead of connecting to an address, such as Claude Desktop, can use maki mcp-relay as that process. Services that run in the cloud cannot reach the server.
Tools
get_layout- Returns each display, the strip of each Space with its columns and windows, and the focused, floating, minimized and full-screen windows.
set_layout- Arranges windows as a document describes, completely or not at all.
update_window- Changes one window: floating, column width, height in a stack, full width, tabs or column position.
find_windows- Finds windows by application, bundle identifier or title.
run_command- Runs a command on the focused window, as its keyboard shortcut does.
set_management- Starts or stops window management.
get_settings- Returns the settings and the keyboard shortcut of each command.
A document from get_layout passed back to set_layout restores that arrangement. Window IDs stay valid until Maki restarts.
Trial and licence
- Maki is free for 14 days, with every feature. After that, a licence costs $19 once, with no subscription. Buy a licence.
- One licence covers three Macs and includes updates, with no time limit.
- When the trial ends, window management stops until you activate a licence.
- To move a licence to a different Mac, first remove it in Settings › Licence. To free a Mac that you no longer have, use Manage Licence in Settings, or open the licence portal.
Maki uses Sparkle to check for and install updates.
Troubleshooting
Maki uses only public macOS interfaces, but it relies on behaviour that Apple does not document. A macOS update can change that behaviour.
- To pause Maki, stop window management with ⌃⌥Q. Press it again to start.
- macOS does not let an application hide a window of another application. Windows that are scrolled out of view are parked with one point visible at the edge of the display.
- To report a problem, open the engine log from the Maki menu. It is at
~/Library/Logs/Maki/engine.log. - The saved layout is at
~/Library/Application Support/Maki/layout.json.