cli-tool/components/skills/ai-research/jira/SKILL.md
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.
npx skillsauth add davila7/claude-code-templates jiraInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Natural language interaction with Jira. Supports multiple backends.
Run this check first to determine which backend to use:
1. Check if jira CLI is available:
→ Run: which jira
→ If found: USE CLI BACKEND
2. If no CLI, check for Atlassian MCP:
→ Look for mcp__atlassian__* tools
→ If available: USE MCP BACKEND
3. If neither available:
→ GUIDE USER TO SETUP
| Backend | When to Use | Reference |
|---------|-------------|-----------|
| CLI | jira command available | references/commands.md |
| MCP | Atlassian MCP tools available | references/mcp.md |
| None | Neither available | Guide to install CLI |
Skip this section if using MCP backend.
| Intent | Command |
|--------|---------|
| View issue | jira issue view ISSUE-KEY |
| List my issues | jira issue list -a$(jira me) |
| My in-progress | jira issue list -a$(jira me) -s"In Progress" |
| Create issue | jira issue create -tType -s"Summary" -b"Description" |
| Move/transition | jira issue move ISSUE-KEY "State" |
| Assign to me | jira issue assign ISSUE-KEY $(jira me) |
| Unassign | jira issue assign ISSUE-KEY x |
| Add comment | jira issue comment add ISSUE-KEY -b"Comment text" |
| Open in browser | jira open ISSUE-KEY |
| Current sprint | jira sprint list --state active |
| Who am I | jira me |
Skip this section if using CLI backend.
| Intent | MCP Tool |
|--------|----------|
| Search issues | mcp__atlassian__searchJiraIssuesUsingJql |
| View issue | mcp__atlassian__getJiraIssue |
| Create issue | mcp__atlassian__createJiraIssue |
| Update issue | mcp__atlassian__editJiraIssue |
| Get transitions | mcp__atlassian__getTransitionsForJiraIssue |
| Transition | mcp__atlassian__transitionJiraIssue |
| Add comment | mcp__atlassian__addCommentToJiraIssue |
| User lookup | mcp__atlassian__lookupJiraAccountId |
| List projects | mcp__atlassian__getVisibleJiraProjects |
See references/mcp.md for full MCP patterns.
Issue keys follow the pattern: [A-Z]+-[0-9]+ (e.g., PROJ-123, ABC-1).
When a user mentions an issue key in conversation:
jira issue view KEY or jira open KEYmcp__atlassian__jira_get_issue with the keyCreating tickets:
Updating tickets:
Ask yourself:
What's the current state? — Always fetch the issue first. Don't assume status, assignee, or fields are what user thinks they are.
Who else is affected? — Check watchers, linked issues, parent epics. A "simple edit" might notify 10 people.
Is this reversible? — Transitions may have one-way gates. Some workflows require intermediate states. Description edits have no undo.
Do I have the right identifiers? — Issue keys, transition IDs, account IDs. Display names don't work for assignment (MCP).
NEVER transition without fetching current status — Workflows may require intermediate states. "To Do" → "Done" might fail silently if "In Progress" is required first.
NEVER assign using display name (MCP) — Only account IDs work. Always call lookupJiraAccountId first, or assignment silently fails.
NEVER edit description without showing original — Jira has no undo. User must see what they're replacing.
NEVER use --no-input without all required fields (CLI) — Fails silently with cryptic errors. Check project's required fields first.
NEVER assume transition names are universal — "Done", "Closed", "Complete" vary by project. Always get available transitions first.
NEVER bulk-modify without explicit approval — Each ticket change notifies watchers. 10 edits = 10 notification storms.
If neither CLI nor MCP is available, guide the user:
To use Jira, you need one of:
1. **jira CLI** (recommended):
https://github.com/ankitpokhrel/jira-cli
Install: brew install ankitpokhrel/jira-cli/jira-cli
Setup: jira init
2. **Atlassian MCP**:
Configure in your MCP settings with Atlassian credentials.
LOAD reference when:
Do NOT load reference for:
jira issue view KEY)| Task | Load Reference? |
|------|-----------------|
| View single issue | No |
| List my tickets | No |
| Create with description | Yes — CLI needs /tmp pattern |
| Transition issue | Yes — need transition ID workflow |
| JQL search | Yes — for complex queries |
| Link issues | Yes — MCP limitation, need script |
References:
references/commands.mdreferences/mcp.mdtools
No-code automation democratizes workflow building. Zapier and Make (formerly Integromat) let non-developers automate business processes without writing code. But no-code doesn't mean no-complexity - these platforms have their own patterns, pitfalls, and breaking points. This skill covers when to use which platform, how to build reliable automations, and when to graduate to code-based solutions. Key insight: Zapier optimizes for simplicity and integrations (7000+ apps), Make optimizes for power
tools
Use only when the user explicitly asks to stage, commit, push, and open a GitHub pull request in one flow using the GitHub CLI (`gh`).
tools
Workflow automation is the infrastructure that makes AI agents reliable. Without durable execution, a network hiccup during a 10-step payment flow means lost money and angry customers. With it, workflows resume exactly where they left off. This skill covers the platforms (n8n, Temporal, Inngest) and patterns (sequential, parallel, orchestrator-worker) that turn brittle scripts into production-grade automation. Key insight: The platforms make different tradeoffs. n8n optimizes for accessibility
development
Trigger.dev expert for background jobs, AI workflows, and reliable async execution with excellent developer experience and TypeScript-first design. Use when: trigger.dev, trigger dev, background task, ai background job, long running task.