Files
claude-skills-reference/project-management/jira-expert/references/automation-examples.md
Reza Rezvani 83e655a056 fix(pm): extract 6 PM skills from zips into standard directories
PM skills were the only domain packaged as zip files instead of
extracted directories, causing plugin install failures and missing
codex index entries. Extracts all 6 skills, fixes broken symlink,
regenerates index (47 → 53 total), and updates doc counts.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 11:13:34 +01:00

9.4 KiB
Raw Blame History

Jira Automation Examples

Auto-Assignment Rules

Auto-assign by component

Trigger: Issue created Conditions:

  • Component is not EMPTY Actions:
  • Assign issue to component lead

Auto-assign to reporter for feedback

Trigger: Issue transitioned to "Waiting for Feedback" Actions:

  • Assign issue to reporter
  • Add comment: "Please provide additional information"

Round-robin assignment

Trigger: Issue created Conditions:

  • Project = ABC
  • Assignee is EMPTY Actions:
  • Assign to next team member in rotation (use smart value)

Status Sync Rules

Sync subtask status to parent

Trigger: Issue transitioned Conditions:

  • Issue type = Sub-task
  • Transition is to "Done"
  • Parent issue exists
  • All subtasks are Done Actions:
  • Transition parent issue to "Done"

Sync parent to subtasks

Trigger: Issue transitioned Conditions:

  • Issue type has subtasks
  • Transition is to "Cancelled" Actions:
  • For each: Sub-tasks
    • Transition issue to "Cancelled"

Epic progress tracking

Trigger: Issue transitioned Conditions:

  • Epic link is not EMPTY
  • Transition is to "Done" Actions:
  • Add comment to epic: "{{issue.key}} completed"
  • Update epic custom field "Progress"

Notification Rules

Slack notification for high-priority bugs

Trigger: Issue created Conditions:

  • Issue type = Bug
  • Priority IN (Highest, High) Actions:
  • Send Slack message to #engineering:
    🚨 High Priority Bug Created
    {{issue.key}}: {{issue.summary}}
    Reporter: {{issue.reporter.displayName}}
    Priority: {{issue.priority.name}}
    {{issue.url}}
    

Email assignee when mentioned

Trigger: Issue commented Conditions:

  • Comment contains @mention of assignee Actions:
  • Send email to {{issue.assignee.emailAddress}}:
    Subject: You were mentioned in {{issue.key}}
    Body: {{comment.author.displayName}} mentioned you:
    {{comment.body}}
    

SLA breach warning

Trigger: Scheduled - Every hour Conditions:

  • Status != Done
  • SLA time remaining < 2 hours Actions:
  • Send email to {{issue.assignee}}
  • Add comment: "⚠️ SLA expires in <2 hours"
  • Set priority to Highest

Field Automation Rules

Auto-set due date

Trigger: Issue created Conditions:

  • Issue type = Bug
  • Priority = Highest Actions:
  • Set due date to {{now.plusDays(1)}}

Clear assignee when in backlog

Trigger: Issue transitioned Conditions:

  • Transition is to "Backlog"
  • Assignee is not EMPTY Actions:
  • Assign issue to Unassigned
  • Add comment: "Returned to backlog, assignee cleared"

Auto-populate sprint field

Trigger: Issue transitioned Conditions:

  • Transition is to "In Progress"
  • Sprint is EMPTY Actions:
  • Add issue to current sprint

Set fix version based on component

Trigger: Issue created Conditions:

  • Component = "Mobile App" Actions:
  • Set fix version to "Mobile v2.0"

Escalation Rules

Auto-escalate stale issues

Trigger: Scheduled - Daily at 9:00 AM Conditions:

  • Status = "Waiting for Response"
  • Updated < -7 days Actions:
  • Add comment: "@{{issue.reporter}} This issue needs attention"
  • Send email to project lead
  • Add label: "needs-attention"

Escalate overdue critical issues

Trigger: Scheduled - Every hour Conditions:

  • Priority IN (Highest, High)
  • Due date < now()
  • Status != Done Actions:
  • Transition to "Escalated"
  • Assign to project manager
  • Send Slack notification

Auto-close inactive issues

Trigger: Scheduled - Daily at 10:00 AM Conditions:

  • Status = "Waiting for Customer"
  • Updated < -30 days Actions:
  • Transition to "Closed"
  • Add comment: "Auto-closed due to inactivity"
  • Send email to reporter

Sprint Automation Rules

Move incomplete work to next sprint

Trigger: Sprint closed Conditions:

  • Issue status != Done Actions:
  • Add issue to next sprint
  • Add comment: "Moved from {{sprint.name}}"

Auto-remove completed items from active sprint

Trigger: Issue transitioned Conditions:

  • Transition is to "Done"
  • Sprint IN openSprints() Actions:
  • Remove issue from sprint
  • Add comment: "Removed from active sprint (completed)"

Sprint start notification

Trigger: Sprint started Actions:

  • Send Slack message to #team:
    🚀 Sprint {{sprint.name}} Started!
    Goal: {{sprint.goal}}
    Committed: {{sprint.issuesCount}} issues
    

Approval Workflow Rules

Request approval for large stories

Trigger: Issue created Conditions:

  • Issue type = Story
  • Story points >= 13 Actions:
  • Transition to "Pending Approval"
  • Assign to product owner
  • Send email notification

Auto-approve small bugs

Trigger: Issue created Conditions:

  • Issue type = Bug
  • Priority IN (Low, Lowest) Actions:
  • Transition to "Approved"
  • Add comment: "Auto-approved (low-priority bug)"

Require security review

Trigger: Issue transitioned Conditions:

  • Transition is to "Ready for Release"
  • Labels contains "security" Actions:
  • Transition to "Security Review"
  • Assign to security-team
  • Send email to security@company.com

Integration Rules

Create GitHub issue

Trigger: Issue transitioned Conditions:

  • Transition is to "In Progress"
  • Labels contains "needs-tracking" Actions:
  • Send webhook to GitHub API:
    {
      "title": "{{issue.key}}: {{issue.summary}}",
      "body": "{{issue.description}}",
      "assignee": "{{issue.assignee.name}}"
    }
    

Update Confluence page

Trigger: Issue transitioned Conditions:

  • Issue type = Epic
  • Transition is to "Done" Actions:
  • Send webhook to Confluence:
    • Update epic status page
    • Add completion date

Quality & Testing Rules

Require test cases for features

Trigger: Issue transitioned Conditions:

  • Issue type = Story
  • Transition is to "Ready for QA"
  • Custom field "Test Cases" is EMPTY Actions:
  • Transition back to "In Progress"
  • Add comment: " Test cases required before QA"

Auto-create test issue

Trigger: Issue transitioned Conditions:

  • Issue type = Story
  • Transition is to "Ready for QA" Actions:
  • Create linked issue:
    • Type: Test
    • Summary: "Test: {{issue.summary}}"
    • Link type: "tested by"
    • Assignee: QA team

Flag regression bugs

Trigger: Issue created Conditions:

  • Issue type = Bug
  • Affects version is in released versions Actions:
  • Add label: "regression"
  • Set priority to High
  • Add comment: "🚨 Regression in released version"

Documentation Rules

Require documentation for features

Trigger: Issue transitioned Conditions:

  • Issue type = Story
  • Labels contains "customer-facing"
  • Transition is to "Done"
  • Custom field "Documentation Link" is EMPTY Actions:
  • Reopen issue
  • Add comment: "📝 Documentation required for customer-facing feature"

Auto-create doc task

Trigger: Issue transitioned Conditions:

  • Issue type = Epic
  • Transition is to "In Progress" Actions:
  • Create subtask:
    • Type: Task
    • Summary: "Documentation for {{issue.summary}}"
    • Assignee: {{issue.assignee}}

Time Tracking Rules

Log work reminder

Trigger: Issue transitioned Conditions:

  • Transition is to "Done"
  • Time spent is EMPTY Actions:
  • Add comment: "⏱️ Reminder: Please log your time"

Warn on high time spent

Trigger: Work logged Conditions:

  • Time spent > original estimate * 1.5 Actions:
  • Add comment: "⚠️ Time spent exceeds estimate by 50%"
  • Send notification to assignee and project manager

Advanced Conditional Rules

Conditional assignee based on priority

Trigger: Issue created Conditions:

  • Issue type = Bug Actions:
  • If: Priority = Highest
    • Assign to on-call engineer
  • Else if: Priority = High
    • Assign to team lead
  • Else:
    • Assign to next available team member

Multi-step approval flow

Trigger: Issue transitioned Conditions:

  • Transition is to "Request Approval"
  • Budget estimate > $10,000 Actions:
  • If: Budget > $50,000
    • Assign to CFO
    • Send email to executive team
  • Else if: Budget > $10,000
    • Assign to Director
    • Add comment: "Director approval required"
  • Add label: "pending-approval"

Smart Value Examples

Dynamic assignee based on component

{{issue.components.first.lead.accountId}}

Days since created

{{issue.created.diff(now).days}}

Conditional message

{{#if(issue.priority.name == "Highest")}}
  🚨 CRITICAL
{{else}}
   Normal priority
{{/}}

List all subtasks

{{#issue.subtasks}}
  - {{key}}: {{summary}} ({{status.name}})
{{/}}

Calculate completion percentage

{{issue.subtasks.filter(item => item.status.statusCategory.key == "done").size.divide(issue.subtasks.size).multiply(100).round()}}%

Best Practices

  1. Test in sandbox - Always test rules on test project first
  2. Start simple - Begin with basic rules, add complexity incrementally
  3. Use conditions wisely - Narrow scope to reduce unintended triggers
  4. Monitor audit log - Check automation execution history regularly
  5. Limit actions - Keep rules focused, don't chain too many actions
  6. Name clearly - Use descriptive names: "Auto-assign bugs to component lead"
  7. Document rules - Add description explaining purpose and owner
  8. Review regularly - Audit rules quarterly, disable unused ones
  9. Handle errors - Add error handling for webhooks and integrations
  10. Performance - Avoid scheduled rules that query large datasets hourly