roocommander
Version:
Bridge Claude Code skills to Roo Code with intelligent orchestration. CLI tool + Custom Mode + 60+ production-tested skills for Cloudflare, AI, Frontend development.
81 lines • 2 kB
TypeScript
/**
* TypeScript Type Definitions for Claude Code Skill Parser
*
* Defines the structure of parsed skills from ~/.claude/skills/ directory.
* Each skill consists of:
* - YAML frontmatter (metadata)
* - Markdown content (documentation)
* - Optional template files
* - Optional reference documentation
*/
/**
* Complete parsed skill structure from SKILL.md file
*/
export interface ClaudeSkill {
metadata: SkillMetadata;
content: string;
path: string;
skillFilePath: string;
templates?: string[];
referenceFiles?: string[];
readmeExists: boolean;
}
/**
* YAML frontmatter structure
*
* Required fields: name, description
* Description often contains structured sections:
* - "Use when:" - Trigger conditions
* - "Keywords:" - Search terms (comma-separated)
*/
export interface SkillMetadata {
name: string;
description: string;
keywords: string[];
useWhen?: string;
[key: string]: any;
}
/**
* Result of parsing frontmatter from markdown file
*
* Output from gray-matter library
*/
export interface ParsedFrontmatter {
data: Record<string, any>;
content: string;
}
/**
* Validation result for skill structure
*
* Used by validateSkill() to report issues
*/
export interface ValidationResult {
valid: boolean;
errors: string[];
warnings: string[];
}
/**
* Options for parsing skills
*/
export interface ParseOptions {
validate?: boolean;
includeTemplateContents?: boolean;
skillsDir?: string;
}
/**
* Error thrown when skill parsing fails
*/
export declare class SkillParseError extends Error {
skillPath: string;
cause?: Error | undefined;
constructor(message: string, skillPath: string, cause?: Error | undefined);
}
/**
* Error thrown when skill validation fails
*/
export declare class SkillValidationError extends Error {
skillPath: string;
errors: string[];
constructor(message: string, skillPath: string, errors: string[]);
}
//# sourceMappingURL=types.d.ts.map