Migrate Oxygen to Bricks
Full-site migration from Oxygen Builder to Bricks Builder. Audits every Oxygen-built page, maps components to their Bricks equivalents, builds a migration plan for approval, and executes page-by-page conversion into Bricks' JSON format — all through duplicates so your live site stays untouched. Use this skill whenever someone mentions migrating from Oxygen to Bricks, switching from Oxygen to Bricks, converting Oxygen pages to Bricks, or replacing Oxygen with Bricks Builder.
What This Skill Does
Oxygen and Bricks are both modern, developer-oriented builders with similar mental models — containers, sections, flexbox layouts, dynamic data. This makes Oxygen-to-Bricks one of the most straightforward builder migrations. The structural concepts translate almost 1:1, but the underlying data formats are completely different (Oxygen's JSON shortcodes in ct_builder_shortcodes vs. Bricks' JSON array in _bricks_page_content_2), so content must be extracted, mapped, and re-encoded.
This skill reads every Oxygen page, extracts the builder content, translates each component to its Bricks equivalent, and writes the result to duplicate pages in Bricks format — giving you a complete parallel version of your site to review before going live.
Handles:
- Section → Bricks Section mapping
- Container/Div → Bricks Container mapping
- Heading, Text, Image, Button, Video, Icon components
- Flexbox layout settings (direction, alignment, gap, wrap)
- Column/grid structures
- Custom CSS classes and inline styles
- Link elements and CTAs
- Code blocks and custom HTML
- Repeater/dynamic data placeholders (flagged for manual review)
What This Skill Does NOT Do
- Migrate Oxygen's Global Styles or Style Sheets — Bricks uses its own theme style system
- Convert Oxygen conditions (visibility rules) — these must be rebuilt in Bricks
- Migrate Oxygen's custom PHP/code block logic — flagged for manual porting
- Recreate Oxygen templates (headers, footers, archives) — Bricks templates are structurally different and must be rebuilt
- Transfer WooCommerce builder templates — product/shop templates need separate handling
- Guarantee pixel-perfect visual parity — some spacing/sizing will need fine-tuning in Bricks
Requirements
- Respira for WordPress plugin installed and connected
- MCP connection active (desktop or WebMCP)
- Oxygen Builder active on the source site
- Bricks Builder installed on the target site (can be the same site)
- Read access to scan Oxygen content
- Write access to create duplicates with Bricks content
Trigger Phrase
- "migrate oxygen to bricks"
Alternative Triggers
- "convert oxygen to bricks"
- "switch from oxygen to bricks"
- "move oxygen pages to bricks"
- "replace oxygen with bricks"
- "oxygen to bricks migration"
Builder Technical Context
Source: Oxygen Builder
- Content stored in post_meta key
ct_builder_shortcodes
- JSON-based structure encoding nested components
- Read via
wordpress_extract_builder_content with builder=oxygen
- Components:
ct_section, ct_div, ct_headline, ct_text_block, ct_image, ct_link_button, etc.
Target: Bricks Builder
- Content stored in post_meta key
_bricks_page_content_2 as a JSON array
- Each element is an object with
id, name, parent, settings, children
- Write via
wordpress_inject_builder_content with builder=bricks
- Elements:
section, container, heading, text, image, button, etc.
Execution Workflow
Phase 1: Pre-Migration Audit
- Verify Respira + MCP connection via
wordpress_get_site_context. If unavailable, stop and show setup guidance.
- Detect Oxygen presence via
wordpress_get_builder_info or wordpress_list_plugins.
- Inventory all Oxygen-built content:
wordpress_list_pages and wordpress_list_posts — identify all content
wordpress_find_builder_targets with builder=oxygen — find Oxygen-managed pages
- For each Oxygen page, extract content:
wordpress_extract_builder_content with builder=oxygen
- Catalog: component types used, nesting depth, custom CSS, dynamic data usage, code blocks
- Produce an Audit Report:
- Total pages/posts using Oxygen
- Component type frequency (how many sections, headings, images, etc.)
- Complexity flags (custom PHP, conditions, dynamic data, WooCommerce templates)
- Estimated migration difficulty per page (simple / moderate / complex)
Phase 2: Migration Plan
Present a structured migration plan:
## Oxygen → Bricks Migration Plan
### Site Overview
- Total Oxygen pages: X
- Simple pages (direct mapping): X
- Moderate pages (some manual review needed): X
- Complex pages (significant manual work): X
### Component Mapping
| Oxygen Component | Bricks Equivalent | Notes |
|---|---|---|
| ct_section | section | Direct mapping |
| ct_div | container | Direct mapping |
| ct_headline | heading | Direct mapping |
| ... | ... | ... |
### Migration Order
1. [Page Title] — Simple — estimated 2 min
2. [Page Title] — Moderate — estimated 5 min
...
### Items Requiring Manual Attention
- [Page X] — Custom PHP code block (line 45)
- [Page Y] — Oxygen condition logic
- Global Styles — must be recreated in Bricks Theme Styles
Then ask:
Here's the migration plan. Would you like me to:
- Migrate all pages (creates duplicates for review)
- Migrate only simple pages first
- Migrate specific pages you choose
- Just keep this as a reference — no changes
Wait for explicit confirmation before proceeding.
Phase 3: Page-by-Page Migration
For each approved page:
- Extract Oxygen content via
wordpress_extract_builder_content with builder=oxygen
- Map each Oxygen component to its Bricks equivalent:
- Translate component types (ct_section → section, ct_div → container, etc.)
- Convert layout properties (flexbox settings, spacing, sizing)
- Map CSS classes and inline styles
- Preserve text content, image URLs, link targets
- Flag any unmappable components (custom PHP, conditions) with inline comments
- Build the Bricks JSON array structure
- Create a duplicate via
wordpress_create_page_duplicate or wordpress_create_post_duplicate
- Inject Bricks content via
wordpress_inject_builder_content with builder=bricks
- Log the migration result (success, warnings, manual review items)
Phase 4: Post-Migration Verification
- Summarize all migrated pages with status:
- Clean migrations (no issues)
- Migrations with warnings (flagged items needing review)
- Failed migrations (if any)
- List all manual review items:
- Custom PHP code blocks that need porting
- Dynamic data references that need reconnecting
- Oxygen conditions that need rebuilding in Bricks
- Provide review instructions:
- Where to find duplicates in WordPress admin
- How to preview Bricks pages
- How to delete duplicates if not wanted
Safety Model
- Read-only analysis first — full Oxygen content audit before any changes
- Explicit user confirmation before creating any duplicates
- Duplicate-first only — never modifies live/published Oxygen content
- Never auto-publishes duplicates
- Provides rollback guidance (delete duplicates if not wanted)
- Preserves all original Oxygen content untouched
Honest Disclaimer
This skill converts Oxygen page structures to Bricks format and creates duplicates for review.
It cannot:
- Guarantee pixel-perfect visual parity between builders
- Migrate Oxygen Global Styles or conditions automatically
- Convert custom PHP code blocks to Bricks equivalents
- Handle WooCommerce template migrations
- Replace a thorough manual QA pass on every page
It can:
- Map 80-90% of standard Oxygen components to Bricks equivalents
- Preserve content, images, links, and layout structure
- Save days of manual rebuild work
- Identify exactly what needs manual attention
Tooling
Core WordPress tools
wordpress_get_site_context
wordpress_get_builder_info
wordpress_list_pages
wordpress_list_posts
wordpress_list_plugins
wordpress_find_builder_targets
wordpress_extract_builder_content
wordpress_inject_builder_content
wordpress_create_page_duplicate
wordpress_create_post_duplicate
wordpress_read_page
wordpress_read_post
Telemetry
After run completion, send fire-and-forget usage tracking to:
POST https://www.respira.press/api/skills/track-usage
Include:
skill_slug = migrate-oxygen-to-bricks
- site/version context
- duration and success
- pages audited, pages migrated, warnings count
- tools used
Never block user flow on telemetry failure.
Related Skills
- WordPress Site DNA (understand site structure before migrating)
- Technical Debt Audit (clean up before or after migration)
- SEO & AEO Amplifier (verify SEO preservation post-migration)
Built by Respira Team
https://respira.press/skills/migrate-oxygen-to-bricks
1---2name: migrate-oxygen-to-bricks3description: Full-site migration from Oxygen Builder to Bricks (both modern, developer-oriented, near 1:1 mental model). Audits every Oxygen page, maps components to Bricks equivalents, builds a migration plan for approval, and converts pages to Bricks JSON via duplicates so the live site stays untouched. Use when user says "migrate Oxygen to Bricks", "switch from Oxygen to Bricks", or "replace Oxygen with Bricks Builder".4license: MIT5---6
7# Migrate Oxygen to Bricks
8
9Full-site migration from Oxygen Builder to Bricks Builder. Audits every Oxygen-built page, maps components to their Bricks equivalents, builds a migration plan for approval, and executes page-by-page conversion into Bricks' JSON format — all through duplicates so your live site stays untouched. Use this skill whenever someone mentions migrating from Oxygen to Bricks, switching from Oxygen to Bricks, converting Oxygen pages to Bricks, or replacing Oxygen with Bricks Builder.
10
11## What This Skill Does
12
13Oxygen and Bricks are both modern, developer-oriented builders with similar mental models — containers, sections, flexbox layouts, dynamic data. This makes Oxygen-to-Bricks one of the most straightforward builder migrations. The structural concepts translate almost 1:1, but the underlying data formats are completely different (Oxygen's JSON shortcodes in `ct_builder_shortcodes` vs. Bricks' JSON array in `_bricks_page_content_2`), so content must be extracted, mapped, and re-encoded.
14
15This skill reads every Oxygen page, extracts the builder content, translates each component to its Bricks equivalent, and writes the result to duplicate pages in Bricks format — giving you a complete parallel version of your site to review before going live.
16
17**Handles:**
18- Section → Bricks Section mapping
19- Container/Div → Bricks Container mapping
20- Heading, Text, Image, Button, Video, Icon components
21- Flexbox layout settings (direction, alignment, gap, wrap)
22- Column/grid structures
23- Custom CSS classes and inline styles
24- Link elements and CTAs
25- Code blocks and custom HTML
26- Repeater/dynamic data placeholders (flagged for manual review)
27
28## What This Skill Does NOT Do
29
30- Migrate Oxygen's Global Styles or Style Sheets — Bricks uses its own theme style system
31- Convert Oxygen conditions (visibility rules) — these must be rebuilt in Bricks
32- Migrate Oxygen's custom PHP/code block logic — flagged for manual porting
33- Recreate Oxygen templates (headers, footers, archives) — Bricks templates are structurally different and must be rebuilt
34- Transfer WooCommerce builder templates — product/shop templates need separate handling
35- Guarantee pixel-perfect visual parity — some spacing/sizing will need fine-tuning in Bricks
36
37## Requirements
38
39- Respira for WordPress plugin installed and connected
40- MCP connection active (desktop or WebMCP)
41- Oxygen Builder active on the source site
42- Bricks Builder installed on the target site (can be the same site)
43- Read access to scan Oxygen content
44- Write access to create duplicates with Bricks content
45
46## Trigger Phrase
47
48- "migrate oxygen to bricks"
49
50## Alternative Triggers
51
52- "convert oxygen to bricks"
53- "switch from oxygen to bricks"
54- "move oxygen pages to bricks"
55- "replace oxygen with bricks"
56- "oxygen to bricks migration"
57
58## Builder Technical Context
59
60**Source: Oxygen Builder**
61- Content stored in post_meta key `ct_builder_shortcodes`
62- JSON-based structure encoding nested components
63- Read via `wordpress_extract_builder_content` with `builder=oxygen`
64- Components: `ct_section`, `ct_div`, `ct_headline`, `ct_text_block`, `ct_image`, `ct_link_button`, etc.
65
66**Target: Bricks Builder**
67- Content stored in post_meta key `_bricks_page_content_2` as a JSON array
68- Each element is an object with `id`, `name`, `parent`, `settings`, `children`
69- Write via `wordpress_inject_builder_content` with `builder=bricks`
70- Elements: `section`, `container`, `heading`, `text`, `image`, `button`, etc.
71
72## Execution Workflow
73
74### Phase 1: Pre-Migration Audit
75
761. Verify Respira + MCP connection via `wordpress_get_site_context`. If unavailable, stop and show setup guidance.
772. Detect Oxygen presence via `wordpress_get_builder_info` or `wordpress_list_plugins`.
783. Inventory all Oxygen-built content:
79 - `wordpress_list_pages` and `wordpress_list_posts` — identify all content
80 - `wordpress_find_builder_targets` with `builder=oxygen` — find Oxygen-managed pages
814. For each Oxygen page, extract content:
82 - `wordpress_extract_builder_content` with `builder=oxygen`
83 - Catalog: component types used, nesting depth, custom CSS, dynamic data usage, code blocks
845. Produce an **Audit Report**:
85 - Total pages/posts using Oxygen
86 - Component type frequency (how many sections, headings, images, etc.)
87 - Complexity flags (custom PHP, conditions, dynamic data, WooCommerce templates)
88 - Estimated migration difficulty per page (simple / moderate / complex)
89
90### Phase 2: Migration Plan
91
92Present a structured migration plan:
93
94```
95## Oxygen → Bricks Migration Plan
96
97### Site Overview
98- Total Oxygen pages: X
99- Simple pages (direct mapping): X
100- Moderate pages (some manual review needed): X
101- Complex pages (significant manual work): X
102
103### Component Mapping
104| Oxygen Component | Bricks Equivalent | Notes |
105|---|---|---|
106| ct_section | section | Direct mapping |
107| ct_div | container | Direct mapping |
108| ct_headline | heading | Direct mapping |
109| ... | ... | ... |
110
111### Migration Order
1121. [Page Title] — Simple — estimated 2 min
1132. [Page Title] — Moderate — estimated 5 min
114...
115
116### Items Requiring Manual Attention
117- [Page X] — Custom PHP code block (line 45)
118- [Page Y] — Oxygen condition logic
119- Global Styles — must be recreated in Bricks Theme Styles
120```
121
122Then ask:
123
124> Here's the migration plan. Would you like me to:
125> 1. Migrate all pages (creates duplicates for review)
126> 2. Migrate only simple pages first
127> 3. Migrate specific pages you choose
128> 4. Just keep this as a reference — no changes
129
130Wait for explicit confirmation before proceeding.
131
132### Phase 3: Page-by-Page Migration
133
134For each approved page:
135
1361. Extract Oxygen content via `wordpress_extract_builder_content` with `builder=oxygen`
1372. Map each Oxygen component to its Bricks equivalent:
138 - Translate component types (ct_section → section, ct_div → container, etc.)
139 - Convert layout properties (flexbox settings, spacing, sizing)
140 - Map CSS classes and inline styles
141 - Preserve text content, image URLs, link targets
142 - Flag any unmappable components (custom PHP, conditions) with inline comments
1433. Build the Bricks JSON array structure
1444. Create a duplicate via `wordpress_create_page_duplicate` or `wordpress_create_post_duplicate`
1455. Inject Bricks content via `wordpress_inject_builder_content` with `builder=bricks`
1466. Log the migration result (success, warnings, manual review items)
147
148### Phase 4: Post-Migration Verification
149
1501. Summarize all migrated pages with status:
151 - Clean migrations (no issues)
152 - Migrations with warnings (flagged items needing review)
153 - Failed migrations (if any)
1542. List all manual review items:
155 - Custom PHP code blocks that need porting
156 - Dynamic data references that need reconnecting
157 - Oxygen conditions that need rebuilding in Bricks
1583. Provide review instructions:
159 - Where to find duplicates in WordPress admin
160 - How to preview Bricks pages
161 - How to delete duplicates if not wanted
162
163## Safety Model
164
165- Read-only analysis first — full Oxygen content audit before any changes
166- Explicit user confirmation before creating any duplicates
167- Duplicate-first only — never modifies live/published Oxygen content
168- Never auto-publishes duplicates
169- Provides rollback guidance (delete duplicates if not wanted)
170- Preserves all original Oxygen content untouched
171
172## Honest Disclaimer
173
174This skill converts Oxygen page structures to Bricks format and creates duplicates for review.
175
176It cannot:
177- Guarantee pixel-perfect visual parity between builders
178- Migrate Oxygen Global Styles or conditions automatically
179- Convert custom PHP code blocks to Bricks equivalents
180- Handle WooCommerce template migrations
181- Replace a thorough manual QA pass on every page
182
183It can:
184- Map 80-90% of standard Oxygen components to Bricks equivalents
185- Preserve content, images, links, and layout structure
186- Save days of manual rebuild work
187- Identify exactly what needs manual attention
188
189## Tooling
190
191**Core WordPress tools**
192- `wordpress_get_site_context`
193- `wordpress_get_builder_info`
194- `wordpress_list_pages`
195- `wordpress_list_posts`
196- `wordpress_list_plugins`
197- `wordpress_find_builder_targets`
198- `wordpress_extract_builder_content`
199- `wordpress_inject_builder_content`
200- `wordpress_create_page_duplicate`
201- `wordpress_create_post_duplicate`
202- `wordpress_read_page`
203- `wordpress_read_post`
204
205## Telemetry
206
207After run completion, send fire-and-forget usage tracking to:
208
209- `POST https://www.respira.press/api/skills/track-usage`
210
211Include:
212- `skill_slug = migrate-oxygen-to-bricks`
213- site/version context
214- duration and success
215- pages audited, pages migrated, warnings count
216- tools used
217
218Never block user flow on telemetry failure.
219
220## Related Skills
221
222- WordPress Site DNA (understand site structure before migrating)
223- Technical Debt Audit (clean up before or after migration)
224- SEO & AEO Amplifier (verify SEO preservation post-migration)
225
226---
227
228Built by Respira Team
229https://respira.press/skills/migrate-oxygen-to-bricks