Versions in this module Expand all Collapse all v0 v0.8.0 May 3, 2026 v0.7.0 Apr 27, 2026 v0.6.0 Apr 26, 2026 Changes in this version + type Dispatcher struct + func NewDispatcher(registry *Registry) *Dispatcher + func (d *Dispatcher) Emit(ctx context.Context, eventType EventType, data any) error + func (d *Dispatcher) EmitAsync(ctx context.Context, eventType EventType, data any) + func (d *Dispatcher) EmitAsyncWithSession(ctx context.Context, eventType EventType, sessionID string, data any) + func (d *Dispatcher) EmitWithSession(ctx context.Context, eventType EventType, sessionID string, data any) error + type Event struct + Data any + SessionID string + Timestamp time.Time + Type EventType + func NewEvent(eventType EventType, data any) Event + func (e Event) WithSessionID(sessionID string) Event + type EventType string + const EventJobExecuted + const EventMessageReceived + const EventMessageSent + const EventSessionCreated + const EventSessionUpdated + const EventToolCalled + const EventToolCompleted + type HandlerConfig struct + Events []EventType + Handler HandlerFunc + Name string + type HandlerFunc func(ctx context.Context, event Event) error + type Hook interface + Close func() error + Events func() []EventType + Handle func(ctx context.Context, event Event) error + Init func(ctx context.Context) error + Name func() string + type JobEvent struct + JobID string + JobName string + Success bool + type MessageEvent struct + Content string + Role string + type Registry struct + func NewRegistry() *Registry + func (r *Registry) Close() error + func (r *Registry) Dispatch(ctx context.Context, event Event) error + func (r *Registry) DispatchAsync(ctx context.Context, event Event) + func (r *Registry) HandlerCount(event EventType) int + func (r *Registry) HookCount() int + func (r *Registry) Init(ctx context.Context) error + func (r *Registry) RegisterHandler(event EventType, name string, handler HandlerFunc) + func (r *Registry) RegisterHook(hook Hook) error + func (r *Registry) RegisterWebhook(webhook *WebhookHook) + func (r *Registry) SetStorage(s kvs.Store) + type SessionEvent struct + Action string + SessionID string + type StorageAware interface + SetStorage func(s kvs.Store) + type ToolEvent struct + Error string + Name string + Params map[string]any + Result string + type WebhookHook struct + Headers map[string]string + HookEvents []EventType + HookName string + Method string + RetryCount int + RetryDelay time.Duration + Timeout time.Duration + URL string + func (w *WebhookHook) Close() error + func (w *WebhookHook) Events() []EventType + func (w *WebhookHook) Handle(ctx context.Context, event Event) error + func (w *WebhookHook) Init(_ context.Context) error + func (w *WebhookHook) Name() string