Versions in this module Expand all Collapse all v0 v0.2.0 May 15, 2026 Changes in this version + func ResolveChainConflicts(candidate SmartSkill, active map[string]SmartSkill) []string + func SuggestChainSkills(skill SmartSkill) (after []string, enhances []string) + func Validate(manifest *ToolManifest) []string + func WriteManifestV2(pluginDir string, m *ManifestV2) error + type DynamicPlugin struct + ActivatedAt time.Time + Error string + HookIDs []string + ManifestV2 *ManifestV2 + Process *PluginProcess + State PluginState + type DynamicPluginManager struct + func NewDynamicPluginManager(dirs []string, tools ToolRegistrar, hooks HookRegistrar) *DynamicPluginManager + func (dm *DynamicPluginManager) Activate(name string) error + func (dm *DynamicPluginManager) Deactivate(name string) error + func (dm *DynamicPluginManager) DiscoverAll() error + func (dm *DynamicPluginManager) Events() <-chan PluginEvent + func (dm *DynamicPluginManager) ExecuteTool(ctx context.Context, pluginName, toolName string, input json.RawMessage) (string, error) + func (dm *DynamicPluginManager) Get(name string) (*DynamicPlugin, bool) + func (dm *DynamicPluginManager) InstallFromGitHub(repo string) error + func (dm *DynamicPluginManager) Reload(name string) error + func (dm *DynamicPluginManager) Status() []PluginStatus + func (dm *DynamicPluginManager) Uninstall(name string) error + type HookRegistrar interface + RegisterHook func(id string, event string, ...) + UnregisterHook func(id string) + type MalwareCheckResult struct + Blocked []string + Safe bool + Warnings []string + func CheckExtensionMalware(dir string) (*MalwareCheckResult, error) + type ManifestHook struct + Async bool + Command string + Event string + Priority int + type ManifestTool struct + Args []string + Command string + Description string + InputSchema map[string]interface{} + Name string + TimeoutSeconds int + type ManifestV2 struct + Author string + Config map[string]interface{} + Dependencies []string + Description string + Entrypoint string + Hooks []ManifestHook + License string + MinHawkVersion string + Mode string + Name string + Permissions []string + Repository string + Tools []ManifestTool + Version string + func ParseManifestV2(pluginDir string) (*ManifestV2, error) + func (m *ManifestV2) IsV2() bool + func (m *ManifestV2) ToV1() *ToolManifest + func (m *ManifestV2) ValidateV2() []string + type Plugin struct + Author string + Description string + Manifest *ToolManifest + Name string + Path string + Tools []PluginTool + Version string + type PluginEvent struct + Error string + PluginName string + Timestamp time.Time + Type string + type PluginManager struct + Loaded map[string]*Plugin + PluginDirs []string + func NewPluginManager(dirs ...string) *PluginManager + func (pm *PluginManager) Discover() ([]*Plugin, error) + func (pm *PluginManager) Execute(ctx context.Context, pluginName, toolName string, input json.RawMessage) (string, error) + func (pm *PluginManager) ListTools() []PluginTool + func (pm *PluginManager) Load(name string) (*Plugin, error) + func (pm *PluginManager) LoadAll() error + type PluginProcess struct + func (pp *PluginProcess) Send(request map[string]interface{}) (map[string]interface{}, error) + func (pp *PluginProcess) Stop() + type PluginState string + const StateActive + const StateDisabled + const StateDiscovered + const StateFailed + const StateLoaded + type PluginStatus struct + ActivatedAt time.Time + Error string + HookCount int + Name string + State PluginState + ToolCount int + Version string + type PluginTool struct + Command string + Description string + InputSchema map[string]interface{} + Name string + PluginName string + Timeout time.Duration + type PluginToolAdapter struct + func (a *PluginToolAdapter) Aliases() []string + func (a *PluginToolAdapter) Description() string + func (a *PluginToolAdapter) Execute(ctx context.Context, input json.RawMessage) (string, error) + func (a *PluginToolAdapter) Name() string + func (a *PluginToolAdapter) Parameters() map[string]interface{} + func (a *PluginToolAdapter) PluginName() string + func (a *PluginToolAdapter) RiskLevel() string + func (a *PluginToolAdapter) ToolName() string + type SecurityIssue struct + File string + Line int + Message string + Severity string + func ScanPlugin(pluginDir string) []SecurityIssue + type Skill struct + Content string + Description string + Name string + func LoadSkillsFromDir(dir string) ([]Skill, error) + type SkillChain struct + After []string + Before []string + Conflicts []string + Enhances []string type SmartSkill + Chain SkillChain + Invoke string + RefDir string + Refs []string + func (s *SmartSkill) LoadRef(name string) (string, error) + type ToolManifest struct + Author string + Description string + MinHawkVersion string + Name string + Permissions []string + Tools []ManifestTool + Version string + func ParseManifest(pluginDir string) (*ToolManifest, error) + type ToolRegistrar interface + AddTool func(name string, t interface{}) + RemoveTool func(name string) v0.1.0 May 12, 2026 Changes in this version + func BuildLearnPrompt(ctx LearnContext) string + func BuildLearnUpdatePrompt(ctx LearnContext) string + func BuildNewSkillPrompt(description string) string + func DefaultSkillDirs() []string + func ExtractSkillName(content string) string + func FormatAuditResult(r AuditResult) string + func FormatLearnSummary(ctx LearnContext, deep bool) string + func FormatRating(rating int) string + func FormatSkillEntry(e SkillEntry) string + func FormatSkillInfo(s SmartSkill, path string) string + func FormatSkillsForPrompt(skills []SmartSkill) string + func GatherDeepSourceInfo(dir string) string + func Install(srcDir string) error + func Remove(name string) error + func RunAutoSkill(dir string) (string, error) + func SaveNewSkill(name, content string) (string, error) + func StripDangerousChars(content string) string + func Summary() string + func Uninstall(name string) error + type AuditFinding struct + Category string + Char rune + Column int + File string + Line int + Message string + Severity AuditSeverity + func AuditSkillFile(path string) ([]AuditFinding, error) + type AuditResult struct + Files int + Findings []AuditFinding + func AuditAllSkills() AuditResult + func AuditSkillDir(dir string) AuditResult + type AuditSeverity string + const SeverityCritical + const SeverityInfo + const SeverityWarning + type CommandDef struct + Description string + Name string + Script string + type FeedbackStore struct + func NewFeedbackStore() *FeedbackStore + func NewFeedbackStoreAt(path string) *FeedbackStore + func (fs *FeedbackStore) Get(skill string) (SkillRating, bool) + func (fs *FeedbackStore) List() []SkillRating + func (fs *FeedbackStore) Rate(skill string, rating int, comment string) error + type HookDef struct + Command string + Event string + type LearnContext struct + Installed []SmartSkill + Registry []SkillEntry + Signals []ProjectSignal + SourceInfo string + func GatherLearnContext(dir string) LearnContext + type Manifest struct + Author string + Commands []CommandDef + Description string + Hooks []HookDef + Name string + Skills []string + Version string + func List() ([]*Manifest, error) + func LoadManifest(dir string) (*Manifest, error) + func (m *Manifest) Validate() error + type ProjectSignal struct + Category string + Name string + func AnalyzeProject(dir string) []ProjectSignal + type RegistryClient struct + CacheDir string + IndexURL string + func NewRegistryClient() *RegistryClient + func (rc *RegistryClient) FetchIndex() (*SkillIndex, error) + func (rc *RegistryClient) Info(name string) (*SkillEntry, error) + func (rc *RegistryClient) Install(repo, skillName, scope string) (string, error) + func (rc *RegistryClient) Search(query, category string) ([]SkillEntry, error) + func (rc *RegistryClient) Trending(limit int) ([]SkillEntry, error) + type Runtime struct + SmartSkills []SmartSkill + func NewRuntime() *Runtime + func (r *Runtime) CommandList() []CommandDef + func (r *Runtime) ExecuteCommand(name string, args []string) (string, error) + func (r *Runtime) IsCommand(name string) bool + func (r *Runtime) ListPlugins() []*Manifest + func (r *Runtime) LoadAll() error + func (r *Runtime) RegisterHooks() + type SkillEntry struct + Agents []string + Author string + Category string + Description string + Installs int + License string + Name string + Path string + Repo string + Tags []string + UpdatedAt string + Version string + func RecommendSkills(signals []ProjectSignal, skills []SkillEntry) []SkillEntry + type SkillIndex struct + Skills []SkillEntry + UpdatedAt string + Version int + type SkillRating struct + Comment string + Date time.Time + Rating int + Skill string + type SkillSource struct + InstalledAt string + Ref string + Repo string + type SmartSkill struct + Agents []string + AllowedTools string + Author string + AutoInvoke bool + Category string + Compatibility string + Content string + Description string + License string + Name string + Paths []string + Source SkillSource + Tags []string + Version string + func InstalledSkillInfo(name string) (SmartSkill, string, bool) + func LoadSmartSkills(dirs []string) []SmartSkill + func MatchSkillsByContext(skills []SmartSkill, userPrompt string) []SmartSkill + func MatchSkillsByPath(skills []SmartSkill, activePath string) []SmartSkill + func ParseSmartSkillPublic(content string) SmartSkill