chore: track claude project settings and lint hook

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QwNRDG9WaKM3Bb9WJddFzx
This commit is contained in:
kamask
2026-10-22 13:07:47 +03:00
co-authored by Claude Sonnet 5.5
parent b0a024754a
commit 1dcf03cfa6
3 changed files with 51 additions and 1 deletions
+21
View File
@@ -0,0 +1,21 @@
#!/usr/bin/env bash
# Usage: lint-format-file.sh <file>
# Run by the Claude Code PostToolUse hook after every Edit/Write (see .claude/settings.json).
# ESLint --fix runs on .ts/.html only, then Prettier on anything it supports.
# Exit 2 + stderr when ESLint still has errors after the autofix, so Claude sees and fixes them.
f=$1
cd "$(dirname "$0")/../.." || exit 0
rc=0
case "$f" in
*.ts | *.html)
out=$(node_modules/.bin/eslint --fix --no-warn-ignored "$f" 2>&1) || rc=2
;;
esac
node_modules/.bin/prettier --write --ignore-unknown "$f" >/dev/null 2>&1
if [ "$rc" -ne 0 ]; then
echo "$out" >&2
exit 2
fi
+27
View File
@@ -0,0 +1,27 @@
{
"permissions": {
"allow": [
"mcp__angular-cli__list_projects",
"mcp__angular-cli__get_best_practices",
"Bash(git switch *)"
]
},
"enabledMcpjsonServers": ["angular-cli"],
"enabledPlugins": {
"frontend-design@anthropic-plugin-directory": true
},
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "bash \"$CLAUDE_PROJECT_DIR/.claude/hooks/lint-format-file.sh\" \"$(jq -r '.tool_response.filePath // .tool_input.file_path')\"",
"statusMessage": "ESLint --fix + Prettier..."
}
]
}
]
}
}