audit-speed — скилл для Claude Code: аудит Core Web Vitals
Разбирает, почему страница тормозит: LCP, CLS, INP, FCP и TTFB с деревом причин и списком правок.
npx skills add calm-north/seojuice-skills --skill audit-speed -a claude-codeЧто делает audit-speed
Скилл проводит глубокий аудит Core Web Vitals. Он берёт метрики LCP, CLS, INP, FCP и TTFB, сверяет их с порогами Good / Needs Improvement / Poor и для каждой проваленной метрики строит дерево причин. Медленный TTFB — это хостинг, CDN или запросы к базе. Тяжёлый LCP — картинка без современных форматов или шрифт, блокирующий отрисовку. Сдвиги CLS обычно идут от изображений без width и height или от баннеров, вставленных над первым экраном.
Отдельный блок — разбор веса страницы по типам ресурсов: HTML, CSS, JavaScript, картинки, шрифты, сторонние скрипты. Для каждого типа скилл даёт оценку и действие. В конце выводятся приоритетные правки по влиянию и список быстрых побед вроде fetchpriority="high" на LCP-изображении или отложенной загрузки неважного JavaScript.
Перед стартом скилл просит контекст: какие страницы проверять, есть ли данные Lighthouse или PageSpeed Insights, какой стек и какие ограничения. Если данных нет, он советует прогнать PageSpeed Insights по ключевым URL. Учтите: без доступа к реальным замерам скилл работает с тем, что вы ему дадите, поэтому сначала соберите отчёт по странице. Для технического SEO за пределами скорости есть отдельный скилл diagnose-seo.
Какие задачи решает
- понять, из-за чего проседает LCP на посадочной странице
- убрать сдвиги макета от картинок и баннеров
- найти сторонние скрипты, блокирующие главный поток
- разложить вес страницы по типам ресурсов
- получить список правок, отсортированный по влиянию
Примеры запросов агенту
- проверь скорость главной страницы, покажи дерево причин по LCP
- почему у меня плохой CLS на странице товара?
- разбери вес страницы по ресурсам и дай быстрые победы
Как установить audit-speed
1Через Skills CLI (Vercel)
npx skills add calm-north/seojuice-skills --skill audit-speed -a claude-code2Вручную: положить файлы
~/.claude/skills/audit-speed/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/audit-speed/
1Через Skills CLI (Vercel)
npx skills add calm-north/seojuice-skills --skill audit-speed -a codex2Вручную: положить файлы
.agents/skills/audit-speed/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add calm-north/seojuice-skills --skill audit-speed -a cursor2Вручную: положить файлы
.cursor/skills/audit-speed/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install calm-north/seojuice-skills audit-speed2Вручную: положить файлы
.github/skills/audit-speed/SKILL.md1Через Skills CLI (Vercel)
npx skills add calm-north/seojuice-skills --skill audit-speed -a gemini-cli2Командой платформы
gemini skills install https://github.com/calm-north/seojuice-skills --path skills/audit-speedВручную: положить файлы
.devin/skills/audit-speed/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add calm-north/seojuice-skills --skill audit-speed -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о audit-speed
Как установить audit-speed в Claude?
Выполните npx skills add calm-north/seojuice-skills --skill audit-speed -a claude-code. Скилл окажется в ~/.claude/skills/audit-speed/SKILL.md.
Что делает audit-speed?
Проводит аудит Core Web Vitals: сверяет LCP, CLS, INP, FCP и TTFB с порогами, ищет корневые причины и предлагает правки по приоритету.
Что нужно подготовить перед запуском?
Скилл просит список страниц, текущие оценки Lighthouse или PageSpeed Insights, стек и известные ограничения. Без данных он советует сначала прогнать PageSpeed Insights по ключевым URL.
Исходный текст
SKILL.md · MIT
--- name: audit-speed description: > Deep Core Web Vitals and page speed audit. Use when the user asks about page speed, Core Web Vitals, LCP, CLS, INP, FCP, TTFB, Lighthouse scores, why a page is slow, performance optimization, or resource size analysis. For broader technical SEO issues, see diagnose-seo. metadata: version: 1.0.0 --- # Audit Speed Deep Core Web Vitals audit with root-cause analysis trees and resource optimization recommendations. ## Core Web Vitals Thresholds | Metric | Good | Needs Improvement | Poor | |--------|------|-------------------|------| | LCP (Largest Contentful Paint) | < 2.5s | 2.5s - 4.0s | > 4.0s | | CLS (Cumulative Layout Shift) | < 0.1 | 0.1 - 0.25 | > 0.25 | | INP (Interaction to Next Paint) | < 200ms | 200ms - 500ms | > 500ms | | FCP (First Contentful Paint) | < 1.8s | 1.8s - 3.0s | > 3.0s | | TTFB (Time to First Byte) | < 800ms | 800ms - 1800ms | > 1800ms | ## Before You Start Gather this context: 1. **Which pages?** Homepage, key landing pages, or specific slow pages. 2. **Current scores.** If the user has Lighthouse or PageSpeed Insights data, start there. 3. **Tech stack.** CMS, framework, hosting — this determines which optimizations are available. 4. **Known constraints.** Third-party scripts they can't remove, design requirements that limit optimization. If no data is available, suggest running Google PageSpeed Insights on the key URLs. ## LCP Root-Cause Tree LCP measures when the largest visible element finishes rendering. Diagnose: **Is TTFB slow (> 800ms)?** - → Server response time issue - Check: hosting quality, CDN configuration, database queries, server-side rendering time - Fix: upgrade hosting, add CDN, optimize server-side code, enable caching **Is the LCP element an image?** - → Image optimization issue - Check: image format (use WebP/AVIF), image size (serve responsive sizes), lazy loading on LCP image (should NOT be lazy loaded) - Fix: convert to modern formats, add `width`/`height` attributes, use `fetchpriority="high"` on LCP image, preload the LCP image **Is the LCP element text?** - → Font loading issue - Check: custom fonts blocking render, font file size, font-display strategy - Fix: use `font-display: swap` or `optional`, preload critical fonts, subset fonts to used characters **Is render-blocking CSS/JS delaying the LCP?** - Check: large CSS files in `<head>`, synchronous JS before content - Fix: inline critical CSS, defer non-critical CSS, async/defer JS ## CLS Root-Cause Tree CLS measures unexpected layout shifts. Diagnose: **Do images/videos lack dimensions?** - → Browser can't reserve space before loading - Fix: add `width` and `height` attributes to all `<img>` and `<video>` elements, use CSS `aspect-ratio` **Do ads or embeds inject content?** - → Dynamic content pushing existing content down - Fix: reserve space for ad slots with min-height, use `contain-intrinsic-size` for lazy content **Do fonts cause text reflow?** - → FOUT (Flash of Unstyled Text) causes layout shift when custom font loads - Fix: use `font-display: optional` (no swap = no shift), or match fallback font metrics **Does dynamic content insert above the fold?** - → Banners, cookie notices, notifications pushing content - Fix: use overlays instead of inline insertions, or reserve space with fixed-height containers ## INP Root-Cause Tree INP measures responsiveness to user interactions. Diagnose: **Is the main thread blocked by long tasks?** - Check: JavaScript execution time, third-party scripts, large DOM - Fix: break long tasks with `requestIdleCallback` or `setTimeout`, code-split heavy modules **Do event handlers do heavy synchronous work?** - Check: click handlers that trigger large DOM updates, form validation on every keystroke - Fix: debounce inputs, use requestAnimationFrame for visual updates, offload work to web workers **Are third-party scripts competing for the main thread?** - Check: analytics, chat widgets, A/B testing tools, social embeds - Fix: defer loading until after interaction, use `loading="lazy"` for embeds, consider removing low-value scripts ## Resource Analysis Break down the total page weight: | Resource Type | Size | Assessment | Action | |---|---|---|---| | HTML | [x] KB | [ok/large] | Compress, reduce inline styles/scripts | | CSS | [x] KB | [ok/large] | Remove unused CSS, minify, critical CSS extraction | | JavaScript | [x] KB | [ok/large] | Code-split, tree-shake, defer non-critical | | Images | [x] KB | [ok/large] | Modern formats, responsive sizes, lazy load below fold | | Fonts | [x] KB | [ok/large] | Subset, limit families/weights, preload critical | | Third-party | [x] KB | [ok/large] | Audit necessity, defer, self-host if possible | **Benchmarks:** - Total page weight under 1.5 MB is good - JavaScript under 300 KB (compressed) for most sites - CSS under 100 KB (compressed) - First-party fonts under 100 KB ## Output Format ### Speed Audit: [URL or domain] **Core Web Vitals** | Metric | Value | Rating | Root Cause | |--------|-------|--------|------------| | LCP | [value] | Good / Needs Improvement / Poor | [identified cause] | | CLS | [value] | ... | ... | | INP | [value] | ... | ... | | FCP | [value] | ... | ... | | TTFB | [value] | ... | ... | **Resource Breakdown** [Table from Resource Analysis] **Priority Fixes** For each failing metric, ordered by impact: 1. **[Metric]: [Root cause]** - Current: [value] - Target: [threshold] - Fix: [specific action] - Estimated impact: [high/medium/low] 2. ... **Quick Wins** List optimizations that require minimal effort: - [ ] Add `width`/`height` to images - [ ] Set `fetchpriority="high"` on LCP image - [ ] Defer non-critical JavaScript - [ ] ... --- > **Pro Tip:** Use the free [CWV Impact Calculator](https://seojuice.com/tools/cwv-impact/) > to estimate the traffic impact of fixing Core Web Vitals, and the > [Critical CSS Generator](https://seojuice.com/tools/critical-css-generator/) to extract > above-the-fold CSS. SEOJuice MCP users can run `/seojuice:page-audit [domain] [url]` for > instant CWV scores, Lighthouse data, and resource breakdowns.
© calm-north · MIT · calm-north/seojuice-skills