tools

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2026 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ToolDefs

func ToolDefs() string

ToolDefs возвращает описание инструментов для системного промпта

Types

type Executor

type Executor struct {
	WorkDir string
}

Executor выполняет инструменты с привязкой к рабочей директории

func New

func New(workDir string) *Executor

New создаёт Executor

func (*Executor) Dispatch

func (e *Executor) Dispatch(name string, params map[string]string) Result

Dispatch вызывает нужный инструмент по имени с параметрами

func (*Executor) DownloadFile

func (e *Executor) DownloadFile(rawURL, destPath string) Result

DownloadFile скачивает файл по URL и сохраняет в рабочую директорию

func (*Executor) ListFiles

func (e *Executor) ListFiles(subPath string) Result

ListFiles возвращает дерево файлов (рекурсивно, макс глубина 4)

func (*Executor) PatchFile

func (e *Executor) PatchFile(path, oldStr, newStr string) Result

PatchFile заменяет oldStr на newStr в файле (первое вхождение)

func (*Executor) ReadFile

func (e *Executor) ReadFile(path string) Result

ReadFile читает файл и возвращает его содержимое

func (*Executor) RunCommand

func (e *Executor) RunCommand(command string) Result

RunCommand выполняет shell-команду в рабочей директории Использует безопасный парсинг аргументов вместо sh -c где возможно

func (*Executor) WriteFile

func (e *Executor) WriteFile(path, content string) Result

WriteFile записывает содержимое в файл (создаёт директории если нужно)

type Result

type Result struct {
	Output string
	Error  string
	OK     bool
	// Extra — дополнительные данные для специальных инструментов (например ask_user)
	Extra map[string]any
}

Result — результат выполнения инструмента

func FetchPage

func FetchPage(rawURL string) Result

FetchPage скачивает страницу и извлекает читаемый текст (без HTML тегов)

func WebSearch

func WebSearch(query string, maxResults int) Result

WebSearch выполняет поиск через DuckDuckGo Instant Answer API + HTML scrape fallback

Jump to

Keyboard shortcuts

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