export type SkillSource = "managed" | "extra"; export type SkillScope = "agent" | "global"; export interface AgentSkillsLoadConfig { extraDirs?: string[]; } export interface AgentSkillsPromptConfig { maxSkills?: number; maxCharsPerSkill?: number; maxTotalChars?: number; includeContent?: boolean; } export interface AgentSkillsConfig { enabled?: boolean; includeManaged?: boolean; assigned?: string[]; load?: AgentSkillsLoadConfig; prompt?: AgentSkillsPromptConfig; } export interface SkillFrontmatter { name?: string; description?: string; enabled?: boolean; userInvocable?: boolean; disableModelInvocation?: boolean; } export interface ResolvedSkill { id: string; name: string; description: string; source: SkillSource; skillDir: string; skillFilePath: string; content: string; frontmatter: SkillFrontmatter; } export interface SkillsPromptResult { prompt: string; skills: ResolvedSkill[]; } export interface InstallSkillRequest { agentId?: string; skillName: string; sourcePath?: string; sourceUrl?: string; sourceSkillName?: string; description?: string; content?: string; scope?: SkillScope; assignToAllAgents?: boolean; } export interface InstallSkillResult { scope: SkillScope; agentId?: string; assignedAgentIds?: string[]; skillId: string; skillName: string; source: "managed" | "source-path" | "source-url" | "generated"; installedPath: string; workspaceInstallPaths?: string[]; replaced: boolean; } export interface RemoveSkillRequest { scope?: SkillScope; agentId?: string; skillId: string; } export interface RemoveSkillResult { scope: SkillScope; skillId: string; agentId?: string; removedFromGlobal: boolean; removedFromAgentIds: string[]; removedWorkspacePaths: string[]; } export declare const DEFAULT_SKILLS_CONFIG: Required> & { load: Required; prompt: Required; }; export declare function resolveSkillsConfig(input: AgentSkillsConfig | undefined): typeof DEFAULT_SKILLS_CONFIG; export declare function resolveSkillAgentId(value: string | undefined): string;