Automation scripts and Claude AI tooling for analyzing JIRA tickets and generating implementation plans for the dataplane codebase.
This repository contains scripts that use Claude AI with Serena semantic search to:
- Fetch JIRA ticket details
- Analyze codebases semantically
- Generate implementation plans
- Build persistent knowledge over time
dataplane-automation/
βββ scripts/ # Shell scripts for automation
β βββ jira_plan.sh # Static cache approach
β βββ jira_plan_serena.sh # Serena non-interactive
β βββ jira_plan_interactive.sh # Serena interactive (recommended)
β βββ generate-codebase-context.sh # Generate static context
β βββ README_SERENA.md # Full documentation
β βββ INTERACTIVE_GUIDE.md # Interactive workflow guide
β
βββ .claude/ # Claude configuration
β βββ skills/ # Skill templates
β β βββ jira_plan.md # Static cache skill
β β βββ jira_plan_serena.md # Serena skill
β βββ agents/ # Custom agents
β β βββ jira-analyst.json # JIRA analysis agent
β βββ codebase-context.md # Cached codebase context
β
βββ plans/ # Generated implementation plans
βββ plan_*.md # Plans organized by JIRA ticket ID
- Claude Code CLI installed and authenticated
- Serena MCP plugin installed
- Jira skill configured (
/jiracommand available) - Access to the dataplane codebase at
~/dataplane
-
Clone this repo:
git clone <repo-url> ~/dataplane-automation cd ~/dataplane-automation
-
Make scripts executable:
chmod +x scripts/*.sh -
Link scripts to your dataplane repo (optional):
cd ~/dataplane ln -s ~/dataplane-automation/scripts claude-scripts ln -s ~/dataplane-automation/.claude .claude ln -s ~/dataplane-automation/plans plans
cd ~/dataplane
~/dataplane-automation/scripts/jira_plan_interactive.sh ENG-825217This opens an interactive Claude session where you can:
- Guide the investigation
- Ask follow-up questions
- Explore multiple hypotheses
- Build knowledge in real-time
See scripts/INTERACTIVE_GUIDE.md for detailed workflow.
cd ~/dataplane
~/dataplane-automation/scripts/jira_plan_serena.sh ENG-825217Automatically generates a plan using Serena semantic search.
cd ~/dataplane
# One-time: Generate codebase context
~/dataplane-automation/scripts/generate-codebase-context.sh
# Generate plan
~/dataplane-automation/scripts/jira_plan.sh ENG-825217Fast analysis using pre-generated codebase context.
| Feature | Static Cache | Serena Automated | Serena Interactive |
|---|---|---|---|
| Speed | β‘β‘β‘ | β‘β‘ | β‘ |
| Depth | ββ | βββ | βββββ |
| Token Cost | Low | Medium | Medium-High |
| Learning | β | β | β β |
| Exploration | β | π‘ | β β |
| Use Case | Quick/Simple | Standard bugs | Complex/Novel |
find_symbol- Find classes/functions by namesearch_for_pattern- Search for patterns from logsget_symbols_overview- Understand file structurefind_referencing_symbols- Track dependencies
Serena learns and remembers:
architecture/overview- Codebase structurebugs/common_patterns- Known bug patterns- Custom memories you create during analysis
Plans are saved to plans/plan_<JIRA-ID>.md with:
- JIRA Summary - Problem description
- Root Cause Hypothesis - Analysis with evidence
- Affected Areas - Files and line numbers
- Implementation Plan - Step-by-step fix strategy
- Test Strategy - Testing requirements
Example: plans/plan_ENG-825217.md
Scripts expect:
ATLASSIAN_API_TOKEN- Jira API tokenATLASSIAN_EMAIL- Your emailATLASSIAN_SITE- Site name (e.g., "netskope")
The .claude/ directory contains:
- Skills - Prompt templates for different approaches
- Agents - Custom agent configurations
- Context - Cached codebase information
Edit scripts to change:
- Output directory (default:
plans/) - Skill file location
- Claude CLI flags
This is a personal automation repo, but you can:
- Fork for your own projects
- Adapt scripts for your codebase
- Share improvements
- scripts/README_SERENA.md - Complete Serena documentation
- scripts/INTERACTIVE_GUIDE.md - Interactive workflow guide
cd ~/dataplane
~/dataplane-automation/scripts/jira_plan_interactive.sh ENG-825217
# Inside the session:
You: "Search for __skip_object_scan in the logs"
You: "Find where this flag is set"
You: "Show me the inspect_cibuffer function"
You: "Save this finding to memory"
You: "Generate the implementation plan"for ticket in ENG-12345 ENG-12346 ENG-12347; do
~/dataplane-automation/scripts/jira_plan_serena.sh $ticket
donecd ~/dataplane
claude --continue --agent jira-analyst
# Then:
"Continue analyzing ENG-825217 with the new information"Make sure you're in the dataplane directory when running scripts.
chmod +x ~/dataplane-automation/scripts/*.shVerify the eng-skills plugin is installed and /jira works.
Activate the project:
cd ~/dataplane
claude
# Then: "Activate the dataplane project with Serena"Personal automation scripts. Use at your own discretion.
- Claude AI by Anthropic
- Serena MCP for semantic code search
- eng-skills for JIRA integration
Happy Bug Hunting! ππ