/audit
Full three-perspective audit of an existing website from one URL — design (tensions + concrete improvement opportunities), SEO/technical, and LLM/AI-search visibility — plus Core Web Vitals, synthesized into a scored, evidence-bound report. Use when the user asks to "audit this
$ npx -y skills add adobe/skills --skill audit --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/audit
Context preview
The summary Claude sees to decide when to auto-load this skill.
Full three-perspective audit of an existing website from one URL — design (tensions + concrete improvement opportunities), SEO/technical, and LLM/AI-search visibility — plus Core Web Vitals, synthesized into a scored, evidence-bound report. Use when the user asks to "audit this
SKILL.md
audit.SKILL.mdname: audit
description: Full three-perspective audit of an existing website from one URL — design (tensions + concrete improvement opportunities), SEO/technical, and LLM/AI-search visibility — plus Core Web Vitals, synthesized into a scored, evidence-bound report. Use when the user asks to "audit this site", "site audit", "design audit", "SEO audit", "why is my site underperforming", "LLM visibility", "how does my site look to AI", or invokes /stardust:audit <url>.
license: Apache-2.0
stardust:audit
One URL in. One scored, evidence-bound audit out.
`audit` looks at an existing website from three perspectives — design (brand tensions + concrete improvement opportunities), SEO/technical, and LLM/AI-search visibility — measures Core Web Vitals, and synthesizes everything into a seven-dimension scorecard plus a prioritized findings ledger that tells the owner what to improve to generate a better business outcome. The report is also the natural seed for a redesign: its findings feed `stardust:uplift`'s improvements list and `stardust:direct`'s Phase 2.5, and it closes with uplift-shaped redesign directions so "run `stardust:uplift`" is the obvious next step.
Opinionated defaults
- **Multi-page by default** — `stardust:extract <url> --cap 8`
(home + seven IA pillars) unless `--single` or `--pages` overrides.
- **Non-interactive** — the audit never asks questions. Every
assumption it makes instead is recorded in `audit.json#assumptions` and stated in the report's executive summary.
- **Evidence-bound** — every claim cites a measurement, a `T-*`
tension id, a check result, or a screenshot observation. A claim with no citation does not ship.
- **No fabricated data** — a measurement that could not be taken is
reported as `not measured (<reason>)`, never estimated silently. An estimate, where reasoned, is labeled as one with its basis.
- **Graceful degradation, not failure** — optional capabilities
(refero, marketing-skills, modern-web-guidance, PageSpeed Insights) are probed once and their absence is recorded, never fatal. See § Degradation ladder.
Inputs
- `<url>` — required. The site to audit. A path narrows the crawl to
that subtree (extract's semantics).
- `--pages <n>` — optional. Override the default 8-page extraction
cap (passed through as `--cap <n>`).
- `--single` — optional. One-page audit of the given URL only. The
cross-page checks (duplicate titles, sitemap coverage, CTA fragmentation across pages) then run on a single page and say so.
- `--deploy` — optional. After the report renders, publish
`report.html` as a single self-contained page via the DA transport (`../deploy/da-deploy-protocol.md`: source PUT → preview → live) and print the delivered URL. Transport only — the report never goes through deploy's section→block conversion, which would decompose the self-contained file.
- `--benchmark` — optional. Force Phase 5 reference benchmarking:
probe the refero MCP even when the earlier capability probe was slow or ambiguous. Without this flag Phase 5 fires only when the probe succeeds quickly.
There are no other flags. Everything else is derived from the captured surface or governed by the underlying skills' contracts.
Phase 0 — Setup
1. Run the master skill's setup (`../stardust/SKILL.md` § Setup) — with one audit-specific carve-out: **impeccable absence is a degradation here, not the master setup's hard stop.** When the dep check fails, record `impeccable: unavailable` in `audit.json#degradations` and continue — Phase 2 runs without the critique/audit arms (VISION pass + accessibility fold-in still fire) and Phase 6 skips the report render; the run ends at stop condition (b) *after* `audit.json` is written. 2. **Extraction freshness check.** If `stardust/current/` holds an extraction of the **same origin** less than **7 days** old — origin from `stardust/state.json` (the site record extract stamped), recency from the newest `pages/<slug>.json#_provenance.fetchedAt` — reuse it and record `site.extraction.reused: true`. Otherwise invoke `stardust:extract <url> --cap 8` (or `--single` / `--pages <n>` per the inputs). Extract owns the crawl, the screenshots, `_brand-extraction.json`, `pages/<slug>.json`, `PRODUCT.md` / `DESIGN.md`, and `brand-review.html` with its Tensions section. 3. **Probe optional capabilities once**, recording each outcome in the degradation record (`audit.json#degradations`):
- `marketing-skills` plugin (`seo-audit`, `ai-seo` skills present?)
- `modern-web-guidance` (`npx -y modern-web-guidance@latest search
"<query>"` responds?)
- refero MCP (attempt `mcp__refero__refero_search_styles`; treat a
tool-not-found or timeout as unavailable)
- PageSpeed Insights API (network-reachable without a key?)
- rollout project (`stardust/rollout/rollout.json` present?)
If extract fails entirely (site unreachable, bot-management block past the headed-Chrome fallback), stop and surface extract's error verbatim — there is nothing to audit. This is the only hard stop before synthesis; see § Stop conditions.
Procedure
Phase 1 — Brand surface & tension analysis
Read `stardust/current/_brand-extraction.json` and `stardust/current/brand-review.html` § Tensions surfaced (rule catalog in `../extract/reference/brand-review-template.md` § Tensions). Every fired `T-*` tension is candidate evidence for a finding — carry the ids forward, do not re-derive the detections.
Compute the four brand-expression measurements the report needs. Each lands in `audit.json#measurements` with `status` + `method` per `reference/report-format.md`:
- **`brandColorShare`** — brand-color share of painted pixels on the
captured home screenshot. Preferred method: Playwright pixel sampling (`method: "pixel-sample"`) — load the screenshot, sample a grid (e.g. every 8th pixel), classify each sample to the nearest palette entry within a tolerance, a
Read more
name: audit description: Full three-perspective audit of an existing website from one URL — design (tensions + concrete improvement opportunities), SEO/technical, and LLM/AI-search visibility — plus Core Web Vitals, synthesized into a scored, evidence-bound report. Use when the user asks to "audit this site", "site audit", "design audit", "SEO audit", "why is my site underperforming", "LLM visibility", "how does my site look to AI", or invokes /stardust:audit <url>. license: Apache-2.0
stardust:audit
One URL in. One scored, evidence-bound audit out.
`audit` looks at an existing website from three perspectives — design (brand tensions + concrete improvement opportunities), SEO/technical, and LLM/AI-search visibility — measures Core Web Vitals, and synthesizes everything into a seven-dimension scorecard plus a prioritized findings ledger that tells the owner what to improve to generate a better business outcome. The report is also the natural seed for a redesign: its findings feed `stardust:uplift`'s improvements list and `stardust:direct`'s Phase 2.5, and it closes with uplift-shaped redesign directions so "run `stardust:uplift`" is the obvious next step.
Opinionated defaults
- **Multi-page by default** — `stardust:extract <url> --cap 8`
(home + seven IA pillars) unless `--single` or `--pages` overrides.
- **Non-interactive** — the audit never asks questions. Every
assumption it makes instead is recorded in `audit.json#assumptions` and stated in the report's executive summary.
- **Evidence-bound** — every claim cites a measurement, a `T-*`
tension id, a check result, or a screenshot observation. A claim with no citation does not ship.
- **No fabricated data** — a measurement that could not be taken is
reported as `not measured (<reason>)`, never estimated silently. An estimate, where reasoned, is labeled as one with its basis.
- **Graceful degradation, not failure** — optional capabilities
(refero, marketing-skills, modern-web-guidance, PageSpeed Insights) are probed once and their absence is recorded, never fatal. See § Degradation ladder.
Inputs
- `<url>` — required. The site to audit. A path narrows the crawl to
that subtree (extract's semantics).
- `--pages <n>` — optional. Override the default 8-page extraction
cap (passed through as `--cap <n>`).
- `--single` — optional. One-page audit of the given URL only. The
cross-page checks (duplicate titles, sitemap coverage, CTA fragmentation across pages) then run on a single page and say so.
- `--deploy` — optional. After the report renders, publish
`report.html` as a single self-contained page via the DA transport (`../deploy/da-deploy-protocol.md`: source PUT → preview → live) and print the delivered URL. Transport only — the report never goes through deploy's section→block conversion, which would decompose the self-contained file.
- `--benchmark` — optional. Force Phase 5 reference benchmarking:
probe the refero MCP even when the earlier capability probe was slow or ambiguous. Without this flag Phase 5 fires only when the probe succeeds quickly.
There are no other flags. Everything else is derived from the captured surface or governed by the underlying skills' contracts.
Phase 0 — Setup
1. Run the master skill's setup (`../stardust/SKILL.md` § Setup) — with one audit-specific carve-out: **impeccable absence is a degradation here, not the master setup's hard stop.** When the dep check fails, record `impeccable: unavailable` in `audit.json#degradations` and continue — Phase 2 runs without the critique/audit arms (VISION pass + accessibility fold-in still fire) and Phase 6 skips the report render; the run ends at stop condition (b) *after* `audit.json` is written. 2. **Extraction freshness check.** If `stardust/current/` holds an extraction of the **same origin** less than **7 days** old — origin from `stardust/state.json` (the site record extract stamped), recency from the newest `pages/<slug>.json#_provenance.fetchedAt` — reuse it and record `site.extraction.reused: true`. Otherwise invoke `stardust:extract <url> --cap 8` (or `--single` / `--pages <n>` per the inputs). Extract owns the crawl, the screenshots, `_brand-extraction.json`, `pages/<slug>.json`, `PRODUCT.md` / `DESIGN.md`, and `brand-review.html` with its Tensions section. 3. **Probe optional capabilities once**, recording each outcome in the degradation record (`audit.json#degradations`):
- `marketing-skills` plugin (`seo-audit`, `ai-seo` skills present?)
- `modern-web-guidance` (`npx -y modern-web-guidance@latest search
"<query>"` responds?)
- refero MCP (attempt `mcp__refero__refero_search_styles`; treat a
tool-not-found or timeout as unavailable)
- PageSpeed Insights API (network-reachable without a key?)
- rollout project (`stardust/rollout/rollout.json` present?)
If extract fails entirely (site unreachable, bot-management block past the headed-Chrome fallback), stop and surface extract's error verbatim — there is nothing to audit. This is the only hard stop before synthesis; see § Stop conditions.
Procedure
Phase 1 — Brand surface & tension analysis
Read `stardust/current/_brand-extraction.json` and `stardust/current/brand-review.html` § Tensions surfaced (rule catalog in `../extract/reference/brand-review-template.md` § Tensions). Every fired `T-*` tension is candidate evidence for a finding — carry the ids forward, do not re-derive the detections.
Compute the four brand-expression measurements the report needs. Each lands in `audit.json#measurements` with `status` + `method` per `reference/report-format.md`:
- **`brandColorShare`** — brand-color share of painted pixels on the
captured home screenshot. Preferred method: Playwright pixel sampling (`method: "pixel-sample"`) — load the screenshot, sample a grid (e.g. every 8th pixel), classify each sample to the nearest palette entry within a tolerance, a
Repo: adobe/skills
Other skills on adobe-skills.
- /aa-conversion-funnel-analysis
Analyzes a multi-step conversion funnel to find where visitors drop off and which steps have the worst leakage. Use this skill when someone describes a journey and asks about conversion rates, drop-off, fallout, or step completion. Trigger for "analyze our checkout funnel,"
Open skill - /aa-executive-briefing
Generates a concise, executive-ready performance summary covering key metrics, trends, and what's driving movement. Use this skill when someone needs to produce a briefing, executive summary, performance narrative, or stakeholder readout — for example, "write an exec summary of
Open skill - /aa-kpi-pulse
Produces a compact KPI digest showing how key metrics changed over a period and what's driving the movement. Use this skill when someone asks for a performance summary, a weekly recap, a morning briefing, a KPI update, or any variation of "how did we do this week/month." Also
Open skill - /aa-segment-performance-comparator
Compares the performance of two or more audience segments across key metrics side by side. Use this skill when someone wants to compare audiences or visitor groups — for example, "how do mobile visitors compare to desktop on conversion," "compare new vs. returning visitors,"
Open skill - /aa-top-movers-watchlist
Identifies which items (pages, campaigns, products, channels, regions) had the biggest increases or decreases for a key metric between two time periods. Use this skill when someone asks "what's up and what's down," "which campaigns moved the most," "top gainers and losers,"
Open skill - /cja-dimension-analysis
Comprehensive dimension analysis and reporting for CJA. Use this skill whenever the user wants to analyze one or more dimensions — including cardinality, distribution/skew, trends, anomalies, data quality errors, comparisons, and forecasting. Also trigger when someone asks "what
Open skill

