# Documentation

> Generates and maintains project documentation including API docs, docstrings, README updates, and changelogs.

- Skill: `tomevault-io/documentation-92` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/documentation-92`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/documentation-92/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/documentation-92

---


# Documentation Skill

When generating or updating documentation, ensure accuracy, completeness, and consistency with the codebase.

## 1. Public API Documentation (JSDoc / Docstrings)

- Add documentation to all public functions, methods, classes, and interfaces
- Include: purpose, parameters (with types), return value, thrown exceptions/errors
- Use the project's established doc format (JSDoc, Google-style docstrings, KDoc, Javadoc, etc.)
- Include usage examples for non-obvious APIs
- Document default values for optional parameters
- Mark deprecated APIs with `@deprecated` and include the migration path
- Keep doc comments concise — one sentence for simple functions, detailed for complex ones

## 2. README Updates

- Update the README when new features, commands, or configuration options are added
- Keep the installation/setup section current with any new dependencies or steps
- Update the usage section with new CLI commands, API endpoints, or UI features
- Maintain the project description to accurately reflect current capabilities
- Ensure badges (CI status, coverage, version) are functional and up to date
- Do NOT add sections that duplicate information available elsewhere (e.g., full API reference)

## 3. API Documentation

- Document all endpoints: method, path, description, parameters, request/response bodies
- Include example requests and responses with realistic data
- Document all possible error responses with HTTP status codes and error body shapes
- Document authentication requirements per endpoint
- Note rate limits, pagination parameters, and query filters
- Keep API docs versioned alongside the code — prefer generated docs (OpenAPI/Swagger) when available

## 4. Complex Business Logic

- Add inline comments explaining the *why* behind non-obvious decisions
- Document algorithms with a brief description of the approach and time/space complexity
- Explain business rules that are not self-evident from the code
- Document invariants and preconditions that callers must satisfy
- Reference external specifications, RFCs, or requirements documents by number/link

## 5. Changelog Maintenance

- Follow Keep a Changelog format (<https://keepachangelog.com>)
- Categorize entries: Added, Changed, Deprecated, Removed, Fixed, Security
- Write entries from the user's perspective, not the developer's
- Include the PR or issue number for traceability
- Keep an "Unreleased" section at the top for pending changes
- Date entries use ISO 8601 format (YYYY-MM-DD)

## 6. Architecture Documentation

- Update architecture docs when new services, modules, or integrations are added
- Document data flows for new features that cross service boundaries
- Keep component diagrams current (or flag them as outdated)
- Record significant design decisions as ADRs (Architecture Decision Records)

## Quality Standards

- Documentation must be accurate — verify all code references, paths, and commands
- Use consistent terminology throughout (define terms in a glossary if needed)
- Write for the audience: README for new developers, API docs for consumers, inline comments for maintainers
- Run documentation links and code examples to verify they work
- Use active voice and imperative mood for instructions
- Avoid jargon without explanation; define acronyms on first use

---
> Source: [ADORSYS-GIS/cloud-identity-wallet](https://github.com/ADORSYS-GIS/cloud-identity-wallet) — distributed by [TomeVault](https://tomevault.io).
<!-- tomevault:4.0:skill_md:2026-06-16 -->

