tzurot-doc-audit
Reviews docs and Claude's memory to ensure everything is current and correctly categorized.
Install
mkdir -p .claude/skills/tzurot-doc-audit && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/12014" && unzip -o skill.zip -d .claude/skills/tzurot-doc-audit && rm skill.zipInstalls to .claude/skills/tzurot-doc-audit
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Documentation and auto-memory freshness audit. Invoke with /tzurot-doc-audit to review docs and Claude auto-memory for staleness, items in the wrong layer, and missing-tool drift.Key capabilities
- →Audit auto-memory for staleness and incorrect placement
- →Identify memory files that should migrate to rules, docs, or skills
- →Verify documentation freshness across the project
- →Check for broken internal references in documentation
- →Perform cross-reference checks between docs and code
How it works
This skill provides a checklist to audit documentation and auto-memory for staleness, incorrect layering, and missing-tool drift. It guides the user to classify memory files and verify various documentation aspects against project standards.
Inputs & outputs
When to use tzurot-doc-audit
- →Audit documentation freshness
- →Review auto-memory entries
- →Verify structural integrity of docs
About this skill
Documentation Audit Procedure
Invoke with /tzurot-doc-audit to audit documentation freshness across the project.
Run this periodically (e.g., after adding new tools, after major refactors) to ensure docs stay accurate.
Standards live in .claude/rules/07-documentation.md. This skill is the verification procedure.
Quick Scan
Fast triage before a full audit:
# What docs exist?
find docs/ -name '*.md' | sort
# Recent changes (last 30 days)?
git log --since="30 days ago" --name-only --pretty=format: -- docs/ .claude/rules/ .claude/skills/ | sort -u | grep .
# Proposals that might be stale? (project uses backlog/ — no active/ dir by design)
ls docs/proposals/backlog/
# Orphan proposals (structural check — fails CI on any unlinked proposal)
pnpm ops guard:proposal-links
# Skills lastUpdated dates
grep -r 'lastUpdated' .claude/skills/*/SKILL.md
Audit Checklist
Work through each section. For each item, verify accuracy and fix inline or note for follow-up.
Section 0 runs FIRST because a memory promoted into a Tzurot rule, doc, or skill changes what those sections then audit.
0. Auto-Memory Audit (run FIRST)
The shared auto-memory store (~/Documents/claude-memory, shared by every Claude
session on this machine) is audited by harness:doc-audit § Step 2, not here —
nothing in this skill deletes a memory file. When a memory's destination is a
Tzurot rule, skill, or doc, write that destination here; the memory's own
deletion is proposed to the owner through harness:doc-audit's gate.
Stamp it when done: pnpm ops cadence:mark memory-prune, then commit
backlog/cadence-ledger.json to develop.
1. docs/README.md Index
- Files listed under "Backlog proposals" are a representative subset of
docs/proposals/backlog/ - Quick Links point to files that exist
- Reference subdirectory table matches actual subdirectories
- Root-level documentation section references correct filenames
Note: this project uses
BACKLOG.md(root load manifest) +backlog/(HOTnow.md/active-epic.md+ COLDcold/) for active work tracking, notdocs/proposals/active/— that directory does not exist by design. If you see references to it in any doc, they're stale and should be removed.
2. Rules Files (.claude/rules/)
| File | Check |
|---|---|
00-critical.md | Security rules still reflect current patterns? Post-mortem table current? |
01-architecture.md | Service boundaries match dependency-cruiser rules? Anti-patterns table current? |
02-code-standards.md | ESLint limits match eslint.config.js? Testing patterns current? |
03-database.md | Protected indexes list current? (The cache TTL table lives in durability-tiers.md — § Existing cache implementations.) |
04-discord.md | Shared utilities table lists all browse/dashboard helpers? |
05-tooling.md | All pnpm ops commands listed? pnpm quality description accurate? |
06-backlog.md | BACKLOG.md HOT/COLD table matches the actual backlog/ layout; granularity ladder intact? 06-backlog staleness rules intact? |
07-documentation.md | Placement table covers all docs/reference/ subdirs? Lifecycle rules current? |
09-interaction-style.md | Interaction guidance still reflects current feedback (no premature-stopping, etc.)? |
10-working-posture.md | Each posture still names a trigger → behavior? Cross-references to rules/skills resolve? |
How to verify 05-tooling.md:
pnpm ops --help # Compare available commands vs documented ones
pnpm quality --help # Verify quality script description
3. Skill Files (.claude/skills/)
For each skill:
-
lastUpdateddate is recent (within 30 days of last relevant code change) - Procedures still work as written
- Referenced files/paths still exist
- Commands produce expected output
ls .claude/skills/*/SKILL.md
Skills whose procedure is coupled to something enforced elsewhere need a deeper check than the generic list above — the coupling drifts silently:
| Skill | Extra check |
|---|---|
/tzurot-review-response | Edit-shape whitelist current? Round-cap + fixup-commit procedure matches the CI fixup-check job? |
3b. Economy Pass — always-loaded surfaces (rules + CURRENT.md + skills)
Sections 2 and 3 ask is this still accurate? Nothing above asks is this earning its context cost? — so the always-loaded corpus only ever grows. Rank it, then cut from the top:
pnpm ops lines:check --breakdown # every rules file + CURRENT.md + skill body, worst-first by bytes
Work the ranking in order and stop after the top 3. Bytes, not lines, is the order that matters: density varies several-fold across these files (the command prints each one's B/line), so a line-sorted list puts a table-heavy file above a prose-heavy one that costs more. Depth beats breadth here — three files read closely beats ten skimmed, and the ranking is stable enough that the next audit picks up where this one stopped.
The cut test — four questions per passage
A passage stays only if it survives all four. Any single "no" is a cut, and "it's true and useful" is not an answer to any of them:
- Constraint or narrative? Does it state what to do, or recount how we found out? Incident stories, adoption dates, council-derivation notes, and "this happened twice" counts are the record of a decision, not the decision — the operationalized outcome IS the record, and git preserves the story.
- Would a reader act differently without it? If removing the passage changes no behavior, it is costing tokens to be agreed with.
- Is it said in more than one layer? The same thing in a rule AND a skill
AND a doc is one canonical statement plus two copies that drift. Keep it at
the layer that loads when it is needed (
07-documentation.md), link from the others. - Has a gate since made it structural? A measurement, a caution, or a
checklist superseded by a
guard:*/ ratchet / hook is enforced now — the prose is a second, weaker copy that can silently disagree with the gate.
Cut text goes nowhere. Not to a doc, not to an archive file, not to a comment — git holds it. Moving it down a layer is only right when the content is genuinely reference someone will look up on purpose; otherwise a move is a cut that didn't happen.
Who decides
This pass defaults to cutting, and the owner sees the diff. The agent
proposing rule additions should not be the sole judge of what is excess, and
the direction of that bias is measured, not hypothetical: the July trim bought
headroom and the additions since have been spending it. So — propose the cuts
as a normal review-gated PR (.claude/rules/*.md and SKILL.md both require
one), one PR per pass, with each cut's question number as its justification.
When a passage is genuinely contested, cut it and say so in the PR body; the
owner restoring one line is cheaper than the corpus keeping ten.
Record the result
- Re-run
pnpm ops lines:check --breakdownand put the before/after byte numbers in the PR body — a trim with no number is indistinguishable from a reshuffle. pnpm ops lines:update-baseline --surface <name>to ratchet the trimmed surface DOWN. Scope it: the unscoped write also ratchets a grown surface UP in the same commit, which is how a previous post-trim refresh got skipped entirely and the trim went unrecorded.- Stamp the pass:
pnpm ops cadence:mark economy-pass, then commitbacklog/cadence-ledger.jsonto develop.
4. Reference Docs by Subdirectory
| Subdirectory | Key checks |
|---|---|
architecture/ | ADRs reference current service names? Memory/context docs match implementation? |
caching/ | Pub/sub guide matches actual cache invalidation code? |
database/ | Prisma drift issues still relevant? |
deployment/ | Railway operations match current deploy process? |
features/ | Feature docs describe current behavior? |
guides/ | Development setup works? Testing guide current? |
operations/ | Runbooks reference correct commands/services? |
standards/ | Patterns still used? No deprecated approaches? |
templates/ | Templates produce valid output? |
testing/ | Test procedures reference current tools? |
tooling/ | OPS CLI reference matches pnpm ops --help? |
| Ro |
Content truncated.
When not to use it
- →When the user does not want to audit documentation freshness
- →When the user does not want to review auto-memory entries
- →When the user does not want to verify structural integrity of docs
Limitations
- →Requires manual verification of accuracy for each item
- →Requires manual fixing of issues found inline
- →Requires updating `lastUpdated` on modified skill files
How it compares
This skill offers a systematic audit procedure for documentation and auto-memory, ensuring accuracy and proper placement of information, which is more thorough than an ad-hoc review.
Compared to similar skills
tzurot-doc-audit side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| tzurot-doc-audit (this skill) | 0 | 3mo | Review | Advanced |
| meeting-minutes | 41 | 8mo | No flags | Beginner |
| super-save | 1 | 3mo | Review | Beginner |
| k-docs | 0 | 9mo | No flags | Beginner |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
meeting-minutes
github
Generate concise, actionable meeting minutes for internal meetings. Includes metadata, attendees, agenda, decisions, action items (owner + due date), and follow-up steps.
super-save
supermemoryai
Save important project knowledge to memory. Use when user wants to preserve architectural decisions, significant bug fixes, design patterns, or important implementation details for team reference.
k-docs
Falkicon
>
Outline Open Source Team Knowledge Base and Wiki Platform
agentskillexchange
Outline is a fast, collaborative knowledge base for teams built with React and Node.js. It provides real-time editing, Markdown support, and a rich API for integration with Slack, authentication providers, and custom workflows.
note
V1CeVersaa
>-
handoff
rakovi4
Write a journey summary capturing noteworthy moments (predictions, decisions, surprises, mistakes, quirks). Runs automatically the moment the agent observes something worth noting during work, and manually before /clear or /compact as a final sweep. Idempotent — skips entries already recorded. Use w