Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BashTool ¶
BashTool executes shell commands. Streams stdout+stderr via ReportToolProgress for real-time display. Final result applies tail truncation (2000 lines / 50KB).
func (*BashTool) Description ¶
func (*BashTool) Execute ¶
func (t *BashTool) Execute(ctx context.Context, args json.RawMessage) (json.RawMessage, error)
type EditTool ¶
type EditTool struct{}
EditTool performs exact string replacement in a file. Supports line ending normalization, fuzzy matching, and returns unified diff.
func (*EditTool) Description ¶
func (*EditTool) Execute ¶
func (t *EditTool) Execute(_ context.Context, args json.RawMessage) (json.RawMessage, error)
type FindTool ¶
type FindTool struct {
WorkDir string
}
FindTool searches for files matching a glob pattern. Uses fd if available, falls back to filepath.WalkDir + filepath.Match.
func (*FindTool) Description ¶
func (*FindTool) Execute ¶
func (t *FindTool) Execute(ctx context.Context, args json.RawMessage) (json.RawMessage, error)
type GrepTool ¶
type GrepTool struct {
WorkDir string
}
GrepTool searches file contents by pattern. Uses ripgrep (rg) if available, falls back to regexp + bufio.Scanner.
func (*GrepTool) Description ¶
func (*GrepTool) Execute ¶
func (t *GrepTool) Execute(ctx context.Context, args json.RawMessage) (json.RawMessage, error)
type LsTool ¶
type LsTool struct {
WorkDir string
}
LsTool lists directory contents with optional depth control.
func (*LsTool) Description ¶
func (*LsTool) Execute ¶
func (t *LsTool) Execute(ctx context.Context, args json.RawMessage) (json.RawMessage, error)
type ReadTool ¶
type ReadTool struct{}
ReadTool reads file contents with optional offset and limit. Applies head truncation (2000 lines / 50KB).
func (*ReadTool) Description ¶
func (*ReadTool) Execute ¶
func (t *ReadTool) Execute(_ context.Context, args json.RawMessage) (json.RawMessage, error)
type WriteTool ¶
type WriteTool struct{}
WriteTool writes content to a file, creating directories as needed.
func (*WriteTool) Description ¶
func (*WriteTool) Execute ¶
func (t *WriteTool) Execute(_ context.Context, args json.RawMessage) (json.RawMessage, error)