Repository navigation
Releases
v0.2.1
Full Changelog: v0.2.0...v0.2.1
v0.2.0
Adds framework upgrades, starting with Quarkus.
java-framework-upgrade: router that plans Quarkus upgrades one LTS stream at a time (2.13 → 3.2 → 3.8 → 3.15 → 3.20 → 3.27 → 3.33 → 3.40) and inserts the JDK hops each stream needs throughjava-upgrade. Quarkus 4.0 (beta) runs only on opt-in.java-quarkus-migrate: runs one hop withquarkus update(OpenRewrite recipes), reviews the diff, then applies the manual items from per-hop references built from the Quarkus migration guides.detect.shreports Quarkus version, platform, plugin, extensions and CLI;scan.sh --framework quarkusscans 57 Quarkus signals.java-upgradenow routes Quarkus upgrades to the new router.
Gradle Kotlin DSL builds cannot run the update recipes; the skills bump versions by hand for them.
Full Changelog: v0.1.5...v0.2.0
v0.1.5
v0.1.4
scan.sh --security: 20 secure-coding signals (deserialization, XML factories, SQL/command construction, mutable statics, native methods, TLS trust, archives, add-opens), comment-aware, covered by a new fixture. java-secure-coding now runs its review through the scanner.
v0.1.3
Add java-secure-coding: Oracle Secure Coding Guidelines with an errata of the guide's broken snippets and XML guidance checked on JDK 21-27. java-migrate: JDK 24 XML limits and JDK 25 XSLT extension-function defaults.
v0.1.2
Fixes
java-modernize: the fan-out replacement forStructuredTaskScopewas described as fail fast but waits on futures in submission order. It is now labelled as the simple form, and a real fail-fast form based onExecutorCompletionServiceis added: it reacts to the first failing task and cancels the rest. Both throwExecutionExceptionwith the subtask's cause, likethrowIfFailed()did.
Tests
- The Gradle fixture now has JUnit 5 tests.
- First real Gradle end-to-end run: the fixture went from Java 21 / Gradle 8.5 (with String Templates,
ShutdownOnFailureand--enable-preview) to Java 25 / Gradle 9.9.0, and./gradlew clean buildis green on JDK 25. tests/run.sh36 passed,tests/compile-snippets.sh76 passed,claude plugin validate . --strictpasses.
Update with /plugin marketplace update filippobuletto.
v0.1.1
First release of java-toolkit, a Claude Code plugin with Java skills. This release ships the upgrade skill set: JDK 8 to 27 for Maven and Gradle projects.
Skills
java-upgrade: entry point. Detects the build and installed JDKs, asks for the target, writes.java-upgrade/plan.mdfor your approval, then applies one LTS hop at a time with a build and test run after every step.java-assess: read-only audit with a baseline build, signal scan,jdeps --jdk-internalsandjdeprscan --for-removal.java-build: Maven and Gradle release/toolchains, wrapper and plugin versions, annotation processors, Mockito agent, build-blocker libraries, CI and Docker JDK.java-migrate: breaking changes and fixes per hop (8-to-11, 11-to-17, 17-to-21, 21-to-25, 25-to-27).java-modernize: optional adoption of newer features, gated by the project's release.
java-migrate and java-modernize also answer direct questions ("does Thread.stop still work on 27", "can we use records while targeting 11") from the checked references.
Install
/plugin marketplace add filippobuletto/claude-plugins
/plugin install java-toolkit@filippobuletto
Verification
claude plugin validate . --strictpassestests/run.sh: 36 passed (detect/scan against fixtures, also on bash 3.2 with BSD tools)tests/compile-snippets.sh: 75 reference snippets compile on their claimed JDK- End-to-end: the Java 8 fixture upgraded to 17,
mvn clean verifygreen on JDK 17 - Light eval run: all cases pass with the plugin
Gradle support is tested statically only.