tools

package
v0.1.3 Latest Latest
Warning

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

Go to latest
Published: Aug 2, 2026 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AskUserArgs

type AskUserArgs struct {
	Question string         `json:"question"`
	Options  []string       `json:"options"`
	Fields   []AskUserField `json:"fields"`
}

type AskUserCallback

type AskUserCallback func(ctx context.Context, args AskUserArgs) (map[string]string, error)

type AskUserField

type AskUserField struct {
	Name    string `json:"name"`
	Label   string `json:"label"`
	Secret  bool   `json:"secret"`
	Default string `json:"default"`
}

type AskUserTool

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

func NewAskUserTool

func NewAskUserTool(r *Registry, cb AskUserCallback) *AskUserTool

func (*AskUserTool) Description

func (t *AskUserTool) Description() string

func (*AskUserTool) Execute

func (t *AskUserTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*AskUserTool) Name

func (t *AskUserTool) Name() string

func (*AskUserTool) Schema

func (t *AskUserTool) Schema() json.RawMessage

type ComposeWriteTool

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

func NewComposeWriteTool

func NewComposeWriteTool(r *Registry) *ComposeWriteTool

func (*ComposeWriteTool) Description

func (t *ComposeWriteTool) Description() string

func (*ComposeWriteTool) Execute

func (t *ComposeWriteTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ComposeWriteTool) Name

func (t *ComposeWriteTool) Name() string

func (*ComposeWriteTool) Schema

func (t *ComposeWriteTool) Schema() json.RawMessage

type ContainerExecTool

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

func NewContainerExecTool

func NewContainerExecTool(r *Registry) *ContainerExecTool

func (*ContainerExecTool) Description

func (t *ContainerExecTool) Description() string

func (*ContainerExecTool) Execute

func (t *ContainerExecTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ContainerExecTool) Name

func (t *ContainerExecTool) Name() string

func (*ContainerExecTool) Schema

func (t *ContainerExecTool) Schema() json.RawMessage

type ContainerInspectTool

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

func NewContainerInspectTool

func NewContainerInspectTool(r *Registry) *ContainerInspectTool

func (*ContainerInspectTool) Description

func (t *ContainerInspectTool) Description() string

func (*ContainerInspectTool) Execute

func (t *ContainerInspectTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ContainerInspectTool) Name

func (t *ContainerInspectTool) Name() string

func (*ContainerInspectTool) Schema

func (t *ContainerInspectTool) Schema() json.RawMessage

type ContainerListTool

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

func NewContainerListTool

func NewContainerListTool(r *Registry) *ContainerListTool

func (*ContainerListTool) Description

func (t *ContainerListTool) Description() string

func (*ContainerListTool) Execute

func (t *ContainerListTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ContainerListTool) Name

func (t *ContainerListTool) Name() string

func (*ContainerListTool) Schema

func (t *ContainerListTool) Schema() json.RawMessage

type ContainerLogsTool

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

func NewContainerLogsTool

func NewContainerLogsTool(r *Registry) *ContainerLogsTool

func (*ContainerLogsTool) Description

func (t *ContainerLogsTool) Description() string

func (*ContainerLogsTool) Execute

func (t *ContainerLogsTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ContainerLogsTool) Name

func (t *ContainerLogsTool) Name() string

func (*ContainerLogsTool) Schema

func (t *ContainerLogsTool) Schema() json.RawMessage

type ContainerRemoveTool

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

func NewContainerRemoveTool

func NewContainerRemoveTool(r *Registry) *ContainerRemoveTool

func (*ContainerRemoveTool) Description

func (t *ContainerRemoveTool) Description() string

func (*ContainerRemoveTool) Execute

func (t *ContainerRemoveTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ContainerRemoveTool) Name

func (t *ContainerRemoveTool) Name() string

func (*ContainerRemoveTool) Schema

func (t *ContainerRemoveTool) Schema() json.RawMessage

type ContainerRunTool

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

func NewContainerRunTool

func NewContainerRunTool(r *Registry) *ContainerRunTool

func (*ContainerRunTool) Description

func (t *ContainerRunTool) Description() string

func (*ContainerRunTool) Execute

func (t *ContainerRunTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ContainerRunTool) Name

func (t *ContainerRunTool) Name() string

func (*ContainerRunTool) Schema

func (t *ContainerRunTool) Schema() json.RawMessage

type ContainerStopTool

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

func NewContainerStopTool

func NewContainerStopTool(r *Registry) *ContainerStopTool

func (*ContainerStopTool) Description

func (t *ContainerStopTool) Description() string

func (*ContainerStopTool) Execute

func (t *ContainerStopTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ContainerStopTool) Name

func (t *ContainerStopTool) Name() string

func (*ContainerStopTool) Schema

func (t *ContainerStopTool) Schema() json.RawMessage

type DockerCheckTool

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

func NewDockerCheckTool

func NewDockerCheckTool(r *Registry) *DockerCheckTool

func (*DockerCheckTool) Description

func (t *DockerCheckTool) Description() string

func (*DockerCheckTool) Execute

func (t *DockerCheckTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*DockerCheckTool) Name

func (t *DockerCheckTool) Name() string

func (*DockerCheckTool) Schema

func (t *DockerCheckTool) Schema() json.RawMessage

type DockerfileBuildTool

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

func NewDockerfileBuildTool

func NewDockerfileBuildTool(r *Registry) *DockerfileBuildTool

func (*DockerfileBuildTool) Description

func (t *DockerfileBuildTool) Description() string

func (*DockerfileBuildTool) Execute

func (t *DockerfileBuildTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*DockerfileBuildTool) Name

func (t *DockerfileBuildTool) Name() string

func (*DockerfileBuildTool) Schema

func (t *DockerfileBuildTool) Schema() json.RawMessage

type DockerfileWriteTool

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

func NewDockerfileWriteTool

func NewDockerfileWriteTool(r *Registry) *DockerfileWriteTool

func (*DockerfileWriteTool) Description

func (t *DockerfileWriteTool) Description() string

func (*DockerfileWriteTool) Execute

func (t *DockerfileWriteTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*DockerfileWriteTool) Name

func (t *DockerfileWriteTool) Name() string

func (*DockerfileWriteTool) Schema

func (t *DockerfileWriteTool) Schema() json.RawMessage

type ImageListTool

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

func NewImageListTool

func NewImageListTool(r *Registry) *ImageListTool

func (*ImageListTool) Description

func (t *ImageListTool) Description() string

func (*ImageListTool) Execute

func (t *ImageListTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ImageListTool) Name

func (t *ImageListTool) Name() string

func (*ImageListTool) Schema

func (t *ImageListTool) Schema() json.RawMessage

type ImagePullTool

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

func NewImagePullTool

func NewImagePullTool(r *Registry) *ImagePullTool

func (*ImagePullTool) Description

func (t *ImagePullTool) Description() string

func (*ImagePullTool) Execute

func (t *ImagePullTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ImagePullTool) Name

func (t *ImagePullTool) Name() string

func (*ImagePullTool) Schema

func (t *ImagePullTool) Schema() json.RawMessage

type ImageRemoveTool

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

func NewImageRemoveTool

func NewImageRemoveTool(r *Registry) *ImageRemoveTool

func (*ImageRemoveTool) Description

func (t *ImageRemoveTool) Description() string

func (*ImageRemoveTool) Execute

func (t *ImageRemoveTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*ImageRemoveTool) Name

func (t *ImageRemoveTool) Name() string

func (*ImageRemoveTool) Schema

func (t *ImageRemoveTool) Schema() json.RawMessage

type NetworkCreateTool

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

func NewNetworkCreateTool

func NewNetworkCreateTool(r *Registry) *NetworkCreateTool

func (*NetworkCreateTool) Description

func (t *NetworkCreateTool) Description() string

func (*NetworkCreateTool) Execute

func (t *NetworkCreateTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*NetworkCreateTool) Name

func (t *NetworkCreateTool) Name() string

func (*NetworkCreateTool) Schema

func (t *NetworkCreateTool) Schema() json.RawMessage

type NetworkListTool

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

func NewNetworkListTool

func NewNetworkListTool(r *Registry) *NetworkListTool

func (*NetworkListTool) Description

func (t *NetworkListTool) Description() string

func (*NetworkListTool) Execute

func (t *NetworkListTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*NetworkListTool) Name

func (t *NetworkListTool) Name() string

func (*NetworkListTool) Schema

func (t *NetworkListTool) Schema() json.RawMessage

type Registry

type Registry struct {
	Docker  *docker.Client
	Program *tea.Program
	Agent   interface{}
	// contains filtered or unexported fields
}

func NewRegistry

func NewRegistry(dockerClient *docker.Client) *Registry

func (*Registry) Dispatch

func (r *Registry) Dispatch(ctx context.Context, name string, args json.RawMessage) (string, error)

func (*Registry) Register

func (r *Registry) Register(t Tool)

func (*Registry) Schemas

func (r *Registry) Schemas() []openai.ChatCompletionToolParam

type Tool

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

type VolumeListTool

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

func NewVolumeListTool

func NewVolumeListTool(r *Registry) *VolumeListTool

func (*VolumeListTool) Description

func (t *VolumeListTool) Description() string

func (*VolumeListTool) Execute

func (t *VolumeListTool) Execute(ctx context.Context, args json.RawMessage) (string, error)

func (*VolumeListTool) Name

func (t *VolumeListTool) Name() string

func (*VolumeListTool) Schema

func (t *VolumeListTool) Schema() json.RawMessage

Jump to

Keyboard shortcuts

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