ericfisherdev avatar

backlog-summary

This skill MUST be used when the user asks to "get backlog", "list backlog issues", "show backlog",

by ericfisherdev|Open Source

Jira Backlog Summary

Fetch a token-efficient summary of issues from Jira with sprint-aware caching. Returns only essential fields: issue key, status, labels, and summary.

Quick Start

Use the Python script at scripts/fetch_backlog.py:

# Get all issues in project (default 50)
python scripts/fetch_backlog.py EFT

# Get only backlog issues (not in any sprint)
python scripts/fetch_backlog.py EFT --scope backlog

# Get active sprint issues
python scripts/fetch_backlog.py EFT --scope active-sprint

# Get issues from past/closed sprints
python scripts/fetch_backlog.py EFT --scope past-sprints

Scope Options

ScopeDescriptionCache TTL
all (default)All issuesAuto-categorized
backlogIssues not in any sprint12 hours
active-sprintIssues in current sprint1 hour
past-sprintsIssues from closed sprints24 hours

Filter Examples

Scope + Label Filters

# Backlog Vue issues
python scripts/fetch_backlog.py EFT --scope backlog --label vue

# Active sprint excluding legacy
python scripts/fetch_backlog.py EFT --scope active-sprint --exclude-label legacy

# Past sprint issues that are done
python scripts/fetch_backlog.py EFT --scope past-sprints --status Done

Status Filters

# Only open backlog issues
python scripts/fetch_backlog.py EFT --scope backlog --status Open --status "To Do"

# Active sprint, not done
python scripts/fetch_backlog.py EFT --scope active-sprint --exclude-status Done

Output Formats

Compact (default)

Most token-efficient. One line per issue:

EFT-123|Open|vue,frontend|Implement dark mode toggle
EFT-124|In Progress|-|Fix login validation

Format: KEY|status|labels|summary (labels - if none)

JSON

python scripts/fetch_backlog.py EFT --format json

Returns compact JSON array for programmatic use.

Text

python scripts/fetch_backlog.py EFT --format text

Multi-line human-readable format.

Sprint-Aware Caching

Issues are cached in three categories with different TTLs:

CategoryTTLUse Case
active_sprint1 hourIssues change frequently during active sprints
backlog12 hoursBacklog items change less frequently
past_sprints24 hoursClosed sprint issues rarely change

Cache Management

# View cache status
python shared/jira_cache.py info

# Clear all issue cache
python shared/jira_cache.py clear-issues

# Clear only backlog cache
python shared/jira_cache.py clear-issues --category backlog

# Clear only active sprint cache for project
python shared/jira_cache.py clear-issues -p EFT --category active_sprint

# Move issues to past_sprints when sprint closes
python shared/jira_cache.py close-sprint -p EFT --sprint-id 123

Discovery Commands

List available filter values:

# List sprints for project
python scripts/fetch_backlog.py EFT --list-sprints

# List statuses for project
python scripts/fetch_backlog.py EFT --list-statuses

# List available labels
python scripts/fetch_backlog.py EFT --list-labels

Environment Setup

Requires three environment variables:

  • JIRA_BASE_URL - e.g., https://yoursite.atlassian.net
  • JIRA_EMAIL - Your Jira account email
  • JIRA_API_TOKEN - API token from Atlassian account settings

Token Efficiency

This skill is optimized for minimal token usage:

  • Only fetches: key, status, labels, summary (no description, comments, etc.)
  • Compact output uses pipe delimiters
  • Default limit of 50 issues prevents oversized responses
  • Sprint-aware caching reduces API calls

For detailed single-issue information, use the jira-issue skill instead.

Reference

For complete filter options and JQL examples, see references/options-reference.md.