{"id":"a9ebff2f-c1b8-4925-adeb-fe3e795c087e","shortId":"WGdgwn","kind":"skill","title":"jira","tagline":"Use when the user mentions Jira issues (e.g., \"PROJ-123\"), asks about tickets, wants to create/view/update issues, check sprint status, or manage their Jira workflow. Triggers on keywords like \"jira\", \"issue\", \"ticket\", \"sprint\", \"backlog\", or issue key patterns.","description":"# Jira\n\nNatural language interaction with Jira. Supports multiple backends.\n\n## Backend Detection\n\n**Run this check first** to determine which backend to use:\n\n```\n1. Check if jira CLI is available:\n   → Run: which jira\n   → If found: USE CLI BACKEND\n\n2. If no CLI, check for Atlassian MCP:\n   → Look for mcp__atlassian__* tools\n   → If available: USE MCP BACKEND\n\n3. If neither available:\n   → GUIDE USER TO SETUP\n```\n\n| Backend | When to Use | Reference |\n|---------|-------------|-----------|\n| **CLI** | `jira` command available | `references/commands.md` |\n| **MCP** | Atlassian MCP tools available | `references/mcp.md` |\n| **None** | Neither available | Guide to install CLI |\n\n---\n\n## Quick Reference (CLI)\n\n> Skip this section if using MCP backend.\n\n| Intent | Command |\n|--------|---------|\n| View issue | `jira issue view ISSUE-KEY` |\n| List my issues | `jira issue list -a$(jira me)` |\n| My in-progress | `jira issue list -a$(jira me) -s\"In Progress\"` |\n| Create issue | `jira issue create -tType -s\"Summary\" -b\"Description\"` |\n| Move/transition | `jira issue move ISSUE-KEY \"State\"` |\n| Assign to me | `jira issue assign ISSUE-KEY $(jira me)` |\n| Unassign | `jira issue assign ISSUE-KEY x` |\n| Add comment | `jira issue comment add ISSUE-KEY -b\"Comment text\"` |\n| Open in browser | `jira open ISSUE-KEY` |\n| Current sprint | `jira sprint list --state active` |\n| Who am I | `jira me` |\n\n---\n\n## Quick Reference (MCP)\n\n> Skip this section if using CLI backend.\n\n| Intent | MCP Tool |\n|--------|----------|\n| Search issues | `mcp__atlassian__searchJiraIssuesUsingJql` |\n| View issue | `mcp__atlassian__getJiraIssue` |\n| Create issue | `mcp__atlassian__createJiraIssue` |\n| Update issue | `mcp__atlassian__editJiraIssue` |\n| Get transitions | `mcp__atlassian__getTransitionsForJiraIssue` |\n| Transition | `mcp__atlassian__transitionJiraIssue` |\n| Add comment | `mcp__atlassian__addCommentToJiraIssue` |\n| User lookup | `mcp__atlassian__lookupJiraAccountId` |\n| List projects | `mcp__atlassian__getVisibleJiraProjects` |\n\nSee `references/mcp.md` for full MCP patterns.\n\n---\n\n## Triggers\n\n- \"create a jira ticket\"\n- \"show me PROJ-123\"\n- \"list my tickets\"\n- \"move ticket to done\"\n- \"what's in the current sprint\"\n\n---\n\n## Issue Key Detection\n\nIssue keys follow the pattern: `[A-Z]+-[0-9]+` (e.g., PROJ-123, ABC-1).\n\nWhen a user mentions an issue key in conversation:\n- **CLI:** `jira issue view KEY` or `jira open KEY`\n- **MCP:** `mcp__atlassian__jira_get_issue` with the key\n\n---\n\n## Workflow\n\n**Creating tickets:**\n1. Research context if user references code/tickets/PRs\n2. Draft ticket content\n3. Review with user\n4. Create using appropriate backend\n\n**Updating tickets:**\n1. Fetch issue details first\n2. Check status (careful with in-progress tickets)\n3. Show current vs proposed changes\n4. Get approval before updating\n5. Add comment explaining changes\n\n---\n\n## Before Any Operation\n\nAsk yourself:\n\n1. **What's the current state?** — Always fetch the issue first. Don't assume status, assignee, or fields are what user thinks they are.\n\n2. **Who else is affected?** — Check watchers, linked issues, parent epics. A \"simple edit\" might notify 10 people.\n\n3. **Is this reversible?** — Transitions may have one-way gates. Some workflows require intermediate states. Description edits have no undo.\n\n4. **Do I have the right identifiers?** — Issue keys, transition IDs, account IDs. Display names don't work for assignment (MCP).\n\n---\n\n## NEVER\n\n- **NEVER transition without fetching current status** — Workflows may require intermediate states. \"To Do\" → \"Done\" might fail silently if \"In Progress\" is required first.\n\n- **NEVER assign using display name (MCP)** — Only account IDs work. Always call `lookupJiraAccountId` first, or assignment silently fails.\n\n- **NEVER edit description without showing original** — Jira has no undo. User must see what they're replacing.\n\n- **NEVER use `--no-input` without all required fields (CLI)** — Fails silently with cryptic errors. Check project's required fields first.\n\n- **NEVER assume transition names are universal** — \"Done\", \"Closed\", \"Complete\" vary by project. Always get available transitions first.\n\n- **NEVER bulk-modify without explicit approval** — Each ticket change notifies watchers. 10 edits = 10 notification storms.\n\n---\n\n## Safety\n\n- Always show the command/tool call before running it\n- Always get approval before modifying tickets\n- Preserve original information when editing\n- Verify updates after applying\n- Always surface authentication issues clearly so the user can resolve them\n\n---\n\n## No Backend Available\n\nIf neither CLI nor MCP is available, guide the user:\n\n```\nTo use Jira, you need one of:\n\n1. **jira CLI** (recommended):\n   https://github.com/ankitpokhrel/jira-cli\n\n   Install: brew install ankitpokhrel/jira-cli/jira-cli\n   Setup:   jira init\n\n2. **Atlassian MCP**:\n   Configure in your MCP settings with Atlassian credentials.\n```\n\n---\n\n## Deep Dive\n\n**LOAD reference when:**\n- Creating issues with complex fields or multi-line content\n- Building JQL queries beyond simple filters\n- Troubleshooting errors or authentication issues\n- Working with transitions, linking, or sprints\n\n**Do NOT load reference for:**\n- Simple view/list operations (Quick Reference above is sufficient)\n- Basic status checks (`jira issue view KEY`)\n- Opening issues in browser\n\n| Task | Load Reference? |\n|------|-----------------|\n| View single issue | No |\n| List my tickets | No |\n| Create with description | **Yes** — CLI needs `/tmp` pattern |\n| Transition issue | **Yes** — need transition ID workflow |\n| JQL search | **Yes** — for complex queries |\n| Link issues | **Yes** — MCP limitation, need script |\n\nReferences:\n- CLI patterns: `references/commands.md`\n- MCP patterns: `references/mcp.md`","tags":["jira","agent","skills","jdrhyne","agent-skills","agentic-ai","ai-agents","automation","claude-code","clawdbot","codex","cursor"],"capabilities":["skill","source-jdrhyne","skill-jira","topic-agent-skills","topic-agentic-ai","topic-ai-agents","topic-automation","topic-claude-code","topic-clawdbot","topic-codex","topic-cursor","topic-developer-tools","topic-gemini-cli","topic-github-copilot","topic-llm-agents"],"categories":["agent-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/jdrhyne/agent-skills/jira","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add jdrhyne/agent-skills","source_repo":"https://github.com/jdrhyne/agent-skills","install_from":"skills.sh"}},"qualityScore":"0.565","qualityRationale":"deterministic score 0.56 from registry signals: · indexed on github topic:agent-skills · 230 github stars · SKILL.md body (5,768 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T00:54:19.345Z","embedding":null,"createdAt":"2026-04-18T22:04:59.931Z","updatedAt":"2026-04-22T00:54:19.345Z","lastSeenAt":"2026-04-22T00:54:19.345Z","tsv":"'-1':338 '-123':11,307,336 '-9':333 '/ankitpokhrel/jira-cli':685 '/tmp':777 '0':332 '1':61,369,391,426,679 '10':466,619,621 '2':76,376,396,450,693 '3':94,380,405,468 '4':384,411,489 '5':416 'a-z':329 'abc':337 'account':500,541 'activ':230 'add':204,209,278,417 'addcommenttojiraissu':282 'affect':454 'alway':432,544,602,625,633,648 'ankitpokhrel/jira-cli/jira-cli':689 'appli':647 'appropri':387 'approv':413,613,635 'ask':12,424 'assign':185,190,199,508,535,549 'assigne':441 'assum':439,591 'atlassian':82,87,113,252,257,262,267,272,276,281,286,291,359,694,702 'authent':650,728 'avail':67,90,97,110,116,120,604,661,668 'b':175,213 'backend':48,49,58,75,93,102,134,245,388,660 'backlog':35 'basic':749 'beyond':722 'brew':687 'browser':218,759 'build':719 'bulk':609 'bulk-modifi':608 'call':545,629 'care':399 'chang':410,420,616 'check':19,53,62,80,397,455,584,751 'clear':652 'cli':65,74,79,107,124,127,244,348,578,664,681,775,800 'close':597 'code/tickets/prs':375 'command':109,136 'command/tool':628 'comment':205,208,214,279,418 'complet':598 'complex':712,790 'configur':696 'content':379,718 'context':371 'convers':347 'creat':167,171,259,300,367,385,709,771 'create/view/update':17 'createjiraissu':263 'credenti':703 'cryptic':582 'current':224,319,407,430,515 'deep':704 'descript':176,484,554,773 'detail':394 'detect':50,323 'determin':56 'display':502,537 'dive':705 'done':314,524,596 'draft':377 'e.g':9,334 'edit':463,485,553,620,643 'editjiraissu':268 'els':452 'epic':460 'error':583,726 'explain':419 'explicit':612 'fail':526,551,579 'fetch':392,433,514 'field':443,577,588,713 'filter':724 'first':54,395,436,533,547,589,606 'follow':326 'found':72 'full':296 'gate':478 'get':269,361,412,603,634 'getjiraissu':258 'gettransitionsforjiraissu':273 'getvisiblejiraproject':292 'github.com':684 'github.com/ankitpokhrel/jira-cli':683 'guid':98,121,669 'id':499,501,542,784 'identifi':495 'in-progress':155,401 'inform':641 'init':692 'input':573 'instal':123,686,688 'intent':135,246 'interact':43 'intermedi':482,520 'issu':8,18,32,37,138,140,143,147,149,159,168,170,179,182,189,192,198,201,207,211,222,250,255,260,265,321,324,344,350,362,393,435,458,496,651,710,729,753,757,765,780,793 'issue-key':142,181,191,200,210,221 'jira':1,7,25,31,40,45,64,70,108,139,148,152,158,162,169,178,188,194,197,206,219,226,234,302,349,354,360,558,674,680,691,752 'jql':720,786 'key':38,144,183,193,202,212,223,322,325,345,352,356,365,497,755 'keyword':29 'languag':42 'like':30 'limit':796 'line':717 'link':457,733,792 'list':145,150,160,228,288,308,767 'load':706,738,761 'look':84 'lookup':284 'lookupjiraaccountid':287,546 'manag':23 'may':473,518 'mcp':83,86,92,112,114,133,238,247,251,256,261,266,271,275,280,285,290,297,357,358,509,539,666,695,699,795,803 'mention':6,342 'might':464,525 'modifi':610,637 'move':180,311 'move/transition':177 'multi':716 'multi-lin':715 'multipl':47 'must':563 'name':503,538,593 'natur':41 'need':676,776,782,797 'neither':96,119,663 'never':510,511,534,552,569,590,607 'no-input':571 'none':118 'notif':622 'notifi':465,617 'one':476,677 'one-way':475 'open':216,220,355,756 'oper':423,743 'origin':557,640 'parent':459 'pattern':39,298,328,778,801,804 'peopl':467 'preserv':639 'progress':157,166,403,530 'proj':10,306,335 'project':289,585,601 'propos':409 'queri':721,791 'quick':125,236,744 're':567 'recommend':682 'refer':106,126,237,374,707,739,745,762,799 'references/commands.md':111,802 'references/mcp.md':117,294,805 'replac':568 'requir':481,519,532,576,587 'research':370 'resolv':657 'revers':471 'review':381 'right':494 'run':51,68,631 'safeti':624 'script':798 'search':249,787 'searchjiraissuesusingjql':253 'section':130,241 'see':293,564 'set':700 'setup':101,690 'show':304,406,556,626 'silent':527,550,580 'simpl':462,723,741 'singl':764 'skill' 'skill-jira' 'skip':128,239 'source-jdrhyne' 'sprint':20,34,225,227,320,735 'state':184,229,431,483,521 'status':21,398,440,516,750 'storm':623 'suffici':748 'summari':174 'support':46 'surfac':649 'task':760 'text':215 'think':447 'ticket':14,33,303,310,312,368,378,390,404,615,638,769 'tool':88,115,248 'topic-agent-skills' 'topic-agentic-ai' 'topic-ai-agents' 'topic-automation' 'topic-claude-code' 'topic-clawdbot' 'topic-codex' 'topic-cursor' 'topic-developer-tools' 'topic-gemini-cli' 'topic-github-copilot' 'topic-llm-agents' 'transit':270,274,472,498,512,592,605,732,779,783 'transitionjiraissu':277 'trigger':27,299 'troubleshoot':725 'ttype':172 'unassign':196 'undo':488,561 'univers':595 'updat':264,389,415,645 'use':2,60,73,91,105,132,243,386,536,570,673 'user':5,99,283,341,373,383,446,562,655,671 'vari':599 'verifi':644 'view':137,141,254,351,754,763 'view/list':742 'vs':408 'want':15 'watcher':456,618 'way':477 'without':513,555,574,611 'work':506,543,730 'workflow':26,366,480,517,785 'x':203 'yes':774,781,788,794 'z':331","prices":[{"id":"0eb32d8f-9bd8-44f4-8034-9fbf67a7f71d","listingId":"a9ebff2f-c1b8-4925-adeb-fe3e795c087e","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"jdrhyne","category":"agent-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T22:04:59.931Z"}],"sources":[{"listingId":"a9ebff2f-c1b8-4925-adeb-fe3e795c087e","source":"github","sourceId":"jdrhyne/agent-skills/jira","sourceUrl":"https://github.com/jdrhyne/agent-skills/tree/main/skills/jira","isPrimary":false,"firstSeenAt":"2026-04-18T22:04:59.931Z","lastSeenAt":"2026-04-22T00:54:19.345Z"}],"details":{"listingId":"a9ebff2f-c1b8-4925-adeb-fe3e795c087e","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"jdrhyne","slug":"jira","github":{"repo":"jdrhyne/agent-skills","stars":230,"topics":["agent-skills","agentic-ai","ai-agents","automation","claude-code","clawdbot","codex","cursor","developer-tools","gemini-cli","github-copilot","llm-agents","mcp","openclaw","prompt-engineering","prompts"],"license":null,"html_url":"https://github.com/jdrhyne/agent-skills","pushed_at":"2026-03-27T14:29:53Z","description":"A collection of AI agent skills for Clawdbot, Claude Code, Codex","skill_md_sha":"3e5381454f6c8cc29b2f4834650a45c299c73726","skill_md_path":"skills/jira/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/jdrhyne/agent-skills/tree/main/skills/jira"},"layout":"multi","source":"github","category":"agent-skills","frontmatter":{"name":"jira","description":"Use when the user mentions Jira issues (e.g., \"PROJ-123\"), asks about tickets, wants to create/view/update issues, check sprint status, or manage their Jira workflow. Triggers on keywords like \"jira\", \"issue\", \"ticket\", \"sprint\", \"backlog\", or issue key patterns."},"skills_sh_url":"https://skills.sh/jdrhyne/agent-skills/jira"},"updatedAt":"2026-04-22T00:54:19.345Z"}}