본문으로 건너뛰기
cccskills
무료GitHub에 공개

da-auth

Obtains a valid Adobe IMS access token for the DA (Document Authoring) API. Use this skill as a prerequisite step whenever another skill needs to call admin.da.live — for example, before pushing HTML content, listing documents, or triggering a DA preview. Do NOT use this skill if you already have a valid DA_TOKEN in scope from a previous step in the same session.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(4)

  • SKILL.md4.8 KB
  • .releaserc.json49 B
  • CHANGELOG.md461 B
  • package.json79 B

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

DA Authentication

Gets a valid Adobe IMS access token and stores it in DA_TOKEN for use in subsequent admin.da.live API calls.

When to Use This Skill

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:

  • Pushing or updating page content in DA
  • Listing documents in a DA repository
  • Triggering a DA content preview

Do NOT use this skill when:

  • You already obtained a DA_TOKEN earlier in the same session and it has not expired (tokens are valid for ~1 hour with a 60-second buffer)
  • The create-site skill is already handling authentication as part of its own flow
  • A DA MCP server is active in the session — use its authentication tool directly instead

Prerequisites

  • Node.js 18+ installed
  • A browser accessible from the machine (for the OAuth flow)
  • Network access to ims-na1.adobelogin.com

Related Skills

  • create-site — includes its own DA auth step for new site onboarding; do not invoke da-auth separately within that flow
  • content-driven-development — use da-auth before pushing authored content to DA
  • building-blocks — use da-auth if test content needs to be pushed to DA for block development
  • snowflake — invoke da-auth before Phase 5 (round-trip) so $DA_TOKEN is set when snowflake PUTs the converted page to DA
  • da-content — the reference for what to do with $DA_TOKEN once you have it (Source API, preview/publish)

Step 1: Check for a Cached Token

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.

Step 2: Obtain a Token (login required)

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:

  1. Open da.live and log in
  2. Open DevTools → Network tab → find any request to admin.da.live
  3. Copy the Authorization: Bearer <token> value (without the Bearer prefix)
  4. Paste it here

Step 3: Verify the Token Works

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.

Troubleshooting

SymptomLikely causeFix
DA_TOKEN is empty after Step 1No cached token or token expiredProceed to Step 2
Browser window does not opennpx / da-auth-helper blocked or headless environmentUse Option B (MCP) or Option C (manual paste)
npx github:adobe-rnd/da-auth-helper failsNetwork restrictions on GitHub package registryUse Option B (DA MCP server) or Option C (manual token paste)
Step 3 returns 401Token expired between stepsRe-run Step 2 to refresh
Step 3 returns 403Authenticated user lacks access to {{ORG}}/{{REPO}}Ask the user to verify their DA permissions for that org/repo

Reference

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

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," "where are visitors dropping off," "what's our add-to-cart to purchase conversion rate," "funnel analysis," "show me fallout between steps," or "which step loses the most visitors."

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aemgdc/aemdev22026년 10월 18일 업데이트

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 last week's performance," "create a performance briefing for our leadership team," "produce a monthly business review summary," "what should I tell executives about our metrics," or "generate a performance narrative." Also trigger for "QBR summary," "weekly business review," or "stakeholder briefing."

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aemgdc/aemdev22026년 10월 18일 업데이트

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 trigger for "give me a performance overview," "what moved in the last 7 days," "pull our AA KPI report," or "summarize our metrics."

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aemgdc/aemdev22026년 10월 18일 업데이트

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," "show me the difference between these two segments," "compare these audiences on our KPIs," or "which segment performs better." Also trigger for "segment comparison" or "audience comparison."

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aemgdc/aemdev22026년 10월 18일 업데이트

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," "what pages are trending," "show me what changed by channel," or any variation of identifying the biggest movers and decliners for a metric.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aemgdc/aemdev22026년 10월 18일 업데이트

Scan an AEM Edge Delivery Services page for WCAG 2.1 AA accessibility violations and generate specific fixes. Identifies missing alt text, heading hierarchy issues, link text problems, color contrast concerns, and EDS-specific accessibility patterns. Use when fixing accessibility issues, preparing for compliance audits, or remediating WCAG violations.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aemgdc/aemdev22026년 10월 18일 업데이트

aemgdc의 스킬 모두 보기

이 스킬의 문제 신고