hezaohezao/poirot/github-pr-workflow

Claude Code and agent skill by hezaohezao/poirot

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

GitHub PR lifecycle: branch, commit, open, CI, merge.

Install

npx vskill@latest install hezaohezao/poirot/github-pr-workflow

SKILL.md

GitHub Pull Request Workflow

Complete guide for managing the PR lifecycle. gh first, git + curl fallback.

Prerequisites

  • Authenticated with GitHub (see github-auth skill)
  • Inside a git repository with a GitHub remote

1. Branch & Commit

bash
# Create feature branch
git checkout -b feature/add-login
# Make changes, commit
git add -A
git commit -m "feat: add login endpoint"
# Push
git push -u origin feature/add-login

2. Create PR

bash
# With gh (interactive)
gh pr create
# With gh (inline)
gh pr create \
--title "feat: add login endpoint" \
--body "## Changes
- Add /api/login route
- Add JWT token generation
- Add tests
## Testing
\`\`\`bash
pytest tests/test_auth.py -v
\`\`\`" \
--base main \
--head feature/add-login
# With curl
curl -s -X POST \
-H "Authorization: token $GITHUB_TOKEN" \
https://api.github.com/repos/$OWNER/$REPO/pulls \
-d '{
"title":"feat: add login endpoint",
"body":"Add /api/login route with JWT",
"head":"feature/add-login",
"base":"main"
}'

3. Check CI Status

bash
# With gh
gh pr checks 42
# With curl (check runs)
curl -s "https://api.github.com/repos/$OWNER/$REPO/commits/$HEAD_SHA/check-runs" | python3 -c "
import sys, json
for r in json.load(sys.stdin)['check_runs']:
print(f'{r[\"name\"]:30s} {r[\"conclusion\"] or r[\"status\"]}')
"
# With curl (statuses — legacy CI)
curl -s "https://api.github.com/repos/$OWNER/$REPO/commits/$HEAD_SHA/status" | python3 -c "
import sys, json
r = json.load(sys.stdin)
print(f'Overall: {r[\"state\"]}')
for s in r['statuses']:
print(f' {s[\"context\"]:30s} {s[\"state\"]}')
"

4. Update PR (push more commits)

bash
# Make more changes
git add -A
git commit --fixup HEAD # or regular commit
git push
# PR automatically updates

5. Review & Approve

bash
# Request review
gh pr edit 42 --add-reviewer username
# Approve (as reviewer)
gh pr review 42 --approve --body "LGTM!"
# Request changes
gh pr review 42 --request-changes --body "See inline comments."
# Comment
gh pr review 42 --comment --body "Some suggestions."

6. Merge

bash
# With gh
gh pr merge 42 --merge # merge commit
gh pr merge 42 --squash # squash merge
gh pr merge 42 --rebase # rebase merge
gh pr merge 42 --squash --delete-branch # squash + delete branch
# With curl
curl -s -X PUT \
-H "Authorization: token $GITHUB_TOKEN" \
https://api.github.com/repos/$OWNER/$REPO/pulls/42/merge \
-d '{"merge_method":"squash"}'

7. Cleanup

bash
# Delete local branch
git checkout main
git pull origin main
git branch -d feature/add-login
# Delete remote branch (if not auto-deleted)
git push origin --delete feature/add-login

Full Workflow Example

bash
# 1. Branch
git checkout -b fix/issue-42-login-timeout
# 2. Implement + test
# ... make changes ...
pytest tests/test_auth.py -v
# 3. Commit
git add -A
git commit -m "fix: increase login timeout to 30s (fixes #42)"
# 4. Push
git push -u origin fix/issue-42-login-timeout
# 5. Create PR
gh pr create --title "fix: increase login timeout (fixes #42)" --body "..." --base main
# 6. Check CI
gh pr checks
# 7. After CI passes + review approved
gh pr merge --squash --delete-branch
# 8. Cleanup
git checkout main && git pull

Pitfalls

  • `fixes #42`: auto-closes issue 42 on merge. Use refs #42 to reference

without closing.

  • Squash merge: all commits become one. Branch history is lost. Best for

small PRs.

  • Merge conflicts: git fetch origin && git rebase origin/main to resolve

before pushing.

  • Draft PR: gh pr create --draft marks as WIP. Reviewers can't approve

until marked ready.

  • Force push: git push --force-with-lease (not --force) to avoid

overwriting others' work on shared branches.

  • CI not triggering: check if branch protection rules require specific

status checks. Some CI only runs on certain branch patterns.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/hezaohezao/poirot/github-pr-workflow/badge)](https://verified-skill.com/skills/hezaohezao/poirot/github-pr-workflow)

Something wrong with this skill or its page? Tell us.