Versions in this module Expand all Collapse all v1 v1.1.70 Jul 19, 2026 v1.1.69 Jul 18, 2026 v1.1.68 Jul 16, 2026 v1.1.67 Jul 15, 2026 v1.1.66 Jul 15, 2026 v1.1.65 Jul 12, 2026 v1.1.65-pre Jul 12, 2026 v1.1.63 Jul 11, 2026 v1.1.62 Jul 10, 2026 v1.1.61 Jul 9, 2026 v1.1.60 Jul 6, 2026 v1.1.59 Jul 4, 2026 v1.1.58 Jul 4, 2026 v1.1.57 Jul 4, 2026 Changes in this version + func ContextWithQuestionAsker(ctx context.Context, asker QuestionAsker) context.Context + func ToolDefinition(t Tool) provider.ToolDefinition + type A2ADispatchTool struct + func NewA2ADispatchTool(dispatcher A2ADispatcher) *A2ADispatchTool + func (t *A2ADispatchTool) Description() string + func (t *A2ADispatchTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *A2ADispatchTool) Name() string + func (t *A2ADispatchTool) Parameters() json.RawMessage + func (t *A2ADispatchTool) PromptGuidelines() []string + func (t *A2ADispatchTool) PromptSnippet() string + type A2ADispatcher interface + Dispatch func(ctx context.Context, name, message string) (string, error) + List func() []AgentEntry + type AgentEntry struct + Name string + URL string + type BackgroundJob struct + Command string + ID int + PID int + StartTime time.Time + func (job *BackgroundJob) IsDone() bool + func (job *BackgroundJob) MarkDone(stdout, stderr []byte, err error) + func (job *BackgroundJob) Status() string + type BashTool struct + func NewBashTool(r *Registry) *BashTool + func NewBashToolWithJM(r *Registry, jm *JobManager) *BashTool + func (t *BashTool) Description() string + func (t *BashTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *BashTool) ExecutionTimeout(params map[string]any) (time.Duration, bool) + func (t *BashTool) GetJobManager() *JobManager + func (t *BashTool) Name() string + func (t *BashTool) Parameters() json.RawMessage + func (t *BashTool) PromptGuidelines() []string + func (t *BashTool) PromptSnippet() string + type EditTool struct + func NewEditTool(r *Registry) *EditTool + func (t *EditTool) Description() string + func (t *EditTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *EditTool) Name() string + func (t *EditTool) Parameters() json.RawMessage + func (t *EditTool) PromptGuidelines() []string + func (t *EditTool) PromptSnippet() string + type ExecutionTimeoutProvider interface + ExecutionTimeout func(params map[string]any) (time.Duration, bool) + type FileDiff struct + Added int + AddedLines []int + Deleted int + DeletedLines []int + Path string + Truncated bool + Unified string + func BuildFileDiff(path, oldContent, newContent string) *FileDiff + type FileLockManager struct + func DefaultFileLockManager() *FileLockManager + func NewFileLockManager() *FileLockManager + func (m *FileLockManager) Acquire(ctx context.Context, path, owner string) (func(), error) + type FindTool struct + func NewFindTool(r *Registry) *FindTool + func (t *FindTool) Description() string + func (t *FindTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *FindTool) Name() string + func (t *FindTool) Parameters() json.RawMessage + func (t *FindTool) PromptGuidelines() []string + func (t *FindTool) PromptSnippet() string + type GrepTool struct + func NewGrepTool(r *Registry) *GrepTool + func (t *GrepTool) Description() string + func (t *GrepTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *GrepTool) Name() string + func (t *GrepTool) Parameters() json.RawMessage + func (t *GrepTool) PromptGuidelines() []string + func (t *GrepTool) PromptSnippet() string + type JobManager struct + func NewJobManager() *JobManager + func (jm *JobManager) AddJob(cmd *exec.Cmd, command string, cancel context.CancelFunc) *BackgroundJob + func (jm *JobManager) GetJob(id int) *BackgroundJob + func (jm *JobManager) KillJob(id int) error + func (jm *JobManager) ListJobs() []*BackgroundJob + func (jm *JobManager) RemoveJob(id int) + type JobsTool struct + func NewJobsTool(r *Registry, bashTool *BashTool) *JobsTool + func (t *JobsTool) Description() string + func (t *JobsTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *JobsTool) Name() string + func (t *JobsTool) Parameters() json.RawMessage + func (t *JobsTool) PromptGuidelines() []string + func (t *JobsTool) PromptSnippet() string + type KillTool struct + func NewKillTool(r *Registry, bashTool *BashTool) *KillTool + func (t *KillTool) Description() string + func (t *KillTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *KillTool) Name() string + func (t *KillTool) Parameters() json.RawMessage + func (t *KillTool) PromptGuidelines() []string + func (t *KillTool) PromptSnippet() string + type LsTool struct + func NewLsTool(r *Registry) *LsTool + func (t *LsTool) Description() string + func (t *LsTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *LsTool) Name() string + func (t *LsTool) Parameters() json.RawMessage + func (t *LsTool) PromptGuidelines() []string + func (t *LsTool) PromptSnippet() string + type PlanStep struct + Status string + Title string + type PlanTool struct + func NewPlanTool(r *Registry) *PlanTool + func (t *PlanTool) Description() string + func (t *PlanTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *PlanTool) Name() string + func (t *PlanTool) Parameters() json.RawMessage + func (t *PlanTool) PromptGuidelines() []string + func (t *PlanTool) PromptSnippet() string + type QuestionAsker interface + AskQuestion func(ctx context.Context, question string, options []string, context string) string + type QuestionTool struct + func NewQuestionTool(r *Registry) *QuestionTool + func (t *QuestionTool) Description() string + func (t *QuestionTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *QuestionTool) Name() string + func (t *QuestionTool) Parameters() json.RawMessage + func (t *QuestionTool) PromptGuidelines() []string + func (t *QuestionTool) PromptSnippet() string + type ReadTool struct + func NewReadTool(r *Registry) *ReadTool + func (t *ReadTool) Description() string + func (t *ReadTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *ReadTool) Name() string + func (t *ReadTool) Parameters() json.RawMessage + func (t *ReadTool) PromptGuidelines() []string + func (t *ReadTool) PromptSnippet() string + type Registry struct + func NewRegistry(workDir string, sb sandbox.Sandbox) *Registry + func NewRegistryWithConfig(cfg RegistryConfig) *Registry + func (r *Registry) All() []Tool + func (r *Registry) Definitions() []provider.ToolDefinition + func (r *Registry) FileLocks() *FileLockManager + func (r *Registry) Get(name string) (Tool, bool) + func (r *Registry) GetSandbox() sandbox.Sandbox + func (r *Registry) GetWorkDir() string + func (r *Registry) ImagePolicy(mode imageproc.Mode) imageproc.Policy + func (r *Registry) JobManager() *JobManager + func (r *Registry) ModeTools(mode string) []provider.ToolDefinition + func (r *Registry) Register(t Tool) + func (r *Registry) RegisterDefaults() + func (r *Registry) RegisterDefaultsWithPlanTool(enablePlanTool bool) + func (r *Registry) RegisterFiltered(toolNames []string) + func (r *Registry) Remove(name string) + func (r *Registry) ResolvePath(path string) (string, error) + func (r *Registry) SetImageHint(h imageproc.Hint) + func (r *Registry) SetSandbox(sb sandbox.Sandbox) + func (r *Registry) ToolGuidelines(toolNames []string) []string + func (r *Registry) ToolSnippets(toolNames []string) map[string]string + type RegistryConfig struct + EnablePlanTool *bool + FileLocks *FileLockManager + ImageHint imageproc.Hint + Sandbox sandbox.Sandbox + SkillsMgr *skills.Manager + ToolFilter []string + WorkDir string + type SetTool interface + SetSandbox func(sb sandbox.Sandbox) + type SkillRefTool struct + func NewSkillRefTool(skillsMgr *skills.Manager) *SkillRefTool + func (t *SkillRefTool) Description() string + func (t *SkillRefTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *SkillRefTool) Name() string + func (t *SkillRefTool) Parameters() json.RawMessage + func (t *SkillRefTool) PromptGuidelines() []string + func (t *SkillRefTool) PromptSnippet() string + type TaskPlan struct + Note string + Steps []PlanStep + Title string + type Tool interface + Description func() string + Execute func(ctx context.Context, params map[string]any) (ToolResult, error) + Name func() string + Parameters func() json.RawMessage + PromptGuidelines func() []string + PromptSnippet func() string + type ToolResult struct + Contents []provider.ContentBlock + Diff *FileDiff + Plan *TaskPlan + Text string + func NewDiffToolResult(text string, diff *FileDiff) ToolResult + func NewImageToolResult(text, mimeType, base64Data string) ToolResult + func NewImageToolResultWithContent(text string, image provider.ImageContent) ToolResult + func NewPlanToolResult(text string, plan *TaskPlan) ToolResult + func NewTextToolResult(text string) ToolResult + type WriteTool struct + func NewWriteTool(r *Registry) *WriteTool + func (t *WriteTool) Description() string + func (t *WriteTool) Execute(ctx context.Context, params map[string]any) (ToolResult, error) + func (t *WriteTool) Name() string + func (t *WriteTool) Parameters() json.RawMessage + func (t *WriteTool) PromptGuidelines() []string + func (t *WriteTool) PromptSnippet() string