Skip to content
Testing
Skill

/git-cleanup

Use when a git worktree is dirty or another local branch or worktree exists. Ask before cleanup unless the session is unattended.

BOOST
From plugin
shaft-engine
41720 skills
Install
$ npx -y skills add ShaftHQ/SHAFT_ENGINE --skill git-cleanup --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/git-cleanup

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use when a git worktree is dirty or another local branch or worktree exists. Ask before cleanup unless the session is unattended.

SKILL.md

git-cleanup.SKILL.md
name: git-cleanup
description: Use when a git worktree is dirty or another local branch or worktree exists. Ask before cleanup unless the session is unattended.

Git cleanup

One checkout on the configured default branch. `HEAD` equals that remote tip. `git status` is clean.

When

The worktree is dirty, or another local branch or linked worktree exists.

Attended: ask first, and explain this procedure before changing anything. Unattended: decide and run it.

Procedure

Name the configured default branch from the remote HEAD or the selected profile. Do not hardcode a repository branch name. This is the repository-scope recipe in cleanup-scopes. Do not fork a second policy.

1. Fetch and prune the configured upstream. Inventory dirty and untracked paths, extra local branches, linked worktrees, locks, and unique commits before mutation. 2. Classify each dirty or untracked path as land (commit, push, pull request, merge), delete, or gitignore. Halt on a locked or concurrently owned worktree. 3. Check out the configured default branch in the primary checkout and fast-forward it so `HEAD` equals the remote tip and `git status` is clean. 4. Remove extra linked worktrees only after that classification, and only when they are clean, unlocked, and not concurrently owned. Then remove a recreated local branch only when `git branch -r --contains` shows that exact tip on an origin ref. Also remove extra local branches that are fully merged into the remote tip, or whose unique commits were explicitly authorized for discard. 5. Check out the configured default branch and fast-forward it. Write the verification transcript in the same process, after that fast-forward. Do not check out another branch afterward.

Done

One checkout, only the configured default branch, `HEAD` equals that remote tip, and `git status` is clean.

Limits

Do not stash. Do not `reset --hard`. Do not force-push. Do not use `--force-with-lease`. Do not delete remote branches. Do not rewrite remote history. Do not discard unique commits without explicit authorization. Do not commit generated plugin directories.

Read more
Ships withshaft-engine

One Java engine for web, mobile, API, CLI, database, and desktop. Drivers, waits, and evidence are handled. Every run ends in an Allure report.   Upgrade to SHAFT_ENGINE · ▶ Watch the 26-second clip with sound and captions · 100-second overview

Get the whole plugin
Stats
416
Stars
155
Forks
Active
Maintenance
Java
Language
MIT
License
2h ago
Last commit
8y ago
Created
6h ago
Added

Repo: ShaftHQ/SHAFT_ENGINE

Other skills on shaft-engine.

ci-cd
Skill

ci-cd

Use when PR merge waits are long or CI/CD is being designed, audited, or sped up: targets, PR/main/nightly tiers, opt-in labels,…

kanban
Skill

kanban

Use when work has several deliverables, tickets, or delegates: board, WIP 1 writer + 2 review, pull rule, Definition of Done,…