cli

package
v1.3.0 Latest Latest
Warning

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

Go to latest
Published: Sep 23, 2025 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetDefaultConfigFile

func GetDefaultConfigFile() string

GetDefaultConfigFile returns the default plugin config file

func GetDefaultPluginDir

func GetDefaultPluginDir() string

GetDefaultPluginDir returns the default plugin directory

Types

type PluginConfig

type PluginConfig struct {
	Plugins map[string]*PluginInfo `json:"plugins"`
}

PluginConfig represents the plugin configuration file

type PluginInfo

type PluginInfo struct {
	Name        string            `json:"name"`
	Version     string            `json:"version"`
	Type        string            `json:"type"`
	Path        string            `json:"path"`
	Enabled     bool              `json:"enabled"`
	Config      map[string]string `json:"config,omitempty"`
	InstallTime time.Time         `json:"install_time"`
	Source      string            `json:"source,omitempty"`
}

PluginInfo represents installed plugin information

type PluginRegistry

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

PluginRegistry manages CLI plugin operations

func NewPluginRegistry

func NewPluginRegistry(pluginDir, configFile string) *PluginRegistry

NewPluginRegistry creates a new CLI plugin registry

func (*PluginRegistry) Configure

func (pr *PluginRegistry) Configure(ctx context.Context, name, key, value string) error

Configure sets configuration values for a plugin

func (*PluginRegistry) Disable

func (pr *PluginRegistry) Disable(ctx context.Context, name string) error

Disable disables a plugin

func (*PluginRegistry) Enable

func (pr *PluginRegistry) Enable(ctx context.Context, name string) error

Enable enables a plugin

func (*PluginRegistry) GetEnabledPlugins

func (pr *PluginRegistry) GetEnabledPlugins(ctx context.Context) ([]*PluginInfo, error)

GetEnabledPlugins returns all enabled plugins

func (*PluginRegistry) Install

func (pr *PluginRegistry) Install(ctx context.Context, source, name string) error

Install installs a plugin from a source (URL, local path, or package name)

func (*PluginRegistry) List

func (pr *PluginRegistry) List(ctx context.Context) ([]*PluginInfo, error)

List returns all installed plugins

func (*PluginRegistry) LoadPlugins

func (pr *PluginRegistry) LoadPlugins(ctx context.Context, pluginManager *plugin.PluginManager) error

LoadPlugins loads all enabled plugins into the plugin manager

func (*PluginRegistry) Remove

func (pr *PluginRegistry) Remove(ctx context.Context, name string) error

Remove uninstalls a plugin

Jump to

Keyboard shortcuts

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