Versions in this module Expand all Collapse all v0 v0.0.26 Jun 23, 2026 v0.0.25 Jun 23, 2026 Changes in this version + const AnnotationPluginComponents + const AnnotationPluginDescription + const AnnotationPluginFiles + const AnnotationPluginLicense + const AnnotationPluginName + const AnnotationPluginRequires + const AnnotationPluginVersion + const ArtifactTypePlugin + const LabelPluginComponents + const LabelPluginDescription + const LabelPluginFiles + const LabelPluginLicense + const LabelPluginName + const LabelPluginRequires + const LabelPluginVersion + const ManifestFileName + var ErrInvalidPluginDir = errors.New("invalid plugin directory") + var ErrInvalidPluginFile = errors.New("invalid plugin file") + var ErrInvalidPluginManifest = errors.New("invalid plugin manifest") + var ErrPluginManifestMissing = errors.New(".claude-plugin/plugin.json missing") + var ErrPluginTooLarge = errors.New("plugin directory too large") + var ErrTooManyFiles = errors.New("too many files in plugin directory") + func DefaultStoreRoot() string + func ParseRequiresAnnotation(annotations map[string]string) []string + func StoreRoot(dataHome string) string + type ComponentInventory map[string]int + func ParseComponentsAnnotation(annotations map[string]string) ComponentInventory + type PackageOptions struct + Epoch time.Time + Platforms []ocispec.Platform + func DefaultPackageOptions() PackageOptions + type PackageResult struct + Config *PluginConfig + ConfigDigest digest.Digest + IndexDigest digest.Digest + LayerDigest digest.Digest + ManifestDigest digest.Digest + Platforms []ocispec.Platform + type Packager struct + func NewPackager(store *Store) *Packager + func (p *Packager) Package(ctx context.Context, pluginDir string, opts PackageOptions) (*PackageResult, error) + type PluginConfig struct + Components ComponentInventory + Description string + Files []string + License string + Name string + Requires []string + Version string + func PluginConfigFromImageConfig(imgConfig *ocispec.Image) (*PluginConfig, error) + type PluginPackager interface + Package func(ctx context.Context, pluginDir string, opts PackageOptions) (*PackageResult, error) + type Registry struct + func NewRegistry(opts ...RegistryOption) (*Registry, error) + func (r *Registry) Pull(ctx context.Context, store *Store, ref string) (digest.Digest, error) + func (r *Registry) Push(ctx context.Context, store *Store, artifactDigest digest.Digest, ref string) error + type RegistryClient interface + Pull func(ctx context.Context, store *Store, ref string) (digest.Digest, error) + Push func(ctx context.Context, store *Store, manifestDigest digest.Digest, ref string) error + type RegistryOption func(*Registry) + func WithCredentialStore(store credentials.Store) RegistryOption + func WithPlainHTTP(enabled bool) RegistryOption + type Store struct + func NewStore(root string) (*Store, error) + func (s *Store) DeleteBuild(ctx context.Context, tag string) error + func (s *Store) DeleteTag(ctx context.Context, tag string) error + func (s *Store) GetBlob(ctx context.Context, d digest.Digest) ([]byte, error) + func (s *Store) GetIndex(ctx context.Context, d digest.Digest) (*ocispec.Index, error) + func (s *Store) GetManifest(ctx context.Context, d digest.Digest) ([]byte, error) + func (s *Store) IsIndex(ctx context.Context, d digest.Digest) (bool, error) + func (s *Store) ListTags(ctx context.Context) ([]string, error) + func (s *Store) PutBlob(ctx context.Context, content []byte) (digest.Digest, error) + func (s *Store) PutManifest(ctx context.Context, content []byte) (digest.Digest, error) + func (s *Store) Resolve(ctx context.Context, tag string) (digest.Digest, error) + func (s *Store) Root() string + func (s *Store) Tag(ctx context.Context, d digest.Digest, tag string) error + func (s *Store) Target() oras.Target