---
name: stfu
description: Enforce strict commit hygiene. Use when the user wants one atomic commit per logical change while leaving unrelated pre-existing edits untouched.
---

# STFU

Use this skill when the goal is clean, reviewable commit history without staging or modifying unrelated workspace noise.

## Core Rules

1. Make one commit per logical change.
2. Keep each commit atomic and focused on a single behavior or fix.
3. Ignore unrelated changes that were already in the working tree before the run.
4. Never stage, revert, or modify unrelated pre-existing changes.
5. If a file has both relevant and unrelated edits, stage only the relevant hunks.

## Commit Workflow

1. Identify the current logical change before staging anything.
2. Stage only files/hunks created for that logical change.
3. Commit immediately after that logical change is complete.
4. Repeat for the next logical change with a new commit.

## Conflict Rule

If it is unclear whether a change is related to the current run, treat it as unrelated and leave it untouched.

## Suggested Command Pattern

Use non-interactive git commands where possible:

1. Check state: `git status --short`
2. Stage only relevant paths or hunks:
   - File level: `git add <path>`
   - Hunk level: `git add -p <path>`
3. Verify staged diff: `git diff --staged`
4. Commit one logical unit: `git commit -m "<focused message>"`

## Hard No

- Do not stage all changes blindly with `git add .` when unrelated edits exist.
- Do not revert or discard pre-existing unrelated changes.
