Skip to main content
Malbox’s plugin system is event-driven. Rather than polling for changes or running on fixed schedules, plugins subscribe to specific events and respond when those events occur. This approach enables efficient, reactive analysis workflows where plugins only activate when relevant activity happens.

How Event Hooks Work

When you register a plugin with Malbox, you declare which events your plugin should respond to. The system then notifies your plugin whenever those events fire, passing along relevant context and data.

Event Categories

Events are grouped into four categories based on what triggers them:
CategoryDescription
Task EventsFired during task lifecycle stages
Plugin EventsFired when plugin processes start, stop, or produce results
Sample EventsFired when samples are received or finish processing
System EventsFired for system-wide occurrences like shutdown or configuration changes

Subscribing to Events

Plugins can subscribe to multiple events simultaneously. The subscription model is declarative, you specify which events matter to your plugin, and the system handles routing.
Event hooks execute asynchronously. If your plugin needs to ensure ordering between events, use the task context to coordinate.

Reference

For the complete list of available events and their parameters, see the Events Reference.