writing-documentation

Creates technical documentation including READMEs, API references, user guides, architecture docs, ADRs, and runbooks. Use for requests to create, write, generate, or draft documentation. Trigger phrases include "document this", "write docs", "create readme", "API reference", "user guide", "architecture docs", "ADR", "runbook". For updating existing READMEs, use updating-readme instead.

16 stars

Best use case

writing-documentation is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Creates technical documentation including READMEs, API references, user guides, architecture docs, ADRs, and runbooks. Use for requests to create, write, generate, or draft documentation. Trigger phrases include "document this", "write docs", "create readme", "API reference", "user guide", "architecture docs", "ADR", "runbook". For updating existing READMEs, use updating-readme instead.

Teams using writing-documentation should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/writing-documentation-austinogilvie/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/documentation/writing-documentation-austinogilvie/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/writing-documentation-austinogilvie/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How writing-documentation Compares

Feature / Agentwriting-documentationStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Creates technical documentation including READMEs, API references, user guides, architecture docs, ADRs, and runbooks. Use for requests to create, write, generate, or draft documentation. Trigger phrases include "document this", "write docs", "create readme", "API reference", "user guide", "architecture docs", "ADR", "runbook". For updating existing READMEs, use updating-readme instead.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Writing Documentation

## Overview

Expert technical documentation skill for creating clear, accurate, user-friendly documentation. Handles lightweight documentation tasks directly and delegates comprehensive tasks to the writing-documentation agent.

## When to Use This Skill

Use writing-documentation when you need to create:
- **API documentation** from code (OpenAPI, endpoint references, authentication docs)
- **User guides** and tutorials (getting started, feature walkthroughs)
- **Architecture documentation** (system design, ADRs, component diagrams)
- **Operational docs** (runbooks, deployment guides, troubleshooting)
- **Project documentation** (comprehensive READMEs, CONTRIBUTING guides)

## Handoff Rules

### To updating-readme skill
For maintaining existing READMEs (section updates, dependency changes, minor edits), use updating-readme instead. This skill creates; updating-readme maintains.

### To writing-documentation agent
Delegate to the writing-documentation agent via the Task tool when ANY of these apply:
- Output will be multiple files
- User guide will exceed 500 words
- Requires architecture documentation or ADRs
- API documentation requires analyzing more than 3 source files
- Creating documentation from scratch for an undocumented project
- Task requires deep codebase analysis

**How to delegate:**
Use the Task tool with agent `writing-documentation`. Example:
```
Task: writing-documentation
Prompt: Create comprehensive API documentation for the authentication module including all endpoints, request/response schemas, and error codes.
```

### Decision Matrix

| Scenario | Handle Here | Delegate to Agent |
|----------|-------------|-------------------|
| Single README creation | ✓ | |
| API docs for 1-3 endpoints | ✓ | |
| Short user guide (<500 words) | ✓ | |
| Multi-file documentation site | | ✓ |
| Full API reference (10+ endpoints) | | ✓ |
| Architecture docs with ADRs | | ✓ |
| Comprehensive project docs | | ✓ |

## Quick Reference

| Doc Type | Workflow | Template |
|----------|----------|----------|
| API Reference | `workflows/api-docs.md` | `templates/api-reference.md` |
| User Guide | `workflows/user-guide.md` | `templates/user-guide.md` |
| Architecture | `workflows/architecture.md` | `templates/adr.md` |
| Troubleshooting | `workflows/troubleshooting.md` | — |
| Runbook | — | `templates/runbook.md` |
| README | — | `templates/readme-comprehensive.md` |

## Process

When asked to create documentation:

1. **Scope Assessment**: Determine if this should be delegated to the agent (see Decision Matrix above)
2. **If delegating**: Use Task tool with writing-documentation agent
3. **If handling here**:
   - Analyze the code/system to understand what needs documenting
   - **Read the appropriate workflow file:**
     - API docs → Read `workflows/api-docs.md`
     - User guide → Read `workflows/user-guide.md`
     - Architecture → Read `workflows/architecture.md`
     - Troubleshooting → Read `workflows/troubleshooting.md`
   - **Read the matching template:**
     - API docs → Read `templates/api-reference.md`
     - README → Read `templates/readme-comprehensive.md`
     - ADR → Read `templates/adr.md`
     - Runbook → Read `templates/runbook.md`
     - User guide → Read `templates/user-guide.md`
   - Follow the workflow steps
   - Run validation loop
   - Deliver documentation

## Core Principles

### Audience Awareness
Always identify the target audience before writing:
- **End Users**: Simple language, task-oriented, minimal jargon
- **Developers**: Technical details, code examples, API specifics
- **Administrators**: Configuration, deployment, maintenance
- **Contributors**: Architecture, conventions, processes

### Documentation Standards

**Structure**
- Clear hierarchy with consistent heading levels
- Table of contents for documents > 500 words
- Cross-references between related sections
- Progressive disclosure (basic → advanced)

**Content**
- Lead with the most important information
- Use active voice and direct instructions
- Include practical examples for every concept
- Provide both quick-start and comprehensive paths

**Code Examples**
- Validate all code examples for syntax correctness
- Include expected output where applicable
- Show error handling, not just happy path
- Use realistic, not trivial, examples

### Format Guidelines

**Markdown Best Practices**
- Use fenced code blocks with language hints
- Tables for structured comparisons
- Consistent formatting throughout

**API Documentation Standards**
- HTTP method and path clearly visible
- All parameters documented (path, query, body, headers)
- Request and response examples
- Error responses with codes and messages
- Authentication requirements

## Validation Loop (Required)

After generating any documentation, run validation until clean:

1. **Run documentation validation**:
   ```bash
   python .claude/skills/writing-documentation/scripts/validate_docs.py <output_file>
   ```

2. **Run code block syntax validation**:
   ```bash
   python .claude/skills/writing-documentation/scripts/check_code_blocks.py <output_file>
   ```

3. **If ERRORs found in either**:
   - Fix all ERROR items (placeholders, empty code blocks, syntax errors)
   - Re-run both validations

4. **If WARNINGs found**:
   - Address straightforward warnings (missing language hints)
   - Re-run validations

5. **Repeat** until both pass or only acceptable warnings remain.

6. **Never deliver documentation with unresolved ERRORs.**

## Quality Checklist

Before delivering documentation, verify:
- [ ] Target audience is clear
- [ ] All code examples are syntactically correct
- [ ] No placeholder text remains
- [ ] Cross-references are valid
- [ ] Prerequisites are complete
- [ ] Examples are realistic and useful
- [ ] Error cases are documented
- [ ] Document is self-contained (or links to dependencies)
- [ ] Validation script passes

## Integration with updating-readme

After creating a README:
- Future section updates → updating-readme skill
- Future dependency additions → updating-readme skill
- Future config changes → updating-readme skill
- Complete rewrites → back to this skill or agent

## Examples

See `examples/` for complete output samples:
- `examples/api-example.md` — User Management API reference
- `examples/guide-example.md` — CLI tool user guide

Related Skills

technical-writing

16
from diegosouzapw/awesome-omni-skill

Write clear technical documentation, tutorials, and guides. Use this skill when creating README files, API docs, setup guides, architecture docs, or technical tutorials.

speckit-documentation-engineer.agent

16
from diegosouzapw/awesome-omni-skill

Expert documentation engineer specializing in technical documentation, API docs, developer guides, and documentation-as-code. Creates maintainable, searchable documentation that developers actually use.

reviewing-documentation

16
from diegosouzapw/awesome-omni-skill

Use when reviewing documentation quality, auditing README or CLAUDE.md files, or standardizing AI instruction files.

research-documentation

16
from diegosouzapw/awesome-omni-skill

Searches across your Notion workspace, synthesizes findings from multiple pages, and creates comprehensive research documentation saved as new Notion pages. Trigger on "노션 검색", "조사해줘", "리서치 정리". For meeting prep use meeting-intelligence; for saving knowledge use knowledge-capture; for spec breakdown use spec-to-implementation.

quality-documentation-manager

16
from diegosouzapw/awesome-omni-skill

Document control system management for medical device QMS. Covers document numbering, version control, change management, and 21 CFR Part 11 compliance. Use for document control procedures, change control workflow, document numbering, version management, electronic signature compliance, or regulatory documentation review.

documentation-templates

16
from diegosouzapw/awesome-omni-skill

Documentation templates and structure guidelines. README, API docs, code comments, and AI-friendly documentation.

documentation-structure-validator

16
from diegosouzapw/awesome-omni-skill

Validate documentation structure, check for missing sections, verify markdown syntax, ensure consistency with templates. Use when user mentions docs validation, structure check, README review, documentation quality, or wants to verify documentation completeness.

documentation-standards

16
from diegosouzapw/awesome-omni-skill

Clear technical documentation with JSDoc, READMEs, Mermaid diagrams, ISMS policy references, and comprehensive code examples

documentation-specialist

16
from diegosouzapw/awesome-omni-skill

文档专家。专注于技术文档编写、API 文档生成、README 优化和文档维护。提供清晰的文档结构、规范的格式和用户友好的内容。

documentation-research

16
from diegosouzapw/awesome-omni-skill

Enforces documentation research before implementation. Auto-loads when implementing features to ensure current best practices are followed. Researches official docs first.

documentation

16
from diegosouzapw/awesome-omni-skill

Technical writing, API docs, and documentation best practices

Documentation Hygiene

16
from diegosouzapw/awesome-omni-skill

This skill should be used when the user asks to perform "documentation hygiene", "update docs for change", "mark historical docs", "add deprecation headers", "documentation migration", or when making significant changes that affect multiple documentation files (like license migrations, tier changes, or API changes).