Versions in this module Expand all Collapse all v0 v0.0.4 May 21, 2026 Changes in this version + const CLIInputKey + const CLILogKey + const DefaultTimerKey + const LocatorClassAgent + const LocatorClassAlias + const LocatorClassHuman + const LocatorClassIntegration + const LocatorTransportCLI + const LocatorTransportFakeChat + const LocatorTransportLocal + const LocatorTransportTelegram + const LocatorTransportTimer + const LocatorTransportWhatsApp + const MessageKindError + const MessageKindJob + const MessageKindNotification + const MessageKindProgress + const MessageKindResult + const OutcomeStatusCompleted + const OutcomeStatusFailed + const OutcomeStatusStopped + var ErrUnsupported = errors.New("unsupported locator operation") + type CLILogTarget struct + func (t CLILogTarget) DispatchMessage(_ context.Context, msg Message) error + func (t CLILogTarget) Supports(locator Locator) bool + type Config struct + Logger *zerolog.Logger + Nodes map[string]Node + OutcomeRouter OutcomeRouter + RootNodeID string + Targets []Target + type EmitFunc func(ctx context.Context, msg Message) error + type Locator struct + Address map[string]any + Class string + Key string + Transport string + func NewAgentLocator(id string) Locator + func NewCLIInputLocator() Locator + func NewCLILogLocator() Locator + func NewFakeChatHumanLocator(chatID string) Locator + func NewLocator(locatorClass string, transport string, key string) Locator + func NewTelegramHumanLocator(chatID int64, topicID int) Locator + func NewTimerSourceLocator() Locator + func NewWhatsAppHumanLocator(phoneNumberID string) Locator + func NormalizeLocator(locator Locator) (Locator, error) + func (l Locator) String() string + type Message struct + Content string + From Locator + ID string + Kind string + Metadata map[string]any + ParentID string + SessionID string + To Locator + func NormalizeMessage(msg Message) (Message, error) + type Node interface + Run func(ctx context.Context, msg Message, emit EmitFunc) Outcome + type Outcome struct + Content string + Err error + Metadata map[string]any + Status string + type OutcomeRouter func(msg Message, outcome Outcome) []Message + type Runtime struct + func New(cfg Config) (*Runtime, error) + func (r *Runtime) Done() <-chan struct{} + func (r *Runtime) Enqueue(msg Message) error + func (r *Runtime) Err() error + func (r *Runtime) Start(ctx context.Context) error + func (r *Runtime) Stop(ctx context.Context) error + type Target interface + DispatchMessage func(ctx context.Context, msg Message) error + Supports func(locator Locator) bool + func NewCLILogTarget(logger zerolog.Logger) Target