Agent skill

Make PR

by TracecatHQ in TracecatHQ/tracecat

Create, retitle, or label a pull request for the current branch.

AGPL-3.0Auto-check passedDevelopment

Install Make PR

skills CLI
$ npx skills add TracecatHQ/tracecat --skill make-pr -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install TracecatHQ/tracecat make-pr --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ 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-src

Use ~/.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/

Facts

Skill name
make-pr
GitHub stars
3.8k
Token cost
~2.7k tokens
SKILL.md length
1,422 words
Files
1
Skills in repo
4
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Create, retitle, or label a pull request for the current branch.

  • Works in 3 steps: Announce: deprecation(): in favour of .… → Warn in the code in the same PR, via… → Remove: feat()!: remove , which lands…
  • Fixing a rejected PR title
  • SKILL.md covers Requirements, Titles, Scopes and Never invent vocabulary, plus 5 more sections
  • Calls gh, just and git

What it does

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.

When your agent uses it

  • Fixing a rejected PR title
  • Choosing a scope

Example prompts

  • “/make-pr”

Requirements

  • Docker

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Announce: deprecation(): in favour of . The
  2. Warn in the code in the same PR, via deprecated="Use ... instead" on the
  3. Remove: feat()!: remove , which lands under Breaking

What it can do on your machine

Read from SKILL.md and the folder at commit 2eb1637. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Shell commands in SKILL.md call:

    • gh
    • just
    • git
    • uv

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    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.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

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.

Always · name and description, kept in context so the agent knows when to use it
~73
When it runs · the whole SKILL.md, loaded when a task matches
~2.7k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from TracecatHQ/tracecat at commit 2eb1637, republished under its AGPL-3.0 licence (© TracecatHQ). 1,422 words, ~2,673 tokens.

Download SKILL.mdSave it as .claude/skills/make-pr/SKILL.md (or your agent's skills folder).
name
make-pr
description
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.

Make a pull request

Create a PR for the current branch.

Requirements

  • Do not stage unstaged changes unless instructed otherwise.
  • If the repo is checked out on main, first create a new branch from main and open the PR from it. Never make changes on main.
  • Keep the description concise. Include the LOC breakdown table below.
  • Validate the title with just check-pr-title "<title>" before opening. It reports every violation at once, each with a stable code such as unknown-scope.
  • Additional instructions, if provided, override anything above: $ARGUMENTS

Titles

  • The PR title is the changelog line. Release Drafter renders it verbatim into the release notes, prefix included, so write it as a user-facing change description. The repo squash-merges, so the title also becomes the commit subject, plus (#NNNN).
  • The format is <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.
  • Keep the first line under 72 characters. Over-length warns, it does not fail.
  • Mark breaking changes with ! before the colon, e.g. feat(api)!: .... The ! routes the PR to the Breaking changes section. There is no breaking: type.
  • Malformed titles like feat(cases) ENG-1597: ... (no colon after the scope) get no automatic label and render without a heading in the draft release.
  • GitHub's revert button generates 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.
  • Do not copy a pre-2026-09-01 commit subject as an example of house style. Most of git log predates these rules and was never checked.

Allowed types:

<!-- BEGIN commit-conventions:types -->
TypeUse it for
buildPackaging, wheels, images, and release tooling
choreHousekeeping with no user-visible effect
ciGitHub Actions and CI configuration
deprecationAnnouncing a deprecation
docsDocumentation only
featNew user-visible behaviour
fixA bug fix
infraDeployment targets, Terraform, Helm, Compose
perfMeasurable performance work
refactorRestructuring that preserves behaviour
releaseVersion bumps, excluded from the release notes
revertUndoing a previous change
securitySecurity fixes and hardening
testTests only
<!-- END commit-conventions:types -->

Scopes

Add a scope for anything touching a product area. Leave it off only when the change is genuinely repo-wide.

<!-- BEGIN commit-conventions:scopes -->
ScopeUse it for
actionsThe built-in core.* actions a user calls in a workflow
agentsAgent runtime, chat, presets, tools, and artifacts
apiBackend API, auth, and organization or workspace administration
auditSecurity audit logs: who did what in a workspace
buildPackaging and the operator CLI
casesCase management
depsDependency bumps
docsDocumentation and playbooks
engineThe Temporal workers, executors, and scheduler that run workflows
enterpriseEnterprise edition and tiers; pair it with the area it changes
functionsThe FN.* inline expression functions
infraDatabases, deployments, and cloud infrastructure
integrationsThird-party vendor connectors and registry templates
loggingApplication logging and telemetry: how Tracecat runs
mcpTracecat's own MCP server
rbacRoles and permissions
skillsAgent skills
tablesWorkspace tables
uiThe 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.
  • Vendor names are not scopes. Write 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.
  • At most two scopes, joined with +, 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.
  • Scopes that name two different things are rejected outright: 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.
  • Everything else the checker rejects is an old spelling with a canonical replacement it will name for you, e.g. registry to integrations, agent to agents, ee to enterprise, udfs and core to actions.
Show full SKILL.md (592 more words)Show less

Never invent vocabulary

  • The vocabulary is closed. Use only the types, scopes and labels that already exist in .github/commit-conventions.toml and gh label list.
  • Do not add entries to [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.
  • A failing check is the system working, not a reason to widen the vocabulary. feat(jira): ... is meant to fail; the fix is feat(integrations): add Jira issue search, not a new jira scope.
  • If you believe a label, type or scope is genuinely missing, stop and say so. Name what you think is missing and why, then leave it to a human. Scopes and labels decide release-note section headings, which are user-facing, so new vocabulary needs engineering and GTM review before anyone adds it.

Deprecations

Removing something takes three PRs, usually across three releases:

  1. Announce: deprecation(<scope>): <thing> in favour of <replacement>. The description must name a replacement or say with no replacement; the checker fails otherwise.
  2. Warn in the code in the same PR, via deprecated="Use ... instead" on the registry action.
  3. Remove: feat(<scope>)!: remove <thing>, which lands under Breaking changes.

Dependencies

  • Routine Dependabot patches and Low, Moderate, or High severity advisories are build(deps): and land under Dependencies.
  • Reserve security(deps): for Critical unauthenticated remote-code-execution advisories. Security stays a drop-everything section only if it is rare.

Labels

  • The autolabeler assigns type and area labels from the title once the PR is opened, so do not hand-label in the normal case. Hand-label only fork PRs (the autolabeler cannot write to them) and to add nuance the title cannot express.
  • Before hand-labeling, list existing repo labels with gh label list and pick from that set.
  • The autolabeler only ever adds. Retitle a pull request and the labels its old title earned stay put, so 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>".

Descriptions

  • Never use gh pr create --body "..." when the body includes Markdown or backticks.
  • Write the PR body to a file with a single-quoted heredoc (<<'EOF') and pass it with gh pr create --body-file <file>.
  • After creating or editing a PR body, verify it with gh pr view <pr-number> --json body --jq .body.
  • If formatting is wrong, fix it with gh pr edit <pr-number> --body-file and re-verify.
  • Keep auto-generated PR content from cubic unless the user explicitly asks to remove it.
  • Include a LOC breakdown in every PR body: categorize the diff's added and removed lines by kind of change:
    • Logic: application/backend/frontend source code.
    • Tests: tests/, frontend/**/*.test.*, fixtures.
    • Infra/config: docker-compose*.yml, deployments/, .github/, Dockerfile*, env files, justfile, tool configs.
    • Docs: docs/, *.md.
    • Generated: lockfiles (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.

Changing the conventions

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

Files

Just SKILL.md in .agents/skills/make-pr of TracecatHQ/tracecat.

Open the folder on GitHubat commit 2eb1637

Compare with similar skills

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.

Make PR compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Make PR this skillTracecatHQ/tracecat3.8k—~2.7kAutomated safety check: PassAGPL-3.0
PR Finalize Reviewmicrosoft/garnet12k—~3.1kAutomated safety check: PassMIT
Git Workflow and Versioningaddyosmani/agent-skills103k2 repos~3.5kAutomated safety check: NotesMIT
React Router Pull Request Creatorremix-run/react-router57k—~2.5kAutomated safety check: PassMIT
Verdaccio Pull Request Workflowverdaccio/verdaccio18k—~1.9kAutomated safety check: PassMIT
Emoji Commit ConventionsbaptisteArno/typebot.io11k—~424Automated safety check: PassCustom licence

Similar skills

  • PR Finalize Review

    microsoft/garnet

    Official

    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.

    12k GitHub stars~3.1k tokensUpdated today
    DevelopmentAuto-check passed
  • Git Workflow and Versioning

    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.

    103k GitHub starsUsed in 2 repos~3.5k tokens
    DevelopmentAuto-check: notes
  • 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.

    57k GitHub stars~2.5k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • 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.

    18k GitHub stars~1.9k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Emoji Commit Conventions

    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.

    11k GitHub stars~424 tokensUpdated today
    DevelopmentAuto-check passed
  • Commit And PR Messages

    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…

    7.7k GitHub stars~1.6k tokensUpdated today
    DevelopmentAuto-check passed

More from TracecatHQ/tracecat

  • Docs Authoring

    TracecatHQ/tracecat

    A skill your agent uses when adding or updating documentation pages in an existing docs site.

    3.8k GitHub stars~3.1k tokensUpdated today
    Auto-check: notes
  • Gh Release

    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.

    3.8k GitHub stars~3.1k tokensUpdated today
    Auto-check passed
  • Tracecat QA

    TracecatHQ/tracecat

    QA Tracecat product features in a real local cluster. An agent skill from TracecatHQ/tracecat.

    3.8k GitHub stars~1.1k tokensUpdated today
    Auto-check: warnings

Categories

Questions about Make PR

What does Make PR do?

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.

When should I use Make PR?

Make PR fits situations like: fixing a rejected PR title; choosing a scope.

How do I install Make PR in Claude Code?

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.

How do I install Make PR in Codex?

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.

Can I use Make PR in Cursor, Gemini CLI or GitHub Copilot?

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.

What does Make PR need to run?

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.

Does Make PR access the network?

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.

Is Make PR safe to install?

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.

What licence does Make PR use?

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.

How many tokens does Make PR use?

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.

What are the alternatives to Make PR?

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.

Who maintains Make PR?

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.