Rules Reference
This section contains all 155 validation rules generated from knowledge-base/rules.json.
57 rules have automatic fixes.
| Rule | Name | Severity | Category | Auto-Fix |
|---|---|---|---|---|
| AS-001 | Missing Frontmatter | HIGH | Agent Skills | No |
| AS-002 | Missing Required Field: name | HIGH | Agent Skills | No |
| AS-003 | Missing Required Field: description | HIGH | Agent Skills | No |
| AS-004 | Invalid Name Format | HIGH | Agent Skills | Yes (safe/unsafe) |
| AS-005 | Name Starts/Ends with Hyphen | HIGH | Agent Skills | Yes (safe) |
| AS-006 | Consecutive Hyphens in Name | HIGH | Agent Skills | Yes (safe) |
| AS-007 | Reserved Name | HIGH | Agent Skills | No |
| AS-008 | Description Too Short | HIGH | Agent Skills | No |
| AS-009 | Description Contains XML | HIGH | Agent Skills | No |
| AS-010 | Missing Trigger Phrase | MEDIUM | Agent Skills | Yes (unsafe) |
| AS-011 | Compatibility Too Long | HIGH | Agent Skills | No |
| AS-012 | Content Exceeds 500 Lines | MEDIUM | Agent Skills | No |
| AS-013 | File Reference Too Deep | HIGH | Agent Skills | No |
| AS-014 | Windows Path Separator | HIGH | Agent Skills | Yes (safe) |
| AS-015 | Upload Size Exceeds 8MB | HIGH | Agent Skills | No |
| AS-016 | Skill Parse Error | HIGH | Agent Skills | No |
| CC-SK-001 | Invalid Model Value | HIGH | Claude Skills | Yes (unsafe) |
| CC-SK-002 | Invalid Context Value | HIGH | Claude Skills | Yes (unsafe) |
| CC-SK-003 | Context Without Agent | HIGH | Claude Skills | Yes (unsafe) |
| CC-SK-004 | Agent Without Context | HIGH | Claude Skills | Yes (unsafe) |
| CC-SK-005 | Invalid Agent Type | HIGH | Claude Skills | Yes (unsafe) |
| CC-SK-006 | Dangerous Auto-Invocation | HIGH | Claude Skills | No |
| CC-SK-007 | Unrestricted Bash | HIGH | Claude Skills | Yes (unsafe) |
| CC-SK-008 | Unknown Tool Name | HIGH | Claude Skills | No |
| CC-SK-009 | Too Many Injections | MEDIUM | Claude Skills | No |
| CC-SK-010 | Invalid Hooks in Skill Frontmatter | HIGH | Claude Skills | No |
| CC-SK-011 | Unreachable Skill | HIGH | Claude Skills | Yes (unsafe) |
| CC-SK-012 | Argument Hint Without $ARGUMENTS | MEDIUM | Claude Skills | No |
| CC-SK-013 | Fork Context Without Actionable Instructions | MEDIUM | Claude Skills | No |
| CC-SK-014 | Invalid disable-model-invocation Type | HIGH | Claude Skills | Yes (safe) |
| CC-SK-015 | Invalid user-invocable Type | HIGH | Claude Skills | Yes (safe) |
| CC-HK-001 | Invalid Hook Event | HIGH | Claude Hooks | Yes (safe/unsafe) |
| CC-HK-002 | Prompt Hook on Wrong Event | HIGH | Claude Hooks | No |
| CC-HK-003 | Missing Matcher for Tool Events | HIGH | Claude Hooks | No |
| CC-HK-004 | Matcher on Non-Tool Event | HIGH | Claude Hooks | Yes (safe) |
| CC-HK-005 | Missing Type Field | HIGH | Claude Hooks | No |
| CC-HK-006 | Missing Command Field | HIGH | Claude Hooks | No |
| CC-HK-007 | Missing Prompt Field | HIGH | Claude Hooks | No |
| CC-HK-008 | Script File Not Found | HIGH | Claude Hooks | No |
| CC-HK-009 | Dangerous Command Pattern | HIGH | Claude Hooks | No |
| CC-HK-010 | Timeout Policy | MEDIUM | Claude Hooks | No |
| CC-HK-011 | Invalid Timeout Value | HIGH | Claude Hooks | Yes (unsafe) |
| CC-HK-012 | Hooks Parse Error | HIGH | Claude Hooks | No |
| CC-HK-013 | Async on Non-Command Hook | HIGH | Claude Hooks | Yes (safe) |
| CC-HK-014 | Once Outside Skill/Agent Frontmatter | MEDIUM | Claude Hooks | No |
| CC-HK-015 | Model on Command Hook | MEDIUM | Claude Hooks | Yes (safe) |
| CC-HK-016 | Validate Hook Type Agent | HIGH | Claude Hooks | Yes (unsafe) |
| CC-HK-017 | Prompt/Agent Hook Missing $ARGUMENTS | MEDIUM | Claude Hooks | No |
| CC-HK-018 | Matcher on UserPromptSubmit/Stop | LOW | Claude Hooks | Yes (safe) |
| CC-AG-001 | Missing Name Field | HIGH | Claude Agents | No |
| CC-AG-002 | Missing Description Field | HIGH | Claude Agents | No |
| CC-AG-003 | Invalid Model Value | HIGH | Claude Agents | Yes (unsafe) |
| CC-AG-004 | Invalid Permission Mode | HIGH | Claude Agents | Yes (unsafe) |
| CC-AG-005 | Referenced Skill Not Found | HIGH | Claude Agents | No |
| CC-AG-006 | Tool/Disallowed Conflict | HIGH | Claude Agents | No |
| CC-AG-007 | Agent Parse Error | HIGH | Claude Agents | No |
| CC-AG-008 | Invalid Memory Scope | HIGH | Claude Agents | Yes (unsafe) |
| CC-AG-009 | Invalid Tool Name in Tools List | HIGH | Claude Agents | No |
| CC-AG-010 | Invalid Tool Name in DisallowedTools | HIGH | Claude Agents | No |
| CC-AG-011 | Invalid Hooks in Agent Frontmatter | HIGH | Claude Agents | No |
| CC-AG-012 | Bypass Permissions Warning | HIGH | Claude Agents | Yes (unsafe) |
| CC-AG-013 | Invalid Skill Name Format | MEDIUM | Claude Agents | No |
| CC-MEM-001 | Invalid Import Path | HIGH | Claude Memory | No |
| CC-MEM-002 | Circular Import | HIGH | Claude Memory | No |
| CC-MEM-003 | Import Depth Exceeds 5 | HIGH | Claude Memory | No |
| CC-MEM-004 | Invalid Command Reference | MEDIUM | Claude Memory | No |
| CC-MEM-005 | Generic Instruction | HIGH | Claude Memory | Yes (safe) |
| CC-MEM-006 | Negative Without Positive | HIGH | Claude Memory | No |
| CC-MEM-007 | Weak Constraint Language | HIGH | Claude Memory | Yes (safe/unsafe) |
| CC-MEM-008 | Critical Content in Middle | HIGH | Claude Memory | No |
| CC-MEM-009 | Token Count Exceeded | MEDIUM | Claude Memory | No |
| CC-MEM-010 | README Duplication | MEDIUM | Claude Memory | No |
| CC-MEM-011 | Invalid Paths Glob in Rules | HIGH | Claude Memory | No |
| CC-MEM-012 | Rules File Unknown Frontmatter Key | MEDIUM | Claude Memory | Yes (unsafe) |
| AGM-001 | Valid Markdown Structure | HIGH | AGENTS.md | No |
| AGM-002 | Missing Section Headers | MEDIUM | AGENTS.md | No |
| AGM-003 | Character Limit (Windsurf) | MEDIUM | AGENTS.md | No |
| AGM-004 | Missing Project Context | MEDIUM | AGENTS.md | No |
| AGM-005 | Platform-Specific Features Without Guard | MEDIUM | AGENTS.md | No |
| AGM-006 | Nested AGENTS.md Hierarchy | MEDIUM | AGENTS.md | No |
| CC-PL-001 | Plugin Manifest Not in .claude-plugin/ | HIGH | Claude Plugins | No |
| CC-PL-002 | Components in .claude-plugin/ | HIGH | Claude Plugins | No |
| CC-PL-003 | Invalid Semver | HIGH | Claude Plugins | No |
| CC-PL-004 | Missing Required Plugin Field | HIGH | Claude Plugins | No |
| CC-PL-005 | Empty Plugin Name | HIGH | Claude Plugins | Yes (unsafe) |
| CC-PL-006 | Plugin Parse Error | HIGH | Claude Plugins | No |
| CC-PL-007 | Invalid Component Path | HIGH | Claude Plugins | Yes (safe) |
| CC-PL-008 | Component Inside .claude-plugin | HIGH | Claude Plugins | No |
| CC-PL-009 | Invalid Author Object | MEDIUM | Claude Plugins | No |
| CC-PL-010 | Invalid Homepage URL | MEDIUM | Claude Plugins | No |
| MCP-001 | Invalid JSON-RPC Version | HIGH | MCP | Yes (safe) |
| MCP-002 | Missing Required Tool Field | HIGH | MCP | No |
| MCP-003 | Invalid JSON Schema | HIGH | MCP | No |
| MCP-004 | Missing Tool Description | HIGH | MCP | No |
| MCP-005 | Tool Without User Consent | HIGH | MCP | No |
| MCP-006 | Untrusted Annotations | HIGH | MCP | No |
| MCP-007 | MCP Parse Error | HIGH | MCP | No |
| MCP-008 | Protocol Version Mismatch | MEDIUM | MCP | Yes (unsafe) |
| MCP-009 | Missing command for stdio server | HIGH | MCP | No |
| MCP-010 | Missing url for http/sse server | HIGH | MCP | No |
| MCP-011 | Invalid MCP server type | HIGH | MCP | Yes (unsafe) |
| MCP-012 | Deprecated SSE transport | MEDIUM | MCP | Yes (unsafe) |
| COP-001 | Empty Copilot Instruction File | HIGH | GitHub Copilot | No |
| COP-002 | Invalid Frontmatter in Scoped Instructions | HIGH | GitHub Copilot | Yes (unsafe) |
| COP-003 | Invalid Glob Pattern in applyTo | HIGH | GitHub Copilot | No |
| COP-004 | Unknown Frontmatter Keys | MEDIUM | GitHub Copilot | Yes (safe) |
| COP-005 | Invalid excludeAgent Value | HIGH | GitHub Copilot | Yes (unsafe) |
| COP-006 | File Length Limit | MEDIUM | GitHub Copilot | No |
| CUR-001 | Empty Cursor Rule File | HIGH | Cursor | No |
| CUR-002 | Missing Frontmatter in .mdc File | MEDIUM | Cursor | Yes (unsafe) |
| CUR-003 | Invalid YAML Frontmatter | HIGH | Cursor | No |
| CUR-004 | Invalid Glob Pattern in globs Field | HIGH | Cursor | No |
| CUR-005 | Unknown Frontmatter Keys | MEDIUM | Cursor | Yes (safe) |
| CUR-006 | Legacy .cursorrules File Detected | MEDIUM | Cursor | No |
| CUR-007 | alwaysApply with Redundant globs | MEDIUM | Cursor | Yes (safe) |
| CUR-008 | Invalid alwaysApply Type | HIGH | Cursor | Yes (safe) |
| CUR-009 | Missing Description for Agent-Requested Rule | MEDIUM | Cursor | No |
| CLN-001 | Empty Cline Rules File | HIGH | Cline | No |
| CLN-002 | Invalid Paths Glob in Cline Rules | HIGH | Cline | No |
| CLN-003 | Unknown Frontmatter Key in Cline Rules | MEDIUM | Cline | Yes (unsafe) |
| XML-001 | Unclosed XML Tag | HIGH | XML | Yes (unsafe) |
| XML-002 | Mismatched Closing Tag | HIGH | XML | Yes (unsafe) |
| XML-003 | Unmatched Closing Tag | HIGH | XML | Yes (unsafe) |
| REF-001 | Import File Not Found | HIGH | References | No |
| REF-002 | Broken Markdown Link | HIGH | References | No |
| PE-001 | Lost in the Middle | MEDIUM | Prompt Engineering | No |
| PE-002 | Chain-of-Thought on Simple Task | MEDIUM | Prompt Engineering | No |
| PE-003 | Weak Imperative Language | MEDIUM | Prompt Engineering | No |
| PE-004 | Ambiguous Instructions | MEDIUM | Prompt Engineering | No |
| XP-001 | Platform-Specific Feature in Generic Config | HIGH | Cross-Platform | No |
| XP-002 | AGENTS.md Platform Compatibility | HIGH | Cross-Platform | No |
| XP-003 | Hard-Coded Platform Paths | HIGH | Cross-Platform | No |
| XP-004 | Conflicting Build/Test Commands | MEDIUM | Cross-Platform | No |
| XP-005 | Conflicting Tool Constraints | HIGH | Cross-Platform | No |
| XP-006 | Multiple Layers Without Documented Precedence | MEDIUM | Cross-Platform | No |
| OC-001 | Invalid Share Mode | HIGH | OpenCode | Yes (unsafe) |
| OC-002 | Invalid Instruction Path | HIGH | OpenCode | No |
| OC-003 | opencode.json Parse Error | HIGH | OpenCode | No |
| GM-001 | Invalid Markdown Structure in GEMINI.md | HIGH | Gemini CLI | No |
| GM-002 | Missing Section Headers in GEMINI.md | MEDIUM | Gemini CLI | No |
| GM-003 | Missing Project Context in GEMINI.md | MEDIUM | Gemini CLI | No |
| CDX-001 | Invalid Approval Mode | HIGH | Codex CLI | Yes (unsafe) |
| CDX-002 | Invalid Full Auto Error Mode | HIGH | Codex CLI | Yes (unsafe) |
| CDX-003 | AGENTS.override.md in Version Control | MEDIUM | Codex CLI | No |
| VER-001 | No Tool/Spec Versions Pinned | LOW | Version Awareness | No |
| CR-SK-001 | Cursor Skill Uses Unsupported Field | MEDIUM | cursor-skills | Yes (safe) |
| CL-SK-001 | Cline Skill Uses Unsupported Field | MEDIUM | cline-skills | Yes (safe) |
| CP-SK-001 | Copilot Skill Uses Unsupported Field | MEDIUM | copilot-skills | Yes (safe) |
| CX-SK-001 | Codex Skill Uses Unsupported Field | MEDIUM | codex-skills | Yes (safe) |
| OC-SK-001 | OpenCode Skill Uses Unsupported Field | MEDIUM | opencode-skills | Yes (safe) |
| WS-SK-001 | Windsurf Skill Uses Unsupported Field | MEDIUM | windsurf-skills | Yes (safe) |
| KR-SK-001 | Kiro Skill Uses Unsupported Field | MEDIUM | kiro-skills | Yes (safe) |
| AMP-SK-001 | Amp Skill Uses Unsupported Field | MEDIUM | amp-skills | Yes (safe) |
| RC-SK-001 | Roo Code Skill Uses Unsupported Field | MEDIUM | roo-code-skills | Yes (safe) |
| XP-SK-001 | Skill Uses Client-Specific Features | LOW | Cross-Platform | No |