Training skill that generates and validates the lombok-coding-conventions skill. Run this skill to regenerate the conventions from reference material and verify them against test cases. Use when updating or re-tuning Lombok conventions.
This skill regenerates the lombok-coding-conventions skill from reference material
and validates it against test cases.
A SKILL.md at plugins/conventions/skills/lombok-coding-conventions/SKILL.md that
teaches Claude to replace Java boilerplate with Lombok annotations wherever Lombok
is on the classpath.
Read references/conventions.md for the full set of conventions. Then write the
output skill:
plugins/conventions/skills/lombok-coding-conventions/SKILL.mdlombok-coding-conventions, user-invocable: false, model: haiku-4.5Key things the skill must make very clear:
@Inject/@Autowired constructors go via onConstructor_ on @RequiredArgsConstructorLogger fields must be replaced with the matching @Log variant (@Slf4j, @Log4j2, etc.)@UtilityClass; exception classes use @StandardExceptionlombok.val / lombok.var must never be used — use Java's native var insteadAfter regenerating, validate the skill using the test cases in evals/evals.json.
For each test case, spawn a subagent that:
plugins/conventions/skills/lombok-coding-conventions/SKILL.mdThen run the shared grading script against the outputs:
cd plugins/training
python -m shared.grade <workspace-dir>
The script checks:
toString / equals / hashCodeLogger field when @Slf4j (or variant) applies@Inject/@Autowired constructors use onConstructor_@StandardException; utility classes use @UtilityClasslombok.val / lombok.var imports@Data (or the equivalent combination)@Inject constructor and manual SLF4J Logger field → @RequiredArgsConstructor(onConstructor_ = @Inject) + @Slf4jStringUtils utility class and a ValidationException exception class using @UtilityClass and @StandardExceptionInput files for refactoring tests are in evals/files/.
The authoritative conventions are in references/conventions.md.