/** * Leaper Agent – Skill Hub * * GitHub-based skill registry: search, inspect, install, and uninstall skills. * Translates Python tools/skills_hub.py. */ export interface SkillMeta { name: string; description: string; source: string; identifier: string; trustLevel: 'builtin' | 'trusted' | 'community'; tags?: string[]; repo?: string; } export interface SkillBundle { name: string; files: Map; source: string; identifier: string; trustLevel: 'builtin' | 'trusted' | 'community'; metadata: Record; } export interface HubConfig { skillsDir: string; githubToken?: string; } export interface LockEntry { name: string; identifier: string; repo?: string; trustLevel: string; contentHash: string; installedAt: string; } export declare class HubLockFile { private lockPath; private entries; constructor(lockPath: string); load(): Promise; save(): Promise; add(entry: LockEntry): void; remove(name: string): void; get(name: string): LockEntry | undefined; getAll(): LockEntry[]; } export declare class SkillHub { private config; private githubToken; private lockFile; constructor(config: HubConfig); /** Search for skills matching query (searches GitHub topic 'hermes-skill' or 'leaper-skill'). */ search(query: string): Promise; /** Inspect a skill without installing it. */ inspect(identifier: string): Promise<{ meta: SkillMeta; content: string; error?: string; }>; /** * Download and install a skill from GitHub. * identifier: 'owner/repo' or 'owner/repo/path/to/skill' */ install(identifier: string, opts?: { force?: boolean; }): Promise<{ success: boolean; name?: string; error?: string; }>; /** Remove an installed skill. */ uninstall(name: string): Promise<{ success: boolean; error?: string; }>; /** List installed hub skills (from lock file). */ listInstalled(): Array<{ name: string; identifier: string; installedAt: string; }>; private getGitHubHeaders; private resolveToken; private ensureToken; private fetchGitHubContents; private githubFetch; private fetchSkillMd; private determineTrustLevel; /** Security: reject ../ and absolute paths in bundle file paths. */ private validateBundlePath; } //# sourceMappingURL=skill-hub.d.ts.map