agentsclimarketplace

Java commit

Skill ducpm2303/claude-java-plugins/plugins/java-core/skills/java-commit

Java developer toolkit for Claude Code — skills, agents, hooks, and coding standards for Java 8+ projects

Install
npx -y skills add ducpm2303/claude-java-plugins --skill java-commit

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 17 stars17 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Generates a Conventional Commits message for staged Java changes. Use when user asks to "write a commit message", "help me commit", "what should my commit say", "summarize my changes", "draft a commit", or "create commit message".

SKILL.md

2.9 KB, as published. Nobody here has run it

Generate a git commit message for the current Java changes. Use the Conventional Commits format tailored to Java/Spring projects.

Step 1 — Gather context

Run (or ask Claude to run): git diff --staged --stat to see which files changed. If nothing is staged, check git diff --stat for unstaged changes.

Step 2 — Analyse the changes

Based on the changed files, determine:

  • Type of change: feat, fix, refactor, test, docs, chore, perf, security
  • Scope: the Java package, module, or layer affected (e.g., service, controller, repository, security)
  • What changed: specific class names, method names, or behaviours

Step 3 — Generate commit message

Use this format:

<type>(<scope>): <imperative summary under 72 chars>

[optional body — what changed and why, not how]

[optional footer — breaking changes, issue references]

Java-specific type rules:

  • feat: new class, method, endpoint, or feature
  • fix: bug fix in logic, null check, exception handling
  • refactor: extract method, rename, restructure — no behaviour change
  • perf: N+1 fix, index added, caching, virtual threads
  • test: new or updated JUnit/Mockito/Testcontainers tests
  • security: OWASP fix, auth change, secret handling improvement
  • chore: dependency update, build config, version bump

Java-specific scope examples:

  • user-service, order-controller, payment-repository
  • auth, security, jpa, api, dto
  • pom, gradle, ci

Examples:

feat(user-service): add findByEmail with case-insensitive search

Adds UserService.findByEmail() using Spring Data derived query.
Returns Optional<User> to handle missing users without null checks.
fix(order-controller): return 404 when order not found instead of 500

Previously threw NullPointerException when order ID did not exist.
Now throws ResourceNotFoundException mapped to 404 by GlobalExceptionHandler.
perf(product-repository): fix N+1 query with @EntityGraph on findAll

Each product was triggering a separate query for its category.
Added @EntityGraph(attributePaths = "category") to load in one JOIN.
refactor(auth-service): replace field injection with constructor injection

Removes @Autowired field injection on JwtTokenProvider and UserDetailsService.
Constructor injection makes dependencies explicit and improves testability.

Step 4 — Output

Provide:

  1. The commit message (ready to copy)
  2. The git command: git commit -m "$(cat <<'EOF'\n[message]\nEOF\n)"

If multiple logical changes are staged together, suggest splitting into separate commits.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.