Skip to main content

Install on macOS

SigmaShake works out of the box on macOS 10.15 (Catalina) and newer, on both Apple Silicon (M-series) and Intel Macs.

Free forever for individuals. No credit card, no signup, no time-limited trial. The Free tier gives you 5,000 governance evaluations per day, which covers normal use. Upgrade to Pro for unlimited evals and team-wide audit sync — but you don't need to.

Quick install

Pick one. They all install the same ssg CLI binary.

brew install sigmashakeinc/tap/ssg

Curl

curl -fsSL https://sigmashake.com/install | sh

npm

pnpm add -g @sigmashake/ssg

PyPI distribution is currently on a much older version (pip install sigmashake returns v0.4.x). Use brew, curl, or npm above. PyPI parity with npm is on the roadmap.

Verify the install

ssg --version # should print: 0.29.19 (or newer)
ssg --help

First-run setup

cd ~/your-project
ssg init

This does three things:

  1. Writes .sigmashake/ (governance rules) into your project
  2. Auto-detects every AI agent on your machine (Claude Code, Cursor, Copilot, Codex, Gemini CLI, Antigravity, etc.) and wires ssg hook eval into each
  3. Enables the macOS LaunchAgent so ssg daemon runs automatically at login and restarts on crash — installed at ~/Library/LaunchAgents/com.sigmashake.daemon.plist

You do not need to start a daemon manually, log in, or set any API keys. Tool calls are evaluated locally in <100ms.

Daemon control

ssg autostart status # is the LaunchAgent installed and running?
ssg autostart disable # stop + remove the LaunchAgent
ssg autostart enable # install + start the LaunchAgent (idempotent)

To opt out of auto-start during ssg init:

ssg init --no-autostart
# or set SSG_NO_AUTOSTART=1 in your environment before running init

Use it for free

You're done — ssg works immediately at the Free tier:

  • 5,000 evals/day (resets at local midnight)
  • All adapters (Claude Code, Cursor, Copilot, Gemini, Codex, etc.)
  • All built-in rules (security, destructive-ops, secrets, etc.)
  • Local audit log at ~/.sigmashake/audit.db

Check your usage anytime:

ssg status
ssg flight # last 24h dashboard

Upgrade to Pro (optional)

If you outgrow 5,000 evals/day or need cloud audit sync across machines:

ssg auth login # opens browser → accounts.sigmashake.com

Pro is $60/month or $500/year. Enterprise pricing on sigmashake.com/pricing. After payment, the license JWT is issued automatically — re-run ssg auth login and you're upgraded. No license key to copy/paste.

SigmaShake Desktop — the desktop app (optional)

SigmaShake Desktop is a menu-bar app that wraps ssg for non-CLI users. It runs the governance daemon, surfaces approvals as native macOS notifications, and opens the dashboard in a webview.

Download

Not sure which to pick? Click Apple → About This Mac → look at the "Chip" / "Processor" line.

  • Anything starting with "Apple M" (M1/M2/M3/M4) → use arm64 below
  • Anything starting with "Intel Core" → use Intel below
  • Unsure / on a shared Mac / installing for someone else → use Intel — it works on every Mac (native on Intel, runs under Rosetta 2 on Apple Silicon with a small perf hit). The arm64 build runs on NOTHING but Apple Silicon.
MacDownload
Intel (or any Mac, runs everywhere)SigmaShakeDesktop.dmg (Intel)
Apple Silicon (native, faster — M1/M2/M3/M4)SigmaShakeDesktop.dmg (Apple Silicon)

Always-latest (bookmark for auto-update flows): the channel-stable URLs above are evergreen — the Electrobun Updater keeps your install current after first launch.

Install

  1. Open the .dmg.
  2. Drag SigmaShake Desktop to Applications.
  3. First launch: macOS shows "SigmaShake Desktop cannot be opened because Apple cannot check it for malicious software." This is a Gatekeeper warning, not an actual problem — Apple Developer ID notarization is in progress on our side. To bypass:
    • Right-click SigmaShake Desktop in /Applications/Open → click Open in the dialog. macOS remembers your decision; subsequent launches are silent.
    • Or from Terminal: xattr -dr com.apple.quarantine "/Applications/SigmaShake Desktop.app"

What it does

  • Sits in your menu bar (no Dock icon)
  • Click → Settings, Open Dashboard, Diagnostics, Quit
  • Health probe every 5 s — turns red if the governance daemon stops
  • Native macOS notifications when an agent's tool call hits an ask-mode rule
  • Auto-launches ssg daemon + ssg serve on startup; manages port hunting in the 5599-5603 range

First-run wizard

SigmaShake Desktop opens a one-time wizard asking which profile to apply:

  • Personal — relaxed defaults, single-user, no audit sync
  • Professional — strict defaults, structured logging, prepares for team sync
  • Enterprise — fail-closed mode, license required, MDM-ready

For solo developers: pick Personal. You can change later in Settings.

Update

The app and CLI auto-update inside the version range. To pull the latest:

brew update && brew upgrade ssg # if installed via brew
pnpm add -g @sigmashake/ssg@latest # if installed via npm
ssg update # all install methods

For the desktop app, SigmaShake Desktop checks for updates on launch and prompts when a new version is available.

Uninstall

ssg uninstall --yes # remove ssg + ~/.sigmashake/
brew uninstall sigmashake/tap/ssg # if installed via brew
# OR: npm uninstall -g @sigmashake/ssg # if installed via npm
# Then drag /Applications/SigmaShake Desktop.app to Trash if you installed the desktop app

ssg uninstall cleans up:

  • ~/.sigmashake/ (audit log, license, daemon socket)
  • All .claude/settings.json files in your home tree (strips ssg hook entries)
  • Any ~/.gemini/, ~/.codex/ adapter configs

It does not touch ~/.cargo/, node_modules/, vendored crates, or other third-party stuff.

Permissions you'll be asked for

PermissionWhyWhen asked
Allow Terminal to control "Finder"None — ssg does not request thisNever
NetworkOnly used if you run ssg auth login (browser-based)First Pro upgrade
NotificationsSigmaShake Desktop — native macOS approval promptsFirst time you open SigmaShake Desktop

ssg (CLI) does NOT request:

  • Microphone, camera, accessibility, contacts, calendar, photos, location
  • Network access by default (every operation is local)
  • Full disk access

Troubleshooting

ssg: command not found after brew install

Add Homebrew to your PATH if you haven't:

echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
source ~/.zprofile

"ssg-hook-fast binary unusable" warning in Claude Code logs

This is a benign stderr message on macOS Sequoia (15.x). The fast-path Zig binary uses Linux syscall numbers; on macOS we automatically fall through to the JavaScript path, which works correctly but adds ~20ms per hook eval. The Zig port is on our roadmap — see GitHub issue #xxx.

Hit the 5,000/day eval limit

Either upgrade to Pro (ssg auth login) or disable specific noisy rules:

ssg flight | head # show what's eating your budget
ssg rule disable <rule-id> # temporarily silence a specific rule

The counter resets at local midnight.

SigmaShake Desktop won't launch

  1. xattr -dr com.apple.quarantine "/Applications/SigmaShake Desktop.app"
  2. If still failing, run from Terminal to see the actual error:
    "/Applications/SigmaShake Desktop.app/Contents/MacOS/sigmashake-desktop"
  3. Check ~/.sigmashake/desktop.$(date +%F).log
  4. File a bug at github.com/sigmashakeinc/sigmashake-mono/issues

Other SigmaShake products on macOS

The full SigmaShake product family — by macOS readiness:

ProductStatus on macOSWhat it does
ssg CLI✅ ProductionThe governance engine. Free 5,000 evals/day. Install via brew/npm/curl above.
SigmaShake Desktop✅ ProductionMenu-bar app for non-CLI users. Download from sigmashake.com/desktop or the .dmg links earlier on this page.
SigmaShake Voice✅ ProductionWhisper-powered voice-to-text with global hotkey. All processing local — no API key, no network. First launch asks for microphone + accessibility permissions. See the Voice download section below.
ssg debug capture✅ WorksBuilt-in. Captures the SigmaShake Desktop UI to PNG for debugging. Usage: ssg debug capture --window <wizard|ade|diagnostics> (the desktop app must be running with that window open).
SigmaShake Gaze❌ Linux-only (v0)Webcam eye-tracking. macOS support is on the v1 roadmap.

SigmaShake Voice on macOS

Whisper-powered voice-to-text. Press a hotkey, speak, text appears wherever you're typing. Free, fully offline, no API key, no account. The 547 MB Whisper model is bundled inside the .dmg — no separate download needed.

Pick your build:

MacDownload
Intel (or any Mac, runs everywhere)SigmaShake-Voice_0.1.3_x64.dmg (518 MB)
Apple Silicon (native, faster — M1/M2/M3/M4)SigmaShake-Voice_0.1.3_arm64.dmg (~480 MB)

Or just visit voice.sigmashake.com and click the macOS button.

First launch:

  1. Open the .dmg → drag SigmaShake Voice to /Applications/
  2. Right-click SigmaShake Voice in /Applications/Open → click Open in the dialog (Apple Developer ID notarization is in progress; this dance only happens once)
  3. macOS asks for Microphone access → click OK
  4. Open System Settings → Privacy & Security → Accessibility → add SigmaShake Voice and toggle on (required for paste injection — pastes the transcribed text into whatever app has focus)
  5. Press the default hotkey (PageDown) → speak → press again to stop → text appears

The full pre-flight smoke checklist (everything we automate + every manual step): sigmashake-voice/MACOS_SMOKE_CHECKLIST.md.

What's next