Versions in this module Expand all Collapse all v1 v1.0.11 Jan 31, 2025 v1.0.10 Jan 31, 2025 Changes in this version + type Agent interface + Generate func(context.Context, Model, []Context, ...Opt) (*Response, error) + Models func(context.Context) ([]Model, error) + Name func() string + UserPrompt func(string) Context + type Context interface + Role func() string + type Model interface + Name func() string + type Opt func(*Opts) error + func OptStream(fn func(Response)) Opt + func OptTools(t ...Tool) Opt + type Opts struct + StreamFn func(Response) + Tools []Tool + type Response struct + Agent string + Context []Context + Duration time.Duration + Model string + Text string + Tokens uint + func (r Response) String() string + type Tool interface + Description func() string + Name func() string + Params func() []ToolParameter + Provider func() string + Run func(context.Context, *ToolCall) (*ToolResult, error) + type ToolCall struct + Args map[string]any + Id string + Name string + func (t *ToolCall) Int(name string) (int, error) + func (t *ToolCall) JSON() string + func (t *ToolCall) String(name string) (string, error) + type ToolParameter struct + Description string + Name string + Required bool + type ToolResult struct + Id string + Result map[string]any + func (t *ToolResult) Role() string