Skip to content
OmniNullPublic

About

Free, open-source tiling window manager for Apple Silicon Macs, with Niri-style scrolling containers and Hyprland-style Dwindle BSP.

Topics

Resources

Contributing

Security policy

Stars

3.6k stars

Watchers

15 watching

Forks

Repository files navigation

Warning

Fake accounts are impersonating OmniWM and its author on other platforms. OmniWM communicates only through its official GitHub repository, github.com/OmniNull/OmniWM. Fake accounts found so far:

  • x.com/BarutSRB
  • x.com/OmniWM

OmniWM is free and has no hidden paywalls, as I promised from the start and I would rather eat 💩 than go back on that promise. The only official way to sponsor the project is GitHub Sponsors, because paying contributors back honestly needs a ledger.

— BarutSRB

OmniWM

OmniWM is a free, open-source, Developer ID-signed and Apple-notarized tiling window manager for Apple Silicon Macs running macOS 26 or later. It combines Niri-style orientation-aware scrolling containers and Hyprland-style Dwindle BSP layouts, selectable per workspace, with multi-monitor routing and optional local CLI/IPC automation.

Website · Documentation · Install · Compatibility · Fluxer

OmniWM — Do what you love easier, faster, better.

macOS Apple Silicon OpenAI Assisted

OmniNull%2FOmniWM | Trendshift

OmniNull%2FOmniWM | Trendshift OmniNull%2FOmniWM | Trendshift

Demo Video

Watch the demo

Contributors

Thank you to everyone who contributed to OmniWM. Your ideas and code made a real difference.


🤝 Company Sponsors

Blacksmith logo
Blacksmith.sh

All of OmniWM's CI runs on Blacksmith. On their smallest runners (6 vCPU Mac, 2 vCPU Linux), a full CI run finishes 44% faster than on GitHub-hosted macOS runners, and signed, notarized builds take half the time. Their larger runners, up to 12 vCPU on Mac and 32 on Linux, can go faster still.
CodeRabbit logo
CodeRabbit

CodeRabbit isn't a formal sponsor; this is my personal thank-you. Their AI-powered code review service automatically reviews pull requests, summarizes changes, and flags potential bugs and security issues with suggested fixes. They offer it free to open-source projects like OmniWM, and it has been truly helpful. I truly appreciate their support for open source.

🛠️ Maintainers

Aleksei Gurianov KomarovD millia ampora Richard G ryoppippi Zhizhen He

🏢 By Employer

Atlassian
Atlassian
━━━━━━━━
Josh Taylor
Josh Taylor
@joshbtay
Bitkey
Bitkey
━━━━━━━━
Naoki Ikeguchi
Naoki Ikeguchi
@siketyan
BlueLabs
BlueLabs
━━━━━━━━
Cristian Álvarez Belaustegui
Cristian Álvarez Belaustegui
@crbelaus
Edgeless Systems
Edgeless Systems
━━━━━━━━
Moritz Sanft
Moritz Sanft
@msanft
EPAM Systems
EPAM
━━━━━━━━
Aleksei Gurianov
Aleksei Gurianov
@Guria
Finanzguru
Finanzguru
━━━━━━━━
Janek Thomaschewski
Janek Thomaschewski
@jthomaschewski
GitHub
GitHub
━━━━━━━━
Ryan Hecht
Ryan Hecht
@RyanHecht
Google
Google
━━━━━━━━
muhammadkh
muhammadkh
@MuhammadKh
inDrive
inDrive
━━━━━━━━
millia ampora
millia ampora
@dappermint
Learninghubz
Learninghubz
━━━━━━━━
Nuno Lopes
Nuno Lopes
@nblopes
Liip
Liip
━━━━━━━━
Jonathan Macheret
Jonathan Macheret
@Jonathanm10
Luxor Labs
Luxor Labs
━━━━━━━━
Albert Ilagan
Albert Ilagan
@albertilagan
mooola
mooola
━━━━━━━━
Luke Stephens
Luke Stephens
@imprisonedmind
Nx
Nx
━━━━━━━━
Steven Nance
Steven Nance
@llwt
ReactSquad
ReactSquad
━━━━━━━━
Jan Hesters
Jan Hesters
@janhesters
Spotify
Spotify
━━━━━━━━
Alexander Dergachev
Alexander Dergachev
@Cy6erBr4in
SSW Consulting
SSW Consulting
━━━━━━━━
Matt Wicks
Matt Wicks
@wicksipedia
vhf
vhf
━━━━━━━━
Lukas Gerlinski
Lukas Gerlinski
@lgerlinski
Viber
Viber
━━━━━━━━
Yuri Chukhlib
Yuri Chukhlib
@YuriNachos
Walt
Walt
━━━━━━━━
Anton Plotnikov
Anton Plotnikov
@pltanton

🎓 By Education

Assumption University of Thailand
Assumption University of Thailand
━━━━━━━━
Panuphong Burakitphachai
Panuphong Burakitphachai
@t1dotdev
Linnaeus University
Linnaeus University
━━━━━━━━
Balazs Hevesi
Balazs Hevesi
@balazshevesi
NTU Singapore
NTU Singapore
━━━━━━━━
Nawat Suangburanakul
Nawat Suangburanakul
@holmns
Olin College of Engineering
Olin College of Engineering
━━━━━━━━
Cypress Frankenfeld
Cypress Frankenfeld
@cypressf
SUSTech
SUSTech
━━━━━━━━
Yang-Yiming
Yang-Yiming
@Yang-Yiming

✨ All Contributors

Adelin Berard Aisling Albert Ilagan Aleksei Gurianov Alexander Dergachev Aliaksandr Anton Plotnikov Ayaan Sandhu Balazs Hevesi binghan1227 Brendan Doney Brian Smyth CallMeLaNN CarlitoGrey Chanatun Kohsuwan chen259456754 Cristian Álvarez Belaustegui Cypress Frankenfeld Dereck Angeles Fakhri Shirinov Filippo Zaffoni Fletcher Alderton georgian Henrik Larsson Hestnes Henry Perschk Jan Hesters Janek Thomaschewski Janos Miko Jonathan Macheret Jose Cardama Josh Taylor Kiel Ed KomarovD Lukas Gerlinski Luke Stephens mao Marcus Harlid Davin Mateusz Juszczyk matt petters Matt Wicks millia ampora mkdir700 mm Mokhtar Moritz Sanft muhammadkh Naoki Ikeguchi Nawat Suangburanakul Ngo Quoc Viet Nuno Lopes Panuphong Burakitphachai Rich Hanes Richard Ginzburg rPio Ryan Hecht Steven Nance Taylor Bell Williamufo Yang-Yiming YeungKC Yuri Chukhlib Zhizhen He Zicochaos

Highlights

  • Optional window switcher with previews and separate Command-Tab / Option-Tab workspace scopes
  • Ghostty-powered quake/sticky terminal
  • Optional app theming that colors Ghostty, kitty, herdr, Neovim and your own templates from the palette in light and dark
  • Native macOS window-tab support
  • Local IPC and omniwmctl automation
  • Scratchpads and sticky windows for any app
  • Overview
  • Unified command palette for windows, app menus, clipboard history, OmniWM commands, applications, and files
  • Menu Anywhere
  • Niri-style tabbed containers and Dwindle tile groups
  • Niri-style scrolling and Hyprland-style Dwindle BSP layouts
  • Status-bar icon concealment (similar to Ice)
  • Keep Awake (similar to Caffeine)
  • Interactive workspace and app-icon bar

Requirements

  • macOS 26+ (Tahoe) on Apple Silicon, SIP stays on
  • Accessibility and Input Monitoring
  • Displays have separate Spaces turned on in System Settings > Desktop & Dock > Mission Control
  • Optional: Screen Recording (Overview thumbnails, drag previews) and Full Disk Access (Hidden Bar, Notifications widget)

Details and known limitations: Compatibility, Requirements & Limitations.

Installation

brew install --cask omniwm

This installs OmniWM.app and puts omniwmctl on your PATH. OmniWM is also in nixpkgs with a Home Manager programs.omniwm module, and on GitHub Releases. Nix setup, canary builds, upgrading, and moving off the retired BarutSRB/tap are in the install guide.

OmniWM checks for new releases once a day and never installs anything on its own. Turn it off in Settings > General > Updates.

Quick Start

  1. Turn on Displays have separate Spaces and log out and back in if it was off
  2. Launch OmniWM, grant Accessibility and Input Monitoring (Screen Recording is optional), then click Start OmniWM
  3. Windows tile into Niri scrolling containers; switch a workspace to Dwindle BSP with Toggle Workspace Layout
  4. Option + 1-9 switches workspaces and Option + Shift + 1-9 moves the focused window; the rest is in Keyboard Shortcuts

Settings live in ~/.config/omniwm/settings.toml and reload when you save it. More in the full quick start.

Documentation

Everything lives at omniwm.app and follows current main.

Community

Questions, setup help and config sharing happen on the OmniWM Fluxer and OmniWM Discord. Integrations (omacosy, OmniWM Computer Use, OmniCast) and related forks (Nehir, choru-k/OmniWM) are listed on Community & Support.

Reporting Bugs

Use the GitHub issue form and include your OmniWM and macOS versions.

Contributing

Issues and pull requests are welcome. Start with CONTRIBUTING.md; the docs sources live in website/src/content/docs.

Building from Source

Follow the contributor quick start for Xcode requirements, automatic dependency setup with Lix and the repository's flake.nix, and a separate OmniWM Dev app with independent settings. The guide covers rebuilding, switching back to your normal app, and verifying a pull request.

Support

If you find OmniWM useful, consider supporting development through GitHub Sponsors.

License

OmniWM is licensed under the GNU General Public License v2.0-only. Copyright (C) 2026 OmniNull — https://github.com/OmniNull/OmniWM.

Every OmniWM source file carries an SPDX license header. App-bundled third-party notices stay in Resources/Licenses and ship in Contents/Resources/Licenses. They cover the vendored Luau and Lua runtimes (MIT), generic colour palettes adapted through Noctalia and Wayle (MIT), and Google's Material Color Utilities (Apache 2.0).

Optional styles keep their own notices in their folders. Vitreus retains its upstream MIT notice and the Space Grotesk font's OFL notice; Celestial retains the notices of Rubik, Google Sans Flex and Material Symbols Rounded. Each style README lists its credits and licences. Forks and redistributions must retain the applicable notices and the LICENSE file, and remain GPL-2.0-only with source available.

About

Free, open-source tiling window manager for Apple Silicon Macs, with Niri-style scrolling containers and Hyprland-style Dwindle BSP.

Topics

Resources

Contributing

Security policy

Stars

3.6k stars

Watchers

15 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages