Skip to content

Tatami

Developer Productivity

A macOS workspace manager that groups apps into virtual workspaces and tiles windows using a yabai‑style BSP engine, without needing SIP changes or shell scripting.

Swift Latest v1.4.2 · 7h ago Security brief →

Features

  • Creates virtual workspaces with per‑workspace app assignments
  • Automatic binary space partitioning window tiling (yabai‑style) with directional focus and resize commands
  • Supports floating windows via ScreenCaptureKit without disabling SIP

Recent releases

View all 15 releases →
No immediate action
v1.4.2 Bug fix

Focus fix on close

No immediate action
v1.4.1 New feature

App-level window cycling

v1.4.0 Breaking risk
⚠ Upgrade required
  • Homebrew users should run `brew upgrade --cask tatami`.
  • Direct download: Tatami-1.4.0.dmg from the release page.
  • Sparkle will detect and apply the update automatically on next check.
Breaking changes
  • Per-app `floating` boolean replaced by `layout` field with values "tiled", "floating", or "unmanaged"; downgrading to pre‑1.4 versions reads all apps as tiled.
Notable features
  • Added 'ignore' (unmanaged) layout mode where windows remain full workspace members without tiling.
  • Workspaces now restore the last‑used window when activated without a pinned focus app.
  • Cycle shortcuts traverse all visible windows (tiled, floating, unmanaged) individually.
Full changelog

⚠️ Breaking Changes

  • Per-app layout is now a mode, not a boolean — assigned apps and shared apps carry a layout of tiled / floating / unmanaged instead of floating = true/false. Existing configs (including a pre-1.4 floating bool and legacy [[floatingApps]]) migrate automatically on load. Once saved, the config uses the new layout key, so downgrading to an older Tatami reads every app as tiled; hand-edited configs should switch to layout = "…".

Improvements

  • Ignore-tiling layout mode. A third per-app mode beside tiled and floating: an unmanaged app stays a full workspace member — auto-open, show/hide, focus, focus-follows-mouse, and window cycling all apply — but its window is never tiled into the BSP tree nor mirrored onto an on-top panel, and it needs no Screen Recording. Set it per workspace and per shared app with the Tiled / Float / Ignore picker.
  • Workspaces restore your last-used window. Activating a workspace with no pinned focus app now returns focus to the exact window you last used there, instead of a fixed app.
  • Cycle through every window. The next/previous-window shortcuts walk all visible windows in the active workspace — tiled, floating, and unmanaged — cycling multiple windows of the same app individually.
  • Add apps by search or from disk. The app picker searches running apps, and you can add one straight from a file.
  • Shortcut recording reworked. The recorder shows layout-independent glyphs (⌘S regardless of your keyboard layout), records on a single click, flags conflicts with another binding by name, and suspends global hotkeys while you're recording — so the combo you press lands in the field instead of firing its action. Global hotkeys now run on Magnet (Carbon) under the hood.

Fixes

  • Switching to a workspace no longer bounces back when a native-tab app changes its window id. Apps with macOS native tabs (e.g. ghostty) swap window ids as you switch tabs, which could leave the BSP tree momentarily empty — and "switch to recent" would bounce you to the previous workspace. The active workspace now re-checks its own on-screen windows before switching.
  • Focus-follows-mouse only follows into windows Tatami manages, so notification and HUD panels can't steal focus.
  • Hide-on-close windows are reclaimed even when they fire no Accessibility destroy event.

Install / Update

  • Homebrew: brew upgrade --cask tatami
  • Direct: Tatami-1.4.0.dmg
  • In-app: Sparkle will pick this up on its next check.
Config change
v1.3.3 Breaking risk
Auth

SharedApps rename + screen‑recording requirement

Config change
v1.3.2 Breaking risk
Auth

Screen‑recording perm + config rename + snappier switch

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

About

Stars
11
Forks
0
Languages
Swift HTML CSS

Install & Platforms

Install via
brew
Platforms
macos

Beta — feedback welcome: [email protected]