get_charset_collate(); $sql = "CREATE TABLE IF NOT EXISTS {$wpdb->prefix}hermes_log ( id BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY, level VARCHAR(20) NOT NULL DEFAULT 'info', message TEXT NOT NULL, context LONGTEXT, created_at DATETIME DEFAULT CURRENT_TIMESTAMP, INDEX idx_level (level), INDEX idx_created (created_at) ) $charset;"; require_once ABSPATH . 'wp-admin/includes/upgrade.php'; dbDelta($sql); } private static function set_default_options() { if (!get_option('hermes_api_key')) { update_option('hermes_api_key', wp_hash(wp_generate_password(64, true, true))); } add_option('hermes_ai_provider', 'openai'); add_option('hermes_ai_model', 'gpt-4'); add_option('hermes_ai_max_tokens', 2048); add_option('hermes_cron_interval', 'hourly'); } private static function schedule_cron_events() { if (!wp_next_scheduled('hermes_hourly_tick')) { wp_schedule_event(time(), 'hourly', 'hermes_hourly_tick'); } if (!wp_next_scheduled('hermes_daily_tick')) { wp_schedule_event(time(), 'daily', 'hermes_daily_tick'); } } private static function clear_cron_events() { wp_clear_scheduled_hook('hermes_hourly_tick'); wp_clear_scheduled_hook('hermes_daily_tick'); } }