skills/cain96/git-workflow/SKILL.md
Git worktree workflow, conventional commits, commit trailers, and PR guidelines. Activated during git operations and commits.
npx skillsauth add aiskillstore/marketplace git-workflowInstall 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.
This skill provides guidance on Git worktree workflow, commit standards, and PR best practices.
Git worktree allows working on multiple branches simultaneously without stashing or switching contexts. Each worktree is an independent working directory with its own branch.
Benefits:
# Create worktree for feature development
git worktree add ../project-feature-auth feature/user-authentication
# Create worktree for bug fixes
git worktree add ../project-bugfix-api hotfix/api-validation
# Create worktree for experiments
git worktree add ../project-experiment-new-ui experiment/react-19-upgrade
../project-<type>-<description>
Types:
feature - New feature developmentbugfix - Bug fixeshotfix - Urgent production fixesexperiment - Experimental changesrefactor - Code refactoringExamples:
../myapp-feature-user-auth../myapp-bugfix-login-error../myapp-hotfix-security-patch# List all worktrees
git worktree list
# Show details in long format
git worktree list --porcelain
# Remove worktree after merging
git worktree remove ../project-feature-auth
# Remove worktree (force if dirty)
git worktree remove --force ../project-experiment
# Prune stale worktree information
git worktree prune
git worktree prune periodicallyFollow the Conventional Commits specification:
<type>(<scope>): <subject>
[optional body]
[optional footer]
# New feature
git commit -m "feat(auth): add JWT token refresh mechanism"
# Bug fix
git commit -m "fix(api): handle null response appropriately"
# Documentation
git commit -m "docs(readme): update installation instructions"
# Performance improvement
git commit -m "perf(db): optimize query performance"
# Code refactoring
git commit -m "refactor(core): extract validation logic"
# Testing
git commit -m "test(auth): add unit tests for login flow"
# Build/tooling
git commit -m "build(deps): upgrade react to v18"
# CI/CD
git commit -m "ci(github): add automated deployment workflow"
# Chores
git commit -m "chore(deps): update development dependencies"
# Style changes (formatting, etc.)
git commit -m "style(components): format with prettier"
| Type | Description | Example |
|------|-------------|---------|
| feat | New feature | Adding user authentication |
| fix | Bug fix | Fixing null pointer error |
| docs | Documentation only | Update README |
| style | Formatting changes | Code formatting, no logic change |
| refactor | Code refactoring | Restructure without behavior change |
| perf | Performance improvement | Optimize algorithm |
| test | Adding/updating tests | Add unit tests |
| build | Build system changes | Update webpack config |
| ci | CI/CD changes | Update GitHub Actions |
| chore | Maintenance tasks | Update dependencies |
| revert | Revert previous commit | Revert "feat: add feature" |
Subject line:
Body:
Example:
git commit -m "$(cat <<'EOF'
feat(api): add user profile endpoint
- Add GET /api/users/:id endpoint
- Include avatar URL in response
- Add rate limiting (100 req/min)
This allows frontend to fetch user details
without additional API calls.
Closes #123
EOF
)"
Add metadata to commits using trailers:
# Reference GitHub issue
git commit --trailer "Github-Issue: #123"
# Credit bug reporter
git commit --trailer "Reported-by: John Doe <[email protected]>"
# Reference related commits
git commit --trailer "See-also: abc123"
# Co-author
git commit --trailer "Co-authored-by: Jane Smith <[email protected]>"
Example with multiple trailers:
git commit -m "$(cat <<'EOF'
fix(auth): resolve token expiration issue
Fixed bug where expired tokens weren't properly
refreshed, causing users to be logged out unexpectedly.
Github-Issue: #456
Reported-by: John Doe <[email protected]>
Reviewed-by: Jane Smith <[email protected]>
EOF
)"
Follow the same format as commit messages:
<type>(<scope>): <description>
Examples:
feat(auth): add OAuth2 authenticationfix(api): resolve race condition in data syncdocs(contributing): update contributor guidelines## Summary
Brief description of changes (1-3 sentences)
## Changes
- Bullet point list of main changes
- Focus on what and why, not implementation details
- Keep it high-level
## Test Plan
- [ ] Unit tests pass
- [ ] Integration tests pass
- [ ] Manual testing performed
- [ ] Edge cases covered
## Breaking Changes
List any breaking changes (if applicable)
## Related Issues
Closes #123
Related to #456
## Screenshots/Videos
(if applicable)
Before requesting review:
For reviewers:
Daily workflow checklist:
git pullgit push# Clean up last 3 commits
git rebase -i HEAD~3
# Rebase onto main
git rebase -i main
# Apply specific commit to current branch
git cherry-pick abc123
# Cherry-pick without committing
git cherry-pick --no-commit abc123
# Stash with message
git stash push -m "WIP: feature in progress"
# List stashes
git stash list
# Apply and drop stash
git stash pop
# Apply specific stash
git stash apply stash@{0}
# Start bisect
git bisect start
# Mark current as bad
git bisect bad
# Mark known good commit
git bisect good abc123
# Let git find the culprit
# Test each commit and mark good/bad
git bisect good # or bad
# End bisect
git bisect reset
❌ Don't:
✅ Do:
development
Apple Human Interface Guidelines for content display components. Use this skill when the user asks about charts component, collection view, image view, web view, color well, image well, activity view, lockup, data visualization, content display, displaying images, rendering web content, color pickers, or presenting collections of items in Apple apps. Also use when the user says how should I display charts, what's the best way to show images, should I use a web view, how do I build a grid of items, what component shows media, or how do I present a share sheet. Cross-references: hig-foundations for color/typography/accessibility, hig-patterns for data visualization patterns, hig-components-layout for structural containers, hig-platforms for platform-specific component behavior.
tools
Automate HelpDesk tasks via Rube MCP (Composio): list tickets, manage views, use canned responses, and configure custom fields. Always search tools first for current schemas.
testing
Expert Haskell engineer specializing in advanced type systems, pure functional design, and high-reliability software. Use PROACTIVELY for type-level programming, concurrency, and architecture guidance.
tools
GraphQL gives clients exactly the data they need - no more, no less. One endpoint, typed schema, introspection. But the flexibility that makes it powerful also makes it dangerous. Without proper controls, clients can craft queries that bring down your server. This skill covers schema design, resolvers, DataLoader for N+1 prevention, federation for microservices, and client integration with Apollo/urql. Key insight: GraphQL is a contract. The schema is the API documentation. Design it carefully.