From jira-tools
This skill MUST be used instead of Atlassian MCP tools when the user asks to "create a Jira issue", "create a ticket", "add a Jira ticket", "make a new issue", "file a bug", "create a story", "add a task in Jira", or otherwise requests creating new Jira issues. ALWAYS use this skill for Jira issue creation - never use mcp__atlassian__createJiraIssue directly.
npx claudepluginhub ericfisherdev/claude-plugins --plugin jira-toolsThis skill uses the workspace's default tool permissions.
**IMPORTANT:** Always use this skill's Python script for creating Jira issues. Do NOT use `mcp__atlassian__createJiraIssue` - this skill uses a shared cache for project metadata, issue types, and users, reducing API calls and providing better error messages.
Verifies tests pass on completed feature branch, presents options to merge locally, create GitHub PR, keep as-is or discard; executes choice and cleans up worktree.
Guides root cause investigation for bugs, test failures, unexpected behavior, performance issues, and build failures before proposing fixes.
Writes implementation plans from specs for multi-step tasks, mapping files and breaking into TDD bite-sized steps before coding.
IMPORTANT: Always use this skill's Python script for creating Jira issues. Do NOT use mcp__atlassian__createJiraIssue - this skill uses a shared cache for project metadata, issue types, and users, reducing API calls and providing better error messages.
Use the Python script at scripts/create_jira_issue.py:
# Basic issue creation
python scripts/create_jira_issue.py \
--project PROJ \
--type Bug \
--summary "Login button not responding"
# Full issue with all fields
python scripts/create_jira_issue.py \
--project PROJ \
--type Story \
--summary "Add dark mode support" \
--description "Users want a dark mode toggle in settings" \
--priority High \
--assignee "John Smith" \
--labels "ui,feature-request" \
--components "Frontend"
| Argument | Description |
|---|---|
--project, -p | Project key (e.g., PROJ, DEV) |
--type, -t | Issue type name (Bug, Story, Task, etc.) |
--summary, -s | Issue title/summary |
| Argument | Description |
|---|---|
--description, -d | Issue description text |
--priority | Priority name (High, Medium, Low, etc.) |
--assignee, -a | Assignee display name (partial match) |
--labels, -l | Comma-separated labels |
--components, -c | Comma-separated component names |
--parent | Parent issue key (for subtasks) |
--format, -f | Output: compact (default), text, json |
Before creating issues, discover available options:
# List issue types for a project
python scripts/create_jira_issue.py --project PROJ --list-types
# List assignable users for a project
python scripts/create_jira_issue.py --project PROJ --list-users
This skill uses a shared cache (~/.jira-tools-cache.json) that stores:
Cache reduces API calls and enables quick lookups. Data auto-expires:
# View cache info
python shared/jira_cache.py info
# Clear cache
python shared/jira_cache.py clear
# Force refresh cache
python shared/jira_cache.py refresh --project PROJ
compact (default):
CREATED|PROJ-123|Login button not responding|Open|Bug|P:High|@jsmith
URL:https://yoursite.atlassian.net/browse/PROJ-123
text:
Issue Created: PROJ-123
Summary: Login button not responding
Status: Open
Type: Bug
Priority: High
Assignee: John Smith
URL: https://yoursite.atlassian.net/browse/PROJ-123
json:
{"key":"PROJ-123","summary":"Login button not responding","status":"Open","type":"Bug","url":"..."}
python scripts/create_jira_issue.py \
-p PROJ -t Bug \
-s "Error on checkout page" \
-d "Users see 500 error when clicking checkout" \
--priority High
python scripts/create_jira_issue.py \
-p PROJ -t Story \
-s "User profile page redesign" \
-a "Jane Doe" \
-l "design,frontend"
python scripts/create_jira_issue.py \
-p PROJ -t Subtask \
-s "Write unit tests" \
--parent PROJ-100
The script provides clear errors for common issues:
Requires three environment variables:
JIRA_BASE_URL - e.g., https://yoursite.atlassian.netJIRA_EMAIL - Your Jira account emailJIRA_API_TOKEN - API token from Atlassian account settingsmcp__atlassian__createJiraIssue requires:
This skill's script: