doc-maintenance
Skill1 starsChanged 5 months agoMITView on GitHub
Keep project docs aligned with recent code and feature changes — detect drift, update affected pages, and add release-relevant notes without rewriting unchanged sections.
We split this skill into the rules it gives an agent
5 rules. 0 are common, 3 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 8 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 17
Keep the documentation honest with minimum churn.
- Distinctive: line 34
Enumerate user-visible changes: Read commits and PR descriptions.
- Distinctive: line 40
Cross-check: Search the docs for the old behavior wording and remove or update stragglers.
- Very specific: line 49
Avoid promising future behavior.
- Very specific: line 61
When you find drift, fix it in the same pass and note it in the release note's Fixed group.
“Common” is measured: kept by at least 6 in 10 of the 8 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
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
- 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).
- Enumerate user-visible changes. Read commits and PR descriptions. List, for each change, what a user can now do differently.
- 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.
- Update precisely. Edit only the lines that need to change. Do not rewrap paragraphs you did not modify — it pollutes the diff.
- 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.
- Update examples and snippets. Code blocks in docs are wrong faster than prose. Re-run any example that touches new behavior.
- 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.
- Cross-check. Search the docs for the old behavior wording and remove or update stragglers.
Style baseline
- Voice: second person ("you can pass
--jsonto ..."). 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
experimentalor 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)beatsRefactor 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.
Other versions8 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 8
- paperclipai/paperclip★ 107ksame name
- ancilis/bedlam★ 15same name
- ever-works/skills★ 1same name
- Hans010101/bitworld★ 1same name
- jpoindexter/theft-kit★ 1same name
- jugol/workcell★ 1same name
- htnabe/skills★ 0same name
- wefio/NodeMemoryGraph★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository38 other files it gives its agents.
- AGENTS.mdAGENTS.md
- docs/api/agents.mdAGENTS.md
- packages/plugins/plugin-llm-wiki/agents/wiki-maintainer/AGENTS.mdAGENTS.md
- packages/plugins/plugin-llm-wiki/fixtures/basic-root/AGENTS.mdAGENTS.md
- packages/plugins/plugin-llm-wiki/templates/AGENTS.mdAGENTS.md
- server/src/onboarding-assets/ceo/AGENTS.mdAGENTS.md
- server/src/onboarding-assets/default/AGENTS.mdAGENTS.md
- company-creatorSkill
- create-agent-adapterSkill
- deal-with-security-advisorySkill
- doc-maintenanceSkill
- prcheckloopSkill
- pr-reportSkill
- release-changelog-discord-messageSkill
- release-changelogSkill
- releaseSkill
- design-guideSkill
- index-refreshSkill
- paperclip-distillSkill
- wiki-ingestSkill
- wiki-lintSkill
- LLM Wiki MaintainerSkill
- wiki-querySkill
- issue-triageSkill
- task-planningSkill
- qa-acceptanceSkill
- github-pr-workflowSkill
- agent-browserSkill
- release-announcementSkill
- design-critiqueSkill
- diagnose-why-work-stoppedSkill
- paperclip-converting-plans-to-tasksSkill
- paperclip-create-agentSkill
- paperclip-create-pluginSkill
- paperclip-devSkill
- paperclipSkill
- para-memory-filesSkill
- terminal-bench-loopSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

