What problem does it solve? Undoing changes in Git is confusing because reset, revert, restore, and stash each behave differently, and choosing the wrong command can permanently destroy work. This Skill diagnoses your current repository state, clarifies what you want to undo, and executes the safest appropriate Git command. ## Core Features & Use Cases - Situation Diagnosis: Runs git status, git log, and git stash list in parallel to understand the current repository state before acting. - Scenario-Based Undo: Handles six scenarios including discarding file changes, unstaging, undoing the last commit (soft/mixed/hard), reverting pushed commits, stashing work, and restoring stashes. - Safety Guardrails: Requires explicit confirmation before destructive commands like git reset --hard, warns about force-push risks on pushed commits, and suggests backups first. - Use Case: You accidentally committed a broken file and already pushed it. The Skill recommends git revert instead of reset to preserve history and avoid force-pushing. ## Quick Start Ask the assistant to undo your last commit or cancel your current changes, for example by saying "취소해줘" or "undo my last commit".