Versions in this module Expand all Collapse all v1 v1.23.14 Apr 4, 2026 v1.23.13 Mar 26, 2026 Changes in this version + var ErrCacheExpired = errors.New("cache expired") + var ErrCacheNotFound = errors.New("cache not found") + var ErrExtensionInstalled = errors.New("extension already installed") + var ErrExtensionNotFound = errors.New("extension not found") + var ErrInstalledExtensionNotFound = errors.New("extension not found") + var ErrRegistryExtensionNotFound = errors.New("extension not found in registry") + var ErrSourceExists = errors.New("extension source already exists") + var ErrSourceNotFound = errors.New("extension source not found") + var ErrSourceTypeInvalid = errors.New("invalid extension source type") + var ValidCapabilities = []CapabilityType + var ValidPlatforms = []string + func CompileSchema(schema *jsonschema.Schema) (*jsonschemav6.Schema, error) + func FormatUpdateWarning(result *UpdateCheckResult) *ux.WarningMessage + func RecordUpdateWarningShown(extension *Extension) + func ResolveCommandFlags(metadata *ExtensionCommandMetadata, args []string) []string + func ResolveCommandPath(metadata *ExtensionCommandMetadata, args []string) []string + func ValidateAgainstSchema(schema *jsonschema.Schema, data any) error + func VersionIsCompatible(extVersion *ExtensionVersion, azdVersion *semver.Version) bool + func WithClaimsContext(ctx context.Context, claims *ExtensionClaims) context.Context + type Argument struct + Description string + Name string + Required bool + ValidValues []string + Variadic bool + type CapabilityType string + const CustomCommandCapability + const FrameworkServiceProviderCapability + const LifecycleEventsCapability + const McpServerCapability + const MetadataCapability + const ServiceTargetProviderCapability + type Command struct + Aliases []string + Args []Argument + Deprecated string + Examples []CommandExample + Flags []Flag + Hidden bool + Long string + Name []string + Short string + Subcommands []Command + Usage string + type CommandExample struct + Command string + Description string + type ConfigurationMetadata struct + EnvironmentVariables []EnvironmentVariable + Global *jsonschema.Schema + Project *jsonschema.Schema + Service *jsonschema.Schema + type EnvironmentVariable struct + Default string + Description string + Example string + Name string + type Extension struct + Capabilities []CapabilityType + Description string + DisplayName string + Id string + LastUpdateWarning string + McpConfig *McpConfig + Namespace string + Path string + Providers []Provider + Source string + Usage string + Version string + func (e *Extension) Fail(err error) + func (e *Extension) GetReportedError() error + func (e *Extension) HasCapability(capability ...CapabilityType) bool + func (e *Extension) Initialize() + func (e *Extension) SetReportedError(err error) + func (e *Extension) StdErr() *output.DynamicMultiWriter + func (e *Extension) StdIn() io.Reader + func (e *Extension) StdOut() *output.DynamicMultiWriter + func (e *Extension) WaitUntilReady(ctx context.Context) error + type ExtensionArtifact struct + AdditionalMetadata map[string]any + Checksum ExtensionChecksum + URL string + func (c *ExtensionArtifact) UnmarshalJSON(data []byte) error + func (c ExtensionArtifact) MarshalJSON() ([]byte, error) + type ExtensionChecksum struct + Algorithm string + Value string + type ExtensionClaims struct + Capabilities []CapabilityType + func GetClaimsFromContext(ctx context.Context) (*ExtensionClaims, error) + type ExtensionCommandMetadata struct + Commands []Command + Configuration *ConfigurationMetadata + ID string + SchemaVersion string + type ExtensionDependency struct + Id string + Version string + type ExtensionExample struct + Description string + Name string + Usage string + type ExtensionMetadata struct + Description string + DisplayName string + Id string + Namespace string + Platforms map[string]map[string]any + Source string + Tags []string + Versions []ExtensionVersion + Website string + type ExtensionRunError struct + Err error + ExtensionId string + func (e *ExtensionRunError) Error() string + func (e *ExtensionRunError) Unwrap() error + type ExtensionValidationResult struct + Capabilities []CapabilityType + DisplayName string + Id string + Issues []ValidationIssue + LatestVersion string + Platforms []string + Valid bool + type ExtensionVersion struct + Artifacts map[string]ExtensionArtifact + Capabilities []CapabilityType + Dependencies []ExtensionDependency + EntryPoint string + Examples []ExtensionExample + McpConfig *McpConfig + Providers []Provider + RequiredAzdVersion string + Usage string + Version string + func LatestVersion(versions []ExtensionVersion) *ExtensionVersion + type FilterOptions struct + Capability CapabilityType + Id string + Namespace string + Provider string + Source string + Tags []string + Version string + type Flag struct + Default any + Deprecated string + Description string + Hidden bool + Name string + Required bool + Shorthand string + Type string + ValidValues []string + type InvokeOptions struct + Args []string + Cwd string + Debug bool + Env []string + Environment string + Interactive bool + NoPrompt bool + StdErr io.Writer + StdIn io.Reader + StdOut io.Writer + type Manager struct + func NewManager(configManager config.UserConfigManager, sourceManager *SourceManager, ...) (*Manager, error) + func (m *Manager) DeleteMetadata(extensionId string) error + func (m *Manager) FindExtensions(ctx context.Context, options *FilterOptions) ([]*ExtensionMetadata, error) + func (m *Manager) GetInstalled(options FilterOptions) (*Extension, error) + func (m *Manager) HasMetadataCapability(extensionId string) bool + func (m *Manager) Install(ctx context.Context, extension *ExtensionMetadata, versionPreference string) (extVersion *ExtensionVersion, err error) + func (m *Manager) ListInstalled() (map[string]*Extension, error) + func (m *Manager) LoadMetadata(extensionId string) (*ExtensionCommandMetadata, error) + func (m *Manager) MetadataExists(extensionId string) bool + func (m *Manager) Uninstall(id string) error + func (m *Manager) UpdateInstalled(extension *Extension) error + func (m *Manager) Upgrade(ctx context.Context, extension *ExtensionMetadata, versionPreference string) (*ExtensionVersion, error) + type McpConfig struct + Server McpServerConfig + type McpServerConfig struct + Args []string + Env []string + type Provider struct + Description string + Name string + Type ProviderType + type ProviderType string + const ServiceTargetProviderType + type Registry struct + Extensions []*ExtensionMetadata + type RegistryCache struct + ExpiresOn string + Extensions []*ExtensionMetadata + type RegistryCacheManager struct + func NewRegistryCacheManager() (*RegistryCacheManager, error) + func (m *RegistryCacheManager) Get(ctx context.Context, sourceName string) (*RegistryCache, error) + func (m *RegistryCacheManager) GetCacheDir() string + func (m *RegistryCacheManager) GetExtensionLatestVersion(ctx context.Context, sourceName string, extensionId string) (string, error) + func (m *RegistryCacheManager) IsExpiredOrMissing(ctx context.Context, sourceName string) bool + func (m *RegistryCacheManager) Set(ctx context.Context, sourceName string, extensions []*ExtensionMetadata) error + type RegistryValidationResult struct + Extensions []ExtensionValidationResult + Valid bool + func ValidateExtensions(exts []*ExtensionMetadata, strict bool) *RegistryValidationResult + type Runner struct + func NewRunner(commandRunner exec.CommandRunner) *Runner + func (r *Runner) Invoke(ctx context.Context, extension *Extension, options *InvokeOptions) (*exec.RunResult, error) + type Source interface + GetExtension func(ctx context.Context, extensionId string) (*ExtensionMetadata, error) + ListExtensions func(ctx context.Context) ([]*ExtensionMetadata, error) + Name func() string + type SourceConfig struct + Location string + Name string + Type SourceKind + type SourceKind string + const SourceKindFile + const SourceKindUrl + type SourceManager struct + func NewSourceManager(serviceLocator ioc.ServiceLocator, configManager config.UserConfigManager, ...) *SourceManager + func (sm *SourceManager) Add(ctx context.Context, name string, source *SourceConfig) error + func (sm *SourceManager) CreateSource(ctx context.Context, config *SourceConfig) (Source, error) + func (sm *SourceManager) Get(ctx context.Context, name string) (*SourceConfig, error) + func (sm *SourceManager) List(ctx context.Context) ([]*SourceConfig, error) + func (sm *SourceManager) Remove(ctx context.Context, name string) error + type UpdateCheckResult struct + ExtensionId string + ExtensionName string + HasUpdate bool + InstalledVersion string + LatestVersion string + type UpdateChecker struct + func NewUpdateChecker(cacheManager *RegistryCacheManager) *UpdateChecker + func (c *UpdateChecker) CheckForUpdate(ctx context.Context, extension *Extension) (*UpdateCheckResult, error) + func (c *UpdateChecker) ShouldShowWarning(extension *Extension) bool + type ValidationIssue struct + Message string + Severity ValidationSeverity + type ValidationSeverity string + const ValidationError + const ValidationWarning + type VersionCompatibilityResult struct + Compatible []ExtensionVersion + HasNewerIncompatible bool + LatestCompatible *ExtensionVersion + LatestOverall *ExtensionVersion + func FilterCompatibleVersions(versions []ExtensionVersion, azdVersion *semver.Version) *VersionCompatibilityResult