Diagnose React runtime performance with React Doctor traces, live render outlines, Long Animation Frames, interaction timing, and component render evidence. Use when invoked as `/performance` for a slow interaction, unexpected re-renders, or a measured before-and-after comparison.
Automate repetitive workflows and reduce manual effort
Example: Generate reports, summarize documents, draft communications
Save 3-5 hours per week on routine tasks
Learn new skills, understand complex topics, get expert guidance
Example: Explain concepts, provide examples, suggest learning resources
Accelerate learning and skill development by 2x
Enhance output quality through reviews, suggestions, and refinements
Example: Review drafts, suggest improvements, catch errors
Improve work quality by 30-40% with less effort
Time estimate: 15-45 minutes depending on use case complexity
Prerequisites
Submit your Claude Code skill and start earning
epx add millionco/react-doctor/skills/performanceCompatible with
Supported agents
| name | performance |
| description | Diagnose React runtime performance with React Doctor traces, live render outlines, Long Animation Frames, interaction timing, and component render evidence. Use when invoked as `/performance` for a slow interaction, unexpected re-renders, or a measured before-and-after comparison. |
| disable-model-invocation | true |
Measure one reproducible interaction, connect browser work to React renders, and report only conclusions supported by the trace.
Before recording:
Use a production build when available. Development builds add framework work that can distort render and script timings. If you must measure a development build, label that limitation in the report.
Run the scan in an interactive terminal:
npx react-doctor@latest scan http://localhost:3000 --format json
React Doctor opens an isolated Chrome profile. Perform the planned interaction while purple outlines identify rendered components. Press Enter after the interaction settles; recordings stop automatically after five minutes.
Interactive users can omit the URL and choose a detected localhost app or enter another URL. Agents must always pass the explicit URL so automated runs never wait for input.
For an authenticated session, connect through the Chrome DevTools Protocol (CDP):
npx react-doctor@latest scan https://app.example.com \
--cdp http://127.0.0.1:9222 \
--format json
Use a dedicated debug profile for CDP because Chrome tracing is browser-wide. Sign in, close every non-blank tab, and then start the scan. React Doctor closes leftover blank tabs before tracing. Never request cookies, copy a browser profile, or close an externally managed browser.
The compressed .json.gz trace can contain URLs, source paths, and application behavior. Keep it local unless an upload is explicitly approved.
Evaluate the report in this order:
Follow these interpretation rules:
Search the repository for measured component display names and event handlers. Confirm that each candidate runs in the recorded flow before reporting it.
Open the DevTools trace when the summary cannot explain a long frame. Correlate the interaction timestamp with script tasks, style or layout work, React tracks, and paint. Do not infer causality from neighboring timestamps alone.
Use this structure:
## Flow tested
tested_url, build_type, and exact_interaction
## Verdict
one_evidence_backed_paragraph
## Evidence
| Signal | Measurement | Interpretation |
| ----------------- | ---------------------------: | --------------- |
| Worst interaction | duration_ms | measured_cause |
| Total blocking | duration_ms | measured_scope |
| Top component | render_count and duration_ms | measured_impact |
## Findings
1. `path/to/component.tsx:42`: measured_problem, evidence, and smallest_fix
## Limits
capture_warnings, missing_support, or environmental_caveats
Do not pad the report with static lint findings. Include source findings only when runtime evidence connects them to the tested flow.
Do not edit code unless code changes are requested. After a fix:
Reject improvements that only move work outside the recorded window or disable useful behavior.
AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versionperformanceExecute the skills CLI command in your project's root directory to begin installation:
epx add millionco/react-doctor/skills/performanceFetches performance from millionco/react-doctor and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
.cursor/skills/performance
Restart Cursor to activate performance. Access via /performancein your agent's command palette.
Learn more:View source on GitHubSkills CLI docsAbout CursorWhat are agent skills?
Steps
Common Pitfalls
✓ Do
✗ Don't
💡 Pro Tips
✓ Use when
Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement.
✗ Avoid when
Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion.
improve-threejs
millionco/react-doctor · performance · same repo
react-doctor
millionco/react-doctor · Frontend · same repo
improve-react
millionco/react-doctor · code-quality · same repo
perf-lighthouse
tech-leads-club/agent-skills · performance · same category
perf-astro
tech-leads-club/agent-skills · performance · same category
core-web-vitals
tech-leads-club/agent-skills · performance · same category
Keeps context tight: performance is the kind of skill you can hand to a new teammate without a long onboarding doc.
Registry listing for performance matched our evaluation — installs cleanly and behaves as described in the markdown.
performance is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
performance reduced setup friction for our internal harness; good balance of opinion and flexibility.
performance reduced setup friction for our internal harness; good balance of opinion and flexibility.
I recommend performance for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
Useful defaults in performance — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
I recommend performance for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
Useful defaults in performance — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
Useful defaults in performance — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
showing 1-10 of 36