Skip to content

Command line

Roy Padina edited this page Oct 7, 2026 · 2 revisions

Command line

MaccyPlus ships a headless CLI so rules, terminal apps, plugins and per-action shortcuts can be managed without the GUI. It is handy for scripts and AI coding agents. Edits apply live: a running MaccyPlus reloads immediately; otherwise they are read on next launch.

Find the binary

The executable path contains a space, so always quote it.

APP=$(mdfind "kMDItemCFBundleIdentifier == 'com.royp.MaccyPlus'" | head -1)
BIN="$APP/Contents/MacOS/MaccyPlus"
"$BIN" rules describe     # live schema catalog; proves it works

Rules

"$BIN" rules list
"$BIN" rules get <id>
"$BIN" rules add    --json '<partial rule JSON>'
"$BIN" rules update <id> --json '<rule JSON>'
"$BIN" rules remove <id>
"$BIN" rules move   <id> <index>      # priority = position, 0 = first
"$BIN" rules enable|disable <id>
"$BIN" rules import --json '<array>'  # REPLACES ALL rules

Input comes from --json, or piped stdin. Omitted fields get defaults and missing ids are generated. Input is validated before anything is written, so a rejected command changes nothing.

  • rules update <id> replaces the whole rule. Do read-modify-write: rules get <id>, edit the JSON, send it back.
  • --file does not work: the app is sandboxed and cannot read arbitrary paths. Use --json or stdin.

Example:

"$BIN" rules add --json '{"name":"Open ticket keys",
  "conditions":[{"type":"regex","value":"^[A-Z]+-[0-9]+$"}],
  "actions":[{"type":"openInApp","appBundleID":"com.apple.Safari"}]}'

Always start from rules describe; it is built from the app's own enums and wins over any doc if they disagree.

Other commands

"$BIN" terminals list|add <bundleid>|remove <bundleid>|reset
"$BIN" plugins list
"$BIN" plugins enable|disable <package-id>
"$BIN" folders list
"$BIN" folders add|remove <path>

All output is JSON. Errors go to stderr with a non-zero exit.

Clipboard history

"$BIN" history … lets agents read and manage history items and leave labelled values for you. See Agent clipboard API.

Clone this wiki locally