SiteHelm gives an AI agent 80 named WordPress operations and nothing else. No PHP. No shell. No SQL.
Free, open source, and no account to create. Pro is a separate add-on, and only for site-wide SEO and WooCommerce.
Ask the agent to change something and nothing changes yet. The preview comes back with the exact field-level before and after, plus a single-use plan token.
Applying means re-sending the same arguments with that token. If the
arguments moved even slightly, you get a StalePlan
refusal — not a surprise write.
Agents discover the surface at runtime by calling a dispatcher with no operation argument, so they never work from a memorised list.
Illustrative. Nothing is written until this exact plan is re-sent with its token.
Most tools report what they sent. SiteHelm reports what persisted.
Before the write, not after it. This is what rollback restores from.
Through a typed handler whose schema rejects unknown properties.
Not the return value of the write — the site itself, freshly queried.
If a filter, a plugin or the theme quietly altered the value, the report says so instead of claiming success.
These are not features held back for a paid tier, and not items on a backlog. They are recorded as permanently excluded, so nobody on this project can propose them again.
The open-shell approach advertises the opposite of this list — PHP execution, WP-CLI, database queries and file edits on a live site — as the reason to buy. That is the whole disagreement.
A refusal is a first-class outcome with a reason and a remedy, logged in the same register as a success. Never a stack trace, a file path, or a SQL string.
No eval, no snippet store, no theme-file editor. There is no path from an agent to executing code.
No query passthrough. Every read and write goes through a typed operation with a schema.
No arbitrary file writes, and no WP-CLI passthrough.
Nothing is destroyed without a snapshot that can put it back.
Permission comes from the authenticating WordPress user’s real capabilities, and every handler re-checks them itself.
Rollback restores from the snapshot taken before the write. Not a re-edit, and not an undo stack the agent controls — the state that existed a moment earlier, returned by you from the console.
Six tabs in wp-admin do the human half of the job: Home, Connect an app, History, Health, Permissions and Tools, with rollback, a write pause, and credential revoke reachable in one click.
Per-operation and per-module switches mean you can hand over exactly as much as you meant to, and no more.
Synthetic rows, shown to illustrate the log’s shape.
The surface is small on purpose. Everything on it is named, typed, and refuses arguments it does not recognise.
Requires PHP 8.1 or newer and WordPress 6.6 or newer. Elementor, ACF, Meta Box, an SEO plugin and WooCommerce are all optional — SiteHelm reports which of them it found rather than requiring any.
Posts, pages, custom post types, blocks, terms and redirects — the operations an editor would otherwise perform by hand.
The library: attachment details, uploads, alt text and captions, and import from a URL behind a guarded fetch.
Navigation menus, their items, their order, and which theme location each one is assigned to.
Documents and elements, widget settings, global colour and typography tokens, and theme-builder display conditions.
ACF and Meta Box field groups, their fields, and their values — read and written through each plugin’s own API.
Titles, descriptions and robots directives, read and written through whichever SEO plugin the site already runs.
The moderation queue: list by status, approve, hold, spam or trash, and reply beneath a comment.
Read only: which forms the site holds, each form’s fields and embed shortcode, and its most recent entries.
The roster, and one write: replacing a user’s roles with a single role the site has actually registered.
Thirteen fields, allowlisted: title, tagline, timezone, date and time formats, posts per page, front-page geometry, permalinks, default discussion settings, and search-engine visibility.
Everything above this line — the two-phase write, read-back verification, the capability model, the activity log, rollback, the write pause, the exclusions — is in the free plugin. Nothing about safety sits behind the paywall.
Pro adds reach, not safety: 16 further operations for site-wide SEO settings, schema, bulk metadata fixes and WooCommerce products. Every one of them inherits the same preview, snapshot, verification and rollback.
Nothing free moves into Pro later, and a lapsed licence stops the Pro operations without stopping anything else.
1 site. Your own site, or one you look after.
$39/year
Get Pro — single siteUp to 3 sites. A small book of client work.
$69/year
Get Pro — 3 sitesEvery site you run. An agency, or a freelancer with a full roster.
$149/year
Get Pro — unlimitedLaunch pricing, new customers only, applied at checkout to the first payment and to every renewal — your price does not jump next year. Monthly and lifetime licences are available at the same checkout.
An ordinary WordPress plugin. Nothing to configure first.
It carries you through the whole handshake. You do not need to know what MCP, JSON-RPC, or an application password is.
Claude, Claude Code, Cursor, VS Code, or any other MCP client. The agent discovers what it is allowed to do at runtime.
Where SiteHelm and the open-shell tools genuinely differ, and which of them fits what you are actually doing.
comparisonIncluding the ones where the honest answer is no.
FAQMonthly, yearly and lifetime, on three tiers, all carrying the same refund.
pricing