Powerful macOS Automation for Stream Deck
Version 0.1.1Mac-A-Tron started as a way to solve a frustrating problem: BetterTouchTool's Stream Deck integration wasn't working on my corporate system, likely due to security software like CrowdStrike/FalconStrike interfering with the closed-source BTT plugin.
Rather than just patch the problem, I built a better solutionβone that could handle more types of triggers and let you choose them from a dropdown menu instead of typing UUIDs. The BTT integration worked beautifully, and life was good.
But then I realized: if I could send commands to one app, why not extend it further? That's when Mac-A-Tron evolved into a comprehensive toolkit:
All of this is powered by robo, a native Swift helper binary that provides reliable macOS automation where JavaScript alone falls short. It handles accessibility permissions properly, works with security software, and gives you the low-level control needed for real productivity tools.
This plugin requires macOS Accessibility permissions to function. When you first use any action, you'll be prompted to grant permission.
Type text and keyboard shortcuts with powerful clipboard manipulation capabilities.
{curly brace} syntaxHello World{enter}
Plain text is typed as-is. Special keys use {curly braces}.
The Keyboard Shortcut action includes a powerful clipboard buffer system:
| Command | Description |
|---|---|
{grab} |
Copy clipboard to Robo buffer |
{put} |
Paste Robo buffer to clipboard |
{paste} |
Type the Robo buffer contents |
{insert before <text>} |
Add text to start of buffer |
{insert after <text>} |
Add text to end of buffer |
{trim before <text>} |
Trim everything before and including text |
{trim after <text>} |
Trim everything after and including text |
Create an archive.is link from the current URL in a web browser tab:
{cmd+l}{cmd+a}{cmd+c}{grab}{insert before http://archive.is/}{trim after ?}{put}{cmd+v}
This:
{cmd+c}){grab})? ({trim after ?})http://archive.is/ ({insert before ...}){paste})robo keys command with full {curly brace} syntax for all operations, including modifiers and special keys.
Switch to an existing browser tab or create a new one if not found.
mail.google.comcalendar.google.comYou can create custom targets with:
github.com)|| for multiple patterns)||. For example: " - Gmail||Gmail: Private"
Toggle between two default browsers or select from available browsers.
Move mouse cursor to window center or screen.
Move and resize the focused window with smart positioning and multi-monitor support. A minimal window manager.
Configure three types of button presses:
Horizontal (Left/Right):
Vertical (Up/Down):
Down (Special):
When a window is aligned to the edge (state 2 or 3):
Align Right moves to next monitor as Align LeftAlign Left moves to previous monitor as Align Right
Execute BetterTouchTool triggers directly from Stream Deck.
BetterTouchTool must be running and the webserver must be enabled in BTT preferences.
Display time in multiple time zones with custom labels. Cycle through up to 5 different time zones.
Set a countdown timer with custom duration and title. Visual countdown display with alert on completion.
MM:SS or HH:MM:SS5:00 - 5 minute timer25:00 - 25 minute Pomodoro1:30:00 - 1 hour 30 minute timerSimple stopwatch to track elapsed time with start, stop, and reset functionality.
HH:MM:SS format.
All keys that can be used inside {curly braces}:
cmd, commandctrl, controlalt, optionshifta-z0-9f1 through f20enter, returntab, spaceescape, escdelete, backspaceleft, right, up, downhome, endpageup, pagedownminus, equalleftbracket, rightbracketsemicolon, quotebackslash, commaslash, periodgrave (backtick)For typing special characters:
leftbrace β {rightbrace β }doublequote β "colon β :question β ?volumeupvolumedownmute{pause N} - Pause for N milliseconds{cmd+c} - Command+C
{ctrl+alt+delete} - Ctrl+Alt+Delete
{shift+enter} - Shift+Enter
{cmd+shift+f} - Command+Shift+F
Remove tracking parameters from URLs:
{cmd+c}{grab}{trim after ?}{paste}
Type commands with delays:
cd Projects{enter}{pause 200}code .{enter}
Wrap selected text:
{cmd+c}{grab}{insert before [}{insert after ]}{paste}
Set up Move App buttons for quick window management across multiple displays.