A single timeline. Every version Respira has shipped, with the stories behind the ones that mattered. Click into any release tagged story for the full write-up.
A Bricks append no longer reports that it duplicated your page
fixA Bricks append no longer reports that it duplicated your page. Appending one container to a 161 element page said 319 elements total, which reads as the whole tree having been copied. The page was correct the entire tim
fixEditing one Bricks setting no longer looks like it edited several. Changing a heading's text also listed that element's typography as changed, which made a strict review step refuse to approve a write that had done exact
fixA builder without modules now tells you which tool does work. update_module on a Gutenberg table answered that module level updates are not supported and stopped there, which is true and a dead end. Eleven of the sixteen
fixA page Respira could not read is no longer reported as a write that failed. This one shipped in 8.7.1 and missed its changelog entry, so here it is properly. After editing a live Elementor page, Respira fetched the publi
August 15, 2026
Every add_* tool wrote straight to the live published page on sites that had turned direct editing off
fixEvery add_* tool wrote straight to the live published page on sites that had turned direct editing off. add_accordion, add_heading, add_image and the other 24 widget shortcuts went from parameters to the builder's inject
fixApproving a duplicate could merge a customer's edits into an unrelated published page. The merge-target walk followed _respira_original_id off any post carrying it, including a page that had itself been a duplicate once
fixA duplicate's base snapshot recorded an empty page, so rollback had nothing to roll back to. The baseline snapshot was captured before the post meta was copied onto the new duplicate, so builder detection looked at a pos
fixElementor widgets were stored with no type, which took the whole page down with a critical error. A tree that mixed simplified containers at the top with Elementor's native widgetType spelling underneath passed validatio
fixImage alt text and Rank Math FAQ questions reported success and changed nothing. The shared update path treated attributes as a key that was already in the right place, which is true for the builders whose attribute buck
fixA paragraph added to a Gutenberg page was written into a different builder entirely. On a page whose last block had just been removed, the content is empty, so the per-page builder check correctly reported nothing, and t
Respira spoke sixteen page builders. As of 8.0 it also speaks WordPress's own Site Editor: block templates, synced patterns, block navigation and design tokens, readable and writable on the same safety contract as everything else. A navigation link changes by exact block path, not by rewriting the menu. A pattern is created, read back through WordPress, render-checked, then placed by reference. Structural edits can wait for your approval, and every write leaves a snapshot, a normalised diff and a server-render result. The WooCommerce add-on goes to 4.0 alongside it, and its storefront tools now try the native block path first, so a shop built in the Site Editor stops being a place where the store tools quietly go dark. Building all of that meant auditing the safety layer itself, which turned up two places where the safety mechanism was the thing doing the damage: a Divi serialiser rule written for brand-new pages was firing on every write path, and undoing a Theme Builder create could trash a template the agent never created. Both fixed, both pinned by permanent tests.
addNative FSE structure service for templates and template parts with hierarchy/source discovery, exact block-path operations, stale-write fingerprints, structural proposals, snapshots, normalized diffs, cache invalidation,
addNative user-pattern and block-navigation editing on the same structural contract: registered theme/plugin patterns remain read-only; editable user patterns support synced/unsynced state; navigation responses include comp
addFirst-class Site Editor and Gutenberg design-token MCP surfaces.
addAgent-facing activity list/detail endpoints linking audit entries to snapshots, proposals, approvals, and rollbacks.
addShared mutation-result contract for dry runs, pending approvals, verified writes, stored-but-unverified writes, rollbacks, and failures.
addAbility discovery now labels results as Respira-native, inhaled, unavailable, or replaced by a safer Respira workflow and returns the preferred next tool.
changeRewriting a Divi Theme Builder global layout now requires explicit confirmation. update_theme_builder_template refuses the first call with respira_tb_live_edit_confirmation_required, naming the layout and stating that th
The plugin now tells the same story as your dashboard
The setup and connection screens were rebuilt around one source of truth. You link a site once, then watch the moment your first agent reaches it: the screen updates on its own and names what just happened, for example "connected. Claude just ran update_page on page #42". The plugin, the dashboard and your agent now read the same connection state, so they always agree on whether a site is connected and what access it has. One-click installs (the Desktop app, Cursor, Cowork) lead the way in, with browser sign-in still there for ChatGPT and claude.ai. Sites also arrive in the dashboard with their real WordPress title instead of a bare URL, which matters the moment you run more than one. And seven builder fixes land across Bricks, Divi, Elementor 4.x and Gutenberg.
addThe setup and connection screens now show your site coming alive. They tell the same story as your respira.press dashboard: link the site once, then watch the moment an agent first reaches it. When an app connects, the s
addYour site now arrives in the dashboard with its real name. The plugin sends your WordPress site title when it activates and when it checks in, so a site shows up by name instead of a bare URL when you manage more than on
fixBricks: moving or nesting an element no longer drops its siblings. Reordering or re-parenting an element on an existing Bricks page used a nested-tree move against Bricks' flat element tree, which could leave other eleme
fixBricks: a link set to open in the same tab now does. Bricks decides whether to open a new tab based on whether the setting is present at all, so switching the toggle off still opened a new tab. The setting is now removed
fixDivi: editing a single module now refreshes the cached CSS. A single-module or update-page edit on Divi did not clear Divi's static CSS cache, so a change could look like it had not applied until the next full save. The
fixDivi: custom post types are no longer corrupted by certain color settings. A color setting that contained square brackets could end the shortcode early and spill raw text into the page. Those characters are now encoded s
May 9, 2026
README accuracy pass: 30 skills
change8 slash commands for the most common workflows
change30 auto activating skills, broken down as:
change1 visual reviewer sub agent that shows what changed after every edit
changeFull access to all 180+ Respira MCP tools through the bundled @respira/wordpress-mcp-server
changeRestructured "What you get" with the correct skill count.
Fixed: an agent orders summary could 500 the whole site on hosts that answer plugin bootstrap before WooCommerce finishes waking up. It now waits for WooCommerce's own readiness signal before touching order data, and falls back to an honest
changeFixed: an agent orders summary could 500 the whole site on hosts that answer plugin bootstrap before WooCommerce finishes waking up. It now waits for WooCommerce's own readiness signal before touching order data, and falls back to an honest
changeFixed: the Observe governance profile closed only 42 of 277 tools despite its own description promising every write closed. It computed its blocked set from an eleven-family category registry, and a tool in no family was never considered; i
changeFixed: add_sale_badge and add_low_stock_badge were flagged read-only while actually writing, which meant a governance profile closing writes left them open and the transport withheld the retry fields that make an interrupted write safe to r
changeFixed: convert_html_to_builder with no builder specified threw a type error on any block-library site (GreenShift, Spectra, Kadence Blocks, GenerateBlocks) instead of converting, because auto-detection asked "is this Gutenberg" by name inst
changeFixed: all five WooCommerce card/checkout tools now declare edit_target and verification_marker in their schemas; the backend has always forwarded both, but no schema advertised them, so they were unreachable from any client.
Showing the most recent 133 releases. Older entries are in the release feed. Every release follows semver.org.
cookies. the legal kind. one click and i'll get out of your way.
what you'd actually be saying yes to
tune your cookie preferences
essentials stay on regardless. the rest is opt-in. nothing fires until you tap save.
essentials
the cookies that make logging in work and remember which partner sent you. switching these off would just break the site, so the law does not let me make you opt out.
first-touch source on a /respira_acq cookie, plus a flag if an ai chatbot referred you. helps me figure out what is working without turning you into a tracking pixel statue.
messaging
customer.io for in-app notes, chatwoot when you click the support bubble. off by default. on means i can actually answer you in the app.