# Choose your migration approach Source: [Choose your migration approach](https://typeroll.com/docs/guides/migration-approach/) > Choose preservation or renewal independently for text and design/images, with editable blocks and continuity for every old URL. Choose separately what happens to **text** and to **design, including images**. Use your own AI agent through [MCP](https://typeroll.com/docs/getting-started/mcp-server/); the built-in portal assistant does not run migrations. The [workspace starter](https://typeroll.com/docs/getting-started/agent-workspace/#guided-start) contains a guided interview and the kickoff routines. It records both decisions before the agent imports or rebuilds content. | Text | Design and images | What you approve | | -------- | ----------------- | ---------------------------------------------------------- | | Preserve | Preserve | Existing wording and appearance, with explicit exceptions. | | Preserve | Renew | Unchanged text in a new, approved design. | | Renew | Preserve | Improved text within the existing visual identity. | | Renew | Renew | New text and design against separately approved briefs. | For example, you can retain every article’s wording while refreshing typography, layout and selected images. Design renewal never grants permission to rewrite headings, body text, button labels or captions. Text renewal never grants permission to change imagery. Record metadata, alt text, legal copy and translation rules explicitly; an SEO suggestion does not override preserved text. For images, identify assets that must remain, replacements or generation that are allowed, cropping, credits and rights. Image optimization does not mean changing the motif. New text may require deliberate layout adjustments even when preserving design; review those changes rather than silently redesigning. Record `text_intent` and `design_intent` in `brief/migration.md`, each as `preserve` or `renew`, plus source URLs, dates and per-page exceptions. These are planning labels, not API fields. Expand an older single-choice brief with the owner; do not assume it answers both questions. For multiple Sites, record each separately. Renewal never permits invented facts, silently lost content or broken old URLs. ## Editable blocks in every combination Start with standard blocks, their settings, named styles and Page templates. If they do not fit, have your agent create an [editable custom block type](https://typeroll.com/docs/skills/tr-custom-blocks/). Prefer a composition of standard blocks, then a template type with meaningful fields for text, images and links. These are supported building tools, not failures of the migration. Use raw HTML only as a documented exception. One good example is a unique, art-directed hero with animation, layered imagery and text positioned precisely over a background at several screen sizes. Keep frequently edited copy and images in custom-block fields where practical; a one-off hero can remain an isolated HTML block while the surrounding page uses standard blocks. Test its breakpoints, keyboard access, contrast and reduced-motion behavior. Keep important content usable without animation. Custom scripts need explicit scope; do not copy scripts that depend on the old site’s plugins or runtime. A broken standard feature still needs a fix. A custom block should express a useful design, not conceal ignored settings or bypass publication checks. ## Import and reconstruction are different steps The managed WordPress importer preserves cleaned HTML, media references and shared categories. It does not rewrite copy or automatically turn HTML into editable blocks. The agent then rebuilds the imported material into blocks and shared templates, according to the selected approach. Changing a Page’s mode alone does not convert its content. Verify one prototype per distinct template before rebuilding many Pages. Review text and design/images separately: each preserved dimension against the source, each renewed dimension against its approved brief. Check long pages and unusual content as well as a simple sample; import completion is not launch approval. ## Every old public URL needs a destination Every combination keeps old URLs working, either at the same path or through a redirect to relevant replacement content. A new design may merge Pages, but their old URLs still need meaningful destinations. Do not redirect everything to the homepage or exclude public archives merely to clear a report. Inventory sitemaps, internal links, CMS records and available traffic/backlink exports. Include archives, pagination, downloads and important anchors. Private admin/session noise can be excluded with reasons; retiring a public URL requires a separately agreed exception. Query URLs and old hostnames need an explicit routing plan: DNS alone does not serve HTTP redirects. Keep `sitewide_noindex` off during the migration. The temporary address is already blocked from indexing by Typeroll, and a forgotten setting would hide the launched site. The domain change refuses to prepare or approve a site that is set to noindex. Prepare with `confirm_disable_noindex: true` to turn it off in the same step, or pass `allow_noindex_launch: true` to launch hidden; see [a site set to noindex](https://typeroll.com/docs/publishing/domains/#a-site-set-to-noindex-cannot-launch-by-accident). Check the actual candidate deployment before changing traffic: missing pages, redirect loops, broken assets and redirects to unrelated content are failures. Visual, content and interaction review remains necessary even when every URL returns a successful response. ## Working with an agent For structured research answers that people will later correct, use explicit import authority. Core 0.2.95/MCP 0.45.74 add import-mode Page creation and individual-field imports that preserve approved answers and untouched list items. Ordinary API editing has higher authority and is not an import substitute. See [Importing structured answers](https://typeroll.com/docs/tools/pages/#importing-structured-answers). Ask the agent to read `tr-migration-evidence` with `read_skill`, then the relevant source recipe: `tr-migrate-wp`, `tr-import-url`, `tr-migrate-astro` or `tr-migrate-multisite`. These work through hosted and local MCP. Authentication can use personal OAuth or a scoped API key; the agent must confirm the Site and Version before writing. The [workspace starter](https://typeroll.com/docs/getting-started/agent-workspace/) includes a `brief/migration.md` decision record. Skills load on demand rather than filling every conversation with the entire manual. Existing edited workspace files are preserved on update; reconcile them deliberately. Before importing content or media, connect and verify your Organization’s own storage. With customer publishing, you can import and preview before connecting GitHub, builds or a website domain. Publishing and domain cutover have separate readiness checks and authorization. Composition preflight can record reviewed custom types and HTML exceptions with specific reasons. These are review records, not automatic visual approval. See [migration readiness tools](https://typeroll.com/docs/tools/migration-urls/) for the API shape. ## Check it Work through the [migration SEO checklist](https://typeroll.com/docs/guides/migration-seo-checklist/). The migration is ready to launch when `get_migration_launch_report` returns `launch_ready: true` for the latest deployment and the [launch readiness report](https://typeroll.com/docs/guides/launch-checklist/) has no open warnings you have not accepted.