Divi Connect

Changelog

Every release of Divi Connect, newest first — what changed, what was fixed, and what it means for a site you have already built.

012.3.3

Changed: the free plugin no longer carries the Professional features' code on disk. Until now the free download shipped the Pro code too, switched off behind the licence check. From this version the free plugin contains only what the free plan runs; when you buy a licence, the Professional plugin is installed for you in the usual way, through the account screen, the same as before. Nothing changes for Professional customers: your plugin is the same code with the same licence, and updates arrive as they always have. This is the build submitted to the WordPress.org plugin directory.

Changed: on the free plan, the sidebar shows only the screens that work on the free plan. The Presets, Memory, Integrations and Older pages screens, which are Professional features, no longer appear as locked screens; one Pro screen describes what the Professional plan adds, with a single place to activate a licence or upgrade. Nothing changes for Professional customers.

Fixed: a page with a long edit history no longer slows down, or fails to load, for visitors. Divi Connect keeps up to twenty checkpoints of every page it edits, so any change can be undone. They were stored with the page itself, in a place WordPress reads on every visit, so a large page that had been edited many times made every visitor's browser wait for megabytes of history it never needed - and on a host with a 256MB PHP memory limit, the first visit after a design change could come back as a blank page with a memory error. The history now lives on its own and is read only when you open it or undo something. Existing histories are moved across automatically after the update, a page at a time; nothing is lost and Undo works as before.

022.3.2

New: your AI can now build things that react to a click. The built-in Divi 5 Skill gains Divi's own interactions: a click, hover or scroll on one part of the page can show, hide, move or restyle another. Ask for a pricing table with a Monthly / Annual switch and you get one that actually switches - the prices and the selected pill change together - built from Divi's own settings, with no custom code to maintain. It also covers the places this quietly does nothing, so your AI stops before shipping a switch that looks right and does nothing when a visitor clicks it.

New: Divi Connect works on WordPress Multisite. The plugin can now be network-activated. Every site on the network gets its own connector key, its own design system and its own settings, so an AI connected to one site cannot reach another - and a site added to the network later is set up on its own, with nothing for you to do. On the Professional plan the network administrator activates the licence once for the whole network instead of site by site; Divi Connect → Account in the network admin then lists every site with its address and plan, with a Deactivate License link beside each one, and the activation dialog chooses which sites a licence applies to - so a licence is spent on the sites you choose rather than used up by the network. Turning it off for one site leaves that site's connector key and settings untouched and leaves every other site working. A site added to the network after the licence was activated starts on the free plan until you include it from that same screen. A single-site install is unaffected - the network code only runs on a network. Two notes while this is new: the licensing service we use describes its own network support as beta, and we measured this on a test network rather than a live domain, so if your licence covers a limited number of sites, check the count on your account after activating.

New: sign in with WordPress instead of sharing a key (OAuth). On the Connection screen, after choosing your AI, choose how it signs in: *Sign in with WordPress (OAuth)* or *Use the connector key (API key)*. *Sign in with WordPress* opens this site's own login when the app connects; you press Allow, and that app gets a connection of its own, in your name. The address you paste carries nothing secret, the History screen names the person who made each change, and a new *Connected people* card lists every connection with a Revoke button beside it, so one person leaving does not mean re-keying everyone. Works with claude.ai, Claude Code, ChatGPT, Codex, Gemini CLI and any app that follows the MCP sign-in standard; the connector key route is unchanged and still there for anything that only takes a URL. ChatGPT needs Developer Mode switched on, for either route; it is available on the free plan. An app that cannot register itself can be given a client ID and secret from the Any MCP app steps. Works when WordPress lives in a subfolder of the domain.

New: Claude's recommended sign-in option now works. When Claude offers "Use Anthropic's hosted client metadata", this site reads Claude's sign-in details from the address Anthropic hosts, checks them (the address must be https, the file must name itself, the return address must be one it lists, and a file asking for a shared secret is refused), and shows the usual Allow screen, which now also names the address that vouches for the app. Any app that follows the Client ID Metadata Document standard gets the same door; registering automatically still works.

Changed: the layout library is served from divilove.com. The Layouts screen and your AI's layout tools now read the catalog and pictures from our own server instead of a public CDN; the public GitHub repository stays, as the source. Nothing about your site is sent either way.

Changed: the draft picture usually comes back in the same step. When the AI asks to see its draft, the call now waits up to ten seconds for the picture your browser takes (it took about eight on a real host in our measurement) before answering; the AI can ask for no wait on a small host.

New: the AI looks at its draft before building it, and you hold the camera. The AI designs a new page as a draft first; if you have WordPress admin open in your browser the picture is taken there automatically (within seconds on a Divi Connect screen) and the AI collects it on its next step, otherwise the draft waits on Home with one button. The camera asks through WordPress's own Heartbeat, the channel your security plugin already governs, and respects its interval settings. An AI that can run a browser of its own (Claude Code, Cursor, Codex CLI, claude.ai and ChatGPT in their sandboxes) looks at its draft there and the camera is the fallback. The AI checks the composition and only then builds. We measured this route on three briefs and it wins on all three. Nothing leaves your site; the picture is kept in your media library. A render service can take the picture without you, if you switch that on and configure one.

Changed: a new logo. Divi Connect has a new mark: a D whose bowl folds like a ribbon and holds a connector in its middle, in cobalt and graphite. It replaces the placeholder the plugin launched with. You will see it in the WordPress menu, on the plugin's own screens and on the sign-in page.

Fixed: previewing a colour kit no longer reports readability failures the kit does not have. Picking a kit on the Design screen previewed its six brand colours over the rest of the palette you already had, so the readability check graded the new fills under the old inks and could report several pairs failing for a kit that passes every one of them. The preview now carries the whole kit. Every kit we ship is checked against all eighteen pairs at build time.

Fixed: a layout inserted "In my design system" no longer comes out with white text on a white page. Library layouts carry transparent backgrounds on most modules. When the layout was re-expressed in your colours, that transparent fill was read as a dark surface, so the text above it was given a light ink to read on a surface that never paints — and landed light-on-light on your page. A fill that paints nothing is no longer treated as a surface, and it stays transparent rather than being bound to a colour of yours. Adopted layouts are now checked by rendering them, not only by reading the markup.

Fixed: the readability checker's Use button now changes the right colour. For a pair like "Text on the accent" the suggested ink was being written into the surface colour the ink followed, which darkened the page and failed other pairs. It now sets the ink itself.

Fixed: your AI now finds the design-first route. A test with a real Claude session showed it building a generic page from named patterns even though the connector told it to design the page as HTML first: that instruction was sent in a channel Claude never shows the model, and the patterns tool's own description recommended itself for whole pages. The rule now lives where the AI actually reads - the pattern tool, the Skill tool and the two Skill topics it always loads. It is also told not to narrate that method to you: you see the page being designed, a preview, and the result.

Fixed: the new logo now actually appears after an update. The icon files are served with the plugin version in their address, so your browser fetches the new mark instead of showing the cached old one. Before this you would have had to force-refresh to see it.

Changed: fewer upgrade prompts on the free plan. The free-plan line and the Unlock Pro link now appear on Home only; the other screens carry just the plan badge. The line no longer lists features (managing colours and fonts was never Pro). Locked switches keep their PRO label with one upgrade line under the card, and the Figma screen says in one sentence that import is part of Pro.

Changed: the Connection screen asks one question at a time. Which AI, then how it signs in, then the steps. The connector address and key now appear only when you choose the key route.

Fixed (security): three findings from the August audit closed - a preview script that did not escape quotes, a colour value that was written without being checked, and a version number the site told anyone who asked.

New: your AI designs the page before it builds it. Until now a new page was assembled from ready-made section patterns, which is quick and comes out looking like every other page built that way: everything centred, a card in every column. Now the AI is taught to design the page first as a draft it can look at, using your site's real fonts and colours, and then to build that design in Divi piece by piece. We measured it on three unrelated briefs and the difference is visible on all three. Presets are no longer painted over your design by default: the page is built with the exact values first, and the AI offers one pass afterwards to bind it to your presets so it re-themes with the site, only if you say yes. The Divi 5 Skill that ships inside the plugin gains a "page-from-html" topic with the whole method.

New: an AI access switch on Home — one place to close the door. "Let AI reach this site" is on by default and nothing changes for a site that never touches it. Switched off, your connector URL and API key stop answering: a connected AI is turned away and told plainly that access is switched off, so nobody wastes an afternoon regenerating a key that was never broken. Divi Connect's own screens keep working while it is off, including the switch itself, so you can always let it back in. It is free, on every plan — closing your own door should not cost anything.

New: your AI can build a page straight from a dropped Figma design, in one step. Until now it read the design and then wrote the page itself, which is where the small differences crept in - a photograph shown at its own proportions instead of the shape you drew it in, a row of navigation links stacked one under the next. Ask for the design to be built and the whole conversion now happens on your site instead: every photograph is cropped to the box you drew it in, the navigation becomes one Divi menu module, and the column widths and section heights come from the design file rather than from a reading of a picture. You get a draft page and a link to open it. Two things are still yours to decide and it asks before either: whether the design's colours stay as they are or bind to your design system, and whether the navigation bar should become a real WordPress menu - until you say yes, the links are reported to you and left off the page, because a menu module with no menu behind it lists every published page on your site. Figma import is a Pro feature of Divi Connect.

New: a Layouts screen — ready-made sections you can drop into any page, and a Page Composer that builds a whole page from them. Divi Connect → Layouts shows the free layout library with a picture of each layout: pick a group on the left, a layout in the middle, and Insert puts it into the page the composer targets as ordinary Divi 5 sections, with its photographs copied into your media library. A checkpoint of the page is saved first, so the screen offers Undo. It is the same library your AI reaches with divi_list_layouts and divi_insert_layout. To build a page, press Add to composer on several layouts: the Page Composer on the right draws them stacked as the page they will make, lets you reorder or remove them, and Preview page shows the whole stack at full width. Choose a page or a title for a new draft, choose whether they land as designed or in my design system (colours and fonts become references to yours, sizes too on Pro, text stays readable on its surface), and press Create page — one draft, the sections in the order you saw, ready to open in the Visual Builder. The library holds five groups so far — heroes, buttons, blurbs, banners and tabs, twenty layouts each; more groups follow as they are approved.

New: a layout can now go INSIDE a column, not only across the page. Until now every layout landed as a full-width band of its own, which is right for a hero and wrong for a button — so the buttons group promised something it could not do. Ask your AI for a button beside your copy, or a blurb in the middle column of three, and it can put one there: the layout's modules go into the column you name and the section around them does not, which the reply says plainly, because the column's own background and spacing take over. A layout that is really a band — several rows, or its own columns — is refused with the reason rather than flattened into something you did not choose. A checkpoint is saved first, so it can be undone.

New: "Check for new layouts" on the Layouts screen, and a line saying how old the list is. The catalog is cached on your site and again on the network that serves it, so a group added today could take hours to appear with nothing on screen explaining the wait. The button reads past both and tells you what it found — "1 new group (tabs), 20 new layouts", or "You have the latest — checked just now" — and the line beside it says when the catalog was last actually fetched. If a cache refuses to clear it says so, rather than reporting nothing new when it simply read the same copy twice.

Changed: when your AI lists a layout group, it is told to show you the pictures. Every layout already came with a thumbnail and a full-width preview; the reply now says so and hands the AI the exact call that draws them all in one picture, so you are not asked to choose from a table of names.

Fixed: your AI could describe the layout library but not list it. Asking for the library with no group named answered "No route was found", because the request was built with an empty group in its address. It now lists the groups and their counts, and the tool's own description no longer names groups that may not exist - it says to ask. (On 2.3.1, ask by group: "list the hero layouts".)

Changed: the Page Composer draws your stack as the page it will make. The sections' pictures now sit flush, one under the next with nothing between them, so the frame reads as one page; a small number sits on the left edge of each, and the name with the move and remove controls appears in the top-right corner when you point at a section or tab to it.

Fixed: Insert and Add to composer looked like they did nothing. Every reply to a tile's Insert - "choose where it goes first", "Inserted", Undo - was written above the grid, so once you had scrolled to a layout it sat out of view. Now, when no page is chosen, Insert opens a small window over the layout that asks where it should go - pick a page or name a new draft - and inserts from there. Replies also appear in the Page Composer column, and on a narrow window, where the composer sits below the grid, a bar at the bottom of the screen repeats the composer's reply with a "Go to composer" button.

Changed: the approval picture is saved on your site, and your AI hands you its link. When your AI asks for the picture of the chosen layouts stacked as a page, some chat apps receive that picture but never show it to you, so the AI could say "as you can see" while you saw nothing. The picture is now also kept in your media library and the AI is given its address to pass on, so you can open it in your browser whatever the chat shows. The AI is no longer given the library's own picture addresses, and it is told not to build until you have answered.

Fixed: a layout inserted into an existing page now shows up in the Visual Builder. A page saved in the Visual Builder keeps its content inside one wrapper block, and a section added from the Layouts screen (or by your AI) was placed beside that wrapper instead of inside it - so it rendered on the live page but the builder, which reads only what is inside the wrapper, did not list it. It is now placed inside, at the top or the bottom as you chose. A section already added this way still shows on the live page; to bring it into the builder, use Undo (or divi_rollback) and insert it again.

Changed: "In my design system" now adopts into YOUR system, not only ours. Until now the option needed one of our colour roles to appear, fonts bound only to our three font variables, and sizes snapped only to our scale. Now any global colour is a candidate, any font variable is placed by its name (a "Brand Heading" goes to headings, a "Body copy" to text; a font whose name says no role is placed by order and the reply says so), and on Pro a size snaps to any size variable whose name says what it is for ("Section padding", "Body text size") — a variable with an unreadable name is left alone rather than guessed. When a text colour's nearest match does not read on its surface and your palette has no on-colour for that surface, the nearest of your colours that does read is used instead of keeping the layout's own. The option now appears as soon as the site has a global colour, a font variable or a size variable of its own.

Changed: the Integrations screen says what a connected Figma fetch does not bring. Fetching with a token brings the design's colour values but not your Figma variable names (Figma shares those on its Enterprise plan only); the page builds the same, but matching colours to your design system by name needs the other way: export the file from Figma with our plugin and drop it on the screen. The screen now says so beside the fetch steps, and its note about the Figma plugin says there is nothing to install: in Figma, open the Tools menu and search "Divi Connect".

Changed: the list of warnings from your AI's builds now lives on History & Activity, under the log of what the AI did, instead of at the top of Home. Same list, same Clear button; Home is for what you can do next.

Removed: the set-up wizard. It was nine steps of the plugin's own screens shown inside a popup, with a step count that disagreed with itself, and it confused more people than it helped. On a fresh site, Home now shows the two things to do first — connect your AI, and (if you want) choose how your site looks — and every screen carries its own guidance. The old set-up link lands on Home.

032.3.1

New: your AI can show you a page before it builds it. Ask for a page made from library layouts and the AI can send back one picture of the chosen sections stacked in order (divi_preview_layouts) for you to approve, with a link to each section's own full-size preview. A long page arrives as a few numbered parts so it stays readable. The picture shows the layouts as they ship — your own colours and fonts are applied when you say so at the build step — and nothing is inserted until you approve. Once you do, the AI builds the whole page in one step (divi_compose_page): one draft, the sections in the order you saw, a checkpoint saved for each, and a link to open it in the Visual Builder.

New: find and change a value everywhere in one go. Ask your AI to find every button on the site, every module that uses a colour or font, or every place a size appears, and it can list them page by page (divi_find_modules) and then change them all in one step (divi_replace_values) — for example every literal #4f46e5 to your site's own primary colour. The change is always shown as a dry run first; nothing is written until you say so, every page it touches is checkpointed, and a change across the whole site is held behind the same confirmation as any other site-wide change.

New (Pro): approve site-wide changes on your dashboard, not in the chat. A new setting, *Approve site-wide changes here, not in the chat*, holds anything that affects the whole site — global colours, variables, presets, a Theme Builder template, deleting a page — until a site administrator opens Divi Connect → Home and presses Approve on that exact request. The AI is told to ask you and cannot approve on its own behalf; a "yes" typed in the chat is not enough, and each approval covers one call for ten minutes. Off by default; the right setting for a client site you have handed over.

Changed: Divi Connect's screens are now items in the WordPress menu — Home, Design System, Presets, Integrations, History, Connection, Memory, Settings, Troubleshoot, Endpoints and Account sit under Divi Connect in the admin sidebar, and the plugin's own sidebar column is gone, so every screen has the full width. The separate "Account & licence" screen is gone too: your plan, licence, billing and the beta programme all live on the one Account page. The Shop item is held back until there is something to buy there.

Changed: the dashboard says "your AI", not "Claude". Home, History & Activity, Memory, Settings, Troubleshoot and the set-up wizard named Claude where any connected app was meant; they now say "your AI", and the activity log attributes connector changes to *AI (Divi Connect)*. The Connection screen still names each app where the steps are specific to it.

Changed: the Connection and Integrations screens start clean. Neither chooser has a tool picked for you any more: press an app or a design tool and only its steps appear, press it again to close them. The screen no longer opens on one app's instructions, and the explanation of how the AI sees the connector's tools is gone from it. A form inside a panel — saving a Figma token, fetching a frame, dropping a file — keeps that panel open when the page comes back, so its own message is the first thing you see.

New: delete a Figma design you no longer need. Every row of *Designs on this site* on the Integrations screen now has a Delete button. It removes the design and its section pictures from what your AI can read; pages already built from it and the photographs in your media library are not touched.

New: build a page from a Figma design. Export your design with the Divi Connect plugin for Figma, drop the file at Divi Connect → Integrations, and your AI can build the page from it. Your photographs land in the media library as real images, your logos and icons arrive as vector art you can still recolour and animate, and the layout is worked out from the design's own auto-layout rather than guessed from a picture. Works on a free Figma account: the export runs inside Figma, so there is no API key to create and no monthly file limit to run into. Figma import is a Pro feature of Divi Connect.

New: a Figma design's colour variables reach your design system. When a colour in the design is bound to a Figma variable such as color/accent, the built page can use your site's global colour of the same role instead of a fixed value, so the page follows your brand when it changes. Your AI is told which colours could bind and to what, and you choose: keep the design's values, use the site's, or add the design's colours as new global colours under their Figma names. A colour whose value already matches a global colour is bound automatically, and a colour with no variable is named as such.

Fix: a long unbreakable string no longer pushes the page sideways on a tablet. An email address or a URL in a narrow column now wraps inside it instead of overflowing the screen.

Fix: a photograph from a Figma design now crops to the box the designer drew instead of keeping its file's own proportions inside it.

Fix: adopting a design system that another plugin installed now picks the right colours and fonts. When a palette is stored as a ramp of shades (a -50 up to a -950 of one colour), the proposal used to take the first shade it met, which could be near white, and could offer a disabled-state grey as the body text colour, both marked as certain. The middle shade is now proposed, a state colour is never offered as a base role, and each is marked as a medium-confidence guess with the reason shown. A heading or body font that the other plugin set through Divi's own global font is now matched as well, instead of skipped.

New: a free layout library your AI can use. Ask for "a proper hero" and it can browse the Divi Love library of ready-made Divi 5 sections, insert one into a page or start a new page from it, and then restyle it with your design system. Every layout is verified against its published checksum before it is imported, its photographs land in your media library, and the page is snapshotted first so the insert can be undone. The library opens with 20 heroes.

New: a restore point before every update. When Divi Connect updates, it keeps a pinned snapshot of your colours, fonts, sizes and presets from before the update in the Design System change history. If you ever install an older version, a notice says which version last wrote those settings and offers that restore point, because an older version cannot undo them by itself. Every released version can be downloaded from your Freemius account; the Troubleshoot tab has the three steps for installing one.

New: more of a Figma design survives the trip. Underlined, struck-through and italic text keep their styling; a rotated element is turned the same way on the page; radial and angular gradients are carried instead of left out; and sections that sit loose on the Figma page with no frame around them can be selected together and exported as one page.

New: your navigation becomes a real menu. When a design has a navigation bar, Divi Connect tells your AI rather than quietly flattening it into text - it asks whether to create a WordPress menu from those links, and whether the header should be site-wide or only on that page. A menu module without a menu chosen lists every published page on the live site while looking correct in the builder, so this is never done by guesswork.

Note: the Figma export plugin, "Divi Connect — Design Export", is free and listed separately in the Figma Community (https://www.figma.com/community/plugin/1676661323059151469). The Integrations screen links to it. Everything above works once you have it; nothing else in Divi Connect changes.

Fixed: you are no longer told to refresh your AI connector when there is nothing to refresh. Every update used to show "refresh your Claude connector, or anything new stays invisible to it". That stopped being true in 2.3.0, when your AI began being shown three tools instead of the whole list - new features now reach it without the list changing at all. The prompt is now shown only if you are updating from a version older than 2.3.0, where it is still needed, and it says plainly that it is a one-off.

Fixed: the button that applies a design system was almost seven screens down. The Design System screen shows you the whole look before you commit to it, which is deliberate - you should be able to see what you are about to change. But the button that actually applied it sat at the very bottom, so on a real design system you had to scroll past everything to reach it, and scroll back up if you wanted to look again. The page is unchanged; there is now a small bar that stays with you while you scroll, with the same button on it. Nothing is applied any differently, and nothing moved.

042.3.0

Fixed: installing the ready-made styles on a site with no colours or sizes gave you styles that did nothing. A preset holds no values of its own - every size and colour in it points at one of your site's, by name. On a site that had none, all 490 installed anyway, appeared in the picker, and changed almost nothing when applied, which reads as "the styles are broken". Divi Connect now checks before it writes: if the styles have nothing to bind to it stops and offers to install the colours, fonts and sizes alongside them, or the sizes on their own. Choosing sizes only is fine and everything still installs - it just tells you how many colours are missing, so the parts painted with them fall back to Divi's own default until you add them. Nothing needs re-applying afterwards.

Improved: the Design System screen asks once, not three times. A site with nothing installed was offered the install in three separate places, each with a different idea of what "install" meant. There is now one place to choose, and it is the one that lets you pick colours, fonts, sizes and ready-made styles separately.

Changed: your AI is now shown three tools instead of the whole list, on every site. One to list what your site can do, one to read the details of an operation, and one to run it - everything Divi Connect can do is still available through them, nothing is renamed and nothing is removed. It fits inside every AI tool's limit, uses far less of the conversation, and in our testing a real page build finished faster this way. Reconnect each AI once after updating and you will not need to again - from now on new features arrive through those three tools without the list ever changing. The setting that used to choose between the two surfaces has been removed, because there is no longer a reason to pick. One thing worth knowing: with a single tool doing the work, choosing "Always allow" on it lets your AI run any Divi Connect operation without asking again. Read-only mode, Protect global design & Theme Builder, and the confirm-before-overwrite check all still stop a change and ask you.

Fixed: your AI could quietly build parts of a page as raw HTML, and you could not edit them afterwards. A page is only useful if you can open it in the Visual Builder and change it, and a block of hand-written HTML cannot be edited that way - it is a locked box sitting in your layout. Divi Connect now declines to write raw-HTML blocks or hand-written inline styling unless you have actually asked for them, and tells your AI what to use instead: real modules, your presets, and your own colours. If you do want a raw block for something genuinely custom, just say so and it will be written. Pages already containing one keep working and stay editable exactly as before.

Improved: your activity log keeps far more history, and shows it twenty at a time. It used to hold the last hundred changes and no more, so a single busy session - your AI building a set of pages, say - could push weeks of earlier history out of the list for good. It now keeps three hundred, and the screen shows the twenty most recent with a "show 20 more" link underneath, so a longer memory does not mean a longer page to read. Sites with only a handful of entries see no change at all.

Added: every page your AI writes is now checked against Divi's own list of settings. Saving a setting always succeeds, so "the change worked" has never meant Divi actually reads it - a mistyped setting is stored and then quietly ignored, and the page comes out subtly wrong for no visible reason. Divi Connect now checks each write and tells your AI exactly which settings Divi will not read and what they should have been, so it can correct itself on the spot instead of you finding it later. A running count is kept on your site - nothing is sent anywhere - and it is included in the diagnostics you copy from the Troubleshoot screen, so if you ever do write in about a page, we can see what happened.

Fixed: seven ready-made layouts had settings Divi was ignoring. Six dividers and one piece of footer text used a setting name Divi does not read, so the divider lines came out in your own brand colour instead of the colour the layout intended. The layouts now say what they mean. Nothing you have already built changes.

Fixed: your AI could tell you a set of FAQ answers was collapsed when the first one was open on the page. Divi decides which item of an accordion is open by its position - the first one always is - so "start with everything closed" is not something an accordion can do, no matter what is asked for. Divi Connect now says so at the moment the page is written, and points at the toggle module, which does let each panel keep its own open or closed state. Nothing is blocked and nothing changes on pages you already have.

Fixed: your AI could be asked for an FAQ with every answer closed, and quietly give you the first one open. Divi has two modules that look alike: an accordion always shows one panel at a time and always starts on the first, while a toggle is the one whose open or closed state you can actually set. The built-in Divi 5 guidance said the accordion's setting worked, so the AI would use an accordion and report success for a layout it could never produce. It now knows the difference and reaches for a toggle when you ask for a specific panel open, several open at once, or everything closed. The accordion's "open first" option has been removed with it: neither of its settings ever changed what the page did, because Divi decides that itself.

Fixed: navigation bars, footers and ordinary sections came out looking like rows of cards. Any row of two or more columns was quietly given a card's background fill, rounded corners, a hairline border and a drop shadow that nobody had asked for - on one page we measured, 29 of its 39 columns, the navigation links among them, and on a footer where one card was asked for, three arrived. Two columns given no background at all were carded anyway. A block is now styled as a card only when the layout genuinely is one, or when a card is actually asked for. The ready-made card, pricing, team, testimonial, feature and stat sections are untouched and look exactly as they did.

Fixed: icons on cards and feature sections came out too large, and asking for them smaller did not always work. Icon sizes were the last thing on the page still set in fixed pixels while every other size scales with the screen, so an icon that looked right on a wide monitor was oversized on a phone - and four of the eight card layouts ignored the size asked for entirely. Icons now follow the same fluid scale as your text, growing from about 20px on a small phone to 28px on a wide screen, and a size you do ask for is honoured in every layout. Sites with no design system installed get the same sizes.

Fixed: a button styled by one of your presets was told it had no hover state, and the advice for fixing it broke the button. Every button preset that ships with Divi Connect already carries a hover colour, but the check only looked for a hover you had typed out by hand - so it flagged buttons that were already fine, and then suggested setting a hover colour directly, which overrides the one the preset supplies. The check now looks at what the button will actually render with, and points at the button role first.

Fixed: a row of cards could come out with icons on some cards and gaps on the rest. If one icon name could not be matched, that card's icon was quietly dropped and the others were built as asked - so the row looked broken. Divi Connect now says when a set of cards would only get some of its icons, and names the ones it could not match. Some FontAwesome names are only in their paid set, so Divi has no image for them and no spelling of the name will work; those need a different icon, or none on any card in the row.

Fixed: the last four places that came out in Divi's stock blue instead of your own colours. The tick icons on a checklist, the countdown timer's panel, a newsletter panel's fill, and a slide with no photo on it. On the newsletter, countdown and slide panels this also means the text colour is now checked against the colour actually behind it, which was not always the one being measured.

Fixed: more things came out in Divi's stock blue instead of your own colours. The same cause as the feature-card icons below, found in three more places once we went looking: the icon on a callout section, and the rings and bars on a skills section. Each now takes your accent colour (or your primary) when you have not named one.

Fixed: icons on feature cards came out in Divi's stock blue instead of your own colours. If you did not name an accent colour for a card section, the icon was left with no colour of its own - and Divi then filled it in with its factory blue, on a page where every other element had correctly used your palette. The icon now takes your own accent colour (or your primary, if you have no accent), and an accent you do name is still used exactly as before.

Improved: clearer wording when your preset library supplies the font sizes. The note said a number of font sizes "you asked for" were not used, which read oddly when the sizes had been chosen by the AI while it built the page rather than by you. It now says the sizes were stated in the build, and still names which module asked for what.

Improved: the style shortcuts are described accurately. Section-wide style keys like blurb_style are read by some page patterns and not others; the AI was told they applied to patterns generally, and would occasionally send one where it does nothing. Divi Connect already refused those cleanly and named the patterns that do accept the key - the description now says so up front.

Improved: better contrast when the AI styles a page — and a fix that no longer makes it worse. Your design system ships each background colour together with the text colour that belongs on it, and the AI now knows to use that pairing rather than picking a colour that merely looks light or dark enough. Asked to fix a contrast problem it will change which of your colours is used instead of inventing one, so a repair cannot quietly reduce contrast the way it could before. It also checks a second thing it used to miss entirely: whether a button or card is visible against what it sits on, not just whether its text is readable - a button in your brand colour placed on a band of the same colour reads perfectly and is still invisible.

New: choose how many tools your AI sees. Connection now has a setting for it. Normally Divi Connect shows your AI every tool separately, which is how it has always worked and stays the default. The new option shows it three instead - one to list what this site can do, one to read the details of an operation, one to run it - and lets it look the rest up as it needs them. Nothing becomes unavailable and nothing is renamed: all the same operations are there either way. It is worth trying if your AI caps how many tools it will accept (Cursor stops at forty), or if you are tired of approving a new tool every few minutes - with three tools a whole job asks at most three times, however long you work. The screen explains the trade-off before you switch, because with one tool doing the work your AI can no longer offer to allow the reading and still ask before a change. Divi Connect's own protections - read-only mode, protecting global design and Theme Builder, and confirm-before-overwrite - are unaffected either way. If you change it, refresh or reconnect each AI once afterwards so it picks up the new list. On this setting your AI is also told plainly that seeing three tools is normal, so it cannot mistake the shorter list for a connector that needs reconnecting and send you round in circles.

Fixed: a colour you set yourself could be ignored. If you redefined one of Divi's global colours in your child theme's stylesheet or in Divi's Theme Options "Custom CSS" - the same colour by name, your own value - Divi Connect was quietly putting its own copy back afterwards, so your change did nothing and the only way to make it stick was to deactivate the plugin. Divi Connect writes those colours out early now instead of last, so yours comes after and wins, which is how it should always have been. Nothing else about how your pages look changes.

Fixed: the Preset Library page could come back blank. It was one page carrying every style on a real module - over a thousand modules - and drawing that took more memory than a lot of hosting allows for a single page. When there was not enough, the page came back empty with no error shown anywhere: the link worked, the page loaded, and there was nothing on it. And on hosts we could see in advance would not manage it, we skipped building it altogether, which left the Preset Library missing on perfectly ordinary hosting. It is now a short contents page - same address, same link from the Presets screen - listing every family of styles with a page of its own behind each one, so no single page comes near the limit. Every style that was on the old page is on exactly one of the new ones; a family with nothing in it is still listed and says so; and a family whose last style you delete has its page moved to the trash rather than left stranded.

New: use the design system that is already on your site, whoever put it there. If another plugin (or you, by hand) filled Divi's colours and variables, the Design System screen now shows how those would fill Divi Connect's own roles - worked out from their labels, their values and Divi's own five colours, with a confidence beside every row and the roles that would keep our built-in look named before you say yes. Colours are linked, so editing yours re-themes our styles live; sizes are copied once, because Divi cannot link one size variable to another, and it says so. Nothing of yours is changed, a snapshot is taken first, and Design history undoes it. Also the divi_adopt_foreign_system tool, preview by default.

New: copy a section as a designed, empty shell. divi_copy_section takes content:"strip": every style, preset and layout choice comes across, and the text, headings, buttons and images are blanked, ready for new words. Your AI no longer has to edit around the old content and miss a slot. Modules it does not recognise are copied unchanged and named, so nothing is guessed.

Fixed: the built-in Skill was teaching one button rule backwards. It said a button's padding belongs on the button itself; Divi ignores it there, so the padding quietly became whatever the site's own styles said. Padding, margin, shadow and alignment go on the module. Colours, borders, corners and the label font are unchanged.

Fixed: two of the newest tools - adopting a design system already on your site, and the size report - were listed under "other" when an AI asked what this connector can do, instead of alongside the rest of the design-system tools.

Improved: the built-in Divi 5 Skill is updated to 0.6.9. It now knows that a design exported from Figma as a PDF carries its exact font sizes - so it can offer to keep them - and it asks what you want done with the sizes in a design before it builds, rather than deciding quietly.

New: Settings now lets you decide what happens to Divi Connect's own saved data if you ever delete the plugin. It is kept by default - including your design history, so you can still undo design-system changes after reinstalling - with a new checkbox to have it removed instead. Deactivating the plugin still removes nothing, and nothing of Divi's is ever touched either way.

Fixed: a page built from a design kept the wrong text sizes. If you asked for a page to keep the exact sizes it was given, your preset library's type scale replaced them anyway - a heading asked for at 48px could arrive at nearly 86px on a wide screen. Sizes you state are now kept when you ask for them to be.

New: the build now tells you which text sizes it did not use. When a page is built from your preset library, it names each size you asked for, the step it used instead and the range that step covers on small and large screens, and how to keep your own sizes if you prefer.

New: you now choose what happens to the text sizes in a design you hand over. Building a page from a Figma file, a PDF or a screenshot used to be a guess: the sizes in the design were quietly swapped for your ready-made styles' own scale, and nothing said so. There are now three answers and your AI is told to ask you which you want before it builds - keep my sizes exactly as they are, round them to the nearest size on my own scale, or let my ready-made styles decide (which is what still happens if nobody chooses, so nothing changes for pages you build today). Whichever it is, the build says in plain words which one it used, so you are never left wondering why a heading came out bigger than you drew it. Worth knowing: your own scale changes with the width of the screen, so only "exactly as they are" gives a fixed number - and a fixed number does not shrink on a phone.

New: answer the text-size question once, for the whole site. If you always want the same thing to happen to the sizes in a design - keep them exactly, round them to your own scale, or let your ready-made styles decide - you can say so once and never be asked again. Set it in Divi Connect > Settings under "Font sizes in a design you hand over", or just tell your AI "use that for the whole site" while you work and it will save your answer there and tell you it has. Every build afterwards says which setting it used and that it came from your site setting rather than from that request. Until you choose, nothing changes: your AI asks each time, exactly as it does today. Switching back to "Ask me each time" is one click on that same screen, and a single page can still be built differently by asking for it.

Fixed: a text size given as the name of a variable your site does not have was written into the page as-is. Browsers ignored it and the text silently kept whatever size it inherited; it is now left off and reported.

Fixed: on the Design System screen, typing a new hex into the first brand colour (DL primary) could leave its swatch showing the old colour while every other swatch previewed correctly.

Fixed: a site that already has a design system is no longer told it has nothing. The Design System screen worked out what to say by counting the colours and sizes *Divi Connect* had installed. So on a site carrying a complete design system from another plugin - a hundred colours, dozens of size variables, hundreds of presets, all of it working - the screen said "Nothing installed on this site yet". It now says what is actually there, in the real numbers, and offers the three things you can sensibly do: keep what you have and let your AI build with it, read your design out of a page you already like, or install ours a part at a time. In the same spirit, the size-coverage card no longer describes a complete scale of your own as sizes your site is missing - the steps in question belong to our ready-made styles, and it now says so. Your AI is told the same thing on the audit, so it stops describing your site as empty too.

New: you now see what Divi Connect warned your AI about. When a build produces a real finding - text nobody can read on its background, or a menu module that will list every page on your site - it was reported to your AI and nowhere else. If the AI summarised the build without mentioning it, you never heard. Those findings are now kept on your site and shown on the Divi Connect Home screen, in the same words, with the page they came from; and the response now asks the AI to read them out to you rather than summarise them away. Routine notes are deliberately left out - a screen that reports something after every single build is one you stop reading.

New: the built-in Divi 5 Skill now covers Divi 5.11. Your AI knows about the four modules 5.11 added - Chart, Gravity Form, Imagely Gallery and Payment Button - and about Divi's new native backdrop-filter controls, which replace the custom-CSS workaround the Skill used to teach for frosted-glass headers. Three of those four modules need a third-party plugin installed, and the Skill now says so plainly, because without it the module saves, the page loads, and nothing appears.

New: install your design system in pieces - colours, fonts, sizes and ready-made styles are now four separate choices. Ask your AI for "your colours but not the presets" and it can now do exactly that. Before, you took a whole look or one of two thin slices of it: there was no way to say "your colours and sizes, but not five hundred presets", or "just the size scale, my own palette". The Design System screen now has a tick-box for each of the four, and the Presets screen offers the presets on their own. Nothing you have not ticked is written. It still checks first and stops to ask if the install would replace presets you edited or sizes you tuned, and it still leaves pages you have already built alone unless you tick the box asking for a restyle.

Fixed: "use my own design system" is no longer hidden behind installing ours. On a site with no presets yet, the Presets screen showed one link and nothing else - so reading your design out of a page you already approve of, and the styling check, were both unreachable until you had installed our styles first. That is backwards, and it is the screen named after the thing it was hiding. The whole screen now renders whether or not anything is installed, and a fresh site is offered both routes side by side.

Fixed: HTML attributes set by your AI now show up in the Visual Builder. Divi 5.10 moved where the builder reads a module's CSS ID, class and custom attributes. Values written through Divi Connect went to the old place - correct on the live page, correct in the saved markup, and showing as an EMPTY field in the builder, which reads as though the change was thrown away. They now go where the builder reads them, custom data- and aria- attributes included, and you are told when a value was moved.

New: move a header or footer to different pages without rebuilding it. Ask your AI to also use a header on another page, or to stop using it somewhere, and it changes only that - the layout itself is left alone, so anything you have since edited in the Visual Builder survives. Before this, changing which pages a header covered meant deleting it and building it again. Taking pages away is checked with you first, because those pages would quietly fall back to your site-wide header; adding pages just happens. It also tells you when a page-specific header takes over from the site-wide one, since that change is invisible everywhere else.

052.2.0

New: your AI is now warned when a menu module has no menu chosen - the "my menu isn't showing" trap. A Divi menu module with no menu picked does not show an empty bar as you might expect: the live page lists EVERY published page on your site, while the Visual Builder can still show a proper menu in its preview. So the builder and the live site disagree, and it looks like the header never deployed. Building or updating any page, header, footer or global layout now says so plainly, names the menus your site actually has so it can be fixed on the spot, and points out that assigning a menu under Appearance > Menus does not drive the module - only the setting inside it does.

New: a report of the size values typed by hand across your site, available to your AI. The "Sizes typed by hand" analysis already on the Older pages screen can now be read by your AI directly, so it can tell you what it found - how many distinct values you have typed in, whether they form a scale or scatter, which could follow a size setting you already have, and which it declines to touch and why. It only ever reports; applying anything still goes through the preview and one page at a time.

New: the presets can now adopt YOUR design system, read from a page you already approve of. On the Presets tab, choose the page whose design you are happy with and press "See what it would do" - or point your AI at it with the new divi_adopt_design_system tool. Either way it reads the design out of that page: which colour is the page background, which fills the cards, which inks the body text, which sits on the buttons - matched to the variables your site already declares wherever they exist, and offered as new variables where the page types a colour in by hand. The rest of a working palette (hover states, tints and shades, quiet text, readable inks on each fill, shadows) is computed from YOUR colours, and every colour pairing the result implies is graded against WCAG first - anything that falls short is reported with its ratio and the nearest passing colour, never silently "corrected" behind your back. Anything it cannot read or safely derive keeps our shipped styling instead - and it tells you exactly which parts those are, before you decide, so a partly-adopted result is never a surprise. The screen shows the colours it found as real swatches rather than a list of hex codes, because this is a design decision and you should be able to see it. Nothing is written until you confirm what you saw; then the presets are re-pointed at your variables - live, so re-colouring your brand later re-themes every adopted preset, sizes included. Pages your AI builds from then on come out in your colours too rather than a mix of yours and ours, and the readability check it runs while building grades your colours, not the ones we ship. A page you built earlier keeps the colours written into it, apart from the parts that come from a ready-made style - rebuild or edit it to bring it fully across. A snapshot is taken first, Design history undoes the whole adoption in one click, and plugin updates re-apply it automatically.

Added: installing the preset library no longer restyles pages you have already built, unless you ask it to. Installing used to make our styles the default for most kinds of module, and Divi applies a default to every module that has no style of its own - including modules on pages you finished long ago. A customer's client-approved site was changed this way, and the pre-install check could not see it coming. Now every install adds the styles without touching anything that exists; the only way existing pages change is a clearly labelled checkbox - "Also use these styles for modules already on my pages" - which starts unticked. The check that runs before an install now counts this kind of change too, and the install prompt on the WordPress dashboard never restyles anything.

New: choose whether new modules start in our styling or Divi's own - and change your mind later. A new control on the Presets tab says which way your site is set and switches it either direction. Switching to Divi's clears only the defaults we set: a default you picked yourself keeps its place in both directions, and styles belonging to other plugins are never touched. A snapshot is taken first, so Design history can undo the switch in one click.

New: the same choice, per family of modules. "Ours for buttons and headings, Divi's for sections" is the shape most real answers take, so every family in the catalog listing now carries its own switch alongside the site-wide one. A default you picked yourself is named right there, and replacing it is something you do explicitly on that family - never a side effect of a bigger button.

Fixed: installing the size scale could silently overwrite size values you had tuned. If you had adjusted any of the design system's size variables, a full install wrote the standard values over yours without a word - the same kind of unasked-for change as the restyling above, on a different axis. The install now lists exactly which of your values would change, value by value, and asks first; choosing "Keep my changes" now genuinely keeps them, sizes included.

New: every full-page write now gets a readability check, including the failure that used to slip through silently. Building or replacing a whole page (and Theme Builder headers, bodies and footers) now grades every text colour against the background it actually sits on, and warns your AI about anything below WCAG AA - including text that sets no colour of its own and inherits a site-wide text colour that fails on that section's background. That no-colour case is how a page could ship with near-invisible body text on light sections of a dark-themed site: nothing anywhere warned about it, because the page itself never named the failing colour. The warnings are non-blocking and name the exact pairing, so the AI can fix the page in the same conversation instead of you finding it on the live site.

New: the sizes you typed by hand, analysed — and swappable for your size settings, one page at a time, with your eyes on the result first. A new "Sizes typed by hand" report on the "Older pages" screen reads every page and says what it found: how many distinct size values were typed in as plain numbers, whether they form a scale or scatter, and which of them sit close enough to a size setting you already have to follow it instead — text sizes matched only against text settings, spacing against spacing, corners against corners, so a "24px" you used as padding is never confused with a "24px" heading. Every value it declines is listed with its reason: too far from any setting, claimed by two settings at once (picking one would be a guess), or written in a unit that depends on its surroundings. Swapping is per page and per decision: preview the page at phone and desktop width first, then swap just that page — a copy is saved before anything is written.

New: see a page before and after reconnecting it — the page itself, not a list of numbers. Each page on the "Older pages" screen now has a "See it first" button showing the real page rendered twice, at phone width and desktop width: as it is now, and as it would be once reconnected. The two sides should look identical — reconnecting swaps a frozen number for the setting holding the same value — and now you can confirm that with your own eyes before anything is written. The preview changes nothing: it is your page rendered once with the swap applied in passing, saved nowhere.

New: tell us you have your own design system, and we stop offering ours. A new "I have my own design system" button on the install prompt records that answer: the prompt, the post-licence set-up banner and the Home screen's wizard offer all stay hidden from then on. Nothing else changes - the wizard, the Design System screens and every install stay exactly where they were, and a line at the foot of Home says why the offers are hidden and lets you turn them back on whenever you like.

New: an "Audit presets" button that answers "why did applying that do nothing?" It checks every preset on your site - ours and any you made - against the variables, colours and building blocks each one references, and names exactly which presets point at something that no longer exists. A deleted colour is the classic case: Divi's Variables panel keeps the record and takes the value, so everything bound to it quietly falls back to whatever the theme sets, with no error anywhere. Read-only; on the Presets tab, and available to your AI as divi_audit_presets.

New: keep your own sizing and fill just the gaps. If you use your own size variables but are missing a family the ready-made styles rely on - gap sizing, say, or line-height steps - a "Size coverage" card on the Presets tab now names exactly what is missing, per family, and adds only those steps. It is purely additive: every variable you already have, tuned or not, is left exactly as it is, and the same option is available to your AI as the install's "missing" subset.

Changed: the Presets screen is no longer a wall. It used to be six cards of equal weight in one column, which left you to work out which of them answered your question - and two of them, installing our styles and using your own site's design, are really two answers to the SAME question while sitting three cards apart. It is now three plain groups: where your styles come from, what happens to things you make next, and what you have. The first is a genuine either/or, so it is a chooser that opens on whatever your site is actually doing - our styles if you have none, your own design if you have adopted one, your own settings if you told us you keep your own.

New: the way back is now on the screen that needs it. This page said a change was "revertable in one click" five times over and offered no click at all - the History panel lived on another tab. It now sits directly below "On this site now", the same panel you see under Design, and every one of those promises ends in a link to it.

Changed: the long list of styles by module folds away, because it is something you read rather than something you do. The setting that used to hide inside it - what a new module of each kind starts as - moved up to sit with the other settings, where it belongs.

Changed: plainer names. "Audit presets" is now "Why doesn't my styling work?", "Size coverage" is "Sizes your site is missing", and the Style guide card now says the page it builds is a private draft, which it never said before.

Added: the ready-made styles now use your size settings where they used to have numbers typed straight in. Four steps the styles were already relying on - two line heights and two letter-spacings - are now part of the size system rather than numbers written into 234 separate places, so they can be changed in one place and followed everywhere. Nothing looks any different: the new settings hold exactly the values the styles were already using. A handful of unusual values are deliberately left alone, because there is no matching step to point them at and changing them would move type on pages you have already built. Separately, 34 spacing values in the shipped styles were written in a shorthand the Visual Builder could not read properly; they now carry the full reference, which is what the live page was already using.

Fixed: the "restyle my pages" checkbox had an invisible keyboard focus outline in dark mode. Tabbing to it gave no visible indication of where you were. It now uses the same clear outline as every other control on the screen.

062.1.3

Fixed: one small mistake in a module's settings could wipe out an entire header, footer or page. When your AI wrote a layout as markup, everything from that point onward was stored as visible text instead of as modules - so a header built with three buttons in it arrived as an empty section with nothing inside. A missing bracket in a module's settings was enough to do it, and settings run several levels deep, so it was easy to hit. An unescaped quote or a line break inside a value did the same. Worst of all it reported success every single time, so nothing told you anything had gone wrong until you looked at the page - and for a header or footer, that is every page on the site.

Fixed: nothing is saved now unless it reads back as valid Divi markup. Every write is checked after it is prepared and before it reaches your site: the settings on every module have to be readable, and the module markers have to still pair up. If they do not, the write is refused, the message names the module and what was wrong with it - including how many brackets are missing, and the settings we actually received so your AI can compare them with what it meant to send - and your existing page, header or footer is left exactly as it was.

Fixed: a line break, tab or quote inside a value is now corrected for you. These cannot be stored as-is inside a module's settings, and previously any of them left the module unreadable so it rendered as nothing. They are now corrected automatically and the result is checked before saving.

Fixed: a header or footer meant for particular pages could end up on no pages at all. If your AI described the pages in a form Divi does not recognise, Divi quietly ignored it and the template was left applying to nothing - while the tool reported the job done, and the Theme Builder screen still listed it, so nothing looked wrong until you visited the page. Divi Connect now checks before it creates anything: an unrecognised description is refused, with the forms that do work listed so your AI can correct it, and the tools now state the right form up front.

Fixed: building a new site-wide header or footer silently replaced the one you already had, on every page. Asking your AI for a header without saying which pages it is for means "everywhere" - and everywhere is the one slot your existing header already occupies, so a header meant as a quick test could swap out the real one across the whole site with nothing said. It is now refused until you have been asked, the reply explains that the change reaches every page, and if you do go ahead it tells you which layout was displaced and that it was unlinked rather than deleted, so it can be put back. Creating the first one on a site with no header is unaffected.

Fixed: the Theme Builder list reported only the first page a template applied to. A header put on three pages read as being on one.

New: headers and footers can be edited one module at a time. Your AI can now read and change the modules inside a Theme Builder header, body or footer the same way it already could on a page, instead of having to replace the whole layout in one go. That is safer - a change to one button cannot disturb the rest of the header - and it avoids the problem above entirely, because the settings are passed as settings rather than as text. Editing a header still clears the cached styling for the whole site, since a header affects every page.

072.1.2

Improved: the built-in Divi 5 Skill is refreshed (v0.6.7) with a correction that ends a confusing menu mystery. The Skill claimed a menu module with no menu chosen shows an empty bar. In truth it shows the opposite: a list of EVERY page on your site - while the Visual Builder can still preview a menu, so the builder and the live page disagree and it looks like "my menu isn't showing". The Skill now tells your AI what really happens, and that picking a menu inside the module is the only thing that counts (assigning one under Appearance > Menus is not enough on its own).

Fixed: after resetting the Theme Builder, headers and footers built through your AI went nowhere - your AI said they were live, the site and the Theme Builder screen showed nothing. A Theme Builder reset unlinks its templates without deleting them. Building a new header then wrote onto the leftover, unlinked template and never re-attached it - so Divi rendered nothing and the Theme Builder screen stayed empty, while the connector kept reporting the header as assigned. Cue an hour of "but it says it's there". Creating a header, body or footer now always attaches the template properly, and reading the Theme Builder now tells your AI plainly when a template exists but is not wired in, instead of letting it describe a dead template as live.

Fixed: styling saved through your AI to a Theme Builder header, footer or body layout could fail to show on the live site - looking like the save had been ignored. The change really was saved, but Divi's compiled stylesheet files were left in place, so the front end kept serving the old styling - through the site's own cache and the host's too. That reads exactly like modules losing their styling or edits refusing to stick, and the same gap sat behind the colour checker's "use this colour" fix, colour and font changes made from the design screens, variable writes, and linking older pages to your size system. Every one of those writes now clears the compiled files properly, so the very next visit shows what you saved.

Fixed: 43 of the ready-made styles showed the wrong font - plain Arial instead of your design's own faces. Styles for tabs, timelines, pricing tables, team members, counters, galleries, toggles, buttons, accordions and blog layouts named their font in a shorthand Divi does not understand, so anything using them quietly fell back to Arial. They now point at the real font your design system ships. Updating the plugin alone does not correct styles already installed on your site - open Divi Connect, go to the Preset catalog tab, and press "Update presets" to refresh them.

Improved: line-heights, letter-spacing and border widths in the ready-made styles now follow your design tokens. Fifty-nine border widths and ten line-heights were fixed numbers baked into the styles; they now reference the scale itself, so tuning a token updates every style bound to it. Reaches your site through the same "Update presets" button as the font fix.

Fixed: eight styles worked on the page but looked empty in the Visual Builder's settings panel. The image ratio styles (Square, Portrait, Wide) and the column grid styles stored their values in only one of the two places a preset keeps them - the one the page reads. The page rendered them correctly all along; the builder panel, which reads the other copy, showed nothing set. Both copies now agree. Reaches your site through the same "Update presets" button as the font fix.

Fixed: creating a preset from a Style Guide specimen carried a stray zero margin with it. The generated specimen pages stamped a 0px margin on their modules purely for layout, and Divi's "New Preset From Current Styles" faithfully copied it into your new preset. The generators no longer write it, and the Preset Library now says plainly that a specimen's layout sizing is display only.

Fixed: on hosting with 256M of PHP memory, the generated Preset Library page could come out blank. Drawing every preset on live modules needs more memory than some hosts allow, and the failure looked like an empty page rather than an error message. The generator now checks your host's limit first, skips just that one page if it would not survive, and tells you exactly what to raise. The Style Guide page is unaffected either way.

Changed: the last few places that still said "Claude" now say "your AI" - the Home screen's quick actions, the first-run checklist and the title of the tools-refresh guide. Divi Connect has worked with Claude, ChatGPT, Codex, Gemini and other MCP apps since 2.1.0; the wording just had not caught up everywhere.

082.1.1

Fixed: the Connection screen introduced itself as a Claude tool and then offered six different AI apps. The heading at the top of the tab still read "Connect Claude to this site", and the card on the Home screen still said "Connect Claude", from before Divi Connect worked with anything other than Claude. Everything underneath - the app picker, every set of instructions - had already been made general. Wording only: nothing about how the connection works has changed, and a connector you have already set up is unaffected.

Fixed: sites with permalinks set to "Plain" were given a connector address that could never work. WordPress only creates the /wp-json/ address when permalinks are set to something other than Plain, and the Connection tab printed that address regardless. On a Plain site there is nothing at it, so the web server looks for a folder of that name, does not find one, and reports File Not Found - which looks to a hosting company like a blocked or missing path rather than a setting. The address now follows whatever the site is set to, so it is correct either way. If your permalinks are on, nothing changes.

Fixed: the connection test could pass while the address on screen was unusable. The test asked WordPress where the endpoint is; the screen beside it printed a different address it had built by hand. They now come from the same place and cannot disagree.

Fixed: Troubleshoot read a permalink problem as a firewall problem. "Claude cannot see my site at all" opened by saying the cause is almost always the host, and the steps under it sent you to ask for an IP allowlist. On a Plain-permalink site none of that applies. Troubleshoot now checks for it and says so first, in plain terms you can pass on - and stays completely silent on sites where permalinks are fine.

092.1.0

Fixed: building a header, footer or template is now checked as carefully as building a page. Pages have always been checked before saving - a mistake in the layout came back with an explanation, so the AI could correct itself and try again. Theme Builder layouts and global layouts ran none of those checks, so exactly the same mistake was accepted without a word: the AI was told the header had saved, and what it had really written was an empty module. Two people reported this in the same week with very different-looking symptoms. All three now run the same checks, and they run *before* anything is written, so a rejected save leaves your existing header exactly as it was rather than half-replaced.

Fixed: the AI is now asked to read the built-in Divi 5 Skill before building a header or footer, not just before building a page. Divi Connect prompts an AI to load the Skill once at the start of a session, so that it builds from how this version of Divi actually works rather than from memory. That prompt covered pages, posts and projects, and skipped headers, footers and global layouts - so "build me a header" could be written from guesswork, while "build me a page", asking for much the same thing, was grounded first. A header or footer appears on every page of your site, so it was the last place that should have been the unprepared one.

Fixed: you are now warned when text arrives already escaped, which is the mistake that puts things like u003cpu003e on a live page as visible text. Oddly, the case that the plugin silently fixes for you was the one that warned, and the case that cannot be repaired afterwards - because by then the page really does contain that text - said nothing at all. The warning has moved to the one that matters. It does not block the save, since a page may legitimately want to show escape syntax.

Fixed: the mobile rules in the built-in Divi 5 Skill were being written to a breakpoint that is switched off. The Skill described phoneWide as *the* mobile breakpoint and used it in ten examples, but that breakpoint ships disabled and produces no CSS - so a layout built from those examples looked right on a desktop and silently lost every one of its mobile rules. The Skill now documents all seven breakpoints, which three are on by default, and which need enabling first. If you have pages that look wrong on a phone, this is worth asking the AI to look at again.

Added: the built-in Skill now covers Divi 5.10's Post Filter modules, which shipped without appearing in Divi's own release notes, so nothing could have known about them. Filtering a post loop by a custom field, combining two filters, and tooltips inside a loop are all documented from working examples - including one trap where the same filter needs a different shape depending on the type of field it is filtering on.

Changed: the Connection screen now asks which AI you are connecting. It used to show the steps for every client at once - five cards, of which at most two applied to you. Pick from Claude, Claude Code, ChatGPT, Codex, Gemini CLI or "something else" and you get that client's steps and nothing else. It remembers your choice, and the status shown at the top is read from your site rather than assumed. Nothing was removed; the recovery steps for a host blocking the connection now sit in the Claude panel, beside the steps they are the recovery path for.

Fixed: the one-time "read the guidance first" prompt was being shared between AI clients. Divi Connect remembers, per connector, that an AI has loaded the built-in Divi 5 Skill, so it only prompts once rather than nagging. That memory was being filed under the wrong name for any client that sends its key as a header rather than in the address - Codex and Gemini CLI both do - which put all of them in one shared slot. One AI loading the Skill would silently use up the prompt meant for another, so the second one built without it. Each connector now gets its own slot however the client sends its key.

Fixed: the Antigravity setup steps could not have worked, and now they do. Antigravity has no way to send your key separately from the address, so the settings we published - which put the key in a headers section - connected to your site and then had every single request turned away. The steps now use the address that carries the key, and warn you off the headers section that quietly breaks it. Verified by watching a real Antigravity reach a real site, rather than by trusting its own "connected" indicator, which reports a connection whether or not one was made.

Fixed: the Gemini CLI instructions were wrong, and actively warned you off the setting that works. They named the wrong file and the wrong field, and then cautioned that the correct field would be "accepted and then ignored" - so anyone who guessed right would have talked themselves out of it. Rewritten from an actual working connection, including a third step nobody would guess: Gemini CLI switches connectors off in a folder it has not been told to trust, and shows them as disabled without explaining why.

Changed: Troubleshoot and Endpoints are their own screens again. They spent a release tucked inside collapsed sections on the Connection page. Troubleshoot is the screen you go looking for at the moment the screen you are on is not working, which is the worst possible time to be hunting for a closed panel three cards down another page. They are back in the sidebar, in a new "Reference" group.

Added: a new chat picks up new tools by itself. After an update, the AI keeps using the tool list it cached when it first connected, so anything new stays invisible until you refresh it by hand. The connector now tells the client how long that copy stays good for (15 minutes), so a conversation started after that window sees the new tools without you doing anything. Refreshing by hand still works and is still the quickest route.

102.0.4

Fixed: a wrong connector key now says so plainly. When a request arrives without a valid key the plugin says the key is wrong, instead of returning a response some AI tools read as "you need to sign in" - which sent them looking for a login screen that does not exist and reported a confusing authorisation error rather than the real problem.

Fixed: installing the ready-made styles no longer quietly replaces styles you have edited. If any of the styles about to be installed differ from what is on your site, you are now told which ones and how many before anything is written, and you choose whether to go ahead. Previously the install went straight through, so hand-edited styles could be reverted without warning - and there was no way to tell afterwards that it had happened.

Fixed: styles could stop saving after an update, with nothing to explain why. The stored styles are brought up to date automatically when the plugin updates. Until now that only happened when you installed styles or ran a repair by hand, so a site could sit in an older shape indefinitely and refuse to save new styles with no visible reason.

Fixed: editing one style no longer discards the rest of it. Changing a single property used to rewrite the whole style, so anything not restated was dropped - a button could lose its hover colour fade, for instance, purely as a side effect of an unrelated edit. Edits are now merged into what is already there.

Fixed: reading your styles no longer has to fetch all of them at once. They can now be requested by module, by name or by kind, so working with one style no longer means loading the entire library - which on a full site was large enough to fail outright.

Fixed: font weights are now design-system variables like your colours and sizes. Every weight in the styles library points at one of five named weights - Regular, Medium, Semi Bold, Bold and Extra Bold - so changing one changes everywhere it is used, instead of editing styles one at a time. This also makes 400 reachable: if your typeface has a single cut, or you want a light display face, you can now set it.

Fixed: a change now clears the cached stylesheet properly. Saving a style, changing your default fonts, and undoing a design change all marked the site's compiled CSS as stale but did not remove it, so the previous version could keep being served - which looked exactly like the change having failed to save.

Added: clear steps for refreshing the connector after an update, and a reminder that is hard to miss. Claude reads your tool list once, when it connects, so after an update it keeps using the old one until you refresh - and until then anything new stays invisible to it. That reminder now stands out on its own instead of sitting inside a paragraph, and the guide behind it gives numbered steps for claude.ai, Claude Desktop and Claude Code - matching what the current Claude interface actually does, down to which menu the option sits in - plus a short video that plays right there on the page, and a way to check it worked. The link takes you straight to it, open and ready, rather than to a page where you have to go looking. Previously it was a single line that assumed you already knew where the connector settings were.

Fixed: dismissing the small update notice no longer throws away the release notes. The reminder that appears around WordPress and the summary on the Divi Connect dashboard are now separate: hiding the reminder leaves the summary waiting for you until you have read it.

Added: a link to the full changelog from the Plugins screen and from Version & updates in the dashboard, so you can see what changed before deciding whether to update.

Fixed: the wrong-key message pointed at the wrong screen for finding your connector URL.

Added: the built-in Divi 5 Skill now documents how to write your own group preset. It previously described only module presets, so asking an AI to build a reusable button style - the kind that stacks across modules, the way ours do - gave it nothing to work from, and the result would save without ever appearing in the builder's preset list. The shape is now written down with a working example, along with two details that fail silently if you get them wrong.

Fixed: checking your styles no longer reports hundreds of repairs on a healthy site. The styles we ship were not stored in quite the shape the installer writes them in, so every check reported around 481 items "repaired" when nothing was wrong. That made a genuinely useful warning impossible to trust. The shipped styles now match what gets installed, so the number means something. Your site is unaffected either way - what was installed was already correct.

Fixed: a preset could lose a hidden field when the design system applied its defaults, which in rare cases would stop that preset appearing in the builder's list.

112.0.3

Added: checklists can now use the ready-made looks that ship with the design system. Ask for a checklist and you can pick how it looks - ticks in coloured circles, numbered steps, or plain - and mark individual rows as included or crossed out, so a "what's in each plan" list reads correctly at a glance. Ten looks that were already in the styles library but that nothing could reach until now.

Added: big-number metrics can use their card looks too. A stat like "98%" can now be a card, a highlighted card, or a dark card, each of which brings its own background and a matching text colour - so it stays readable whatever band of the page it sits on.

Added: the same for circle counters - brand, gauge (a green ring for a "good" number), card and dark card. The ring takes the right colour instead of always using the default.

Added: looks for dividers, icons, videos and progress bars. A divider can be a hairline, a solid rule or a brand-coloured line; an icon can sit in a filled or outlined badge; a video can take a frame or a mat; and a set of progress bars can use the skills, progress or minimal look, with individual bars marked highlight, compare or alert.

Added: a card you can put things inside. Ask for a group and you get a real bordered box - card, panel, media or dark card - with your modules laid out within it. Text inside a dark card is automatically coloured for that card rather than for the page behind it.

Added: a toggle module - a single collapsible panel, with card, brand, plain and dark looks. It is its own module rather than a one-item accordion, which is how Divi treats it. Ask for a toggle when you want one "read more" or a single question, and an accordion when there are several to open and close.

Added: columns can lay their contents out as a grid - 2, 3, 4, 6 up, or auto-fit. Useful for logo strips, icon rows and anything that should stay in even columns rather than stacking in a single line.

Fixed: asking for a "card" or "dark" accordion now actually changes the accordion. Those looks were in the styles library but nothing could apply them, so the request quietly did almost nothing - you got a coloured icon and the same plain panel. Card, brand and dark accordions now come through properly, each with a matching text colour.

Fixed: a style meant for a dark background is now refused on a light one, and the other way round, with a note telling you which to use instead. Before, asking for the wrong one could leave text nearly the same colour as what it sat on.

122.0.2

Fixed: text that could come out invisible, in four more places. Each one was text that carried no colour of its own, so it fell back to your site's normal dark text and landed on something dark. Gallery titles and captions on a dark band came out at 1.00:1 - the same colour as what they sat on. A timeline date came out barely readable on the two styles that paint their card dark. The heading on a highlighted pricing tier came out dark on your brand colour. And a contact form on a dark band left its Send button unreadable - that one was there long before any of the ready-made styles, on the plain form anyone gets by default. All four now take a colour paired to whatever they actually stand on, from your own palette, so they still follow a re-brand. Two of these corrections are in the styles themselves rather than in the plugin's code, so re-install the styles to pick them up (Design System, or Preset catalog > Update presets - neither touches your colours or fonts).

New: ready-made styles now reach fifteen kinds of module, up from four. Tabs, timelines, galleries, contact forms, team members, image blocks, accordions, sign-up forms and more can each be given a named style - "card", "inverse", "bordered", "elevated", "showcase" and so on - and the page points at that style rather than copying it, so changing the style later updates every page using it. Tabs are worth a special mention: the tab buttons themselves could never be given a readable colour before, because they sit on a strip Divi paints a fixed grey. The tab styles paint that strip and colour the labels together, which is the only safe way to do it.

New: Claude can now discover those styles. They shipped in 2.0.1 but nothing told Claude they existed, so it could only reach one by accident. It is now given the full list, along with when a style will be refused - a style is left off, with the reason reported, rather than applied where it would be unreadable.

Fixed: the highlighted pricing tier's heading was hard to read. On the default pricing style, Divi paints the highlighted tier's heading in your brand colour and the text on it stayed dark - 2.68:1, well under what people with reduced vision need. That heading now uses the same light panel the other pricing styles already use, so the heading and the "best value" line both read clearly. If you prefer the brand-coloured heading, the "bold", "accent" and "cards" styles keep it and pair the text to it.

Fixed: the connection test could report a connection that had never happened. The test sends a real request to your own connector address to prove it answers - and that request was being counted as "Claude reached this site", which is what the dashboard reads to decide whether you are connected. So on a site Claude had never touched, pressing the test button was enough to make it claim otherwise. The test still runs and still tells you whether the address answers; it no longer leaves a footprint. This matters because "Claude has never reached this site" is the most useful thing we can tell you when a connection is failing, and it was being erased by the act of checking.

Fixed: the alternating timeline never alternated. Ask for a zig-zag timeline - the layout where entries sit left, right, left down the line - and you got a single column on the right instead. We were sending Divi the word "alternate" where it expects "alternating", so it discarded the setting and fell back to its own default without saying anything. Both words are accepted now. Choosing the "alternating" ready-made style also sets that layout for you, since a style with that name and a single column of cards was telling you something untrue.

Fixed: text on a card inside a dark section could come out invisible. A timeline placed on a dark background rendered every heading and date in a pale colour on the light card Divi draws behind them - unreadable, and the same shade top to bottom. The cause is worth stating plainly: when a module carries no background of its own, we were choosing its text colour from the band BEHIND it rather than from the card it actually sits on, so the check meant to stop unreadable text was producing it. Anything Divi draws its own panel for - timelines, testimonials, accordions, tabs, blog cards - is now coloured against that panel.

Fixed: the free version could not be downloaded, and would never have updated. The plugin was telling our own update service that the free version lives on WordPress.org. It does not - it has never been listed there - so anyone asking for the free version was handed a link to a page that does not exist, and free installs were checking a WordPress.org listing for updates that was never going to answer. Both now come from us. If you are on the free version, this is the release that lets you receive the next one.

Fixed: the set-up wizard could dead-end. On the "What to add" step, "Open the design system" left the wizard entirely and there was no way back to the step you were on. The design system now opens inside set-up, and a new step shows the ready-made styles you have just installed - previously set-up finished by telling you a number and never showing you what it bought you.

132.0.1

New: the pages we build for you now use your ready-made styles. Until now a generated page was styled one element at a time, so the styles you had installed sat unused on the pages that most needed them - and editing one changed nothing on them. A blog section now takes the card style that suits the band it sits on, and buttons and blurbs can be given a named style ("hero", "compact", "card", "elevated" and so on). Because the page points AT the style rather than copying it, changing that style later updates every page using it. Where a style would be unreadable in its position - a light-backed list on a dark band, say - it is left off and the reason is reported rather than applied and hoped for.

Fixed: spacing inside several ready-made styles never applied. The gap between blog cards, between gallery images, between icon-list rows and tab panels, and above and below dividers, was stored in a form the browser could not read - so it was skipped in silence and those blocks fell back to a default gap. Nothing errored and nothing looked obviously wrong, which is why it stood. If you have already installed the design system, re-install the styles to pick this up - the correction is in the styles themselves, not in the plugin's code.

Fixed (please read if you build pricing pages): a price could render invisible. On a pricing table the price is the one number that must be legible, and on any tier that is not the highlighted one it was coming out white on white - measured at 1.00:1. Nothing errored: the module simply set no colour for it, and Divi paints text with no colour of its own in whatever it inherits. Every module the design system knows about now leaves with a readable colour on any text it carries, chosen from your own palette so it still follows a re-brand.

New: the Design System screen now tells you when a brand colour has stopped following your site colours. Your brand colours normally follow the colours set on your site, so changing one there updates every shade, every ready-made style and every page built from it. If that link is ever broken - a colour replaced with a fixed value - the same name quietly means two different things, and pages come out in a colour your palette says you are not using. Nothing reported that before; it does now.

New: the Design System screen now tells you when your presets point at something that is not installed. A design system can be installed incompletely - colours and sizes written, fonts skipped - and every preset that used those fonts then points at nothing. Divi renders a missing value as nothing at all, so this was invisible: the styles looked untouched rather than broken, and in the builder the font simply could not be picked. Measured on a real site: 282 preset settings pointing at three fonts that were not there. You are now told, and can connect them to fonts you already have without changing anything else.

Fixed: "Build pages from my preset library" showed as off while it was on. The switch and the feature disagreed, so the screen said one thing and your pages did another - and saving any setting from that screen would then have turned it off for real.

Fixed: saving from inside the set-up wizard threw you out of the wizard and left you on the Settings page with no way back to the step you were on.

Fixed: a button's label could be unreadable on its own fill. The label used the ink paired with your primary colour, while the button filled with Divi's own primary - two colours a site can let drift apart. Measured at 4.12:1 where 4.5 is the minimum. The label is now graded against the fill it actually renders on, and a colour you set yourself is still left alone.

Fixed: a deleted colour or font still counted as installed. Divi does not remove a value you delete - it archives it, and the record stays. Anything that reads the raw list therefore saw a deleted value as present, while everything pointing at it rendered as nothing. Deleted values are now treated as gone, which is what they are.

Fixed: hero headings ignored your type scale. The largest text on a page was written in as a fixed size while everything around it stayed linked to your scale - so changing the scale reflowed the whole page except its biggest element. Hero headings now use the scale like everything else, and still fall back to a considered fluid size on a site that has not installed one.

Fixed: the duplicate-values panel looked broken. "Keep" and "Remove" were labels styled to look like buttons, so clicking them did nothing, and the buttons that do the work were below a list that can run to fifty entries. They are now plainly labels, the controls are at the top, and two entries that share a name show their id so you can tell which is which.

142.0.0

New (this is the headline): pages the AI builds now reference your presets, so editing a preset in the Visual Builder restyles every page that used it — the way the rest of your design system already works. Previously a generated page carried its own copy of the styling and could not be re-themed. This is on by default for Pro from this version; if you would rather newly built pages keep the styling they were built with, there is a switch for it in Settings. Pages you have already built are never touched.

New (the other headline): the whole admin is new. Home tells you the state of your site and what you can do about it; the Design System screen shows every colour, font and size the system holds, with the ones you can edit made editable; the Colour checker grades every pair your site can put together and offers a fix; the Preset catalog lists all 490 styles with what each is for. There is a set-up wizard that looks at your site first and changes nothing without asking.

New: 278 pre-styled modules across 105 module kinds — cards, icon lists, tabs, toggles, timelines, team grids, galleries, pricing tables, counters, dividers and more. Ask for a pricing table and it arrives looking composed, in your colours and type, rather than as Divi's defaults for you to style by hand.

New: re-link the pages you built on the free plan. On the free plan the AI writes size values into the page as fixed numbers, because linking them to your variables is a Pro feature. On upgrading, that left every page you had already built frozen. Divi Connect can now find those values and reconnect them to the variables they came from — previewed first, and every page is snapshotted before anything changes.

New: set your own brand colours. Six slots — primary, secondary, accent, background, surface and text. Fill an empty one and everything that hangs off it is worked out and written alongside: the lighter and darker steps, the hover state, and a text colour that is legible on it.

New: restore colours that were deleted. Removing a colour in Divi's own Variables panel leaves everything that used it pointing at nothing, and no reinstall brings it back. Divi Connect can now work it out again from your own brand colours — not copied from one of ours — and puts it back at the value it had.

New: fonts are editable, with a picker that draws each family in its own typeface rather than listing 1,950 names in the interface font.

New: import an image from a URL, and read or change site settings — the three things a beta tester could not finish a real site without.

New: one button that describes your site for a support email. Troubleshoot now has a Copy diagnostics button: your Divi and WordPress versions, whether Claude has ever reached the site, what your design system holds, your other plugins, and the last ten changes made here and by whom. It also says whether your plugin files all came from the same install, which is the difference between a real fault and a half-finished update. It contains no passwords and not your connector key — only a short fingerprint of the key, enough to tell whether the one in your connector is the one on your site.

Fixed (accessibility, please read): the uppercase label presets never actually uppercased anything. "DL Kicker" and "DL Eyebrow", in all their variants, set uppercase in a place Divi reads only for italic and underline. Everything else about them worked — the mono typeface, the letter-spacing, the colour — which is why it went unnoticed. Six presets, corrected.

Fixed: a percentage on a bar counter could be unreadable. Divi draws the number twice, and the copy you can see straddles the filled part of the bar and the track behind it, so no single colour could clear both. Measured at 1.01:1. The bar and its track now share a colour the number is legible on.

Fixed: a person's role could be unreadable on the feature card. It was set in the accent colour on a dark card — 2.23:1, and worse on some flavours. It now uses a lighter step of the same accent, which keeps the look and clears the contrast requirement on all five flavours.

Fixed (please read if you use the flavour builder): a look installed from "Build a flavour" was frozen. The colours were right, but they were written in as fixed values instead of as references to your brand, so changing a brand colour afterwards moved nothing. Every derived colour now installs as a reference, exactly as the five bundled looks do.

Fixed (safety): Undo could report success and restore nothing. It only ever happened with "Confirm before overwriting a page" switched on — that is, on the sites most careful about their content. Undo now reads the page back after writing and compares it, rather than trusting its own reply.

Fixed (safety): reverting your design system could do the same. The twin of the fault above, in the part that puts back colours, fonts, sizes and presets rather than page content — and it reported the numbers it had *meant* to restore, so a failure arrived looking like a success with the right figures beside it. A revert now reads all four stores back afterwards and names exactly what did not come home. Separately, if a change ever goes ahead without a restore point being saved, the Design System screen now tells you at the time, rather than leaving you to discover it when you try to undo.

Improved: pages built on the free plan now use fluid sizes. Type and spacing are written in as clamp() values that scale with the screen, rather than as fixed pixel numbers. The free plan still writes the values into the page instead of linking them to your size variables — that link is what the Professional plan adds, and what lets a later change to your scale reflow every page — but what gets written is now the same considered scale, so a free page reads properly on a phone and on a wide monitor without anyone adjusting anything.

Improved: the plan comparison in the plugin was wrong about itself. The sidebar told free users that managing the design system was a Professional feature. It is not: installing a look's colours and fonts, setting your six brand colours, changing the site-wide fonts and re-deriving colours from your brand are all free. What the Professional plan adds is the preset catalog, the fluid size scale, and letting Claude write to the design system directly. Corrected in the sidebar and in what the plugin tells Claude about its own plans.

Changed: Divi 5.7 is now the stated minimum. The documentation already said 5.7 while the plugin itself accepted 5.0, so a site in between was told it qualified by one and not the other. One number now, and it is the one that was advertised.

Fixed: the message shown when re-linking older pages is a Professional feature used a different error code from every other plan message, which could make it read as a permissions problem rather than an upgrade prompt.

Improved: a large unused copy of your presets is cleared out, once. Divi keeps its presets in a record of their own, but a second, stale copy had been sitting in the theme options beside it — on one site 904 KB of the 930 KB that record held, and nothing ever read a byte of it. Every colour and font change was rewriting the lot. It is removed the next time you open wp-admin, and only when your real preset store is present and healthy. Nothing you can see changes.

Fixed: the readability checker could suggest the colour you already had. On some backgrounds the suggestion it offered was the current colour, so the button appeared to do nothing — and the "after" preview claimed a pass while showing the same ratio as the failure. The suggestion is now measured before it is offered, and a pair that genuinely has no answer says so and names the colour to change instead.

Fixed (accessibility): two of the five looks had an accent too pale to use as a control. Electropop and Jungle read 1.80:1 and 1.69:1 against a light card, where WCAG asks for 3:1 for a button, rule or chip. Both accents were deepened along their own hue — the colour is recognisably the same — and now clear it.

Fixed: colours you deleted were still being counted. Divi archives a deleted colour rather than removing it, and Divi Connect was still reading the archived ones, so the totals on one screen disagreed with another and roles that no longer existed were reported as needing attention.

Fixed: invisible text on two dark presets. The testimonial card left the author, job title and company with no colour of their own, so they fell through to the site's text colour and rendered black on black; a closed accordion row did the same with its title.

Improved: the contrast guard now checks dark mode as well as light. Ten of the colour pairings have their worst case in dark, and until now they were only ever checked by hand.

Improved: an inverse pricing table is no longer offered, because it cannot be built — a plan column that is not the featured one always uses Divi's own light background, and there is no setting to change it. The variant it replaces is an accent-headed grid.

Improved (accessibility): every screen in the plugin is now graded, in both light and dark themes — text against its background, and controls against the surface they sit on, which is a separate requirement and was not being checked at all. Fifteen kinds of control got a visible edge as a result.

Improved: every one of the 490 presets now says what it is for, and nine that had been shipping without doing anything now do something.

Improved: more of the catalog is tonal — the card families, badges and labels gain the same four steps, so a set of cards can differ in weight without differing in colour.

Improved: image ratios and column grids are built on Divi's own controls. The pack now ships no custom CSS at all, so what you get is editable in the Visual Builder like anything else.

Removed: two border widths that were too thin to see. "DL Border Width XS" never rendered thicker than 0.76px at any screen width, and "DL Border Width S" was under a pixel on phones and over one on desktop — so a border set with either was invisible, or appeared only on large screens. Neither can draw a line, so both have been retired along with the size variables behind them. Sites that already have them keep them; nothing you have built changes.

Security: hardened the URL check on image import against addresses that resolve to the host itself or to a cloud metadata service.

Security: reading a reference page now applies that same check. Asking Divi Connect to read a page's layout sends your server to fetch it, and WordPress's own validation does not cover the address range cloud hosts use to hand out credentials. Both routes now use one check, applied before the request is made.

Note for free users: nothing changes in how the AI builds your pages. Pre-styled modules arrive with the same look; their values are written into the page rather than linked, exactly as before.

151.9.1

Fixed (accessibility): the button on a call-to-action panel could be invisible as a shape. On the two brightest new flavours the button was painted near-white on a bright panel, so its label read perfectly but its edges did not exist — measured at 1.80:1 on Electropop and 1.69:1 on Jungle, against the 3:1 that accessibility guidance requires for a control's boundary. The button now reverses its panel instead, which is what the hand-built version of the same panel already did: every flavour, light and dark, now clears the requirement with room to spare (worst case 5.19:1).

Improved (visible, please read): pages come out a third shorter, with nothing removed. The design system was putting a card's padding around every module, including plain paragraphs and headings, which stacked on top of the padding the section and the column already had. A page that is mostly empty space reads as bland however good the individual pieces are: on the test page, 74% of the height was empty and it measured 9,584px, against 7,204px for the same content afterwards. Things that actually draw a box - columns, cards, panels, pricing tables, testimonials, forms - keep their padding, because there the padding is the inside of the box. Sites you already have are not re-themed: your presets change only when you next install a flavour.

Fixed (important): a comparison table with four options fell apart. The columns were given a width that added up to slightly more than the row, so every row wrapped, the last option dropped onto a line of its own and the columns stopped lining up - which is the entire point of a comparison table. It also happened with eight options, and with six, nine or ten the table was narrower than it should have been. Every option count now fits exactly.

Fixed (important): offering to "snap" a size to one of your design tokens could wreck the value. Only sizes written as a plain number could ever be matched, and almost every size in the design system is a fluid range, so out of 61 tokens exactly two were ever considered - a zero-width gap and a 999px pill. A 3px rule was therefore offered a 0px gap, and accepting would have flattened it to nothing. Fluid sizes are now matched properly, a border width is only matched against border tokens, and how close counts as close now scales with the size instead of being a flat 6px that called 3px "near" zero.

Fixed: an automatically added card could quietly break text contrast. Text is checked against the section's background, and then a card was painted behind it, so a pair that passed the check could render below the accessible minimum - measured at 5.26:1 before the card and 4.47:1 after. The card is now skipped, with a note, when it would do that.

Fixed: a divider's thickness was ignored when set by token name. "DL border-l" was dropped silently while "gvid-dl-border-l" worked, even though both are documented.

Fixed: setting a section's width by token name made it narrower than typing the same width as a number - about 1,098px instead of 1,373px, so text wrapped more and the page grew.

Fixed: the contact section always centred its copy, forcing a second centred band onto pages that already had one; and its form's button ignored your accent colour and shipped in Divi's stock blue. The copy beside a form now reads left, and the button takes your colour with its text checked for legibility against it.

Fixed (important, please read): editing one module could delete third-party modules from the page. If a page contained modules from another plugin - Divi Pixel, DiviFlash, Divi Supreme and the like - asking Claude to change a single module rewrote the page and dropped every one of them, reporting success. On a real test page 15 of them vanished and the page shrank from 8,759 bytes to about 2,000. Containers holding only a third-party module were also collapsed, which is why pasting the module back was not enough to repair the page. Third-party modules are now passed through untouched, keeping their position and nesting, on every editing tool and when appending a section to an existing page.

Fixed (important): changing one global colour deleted the others. Setting a single colour replaced your whole custom palette instead of updating that one entry, which took a site from 23 design-system colours down to 1 and left every preset that used them with nothing to point at. Colours you do not mention are now kept. Replacing the whole palette is still possible, but you have to ask for it.

New: changes to your design system can be undone. Setting colours, variables or presets directly now takes a snapshot first, so any of it can be reverted from History like a page edit. Previously only the bulk installs were snapshotted, and the everyday changes had no undo at all. A run of small edits leaves one restore point from before the run, and anything that deletes always leaves its own.

Fixed: a long editing session could throw away the checkpoint you needed. Page history keeps the last 20 changes, so a big pass over one page pushed out the state from before it began. The first checkpoint of each day is now kept and cannot be pushed out by later edits.

New: Claude can see third-party modules on a page. They were invisible to it, so it had no way to know they were there or to warn you. It now reports which ones a page contains, and that it cannot edit them.

New: five new design-system flavours - Meridian, Foundry, Monolith, Electropop and Jungle - replacing Editorial, Modern SaaS and Warm. The old three leaned on the same look every AI-built site uses; these do not, and each is contrast-checked in both light and dark. Meridian is the new default. Sites already using one of the old flavours keep their colours exactly as they are; nothing is re-themed by updating.

New: Design DNA has its own tab in the Design System, instead of sharing the Flavours tab with the canvas, the saved-flavour list and the revert list.

New: a Shop tab, marking where ready-made flavours and section packs will live.

Fixed: the flavour install warning claimed the per-page preview was "coming". It has been there since 1.8.1. The note now tells you how to use it, and what it can and cannot show you.

161.9.0

Fixed: twelve presets rendered as blank cards on the Preset Library page. A preset written in light ink - the "On Inverse" faces, the dark cards, the Success/Warning/Danger badges - was being demoed on a white card, so its text was invisible. Each now sits on the surface it was designed for.

Removed: the live preset previews in the Design System tab. Each preset was drawn as a small specimen, which meant painting a preset's own text colour onto the dashboard's own background - so the "On Inverse" styles, whose text is near-white by design, rendered invisible. The full inventory ("All presets on this site") stays where it was, and the generated Preset Library page remains the accurate way to see presets, because it renders them on real modules.

Improved: the Elevated card shape is calmer. Its shadow was a wide, diffuse cloud that made cards read as floating rather than lifted; it is now tighter and pulled back under the card.

New: pages Claude builds now follow your Design DNA. All seven settings — corner radius, spacing density, section rhythm, content width, button role, button shape and motion — now shape the pages Claude builds, not just the presets you apply by hand. Set your site to sharp and tight, or rounded and roomy, and the pages it builds change with it.

Improved (visible): generated pages look designed, not drafted. Feature, step, stat, team, benefit and value sections now come out as proper cards — with your corner radius, your border colour, your shadow and your spacing — instead of loose text floating on the page. Sections you compose yourself get the same treatment when you put two or more columns side by side.

Improved: generated pages use your brand's colours, not invented ones. Around thirty hardcoded colours have been replaced with your own roles, so an accent panel is your accent, a tinted callout is your surface, and a divider is your border colour — on any flavour, not just the one they happened to be picked for.

New: anchor links. Give a section an id and link to it with "#that-id", so a "Book a table" button in the hero can jump to the booking form.

New: Claude gets told when a section came out empty. If a wrong or missing content key would have published a blank band, the build now says so — naming the key it expected and the one you probably meant — instead of silently publishing nothing.

New: a nudge when a section background change is invisible. Two of the light surface steps side by side differ by about 1.06:1, which reads as one flat page; the build now points that out and suggests anchoring the page with a genuinely distinct band.

Fixed: card titles could be invisible. A section colour meant for text on the section background was being applied to text that landed on a card instead — measured at 1.1:1 on a light card in a dark band. Text now takes its colour from whatever it actually sits on.

Fixed: grids no longer strand a card on its own line. A three-across grid given four items rendered three then a lone one; item widths now follow the count and split evenly. Rows of five or more items that previously collapsed into a full-width stack now lay out properly.

Fixed: buttons follow your button shape. A generated button was pinned to a fixed corner radius and ignored the shape you chose, so a page could show pill buttons in its pricing cards and square ones in its hero.

New: Design DNA — set your site's durable style decisions once (how round corners are, how much air there is, how tall sections run, how wide content sits, which button your brand leads with, and how much things move) and every install follows them. It sits beside the flavour canvas in the Design System tab, and Claude can read and set it too. Leaving it alone changes nothing: the defaults reproduce exactly what you have today.

New: dark card variants. Every card composite now has a Dark twin for placing on an inverted band, with text that stays legible on it (measured 16.9:1, versus text that would otherwise have been invisible against the dark surface).

New: your forms look designed. Input fields now get a recessed fill, a soft border and a clear focus state that highlights the field you are typing in — on the contact form and the email opt-in, light and dark.

New: more ways to style the same things — four more button styles (including a quiet Subtle and a Ghost for dark panels, plus Large and Small), three more heading presets, and Bordered / Flat / Elevated shapes for every card.

Improved (visible): pricing tables no longer render plain. The plan name, price, subtitle, currency and excluded items now all take your fonts and sizes, and the header sits on your own surface instead of Divi's grey — which also fixes text that was slightly too faint to read comfortably.

Improved: pages Claude builds now use your preset library. Blurb titles and body copy in generated sections take their type from your design system rather than being decided page by page, so editing a preset changes the pages you already built. This is the first step; more section types follow.

Fixed (important): six sizes were stuck. Four small text sizes and two small spacing steps were meant to shrink on larger screens and never did — they were frozen at their phone-sized value on every screen. They now scale as intended. NOTE: this changes spacing and small text slightly on pages that use them; it is the behaviour they were always meant to have.

Improved: text on an inverted section is legible. Presets that set text on a dark band were rendering it the same colour as the band itself. New "On Inverse" text styles fix it.

Improved: card hover. Cards now lift gently on hover instead of snapping, and every card that uses a shadow inherits it.

Improved: the Style Guide's preset library page, a duplicate-preset checker that only merges what is provably safe, a rehearsal you can run before installing over an existing design system, and a presets-only install for sites that already have their own size scale.

171.8.1

Fixed (important): a page could lose all its styling and show raw code. When Claude tidied up duplicate design tokens, or built a WooCommerce cart/checkout page, the page's formatting could be stripped and raw block markup shown on screen. The cause was an escaping bug in how the content was saved; every place that writes a page has been audited and corrected. If a page was affected, restore it from its History (the design system takes a snapshot before it changes anything).

New: Flavours — save and switch your whole look. Save your current colours, fonts and spacing as a named "flavour", capture your existing site as a starting flavour, and switch between them. Import and export flavours as a file to move a look between sites (Pro). And preview a flavour on a single page before you commit it site-wide (values linked to a variable shift in the preview; nothing is saved until you install).

New: find and merge duplicate design tokens. If your Variables or Colours panel has the same value saved twice under different names, Divi Connect can now find them, show you where each is used, and safely consolidate them — relinking every page that referenced the retired token so nothing breaks. Ask Claude to check for duplicates, or use the new card in the Design System tab.

New: choose what happens on an install conflict. When you install a design system over one that's already there, you can now pick merge (add what's missing), replace, or keep both.

Improved: installs now report what they left behind — including any duplicate tokens found — so you can see the real result of an install, not just "done".

Improved: more presets out of the box, and a gentle nudge to install the design system on a site that has none (updating the plugin alone never installs presets — you install them once with a design system).

Improved: the design history is now a single Undo / Redo / Restore bar instead of a stack of rows, and Redo now works reliably (it used to get stuck after the first undo).

Improved: the size scale stays in order after it grows, so newly-added sizes no longer sort to the bottom.

Improved: the bundled Divi 5 Skill is updated to 0.6.5 — it was teaching one text-escaping rule backwards, which could double-escape angle brackets in hand-written HTML.

Security: hardened two internal paths — importing a reference URL and sideloading an image can no longer be pointed at private network addresses, and the plugin's own protected post meta now requires edit permission rather than accepting any authenticated write.

Fixed (important): an edited page could keep showing its OLD version on the front end. Divi caches a stylesheet per page, and our edits never cleared it, so a change made through Claude could stay invisible until the page was opened and saved in the Visual Builder. Every page write now clears that cache.

New: set the site's default heading and body font in one step, including families Divi's own Customizer cannot reach.

Fixed: a batch of build-quality issues — cards on a dark section no longer render white text on a white card, a gradient passed as a section background is now applied as a gradient instead of being ignored, button corner-radius and height set on a preset now reach every button, common icon names are accepted as aliases, deleting a Theme Builder template works, and a template meant for the whole site is no longer scoped to one page.

Improved: the one-click Style Guide page now documents the WHOLE size system — gap, radius, border, width and measure each get their own section, and every scale renders smallest to largest instead of in storage order. It now covers your design tokens only; the preset library moves to its own page in a later release.

181.8.0

New: the Design System. Install a complete, coordinated design system on your site in one command — colours, fonts, spacing and, on Pro, a fluid type/size scale and a full set of presets, all working together. Then change your whole site's look — colours, fonts, spacing — without rebuilding a single page: your existing pages re-theme automatically. There's a new Design System tab in the Divi Connect dashboard to preview and install a look, and a one-click "Style Guide" page generator that lays out every colour, font, size and preset on one editable page. (Free: colours, fonts and adopting your existing look. Pro: the fluid size scale and the presets.)

New: one-click revert for the Design System. Installing a look now takes an automatic snapshot of your whole design system first — colours, fonts, sizes and presets — so any site-wide change is a single click to undo, all the way back to how your site looked before you installed anything. Revert from the Design System tab, or just ask Claude to undo it. Reverting saves a snapshot of the current state first, so it's safe to try.

Improved: the Design System tab is clearer. It's now organised into three tabs — Current System (what's installed), Presets (browse every preset) and Flavours (build or switch your whole look) — and each colour now shows what it's actually used for (e.g. "Accent — hero backgrounds, icons, highlights").

Fixed: the preset preview gallery. Heading presets now show their true size scale, and light "inverse" icons no longer vanish against a white background.

New: match a reference. Point Claude at a live web page — "make it like this" — and it can now read that page's structure (its sections, headings, images and calls-to-action) and rebuild it on your site in your own design system, instead of guessing from a screenshot. It reads layout and content, not exact colours, so the result comes out in your brand. For a page already on your own site, Claude reads its real structure directly.

Improved: fewer silent misses when building. If Claude uses a key a section pattern doesn't recognise (a common typo), build_page now tells you instead of quietly leaving that bit blank.

Fixed: font families now load correctly in the design-system preview and byte-match how Divi itself writes them, so what you preview is what visitors get.

New: a much larger section-pattern library. build_page can now build pages from around 200 ready-made, responsive sections (up from 28) — about, team, careers and contact; SaaS and developer sections (changelog, roadmap, metrics, API, status board, code samples, pricing); industry sets for education, health, real-estate, travel, nonprofit and legal; and content and media (blog, video, podcasts, galleries, carousels, timelines) — and more. Ask for the section you want by name; most are built on Divi's own native modules so they stay fully editable.

Improved: people sections now use Divi's native Person module. Team, speaker, practitioner, agent and trainer cards render as real Divi Person modules — photo, name, role, bio and social icons — so they stay fully editable in the builder.

Improved: membership and pricing sections can now use Divi's native Pricing Tables module.

Fixed: buttons had too little padding. Button padding was being sent on an attribute Divi ignores, so buttons fell back to a cramped default and short labels left an empty gap beneath the text — every button now gets proper, balanced padding.

Fixed: images in showcase and hero sections now centre correctly — a large screenshot or video thumbnail no longer sits off to the left.

Fixed: text, eyebrow and badge alignment is now editable in the Visual Builder. They were positioned with a baked margin the VB alignment control couldn't override; they now use Divi's real alignment, so you can re-align them by hand.

Improved: assorted section polish — left-aligned feature and service icons now sit beside their text, card grids centre a partial last row, the tabs pattern keeps its active tab readable, and the timeline uses Divi's standard layout by default (ask for "alternate" to get a zig-zag).

191.7.6

Fixed: fonts from your design system now actually load for visitors. When Claude set a heading or body font using one of your global font variables, the page pointed at the right font — so it looked correct in the Visual Builder — but Divi was never told the font was in use, so it never loaded it. Visitors silently got a fallback (usually a generic serif) while the Builder showed the real thing. New pages now load the font you picked.

Note: pages built before this update still carry the old reference. Rebuild the page, or re-apply the font, to pick up the fix — updating alone won't change pages that already exist.

201.7.5

Fixed: intermittent time-outs and 503 errors. Viewing a page's rendered result used to make your site quietly fetch its own URL, which needs a second server process at the same time — on smaller hosting plans that could exhaust the pool and make calls hang or return a 503. Claude now renders the page in-process instead, so it no longer needs that second process. It's also much faster and works on drafts. (Reproduced on a real shared host: 503s eliminated, roughly 3.5x faster under load.)

Fixed: hand-written HTML now just works. When you (or Claude) write raw HTML into a module value on create/update, the server now escapes it for you — pass real <p>/<strong> tags as-is, no more escaping catch-22.

Improved: much smaller tool responses. Duplicating a page no longer dumps the whole copy back; single edits return just the section you changed (not the entire page tree); and the design system can be fetched in a compact summary. Faster, and far less likely to overflow the assistant's context.

Improved: more readable pages by default. Body paragraphs get a comfortable reading width instead of running edge-to-edge, and buttons meet a 44px minimum tap target on mobile.

Improved: better self-checking after a build. The built-in Divi 5 Skill now has a post-build polish pass — Claude reviews the rendered result against objective layout/accessibility heuristics and fixes issues in place instead of leaving them.

211.7.4

New: a library of 28 ready-made section patterns. build_page can now assemble a page from named, professionally-designed, responsive sections — hero, features, pricing, testimonials, stats, FAQ, team, logo strip, feature list, timeline, gallery, comparison, newsletter, tabs, slider, social follow, blog, portfolio, video, countdown, skills, contact, map, before/after and more — many built on Divi's own native modules so they stay fully editable in the builder. Ask for the section you want instead of describing raw layout.

New: name the layers (Pro). Optionally have Claude give every section, row and module a descriptive name so the Visual Builder layers view is easy to read and navigate on the pages it builds.

New: build long pages in stages. build_page can now ADD sections to an existing page instead of rebuilding it, so a big multi-section page builds reliably a few sections at a time (each step is additive and undoable) — no more all-at-once time-outs.

Improved: padding and margin changes now always take effect. A spacing tweak to one module could previously do nothing if it was sent on a slightly-wrong attribute path; Claude's edits are now placed on Divi's real spacing path (and the correction is reported), so "the padding didn't change" is fixed.

Improved: build_page can now rename an existing page when you build into it (previously the new title was ignored on an existing page).

Improved: clearer Free vs Pro. The current plan and exactly what each tier covers are now surfaced up front, so there are no surprises about what needs Pro.

Improved: hand-written pages that contain raw special characters (curly quotes, accented letters, em dashes) now warn that some AI clients can corrupt them in transit, and point you to safe escapes or to build_page (which handles text for you).

221.7.3

New: reuse a proven layout. Claude can now copy one or more sections from an existing page, post or project straight into another one — so you can start a new page (or case study) from sections you already like instead of rebuilding them.

New: fill Gutenberg (non-Divi) posts with content. For the agency pattern where clients stay in the block editor while a Divi Theme Builder template supplies the design, Claude can now write plain Gutenberg content into an existing post and switch it out of Divi-builder mode.

New: set a page/post/project's Featured Image directly — give a media-library ID or an image URL (fetched in for you) — and set an excerpt on pages too (posts and projects already supported it).

New: better-designed pages by default. The built-in Divi 5 Skill is updated (Divi 5.9 Grid Editor support and guidance to avoid common "AI-design" clichés), build_page can now use richer looks (background images with readable overlays, badges, tilted/scaled cards, variable fonts), and it now warns when a design shows tell-tale AI slop (emoji used as icons, raw code dumped into a page, buttons with no hover, one generic font everywhere).

New: History & Restore and the Activity Log are now FREE for everyone (previously Pro) — recover any page and see a full change history without a licence. Project memory stays Pro.

New: the free plan now works on an unlimited number of sites.

Improved: catch placeholder or wrong contact details before they go live. When Claude sets a global variable, it now flags values that look like placeholders (example.com, [email protected], 555-1234) or an email on a domain that isn't your site's — e.g. an agency address left in a client's site.

Improved: new pages keep your theme / Theme Builder header and footer by default; pass a "blank" template only when you deliberately want a full-bleed, chrome-less page.

Improved: clearer Free vs Pro — a full per-feature matrix is now documented so there are no surprises about what needs Pro.

Fixed: converting a previously-Gutenberg page to Divi (via build or update) no longer leaves a blank Visual Builder — the page is registered as a Divi builder page so it opens and edits correctly.

Fixed: editing an inline reference to a global layout used to silently change nothing (Divi renders it from the master). Claude is now told, and can edit the master layout by id to update it everywhere it's used.

Fixed: surgical one-module edits now run the same WCAG-AA contrast check as a full build, so a quick "modernise" tweak can't quietly leave text unreadable on its background.

Fixed: spacing issues in spec-built pages. Enlarged text (e.g. a big testimonial quote) could render with its lines overlapping — it now gets a proportional line-height automatically. And a card with its own background colour now gets sensible inner padding by default, so its text isn't jammed against the edge.

231.7.2

New: a redesigned Divi Connect admin dashboard. The plugin's screens are now one tidy, tabbed console under a single "Divi Connect" menu — with a new Overview landing page, an Account tab, and a light/dark theme toggle that remembers your choice.

New: Divi Connect now checks your environment before it writes a design system. If the Divi 5 theme isn't active (or the site is still on Divi 4), colour/variable/preset changes are stopped with a clear message instead of quietly going nowhere, and a warning appears on the Divi Connect and Plugins screens until Divi 5 is active.

New (Pro): Claude can now set your brand's five core colours in one go. Divi's factory global colours (Primary, Secondary, Heading, Body, Link) are now read and overwritten in place — so a brand palette updates those swatches directly instead of adding five duplicates to your colour picker.

New (Pro): clean up your design system. Claude can now delete specific global colours, variables or presets — or clear a whole group — without you having to hand-edit them in Divi.

Improved: when you run several sites, each with its own connector, the connector now identifies itself by site name and domain in Claude's permission prompt, so it's easier to approve the right one.

Fixed: editing a Divi Portfolio project one module at a time now works. Reading a project's module outline (and add / edit / move / remove a single module in place) previously only worked on pages and posts — projects can now be edited surgically like any other content.

Maintenance: updated the Freemius licensing SDK to 2.13.4.

241.7.1

New: a "Settings" page (Divi Connect &rarr; Settings) with optional safety switches. "AI always plans first" — the AI pauses before building any new page to ask a few planning questions (who it's for, the key sections, your brand, the main call-to-action) and show you a short plan to approve first, for better structure at the cost of a few more tokens. "Always save new pages as drafts" — every new page, post or project the AI creates is saved as a draft for you to review instead of being published straight to your live site. "Confirm before overwriting a page" — the AI must stop and ask before it replaces the whole content of an existing page, so a live page can't be rewritten by accident. All are off by default; the last two are recommended on live/client sites, and none of them block small in-place edits.

New (Pro): three more Settings switches for extra control on live and client sites. "Protect global design & Theme Builder" — the AI must confirm before changing anything site-wide (global colours, variables, presets, or a Theme Builder header/footer/template). "Read-only (draft-only) mode" — the AI can read and build drafts but can't publish, delete, or change site-wide design, so you stay in full control of what goes live. "Stick strictly to my design tokens" — pages the AI builds now auto-snap colours/sizes that match your variables to those variables (and flag any hardcoded colour with no match), so everything stays on-brand and re-themeable.

New: the page builder now sticks to your design system by default. A colour that exactly matches one of your global colours is bound to that colour variable automatically, you can refer to a variable by its label ("Primary") instead of its id, and an unknown token is flagged rather than silently dropped — so pages come out referencing your variables, not a pile of one-off hardcoded values. (Referencing size/number variables is a Pro feature; on the free plan sizes use clamp()/px values — colours and fonts are unaffected.)

New: design reconciliation for imported designs. When you build with colours/sizes that are CLOSE to your existing variables (e.g. a design brought over from Figma), the AI pauses and asks how to handle them: "snap" to your existing variables, "adopt" — update your variables to the new values site-wide (Pro), or "append" — add them as new variables and keep yours (Pro). No more accidental palette drift.

Improved: tidier admin menu — Connection is now the landing page (the separate Overview page is gone), History and the Activity Log are combined into one "History & Activity" page, and the order now reads Connection, Troubleshoot, History & Activity, Memory, Settings, Endpoints.

Improved: the built-in Divi 5 Skill now includes a render-tested case-study / project layout (alternating image + text rows) so project and case-study pages come out with a proper design instead of a plain stack.

Maintenance: updated the Freemius licensing SDK to 2.13.3.

Fixed: adding, editing, moving or removing a single module now always saves. Previously, with "Confirm before overwriting a page" turned on, a one-module edit could report success while the change silently didn't stick. And a section added without any settings of its own could lose its inner layout on save; both now persist correctly.

Fixed: a malformed global preset can no longer break preset saving for your whole site. Presets are now normalised to the current format when written, so one bad entry can't stop the Divi builder from saving any preset (including your own). If a site is already stuck this way, ask the AI to "repair my presets" (new recovery tool) to fix it without changing any of your styling.

251.7.0

New: Divi Portfolio "Projects" are now supported — Claude can create, read, edit, duplicate and list Projects (case studies / portfolio items), not just pages and posts, including their project categories and tags. Best workflow for a consistent look: ask Claude to duplicate one of your existing projects and edit the copy, so the new one keeps your case-study layout. (Only appears on sites that have Divi's Portfolio enabled.)

New: Claude can now read your site's real Divi 5 module schema — the available modules and their exact settings — so it builds against the actual structure instead of guessing (fewer broken layouts). Three new read-only tools: list modules, get a module's fields, and the shared styling groups.

New: edit an existing page one module at a time — add, change, move or remove a single module in place — instead of rebuilding the whole page. It's faster and cheaper, and it leaves the rest of the page untouched. Ask things like "make the hero heading bigger" or "add a button under the intro."

New: a safety net for edits. Every change Divi Connect makes is automatically snapshotted first, so nothing is lost. Recover any page for free from the new Divi Connect &rarr; History screen (a list of snapshots with a Restore button); Pro users can also just tell Claude "undo that" and it rolls the page back in chat. Restores are themselves undoable. A new Divi Connect &rarr; Activity Log shows a full change history — when, what, and who (the WordPress user for manual edits, or Claude for connector changes) — handy for peace of mind and client hand-off.

New (Pro): project memory — Claude remembers this site's conventions between sessions (palette, fonts, tone, "always do X"), and they're loaded automatically each session so you don't repeat yourself. Manage them under Divi Connect &rarr; Memory, or just tell Claude "remember that…".

New: the free Divi 5 Skill is now built into the connector — no separate install, and it's always matched to your plugin version. Claude loads it automatically when it connects and pulls just the parts it needs for the task, so pages come out higher quality out of the box (this works on the hosted claude.ai connector too, including free accounts, where a manually-added Skill often isn't available).

Improved reliability: the essential Divi 5 block rules (the ones that otherwise cause blank or broken pages) are now sent to Claude together with your design system every time it starts a build, so pages come out correctly even in a session where the full Skill wasn't loaded. The builder version Claude stamps also now always matches your installed Divi.

Improved first drafts: when Claude goes to build a brand-new page without having loaded the built-in Skill yet, it's prompted once to load the Skill and run a quick plan first — so it asks the right questions and gets the structure right the first time. If you've asked it to just build immediately, it proceeds on retry (this never blocks you). Editing existing pages is unaffected.

261.6.7

Fixed: icons now render reliably across Divi-built pages — feature cards (blurbs), the Icon module and Icon Lists — whether Claude builds from a spec or from markup. (Icon glyphs were being altered when the page was saved, leaving a blank space.) For feature cards you can just name the icon you want — a FontAwesome name ("magnifying-glass"), a Divi icon name, or a hex codepoint — and the server builds the correct icon, with optional size and colour.

Fixed: the "Activate your license" link on the Overview page now always goes somewhere that works for your current state, instead of occasionally dead-ending on a "not allowed" screen before your account is connected. Users mid-activation now see a clear "confirm your email" note.

271.6.6

Changed: Divi Connect now has its own top-level admin menu (instead of sitting under Settings) — easier to find, with Overview, Connection, Troubleshoot and Endpoints as sub-pages.

Fixed: the Freemius Account page is now reachable. It was registered but had no visible menu link, so license management (Sync, Change Plan, Deactivate, Billing) and the "Join the Beta program" opt-in were effectively hidden. Account and Upgrade now appear under the Divi Connect menu.

Improved: the license/opt-in screens now show the Divi Connect logo and explain why connecting matters, so you don't accidentally skip activation and end up silently on the free tier.

After activation you now land on the Divi Connect settings page.

New: after a plugin update, a reminder prompts you to refresh Claude's connector so it picks up any newly added tools (the tool list is cached when you connect). A matching "Refresh Claude's tool list" tip is on the settings page.

281.6.5

Fixed: Divi-built blog posts are now proper builder posts — they open and save in the Visual Builder without the body being wiped. (Previously a connector-created post could lose its content the first time you edited and saved it in the builder.) Editing an affected older post repairs it automatically.

New: choose how a post is built — a full Divi-designed post (editable in the Visual Builder) or plain content styled by your Theme Builder single-post template. Claude asks when it's not obvious.

New: duplicate a page or post — Claude can copy an existing one (design, layout, featured image and categories included) into a new draft to edit from there, so you can reuse a design as a starting point.

New: Claude can find a page or post by its title, so you can say "duplicate my Services page" without looking up IDs.

New: connection health check on the settings page — if your web host's firewall or anti-bot/DDoS protection is blocking Claude, the page tells you exactly that and how to fix it (allowlist Anthropic's IPs or exclude /wp-json/) instead of a confusing "couldn't connect" error.

New: your plan (Free or Professional) is now shown clearly on the settings page, with a one-click "activate your license" link when you're on Free — so a license key that hasn't been activated yet no longer leaves you silently on the free tier missing Pro features.

291.6.4

New: Claude can now read an existing Theme Builder layout (header, footer or body) and edit it in place, instead of rebuilding it from scratch — so tweaks to your global header/footer keep everything else intact.

New: reminders to install the free Divi 5 Skill for best results — a notice on the Divi Connect settings page, plus an instruction sent to Claude when it connects (without the Skill, generated pages can come out lower quality).

Settings page now lists the new "read Theme Builder layout" endpoint.

301.6.3

Better-looking pages from build_page: new section presets (hero, features, cta, steps) — describe a common section and the plugin assembles a tidy, well-spaced layout (structure, spacing, type scale and alignment handled for you).

Design safeguards: unknown colour/size/font variables are now skipped (the element inherits a sensible colour instead of Divi's default) and reported back, and text colour is checked for WCAG AA contrast — auto-set over a known background, or flagged when a chosen colour would be hard to read. Check the new "warnings" in the response.

311.6.2

Fixed gradient global variables created via the API not rendering: they are now stored in Divi's structured gradient format, so they appear in the Variable Manager and emit a front-end CSS value (previously a gradient variable saved but showed empty and produced no output). Send a settings object — e.g. {"type":"linear","direction":"180deg","stops":[{"color":"#000","position":0},{"color":"#fff","position":100}]} — rather than a raw CSS gradient string.

321.6.1

Fixed dividers built from a compact spec rendering a double line (the module's native line now carries the color instead of stacking a separate border).

Fixed margins given as a positional list ([top, bottom, left, right]) being ignored when building from a spec.

Documentation: clarified that the free Divi 5 Skill is recommended alongside the plugin so Claude writes valid, on-brand Divi 5.

331.6.0

Build pages from a compact component spec: Claude sends a small structured layout and the plugin expands it into valid Divi 5 markup server-side — fewer tokens and no more blank-page mistakes (escaping, structure, and design-system tokens are handled for you).

See your results: a new tool returns a published page's rendered HTML plus its page-specific Divi CSS, so Claude can check spacing, contrast, and alignment and fix issues instead of building blind.

341.5.0

Blog posts can now be authored with the Divi Builder OR plain Gutenberg — choose per post ("builder": "divi" | "gutenberg").

Reusable global layouts now actually embed on pages (reference by id via "globalModule"); added a list endpoint to find existing ones.

Smart quotes, dashes and emoji written as numeric HTML entities are preserved correctly on insert (no more corruption).

Page/post responses now include non-blocking authoring warnings (e.g. a page built mostly from Code modules).

The design system now reports which token buckets are empty, so Claude can offer to generate colors/variables when a site has none.

351.4.0

Edit pages in place: read a page's Divi markup and update it without delete-and-recreate (keeps the URL and history).

Create real WordPress blog posts (not just pages) with Divi, including categories, tags, and excerpt.

Theme Builder: build global headers and footers (site-wide), update a layout's content, and delete templates safely.

Manage the design system reliably: global colors now appear in the Variables panel, and size/font/gradient variables are created in Divi 5's real store (fonts are now supported).

New page option to render the theme/Theme Builder header and footer around a page instead of full-bleed.

Fixed a Theme Builder encoding issue that could dump raw HTML/CSS as visible text.

361.3.1

Delete safety: deleting a page now requires explicit confirmation and moves it to Trash (recoverable) by default; permanent deletion is opt-in.

Claude confirms with you before deleting any page.

Refreshed the Settings page connector details and endpoint reference.

371.3.0

Free and Professional tiers.

Native MCP server for claude.ai and Claude Desktop custom connectors.

Design system reads Divi 5 active variables, colors, gradients, and presets.

Markup validation prevents blank/broken pages.

Site-aware connector identity for multi-site setups.