home / skills / 0xdarkmatter / claude-mods / git-workflow
This skill streamlines git workflows with lazygit, gh, and delta to stage, review, and manage commits and PRs efficiently.
npx playbooks add skill 0xdarkmatter/claude-mods --skill git-workflowReview the files below or copy the command above to add this skill to your agents.
---
name: git-workflow
description: "Enhanced git operations using lazygit, gh (GitHub CLI), and delta. Triggers on: stage changes, create PR, review PR, check issues, git diff, commit interactively, GitHub operations, rebase, stash, bisect."
compatibility: "Requires git, gh (GitHub CLI), lazygit, and delta. Network access needed for GitHub operations."
allowed-tools: "Bash"
---
# Git Workflow
Streamline git operations with visual tools and GitHub CLI integration.
## Tools
| Tool | Command | Use For |
|------|---------|---------|
| lazygit | `lazygit` | Interactive git TUI |
| gh | `gh pr create` | GitHub CLI operations |
| delta | `git diff \| delta` | Beautiful diff viewing |
## lazygit Essentials
```bash
# Open interactive TUI
lazygit
# Key bindings:
# Space - stage/unstage file
# c - commit
# p - push
# P - pull
# b - branch operations
# r - rebase menu
# s - stash menu
# ? - help
```
## GitHub CLI (gh) Essentials
```bash
# Pull Requests
gh pr create --title "Feature: Add X" --body "Description"
gh pr create --web # Open in browser
gh pr list # List open PRs
gh pr view 123 # View PR details
gh pr checkout 123 # Check out PR locally
gh pr merge 123 --squash # Squash and merge
# Issues
gh issue create --title "Bug: X"
gh issue list --label bug
# Repository
gh repo view --web # Open in browser
# Actions
gh workflow run deploy.yml
gh run list --workflow=ci.yml
```
## Delta (Beautiful Diffs)
```bash
# View diff with syntax highlighting
git diff | delta
# Side-by-side view
git diff | delta --side-by-side
# Configure as default pager
git config --global core.pager delta
```
## Quick Reference
| Task | Command |
|------|---------|
| Interactive git | `lazygit` |
| Create PR | `gh pr create` |
| Merge PR | `gh pr merge --squash` |
| Beautiful diff | `git diff \| delta` |
| Interactive rebase | `git rebase -i HEAD~N` |
| Stash changes | `git stash push -m "msg"` |
| Apply stash | `git stash pop` |
| Find bug commit | `git bisect start` |
| Cherry-pick | `git cherry-pick <hash>` |
| Parallel worktree | `git worktree add <path> <branch>` |
| Recover commits | `git reflog` |
## When to Use
- Interactive staging of changes
- Creating pull requests from terminal
- Reviewing PRs and issues
- Visual diff viewing
- Cleaning up commit history (rebase)
- Temporary work saving (stash)
- Bug hunting (bisect)
- Parallel feature work (worktrees)
- Recovering lost work (reflog)
## Additional Resources
For detailed patterns, load:
- `./references/rebase-patterns.md` - Interactive rebase workflows
- `./references/stash-patterns.md` - Stash operations and workflows
- `./references/advanced-git.md` - Bisect, cherry-pick, worktrees, reflog, conflicts
This skill streamlines daily git and GitHub workflows by combining lazygit, the GitHub CLI (gh), and delta for readable diffs. It provides interactive staging, commit and rebase workflows, PR creation and review from the terminal, and visually enhanced diffs to speed code review and troubleshooting. Ideal for developers who prefer a keyboard-driven, terminal-first workflow.
The skill wires together lazygit for an interactive TUI workflow, gh for GitHub operations (create/list/view/merge PRs, manage issues, run workflows), and delta to render colorized, side-by-side diffs. It responds to common triggers like stage changes, create/review PR, run git diff, interactive commits, rebase, stash, bisect, and other GitHub operations. Commands and key bindings are provided so you can move from staging to PR creation to merging without leaving the terminal.
Do I need to install all three tools to use the skill?
Yes—lazygit, gh, and delta are the primary tools. The workflows are most productive when all are available, but individual commands still work if one is missing.
How do I set delta as my default diff pager?
Run git config --global core.pager delta to make delta the default pager for git commands that produce diffs.