doc-lifecycle
A Claude Code plugin that keeps documentation current. It reads each diff, flags the docs it affects, and rewrites them — so the docs describe the code you actually have.
Paused since September 2026. Work is on hold and the plugin is unpublished from the marketplace: its skills consumed far more context than the work justified. Why it's paused
Illustrative workflow. File counts, filenames, and runtime are sample output, not a measured result.
Reads every diff
Runs as a scheduled GitHub Action — or on demand — and maps each change to the docs that describe it.
Finds what went stale
Judges whether a change actually invalidates the prose — not just whether files overlap.
Repairs the docs
Rewrites what it can, and flags anything that needs a human decision for review.
Why it exists
Documentation rots the moment the code moves. Keeping it current is exactly the kind of judgment-heavy maintenance work agents are good at — so this plugin makes it a background process instead of a chore.
The judgment boundary
A changed file is a signal to investigate, not proof that a document is wrong. The plugin maps a diff to relevant documentation, then judges whether the change invalidates the prose before rewriting it. That distinction keeps the workflow focused on meaning, rather than treating every code change as a documentation change.
Repairs and decisions take different paths: the plugin rewrites what it can and flags anything needing a human decision for review. Scheduled GitHub Actions and on-demand runs make the same maintenance workflow available in the background or when a developer needs it.
Open source, built for Claude Code. The repository is available to inspect.
Why it's paused
In September 2026 I paused work on doc-lifecycle and disabled the plugin. The reason was context cost. Every skill fans out: an audit reads the diff, then the docs it touches, then the code each claim points at, and all of that lands in the session's context window. On a real repository the reads compounded, and a single audit could consume a large share of a session's context before it produced a verdict. That is the wrong trade for a tool meant to run quietly in the background.
Bounding that fan-out is a design change, not a tuning pass, and it needs to happen before the plugin is handed to anyone. Until then the marketplace manifest lists no plugins, so the install commands do nothing. If you installed an earlier version, run /plugin uninstall doc-lifecycle@toolshed. The source and docs stay as they are, and I plan to pick the work back up.