Limited-time launch offer 20% off Pro — first payment and every renewal — with code See pricing

Roadmap — no dates

What is next, and what already happened.

Every item is a numbered requirement in the plugin's repository, with its preview, snapshot and rollback policy decided before any code was written. This page is generated from that file and from the changelog, so it cannot say a thing has shipped when it has not.

The current release is 0.16.0. Anything marked shipped links to the changelog entry for the release it landed in.

What the plugin is building

32 requirements, and where each one has got to.

Planned 10

Scoped, with its preview, snapshot and rollback policy already decided. Listed in the intended order, which is not a schedule.

  • Site check-up

    read-only performance and security findings (page weight, caching headers, outdated software, file permissions, debug flags, exposed version strings) stated as plain findings the owner can act on

    Diagnostics · Pro

  • Per-app permissions

    the Permissions tab's Off / Read / Edit / Full levels set per connected app, so a content assistant may edit while a reporting tool may only read

    Console · Pro

  • Scheduled write windows and an approval queue

    an owner can require a human tap before any destructive change, or confine writes to hours they choose

    Console · Pro

  • Recipes — the site acts on its own

    the site acts on its own — a stored recipe pairs a trigger with actions drawn from the operations SiteHelm already registers, so automation adds composition and no new write surface…

    The whole scope

    the site acts on its own — a stored recipe pairs a trigger with actions drawn from the operations SiteHelm already registers, so automation adds composition and no new write surface. Triggers: a post published or updated, a term created, a comment received, a form entry recorded, a user registered, an order placed, or a schedule. Actions: any operation the recipe's account is allowed to call, each running through the same preview, capability re-check, snapshot, verify and rollback path as an agent's call — the difference is only that the owner approved the recipe once, in the console, instead of approving each run. Conditions test typed fields of the trigger payload. Every run lands in History as an ordinary reversible change, a failing step stops the chain rather than half-applying it, and a recipe can be paused or disabled from one screen (the existing global write pause disables all of them). A recipe cannot reach an operation its own account's capabilities do not already permit, and cannot call an operation the Tools tab has switched off

    Automation · Free: event and schedule triggers, one action per recipe, run history · Pro: multi-step chains, conditions, and a signed outbound webhook to one owner-entered URL

  • The whole operation surface, in a form an agent can keep

    a dispatcher's catalogue answers what is on that one tool, and nobody reads eleven of them side by side, so a client choosing between operations had no single document naming what each one is, how risky it is…

    The whole scope

    a dispatcher's catalogue answers what is on that one tool, and nobody reads eleven of them side by side, so a client choosing between operations had no single document naming what each one is, how risky it is, and whether it can be undone

    Core · Free

  • Delete a media item

    every other media write could add or change a library item and none could remove one, so a build that uploaded the wrong file had to finish the job in wp-admin

    Core · Free

  • Repair a site whose addresses stopped matching its content

    a page that plainly exists answers "not found" after a plugin, theme or permalink change, and the only fix was to open wp-admin and re-save the permalinks screen

    Core · Free

  • A sitemap that no longer matches the site

    Yoast and Rank Math build the XML sitemap once and keep serving that copy until something tells them to build it again, which they cannot do when the change came from an import, a restore…

    The whole scope

    Yoast and Rank Math build the XML sitemap once and keep serving that copy until something tells them to build it again, which they cannot do when the change came from an import, a restore, or a post type another plugin registers; the sitemap then lists pages that are gone and misses pages that exist, and nothing in the plugin's settings looks wrong

    Integrations · Pro

  • Derived data left stale by a change WordPress never saw

    an SEO score and sitemap entry, a page builder's compiled CSS, a caching plugin's stored copy and a translation index are all worked out when a page is saved and refreshed by nothing else…

    The whole scope

    an SEO score and sitemap entry, a page builder's compiled CSS, a caching plugin's stored copy and a translation index are all worked out when a page is saved and refreshed by nothing else, so content that arrived from a backup, an import or a row edited in the database leaves every one of them wrong while the page itself is right

    Core · Free

  • An operation could not say what it costs beyond the change it names

    saving a page runs whatever code the plugins on that site have hooked to a save, clearing permalinks throws away work the site had already done…

    The whole scope

    saving a page runs whatever code the plugins on that site have hooked to a save, clearing permalinks throws away work the site had already done, and deleting a menu item or an image leaves other parts of the site still pointing at it, none of which is a risk level or a destructive flag, so an agent could only learn it by doing it

    Gateway · Free

In the next release 0

Built, merged and on the main branch. It is not in 0.16.0; it lands in the version after it.

Nothing is waiting on a release. Everything merged is out.

Shipped 22

In a release you can download, and named in the changelog entry for it.

  • Pro foundation

    SiteHelm Pro as a separate add-on plugin that registers its modules through the free plugin's extension points (a folder inside the free plugin would not survive a WordPress.org update)…

    The whole scope

    SiteHelm Pro as a separate add-on plugin that registers its modules through the free plugin's extension points (a folder inside the free plugin would not survive a WordPress.org update), a per-site licence key signed offline and checked by every Pro unit itself, and a Licence card on the Health tab; the free plugin carries no Pro file, no nag and no crippled operation

    Core · shipped in 0.6.0

  • Deep SEO for Rank Math and Yoast

    today both providers stop at per-post metadata. This adds: the plugin's own SEO and readability scores and analysis flags, per post and across the site; term (category/tag) metadata; per-post schema type and fields…

    The whole scope

    today both providers stop at per-post metadata. This adds: the plugin's own SEO and readability scores and analysis flags, per post and across the site; term (category/tag) metadata; per-post schema type and fields; a strict allowlist of the plugin's settings (title and description templates, separator, per-post-type index rules, sitemap inclusions, breadcrumbs, social defaults, the site's knowledge-graph name and logo); Rank Math's redirections and 404 log (Yoast's where the site has it); an SEO audit of the whole site — missing or duplicate titles and descriptions, noindexed pages that should not be, posts under a score, thin descriptions, missing focus keyword — with bulk fixes proposed as one previewed, reversible change each

    Integrations · Free: scores and audit read, term metadata, the batched writes · Pro: settings, schema, redirections and 404s · shipped in 0.6.0

  • Site settings

    read and change a strict allowlist of options (title, tagline, timezone, date and time formats, posts per page, front page and posts page, permalink structure, default comment settings, search-engine visibility)…

    The whole scope

    read and change a strict allowlist of options (title, tagline, timezone, date and time formats, posts per page, front page and posts page, permalink structure, default comment settings, search-engine visibility), each previewed, snapshotted and reversible; nothing outside the allowlist is reachable

    Core · Free · shipped in 0.7.0

  • Every mainstream SEO plugin

    a client writes a title and description the same way whichever plugin the site runs; the REQ-0098 depth follows for each where the plugin stores it

    Integrations · Free: per-post metadata for all of them · Pro: the depth · shipped in 0.7.0

  • Forms

    list the site's forms and read their fields and recent entries for Contact Form 7, WPForms, Gravity Forms, Fluent Forms, Ninja Forms, Formidable, Forminator, SureForms; form embedding by shortcode…

    The whole scope

    list the site's forms and read their fields and recent entries for Contact Form 7, WPForms, Gravity Forms, Fluent Forms, Ninja Forms, Formidable, Forminator, SureForms; form embedding by shortcode; no entry deletion

    Integrations · Free: Contact Form 7 · Pro: the rest · shipped in 0.7.0

  • WooCommerce

    products (read, create, update, price and stock), categories, and read-only orders and customers; every write previewed and reversible

    Integrations · Pro · shipped in 0.7.0

  • Site-wide content search and bulk change

    find every post, page and Elementor element that mentions a phrase, then change them as one previewed, reversible change

    Core · Free · shipped in 0.7.0

  • Plugins and themes

    list what is installed and what has an update; activate, deactivate and update a plugin or theme (reversible by construction: the previous state is the rollback); installing from WordPress.org only…

    The whole scope

    list what is installed and what has an update; activate, deactivate and update a plugin or theme (reversible by construction: the previous state is the rollback); installing from WordPress.org only, never an arbitrary zip

    Core · Free: list and update status · Pro: act · shipped in 0.9.0

  • Elementor 4 global classes

    the reusable style classes Elementor 4 stores site-wide, as a first-class surface: list them in cascade order, create one, rename one or merge style properties into it, delete one…

    The whole scope

    the reusable style classes Elementor 4 stores site-wide, as a first-class surface: list them in cascade order, create one, rename one or merge style properties into it, delete one, and set the order they cascade in

    Integrations · Free · shipped in 0.7.0

  • Elementor template library

    the saved templates Elementor stores as a library, as a first-class surface: list them, read one in full, save a document or one element as a new template, insert a template into a page…

    The whole scope

    the saved templates Elementor stores as a library, as a first-class surface: list them, read one in full, save a document or one element as a new template, insert a template into a page, import a template this site did not produce, and create an empty theme document

    Integrations · Free · shipped in 0.7.0

  • Elementor page-level editing

    the parts of an Elementor page that are not the element tree: the page's own settings, the order of an element's children, and the name an element carries in the navigator

    Integrations · Free · shipped in 0.7.0

  • Elementor whole-document writes

    build a page's entire content in one change, empty one, and create a page Elementor controls

    Integrations · Free · shipped in 0.7.0

  • SVG upload

    add an SVG to the media library through the one path that is allowed to store markup, because it is the one path that rebuilds the document first

    Integrations · Free · shipped in 0.7.0

  • Executable payloads are withheld from every preview

    a snippet's body is described by its size and its digest wherever a change is shown, never reproduced

    Safety · Free · shipped in 0.7.0

  • The code tier exists before the code does

    a fourth risk level, a module identifier reserved for it, and the console vocabulary for both, shipped ahead of anything that can use them

    Safety · Free · shipped in 0.7.0

  • Rendered page fetch

    return a page's front-end HTML so a client can check what visitors actually see, for SEO and QA

    Core · Free · shipped in 0.12.0

  • The gaps a real build found

    a site was built end to end through SiteHelm alone, and everything it could not do was written down: custom fields that could be read but not written, meta values that arrived as text whatever their type…

    The whole scope

    a site was built end to end through SiteHelm alone, and everything it could not do was written down: custom fields that could be read but not written, meta values that arrived as text whatever their type, private post types that no listing showed, paging and status friction on the content list, no way to put pages in a chosen order, no way to set the site icon or the logo, and no way to make the first menu

    Core · Free · shipped in 0.13.0

  • Install from a zip you already uploaded

    a second source for the two install operations: a zip that is already in this site’s own media library…

    The whole scope

    a second source for the two install operations: a zip that is already in this site’s own media library, so a child theme or a plugin that is not in the directory can reach the site without SiteHelm ever being handed an address

    Core · Pro · shipped in 0.13.0

  • Read a theme's own files

    list what a theme ships and read one of its templates, so a caller can see what it is about to change instead of guessing at file names

    Core · Free · shipped in 0.13.0

  • A file on your own computer can reach the site

    a package is too large to travel as an operation argument, so the permission to upload and the bytes themselves take different roads

    Core · Free · shipped in 0.13.0

  • Why a page looks wrong

    Why a page looks wrong - report the CSS rules written for a selector on a page, which of them apply at a given viewport width, and which one wins, so a layout fix can be checked without a browser

    Core · Free · shipped in 0.13.0

  • What the second build found

    the same site was taken further and the next round of gaps written down: a read that hid the custom fields actually on a post, three errors that told the operator the wrong thing…

    The whole scope

    the same site was taken further and the next round of gaps written down: a read that hid the custom fields actually on a post, three errors that told the operator the wrong thing, an update check that could not see a release that had already shipped, and no way to take a menu item back out

    Core · Free · shipped in 0.14.0

Considering

Surveyed, kept on the list, not committed to.

These are not queued and they are not promised. Each one survived a survey of what AI-connected WordPress tooling offers, which is a low bar — it means the idea is worth keeping, not that it will be built. Describe the workflow you need and one of them moves; a feature name on its own does not.

SiteHelm Hub

SiteHelm Hub — connect once, run every site — a hosted hub the AI client connects to once; each site's plugin pairs with the hub, every call names the site it targets, and adding a site becomes install-and-pair instead of another connection in every client config. The safety model does not move: preview, snapshot, verification, the audit log and rollback all keep running inside each site's own plugin, and the hub stores site credentials encrypted or it does not ship. Requested by users 2026-09-14, which is what moves an item up this list — this is the next item that gets a design

Core

Additional page builders

Additional page builders (Bricks, Beaver Builder, Divi) through the same element read / write vocabulary as Elementor

Integrations

Popular theme settings

Popular theme settings — Astra, Kadence, GeneratePress, Blocksy: read and change the customizer options those themes expose, reversibly

Integrations

Elementor add-on packs

Elementor add-on packs (Essential Addons, Premium Addons, Ultimate Addons) — their widgets discoverable through the existing Elementor control-schema operations

Integrations

Block-library plugins

Block-library plugins (Spectra, Kadence Blocks, GenerateBlocks) — their blocks discoverable and editable through the block-editor operations

Integrations

Project memory

Project memory — a client can store and recall short site notes (brand voice, conventions, decisions) between sessions, scoped per site and visible in the console

Core

An AI chat inside wp-admin

An AI chat inside wp-admin that drives the same operations, for owners who do not run a desktop MCP client

Console

Saved prompts and templates

Saved prompts and templates — reusable instructions and page blueprints an owner can hand to any connected app

Console

Stock images

Stock images — search and sideload from Unsplash, Pexels, Pixabay into the media library with attribution

Core

Export and import a page or a set of posts

Export and import a page or a set of posts as a portable bundle between two SiteHelm sites

Core

Multisite

Multisite

Core

CRM connections

CRM connections (the form half moved to REQ-0084)

Integrations

Elementor 4 atomic layout elements

Elementor 4 atomic layout elements (e-flexbox, e-div-block) addable through the element write vocabulary when Elementor 4 is present

Elementor

Breakpoint-aware writes

Breakpoint-aware writes — tablet and mobile values on global typography and class variants in the same call

Elementor

Global Variables

Global Variables (design tokens): list, create, update and retire them alongside global colors and classes

Elementor

Response size ceiling on document reads

Response size ceiling on document reads, with an explicit "narrowed, ask by element id" marker instead of a client-side failure

Elementor

Rich-text writes

Rich-text writes that preserve the editor's children tree, so a text update never leaves a widget uneditable

Elementor

Full-bleed container preset

Full-bleed container preset that zeroes the kit padding, and a template-type term set on theme-template create so Elementor renders it

Elementor

Global-class writes verified by reading the

Global-class writes verified by reading the class back through Elementor, reporting any property it discarded

Elementor

Strict-schema mode

Strict-schema mode — an opt-in schema rewrite for validators that require required lists and non-empty enum members

Gateway
Never

Not "not yet". Decided, and not revisited.

Every one of these would make SiteHelm more capable and none of them can be previewed, capability-checked or rolled back as a change. A request to add one will be closed with this reason.

Unrestricted SQL

Direct SQL bypasses every WordPress hook, every capability check, and every snapshot. A change made that way cannot be verified or rolled back.

excluded

Unrestricted filesystem access

It escapes the plugin's own guarantees and turns a content tool into a remote shell. The Code module writes rows in its own table, never files — and it refuses every write on a site that sets DISALLOW_FILE_EDIT.

excluded

Irreversible permanent deletion

Every destructive operation in SiteHelm is reversible by construction. content-trash moves to trash; nothing hard-deletes.

excluded

Executing anything during SiteHelm's own request

New with the Code module, and load-bearing: snippets load only on the hook they declare, and the loader excludes the gateway request, WP-CLI and cron outright. A snippet that white-screens the site cannot break the channel you would use to remove it.

excluded

mu-plugin generation

An mu-plugin loads before everything, cannot be deactivated from the admin, and is outside every switch this plugin offers. Nothing SiteHelm stores may load unconditionally.

excluded

Third-party service connectors and a stored-credential vault

Considered 2026-08-28 alongside REQ-0100 and declined for now. Shipping connectors to outbound services means SiteHelm holds other people's API keys and makes arbitrary outbound requests — the same shape as the guarded-fetch surface that already needs the most careful code in the plugin, multiplied by every service. REQ-0100's Pro tier sends a signed webhook to one URL the owner types in; anything richer belongs behind that webhook, in a tool built to hold credentials.

excluded

WP-CLI passthrough, raw option writes, theme-file editing

Found in the 2026-08-23 survey and declined: each is a remote shell wearing a different hat, and none can be previewed or rolled back as a change. Site settings ship through an allowlist (REQ-0062) instead, and code ships through the guarded Code module, not a theme-file editor.

excluded
The request board

What other people have asked for.

The same board as /requests, sorted by what has been committed to rather than by what is most wanted. A request moves here when it is accepted, and leaves when it ships, naming the version it shipped in.

Planned 0

Accepted and on the roadmap. Not started, and not dated.

Nothing filed on the board is queued at the moment. What the plugin itself has planned is above.

In progress 0

Being built now. It will name its release when it ships.

Nothing filed on the board is mid-build right now. When something is, it appears here before it ships.

Shipped 0

Released. The version is on the request and links to its changelog entry.

Nothing filed on the board has shipped yet. The changelog records everything that has.

How things get here

A request becomes a plan, or it gets a reason.

Votes are the loudest input into what gets built next, and they are not the only one. A request also has to be safe to build, possible to roll back, and worth the maintenance it will cost forever.

A request with three votes can ship before one with forty, if the three are the same problem seen from three angles and the forty are a feature that would need arbitrary code execution to implement.

Nothing here is a commitment or a date. When something is accepted it moves to Planned, and when it ships the request names the release it shipped in.

Go to the request board File a request

What is deliberately not on this page

  • Dates. There are none, and there will not be. A date on a roadmap is a promise made by someone who does not yet know what the work involves.
  • A private list. There is no roadmap behind this one. What is here is generated from the repository's own file.
  • Anything unreleased to try. There is no beta and no early-access build. The public release and the public main branch are the two versions that exist.

The declined requests are on the board, with the reason written on each one. That list and the Never section above are the clearest statement of what SiteHelm is not going to be.