Dev & Engineering ✓ Microsoft · Official cpu-profilechrome-tracev8performance-analysisbottleneck-detectionlayout-rendering

CPU Profile Analyzer

Find performance bottlenecks in V8 and DevTools performance files.

FollowSkills review · FSRS-2.0
Not recommended
52/ 100 5-point scale 2.6 / 5
Trust16 / 25 · 3.2/5

The skill primarily reads and analyzes local performance files and requests no credentials, network service, or elevated privilege. However, its small-file procedure overwrites the original profile/trace, without confirmation, backup, or rollback, and it does not disclose that performance data may expose sensitive code paths; points are deducted for these gaps.

Reliability8 / 20 · 2.0/5

The file detection, data structures, and analysis workflow are broadly coherent, with a stated approach for very large files. However, there are no skill-specific tests, the parsers rely on exact JSON formatting assumptions, and handling and feedback for missing fields, malformed input, and parse failures are thin; the static ceiling also limits the score.

Adaptability10 / 15 · 3.3/5

The skill clearly covers cpuprofile and Chrome trace inputs, CPU, layout, rendering, GC, input latency, and multi-process scenarios, with reasonably clear triggers. It does not sufficiently define non-fit cases, input variants, output contracts, or Chinese-language and local-network adaptation, so points are deducted.

Convention8 / 15 · 2.7/5

The documentation is readable and layered, with sections for formats, procedures, examples, limitations, and large-file handling. It lacks skill-specific versioning, changelog, maintenance ownership, update path, installation notes, and troubleshooting; repository-level MIT and Microsoft metadata do not fully replace those disclosures.

Effectiveness6 / 15 · 2.0/5

The skill provides a practically useful workflow, code fragments, metrics, and a report structure that can guide a Node.js analysis. However, it offers no ready-to-run command, verified sample output, or direct result artifact; users must integrate and potentially correct the snippets, limiting completeness and demonstrated marginal benefit.

Verifiability4 / 10 · 2.0/5

The SKILL.md is auditable primary material, and the repository has general CI and test infrastructure. The supplied CI and tests do not directly cover this skill's key paths, and there are no skill-specific tests, real execution results, or independent corroboration, so static verifiability remains limited.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 5b3e1be7be9e
Before you use it
  • The small-file reformatting example writes directly to the input file; users should make a copy and confirm before using it.
  • The large-file parsers depend on strict JSON key formatting and may fail on whitespace, escaped strings, or format variants.
  • There is no skill-specific test suite, executable entry point, or sample result; treat outputs as approximate and manually validate timelines, samples, and trace correlations.
  • Profiles and traces may contain file paths, function names, user activity, or business data; redact them before sharing.
See the full review method →

What it does & when to use it

This skill analyzes V8 sampling-profiler .cpuprofile files and Chrome/Electron DevTools Trace-*.json files. It reconstructs timelines and call stacks, calculates self time and total time, and compares code paths. For DevTools traces, it also examines long tasks, layout and paint work, user timing marks, garbage collection, input latency, and Browser, Renderer, and GPU processes. It is an individual skill in the microsoft/vscode repository, which is licensed under MIT.

Reads and parses .cpuprofile and Trace-*.json files; selects JSON.parse or Buffer-based extraction based on file size; builds node and parent maps, reconstructs timestamps from timeDeltas, and walks sampled call stacks for CPU profiles; identifies the Renderer CrRendererMain thread, user timing marks, tasks longer than 50 milliseconds, slow FunctionCall events, layout and paint events, GC events, and input events in traces; can reconstruct embedded CPU profiles from ProfileChunk events; and produces timelines, durations, function-cost summaries, key stacks, and process breakdowns through Node.js analysis scripts.

  1. A VS Code developer has a .cpuprofile and needs to identify the functions consuming the most CPU time.
  2. An engineer compares old and new implementations represented in one profile and wants to locate differences between their cost centers.
  3. A performance investigator examines a Trace-*.json file for long tasks, layout thrashing, paint cost, or rendering bottlenecks.
  4. A developer needs to measure milestones such as code/willResolveTextFileEditorModel and code/didResolveTextFileEditorModel from user timing marks.
  5. A team needs to understand what the Renderer, Browser, and GPU processes did during a performance recording.

Pros & cons

Pros
  • Covers both V8 CPU profiles and Chrome/Electron DevTools traces.
  • Goes beyond call stacks and function timing to cover long tasks, user timing, layout and paint, GC, input latency, and multi-process behavior.
  • Explicitly distinguishes self time, total time, wall-clock duration, and thread duration, helping separate CPU work from waiting or suspension.
  • Provides a Buffer-based strategy for very large files and recommends filtering to relevant processes and threads to reduce noise.
Limitations
  • The SKILL.md provides procedures and example scripts rather than a standalone analyzer or test suite.
  • It requires local file access, file writing, and a Node.js runtime; the agent must also be able to execute analysis scripts.
  • Sampling does not capture every function, and bundled or minified code may have missing or mangled names, so findings are approximate and pattern-based.
  • The source does not document validation on applications or platforms outside the VS Code-related scenarios described.

How to install

The repository contains 61 skills; this skill is located at .github/skills/cpu-profile-analysis/SKILL.md. The supplied README does not document an independent installation command or a procedure for copying the file into another client, so use the directory through the loading mechanism of the Agent Skills-compatible client in use. The repository source is licensed under MIT.

How to use

Provide a .cpuprofile or Trace-*.json file to an agent that supports the skill and ask a concrete question, for example: “Analyze this Trace-*.json and identify Renderer main-thread tasks over 50ms, the longest function calls, and expensive layout events.” For files larger than approximately 400MB, use Buffer-based parsing and run the analysis script with node --max-old-space-size=16384; the SKILL.md supplies the relevant scripts and procedures.

FAQ

Does this skill require network access?
The documented workflow reads local profile or trace files and runs local Node.js scripts; it does not state that network access is required.
What input files does it support?
It supports .cpuprofile files with nodes, samples, and timeDeltas, and Trace-*.json files with a traceEvents array.
What happens with very large files?
Files below approximately 400MB can use JSON.parse; larger files should use Buffer-based parsing. The documentation also recommends node --max-old-space-size=16384 and filtering irrelevant events while parsing traces.
Does it automatically fix performance problems?
No. It identifies timelines, costly functions, stacks, and rendering or process activity and reports findings; the source does not describe automatic code changes or performance fixes.

More skills from this repository

All from microsoft/vscode

Dev & Engineering ✓ Microsoft · Official

Tool Rename Compatibility Check

Protect existing prompts and tool configurations when built-in tools are renamed.

Dev & Engineering ✓ Microsoft · Official

Copilot Chat OpenTelemetry Instrumentation

A repository-specific guide for consistent OpenTelemetry instrumentation in Copilot Chat.

Dev & Engineering ✓ Microsoft · Official

VS Code Configuration Policy Maintainer

Standardize VS Code policy registration, export, and validation.

Design & Frontend ✓ Microsoft · Official

VS Code Design Philosophy

Turn vague UI discomfort into concrete fixes using shared values, principles, and design moves.

Dev & Engineering ✓ Microsoft · Official

Agent Host E2E Test Assistant

Maintain VS Code Agent Host end-to-end tests with strict replay fixtures.

Dev & Engineering ✓ Microsoft · Official

VS Code Integrated Browser Architecture

A practical architecture guide for safely changing VS Code's cross-process integrated browser.

Dev & Engineering ✓ Microsoft · Official

VS Code Agents Window Sessions

Safely implement and repair VS Code Agents window features.

Dev & Engineering ✓ Microsoft · Official

Commit Assistant

Creates repository-style commit messages and safely commits code changes.

Dev & Engineering ✓ Microsoft · Official

Agent Host Log Investigator

Trace session, transport, and host failures in Agent Host debug exports.

Dev & Engineering ✓ Microsoft · Official

VS Code Unit Test Runner

Run VS Code repository unit tests by file, test name, or compiled-output glob.

Dev & Engineering ✓ Microsoft · Official

VS Code Agent Customization Assistant

Create, repair, and troubleshoot VS Code Agent customization files and their loading behavior.

Dev & Engineering ✓ Microsoft · Official

Code OSS Launch & Debug

Launch a built-from-source VS Code with isolated profiles, Playwright control, and multi-process debugging ports.

Dev & Engineering ✓ Microsoft · Official

VS Code Accessibility Development Guide

A practical specification for accessible interactive features in VS Code.

Design & Frontend ✓ Microsoft · Official

VS Code CSS Layout Standards

Build reliable VS Code-style CSS layouts and text truncation behavior

Dev & Engineering ✓ Microsoft · Official

VS Code Chat Performance Lab

Benchmark chat rendering and detect memory growth across VS Code builds.

Dev & Engineering ✓ Microsoft · Official

Component Fixtures for Screenshot Testing

Create stable, theme-aware VS Code component fixtures for isolated screenshot testing.

Dev & Engineering ✓ Microsoft · Official

VS Code Smoke Test Assistant

Run, filter, and debug VS Code end-to-end smoke tests.

Dev & Engineering ✓ Microsoft · Official

VS Code Crash Dump Symbolicator

Turn native VS Code crash dumps into readable backtraces with method names.

Dev & Engineering ✓ Microsoft · Official

Local VS Code Web Workbench

Validate VS Code workbench and Agents window changes in a local vscode.dev instance.

Dev & Engineering ✓ Microsoft · Official

Feedback Action

Reads current-session feedback and applies the requested code changes.

Related skills