claude-buddy
Version:
Your friendly AI development companion for Claude Code - supercharge Claude Code with intelligent workflows and safety features
272 lines (217 loc) • 10.1 kB
Markdown
# Claude Buddy Persona System
A sophisticated persona system that brings domain expertise and intelligent context awareness to Claude Buddy through specialized AI behavior patterns.
## Overview
The persona system automatically activates domain-specific expertise based on context analysis, providing:
- **12 Specialized Personas**: Technical, process, and knowledge experts
- **Intelligent Auto-Activation**: Multi-factor context analysis
- **Manual Override Control**: Flag-based persona selection
- **Collaborative Intelligence**: Multi-persona coordination
- **Adaptive Learning**: Continuous improvement through usage patterns
## Architecture
### Core Components
```
src/personas/
├── config/
│ └── personas-config.json # Persona definitions and activation rules
├── specialists/ # Individual persona implementations
│ ├── architect.md # Systems design specialist
│ ├── frontend.md # UI/UX and accessibility expert
│ ├── backend.md # Server-side and reliability engineer
│ ├── security.md # Threat modeling and security expert
│ ├── performance.md # Optimization specialist
│ ├── analyzer.md # Root cause analysis expert
│ ├── qa.md # Quality assurance specialist
│ ├── refactorer.md # Code quality and technical debt manager
│ ├── devops.md # Infrastructure and deployment expert
│ ├── mentor.md # Knowledge transfer specialist
│ ├── scribe.md # Professional writer and documentarian
│ └── po.md # Product Owner and requirement specialist
├── auto-activation.js # Context detection and scoring engine
├── persona-manager.js # Central coordination and selection logic
├── flag-parser.js # Manual override flag processing
├── learning-engine.js # Adaptive learning and memory system
└── index.js # Main system interface
```
## Persona Specialists
### Technical Specialists
- **🏗️ Architect**: Systems design, scalability, long-term architecture
- **🎨 Frontend**: UI/UX, accessibility, responsive design, performance
- **⚙️ Backend**: APIs, databases, server-side reliability, data integrity
- **🛡️ Security**: Threat modeling, vulnerability assessment, compliance
- **⚡ Performance**: Optimization, bottleneck elimination, efficiency
### Process & Quality Experts
- **🔍 Analyzer**: Root cause analysis, systematic investigation, evidence-based reasoning
- **🧪 QA**: Quality assurance, testing strategies, quality gates
- **🔧 Refactorer**: Code quality, technical debt management, maintainability
- **🚀 DevOps**: Infrastructure, deployment, observability, automation
- **📋 PO**: Product requirements, user stories, strategic planning
### Knowledge & Communication
- **👨🏫 Mentor**: Knowledge transfer, education, skill development
- **✍️ Scribe**: Professional writing, documentation, technical communication
## Auto-Activation Intelligence
### Multi-Factor Scoring
The system uses sophisticated context analysis with weighted scoring:
- **Keyword Matching (30%)**: Domain-specific terminology detection
- **Context Analysis (40%)**: Project structure, command type, complexity assessment
- **File Patterns (20%)**: Technology stack and component analysis
- **User History (10%)**: Learning from previous successful activations
### Activation Examples
```javascript
// High confidence triggers
"security vulnerability" → Security Persona (95%)
"React component design" → Frontend Persona (90%)
"API performance optimization" → Backend + Performance (85% each)
"system architecture review" → Architect + relevant domain experts
```
## Manual Override System
### Flag Syntax
```bash
# Direct persona activation
/buddy:analyze --persona-security --persona-qa
# Collaborative activation
/buddy:improve --persona-refactorer --with-performance --with-security
# Focus-driven activation
/buddy:review --focus security,performance,quality
# Comprehensive activation
/buddy:architect --comprehensive --learn
```
### Available Flags
- `--persona-{name}`: Activate specific persona
- `--with-{name}`: Include as supporting expert
- `--focus {areas}`: Focus on specific domains (comma-separated)
- `--comprehensive`: Activate all relevant personas
- `--single-persona`: Use single persona leadership
- `--no-collaboration`: Disable persona collaboration
- `--learn`: Enable adaptive learning
## Integration Examples
### Enhanced Commands
#### `/buddy:analyze` - Multi-Dimensional Analysis
```markdown
Auto-activates: analyzer + domain-specific personas
Manual control: --persona-security, --focus performance,quality
Collaboration: Security + Backend for API analysis
```
#### `/buddy:improve` - Systematic Enhancement
```markdown
Auto-activates: refactorer + performance + security (context-dependent)
Manual control: --persona-refactorer, --comprehensive
Collaboration: Refactorer leads, others validate improvements
```
#### `/buddy:architect` - System Design
```markdown
Primary: architect persona leads all architectural decisions
Supporting: performance, security, domain experts as needed
Manual control: --with-performance, --with-security
```
### Usage Examples
```bash
# Security-focused code review
/buddy:review --persona-security --persona-qa --focus security
# Performance optimization
/buddy:improve --persona-performance --with-architect --focus performance
# Comprehensive system analysis
/buddy:analyze --comprehensive --learn
# Architecture design with security focus
/buddy:architect --with-security --with-performance --focus scalability,security
# Professional commit with security check
/buddy:commit --persona-scribe --persona-security
```
## Learning & Adaptation
### Context Memory
- **Session Memory**: Current session interactions and patterns
- **Persistent Memory**: Long-term successful patterns and user preferences
- **Project Patterns**: Project-specific persona activation patterns
- **Feedback Integration**: Continuous improvement from user feedback
### Adaptive Features
- **Pattern Recognition**: Learns from successful persona combinations
- **Context Adaptation**: Adjusts activation based on project characteristics
- **User Preference Learning**: Remembers user's preferred personas and workflows
- **Performance Optimization**: Improves activation accuracy over time
## Configuration
### User Preferences (buddy-config.json)
```json
{
"personas": {
"enabled": true,
"auto_activation": {
"enabled": true,
"confidence_threshold": 0.7,
"max_active_personas": 3
},
"preferences": {
"preferred_personas": ["security", "performance"],
"domain_preferences": {
"security": "always",
"performance": "auto"
}
}
}
}
```
### Advanced Configuration
- **Confidence Thresholds**: Customize activation sensitivity
- **Collaboration Patterns**: Define preferred persona combinations
- **Learning Settings**: Control adaptive behavior and memory retention
- **Custom Rules**: Project-specific activation overrides
## API Usage
```javascript
const { personaSystem } = require('./src/personas');
// Initialize system
await personaSystem.initialize();
// Process user input with context
const result = await personaSystem.processInput(
"/buddy:analyze --persona-security",
{
files: ["auth.js", "api.js"],
projectType: "javascript",
command: "analyze"
}
);
// Get generated prompt for Claude
const prompt = result.prompt.systemPrompt;
// Provide feedback for learning
personaSystem.provideFeedback({
personas: ["security", "analyzer"],
rating: 5,
comments: "Excellent security analysis"
});
```
## Benefits
### For Users
- **Expert Guidance**: Domain-specific expertise automatically applied
- **Contextual Intelligence**: Responses tailored to specific development context
- **Learning System**: Improves over time based on usage patterns
- **Flexible Control**: Balance between automation and manual control
### For Development Teams
- **Consistent Quality**: Expert-level analysis across all team members
- **Knowledge Sharing**: Best practices embedded in persona responses
- **Efficiency Gains**: Faster problem-solving through specialized expertise
- **Quality Assurance**: Built-in validation through persona collaboration
### Technical Advantages
- **Scalable Architecture**: Easy to add new personas and capabilities
- **Performance Optimized**: Efficient context detection and persona selection
- **Memory Efficient**: Smart caching and learning data management
- **Extensible Design**: Plugin architecture for custom personas
## Future Enhancements
### Planned Features
- **Custom Personas**: User-defined domain experts
- **Team Personas**: Organization-specific expertise patterns
- **Integration Plugins**: IDE and tool integrations
- **Advanced Analytics**: Detailed usage insights and optimization suggestions
### Research Areas
- **NLP Enhancement**: Improved context understanding through advanced NLP
- **Predictive Activation**: Anticipate persona needs before explicit triggers
- **Cross-Session Learning**: Long-term pattern recognition across sessions
- **Collaborative AI**: Multi-agent coordination improvements
## Contributing
The persona system is designed for extensibility. To add new personas:
1. Create persona definition in `specialists/{name}.md`
2. Add configuration in `personas-config.json`
3. Update auto-activation patterns and keywords
4. Test integration with existing collaboration patterns
## Support
For questions, issues, or feature requests related to the persona system:
- Check the command help: `/buddy:help personas`
- Review system analytics: `personaSystem.getAnalytics()`
- Enable learning mode for better adaptation: `--learn` flag
- Provide feedback to improve activation accuracy