Prepares the current project for use with claude-squad (cs) git worktrees on Windows. Ensures cs.exe is installed and on PATH, then scans the project for untracked files (env/secrets/local config) that new worktrees would be missing and writes/updates a .worktreeinclude manifest. Triggers on: "set up worktrees", "setup worktrees", "/setup-worktrees", "install claude-squad", "prep this repo for cs".
How this skill is triggered — by the user, by Claude, or both
Slash command
/ryans-personal-skills:setup-worktreesThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Two independent steps. Do both, in order.
Two independent steps. Do both, in order.
Check whether cs is already available:
Get-Command cs -ErrorAction SilentlyContinue
If found, run cs version to confirm it works and skip to Step 2.
If not found, download the prebuilt Windows binary (built from
smtg-ai/claude-squad PR #248, which adds Windows support) from this
repo's release:
New-Item -ItemType Directory -Force -Path "$HOME\.local\bin" | Out-Null
Invoke-WebRequest -Uri "https://github.com/rylero/RyansPersonalSkills/releases/download/cs-windows-pr248/cs.exe" -OutFile "$HOME\.local\bin\cs.exe"
Ensure $HOME\.local\bin is on the user PATH:
$env:Path -split ';' | Select-String -SimpleMatch "$HOME\.local\bin"
If nothing matches, add it permanently and tell the user to restart their
terminal before cs will resolve:
[Environment]::SetEnvironmentVariable("Path", "$([Environment]::GetEnvironmentVariable('Path','User'));$HOME\.local\bin", "User")
Verify: cs version. If the download fails (offline, asset missing),
tell the user and offer the source-build fallback:
git clone https://github.com/smtg-ai/claude-squad.git
cd claude-squad
git fetch origin pull/248/head:pr-248
git checkout pr-248
go build -o cs.exe .
cp cs.exe ~/.local/bin/cs.exe
.worktreeinclude is a gitignore-syntax manifest, one pattern per line with
# comments, listing files the project needs at runtime that
git worktree add won't bring into a new worktree (because they're untracked).
Confirm this is a git repo:
git rev-parse --is-inside-work-tree
If this fails, tell the user this step only applies inside a git repo and stop.
List untracked and ignored files to find candidates:
git status --ignored=matching --porcelain
Also read .gitignore for context on what's intentionally excluded.
Classify candidates using judgment:
.env, .env.local, .env.*.local, appsettings.*.Development.json,
*.local.json, credential files, local SQLite DBs, local certs/keys, etc.node_modules/, dist/, build/, .venv/, bin/, obj/, target/,
.next/, __pycache__/, etc. These are regenerable and shouldn't be
copied between worktrees.Present the proposed list of patterns to the user and let them confirm or edit it before writing anything.
Write .worktreeinclude at the project root:
# comment explaining why it's needed.Example:
# Local environment variables, not committed
.env
.env.local
# Per-developer database, needed for app to start
local.db
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub rylero/ryanspersonalskills --plugin ryans-personal-skills