mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-03-30 13:43:26 +08:00
33 lines
869 B
Bash
Executable File
33 lines
869 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
HOOK_ID="${1:-}"
|
|
REL_SCRIPT_PATH="${2:-}"
|
|
PROFILES_CSV="${3:-standard,strict}"
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PLUGIN_ROOT="${CLAUDE_PLUGIN_ROOT:-$(cd "${SCRIPT_DIR}/../.." && pwd)}"
|
|
|
|
# Preserve stdin for passthrough or script execution
|
|
INPUT="$(cat)"
|
|
|
|
if [[ -z "$HOOK_ID" || -z "$REL_SCRIPT_PATH" ]]; then
|
|
printf '%s' "$INPUT"
|
|
exit 0
|
|
fi
|
|
|
|
# Ask Node helper if this hook is enabled
|
|
ENABLED="$(node "${PLUGIN_ROOT}/scripts/hooks/check-hook-enabled.js" "$HOOK_ID" "$PROFILES_CSV" 2>/dev/null || echo yes)"
|
|
if [[ "$ENABLED" != "yes" ]]; then
|
|
printf '%s' "$INPUT"
|
|
exit 0
|
|
fi
|
|
|
|
SCRIPT_PATH="${PLUGIN_ROOT}/${REL_SCRIPT_PATH}"
|
|
if [[ ! -f "$SCRIPT_PATH" ]]; then
|
|
echo "[Hook] Script not found for ${HOOK_ID}: ${SCRIPT_PATH}" >&2
|
|
printf '%s' "$INPUT"
|
|
exit 0
|
|
fi
|
|
|
|
printf '%s' "$INPUT" | "$SCRIPT_PATH"
|