chore: add create-pr skill (local CI pre-check before opening PRs) - #11
Merged
Conversation
Codifies the murmur PR workflow so the check_pr.py title/description gate is run LOCALLY and required green before pushing — the failure mode that just cost a CI round-trip on #10 (body linked "spec 02" but no on-disk specs/*.md path). Captures the session's hard-won specifics: org PR rules (branch naming, base main, no direct push to master, squash merge, required AI coding brief), what check_pr.py enforces per commit-type, and the gh-pr-edit-silently-no-ops workaround (PATCH the body via gh api REST instead). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
wine-fall
force-pushed
the
zachg-0704--create-pr-skill
branch
from
July 4, 2026 15:03
d9b7724 to
d8b7926
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a repo-local
create-prskill (.claude/skills/create-pr/SKILL.md) that codifies the murmur PR workflow with a local CI pre-check as step one — run.github/scripts/check_pr.pylocally with the intended title+body and requireOK:before pushing, so the "Validate PR title + description" gate never fails on CI.It captures the specifics learned the hard way on #10:
main, no direct push to master, squash merge, and the required## AI coding briefsection;check_pr.pyenforces per commit-type — conventional title, and (forfeat/fix/perf/refactor) a[spec NN]title tag + an on-diskspecs/*.mdpath in the body;ghquirk —gh pr edit --bodycan silently no-op on the Projects-classic GraphQL error; PATCH the body viagh api … -X PATCH -F body=@fileinstead.Test plan
check_pr.pylocally (OK: … exit=0) before pushing.gh pr editsilent no-op).chore) correctly needs no spec tag/link — this PR is the proof.AI coding brief
Original request — After PR #10's CI failed on the title/description gate (body linked "spec 02" in prose but no on-disk
specs/*.mdpath), the human asked whether the CI check could be run locally before opening a PR, and then asked for a murmur-adapted PR skill namedcreate-pr. Why: stop paying a CI round-trip for a format failure that is fully reproducible locally.Manual interventions — The human drove the direction across several messages: "can't we pre-check locally before opening the PR?" → "we probably need a murmur-adapted open-pr skill" → "call it create-pr". The skill's central design (local
check_pr.pyas step 1) is the direct answer to that first question.Retro — This was avoidable: the very first PR should have run
check_pr.pylocally beforegh pr create. The lesson is now the skill's step 1, so future PRs pre-check by default. Prompting "open the PR and pre-run the CI validators locally first" up front would have skipped the whole round-trip.🤖 Generated with Claude Code