A skill to automatically download and install the latest ButterCut version from GitHub while preserving libraries. Use when user wants to check for updates or update their installation for new features.
Testing
108 Stars
16 Forks
Updated Dec 20, 2025, 01:38 AM
Why Use This
This skill provides specialized capabilities for barefootford's codebase.
Use Cases
Developing new features in the barefootford repository
Refactoring existing code to follow barefootford standards
Understanding and working with barefootford's codebase structure
---
name: update-buttercut
description: A skill to automatically download and install the latest ButterCut version from GitHub while preserving libraries. Use when user wants to check for updates or update their installation for new features.
---
# Skill: Update ButterCut
Updates ButterCut to the latest version. Uses git pull if available, otherwise downloads from GitHub.
Before updating, always make a backup and encourage the user to save it to a location outside the ButterCut directory. Verify the most recent backup exists and offer to copy it to their Desktop or iCloud Drive.
## Workflow
**1. Check current version:**
```bash
cat lib/buttercut/version.rb
```
**2. Check if git repo:**
```bash
git rev-parse --git-dir 2>/dev/null
```
**3a. If git repo exists:**
```bash
# Check for uncommitted changes
git status --porcelain
# If changes exist, STOP and inform user to commit/stash first
# Pull latest
git pull origin main
bundle install
```
**3b. If not git repo:**
```bash
# Download latest
curl -L https://github.com/barefootford/buttercut/archive/refs/heads/main.zip -o /tmp/buttercut-latest.zip
unzip -q /tmp/buttercut-latest.zip -d /tmp/
# Update files (excludes libraries/)
rsync -av --exclude 'libraries/' --exclude '.git/' /tmp/buttercut-main/ ./
bundle install
rm -rf /tmp/buttercut-latest.zip /tmp/buttercut-main
```
**4. Verify:**
```bash
cat lib/buttercut/version.rb
bundle exec rspec
```
If tests fail, STOP and report issue. Show old and new version numbers.