CLAUDE.md Drift Audit (forked, read-only)
Days window: $ARGUMENTS (default 7 if empty).
Perform these steps in order, then return a single punch-list summary. Do not modify any file.
- Inventory every
CLAUDE.mdand*.claude/rules/*.mdin the tree usingfind . -name "CLAUDE.md" -type f -not -path "*/.git/*" -not -path "*/node_modules/*". List paths and line counts. - Collect change signal for the window:
git log --since="$ARGUMENTS days ago" --name-status --no-merges --diff-filter=DR→ deleted and renamed paths.git diff "@{$ARGUMENTS days ago}" --name-status -- package.json requirements.txt pyproject.toml go.mod Cargo.toml 2>/dev/null→ manifest deltas (removed/added deps).
- Cross-reference each CLAUDE.md against those signals using
grep/Read:- Mark any line that names a deleted or renamed path.
- Mark any line in a Tech Stack / Dependencies section that names a removed dep.
- Mark any
@path/...chain import or markdown link whose target was deleted.
- Return the punch list in this exact shape (markdown), nothing else:
## Drift Audit (window: <N> days)
Total CLAUDE.md inspected: <count>
Signals examined: <deleted_paths>, <renamed_paths>, <removed_deps>
### Findings
- <path>:<line> — <one-sentence reason> — suggested action
- ... (one bullet per drift; omit section if empty)
### Clean
- <path> (lines unchanged, references valid)
- If no drift is found, return exactly
## Drift Audit\n\nNo drift in <N>-day window. <count> files inspected.. Do not pad the output.