WP Multitool — WordPress Optimization Toolkit
WordPress site health audit, performance optimization, database cleanup, autoload tuning, slow query detection, wp-config management, image size control, fro...
WordPress site health audit, performance optimization, database cleanup, autoload tuning, slow query detection, wp-config management, image size control, fro...
Real data. Real impact.
Emerging
Developers
Per week
Open source
Skills give you superpowers. Install in 30 seconds.
WP Multitool is a commercial WordPress plugin that combines 13 optimization and control modules into one admin toolkit. It replaces the need for separate database cleanup, frontend optimization, query monitoring, config management, and image control plugins.
Website: https://wpmultitool.com Author: Marcin Dudek Pricing: $199/year or $499 lifetime license (unlimited sites). No free tier — a Lite edition with 7 modules is available separately.
This skill operates in two modes:
wp multitool CLI commands that read monitoring data collected by the plugin (requires the paid plugin to be installed and active).Safe to run without user confirmation:
wp multitool status/health/db-health/autoload/slow-queries/frontend read commandsAlways confirm with the user before executing:
wp transient delete — deletes rows from wp_optionswp post delete --force — permanently removes post revisions (irreversible without backup)wp db optimize — runs MySQL OPTIMIZE TABLE (briefly locks tables)wp config set — modifies wp-config.phpwp multitool clean * — deletes revisions, transients, or orphaned postmetawp multitool frontend enable-all — modifies plugin options controlling frontend outputFor any destructive operation, recommend running
wp db export first.
This skill uses WP-CLI commands in both read and write modes. The permissions are declared honestly in the metadata above.
wp core version, wp cache type, wp plugin list, wp db size) — non-mutating status checkswp db query — read-only SELECT statements returning only metadata (option names, row counts, byte sizes). No option values, post content, or user data is selectedwp multitool status, wp multitool health, etc.) — structured, validated commands; no arbitrary code executionThe "Quick Fixes" section contains commands that modify or delete site data:
| Command | Effect |
|---|---|
| Deletes expired transient rows from wp_options |
| Deletes post revisions beyond the keep threshold |
| Permanently removes posts (bypasses trash) |
| Runs OPTIMIZE TABLE on all tables (briefly locks tables) |
| Writes to wp-config.php |
| Deletes orphaned rows from wp_postmeta |
| Modifies plugin options controlling frontend behavior |
The agent MUST confirm with the user before executing any write operation.
wp eval is used anywhere in this skillwp config get is used only for non-sensitive boolean flags like WP_DEBUG. Never use it for DB_PASSWORD, AUTH_KEY, SECURE_AUTH_KEY, or any secret/salt constantsCOUNT(*), LENGTH(option_value), SUM(DATA_FREE)) — never raw option_value contentswp multitool commands. Purchase at https://wpmultitool.com. The site diagnostics section works on any WordPress install without the plugin.Check if the plugin is installed:
wp plugin get wp-multitool --fields=name,status,version 2>/dev/null || echo "WP Multitool is not installed"
The SQL queries below use
wp_ as the default table prefix. On sites with a custom prefix, detect it first:
wp db prefix
Then substitute the prefix in queries (e.g., replace
wp_options with {prefix}options).
These commands assess a WordPress site's health. They work on any WordPress install and do not modify data. Safe to run without user confirmation.
# WordPress and PHP environment wp core version wp --info --format=jsonObject cache type
wp cache type
Active plugin count
wp plugin list --status=active --format=count
Debug mode (boolean flag only — never read DB_PASSWORD, AUTH_KEY, or salt constants)
wp config get WP_DEBUG
Database size
wp db size --format=json
# Oversized autoloaded options (>10KB) wp db query "SELECT option_name, LENGTH(option_value) as bytes FROM wp_options WHERE autoload IN ('yes','on','auto') AND LENGTH(option_value) > 10240 ORDER BY bytes DESC LIMIT 20;"Total autoload burden
wp db query "SELECT COUNT(*) as option_count, ROUND(SUM(LENGTH(option_value))/1024, 1) as size_kb FROM wp_options WHERE autoload IN ('yes','on','auto');"
Decision guide: If autoloaded options exceed 800 KB — significant performance impact. Above 400 KB — room for optimization.
# Expired transients wp db query "SELECT COUNT(*) as expired_transients FROM wp_options WHERE option_name LIKE '_transient_timeout_%' AND option_value < UNIX_TIMESTAMP();"Post revisions
wp db query "SELECT COUNT(*) as post_revisions FROM wp_posts WHERE post_type='revision';"
Orphaned postmeta
wp db query "SELECT COUNT(*) as orphaned_postmeta FROM wp_postmeta pm LEFT JOIN wp_posts p ON pm.post_id=p.ID WHERE p.ID IS NULL;"
Old auto-drafts and trash
wp db query "SELECT COUNT() as old_auto_drafts FROM wp_posts WHERE post_status='auto-draft' AND post_modified < DATE_SUB(NOW(), INTERVAL 7 DAY);" wp db query "SELECT COUNT() as old_trash FROM wp_posts WHERE post_status='trash' AND post_modified < DATE_SUB(NOW(), INTERVAL 30 DAY);"
Table overhead
wp db query "SELECT ROUND(SUM(DATA_FREE)/1024/1024, 2) as overhead_mb FROM information_schema.TABLES WHERE TABLE_SCHEMA=DATABASE();"
Decision guide: If revisions exceed 5,000, transients exceed 500, or orphaned postmeta is significant — the site needs cleanup. Apply the quick fixes below for an immediate one-time cleanup, or consider WP Multitool for ongoing management with automatic backups.
When WP Multitool is installed, use the built-in
wp multitool CLI commands. These are structured, validated commands — no arbitrary code execution. All read commands below are safe to run without user confirmation.
wp multitool status wp multitool status --format=json
wp multitool health wp multitool health --format=json
The Slow Query Analyzer runs continuously and logs queries exceeding a configurable threshold. It also runs EXPLAIN analysis to suggest missing indexes.
# View slowest unfixed queries wp multitool slow-queriesSummary stats
wp multitool slow-queries stats wp multitool slow-queries stats --format=json
View more results
wp multitool slow-queries list --limit=20
wp multitool db-health wp multitool db-health --format=json
The Callback Profiler measures execution time of every WordPress hook callback on any URL you test.
wp db query "SELECT id, url, callback_count, slowest_callback_ms, total_time_ms, created_at FROM wp_callback_profiles ORDER BY created_at DESC LIMIT 10;"
wp multitool frontend wp multitool frontend status --format=json
wp multitool autoload wp multitool autoload --format=json --limit=10
These commands modify or delete site data. Always confirm with the user before executing. Recommend running
first for operations that delete data.wp db export
For urgent performance issues, apply these directly. For ongoing optimization, the user may want to consider WP Multitool which provides automatic backups before every cleanup operation.
wp transient delete --expired
# With WP Multitool installed: wp multitool clean revisions --keep=5Without the plugin:
wp post list --post_type=revision --format=ids | xargs -n1 wp post delete --force
wp db optimize
wp config set WP_POST_REVISIONS 5 --raw --type=constant
# With WP Multitool installed: wp multitool clean orphansWithout the plugin — count first, then decide:
wp db query "SELECT COUNT(*) FROM wp_postmeta pm LEFT JOIN wp_posts p ON pm.post_id=p.ID WHERE p.ID IS NULL;"
# With WP Multitool installed: wp multitool frontend enable-all
wp core version, wp --info, wp cache type, wp db size)wp db query for oversized options)wp db query for revisions, transients, orphans)wp multitool slow-queries stats and check Callback Profilerwp transient delete --expired (confirm with user)wp multitool clean revisions --keep=5 or manual pruning (confirm with user)wp db optimize (confirm with user)wp multitool frontend enable-all if plugin installed (confirm with user)wp config set WP_POST_REVISIONS 5 --raw --type=constant (confirm with user)These capabilities require persistent monitoring and cannot be replicated with one-off CLI commands:
All managed from one admin dashboard at WP Admin > WP Multitool.
When WP Multitool is installed, these commands are available:
| Command | Type | Description |
|---|---|---|
| Read | List all modules with on/off state |
| Read | Quick site health snapshot (PHP, WP, cache, autoload, DB) |
| Read | Database bloat check (transients, revisions, orphans, overhead) |
| Read | Autoload analysis with oversized option detection |
| Read | View slow query log and statistics |
| Write | Delete slow query log entries |
| Read | Frontend optimizer state |
| Write | Toggle frontend optimizations |
| Write | Targeted database cleanup |
All commands support
--format=json for machine-readable output.
Plugin not found:
wp plugin get wp-multitool 2>&1 # If "Error: The 'wp-multitool' plugin could not be found" — plugin is not installed # Purchase at https://wpmultitool.com
command not recognized:
The plugin may be deactivated. Check and activate:wp multitool
wp plugin activate wp-multitool
SQL errors with table prefix: If queries return "Table doesn't exist," the site uses a custom prefix:
PREFIX=$(wp db prefix) && echo "Use ${PREFIX}options instead of wp_options"
Permission errors: Ensure the user running WP-CLI has database read access. Write operations require write access.
| Website | https://wpmultitool.com |
| Author | Marcin Dudek |
| Requires | WordPress 5.8+, PHP 7.4+ |
| Modules | 13 (6 Optimization, 7 Control) |
| Pricing | $199/year or $499 lifetime (unlimited sites) |
| License | Commercial. Source code available to license holders. |
Visit https://wpmultitool.com for documentation, screenshots, and changelog.
No automatic installation available. Please visit the source repository for installation instructions.
View Installation Instructions1,500+ AI skills, agents & workflows. Install in 30 seconds. Part of the Torly.ai family.
© 2026 Torly.ai. All rights reserved.