Content Management Systems
github/awesome-copilot
Workflow for building and modifying content management systems across WordPress, Shopify, Wix, Squarespace, Drupal, WooCommerce, Joomla, HubSpot CMS Hub, Webflow, Adobe Experience Manager, and…
Use this when another step needs to call the admin.da.live API, for example before pushing HTML content, listing documents, or triggering a DA preview, and you do not already have a valid DATOKEN in…
$ npx skills add adobe/skills --skill da-auth -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install adobe/skills da-auth --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/aem/edge-delivery-services/skills/da-auth .claude/skills/da-auth && 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 "da-auth" agent skill from https://github.com/adobe/skills/tree/main/plugins/aem/edge-delivery-services/skills/da-auth into .claude/skills/da-auth/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "da-auth", 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/aem/edge-delivery-services/skills/da-authType 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 da-auth -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install adobe/skills da-auth --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/aem/edge-delivery-services/skills/da-auth .agents/skills/da-auth && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "da-auth" agent skill from https://github.com/adobe/skills/tree/main/plugins/aem/edge-delivery-services/skills/da-auth into .agents/skills/da-auth/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "da-auth", 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 da-auth -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install adobe/skills da-auth --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/aem/edge-delivery-services/skills/da-auth .cursor/skills/da-auth && 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 "da-auth" agent skill from https://github.com/adobe/skills/tree/main/plugins/aem/edge-delivery-services/skills/da-auth into .cursor/skills/da-auth/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "da-auth", 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/aem/edge-delivery-services/skills/da-auth--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 da-auth -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install adobe/skills da-auth --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/aem/edge-delivery-services/skills/da-auth .gemini/skills/da-auth && 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 "da-auth" agent skill from https://github.com/adobe/skills/tree/main/plugins/aem/edge-delivery-services/skills/da-auth into .gemini/skills/da-auth/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "da-auth", 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 da-authInstalls 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 da-auth -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/aem/edge-delivery-services/skills/da-auth .github/skills/da-auth && 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 "da-auth" agent skill from https://github.com/adobe/skills/tree/main/plugins/aem/edge-delivery-services/skills/da-auth into .github/skills/da-auth/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "da-auth", 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 da-auth -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 da-auth --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/aem/edge-delivery-services/skills/da-auth .opencode/skills/da-auth && 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 "da-auth" agent skill from https://github.com/adobe/skills/tree/main/plugins/aem/edge-delivery-services/skills/da-auth into .opencode/skills/da-auth/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "da-auth", 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.
da-authUse this when another step needs to call the admin.da.live API, for example before pushing HTML content, listing documents, or triggering a DA preview, and you do not already have a valid DATOKEN in…
Da Auth is an agent skill from adobe/skills. Use this when another step needs to call the admin.da.live API, for example before pushing HTML content, listing documents, or triggering a DA preview, and you do not already have a valid DATOKEN in scope from an earlier step in the same session. Covers obtaining a valid Adobe IMS access token for the DA (Document Authoring) API.
Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `.releaserc.json`, `CHANGELOG.md` and `package.json`).
It sits in Backend & APIs. 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.
Shell commands in SKILL.md call:
npxnodenpmcurlFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
admin.da.liveAlso links to:
da.livegithub.comopensource.adobe.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
DA_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Da Auth loads about 1.2k tokens when it runs. Until then it costs about 85 tokens; SKILL.md has 574 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); files beside SKILL.md are not scanned.
The full file from adobe/skills at commit cbc9952, republished under its Apache-2.0 licence (© adobe). 574 words, ~1,224 tokens.
.claude/skills/da-auth/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Gets a valid Adobe IMS access token and stores it in DA_TOKEN for use in subsequent admin.da.live API calls.
Use this skill whenever you need to call the DA Admin API (admin.da.live) and do not already have a valid token in scope. Common cases:
Do NOT use this skill when:
DA_TOKEN earlier in the same session and it has not expired (tokens are valid for ~1 hour with a 60-second buffer)ims-na1.adobelogin.com$DA_TOKEN is set when snowflake PUTs the converted page to DA$DA_TOKEN once you have it (Source API, preview/publish)Before triggering a browser login, check whether a valid token is already cached.
DA_TOKEN=$(node -e "
const fs = require('fs');
const p = process.env.HOME + '/.aem/da-token.json';
try {
const t = JSON.parse(fs.readFileSync(p, 'utf8'));
if (t.expires_at > Date.now() + 60000) process.stdout.write(t.access_token);
} catch {}
")If DA_TOKEN is non-empty, skip to Step 3.
Choose the option that fits the environment:
Option A (preferred) — da-auth-helper CLI:
The da-auth-helper tool handles the full IMS OAuth 2.0 implicit flow, caches the token at ~/.aem/da-token.json, and prints the token to stdout.
# Run directly without a global install
DA_TOKEN=$(npx github:adobe-rnd/da-auth-helper token)If npx is unavailable or slow, install globally first:
npm install -g github:adobe-rnd/da-auth-helper
DA_TOKEN=$(da-auth-helper token)This opens a browser window. Instruct the user:
Please complete the Adobe IMS login in the browser window that just opened. The token will be captured automatically once you log in.
Success: DA_TOKEN is a non-empty JWT string starting with eyJ.
Option B — DA MCP server:
If a DA MCP server is configured in the session, use its authentication tool to start the OAuth flow and retrieve the token from the response.
**Option C — Manual paste (last resort):**
I need an Adobe IMS access token to push content to DA. You can copy one from your browser:
- Open da.live and log in
- Open DevTools → Network tab → find any request to
admin.da.live- Copy the
Authorization: Bearer <token>value (without theBearerprefix)- Paste it here
Confirm the token is accepted by the DA API before proceeding:
curl -s -o /dev/null -w "%{http_code}" \
-H "Authorization: Bearer {{DA_TOKEN}}" \
"https://admin.da.live/list/{{ORG}}/{{REPO}}"Success: HTTP 200. The token is valid — DA_TOKEN is ready for use by the calling skill.
| Symptom | Likely cause | Fix |
|---|---|---|
DA_TOKEN is empty after Step 1 | No cached token or token expired | Proceed to Step 2 |
| Browser window does not open | npx / da-auth-helper blocked or headless environment | Use Option B (MCP) or Option C (manual paste) |
npx github:adobe-rnd/da-auth-helper fails | Network restrictions on GitHub package registry | Use Option B (DA MCP server) or Option C (manual token paste) |
Step 3 returns 401 | Token expired between steps | Re-run Step 2 to refresh |
Step 3 returns 403 | Authenticated user lacks access to {{ORG}}/{{REPO}} | Ask the user to verify their DA permissions for that org/repo |
~/.aem/da-token.json© 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 3 other files in plugins/aem/edge-delivery-services/skills/da-auth of adobe/skills.
Open the folder on GitHubat commit cbc9952
Da Auth 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 |
|---|---|---|---|---|---|---|
| Da Auth this skilladobe/skills | 195 | — | ~1.2k | Automated safety check: Pass | Apache-2.0 | |
| Content Management Systemsgithub/awesome-copilot | 40k | 1 repos | ~1.3k | Automated safety check: Pass | MIT | |
| Appbuilder E2E TestingNeverSight/learn-skills.dev | 216 | 1 repos | ~1.8k | Automated safety check: Pass | Apache-2.0 | |
| Configuring Horizoncoollabsio/coolify | 63k | 4 repos | ~898 | Automated safety check: Pass | MIT | |
| Nestjs Best Practicesrolling-scopes/rsschool-app | 10k | 6 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Sub2API AdminWei-Shaw/sub2api | 43k | 1 repos | ~717 | Automated safety check: Pass | LGPL-3.0 |
github/awesome-copilot
Workflow for building and modifying content management systems across WordPress, Shopify, Wix, Squarespace, Drupal, WooCommerce, Joomla, HubSpot CMS Hub, Webflow, Adobe Experience Manager, and…
NeverSight/learn-skills.dev
A skill your agent uses whenever the user wants browser-based end-to-end tests for an Adobe App Builder application.
coollabsio/coolify
A skill your agent uses whenever the user mentions Horizon by name in a Laravel context.
rolling-scopes/rsschool-app
NestJS best practices and architecture patterns for building production-ready applications.
Wei-Shaw/sub2api
Manages a Sub2API deployment from the command line: accounts, redeem and invitation codes, groups, proxies, imports, exports and raw admin API calls.
firecrawl/firecrawl
Gets Firecrawl working in a project: signs you in through the browser, saves FIRECRAWL_API_KEY to .env and picks the first SDK or REST path.
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
Use this when another step needs to call the admin.da.live API, for example before pushing HTML content, listing documents, or triggering a DA preview, and you do not already have a valid DATOKEN in…. Da Auth is an agent skill from adobe/skills.live API, for example before pushing HTML content, listing documents, or triggering a DA preview, and you do not already have a valid DATOKEN in scope from an earlier step in the same session.
Da Auth fits situations like: backend & APIs work in your project.
Run `npx skills add adobe/skills --skill da-auth -a claude-code`. Or copy the skill folder (plugins/aem/edge-delivery-services/skills/da-auth in adobe/skills) into .claude/skills/da-auth in your project. Claude Code loads it when a task matches its description.
Run `npx skills add adobe/skills --skill da-auth -a codex`. Or copy the skill folder (plugins/aem/edge-delivery-services/skills/da-auth in adobe/skills) into .agents/skills/da-auth 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 da-auth -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/da-auth, .gemini/skills/da-auth, .github/skills/da-auth and .opencode/skills/da-auth in your project.
Going by SKILL.md and its folder, Da Auth needs the command-line tools its instructions call (npx, node, npm and curl) and credentials named DA_TOKEN. Our summary lists: Node.js.
SKILL.md names 4 domains. In commands or code: admin.da.live; the agent is likely to contact it when it follows the instructions. As links in the text: da.live, github.com and opensource.adobe.com. 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. Review the folder before installing.
Da Auth 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 1.2k tokens (SKILL.md is roughly 4.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 Da Auth: Content Management Systems (github/awesome-copilot, 40k stars), Appbuilder E2E Testing (NeverSight/learn-skills.dev, 216 stars), Configuring Horizon (coollabsio/coolify, 63k stars) and Nestjs Best Practices (rolling-scopes/rsschool-app, 10k 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.