pr
Create a pull request with WSL-safe workflow. Uses --body-file to avoid heredoc permission corruption.
SKILL.md.claude/skills/pr/SKILL.md
GitHubCreate Pull Request
Create a PR from the current branch using WSL-safe patterns.
Process
Check state:
git status— note any uncommitted changesgit log main..HEAD— review commits to includegit diff main...HEAD --stat— files changed
Prepare:
- If uncommitted changes exist, ask user whether to commit first
- Push the branch directly from WSL:
git push -u origin BRANCH(the Windows credential manager is wired into WSL git). Fallback ONLY if GCM crashes ("could not read Username"):powershell.exe -Command 'cd C:\Projects\cqs; git push -u origin BRANCH'
Write PR body to
/mnt/c/Projects/cqs/pr_body.md:## Summary - Bullet points summarizing changes ## Test plan - [ ] cargo test passes - [ ] cargo clippy clean - [ ] Manual verification stepsCreate PR via PowerShell:
powershell.exe -Command 'cd C:\Projects\cqs; gh pr create --title "..." --body-file pr_body.md'Clean up: Delete
pr_body.mdWait for CI — pin the run ID (
gh pr checks --watchlatches onto the previous commit's completed run after a push; do not use it):sleep 45 # new run needs ~45s to register after the push powershell.exe -Command 'cd C:\Projects\cqs; gh run list --branch BRANCH --workflow CI --limit 1' powershell.exe -Command 'cd C:\Projects\cqs; gh run watch RUN_ID --exit-status'Report: Show PR URL
Critical rules
- ALWAYS use
--body-file— never inline heredocs ingh pr create --body - Heredocs get captured as permission entries in
settings.local.json, corrupting startup git pushworks directly from WSL (credential helper wired); PowerShell is the fallback when GCM crashes. Allghcommands still go through PowerShell (withcd C:\Projects\cqsor-R jamie8johnson/cqs)- main is protected — all changes require PR