diff --git a/CLAUDE.md b/CLAUDE.md index b4eb294..10785aa 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -164,9 +164,11 @@ leo-claude-mktplace/ - **CLI tools forbidden** - Use MCP tools exclusively (never `tea`, `gh`, etc.) #### ⚠️ plugin.json Format Rules (CRITICAL) -- **Hooks MUST be inline** - NEVER use `"hooks": "path/to/file.json"` +- **Hooks in separate file** - Use `hooks/hooks.json` (auto-discovered), NOT inline in plugin.json +- **NEVER reference hooks** - Don't add `"hooks": "..."` field to plugin.json at all - **Agents auto-discover** - NEVER add `"agents": ["./agents/"]` - .md files found automatically - **Always validate** - Run `./scripts/validate-marketplace.sh` before committing +- **Working examples:** projman, pr-review, claude-config-maintainer all use `hooks/hooks.json` - See lesson: `lessons/patterns/plugin-manifest-validation---hooks-and-agents-format-requirements` ### Hooks (Valid Events Only) diff --git a/plugins/data-platform/.claude-plugin/plugin.json b/plugins/data-platform/.claude-plugin/plugin.json index 00bae91..489fcee 100644 --- a/plugins/data-platform/.claude-plugin/plugin.json +++ b/plugins/data-platform/.claude-plugin/plugin.json @@ -18,14 +18,6 @@ "etl", "dataframe" ], - "hooks": { - "SessionStart": [ - { - "type": "command", - "command": "${CLAUDE_PLUGIN_ROOT}/hooks/startup-check.sh" - } - ] - }, "commands": ["./commands/"], "mcpServers": ["./.mcp.json"] } diff --git a/plugins/data-platform/hooks/hooks.json b/plugins/data-platform/hooks/hooks.json new file mode 100644 index 0000000..529b5ec --- /dev/null +++ b/plugins/data-platform/hooks/hooks.json @@ -0,0 +1,10 @@ +{ + "hooks": { + "SessionStart": [ + { + "type": "command", + "command": "${CLAUDE_PLUGIN_ROOT}/hooks/startup-check.sh" + } + ] + } +}