Performance profiler

Systematic performance profiling for Node.js, Python, and Go applications.

How to use it

Claude Code
  1. Run the line below. It pulls the whole folder into ~/.claude/skills/performance-profiler, including the files SKILL.md points to.
  2. Describe your job in plain words. Claude Code follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit alirezarezvani/claude-skills/engineering/skills/performance-profiler#main ~/.claude/skills/performance-profiler

For one project only, change the path to .claude/skills/performance-profiler. This skill also uses Node.js, Next.js — copying SKILL.md alone won't be enough. See the folder on GitHub.

Claude (web or desktop app)
  1. On this page open ⋯ → Download .md.
  2. Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
  3. Pick the file and Save. Claude shows the name and description and runs a security scan.
  4. Check the skill is switched on.
  5. Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
  1. ChatGPT: make a Project and paste it into Instructions.
  2. Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Source of Performance profiler

Show the full text75 lines
namedescription
performance-profilerSystematic performance profiling for Node.js, Python, and Go applications. Identifies CPU, memory, and I/O bottlenecks, generates flamegraphs, analyzes bundle sizes, optimizes database queries, runs load tests with k6 and Artillery. Always measures before and after. Use when investigating a slow endpoint, planning a performance budget, or hunting a memory leak in production.

Performance Profiler

Tier: POWERFUL
Category: Engineering
Domain: Performance Engineering


Overview

Systematic performance profiling for Node.js, Python, and Go applications. Identifies CPU, memory, and I/O bottlenecks; generates flamegraphs; analyzes bundle sizes; optimizes database queries; detects memory leaks; and runs load tests with k6 and Artillery. Always measures before and after.

Core Capabilities

  • CPU profiling — flamegraphs for Node.js, py-spy for Python, pprof for Go
  • Memory profiling — heap snapshots, leak detection, GC pressure
  • Bundle analysis — webpack-bundle-analyzer, Next.js bundle analyzer
  • Database optimization — EXPLAIN ANALYZE, slow query log, N+1 detection
  • Load testing — k6 scripts, Artillery scenarios, ramp-up patterns
  • Before/after measurement — establish baseline, profile, optimize, verify

When to Use

  • App is slow and you don't know where the bottleneck is
  • P99 latency exceeds SLA before a release
  • Memory usage grows over time (suspected leak)
  • Bundle size increased after adding dependencies
  • Preparing for a traffic spike (load test before launch)
  • Database queries taking >100ms

Quick Start

# Analyze a project for performance risk indicators
python3 scripts/performance_profiler.py /path/to/project

# JSON output for CI integration
python3 scripts/performance_profiler.py /path/to/project --json

# Custom large-file threshold
python3 scripts/performance_profiler.py /path/to/project --large-file-threshold-kb 256

Golden Rule: Measure First

# Establish baseline BEFORE any optimization
# Record: P50, P95, P99 latency | RPS | error rate | memory usage

# Wrong: "I think the N+1 query is slow, let me fix it"
# Right: Profile → confirm bottleneck → fix → measure again → verify improvement

Node.js Profiling

→ See references/profiling-recipes.md for details

References

1---
2name: "performance-profiler"
3description: "Systematic performance profiling for Node.js, Python, and Go applications. Identifies CPU, memory, and I/O bottlenecks, generates flamegraphs, analyzes bundle sizes, optimizes database queries, runs load tests with k6 and Artillery. Always measures before and after. Use when investigating a slow endpoint, planning a performance budget, or hunting a memory leak in production."
4---
5 
6# Performance Profiler
7 
8**Tier:** POWERFUL
9**Category:** Engineering
10**Domain:** Performance Engineering
11 
12---
13 
14## Overview
15 
16Systematic performance profiling for Node.js, Python, and Go applications. Identifies CPU, memory, and I/O bottlenecks; generates flamegraphs; analyzes bundle sizes; optimizes database queries; detects memory leaks; and runs load tests with k6 and Artillery. Always measures before and after.
17 
18## Core Capabilities
19 
20- **CPU profiling** — flamegraphs for Node.js, py-spy for Python, pprof for Go
21- **Memory profiling** — heap snapshots, leak detection, GC pressure
22- **Bundle analysis** — webpack-bundle-analyzer, Next.js bundle analyzer
23- **Database optimization** — EXPLAIN ANALYZE, slow query log, N+1 detection
24- **Load testing** — k6 scripts, Artillery scenarios, ramp-up patterns
25- **Before/after measurement** — establish baseline, profile, optimize, verify
26 
27---
28 
29## When to Use
30 
31- App is slow and you don't know where the bottleneck is
32- P99 latency exceeds SLA before a release
33- Memory usage grows over time (suspected leak)
34- Bundle size increased after adding dependencies
35- Preparing for a traffic spike (load test before launch)
36- Database queries taking >100ms
37 
38---
39 
40## Quick Start
41 
42```bash
43# Analyze a project for performance risk indicators
44python3 scripts/performance_profiler.py /path/to/project
45 
46# JSON output for CI integration
47python3 scripts/performance_profiler.py /path/to/project --json
48 
49# Custom large-file threshold
50python3 scripts/performance_profiler.py /path/to/project --large-file-threshold-kb 256
51```
52 
53---
54 
55## Golden Rule: Measure First
56 
57```bash
58# Establish baseline BEFORE any optimization
59# Record: P50, P95, P99 latency | RPS | error rate | memory usage
60 
61# Wrong: "I think the N+1 query is slow, let me fix it"
62# Right: Profile → confirm bottleneck → fix → measure again → verify improvement
63```
64 
65---
66 
67## Node.js Profiling
68→ See references/profiling-recipes.md for details
69 
70## References
71 
72- [references/profiling-recipes.md](references/profiling-recipes.md) — Node.js/Python/Go profiling commands, flamegraph generation, heap snapshots
73- [references/optimization-playbook.md](references/optimization-playbook.md) — before/after measurement template, quick-win optimization checklist (DB/Node/bundle/API), common pitfalls, best practices
74 
75 

Discussion

Alternatives

Also in MonitoringSee all 533 in Development →
Professional Full-Stack Developer for Network Mapping & Monitoring ApplicationAct as a professional full-stack developer tasked with building a web application for mapping and monitoring networks using Mikrotik Netwatch API. Implement multi-user role-based management to handle devices, monitor their status, and manage user subscriptions.Coding · CC0-1.0Prompt refinerHigh-end Prompt Engineering & Prompt Refiner skill. Transforms raw or messy user requests into concise, token-efficient, high-performance master prompts for systems like GPT, Claude, and Gemini. Use when you want to optimize or redesign a prompt so it solves the problem reliably while minimizing tokens.Data & AI · CC0-1.0Constraint driven developmentEstablishes a project's quality bar as a written contract and stops agents quietly lowering it. Interviews the user on which dimensions matter, supplies sane default thresholds when they have no number in mind, records everything in CONSTRAINTS.md, and watches the diff for a weakened bar — new @ts-ignore or eslint-disable suppressions, skipped or deleted tests, assertions stripped out, unimplemented stubs, thresholds edited down. Use when no quality bar is written down, when the user says "set up constraints" or "define our standards", when the user wants dimensions they care about — accessibility, web performance, coverage — set up as enforced constraints, when an agent keeps silencing checks or skipping tests to get to green, when you need a coverage or performance threshold and don't know what number to pick, or when an agent writes more code than anyone will read.Coding · MITObservability and instrumentationInstruments code so production behavior is visible and diagnosable. Use when adding logging, metrics, tracing, or alerting. Use when shipping any feature that runs in production and you need evidence it works. Use when production issues are reported but you can't tell what happened from the available data.Coding · MIT