AGENT SKILL

branch-from-issue

Create a git branch named after a GitHub issue.

License 许可
MIT
最近更新
2026-05-15
Stars
★ 13
Forks
1

01 前言 Front Matter

name
branch-from-issue
title
branch-from-issue
arguments
[ "issue", "prefix" ]
description
Create a git branch named after a GitHub issue.
allowed-tools
Bash(gh issue view *) Bash(git checkout *) Bash(git branch *)
argument-hint
[issue-number] [branch-prefix]
disable-model-invocation
true

02 资源文件 8

03 SKILL.md 正文

Create branch from GitHub issue

Step 1: Read the issue title

Run:

gh issue view $issue

Extract the issue title from the output. If the issue does not exist or gh is not authenticated, stop and report the error.

Step 2: Slugify the title

Convert the issue title to a branch-safe slug:

  1. Convert to lowercase
  2. Replace spaces and punctuation with hyphens
  3. Remove any characters that are not letters, digits, or hyphens
  4. Collapse consecutive hyphens into one
  5. Strip leading and trailing hyphens
  6. Truncate to 40 characters maximum (truncate at a word boundary if possible)

Examples:

  • "Fix login page crash on mobile" → fix-login-page-crash-on-mobile
  • "Add support for OAuth 2.0 / PKCE flow" → add-support-for-oauth-20-pkce-flow
  • "Update README with installation instructions" → update-readme-with-installation

Step 3: Determine the branch prefix

If $prefix is not empty, use it as provided.

If $prefix is empty, use feature as the default prefix.

Valid examples: feature, fix, chore, hotfix. Accept any non-empty string the user provides.

Step 4: Create the branch

Construct the full branch name: $prefix/$issue-<slug>

For example, if $prefix is fix, $issue is 142, and the slug is login-page-crash-on-mobile:

fix/142-login-page-crash-on-mobile

Run:

git checkout -b $prefix/$issue-<slug>

If the branch already exists, report the conflict and stop. Do not force-create or checkout the existing branch automatically.

Step 5: Confirm

Report the new branch name and confirm the current branch has switched:

git branch --show-current

Example output:

Created and switched to: fix/142-login-page-crash-on-mobile

04 同仓库更多 Skills

davila7
davila7/claude-with-skills

tag-version

Bump the package version and create an annotated git tag. Accepts a semantic version number (1.2.0) or a bump type (patch, minor, major). Does not push — use the publish skill to push. Use as part of a release workflow.

★ 13
davila7
davila7/claude-with-skills

release

Run the complete release workflow: changelog entry, version bump, git tag, and GitHub release. Invokes changelog-entry, tag-version, and publish in sequence. Use when releasing a new version of the project.

★ 13
davila7
davila7/claude-with-skills

publish

Push the current branch and all tags to origin, then create a GitHub release using the latest tag and its CHANGELOG.md entry. Use after tag-version to complete a release.

★ 13
davila7
davila7/claude-with-skills

changelog-entry

Draft the changelog entry for all unreleased commits in Keep a Changelog format. Groups commits into Added, Changed, Fixed, Removed, and Security. Use before releasing a new version or when updating CHANGELOG.md.

★ 13
davila7
davila7/claude-with-skills

auto-format-on-edit

Automatically format code files after every edit using Prettier and ESLint. Active in the background whenever Claude edits a file. Formatting is silent — no prompts, no output unless a formatter fails. Use when you want consistent formatting enforced automatically during a coding session.

★ 13
davila7
davila7/claude-with-skills

code-quality-audit

Run a comprehensive code quality audit covering security, performance, and maintainability. Use for quarterly audits, pre-release reviews, or when onboarding to a large codebase.

开发工程师
★ 13