Back to Skills

documentation-strategy

rampstackco
Updated 2 days ago
5 views
239
27
239
View on GitHub
Otherwordaidesign

About

This skill helps developers design and implement a complete documentation system, covering planning, tool selection, organization, and maintenance cadence. It's triggered when dealing with stale docs, repeated questions, slow onboarding, or scoping technical writing work. It provides a strategy for deciding what to document, where, and how to keep content fresh across wikis, READMEs, runbooks, and knowledge bases.

Quick Install

Claude Code

Recommended
Primary
npx skills add rampstackco/claude-skills -a claude-code
Plugin CommandAlternative
/plugin add https://github.com/rampstackco/claude-skills
Git CloneAlternative
git clone https://github.com/rampstackco/claude-skills.git ~/.claude/skills/documentation-strategy

Copy and paste this command in Claude Code to install this skill

Documentation

Documentation Strategy

Decide what gets documented, where, by whom, and how it stays fresh. Stack-agnostic. Applies to internal team docs, product docs, runbooks, READMEs, and knowledge bases.


When to use

  • Setting up documentation for a new team or product
  • Auditing existing documentation
  • Fixing stale or scattered docs
  • Choosing a documentation tool or platform
  • Defining what gets documented and what doesn't
  • Establishing maintenance cadence
  • Scoping technical writing work
  • Designing onboarding documentation (use alongside team-onboarding-playbook)

When NOT to use

  • Writing the actual content of a single document (use content-and-copy)
  • Customer-facing knowledge base copy (use content-strategy)
  • Code comments and inline documentation (covered by code-review-web)
  • One-off blog posts or articles (use content-and-copy)

Required inputs

  • The audience (internal, external, customer, dev, exec)
  • Existing docs and their state (where, what shape, last updated)
  • Team size and growth trajectory
  • The kinds of work that produce documentation (engineering, product, ops, support)
  • Tools currently in use

The framework: 4 categories of documentation

Different categories of doc serve different purposes. Conflating them is how docs get bad.

Category 1: Reference

What things are. Looked up when needed.

Examples: API reference, configuration options, glossary, architecture diagrams, contact lists, decision log entries.

Properties:

  • Comprehensive
  • Fact-checked, kept accurate
  • Searchable
  • Stable structure (links don't break)
  • Version-aware where relevant

Category 2: How-to

How to do specific tasks. Procedural.

Examples: "Deploy to staging," "Reset a password," "Onboard a new contractor," "Run the backup restore drill."

Properties:

  • Step-by-step
  • Tested by someone who didn't write it
  • Includes the prerequisites
  • Includes troubleshooting
  • Versioned to the system it documents

Category 3: Explanation

Why things are the way they are. Conceptual.

Examples: architecture rationale, design decision records (ADRs), strategy docs, vision documents.

Properties:

  • Narrative
  • Captures context (the why)
  • Often historical (why we built it this way)
  • Links to evidence

Category 4: Tutorial

Learning-oriented. Walks someone from zero to capable.

Examples: "Getting started with our codebase," "Your first deploy," onboarding pathways.

Properties:

  • Sequenced from simple to complex
  • Hands-on
  • Doesn't assume prior knowledge in scope
  • Has clear completion criteria

(This four-way split is the Diátaxis framework, well-known in tech writing. Memorize it.)


The framework: 5 tiers of doc

Different docs serve different audiences with different stakes.

Tier 1: Customer-facing

Public docs, customer KBs, API references. High visibility, slow change.

Standards:

  • Editorial review
  • Version control
  • Clear ownership
  • High freshness bar
  • Tied to release

Tier 2: Cross-team / shared

Docs used across teams: shared APIs, common services, company-wide processes.

Standards:

  • Cross-team ownership clear
  • Update obligations on changes
  • Mid-to-high freshness bar

Tier 3: Team-internal

Docs for the team that owns them: how the team works, runbooks, decisions.

Standards:

  • Team-owned, team-maintained
  • Mid freshness bar
  • Useful for the next person joining

Tier 4: Personal scratchpad

Notes, drafts, work-in-progress. Not for others.

Standards:

  • Low maintenance
  • Don't link from official docs
  • Promote to higher tier when valuable

Tier 5: Auto-generated

Docs derived from code: API references generated from comments, schemas, etc.

Standards:

  • Generation is automated, runs in CI
  • Single source of truth (the code)
  • Reviewed for usability, not freshness (that's automatic)

The tiering matters because the maintenance bar differs. Asking team-internal docs to meet customer-facing standards is wasteful and unsustainable.


Workflow

Step 1: Audit current state

  • What docs exist?
  • Where do they live? (often: scattered)
  • Who owns each?
  • How fresh are they?
  • Are they actually used? (check page views or referrals if measurable)

The audit is often eye-opening. Most teams have more docs than they realize, in more places than they realize.

Step 2: Categorize and tier

For each doc:

  • Category (reference / how-to / explanation / tutorial)
  • Tier (customer / shared / team / scratchpad / generated)

Some docs are mixed. Note the dominant category.

Step 3: Identify gaps

What documentation does the team need that doesn't exist?

Common gaps:

  • "How does X actually work?" no answer
  • Onboarding for the role no one's onboarded recently
  • Runbook for a system that's never broken (yet)
  • Decision rationale for "why are we doing it this way"

Ask people what they wish were documented. They know.

Step 4: Identify dead weight

Docs that are:

  • Out of date and not getting updated
  • Duplicated across places (one is canonical, others should redirect or be deleted)
  • About things that no longer exist
  • Drafts abandoned long ago

Delete or archive. Stale docs are worse than missing docs (people might trust them).

Step 5: Pick the home(s)

Where docs live affects whether they're maintained.

Common locations:

  • Code repo (markdown): for docs tightly coupled to code (READMEs, ADRs, runbooks for the service)
  • Wiki / Notion / Confluence: for cross-team and team-internal
  • Docs site (Docusaurus, Mintlify, custom): for customer-facing
  • Tickets / decision logs: for ephemeral records

Don't aim for one home. Aim for a clear answer to "where does this kind of doc live?"

Step 6: Establish ownership

Every doc has an owner. Without an owner, it goes stale.

Owner can be:

  • A team
  • A role (the on-call rotation, the PM, the EM)
  • A person, with a backup

If an owner isn't obvious, the doc may not deserve to exist.

Step 7: Establish maintenance cadence

Per tier:

TierReview cadence
Customer-facingPer release, plus quarterly
Cross-teamQuarterly
Team-internalQuarterly
Personal scratchpadNone
Auto-generatedOn every change

Maintenance includes:

  • Verify accuracy
  • Update for changed systems
  • Archive what's no longer relevant
  • Address user feedback

Step 8: Make doc updates part of work

Documentation isn't a separate project. It's part of the work that produces it.

  • New feature: docs are part of the feature
  • New process: doc is part of the rollout
  • Decision made: ADR or decision-log entry filed
  • Bug postmortem: runbook updated
  • New hire: onboarding doc updated based on their experience

The team that ships features without docs has less than they think they have.

Step 9: Make docs discoverable

Even great docs are useless if no one finds them.

  • Search that actually works (most platforms; some better than others)
  • Index pages for major topics
  • Cross-links between related docs
  • Search aliases for common alternative phrasings
  • Pinning the most-used docs

Step 10: Measure

What's measurable depends on the platform:

  • Page views
  • Search queries (and zero-result queries)
  • "Was this helpful?" feedback
  • Time on page
  • Referral patterns

For internal docs, the qualitative measure is often more useful: are the same questions getting asked over and over? If yes, the docs aren't doing their job (either they don't exist, aren't found, or aren't clear).


Specific patterns

README per project

Every code repo has a README that answers:

  • What is this?
  • How do I run it?
  • How do I contribute?
  • Where do I find more info?

Five sentences each, often. Length isn't the goal. The READ-it-ME promise is.

ADR (Architecture Decision Record)

Per significant decision:

# ADR-NNN: [Title]

Status: [Proposed / Accepted / Deprecated / Superseded]
Date: [Date]

## Context
[What's the situation? What forces are at play?]

## Decision
[What was decided?]

## Consequences
[What happens because of this decision? Both good and bad.]

ADRs accumulate. They become the explanation layer for "why are we doing it this way."

Runbook

Per system:

  • What it is
  • How to access it
  • Common operations (with commands)
  • Common failure modes
  • Restore from backup procedure
  • Escalation contacts

See incident-response and backup-and-disaster-recovery for runbook standards.

Onboarding pathway

Per role:

  • Day 1
  • Week 1
  • Month 1
  • 90 days

See team-onboarding-playbook.

Decision log

Lightweight version of ADRs. Date, decision, decider, why. Keeps a record without ceremony.

Glossary

Terms that have specific meaning in the team or product. Reduces confusion. Trains AI tools too (more on that later).


Tooling

The tool is less important than the discipline. That said:

Tool categoryExamplesBest for
WikiNotion, Confluence, GitBookCross-team, internal
Markdown in codeGitHub, GitLab, BitbucketREADMEs, ADRs, technical
Docs sitesDocusaurus, Mintlify, ReadMeCustomer-facing, public docs
Internal sitesMkDocs, customTeam-specific patterns

Considerations:

  • Search quality (a poor search makes everything worse)
  • Editor quality (people won't write in painful editors)
  • Version control (can you see history?)
  • Permissions (right people can read and write)
  • API and integration (for automation)
  • Cost at your scale

For small teams: a single wiki tool is plenty. For larger: tiered tools.


AI-related notes

LLMs and AI assistants increasingly read documentation. Some considerations:

  • Clear, consistent structure helps both humans and AI
  • A glossary of terms helps both
  • File-level metadata (front matter) helps tools
  • Public docs may be read by AI crawlers; consider an llms.txt if relevant
  • AI-generated drafts are a starting point, not a final answer; humans review

Failure patterns

Documentation as a "later" task. Always written later. Later means never. Make docs part of the work.

One mega-doc for everything. Wiki page that's 8,000 words. No one reads it. Break by category and topic.

Stale docs that nobody trusts. "Probably out of date" is the thought that kills documentation. Either keep current or archive.

Docs everyone agrees should exist but no one writes. The team agrees onboarding docs would be valuable. Months pass. No one writes them. Make ownership specific.

Wikis that are graveyards. Lots of pages, no one trusts any of them. Audit, archive, restart with a slimmer set.

Docs separated from code. API docs in a wiki, code in a repo. They drift. Co-locate.

Docs without examples. Reference without examples is hard to use. Examples make it concrete.

Examples that don't run. Code examples that worked once, drifted. Test examples in CI where possible.

Long-form when reference would do. A 2,000-word doc explaining what a 30-row table would. Use the right form.

Multiple sources of truth. Same info in three places, all slightly different. Pick canonical, redirect others.

Doc tools no one uses. Adopted because of a feature; team doesn't actually use it. Pick tools the team will use.

Doc style guide that's longer than the docs. Process beats product. Guide should be short.

No way to mark docs as deprecated. Old docs sit alongside current ones with no indication. Add a "deprecated" or "archived" status.

No analytics. No idea what's being used or what's missing. Even basic page views inform priorities.

Docs that read like specifications. Dense, formal, hard to scan. Write for the reader.


Output format

A documentation strategy document includes:

  • Audit: what exists, where, in what state
  • Tiering and categorization: the framework applied to existing docs
  • Gap list: what should exist but doesn't
  • Tool decisions: where each kind of doc lives
  • Ownership map: who owns what
  • Maintenance cadence: what's reviewed when
  • Style guide (brief): consistency standards
  • Roadmap: prioritized work to fill gaps and close out dead weight

Reference files

  • references/doc-types-guide.md: Detailed guide to the four doc types (reference, how-to, explanation, tutorial) with examples and templates for each.

GitHub Repository

rampstackco/claude-skills
Path: skills/documentation-strategy
0
agent-skillsai-agentsanthropicclaudeclaude-aiclaude-code

Related Skills

vendor-evaluation

Other

This skill provides a structured process for developers to evaluate, select, and contract with vendors or SaaS tools. It assists with comparing alternatives, running RFPs, scoring vendors, and negotiating contracts, especially during renewals or when current tools underperform. Its stack-agnostic approach helps avoid lock-in and applies to any external dependency.

View skill

team-onboarding-playbook

Other

This skill creates structured 30-60-90 day onboarding plans for new hires, contractors, or teams undergoing restructuring. It helps capture tribal knowledge and standardizes ramp-up across engineering, product, and other roles. Use it when onboarding is chaotic, turnover is high, or many new members are joining a project simultaneously.

View skill

skill-creation-walkthrough

Other

This skill provides a comprehensive, step-by-step guide for developers to create, structure, and troubleshoot their own Claude Skills. It covers the entire process from determining if a skill is the right solution to writing effective SKILL.md files and ensuring reliable triggers. Use it when you need to package a workflow for reuse, audit an underperforming skill, or publish a skill for others.

View skill

stakeholder-communication

Other

This skill helps developers communicate project information effectively to diverse stakeholders, from executives to non-technical teams. It assists in creating status updates, executive summaries, and managing communications for projects, especially when conveying challenges or bad news. It triggers on terms like status report, exec review, and project comms to provide structured, actionable communication.

View skill