Sprint to jira
Claude Agent Skills
npx -y skills add alycd/agent-skills --skill sprint-to-jiraAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Generate agile user stories and bulk-create Jira tickets from a sprint planning markdown file's Feature Summary table. Use when given a sprint doc and asked to create Jira tickets, generate stories for sprint features, or run the sprint-to-jira pipeline. Triggers on phrases like "create jira tickets for sprint", "generate stories from sprint doc", "make tickets for each feature", or "foreach item in sprint".
SKILL.md
4.2 KB, 967 tokens by cl100k_base, as published. Nobody here has run it
Sprint → Jira Ticket Pipeline
Reads a sprint planning markdown file, generates an agile user story (JSON) for each row in the Feature Summary table, and creates a Jira ticket for each one via create_jira_ticket.sh.
Instructions
Step 1: Locate inputs
- Identify the sprint markdown file — use the file the user referenced or the current working directory.
- Find
create_jira_ticket.sh:find /Users/alysidi -name "create_jira_ticket.sh" 2>/dev/null | head -1 - Confirm
JIRA_API_TOKENis set in the environment (the script checks for it).
Step 2: Parse the Feature Summary table
Read the markdown file and extract every row from the Feature Summary table. For each row, capture:
- Title — column "Title"
- Summary — column "Summary"
- BusinessContext — column "Business Context" (may be empty)
Step 3: Create a task list
Use TaskCreate to create one task per feature before processing any of them. Subject format:
Agile story + Jira ticket: <Title>
Step 4: Process each feature sequentially
For each feature (one at a time — clipboard is shared):
-
Mark task
in_progresswithTaskUpdate. -
Generate agile story JSON using the schema below. Infer missing fields from the title and summary. Use the
agile-storyskill's output format but extend it to match whatcreate_jira_ticket.shexpects:
{
"Topic": "<Title>",
"Story": "As a <persona>, I want <capability> so that <outcome>.",
"BusinessContext": "<business context from table or inferred>",
"Criteria": "Given <precondition>, when <action>, then <expected result>. (repeat for each scenario)",
"Details": {
"users": "<who uses this feature>",
"purpose": "<why it exists>",
"constraints": "<known limits or rules>",
"success_criteria": "<measurable outcomes>"
}
}
-
Write JSON to a temp file:
# Use index N (1-based) to avoid clipboard collisions /tmp/story_N.json -
Run the pipeline:
cat /tmp/story_N.json | pbcopy && pbpaste | /path/to/create_jira_ticket.sh -
Check the response — a
201HTTP status and a JSON body with"key"(e.g.MAR-12444) indicates success. -
Mark task
completedwithTaskUpdate.
Step 5: Report results
After all features are processed, output a markdown table:
| Feature | Jira Ticket |
|---|---|
| Tours for New Features | MAR-12444 |
| ... | ... |
JSON field guidance
| Field | Required | Notes |
|---|---|---|
Topic | Yes | Becomes the Jira ticket summary |
Story | Yes | Classic "As a… I want… so that…" format |
BusinessContext | No | Use table value; infer if blank |
Criteria | Yes | Given/When/Then; one sentence per scenario |
Details.users | No | Who interacts with this feature |
Details.purpose | No | The "why" |
Details.constraints | No | Technical or business limits |
Details.success_criteria | No | Measurable outcomes |
Edge cases
- Empty Business Context: Infer from the title and summary rather than leaving blank.
- Script not found: Run the
findcommand in Step 1 and report the path to the user before proceeding. - Missing
JIRA_API_TOKEN: Inform the user and halt — do not attempt to create tickets. - Non-201 response: Log the error, mark the task as still
in_progress, and continue with remaining features. Report failures at the end. - Table not found: Inform the user that no Feature Summary table was found in the file and ask them to point to the correct section.
Requirements
jqmust be installed (brew install jq)JIRA_API_TOKENenvironment variable must be setcreate_jira_ticket.shmust be executable and reachable- macOS clipboard tools (
pbcopy,pbpaste) must be available