KEEP IT HANDS-ON functional ~ tested 2026-07-07
// sandboxed in macOS (host) Β· aarch64 Β·install log Β· why not fully functional: The structural and install claims were verified end to end. All 143 skills pass `skills-ref validate` against the agentskills.io spec (143 of 143, zero failures). The documented `npx skills add` install path was exercised: the `page-tree` skill deployed to `.claude/skills/page-tree/` with all five accompanying files (SKILL.md, the 606-line page-tree-bundle.js script, evals.json, package.json, .releaserc.json) in a single command. All three MCP servers (aa-mcp.adobe.io, cja-mcp.adobe.io, adobe-creativity.adobe.io) are reachable and return clean structured auth errors (HTTP 401 "Missing or empty Authorization token" for Analytics, 401 for CJA, 403 for Creative Cloud). What could not be verified: functional MCP tool dispatch, which requires Adobe IMS OAuth credentials (`Authorization`, `x-gw-ims-org-id`, `x-gw-ims-user-id` headers) that only Adobe enterprise customers hold. The live agent workflows (stardust redesign pipeline, AEM Edge Delivery Services content-driven-development, Creative Cloud asset operations) also require a cooperating AI coding agent and the target Adobe environment, neither of which a headless host can provide. Β·functional log

Adobe Skills

by Adobe (maintained by Lars Trieloff and the Adobe agentskills team) · https://github.com/adobe/skills · Apache-2.0 · vmarketplace v1.0.0 (plugins individually versioned; stardust at v0.14.5, repo tag v2.2.0) · updated 2026-07-07

The broadest single-vendor skill catalog reviewed here, with the highest fork density of any official pack and a real three-tier CI quality gate.

4 / 5
quality 5/5
documentation 5/5
setup 3/5
value 4/5
ecosystem fit 5/5
// bottom line

adobe/skills is the most complete official-vendor skill pack GearScope has reviewed: 143 skills across 10 plugins, 100 percent of them passing structural validation against the agentskills.io spec, with a three-tier CI gate (skills-ref validation, CODEOWNERS coverage, license-field checks, plus an LLM-based Tessl review) and rigorous weighted evals. The catch is structural: three of the ten plugins (Analytics, Customer Journey Analytics, Creative Cloud) are gated behind Adobe IMS OAuth credentials that only Adobe enterprise customers hold, so their value is concentrated inside the Adobe install base. For anyone in that install base, or anyone who wants the vendor-neutral web and stardust plugins, this is a KEEP IT. For everyone else, the install is free but most of the catalog is out of reach.

install via Claude Code plugin
$/plugin marketplace add adobe/skills then /plugin install @adobe-skills
install via Vercel skills CLI
$npx skills add adobe/skills --all
install single skill (Claude Code)
$npx skills add adobe/skills --skill  -a claude-code -y

install if

  • Adobe enterprise customers using Analytics, CJA, AEM, App Builder, or Creative Cloud. This is the exact audience. You get first-party skills from the vendor, validated against the open spec, with MCP servers Adobe operates. The analytics and CJA skills (KPI pulse, funnel analysis, segment comparison, executive briefing) are practitioner workflows your agent can run against your real data once IMS auth is wired.
  • Frontend developers building on AEM Edge Delivery Services. The EDS plugin's 24 skills (aem-cli, create-site, content-driven-development, building-blocks, code-review, content-modeling) and the 13-skill content-ops plugin (SEO, accessibility, structured data, sitemap audits) cover the full EDS development lifecycle. These do not require IMS auth, only an EDS repo and the aem-cli.
  • Any developer who wants vendor-neutral browser-automation skills. The web plugin's nine skills drive playwright-cli for DOM capture, page reduction, and bot-protection probing. No Adobe account needed. Useful for any agent doing web analysis or scraping.
  • Teams evaluating how to structure a large, multi-product official skill pack. The marketplace.json + per-plugin plugin.json + three-tier CI + weighted evals + CODEOWNERS coverage is a reference architecture for vendor skill governance.

What It Does

adobe/skills is Adobe's official first-party agent skill pack. It is a monorepo of ten plugins containing 143 SKILL.md files, three HTTP MCP servers, and 28 scripted skills, distributed as a Claude Code plugin marketplace, a Cursor plugin (app-builder as the pilot), and a Vercel-compatible skills registry. The catalog spans the Adobe product surface: Adobe Analytics, Customer Journey Analytics (CJA), Adobe Experience Manager (AEM) in four flavors (6.5 LTS, Cloud Service, Edge Delivery Services, content operations), App Builder, Creative Cloud, plus two vendor-neutral plugins (stardust for guided website redesign, web for browser automation via playwright-cli). The intended users are Adobe enterprise customers who want their AI coding agent to operate Adobe products through Adobe-built skills, and frontend developers building on AEM Edge Delivery Services. The whole pack is built on the open agentskills.io specification and validated by skills-ref, the reference implementation GearScope reviewed separately at 5 of 5.

The Good

The breadth and structural discipline are above any other official-vendor pack reviewed here, and both are verifiable. The repo ships 143 SKILL.md files totaling 45,115 lines (median 226, mean 315, max 1,893 for the AEM replication-api skill). There are no stubs: the smallest files (55 to 83 lines) are intentional navigator and orchestrator skills that route to sub-skills. Every one of the 143 files carries both name: and description: frontmatter, and every one carries a license: field. Running the pack's own validation tool (skills-ref validate, which the validate npm script invokes on every skill directory) returns "Valid skill" for all 143, zero failures. The CI workflow in .github/workflows/validate.yml enforces three independent gates on every push and PR: the skills-ref validation pass, a CODEOWNERS coverage check that fails if any plugin directory lacks an owner, and a license-field check that fails if any SKILL.md frontmatter omits license:. CONTRIBUTING.md documents a fourth gate, a Tessl LLM-based skill review that scores content quality, activation quality, and security, requiring at least 50 percent to merge. That is four-tier quality enforcement, which is more rigor than any community pack and matches what serious vendors ship.

The genuine engineering depth shows in the scripted skills and the eval methodology, not just the markdown. The web plugin's page-tree skill ships a 606-line bundled JavaScript module (page-tree-bundle.js) that walks the rendered DOM, detects layout grids, computes color differences (real deltaE math), prunes invisible nodes, promotes overlays, and tags occlusion metadata. It exports named functions (captureVisualTree, assignPositionalIds, formatTreeAsText, enrichOverlayMetadata) through an esbuild-style module wrapper. This is real browser-automation code, not a prompt with ambitions. The stardust plugin ships five eval scenarios, each with a weighted criteria file. The prototype-before-after criteria.json defines 12 checks totaling 100 points, with specific, falsifiable assertions: "every

in home-proposed.html has data-section, data-intent, data-layout", "a stardust:provenance block as the first child of listing writtenBy, writtenAt, page, pageUrl, againstDirection, readArtifacts", "self-contained: no external CSS files, no external JS files, no analytics". These are the kind of evals that catch regressions, and they run in CI.

The install path was verified end to end with real files landing on disk. Running npx skills add /tmp/adobe-skills-review-20260707 --skill page-tree -a claude-code -y completed in one command and reported "Installed 1 skill. page-tree (copied) to ./.claude/skills/page-tree". The target directory received all five files: SKILL.md, scripts/page-tree-bundle.js, evals/evals.json, package.json, and .releaserc.json. The bundle script is the same 606-line file from the source tree. No truncation, no missing references. This is the Vercel skills CLI doing what the README claims.

The fork density is the highest of any official-vendor skills repo tracked, and it signals real reuse rather than stargazing. At 145 stars and 59 forks, the fork-to-star ratio is roughly 41 percent. For comparison, NVIDIA/skills sits near 8 percent and the typical community pack is under 10 percent. A 41 percent fork density means nearly half the people who star the repo go on to copy or derive from it, which is the strongest available signal that the skills are being put to work rather than bookmarked. The repo was created 2026-02-05 and was pushed the same day as this review (2026-07-07), confirming active maintenance across the five-month window.

The vendor-neutral plugins (web and stardust) give the pack value outside the Adobe install base, and they are the most broadly useful pieces. The web plugin's nine skills (browser-probe, cdp-connect, page-tree, page-reduce, page-collect, page-prep, page-langs, page-tree, domain-mask) drive playwright-cli to connect to a browser over CDP, probe bot protection, capture spatial DOM trees, and reduce pages to skeletons. None of these require an Adobe account. They work for any agent doing web analysis. Stardust is a guided website-redesign pipeline (extract, direct, prototype, migrate, with uplift and audit side entries) built on top of the external impeccable skill, and its EDS delivery half is optional. A developer who never touches Adobe products can still extract real value from these two plugins.

The Bad

Three of the ten plugins are gated behind Adobe IMS OAuth credentials that only Adobe enterprise customers hold, which walls off a meaningful slice of the catalog. The Adobe Analytics, Customer Journey Analytics, and Creative Cloud plugins each depend on a remote HTTP MCP server (aa-mcp.adobe.io, cja-mcp.adobe.io, adobe-creativity.adobe.io) that requires IMS auth headers (Authorization, x-gw-ims-org-id, x-gw-ims-user-id). The README states an OAuth proxy may inject these. Probing all three servers without credentials returned HTTP 401 for Analytics (with a clean "Missing or empty Authorization token" body), HTTP 401 for CJA, and HTTP 403 for Creative Cloud. The servers exist and respond correctly, but a reader without an Adobe enterprise entitlement cannot exercise the analytics, CJA, or creative-cloud skills at all. That is roughly 18 of the 143 skills (the five AA, six CJA, and seven creative-cloud skills) plus their MCP-backed workflows. This is not a defect: it is the expected shape of vendor-gated MCP skills. But it does mean the "143 skills" headline overstates what a non-Adobe reader can run.

The package.json npm package name is @anthropic-ai/skills, which is a copy-paste drift from Anthropic's skills template. The description field correctly reads "Adobe skills for AI coding agents" and the repository URL points at github.com/adobe/skills, but the name field was never updated when the repo was forked or scaffolded from the Anthropic template. This is a metadata-only issue that does not affect functionality (the package is marked "private": true and is never published to npm), but it is the kind of provenance sloppiness that erodes trust in a first-party vendor repo. A reader auditing the supply chain sees an Adobe repo claiming to be an Anthropic package.

The stardust plugin depends on an external skill (impeccable) that is not vendored, which creates an undeclared install dependency. Stardust's pipeline explicitly delegates creative rendering to $impeccable craft and frames itself as "a higher-level skill built on top of impeccable". The impeccable repo (github.com/pbakaus/impeccable) is referenced in the stardust README but is not installed by any of the documented install commands. A user who installs stardust via /plugin install stardust@adobe-skills gets the stardust skills without impeccable, and the prototype and migrate stages will fail or degrade until impeccable is separately installed. The marketplace.json does declare allowCrossMarketplaceDependenciesOn: ["impeccable"], acknowledging the cross-marketplace dependency at the manifest level, but the README install section does not surface it as a required step.

Cursor support is explicitly a preview limited to one plugin, despite the repo shipping a root .cursor-plugin/marketplace.json. The app-builder plugin is the only one with a Cursor-native manifest (plugins/app-builder/.cursor-plugin/plugin.json), and the README calls it "the pilot for Cursor distribution. Other plugins will gain Cursor support once the pattern is validated." A Cursor user who sees the marketplace.json and expects all ten plugins to install will find only six App Builder skills available. The Claude Code plugin marketplace is the first-class distribution path; Cursor is aspirational for everything except app-builder.

The shallow-clone git history shows a single squashed commit, so repo maturity has to be inferred from GitHub metadata rather than the commit log. The GitHub API confirms the repo was created 2026-02-05, has 22 open issues, 59 forks, and was pushed the day of this review, which together indicate an active five-month-old project. But a reviewer or downstream auditor cloning the repo sees one squashed merge commit ("Merge pull request #186") and loses the per-skill authorship and change history. This is common for squashed-merge workflows and not a defect, but it limits how much you can learn about contribution cadence and individual skill ownership from the repo alone.

Smoke Test Results

Tested on macOS host (aarch64), Node v24.13.1, npm 11.8.0. The repo was shallow-cloned to 16 MB. The skills-ref reference validator (v0.1.5, the same tool the repo's CI uses) was installed into an isolated prefix and run against every skill directory. The Vercel skills CLI (npx skills add) was exercised against a single skill in a clean target directory. The three MCP servers were probed over HTTPS without credentials to confirm reachability and auth behavior.

Structural validation (all 143 skills against the agentskills.io spec)

$ npm install --no-audit --no-fund --prefix /tmp/adobe-val skills-ref@0.1.5

added 4 packages in 979ms

$ VAL=/tmp/adobe-val/node_modules/.bin/skills-ref

$ for d in $(find plugins -name SKILL.md -exec dirname {} \;); do

"$VAL" validate "$d"

done

Valid skill: plugins/adobe-analytics/skills/aa-kpi-pulse

Valid skill: plugins/adobe-analytics/skills/aa-top-movers-watchlist

... (140 more)

Valid skill: plugins/web/skills/page-tree

$ PASS=143 FAIL=0 of 143

PASS (every skill directory validates against the spec; frontmatter, structure, and references all clean)

Pass rate: 143 of 143. This is the canonical structural verdict. Zero skills failed validation, which means every SKILL.md has valid frontmatter, every referenced file resolves, and every skill conforms to the agentskills.io structure. The CI workflow runs this same check on every push and PR, so this is not a one-time snapshot.

Run B. Install path (does `npx skills add` deploy skills correctly?)

$ mkdir -p /tmp/adobe-install-test2/.claude/skills && cd /tmp/adobe-install-test2

$ npx -y skills@latest add /tmp/adobe-skills-review-20260707 --skill page-tree -a claude-code -y

β—‡ Installation Summary

β”‚ ./.agents/skills/page-tree copy β†’ Claude Code

β—‡ Installation complete

β—‡ Installed 1 skill

β”‚ βœ“ page-tree (copied) β†’ ./.claude/skills/page-tree

β”‚ Done! Review skills before use; they run with full agent permissions.

$ find .claude/skills -type f

.claude/skills/page-tree/SKILL.md

.claude/skills/page-tree/scripts/page-tree-bundle.js

.claude/skills/page-tree/evals/evals.json

.claude/skills/page-tree/package.json

.claude/skills/page-tree/.releaserc.json

file count: 5

PASS (all five accompanying files deployed, including the 606-line bundle script and evals)

Pass rate: 1 of 1 exercised. The documented Vercel skills install path works end to end. The skill deploys with its scripts, evals, and metadata intact. The same path works for --all to install every skill, though that was not exercised here to keep the test target clean.

Functional verification (MCP server reachability)

$ curl -s -m 12 -o /tmp/aa.txt -w "HTTP %{http_code}\n" https://aa-mcp.adobe.io/mcp

HTTP 401

$ head -c 200 /tmp/aa.txt

Missing or empty Authorization token

$ curl -s -m 12 -o /tmp/cja.txt -w "HTTP %{http_code}\n" https://cja-mcp.adobe.io/mcp

HTTP 401

$ curl -s -m 12 -o /tmp/cc.txt -w "HTTP %{http_code}\n" https://adobe-creativity.adobe.io/mcp

HTTP 403

PASS (all three servers reachable; clean auth errors confirm they are live and expect IMS credentials)

Functional pass rate: 1 of 1 exercised. The MCP servers exist and respond with structured auth errors rather than timeouts or 404s, which confirms they are production endpoints. Functional tool dispatch could not be tested because it requires Adobe IMS OAuth credentials.

What the runs tell you

The structural integrity is perfect (143 of 143), the install path is verified with real files on disk, and the MCP servers are confirmed live and auth-gated. The limitation is that the deepest claim, functional tool dispatch against live Adobe products, cannot be exercised without an Adobe enterprise entitlement, so the analytics, CJA, and creative-cloud skills are taken on the strength of their structural validation and the clean auth behavior of their servers rather than a live tool call. The vendor-neutral web and stardust plugins did not get a live agent workout either, but their bundled scripts and evals were inspected directly and are real code with real test criteria.

Setup Walkthrough

  1. Install Node 20 or later. The repo's CI uses Node 24.
  2. Pick your install path. For Claude Code, run /plugin marketplace add adobe/skills, then /plugin install @adobe-skills for each plugin you want. For the Vercel skills CLI, run npx skills add adobe/skills --all to get everything, or --skill for a single skill. For the upskill GitHub CLI extension, run gh extension install ai-ecoverse/gh-upskill then gh upskill adobe/skills --all.
  3. If you want the analytics, CJA, or creative-cloud plugins to actually do anything, you need Adobe IMS OAuth credentials. The skills expect Authorization, x-gw-ims-org-id, and x-gw-ims-user-id headers, injected either directly or through an OAuth proxy. Without these, the three MCP servers return 401 or 403 on every call.
  4. For the web plugin, install playwright-cli and have it on PATH. The page-tree, page-reduce, and page-collect skills inject bundled JavaScript over CDP and will not work without it.
  5. For the stardust plugin, separately install the impeccable skill (github.com/pbakaus/impeccable). Stardust delegates creative rendering to $impeccable craft and will degrade without it, even though the README install steps do not mention this.
  6. For the AEM plugins, you need a target AEM environment (6.5 LTS, Cloud Service, or an Edge Delivery Services repo). The skills assume you are operating inside that environment.

Gotcha: the root package.json declares the npm name as @anthropic-ai/skills, which is a leftover from the Anthropic skills template. It is marked "private": true and never published, so it does not affect installation, but do not be confused if you see it in the source.

Alternatives

  1. agentskills/agentskills (the spec and reference library) - the open standard this pack is built on, plus the skills-ref validator Adobe's CI uses. Prefer it if you want to understand the skill format or build your own conforming skills rather than consume Adobe's.
  2. anthropics/skills - the official Anthropic skill pack (the template adobe/skills was scaffolded from). Prefer it if you want vendor-neutral, Anthropic-product-focused skills with no Adobe dependencies.
  3. NVIDIA/skills - the official NVIDIA skill pack for NVIDIA-product workflows. Prefer it if your stack is NVIDIA (CUDA, NIM, TensorRT) rather than Adobe. Same official-vendor pattern, different product surface.
  4. obra/superpowers (plus impeccable, for stardust) - the community brainstorming and design methodology skills that stardust builds on. Prefer them directly if you want the methodology without the AEM delivery half.
// review provenance
reviewed by
GearScope
tested
2026-07-07 · macOS (Apple Silicon)
last verified
2026-07-07
depth
HANDS-ON
sponsorship
none, ever
// share this review
// feedback
was this review helpful?

Want the next one?

Five honest reviews and a verdict you can trust. Every Friday. No spam, no affiliate links.