create-patch
Creates a patch file with all uncommitted changes and moves it to ~/Downloads. Use when the user says "create patch", "save my changes as patch", "export changes", or asks to create a diff file.
Installation
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
View source ↗GuidesSkill instructions
Create Patch
Create a patch file containing all uncommitted changes (staged and unstaged) and save it to ~/Downloads.
Instructions
- Run
git statusto verify there are uncommitted changes - Get the current branch name with
git branch --show-current - Generate a filename using format:
<branch>-<timestamp>.patch - Create the patch with
git diff HEADto capture all uncommitted changes (staged + unstaged) - Move the patch file to
~/Downloads/ - Report the full path and summary of what was included
Patch Generation
# Get branch name (sanitize for filename)
branch=$(git branch --show-current | tr '/' '-')
# Generate timestamp
timestamp=$(date +%Y%m%d-%H%M%S)
# Create patch filename
filename="${branch}-${timestamp}.patch"
# Generate patch with all uncommitted changes
git diff HEAD > "/tmp/${filename}"
# Move to Downloads
mv "/tmp/${filename}" ~/Downloads/
# Show result
echo "Patch saved to: ~/Downloads/${filename}"
Rules
- MUST include both staged and unstaged changes (use
git diff HEAD) - MUST sanitize branch name for valid filename (replace
/with-) - MUST verify the patch is non-empty before moving
- MUST report the full path of the created patch
- If no changes exist, inform the user and do not create an empty patch
- Never modify or stage any files
- Never commit anything
Examples
Read the usage examples in the source repository.
View source ↗Source history
- Indexed on
- 2026-01-20
- Index updated
- 2026-01-26
- Branch
- main
Index and sync dates describe this directory. View the source repository for code history.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!