skills-janitor

agent
Security Audit
Fail
Health Pass
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Community trust — 55 GitHub stars
Code Fail
  • rm -rf — Recursive force deletion command in scripts/fix.sh
Permissions Pass
  • Permissions — No dangerous permissions requested
Purpose
This plugin acts as a management and diagnostic utility for Claude Code. It audits installed skills, tracks usage frequency, monitors context window token costs, and helps prune unused configurations.

Security Assessment
The tool functions primarily by executing local shell commands and parsing local conversation history, which inherently involves accessing sensitive user data. The automated scan caught a failure for a recursive force deletion command (`rm -rf`) located in a script file. While this is commonly used for safe cleanup routines or as part of a dry-run feature, any forced deletion command requires a manual code review to ensure it cannot accidentally wipe critical system directories. There are no hardcoded secrets, no dangerous broad permissions requested, and no obvious unauthorized network requests. Overall risk is rated as Low.

Quality Assessment
The project is actively maintained, with its most recent push occurring today. It is protected under the standard MIT license and has a clear description. With 55 GitHub stars, it demonstrates a basic level of community trust and user adoption. The tool delivers on its promise of being a lightweight, zero-dependency agent.

Verdict
Safe to use, but it is highly recommended to quickly inspect the `fix.sh` script to verify the `rm -rf` logic targets only intended directories.
SUMMARY

Audit, track usage, and compare your Claude Code skills. 9 actions, zero dependencies.

README.md

Skills Janitor

Audit, track usage, and manage your Claude Code skills - 7 focused skills, zero dependencies.

Skills Janitor

A plugin for Claude Code that keeps your skills ecosystem clean, organized, and healthy.

What's New in v1.1

  • Pre-install overlap check - check if a new skill duplicates existing ones before installing
  • Context window token cost - see how many tokens each skill consumes and find unused waste
  • Consolidated from 9 to 7 commands - fewer commands, same coverage

Skills

Command What it does
/janitor-audit Full inventory of all installed skills
/janitor-report Health check: lint, duplicates, broken skills, recommendations
/janitor-fix Auto-fix issues + --prune to remove broken skills
/janitor-usage Track which skills you use and which you never use
/janitor-tokens Show context window token cost per skill
/janitor-search Search GitHub for skills + --compare for market analysis
/janitor-precheck Check overlap before installing a new skill

Install

Plugin install (recommended):

/plugin marketplace add khendzel/skills-janitor
/plugin install skills-janitor

Or clone directly:

git clone https://github.com/khendzel/skills-janitor ~/.claude/skills/skills-janitor

Usage examples

Each skill has its own slash command with autocomplete:

/janitor-audit          -> full skill inventory
/janitor-report         -> health check (lint + duplicates + broken)
/janitor-usage          -> which skills you actually invoke
/janitor-tokens         -> context window cost per skill
/janitor-search         -> find skills on GitHub
/janitor-search --compare my-skill  -> market analysis vs alternatives
/janitor-precheck https://github.com/user/skill  -> check before installing
/janitor-fix            -> auto-fix (dry-run by default)
/janitor-fix --prune    -> find and remove broken skills

Or use natural language:

"audit my skills"
"which skills do I use?"
"how many tokens do my skills cost?"
"check this skill before installing"
"search for n8n skills"

Usage tracking

Parses your conversation history to show which skills you invoke and which you never use:

=== Skills Janitor - Usage Report ===
Period: 2026-02-24 to 2026-03-23 (4 weeks)

Active skills: 4 / 36 (11%)
Unused skills: 32 (89%)
Most used: n8n-workflows (17 total)
Recommendation: Remove 32 unused skills

Token cost analysis

Shows how many context window tokens each skill consumes:

=== Skills Janitor - Context Window Cost ===
Budget: 200,000 tokens

  Skill                               Tokens  Budget  Used?
  marketing-copywriting                2,340   1.2%    yes
  marketing-seo-audit                  1,560   0.8%     NO
  ...

  Total token cost: 18,720 (9.4% of budget)
  Unused skill cost: 14,300 (7.2% of budget wasted)

Pre-install check

Check if a new skill overlaps with existing ones before installing:

=== Skills Janitor - Pre-Install Check ===

  Checking: marketing-seo-v2
  Scanned 35 installed skills

  --- HIGH OVERLAP (likely duplicates) ---
    [72%] marketing-seo-audit (user)
         Shared: seo, audit, ranking, meta

  VERDICT: High overlap detected - likely duplicate

What it won't do

  • Never deletes anything without explicit confirmation
  • Never modifies plugin/marketplace skills
  • Respects that some overlap is intentional
  • Dry-run by default for all destructive operations

Requirements

  • Bash, Python 3, curl
  • No pip installs, no node modules

Structure

skills-janitor/
├── .claude-plugin/
│   └── marketplace.json      # Plugin manifest (7 skills)
├── skills/
│   ├── janitor-audit/SKILL.md
│   ├── janitor-report/SKILL.md
│   ├── janitor-fix/SKILL.md
│   ├── janitor-usage/SKILL.md
│   ├── janitor-tokens/SKILL.md
│   ├── janitor-search/SKILL.md
│   └── janitor-precheck/SKILL.md
├── scripts/                  # Shared bash+python scripts
├── demo.gif
├── LICENSE                   # MIT
└── README.md

Migrating from v1.0

If you used v1.0 (9 skills), here's what changed:

Old command New equivalent
/janitor-check /janitor-report (includes lint checks)
/janitor-duplicates /janitor-report (includes duplicate detection)
/janitor-cleanup /janitor-fix --prune
/janitor-compare /janitor-search --compare <name>

Contributing

PRs welcome. Each skill is self-contained in skills/janitor-*/SKILL.md.

License

MIT

Reviews (0)

No results found