Skip to content

Moomo/FinderOne

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FinderOne

A lightweight macOS menu bar app that automatically merges Finder windows into a single tabbed window.

macOS 14+ Swift License: MIT

What It Does

Every time you open a new Finder window, FinderOne detects it and merges all Finder windows into one tabbed window — automatically.

No more cluttered desktops full of Finder windows.

Features

  • Automatic merging of new Finder windows into tabs
  • Manual "Merge Now" for on-demand merging
  • Launch at Login support
  • Minimal resource usage — sits quietly in your menu bar

Installation

Requires Xcode 15+ and macOS 14+.

git clone https://github.com/Moomo/FinderOne.git
cd FinderOne
make build
make run

Setup

  1. Launch FinderOne — it appears in your menu bar
  2. Click the menu bar icon and grant Accessibility permission when prompted
  3. That's it — new Finder windows will be automatically merged into tabs

Permissions

Permission Why
Accessibility Required to monitor Finder windows
Automation macOS will prompt on first merge (AppleScript → Finder)

How It Works

  1. Monitors Finder window count via the Accessibility API
  2. When a new window is detected, waits ~0.5s for it to finish loading
  3. Runs Finder's built-in Merge All Windows command via AppleScript
  4. If fewer than 2 windows exist, does nothing

Building

This is an Xcode project (not a Swift Package).

make build        # Build
make clean-build  # Clean + build
make run          # Build and open the app
Raw xcodebuild command
xcodebuild \
  -project Corral.xcodeproj \
  -scheme Corral \
  -configuration Debug \
  -derivedDataPath tmp/DerivedData \
  build CODE_SIGNING_ALLOWED=NO

Project Structure

Corral/
├── CorralApp.swift                    # App entry point
├── AppDelegate.swift                  # App state & orchestration
├── MenuBarView.swift                  # Menu bar UI
├── MenuBarIconFactory.swift           # Menu bar icon
├── FinderWindowMonitor.swift          # Finder window monitoring
├── AppleScriptRunner.swift            # Finder merge via AppleScript
├── AccessibilityPermissionManager.swift
└── LoginItemManager.swift

Known Limitations

  • Monitoring is polling-based, not event-driven
  • Finder's Merge All Windows may be temporarily unavailable depending on Finder state
  • Behavior may be affected by future macOS or Finder changes

Contributing

Issues and pull requests are welcome.

License

MIT

About

macOS menu bar app that automatically merges Finder windows into tabs

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors