tools

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Apr 10, 2026 License: GPL-3.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Executor

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

Executor executes tools from the registry.

func NewExecutor

func NewExecutor(opts *config.Options, reg *Registry) *Executor

NewExecutor creates a tool executor.

func (*Executor) ApplyPermissionUpdates

func (e *Executor) ApplyPermissionUpdates(updates []*permission.Update)

ApplyPermissionUpdates updates in-memory permission policy state.

func (*Executor) Execute

func (e *Executor) Execute(ctx context.Context, name string, input map[string]any) (string, error)

Execute executes one tool call and returns a text payload.

func (*Executor) ExecuteWithSuggestions

func (e *Executor) ExecuteWithSuggestions(
	ctx context.Context,
	name string,
	input map[string]any,
	suggestions []*permission.Update,
) (string, error)

ExecuteWithSuggestions executes one tool call and provides permission suggestions to callback.

func (*Executor) SetMode

func (e *Executor) SetMode(mode permission.Mode)

SetMode updates the active permission mode for subsequent tool evaluations.

type Registry

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

Registry contains tool metadata for model exposure and execution.

func NewRegistry

func NewRegistry(opts *config.Options) *Registry

NewRegistry builds a registry from options.

func (*Registry) Get

func (r *Registry) Get(name string) (ToolRef, bool)

Get resolves a tool reference by public name.

func (*Registry) OpenAITools

func (r *Registry) OpenAITools() []map[string]any

OpenAITools returns OpenAI-compatible tool definitions.

func (*Registry) ServerStatuses

func (r *Registry) ServerStatuses() map[string]mcp.ServerStatus

ServerStatuses returns the current MCP server discovery status by server name.

type ToolRef

type ToolRef struct {
	Server string
	Tool   string
	Desc   string
	Schema map[string]any
	Kind   string // "sdk" or "external"
}

ToolRef maps a public tool name to backing MCP server/tool.

Jump to

Keyboard shortcuts

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