WP Manifestindependent plugin directory
manifest / developer / developer-command-center

KUBIK Developer Command Center

A comprehensive WordPress + WooCommerce intelligence platform for proactive maintenance, security monitoring, and risk prevention

by KUBIK · github.com/dimitrisnimas/developer-command-center · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/dimitrisnimas/developer-command-center/archive/refs/heads/main.zip

Developer Command Center is an operational dashboard for WordPress and WooCommerce administrators. It reports system health, records selected administrative and security events, runs resumable catalog/database scans, and produces monthly maintenance reports.

Status

Version 1.2 is a production candidate for controlled deployments. Validate it against the target hosting stack on staging and keep normal database and file backups. DCC is an observability and maintenance aid; it is not a firewall, malware scanner, uptime service, or backup system.

Requirements

  • WordPress 6.4 or newer
  • PHP 8.0 or newer
  • MySQL 5.7 or MariaDB 10.4 or newer
  • WooCommerce for catalog-specific features
  • A reliable system cron calling wp-cron.php on sites where traffic-driven WP-Cron is disabled

WordPress multisite network activation is not currently supported.

Installation

  1. Copy the repository to wp-content/plugins/developer-command-center.
  2. For PDF downloads, run composer install --no-dev --optimize-autoloader before packaging the plugin. Without TCPDF, reports open as printable HTML.
  3. Activate KUBIK Developer Command Center in WordPress.
  4. Open Command Center from the admin menu.

The scheduler is part of the main plugin. Do not copy dcc-cron-scheduler.php to mu-plugins.

Testing version 1.2

  • Remove any copied dcc-cron-scheduler.php from mu-plugins before activating 1.2.
  • Configure DCC_ALLOWED_USER_IDS before deployment if access must be limited beyond the configured capability.
  • Version 1.2 uses a fresh three-table schema and does not migrate data from pre-release builds. Use a clean installation when testing this version.

Access control

Access requires the manage_options capability by default. Change the capability before the plugin loads if necessary:

define( 'DCC_CAPABILITY', 'manage_woocommerce' );

An optional user-ID allow-list can further restrict capable users:

define( 'DCC_ALLOWED_USER_IDS', [ 12, 37 ] );

The dcc_allowed_user_ids filter supports dynamic configuration. An empty allow-list means that capability checks alone determine access.

Implemented features

  • PHP, database, memory, disk, WP-Cron, and WooCommerce Action Scheduler health data
  • Autoloaded option size and cache detection
  • Query Monitor integration when Query Monitor is active
  • Failed-login monitoring with throttled brute-force alerts
  • User, content, and plugin activity history
  • Database hygiene recommendations
  • Resumable WooCommerce catalog and image-size scans
  • Atomic worker locks that prevent overlapping catalog and image batches
  • Maintenance mode, outgoing-email suppression, and DCC cache invalidation
  • Client and technical monthly reports
  • Versioned schema checks and 90-day telemetry retention

Background catalog and image scans use small WP-Cron batches. Their progress depends on WP-Cron running successfully. Price-outlier aggregation runs inside the database and does not load the complete catalog into PHP memory.

Batch sizes can be tuned with the dcc_catalog_batch_size and dcc_image_batch_size filters after measuring the target server.

Data storage and privacy

DCC creates three tables using the site's WordPress table prefix:

  • dcc_events
  • dcc_metrics_history
  • dcc_catalog_issues

Current database-cleanup recommendations are stored in the non-autoloaded dcc_cleanup_recommendations WordPress option rather than a dedicated table.

Activity and security records can include user IDs, usernames, email addresses, and IP addresses. Operational telemetry is retained for 90 days by default. Change it with:

add_filter( 'dcc_retention_days', static fn() => 30 );

Maintenance entries and unresolved recommendations are not automatically deleted. Plugin deactivation preserves all data; deleting the plugin removes its tables and options. Define DCC_PRESERVE_DATA_ON_UNINSTALL as true before deletion to retain them.

Reports

Reports contain only measurements available to DCC. They do not claim uptime because DCC does not perform external availability checks. The technical report adds security aggregation and disk-sample details.

PDF generation uses tecnickcom/tcpdf through Composer. Printable HTML is used when the dependency is absent.

Development

composer install
composer test
composer lint
node --check assets/js/dcc-app.js

Pull requests should include tests for changed calculation or data-flow behavior. See CONTRIBUTING.md and SECURITY.md.

License

GPL-2.0-or-later. See LICENSE.