Documentation
¶
Index ¶
- func DetectPluginName(rootDir string) string
- func RegisterRoutes(api huma.API, router chi.Router, importStore *Store, skillStore *skill.Store, ...)
- type DiscoveredSkill
- type FetchResult
- type Fetcher
- type ImportSource
- type Source
- type Store
- func (s *Store) GetBySkillID(ctx context.Context, skillID string) (*ImportSource, error)
- func (s *Store) GetBySkillName(ctx context.Context, skillName string) (*ImportSource, error)
- func (s *Store) ListAll(ctx context.Context) ([]ImportSource, error)
- func (s *Store) Upsert(ctx context.Context, src ImportSource) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DetectPluginName ¶
DetectPluginName looks for .claude-plugin/plugin.json in the root directory and returns the plugin name if found.
Types ¶
type DiscoveredSkill ¶
type DiscoveredSkill struct {
Name string `json:"name"`
Description string `json:"description"`
Path string `json:"path"`
Files []skill.FileEntry `json:"files"`
ScanStatus string `json:"scan_status"`
ScanFindingsCount int `json:"scan_findings_count"`
ExistingVersion int `json:"existing_version"`
}
func Discover ¶
func Discover(rootDir, subPath string) ([]DiscoveredSkill, error)
type FetchResult ¶
type ImportSource ¶
type ImportSource struct {
ID string `json:"id"`
SkillID string `json:"skill_id"`
SkillName string `json:"skill_name,omitempty"`
SourceType string `json:"source_type"`
SourceURL string `json:"source_url"`
SourcePath string `json:"source_path"`
SourceRef string `json:"source_ref"`
CommitSHA string `json:"commit_sha"`
ImportedAt time.Time `json:"imported_at"`
LastChecked *time.Time `json:"last_checked"`
}
type Source ¶
type Source struct {
Type string `json:"type"`
Owner string `json:"owner"`
Repo string `json:"repo"`
Ref string `json:"ref"`
Path string `json:"path"`
CommitSHA string `json:"commit_sha"`
}
func ResolveURL ¶
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
func (*Store) GetBySkillID ¶
func (*Store) GetBySkillName ¶
Click to show internal directories.
Click to hide internal directories.