From skill-stats
Report Claude Code skill-usage telemetry — top used, recently active, dormant skills, plus on-disk size. USE WHEN: skill stats, skill usage, dormant skills, which skills do I use, prune skills, skill telemetry, what skills are dormant, most popular skills.
How this skill is triggered — by the user, by Claude, or both
Slash command
/skill-stats:skill-statsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Aggregates skill-invocation telemetry written by this plugin's bundled PreToolUse hook (`${CLAUDE_PLUGIN_ROOT}/scripts/log-skill.ts`) and cross-references against the on-disk skill catalog at `~/.claude/skills/` and `~/.claude/plugins/marketplaces/`.
Aggregates skill-invocation telemetry written by this plugin's bundled PreToolUse hook (${CLAUDE_PLUGIN_ROOT}/scripts/log-skill.ts) and cross-references against the on-disk skill catalog at ~/.claude/skills/ and ~/.claude/plugins/marketplaces/.
Skill tool invocation and appends one JSONL event to the plugin's telemetry file (${CLAUDE_PLUGIN_DATA}/events.jsonl, falling back to ~/.claude/plugins/data/skill-stats/events.jsonl). The hook is non-blocking — any failure exits silently and never interferes with skill execution.First-run note: Right after install, telemetry is empty. Use the plugin for a few days/sessions to accumulate data, then run the report.
Run the underlying script directly:
bun ${CLAUDE_PLUGIN_ROOT}/scripts/report.ts # full text report
bun ${CLAUDE_PLUGIN_ROOT}/scripts/report.ts --json # machine-readable JSON
bun ${CLAUDE_PLUGIN_ROOT}/scripts/report.ts --days=7 # restrict to last N days
bun ${CLAUDE_PLUGIN_ROOT}/scripts/report.ts --stale=14 # custom stale threshold
bun ${CLAUDE_PLUGIN_ROOT}/scripts/report.ts --author=NAME # filter by SKILL.md frontmatter `authors:`
The --author=NAME view reads the authors: field from each SKILL.md frontmatter and lists matching skills with their usage counts, session counts, last-used age, and on-disk size. Dormant authored skills surface with count = 0 for easy pruning decisions.
When invoking this skill in chat, run the JSON form, parse it, and present a clean markdown table with these sections:
codex:rescue show as phantom because they are slash-commands, not standalone SKILL.md files. They are real and used, just stored differently.Snapshots are useful for trend comparison. To save one:
mkdir -p "${CLAUDE_PLUGIN_DATA}/snapshots"
bun ${CLAUDE_PLUGIN_ROOT}/scripts/report.ts --json > "${CLAUDE_PLUGIN_DATA}/snapshots/skill-stats-$(date +%Y%m%d).json"
If ${CLAUDE_PLUGIN_DATA} is not set in your shell, fall back to ~/.claude/plugins/data/skill-stats/snapshots/.
Each line of events.jsonl is a self-contained JSON object:
{"event":"skill_invocation","skill":"deep-dive","session_id":"abc123","timestamp":"2026-05-01T20:00:00.000Z"}
The hook never logs tool inputs, file paths, or user prompts — only the skill name, session ID, and timestamp. Sessions named smoke or test are excluded.
npx claudepluginhub aojdevstudio/agentic-utilities --plugin skill-statsGuides reception of code review feedback: verify before implementing, avoid performative agreement, push back with technical reasoning when needed.
Design banners for social media, ads, website heroes, and print with multiple art direction options and AI-generated visuals.