/** * Skill Installer Module * Handles symlink-based installation of skills to agent directories */ /** * Agent configuration interface */ export interface AgentConfig { name: string; displayName: string; projectDir: string; globalDir: string; } /** * Installation options */ export interface InstallOptions { global: boolean; agents: string[]; cwd: string; } /** * Information about an installed skill */ export interface InstalledSkillInfo { name: string; canonicalPath: string; agents: string[]; linkedPaths: string[]; method: 'symlink' | 'copy'; } /** * Get the canonical skills storage directory * - Global: ~/.skills/ * - Project: .skills/ */ export declare function getCanonicalSkillsDir(global: boolean, cwd: string): string; /** * Get the canonical path for a specific skill */ export declare function getCanonicalPath(skillName: string, options: { global: boolean; cwd: string; }): string; /** * Get the agent skill directory path */ export declare function getAgentSkillPath(skillName: string, agentConfig: AgentConfig, options: { global: boolean; cwd: string; }): string; /** * Check if a path is a symlink */ export declare function isSymlink(path: string): Promise; /** * Install a skill with symlinks to each agent * * @param sourcePath - Path to downloaded skill (temp directory) * @param skillName - Name of the skill * @param agents - Map of agent configs to install to * @param options - Install options */ export declare function installSkillWithSymlinks(sourcePath: string, skillName: string, agentConfigs: Record, targetAgents: string[], options: InstallOptions): Promise; /** * Remove a skill from all its installed locations */ export declare function removeSkillInstallation(skillName: string, agentConfigs: Record, agents: string[], options: { global: boolean; cwd: string; }): Promise; /** * Check if a skill is installed via symlink or copy */ export declare function getSkillInstallMethod(skillName: string, agentConfig: AgentConfig, options: { global: boolean; cwd: string; }): Promise<'symlink' | 'copy' | 'none'>; //# sourceMappingURL=installer.d.ts.map