Skip to content
cccskills
FreePublished on GitHub

speckit-git-feature

Validate Jira/JPD ticket reference and create a feature branch

The English summary is being prepared. Showing the original description.

Works withJira
See how to install

Files included (1)

  • SKILL.md2.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Speckit Git Feature Skill

Create Infrahub Feature Branch

Create and switch to a new git feature branch for the given specification, enforcing an Infrahub Jira or JPD ticket reference as the branch name suffix.

User Input

$ARGUMENTS

Prerequisites

  • Verify Git is available by running git rev-parse --is-inside-work-tree 2>/dev/null
  • If Git is not available, warn the user and skip branch creation

Step 1: Resolve Ticket Reference

Parse $ARGUMENTS for a ticket ID matching either of these formats:

  • JPD format: infp-[0-9]+ (e.g., infp-460)
  • Jira epic format: ifc-[0-9]+ (e.g., ifc-2140)

If no ticket ID is found in the arguments, prompt the user:

"Please provide a Jira or JPD reference for this feature (e.g., infp-460 for a JPD item or ifc-2140 for a Jira epic):"

Do not proceed until a valid ticket ID is provided. Never invent or skip it.

Step 2: Generate Short Name

Generate a concise short name (2-4 words) from the feature description:

  • Use action-noun format when possible (e.g., user-auth, fix-payment-timeout)
  • Preserve technical terms and acronyms (OAuth2, API, JWT, etc.)
  • Examples:
    • "Add user authentication" → user-auth
    • "Implement OAuth2 integration for the API" → oauth2-api-integration
    • "Fix payment processing timeout bug" → fix-payment-timeout

Step 3: Create Branch

Construct the branch name as <short-name>-<ticket-id> (e.g., user-auth-infp-460), then pass it as GIT_BRANCH_NAME to bypass the script's automatic numbering:

GIT_BRANCH_NAME="<short-name>-<ticket-id>" .specify/extensions/git/scripts/bash/create-new-feature.sh --json "<feature description>"

Example:

GIT_BRANCH_NAME="user-auth-infp-460" .specify/extensions/git/scripts/bash/create-new-feature.sh --json "Add user authentication"

IMPORTANT:

  • Always construct GIT_BRANCH_NAME as <short-name>-<ticket-id> — ticket ID is the suffix
  • Always include --json so output can be parsed reliably
  • Run this script exactly once per feature
  • For single quotes in args, use escape syntax: 'I'\''m Groot'

Output

The script outputs JSON with:

  • BRANCH_NAME: The branch name (e.g., user-auth-infp-460)
  • FEATURE_NUM: The ticket ID

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

commit

Free

Stages and commits the current changes onto a safe working branch, enforcing branch discipline and optionally pushing upstream. TRIGGER when: the user wants to commit, save, or check in the current changes. DO NOT TRIGGER when: opening a pull request → pr.

The English summary is being prepared. Showing the original description.

opsmill/infrahub-ansible20Updated Oct 16, 2026

Turns a single feature idea, improvement, or bug into ONE well-structured GitHub issue. TRIGGER when: the user wants to file/open/create an issue, turn a feature idea or improvement into a ticket, or capture something missing or broken as a ticket. DO NOT TRIGGER when: breaking work into multiple issues or planning a body of work → a planning skill; writing a full Product Requirements Document → creating-prd; the idea is still fuzzy and unhardened → grilling-ideas first.

The English summary is being prepared. Showing the original description.

opsmill/infrahub-ansible20Updated Oct 16, 2026

Synthesises the current conversation context into a Product Requirements Document and publishes it to GitHub (as a comment on a referenced issue, or a new issue). Synthesises from context; does not interview. TRIGGER when: the conversation has produced enough understanding of a feature and the user wants it captured as a PRD. DO NOT TRIGGER when: a single small issue is enough → creating-issues; the idea has not been stress-tested yet → grilling-ideas first; bug reports.

The English summary is being prepared. Showing the original description.

opsmill/infrahub-ansible20Updated Oct 16, 2026

Stress-tests a fuzzy or vague feature idea before any PRD, spec, or ticket is written. TRIGGER when: the user has a fuzzy feature idea — one or two paragraphs, vague on users / scope / success — and wants to harden it, or says "grill / stress-test / pressure-test this idea." DO NOT TRIGGER when: the idea is already turned into a spec or PRD; bug fixes or refactors; the idea is hardened and you are ready to write the PRD → creating-prd.

The English summary is being prepared. Showing the original description.

opsmill/infrahub-ansible20Updated Oct 16, 2026

Watches an open pull request's CI until green and fixes failing checks. TRIGGER when: the user wants to watch a pull request's CI, babysit a PR until it goes green, or fix failing CI checks on an open PR. DO NOT TRIGGER when: opening the PR in the first place → pr; rebasing the branch onto its base → rebase.

The English summary is being prepared. Showing the original description.

opsmill/infrahub-ansible20Updated Oct 16, 2026

pr

Free

Opens a pull request, publishing the current branch as a PR. TRIGGER when: the user wants to open a pull request, publish the current branch as a PR, or take the current work through to an open PR. DO NOT TRIGGER when: only committing changes → commit; babysitting CI after the PR is already open → monitoring-pull-requests.

The English summary is being prepared. Showing the original description.

opsmill/infrahub-ansible20Updated Oct 16, 2026

See all skills by opsmill

Report a problem with this skill