Reviews and cleans up outdated documentation. Use periodically to maintain documentation health. Triggers on: review docs, clean up documentation, check for stale docs.
Systematically review documentation for staleness, accuracy, and relevance.
Scan for documentation files:
find . -name "*.md" -not -path "./.git/*" -not -path "./.vendor/*" -not -path "./.worktrees/*"
Common locations:
README.md (root and subdirs)docs/ directoryAGENTS.md, CLAUDE.md.claude/skills/*/SKILL.mdknowledge/ directoryscripts/aha-loop/templates/For each document, check:
| Indicator | Check Method | Threshold |
|-----------|--------------|-----------|
| Last modified | git log -1 | > 30 days |
| Referenced files | grep + verify | Missing = stale |
| Code examples | Syntax check | Errors = stale |
| Version numbers | Compare to actual | Mismatch = stale |
| Links | HTTP check | Broken = stale |
For each code reference in docs:
## Code Reference Check
File: [doc-path]
Reference: `src/main.rs:45-60`
Status: [Exists | Missing | Changed]
If Changed:
- Original: [what doc says]
- Current: [what code shows]
- Action: [Update doc | Flag for review]
# Extract URLs
grep -oP 'https?://[^\s)]+' file.md
# Check each URL
curl -s -o /dev/null -w "%{http_code}" URL
Create docs-review-report.md:
# Documentation Review Report
**Date:** [YYYY-MM-DD]
**Reviewed:** [N] files
**Issues Found:** [N]
## Summary
| Category | Count |
|----------|-------|
| Stale (>30 days) | [N] |
| Missing References | [N] |
| Broken Links | [N] |
| Outdated Examples | [N] |
## Issues by File
### [file1.md]
- [ ] Line 45: Reference to `src/old.rs` - file no longer exists
- [ ] Line 78: Code example uses deprecated API
### [file2.md]
- [ ] Line 12: Version "1.0.0" should be "2.0.0"
- [ ] Line 56: Broken link to external docs
## Recommended Actions
1. **Delete:** [files that should be removed]
2. **Update:** [files that need content updates]
3. **Review:** [files that need human review]
## Auto-fixable
The following can be auto-fixed:
- [ ] Update version numbers
- [ ] Remove dead links
- [ ] Update file paths
Run `./scripts/aha-loop/doc-cleaner.sh --fix` to apply.
# Generate report only
./scripts/aha-loop/doc-cleaner.sh --report
# Apply safe fixes
./scripts/aha-loop/doc-cleaner.sh --fix
# Interactive mode
./scripts/aha-loop/doc-cleaner.sh --interactive
Log review activities:
## 2026-01-29 16:00:00 | Task: Maintenance | Phase: Doc Review
### Documentation Review
Scanned 45 files, found 7 issues.
### Key Findings
- AGENTS.md references outdated skill paths
- README example code uses deprecated API
### Actions Taken
- Auto-fixed 3 version number issues
- Flagged 4 items for human review
Before completing review:
File: docs/api.md last modified 90 days ago
# API Documentation
## Authentication
See `src/auth/mod.rs` for implementation.
Use version 0.5.0 of the auth library:
```toml
auth-lib = "0.5.0"
More info: https://example.com/old-docs
### Review Findings
1. **Stale**: Last modified 90 days ago
2. **Missing Reference**: `src/auth/mod.rs` doesn't exist (moved to `src/api/auth.rs`)
3. **Outdated Version**: Current version is 1.2.0, not 0.5.0
4. **Broken Link**: https://example.com/old-docs returns 404
### Report Entry
```markdown
### docs/api.md
**Staleness:** 90 days since last update
**Issues:**
- [ ] Line 5: `src/auth/mod.rs` → `src/api/auth.rs`
- [ ] Line 8: Version 0.5.0 → 1.2.0
- [ ] Line 12: Broken link (404)
**Recommendation:** Update file paths and versions, remove broken link
To reduce future staleness:
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer