specgen-sdk-javalisted
Install: claude install-skill rashidee/co2-skills
# Java SDK (Multi-Release Fat JAR) Specification Generator
This skill generates a comprehensive specification document (Markdown) that serves as a
blueprint for building a distributable Java **SDK library**. The library is published as
a **Multi-Release fat JAR** built with Maven, supports JDK 8 as a baseline and uses
JDK 11+ overlays where modern APIs are beneficial, and wraps a remote REST API
(plus any additional protocols defined in the PRD's Architecture Principle section).
The specification does NOT generate code. It produces a detailed, opinionated technical
document describing every layer of the library — from the `pom.xml` Multi-Release
configuration, to the OkHttp transport, to the model classes and high-level service
facade — so that implementation becomes a mechanical exercise.
## Library-First Mindset
This is **NOT** an application. There is no `main()` (only an optional minimal one for
diagnostics), no Spring, no application server, no scheduler. The output is a JAR that
downstream Java applications add to their classpath and call as a normal API.
Every design decision below is biased toward:
1. **Minimum third-party footprint.** Each transitive dependency the SDK pulls in becomes
a problem for every downstream consumer. The skill MUST resist adding libraries unless
the JDK and OkHttp cannot reasonably cover the use case.
2. **Long-lived JDK compatibility.** Consumers may run JDK 8, 11, 17, or 21. The
Multi-Release JAR layout lets the SDK ship