Show git-machete branch stack status
Shows git-machete branch stack status with color-coded sync indicators and action suggestions.
/plugin marketplace add settlemint/agent-marketplace/plugin install crew@settlemintgit/stacked/<butler_context>
!${CLAUDE_PLUGIN_ROOT}/scripts/git/gitbutler-context.sh
</butler_context>
<stack_context>
!${CLAUDE_PLUGIN_ROOT}/scripts/git/machete-context.sh
</stack_context>
<gitbutler_incompatible>
This command does not work with GitButler.
If GITBUTLER_ACTIVE=true from <butler_context>:
Stacked branches (git-machete) are not compatible with GitButler virtual branches.
GitButler has its own stacking system. Use these instead:
- `crew:git:butler:status` - View virtual branches
- `crew:git:butler:branch` - Create virtual branch
- `crew:git:butler:sync` - Sync with upstream
To use machete, first disable GitButler in this repository.
Exit immediately. Do not proceed with machete commands.
</gitbutler_incompatible>
<objective>Show stack status with edge colors. Suggest actions for issues.
</objective><edge_colors>
| Color | Meaning | Action |
|---|---|---|
| 🟢 Green | In sync | None |
| 🟡 Yellow | Sync, fork differs | May need investigation |
| 🔴 Red | Out of sync | Run crew:git:stacked:traverse |
| ⚫ Gray (o) | Merged | Run crew:git:stacked:slide-out |
</edge_colors>
<workflow>If no layout:
AskUserQuestion({
questions: [
{
question: "No layout found. What to do?",
header: "Setup",
options: [
{
label: "Discover (Recommended)",
description: "Auto-detect from history",
},
{ label: "Skip", description: "Continue without machete" },
],
multiSelect: false,
},
],
});
If "Discover": Skill({ skill: "crew:git:stacked:discover" })
git machete github anno-prs 2>/dev/null || true
git machete status --list-commits
If red edges: "Run crew:git:stacked:traverse to sync"
If gray edges: "Run crew:git:stacked:slide-out to clean up"
If all green: "All branches in sync"
<success_criteria>
</success_criteria>