@felixgeelhaar/cclint
Version:
Catch CLAUDE.md drift before Claude misbehaves. Lints CLAUDE.md, skills, subagents, and hooks for Claude Code projects.
71 lines • 2.26 kB
TypeScript
import { Severity } from './Severity.js';
export interface RuleConfig {
enabled: boolean;
severity?: 'error' | 'warning' | 'info';
options?: Record<string, unknown>;
}
export interface PluginConfig {
name: string;
enabled: boolean;
options?: Record<string, unknown>;
}
export interface CclintConfig {
rules: {
'file-size'?: RuleConfig & {
options?: {
maxSize?: number;
};
};
structure?: RuleConfig & {
options?: {
requiredSections?: string[];
};
};
content?: RuleConfig & {
options?: {
requiredPatterns?: string[];
};
};
format?: RuleConfig;
'code-blocks'?: RuleConfig & {
options?: {
languages?: string[];
strict?: boolean;
};
};
'skill-structure'?: RuleConfig & {
options?: {
requireDescription?: boolean;
maxDescriptionLength?: number;
};
};
'subagent-structure'?: RuleConfig & {
options?: {
allowDangerousTools?: boolean;
};
};
'hook-configuration'?: RuleConfig & {
options?: {
dangerousCommands?: string[];
};
};
[key: string]: RuleConfig | undefined;
};
plugins?: PluginConfig[];
/**
* One or more built-in preset names to inherit configuration from, applied
* left-to-right before the user's own config (defaults ← preset(s) ← user).
* See {@link file://./presets.ts} for the available presets.
*/
extends?: string | string[];
ignore?: string[];
}
export declare const defaultConfig: CclintConfig;
/**
* Build the per-rule severity overrides the engine applies, from a resolved
* config. A rule with a configured `severity` has all its violations emitted
* at that level (the standard linter model). Shared by every entry point so
* `config.rules.<id>.severity` behaves identically via CLI, MCP, and Action.
*/
export declare function buildSeverityOverrides(config: CclintConfig): Map<string, Severity>;
//# sourceMappingURL=Config.d.ts.map