Roier SEO
davila7/claude-code-templates
Technical SEO auditor and fixer. An agent skill from davila7/claude-code-templates.
Read-only automated QA sweep of a deployed stardust site on AEM Edge Delivery Services — validates routing, content fidelity vs the source capture, template conformance, rendered integrity…
$ npx skills add adobe/skills --skill qa -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install adobe/skills qa --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/adobe/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/stardust/skills/qa .claude/skills/qa && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "qa" agent skill from https://github.com/adobe/skills/tree/main/plugins/stardust/skills/qa into .claude/skills/qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qa", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/adobe/skills/tree/main/plugins/stardust/skills/qaType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add adobe/skills --skill qa -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install adobe/skills qa --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/adobe/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/stardust/skills/qa .agents/skills/qa && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "qa" agent skill from https://github.com/adobe/skills/tree/main/plugins/stardust/skills/qa into .agents/skills/qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qa", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add adobe/skills --skill qa -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install adobe/skills qa --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/adobe/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/stardust/skills/qa .cursor/skills/qa && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "qa" agent skill from https://github.com/adobe/skills/tree/main/plugins/stardust/skills/qa into .cursor/skills/qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qa", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/adobe/skills.git --path plugins/stardust/skills/qa--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add adobe/skills --skill qa -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install adobe/skills qa --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/adobe/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/stardust/skills/qa .gemini/skills/qa && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "qa" agent skill from https://github.com/adobe/skills/tree/main/plugins/stardust/skills/qa into .gemini/skills/qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qa", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install adobe/skills qaInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add adobe/skills --skill qa -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/adobe/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/stardust/skills/qa .github/skills/qa && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "qa" agent skill from https://github.com/adobe/skills/tree/main/plugins/stardust/skills/qa into .github/skills/qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qa", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add adobe/skills --skill qa -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install adobe/skills qa --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/adobe/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/stardust/skills/qa .opencode/skills/qa && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "qa" agent skill from https://github.com/adobe/skills/tree/main/plugins/stardust/skills/qa into .opencode/skills/qa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qa", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
qaRead-only automated QA sweep of a deployed stardust site on AEM Edge Delivery Services — validates routing, content fidelity vs the source capture, template conformance, rendered integrity…
QA is an agent skill from adobe/skills. Read-only automated QA sweep of a deployed stardust site on AEM Edge Delivery Services — validates routing, content fidelity vs the source capture, template conformance, rendered integrity (geometry, JS errors, broken images), visual regression vs baselines, metadata/SEO/JSON-LD, link integrity, accessibility (axe), and performance budgets, then emits a findings report with an allowlist for documented non-defects. Finds issues; never fixes them. Use when the user asks to "QA the site", "validate the migration"…
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 26 other files, including scripts (for example `reference/checks.md`, `schemas/qa-allowlist.schema.json` and `schemas/qa-report.schema.json`). Compatibility notes: Requires Node 22+, Playwright with Chromium resolvable from the project, playwright-cli on PATH, and the impeccable skill (github.com/pbakaus/impeccable)…
It sits in Frontend & Design, covering Accessibility, Web performance and Visual regression testing. It works with Adobe Experience Manager. The repository describes itself as: Adobe Skills for Agents. The licence is Apache-2.0.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit cbc9952. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 13 files in scripts/ (JavaScript, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
nodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
SITE_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires Node 22+, Playwright with Chromium resolvable from the project, playwright-cli on PATH, and the impeccable skill (github.com/pbakaus/impeccable) installed alongside stardust.
From compatibility in the SKILL.md frontmatter.
QA loads about 2k tokens when it runs. Until then it costs about 165 tokens; SKILL.md has 895 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from adobe/skills at commit cbc9952, republished under its Apache-2.0 licence (© adobe). 895 words, ~1,977 tokens.
.claude/skills/qa/SKILL.md (or your agent's skills folder). This skill also uses 22 other files; get the full folder from GitHub.One live URL in. One evidence-bound findings report out. This skill never
edits anything — not site content, not DA documents, not repo code. Its only
writes are report artifacts under stardust/qa/. If the user wants findings
fixed, that is a separate, explicit follow-up outside this skill.
qa is the post-deploy counterpart of rollout's delivery verification: where
rollout asks "did every page ship?", qa asks "is everything that shipped
actually correct?" — at all three layers a deploy can silently break:
.plain.html, full HTML, sheets, sitemap)A green upper layer never implies the lower one: a publish 200 ≠ delivered, delivered HTML ≠ rendered correctly.
skills/stardust/SKILL.md § Setup) if not
already done this session. qa works standalone too — it only needs a live
base URL.*.aem.live host or production domain). If
the user didn't give one, look in stardust/rollout/rollout.json
(site.liveHost) or ask.stardust/template-map.json (also supplies template assignments for
conformance), a paths file, and the live sitemap.xml (always fetched;
parity mismatches become findings, so a wrong sitemap can't silently shrink
coverage).--scrape stardust/scrape — verbatim fidelity vs the extraction capture--expected-blocks <json> — explicit per-template block expectations--parity <json> — dynamic parity file to replay (default
stardust/dynamics/parity.json; the dynamics check reports
parity-missing when absent)--auth-header "token …" / --token-env SITE_TOKEN — protected
origins; the secret is sent to the base origin only
(otherwise derived by fleet consensus)--blocks-dir <dir> — the site's blocks/ checkout, so the
editability check can honour @ew-exempt JSDoc tags (otherwise
pass --ew-exempt a,b for index-driven blocks)node_modules/playwright).
If missing, run the delivery-layer checks only (--checks routing,content,templates,metadata,links)
and tell the user what was skipped.stardust/status.jsonl per
reference/run-status.md (master skill) at sweep start/end.node <plugin>/skills/qa/scripts/qa.mjs \
--base https://main--<site>--<org>.aem.live \
--template-map stardust/template-map.json \
--scrape stardust/scrapeWrites stardust/qa/inventory.json, report.json, report.html, screenshots
under stardust/qa/shots/, and (first run) visual baselines under
stardust/qa/baselines/. Exit 0 = no active errors, 1 = active errors,
2 = infra failure. reference/checks.md documents every check, its finding
ids, and severity rationale. Useful variants: --checks <subset>,
--max-pages <n> (smoke run), --fail-on warn (strict gate). The ai-readability check
reproduces Adobe's AI Content Visibility Checker per page (served words ÷ rendered words) and
attributes the gap per block (deploy/reference/ai-readability.md).
The editability check is the post-deploy Experience Workspace
editability gate (deploy SKILL.md § 8, EW1–EW10): per page it re-creates
the da.live canvas's instrumentation on the served document, lets the live
page decorate, and counts which authored texts still carry their editor
index. editability/dead-text (error) = a block rebuilt authored text and
the author cannot click it in the canvas; editability/duplicated-index
(warn) = a presentational clone kept the index. Dead texts inside blocks
declared @ew-exempt (or listed in --ew-exempt) are info, not errors.
First run on a site: expect a wave of visual/baseline-created info findings —
that is the baseline being established, not a defect. Baselines are
screenshots and therefore local (stardust/.gitignore excludes
qa/baselines/ and qa/shots/, master skill § Artifacts): later runs on the
same machine diff against them; a fresh clone re-establishes them on its
first sweep. qa/allowlist.json is the tracked record of judgement.
The deterministic sweep marks two finding classes as needs triage; read
report.json and judge only those:
content/verbatim-below-threshold — inspect evidence.missingNodes against
the live page and the scrape capture: is copy actually lost/corrupted
(defect) or acceptably transformed (candidate for the allowlist)?visual/visual-diff — open evidence.baseline and evidence.current
side by side (they are PNGs; view them): real layout/style regression, or
benign dynamism (carousel frame, loaded font, live embed)? Use the
bands evidence to locate the changed region.Record each verdict by annotating the finding in your summary to the user
(defect vs non-defect + why). Do not edit report.json scores and do not fix
anything.
Summarize: totals by severity, the confirmed defects first (with page paths
and one-line evidence), then triaged-away flags with their rationale, then
notable warns. Point at stardust/qa/report.html. Recommend — but do not
apply — fixes.
stardust/qa/allowlist.json (schema in schemas/qa-allowlist.schema.json)
keeps known non-defects from drowning every future run — e.g. a source page
that itself ships placeholder copy, or a form endpoint deliberately awaiting a
client credential. Entries match on check/id/path/messagePattern and must
carry a reason. Allowlisted findings stay in the report, greyed out, so the
evidence is never deleted.
Only add an entry when the user confirms the flag is a non-defect (or it is already documented as one in the project's records). Never allowlist to make a run green.
stardust/qa/ (plus the status.jsonl ledger line).<check>/check-crashed (error), never silently dropped.The runner is plain node with no plugin-runtime dependency, so the same
command works from a GitHub Action or cron for drift monitoring; --fail-on
sets the gate. In CI without playwright, pin --checks to the delivery-layer
subset.
© adobe, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 22 other files (scripts) in plugins/stardust/skills/qa of adobe/skills.
Open the folder on GitHubat commit cbc9952
QA next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| QA this skilladobe/skills | 195 | — | ~2k | Automated safety check: Pass | Apache-2.0 | |
| Roier SEOdavila7/claude-code-templates | 32k | — | ~2.7k | Automated safety check: Pass | MIT | |
| Vrtmarigold-ui/marigold | 146 | — | ~787 | Automated safety check: Pass | MIT | |
| Control UIcursor/plugins | 10k | 2 repos | ~1.2k | Automated safety check: Pass | None | |
| Browser QAaffaan-m/ECC | 274k | 2 repos | ~1k | Automated safety check: Pass | MIT | |
| Design QAplugin87/ux-ui-agent-skills | 1.5k | — | ~635 | Automated safety check: Pass | MIT |
davila7/claude-code-templates
Technical SEO auditor and fixer. An agent skill from davila7/claude-code-templates.
marigold-ui/marigold
DST — Trigger the Visual-Regression-Tests (Chromatic) GitHub Actions workflow on the current or a given branch.
cursor/plugins
Build or adapt a local browser/CDP harness to drive and inspect a web, IDE, or Electron UI.
affaan-m/ECC
Run automated post-deploy UI verification with a browser automation MCP (claude-in-chrome, Playwright, or Puppeteer): console-error and Core Web Vitals smoke checks, form and auth-flow interaction…
plugin87/ux-ui-agent-skills
Set up or run design QA gates — token + hardcoded-value lint, automated a11y (axe), contrast, visual regression across variants/states/themes/RTL, and the manual a11y checklist.
dylanfeltus/skills
Use vision models to self-review screenshots against design intent.
adobe/skills
Scaffolds, implements, deploys and debugs Adobe Runtime actions in App Builder projects, with templates for webhooks, events, database CRUD, sequences and Asset Compute workers.
adobe/skills
Launches Chrome with an unpacked extension over CDP, opens its sidepanel, popup or options page, and hands over to cdp-connect for clicks, typing and screenshots.
adobe/skills
Extracts icons, metadata, text, forms, videos and social links from any web page with playwright-cli, with SVG icon classification and cleanup.
adobe/skills
Detect all languages used on a webpage — both declared (html@lang, hreflang alternate links, nested lang= attributes, meta content-language) and actually present in the body text (Google CLD3 via…
adobe/skills
Prepare any webpage for clean interaction by detecting and removing disruptive overlays (cookie banners, GDPR consent, modals, popups, newsletter signups, paywalls, login walls).
adobe/skills
Reduce a webpage to a structural skeleton with semantic tokens.
Works with
Categories
Read-only automated QA sweep of a deployed stardust site on AEM Edge Delivery Services — validates routing, content fidelity vs the source capture, template conformance, rendered integrity…. QA is an agent skill from adobe/skills. Read-only automated QA sweep of a deployed stardust site on AEM Edge Delivery Services — validates routing, content fidelity vs the source capture, template conformance, rendered integrity (geometry, JS errors, broken images), visual regression vs baselines, metadata/SEO/JSON-LD, link integrity, accessibility (axe), and performance budgets, then emits a findings report with an allowlist for documented non-defects.
QA fits situations like: the user asks to QA the site; validate the migration; check the live site for issues; run a QA sweep/regression check.
Run `npx skills add adobe/skills --skill qa -a claude-code`. Or copy the skill folder (plugins/stardust/skills/qa in adobe/skills) into .claude/skills/qa in your project. Claude Code loads it when a task matches its description.
Run `npx skills add adobe/skills --skill qa -a codex`. Or copy the skill folder (plugins/stardust/skills/qa in adobe/skills) into .agents/skills/qa in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add adobe/skills --skill qa -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/qa, .gemini/skills/qa, .github/skills/qa and .opencode/skills/qa in your project.
Going by SKILL.md and its folder, QA needs JavaScript for the scripts in its folder, the command-line tools its instructions call (node) and credentials named SITE_TOKEN. Our summary lists: Node.js; A credential in SITE_TOKEN. Compatibility (from SKILL.md): Requires Node 22+, Playwright with Chromium resolvable from the project, playwright-cli on PATH, and the impeccable skill (github.com/pbakaus/impeccable) installed alongside stardust..
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
QA is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 7.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with QA: Roier SEO (davila7/claude-code-templates, 32k stars), Vrt (marigold-ui/marigold, 146 stars), Control UI (cursor/plugins, 10k stars) and Browser QA (affaan-m/ECC, 274k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
adobe (a GitHub organization) maintains it in adobe/skills, which has 195 GitHub stars. The repository holds 105 skills in this directory. The repository was last updated on October 6, 2026.
Source: adobe/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.