erne-perf
- Repo stars 36
- License MIT
- Author repo everything-react-native-expo
/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
useEffectchains 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.mdfor optimization patterns - Profile on real devices, not simulator/emulator
- Fluxly category
- AI
- Author-declared agents
- No explicit declaration found; this is not inferred or tested compatibility
- Static check
- 94 / 100 · heuristic scan, not runtime safety proof
- Author / version / license
- @JubaKitiashvili · MIT
- Fluxly token estimate
- Lean
- Fluxly setup estimate
- Guided setup
- External API key
- No requirement detected
- Detected OS requirements
- macOS · Linux · Windows
- Runtime requirements
- Unspecified
- Detected file/system behavior
-
- Read-only
- Shell exec
- Detected network behavior
- Local-only
- Install commands
- None (reference only)
Profile is derived at build time from SKILL.md and install vectors. Subject to drift from author intent.
Heads up: 未限定 allowed-tools,默认拥有全部工具权限。
The current SKILL.md does not define a fixed output example. Diagnostic Areas
Check for unnecessary re-renders with React DevTools Profiler Identify components re-rendering without prop changes Look for missing React.memo, useCallback, useMemo
Analyze app startup sequence Check for heavy useEffect chains on mount Identify blocking operations on main thread
Run npx react-native-bundle-visualizer Identify large dependencies Check for unused imports and dead code
Check for listener/subscription cleanup in useEffect Identify large objects retained in closures Look for image caching issues
Verify all animations use Reanimated (not Animated API) Check for JS thread bottlenecks in animation callbacks Identify layout thrashing during animations
# /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
… Author text anchors workflow facts; Fluxly only indexes current sections, terms, files, and commands.
sections -> Diagnostic Areas → 1. Rendering Performance (FPS) → 2. Time to Interactive (TTI) → 3. Bundle Size → 4. Memory → 5. Animations
terms -> performance-profiler · You are executing the /erne-perf command.
files/cmd -> /erne-perf · React.memo · useCallback · useMemo · useEffect · npx react-native-bundle-visualizer · rules/common/performance.md
body sha256 -> 812306b99f9c
Decide Fit First
Design Intent
How To Use It
Boundaries And Review