Documentation
Skill ulpi-io/plugin-marketplace/plugins/anthropics/skills/documentation
In-code documentation, folder READMEs, and code comments. Use when writing README.md files, JSDoc comments, or explaining code organization.From its SKILL.md
npx -y skills add ulpi-io/plugin-marketplace --skill documentationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
3.1 KB, 677 tokens by cl100k_base, as published. Nobody here has run it
Documentation
Follow writing-voice for tone.
Documentation explains why, not what. Users can read code to see what it does. They need you to explain the reasoning.
Folder READMEs
Primary job: explain why this folder exists and the mental model.
Can Include
- ASCII art diagrams for complex relationships
- Overview of key exports or entry points
- Brief file descriptions IF they add context beyond the filename
- Relationships to other folders
Avoid
- Exhaustive file listings that just duplicate
ls - Descriptions that repeat the filename ("auth.ts - authentication")
- Implementation details better expressed in code
Good
# Converters
Transform field schemas into format-specific representations.
```
┌─────────────┐ ┌──────────────┐
│ Field Schema│────▶│ to-arktype │────▶ Runtime validation
└─────────────┘ ├──────────────┤
│ to-drizzle │────▶ SQLite columns
└──────────────┘
```
Field schemas are pure JSON Schema objects with `x-component` hints. Each converter takes the same input and produces output for a specific consumer.
Bad
# Converters
- `to-arktype.ts` - Converts to ArkType
- `to-drizzle.ts` - Converts to Drizzle
- `index.ts` - Exports
The bad example just lists files without explaining the pattern or when to add new converters.
JSDoc Comments
JSDoc explains when and why to use something, not just what it does.
Good
/**
* Get all table helpers as an array.
*
* Useful for providers and indexes that need to iterate over all tables.
* Returns only the table helpers, excluding utility methods like `clearAll`.
*
* @example
* ```typescript
* for (const table of tables.defined()) {
* console.log(table.name, table.count());
* }
* ```
*/
defined() { ... }
Bad
/** Returns all table helpers as an array. */
defined() { ... }
Rules
- Include
@exampleblocks with realistic usage - Explain WHEN to use it, not just WHAT it does
- Document non-obvious behavior or edge cases
- Public APIs get detailed docs; internal helpers can be minimal
Code Comments
Comments explain why, not what.
Good
// Y.Doc clientIDs are random 32-bit integers, so we can't rely on ordering.
// Use timestamps from the entries themselves for deterministic sorting.
const sorted = entries.sort((a, b) => a.timestamp - b.timestamp);
Bad
// Sort the entries
const sorted = entries.sort((a, b) => a.timestamp - b.timestamp);
Rules
- If the code is clear, don't comment it
- Comment the "why" when it's not obvious
- Comment workarounds with links to issues/docs
- Delete commented-out code; that's what git is for
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.