Agent skill

writing-documentation

Produces concise, clear documentation by applying Elements of Style principles. Use when writing or improving any technical documentation (READMEs, guides, API docs, architecture docs). Not for code comments.

Stars 27
Forks 6

Install this agent skill to your Project

npx add-skill https://github.com/ratacat/claude-skills/tree/main/skills/writing-documentation

SKILL.md

Writing Documentation Skill

Apply Strunk & White's Elements of Style principles to produce concise, clear technical documentation.

When to Use This Skill

Use this skill when:

  • Writing new documentation (README, API docs, guides, tutorials, architecture docs)
  • Improving existing documentation
  • Reviewing documentation for quality
  • User asks to "make this more concise" or "improve clarity"
  • User mentions: documentation, docs, README, guide, tutorial, API docs

Do NOT use this skill for:

  • Code comments (different context, separate skill needed)
  • Marketing copy (requires persuasive voice, not neutral clarity)
  • Personal blog posts (requires individual voice)

Workflows

Workflow 1: Write New Documentation

Steps:

  1. Understand the purpose

    • What is the primary goal of this documentation?
    • Who is the target audience?
    • What do readers need to accomplish after reading?
  2. Load writing principles

    • Read reference/strunk-white-principles.md to internalize core principles
  3. Determine documentation type

    • Read reference/doc-types.md to select appropriate type
    • Identify essential sections based on guidelines
  4. Draft the documentation

    • Apply Strunk & White principles while writing
  5. Validate quality

    • Run through Quality Checklist (below)
    • Verify all essential information is present
    • Confirm document achieves its purpose

Workflow 2: Improve Existing Documentation

Steps:

  1. Read the current documentation

    • Understand its purpose and audience
    • Note specific problems (verbosity, unclear sections, missing info)
  2. Load writing principles

    • Read reference/strunk-white-principles.md
    • Review reference/examples.md for before/after patterns
  3. Apply improvements

    • Remove needless words
    • Convert passive to active voice
    • Strengthen vague statements
    • Eliminate redundancy
    • Improve organization if needed
  4. Validate improvements

    • Run through Quality Checklist
    • Verify no information was lost
    • Confirm clarity improved

Workflow 3: Review Documentation

Steps:

  1. Load writing principles

    • Read reference/strunk-white-principles.md
    • Review relevant guidelines in reference/doc-types.md
  2. Assess against quality criteria

    • Run through Quality Checklist (below)
    • Note specific violations with examples
  3. Provide feedback

    • List specific issues found
    • Reference violated principles
    • Suggest concrete improvements

Decision Framework

When to Write vs Improve

Write new documentation when:

  • No documentation exists
  • Existing documentation is fundamentally wrong or outdated
  • Complete restructuring needed (cheaper to rewrite)

Improve existing documentation when:

  • Core structure and information are sound
  • Style or clarity issues can be fixed incrementally
  • Specific sections need enhancement

Choosing Documentation Type

See reference/doc-types.md for detailed guidelines. Quick reference:

  • README: Project overview, quick start, primary entry point
  • API Documentation: Reference for function/endpoint signatures and behavior
  • Tutorial/Guide: Step-by-step learning path for accomplishing specific goals
  • Architecture/Design Doc: Explain system structure, decisions, and tradeoffs
  • CLI Tool Documentation: Command reference with options and examples

Prioritizing Conciseness vs Comprehensiveness

Prioritize conciseness when:

  • Documentation type is reference (README, API docs, CLI docs)
  • Readers need to scan quickly
  • Getting started / quick start sections

Prioritize comprehensiveness when:

  • Documentation type is learning-focused (tutorials, guides)
  • Complex concepts require detailed explanation
  • Architecture decisions need thorough justification

Balance both:

  • Use concise overview sections with detailed subsections
  • Link to comprehensive resources rather than embedding everything
  • Apply progressive disclosure pattern

Quality Checklist

Content

  • Purpose is clear
  • Essential information is present
  • No unnecessary information
  • Correct and accurate

Writing (Core Principles)

  • Active voice predominates
  • Definite statements (not hedging)
  • Positive form
  • Specific, concrete language
  • Concise (no needless words)

Structure

  • Logical organization
  • Clear headings
  • Scannable
  • Examples where helpful

Technical Documentation

  • Code examples are executable
  • Commands include full context
  • Prerequisites are stated
  • Error cases are covered

Reference Files

When to Load Each Reference

Load reference/strunk-white-principles.md:

  • At the start of EVERY documentation writing/improvement task
  • When reviewing documentation

Load reference/doc-types.md:

  • When choosing what type of documentation to write
  • When unsure about essential sections for a doc type
  • When reviewing documentation structure

Load reference/examples.md:

  • When improving existing documentation (see patterns)
  • When you want concrete before/after examples

Common Pitfalls

Skipping Principle Loading: ALWAYS load reference/strunk-white-principles.md before writing.

Following Guidelines Rigidly: Adapt to the specific project's needs. Some projects don't need all sections; some need additional ones.

Over-Editing: "Omit needless words" means remove words that add no value. Keep all information that serves the reader's purpose.

Sacrificing Accuracy for Brevity: Accuracy always wins. Express explanations concisely, but never misleadingly.

Inconsistent Terminology: Choose one term for each concept and use it consistently.

Notes

  • This skill works iteratively - you can run it multiple times on the same document without degrading quality (idempotent)
  • Quality over quantity - a short, clear document is better than a comprehensive, confusing one

Expand your agent's capabilities with these related and highly-rated skills.

ratacat/claude-skills

brave-search

Use when user asks to search the web, look something up online, find current/recent/latest information, or needs cited answers. Triggers on "search", "look up", "find out about", "what is the current/latest", image searches, news lookups. NOT for searching code/files—only for web/internet searches.

27 6
Explore
ratacat/claude-skills

bug-reproduction-validator

Use this agent when you receive a bug report or issue description and need to verify whether the reported behavior is actually a bug. This agent will attempt to reproduce the issue systematically, validate the steps to reproduce, and confirm whether the behavior deviates from expected functionality. <example>\nContext: The user has reported a potential bug in the application.\nuser: "Users are reporting that the email processing fails when there are special characters in the subject line"\nassistant: "I'll use the bug-reproduction-validator agent to verify if this is an actual bug by attempting to reproduce it"\n<commentary>\nSince there's a bug report about email processing with special characters, use the bug-reproduction-validator agent to systematically reproduce and validate the issue.\n</commentary>\n</example>\n<example>\nContext: An issue has been raised about unexpected behavior.\nuser: "There's a report that the brief summary isn't including all emails from today"\nassistant: "Let me launch the b...

27 6
Explore
ratacat/claude-skills

agent-native-audit

Run comprehensive agent-native architecture review with scored principles

27 6
Explore
ratacat/claude-skills

brainstorming

This skill should be used before implementing features, building components, or making changes. It guides exploring user intent, approaches, and design decisions before planning. Triggers on "let's brainstorm", "help me think through", "what should we build", "explore approaches", ambiguous feature requests, or when the user's request has multiple valid interpretations that need clarification.

27 6
Explore
ratacat/claude-skills

performance-oracle

Use this agent when you need to analyze code for performance issues, optimize algorithms, identify bottlenecks, or ensure scalability. This includes reviewing database queries, memory usage, caching strategies, and overall system performance. The agent should be invoked after implementing features or when performance concerns arise.\n\n<example>\nContext: The user has just implemented a new feature that processes user data.\nuser: "I've implemented the user analytics feature. Can you check if it will scale?"\nassistant: "I'll use the performance-oracle agent to analyze the scalability and performance characteristics of your implementation."\n<commentary>\nSince the user is concerned about scalability, use the Task tool to launch the performance-oracle agent to analyze the code for performance issues.\n</commentary>\n</example>\n\n<example>\nContext: The user is experiencing slow API responses.\nuser: "The API endpoint for fetching reports is taking over 2 seconds to respond"\nassistant: "Let me invoke the...

27 6
Explore
ratacat/claude-skills

triage

Triage and categorize findings for the CLI todo system

27 6
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results