К основному содержанию
скилл GitHub Copilot официальный · GitHub

conventional-branch — скилл для GitHub Copilot: обзор и запуск

Скилл помогает создавать и проверять ветки Git по спецификации Conventional Branch. Пригодится для соблюдения единых префиксов вроде feature/ или bugfix/.

Установить в GitHub Copilot · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add github/awesome-copilot --skill conventional-branch
Открыть на GitHub

Что делает conventional-branch

Скилл стандартизирует имена веток в репозитории по спецификации Conventional Branch. Он поддерживает префиксы задач feature/ или bugfix/. Предусмотрены префиксы для агентов: copilot/, cursor/, claude/, codex/ или нейтральный ai/. Основные ветки main, master и develop остаются без изменений.

При запуске помощник уточняет задачу ветки. Он переводит название в нижний регистр и заменяет пробелы дефисами. Затем агент находит базовую ветку через origin/HEAD. После этого он затягивает обновления и создаёт новую ветку. Для валидации можно подключить утилиту commit-check.

Ставить скилл стоит командам, которым нужен общий порядок в Git. В личном проекте без строгих правил он едва ли нужен.

Какие задачи решает

  • привести имена веток Git к стандарту Conventional Branch
  • пометить созданную агентом ветку префиксом copilot/ или ai/
  • найти базовую ветку репозитория и обновить её перед ответвлением
  • устранить пробелы и заглавные буквы в названии ветки

Примеры запросов агенту

  • Создай ветку для новой авторизации через GitHub
  • Сделай hotfix-ветку для закрытия уязвимости
  • Проверь, подходит ли имя ветки под Conventional Branch

Как установить conventional-branch

1Через Skills CLI (Vercel)

npx skills add github/awesome-copilot --skill conventional-branch

2GitHub CLI

gh skill install github/awesome-copilot conventional-branch

3Вручную: положить файлы

.github/skills/conventional-branch/SKILL.md

Из того же набора554

Весь набор →
git-commit официальный github Скилл разбирает изменения Git, выбирает связанные файлы и создаёт коммит в формате Conventional Commits. Пригодится, когда нужно закоммитить одну или несколько логических частей изменений. GitHub Copilot 47 165установок excalidraw-diagram-generator официальный github Скилл превращает описание на обычном языке в диаграмму Excalidraw. Подойдёт, когда нужно показать процесс, связи между объектами или устройство системы. GitHub Copilot 31 639установок multi-stage-dockerfile официальный github Скилл помогает создавать многоэтапные Dockerfile для разных языков и фреймворков. Пригодится, когда важны размер и состав runtime-образа. GitHub Copilot 29 688установок documentation-writer официальный github Скилл для создания технической документации по фреймворку Diátaxis: туториалы, гайды, справки и объяснения. Предлагает структуру перед написанием. GitHub Copilot 27 757установок prd официальный github Собирает из идеи структурированный PRD с пользовательскими историями, техническими требованиями и рисками. Подходит для планирования новых функций, в том числе с AI. GitHub Copilot 24 035установок refactor официальный github Скилл помогает менять структуру кода без изменения внешнего поведения. Подойдёт для постепенной уборки сложных функций, дублирования и кодовых запахов. GitHub Copilot 22 321установок java-springboot официальный github Задаёт практики разработки Spring Boot-приложений: от структуры проекта до тестов и безопасности. Пригодится, когда Copilot пишет или проверяет Java-код. GitHub Copilot 21 272установок create-readme официальный github Скилл изучает проект и создаёт структурированный README.md. Подойдёт, когда документацию нужно собрать по коду и файлам проекта. GitHub Copilot 19 081установок

Похожие

adversarial-reviewer ekreloff Скилл проводит критический ревью изменений через три роли: саботажника, новичка и аудитора безопасности. Подойдёт перед слиянием PR. Claude Code 813установок ci-cd-pipeline-builder Alireza Rezvani Определяет стек проекта по файлам репозитория и собирает базовые пайплайны для GitHub Actions или GitLab CI со стадиями тестирования, сборки и деплоя. Claude Code 683установок triage Matt Pocock Скилл проводит issue и внешние PR через роли триажа, проверку и подготовку брифа для агента. Подойдёт мейнтейнеру, который разбирает очередь задач. Claude Code 990 453установок code-review Matt Pocock Проверяет изменения от выбранной точки по стандартам репозитория и требованиям задачи. Нужен для ревью ветки, PR или незавершённой работы. Claude Code 789 521установок implement Matt Pocock Выполняет задачу по спецификации или тикетам, ведёт работу через тесты и завершает её ревью с коммитом. Подходит для задач, где нужен дисциплинированный цикл разработки. Claude Code 774 700установок git-guardrails-claude-code Matt Pocock Скилл ставит хук Claude Code, который останавливает опасные Git-команды до их запуска. Нужен, если агент не должен делать push или удалять изменения. Claude Code 499 069установок setup-pre-commit Matt Pocock Скилл настраивает pre-commit для JavaScript-репозитория: Husky запускает форматирование, проверку типов и тесты перед коммитом. Claude Code 489 289установок scaffold-exercises Matt Pocock Скилл создаёт структуру учебных упражнений с секциями, задачами, решениями и пояснениями. Пригодится при запуске нового раздела курса. Claude Code 480 196установок

Вопросы о conventional-branch

Как установить conventional-branch для GitHub Copilot?

Выполните команду npx skills add github/awesome-copilot --skill conventional-branch или gh skill install github/awesome-copilot conventional-branch. Конфигурация запишется в .github/skills/conventional-branch/SKILL.md.

Что делает скилл conventional-branch?

Он проверяет формат названия ветки, определяет основную ветку репозитория и оформляет ответвление с нужным префиксом.

Как проверить ветку на соответствие спецификации?

Для проверки можно запустить утилиту commit-check с флагом --branch или подключить действие commit-check-action в GitHub Actions.

Исходный текст

SKILL.md · MIT
---
name: conventional-branch
description: 'Create Git branches following the Conventional Branch specification (feature/, bugfix/, hotfix/, release/, chore/, plus AI agent prefixes ai/, copilot/, cursor/, claude/, codex/). Use when creating a new branch, naming a branch, or checking whether a branch name complies with the spec.'
---

# Conventional Branch

Create Git branches that follow the [Conventional Branch](https://conventionalbranch.org) specification — a simple, consistent convention for naming Git branches.

## Branch Name Format

```
<type>/<description>
```

### Branch Types

**Purpose prefixes** — describe the intent of the work:

| Type | Alias | Purpose |
|------|-------|---------|
| `feature/` | `feat/` | New features or enhancements |
| `bugfix/` | `fix/` | Bug fixes |
| `hotfix/` | — | Urgent production fixes |
| `release/` | — | Release preparation (dots allowed in version: `release/v1.2.0`) |
| `chore/` | — | Non-code tasks (deps, docs, config) |

**AI agent source prefixes** — identify branches generated by AI coding agents:

| Type | Alias | Purpose |
|------|-------|---------|
| `ai/` | — | Generic prefix for any AI coding agent |
| `copilot/` | — | GitHub Copilot |
| `cursor/` | — | Cursor |
| `claude/` | — | Claude Code by Anthropic |
| `codex/` | — | OpenAI Codex |

Use a vendor-specific prefix when you know which agent is producing the branch; use `ai/` as a vendor-neutral fallback.

### Trunk Branches

`main`, `master`, and `develop` are trunk branches — they do not use a prefix. Never create new branches with the same names as trunk branches; branch off them instead.

## Naming Rules

- **Lowercase only** — no uppercase letters anywhere
- **Alphanumerics, hyphens, and dots** — `a-z`, `0-9`, `-`, `.`
- **Dots** are allowed in any description, typically for version numbers (e.g., `release/v1.2.0`, `chore/upgrade-node-v20.11`)
- **No underscores, spaces, or special characters**
- **No consecutive hyphens** (`--`), **dots** (`..`), or **hyphen-dot adjacency** (`-.` or `.-`)
- **No leading or trailing hyphens or dots** in the description

## Valid Examples

```
main
master
develop
feature/add-login-page
feat/add-login-page
bugfix/fix-header-bug
fix/header-bug
hotfix/security-patch
release/v1.2.0
chore/update-dependencies
feature/issue-123-new-login
ai/refactor-auth-flow
copilot/add-login-page
cursor/fix-header-bug
claude/security-patch
codex/optimize-query
```

## Invalid Examples

| Branch | Problem |
|--------|---------|
| `Feature/Add-Login` | Uppercase letters |
| `feature/new--login` | Consecutive hyphens |
| `feature/-new-login` | Leading hyphen |
| `feature/new-login-` | Trailing hyphen |
| `release/v1.-2.0` | Hyphen adjacent to dot |
| `fix/header bug` | Space |
| `fix/header_bug` | Underscore |
| `unknown/some-task` | Unknown prefix type |

## Description Guidelines

- Use **kebab-case** with 2-5 words
- Be descriptive but concise (~50 chars total)
- Good: `add-oauth-login`, `fix-header-overflow`, `update-ci-config`
- Bad: `fix-bug`, `new-feature`

## Workflow

**Follow these steps:**

**Step 1 — Determine Branch Type**

Ask the user (if not already clear):

- **Branch type** — default to `feature` when uncertain
- **Brief description** — what the branch is for

If the user mentions a ticket or issue number, include it in the description (e.g., `feature/issue-123-add-oauth`).

**Step 2 — Validate the Name**

Check the assembled name against the **Naming Rules** above. If any rule fails, fix it:

- Lowercase everything
- Replace underscores and spaces with hyphens
- Collapse consecutive hyphens
- Strip leading/trailing hyphens

**Step 3 — Detect the Base Branch**

Different repos use different trunk branches. Detect which one this repo uses:

```bash
# Prefer the remote's default branch
git symbolic-ref --short refs/remotes/origin/HEAD 2>/dev/null | sed 's|^origin/||'
```

If that returns nothing, check which trunk branch exists locally (priority order: `develop`, `main`, `master`):

```bash
for b in develop main master; do
  git show-ref --verify --quiet "refs/heads/$b" && echo "$b" && break
done
```

**Step 4 — Create and Checkout**

```bash
git checkout <base>
git pull origin <base>
git checkout -b <type>/<description>
```

**Step 5 — Confirm**

Tell the user:
- The branch name that was created
- That they are now on the new branch
- Remind them: `git push -u origin <branch-name>` when ready

## Validation

[commit-check](https://github.com/commit-check/commit-check) validates branch names against the specification. Run `commit-check --branch`, use its `check-branch` pre-commit hook, or [commit-check-action](https://github.com/commit-check/commit-check-action) in GitHub Actions. Configuration for GitHub rulesets, GitLab, Bitbucket and Git hooks is at https://conventionalbranch.org/enforce/.

## Relationship with Conventional Commits

Conventional Branch complements [Conventional Commits](https://www.conventionalcommits.org):

| Conventional Branch | Typical Conventional Commit |
|---------------------|----------------------------|
| `feature/add-login` | `feat: add login page` |
| `bugfix/fix-header` | `fix: header overflow on mobile` |
| `chore/update-deps` | `chore: bump lodash to 5.0` |
| `release/v1.2.0` | `chore: release v1.2.0` |

Align the branch type with commit types where possible (e.g., `feature/*` branches with `feat:` commits).

© github · MIT · github/awesome-copilot

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой