redis/writing-javadoc
Use when writing or editing Javadoc for Lettuce public API — new methods, classes, deprecations, or when a reviewer asks to fix or improve doc comments. Points to the full house ruleset in .agents/docs/javadoc.md (imperative method summaries, fixed tag order, @param/@return/@throws/@since/@deprecated house forms) and the rule that command-interface Javadoc is edited in the template, not the generated files. Trigger on "write javadoc for", "document this method", "add a deprecation notice", "fix the doc comment".
npx skills add https://github.com/redis/lettuce --skill writing-javadoc
The complete, authoritative ruleset is .agents/docs/javadoc.md —
read it before writing. This skill is the operating checklist; the doc wins on any
detail.
src/main/java/io/lettuce/core/api/{sync,async,reactive}/ are generated
(@generated marker). Edit the Javadoc in the template at
src/main/templates/io/lettuce/core/api/<Group>Commands.java, not the generated
file — the template comment feeds every flavor. See architecture.md.
errors, nullability) — never implementation details or refactor rationale.
noun phrase for types. Not "This method…". Ends in a clean period.
@param → @return → @throws → @author → @since → @see→ @deprecated.
@param for every parameter (type params <K>/<V> first); statenullability with the house phrases must not be {@code null}. / can be {@code null}.
@return for non-void; describe the value and its meaningful states, not thetype.
@since is a bare version — @since 7.7 (see .agents/docs/javadoc.md for derivingthe version from the build).
@deprecated — keep the @Deprecated annotation and the tag in sync; houseform: `@deprecated since <version>, use {@link Replacement} instead; scheduled for
removal in a future major release.`
@author on types only — the *maintainer's* name (an agent must not inventone); don't reorder existing authors.
{@code null} for literals; {@link} only to types resolvable on thecompile classpath (else {@code TypeName}).
Match the surrounding file, and consult .agents/docs/javadoc.md for any subtle case
rather than inventing a rule. Javadoc lint is off in the build (<doclint>none</doclint>),
so review is the only check — get it right by hand.
Take redis/writing-javadoc from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.