React Router Pull Request Creator
remix-run/react-router
Packages finished React Router work into a draft pull request: branch, commit, push, a written PR body and the right GitHub labels.
Publishes a GitHub PR for the checked-out branch with a Conventional Commits style title, a description backed by commands run, and screenshots when the UI changed.
$ npx skills add antfu/skills --skill antfu-create-pr -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install antfu/skills antfu-create-pr --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/antfu/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/antfu-create-pr .claude/skills/antfu-create-pr && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "antfu-create-pr" agent skill from https://github.com/antfu/skills/tree/main/skills/antfu-create-pr into .claude/skills/antfu-create-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "antfu-create-pr", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/antfu/skills/tree/main/skills/antfu-create-prType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add antfu/skills --skill antfu-create-pr -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install antfu/skills antfu-create-pr --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/antfu/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/antfu-create-pr .agents/skills/antfu-create-pr && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "antfu-create-pr" agent skill from https://github.com/antfu/skills/tree/main/skills/antfu-create-pr into .agents/skills/antfu-create-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "antfu-create-pr", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add antfu/skills --skill antfu-create-pr -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install antfu/skills antfu-create-pr --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/antfu/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/antfu-create-pr .cursor/skills/antfu-create-pr && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "antfu-create-pr" agent skill from https://github.com/antfu/skills/tree/main/skills/antfu-create-pr into .cursor/skills/antfu-create-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "antfu-create-pr", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/antfu/skills.git --path skills/antfu-create-pr--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add antfu/skills --skill antfu-create-pr -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install antfu/skills antfu-create-pr --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/antfu/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/antfu-create-pr .gemini/skills/antfu-create-pr && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "antfu-create-pr" agent skill from https://github.com/antfu/skills/tree/main/skills/antfu-create-pr into .gemini/skills/antfu-create-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "antfu-create-pr", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install antfu/skills antfu-create-prInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add antfu/skills --skill antfu-create-pr -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/antfu/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/antfu-create-pr .github/skills/antfu-create-pr && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "antfu-create-pr" agent skill from https://github.com/antfu/skills/tree/main/skills/antfu-create-pr into .github/skills/antfu-create-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "antfu-create-pr", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add antfu/skills --skill antfu-create-pr -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install antfu/skills antfu-create-pr --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/antfu/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/antfu-create-pr .opencode/skills/antfu-create-pr && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "antfu-create-pr" agent skill from https://github.com/antfu/skills/tree/main/skills/antfu-create-pr into .opencode/skills/antfu-create-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "antfu-create-pr", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
antfu-create-prPublishes a GitHub PR for the checked-out branch with a Conventional Commits style title, a description backed by commands run, and screenshots when the UI changed.
The agent inspects the repo (status, branch, remotes, default branch, PR templates and any `AGENTS.md` or `CONTRIBUTING.md` rules), computes the merge base against the target branch, and reads the full diff, separating runtime code from generated files, lockfiles and snapshots. It classifies the PR as a feature, fix, refactor, chore or docs change, runs the checks that match what changed and records the exact commands and results. For stacked branches it targets the unmerged parent and describes only this PR's own changes.
The body is written for a reviewer who has only the description: the changed behavior and why, not a file list, kept in proportion to the change, with a required Summary section and optional extras such as tables and diagrams. The title uses Conventional Commits in lowercase imperative form under about 70 characters. UI changes get before and after evidence, the body goes into a temporary file, and `gh pr create` runs with `--draft` when checks are still running. The agent then verifies the created PR and handles review comments by fixing, replying with evidence and resolving threads. The excerpt is truncated.
10 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit feb0f3a. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Shell), which the agent can run.
Shell commands in SKILL.md call:
gitghFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and gh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Create Pull Request loads about 1.4k tokens when it runs, and up to ~3.6k if it reads all its reference files. Until then it costs about 62 tokens; SKILL.md has 728 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from antfu/skills at commit feb0f3a, republished under its MIT licence (© antfu). 728 words, ~1,406 tokens.
.claude/skills/antfu-create-pr/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.Open a PR that a reviewer can understand from the body alone. Explain the changed behavior and why, not the list of changed files. Keep the body proportional to the change: a one-line fix gets a few sentences, a cross-module feature gets tables and diagrams.
git status, current branch, remotes, default branch, .github/PULL_REQUEST_TEMPLATE*, and AGENTS.md / CONTRIBUTING.md for PR rules.base...head range the PR publishes. If the branch is stacked on another unmerged branch, target that branch and describe only this PR's own changes.gh pr create --title ... --body-file ... (add --attach for each screenshot). Use --draft when checks are still running or the work is not review-ready.Use Conventional Commits, matching how the repo already writes commit messages:
feat(scope): add retry to upload client
fix(scope): avoid double submit on enter
refactor: extract diff parsing from cli
chore(deps): update vite to v8
docs: clarify worktree setupEach commit does one logical thing and uses a Conventional Commits message. A reviewer should be able to read git log --oneline as the story of the change and review commit by commit.
# Good: each commit is self-contained
feat(api): add task creation endpoint with validation
feat(ui): add task creation form component
feat(ui): connect form to api and add loading state
test(tasks): cover task creation (unit + integration)
# Bad: everything mixed together
feat: add task feature, fix sidebar, update deps, refactor utilsgit rebase -i <base>) until each one stands alone and builds.Required in every PR:
## Summary: the problem or capability first, then what changed and why this approach. Mention if the PR is stacked and on what.closes #123 / fixes #123 / refs #123 so GitHub links and auto-closes.## Verification: exact commands run and their results, plus anything left unverified.Optional, only when it helps the reviewer:
## Change map: table of module, before, after, reason. Use for changes across several modules or ownership boundaries. Never a raw file list.## Architecture and behavior: a Mermaid flow, sequence, or state diagram when ordering, async work, or state transitions changed. For a fix, pair a Before and After diagram at the same abstraction level.## Boundaries and risks: table of invariant, failure mode, protection, evidence. Use when there are real failure modes, migrations, or external effects.## Visual changes: before/after image table for UI changes.## Rollout and follow-up: migrations, feature flags, known gaps. State whether a gap blocks merge.If the repo has a PR template, keep its headings and fill them; add sections above only where the template leaves room.
gh --attach.© antfu, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files (scripts, references) in skills/antfu-create-pr of antfu/skills.
Open the folder on GitHubat commit feb0f3a
Create Pull Request next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Create Pull Request this skillantfu/skills | 6k | — | ~1.4k | Automated safety check: Pass | MIT | |
| React Router Pull Request Creatorremix-run/react-router | 57k | — | ~2.5k | Automated safety check: Pass | MIT | |
| Verdaccio Pull Request Workflowverdaccio/verdaccio | 18k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Draft Pull Request Creatorwordpress-mobile/WordPress-Android | 3.2k | — | ~881 | Automated safety check: Notes | GPL-2.0 | |
| Submit PRtisfeng/Easydict | 15k | — | ~595 | Automated safety check: Pass | GPL-3.0 | |
| Create PREmiyaaaaa/HiveMind | 1.1k | — | ~1.7k | Automated safety check: Pass | Custom licence |
remix-run/react-router
Packages finished React Router work into a draft pull request: branch, commit, push, a written PR body and the right GitHub labels.
verdaccio/verdaccio
Takes a change through a verdaccio pull request: branch, local checks, changeset, title and body, labels, CI and review rounds, and ports to other release lines.
wordpress-mobile/WordPress-Android
Commits and pushes current changes, writes a pull request title and body from the branch history and template, and opens a draft PR on GitHub after you approve it.
tisfeng/Easydict
创建或复用当前 checkout 已提交变更的 GitHub PR,必要时推送任务分支。PR 审查使用 review-pr;仅本地提交使用 git-commit。
Emiyaaaaa/HiveMind
Create a GitHub pull request with gh pr create. An agent skill from Emiyaaaaa/HiveMind.
389ds/389-ds-base
Commit and open a PR the 389-ds-base way — "Issue NNNN - summary" subject, Bug Description/Fix Description body, Fixes:/Relates: trailer, AI-attribution trailer, and squash-merge etiquette.
antfu/skills
Reference for Nitro v3, the server toolkit behind Nuxt: file routing, route rules, caching, storage, tasks, websockets and deployment presets.
Categories
Publishes a GitHub PR for the checked-out branch with a Conventional Commits style title, a description backed by commands run, and screenshots when the UI changed. md` rules), computes the merge base against the target branch, and reads the full diff, separating runtime code from generated files, lockfiles and snapshots. It classifies the PR as a feature, fix, refactor, chore or docs change, runs the checks that match what changed and records the exact commands and results.
Create Pull Request fits situations like: opening a pull request from the current branch; writing a PR description a reviewer can follow without reading the whole diff; adding before and after screenshots to a UI change PR; preparing a draft PR while checks are still running.
Run `npx skills add antfu/skills --skill antfu-create-pr -a claude-code`. Or copy the skill folder (skills/antfu-create-pr in antfu/skills) into .claude/skills/antfu-create-pr in your project. Claude Code loads it when a task matches its description.
Run `npx skills add antfu/skills --skill antfu-create-pr -a codex`. Or copy the skill folder (skills/antfu-create-pr in antfu/skills) into .agents/skills/antfu-create-pr in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add antfu/skills --skill antfu-create-pr -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/antfu-create-pr, .gemini/skills/antfu-create-pr, .github/skills/antfu-create-pr and .opencode/skills/antfu-create-pr in your project.
Going by SKILL.md and its folder, Create Pull Request needs a shell for the scripts in its folder and the command-line tools its instructions call (git and gh). Our summary lists: GitHub CLI (`gh`) authenticated for the repository; A branch that can be pushed to a remote.
SKILL.md contains no URLs. Its commands use git and gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Create Pull Request is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.4k tokens (SKILL.md is roughly 5.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Create Pull Request: React Router Pull Request Creator (remix-run/react-router, 57k stars), Verdaccio Pull Request Workflow (verdaccio/verdaccio, 18k stars), Draft Pull Request Creator (wordpress-mobile/WordPress-Android, 3.2k stars) and Submit PR (tisfeng/Easydict, 15k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
antfu (a GitHub user) maintains it in antfu/skills, which has 5,950 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 9, 2026.
Source: antfu/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.