Skip to content

Type an app name, press Enter, all its windows come to you. Per-app window control for macOS.

License

Notifications You must be signed in to change notification settings

varie-ai/convoker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Convoker icon

Convoker

Type an app name, press Enter, all its windows come to you.

Per-app window control for macOS. Gather, focus, or split — all windows of one app at once.

DownloadFeaturesShortcutsInstall


Convoker demo — focus, split, and gather

The Problem

You have 6 Safari windows scattered across 3 monitors. Or Terminal sessions everywhere. You want them here, on this screen, right now.

Existing tools snap individual windows. Convoker operates on all windows of an app at once. No other tool does this.

Features

Gather — Bring all windows of an app to your current screen, arranged in a smart grid.

Focus — Activate an app and hide everything else. Zero clutter, zero rearranging.

Split — Pin one app, pick another, get instant side-by-side (or 3-way, or 4-way).

Launch — App not running? Convoker launches it and arranges its windows automatically.

Layout options — Grid (default), cascade, side-by-side, or columns.

Keyboard Shortcuts

Press Cmd+Shift+X to open the palette, then:

Shortcut Action
Enter Gather all windows to current screen
Shift+Enter Gather + maximize
Cmd+Enter Focus (activate + hide all others)
Tab Pin app for split (up to 4 apps)
Tab, then Enter Split pinned apps side-by-side
Escape Dismiss (or unpin last)
Arrow keys Navigate the app list

The hotkey is configurable in Settings (tray icon > Settings).

Install

Download (recommended)

  1. Download the latest .dmg from Releases
  2. Drag Convoker.app to /Applications
  3. Launch Convoker — grant Accessibility permission when prompted

Build from source

git clone https://github.com/varie-ai/convoker.git
cd convoker/Convoker
./build.sh run

Requires Xcode 15+ and macOS 14+.

Requirements

  • macOS 14 (Sonoma) or later
  • Accessibility permission — required to discover and move windows

How It Works

Convoker uses the macOS Accessibility API (AXUIElement) to enumerate and reposition windows. It's a menu bar app with a floating command palette (like Spotlight). No background processes, no daemons, no config files.

The search uses fuse-swift for fuzzy matching and KeyboardShortcuts for the global hotkey.

FAQ

Why not use Rectangle / Magnet / BetterSnapTool? Those are great for snapping individual windows. Convoker targets all windows of a specific app — a different workflow entirely. They complement each other.

Why not use yabai / AeroSpace? Tiling window managers are always-on and manage every window. Convoker is on-demand — it only acts when you ask, and never rearranges anything automatically.

Does it work with Stage Manager? Yes. Convoker doesn't interfere with Stage Manager, but it works best with Stage Manager disabled.

Will it work on Apple Silicon and Intel? Yes. It's a universal binary.

License

MIT

Credits

Built by Varie.AI with Claude Code.

About

Type an app name, press Enter, all its windows come to you. Per-app window control for macOS.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors