Files
leo-claude-mktplace/plugins/doc-guardian
lmiranda 1dad393eaf fix(doc-guardian): use passive wording and add debouncing to reduce interruptions
The PostToolUse hook was causing workflow interruptions because:
1. Actionable language ("update needed") triggered Claude to seek confirmation
2. Rapid edits (4+ in sequence) generated multiple notifications

Changes:
- Message changed from "update needed" to "drift queued" (passive, informational)
- Added 5-second debouncing: same-type edits within window are silently queued
- Added queue clearing step to doc-sync.md command

Note: Issue #287 also mentions URL restriction behavior, but this was not
found in the current codebase - may have been a different component or
already fixed. Marking as partial fix.

Fixes #287

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 20:32:46 -05:00
..

doc-guardian

Automatic documentation drift detection and synchronization for Claude Code projects.

Problem Solved

Documentation gets outdated. Functions get renamed, configs change, versions bump—but docs lag behind. This creates:

  • Multiple review cycles finding stale references
  • Unnecessary commits fixing docs piecemeal
  • User confusion from outdated instructions

Solution

doc-guardian monitors your code changes via hooks:

  1. Detects when changes might affect documentation
  2. Alerts you to potential drift (doesn't interrupt your flow)
  3. Provides commands to audit and sync docs when ready

Commands

Command Description
/doc-audit Full project scan - reports all drift without changing anything
/doc-sync Apply all pending documentation updates in one commit
/changelog-gen Generate changelog from conventional commits in Keep-a-Changelog format
/doc-coverage Calculate documentation coverage percentage for functions and classes
/stale-docs Detect documentation files that are stale relative to their associated code

Hooks

  • PostToolUse (Write|Edit): Silently checks if code changes affect docs

What It Detects

  • Broken References: Function/class renamed but docs still use old name
  • Version Drift: Python 3.9 in docs but 3.11 in pyproject.toml
  • Missing Docs: Public functions without docstrings
  • Stale Examples: CLI examples that no longer work
  • Low Coverage: Undocumented functions and classes
  • Stale Files: Documentation that hasn't been updated alongside code changes

Installation

This plugin is part of the Leo Claude Marketplace.

/plugin marketplace add https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git
/plugin install doc-guardian

Integration

See claude-md-integration.md for CLAUDE.md additions.