Versions in this module Expand all Collapse all v0 v0.1.0 Jul 14, 2026 Changes in this version + const DisabledMarker + const LifecycleDefaultTimeout + func DataDir(workspace string, id string) string + func DataDirForManifest(manifest Manifest) string + func DataRoot(workspace string) string + func Disabled(dir string) bool + func LifecycleCommands(manifest Manifest, phase string) ([]string, bool) + func LoadMCPServers(workspace string) (map[string]config.MCPServerConfig, error) + func LoadMCPServersFromManifests(manifests []Manifest) map[string]config.MCPServerConfig + func NormalizeLifecyclePhase(phase string) (string, error) + func PluginMCPServerName(pluginID string, serverName string) string + func Remove(workspace, id string) error + func ResolveContentPath(root string, value string) (string, error) + func Root(workspace string) string + func UnsupportedLifecyclePhaseError(phase string) error + func ValidToolPermission(permission string) bool + func VerifyMarketplace(index MarketplaceIndex, publicKey string) error + type HookConfigFile struct + Config config.HookConfig + Path string + PluginID string + func LoadHookConfigs(workspace string) ([]HookConfigFile, error) + func LoadHookConfigsFromManifests(manifests []Manifest) ([]HookConfigFile, error) + type LifecycleCommandResult struct + Command string + DurationMS int64 + Error string + ExitCode int + Index int + Status string + Stderr string + StderrTruncated bool + Stdout string + StdoutTruncated bool + TimedOut bool + WorkingDir string + type LifecycleConfig struct + Init []string + Shutdown []string + func (l LifecycleConfig) Empty() bool + type LifecycleRunResult struct + CommandCount int + Commands []LifecycleCommandResult + Message string + Phase string + PluginID string + Status string + func RunLifecycle(ctx context.Context, manifest Manifest, phase string, timeout time.Duration) LifecycleRunResult + type Manifest struct + Agents []string + Commands []string + DataPath string + Description string + Enabled bool + Hooks []string + ID string + Lifecycle LifecycleConfig + MCPServers map[string]config.MCPServerConfig + Name string + Path string + Root string + Session bool + Skills []string + Tools []ToolManifest + Version string + func Disable(workspace, id string) (Manifest, error) + func Enable(workspace, id string) (Manifest, error) + func Install(workspace, source string) (Manifest, error) + func Load(workspace string) ([]Manifest, error) + func LoadManifest(dir string) (Manifest, error) + func LoadWithDirs(workspace string, pluginDirs []string) ([]Manifest, error) + type MarketplaceIndex struct + Name string + Plugins []RemotePlugin + Signature string + SignatureValid bool + Source string + func FetchMarketplace(ctx context.Context, indexURL, publicKey string) (MarketplaceIndex, error) + func (index MarketplaceIndex) Find(id string) (RemotePlugin, bool) + type MarketplaceSource struct + PublicKey string + URL string + type MarketplaceUpdate struct + CurrentVersion string + ID string + LatestVersion string + MarketplaceURL string + SHA256 string + SignatureValid bool + URL string + UpdateAvailable bool + func CheckUpdates(ctx context.Context, workspace string, sources []MarketplaceSource) ([]MarketplaceUpdate, error) + type RemoteInstallResult struct + ChecksumValid bool + ID string + Manifest Manifest + MarketplaceURL string + SHA256 string + SignatureValid bool + URL string + Version string + func InstallRemote(ctx context.Context, workspace, indexURL, id, publicKey string) (RemoteInstallResult, error) + func InstallRemoteFromIndex(ctx context.Context, workspace string, index MarketplaceIndex, id string) (RemoteInstallResult, error) + type RemotePlugin struct + Description string + ID string + Name string + SHA256 string + URL string + Version string + type RemoteUpdateResult struct + BackupPath string + ChecksumValid bool + ID string + Manifest Manifest + MarketplaceURL string + PreviousVersion string + SHA256 string + SignatureValid bool + URL string + Updated bool + Version string + func UpdateRemote(ctx context.Context, workspace string, sources []MarketplaceSource, id string) (RemoteUpdateResult, error) + func UpdateRemoteFromIndex(ctx context.Context, workspace string, index MarketplaceIndex, ...) (RemoteUpdateResult, error) + type ToolManifest struct + Args []string + Command string + Description string + InputSchema map[string]any + Name string + Permission string + type ValidationMessage struct + Code string + Message string + Path string + type ValidationResult struct + Errors []ValidationMessage + FilePath string + FileType string + Manifest *Manifest + Success bool + Warnings []ValidationMessage + func Validate(source string) (ValidationResult, error)