Versions in this module Expand all Collapse all v0 v0.2.0 Nov 1, 2026 Changes in this version + func GetExecutionOutputText(content json.RawMessage) string + func GetToolResultText(content json.RawMessage) string + func GetTurnExecutors(environments []ExecutionEnvironment) []defs.TurnExecutor + type BaseTool struct + func NewBaseTool[T any](opt *BaseToolOpt) (*BaseTool[T], error) + func (t *BaseTool[T]) GetDefinition() *defs.ToolDefinition + func (t *BaseTool[T]) ParseArguments(input string) (*T, error) + type BaseToolOpt struct + Description string + Name string + type ClientMCPServers interface + GetMCPServers func() []mcpclient.ConnectionInfo + GetMCPTools func(ctx context.Context) ([]Tool, error) + SetMCPServers func(clientID string, connections []mcpclient.Connection) + func NewClientMCPServers() ClientMCPServers + type ExecutionEnvironment interface + GetDescription func() string + GetID func() string + GetMCPServers func() []mcpclient.ConnectionInfo + GetMCPTools func(ctx context.Context, serverIDs defs.OptionalStringList) ([]Tool, error) + GetTools func() []Tool + GetWorkspace func() workspace.Workspace + Run func(ctx context.Context) error + func NewExecutionEnvironment(opt *ExecutionEnvironmentOpt) (ExecutionEnvironment, error) + type ExecutionEnvironmentOpt struct + Description string + ID string + MCPServers []*mcpclient.ServerDefinition + Tools []Tool + Workspace workspace.Workspace + func NewExecutionEnvironmentOpt(id, description string, environmentWorkspace workspace.Workspace, ...) *ExecutionEnvironmentOpt + func (o *ExecutionEnvironmentOpt) WithMCPServers(servers []*mcpclient.ServerDefinition) *ExecutionEnvironmentOpt + type ExecutionFinishedEvent struct + AgentsInstructions []*defs.AgentsInstruction + HookRuns []*defs.HookRun + Result *defs.ToolResult + type ExecutionHookRunEvent struct + Run *defs.HookRun + type ExecutionProgressEvent struct + CallID string + Content json.RawMessage + Stream ExecutionStreamType + type ExecutionStreamType string + const ExecutionStreamTypeTerminal + type ExecutorEvent interface + type Tool interface + Execute func(ctx context.Context, call *defs.Item, progress chan<- *ExecutionProgressEvent) *ToolExecutionResult + GetDefinition func() *defs.ToolDefinition + type ToolExecutionResult struct + AgentsInstructions []*defs.AgentsInstruction + Result *defs.ToolResult + type ToolExecutor interface + GetTools func(ctx context.Context) ([]*defs.ToolDefinition, error) + Run func(ctx context.Context, calls []*defs.Item, events chan<- ExecutorEvent) + func NewToolExecutor(opt *ToolExecutorOpt) (ToolExecutor, error) + type ToolExecutorOpt struct + AgentTools []Tool + ClientMCPServers ClientMCPServers + Environments []ExecutionEnvironment + Hooks hook.Hooks + MCPServerIDs defs.OptionalStringList + Session defs.Session + SessionTools map[string][]Tool + ToolNames []string + func NewToolExecutorOpt(environments []ExecutionEnvironment, agentTools ...Tool) *ToolExecutorOpt