check_dependencies() ) { return; } $this->define_constants(); // Migrate legacy option keys on upgrade. The activation hook does not // fire on WordPress.org auto-updates, so this also runs on every load // (cheap and idempotent: the old option is deleted once migrated). self::maybe_migrate_settings(); // Translations: WordPress 4.6+ loads them automatically for plugins // hosted on WordPress.org, so no explicit load_plugin_textdomain() // call is needed here. // Load functions first (provides agentic_admin_register_ability API). require_once AGENTIC_ADMIN_PLUGIN_DIR . 'includes/functions-abilities.php'; require_once AGENTIC_ADMIN_PLUGIN_DIR . 'includes/class-utils.php'; require_once AGENTIC_ADMIN_PLUGIN_DIR . 'includes/class-settings.php'; require_once AGENTIC_ADMIN_PLUGIN_DIR . 'includes/class-admin-page.php'; require_once AGENTIC_ADMIN_PLUGIN_DIR . 'includes/class-abilities.php'; require_once AGENTIC_ADMIN_PLUGIN_DIR . 'includes/class-llm-proxy.php'; require_once AGENTIC_ADMIN_PLUGIN_DIR . 'includes/class-connectors.php'; // Initialize Utility Hooks (Cache Invalidation). if ( class_exists( '\\AgenticAdmin\\Utils' ) ) { \AgenticAdmin\Utils::init_hooks(); } if ( class_exists( '\\AgenticAdmin\\Settings' ) ) { \AgenticAdmin\Settings::get_instance(); } if ( class_exists( '\\AgenticAdmin\\Admin_Page' ) ) { \AgenticAdmin\Admin_Page::get_instance(); } if ( class_exists( '\\AgenticAdmin\\Abilities' ) ) { \AgenticAdmin\Abilities::get_instance(); } // Initialize LLM Proxy for external provider support. if ( class_exists( '\\AgenticAdmin\\LLM_Proxy' ) ) { \AgenticAdmin\LLM_Proxy::init(); } // Initialize Connectors REST endpoint (WP 7.0+). if ( class_exists( '\\AgenticAdmin\\Connectors' ) ) { \AgenticAdmin\Connectors::init(); } } /** * Check for required dependencies. * * The Abilities API is built into WordPress 6.9+. * * @since 0.1.0 * @return bool True if dependencies are met, false otherwise. */ private function check_dependencies(): bool { // Abilities API is built into WordPress 6.9+. if ( ! function_exists( 'wp_register_ability' ) ) { add_action( 'admin_notices', array( $this, 'abilities_api_missing_notice' ) ); return false; } return true; } /** * Admin notice for missing Abilities API. * * @since 0.1.0 * @return void */ public function abilities_api_missing_notice(): void { ?>

Agentic Admin' ); ?>