tools

package
v0.0.7 Latest Latest
Warning

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

Go to latest
Published: May 27, 2025 License: MIT Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrSymlink      = errors.New("file is a symlink")
	ErrBinaryFile   = errors.New("file appears to be binary")
	ErrFileTooLarge = errors.New("file exceeds maximum size of " + constants.MaxFileSizeInWords)
)

Functions

func EditFileCli added in v0.0.6

func EditFileCli() error

CLI

func EditFileMcp added in v0.0.6

func EditFileMcp(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)

MCP

func ListAppsCli

func ListAppsCli() error

CLI

func ListAppsMcp

func ListAppsMcp(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)

MCP

func ListFilesCli

func ListFilesCli() error

func ListFilesMcp

func ListFilesMcp(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)

func ReadFileCli added in v0.0.2

func ReadFileCli() error

CLI

func ReadFileMcp added in v0.0.2

func ReadFileMcp(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)

MCP

func SearchTextCli added in v0.0.7

func SearchTextCli() error

CLI

func SearchTextMcp added in v0.0.7

func SearchTextMcp(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)

MCP

func WriteFileCli added in v0.0.6

func WriteFileCli() error

CLI

func WriteFileMcp added in v0.0.6

func WriteFileMcp(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)

MCP

Types

type EditFileParams added in v0.0.6

type EditFileParams struct {
	AppName     string `json:"app_name"`
	FilePath    string `json:"file_path"`
	OldString   string `json:"old_string"`
	NewString   string `json:"new_string"`
	Occurrences int    `json:"occurrences"` // Number of occurrences to replace (0 = all)
}

EditFileParams represents the parameters for editing a file

type EditFileResult added in v0.0.6

type EditFileResult struct {
	AppName      string     `json:"app_name"`
	FilePath     string     `json:"file_path"`
	Replacements int        `json:"replacements"`
	LastModified *time.Time `json:"last_modified,omitempty"`
}

EditFileResult represents the result of editing a file

func EditFile added in v0.0.6

func EditFile(params EditFileParams) (EditFileResult, error)

EditFile performs find-and-replace operations on a file within an app directory

type FileEntry

type FileEntry struct {
	Path         string     `json:"path"`
	Name         string     `json:"name"`
	IsDirectory  bool       `json:"is_directory"`
	LastModified *time.Time `json:"last_modified,omitempty"`
	Size         *string    `json:"size,omitempty"`
	ChildCount   *int       `json:"child_count,omitempty"`
}

type ListAppsResult

type ListAppsResult struct {
	Apps      []string `json:"apps"`
	Directory string   `json:"directory"`
}

Types

func ListApps

func ListApps() (ListAppsResult, error)

ListApps lists all applications (folders)

type ListFilesResult

type ListFilesResult struct {
	AppName string      `json:"app_name"`
	AppPath string      `json:"app_path"`
	Files   []FileEntry `json:"files"`
}

func ListFiles

func ListFiles(appName string, pattern *string, includeLastModified, includeSize, includeChildCount bool) (ListFilesResult, error)

type ReadFileResult added in v0.0.2

type ReadFileResult struct {
	AppName      string     `json:"app_name"`
	FilePath     string     `json:"file_path"`
	Content      string     `json:"content"`
	LastModified *time.Time `json:"last_modified,omitempty"`
}

ReadFileResult represents the result of reading a file

func ReadFile added in v0.0.2

func ReadFile(appName, filePath string) (ReadFileResult, error)

ReadFile reads the content of a file within an app directory

type SearchMatch added in v0.0.7

type SearchMatch struct {
	FilePath   string `json:"file_path"`
	LineNumber int    `json:"line_number"`
	LineText   string `json:"line_text"`
	Match      string `json:"match"`
}

SearchMatch represents a single search match

type SearchTextOptions added in v0.0.7

type SearchTextOptions struct {
	CaseSensitive bool
	WholeWord     bool
	FilePattern   string
	MaxResults    int
	IncludeHidden bool
}

SearchTextOptions configures the search behavior

type SearchTextResult added in v0.0.7

type SearchTextResult struct {
	AppName string        `json:"app_name"`
	Pattern string        `json:"pattern"`
	Matches []SearchMatch `json:"matches"`
	Total   int           `json:"total_matches"`
}

SearchTextResult represents the result of searching for text in files

func SearchText added in v0.0.7

func SearchText(appName, pattern string, options SearchTextOptions) (SearchTextResult, error)

SearchText searches for a pattern in files within an app directory using ripgrep

type WriteFileParams added in v0.0.6

type WriteFileParams struct {
	AppName  string `json:"app_name"`
	FilePath string `json:"file_path"`
	Content  string `json:"content"`
	Mode     string `json:"mode"` // "create" or "overwrite"
}

WriteFileParams represents the parameters for writing a file

type WriteFileResult added in v0.0.6

type WriteFileResult struct {
	AppName      string     `json:"app_name"`
	FilePath     string     `json:"file_path"`
	BytesWritten int        `json:"bytes_written"`
	Created      bool       `json:"created"`
	LastModified *time.Time `json:"last_modified,omitempty"`
}

WriteFileResult represents the result of writing a file

func WriteFile added in v0.0.6

func WriteFile(params WriteFileParams) (WriteFileResult, error)

WriteFile writes content to a file within an app directory

Jump to

Keyboard shortcuts

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