mit einem Klick
validate-structure
Validates plugin directory layout against the official Claude Code plugin spec. Triggers: validate structure, check layout, directory audit, plugin skeleton check.
Menü
Validates plugin directory layout against the official Claude Code plugin spec. Triggers: validate structure, check layout, directory audit, plugin skeleton check.
| name | validate-structure |
| version | 1.0.0 |
| description | Validates plugin directory layout against the official Claude Code plugin spec. Triggers: validate structure, check layout, directory audit, plugin skeleton check. |
| author | JM Labs (Javier Montaño) |
| allowed-tools | ["Read","Glob","Grep","Bash"] |
"A plugin that does not follow the spec is not a plugin -- it is a folder with aspirations."
Validates that a Claude Code plugin's directory tree conforms to the official specification. Detects missing directories, misplaced files, naming violations, path traversal risks, and script permission issues. [EXPLICIT]
assets/structure-report-contract.json defines the report shape.assets/private-transient-policy.json blocks private and transient files from publishable structure.assets/clean-claim-policy.json requires validation evidence before claiming a clean structure.scripts/validate_structure_report.py validates reports offline.scripts/check.sh runs structure safety fixtures.Fail closed when clean_claim is true without validation evidence, a critical finding is unresolved, or private/transient paths are reported as publishable. [EXPLICIT]
plugin.json at the provided path (official spec location)..claude-plugin/plugin.json (legacy location). Report INFO: plugin.json found at legacy .claude-plugin/ path if found there.CRITICAL: No plugin.json found -- not a valid plugin root..claude-plugin/ directory exists, list all files inside it.plugin.json is inside .claude-plugin/, only plugin.json should be there. Any other file is a WARNING: Unexpected file in .claude-plugin/.plugin.json is at root (preferred), this check is N/A.skills/, commands/, agents/, hooks/.plugin.json.skills/ = WARNING if the plugin description implies skill-based functionality.commands/ = INFO (commands are optional).agents/ = INFO (plugin can use the host agent).hooks/ = INFO (hooks are optional).SKILL.md file: skills/<name>/SKILL.md..md files directly under commands/: commands/<name>.md..md files directly under agents/: agents/<name>.md.CRITICAL for any skill directory missing SKILL.md.WARNING for unexpected file types (.txt, .json) in commands/ or agents/.^[a-z][a-z0-9]*(-[a-z0-9]+)*$.WARNING for each violation with the offending name and suggested kebab-case alternative..md, .json, .sh files for ../ sequences.^/ in script files and hook configurations.CRITICAL for any ../ usage in hooks.json or script references.WARNING for ../ in documentation files (may be intentional examples)..sh, .py, .js files in the plugin tree.#!/bin/bash, #!/usr/bin/env node, etc.).chmod +x). Use ls -la to check.WARNING for missing shebang. Report WARNING for missing execute permission.| Severity | File/Path | Finding | Spec Reference |.../ that resolves safely is still flagged because it indicates a portability risk.Bad finding:
Missing skills directory. [EXPLICIT]
Missing: no severity, no path, no spec reference. [EXPLICIT]
Good finding:
WARNING | skills/ | Directory absent. Plugin description implies skill-based functionality but no skills/ directory exists. | Official spec: optional
Includes: severity, path, context explaining why it matters, spec reference. [EXPLICIT]
.gitkeep, .DS_Store) -- these should be INFO, not errors. [EXPLICIT].claude-plugin directory name -- CRITICAL on case-sensitive filesystems. [EXPLICIT]Example invocations:
Redacta agradecimientos post-proceso diferenciados por persona, evidencia de interaccion, voz de marca y lint offline contra FOMO, hustle, servilismo y promesas no verificables.
Optimiza CV y carta de presentacion para ATS, rol objetivo y voz de marca con lint offline de keywords, secciones, longitud, contacto y tono.
Cosecha aprendizajes, valida evidencia y produce un cierre de conversacion reproducible con handoff, riesgos y plan de actualizaciones durables.
Orchestrates JM-ADK Alfa repository maintenance in fixed safety phases: bootstrap, repo sync audit, local state preservation, isolated branch planning, selective import or consolidation planning, cleanup planning, validation gates, and closeout blockers.
Validates frontmatter and body structure of all skills, agents, and commands in a plugin. Triggers: validate components, check frontmatter, component audit, skill validation.
Use when the user asks to "scan for secrets", "detect credentials", "sanitize sensitive data", "check for exposed passwords", "run security gate G0", or mentions secret detection, credential scanning, security gate G0, sensitive data masking, API key exposure, token detection.