This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
# Default build
./mvnw clean install
# Run tests
./mvnw test
# Run a single test class
./mvnw test -Dtest=ClassName
# Run a single test method
./mvnw test -Dtest=ClassName#methodName
# Pre-commit checks
./mvnw -Ppre-commit clean verify -DskipTestsAll cuioss repositories have branch protection on main. Direct pushes to main are never allowed. Always use this workflow:
- Create a feature branch:
git checkout -b <branch-name> - Commit changes:
git add <files> && git commit -m "<message>" - Push the branch:
git push -u origin <branch-name> - Create a PR:
gh pr create --repo cuioss/cui-java-module-template --head <branch-name> --base main --title "<title>" --body "<body>" - Wait for CI + Gemini review (waits until checks complete):
gh pr checks --watch - Handle Gemini review comments — fetch with
gh api repos/cuioss/cui-java-module-template/pulls/<pr-number>/commentsand for each:- If clearly valid and fixable: fix it, commit, push, then reply explaining the fix and resolve the comment
- If disagree or out of scope: reply explaining why, then resolve the comment
- If uncertain (not 100% confident): ask the user before acting
- Every comment MUST get a reply (reason for fix or reason for not fixing) and MUST be resolved
- Do NOT enable auto-merge unless explicitly instructed. Wait for user approval.
- Return to main:
git checkout main && git pull