pr-creator

$npx mdskill add rstackjs/agent-skills/pr-creator

Creates pull requests by enforcing branch safety, title conventions, templates, and concise English writing.

  • Helps automate PR creation while adhering to repository-specific rules and standards.
  • Integrates with Git commands and reads .github/PULL_REQUEST_TEMPLATE.md files.
  • Follows steps to check branch status, review changes, and apply formatting guidelines.
  • Drafts PR titles and bodies based on Conventional Commits and clear English principles.

SKILL.md

.github/skills/pr-creatorView on GitHub ↗
---
name: pr-creator
description: Use when asked to create a pull request for this repository. It helps the PR follow the repository's branch safety rules, title convention, pull request template, and concise English writing style.
---

# Pull Request Creator

## Steps

1. Confirm the current branch with `git branch --show-current`.
   If it is the default branch, create and switch to a new branch before doing anything else.
   Use a descriptive branch name, preferably `feat-<topic>` or `fix-<topic>`.

2. Review local changes with `git status --short`.
   Do not revert unrelated user changes.
   Before creating the PR, ensure the intended changes are committed and never commit directly on the default branch.

3. If `.github/PULL_REQUEST_TEMPLATE.md` exists, read it and keep its structure exactly.

4. Draft the PR title in the repository's standard format. If the repository uses Conventional Commits, common patterns include:
   - `feat(core): add ...`
   - `fix(plugin-less): ...`
   - `docs: ...`
   - `refactor(types): ...`
   - `chore(deps): ...`
   - `release: v1.2.0`

5. Write the PR body in concise, clear English.
   - In `Summary`, explain the user-facing problem or maintenance goal first, then the main change.
   - Keep it short: one compact paragraph or 2-4 bullets is usually enough.
   - Focus on what changed and why it matters; avoid low-signal implementation detail.
   - Good background examples:
     - `This PR adds support for custom logger injection so CLI output can be isolated per instance.`
     - `This PR fixes incorrect padding in URL labels to keep terminal output aligned across different label lengths.`
     - `This PR updates the English docs to clarify how the extraction option works and when to enable it.`

6. Fill `Related Links` with issue links, design docs, related PRs, or discussion pages.
   If the PR upgrades an npm dependency, add a link to the upgraded version's release notes or tag page when available.
   Example: `https://github.com/web-infra-dev/rspack/releases/tag/v1.0.0`
   If there is no relevant link, leave a short note such as `None`.

7. Push the branch only after re-checking the branch name. Never push the default branch directly.

8. Create the PR with `gh pr create`.

## Constraints

- Do not modify code while following this skill.

More from rstackjs/agent-skills

SkillDescription
migrate-to-rsbuildMigrate webpack, Vite, create-react-app (CRA/CRACO), or Vue CLI projects to Rsbuild.
migrate-to-rslibMigrate tsc or tsup library projects to Rslib.
migrate-to-rstestMigrate Jest or Vitest test suites and configs to Rstest. Use when asked to move from Jest/Vitest to Rstest, replace framework APIs with `@rstest/core`, translate test config to `rstest.config.ts`, or update test scripts and setup files for Rstest equivalents.
rsbuild-best-practicesRsbuild best practices for config, CLI workflow, type checking, bundle optimization, assets, and debugging. Use when writing, reviewing, or troubleshooting Rsbuild projects.
rsbuild-v2-upgradeUse when upgrading a Rsbuild 1.x project to v2, including dependency and configuration updates.
rsdoctor-analysisUse when analyzing Rspack/Webpack bundles from local `rsdoctor-data.json` and producing evidence-based optimization recommendations.
rslib-best-practicesRslib best practices for config, CLI workflow, output, declaration files, dependency handling, build optimization and toolchain integration. Use when writing, reviewing, or troubleshooting Rslib projects.
rspack-best-practicesRspack best practices for config, CLI workflow, type checking, CSS, bundle optimization, assets and profiling. Use when writing, reviewing, or troubleshooting Rspack projects.
rspack-debuggingHelps Rspack users and developers debug crashes or deadlocks/hangs in the Rspack build process using LLDB. Use this Skill when users encounter "Segmentation fault" errors during Rspack builds or when the build progress gets stuck.
rspack-split-chunks>-