documentlisted
Install: claude install-skill epicsagas/epic-harness
# Document — Auto-Documentation
## When to Trigger
- New public function, class, or API endpoint
- Function signature changed (params added/removed)
- Module purpose unclear from code alone
- User explicitly asks for documentation
## Process
### 1. Detect what changed
- New exports? → Add JSDoc/docstring
- Changed params? → Update existing docs
- New file? → Add module-level doc comment
**Why:** Undocumented changes are the most common source of onboarding friction. Catching every diff ensures no public surface is left without context.
### 2. Write docs
Follow the project's existing doc style. If none exists:
**TypeScript/JavaScript:**
```typescript
/**
* Brief description of what this does.
*
* @param name - Description of parameter
* @returns Description of return value
* @throws ErrorType - When this happens
*
* @example
* const result = myFunction("input");
*/
```
**Python:**
```python
def my_function(name: str) -> str:
"""Brief description.
Args:
name: Description of parameter.
Returns:
Description of return value.
Raises:
ValueError: When this happens.
"""
```
**Why:** Consistent doc style across the project reduces cognitive load for every reader. Inlining examples prevents the "how do I call this?" round-trip.
### 3. Don't over-document
- Skip obvious getters/setters
- Skip internal/private helpers unless complex
- Code should be self-documenting first, comments second
**Why:** Noise docs train readers