Skill: Mac Setup

SkillDev tools

Sets up a Mac for ButterCut. Installs all required dependencies (Homebrew, Ruby, Python, FFmpeg, WhisperX). Use when user says "install buttercut", "set up my mac", "get started", "first time setup", "install dependencies" or "check my installation".

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Skill: Mac Setup skill

What this skill tells your AI

The instructions your AI receives, as published by barefootford/buttercut in skills/setup/SKILL.md and read by ahel’s review.

Sets up a Mac for ButterCut. Two installation paths available based on user preference.

Step 1: Check Current State

Run each check below. Each command exits 0 when the dependency is present. Note which ones fail — that's what setup needs to install.

  • Xcode CLI Toolsxcode-select -p (fix: xcode-select --install)
  • Homebrewwhich brew (fix: see https://brew.sh)
  • Ruby 3.3.xruby --version | grep -q 'ruby 3\.3' (fix: install Ruby 3.3.6, see .ruby-version)
  • Bundlerwhich bundle (fix: gem install bundler)
  • Python 3.12.xpython3 --version | grep -q 'Python 3\.12' (fix: install Python 3.12.8, see .python-version)
  • FFmpegwhich ffmpeg (fix: see FFmpeg install in the setup file below — must be the homebrew-ffmpeg/ffmpeg tap build)
  • FFmpeg drawtext filterffmpeg -hide_banner -filters 2>/dev/null | grep -q ' drawtext ' (fix: the stock brew install ffmpeg formula often omits drawtext; replace it with the homebrew-ffmpeg/ffmpeg tap build — see setup file)
  • WhisperXwhich whisperx || test -x ~/.buttercut/whisperx || test -x ~/.buttercut/venv/bin/whisperx (fix: see setup steps below)
  • Gems installedbundle check (fix: bundle install in buttercut directory)

If everything passes, tell the user they're ready to go and stop.

Step 2: Ask User Preference

If dependencies are missing, use AskUserQuestion:

Question: "How would you like to install ButterCut?"
Header: "Install type"
Options:
  1. "Simple (recommended)" - "Fully automatic setup. We'll install everything for you using sensible defaults."
  2. "Advanced" - "For developers who want control. You manage Ruby/Python versions with your preferred tools."

Step 3: Run Appropriate Setup

Based on user choice:

  • Simple: Read and follow skills/setup/simple-setup.md
  • Advanced: Read and follow skills/setup/advanced-setup.md

Step 4: Verify Installation

After setup completes, re-run the checklist from Step 1 and report results to the user.

Step 5: Ask About Error Reports

Only if ruby lib/buttercut/report.rb consent prints error_reporting=unset — otherwise this user has already answered, so leave it alone.

Ask the two questions in skills/report-bug/SKILL.md (step 2), worded for a fresh install rather than a crash: "ButterCut sometimes hits errors. Want me to send those to the team so they can fix them?" Save the answers by setting error_reporting: and error_report_email: in libraries/settings.yaml.

Keep it to those two questions and move on — it's the last thing standing between them and their first cut.

Signals

GitHub stars
594
Forks
99
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
setup-barefootford
Source
github.com/barefootford/buttercut