From dx-core
Sync plugin updates to consumer repos — runs sync-consumers.sh with selected repos and options. Use when you say "sync plugins", "update consumers", "push to all repos".
npx claudepluginhub easingthemes/dx-aem-flow --plugin dx-coreThis skill is limited to using the following tools:
You sync plugin updates to consumer AEM repos using the `sync-consumers.sh` script. Any consumer repo can run this skill — there is no hub. Repos are listed in `.ai/config.yaml` under `repos:`.
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
You sync plugin updates to consumer AEM repos using the sync-consumers.sh script. Any consumer repo can run this skill — there is no hub. Repos are listed in .ai/config.yaml under repos:.
The sync script lives in this skill's scripts directory:
SYNC_SCRIPT="${CLAUDE_SKILL_DIR}/scripts/sync-consumers.sh"
If it doesn't exist, try the repo root fallback:
SYNC_SCRIPT="$(git rev-parse --show-toplevel)/internal/sync-consumers.sh"
If neither exists, STOP: "sync-consumers.sh not found."
Read repos: from .ai/config.yaml. Present the available repos and their capabilities:
| Repo | Path | Base Branch | Work Branch | FE | BE |
|------|------|-------------|-------------|:--:|:--:|
| brand-a | ../Brand-A-Project | development | feature/ai-sync | Yes | No |
| backend | ../AEM-Backend | develop | feature/ai-sync | Yes | Yes |
| brand-b | ../Brand-B-Project | development | feature/ai-sync | Yes | No |
All repos come from the
repos:section in.ai/config.yaml. The current repo is excluded (you don't sync to yourself).
From $ARGUMENTS, extract:
--dry-run, --parallel, --no-git, --no-pr.ai/config.yaml repos: sectionIf no arguments at all, ask: "Sync all repos? Or specify which ones (e.g., brand-a backend). Add --dry-run to preview."
bash "$SYNC_SCRIPT" $ARGUMENTS
The script handles:
origin/<base-branch> into work branch.ai/lib/.ai/templates/.ai/config.yaml; updates dx.version to match the plugin version).claude/rules/).ai/rules/).github/instructions/).vscode/mcp.json — mirrors ADO/Atlassian from root .mcp.json).vscode/settings.json — chat.instructionsFilesLocations, chat.agentSkillsLocations)After the script completes, present:
## Sync Complete
| Repo | Status | PR |
|------|--------|-----|
| brand-a | synced | PR #<id> |
| backend | synced | PR #<id> |
| brand-b | synced | PR #<id> |
If --dry-run was used, note: "Dry run — no changes were made."
--no-pr to skip PR creation for specific runs--dry-run first.ai/config.yaml, syncs to sibling repos via relative paths