ChatGPT Claude Codex CLI Cohere Cursor DeepSeek Gemini GitHub Copilot GLM Grok Kimi Llama MiniMax Mistral OpenAI opencode Skill

performance-profiling

Performance profiling principles. Measurement, analysis, and optimization techniques.

LLM Mart · 0 points · 20 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download sickn33-agentic-awesome-skills-skills_performance-profiling-286166a.zip · 2 KB
Part of sickn33/agentic-awesome-skills — 427 skills
This skill couldn't be refreshed from GitHub on the last check — you're seeing the last imported snapshot.

Install

skills CLI npx skills add https://github.com/sickn33/agentic-awesome-skills/tree/main/skills/performance-profiling
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install sickn33-agentic-awesome-skills@llmmart
Git git clone https://github.com/sickn33/agentic-awesome-skills.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole sickn33/agentic-awesome-skills collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

Performance Profiling

Measure, analyze, optimize - in that order.

🔧 Runtime Scripts

Execute these for automated profiling:

Script Purpose Usage
scripts/lighthouse_audit.py Lighthouse performance audit python scripts/lighthouse_audit.py https://example.com

1. Core Web Vitals

Targets

Metric Good Poor Measures
LCP < 2.5s > 4.0s Loading
INP < 200ms > 500ms Interactivity
CLS < 0.1 > 0.25 Stability

When to Measure

Stage Tool
Development Local Lighthouse
CI/CD Lighthouse CI
Production RUM (Real User Monitoring)

2. Profiling Workflow

The 4-Step Process

1. BASELINE → Measure current state
2. IDENTIFY → Find the bottleneck
3. FIX → Make targeted change
4. VALIDATE → Confirm improvement

Profiling Tool Selection

Problem Tool
Page load Lighthouse
Bundle size Bundle analyzer
Runtime DevTools Performance
Memory DevTools Memory
Network DevTools Network

3. Bundle Analysis

What to Look For

Issue Indicator
Large dependencies Top of bundle
Duplicate code Multiple chunks
Unused code Low coverage
Missing splits Single large chunk

Optimization Actions

Finding Action
Big library Import specific modules
Duplicate deps Dedupe, update versions
Route in main Code split
Unused exports Tree shake

4. Runtime Profiling

Performance Tab Analysis

Pattern Meaning
Long tasks (>50ms) UI blocking
Many small tasks Possible batching opportunity
Layout/paint Rendering bottleneck
Script JavaScript execution

Memory Tab Analysis

Pattern Meaning
Growing heap Possible leak
Large retained Check references
Detached DOM Not cleaned up

5. Common Bottlenecks

By Symptom

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

6. Quick Win Priorities

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

7. Anti-Patterns

❌ 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.

When to Use

This skill is applicable to execute the workflow or actions described in the overview.

Limitations

  • Use this skill only when the task clearly matches the scope described above.
  • Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
  • Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
Files (agentic-awesome-skills)
  • scripts
    • lighthouse_audit.py 2.6 KB
      #!/usr/bin/env python3
      """
      Skill: performance-profiling
      Script: lighthouse_audit.py
      Purpose: Run Lighthouse performance audit on a URL
      Usage: python lighthouse_audit.py https://example.com
      Output: JSON with performance scores
      Note: Requires lighthouse CLI (npm install -g lighthouse)
      """
      import subprocess
      import json
      import sys
      import os
      import tempfile
      
      def run_lighthouse(url: str) -> dict:
          """Run Lighthouse audit on URL."""
          try:
              with tempfile.NamedTemporaryFile(suffix='.json', delete=False) as f:
                  output_path = f.name
              
              result = subprocess.run(
                  [
                      "lighthouse",
                      url,
                      "--output=json",
                      f"--output-path={output_path}",
                      "--chrome-flags=--headless",
                      "--only-categories=performance,accessibility,best-practices,seo"
                  ],
                  capture_output=True,
                  text=True,
                  timeout=120
              )
              
              if os.path.exists(output_path):
                  with open(output_path, 'r') as f:
                      report = json.load(f)
                  os.unlink(output_path)
                  
                  categories = report.get("categories", {})
                  return {
                      "url": url,
                      "scores": {
                          "performance": int(categories.get("performance", {}).get("score", 0) * 100),
                          "accessibility": int(categories.get("accessibility", {}).get("score", 0) * 100),
                          "best_practices": int(categories.get("best-practices", {}).get("score", 0) * 100),
                          "seo": int(categories.get("seo", {}).get("score", 0) * 100)
                      },
                      "summary": get_summary(categories)
                  }
              else:
                  return {"error": "Lighthouse failed to generate report", "stderr": result.stderr[:500]}
                  
          except subprocess.TimeoutExpired:
              return {"error": "Lighthouse audit timed out"}
          except FileNotFoundError:
              return {"error": "Lighthouse CLI not found. Install with: npm install -g lighthouse"}
      
      def get_summary(categories: dict) -> str:
          """Generate summary based on scores."""
          perf = categories.get("performance", {}).get("score", 0) * 100
          if perf >= 90:
              return "[OK] Excellent performance"
          elif perf >= 50:
              return "[!] Needs improvement"
          else:
              return "[X] Poor performance"
      
      if __name__ == "__main__":
          if len(sys.argv) < 2:
              print(json.dumps({"error": "Usage: python lighthouse_audit.py <url>"}))
              sys.exit(1)
          
          result = run_lighthouse(sys.argv[1])
          print(json.dumps(result, indent=2))
      
  • SKILL.md 3.5 KB
    ---
    name: performance-profiling
    description: "Performance profiling principles. Measurement, analysis, and optimization techniques."
    risk: critical
    source: community
    date_added: "2026-02-27"
    ---
    
    # Performance Profiling
    
    > Measure, analyze, optimize - in that order.
    
    ## 🔧 Runtime Scripts
    
    **Execute these for automated profiling:**
    
    | Script | Purpose | Usage |
    |--------|---------|-------|
    | `scripts/lighthouse_audit.py` | Lighthouse performance audit | `python scripts/lighthouse_audit.py https://example.com` |
    
    ---
    
    ## 1. Core Web Vitals
    
    ### Targets
    
    | Metric | Good | Poor | Measures |
    |--------|------|------|----------|
    | **LCP** | < 2.5s | > 4.0s | Loading |
    | **INP** | < 200ms | > 500ms | Interactivity |
    | **CLS** | < 0.1 | > 0.25 | Stability |
    
    ### When to Measure
    
    | Stage | Tool |
    |-------|------|
    | Development | Local Lighthouse |
    | CI/CD | Lighthouse CI |
    | Production | RUM (Real User Monitoring) |
    
    ---
    
    ## 2. Profiling Workflow
    
    ### The 4-Step Process
    
    ```
    1. BASELINE → Measure current state
    2. IDENTIFY → Find the bottleneck
    3. FIX → Make targeted change
    4. VALIDATE → Confirm improvement
    ```
    
    ### Profiling Tool Selection
    
    | Problem | Tool |
    |---------|------|
    | Page load | Lighthouse |
    | Bundle size | Bundle analyzer |
    | Runtime | DevTools Performance |
    | Memory | DevTools Memory |
    | Network | DevTools Network |
    
    ---
    
    ## 3. Bundle Analysis
    
    ### What to Look For
    
    | Issue | Indicator |
    |-------|-----------|
    | Large dependencies | Top of bundle |
    | Duplicate code | Multiple chunks |
    | Unused code | Low coverage |
    | Missing splits | Single large chunk |
    
    ### Optimization Actions
    
    | Finding | Action |
    |---------|--------|
    | Big library | Import specific modules |
    | Duplicate deps | Dedupe, update versions |
    | Route in main | Code split |
    | Unused exports | Tree shake |
    
    ---
    
    ## 4. Runtime Profiling
    
    ### Performance Tab Analysis
    
    | Pattern | Meaning |
    |---------|---------|
    | Long tasks (>50ms) | UI blocking |
    | Many small tasks | Possible batching opportunity |
    | Layout/paint | Rendering bottleneck |
    | Script | JavaScript execution |
    
    ### Memory Tab Analysis
    
    | Pattern | Meaning |
    |---------|---------|
    | Growing heap | Possible leak |
    | Large retained | Check references |
    | Detached DOM | Not cleaned up |
    
    ---
    
    ## 5. Common Bottlenecks
    
    ### By Symptom
    
    | 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 |
    
    ---
    
    ## 6. Quick Win Priorities
    
    | 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 |
    
    ---
    
    ## 7. Anti-Patterns
    
    | ❌ 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.
    
    ## When to Use
    This skill is applicable to execute the workflow or actions described in the overview.
    
    ## Limitations
    - Use this skill only when the task clearly matches the scope described above.
    - Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
    - Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related