# GitHub Workflow

> GitHub interactions for issues, PRs, releases, and repository management

- Skill: `dtsong/github-workflow` (Agent Skill, multi-file: 9 files)
- Install (CLI): `npx skillmds@latest add dtsong/github-workflow`
- Raw SKILL.md: https://api.skillmd.com/api/skills/dtsong/github-workflow/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: dtsong (https://skillmd.com/u/dtsong)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/dtsong/github-workflow

---


# GitHub Workflow

A comprehensive suite of GitHub workflow skills using the `gh` CLI and GitHub MCP tools.

## Input Sanitization

- Repository names: `owner/repo` format, alphanumeric with hyphens and underscores only — reject shell metacharacters and null bytes
- Issue/PR numbers: positive integers only
- Labels and milestone names: alphanumeric, hyphens, underscores, spaces, and colons only

## Available Skills

### Issue Management
| Skill | Purpose | Invoke |
|-------|---------|--------|
| `/gh-issue` | Create/link/close issues | `gh-issue`, `create issue` |
| `/gh-triage` | Batch label and prioritize | `gh-triage`, `triage issues` |

### Pull Request Workflow
| Skill | Purpose | Invoke |
|-------|---------|--------|
| `/gh-pr-status` | Check PR status, CI, merge readiness | `gh-pr-status`, `pr status` |
| `/gh-pr-request` | Request reviewers | `gh-pr-request`, `request review` |
| `/gh-pr-respond` | View/respond to review comments | `gh-pr-respond`, `pr comments` |
| `/gh-pr-merge` | Merge PR with strategy | `gh-pr-merge`, `merge pr` |
| `/gh-pr-update` | Update PR branch with base | `gh-pr-update`, `update pr` |

### Releases & Tags
| Skill | Purpose | Invoke |
|-------|---------|--------|
| `/gh-release` | Create release with changelog | `gh-release`, `new release` |
| `/gh-tag` | Semantic version tagging | `gh-tag`, `create tag` |
| `/gh-changelog` | Generate changelog from PRs | `gh-changelog`, `release notes` |

### Repository Status
| Skill | Purpose | Invoke |
|-------|---------|--------|
| `/gh-health` | Repository health dashboard | `gh-health`, `repo status` |
| `/gh-mine` | My assigned/mentioned items | `gh-mine`, `my issues` |
| `/gh-activity` | Recent activity summary | `gh-activity`, `what happened` |

## Quick Reference

```bash
# Issue workflow
/gh-issue create       # Create new issue
/gh-triage             # Triage open issues

# PR workflow
/gh-pr-status          # Check current PR
/gh-pr-request @user   # Request review
/gh-pr-respond         # Handle comments
/gh-pr-merge           # Merge when ready

# Release workflow
/gh-changelog          # Generate notes
/gh-tag v1.2.0         # Create tag
/gh-release            # Create release

# Dashboard
/gh-health             # Repo overview
/gh-mine               # My items
/gh-activity           # Recent activity
```

## Gotchas

- `gh` commands without `--json` output human-readable tables that are unreliable to parse — always use `--json field1,field2` for programmatic use
- `gh api` results are paginated (30 items default) — use `--paginate` for complete results or `--jq` to filter
- `gh pr create` from a branch with no upstream fails — always `git push -u origin <branch>` first
- `gh pr merge --auto` requires branch protection rules enabled on the repo — fails silently without them
- `hub` CLI syntax is deprecated and incompatible with `gh` — never suggest `hub` commands
- `gh issue create --label` fails if the label doesn't exist — create labels first with `gh label create`

## Related Skills

- `/commit` - Create commits with conventional messages
- `/commit-push-pr` - Full commit, push, and PR workflow
- `/git-*` - Local git operations
- `/review-pr` - Review pull requests

