Install any skill in seconds. Free to start, no credit card required.
Get Started Free →hashgraph-online/sunset-review
Use this skill when the user wants to identify unused, near-zero-use, or stale skills/agents/commands in the plugin surface so they can be demoted or retired. Combines agent-dispatch telemetry (start-events only) with static reference scanning, classifies every surface item into Active / Investigate / Demote / Retire, and emits a Markdown report plus JSON sidecar. NEVER auto-deletes — surfaces candidates for human decision. Quarterly cadence. <example>Context: The plugin surface has grown and th
Passed 12 of 16 test cases with the skill, and 4 of 16 without it.
and 13 more in the full report
12 fixed4 passed either way4 still failing2 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 11 test cases the skill fixed. Same model, same prompt, with and without the skill.
If no sunset-review.window-days override is configured in session configuration, what default window length in days does the surface review tool use?
| Checked | Without skill | With skill |
|---|---|---|
| Applies a default review window of 90 days when no override is specified. | Missed | Passed |
The instructions your model reads when the skill loads.
Identify which skills, agents, and commands in the plugin surface are still earning their keep, and which are candidates to Demote (downgrade docs/tier) or Retire (remove). The skill is advisory: it produces a ranked candidate list and a sidecar artifact. It never deletes anything.
/repo-audit answers "does this repo match the ecosystem baseline?" — a pass/fail compliance check. /sunset-review answers a different question — "which parts of OUR surface are unused?" — with different inputs (dispatch telemetry + static ref scanning), a different cadence (quarterly, not per-session), and a different output (prune candidates, not compliance status). Folding it into repo-audit would muddy both.
The walker — scripts/lib/sunset/walker.mjs — is read-only and was built against the following grep-verified telemetry facts. Do not override them:
subagents.jsonl records agent dispatches; skill-invocations.jsonl records Skill tool selection events (L1 telemetry, epic #645). Agents are assessed by agent-dispatch counts; skills are assessed by real selection counts from skill-invocations.jsonl, supplemented by static reference scanning. Commands still have no invocation telemetry and are assessed by static reference scanning only. Skills with zero invocations in the window receive a zero-count (not null), so the low-coverage guard still applies and can downgrade Retire → Investigate when the telemetry window is short.event === "start" records count. agent_type is null on every stop event. A stop event must never mark an agent cold. The walker filters to start events.coverageDays < windowDays, every Retire verdict is downgraded to Investigate and meta.lowConfidence is set true. Retiring on sub-window data is unsafe — treat any cold finding as "investigate", not "delete".memory-proposal-collector, a by-design reference doc) is a Retire candidate; a once-dispatched agent (db-specialist, ui-developer at n=1) is a Demote candidate. The walker distinguishes them.| Verdict | Meaning | Action posture |
|---|---|---|
| Active | Agent dispatch above floor, OR skill invoked-by-command / command invokes-a-live-skill, OR ≥2 non-boilerplate refs | Keep |
| Investigate | Coverage < window (low-confidence), OR conflicting signals — default-safe bucket | Manual review |
| Demote | Single dispatch (n=1), OR a skill with a single cross-ref and no command linkage | Consider downgrading docs/tier |
| Retire | dispatch===0 AND nonBoilerplateRefs===0 AND coverage>=window | Strong remove candidate (verify first) |
sunset-review.window-days override; default to 90 (DEFAULT_WINDOW_DAYS).Run the read-only walker and capture its JSON:
node scripts/lib/sunset/walker.mjs --json --window-days 90 > /tmp/sunset-walk.json
Exit 0 = walk completed (cold findings are exit 0, not an error). Exit 1 = bad args / surface dir missing. Exit 2 = system error. The walker writes no files — it is pure analysis.
test cases passed, vs 4 / 16 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.