You are building
an AI skill library.
Keep it trustworthy.

Every team is now writing, sharing, and collecting Claude Code skills — markdown files that define how your agents think and act. As that library grows, so do the problems: duplicated skills, conflicting instructions, accidental PII, and more. TidyRepo audits your entire skill repo automatically, so your agents always get the best version of every skill.

Runs inside
Claude Code
acme-org / agent-skills — /tidy-auditScanning 0/11…
triage-bug.md
triage-bug-v2.md
triage-bug-final.md
deploy-prod.md
deploy-production.md
customer-data.md
onboard-user.md
onboarding-v2.md
onboarding.md
api-key-refresh.md
code-review.md

Findings will appear here…

Every growing knowledge base hits the same wall.

At a few dozen files, a knowledge base works fine. Markdown is readable, authors know each other, and updates stay fresh. Then the org scales. At a few hundred files (let alone a thousand), the same six problems appear in every team, every domain, every company.

  1. Duplicates.The same concept documented three times, each with slightly different guidance. Nobody knows which one is canonical.
  2. Contradictions.Two files give conflicting instructions on the same topic. Both are indexed. Both get cited.
  3. Staleness.Skills reference deprecated tools, retired processes, or version numbers from two years ago.
  4. Gaps.Half the skills explain what to do but not how. Edge cases and failure modes are missing entirely.
  5. No ownership.Nobody knows who wrote what. Known problems sit unresolved for months.
  6. Accidental PII.Phone numbers, email addresses, internal credentials, and private identifiers committed without intent, discoverable to anyone with repo access.

The result: people stop trusting the knowledge base. They search, find three different answers, and ask a colleague instead. The whole point collapses.

TidyRepo catches issues humans miss at scale, not because humans are careless, but because no human can hold a thousand files and all their contradictions in their head at once.

One skill. Three audit commands.

TidyRepo is a single Claude Code skill with three focused commands. Run one for a targeted check, or chain them for a complete pass. Each command produces a structured report: findings grouped by severity, not a flat list of noise.

/tidyrepo dupesAvailable

Duplicates and overlap

Groups semantically similar files using embeddings before comparison, so expensive analysis runs only where overlap is likely, not across every pair. Flags files for consolidation with similarity scores.

High value during taxonomy cleanup and repo consolidation.

/tidyrepo conflictsAvailable

Contradictions

Surfaces conflicting guidance across documents and groups conflicts into resolution buckets. Each finding includes both sides of the conflict and a suggested resolution path, not just a flag.

Critical before publishing or sharing the knowledge base externally.

More commands on the roadmap: staleness detection, coverage gap analysis, ownership inference, and more.

A report you can act on.

Every finding includes the file, line number, what was detected, and a concrete remediation step. Sorted by severity so the most urgent issues are always first.

PII Scan Results — my-skills-repo
847 files scanned5 files flagged7 total findings
CategoryCountVerdict
secret2⚠ 2 credentials committed to history
private_person3⚠ Real names in internal runbooks
2⚠ Internal addresses, not placeholders
api-auth.md:23secretGITHUB_TOKEN=ghp_xNd9k1q3abc…
Rotate key immediately. Remove from file and add pattern to .gitignore.
runbook-deploy.md:41secretAWS_SECRET_ACCESS_KEY=wJalrXUtn…
Rotate key immediately. Remove from file.
onboarding.md:15private_personBob Martinez (HR Lead)
Replace with role reference: "your HR lead".
incident-notes.md:8private_personSarah Johnson
Replace with @oncall or "the on-call engineer".
team-contacts.md:3private_personJames Park
Replace with role or remove section.
alert-setup.md:19alerts@acmecorp.com
Replace with a placeholder or team alias.
billing-setup.md:44billing@acmecorp.com
Replace with a placeholder or team alias.

Built for large repos from the start.

A naive audit (load all files, compare everything against everything) breaks down fast. At a few hundred files you're already exceeding context windows. At a thousand, brute-force comparison is computationally intractable. TidyRepo assumes the repo is large and designs around that constraint.

  1. 01

    Cluster first

    Related files are grouped by semantic similarity before any deep analysis. Expensive comparisons (contradiction checks, duplication scoring) run only inside clusters where issues are likely to exist.

  2. 02

    Inspect deeply

    Within each cluster, targeted checks run: contradiction detection, duplicate scoring, and PII scanning. Each check is focused and bounded, not a full-corpus scan.

  3. 03

    Report for action

    Findings are grouped by severity and theme, not flattened into a wall of issues. Where possible, likely ownership is attached so work can be assigned, not just discovered.

The output is designed to be opened on a Monday morning and acted on the same day. Not filed and forgotten.

Installation

TidyRepo runs inside Claude Code. You need Claude Code installed and authenticated. No external server, no separate API key setup beyond your existing Claude auth.

  1. 01

    Install Claude Code if you haven't already

    npm install -g @anthropic-ai/claude-code
  2. 02

    Clone TidyRepo once you have been added to the repo

    git clone https://github.com/rachhek/tidyrepo
  3. 03

    Open Claude Code in your KB repo, pointing to the plugin

    claude --plugin-dir ~/tidyrepo
  4. 04

    Run your first audit

    /tidyrepo pii

Request early access.

TidyRepo is currently in private early access. Leave your email and we'll add you to the GitHub repo — ready to clone and run in minutes.

FAQ

How do I get early access?

Submit your email in the early access section above. We'll add you to the private GitHub repo, after which you can clone it and follow the install steps to be up and running in minutes.

What kinds of repos does this work on?

Any markdown-based knowledge base. Works on plain GitHub repos, Obsidian vaults, Notion exports, GitBook sources, internal wiki exports, and Claude Code skill repos. If it's markdown files in a directory, TidyRepo can audit it.

Does my repo content leave my machine?

Your repo content is processed by Claude (Anthropic's API), subject to Anthropic's standard data handling and privacy terms. For enterprise accounts with zero-retention agreements, content is not used for training. No third-party services or external storage are involved beyond Anthropic's API.

How does it handle very large repos?

TidyRepo is designed around the assumption that the repo is large. Semantic clustering groups related files before any expensive analysis runs, so the system stays tractable at hundreds or thousands of files. It does not attempt to load everything into a single context window.

What does the output look like?

Each skill produces a structured report: findings ranked by severity (critical, high, medium), grouped by category, with the specific files involved and a suggested remediation path. Where possible, likely ownership is inferred from git history. The goal is a report you can act on immediately.

Can I run specific skills without running all of them?

Yes. Each skill is a standalone slash command. Run /tidyrepo pii on its own if PII is your only concern today, or run all three in sequence for a full audit pass.