Versions in this module Expand all Collapse all v1 v1.5.0 Oct 12, 2026 Changes in this version + func AsString(v any) string + func BoolParam(params map[string]any, name string, fallback bool) bool + func IntParam(params map[string]any, name string, fallback int) int + func RegisterBuiltins(registry *Registry) + func ResolveParam(ctx context.Context, rt *Runtime, params map[string]any, key string, item Item, ...) (any, error) + func ResolveValue(ctx context.Context, rt *Runtime, raw any, item Item, itemIndex int) (any, error) + func StringListParam(params map[string]any, name string) []string + func StringParam(params map[string]any, name, fallback string) string + func Validate(def Definition) error + type AgentCaller interface + Ask func(ctx context.Context, agentSlug, prompt string, tools []string, ...) (string, error) + type Base struct + func NewBase(description NodeDescription) Base + func (b Base) Description() NodeDescription + func (b Base) ValidateParameters(map[string]any) error + type Definition struct + Description string + Name string + Nodes []Node + PinnedData map[string][]Item + type DisplayCondition struct + Equals []string + Field string + type ExpressionEvaluator interface + Eval func(ctx context.Context, source string, bindings map[string]any) (any, error) + type Item map[string]any + type ItemSource struct + Node string + Port string + type Node struct + Agent string + Connections map[string][]string + ID string + MaxTries int + OnError string + Parameters map[string]any + RetryOnFail bool + Tools []string + Type string + WaitBetweenTriesMS int + type NodeDescription struct + Category string + Description string + IsTestable bool + IsTrigger bool + Name string + Properties []NodeProperty + Type string + type NodeExecutor interface + Description func() NodeDescription + Execute func(ctx context.Context, rt *Runtime, input []Item, params map[string]any) (Output, error) + ValidateParameters func(params map[string]any) error + type NodeProperty struct + Default any + Description string + DisplayIf *DisplayCondition + DisplayName string + Name string + Options []NodePropertyOption + Placeholder string + Required bool + Type NodePropertyType + type NodePropertyOption struct + Label string + Value string + type NodePropertyType string + const PropBoolean + const PropJSON + const PropNumber + const PropOptions + const PropSecretRef + const PropString + const PropText + type NodeResult struct + Attempts int + Continued bool + Duration time.Duration + EndedAt time.Time + Error string + ID string + Input []Item + InputSource []ItemSource + Output []Item + OutputByPort map[string][]Item + Pinned bool + Skipped bool + StartedAt time.Time + Success bool + Type string + type Options struct + MaxParallel int + type Output struct + Ports map[string][]Item + func Main(items []Item) Output + type Registry struct + func NewRegistry() *Registry + func (r *Registry) Get(nodeType string) (NodeExecutor, error) + func (r *Registry) Register(nodeType string, executor NodeExecutor) + func (r *Registry) Types() []NodeDescription + type Result struct + Duration time.Duration + EndedAt time.Time + Name string + Order []string + Results map[string]NodeResult + StartedAt time.Time + Success bool + func Run(ctx context.Context, def Definition, registry *Registry, rt *Runtime, ...) (Result, error) + type Runtime struct + Agent AgentCaller + Expr ExpressionEvaluator + Secrets SecretResolver + Subworkflow SubworkflowRunner + Vars map[string]string + func (rt *Runtime) NodeAccessor() func(string) map[string]any + func (rt *Runtime) NodeOutput(name string) ([]Item, bool) + func (rt *Runtime) VarsMap() map[string]string + type SecretResolver interface + Resolve func(ctx context.Context, ref string) (string, error) + type SubworkflowRunner interface + Run func(ctx context.Context, def workflow.Definition) (workflow.Result, error) + type TestableExecutor interface + TestConnection func(ctx context.Context, rt *Runtime, params map[string]any) error + type ToolSpec struct + Description string + Invoke func(ctx context.Context, args map[string]any) (string, error) + Name string + Schema map[string]any + func ResolveTools(def Definition, registry *Registry, rt *Runtime, nodeID string) ([]ToolSpec, error)