Versions in this module Expand all Collapse all v1 v1.0.2 Jun 1, 2026 v1.0.1 May 29, 2026 Changes in this version + type Agent struct + func NewAgent(id string, name string, model string, instructions *string, ...) *Agent + func (n *Agent) AddTool(t engine.ToolProvider) + func (n *Agent) Execute(ctx context.Context, scope *engine.Scope) (string, error) + func (n *Agent) Outputs() map[string]workflow.DataType + func (n *Agent) Setup(_ context.Context) error + func (n *Agent) Tools() ([]llmproxy.FunctionTool, error) + type FunctionCall struct + func NewFunctionCall(id string, fn *engine.Function, inputBindings map[string]workflow.Expression, ...) (*FunctionCall, error) + func (n *FunctionCall) Execute(ctx context.Context, scope *engine.Scope) (string, error) + func (n *FunctionCall) Outputs() map[string]workflow.DataType + func (n *FunctionCall) Tools() ([]llmproxy.FunctionTool, error) + type If struct + func NewIf(id string, condition workflow.Expression) *If + func (n *If) Execute(ctx context.Context, scope *engine.Scope) (string, error) + type MqttPublish struct + func NewMqttPublish(id string, ch *channel.MQTT, topic string, dataType workflow.DataType, ...) *MqttPublish + func (n *MqttPublish) Execute(_ context.Context, scope *engine.Scope) (string, error) + type ReadPin struct + func NewReadPinAnalog(id string, binding workflow.OutputBinding, toolDescription string, ...) *ReadPin + func NewReadPinDigital(id string, binding workflow.OutputBinding, toolDescription string, ...) *ReadPin + func (r *ReadPin) Execute(ctx context.Context, scope *engine.Scope) (string, error) + func (r *ReadPin) Outputs() map[string]workflow.DataType + func (r *ReadPin) Tools() ([]llmproxy.FunctionTool, error) + type Retriever struct + func NewRetriever(id string, collectionID string, topK int, query workflow.Expression, ...) *Retriever + func (r *Retriever) Execute(ctx context.Context, scope *engine.Scope) (string, error) + func (r *Retriever) Outputs() map[string]workflow.DataType + func (r *Retriever) Tools() ([]llmproxy.FunctionTool, error) + type SerialRead struct + func NewSerialRead(id string, binding workflow.OutputBinding, prompt string, uart *channel.UART) *SerialRead + func (r *SerialRead) Execute(ctx context.Context, scope *engine.Scope) (string, error) + func (r *SerialRead) Outputs() map[string]workflow.DataType + type SerialWrite struct + func NewSerialWrite(id string, value workflow.Expression, uart *channel.UART) *SerialWrite + func (w *SerialWrite) Execute(_ context.Context, scope *engine.Scope) (string, error) + type SetVariable struct + func NewSetVariable(id string, variable workflow.Reference, value workflow.Expression) *SetVariable + func (n *SetVariable) Execute(ctx context.Context, scope *engine.Scope) (string, error) + type WebFetch struct + func NewWebFetch(id string, urlExpr workflow.Expression, maxChars int, ...) *WebFetch + func (n *WebFetch) Execute(ctx context.Context, scope *engine.Scope) (string, error) + func (n *WebFetch) Outputs() map[string]workflow.DataType + type WebSearchTool struct + func NewWebSearchTool(id string, provider websearch.Provider, maxResults int) *WebSearchTool + func (n *WebSearchTool) Tools() ([]llmproxy.FunctionTool, error) + type WritePin struct + func NewWritePinDAC(id string, value workflow.Expression, dac *channel.DAC) *WritePin + func NewWritePinDigital(id string, value workflow.Expression, gpioout *channel.GPIOOutput) *WritePin + func NewWritePinPWM(id string, value workflow.Expression, pwm *channel.PWM) *WritePin + func (w *WritePin) Execute(_ context.Context, scope *engine.Scope) (string, error)