agentleFS
jholhewresjholhewres/devclaw-skills/skills/jira/SKILL.md

jira

Skill4 starsChanged 9 months agoMITView on GitHub

Jira Cloud integration — issues, transitions, worklogs, sprints

  • Sends data out

We split this skill into the rules it gives an agent

2 rules. 0 are common, 0 are distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 55 edited versions we read keep these.

  • 0

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use JQL for powerful searches: project = PROJ AND status = "In Progress"

    line 139
  2. Very specific:

    Use resolution = Unresolved for open issues

    line 142

“Common” is measured: kept by at least 6 in 10 of the 55 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Jira

Manage Jira issues, transitions, and worklogs via the Jira Cloud REST API.

Setup

  1. Check existing credentials:
    vault_get jira_url
    vault_get jira_email
    vault_get jira_api_token
  2. If not configured:Keys are auto-injected as $JIRA_URL, $JIRA_EMAIL, and $JIRA_API_TOKEN.

Authentication

# Create auth header (use in all requests)
AUTH=$(echo -n "$JIRA_EMAIL:$JIRA_API_TOKEN" | base64)

Search Issues (JQL)

# Search by text
curl -s -X POST "$JIRA_URL/rest/api/3/search" \
  -H "Authorization: Basic $AUTH" \
  -H "Content-Type: application/json" \
  -d '{"jql": "text ~ \"timeout\"", "maxResults": 20}' | jq '.issues[] | {key, summary: .fields.summary, status: .fields.status.name}'

# My open issues
curl -s "$JIRA_URL/rest/api/3/search?jql=assignee=currentUser()+AND+resolution=Unresolved&maxResults=50" \
  -H "Authorization: Basic $AUTH" | jq '.issues[] | {key, summary: .fields.summary}'

# By project
curl -s "$JIRA_URL/rest/api/3/search?jql=project=PROJ&maxResults=20" \
  -H "Authorization: Basic $AUTH" | jq '.issues[] | {key, summary}'

Get Issue Details

# View issue
curl -s "$JIRA_URL/rest/api/3/issue/PROJ-123" \
  -H "Authorization: Basic $AUTH" | jq '{
    key,
    summary: .fields.summary,
    description: .fields.description,
    status: .fields.status.name,
    assignee: .fields.assignee.displayName,
    priority: .fields.priority.name
  }'

Create Issue

curl -s -X POST "$JIRA_URL/rest/api/3/issue" \
  -H "Authorization: Basic $AUTH" \
  -H "Content-Type: application/json" \
  -d '{
    "fields": {
      "project": {"key": "PROJ"},
      "summary": "Bug: Login timeout",
      "description": "Users being logged out after 5 minutes",
      "issuetype": {"name": "Bug"},
      "priority": {"name": "High"}
    }
  }' | jq '.key'

Update Issue

# Add comment
curl -s -X POST "$JIRA_URL/rest/api/3/issue/PROJ-123/comment" \
  -H "Authorization: Basic $AUTH" \
  -H "Content-Type: application/json" \
  -d '{"body": "Deployed to staging"}'

# Assign issue
curl -s -X PUT "$JIRA_URL/rest/api/3/issue/PROJ-123" \
  -H "Authorization: Basic $AUTH" \
  -H "Content-Type: application/json" \
  -d '{"fields": {"assignee": {"accountId": "USER_ACCOUNT_ID"}}}'

Transitions (Change Status)

# List available transitions
curl -s "$JIRA_URL/rest/api/3/issue/PROJ-123/transitions" \
  -H "Authorization: Basic $AUTH" | jq '.transitions[] | {id, name}'

# Perform transition
curl -s -X POST "$JIRA_URL/rest/api/3/issue/PROJ-123/transitions" \
  -H "Authorization: Basic $AUTH" \
  -H "Content-Type: application/json" \
  -d '{"transition": {"id": "31"}}'

Worklogs

# Log work
curl -s -X POST "$JIRA_URL/rest/api/3/issue/PROJ-123/worklog" \
  -H "Authorization: Basic $AUTH" \
  -H "Content-Type: application/json" \
  -d '{"timeSpent": "2h 30m", "started": "2025-01-15T09:00:00.000+0000"}'

# Get worklogs
curl -s "$JIRA_URL/rest/api/3/issue/PROJ-123/worklog" \
  -H "Authorization: Basic $AUTH" | jq '.worklogs[] | {author: .author.displayName, timeSpent, started}'

Tips

  • Use JQL for powerful searches: project = PROJ AND status = "In Progress"
  • Transition IDs vary by project - always list first
  • Max results default is 50, max is 100
  • Use resolution = Unresolved for open issues

Triggers

jira, issue, ticket, create issue, jira ticket, sprint, backlog, transition, log work, jql

Download now (ZIP)

  • Other versions60 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 60

    1. meganz/android★ 1.9ksame name
    2. oracle/graalpython★ 1.7ksame name
    3. microsoft/hve-core★ 1.6ksame name
    4. SonarSource/SonarJS★ 1.3ksame name
    5. mongodb/docs★ 779same name
    6. sd0xdev/sd0x-dev-flow★ 192same name
    7. sd0xdev/sd0x-harness★ 192same name
    8. magnus919/agent-skills★ 162same name
    9. kv0906/pm-kit★ 138same name
    10. oprogramadorreal/optimus-claude★ 75same name

    50 more not listed

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • Used alongsideProjects with it also use confluence, usecase and 7 more.

    Other files people use alongside this one.

    Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
    • SpillwaveSolutionsSkill

      confluence

      Manage Confluence documentation with downloads, uploads, conversions, and diagrams. Use when asked to "download Confluence pages", "upload to Confluence", "convert Wiki Markup", "sync markdown to Confluence", "create Confluence page", or "handle Confluence images".

      Also in 9 projects that use this

    • meganzSkill

      usecase

      Create, update, and refactor Android Use Cases using Test-Driven Development (TDD). Enforces writing test cases before production code, follows project use case conventions (@Inject constructor, operator fun invoke, single responsibility), and supports three modes: create, update, and refactor.

      Also in 3 projects that use this

    • kv0906Skill

      meet

      Process meeting notes into structured notes with extracted decisions, blockers, and action items. Use for "/meet project type title" then paste notes.

      Also in 3 projects that use this

    • SentrySkill

      datadog

      Query live Datadog telemetry (logs, metrics, traces, spans, monitors, incidents, dashboards, services, hosts) through Datadog's Pup CLI. Use when users ask to investigate production behavior in Datadog, including searching logs, checking monitor status, inspecting traces or spans, looking up incidents, finding services, or correlating metrics. Do not use it for Sentry issues, repository/source-code work, or ticketing.

      Also in 3 projects that use this

    • montymiSkill

      tech-spec

      Parse and review Technical Specification documents for completeness, consistency, and implementation readiness

      Also in 3 projects that use this

    • kv0906Skill

      preview

      Render vault notes as styled HTML and open in browser. Turn markdown docs, decisions, progress reports into readable previews. Use for "/preview docs/project-a/checkout-flow.md", "/preview progress all", "/preview decide auth-approach", or when user wants to see a doc before sharing.

      Also in 3 projects that use this

  • In this repository83 other files it gives its agents.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.