From magento2-commerce
Implement Magento 2 events, observers, cron jobs, and message queues for event-driven logic, scheduled tasks, and asynchronous processing.
npx claudepluginhub orcaqubits/agentic-commerce-skills-plugins --plugin magento2-commerceThis skill is limited to using the following tools:
**Fetch live docs**:
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Fetch live docs:
https://developer.adobe.com/commerce/php/development/components/events-and-observers/ for events/observers guidesite:developer.adobe.com commerce php development components message-queues for message queue guidesite:developer.adobe.com commerce php development components cron for cron developmentPublish-subscribe pattern: code dispatches named events, and observers respond.
$this->eventManager->dispatch('event_name', ['key' => $value]);
EventManagerInterface is injected via constructor.
Observers are bound to events in etc/events.xml (global), etc/frontend/events.xml, or etc/adminhtml/events.xml:
event name — event to observeobserver name — unique identifierinstance — observer class (fully qualified)Observer/ directoryMagento\Framework\Event\ObserverInterfaceexecute(Observer $observer) — access event data via $observer->getEvent()etc/events.xml — runs in ALL areasetc/frontend/events.xml — storefront onlyetc/adminhtml/events.xml — admin onlyMagento dispatches hundreds of events. Common categories:
catalog_product_save_before/after — product save lifecyclecheckout_submit_all_after — order placementcustomer_register_success — customer registrationsales_order_place_after — order placedcontroller_action_predispatch/postdispatch — request lifecycleCron jobs are declared in etc/crontab.xml:
job name — unique identifierinstance — class namemethod — method to call (usually execute)schedule — cron expression (minute hour day month weekday)group — cron group (default, index; Adobe Commerce also has staging, catalog_event)Any class with an execute() method. No interface required. Constructor injection for dependencies.
etc/cron_groups.xmlbin/magento cron:run # Run all due cron jobs
bin/magento cron:install # Install system crontab entry
For asynchronous, resource-intensive, or decoupled operations. Supports AMQP (RabbitMQ) and MySQL-based queues.
communication.xml — defines topics and request/response typesqueue_consumer.xml — maps queues to consumer handler classesqueue_topology.xml — exchanges, queues, routingqueue_publisher.xml — defines where topics publish toConsumer class with a process($message) method. Started via:
bin/magento queue:consumers:start <consumer_name>
index cron group for indexer-related jobsFetch the events/observers and cron documentation for exact XML schemas, event names, and cron expression syntax before implementing.