protogenlisted
Install: claude install-skill adamw7/tools
# Protogen Skill
Generate and use the compile-time-safe protobuf builders produced by
`code/protogen-maven-plugin`. The point of this module is **shift-left**: stock
protobuf builders only detect a missing `required` field at runtime (an
`UninitializedMessageException` from `build()`), while the generated builder
chain makes the same mistake **fail to compile**.
## When to Use
- Wiring `protogen-maven-plugin` into a `pom.xml`
- Explaining or debugging why generated builders won't compile until every
required field is set
- Questions about proto2 vs proto3 handling, presence accessors, or `oneof`
- The user says "generate builders" / "protobuf builder" / "required field" /
"shift-left validation"
## How the plugin is wired
The plugin runs **after** protobuf classes exist, so it consumes the compiled
`*.proto` output and emits builder sources. Bind its `code-generator` goal to a
generate-sources phase, point it at the packages holding the generated protobuf
messages, and name an output package for the builders:
```xml
<plugin>
<groupId>io.github.adamw7</groupId>
<artifactId>protogen-maven-plugin</artifactId>
<!-- Use the latest release: https://github.com/adamw7/tools/releases/latest -->
<configuration>
<generatedSourcesDir>${project.basedir}/target/generated-sources/</generatedSourcesDir>
<pkgs>
<param>io.github.adamw7.tools.code.protos</param>
</pkgs>
<outputpackage>io.github.adamw7.tools.code.builders</outpu