start-ticket
Scannednpx machina-cli add skill flurdy/agent-skills/start-ticket --openclawStart Ticket
Initialize work on a Jira ticket by looking up the ticket details and creating an appropriately named branch.
Usage
/start-ticket AB-123
Instructions
1. Look Up the Jira Ticket
Use the /jira-ticket skill or the Jira MCP tools directly to fetch the ticket details:
mcp__jira__jira_get with:
path: /rest/api/3/issue/{ticketNumber}
jq: "{key: key, summary: fields.summary, type: fields.issuetype.name}"
2. Determine the Branch Prefix
Map the Jira issue type to a conventional commit prefix:
| Issue Type | Branch Prefix |
|---|---|
| Story | feat |
| Task | feat |
| Bug | fix |
| Spike | chore |
| Sub-task | inherit from parent, or feat |
| Improvement | feat |
| Technical Debt | refactor |
| Documentation | docs |
| Default | feat |
3. Generate Branch Name
Format: {prefix}/{TICKET-NUMBER}-{kebab-case-summary}
Rules:
- Convert summary to kebab-case (lowercase, hyphens instead of spaces)
- Remove special characters except hyphens
- Truncate to reasonable length (max ~50 chars for the summary portion)
- Keep the ticket number uppercase
Example: For ticket AB-123 with summary "Sanitize Input":
feat/AB-123-sanitize-input
4. Create the Branch
# Ensure we're on main and up to date
git checkout main
git pull origin main
# Create and switch to new branch
git checkout -b {branch-name}
5. Confirm to User
Output the created branch name and ticket summary so the user knows they're ready to start work.
Source
git clone https://github.com/flurdy/agent-skills/blob/main/skills/start-ticket/SKILL.mdView on GitHub Overview
Start Ticket initializes work on a Jira ticket by fetching the ticket's details and creating a properly named branch. It uses the ticket type to select a conventional commit prefix, ensuring consistent naming and traceability back to Jira.
How This Skill Works
It looks up the Jira ticket via the /jira-ticket flow to fetch key, summary, and type. It then maps the issue type to a branch prefix (e.g., feat for Story/Task, fix for Bug, docs for Documentation) and builds a branch name as prefix/TICKET-NUMBER-{kebab-case-summary}. The skill updates the local main branch, creates and switches to the new branch, and finally reports the branch name and the ticket summary.
When to Use It
- Starting work on a Jira ticket (e.g., AB-123)
- When you need a prefix based on ticket type (Story/Task -> feat, Bug -> fix, Documentation -> docs, etc.)
- When you want a kebab-case, readable branch name
- When you must base work on the latest main before branching
- When you want a final confirmation of the created branch name
Quick Start
- Step 1: Run /start-ticket AB-123
- Step 2: The skill fetches ticket details and selects a prefix based on type
- Step 3: It creates and switches to the new branch, then reports the result
Best Practices
- Verify the Jira ticket key and summary before creating a branch
- Rely on the type-to-prefix mapping to maintain consistency
- Keep the branch name around 50 characters for readability
- Always pull the latest main before creating the branch
- Explicitly confirm the created branch name and ticket summary with the user
Example Use Cases
- AB-123 Sanitize Input -> feat/AB-123-sanitize-input
- AB-124 Fix crash on login -> fix/AB-124-fix-crash-on-login
- AB-125 Add API caching -> feat/AB-125-add-api-caching
- AB-126 Spike analytics needs -> chore/AB-126-spike-analytics-needs
- AB-127 Update README -> docs/AB-127-update-readme