Get the FREE Ultimate OpenClaw Setup Guide →

jira

Scanned
npx machina-cli add skill softaworks/agent-toolkit/jira --openclaw
Files (1)
SKILL.md
6.0 KB

Jira

Natural language interaction with Jira. Supports multiple backends.

Backend Detection

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
BackendWhen to UseReference
CLIjira command availablereferences/commands.md
MCPAtlassian MCP tools availablereferences/mcp.md
NoneNeither availableGuide to install CLI

Quick Reference (CLI)

Skip this section if using MCP backend.

IntentCommand
View issuejira issue view ISSUE-KEY
List my issuesjira issue list -a$(jira me)
My in-progressjira issue list -a$(jira me) -s"In Progress"
Create issuejira issue create -tType -s"Summary" -b"Description"
Move/transitionjira issue move ISSUE-KEY "State"
Assign to mejira issue assign ISSUE-KEY $(jira me)
Unassignjira issue assign ISSUE-KEY x
Add commentjira issue comment add ISSUE-KEY -b"Comment text"
Open in browserjira open ISSUE-KEY
Current sprintjira sprint list --state active
Who am Ijira me

Quick Reference (MCP)

Skip this section if using CLI backend.

IntentMCP Tool
Search issuesmcp__atlassian__searchJiraIssuesUsingJql
View issuemcp__atlassian__getJiraIssue
Create issuemcp__atlassian__createJiraIssue
Update issuemcp__atlassian__editJiraIssue
Get transitionsmcp__atlassian__getTransitionsForJiraIssue
Transitionmcp__atlassian__transitionJiraIssue
Add commentmcp__atlassian__addCommentToJiraIssue
User lookupmcp__atlassian__lookupJiraAccountId
List projectsmcp__atlassian__getVisibleJiraProjects

See references/mcp.md for full MCP patterns.


Triggers

  • "create a jira ticket"
  • "show me PROJ-123"
  • "list my tickets"
  • "move ticket to done"
  • "what's in the current sprint"

Issue Key Detection

Issue keys follow the pattern: [A-Z]+-[0-9]+ (e.g., PROJ-123, ABC-1).

When a user mentions an issue key in conversation:

  • CLI: jira issue view KEY or jira open KEY
  • MCP: mcp__atlassian__jira_get_issue with the key

Workflow

Creating tickets:

  1. Research context if user references code/tickets/PRs
  2. Draft ticket content
  3. Review with user
  4. Create using appropriate backend

Updating tickets:

  1. Fetch issue details first
  2. Check status (careful with in-progress tickets)
  3. Show current vs proposed changes
  4. Get approval before updating
  5. Add comment explaining changes

Before Any Operation

Ask yourself:

  1. What's the current state? — Always fetch the issue first. Don't assume status, assignee, or fields are what user thinks they are.

  2. Who else is affected? — Check watchers, linked issues, parent epics. A "simple edit" might notify 10 people.

  3. Is this reversible? — Transitions may have one-way gates. Some workflows require intermediate states. Description edits have no undo.

  4. Do I have the right identifiers? — Issue keys, transition IDs, account IDs. Display names don't work for assignment (MCP).


NEVER

  • 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.


Safety

  • Always show the command/tool call before running it
  • Always get approval before modifying tickets
  • Preserve original information when editing
  • Verify updates after applying
  • Always surface authentication issues clearly so the user can resolve them

No Backend Available

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.

Deep Dive

LOAD reference when:

  • Creating issues with complex fields or multi-line content
  • Building JQL queries beyond simple filters
  • Troubleshooting errors or authentication issues
  • Working with transitions, linking, or sprints

Do NOT load reference for:

  • Simple view/list operations (Quick Reference above is sufficient)
  • Basic status checks (jira issue view KEY)
  • Opening issues in browser
TaskLoad Reference?
View single issueNo
List my ticketsNo
Create with descriptionYes — CLI needs /tmp pattern
Transition issueYes — need transition ID workflow
JQL searchYes — for complex queries
Link issuesYes — MCP limitation, need script

References:

  • CLI patterns: references/commands.md
  • MCP patterns: references/mcp.md

Source

git clone https://github.com/softaworks/agent-toolkit/blob/main/skills/jira/SKILL.mdView on GitHub

Overview

Enables natural language interaction with Jira backends to view, create, update issues, and check sprint/backlog status. It supports both CLI and MCP backends and automatically selects the available path based on your environment, turning conversation into concrete Jira actions.

How This Skill Works

It first detects the available backend (CLI, then MCP). Based on the detected backend and user intent, it translates natural language into Jira commands or MCP calls (e.g., issue view/list/create/move or similar transitions) using issue keys like PROJ-123 to target tickets.

When to Use It

  • You mention a Jira issue key like PROJ-123 and want its details or to view it.
  • You want to list your tickets or those assigned to you.
  • You need to create a new Jira issue with a summary and description.
  • You want to move an issue to a different status or apply a transition.
  • You’re asking for the current sprint or backlog status.

Quick Start

  1. Step 1: The agent detects which Jira backend is available (CLI first, then MCP).
  2. Step 2: User asks a Jira-related task; the agent maps it to the appropriate backend command.
  3. Step 3: The agent executes the action, fetches results, and presents a readable summary.

Best Practices

  • Always confirm the exact issue key and target project before making changes.
  • Fetch the current issue status and fields before applying updates or transitions.
  • Prefer the CLI backend when available; switch to MCP if CLI is missing.
  • Provide a clear, descriptive summary and description when creating issues.
  • Verify results with the user after actions and handle errors gracefully.

Example Use Cases

  • Show me PROJ-123 to view its details.
  • List my tickets assigned to me.
  • Create a new issue in PROJ with summary: Login fails and description: Users cannot log in from the mobile app.
  • Move PROJ-123 to Done.
  • What’s in the current sprint?

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers