协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
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'.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
name: janitor-report description: "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'." allowed-tools: Read, Bash(bash:*) argument-hint: "[--brief]" version: 1.5.1 author: Krzysztof Hendzel krzysztoff.hendzel@gmail.com license: MIT compatibility: Designed for Claude Code. Requires bash 3.2+ (macOS default works). Reads local Claude Code data only (~/.claude/skills, ~/.claude/agents, installed plugin metadata). tags:
Generate a comprehensive health report combining inventory, quality checks, duplicate detection, and broken skill findings.
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 update_available (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)scripts/scan.sh, lint.sh, detect_dupes.sh)~/.claude/skills, ~/.claude/agents, and installed plugin metadataFull report:
bash ~/.claude/skills/skills-janitor/scripts/scan.sh
bash ~/.claude/skills/skills-janitor/scripts/lint.sh
bash ~/.claude/skills/skills-janitor/scripts/detect_dupes.sh
Brief mode (inventory only):
bash ~/.claude/skills/skills-janitor/scripts/scan.sh
agents and plugins (with update_available) arrays; broken_symlinks count.marketing-seo-audit (user) ↔ marketing-skills:seo-audit (plugin)).Merge the three outputs into one table with severity levels, then recommend actions.
| Skill | Scope | Status | Issues |
|----------------------------------|----------|-------------|------------------------------------------|
| marketing-copywriting | user | DUPLICATE? | 90% overlap with marketing-skills:copywriting |
| seo-audit | user | WARNING | Description too short |
| old-deploy-helper | user | CRITICAL | Broken symlink |
| figma:figma-use | plugin | OK | - |
Recommended actions per issue type:
/janitor-fix --prune/janitor-fixupdate_available: true) → /plugin update <name>/janitor-valueError: scan.sh: No such file or directory
Solution: The plugin is installed under a different root. Locate it with ls ~/.claude/skills or check the plugin cache, then run the scripts from their actual location.
Error: Scan output is not valid JSON
Solution: Re-run with stderr visible (drop any 2>/dev/null) and report the failing line; a skill directory with unusual characters is the usual cause.
Error: plugins array is empty despite installed plugins
Solution: ~/.claude/plugins/installed_plugins.json is missing or in an unknown format — report which Claude Code version is in use.
Input: "Check my skills for problems."
Output: Run all three scripts, merge into the severity table, and lead with counts: "175 skills scanned: 2 critical (broken symlinks), 5 warnings, 3 likely duplicates, 2 plugins have updates available."
Input: "/janitor-report --brief"
Output: Run scan.sh only and present the inventory grouped by scope with per-scope counts.
{baseDir}/../../scripts/scan.sh, lint.sh, detect_dupes.sh/janitor-fix — auto-fix the issues this report finds/janitor-value — token cost + usage (combined)/janitor-discover — find or evaluate new skills