feat: add doc-guardian plugin for documentation lifecycle management
Adds automatic documentation drift detection and synchronization: - PostToolUse hook detects when code changes affect docs - Stop hook reminds of pending updates before session ends - /doc-audit command for full project documentation scan - /doc-sync command to batch apply pending updates - doc-analyzer agent for cross-reference analysis - doc-patterns skill for documentation structure knowledge Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
50
plugins/doc-guardian/commands/doc-audit.md
Normal file
50
plugins/doc-guardian/commands/doc-audit.md
Normal file
@@ -0,0 +1,50 @@
|
||||
---
|
||||
description: Full documentation audit - scans entire project for doc drift without making changes
|
||||
---
|
||||
|
||||
# Documentation Audit
|
||||
|
||||
Perform a comprehensive documentation drift analysis.
|
||||
|
||||
## Process
|
||||
|
||||
1. **Inventory Documentation Files**
|
||||
- README.md (root and subdirectories)
|
||||
- CLAUDE.md
|
||||
- API documentation
|
||||
- Docstrings in code files
|
||||
- Configuration references
|
||||
|
||||
2. **Cross-Reference Analysis**
|
||||
For each documentation file:
|
||||
- Extract referenced functions, classes, endpoints, configs
|
||||
- Verify each reference exists in codebase
|
||||
- Check signatures/types match documentation
|
||||
- Flag deprecated or renamed items still in docs
|
||||
|
||||
3. **Completeness Check**
|
||||
- Public functions without docstrings
|
||||
- Exported modules without README coverage
|
||||
- Environment variables used but not documented
|
||||
- CLI commands not in help text
|
||||
|
||||
4. **Output Format**
|
||||
```
|
||||
## Documentation Drift Report
|
||||
|
||||
### Critical (Broken References)
|
||||
- [ ] README.md:45 references `calculate_total()` - function renamed to `compute_total()`
|
||||
|
||||
### Stale (Outdated Info)
|
||||
- [ ] CLAUDE.md:23 lists Python 3.9 - project uses 3.11
|
||||
|
||||
### Missing (Undocumented)
|
||||
- [ ] api/handlers.py:`create_order()` - no docstring
|
||||
|
||||
### Summary
|
||||
- Critical: X items
|
||||
- Stale: X items
|
||||
- Missing: X items
|
||||
```
|
||||
|
||||
5. **Do NOT make changes** - audit only, report findings
|
||||
58
plugins/doc-guardian/commands/doc-sync.md
Normal file
58
plugins/doc-guardian/commands/doc-sync.md
Normal file
@@ -0,0 +1,58 @@
|
||||
---
|
||||
description: Synchronize all pending documentation updates in a single commit
|
||||
---
|
||||
|
||||
# Documentation Sync
|
||||
|
||||
Apply all pending documentation updates detected by doc-guardian hooks.
|
||||
|
||||
## Process
|
||||
|
||||
1. **Review Pending Queue**
|
||||
List all documentation drift detected during this session.
|
||||
|
||||
2. **Batch Updates**
|
||||
For each pending item:
|
||||
- Show the specific change needed
|
||||
- Apply the update
|
||||
- Track in change list
|
||||
|
||||
3. **Update Types**
|
||||
|
||||
**Reference Fixes:**
|
||||
- Renamed function/class → update all doc references
|
||||
- Changed signature → update parameter documentation
|
||||
- Removed item → remove or mark deprecated in docs
|
||||
|
||||
**Content Sync:**
|
||||
- Version numbers (Python, Node, dependencies)
|
||||
- Configuration keys/values
|
||||
- File paths and directory structures
|
||||
- Command examples and outputs
|
||||
|
||||
**Structural:**
|
||||
- Add missing sections for new features
|
||||
- Remove sections for deleted features
|
||||
- Reorder to match current code organization
|
||||
|
||||
4. **Commit Strategy**
|
||||
- Stage all doc changes together
|
||||
- Single commit: `docs: sync documentation with code changes`
|
||||
- Include summary of what was updated in commit body
|
||||
|
||||
5. **Output**
|
||||
```
|
||||
## Documentation Sync Complete
|
||||
|
||||
### Files Updated
|
||||
- README.md (3 changes)
|
||||
- CLAUDE.md (1 change)
|
||||
- src/api/README.md (2 changes)
|
||||
|
||||
### Changes Applied
|
||||
- Updated function reference: calculate_total → compute_total
|
||||
- Updated Python version: 3.9 → 3.11
|
||||
- Added docstring to create_order()
|
||||
|
||||
Committed: abc123f
|
||||
```
|
||||
Reference in New Issue
Block a user