Versions in this module Expand all Collapse all v0 v0.4.0 Feb 2, 2026 Changes in this version + type AgentConfig struct + Description string + Instructions string + MaxTokens int + Model string + Name string + Tools []string + type AgentInfo struct + Description string + Name string + type AgentResult struct + Agent string + Error string + Input string + Output string + Success bool + type AgentTask struct + Agent string + Input string + type CommandResult struct + Args []string + Command string + ExitCode int + Stderr string + Stdout string + func (r *CommandResult) Success() bool + type CompletionResponse struct + Content string + Done bool + ToolCalls []ToolCall + type Config struct + Agents []AgentConfig + LLM LLMConfig + MCP MCPConfig + Mode string + Timeouts TimeoutConfig + Workspace string + func DefaultConfig() Config + func LoadConfig(path string) (*Config, error) + func LoadConfigFromBytes(data []byte, format ConfigFormat) (*Config, error) + func (c *Config) GetAgentConfig(name string) (*AgentConfig, error) + func (c *Config) ListAgentNames() []string + func (c *Config) Validate() error + type ConfigFormat string + const FormatJSON + const FormatYAML + type Duration time.Duration + func (d *Duration) UnmarshalJSON(b []byte) error + func (d *Duration) UnmarshalYAML(unmarshal func(interface{}) error) error + func (d Duration) Duration() time.Duration + func (d Duration) MarshalJSON() ([]byte, error) + type EmbeddedAgent struct + func NewEmbeddedAgent(cfg AgentConfig, toolSet *ToolSet, llm LLMClient) (*EmbeddedAgent, error) + func (a *EmbeddedAgent) Description() string + func (a *EmbeddedAgent) Invoke(ctx context.Context, input string) (*AgentResult, error) + func (a *EmbeddedAgent) Name() string + type FileInfo struct + IsDir bool + Name string + Size int64 + type GlobTool struct + func (t *GlobTool) Description() string + func (t *GlobTool) Execute(ctx context.Context, args map[string]any) (any, error) + func (t *GlobTool) Name() string + type GrepMatch struct + Content string + File string + Line int + type GrepTool struct + func (t *GrepTool) Description() string + func (t *GrepTool) Execute(ctx context.Context, args map[string]any) (any, error) + func (t *GrepTool) Name() string + type LLMClient interface + Complete func(ctx context.Context, messages []Message, tools []ToolDefinition) (*CompletionResponse, error) + type LLMConfig struct + APIKey string + BaseURL string + Model string + Provider string + Temperature float64 + type MCPConfig struct + Enabled bool + Port int + ServerName string + ServerVersion string + Transport string + type Message struct + Content string + Name string + Role string + ToolID string + type OrchestratedResult struct + Mode string + Results []*AgentResult + Task string + func (r *OrchestratedResult) AllSuccessful() bool + func (r *OrchestratedResult) Summary() string + type OrchestratedTask struct + Agents []string + Input string + Mode string + Name string + type ReadTool struct + func (t *ReadTool) Description() string + func (t *ReadTool) Execute(ctx context.Context, args map[string]any) (any, error) + func (t *ReadTool) Name() string + type Runner struct + func NewRunner(cfg *Config, llm LLMClient) (*Runner, error) + func (r *Runner) Close() error + func (r *Runner) ExecuteOrchestrated(ctx context.Context, task OrchestratedTask) (*OrchestratedResult, error) + func (r *Runner) GetAgent(name string) (*EmbeddedAgent, bool) + func (r *Runner) GetAgentInfo(name string) (*AgentInfo, error) + func (r *Runner) Invoke(ctx context.Context, agentName, input string) (*AgentResult, error) + func (r *Runner) InvokeParallel(ctx context.Context, tasks []AgentTask) ([]*AgentResult, error) + func (r *Runner) InvokeSequential(ctx context.Context, tasks []AgentTask) ([]*AgentResult, error) + func (r *Runner) ListAgentInfo() []AgentInfo + func (r *Runner) ListAgents() []string + func (r *Runner) ToolSet() *ToolSet + func (r *Runner) Workspace() string + type ShellTool struct + func (t *ShellTool) Description() string + func (t *ShellTool) Execute(ctx context.Context, args map[string]any) (any, error) + func (t *ShellTool) Name() string + type TimeoutConfig struct + AgentInvoke Duration + FileRead Duration + ParallelTotal Duration + ShellCommand Duration + type Tool interface + Description func() string + Execute func(ctx context.Context, args map[string]any) (any, error) + Name func() string + type ToolCall struct + Arguments map[string]any + ID string + Name string + type ToolDefinition struct + Description string + Name string + Parameters map[string]interface{} + type ToolSet struct + func NewToolSet(workspace string) *ToolSet + func (ts *ToolSet) CreateTools(names []string) ([]Tool, error) + func (ts *ToolSet) GlobFiles(ctx context.Context, pattern string) ([]string, error) + func (ts *ToolSet) GrepFiles(ctx context.Context, pattern, filePattern string) ([]GrepMatch, error) + func (ts *ToolSet) ListDirectory(ctx context.Context, path string) ([]FileInfo, error) + func (ts *ToolSet) ReadFile(ctx context.Context, path string) (string, error) + func (ts *ToolSet) RunCommand(ctx context.Context, command string, args []string) (*CommandResult, error) + func (ts *ToolSet) RunShell(ctx context.Context, shellCmd string) (*CommandResult, error) + func (ts *ToolSet) SetMaxFileSize(size int64) + func (ts *ToolSet) WriteFile(ctx context.Context, path, content string) error + type WriteTool struct + func (t *WriteTool) Description() string + func (t *WriteTool) Execute(ctx context.Context, args map[string]any) (any, error) + func (t *WriteTool) Name() string