theam/claude-dev-kit/create-pr
Claude Code and agent skill by theam/claude-dev-kit
- community
Checking that the SKILL.md file is still in the repository.
Create a branch, commit the work, and open a pull request for a completed user story, after all quality gates pass. Use when the user asks to open/create a PR or as the final step of the story workflow.
Install
npx vskill@latest install theam/claude-dev-kit/create-prSKILL.md
Create PR
Final step of the story workflow. Runs when the applicable gates pass (gates are adaptive to the project — see instructions/testing-standards.md).
Preconditions (verify, do not assume)
- Unit tests for touched files pass — when the project has a test framework.
coverage-checkpasses — when the project has coverage tooling (project's bar, default ≥ 95%, no regression).- Related e2e tests pass — when the project does e2e (
e2e-generateran for user-facing changes). - Lint passes for touched files — when the project lints.
- A
pr-review-style self-review found no unresolved blocking findings. - Security pass has no blocking findings (always applies).
A gate that does not apply (no test/e2e/lint setup) is not a blocker — but it must be called out in the PR "How it was verified" section as not applicable, recommend adding, never omitted. A gate that applies and fails stops the PR: report what's missing instead of opening it. (A gates policy in .claude/dev-kit.json can force required/off.)
Branch & commit
- Branch from the repo's default integration branch. Naming:
<type>/<TICKET-KEY>-<short-slug>(e.g.feat/PROJ-1234-payment-status-filter). Follow the repo's convention if one exists. - Stage only files related to the story. List anything intentionally left out.
- Commit message:
<type>: <TICKET-KEY> <imperative summary>plus a short body of key changes. Follow the repo's convention if one exists.
Pull request
Before creating, check the branch doesn't already have an open PR (gh pr view <branch> --json number,state,url, or gh pr list --head <branch> --state open). If one is open, update it instead of opening a duplicate. If the only PR for the branch is closed/merged, do not reuse its number — push to a fresh branch and open a new PR. Never assume a PR number from earlier in the session.
Open the PR on the configured host (prHost in .claude/dev-kit.json; default github). Branch/commit/push are the same everywhere (plain git); only the "open the PR" call differs:
- github —
gh pr create(ghauthenticated). - bitbucket — push the branch, then create the PR via the REST API:
POST https://api.bitbucket.org/2.0/repositories/{workspace}/{repo_slug}/pullrequestswith{title, source:{branch:{name}}, destination:{branch:{name}}}, authenticated with a Bitbucket app password / access token from the environment (e.g.BITBUCKET_TOKEN). TheacliCLI works too if the team uses it. Derive{workspace}/{repo_slug}from theoriginremote. - gitlab —
glab mr create(glabauthenticated). - azure —
az repos pr create --source-branch <branch> --target-branch <base> --title <title> --description <body>(Azure CLI with theazure-devopsextension,az loginauthenticated; runaz extension add --name azure-devopsonce if missing). The org/project/repo come from theoriginremote oraz devops configure --defaults. - other/none — print the branch and the ready-to-paste PR title/body and let the user open it.
The body must include (adapt field names to the host — GitHub/GitLab render Markdown; Bitbucket PR descriptions accept Markdown too):
Use the repo's PR template instead if one exists (.github/PULL_REQUEST_TEMPLATE.md), adding the badge, summary, verification evidence, and AI footer into it.
AI traceability metadata, best effort after creation:
- Add an
ai-generatedlabel/tag to the PR when the host supports it — GitHub:gh pr edit <url> --add-label ai-generated(create it once withgh label create ai-generated --color 8A2BE2if missing), then verify it stuck withgh pr view <url> --json labels—gh pr editcan error without applying anything on repos whose org ever used classic Projects; on a miss, apply via REST:gh api repos/<owner>/<repo>/issues/<pr-number>/labels -f "labels[]=ai-generated". Bitbucket/GitLab: skip or use the host's equivalent. If not possible, skip silently — the badge and footer already carry the signal.
After creation
Report only the PR URL/number the create call actually returned — capture it from gh pr create's output (or read it back with gh pr view <url> --json number,state,url), never a number you assumed or remembered. Then report the verification evidence and any follow-up risks explicitly.
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
- SKILL.md in the repositoryCheckingskills/create-pr/SKILL.md
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
[](https://verified-skill.com/skills/theam/claude-dev-kit/create-pr)