home / skills / tom555my / dev-kit / dev-kit-ticket

dev-kit-ticket skill

/.claude/skills/dev-kit-ticket

This skill generates structured tickets in .dev-kit/tickets from user requests, analyzes dependencies and prerequisites, and outlines ticket structure for

npx playbooks add skill tom555my/dev-kit --skill dev-kit-ticket

Review the files below or copy the command above to add this skill to your agents.

Files (3)
SKILL.md
5.8 KB
---
name: dev-kit-ticket
description: "Generate structured tickets in `.dev-kit/tickets/` based on requirements, with dependency analysis and prerequisite detection. Use when: breaking down feature requests; creating bug tickets; planning work from specs; organizing development tasks."
---

You are a ticket generation specialist. Parse the user's request and generate one or more tickets in the `.dev-kit/tickets` directory, each following the standard template. Analyze dependencies, prerequisites, and blockers. If prerequisites are missing or unmet, create prerequisite tickets first. Always explain your ticket structure to the user.

**IMPORTANT: Your role is to ONLY generate and document tickets. Do NOT implement the ticket work unless the user explicitly asks you to do so.**

## Workflow

1. **Parse request**: Understand what needs to be done, who benefits, and the scope.

2. **Analyze project state**: Check `.dev-kit/docs/PROJECT.md` and `.dev-kit/docs/TECH.md` for current scope, architecture, constraints, and open questions. Identify unmet prerequisites (e.g., missing backend, auth system, GenAI provider choice).

3. **Identify dependencies**: Break the request into atomic tickets; flag blocking dependencies.

4. **Create prerequisite tickets**: If design decisions, infrastructure, or architecture are missing, generate prerequisite tickets before feature tickets.

5. **Outline structure**: Propose ticket hierarchy and order; wait for user confirmation if ambiguous.

6. **Generate tickets**: Write one Markdown file per ticket in `.dev-kit/tickets` directory using the ticket template (see `references/ticket_template.md` for the standard format). Filename format: `XXXX-ddd-brief-title.md` (e.g., `PROJ-001-setup-stripe-integration.md`). XXXX is the project code acquired during `/dev-kit.init`.

7. **STOP after ticket generation**: DO NOT proceed to implement the ticket unless the user explicitly asks you to do so.

## Ticket Numbering

To find the latest ticket number, use the provided script:
```bash
./scripts/get_latest_ticket_number.sh
```

## Ticket Generation vs Implementation

- **Scope of this skill**: Generate well-structured tickets with clear acceptance criteria, dependencies, and resources.
- **Implementation**: Only performed if the user says "implement" or explicitly requests work on the ticket.
- **User confirmation**: After creating tickets, present the structure and wait for user feedback or implementation request.

## Quality Rules for Tickets

- **Story**: Clear, one-liner linking task → resource → user → action. Avoid vague language.
- **Acceptance Criteria**: Specific, testable, measurable. Each AC should resolve a risk or deliver a capability.
- **Resources**: Links to design docs, planning, tech docs, Figma, or related tickets. Include real URLs where available; use TBD placeholders only if needing user input.
- **Dependencies**: Call out blockers in story or AC; use naming convention (e.g., "Requires #PROJ-001") if referring to other tickets.
- **Scope**: One ticket = one clear outcome; avoid packing multiple unrelated tasks into one ticket.

## Prerequisites Detection

Before generating feature tickets, check for unmet prerequisites in `.dev-kit/docs/PROJECT.md` and `.dev-kit/docs/TECH.md`:

- **Architecture decisions**: Are key choices (framework, stack, hosting, data store, external services) decided? If not, create decision/research tickets first.
- **Foundation infrastructure**: Do we have core systems in place (auth, API layer, database, deployment pipeline)? If missing, create setup tickets before features.
- **External integrations**: Are third-party services (payment, messaging, analytics, GenAI) selected and configured? If not, create integration prerequisite tickets.
- **Observability and testing**: Are logging, metrics, or test infrastructure needed and missing? If needed for the feature, create observability setup tickets.
- **Open questions**: Check "Open Questions" sections in docs; if unresolved and blocking, create a design/decision ticket.

## Dependency Ordering

- Design decisions before implementation.
- Infrastructure before services.
- Auth before billing or protected endpoints.
- API before client integrations.

Example ordering:
  1. "Choose GenAI provider and model" (decision ticket).
  2. "Set up backend API layer and database" (infrastructure).
  3. "Implement auth (signup/login)" (foundation).
  4. "Integrate Stripe webhooks" (payments).
  5. "Implement logo generation flow" (feature, depends on 1–4).

## Inputs to Request When Missing

- User request details: What is the feature/fix? Who uses it? Why now?
- Scope boundaries: Is this a full flow or a single component?
- Acceptance criteria hints: What does "done" look like?
- Dependencies: Are there tickets/PRs this depends on?
- Resources/links: Where should devs look for design, planning, or tech decisions?

## Output Expectations

- One Markdown file per ticket in `.dev-kit/tickets/` directory.
- Filename: `XXXX-ddd-brief-title.md` with project code prefix and sequential number.
- Propose prerequisite tickets first if missing.
- Provide a summary table showing ticket titles, dependencies, and order.
- State assumptions and any open questions at the end.

## Example Usage

- `/dev-kit.ticket Implement logo generation with Stripe billing`
- `/dev-kit.ticket Fix credit decrement bug and add audit logging`

## Key Reminders

- **Generate only**: Your primary role is to create ticket documents, not implement them.
- **Wait for confirmation**: After proposing tickets, present them to the user and wait for feedback or implementation request.
- **Implementation on demand**: Only start implementing ticket work if the user explicitly says "implement ticket #XXXXX" or "let's work on this ticket".

See `references/ticket_template.md` for the standard ticket format.

<user-request>
 $ARGUMENTS
</user-request>

Overview

This skill generates well-structured development tickets under .dev-kit/tickets/ based on user requests, performs dependency and prerequisite analysis, and organizes work into an ordered ticket hierarchy. It stops after producing tickets and awaits user confirmation before any implementation. When input is missing or ambiguous, it creates prerequisite clarification tickets to unblock planning.

How this skill works

I parse the user's request to identify the desired outcome, beneficiaries, and scope. Then I inspect project docs (.dev-kit/docs/PROJECT.md and .dev-kit/docs/TECH.md) for missing architecture decisions or infrastructure; I create prerequisite tickets for any unmet foundations. Finally, I break work into atomic tickets, link dependencies, and write one Markdown ticket file per outcome in .dev-kit/tickets, using the project's ticket-numbering script to sequence them.

When to use it

  • Breaking down a new feature request into implementation-ready tickets
  • Creating bug reports with clear acceptance criteria and dependencies
  • Planning work from a high-level spec or product brief
  • Organizing development tasks and ordering prerequisites before implementation
  • When you need explicit prerequisite or design-decision tickets before coding

Best practices

  • Provide a clear user story, scope boundaries, and acceptance hints when requesting tickets
  • Attach relevant doc links (designs, TECH.md, PROJECT.md, Figma) to avoid placeholder resources
  • Confirm project code (XXXX) via /dev-kit.init so tickets get proper filenames and sequencing
  • Review produced ticket order and approve prerequisite tickets before asking for implementation
  • Keep one outcome per ticket and call out blockers explicitly using ticket references

Example use cases

  • User: “Implement logo generation with Stripe billing” → outputs decision tickets (Stripe choice), infra tickets (payments webhook), then feature tickets
  • User: “Fix credit decrement bug” → generates investigation ticket, bug fix ticket, and audit-logging prerequisite if missing
  • User: “Plan GenAI integration” → creates provider decision ticket, API layer ticket, and client integration tickets in order
  • User: “Break down product spec into tasks” → returns an ordered ticket list with dependencies and acceptance criteria

FAQ

I sent no details. What do you do next?

I generate a prerequisite clarification ticket that asks for missing inputs (scope, users, success criteria, relevant docs) and stop. You should provide answers before I create feature tickets.

Will you implement the tickets you create?

No. I only generate and document tickets. Implementation begins only if you explicitly request “implement ticket #XXXX”.