cleanup-merged-branches — скилл для Claude Code: обзор и установка
Находит удалённые ветки со влитыми пулл-реквестами, проводит сухой прогон и удаляет их только после прямого подтверждения. Помогает держать репозиторий в чистоте без риска снести нужные ветки.
npx skills add timschoch/skilly --skill cleanup-merged-branches -a claude-codeЧто делает cleanup-merged-branches
Скилл решает проблему разрастания удалённых веток при активной разработке с агентами. Логика отбора заложена в скрипте scripts/plan.sh: проверяются ветки на origin, чей PR уже влит и не имеет других открытых запросов. Ветка по умолчанию и staging защищены безусловно. Процесс намеренно разбит на этапы: сначала агент делает сухой прогон, показывает список находок и останавливается в ожидании чёткого «да» от пользователя.
Помимо веток инструмент расчищает зависшие задачи через scripts/stale-claims.sh. Если субагент упал или бросил тикет с меткой in-progress дольше чем на 24 часа без открытого PR, скрипт снимет эту метку и вернёт задачу в статус ready-for-agent. Ещё одна проверка находит тикеты, влитые в промежуточные ветки, которые GitHub не закрыл самостоятельно.
Для работы обязательно требуются bash и авторизованная консольная утилита gh. Без установленного GitHub CLI агент не сможет ни проверить статус тикетов, ни обновить метки в репозитории.
Какие задачи решает
- удалить удалённые ветки после успешного слияния PR
- провести сухой прогон списка веток перед реальным удалением
- вернуть в общую очередь брошенные агентами задачи с зависшей меткой
in-progress - закрыть вручную связанные тикеты, влитые в промежуточные ветки
Примеры запросов агенту
- Запусти сухой прогон и покажи ветки с влитыми PR, которые можно удалить
- Удали удалённые ветки со влитыми PR на origin после подтверждения
- Проверь зависшие задачи с меткой in-progress без открытых PR
Как установить cleanup-merged-branches
1Через Skills CLI (Vercel)
npx skills add timschoch/skilly --skill cleanup-merged-branches -a claude-code2Вручную: положить файлы
~/.claude/skills/cleanup-merged-branches/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/cleanup-merged-branches/
1Через Skills CLI (Vercel)
npx skills add timschoch/skilly --skill cleanup-merged-branches -a codex2Вручную: положить файлы
.agents/skills/cleanup-merged-branches/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add timschoch/skilly --skill cleanup-merged-branches -a cursor2Вручную: положить файлы
.cursor/skills/cleanup-merged-branches/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install timschoch/skilly cleanup-merged-branches2Вручную: положить файлы
.github/skills/cleanup-merged-branches/SKILL.md1Через Skills CLI (Vercel)
npx skills add timschoch/skilly --skill cleanup-merged-branches -a gemini-cli2Командой платформы
gemini skills install https://github.com/timschoch/skilly --path bundles/workflow/skills/cleanup-merged-branchesВручную: положить файлы
.devin/skills/cleanup-merged-branches/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add timschoch/skilly --skill cleanup-merged-branches -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о cleanup-merged-branches
Как установить cleanup-merged-branches в Claude Code?
Выполните команду npx skills add timschoch/skilly --skill cleanup-merged-branches -a claude-code в терминале.
Что делает cleanup-merged-branches?
Скилл сканирует репозиторий на ветки от завершённых PR, запрашивает подтверждение и удаляет их командой git push origin --delete. Попутно он снимает устаревшие метки с брошенных тикетов.
Какие ветки защищены от удаления?
Скрипт исключает ветку по умолчанию и staging, даже если в них был направлен влитый PR. Список защищённых веток можно расширить в функции is_protected() внутри scripts/plan.sh.