performance

Diagnose and optimize web performance bottlenecks using Core Web Vitals profiling methodology.

1|Updated Mar 13, 2026
One-click install
npx skills add https://github.com/dominionism/Noesis --skill performance-dominionism
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: performance
Source: https://github.com/dominionism/Noesis/tree/main/assets/skills/performance
Command: npx skills add https://github.com/dominionism/Noesis --skill performance-dominionism

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Web pages become slow for many different reasons, and applying random optimizations wastes effort without improving the metric that matters. This Skill provides a systematic measure-first methodology to identify the single real bottleneck, fix it, and verify the improvement with before/after metrics. ## Core Features & Use Cases - Structured Profiling Workflow: A four-step loop (measure, identify bottleneck, optimize, re-measure) with a decision tree covering TTFB, asset size, main-thread blocking, and resource prioritization. - Concrete Optimization Patterns: Ready-to-use code for critical rendering path, code splitting, tree shaking, responsive images (AVIF/WebP), font loading, caching headers, service workers, and third-party script deferral. - Performance Budgets & Verification: Explicit budgets (JS < 300 KB, total page < 1.5 MB) and Core Web Vitals targets (LCP < 2.5s, TBT < 200ms) with Lighthouse and web-vitals measurement commands. - Use Case: A product page has an LCP of 4.2s. Follow the decision tree to discover the hero image loads too late, then apply preload with fetchpriority="high" and responsive AVIF sources, and confirm LCP drops below 2.5s. ## Quick Start Ask the agent to profile your slow page and apply the performance skill's bottleneck decision tree to produce a measured optimization plan.

Frequently Asked Questions about performance

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I improve Core Web Vitals like LCP and INP?▼

Improve Core Web Vitals by measuring first with Lighthouse or the web-vitals library, then identifying the single bottleneck. For LCP, preload the hero image with fetchpriority="high" and use AVIF/WebP formats; for main-thread issues, split code and break up long tasks.

How to reduce JavaScript bundle size in a web app?▼

Reduce bundle size with route-based and component-based code splitting using dynamic imports, plus tree shaking by importing only needed modules (e.g., lodash/debounce instead of all of lodash). Keep compressed JavaScript under the 300 KB budget.

What image format should I use for web performance?▼

Use AVIF for photos where supported (92%+ browsers) with WebP as fallback and JPEG as the final fallback via the picture element. Use SVG for icons and logos, and always set width, height, and lazy loading for below-fold images.

Why is my page still slow after applying optimizations?▼

Pages stay slow when optimizations target the wrong bottleneck. Re-run the decision tree: check TTFB over 800ms for server issues, assets over budget, main-thread blocking over 200ms TBT, or late-loading LCP resources, and verify with field data.

When should I not lazy load images?▼

Do not lazy load the above-fold LCP image, since delayed loading directly hurts the LCP metric. Instead load it eagerly with fetchpriority="high" and decoding="sync", reserving lazy loading for below-fold images only.