The plugin tree
Part 1 · PLUGIN STRUCTURE AND ARCHITECTURE · Slide 3 of 60
plugins/notrest/ ├── .claude-plugin/plugin.json the manifest (name, version) ├── hooks/hooks.json what runs on which event ├── hooks/*.sh, gate-check.py the 11 hooks + 2 helpers ├── skills/<name>/SKILL.md 32 skills, one folder each │ ├── scripts/*.py|.sh the skill's runnable tool │ └── scripts/fixture.sh the tool's own test └── README.md, docs/ what the consumer reads .claude-plugin/marketplace.json how it is installed CHANGELOG.md · docs/MAP.md the record and the map Rule of the tree: a skill is a folder; a folder's name is the skill's name; a skill with a script ships the script's test.