adobe/skills

docs-search

Use this when you need more information about an AEM Edge Delivery Services (EDS, Franklin, Helix) feature or guidance on how to implement one, and your existing web-search tools are not turning up relevant results.

查看源码

使用方法

  1. 复制安装命令,在自己的智能体环境安装前先检查源码包。
  2. 从原始文档核对所需工具、凭据和支持的宿主。
  3. 说明输入材料与期望交付物,并对照来源检查输出。
npx skills add https://github.com/adobe/skills --skill docs-search

开始前需了解

  • 安装不包含模型订阅、API 额度或访问文件的权限。
  • 仓库星数和安装量反映活跃情况,不等于独立质量或安全测试。
仓库原始内容

按源仓库内容呈现,保留标题、案例、代码、表格、链接以及原文引用的演示图片。

Searching AEM Documentation

Overview

This skill helps you efficiently search the complete aem.live documentation (docs and blog posts) without wasting context on irrelevant pages. Use the provided search script to find relevant documentation pages, then fetch and read the full content of the most relevant results.

When to Use This Skill

Use this skill when:

  • You need information about an aem.live feature or concept
  • You've already looked at the project codebase for context
  • You've tried a basic web search but didn't find relevant aem.live documentation
  • You need technical guidance on implementing aem.live features
  • You're looking for best practices or examples from the official docs

Do NOT use this skill when:

  • You need reusable code snippets or block examples (use block-collection-and-party instead)
  • You already know the specific documentation URL
  • You're looking for general web development information (not aem.live specific)

How to Use This Skill

Step 1: Identify Keywords

Determine 1-3 specific keywords related to what you're searching for. Be specific rather than general.

Good keywords:

  • "block decoration"
  • "metadata"
  • "universal editor"
  • "sidekick plugin"

Poor keywords:

  • "aem" (too generic, filtered as stop word)
  • "how to build website" (too broad)
  • "the" (stop word)

Step 2: Run the Search Script

Execute the search script from the project root:

bash
node .claude/skills/docs-search/scripts/search.js [--all] <keyword1> [keyword2] [...]

Options:

  • --all: Return all matching results (default: limit to 10 most relevant)
  • Without --all: Returns top 10 results

Examples:

bash
# Search for block decoration info
node .claude/skills/docs-search/scripts/search.js block decoration

# Search for metadata with all results
node .claude/skills/docs-search/scripts/search.js --all metadata

# Multi-word search
node .claude/skills/docs-search/scripts/search.js universal editor blocks

Step 3: Review Search Results

The script returns JSON with the following structure:

json
[
  {
    "path": "/developer/markup-sections-blocks",
    "title": "Markup, Sections, Blocks, and Auto Blocking",
    "description": "To design websites and create functionality, developers use the markup and DOM...",
    "snippet": "Markup, Sections, Blocks, and Auto Blocking\n\nTo design websites...",
    "type": "doc",
    "deprecation": null,
    "relevanceScore": 141
  }
]

Field Explanations:

  • path: URL path to the documentation page
  • title: Page title
  • description: Brief summary (usually ~150 chars) - use this for quick context
  • snippet: Relevant excerpt from the page content showing keyword context
  • type: "doc" or "blog"
  • deprecation: Warning message if feature is deprecated (or null)
  • relevanceScore: Relevance score (higher = more relevant)

Important Notes:

  • Results are sorted by relevance (highest first)
  • Deprecated pages have reduced relevance scores but still appear in results
  • The description field provides the best quick summary of the page
  • The snippet shows keyword context but may not be comprehensive

Step 4: Fetch and Read Full Documentation

The search results give you an overview. To get detailed information, you must fetch and read the complete page content.

Target URL format:

https://www.aem.live{path}

How to retrieve: Use whatever method you have available to fetch the full HTML/text content:

  • Dedicated web fetching tools
  • Terminal commands (curl, wget, etc.)
  • Web browsing/scraping capabilities

Best Practice: Start with the top 2-3 most relevant results, read them fully, then decide if you need more. You may also follow links referenced in the documentation or conduct additional searches based on what you learn.

Step 5: Alert User to Deprecations

If any results have a deprecation field with content, inform the user that the feature is deprecated and include the deprecation message. Suggest they look at higher-ranked (non-deprecated) alternatives.

What Gets Searched

The search script searches documentation first (150+ pages). Blog posts are only searched if fewer than 5 doc results are found. If you need comprehensive coverage including blogs, use the --all flag.

Examples

Example 1: Finding Block Documentation

User Request: "How do I decorate blocks in aem.live?"

Good Approach:

  1. Search: node .claude/skills/docs-search/scripts/search.js block decoration
  2. Review top 3 results
  3. Fetch the most relevant: https://www.aem.live/developer/markup-sections-blocks
  4. Read full content and provide answer

Poor Approach:

  • Using general web search instead (wastes time on irrelevant results)
  • Not using the search script (might miss the best documentation page)

Example 2: Learning About Metadata

User Request: "I need to add metadata to my pages"

Good Approach:

  1. Search: node .claude/skills/docs-search/scripts/search.js metadata
  2. Notice top result is "/docs/bulk-metadata" (score: 63)
  3. Also see "/docs/metadata" (score: 30)
  4. Fetch and read both to understand page-level vs bulk metadata
  5. Provide comprehensive answer with both approaches

Poor Approach:

  • Only reading the first result and missing bulk metadata option
  • Not using --all when you need comprehensive coverage

Example 3: Deprecated Feature Warning

User Request: "How do I use folder mapping?"

Search Results:

json
[
  {
    "path": "/developer/authoring-path-mapping",
    "title": "Path mapping for AEM authoring",
    "relevanceScore": 51,
    "deprecation": null
  },
  {
    "path": "/developer/folder-mapping",
    "title": "Folder Mapping",
    "relevanceScore": 34.5,
    "deprecation": "Please contact us if you have a use case for folder mapping..."
  }
]

Good Response: "I found information about folder mapping, but this feature is deprecated. The deprecation notice says: 'Please contact us if you have a use case for folder mapping...'. The current recommended approach is Path mapping for AEM authoring (the top result). Let me read that documentation for you instead."

Poor Response:

  • Ignoring the deprecation warning and implementing the deprecated feature
  • Not mentioning the better alternative

Related Skills

  • block-collection-and-party: Use when you need reusable code examples or block implementations
  • building-blocks: Use when creating new blocks from scratch
  • content-modeling: Use when designing content models for blocks

Important Reminders

  1. Always check for deprecation warnings and alert the user
  2. Fetch and read full pages - search results are just for finding the right pages
  3. Start with top 2-3 results before expanding search
  4. The description field is your friend - it's usually well-written and concise
  5. Don't rely solely on snippets - they're for context, not comprehensive information

按任务相关推荐

来自同一仓库

更多 Skills

全部 Skills
adobe
社区

adobe-edit-quick-cut

Create a punchy highlight cut from a video with Adobe Quick Cut — for requests like "make a sizzle reel", "make a highlight reel", "quick cut this", "cut the best parts", "shorten this video", "make a highlight clip", or "summarize this video visually". Works from the user's original request without follow-up questions and produces one highlight cut. Do NOT use it for exact-timestamp trims ("cut from 0:30 to 1:15") or other deterministic edits — Quick Cut selects moments by relevance, not exact

安装量
1
GitHub Stars
306
最近更新
10月24日
adobe
社区

appbuilder-project-init

Initialize an Adobe App Builder project end-to-end and prepare the machine to build one. Creates the Console project and workspace, subscribes APIs (including those needing a product profile), maps intent to the right template, runs non-interactive aio app init, and guides post-init customization. Use whenever the user mentions creating an App Builder app, scaffolding a project, aio app init, an Experience Cloud extension, adding actions or web assets, or creating a Console project/workspace — e

安装量
2
GitHub Stars
268
最近更新
10月20日
adobe
社区

commerce-app-admin-ui

Add or modify Adobe Commerce Admin UI extensions on the commerce/backend-ui/2 extension point: custom grid columns, mass actions, order view buttons, a custom Admin menu entry, and custom ACL resources. Use whenever the user wants to extend the Commerce Admin — add a column to the order, product, or customer grid, add a bulk/mass action to a grid, add a button to the order view page, add a custom menu item or page, or declare custom permissions the app checks itself — even when they don't name t

安装量
2
GitHub Stars
268
最近更新
10月20日
adobe
社区

commerce-app-business-config

Manage custom business configuration in an Adobe Commerce app. Use when the user wants to add, modify, or remove merchant-configurable settings (config fields, admin config, store configuration) exposed through Commerce Admin. Creates typed config fields (text, password, email, url, tel, boolean, list) in businessConfig.schema. Requires a base app initialized with commerce-app-init.

安装量
2
GitHub Stars
268
最近更新
10月20日