Stats
Actions
Tags
From wicked-garden
Runs Python invoke.py scripts on events like PreToolUse (blocks TaskCreate/Update, EnterPlanMode, Write/Edit, Bash), Stop, PreCompact, SessionEnd, PostToolUse. Executes bash, writes files.
13 events · 22 hooks
Safety signals detected in this hook configuration
Where this hook configuration is defined
Defined in hooks/hooks.json
Event handlers and matchers — expand Raw Configuration for the full JSON
*python3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" stop || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" stop || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" stop30000ms*python3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_compact || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_compact || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_compact5000msTaskCreate|TaskUpdatepython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool1000msEnterPlanModepython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool1000msWrite|Editpython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool3000msBashpython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" pre_tool3000ms*python3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" session_end || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" session_end || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" session_end30000msTaskCreate|TaskUpdate|TodoWritepython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool5000msWrite|Editpython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool3000msTaskpython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool2000msReadpython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool5000msSkillpython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool2000msGrep|Globpython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool2000msBashpython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool180000ms*python3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" notification || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" notification || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" notification3000ms*python3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" bootstrap || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" bootstrap || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" bootstrap15000ms*python3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" subagent_lifecycle stop || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" subagent_lifecycle stop || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" subagent_lifecycle stop2000ms*python3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" subagent_lifecycle start || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" subagent_lifecycle start || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" subagent_lifecycle start2000mspython3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" task_completed || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" task_completed || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" task_completed2000ms*python3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" prompt_submit || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" prompt_submit || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" prompt_submit5000ms*python3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" permission_request || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" permission_request || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" permission_request2000ms*python3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || python "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool || py -3 "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/invoke.py" post_tool3000msnpx claudepluginhub mikeparcewski/wicked-garden --plugin wicked-garden