jira-lifecycle-management
Automate JIRA issue transitions, assignment updates, and release management through the CLI.
Install
mkdir -p .claude/skills/jira-lifecycle-management && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/11686" && unzip -o skill.zip -d .claude/skills/jira-lifecycle-management && rm skill.zipInstalls to .claude/skills/jira-lifecycle-management
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Manage issue lifecycle through workflow transitions and status changes. Control who does what and when via assignments, versions, and components.Key capabilities
- →Transition JIRA issues between statuses
- →Assign or unassign JIRA issues to users
- →Resolve or reopen JIRA issues with specific resolutions
- →Create, list, release, or archive project versions
- →Create, list, update, or delete project components
- →View available workflow transitions for an issue
How it works
The skill uses the `jira-as` CLI to interact with JIRA, allowing users to manage issue workflows, assignments, and project versions or components through specific commands.
Inputs & outputs
When to use jira-lifecycle-management
- →Transition issue to resolved
- →Assign JIRA task to user
- →Create new project version
- →Manage release status
About this skill
jira-lifecycle
Workflow and lifecycle management for JIRA issues.
Risk Levels
| Operation | Risk | Notes |
|---|---|---|
| List transitions | - | Read-only |
| List versions/components | - | Read-only |
| Transition issue | ! | Can transition back |
| Assign/unassign | ! | Can reassign |
| Resolve issue | ! | Can reopen |
| Reopen issue | ! | Can resolve again |
| Create version/component | - | Easily reversible |
| Update version/component | ! | Can be undone |
| Release version | ! | Can unrelease |
| Archive version | ! | Can unarchive |
| Delete component | !! | Issues lose component association |
Risk Legend: - Safe, read-only | ! Caution, modifiable | !! Warning, destructive but recoverable | !!! Danger, irreversible
Quick Discovery
Use this skill to: Drive issues through workflows, assign ownership, manage releases and components.
Not for: Creating/editing issue content (use jira-issue) or finding issues (use jira-search).
Also see: Workflow Guide | JSM Workflows | Best Practices
What this skill does
IMPORTANT: Always use the jira-as CLI. Never run Python scripts directly.
7 command categories for complete lifecycle management:
| Category | Purpose | Example |
|---|---|---|
| Transitions | Move issues between statuses | jira-as lifecycle transition PROJ-123 --to "In Progress" |
| Assignments | Control ownership | jira-as lifecycle assign PROJ-123 --self or --user email |
| Resolution | Mark issues complete | jira-as lifecycle resolve PROJ-123 --resolution Fixed |
| Reopen | Restore resolved issues | jira-as lifecycle reopen PROJ-123 |
| Versions | Plan and track releases | jira-as lifecycle version create PROJ --name "v2.0.0" |
| Components | Organize by subsystem | jira-as lifecycle component create PROJ --name "API" |
| Discovery | View available options | jira-as lifecycle transitions PROJ-123 |
All commands support --help for full option documentation.
Available Commands
Workflow Transitions
jira-as lifecycle transitions PROJ-123 # List available transitions
jira-as lifecycle transitions PROJ-123 --output json # Output as JSON
jira-as lifecycle transition PROJ-123 --to "In Progress" # Transition by status name
jira-as lifecycle transition PROJ-123 --id 31 # Transition by ID
jira-as lifecycle transition PROJ-123 --to Done --resolution Fixed # With resolution
jira-as lifecycle transition PROJ-123 --to "In Progress" --comment "Starting work" # With comment
jira-as lifecycle transition PROJ-123 --to "In Progress" --sprint 42 # Move to sprint after transition
jira-as lifecycle transition PROJ-123 --to Done --dry-run # Preview without executing
jira-as lifecycle transition PROJ-123 --to Done --fields '{"customfield_10001": "value"}' # With custom fields
Assignments
jira-as lifecycle assign PROJ-123 --self # Assign to yourself
jira-as lifecycle assign PROJ-123 --user [email protected] # Assign to user
jira-as lifecycle assign PROJ-123 --unassign # Remove assignee
Resolution
jira-as lifecycle resolve PROJ-123 # Resolve issue (may require --resolution)
jira-as lifecycle resolve PROJ-123 --resolution Fixed # Resolve with specific resolution
jira-as lifecycle resolve PROJ-123 --resolution Fixed --comment "Fixed in v1.2.0" # With comment
jira-as lifecycle reopen PROJ-123 # Reopen issue
jira-as lifecycle reopen PROJ-123 --comment "Reopening for additional work" # Reopen with comment
Version Management
jira-as lifecycle version list PROJ # List versions
jira-as lifecycle version list PROJ --output json # Output as JSON
jira-as lifecycle version list PROJ --unreleased # Show only unreleased versions
jira-as lifecycle version list PROJ --archived # Include archived versions
jira-as lifecycle version create PROJ --name "v2.0.0" # Create version
jira-as lifecycle version create PROJ --name "v2.0.0" --description "Major release" # With description
jira-as lifecycle version create PROJ --name "v2.0.0" --start-date 2026-01-01 --release-date 2026-03-01
jira-as lifecycle version create PROJ --name "v2.0.0" --released --dry-run # Preview creation
jira-as lifecycle version create PROJ --name "v2.0.0" --archived # Create as archived
jira-as lifecycle version release PROJ "v1.0.0" # Release a version
jira-as lifecycle version release PROJ "v1.0.0" --move-unfixed "v1.1.0" # Move unfixed issues to another version
jira-as lifecycle version archive PROJ "v0.9.0" # Archive a version
Component Management
Note: Component update and delete operations require the component ID (not name). Use jira-as lifecycle component list PROJ to find component IDs. The --lead option requires an account ID, not email.
jira-as lifecycle component list PROJ # List components (shows IDs)
jira-as lifecycle component list PROJ --output json # Output as JSON
jira-as lifecycle component create PROJ --name "API" # Create component
jira-as lifecycle component create PROJ --name "API" --description "REST API layer" # With description
jira-as lifecycle component create PROJ --name "Backend" --lead 5b10a2844c20165700ede21g
jira-as lifecycle component create PROJ --name "Frontend" --assignee-type COMPONENT_LEAD
jira-as lifecycle component update --id 10000 --name "New Name" # Update by ID
jira-as lifecycle component update --id 10000 --description "Updated description" # Update description
jira-as lifecycle component update --id 10000 --lead 5b10a2844c20165700ede22h
jira-as lifecycle component update --id 10000 --assignee-type PROJECT_LEAD --dry-run
jira-as lifecycle component delete --id 10000 # Delete with confirmation prompt
jira-as lifecycle component delete --id 10000 --yes # Delete without confirmation
jira-as lifecycle component delete --id 10000 --move-to 10001 # Move issues before deletion
jira-as lifecycle component delete --id 10000 --dry-run # Preview deletion
Common Options
All commands support these options:
| Option | Description |
|---|---|
--help | Show help message and exit |
Output Formats by Command
| Command | Supported Formats |
|---|---|
transitions | text, json |
transition | text, json |
assign | text, json |
resolve | text, json |
reopen | text, json |
version list | table, json |
version create/release/archive | text, json |
component list | table, json |
component create/update/delete | text, json |
Dry Run Support
Most modification commands support --dry-run to preview changes without executing:
jira-as lifecycle transition PROJ-123 --to Done --dry-run
jira-as lifecycle assign PROJ-123 --self --dry-run
jira-as lifecycle version create PROJ --name "v1.0.0" --dry-run
jira-as lifecycle component create PROJ --name "API" --dry-run
jira-as lifecycle component update --id 10000 --name "New Name" --dry-run
jira-as lifecycle component delete --id 10000 --dry-run
Exit Codes
| Code | Meaning |
|---|---|
| 0 | Success - operation completed successfully |
| 1 | Error - operation failed (check stderr for details) |
Examples
See examples/LIFECYCLE_EXAMPLES.md for comprehensive copy-paste examples.
Workflow Compatibility
Works with standard JIRA workflows, custom workflows, JIRA Service Management workflows, and simplified workflows. Scripts automatically adapt to different configurations.
Troubleshooting
See references/TROUBLESHOOTING.md for common issues and solutions.
Quick fixes:
- "No transition found" - Run
jira-as lifecycle transitions ISSUE-KEYto see available transitions - "Transition requires fields" - Use
--fields '{"field": "value"}'option - "User not found" - Verify user email and project permissions
Configuration
Requires JIRA credentials via environment variables (JIRA_SITE_URL, JIRA_EMAIL, JIRA_API_TOKEN).
Best Practices
See docs/BEST_PRACTICES.md for:
- Workflow Design - For JIRA admins designing workflows
- Daily Operations - For developers and team leads
Workflow Patterns
Pre-built patterns in references/patterns/:
- standard_workflow.md - Simple 3-status workflow
- software_dev_workflow.md - Development with review/QA
- jsm_request_workflow.md - Service desk requests
- incident_workflow.md - Incident management
Related skills
- jira-issue: For creating and updating issues
- jira-search: For finding issues to transition
- jira-collaborate: For adding comments during transitions
- jira-agile: For sprint management and Agile workflows
When not to use it
- →For creating or editing issue content
- →For finding issues
- →For simple Zapier/Make automations
Prerequisites
Limitations
- →Component update and delete operations require the component ID, not name
- →The `--lead` option for components requires an account ID, not email
How it compares
This skill provides a command-line interface for JIRA lifecycle management, enabling scripted or automated control over issue states and project elements, unlike manual UI interaction.
Compared to similar skills
jira-lifecycle-management side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| jira-lifecycle-management (this skill) | 0 | 6mo | Review | Intermediate |
| task-master | 22 | 6mo | Review | Intermediate |
| spec-kit-workflow | 11 | 8mo | No flags | Intermediate |
| product-manager-toolkit | 32 | 7mo | Review | Beginner |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
task-master
sfc-gh-dflippo
AI-powered task management for structured, specification-driven development. Use this skill when you need to manage complex projects with PRDs, break down tasks into subtasks, track dependencies, and maintain organized development workflows across features and branches.
spec-kit-workflow
jmanhype
Guides specification-driven development workflow. Automatically invoked when discussing new features, specifications, technical planning, or implementation tasks. Ensures proper workflow phases (specify → clarify → plan → checklist → tasks → analyze → implement).
product-manager-toolkit
davila7
Comprehensive toolkit for product managers including RICE prioritization, customer interview analysis, PRD templates, discovery frameworks, and go-to-market strategies. Use for feature prioritization, user research synthesis, requirement documentation, and product strategy development.
agile-product-owner
davila7
Agile product ownership toolkit for Senior Product Owner including INVEST-compliant user story generation, sprint planning, backlog management, and velocity tracking. Use for story writing, sprint planning, stakeholder communication, and agile ceremonies.
writing-plans
obra
Use when you have a spec or requirements for a multi-step task, before touching code
feature-design-assistant
davila7
Turn ideas into fully formed designs and specs through natural collaborative dialogue. Use when planning new features, designing architecture, or making significant changes to the codebase.