Agent skill · operations · jeremylongshore

janitor-report

Full health check of all your skills in one report. Use when the user wants to check for errors, find duplicates, detect broken skills, or get a complete overview of skill health. Pass --brief for inventory only. Trigger with '/janitor-report'.

Why this skill is useful

Adds scripts for comprehensive skill health checks, including inventory, linting, and duplicate detection that the AI wouldn't generate on its own.

What it needs

Requires bash installed locally. About 3k tokens when loaded. Last updated 2026-08-07. 2,604 stars on the source repository.

What this skill does

Health Report Generate a comprehensive health report combining inventory, quality checks, duplicate detection, and broken skill findings. Overview One report covering every place a skill lives: user, project, codex, plugin, and source scopes. Plugin skills appear with their full invocation name (e.g. marketing-skills:image, figma:figma-use) — these were invisible to the v1.2 report. The scan JSON also includes an agents array (subagents from ~/.claude/agents — their descriptions are always-loaded too) and per-plugin updateavailable (installed commit vs marketplace HEAD) — surface stale plugins and heavy agents in the report. Modes: /janitor-report (default) — full health check: inventory + lint + duplicates + broken /janitor-report --brief — inventory only (replaces the old /janitor-audit) Prerequisites Claude Code with the skills-janitor plugin installed (provides scripts/scan.sh, lint.sh, detectdupes.sh) bash 3.2+ (the stock macOS bash works; no external dependencies) Read access to ~/.claude/skills, ~/.claude/agents, and installed plugin metadata No authentication or API keys required — the scripts read local files only Instructions Step 1: Run the scripts Full report: Brief mode (inventory only): Step 2: What each script covers Inventory (scan.sh) — all skills across scopes, symlink status, frontmatter fields, line counts; agents and plugins (with updateavailable) arrays; brokensymlinks count. Quality checks (lint.sh) — Critical: broken symlinks, missing SKILL.md, missing frontmatter. Warning: missing/empty name or description, description too short/long, missing version. Info: no body content, no Gotchas section, large files. Duplicate detection (detectdupes.sh) — name collisions (two distinct skills with the same qualified name at different paths) and description overlap (Jaccard similarity >30%), with cross-scope user-vs-plugin pairs explicitly surfaced (e.g. marketing-seo-audit (user) ↔ marketing-skills:seo-audit (plugin)). …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills jeremylongshore/janitor-report

View the source on GitHub

Browse the @skills marketplace