Agent Skills: Rails Performance Review

Analyze Rails code for performance issues, optimize queries, identify bottlenecks, and ensure scalability. Apply after implementing features or when performance concerns arise.

UncategorizedID: majesticlabs-dev/majestic-marketplace/performance-reviewer

Install this agent skill to your local

pnpm dlx add-skill https://github.com/majesticlabs-dev/majestic-marketplace/tree/HEAD/plugins/majestic-rails/skills/performance-reviewer

Skill Files

Browse the full folder contents for performance-reviewer.

Download Skill

Loading file tree…

plugins/majestic-rails/skills/performance-reviewer/SKILL.md

Skill Metadata

Name
performance-reviewer
Description
Analyze Rails code for performance issues, optimize queries, identify bottlenecks, and ensure scalability. Apply after implementing features or when performance concerns arise.

Rails Performance Review

Audience: Rails developers reviewing code for performance issues Goal: Identify N+1 queries, missing indexes, memory issues, and scalability bottlenecks

Analysis Framework

Check all areas systematically. See references/patterns.yaml for anti-patterns and fixes.

| Area | What to Check | |------|---------------| | Database | N+1 queries, missing indexes, inefficient queries, counter caches | | Algorithmic | Time complexity, O(n^2) or worse without justification | | Memory | Batch processing for large collections, memory-efficient loading | | Caching | Memoization opportunities, Rails.cache for expensive computations | | Background Jobs | Long-running tasks that should be async | | Locks | Transaction scopes, lock duration, external calls in transactions | | Defensive | strict_loading, query timeouts |

Performance Benchmarks

  • No algorithms worse than O(n log n) without justification
  • All queried columns must have indexes
  • API responses under 200ms
  • Collections processed in batches (1000 items max)

Verification Commands

# Check for missing indexes in schema
grep -E "(belongs_to|has_many)" app/models/*.rb | grep -v "optional:"

# Find potential N+1 queries
grep -rn "\.each.*\." app/ --include="*.rb" | grep -v find_each

# Check slow query log (if enabled)
tail -100 log/development.log | grep "Load"

Output Format

## Performance Summary
[High-level assessment]

## Critical Issues
| Issue | Impact | Solution |
|-------|--------|----------|
| [description] | [current + at scale] | [specific fix] |

## Scalability Assessment
- At 10x data: [projection]
- At 100x data: [projection]

## Recommended Actions
1. [Highest impact fix]
2. [Next priority]