Sophisticated Claude Code skills for orchestrated software development with multi-phase workflows, test-driven development, and automated code review.
5-phase orchestrated feature implementation - Discovery → Planning → Execution → Review → Handoff
/implement-v2 PX-12346-phase bug fixing with root cause analysis - Discovery → Root Cause → Solution Design → Execution → Review → Handoff
/bugfix-v2 BUG-456TDD to Jira ticket conversion - Convert Technical Design Documents to Jira CSV with dependencies and automated ticket creation
/tdd-to-jira-tickets /path/to/TDD.mdAutomated PR creation - Analyze commits and create structured GitHub pull requests
"Create a PR for this feature"📖 See individual skill documentation in skills/
# After installation, copy example config (if not already done by bootstrap)
cp ~/.claude/skills/claude-dev-skills-common/config.example.json ~/.claude/config.json
# Edit with your values
vim ~/.claude/config.json
# Validate
python3 ~/.claude/skills/claude-dev-skills-common/validate-config.py ~/.claude/config.json~/.claude/config.json (global, used across all projects)
Namespaced under claude-dev-skills to avoid conflicts with other skills:
{
"claude-dev-skills": {
"version": "1.0",
"jira": {
"customFields": {
"storyPoints": "customfield_10115"
},
"defaultProjectKey": "PROJ"
},
"confluence": {
"spaces": ["ENGINEERING", "PRODUCT"]
},
"commit": {
"scopes": ["api", "service", "data", "infra"],
"types": ["feat", "fix", "docs", "refactor", "test", "chore"]
},
"quality": {
"testCoverage": {
"minimum": 80
}
}
}
}Jira (required for tdd-to-jira-tickets)
customFields.storyPoints- Your Jira story points field ID (find: Admin → Custom Fields → Story Points)defaultProjectKey- Default project when parent not specified
Confluence (used in discovery phases)
spaces- Confluence spaces to search for documentation (order matters)
Commit (used in all workflows)
scopes- Valid commit scopes for your codebasetypes- Valid commit types (Conventional Commits)titleMaxLength- Max chars for commit title/subject (default: 50)bodyMaxLength- Max line length for commit body (default: 72)
Quality (used in TDD workflows)
testCoverage.minimum- Minimum test coverage percentage
Required for tdd-to-jira-tickets skill:
Set these in your shell before running the Python scripts:
export JIRA_BASE_URL=https://yourcompany.atlassian.net
export JIRA_EMAIL=your.email@company.com
export JIRA_TOKEN=your_api_tokenOr add to your ~/.bashrc or ~/.zshrc for persistence.
Get Jira API token: https://id.atlassian.com/manage-profile/security/api-tokens
Required for multi-phase workflows:
The bootstrap script adds this to your shell profile automatically:
export CLAUDE_CODE_ENABLE_TASKS=trueMethod 1: UI
- Jira → Administration → Issues → Custom fields
- Find "Story Points" → gear icon → View details
- URL contains field ID:
customfield_XXXXX
Method 2: API
curl -u email:token https://yourcompany.atlassian.net/rest/api/3/field \
| jq '.[] | select(.name == "Story Points")'# Validate configuration
python3 ~/.claude/skills/claude-dev-skills-common/validate-config.py ~/.claude/config.jsonConfiguration is read at workflow start and used by agents throughout execution:
Phase 1 (Discovery):
confluence.spaces- Prioritized spaces for documentation search
Phase 3/4 (Execution):
commit.scopes- Validates commit scopes are project-specificcommit.types- Validates commit types (defaults to Conventional Commits)commit.titleMaxLength- Enforces max title length (default: 50 chars)commit.bodyMaxLength- Enforces max body line length (default: 72 chars)quality.testCoverage.minimum- Verifies coverage meets threshold before commits
tdd-to-jira-tickets:
jira.customFields.storyPoints- Maps to your Jira instance's story points fieldjira.defaultProjectKey- Fallback project when parent not specified
Agents receive config via system prompts - they don't read files directly. Python scripts load config explicitly.
Use the bootstrap script for automatic setup:
# Clone the repository
git clone https://github.com/yourusername/claude-dev-skills.git
cd claude-dev-skills
# Run bootstrap
./bootstrap.shThe bootstrap script will:
- Check prerequisites - Claude Code CLI, Git, Python, GitHub CLI, Superpowers
- Install skills - Copy all skills to
~/.claude/skills/ - Create configuration - Set up
~/.claude/config.json - Configure environment - Add
CLAUDE_CODE_ENABLE_TASKS=trueto shell profile - Install Python dependencies - For tdd-to-jira-tickets (optional)
- Validate configuration - Check config syntax and completeness
After installation, your ~/.claude/ directory will look like:
~/.claude/
├── config.json # Your configuration
└── skills/
├── bugfix-v2/ # Bug fixing skill
├── implement-v2/ # Feature implementation skill
├── create-pr/ # PR creation skill
├── tdd-to-jira-tickets/ # TDD to Jira conversion skill
└── claude-dev-skills-common/ # Shared files
├── config.example.json
├── config.schema.json
├── validate-config.py
└── workflow-definitions/
├── bugfix-v2/
├── implement-v2/
└── shared/
If you prefer manual setup or the bootstrap script doesn't work:
Required:
- Claude Code CLI v2.1.17+ (for task lists)
- Git with GPG signing configured
- Superpowers skills (for code review)
Optional:
- Python 3.8+ (for tdd-to-jira-tickets)
- Jira API access (for tdd-to-jira-tickets)
- Atlassian MCP (for Jira/Confluence integration)
- GitHub CLI
gh(for create-pr)
- Enable task lists (required):
# Add to ~/.bashrc or ~/.zshrc
export CLAUDE_CODE_ENABLE_TASKS=true
# Reload shell
source ~/.bashrc- Install Superpowers (required for code review):
# Install from Claude Code marketplace or:
git clone https://github.com/obra/superpowers.git ~/.claude/skills/superpowers- Clone this repo and install:
# Clone
git clone https://github.com/yourusername/claude-dev-skills.git /tmp/claude-dev-skills
cd /tmp/claude-dev-skills
# Install skills
cp -r skills/* ~/.claude/skills/
# Configure
cp skills/claude-dev-skills-common/config.example.json ~/.claude/config.json
vim ~/.claude/config.json- For tdd-to-jira-tickets, install Python deps:
cd ~/.claude/skills/tdd-to-jira-tickets
pip3 install -r requirements.txt- Orchestrator - Manages workflow, spawns agents, coordinates phases
- Specialized agents - Handle discovery, planning, execution, review
- Artifacts - Structured markdown files in
~/.claude/work/$TICKET_ID/ - Task lists - Track progress, enable cross-session resumption
~/.claude/work/$TICKET_ID/
├── plans/
│ ├── discovery-summary.md # Phase 1
│ ├── INDEX.md # Phase 2
│ ├── components/*.md # Work packages
│ └── root-cause-analysis.md # Bugfix only
├── review-results.md # Phase 4/5
└── pr-description.md # Phase 5/6
All implementations follow:
SCAFFOLDING (interfaces/types)
↓
MOCKS (generate with language tools)
↓
RED (write failing test)
↓
GREEN (implement to pass)
↓
COMMIT (atomic: tests + impl)
See TDD-CYCLE.md
Go - Full support with mockery integration (LANGUAGE-GO.md)
Others - Adapt TDD principles to your language's testing conventions
Vertical Slicing - One person owns service + API for a feature (context locality)
Interface-First - Define interfaces first → merge → unblocks parallel work
Atomic Commits - Tests + implementation together, GPG signed, individually shippable
Parallel Execution - Components run simultaneously with dependency tracking
Error Recovery - GPG failures, agent failures, cross-session resumption
/implement-v2 PX-1234
# Phase 1: Reviews discovery
# Phase 2: Approves plan
# Phase 3: Monitors parallel execution
# Phase 4: Reviews integration
# Phase 5: Creates PR/bugfix-v2 BUG-456
# Phase 1: Reviews discovery
# Phase 2: Approves root cause analysis
# Phase 3: Approves solution design
# Phase 4: Monitors execution
# Phase 5: Validates fix
# Phase 6: Creates PR# Generate CSV
/tdd-to-jira-tickets TDD.md
# Review CSV, then create tickets
export JIRA_EMAIL="..." JIRA_TOKEN="..."
python create_jira_tickets_and_links.py milestone1.csv# Use task list ID from previous session
CLAUDE_CODE_TASK_LIST_ID=<id> claude
# Check current phase
TaskList"Claude Code CLI is required"
- Install Claude Code: https://claude.com/claude-code
"Superpowers skills not found"
- Install from Claude Code marketplace or:
git clone https://github.com/obra/superpowers.git ~/.claude/skills/superpowers
"Configuration validation failed"
- Check error messages and fix your config:
vim ~/.claude/config.json python3 ~/.claude/skills/claude-dev-skills-common/validate-config.py
"Python dependencies failed to install"
# macOS
brew install python3
# Ubuntu/Debian
sudo apt install python3 python3-pip
# Then retry
pip3 install -r ~/.claude/skills/tdd-to-jira-tickets/requirements.txt"gh: command not found"
- Install GitHub CLI (optional, for create-pr skill):
# macOS brew install gh # Ubuntu/Debian sudo apt install gh # Then authenticate gh auth login
GPG signing failed
- Configure:
git config --global user.signingkey <key-id> - Enable:
git config --global commit.gpgsign true - Start agent:
gpg-agent
Discovery artifact missing
- Check agent output for errors
- Retry:
retry discovery
Jira ticket creation failed
- Verify
JIRA_EMAIL,JIRA_TOKEN, andJIRA_BASE_URLare set in your environment - Check API token hasn't expired
- Ensure parent Epic exists
Invalid commit scope
- Add scope to
~/.claude/config.jsonundercommit.scopes
Coverage below minimum
- Adjust
quality.testCoverage.minimumin~/.claude/config.json - Or increase test coverage
skills/
├── bugfix-v2/ # Bug fixing skill
│ ├── README.md
│ └── SKILL.md
├── implement-v2/ # Feature implementation skill
│ ├── README.md
│ └── SKILL.md
├── create-pr/ # PR creation skill
│ ├── README.md
│ └── SKILL.md
├── tdd-to-jira-tickets/ # TDD to Jira conversion skill
│ ├── README.md
│ ├── SKILL.md
│ ├── requirements.txt
│ └── *.py
└── claude-dev-skills-common/ # Shared files
├── config.example.json
├── config.schema.json
├── validate-config.py
└── workflow-definitions/
├── implement-v2/ # 5 phase files
├── bugfix-v2/ # 6 phase files
└── shared/
├── ARTIFACTS.md
├── TDD-CYCLE.md
├── COMMIT-PROTOCOL.md
├── ERROR-RECOVERY.md
├── MCP-USAGE.md
└── LANGUAGE-GO.md
To completely remove claude-dev-skills:
# Remove skills
rm -rf ~/.claude/skills/bugfix-v2
rm -rf ~/.claude/skills/implement-v2
rm -rf ~/.claude/skills/create-pr
rm -rf ~/.claude/skills/tdd-to-jira-tickets
rm -rf ~/.claude/skills/claude-dev-skills-common
# Remove configuration (optional)
rm ~/.claude/config.json
# Remove environment variables from shell profile (optional)
# Edit your ~/.bashrc or ~/.zshrc and remove:
# export CLAUDE_CODE_ENABLE_TASKS=true
# export JIRA_BASE_URL=...
# export JIRA_EMAIL=...
# export JIRA_TOKEN=...Created for Claude Code by Anthropic.
Requires Superpowers by @obra.