npx claudepluginhub loulanyue/awesome-claude-notes --plugin awesome-claude-notesDefined in hooks/hooks.json
*node "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "stop:check-console-log" "scripts/hooks/check-console-log.js" "standard,strict"*node "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "stop:session-end" "scripts/hooks/session-end.js" "minimal,standard,strict"10ms*node "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "stop:evaluate-session" "scripts/hooks/evaluate-session.js" "minimal,standard,strict"10ms*node "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "stop:cost-tracker" "scripts/hooks/cost-tracker.js" "minimal,standard,strict"10ms*node "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "pre:compact" "scripts/hooks/pre-compact.js" "standard,strict"Bashnpx block-no-verify@1.1.2Bashnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/auto-tmux-dev.js"Bashnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "pre:bash:tmux-reminder" "scripts/hooks/pre-bash-tmux-reminder.js" "strict"Bashnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "pre:bash:git-push-reminder" "scripts/hooks/pre-bash-git-push-reminder.js" "strict"Writenode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "pre:write:doc-file-warning" "scripts/hooks/doc-file-warning.js" "standard,strict"Edit|Writenode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "pre:edit-write:suggest-compact" "scripts/hooks/suggest-compact.js" "standard,strict"*bash "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags-shell.sh" "pre:observe" "skills/continuous-learning-v2/hooks/observe.sh" "standard,strict"10msBash|Write|Edit|MultiEditnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "pre:insaits-security" "scripts/hooks/insaits-security-wrapper.js" "standard,strict"15msBash|Write|Edit|MultiEditnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "pre:governance-capture" "scripts/hooks/governance-capture.js" "standard,strict"10msWrite|Edit|MultiEditnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "pre:config-protection" "scripts/hooks/config-protection.js" "standard,strict"5ms*node "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "pre:mcp-health-check" "scripts/hooks/mcp-health-check.js" "standard,strict"*node "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "session:end:marker" "scripts/hooks/session-end-marker.js" "minimal,standard,strict"10msBashnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "post:bash:pr-created" "scripts/hooks/post-bash-pr-created.js" "standard,strict"Bashnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "post:bash:build-complete" "scripts/hooks/post-bash-build-complete.js" "standard,strict"30msEdit|Write|MultiEditnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "post:quality-gate" "scripts/hooks/quality-gate.js" "standard,strict"30msEditnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "post:edit:format" "scripts/hooks/post-edit-format.js" "strict"Editnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "post:edit:typecheck" "scripts/hooks/post-edit-typecheck.js" "strict"Editnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "post:edit:console-warn" "scripts/hooks/post-edit-console-warn.js" "standard,strict"Bash|Write|Edit|MultiEditnode "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "post:governance-capture" "scripts/hooks/governance-capture.js" "standard,strict"10ms*bash "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags-shell.sh" "post:observe" "skills/continuous-learning-v2/hooks/observe.sh" "standard,strict"10ms*bash -lc 'input=$(cat); for root in "${CLAUDE_PLUGIN_ROOT:-}" "$HOME/.claude/plugins/awesome-claude-notes" "$HOME/.claude/plugins/awesome-claude-notes@awesome-claude-notes" "$HOME/.claude/plugins/marketplace/awesome-claude-notes" "$HOME/.claude/plugins/everything-claude-code" "$HOME/.claude/plugins/everything-claude-code@everything-claude-code" "$HOME/.claude/plugins/marketplace/everything-claude-code"; do if [ -n "$root" ] && [ -f "$root/scripts/hooks/run-with-flags.js" ]; then printf "%s" "$input" | node "$root/scripts/hooks/run-with-flags.js" "session:start" "scripts/hooks/session-start.js" "minimal,standard,strict"; exit $?; fi; done; for parent in "$HOME/.claude/plugins" "$HOME/.claude/plugins/marketplace"; do if [ -d "$parent" ]; then candidate=$(find "$parent" -maxdepth 2 -type f -path "*/scripts/hooks/run-with-flags.js" 2>/dev/null | head -n 1); if [ -n "$candidate" ]; then root=$(dirname "$(dirname "$(dirname "$candidate")")"); printf "%s" "$input" | node "$root/scripts/hooks/run-with-flags.js" "session:start" "scripts/hooks/session-start.js" "minimal,standard,strict"; exit $?; fi; fi; done; echo "[SessionStart] WARNING: could not resolve ECC plugin root; skipping session-start hook" >&2; printf "%s" "$input"; exit 0'*node "${CLAUDE_PLUGIN_ROOT}/scripts/hooks/run-with-flags.js" "post:mcp-health-check" "scripts/hooks/mcp-health-check.js" "standard,strict"Batch formats (Biome/Prettier) and typechecks (tsc) all edited JS/TS files at Stop event instead of per Edit. Hooks on 7 events like PreToolUse; runs bash, writes files.