Skip to content
Back to skills

Documentation Pro

ASecurity

Write documentation developers actually use: READMEs, API docs, ADRs, runbooks, and docs-as-code workflows. Use when writing or improving technical documentation.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 29, 2026
ai-agentsrustgobashtestingapidocumentation

Works with

  • api

Security analysis

A100/100

Scanned September 29, 2026

npx -y skills add aicodedecode/awesome-muse-skills --skill documentation-pro --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Documentation Pro?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Documentation Pro
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aicodedecode-documentation-pro/badge)](https://www.skillsdirectory.com/skills/aicodedecode-documentation-pro)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: documentation-pro
description: Write documentation developers actually use: READMEs, API docs, ADRs, runbooks, and docs-as-code workflows. Use when writing or improving technical documentation.
category: development
---

# Documentation Pro

## Overview

Good documentation — **accurate, findable, and maintained** — is a force multiplier; bad
documentation (missing, wrong, or rotting) is worse than none because it actively misleads. This
skill covers writing docs developers actually use: READMEs that onboard, API docs that answer
questions, ADRs that preserve decisions, runbooks that work at 3am, and the docs-as-code workflows
that keep everything from rotting.

The through-line: docs are a product with users — write for their tasks, keep them next to the code.

## When to use

- Writing a README for a new project or library.
- Documenting APIs, architectures, or operational procedures.
- Fixing documentation that's outdated, missing, or unused.
- Setting up docs-as-code workflows (linting, testing, publishing).
- Reviewing docs for clarity and accuracy.

## Core concepts

- **Docs for tasks, not topics.** Organize by what users *do*: tutorials (learning), how-to guides
  (doing), reference (looking up), explanation (understanding) — the Diátaxis model. A README that's
  all reference and no quickstart fails new users; all tutorial and no reference fails experienced ones.
- **README anatomy.** What it is (one paragraph) → quickstart (copy-paste working in 5 minutes) →
  installation → basic usage → configuration → contributing → license. The quickstart is the whole
  game — if it doesn't work in 5 minutes, nothing else matters.
- **API docs answer questions.** For every endpoint/function: what it does, parameters (types,
  required, defaults, constraints), return shape, errors, and a *working example*. Generate reference
  from code (OpenAPI, JSDoc/TSDoc, rustdoc) so it can't drift; hand-write the guides and concepts.
- **ADRs preserve decisions.** Architecture Decision Records: context, options, decision,
  consequences, revisit triggers — one page, in the repo, next to the code. Future maintainers need
  the *why*, and "we discussed it in a meeting" is not preserved.
- **Runbooks for 3am.** Symptom → diagnosis steps → fix → verification → escalation. Tested
  (game days), linked from alerts, and written for a stressed, half-awake reader: commands
  copy-pasteable, no assumed context.
- **Docs-as-code.** Docs in version control, reviewed like code, built and published by CI,
  with linters (vale/proselint for prose, link checkers for rot) and *tested* examples (doctests,
  executable snippets). Docs that aren't built and checked rot silently.

## Practical workflow

1. **Identify the user and their task.** New joiner onboarding? API consumer integrating?
   On-call diagnosing? Write *for that task* — one doc per task, not one doc per topic.
2. **Start with the quickstart.** Before comprehensive docs, make the 5-minute path work and
   document it. Test it from a clean environment — actually clean, not "clean except my setup."
3. **Layer the docs.** README (orient + quickstart) → guides (how-tos for common tasks) →
   reference (generated from code) → explanations/ADRs (concepts + decisions). Link between layers.
4. **Write clearly.** Short sentences, active voice, concrete examples over abstract description,
   prerequisites stated up front, and every code sample *tested* (CI runs them or they're lies
   waiting to happen).
5. **Keep docs next to code.** READMEs in the repo, API docs generated from annotations, ADRs in
   `docs/adr/`, runbooks in `docs/runbooks/` linked from dashboards. Distance from code = rate of rot.
6. **Maintain deliberately.** Docs checklist in PR templates ("docs updated?"), link checking in CI,
   periodic audits (quarterly: is the quickstart still quick? are runbooks still accurate?),
   and delete docs that lie — wrong docs are worse than missing docs.

README template:

```markdown
# Project Name
One-paragraph: what it does, who it's for.

## Quickstart
\`\`\`bash
# copy-paste, works in 5 minutes from clean machine
\`\`\`

## Installation
## Usage (common tasks with examples)
## Configuration
## API Reference (link to generated docs)
## Contributing
## License
```

## Common pitfalls

- **README as a novel.** 500 lines before the first runnable command. Quickstart first, always —
  respect the reader's time.
- **Untested examples.** Code samples that don't run (drifted APIs, missing imports). Test every
  sample in CI or delete it — a broken example destroys trust instantly.
- **Missing the why.** Reference docs listing parameters without explaining when/why to use the
  thing. Concepts and guides carry the why; reference alone is a dictionary without definitions.
- **Docs far from code.** Wiki pages describing v2 while the code is on v4. Colocate, generate,
  and review docs with the code changes they describe.
- **No onboarding path.** Docs assume tribal knowledge ("just deploy it like usual"). Write for
  the new joiner — they're the documentation's most important user.
- **Runbooks that don't run.** Prose descriptions without copy-pasteable commands, untested since
  written. Game-day them: follow the runbook literally during a drill.
- **Documenting everything equally.** Exhaustive docs for trivial utils, nothing for the complex
  core. Document where confusion and cost concentrate: onboarding, tricky domains, operations.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…