Skip to content
Skillpedia
Documentation103k · #375

doc-maintenance

Keeps project documentation updated with code changes. It detects differences and updates pages without rewriting everything.

What it does

This tool helps keep a project's documentation up-to-date with recent code changes. It detects when the documentation no longer reflects the program's actual behavior and suggests or makes necessary corrections.

When to use it

  • ✓When a project's code is updated and the documentation might be outdated.
  • ✓Before releasing a new project version to ensure the documentation is accurate.
  • ✓When a bug was caused by incorrect information in the documentation.

Example of what to ask your AI

“Keep the documentation for project X aligned with the latest code changes.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/paperclipai/paperclip/blob/master/packages/skills-catalog/catalog/bundled/docs/doc-maintenance/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/paperclipai/paperclip/blob/master/packages/skills-catalog/catalog/bundled/docs/doc-maintenance/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

The tool compares recent code with existing documentation to find inconsistencies. It then updates the affected pages to match the current code behavior, without rewriting what is already correct.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add paperclipai/paperclip --skill doc-maintenance

Or download just the file:

curl -L https://raw.githubusercontent.com/paperclipai/paperclip/master/packages/skills-catalog/catalog/bundled/docs/doc-maintenance/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Doc Maintenance

Keep the documentation honest with minimum churn. The goal is alignment between docs and behavior, not stylistic rewrites or cosmetic re-organization. Reviewers should be able to read a diff and see "this updates docs to match recent behavior changes".

When to use

  • A PR or recent set of merges changed user-visible behavior: CLI flags, API shapes, default values, configuration keys, endpoints, environment variables, supported versions.
  • A user-reported bug traced back to outdated documentation.
  • A release is being cut and the docs need a pass against the merged commits.
  • A new feature shipped but only the engineer's PR description describes how to use it.

When not to use

  • The change is internal-only (private helper rename, refactor) with no user-visible impact.
  • You want to "improve the docs" without a behavior anchor. That is a separate scoped project, not maintenance — make a plan first.

The pass

  1. Establish the baseline. Get the commit range you are documenting against (since last release tag, since last merged-doc commit, or since a specific PR).
  2. Enumerate user-visible changes. Read commits and PR descriptions. List, for each change, what a user can now do differently.
  3. Map changes to docs. For each change, find every page that mentions the affected concept. Common targets: README, CLI reference, API reference, configuration reference, migration guide, FAQ, examples.
  4. Update precisely. Edit only the lines that need to change. Do not rewrap paragraphs you did not modify — it pollutes the diff.
  5. Add new entries where needed. New CLI flag → CLI reference entry. New env var → configuration reference entry. New endpoint → API reference entry. Don't only add it to the changelog.
  6. Update examples and snippets. Code blocks in docs are wrong faster than prose. Re-run any example that touches new behavior.
  7. Write the release note. One sentence per user-visible change. Group by Added / Changed / Fixed / Deprecated / Removed. Link to the relevant PRs and docs section.
  8. Cross-check. Search the docs for the old behavior wording and remove or update stragglers.

Style baseline

  • Voice: second person ("you can pass --json to ..."). Avoid "we" except in narrative pages.
  • Tense: present, not future. The behavior exists once shipped.
  • Headings: imperative ("Configure the cache") or noun-phrase ("Cache configuration"), match the surrounding page.
  • Code blocks: include the language tag so syntax highlighting works.
  • Cross-links: link the first mention of a concept on each page; do not link every occurrence.
  • Avoid promising future behavior. If something is unreleased, mark it experimental or omit it.

Drift detection

A doc page is drifting if any of these are true:

  • It documents a flag, key, or endpoint that no longer exists.
  • An example does not run as written.
  • A default value in the docs does not match the code.
  • A supported-versions list excludes a version the project actually supports, or includes one it dropped.
  • A "Coming soon" section references a feature that shipped or was cancelled.

When you find drift, fix it in the same pass and note it in the release note's Fixed group.

Release-note rules

  • One sentence per item. If two sentences are needed, the item is likely two items.
  • User impact first, internal cause second. Faster cold start (avoid full bundle download on first run) beats Refactor bootstrap loader.
  • Link the PR for engineering readers and the docs page for users.
  • Mark breaking changes explicitly: **Breaking:** prefix. Include migration steps inline or via link.

Anti-patterns

  • Massive doc PRs that bundle stylistic rewrites with real updates. Reviewers cannot tell which lines reflect actual behavior changes.
  • "Updated docs" commit messages with no detail. Make the commit say what changed and why.
  • Adding to the changelog without updating the reference docs the changelog points to.
  • Marking a feature as available before its code lands. Documentation must follow behavior, not promise it.
FAQ

What is documentation 'drift'?

'Drift' occurs when the documentation no longer reflects the actual code behavior, such as documenting a removed function or a changed default value.

Do I need to rewrite the entire documentation?

No, the goal is only to update the parts that are incorrect or outdated due to code changes. Sections that were not affected do not need to be altered.

Does the tool write release notes?

Yes, it can help create concise release notes by summarizing user-visible changes and noting the documentation updates made.

Details

Original description by the author

Keep project docs aligned with recent code and feature changes — detect drift, update affected pages, and add release-relevant notes without rewriting unchanged sections.

repo: paperclipai/paperclip

Popularity

GitHub stars
103k
Ranking position
#375
License
MIT
Updated
10/16/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills