cut-maintenance-branch

Create and configure maintenance support branches for monorepo packages.

18|7|Updated Nov 3, 2025
One-click install
npx skills add https://github.com/UiPath/apollo-ui --skill cut-maintenance-branch
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: cut-maintenance-branch
Source: https://github.com/UiPath/apollo-ui/tree/main/.claude/skills/cut-maintenance-branch
Command: npx skills add https://github.com/UiPath/apollo-ui --skill cut-maintenance-branch

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Creates and configures support branches for older major versions of monorepo packages, automating the branch cut, dependency locking, release configuration, lockfile regeneration, and PR creation to avoid manual mistakes and inconsistent maintenance branches.

Core Features & Use Cases

  • Automated Branch Creation: Creates a support branch named support/<package>@<major>.x from the latest matching tag and pushes it bare to origin.
  • Workspace Dependency Locking & Release Config: Runs deterministic transforms to pin workspace dependencies and replace main with the maintenance branch in release configuration, then regenerates the pnpm lockfile.
  • End-to-End PR Workflow: Opens a configuration PR from a dedicated ci branch with proposed commit messages and PR body, streaming pnpm install output and requiring explicit user confirmations before every git or network action.
  • Use Case: Cut a maintenance branch for apollo-react major 4 so that fixes can be landed and published independently to the latest-v4 dist-tag.

Quick Start

Ask the assistant to cut a maintenance branch by providing the package name and major version, for example request cutting a maintenance branch for apollo-react major 4 and confirm each proposed git action.

Frequently Asked Questions about cut-maintenance-branch

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a maintenance branch for an older major version in a pnpm monorepo?

To create a maintenance branch in a pnpm monorepo, cut a support branch from the latest matching git tag, lock workspace dependencies, update release config, regenerate the lockfile, and open a configuration PR.

What do I need to set up before cutting a maintenance branch?

Cutting a maintenance branch requires a clean git working tree, fetched git tags, gh CLI authentication, access to maintenance-branch scripts on origin/main, and explicit user confirmations before any commits, pushes, or PR creation.

How does locking workspace dependencies work when cutting a support branch?

Locking workspace dependencies applies deterministic transforms to pin workspace package versions and replaces main with the maintenance branch in release configuration, then regenerates the pnpm lockfile to ensure isolation.

Can I use this to cut a maintenance branch for any package in my monorepo?

You can cut maintenance branches for packages located under the packages/ and web-packages/ directories, creating branches named support/<package>@<major>.x from an existing tag to publish fixes independently to a specific dist-tag.

What is the safest way to automate git branch creation and PR workflow for legacy package support?

The safest way automates the branch cut, dependency locking, release config update, lockfile regeneration, and PR creation while streaming pnpm install output and requiring explicit confirmations before every git or network action.

Why does cutting a maintenance branch require regenerating the pnpm lockfile?

Regenerating the pnpm lockfile is required because workspace dependencies are pinned and release configuration is updated to point at the new maintenance branch, making the previous lockfile invalid for the isolated support branch.