Files
claude-workflow/hooks/auto-format.sh
T
martinandClaude Sonnet 4.6 a07c436a7d Optimaler Entwicklungs-Workflow eingerichtet
- workflow/: Schnellreferenz, Modell-Strategie, Story-Lifecycle-Doku
- skills/: /go, /plan-review, /story als globale Skills
- hooks/: auto-format.sh (PostToolUse), verify-on-stop.sh (Stop)
- agents/: plan-reviewer (Opus 4.7) für unabhängigen Plan-Review
- Symlinks in ~/.claude/skills/ und ~/.claude/agents/
- settings.json um Hooks-Sektion erweitert

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-19 10:38:30 +02:00

34 lines
834 B
Bash
Executable File

#!/usr/bin/env bash
# PostToolUse-Hook: Formatiert geänderte Dateien nach Edit/Write
# Wird von settings.json nach Edit- und Write-Tool-Aufrufen ausgeführt
set -euo pipefail
# Dateiname aus Umgebungsvariable (Claude Code setzt CLAUDE_TOOL_INPUT_FILE_PATH)
FILE="${CLAUDE_TOOL_INPUT_FILE_PATH:-}"
if [[ -z "$FILE" || ! -f "$FILE" ]]; then
exit 0
fi
EXT="${FILE##*.}"
case "$EXT" in
py)
if command -v ruff &>/dev/null; then
ruff format --quiet "$FILE" 2>/dev/null || true
ruff check --fix --quiet "$FILE" 2>/dev/null || true
fi
;;
js|ts|vue|jsx|tsx)
DIR=$(dirname "$FILE")
if [[ -f "$DIR/package.json" ]] || [[ -f "$DIR/../package.json" ]]; then
if command -v npx &>/dev/null; then
npx --yes eslint --fix --quiet "$FILE" 2>/dev/null || true
fi
fi
;;
esac
exit 0