Awesome-openclaw-skills github-pr
Fetch, preview, merge, and test GitHub PRs locally. Great for trying upstream PRs before they're merged.
install
source · Clone the upstream repo
git clone https://github.com/sundial-org/awesome-openclaw-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/github-pr" ~/.claude/skills/sundial-org-awesome-openclaw-skills-github-pr && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/github-pr" ~/.openclaw/skills/sundial-org-awesome-openclaw-skills-github-pr && rm -rf "$T"
manifest:
skills/github-pr/SKILL.mdsource content
GitHub PR Tool
Fetch and merge GitHub pull requests into your local branch. Perfect for:
- Trying upstream PRs before they're merged
- Incorporating features from open PRs into your fork
- Testing PR compatibility locally
Prerequisites
CLI authenticated (gh
)gh auth login- Git repository with remotes configured
Commands
Preview a PR
github-pr preview <owner/repo> <pr-number>
Shows PR title, author, status, files changed, CI status, and recent comments.
Fetch PR branch locally
github-pr fetch <owner/repo> <pr-number> [--branch <name>]
Fetches the PR head into a local branch (default:
pr/<number>).
Merge PR into current branch
github-pr merge <owner/repo> <pr-number> [--no-install]
Fetches and merges the PR. Optionally runs install after merge.
Full test cycle
github-pr test <owner/repo> <pr-number>
Fetches, merges, installs dependencies, and runs build + tests.
Examples
# Preview MS Teams PR from clawdbot github-pr preview clawdbot/clawdbot 404 # Fetch it locally github-pr fetch clawdbot/clawdbot 404 # Merge into your current branch github-pr merge clawdbot/clawdbot 404 # Or do the full test cycle github-pr test clawdbot/clawdbot 404
Notes
- PRs are fetched from the
remote by defaultupstream - Use
to specify a different remote--remote <name> - Merge conflicts must be resolved manually
- The
command auto-detects package manager (npm/pnpm/yarn/bun)test