aitools

package
v1.7.5 Latest Latest
Warning

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

Go to latest
Published: Mar 31, 2026 License: GPL-3.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewExecutor

func NewExecutor(backend Backend, conversation *clientpb.AIConversation) serverai.AgenticToolExecutor

NewExecutor returns the Sliver-backed tool executor used by the AI agent loop.

Types

type Backend

type Backend interface {
	GetSessions(context.Context, *commonpb.Empty) (*clientpb.Sessions, error)
	GetBeacons(context.Context, *commonpb.Empty) (*clientpb.Beacons, error)
	Ls(context.Context, *sliverpb.LsReq) (*sliverpb.Ls, error)
	Mv(context.Context, *sliverpb.MvReq) (*sliverpb.Mv, error)
	Cp(context.Context, *sliverpb.CpReq) (*sliverpb.Cp, error)
	Rm(context.Context, *sliverpb.RmReq) (*sliverpb.Rm, error)
	Mkdir(context.Context, *sliverpb.MkdirReq) (*sliverpb.Mkdir, error)
	Cd(context.Context, *sliverpb.CdReq) (*sliverpb.Pwd, error)
	Download(context.Context, *sliverpb.DownloadReq) (*sliverpb.Download, error)
	Pwd(context.Context, *sliverpb.PwdReq) (*sliverpb.Pwd, error)
	Chmod(context.Context, *sliverpb.ChmodReq) (*sliverpb.Chmod, error)
	Chown(context.Context, *sliverpb.ChownReq) (*sliverpb.Chown, error)
	Chtimes(context.Context, *sliverpb.ChtimesReq) (*sliverpb.Chtimes, error)
	Mount(context.Context, *sliverpb.MountReq) (*sliverpb.Mount, error)
	Ifconfig(context.Context, *sliverpb.IfconfigReq) (*sliverpb.Ifconfig, error)
	Netstat(context.Context, *sliverpb.NetstatReq) (*sliverpb.Netstat, error)
	Ps(context.Context, *sliverpb.PsReq) (*sliverpb.Ps, error)
	GetEnv(context.Context, *sliverpb.EnvReq) (*sliverpb.EnvInfo, error)
	Ping(context.Context, *sliverpb.Ping) (*sliverpb.Ping, error)
	Screenshot(context.Context, *sliverpb.ScreenshotReq) (*sliverpb.Screenshot, error)
	Execute(context.Context, *sliverpb.ExecuteReq) (*sliverpb.Execute, error)
	ExecuteWindows(context.Context, *sliverpb.ExecuteWindowsReq) (*sliverpb.Execute, error)
	ExecuteAssembly(context.Context, *sliverpb.ExecuteAssemblyReq) (*sliverpb.ExecuteAssembly, error)
	Sideload(context.Context, *sliverpb.SideloadReq) (*sliverpb.Sideload, error)
	SpawnDll(context.Context, *sliverpb.InvokeSpawnDllReq) (*sliverpb.SpawnDll, error)
	RegisterExtension(context.Context, *sliverpb.RegisterExtensionReq) (*sliverpb.RegisterExtension, error)
	ListExtensions(context.Context, *sliverpb.ListExtensionsReq) (*sliverpb.ListExtensions, error)
	CallExtension(context.Context, *sliverpb.CallExtensionReq) (*sliverpb.CallExtension, error)
}

Backend captures the RPC methods the AI tool executor needs.

Jump to

Keyboard shortcuts

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