no-cherry-pick

Prevents git cherry-pick usage and redirects blocked work toward waiting on unmerged pull requests.

Updated Mar 10, 2026
One-click install
npx skills add https://github.com/jasoncrawford/brunel --skill no-cherry-pick-jasoncrawford
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: no-cherry-pick
Source: https://github.com/jasoncrawford/brunel/tree/main/.claude-plugin/skills/no-cherry-pick
Command: npx skills add https://github.com/jasoncrawford/brunel --skill no-cherry-pick-jasoncrawford

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Git cherry-pick creates duplicate commits with different SHAs, fractures branch history, and hides dependencies on unmerged code. This Skill stops agents and developers from reaching for cherry-pick when blocked by an unmerged PR or a failed rebase, and replaces it with a safe escalation workflow. ## Core Features & Use Cases - Cherry-Pick Prevention: Blocks the use of git cherry-pick unless the user explicitly grants permission. - Blocked-Work Escalation: When code depends on an unmerged PR, the workflow stops, identifies the blocking PR number, and asks the user to merge it before continuing. - Rebase Failure Handling: When git rebase origin/main fails unexpectedly, the Skill directs the user to stop and decide the path forward instead of cherry-picking as a workaround. - Use Case: An agent needs a utility function that exists only in PR #42, which has not merged. Instead of cherry-picking those commits, it reports the dependency and waits for the merge. ## Quick Start Tell the agent to proceed with a task that depends on an unmerged branch, and it will refuse to cherry-pick and instead ask you to merge the blocking pull request first.

Frequently Asked Questions about no-cherry-pick

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

FAQPage Schema
Why is git cherry-pick considered an anti-pattern?▼

Git cherry-pick creates duplicate commits with different SHAs, which fractures history and causes confusion about what has been merged. It can also double-apply changes when the original branch eventually merges and bypasses code review for the copied commits.

What should I do instead of cherry-picking from an unmerged PR?▼

Stop work on the current task, identify the blocking PR number and what it provides, and ask the user to merge it before continuing. Do not duplicate the code, work around it, or cherry-pick the commits.

Can I use cherry-pick if git rebase fails?▼

No. If git rebase origin/main fails unexpectedly, cherry-pick is not a substitute. Stop, explain what failed, and ask the user to decide the path forward instead of working around the failure.

When is it acceptable to run git cherry-pick?▼

Only with explicit user permission. The default policy treats cherry-pick as an anti-pattern, so the user must directly authorize it before any commits are copied between branches.

What are the risks of cherry-picking from an unmerged pull request?▼

It creates a hidden dependency on unreviewed code, risks double-applying changes when the PR eventually merges, and bypasses the review process for that code. Waiting for the merge is correct even if it feels inefficient.