tools

package
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 22, 2026 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrToolNotFound  = errors.New("tools: tool not found")
	ErrDuplicateTool = errors.New("tools: tool already registered")
)

Functions

This section is empty.

Types

type FetchURL

type FetchURL struct {
	HTTP    *http.Client
	BaseURL string
	APIKey  string
}

func NewFetchURL

func NewFetchURL(apiKey string) *FetchURL

func (*FetchURL) Description

func (t *FetchURL) Description() string

func (*FetchURL) Execute

func (t *FetchURL) Execute(_ context.Context, args json.RawMessage) (string, error)

func (*FetchURL) Name

func (t *FetchURL) Name() string

func (*FetchURL) Parameters

func (t *FetchURL) Parameters() json.RawMessage

type GitDiff

type GitDiff struct{}

func (*GitDiff) Description

func (t *GitDiff) Description() string

func (*GitDiff) Execute

func (t *GitDiff) Execute(_ context.Context, args json.RawMessage) (string, error)

func (*GitDiff) Name

func (t *GitDiff) Name() string

func (*GitDiff) Parameters

func (t *GitDiff) Parameters() json.RawMessage

type GitLog

type GitLog struct{}

func (*GitLog) Description

func (t *GitLog) Description() string

func (*GitLog) Execute

func (t *GitLog) Execute(_ context.Context, args json.RawMessage) (string, error)

func (*GitLog) Name

func (t *GitLog) Name() string

func (*GitLog) Parameters

func (t *GitLog) Parameters() json.RawMessage

type Glob

type Glob struct{}

func (*Glob) Description

func (t *Glob) Description() string

func (*Glob) Execute

func (t *Glob) Execute(_ context.Context, args json.RawMessage) (string, error)

func (*Glob) Name

func (t *Glob) Name() string

func (*Glob) Parameters

func (t *Glob) Parameters() json.RawMessage

type Grep

type Grep struct{}

func (*Grep) Description

func (t *Grep) Description() string

func (*Grep) Execute

func (t *Grep) Execute(_ context.Context, args json.RawMessage) (string, error)

func (*Grep) Name

func (t *Grep) Name() string

func (*Grep) Parameters

func (t *Grep) Parameters() json.RawMessage

type ListFiles

type ListFiles struct{}

func (*ListFiles) Description

func (t *ListFiles) Description() string

func (*ListFiles) Execute

func (t *ListFiles) Execute(_ context.Context, args json.RawMessage) (string, error)

func (*ListFiles) Name

func (t *ListFiles) Name() string

func (*ListFiles) Parameters

func (t *ListFiles) Parameters() json.RawMessage

type ReadFile

type ReadFile struct{}

func (*ReadFile) Description

func (t *ReadFile) Description() string

func (*ReadFile) Execute

func (t *ReadFile) Execute(_ context.Context, args json.RawMessage) (string, error)

func (*ReadFile) Name

func (t *ReadFile) Name() string

func (*ReadFile) Parameters

func (t *ReadFile) Parameters() json.RawMessage

type Registry

type Registry struct {
	// contains filtered or unexported fields
}

func NewRegistry

func NewRegistry() *Registry

func (*Registry) Definitions

func (r *Registry) Definitions() []provider.ToolDefinition

func (*Registry) Get

func (r *Registry) Get(name string) (Tool, error)

func (*Registry) Names

func (r *Registry) Names() []string

func (*Registry) Register

func (r *Registry) Register(tool Tool) error

type Tool

type Tool interface {
	Name() string
	Description() string
	Parameters() json.RawMessage
	Execute(ctx context.Context, args json.RawMessage) (string, error)
}

func NewGitDiff

func NewGitDiff() Tool

func NewGitLog

func NewGitLog() Tool

func NewGlob

func NewGlob() Tool

func NewGrep

func NewGrep() Tool

func NewListFiles

func NewListFiles() Tool

func NewReadFile

func NewReadFile() Tool

type WebSearch

type WebSearch struct {
	HTTP    *http.Client
	BaseURL string
	APIKey  string
}

func NewWebSearch

func NewWebSearch(apiKey string) *WebSearch

func (*WebSearch) Description

func (t *WebSearch) Description() string

func (*WebSearch) Execute

func (t *WebSearch) Execute(_ context.Context, args json.RawMessage) (string, error)

func (*WebSearch) Name

func (t *WebSearch) Name() string

func (*WebSearch) Parameters

func (t *WebSearch) Parameters() json.RawMessage

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL