What problem does it solve? Marketing site projects built with AI skills often fail because the framework in use is ambiguous — a Vite-specific step run against a Next.js repo breaks the build. This Skill establishes a single source of truth for which framework track a site runs on, how to detect it in an existing repo, and how to translate every site convention between tracks. ## Core Features & Use Cases - Track Selection Guidance: Provides decision criteria for choosing between the vite track (Vite + React + TypeScript on Firebase Hosting) and the nextjs track (Next.js App Router on Firebase App Hosting). - Automatic Track Detection: Detects the active framework from .site-framework.json, next.config.ts, vite.config.ts, or package.json dependencies, and records the result so later skills never guess. - Convention Translation Map: Maps every site concern — routing, metadata, sitemaps, CSP, env vars, images, deploys — between the two tracks so skill steps written for one track work on the other. - Use Case: Before running any site-building skill on an unfamiliar repo, run this contract first to confirm the framework, write .site-framework.json, and avoid applying Vite-only steps like Puppeteer prerendering to a Next.js project. ## Quick Start Ask the assistant to read the site framework contract and detect which framework track this repository uses before running any other site skill.