ワンクリックで
cherry-pick
// Cherry-pick a merged PR into the current RC branch. Use when asked to "cherry-pick", "cp into RC", or after merging a PR that needs to go into the current release.
// Cherry-pick a merged PR into the current RC branch. Use when asked to "cherry-pick", "cp into RC", or after merging a PR that needs to go into the current release.
| name | cherry-pick |
| description | Cherry-pick a merged PR into the current RC branch. Use when asked to "cherry-pick", "cp into RC", or after merging a PR that needs to go into the current release. |
| allowed-tools | Bash(git *), Bash(gh pr *), Bash(gh api *), Read, Grep, Glob |
| effort | low |
Cherry-pick a merged PR into the current RC branch. Arguments: $ARGUMENTS
Usage: /cherry-pick <PR_NUMBER> [RC_BRANCH]
PR_NUMBER (required): The PR number to cherry-pick (e.g. 43078). If not provided, ask the user.RC_BRANCH (optional): The target RC branch name (e.g. rc-minor-fleet-v4.83.0). If not provided, auto-detect the most recent one.git fetch origingit checkout maingit pull origin mainIf an RC branch was provided as the second argument, use it (but still confirm with the user before proceeding).
Otherwise, auto-detect by listing both minor and patch RC branches:
git for-each-ref 'refs/remotes/origin/rc-minor-fleet-v*' 'refs/remotes/origin/rc-patch-fleet-v*' --format='%(refname:strip=3)' | grep -E '^rc-(minor|patch)-fleet-v[0-9]+\.[0-9]+\.[0-9]+$' | sort -V
From the results, suggest the most recent rc-minor-fleet-v* branch as the default. If patch branches also exist, mention them as alternatives. Always ask the user to confirm the target RC branch before proceeding.
gh pr view <PR_NUMBER> --json title --jq .title
gh pr view <PR_NUMBER> --json mergeCommit --jq .mergeCommit.oid
If this returns null or an empty value, the PR is not yet merged. Tell the user and stop.gh api user --jq .logingit checkout -b <github-username>/<short-description>-cp origin/<rc-branch>
Derive <short-description> from the PR title (lowercase, hyphens, keep it short — 3-5 words max).git rev-list --parents -n 1 <merge-commit-SHA>
If the commit has multiple parents, run:
git cherry-pick -m 1 <merge-commit-SHA>
Otherwise (squash-merged or rebased), run:
git cherry-pick <merge-commit-SHA>
git push -u origin HEADgh pr create --base <rc-branch> --title "Cherry-pick #<PR_NUMBER>: <original-title>" --body "$(cat <<'EOF'
Cherry-pick of #<PR_NUMBER> into the RC branch.
EOF
)"
Add a Fleet-maintained app (FMA) for macOS (Homebrew) and/or Windows (winget). Use when asked to "add X as a macOS/Windows FMA", "add a Fleet-maintained app", or to debug FMA validator failures. Emphasizes verifying installer metadata with real tools (msitools, plist) instead of guessing.
Analyze a PR to determine which files still need approval and from whom, based on CODEOWNERS and website/config/custom.js. Use when the user asks "who needs to approve", "why is the PR blocked", "who blocks this PR", or similar.
Format release retro notes for a Fleet working group into a Slack recap post and ~timebox GitHub issues. Use when asked to "post retro recap", "format retro notes", "create release retro", or after a retrospective when feedback needs to land in Slack and action items need to be tracked.
Cherry-pick a merged PR onto a release candidate branch and open a new PR. Use when asked to cherry-pick, backport, or port a PR to an rc-minor or rc-patch branch.
Open a new Fleet feature request GitHub issue using the official fleetdm/fleet feature-request template. Use this skill whenever someone says "new feature request", "submit a feature request", "open a feature request", "create a feature request", "I want to request a feature", "feature request for...", or any similar phrasing indicating they want to file a new feature idea or product improvement with the Fleet team. Always use this skill — never construct issue body text yourself or link to the template without a pre-filled title and body.
Bump a database migration's timestamp to the current time. Required when a PR's migration is older than one already merged to main. Use when asked to "bump migration", "update migration timestamp", or when a migration ordering conflict is detected.