Multi-Site Manager
Keep linked sites in sync with a source site, and let any of them hold an independent, detached copy of a page when they need to diverge.
Introduction
If you run multiple sites that share content, MSM lets you manage them all from one source site. Linked sites resolve content from the source automatically, and authors can detach a specific page on any linked site when it needs local customization.
MSM ships as two tools built on the same logic:
- MSM Prepare-menu plugin - a lightweight dialog off the DA Prepare menu, scoped to the page you're currently editing.
- MSM App - a standalone tool for browsing a site's whole content tree and running actions, including bulk actions, across many pages and linked sites at once.
Every site plays one of two roles relative to a relationship (a mid-tier site can be both at once):
- Source - the site other sites link to. Source authors can preview, publish, sync, or detach any linked site's copy of a page.
- Linked - a site that resolves content from its source. Linked-site authors can pull updates from the source (merge or replace) or reconnect once a local detached copy is no longer needed.
Whether a page is inherited or detached just comes down to file existence: if the page exists on the linked site, it's detached; if it doesn't, the linked site resolves it from the source at preview/publish time.
Setup
There are three steps to enable MSM for your project:
- Set up the Edge Delivery Content Provider for your project.
- Configure the org-level DA config sheet.
- Turn on the Prepare menu MSM plugin (and optionally host the MSM App).
Step 1: Edge Delivery Content Provider for your project
- /sites/my-site.json (json)
"content": {
"source": {
"url": "https://da-msm.adobeaem.workers.dev/{ORG}/{SITE}/",
"type": "markup"
}
}
This lets a linked site fall back to the source's content when no local (detached) copy exists.
Step 2: Configure the MSM Sheet
Open your org-level config at https://da.live/config#/<org>/ and add an msm tab. Each row defines a source-linked relationship using three columns:
| source | linked | title |
| my-source | Source Site | |
| my-source | linked-1 | Linked Site 1 |
| my-source | linked-2 | Linked Site 2 |
- The source column identifies the source site's repository name.
- A row with an empty linked column defines the source site entry and its display title.
- Rows with a linked value define linked sites that resolve from that source.
- Multi-level links work too: a linked value can also appear as a source value in another row, pointing to deeper linked sites (e.g. a regional mid-tier site with its own linked sites beneath it).
You can define multiple source/linked groups in the same sheet by using different values in the source column.
Step 3: Enable MSM tools
Prepare-menu plugin - add a row to the site prepare config tab pointing at the hosted plugin:
| title | path | icon | ref |
| Multi-site Manager | https://main--aem-apps--adobe-rnd.aem.page/tools/plugins/msm/msm.html | https://da.live/blocks/edit/img/S2_Icon_GlobeGrid_20_N.svg#S2_Icon_GlobeGrid |
The DA Prepare menu merges items by title, so using **Multi-site Manager** as the title overrides the OOTB `da-live` action if it's also present.
MSM App - open directly at `https://da.live/app/adobe-rnd/aem-apps/tools/apps/msm/msm`, or add a row to the site apps config tab pointing at the MSM app:
| title | description | path | image | ref |
| Multi-site Manager | Multi-Site Manager App | https://da.live/app/adobe-rnd/aem-apps/tools/apps/msm/msm | https://da.live/blocks/edit/img/S2_Icon_GlobeGrid_20_N.svg#S2_Icon_GlobeGrid |
Features
Prepare-menu plugin (single page)
Authors open a page in DA, click Prepare, and pick Multi-site Manager. The plugin reads the org's MSM config to work out the current page's role and shows one of:
- Source view - lists the sites that link to this one, grouped as:
- Linked sites - sites with no local copy of this page (inheriting from source)
- Detached sites - sites with an independent copy of this page
- Linked view - shows the source chain up to the root source, with actions to pull from source.
- Dual role - both sections, for a site that is itself a source to further linked sites.
Actions available for linked sites (from a source page):
| Action | Description |
| Preview | Push the source page to the linked site's preview environment |
| Publish | Push the source page to the linked site's live environment |
| Detach | Copy the source page to the linked site, creating an independent copy that no longer inherits |
Actions available for detached sites (from a source page):
| Action | Description |
| Sync (Merge) | Push source content into the detached copy via a 3-way merge that preserves local edits |
| Sync (Replace) | Overwrite the detached copy with the source content, discarding local edits |
| Reconnect | Delete the local copy so the site resolves the page from its source again |
Actions available on a linked site's page (pulling from its source):
| Action | Description |
| Get from source | Pull the source page into the current site as a detached copy |
| Sync (Merge / Replace) | Update an existing detached copy from the source, merging or replacing |
For recursive actions (Publish/Preview) on sites with nested descendants, the confirmation dialog shows scope chips for the whole subtree, so the action can cascade to every linked site below the selected one, not just the direct child.
MSM App (whole site, bulk actions)
The MSM App adds a Finder-style, multi-column content browser on top of the same MSM logic, for authors managing many pages or many linked sites at once:
- Enter an org (e.g. `/myorg`) or org + site (e.g. `/myorg/en`) in the toolbar and click Load.
- Browse the content tree - folders and pages, merged with linked content where applicable.
- Select one or more pages/folders (with recursive folder selection).
- Choose an action from the action panel: Preview, Publish, Detach, Merge, Replace, or Reconnect, matching the plugin's action set above.
- Configure options (sync mode, linked-site filter) and execute.
- Monitor per-page, per-site progress (pending/success/error) as bulk operations run, with a concurrency limit of 5 parallel requests.
Confirmations name the destination explicitly, e.g. "Publish 6 pages to 2 linked sites: India, Japan?"
Sync modes
When syncing content from a source into a linked site (or pulling into the current site from its source), two modes are available in both tools:
- Merge - a 3-way merge that preserves local edits in the linked site while pulling in changes from the source.
- Replace - replaces the linked site's content with the source's content. Local edits are lost.
Known Issues
The merge operation relies on structural content matching. Significant structural changes between source and linked pages may produce unexpected merge results - review the linked page after a merge.
Troubleshooting
"No linked sites configured"
MSM couldn't find a config for your current org and site. Check that the msm tab exists in your org-level DA config at `https://da.live/config#/<org>/`, and that this site shows up there as a source or a linked entry.
MSM does not appear in the Prepare menu
MSM is opt-in. Add the Multi-site Manager row to your org, or site prepare config tab, pointing at the plugin's hosted URL.
Detachment detection seems incorrect
MSM checks inheritance with a `HEAD` request against the DA source API for the page's HTML file on the linked site. If a file was created or deleted outside of MSM, the panel reflects what it finds - use MSM's own actions to keep detached copies consistent.
Preview or publish fails after Reconnect
Reconnect re-triggers preview and publish based on the linked site's prior AEM status. If the AEM admin service is briefly unavailable, preview or publish the page manually from the source site once it's back.
Early Access
MSM is an early access feature - both the Prepare-menu plugin and the standalone app are usable today, but functionality and configuration may still change. If you hit issues, let the AEM Engineering team know.