cli-tool/components/skills/development/performance-profiling/SKILL.md
Performance profiling principles. Measurement, analysis, and optimization techniques.
npx skillsauth add davila7/claude-code-templates performance-profilingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Measure, analyze, optimize - in that order.
Execute these for automated profiling:
| Script | Purpose | Usage |
|--------|---------|-------|
| scripts/lighthouse_audit.py | Lighthouse performance audit | python scripts/lighthouse_audit.py https://example.com |
| Metric | Good | Poor | Measures | |--------|------|------|----------| | LCP | < 2.5s | > 4.0s | Loading | | INP | < 200ms | > 500ms | Interactivity | | CLS | < 0.1 | > 0.25 | Stability |
| Stage | Tool | |-------|------| | Development | Local Lighthouse | | CI/CD | Lighthouse CI | | Production | RUM (Real User Monitoring) |
1. BASELINE → Measure current state
2. IDENTIFY → Find the bottleneck
3. FIX → Make targeted change
4. VALIDATE → Confirm improvement
| Problem | Tool | |---------|------| | Page load | Lighthouse | | Bundle size | Bundle analyzer | | Runtime | DevTools Performance | | Memory | DevTools Memory | | Network | DevTools Network |
| Issue | Indicator | |-------|-----------| | Large dependencies | Top of bundle | | Duplicate code | Multiple chunks | | Unused code | Low coverage | | Missing splits | Single large chunk |
| Finding | Action | |---------|--------| | Big library | Import specific modules | | Duplicate deps | Dedupe, update versions | | Route in main | Code split | | Unused exports | Tree shake |
| Pattern | Meaning | |---------|---------| | Long tasks (>50ms) | UI blocking | | Many small tasks | Possible batching opportunity | | Layout/paint | Rendering bottleneck | | Script | JavaScript execution |
| Pattern | Meaning | |---------|---------| | Growing heap | Possible leak | | Large retained | Check references | | Detached DOM | Not cleaned up |
| Symptom | Likely Cause | |---------|--------------| | Slow initial load | Large JS, render blocking | | Slow interactions | Heavy event handlers | | Jank during scroll | Layout thrashing | | Growing memory | Leaks, retained refs |
| Priority | Action | Impact | |----------|--------|--------| | 1 | Enable compression | High | | 2 | Lazy load images | High | | 3 | Code split routes | High | | 4 | Cache static assets | Medium | | 5 | Optimize images | Medium |
| ❌ Don't | ✅ Do | |----------|-------| | Guess at problems | Profile first | | Micro-optimize | Fix biggest issue | | Optimize early | Optimize when needed | | Ignore real users | Use RUM data |
Remember: The fastest code is code that doesn't run. Remove before optimizing.
tools
No-code automation democratizes workflow building. Zapier and Make (formerly Integromat) let non-developers automate business processes without writing code. But no-code doesn't mean no-complexity - these platforms have their own patterns, pitfalls, and breaking points. This skill covers when to use which platform, how to build reliable automations, and when to graduate to code-based solutions. Key insight: Zapier optimizes for simplicity and integrations (7000+ apps), Make optimizes for power
tools
Use only when the user explicitly asks to stage, commit, push, and open a GitHub pull request in one flow using the GitHub CLI (`gh`).
tools
Workflow automation is the infrastructure that makes AI agents reliable. Without durable execution, a network hiccup during a 10-step payment flow means lost money and angry customers. With it, workflows resume exactly where they left off. This skill covers the platforms (n8n, Temporal, Inngest) and patterns (sequential, parallel, orchestrator-worker) that turn brittle scripts into production-grade automation. Key insight: The platforms make different tradeoffs. n8n optimizes for accessibility
development
Trigger.dev expert for background jobs, AI workflows, and reliable async execution with excellent developer experience and TypeScript-first design. Use when: trigger.dev, trigger dev, background task, ai background job, long running task.