Generate PR descriptions and changeset entries. An agent skill from trendmicro-frontend/tonic-ui.

MITAuto-check passedDevelopment

Install Tonic UI PR

skills CLI
$ npx skills add trendmicro-frontend/tonic-ui --skill tonic-ui-pr -a claude-code

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

GitHub CLI
$ gh skill install trendmicro-frontend/tonic-ui tonic-ui-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/trendmicro-frontend/tonic-ui.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/tonic-ui-pr .claude/skills/tonic-ui-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
tonic-ui-pr
GitHub stars
133
Token cost
~2.7k tokens
SKILL.md length
868 words
Files
1
Skills in repo
4
Repo updated
First seen
Licence
MIT

At a glance

Generate PR descriptions and changeset entries. An agent skill from trendmicro-frontend/tonic-ui.

  • Works in 4 steps: Analyze Changes (Use parallel tool calls) → Classify the Change → Write PR Content → …
  • The user mentions PR
  • SKILL.md covers Pre-Work Checklist, Scope Rules, PR Title Format and PR Body Template, plus 4 more sections
  • Calls git; reaches trendmicro-frontend.github.io

What it does

Tonic UI PR is an agent skill from trendmicro-frontend/tonic-ui. Generate PR descriptions and changeset entries. Use when the user mentions "PR", "pull request", "PR description", "changeset", provides a diff or describes code changes, or asks to draft a merge request. Also trigger for conventional commit message generation.

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. It works with React. The repository describes itself as: Tonic UI is a UI component library for React, built with Emotion and Styled System. It is designed to be easy to use and easy to customize. The licence is MIT.

When your agent uses it

  • The user mentions PR
  • Provides a diff
  • Describes code changes
  • Asks to draft a merge request

Example prompts

  • “pull request”
  • “PR description”
  • “changeset”
  • “/tonic-ui-pr”

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Analyze Changes (Use parallel tool calls)
  2. Classify the Change
  3. Write PR Content
  4. Verify Quality

What it can do on your machine

Read from SKILL.md and the folder at commit b9a797e. 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:

    • git

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

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • trendmicro-frontend.github.io

    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

Tonic UI PR loads about 2.7k tokens when it runs. Until then it costs about 68 tokens; SKILL.md has 868 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~68
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 trendmicro-frontend/tonic-ui at commit b9a797e, republished under its MIT licence (© trendmicro-frontend). 868 words, ~2,667 tokens.

Download SKILL.mdSave it as .claude/skills/tonic-ui-pr/SKILL.md (or your agent's skills folder).
name
tonic-ui-pr
description
Generate PR descriptions and changeset entries. Use when the user mentions "PR", "pull request", "PR description", "changeset", provides a diff or describes code changes, or asks to draft a merge request. Also trigger for conventional commit message generation.

PR Description Generator

Generate well-structured PR descriptions following conventional commits and tonic-ui project conventions. Based on analysis of 885 commits and 721 PRs.

Pre-Work Checklist

CRITICAL: Always complete these steps BEFORE writing PR descriptions

  • Run git commands to understand changes — Never write PR descriptions without seeing the actual changes
  • Check commit history — Review recent commits to match repository style
  • Identify changed files and scope — Determine which packages/components are affected

Run these commands in parallel:

bash
git status              # See all changed files
git diff HEAD           # See all changes
git log --oneline -10   # See recent commit message style

For efficiency: Make all three Bash tool calls in a single message since they're independent.

Scope Rules

AllowedNOT Allowed
Generate PR titles and descriptionsModify source code
Create changeset files for monoreposCreate changesets for non-monorepo projects
Draft commit messagesAutomatically commit or push changes
Review and summarize diffsAdd features or fix bugs

If asked to create a changeset for a non-monorepo project, explain that changesets are only used in Tonic UI and Tonic UI monorepos.

PR Title Format

Follow conventional commits:

<type>(<scope>): <short description>

Formatting rules:

  • Lowercase first letter after type/scope (87% convention)
  • Under 72 characters
  • No period at end
  • Wrap component/prop/package names in backticks (34% of PRs do this)

Types (by frequency in this repo):

TypeUsage%
featNew features, components, props38%
docsDocumentation changes16%
fixBug fixes15%
choreDependencies, releases, tooling14%
refactorCode restructuring, no behavior change5%
ciCI/CD changes2%
breakingBreaking changes (repo-specific type)2%
testTest additions/changes<1%
buildBuild system changes<1%
styleFormatting, whitespace<1%
revertReverting previous changes<1%

Important — breaking as a type: This repo historically uses breaking: as a standalone type prefix (15 PRs), NOT the conventional feat!: notation. Only 1 PR uses the ! marker.

breaking: deprecate the rarely used FlatButton component
breaking: deprecate the second argument of CheckboxGroup onChange callback
feat(react/date-pickers)!: deprecate Calendar and replace it with DateCalendar  ← only 1 uses !

Scope conventions:

FormatExampleNotes
package/componentreact/menu, react/scrollbar, react/tagCurrent convention (recent trend)
Package namereact, styled-system, utils, react-hooksFor package-wide changes
No scopefeat: add X componentAcceptable for cross-cutting changes

Common scopes: react/menu, react/table, react/scrollbar, react/checkbox, react/toast, react/date-pickers, styled-system, utils, react-hooks, react-icons, theme

Cross-repo references: When porting changes from/to Tonic UI, include [tonic-ui-pr-NNN] in the title.

Examples:

feat(react/scrollbar): add `scrollViewProps` to enable passing custom props
fix(react/menu): correct focus management on keyboard navigation
refactor(styled-system): migrate to semantic color tokens
docs: update `Table` component examples
chore(deps): bump webpack from 5.88.0 to 5.89.0
breaking: deprecate the `FlatButton` component
revert(react/InputGroup): restore pseudo-class styling

PR Body Template

Based on the actual patterns used in recent PRs (not a generic template):

markdown
## Summary

Closes #ISSUE_NUMBER (if applicable)

Brief 1-3 sentence description of the change.

Demo: https://trendmicro-frontend.github.io/tonic-ui-demo/react/pr-{PR_NUMBER}/components/{COMPONENT}/

## Changes

- **Component/File**: Description of change
- **Component/File**: Description of change

## Motivation

Why this change was needed. (Optional — include for non-trivial changes)

## Migration

Before/after code examples showing migration path. (Only for breaking changes)

Section usage guide:

  • ## Summary — Always include. 1-3 sentences + optional demo link + optional Closes #NNN
  • ## Changes — Always include for multi-file changes. Bullet list of what changed where.
  • ## Motivation — Include when the "why" isn't obvious from the summary
  • ## Migration — Only for breaking changes. Show before/after code examples.

Demo links: ~48% of PRs include a demo link. Format:

https://trendmicro-frontend.github.io/tonic-ui-demo/react/pr-{PR_NUMBER}/components/{COMPONENT}/
https://trendmicro-frontend.github.io/tonic-ui-demo/react/pr-{PR_NUMBER}/hooks/{HOOK_NAME}/

Issue references:

  • Closes #NNN or Close #NNN — for GitHub issues (~10% of PRs)
  • Related PR: #NNN or Depends on: #NNN — for PR dependencies (~2% of PRs)

What NOT to include:

  • ## Testing section — never used in this repo
  • Jira ticket references (TVO-XXXX, V1E-XXXX) — not used in this repo
  • Figma links — only ~4% of PRs, include only if the user provides one

Changeset Entries

When the change affects a publishable package, generate a changeset file.

File Naming Convention
.changeset/tonic-ui-pr-{PR_NUMBER}.md

For multiple changesets on the same PR, use suffixes:

.changeset/tonic-ui-pr-943a.md
.changeset/tonic-ui-pr-943b.md

Or descriptive suffixes:

.changeset/tonic-ui-pr-987-modal-regression.md
.changeset/tonic-ui-pr-987-react-hooks.md
Changeset Format
markdown
---
"@tonic-ui/react": minor
---

feat(react/scrollbar): add `scrollViewProps` to enable passing custom props to the `ScrollView`

Description rules:

  • Always single line
  • Use conventional commit format matching the PR title
  • Wrap component/prop names in backticks
  • ~75 characters average length
  • This description becomes the changelog entry
Show full SKILL.md (346 more words)Show less
Bump Rules
BumpWhenFrequency
patchBug fixes, refactoring, styling corrections, internal improvements56%
minorNew components, new props, new hooks, new features42%
majorBreaking API changes (extremely rare)2%
Package Names (by frequency)
PackageChangeset Frequency
@tonic-ui/react66% (most common)
@tonic-ui/styled-system6%
@tonic-ui/react-hooks6%
@tonic-ui/utils5%
@tonic-ui/react-icons5%
@tonic-ui/react-base5%
@tonic-ui/theme2%

Tonic UI packages: @tonic-ui/react, @tonic-ui/react-icons, @tonic-ui/react-hooks, @tonic-ui/react-data-grid

Never create changesets for: codemod, changelog-github, react-docs (internal/dev packages)

Single vs Multi-Package
  • Single-package changesets are the norm (86%)
  • Multi-package only when the change genuinely spans package boundaries:
    • Cross-cutting infrastructure (e.g., React 19 compat across react, react-base, react-hooks)
    • Feature with utility dependency (e.g., component + utils)
    • Bug fix spanning hook + component (e.g., react-hooks + react)
Changeset Configuration
  • Config: .changeset/config.json
  • Base branch: v2 (not master)
  • Release PR title: chore(release): version packages
  • Release workflow: Automated via .github/workflows/changesets-release.yml on push to v2

Workflow: Diff → PR Description

Step 1: Analyze Changes (Use parallel tool calls)
bash
# Make all three Bash tool calls in one message:
git status
git diff HEAD
git log --oneline -10
Step 2: Classify the Change

Identify:

  • Type: feat/fix/refactor/docs/chore/ci/breaking/test/build/style/revert
  • Scope: From file paths (e.g., react/button, react-hooks/useColorMode, theme)
  • Breaking changes: API changes, removed features, behavior changes
  • Affected packages: Which packages in the monorepo are impacted
Step 3: Write PR Content

Generate:

  1. PR Title — Following conventional commits format
  2. PR Body — Using the template above
  3. Changeset — With correct file name, package, bump type, and description
Step 4: Verify Quality

Post-Generation Checklist:

  • PR title follows <type>(<scope>): <description> format
  • Title is under 72 characters with lowercase first letter
  • Body uses ## Summary / ## Changes sections (not ## What Changed)
  • Demo link included if applicable
  • ## Migration section included if breaking change
  • Changeset file named tonic-ui-pr-{NUMBER}.md
  • Changeset bump type correct (patch/minor/major)
  • Changeset package names accurate
  • Changeset description is single-line conventional commit format

Common Mistakes to Avoid

Vague PR titles:

fix: fix bug                          ← too vague
feat: add feature                     ← too vague
fix: fix the issue with the component ← redundant "fix: fix"

Specific PR titles:

fix(react/scrollbar): prevent scroll jump on content update
feat(react/table): add sticky header support with `stickyHeader` prop

Wrong PR body template:

markdown
## What Changed    ← wrong, use "## Summary"
## Why             ← wrong, use "## Motivation"
## How             ← wrong, use "## Changes"
## Testing         ← not used in this repo
## Related
- Jira: TVO-XXXX  ← not used in this repo

Wrong changeset file name:

.changeset/fuzzy-pots-clap.md         ← auto-generated name, don't use
.changeset/tonic-ui-943.md            ← old convention
.changeset/tonic-ui-pr-943.md         ← correct current convention

Label Conventions

PRs in this repo use labels with the following conventions:

LabelUsage
feature (enhancement)New features
bugBug fixes
documentationDocs changes
refactor (improvement)Refactoring
breaking changeBreaking changes
build (ci/cd)CI/CD changes
dependenciesDependency updates
work in progressDraft/WIP PRs
review requiredReady for review
Review effort [1-5]: NReview complexity rating

© trendmicro-frontend, MIT. 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 .claude/skills/tonic-ui-pr of trendmicro-frontend/tonic-ui.

Open the folder on GitHubat commit b9a797e

Compare with similar skills

Tonic UI 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.

Tonic UI PR compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Tonic UI PR this skilltrendmicro-frontend/tonic-ui133—~2.7kAutomated safety check: PassMIT
Git Workflowsoftmaple/softmaple159—~814Automated safety check: PassApache-2.0
CommitMagic-Resume/Magic-Resume101—~1.2kAutomated safety check: PassMIT
PR Finalize Reviewmicrosoft/garnet12k—~3.1kAutomated safety check: PassMIT
Nullable New Paramsremotion-dev/remotion62k—~1kAutomated safety check: PassCustom licence
Git Workflow and Versioningaddyosmani/agent-skills103k2 repos~3.5kAutomated safety check: NotesMIT

Similar skills

  • Git Workflow

    softmaple/softmaple

    Softmaple Git branching, commits, pre-commit hooks, and pull requests.

    159 GitHub stars~814 tokensUpdated today
    DevelopmentAuto-check passed
  • Commit

    Magic-Resume/Magic-Resume

    Write a Magic Resume commit message that passes the gitmoji + conventional-type lint.

    101 GitHub stars~1.2k tokensUpdated 3 days ago
    DevelopmentAuto-check passed
  • 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
  • Nullable New Params

    remotion-dev/remotion

    Official

    Fix newly added optional parameters, optional React props, and optional type/interface members in Remotion monorepo diffs by converting internal APIs to required nullable values and updating call…

    62k GitHub stars~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 2 days ago
    DevelopmentAuto-check passed

More from trendmicro-frontend/tonic-ui

  • Tonic UI Types

    trendmicro-frontend/tonic-ui

    A skill your agent uses when adding JSDoc type definitions to React components in Tonic UI.

    133 GitHub stars~1.8k tokensUpdated yesterday
    Auto-check passed
  • Tonic UI Slots

    trendmicro-frontend/tonic-ui

    Author and migrate the slots / slotProps API (the useSlot hook) in this design system's React components — the architecture where slots.x replaces an internal part and slotProps.x merges props into…

    133 GitHub stars~5.7k tokensUpdated yesterday
    Auto-check passed
  • Tonic UI Patterns

    trendmicro-frontend/tonic-ui

    Coding patterns extracted from tonic-ui repository. An agent skill from trendmicro-frontend/tonic-ui.

    133 GitHub stars~1.6k tokensUpdated yesterday
    Auto-check passed

Works with

Categories

Questions about Tonic UI PR

What does Tonic UI PR do?

Generate PR descriptions and changeset entries. An agent skill from trendmicro-frontend/tonic-ui. Tonic UI PR is an agent skill from trendmicro-frontend/tonic-ui. Generate PR descriptions and changeset entries.

When should I use Tonic UI PR?

Tonic UI PR fits situations like: the user mentions PR; provides a diff; describes code changes; asks to draft a merge request.

How do I install Tonic UI PR in Claude Code?

Run `npx skills add trendmicro-frontend/tonic-ui --skill tonic-ui-pr -a claude-code`. Or copy the skill folder (.claude/skills/tonic-ui-pr in trendmicro-frontend/tonic-ui) into .claude/skills/tonic-ui-pr in your project. Claude Code loads it when a task matches its description.

How do I install Tonic UI PR in Codex?

Run `npx skills add trendmicro-frontend/tonic-ui --skill tonic-ui-pr -a codex`. Or copy the skill folder (.claude/skills/tonic-ui-pr in trendmicro-frontend/tonic-ui) into .agents/skills/tonic-ui-pr in your project. Codex loads it when a task matches its description.

Can I use Tonic UI 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 trendmicro-frontend/tonic-ui --skill tonic-ui-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/tonic-ui-pr, .gemini/skills/tonic-ui-pr, .github/skills/tonic-ui-pr and .opencode/skills/tonic-ui-pr in your project.

What does Tonic UI PR need to run?

Going by SKILL.md and its folder, Tonic UI PR needs the command-line tools its instructions call (git).

Does Tonic UI PR access the network?

SKILL.md names 1 domain. In commands or code: trendmicro-frontend.github.io; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Tonic UI 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 Tonic UI PR use?

Tonic UI PR is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Tonic UI 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 Tonic UI PR?

Skills that share tags, products or a category with Tonic UI PR: Git Workflow (softmaple/softmaple, 159 stars), Commit (Magic-Resume/Magic-Resume, 101 stars), PR Finalize Review (microsoft/garnet, 12k stars) and Nullable New Params (remotion-dev/remotion, 62k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Tonic UI PR?

trendmicro-frontend (a GitHub organization) maintains it in trendmicro-frontend/tonic-ui, which has 133 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 7, 2026.

Source: trendmicro-frontend/tonic-ui on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.