multi

erne-perf

ERNE — Performance profiling and optimization using the performance-profiler agent

23 stars

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/erne-perf/SKILL.md --create-dirs "https://raw.githubusercontent.com/JubaKitiashvili/everything-react-native-expo/main/.claude/skills/erne-perf/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/erne-perf/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How erne-perf Compares

Feature / Agenterne-perfStandard Approach
Platform SupportmultiLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

ERNE — Performance profiling and optimization using the performance-profiler agent

Which AI agents support this skill?

This skill is compatible with multi.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# /erne-perf — Performance Profiling

You are executing the `/erne-perf` command. Use the **performance-profiler** agent to diagnose and fix performance issues.

## Diagnostic Areas

### 1. Rendering Performance (FPS)
- Check for unnecessary re-renders with React DevTools Profiler
- Identify components re-rendering without prop changes
- Look for missing `React.memo`, `useCallback`, `useMemo`
- Detect inline function/object creation in render

### 2. Time to Interactive (TTI)
- Analyze app startup sequence
- Check for heavy `useEffect` chains on mount
- Identify blocking operations on main thread
- Verify Hermes bytecode compilation

### 3. Bundle Size
- Run `npx react-native-bundle-visualizer`
- Identify large dependencies
- Check for unused imports and dead code
- Verify tree-shaking is working

### 4. Memory
- Check for listener/subscription cleanup in `useEffect`
- Identify large objects retained in closures
- Look for image caching issues
- Detect circular references

### 5. Animations
- Verify all animations use Reanimated (not Animated API)
- Check for JS thread bottlenecks in animation callbacks
- Identify layout thrashing during animations
- Measure actual FPS during animations

### 6. Hermes Engine
- Verify Hermes is enabled
- Check for unsupported JS features
- Profile with Hermes sampling profiler
- Analyze bytecode compilation output

## Output Format
```
## Performance Metrics
| Metric | Current | Target | Status |
|--------|---------|--------|--------|
| JS FPS | 45 | 60 | ⚠️ |
| UI FPS | 58 | 60 | ✅ |
| TTI | 3.2s | <2s | ❌ |
| Bundle | 8.2MB | <5MB | ❌ |

## Critical Issues
[Issues that must be fixed]

## Optimization Opportunities
[Improvements ranked by impact]
```

## Notes
- If agent-device is available, measure actual FPS on device
- Reference `rules/common/performance.md` for optimization patterns
- Profile on real devices, not simulator/emulator