spencerpauly/awesome-cursor-skills

profiling-performance

Profile a running web application's CPU performance using Cursor's built-in browser profiler.

ソースを見る

使い方

  1. インストールコマンドをコピーし、自分の環境へ導入する前にソースを確認します。
  2. 必要なツール、認証情報、対応環境を原文で確認します。
  3. 入力と成果物を指定し、出力を資料と照合します。
npx skills add https://github.com/spencerpauly/awesome-cursor-skills --skill profiling-performance

開始前の確認

  • 導入にはモデル契約、API枠、ファイルへのアクセス許可は含まれません。
  • スター数や導入数は活動の指標であり、独立した品質・安全性試験ではありません。
リポジトリの原文

見出し、例、コード、表、リンク、参照画像を含む原文を表示しています。

Performance Profile

Use this skill when a web application feels slow, janky, or unresponsive. Cursor's built-in browser has CPU profiling tools that capture real call stacks and timing data.

How It Works

The cursor-ide-browser MCP provides browser_profile_start and browser_profile_stop tools that capture Chrome DevTools-format CPU profiles. Profile data is written to ~/.cursor/browser-logs/ as both raw JSON and a human-readable summary.

Steps

  1. Ensure the app is running — start the dev server if it isn't already running.
  1. Navigate to the slow page:
   Tool: browser_navigate
   Arguments: { "url": "http://localhost:3000/slow-page" }
  1. Start profiling:
   Tool: browser_profile_start
  1. Reproduce the slow interaction — use browser tools to trigger the slow behavior:
  • Click buttons, scroll, type in inputs, navigate between pages
  • Use browser_click, browser_scroll, browser_fill to interact
  • Wait a few seconds for the interaction to complete
  1. Stop profiling:
   Tool: browser_profile_stop

This writes two files to ~/.cursor/browser-logs/:

  • cpu-profile-{timestamp}.json — raw Chrome DevTools profile
  • cpu-profile-{timestamp}-summary.md — human-readable summary
  1. Analyze the results — read both files. Key things to look for in the raw JSON:
  • profile.nodes[].hitCount — how many samples hit each function
  • profile.nodes[].callFrame.functionName — the function names
  • profile.samples.length — total number of samples collected

Cross-reference with the summary to identify:

  • Functions consuming the most CPU time
  • Unexpected re-renders or layout thrashing
  • Expensive third-party library calls
  • Synchronous operations blocking the main thread
  1. Suggest fixes — based on the profile data, recommend specific optimizations:
  • Memoize expensive computations
  • Debounce rapid event handlers
  • Move heavy work to a Web Worker
  • Lazy-load components or routes
  • Virtualize long lists

Notes

  • Always read the raw .json profile to verify the summary — the summary can miss nuances.
  • Profile in development mode first, but be aware that React dev mode adds overhead. For accurate measurements, profile a production build.
  • Short profiles (2-5 seconds of interaction) are usually more useful than long ones.
  • Compare before/after profiles to verify your optimization actually helped.

タスクに関連する項目

同じリポジトリから

関連する Skills

すべての Skills