KS
Killer-Skills

create-changeset — how to use create-changeset how to use create-changeset, create-changeset setup guide, automated changeset creation, Conventional Commits, git history analysis, create-changeset alternative, create-changeset vs manual changeset creation, monorepo package release, package release automation

v1.0.0
GitHub

About this Skill

Ideal for Git-based AI Agents needing automated release management and Conventional Commits analysis. create-changeset is a skill that automatically generates properly formatted changeset files based on git history and Conventional Commits.

Features

Analyzes git history to determine version bump types
Generates properly formatted changeset files
Automatically invokes when preparing to create a pull request
Supports Conventional Commits for versioning
Examines branch changes for package releases
Creates changesets for monorepo package releases

# Core Topics

techwithanirudh techwithanirudh
[146]
[4]
Updated: 2/18/2026

Quality Score

Top 5%
52
Excellent
Based on code quality & docs
Installation
SYS Universal Install (Auto-Detect)
Cursor IDE Windsurf IDE VS Code IDE
> npx killer-skills add techwithanirudh/coolify-tweaks/create-changeset

Agent Capability Analysis

The create-changeset MCP Server by techwithanirudh is an open-source Categories.community integration for Claude and other AI agents, enabling seamless task automation and capability expansion. Optimized for how to use create-changeset, create-changeset setup guide, automated changeset creation.

Ideal Agent Persona

Ideal for Git-based AI Agents needing automated release management and Conventional Commits analysis.

Core Value

Empowers agents to automate package releases by analyzing git history, determining version bump types, and generating properly formatted changeset files using Conventional Commits protocol.

Capabilities Granted for create-changeset MCP Server

Automating changeset creation for pull requests
Generating version bump types based on commit history
Streamlining package release processes with formatted changeset files

! Prerequisites & Limits

  • Requires access to git repository
  • Limited to Conventional Commits protocol
  • Monorepo setup necessary for optimal functionality
Project
SKILL.md
5.0 KB
.cursorrules
1.2 KB
package.json
240 B
Ready
UTF-8
SKILL.md
Readonly

Create Changeset Skill

Purpose

This skill automatically analyzes branch changes and creates appropriate changesets for package releases in this monorepo. It examines git history, determines version bump types based on Conventional Commits, and generates properly formatted changeset files.

When to Invoke

Automatically invoke this skill when:

  • User is preparing to create a pull request
  • User mentions "PR", "pull request", or "ready for review"
  • Branch has commits ready for review
  • User explicitly mentions "changeset" or "version bump"

Do NOT invoke when:

  • User is only pushing changes without creating a PR
  • Only documentation files have changed (README, .md files)
  • Only CI/CD configuration has changed (.github/workflows/)
  • Only development tool configuration has changed (eslint, prettier, etc.)
  • Commits are only docs:, chore:, ci:, or test: types that don't affect packages

Pre-execution Validation

Before creating a changeset, check if a changeset file already exists for the current changes:

  • Look for .changeset/*.md files (excluding README.md)
  • If exists, ask user: "A changeset already exists. Create another one?"

Repository note: Only the @repo/style package currently publishes via changesets. No other workspace packages emit changeset-based releases, so focus analysis on apps/style/ files and the surrounding tooling that affects it.

Implementation Steps

1. Check Current State

  • Run git fetch --tags, then determine the latest release tag (git tag --list 'v*' --sort=-v:refname | head -n1).
  • Use git log <latest-tag>..HEAD (or origin/main..<latest-tag> if needed) to verify there are commits to release.
  • If no tags exist, fall back to git log main..HEAD and explain why you're using the branch range.
  • Stop if there are no commits since the latest tag.

2. Analyze Changes

  • Diff against the latest tag (git diff <latest-tag>..HEAD) to inspect committed changes.
  • Keep the focus on apps/style/ and its build tooling, since @repo/style is the only changeset-published package.
  • Summaries: use git log <latest-tag>..HEAD --oneline for Conventional Commit intents.
  • Only mention files outside apps/style/ if they clearly affect the generated CSS.

3. Determine Version Bump Type

Analyze commit messages following Conventional Commits 1.0.0 format:

  • major: Contains BREAKING CHANGE in commit body, or breaking changes detected in code
    • API signature changes
    • Removed exports or features
    • Incompatible behavior changes
  • minor: Starts with feat: or feat(scope): - new features (backward compatible)
    • New components or functionality
    • New props or options (with defaults)
    • New exports
  • patch: Starts with fix: or fix(scope): - bug fixes and minor improvements
    • Bug fixes
    • Performance improvements
    • Minor style updates
  • skip: Other types (chore:, docs:, ci:, test:) typically don't require changesets unless they affect package functionality

Review actual code changes to confirm the appropriate version bump. When in doubt between minor and patch, prefer patch for safety.

If the version bump is ambiguous or unclear:

  • Ask user for clarification
  • Explain the reasoning behind the suggested bump type
  • Allow user to override the suggestion

If all commits are types that don't require changesets (docs:, chore:, ci:, test:), exit early without creating a changeset.

4. Generate Changeset

Create a changeset file with a descriptive filename in .changeset/ directory.

Filename format:

  • Use kebab-case with .md extension
  • Examples: .changeset/add-new-button.md, .changeset/fix-layout-bug.md, .changeset/update-icon-props.md

File content format:

markdown
1--- 2"@repo/package-name": major|minor|patch 3--- 4 5Clear description of the change

Example for single package:

markdown
1--- 2"@repo/style": minor 3--- 4 5Add new Button variant for secondary actions

Example for multiple packages:

markdown
1--- 2"@repo/style": minor 3"@repo/docs": patch 4--- 5 6- style: Add new Button variant for secondary actions 7- dosc: Add new docs page for contributing

Important guidelines:

  • The description should be user-friendly as it will appear in CHANGELOG
  • Use the same language as the commit messages (Japanese or English). If commit messages are mixed, prefer Japanese.
  • Split changesets into separate files when the same package has changes with different purposes (e.g., new feature + bug fix, breaking change + internal refactoring)
  • This creates individual top-level items in release notes, making it easier for readers to understand the intent of each change
  • Example: Create .changeset/add-secondary-button.md for a new feature and .changeset/fix-button-layout.md for a bug fix, even if both target the same package

5. Verify and Commit

Display the generated changeset for review:

  • Show the file path
  • Show the file content
  • Confirm it accurately reflects the changes

Once verified, commit the changeset file:

bash
1git add .changeset/<filename>.md 2git commit -m "chore: add changeset"

Related Skills

Looking for an alternative to create-changeset or building a Categories.community AI Agent? Explore these related open-source MCP Servers.

View All

widget-generator

Logo of f
f

widget-generator is an open-source AI agent skill for creating widget plugins that are injected into prompt feeds on prompts.chat. It supports two rendering modes: standard prompt widgets using default PromptCard styling and custom render widgets built as full React components.

149.6k
0
Design

chat-sdk

Logo of lobehub
lobehub

chat-sdk is a unified TypeScript SDK for building chat bots across multiple platforms, providing a single interface for deploying bot logic.

73.0k
0
Communication

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication

data-fetching

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication