Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
vkehfdl1 avatar

Create Pr

  • 11 installs
  • Updated February 27, 2026
  • vkehfdl1/marshroom

Helps with ai & agent building tasks.

About

create-pr is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted development.

  • create-pr
  • AI & Agent Building
  • AI-coding skill

Create Pr by the numbers

  • 11 all-time installs (skills.sh)
  • Ranked #11,769 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/vkehfdl1/marshroom --skill create-pr

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs11
Last updatedFebruary 27, 2026
Repositoryvkehfdl1/marshroom

What it does

Helps with ai & agent building tasks.

Files

SKILL.mdMarkdownGitHub ↗

Create a Pull Request for a Marshroom cart issue matching the current branch.

Critical Requirements

  • state.json update is MANDATORY. After creating the PR, you MUST update the issue status to pending with prNumber and prURL in ${MARSHROOM_STATE:-~/.config/marshroom/state.json}. If this fails, stop and report the error — do NOT silently continue.
  • Use marsh pr if available; otherwise fall back to direct jq atomic write (see step 9).

Steps

1. Read ${MARSHROOM_STATE:-~/.config/marshroom/state.json} and parse the JSON 2. Run git branch --show-current to get the current branch name 3. Find the cart entry matching the current branch and repo. Use relaxed matching:

  • First try exact branchName match
  • Then try /#N suffix match (e.g., current branch HotFix/#20 matches cart entry with branchName: "Feature/#20" because both end with /#20)
  • If no match, tell the user they're not on a cart issue branch

3-1. Commit the current changes. Give proper commit message to commits. Ask user permission if the changes are too large or suspicious (e.g. 100+ changes, dummy files, DB updates, logs, and so on) 4. Push the current branch: git push -u origin HEAD 5. Build the PR body:

  • Start with a brief description of the changes made
  • If the matched cart entry has an issueBody field (non-null), include it under a "## Original Issue" section for reviewer context
  • The body MUST include close #<issueNumber> (this is mandatory for auto-closing the issue)

6. Create the PR using gh pr create:

  • Title: the issue title from the matched cart entry
  • Body: the constructed body from step 5

7. After PR creation, verify the body contains the closing keyword:

  • Run gh pr view --json body -q '.body'
  • If close #<issueNumber> is NOT found in the body, fix it: gh pr edit --body "$(gh pr view --json body -q '.body')\n\nclose #<issueNumber>"

8. Capture the PR URL and number:

  • Run gh pr view --json number,url -q '.number,.url'

9. Update issue status (MANDATORY):

  • First try: marsh pr
  • If marsh is not found in PATH, fall back to direct atomic update using the PR number and URL from step 8:
     STATE_FILE="${MARSHROOM_STATE:-~/.config/marshroom/state.json}"
     TMP="$(mktemp "${STATE_FILE}.XXXXXX")"
     jq --argjson n ISSUE_NUMBER --argjson prNum PR_NUMBER --arg prUrl "PR_URL" \
       '.cart |= map(if .issueNumber == $n then .status = "pending" | .prNumber = $prNum | .prURL = $prUrl else . end)' \
       "$STATE_FILE" > "$TMP" && mv -f "$TMP" "$STATE_FILE"
  • Verify the update succeeded by reading state.json and confirming status is pending

10. Display the result:

  • PR URL
  • PR Number
  • Issue: #{issueNumber} {issueTitle}
  • Status: pending

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.