PR Finalize Review
microsoft/garnet
Checks that a pull request's title and description match its implementation and reviews the code for Garnet best practices, reporting findings without posting them.
Prepares and opens a druxt.js pull request from a contributor's fork against develop, with a Conventional Commits title and the repository's template filled in.
$ npx skills add druxt/druxt.js --skill open-pr -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install druxt/druxt.js open-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/druxt/druxt.js.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/open-pr .claude/skills/open-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 "open-pr" agent skill from https://github.com/druxt/druxt.js/tree/develop/.agents/skills/open-pr into .claude/skills/open-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-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/druxt/druxt.js/tree/develop/.agents/skills/open-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 druxt/druxt.js --skill open-pr -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install druxt/druxt.js open-pr --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/druxt/druxt.js.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/open-pr .agents/skills/open-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 "open-pr" agent skill from https://github.com/druxt/druxt.js/tree/develop/.agents/skills/open-pr into .agents/skills/open-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-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 druxt/druxt.js --skill open-pr -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install druxt/druxt.js open-pr --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/druxt/druxt.js.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/open-pr .cursor/skills/open-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 "open-pr" agent skill from https://github.com/druxt/druxt.js/tree/develop/.agents/skills/open-pr into .cursor/skills/open-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-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/druxt/druxt.js.git --path .agents/skills/open-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 druxt/druxt.js --skill open-pr -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install druxt/druxt.js open-pr --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/druxt/druxt.js.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/open-pr .gemini/skills/open-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 "open-pr" agent skill from https://github.com/druxt/druxt.js/tree/develop/.agents/skills/open-pr into .gemini/skills/open-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-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 druxt/druxt.js open-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 druxt/druxt.js --skill open-pr -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/druxt/druxt.js.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/open-pr .github/skills/open-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 "open-pr" agent skill from https://github.com/druxt/druxt.js/tree/develop/.agents/skills/open-pr into .github/skills/open-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-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 druxt/druxt.js --skill open-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 druxt/druxt.js open-pr --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/druxt/druxt.js.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/open-pr .opencode/skills/open-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 "open-pr" agent skill from https://github.com/druxt/druxt.js/tree/develop/.agents/skills/open-pr into .opencode/skills/open-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-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.
open-prPrepares and opens a druxt.js pull request from a contributor's fork against develop, with a Conventional Commits title and the repository's template filled in.
Open PR is an agent skill from druxt/druxt.js. Prepares and opens a druxt.js pull request from a contributor's fork against develop, with a Conventional Commits title and the repository's template filled in. Use when a druxt.js change is ready for review, or when asked to open a pull request or to write its title or description.
Its SKILL.md is about 770 tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `evals/tests.yaml`).
It sits in Development, covering Pull requests and Commit messages. It works with Nuxt. The repository describes itself as: The Fully Decoupled Drupal Framework. The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit b07a3e3. 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.
Shell commands in SKILL.md call:
gitghyarnFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, gh and yarn, 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.
Open PR loads about 771 tokens when it runs. Until then it costs about 73 tokens; SKILL.md has 397 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); files beside SKILL.md are not scanned.
The full file from druxt/druxt.js at commit b07a3e3, republished under its MIT licence (© druxt). 397 words, ~771 tokens.
.claude/skills/open-pr/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Pull requests go from a branch on your fork to develop on druxt/druxt.js. Push and open one only when the person you work for asks you to.
verify-change skill has passed in this session, and you have its output.add-changeset skill says the change needs one. A fix for a bug that no release has needs none, even in a published package.develop. Merge upstream/develop into it, then re-run the gate.yarn lint:commit --from upstream/develop --to HEAD checks the messages, and the pre-push hook checks the identity too.Pull requests are squash merged, and the title becomes the commit on develop. Write it as a Conventional Commits subject that says what changes for a Druxt user:
fix(#412): render nothing for a menu with no items
feat(router): resolve paths with a trailing slashThe scope is the issue number when there is one (fix(#412): …), and otherwise the package directory name (menu, router, druxt). Leave the scope out for a change across several packages with no issue.
Fill in every section of .github/PULL_REQUEST_TEMPLATE.md:
Resolves: #123 line for the issue. Include the spec when there is one, and list the commands you ran to verify the change with their results.Ask a maintainer for the perf-audit label when the change touches a store, the Druxt client, a Nuxt module or how components fetch data. The audit then posts its numbers on the pull request.
git push -u origin <branch>
gh pr create --repo druxt/druxt.js --base develop --head <your-user>:<branch> \
--title "fix(#412): render nothing for a menu with no items" --body-file <description.md>Without the gh CLI, open the compare page that git push prints.
CI runs on the pull request. A red check is yours to fix before review starts, using the address-review skill. Maintainers review, label and merge. Never merge a pull request, even when asked: a maintainer does that. Leave labels and reviewer requests to them too.
© druxt, 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 1 other file in .agents/skills/open-pr of druxt/druxt.js.
Open the folder on GitHubat commit b07a3e3
Open PR 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 |
|---|---|---|---|---|---|---|
| Open PR this skilldruxt/druxt.js | 114 | — | ~771 | Automated safety check: Pass | MIT | |
| PR Finalize Reviewmicrosoft/garnet | 12k | — | ~3.1k | Automated safety check: Pass | MIT | |
| Git Workflow and Versioningaddyosmani/agent-skills | 102k | 2 repos | ~3.5k | Automated safety check: Notes | 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 | |
| Emoji Commit ConventionsbaptisteArno/typebot.io | 11k | — | ~424 | Automated safety check: Pass | Custom licence |
microsoft/garnet
Checks that a pull request's title and description match its implementation and reviews the code for Garnet best practices, reporting findings without posting them.
addyosmani/agent-skills
Sets git habits for every change: short-lived branches, atomic commits with descriptive messages, clean pull requests, plus versioning, tagging and changelogs for releases.
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.
baptisteArno/typebot.io
Sets the repository's convention for commit messages and pull request titles: one emoji prefix for the main intent, a concise title and clean follow-up commits.
superplanehq/superplane
Write Git commit messages and pull request titles/descriptions using the Chris Beams / Tim Pope conventions (subject/body split, ~50-char subject, imperative mood, why-not-how body) plus ASD-STE100…
druxt/druxt.js
Writes the changeset that versions a druxt.js package change and becomes its changelog entry.
druxt/druxt.js
Works through review comments and failing CI on a druxt.js pull request, fixing or answering each one until the pull request is green and every thread has a reply.
druxt/druxt.js
Sets up a druxt.js change before the first edit, from the issue to a feature branch off develop, a short spec and a failing test.
druxt/druxt.js
Sorts a druxt.js issue by type and package, and reproduces it against the example Drupal backend or with a failing unit test before writing up the findings.
druxt/druxt.js
Runs the druxt.js verification gate (lint, build, unit tests and the checks for whatever else changed) and reports the real results.
druxt/druxt.js
Creates or changes a druxt.js contributor skill in .agents/skills, with its evals and the tests that gate it.
Works with
Categories
Prepares and opens a druxt.js pull request from a contributor's fork against develop, with a Conventional Commits title and the repository's template filled in. js.js pull request from a contributor's fork against develop, with a Conventional Commits title and the repository's template filled in.
Open PR fits situations like: A druxt.js change is ready for review; asked to open a pull request; write its title.
Run `npx skills add druxt/druxt.js --skill open-pr -a claude-code`. Or copy the skill folder (.agents/skills/open-pr in druxt/druxt.js) into .claude/skills/open-pr in your project. Claude Code loads it when a task matches its description.
Run `npx skills add druxt/druxt.js --skill open-pr -a codex`. Or copy the skill folder (.agents/skills/open-pr in druxt/druxt.js) into .agents/skills/open-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 druxt/druxt.js --skill open-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/open-pr, .gemini/skills/open-pr, .github/skills/open-pr and .opencode/skills/open-pr in your project.
Going by SKILL.md and its folder, Open PR needs the command-line tools its instructions call (git, gh and yarn).
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. Review the folder before installing.
Open PR is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 771 tokens (SKILL.md is roughly 3.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Open PR: PR Finalize Review (microsoft/garnet, 12k stars), Git Workflow and Versioning (addyosmani/agent-skills, 102k stars), React Router Pull Request Creator (remix-run/react-router, 57k stars) and Verdaccio Pull Request Workflow (verdaccio/verdaccio, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
druxt (a GitHub organization) maintains it in druxt/druxt.js, which has 114 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 7, 2026.
Source: druxt/druxt.js on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.