ToolJet Multi-Repo Commit
ToolJet/ToolJet
Commits changes across ToolJet's root repo and its server/ee and frontend/ee submodules, writing messages from the diffs and updating submodule pointers in order.
Create Git branches following the Conventional Branch specification (feature/, bugfix/, hotfix/, release/, chore/, plus AI agent prefixes ai/, copilot/, cursor/, claude/, codex/).
$ npx skills add conventional-branch/conventional-branch --skill conventional-branch -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install conventional-branch/conventional-branch conventional-branch --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/conventional-branch/conventional-branch.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/conventional-branch .claude/skills/conventional-branch && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "conventional-branch" agent skill from https://github.com/conventional-branch/conventional-branch/tree/main/skills/conventional-branch into .claude/skills/conventional-branch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conventional-branch", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/conventional-branch/conventional-branch/tree/main/skills/conventional-branchType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add conventional-branch/conventional-branch --skill conventional-branch -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install conventional-branch/conventional-branch conventional-branch --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/conventional-branch/conventional-branch.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/conventional-branch .agents/skills/conventional-branch && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "conventional-branch" agent skill from https://github.com/conventional-branch/conventional-branch/tree/main/skills/conventional-branch into .agents/skills/conventional-branch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conventional-branch", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add conventional-branch/conventional-branch --skill conventional-branch -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install conventional-branch/conventional-branch conventional-branch --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/conventional-branch/conventional-branch.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/conventional-branch .cursor/skills/conventional-branch && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "conventional-branch" agent skill from https://github.com/conventional-branch/conventional-branch/tree/main/skills/conventional-branch into .cursor/skills/conventional-branch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conventional-branch", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/conventional-branch/conventional-branch.git --path skills/conventional-branch--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add conventional-branch/conventional-branch --skill conventional-branch -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install conventional-branch/conventional-branch conventional-branch --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/conventional-branch/conventional-branch.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/conventional-branch .gemini/skills/conventional-branch && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "conventional-branch" agent skill from https://github.com/conventional-branch/conventional-branch/tree/main/skills/conventional-branch into .gemini/skills/conventional-branch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conventional-branch", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install conventional-branch/conventional-branch conventional-branchInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add conventional-branch/conventional-branch --skill conventional-branch -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/conventional-branch/conventional-branch.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/conventional-branch .github/skills/conventional-branch && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "conventional-branch" agent skill from https://github.com/conventional-branch/conventional-branch/tree/main/skills/conventional-branch into .github/skills/conventional-branch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conventional-branch", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add conventional-branch/conventional-branch --skill conventional-branch -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install conventional-branch/conventional-branch conventional-branch --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/conventional-branch/conventional-branch.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/conventional-branch .opencode/skills/conventional-branch && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "conventional-branch" agent skill from https://github.com/conventional-branch/conventional-branch/tree/main/skills/conventional-branch into .opencode/skills/conventional-branch/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conventional-branch", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
conventional-branchCreate Git branches following the Conventional Branch specification (feature/, bugfix/, hotfix/, release/, chore/, plus AI agent prefixes ai/, copilot/, cursor/, claude/, codex/).
Conventional Branch is an agent skill from conventional-branch/conventional-branch. 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. Also use alongside commit-check for automated validation.
Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Requires git. Optional: commit-check for automated branch name validation.
It sits in Development, covering Git workflow and Commit messages. It works with Git. The repository describes itself as: A specification for Git branch names — <type/<description, human-readable and machine-parseable. Ships a machine-readable spec, JSON Schema, and conformance fixtures. The licence is CC-BY-4.0.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 76709bb. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comAlso links to:
conventionalbranch.orgconventionalcommits.orgFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires git. Optional: commit-check for automated branch name validation.
From compatibility in the SKILL.md frontmatter.
Conventional Branch loads about 1.8k tokens when it runs. Until then it costs about 91 tokens; SKILL.md has 587 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from conventional-branch/conventional-branch at commit 76709bb, republished under its CC-BY-4.0 licence (© conventional-branch). 587 words, ~1,813 tokens.
.claude/skills/conventional-branch/SKILL.md (or your agent's skills folder).Create Git branches that follow the Conventional Branch 1.1.0 specification — human-readable, machine-parseable, and automation-friendly.
<type>/<description>| Component | Format | Required | Example |
|---|---|---|---|
type | Defined prefix (see table below) | Yes | feature, fix |
description | kebab-case, lowercase | Yes | add-login-page |
Prefer the full names over aliases for consistency.
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.
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.
Branch names must follow these rules or they will be rejected by validation tools like commit-check:
a-z only)a-z, 0-9, -, .release/ version descriptions (e.g., release/v1.2.0)--), dots (..), or hyphen-dot adjacency (-. or .-)branch-name = trunk-branch / prefixed-branch
trunk-branch = "main" / "master" / "develop"
prefixed-branch = type "/" description
type = "feature" / "feat" / "bugfix" / "fix"
/ "hotfix" / "release" / "chore"
/ "ai" / "copilot" / "cursor"
/ "claude" / "codex"
description = desc-segment *("-" desc-segment)
desc-segment = 1*(ALPHA / DIGIT) *("." 1*(ALPHA / DIGIT))
ALPHA = %x61-7A
DIGIT = %x30-39main
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| 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 |
add-oauth-login, fix-header-overflow, update-ci-configfix-bug, new-feature, john-working-on-stuffFollow these steps when creating a new branch.
Ask the user for (if not already clear):
feature when uncertainDo not ask for a ticket number. If the user mentions one, include it in the description (e.g., feature/issue-123-add-oauth).
Before creating, check the assembled name against the Naming Rules above. If any rule fails, fix it silently:
Different repos use different trunk branches. Detect which one this repo uses:
# 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):
for b in develop main master; do
git show-ref --verify --quiet "refs/heads/$b" && echo "$b" && break
donegit checkout <base>
git pull origin <base>
git checkout -b <type>/<description>Tell the user:
git push -u origin <branch-name> when readyFor automated enforcement, point users to commit-check. It checks branch names against the specification's type prefixes by default, with no configuration:
# Check the current branch name
commit-check --branchAs a pre-commit hook, so a wrong name is caught at the first commit:
repos:
- repo: https://github.com/commit-check/commit-check
rev: v2.18.0
hooks:
- id: check-branchIn GitHub Actions, commit-check-action runs the same check on every pull request (branch: true is its default). Copy-pasteable configuration for every platform, including a commit-check.toml that narrows the types to exactly the specification's, is at https://conventionalbranch.org/enforce/.
Conventional Branch is inspired by Conventional Commits and complements it naturally:
| 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). See conventional-commit skill for commit message conventions.
© conventional-branch, CC-BY-4.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/conventional-branch of conventional-branch/conventional-branch.
Open the folder on GitHubat commit 76709bb
Conventional Branch next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Conventional Branch this skillconventional-branch/conventional-branch | 135 | — | ~1.8k | Automated safety check: Pass | CC-BY-4.0 | |
| ToolJet Multi-Repo CommitToolJet/ToolJet | 41k | — | ~1.3k | Automated safety check: Pass | AGPL-3.0 | |
| Git Workflow and Versioningaddyosmani/agent-skills | 104k | 2 repos | ~3.5k | Automated safety check: Notes | MIT | |
| React Router Pull Request Creatorremix-run/react-router | 57k | — | ~2.5k | Automated safety check: Pass | MIT | |
| Saleor Commit Workflowsaleor/saleor | 23k | — | ~575 | Automated safety check: Pass | BSD-3-Clause | |
| Emoji Commit ConventionsbaptisteArno/typebot.io | 11k | — | ~424 | Automated safety check: Pass | Custom licence |
ToolJet/ToolJet
Commits changes across ToolJet's root repo and its server/ee and frontend/ee submodules, writing messages from the diffs and updating submodule pointers in order.
addyosmani/agent-skills
Sets git habits for every change: short-lived branches, atomic commits with descriptive messages, clean pull requests, plus versioning, tagging and changelogs for releases.
remix-run/react-router
Packages finished React Router work into a draft pull request: branch, commit, push, a written PR body and the right GitHub labels.
saleor/saleor
Commits changes in the Saleor codebase and works through pre-commit hook failures from ruff, mypy, the GraphQL schema check and the migrations check.
baptisteArno/typebot.io
Sets the repository's convention for commit messages and pull request titles: one emoji prefix for the main intent, a concise title and clean follow-up commits.
wordpress-mobile/WordPress-Android
Commits and pushes current changes, writes a pull request title and body from the branch history and template, and opens a draft PR on GitHub after you approve it.
Works with
Categories
Create Git branches following the Conventional Branch specification (feature/, bugfix/, hotfix/, release/, chore/, plus AI agent prefixes ai/, copilot/, cursor/, claude/, codex/). Conventional Branch is an agent skill from conventional-branch/conventional-branch. Create Git branches following the Conventional Branch specification (feature/, bugfix/, hotfix/, release/, chore/, plus AI agent prefixes ai/, copilot/, cursor/, claude/, codex/).
Conventional Branch fits situations like: creating a new branch; naming a branch; checking whether a branch name complies with the spec.
Run `npx skills add conventional-branch/conventional-branch --skill conventional-branch -a claude-code`. Or copy the skill folder (skills/conventional-branch in conventional-branch/conventional-branch) into .claude/skills/conventional-branch in your project. Claude Code loads it when a task matches its description.
Run `npx skills add conventional-branch/conventional-branch --skill conventional-branch -a codex`. Or copy the skill folder (skills/conventional-branch in conventional-branch/conventional-branch) into .agents/skills/conventional-branch in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add conventional-branch/conventional-branch --skill conventional-branch -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/conventional-branch, .gemini/skills/conventional-branch, .github/skills/conventional-branch and .opencode/skills/conventional-branch in your project.
Going by SKILL.md and its folder, Conventional Branch needs the command-line tools its instructions call (git). Compatibility (from SKILL.md): Requires git. Optional: commit-check for automated branch name validation..
SKILL.md names 3 domains. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. As links in the text: conventionalbranch.org and conventionalcommits.org. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Conventional Branch is published under the CC-BY-4.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.8k tokens (SKILL.md is roughly 7.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Conventional Branch: ToolJet Multi-Repo Commit (ToolJet/ToolJet, 41k stars), Git Workflow and Versioning (addyosmani/agent-skills, 104k stars), React Router Pull Request Creator (remix-run/react-router, 57k stars) and Saleor Commit Workflow (saleor/saleor, 23k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
conventional-branch (a GitHub organization) maintains it in conventional-branch/conventional-branch, which has 135 GitHub stars. The repository was last updated on October 1, 2026.
Source: conventional-branch/conventional-branch on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.