.agents/skills/performance/SKILL.md
# Performance Skill — AuditKit This skill is auto-included in the generated ZIP when the Performance pillar score is below 90. ## What it covers Core Web Vitals (LCP, CLS, TBT/FID, FCP, TTFB, Speed Index) and general page weight / render-blocking resource issues. ## Thresholds (Google's "good" targets) | Metric | Good | Needs Improvement | Poor | |--------|------|-------------------|------| | LCP (Largest Contentful Paint) | < 2.5s | 2.5–4s | > 4s | | CLS (Cumulative Layout Shift) | < 0.1 |
npx skillsauth add nirholas/auditkit .agents/skills/performanceInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill is auto-included in the generated ZIP when the Performance pillar score is below 90.
Core Web Vitals (LCP, CLS, TBT/FID, FCP, TTFB, Speed Index) and general page weight / render-blocking resource issues.
| Metric | Good | Needs Improvement | Poor | |--------|------|-------------------|------| | LCP (Largest Contentful Paint) | < 2.5s | 2.5–4s | > 4s | | CLS (Cumulative Layout Shift) | < 0.1 | 0.1–0.25 | > 0.25 | | TBT (Total Blocking Time) | < 200ms | 200–600ms | > 600ms | | FCP (First Contentful Paint) | < 1.8s | 1.8–3s | > 3s | | TTFB (Time to First Byte) | < 800ms | 800ms–1.8s | > 1.8s |
<!-- Preload the hero image -->
<link rel="preload" as="image" href="/hero.webp" fetchpriority="high">
<!-- Use modern image formats -->
<img src="/hero.webp" alt="..." width="1200" height="600" loading="eager">
// Next.js — use next/image with priority
import Image from 'next/image'
<Image src="/hero.webp" alt="..." width={1200} height={600} priority />
/* Always set explicit width/height on images */
img { width: 100%; height: auto; aspect-ratio: 16/9; }
/* Reserve space for ads / embeds */
.ad-slot { min-height: 250px; }
<!-- Defer non-critical scripts -->
<script src="/analytics.js" defer></script>
<!-- Inline critical CSS, load rest async -->
<link rel="preload" href="/styles.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
stale-while-revalidate cache headers// next.config.ts
const config: NextConfig = {
images: {
formats: ['image/avif', 'image/webp'],
},
experimental: {
optimizeCss: true,
},
}
After fixing, re-run AuditKit or use:
development
# Structured Data Skill — AuditKit This skill is auto-included in the generated ZIP when the Structured Data pillar score is below 90. Structured data (Schema.org JSON-LD) helps search engines and AI systems understand your content type — enabling rich results in Google Search and better AI discoverability. --- ## JSON-LD Basics Always use `application/ld+json` script tags in `<head>`. Never use Microdata or RDFa (JSON-LD is the recommended format per Google). ```html <script type="applica
development
# SEO Skill — AuditKit This skill is auto-included in the generated ZIP when the SEO pillar score is below 90. ## Critical Requirements Every page MUST have: - `<title>` tag (50–60 characters) - `<meta name="description">` (120–158 characters) - `<link rel="canonical">` pointing to the preferred URL - At least one `<h1>` tag ## Meta Tags Checklist ```html <head> <!-- Required --> <title>Page Title — Site Name</title> <meta name="description" content="120–158 char description of this s
development
# Security Skill — AuditKit This skill is auto-included in the generated ZIP when the Security pillar score is below 90. ## HTTP Security Headers Add all of these to every response. Vercel users: add to `vercel.json`. Next.js users: add to `next.config.ts`. ### next.config.ts ```typescript const securityHeaders = [ { key: 'Strict-Transport-Security', value: 'max-age=63072000; includeSubDomains; preload', }, { key: 'Content-Security-Policy', value: [ "default-src
tools
# AI Readiness Skill — AuditKit This skill is auto-included in the generated ZIP when the AI Readiness pillar score is below 90. AI Readiness measures how discoverable and usable your project is by AI coding agents, LLM crawlers, and vibe-coders who ask their AI about your tool. --- ## llms.txt The `llms.txt` standard (https://llmstxt.org) is a Markdown file at your domain root that gives LLMs context about your project — like `robots.txt` but for AI. ``` # YourProject > One-sentence desc