Help us improve
Share bugs, ideas, or general feedback.
npx claudepluginhub rhuss/cc-jira --plugin jiraHow this command is triggered β by the user, by Claude, or both
Slash command
/jira:setupThis command is limited to the following tools:
The summary Claude sees in its command listing β used to decide when to auto-load this command
# /jira:setup - Configure JIRA Credentials and Settings Interactive configuration wizard for jira plugin. ## Task Set up JIRA connection credentials and default settings for the jira plugin. ### Step 0: Resolve Plugin Root Extract `PLUGIN_ROOT` from the `<jira-context>` system reminder injected by the UserPromptSubmit hook. Use the value from `<plugin-root>`. Then invoke the `setup-plugin-env` skill to ensure the venv is ready. --- ### Step 1: Check for Existing Configuration Check if configuration already exists: ### Step 2: Interactive Configuration Wizard Use AskUserQuestion...
/configure-jiraConfigures Jira credentials interactively by prompting for base URL, username, and API token; saves securely to config file for enabling issue imports.
/jira-assistant-setupGuides conversational setup of JIRA Assistant Skills: checks prerequisites, installs jira-as package, collects credentials and API token, configures environment variables, validates connection.
/f5-jiraManages unified Jira integration: setup connection, sync issues/files, check status, convert Excel/CSV, handle issues/attachments via subcommands.
/jiraManages Jira tickets: fetch and analyze requirements, add comments, transition status, or search issues with JQL.
/setupGuides interactive setup wizard for Jira Orchestrator v7.5.0: adds Atlassian MCP server, completes OAuth auth, configures Neon PostgreSQL/Redis/Temporal, verifies connections.
/setupInteractively configures MCP servers for Linear, Jira, and GitHub Issues integration, merging settings into project or global config.
Share bugs, ideas, or general feedback.
Interactive configuration wizard for jira plugin.
Set up JIRA connection credentials and default settings for the jira plugin.
Extract PLUGIN_ROOT from the <jira-context> system reminder
injected by the UserPromptSubmit hook. Use the value from <plugin-root>.
Then invoke the setup-plugin-env skill to ensure the venv is ready.
Check if configuration already exists:
CONFIG_FILE="$HOME/.claude/jira.local.md"
if [ -f "$CONFIG_FILE" ]; then
echo "π Found existing configuration at $CONFIG_FILE"
# Check if --reset flag was provided
if [[ "$*" == *"--reset"* ]]; then
echo "π Resetting configuration..."
else
echo ""
echo "Configuration already exists. Options:"
echo "1. Keep existing configuration"
echo "2. Update specific settings"
echo "3. Reset all settings"
echo ""
# Continue to interactive wizard
fi
else
echo "π No existing configuration found. Starting setup wizard..."
fi
Use AskUserQuestion to gather configuration values:
Question 1: JIRA Server URL
jira_urlQuestion 2: Authentication Token
jira_patQuestion 3: Default Username
default_usernameQuestion 4: Default Project
default_projectQuestion 5: Current Sprint (optional)
current_sprint_idBefore saving, test the JIRA connection:
VENV_PYTHON=".claude/jira/venv/bin/python"
echo ""
echo "π Testing JIRA connection..."
# Create temporary config for testing
TEMP_CONFIG=$(mktemp)
cat > "$TEMP_CONFIG" << EOF
---
jira_url: "$jira_url"
jira_pat: "$jira_pat"
---
EOF
# Set environment variables for test
export JIRA_URL="$jira_url"
export JIRA_API_TOKEN="$jira_pat"
# Test connection
TEST_RESULT=$("$VENV_PYTHON" "$PLUGIN_ROOT/scripts/jira_client.py" test_connection 2>&1)
if echo "$TEST_RESULT" | grep -q '"success": true'; then
echo "β
Connection successful!"
# Extract username if auto-detect selected
if [ "$default_username" == "Auto-detect from API" ] || [ -z "$default_username" ]; then
default_username=$(echo "$TEST_RESULT" | grep -o '"user": "[^"]*"' | cut -d'"' -f4)
echo " Detected username: $default_username"
fi
else
echo "β Connection failed!"
echo ""
echo "Error details:"
echo "$TEST_RESULT"
echo ""
echo "Please verify your credentials and try again."
exit 1
fi
# Clean up temp config
rm -f "$TEMP_CONFIG"
Create or update .claude/jira.local.md with YAML frontmatter:
CONFIG_FILE="$HOME/.claude/jira.local.md"
CONFIG_DIR="$(dirname "$CONFIG_FILE")"
# Ensure .claude directory exists
mkdir -p "$CONFIG_DIR"
# Create configuration file
cat > "$CONFIG_FILE" << EOF
---
jira_url: "$jira_url"
jira_pat: "$jira_pat"
default_username: "$default_username"
default_project: "$default_project"
current_sprint_id: "$current_sprint_id"
cache_duration: 14400
default_jql_filters: "assignee = currentUser() AND resolution = Unresolved ORDER BY priority DESC"
project_repo_mappings: {}
---
# jira Plugin Configuration
This file stores your JIRA connection settings and preferences for the jira plugin.
## Credentials
- **JIRA URL:** $jira_url
- **Username:** $default_username
## Defaults
- **Project:** $default_project
- **Sprint:** ${current_sprint_id:-"(not set)"}
## Cache Settings
- **Duration:** 14400 seconds (4 hours)
## Repository Mappings
Use \`/jira:repo-add\`, \`/jira:repo-remove\`, and \`/jira:repo-list\` to manage projectβrepository mappings for code analysis.
## Security Note
This file contains your Personal Access Token. Keep it secure:
- Do not commit to version control
- Do not share with others
- Rotate tokens regularly
EOF
chmod 600 "$CONFIG_FILE"
echo ""
echo "β
Configuration saved to $CONFIG_FILE"
echo " (File permissions set to 600 for security)"
Show configuration summary:
echo ""
echo "π Configuration Summary"
echo "ββββββββββββββββββββββββββββββββββββββββ"
echo "JIRA Server: $jira_url"
echo "Username: $default_username"
echo "Default Project: $default_project"
echo "Current Sprint: ${current_sprint_id:-(not set)}"
echo "Cache Duration: 14400 seconds (4 hours)"
echo "ββββββββββββββββββββββββββββββββββββββββ"
echo ""
echo "β¨ Setup complete! You can now use jira commands:"
echo ""
echo " /jira:my-issues - List your assigned issues"
echo " /jira:sprint - List issues in current sprint"
echo " /jira:summarize KEY - Summarize a JIRA issue"
echo ""
echo "To update settings later, run: /jira:setup --reset"
echo ""
Inform user about environment variable option:
echo "π‘ Alternative: Environment Variables"
echo ""
echo "Instead of storing credentials in the config file, you can use environment variables:"
echo ""
echo " export JIRA_URL=\"$jira_url\""
echo " export JIRA_API_TOKEN=\"your-token-here\""
echo " export JIRA_AUTH_TYPE=\"bearer\""
echo ""
echo "Environment variables override config file settings."
echo ""
If connection test fails:
If file write fails:
.claude/ directoryIf --reset flag is provided:
.claude/jira.local.md.bak/jira:setup again/jira:repo-add to configure).claude/jira.local.md to version control