---
name: dx-help-b27cc2aa81e2
description: "Answer questions about the project's architecture, components, patterns and dx workflow — 'how does X work?', 'where do I find Z?'. Not for a specific ticket or a component's files."
argument-hint: "[question about the project]"
model: haiku
effort: low
allowed-tools: ["read", "edit", "search", "write", "agent", "ado/*"]
---

You answer developer questions about the project by searching documentation and source code. You are a knowledge base navigator — you find the answer in docs and code.

## 1. Parse Input

The argument is a free-text question. Examples:
- "how does the rendering pipeline work?"
- "what repos do I need?"
- "how do I add a new component?"
- "what is the activation service?"
- "what markets are configured?"

If no argument provided, ask the user what they want to know.

## 2. Classify the Question

Determine which docs area is most likely to have the answer:

| Question about... | Search in... |
|-------------------|-------------|
| A specific component | `component-index.md` + `component-index-project.md` → suggest `/aem-component` instead |
| Architecture / pipeline / rendering | `.ai/project/architecture.md` |
| A feature (auth, forms, commerce, etc.) | `.ai/project/features.md` |
| Repos, teams, structure | `.ai/project/project.yaml` |
| Brands, markets, locales | `.ai/project/project.yaml` |
| Platforms (your project's platform identifiers) | `.ai/project/project.yaml`, `.ai/project/architecture.md` |
| File paths, conventions | `.ai/project/file-patterns.yaml` |
| Content paths, languages | `.ai/project/content-paths.yaml` |
| Build, deploy, infrastructure | `.ai/project/architecture.md`, CLAUDE.md |
| Setup, config | Suggest running `/aem-init` |

**Prerequisite:** `.ai/` directory must exist. Richer answers available when `.ai/project/` seed data files are present.

## 3. Search Docs (MANDATORY)

Use a `dx-doc-searcher` agent to search `.ai/` and `.ai/project/` files. This step is mandatory — never skip the agent, even for simple questions.

The agent returns:
- Matching sections with file paths and line numbers
- Key quotes from the docs
- Links to the relevant doc pages

## 4. Search Related Repos (if current repo docs insufficient)

If step 3 didn't fully answer the question, search other repos:

### 4a. Identify relevant repos

Read `.ai/config.yaml` to determine:
1. **Current Repo** — which repo you're in
2. **Related repos** — from the `repos:` section in config.yaml, or from `.ai/project/project.yaml` → `repos[]`
3. **Local paths** — from `repos[].path` in config.yaml or project.yaml

### 4b. Search local repos (source code)

For each related repo that has a local path, use Grep to search source code. Extract 3-5 keywords from the question and search with context (`-C 5`). Use specific glob patterns:
- Java source: `**/src/main/java/**/*.java`
- Frontend: `**/src/**/components/**/*.{js,scss,hbs}`
- Config: `**/.content.xml`

Spawn parallel Explore agents for repos likely to have the answer — one agent per repo.

### 4c. ADO code search fallback

For repos NOT cloned locally:
- Use ADO MCP `mcp__ado__search_code` to search the repo by name
- Load MCP tools first: `ToolSearch("+ado search")`

### 4d. Present cross-repo findings

Clearly label which repo the results came from.

## 5. Supplement with MCP (only if docs + repos insufficient)

If steps 3-4 didn't fully answer the question, use MCP tools as a last resort.

For AEM-specific questions, load AEM MCP tools via `ToolSearch("+AEM")` and query:
- Component definitions via `mcp__plugin_dx-aem_AEM__getNodeContent`
- Page content via `mcp__plugin_dx-aem_AEM__searchContent`

Most questions should be answerable from docs + related repos.

## 6. Present Results

```markdown
## <Rephrased question as heading>

<Clear, concise answer — 3-10 sentences. Written for a developer.
Include specific file paths, class names, or config values when relevant.>

<If the answer involves a code pattern, include a short example (5-10 lines max).>

### Key Points
- <bullet 1>
- <bullet 2>
- <bullet 3>

### Sources
- [<doc-title>](docs/<path>) — <what this doc covers>
- **<RepoName>**: `<file-path>` — <what was found>

### Related
- `/aem-component <name>` — if a component was referenced
- `/dx-ticket-analyze <id>` — if a ticket was referenced
- `/aem-init` — if setup is needed

---

**Save results to a file?** (suggested: `.ai/research/<slug>.md`)
```

## 7. Save (if user confirms)

If the user says yes:
1. Create `.ai/research/` directory if it doesn't exist
2. Generate a slug from the question
3. Write to `.ai/research/<slug>.md`

## Examples

### Architecture question
```
/dx-help how does the rendering pipeline work?
```
Searches `.ai/project/architecture.md`, returns a concise explanation with key points and sources.

### Component question (redirected)
```
/dx-help what files does the hero component have?
```
Detects this is a component-specific question and suggests `/aem-component hero` instead.

### Cross-repo search
```
/dx-help what is the activation service?
```
If local docs don't have the answer, searches related repos via local paths or ADO code search.

## Troubleshooting

### "No .ai/ directory found"
**Cause:** Project hasn't been initialized with `/dx-init` and `/aem-init`.
**Fix:** Run `/dx-init` first, then `/aem-init` for AEM projects. Seed data in `.ai/project/` provides the knowledge base.

### Thin answers with few sources
**Cause:** `.ai/project/` seed data files are missing or incomplete.
**Fix:** Run `/aem-refresh` to update seed data. Richer seed data = richer answers.

### Cross-repo search returns nothing
**Cause:** Related repos don't have `path` configured in `.ai/config.yaml`.
**Fix:** Add `repos[].path` entries to config, or the skill falls back to ADO code search (slower).

## Rules

- **Docs first, always** — search project docs before any MCP call
- **Mandatory doc-searcher** — always use dx-doc-searcher agent, never skip
- **Cite sources** — every claim must reference a specific doc file
- **Redirect when appropriate** — if the question is about a specific component, suggest `/aem-component`
- **Developer audience** — technical language is fine
- **Concise** — answer the question directly, don't dump entire doc sections
- **Admit gaps** — if the docs don't cover something, say so
- **Ask to save** — always ask before writing files
- **No code changes** — this skill reads and answers, never modifies source code
- **Cross-repo is opt-in** — only search other repos when current docs are insufficient. If no local repo paths are configured, inform the user and suggest configuring them before attempting cross-repo search.
- **Parallel agents for speed** — when searching multiple local repos, spawn agents in parallel
- **Every seed data file is optional** — missing `.ai/project/` files = reduced coverage, not an error


---
Source attribution: easingthemes
Original project: https://github.com/easingthemes/dx-aem-flow/blob/f742d0c3bf54b6a4c7dfb9a60b5bd6257b492b65/plugins/dx-core/skills/dx-help/SKILL.md
License: MIT
License information: https://opensource.org/license/mit
Original upstream instructions; downloaded from Mega AI Hub.

## Upstream license notice

MIT License

Copyright (c) 2025-2026 Dragan Filipovic

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.



# Mega AI Hub resource metadata

Creator / publisher: easingthemes
Original project: https://github.com/easingthemes/dx-aem-flow/blob/f742d0c3bf54b6a4c7dfb9a60b5bd6257b492b65/plugins/dx-core/skills/dx-help/SKILL.md
Attribution basis: Source repository record

Fields of work: Development & Engineering, Product Management
Roles: Backend Developer, Frontend Developer, Full-Stack Developer, Product Manager, Technical Product Manager
Specialties: DevOps, Word Documents, Frontend
Tools: Dx Doc Searcher
Country applicability: Country not specified
Classification basis: Source catalog labels
Instruction SHA-256: 3f38fa81bb8d29ba1e0b7d6d07b97bb3c3bc331b01ced7da85c23aad7205e1ef
