Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ChannelLookupFn ¶
ChannelLookupFn returns the registered Channel for a name, or nil if unknown.
type Options ¶
type Options struct {
Store storage.ScheduledJobStorage
ChannelLookup ChannelLookupFn
// ExecCommand defaults to exec.CommandContext when nil.
ExecCommand agentrunner.ExecFunc
// BinaryPath defaults to os.Args[0] (current binary) when empty.
BinaryPath string
}
Options bundles dependencies and configuration for NewService.
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service runs scheduled jobs inside the channels-manager daemon. Jobs are loaded from the configured ScheduledJobStorage, registered with a robfig/cron scheduler, and hot-reloaded by polling the storage and diffing (reconcile).
On fire, a fresh `infer headless --session-id <uuid>` subprocess is spawned - every fire gets a brand-new session, so no context carries between runs. Each assistant line emitted by the agent is forwarded to the configured channel/recipient via the in-process channel lookup.
func NewService ¶
NewService constructs a Service. Returns an error if required deps are missing.
func (*Service) ParseCron ¶
ParseCron exposes the same parser the service uses, so the Schedule tool can validate cron expressions identically before persisting them.