Overview
Key features:- Type Safety: Full TypeScript integration with strongly-typed event data
- Plugin Isolation: Secure event listener registration with error isolation
- Performance: Fire-and-forget event processing
- Security: Events cannot be intercepted or modified by plugins
Event Naming Convention
Events follow thedomain.action pattern, aligned with the permission structure:
user.registered,user.login,user.logout,user.updated,user.deletedteam.created,team.updated,team.member_added,team.member_removedsettings.updated,settings.smtp_configured,settings.github_configuredmcp.server_installed,mcp.server_uninstalled,mcp.server_configured
Event Data Structure
Event Constants
Usage in Core Routes
Emit events after successful operations:Plugin Event Listeners
Plugins register event listeners in their configuration:Available Events
Events are emitted for user lifecycle (user.*), team management (team.*), settings changes (settings.*), and MCP operations (mcp.*). Each event includes relevant data and context.
For complete event schemas and data structures, see the event type definitions.
