ControlPlane, the macOS automation tool that activates profiles (previously contexts) based on your environment (WiFi networks, connected devices, location, and more), is under active development again.

This rewrite is also a personal experiment: I’m using AI assistance (specifically Claude) throughout the development process. My goals are twofold — bring ControlPlane back as a modern macOS app, and get comfortable with AI-assisted development as a real workflow. So far it’s been a genuinely interesting way to work, especially for a project of this scope tackled in spare time.

The rewrite moves from the original Objective-C codebase to modern Swift, with a cleaner plugin architecture for sensors, rules, and actions. The core concept is unchanged: sensors observe your environment, rules match against what they see, and profiles activate when confidence thresholds are met — triggering actions like running Shortcuts, mounting volumes, changing your desktop background, or executing shell scripts.

What’s already working:

  • A broad set of sensors: WiFi, Bluetooth, USB, power state, screen lock, mounted volumes, running applications, DNS, IP address, audio output, and more
  • A growing action library covering the most useful original ControlPlane actions
  • A menu-bar app with a Unix socket–based CLI (cpctl) for scripting and inspection
  • Universal binary support (Apple Silicon + Intel)

The roadmap includes a full GUI for managing profiles, rules, and actions — plus auto-update and code signing for easier distribution.

If you used the original ControlPlane and missed it, now’s a good time to follow along. The source is on GitHub.

Categories: Uncategorized

Dustin Rue

My name is Dustin and I am a lot of things to a number of different people. I am a husband, father and a systems engineer that also knows how to write some code. Here I write about technology.