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>
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:
- Detects when changes might affect documentation
- Alerts you to potential drift (doesn't interrupt your flow)
- 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.