skills/setup-and-install-scripts/SKILL.md
Use when authoring or modifying install/uninstall scripts, or when creating a /setup directory for a repo that requires developer setup steps. Enforces the /setup layout, install/uninstall naming, and supporting-files location.
npx skillsauth add mikefullerton/catherding setup-and-install-scriptsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
If a repo requires steps a developer must take to use it — automated scripts, tools, or installers — those go in a /setup directory.
install (regardless of file extension): install.sh, install.py, etc.install must have a corresponding uninstall that reverses what it did.brew itself — that's the developer's responsibility)./setup/files/.install.sh, uninstall.sh, and setup.sh are the only .sh exceptions to the "Python for scripts" rule. See ~/.claude/CLAUDE.md → "Scripting Language — MANDATORY".
Full rationale in ~/projects/active/catherding/policies/setup/repo-organization/setup-scripts.md. See INDEX.md for related policies.
development
Use whenever writing, modifying, refactoring, or reviewing code, or when making any design decision — including small ones. Loads the 21 cookbook principles (simplicity, yagni, fail-fast, explicit-over-implicit, separation-of-concerns, design-for-deletion, etc.) as heuristics for judgment calls about code shape, module boundaries, and what to build. Applies across all languages and project types.
tools
Toggle per-session YOLO mode (auto-approve permissions with configurable deny list). Use when --dangerously-skip-permissions is broken. /yolo on, /yolo off, /yolo install, /yolo uninstall, /yolo configure, /yolo status
testing
Use when creating a new repo (git init, gh repo create, scaffolding a new project) or when a repo is missing README/LICENSE/.gitignore/.claude/CLAUDE.md. Enforces the "every repo must have" checklist and documentation layout.
development
Use when a file imports an LLM SDK (anthropic, openai, langchain, etc.), when scaffolding LLM features, or when placing Claude-specific files in a repo. Enforces the "do not assume Claude" rule, the /claude directory convention, Graphify opt-in, and the rules-vs-behavioral-instructions split.