Agent skill · magnus919
jira-jql
Expert-level skill for Jira Query Language (JQL). Use when the user asks about writing, debugging, optimizing, or understanding JQL queries; needs to filter Jira issues by complex criteria, date ranges, history, or cross-project conditions; wants to build saved filters, dashboard gadgets, or automation rules; or needs guidance on JQL performance, functions, operators, history operators (WAS/CHANGED), relative dates, role-based query patterns, or the JQL REST API.
What it needs
About 9k tokens when loaded.
What this skill does
Jira Query Language (JQL) — Expert Reference JQL is Atlassian's structured query language for searching Jira issues (now called "work items"). Every clause is Field + Operator + Value, chained with keywords. Use this skill when: The user asks for help writing or debugging a JQL query They need to find issues across projects, sprints, versions, components They want to use history operators (WAS, CHANGED) for trend/sprint analysis Performance optimization or saved filter design is needed They're building automation rules, REST API calls, or dashboard gadgets with JQL --- 1. Core Syntax Operators Operator Meaning Example ---------- --------- --------- =, != Equals, not equals assignee = currentUser() >, <, >=, <= Comparison created >= -7d IN, NOT IN Set membership status IN ("To Do", "In Progress") IS, IS NOT Null check — only with EMPTY or NULL assignee IS EMPTY ~, !~ Contains (text search) summary ~ "login" WAS, WAS NOT Historical value assignee WAS "jsmith" WAS IN, WAS NOT IN Historical set fixVersion WAS IN ("Sprint 1", "Sprint 2") CHANGED Field transition status CHANGED FROM "Open" TO "Done" Keywords Keyword Purpose --------- --------- AND Both conditions must be true (binds tighter than OR) OR At least one condition must be true NOT Negates a clause ORDER BY Sorting — add ASC or DESC (default ASC) EMPTY / NULL Used with IS / IS NOT Precedence AND binds tighter than OR. A OR B AND C = A OR (B AND C). Always parenthesize OR groups: --- 2. Available Fields (System) Common indexed fields that JQL accepts: project, issuetype, status, assignee, reporter, creator, priority, resolution, resolutiondate, created, updated, duedate, fixVersion, affectedVersion, component, labels, sprint, votes, watchers, workRatio, parentEpic, issueLinkType, statusCategory Custom fields work by name — quote if they contain spaces: "Story Points". Pro tip: Prefer IDs over names for project/sprint/version when possible — names change, IDs (project = 1001) don't. --- 3. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills magnus919/jira-jql