Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计通过

content-driven-development内容驱动开发

Agent Skill

用于辅助文档、README、Markdown、说明文和内容稿件的整理与改写。它适合让 Agent 提炼结构、补齐章节、统一术语、检查链接或把零散材料整理成可读文档。使用时应保留项目已有事实、命令和路径,不要把未确认的信息写成确定结论;涉及对外文案时,还需要控制语气,避免过度营销或夸大能力。

总安装

3,128

周安装

133

GitHub Stars

55

下载量

1,096
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:content-driven-development(内容驱动开发)
来源仓库:https://github.com/adobe/skills
仓库路径:skills/content-driven-development
安装命令:
npx skills add https://github.com/adobe/skills --skill content-driven-development
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/adobe/skills --skill content-driven-development

简介

用于辅助文档、README、Markdown、说明文和内容稿件的整理与改写。

  • 适合让 Agent 提炼结构、补齐章节、统一术语或检查链接,提升内容可读性。
  • 使用时需保留项目已有事实与路径,避免写成确定结论;对外文案应控制语气,防止过度营销。
  • 安装方式:通过 GitHub 仓库安装,命令为 npx skills add https://github.com/adobe/skills --skill content-driven-development。
  • 注意:涉及代码开发时,应先确认内容模型,再基于真实内容测试变更,确保结构正确。

SKILL.md

Content Driven Development (CDD)

You are an orchestrator of the Content Driven Development workflow for AEM Edge Delivery Services. This workflow ensures code is built against real content with author-friendly content models.

CRITICAL: Never start writing or modifying code without first identifying or creating the content you will use to test your changes.

When to Use This Skill

Use CDD for ALL AEM development tasks:

  • ✅ Creating new blocks
  • ✅ Modifying existing blocks (structural or functional changes)
  • ✅ Changes to core decoration functionality
  • ✅ Bug fixes that require validation
  • ✅ Any code that affects how authors create or structure content

Do NOT use for:

  • Documentation-only changes
  • Configuration changes that don't affect authoring
  • Research tasks that don't require making any code changes yet

Philosophy

Content Driven Development prioritizes creating or identifying test content before writing code. This ensures:

  • Code is built against real content
  • Author-friendly content models
  • Validation throughout development

Optional: Understanding CDD Principles

Read resources/cdd-philosophy.md if:

  • User asks "why" questions about content-first approach
  • You need to understand reasoning behind CDD decisions
  • You're unsure whether to prioritize author vs developer experience

Otherwise: Follow the workflow steps below

Step 0: Create TodoList

FIRST STEP: Use the TodoWrite tool to create a todo list with the following 8 tasks:

  1. Start dev server (if not running)

- Success: Dev server running, can access http://localhost:3000

  1. Analyze & plan

- Success: Clear understanding documented + acceptance criteria defined

  1. Design content model

- Success: Content structure documented and validated

  1. Identify/create test content

- Success: Test content accessible covering all scenarios

  1. Implement

- Success: Functionality works across all viewports

  1. Lint & test

- Success: All checks pass

  1. Final validation

- Success: All acceptance criteria met, everything works

  1. Ship it

- Success: PR created with preview link for validation

Mark todo complete when: Todo list created with all 8 tasks


Step 1: Start Dev Server

Check if dev server is running:

curl -s -o /dev/null -w "%{http_code}" http://localhost:3000

Expected: 200 (server running) or connection error (server not running)

If not running, start it:

aem up --no-open --forward-browser-logs

Notes:

  • Run in background if possible (dev server needs to stay running)
  • Requires AEM CLI installed globally: npm install -g @adobe/aem-cli
  • Alternative: npx -y @adobe/aem-cli up --no-open --forward-browser-logs

IMPORTANT: Check the command output for errors. Common issues:

  • Port 3000 already in use
  • AEM CLI not installed
  • Configuration errors

After starting, verify it's running:

curl -s -o /dev/null -w "%{http_code}" http://localhost:3000

Expected: 200

Success criteria:

Mark todo complete when: Dev server confirmed running and accessible


Step 2: Analyze & Plan

Invoke: analyze-and-plan skill

Provide:

  • Task description from user
  • Screenshots, design files, or existing URLs to match design from (if available)

The analyze-and-plan skill will:

  • Guide you through task-specific analysis
  • Help define acceptance criteria
  • Optionally analyze visual designs/mockups if provided
  • Create documented analysis for reference

Success criteria:

  • ✅ Requirements analyzed
  • ✅ Acceptance criteria defined
  • ✅ Analysis documented to file for later steps

Mark todo complete when: Analysis documented and acceptance criteria defined


Step 3: Design Content Model

Skip if: CSS-only changes that don't affect content structure

Invoke: content-modeling skill

Provide:

  • Analysis from Step 2 (content requirements, author inputs)
  • Block name and purpose

The content-modeling skill will:

  • Design table structure (rows, columns, semantic formatting)
  • Validate against best practices (4 cells/row, semantic formatting)
  • Document content model for authors

Success criteria:

  • ✅ Content model designed (table structure defined)
  • ✅ Validated against best practices
  • ✅ Content model documented

Mark todo complete when: Content model designed and documented


Step 4: Identify/Create Test Content

Goal: End this step with accessible test content URL(s) covering all test scenarios

Choose the best path based on your situation:


Option A: User Provided Test URL(s)

When to use: User already has content and provided URL(s)

What to do:

  1. Validate URL loads: curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/path
  2. Expected: 200 status
  3. Document URL(s)
  4. Mark complete

Option B: New Block (No Existing Content)

When to use: Building a brand new block that doesn't exist yet

What to do:

  1. Skip search (nothing exists yet to find)
  2. Create test content using one of these approaches:

Approach 1: CMS Content (Recommended)

  1. Ask user to create content in their CMS (Google Drive/SharePoint/DA/Universal Editor)
  2. Provide content model from Step 3 as reference
  3. Wait for user to provide URL(s)
  4. Validate: curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/path
  5. Expected: 200 status
Using DA: If you need to push HTML content programmatically to DA (rather than asking the user to author it), invoke the da-auth skill first to obtain a valid DA_TOKEN, then use the DA Admin API (POST https://admin.da.live/source/{org}/{repo}/{path}) to push the content and trigger a preview.

Approach 2: Local HTML (Temporary)

  1. Create HTML file in drafts/tmp/{block-name}.plain.html
  2. Follow structure from Step 3 content model
  3. Read resources/html-structure.md for local HTML file format guidance
  4. Restart dev server: aem up --html-folder drafts --no-open --forward-browser-logs
  5. Validate: curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/drafts/tmp/{block-name}
  6. Expected: 200 status
  7. Note: User must create CMS content before PR (required for preview link)

Option C: Existing Block

When to use: Modifying, fixing, or styling an existing block

What to do:

First: Search for existing content

  1. Invoke find-test-content skill
  2. Provide: block name, dev server URL (optional, defaults to localhost:3000)

What find-test-content will do:

  • Search for existing content pages containing the block
  • Automatically detect and report all variants found
  • Report: URLs with instance counts and variant info

Then: Assess search results

If sufficient content found:

  1. Document URL(s)
  2. Validate URLs load: curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/path
  3. Expected: 200 status
  4. Mark complete

If no content found OR insufficient coverage:

  1. Create additional test content using approaches from Option B
  2. Validate URLs load
  3. Mark complete

Success criteria:

  • ✅ Test content accessible at known URL(s)
  • ✅ Content covers all test scenarios (variants, edge cases)
  • ✅ URLs validated (return 200)

Mark todo complete when: Test content identified/created and validated


Step 5: Implement

Invoke: building-blocks skill

Provide:

  • Content model from Step 3 (if applicable)
  • Test content URL(s) from Step 4
  • Analysis/requirements from Step 2
  • Type of changes: new block, existing block modification, CSS-only, etc.

The building-blocks skill will:

  • Guide implementation approach based on change type
  • Handle JavaScript decoration (if needed)
  • Handle CSS styling (mobile-first, responsive)
  • Ensure iterative testing in browser throughout development

Success criteria:

  • ✅ Code implementation complete
  • ✅ Functionality works across all viewports (mobile, tablet, desktop)
  • ✅ No console errors

Mark todo complete when: building-blocks skill reports implementation complete and working across viewports


Step 6: Lint & Test

What to do:

npm run lint

If lint errors:

  1. Fix issues (use npm run lint:fix for auto-fixable problems)
  2. Re-run lint until clean

Run existing tests:

npm test

Note: Unit tests are optional and only needed for logic-heavy utilities. The testing-blocks skill (invoked by building-blocks in Step 5) handles browser testing. This step catches any remaining lint issues and runs the project's test suite.

Success criteria:

  • npm run lint passes with no errors
  • npm test passes (if tests exist)

Mark todo complete when: All lint and test checks pass


Step 7: Final Validation

What to do:

  1. Review acceptance criteria from Step 2

- Read the analysis document created in Step 2 - Check each acceptance criterion is met

  1. Final browser sanity check

- Load test content URL(s) in browser - Check mobile, tablet, and desktop viewports - Verify no console errors - Confirm no visual regressions

  1. Verify no regressions

- If modifying existing block: test existing variants still work - If modifying core functionality: spot-check a few pages

Success criteria:

  • ✅ All acceptance criteria from Step 2 met
  • ✅ Works across all viewports
  • ✅ No console errors
  • ✅ No regressions on existing functionality

Mark todo complete when: All acceptance criteria verified and no regressions found


Step 8: Ship It

What to do:

  1. Create feature branch (if not already on one): git checkout -b block-name
  2. Stage specific files only: ` git add blocks/{block-name}/{block-name}.js blocks/{block-name}/{block-name}.css # Add only files you worked on - NEVER use git add. `
  3. Commit with conventional commit format: git commit -m "feat(block-name): add new block" Include relevant details in commit message and agent attribution in footer (agent adds Co-authored-by: cursor <noreply@cursor.com>)
  4. Push to feature branch: git push origin HEAD
  5. Create PR with preview link: Determining if you need a draft PR: Create a draft PR when: Create a regular PR when: Workflow for draft PRs:

- Branch preview URL format: https://{branch}--{repo}--{owner}.aem.page/{path} - Example: https://carousel--aem-skills-demo--shsteimer.aem.page/ - REQUIRED: Include preview link in PR description (used for automated PSI checks) - Add multiple preview links if needed (e.g., different variants, edge cases) - ✅ Only local test content exists for NEW functionality/variants - ✅ Test content demonstrates new features not yet in CMS - ✅ You need user to create CMS content before final validation - ✅ All test content exists in CMS and is previewable - ✅ Changes only affect existing content (regressions can be tested with existing CMS content) 1. Create the PR as a draft using gh pr create --draft 2. Include existing content preview links (for regression testing if applicable) 3. Include next steps in PR description (see template below): - Describe the test content used locally and what scenarios it covered - Suggest that same/similar content be created and previewed, and links added to PR - Keep steps brief but actionable for any reviewer 4. Instruct the user to create CMS content following the steps: - Open local test content in browser: http://localhost:3000/drafts/tmp/[test-file] - Right-click AEM Sidekick extension - Click "View document source" option - Use the copy button to copy the document content - Paste into Word/Google Docs/Document Authoring (for UE: use as guide, copy/paste won't work directly) - Preview the CMS content 5. User adds preview URL(s) to PR description and marks PR ready for review (or agent does with user's input)

PR Description Template:

Use this template for all PRs, including all relevant preview links and adapting as needed:

## Description
Brief description of changes

[If an issue exists]
Fix #<gh-issue-id>

Test URLs:

[Repeat for all relevant test urls]
- Before: https://main--{repo}--{owner}.aem.page/{path}
- After: https://{branch}--{repo}--{owner}.aem.page/{path}

[If only local test content (draft PR):]

This PR is currently a **draft** pending creation of CMS test content.

### Next Steps to Complete PR:

[add relevant steps here]

Success criteria:

  • ✅ Changes committed with proper message format and attribution
  • ✅ Pushed to feature branch (not main)
  • ✅ PR created with preview link in description

Mark todo complete when: PR created and ready for review


Related Skills

  • analyze-and-plan: Invoked in Step 2 for requirements analysis and acceptance criteria
  • content-modeling: Invoked in Step 3 for designing content models
  • da-auth: Obtain a valid Adobe IMS token before pushing content to DA or triggering DA previews programmatically — invoke at the start of Step 4 when using DA
  • find-test-content: Invoked in Step 4, Option C for finding existing content
  • building-blocks: Invoked in Step 5 for implementation
  • testing-blocks: Invoked by building-blocks for browser testing
  • block-collection-and-party: Used to find similar blocks and reference implementations

Anti-Patterns to Avoid

Common mistakes that violate CDD principles:

  • ❌ Starting with code before understanding the content model
  • ❌ Making assumptions about content structure without seeing real examples
  • ❌ Creating developer-friendly but author-hostile content models
  • ❌ Skipping content creation "to save time" (costs more time later)

Resources

  • Philosophy: resources/cdd-philosophy.md - Why content-first matters
  • HTML Structure: resources/html-structure.md - Guide for creating local HTML test files

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.37%
按下载量换算377

Claude

29.21%
按下载量换算320

Cursor

17.95%
按下载量换算197

Gemini CLI

9.2%
按下载量换算101

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills