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.
Create, retitle, or label a pull request for the current branch.
$ npx skills add TracecatHQ/tracecat --skill make-pr -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install TracecatHQ/tracecat make-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/TracecatHQ/tracecat.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/make-pr .claude/skills/make-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 "make-pr" agent skill from https://github.com/TracecatHQ/tracecat/tree/main/.agents/skills/make-pr into .claude/skills/make-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-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/TracecatHQ/tracecat/tree/main/.agents/skills/make-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 TracecatHQ/tracecat --skill make-pr -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install TracecatHQ/tracecat make-pr --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TracecatHQ/tracecat.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/make-pr .agents/skills/make-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 "make-pr" agent skill from https://github.com/TracecatHQ/tracecat/tree/main/.agents/skills/make-pr into .agents/skills/make-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-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 TracecatHQ/tracecat --skill make-pr -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install TracecatHQ/tracecat make-pr --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TracecatHQ/tracecat.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/make-pr .cursor/skills/make-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 "make-pr" agent skill from https://github.com/TracecatHQ/tracecat/tree/main/.agents/skills/make-pr into .cursor/skills/make-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-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/TracecatHQ/tracecat.git --path .agents/skills/make-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 TracecatHQ/tracecat --skill make-pr -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install TracecatHQ/tracecat make-pr --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TracecatHQ/tracecat.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/make-pr .gemini/skills/make-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 "make-pr" agent skill from https://github.com/TracecatHQ/tracecat/tree/main/.agents/skills/make-pr into .gemini/skills/make-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-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 TracecatHQ/tracecat make-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 TracecatHQ/tracecat --skill make-pr -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/TracecatHQ/tracecat.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/make-pr .github/skills/make-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 "make-pr" agent skill from https://github.com/TracecatHQ/tracecat/tree/main/.agents/skills/make-pr into .github/skills/make-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-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 TracecatHQ/tracecat --skill make-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 TracecatHQ/tracecat make-pr --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/TracecatHQ/tracecat.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/make-pr .opencode/skills/make-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 "make-pr" agent skill from https://github.com/TracecatHQ/tracecat/tree/main/.agents/skills/make-pr into .opencode/skills/make-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-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.
make-prCreate, retitle, or label a pull request for the current branch.
Make PR is an agent skill from TracecatHQ/tracecat. Create, retitle, or label a pull request for the current branch. Holds the full commit-convention rules (types, scopes, deprecations, dependency bumps, labels, reverts) and the PR body requirements. Use whenever opening a PR, fixing a rejected PR title, or choosing a scope or label.
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Pull requests and Commit messages. The repository describes itself as: Open-source security automation platform for teams and AI agents. The licence is AGPL-3.0.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 2eb1637. 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:
ghjustgituvFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh, git and uv, 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.
Make PR loads about 2.7k tokens when it runs. Until then it costs about 73 tokens; SKILL.md has 1,422 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 TracecatHQ/tracecat at commit 2eb1637, republished under its AGPL-3.0 licence (© TracecatHQ). 1,422 words, ~2,673 tokens.
.claude/skills/make-pr/SKILL.md (or your agent's skills folder).Create a PR for the current branch.
main, first create a new branch from main and
open the PR from it. Never make changes on main.just check-pr-title "<title>" before opening. It
reports every violation at once, each with a stable code such as
unknown-scope. (#NNNN).<type>(<scope>)!: <description>. Type picks a type label,
scope picks an area label, and the first matching category in
.github/release-drafter.yml picks the release-notes section.! before the colon, e.g. feat(api)!: .... The
! routes the PR to the Breaking changes section. There is no breaking:
type.feat(cases) ENG-1597: ... (no colon after the scope)
get no automatic label and render without a heading in the draft release.Revert "fix(agents): ...", and the checker
rejects it: no type, so no section. Retitle to
revert(<scope>): <description>, keeping the scope of the change being
reverted. The revert-wrapper error spells the replacement out.git log predates these rules and was never checked.Allowed types:
<!-- BEGIN commit-conventions:types -->
| Type | Use it for |
|---|---|
build | Packaging, wheels, images, and release tooling |
chore | Housekeeping with no user-visible effect |
ci | GitHub Actions and CI configuration |
deprecation | Announcing a deprecation |
docs | Documentation only |
feat | New user-visible behaviour |
fix | A bug fix |
infra | Deployment targets, Terraform, Helm, Compose |
perf | Measurable performance work |
refactor | Restructuring that preserves behaviour |
release | Version bumps, excluded from the release notes |
revert | Undoing a previous change |
security | Security fixes and hardening |
test | Tests only |
<!-- END commit-conventions:types -->
Add a scope for anything touching a product area. Leave it off only when the change is genuinely repo-wide.
<!-- BEGIN commit-conventions:scopes -->
| Scope | Use it for |
|---|---|
actions | The built-in core.* actions a user calls in a workflow |
agents | Agent runtime, chat, presets, tools, and artifacts |
api | Backend API, auth, and organization or workspace administration |
audit | Security audit logs: who did what in a workspace |
build | Packaging and the operator CLI |
cases | Case management |
deps | Dependency bumps |
docs | Documentation and playbooks |
engine | The Temporal workers, executors, and scheduler that run workflows |
enterprise | Enterprise edition and tiers; pair it with the area it changes |
functions | The FN.* inline expression functions |
infra | Databases, deployments, and cloud infrastructure |
integrations | Third-party vendor connectors and registry templates |
logging | Application logging and telemetry: how Tracecat runs |
mcp | Tracecat's own MCP server |
rbac | Roles and permissions |
skills | Agent skills |
tables | Workspace tables |
ui | The Next.js app and React UI |
<!-- END commit-conventions:scopes -->
actions is the built-in core.* actions a user calls in a workflow;
functions is the FN.* inline expression functions; engine is the
Temporal workers and executors that run them. The first two are catalogs of
what the platform offers, and each has its own release-notes section; the
third is the machinery.cases and tables are core platform features with their own scopes and
their own sections. Neither folds into api or engine.enterprise says who may use a change, not what the change is, so it never
decides the section. Pair it with the area: feat(enterprise+cases) lands in
Case management, and a bare feat(enterprise) falls to Features.engine is what runs; infra is what it runs on. If the change could ship
by redeploying the same image, it is infra.audit is the security audit log: what a workspace records about who did
what, for someone reviewing it later. logging is application telemetry, what
an operator reads to debug Tracecat itself. Audit work renders under Security,
telemetry under Observability.feat(integrations): add Jira issue search and name the vendor in the description. The autolabeler still
absorbs vendor scopes into integrations so merged PRs categorize, but the
checker rejects them.+, e.g. feat(cases+actions): add a case linking action. A change lands in the highest-ranked section its labels
match, so that example appears under Case management, not Core actions.
Needing three scopes usually means the PR should be split.app, dev,
config, service, tracecat, ai, workflows. app historically meant
the backend, not the frontend.workflows reads as GitHub Actions to one person and as the workflow engine
to another. GitHub Actions work is a bare ci: with no scope, and
workflow-engine work is engine.registry to integrations, agent
to agents, ee to enterprise, udfs and core to actions..github/commit-conventions.toml and gh label list.[types], [scopes], [scope_aliases] or
[legacy_scopes], and do not run gh label create, even when a change seems
not to fit. It usually does fit: a vendor name belongs in integrations with
the vendor named in the description, and a change that needs a third scope is
a PR that should be split.feat(jira): ... is meant to fail; the fix is
feat(integrations): add Jira issue search, not a new jira scope.Removing something takes three PRs, usually across three releases:
deprecation(<scope>): <thing> in favour of <replacement>. The
description must name a replacement or say with no replacement; the
checker fails otherwise.deprecated="Use ... instead" on the
registry action.feat(<scope>)!: remove <thing>, which lands under Breaking
changes.build(deps): and land under Dependencies.security(deps): for Critical unauthenticated remote-code-execution
advisories. Security stays a drop-everything section only if it is rare.gh label list and
pick from that set.fix(workflows): ... retitled to ci: ...
keeps engine alongside the new cicd and lands in two sections. Remove the
stale ones yourself:
gh api --method DELETE repos/TracecatHQ/tracecat/issues/<pr>/labels/<label>.gh pr edit subcommands fail on this repo because of the Projects-classic
deprecation. Apply labels with
gh api repos/TracecatHQ/tracecat/issues/<pr-number>/labels -f "labels[]=<label>".gh pr create --body "..." when the body includes Markdown or
backticks.<<'EOF') and pass
it with gh pr create --body-file <file>.gh pr view <pr-number> --json body --jq .body.gh pr edit <pr-number> --body-file and
re-verify.tests/, frontend/**/*.test.*, fixtures.docker-compose*.yml, deployments/, .github/, Dockerfile*,
env files, justfile, tool configs.docs/, *.md.uv.lock, pnpm-lock.yaml), generated API clients,
migrations produced by autogenerate.
Compute counts from git diff --numstat <base>...HEAD and render as a small
Markdown table with one row per category and + / - columns. Omit empty
categories; use judgment for files that straddle categories.For humans making an approved change: .github/commit-conventions.toml is the
source of truth. Edit it, then re-verify with just check-pr-title and
uv run pytest tests/unit/test_commit_conventions.py, which fails if the
autolabeler regexes, the category labels, or the tables above drift from it.
Re-derive any quoted counts with just audit-conventions prefixes.
© TracecatHQ, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/make-pr of TracecatHQ/tracecat.
Open the folder on GitHubat commit 2eb1637
Make 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 |
|---|---|---|---|---|---|---|
| Make PR this skillTracecatHQ/tracecat | 3.8k | — | ~2.7k | Automated safety check: Pass | AGPL-3.0 | |
| PR Finalize Reviewmicrosoft/garnet | 12k | — | ~3.1k | Automated safety check: Pass | MIT | |
| Git Workflow and Versioningaddyosmani/agent-skills | 103k | 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…
TracecatHQ/tracecat
A skill your agent uses when adding or updating documentation pages in an existing docs site.
TracecatHQ/tracecat
Cut a stable GitHub release or prerelease directly from a Tracecat release branch, including the version bump, tag, image verification, and categorized release notes.
TracecatHQ/tracecat
QA Tracecat product features in a real local cluster. An agent skill from TracecatHQ/tracecat.
Categories
Create, retitle, or label a pull request for the current branch. Make PR is an agent skill from TracecatHQ/tracecat. Create, retitle, or label a pull request for the current branch.
Make PR fits situations like: fixing a rejected PR title; choosing a scope.
Run `npx skills add TracecatHQ/tracecat --skill make-pr -a claude-code`. Or copy the skill folder (.agents/skills/make-pr in TracecatHQ/tracecat) into .claude/skills/make-pr in your project. Claude Code loads it when a task matches its description.
Run `npx skills add TracecatHQ/tracecat --skill make-pr -a codex`. Or copy the skill folder (.agents/skills/make-pr in TracecatHQ/tracecat) into .agents/skills/make-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 TracecatHQ/tracecat --skill make-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/make-pr, .gemini/skills/make-pr, .github/skills/make-pr and .opencode/skills/make-pr in your project.
Going by SKILL.md and its folder, Make PR needs the command-line tools its instructions call (gh, just, git and uv). Our summary lists: Docker.
SKILL.md contains no URLs. Its commands use gh, git and uv, 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.
Make PR is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k 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 Make PR: PR Finalize Review (microsoft/garnet, 12k stars), Git Workflow and Versioning (addyosmani/agent-skills, 103k 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.
TracecatHQ (a GitHub organization) maintains it in TracecatHQ/tracecat, which has 3,826 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 8, 2026.
Source: TracecatHQ/tracecat on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.