/** * Package-scope YAML-style mixing detection * * SKILL_DESCRIPTION_STYLE_MIXED_IN_PACKAGE — fires on every skill in a * package when the sibling skills' `description` frontmatter lines use a * mix of YAML scalar styles (folded, literal, inline-double, * inline-single, inline-plain). * * This detector operates on the RAW frontmatter bytes because the style * information is erased by YAML parsers. It is package-scoped: callers * must collect every sibling skill's raw content and invoke * `detectMixedDescriptionStyles` once. * * Status: detector implemented and unit-tested, not yet wired into the * validator pipeline (requires a package-level aggregation pass at the * CLI call site). */ import { type ValidationIssue } from '@vibe-agent-toolkit/agent-schema'; export type DescriptionYamlStyle = 'folded' | 'literal' | 'inline-double' | 'inline-single' | 'inline-plain'; /** * Classify the YAML scalar style used for the `description` frontmatter line * in raw SKILL.md content. Returns null when no description line is found. * * We inspect the raw marker because post-parse the original style is lost. */ export declare function classifyDescriptionYamlStyle(rawContent: string): DescriptionYamlStyle | null; export interface DescriptionStyleInput { /** Absolute or repo-relative path — used for the issue location. */ path: string; /** Raw SKILL.md content (bytes before YAML parse). */ rawContent: string; } /** * Detect mixed YAML scalar styles across a package of sibling skills. * * When two or more distinct styles are observed, fires one warning per * skill that carried a classifiable style. Skills with no classifiable * description line are skipped rather than flagged. */ export declare function detectMixedDescriptionStyles(skills: readonly DescriptionStyleInput[]): ValidationIssue[]; //# sourceMappingURL=description-style-detection.d.ts.map