macOS
brew install m-clilocal Homebrew formula metadata
brew
Swiss Army Knife for macOS. Version 2.0.9 via Homebrew; verified 2026-06-02.
install
brew install m-clilocal Homebrew formula metadata
nix profile install nixpkgs#m-clinixpkgs package indexes · pkgs/by-name/m-/m-cli/package.nix · source: api.github.com
overview
Swiss Army Knife for macOS
history
m-cli is a shell-based macOS command-line utility that describes itself as a Swiss Army Knife for macOS in the terminal. It wraps many common system administration and preference tasks behind a single `m` command.
The public GitHub repository was created in July 2016 and is maintained as a small Unix-style command suite. Its README emphasizes macOS-only system control, no third-party dependencies, a simple manual install path, and Homebrew installation.
The project underwent a notable 2.0 syntax change: the changelog records a move from positional plugin subcommands such as `m bluetooth on` to option-based forms such as `m bluetooth --enable`, alongside generated shell completions.
m-cli has become a recognizable macOS package-manager utility: the repository shows thousands of GitHub stars and hundreds of forks, while the input package facts list both Homebrew and Nix packaging.
Its appeal is strongest among macOS users who prefer scriptable terminal access to system settings that are otherwise spread across System Settings, Apple tools, and small command-line utilities.
Users install it with Homebrew as `brew install m-cli` or manually with the upstream install script, then run `m` to list commands or `m <command> --help` for command-specific usage.
The command set covers macOS areas such as AirDrop, Bluetooth, display, DNS, Dock, Finder, firewall, Gatekeeper, network, power, printers, services, users, VPN, volume, wallpaper, and Wi-Fi. Some commands need sudo privileges or macOS privacy permissions.
For package-maintainer audiences, m-cli is an example of a Homebrew-friendly macOS wrapper that packages many native system toggles as small shell plugins rather than as a daemon or GUI app.
The 2.x syntax shift matters because it changed scripting compatibility while making completions easier to keep in sync with plugin help output.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
m | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
install metadata
| Package key | brew:m-cli |
|---|---|
| Version | 2.0.9 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/m-cli |
| Homepage | https://github.com/rgcr/m-cli |
| Repository | https://github.com/rgcr/m-cli |
| Upstream docs | https://github.com/rgcr/m-cli#readme |
| License | MIT |
| Source archive | https://github.com/rgcr/m-cli/archive/refs/tags/v2.0.9.tar.gz |
| Last updated | 2026-06-02T20:02:01Z |
| Pulse | updated |
| Bottle | available (on all) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | m-cli |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Requirements |
|
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
m-cli
nix profile install nixpkgs#m-clisource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.