From d56dc9aa9a24b826b0e4b331b4583100530dc32d Mon Sep 17 00:00:00 2001 From: jrdrew Date: Mon, 12 Oct 2026 15:16:37 -0400 Subject: [PATCH 1/2] include some claude specific recommendations --- .claude/settings.json | 29 +++++++++++++++++++++++++++++ CLAUDE.md | 9 +++++++++ 2 files changed, 38 insertions(+) create mode 100644 .claude/settings.json diff --git a/.claude/settings.json b/.claude/settings.json new file mode 100644 index 0000000..0ac89e5 --- /dev/null +++ b/.claude/settings.json @@ -0,0 +1,29 @@ +{ + "hooks": { + "PreToolUse": [ + { + "matcher": "Bash", + "hooks": [ + { + "type": "command", + "if": "Bash(git commit *)", + "command": "output=$(cd /Users/jonathandrew/dev/templateJavaProject && ./gradlew compileJava spotlessCheck checkstyleMain checkstyleTest checkstyleIntTest pmdMain pmdTest pmdIntTest 2>&1); code=$?; if [ $code -ne 0 ]; then reason=$(printf '%s' \"$output\" | tail -150); jq -n --arg reason \"$reason\" '{hookSpecificOutput:{hookEventName:\"PreToolUse\",permissionDecision:\"deny\",permissionDecisionReason:(\"Pre-commit Gradle checks failed (compileJava, spotlessCheck, checkstyle*, pmd*):\\n\\n\" + $reason)}}'; else echo '{\"hookSpecificOutput\":{\"hookEventName\":\"PreToolUse\",\"permissionDecision\":\"allow\"}}'; fi", + "timeout": 180, + "statusMessage": "Running compile, format check, Checkstyle, PMD before commit..." + } + ] + } + ], + "SessionStart": [ + { + "matcher": "compact", + "hooks": [ + { + "type": "command", + "command": "bash .claude/hooks/post-compact-context.sh" + } + ] + } + ] + } +} diff --git a/CLAUDE.md b/CLAUDE.md index 835f110..294a513 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -18,3 +18,12 @@ src/int-test — integration tests, run by `intTest`, not part of `test` - Formatting via Spotless + google-java-format — run `spotlessApply`, don't hand-format - Coverage gate requires 80% line / 70% branch, combined across unit + integration tests - PRs must list Jira story keys per `.github/pull_request_template.md` + +## Recommended Claude Code plugins +``` +/plugin marketplace add stride-nyc/stride-plugins-official +/plugin install pdca-framework@stride-plugins-official +/plugin install afb-tdd@stride-plugins-official + +/plugin install superpowers@claude-plugins-official +``` From 667eb129522fda71d85b240dee44d4fece4b7bb6 Mon Sep 17 00:00:00 2001 From: jrdrew Date: Mon, 12 Oct 2026 15:30:03 -0400 Subject: [PATCH 2/2] fixing the link when changing dir --- .claude/settings.json | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/.claude/settings.json b/.claude/settings.json index 0ac89e5..ea0a5a7 100644 --- a/.claude/settings.json +++ b/.claude/settings.json @@ -7,23 +7,12 @@ { "type": "command", "if": "Bash(git commit *)", - "command": "output=$(cd /Users/jonathandrew/dev/templateJavaProject && ./gradlew compileJava spotlessCheck checkstyleMain checkstyleTest checkstyleIntTest pmdMain pmdTest pmdIntTest 2>&1); code=$?; if [ $code -ne 0 ]; then reason=$(printf '%s' \"$output\" | tail -150); jq -n --arg reason \"$reason\" '{hookSpecificOutput:{hookEventName:\"PreToolUse\",permissionDecision:\"deny\",permissionDecisionReason:(\"Pre-commit Gradle checks failed (compileJava, spotlessCheck, checkstyle*, pmd*):\\n\\n\" + $reason)}}'; else echo '{\"hookSpecificOutput\":{\"hookEventName\":\"PreToolUse\",\"permissionDecision\":\"allow\"}}'; fi", + "command": "output=$(cd \"$CLAUDE_PROJECT_DIR\" && ./gradlew compileJava spotlessCheck checkstyleMain checkstyleTest checkstyleIntTest pmdMain pmdTest pmdIntTest 2>&1); code=$?; if [ $code -ne 0 ]; then reason=$(printf '%s' \"$output\" | tail -150); jq -n --arg reason \"$reason\" '{hookSpecificOutput:{hookEventName:\"PreToolUse\",permissionDecision:\"deny\",permissionDecisionReason:(\"Pre-commit Gradle checks failed (compileJava, spotlessCheck, checkstyle*, pmd*):\\n\\n\" + $reason)}}'; else echo '{\"hookSpecificOutput\":{\"hookEventName\":\"PreToolUse\",\"permissionDecision\":\"allow\"}}'; fi", "timeout": 180, "statusMessage": "Running compile, format check, Checkstyle, PMD before commit..." } ] } - ], - "SessionStart": [ - { - "matcher": "compact", - "hooks": [ - { - "type": "command", - "command": "bash .claude/hooks/post-compact-context.sh" - } - ] - } ] } }