jsdocs

Writes and updates Effect public API JSDoc to satisfy the jsdocs oxlint rule.

3|Updated Jan 9, 2026
One-click install
npx skills add https://github.com/craft-ts/craft-ts --skill jsdocs-craft-ts
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: jsdocs
Source: https://github.com/craft-ts/craft-ts/tree/main/.references/effect-ts/.agents/skills/jsdocs
Command: npx skills add https://github.com/craft-ts/craft-ts --skill jsdocs-craft-ts

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Public API documentation in the Effect codebase must follow a strict JSDoc structure enforced by a custom oxlint rule, and writing or fixing these comments by hand is error-prone and inconsistent. ## Core Features & Use Cases - Standardized Documentation Shape: Enforces a required template with a one-paragraph short description, ordered optional sections (When to use, Details, Gotchas), titled examples, and correctly ordered tags (@deprecated, @default, @see, @category, @since). - Module Refinement Audits: Performs dedicated @see and Gotchas audits across a module to keep cross-references semantically useful and surface real caveats. - Executable Examples: Supports import.meta.vitest runnable examples validated with pnpm doctest, plus lint validation through the custom jsdocs rule. - Use Case: When adding a new public function to an Effect module, use this Skill to generate compliant JSDoc with a deterministic example, correct @category and @since tags, and then validate it with pnpm lint. ## Quick Start Write compliant JSDoc for the new public API I just added to this Effect module and validate it with the jsdocs lint rule.

Frequently Asked Questions about jsdocs

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write JSDoc for Effect public APIs?▼

Write a multiline JSDoc comment with a one-paragraph short description, optional ordered sections (When to use, Details, Gotchas), titled Example sections with ts code fences, and tags in the order @deprecated, @default, @see, @category, @since.

How do I fix jsdocs oxlint rule diagnostics?▼

Inspect the declaration, implementation, and nearby tests, then rewrite the comment into the required documentation shape while preserving correct facts. Run pnpm lint afterward, since the linter includes the custom rule that checks public API JSDoc.

What sections are allowed in Effect JSDoc comments?▼

Only the standard headings are allowed, in this order: When to use, Details, and Gotchas, followed by Example sections with unique titles. Markdown headings and ad hoc bold headings such as Notes are not permitted.

How do I run executable JSDoc examples in the Effect repo?▼

Mark runnable TypeScript fences with import.meta.vitest and execute them from the repository root with pnpm doctest --run followed by the source files. Each marked example must be a complete, deterministic, self-contained module.

When should I add @see tags to API documentation?▼

Add @see tags only for semantically useful related public APIs such as siblings, alternatives, inverse operations, or closely related types. Do not link implementation dependencies, broad concepts, or APIs that merely share a name.