Skip to content
Back to skills

Start Work

ASecurity

Start work on a Jira ticket.

  • 2,266 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added August 31, 2026
developmentgit

Security analysis

A100/100

Scanned August 31, 2026

npx -y skills add liferay/liferay-portal --skill start-work --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Start Work?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Start Work
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/liferay-start-work/badge)](https://www.skillsdirectory.com/skills/liferay-start-work)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---

argument-hint: "<ticket-key-or-url>"
description: Start work on a Jira ticket.
name: start-work

---

# Start Work on a Jira Ticket

Prepare a Liferay ticket for development.

## Resolve the Ticket

Accept a key (`LPD-86295`) or a browse URL from `${ARGUMENTS}`. When nothing is supplied and `${PWD}` matches `*/liferay-portal-<KEY>` where `<KEY>` matches the Jira pattern `[A-Z]+-[0-9]+`, derive the key from the directory name. Otherwise, ask the user.

## Prerequisites

Abort when the working tree has uncommitted changes.

## Determine the Target

Fetch the ticket (issue type, current assignee, subtasks) and resolve the **target** — the ticket where the branch and active work state live:

- **Bug** (`10004`) — the bug itself. There is no child.
- **Story** (`10001`) or **Task** (`10002`) — the **Technical Task** (`10153`) subtask. Jira autocreates it when the parent is moved to an in-progress status, so the target does not exist yet and must be resolved after **Start Work on the Parent**. It may exist from a previous attempt, in which case it becomes the target.

## Start Work on the Parent

Assign the parent to the user and apply the transitions below. When the parent is already in an in-progress status by a different user, refuse to continue.

| Parent Type | Destination | Transition IDs |
| --- | --- | --- |
| Bug | In Progress | `61` |
| Story | In Development | `41`, then `61` |
| Task | In Progress | `21` |

For a Story, apply the two transitions in sequence: `41` moves it to **Ready for Development**, which triggers Jira to autocreate the **Technical Task** subtask, then `61` moves it to **In Development**.

## Start Work on the Child

Skip for **Bug**. For **Story** / **Task**, refetch the parent's subtasks until the **Technical Task** appears, then assign it to the user and transition it:

| Child Type | Destination | Transition ID |
| --- | --- | --- |
| Technical Task | In Progress | `41` |

## Create a Git Branch

Branch off the current HEAD, named after the **target** key. When the branch already exists, check it out instead.

## Make a Plan

Enter plan mode and read the tickets (both parent and child) to make the plan.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.