From claude-wayfinder
Manually regenerate the dispatch catalog from skill sidecars and agent frontmatter. Trigger this skill whenever the user types /refresh-catalog, says "regenerate catalog", "refresh dispatch catalog", "rebuild catalog", "update the catalog", or any similar request to force a fresh dispatch catalog build outside of the automatic SessionStart or mtime-check paths.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-wayfinder:refresh-catalogThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Force a fresh regeneration of the dispatch catalog and report the results.
Force a fresh regeneration of the dispatch catalog and report the results.
The bundled refresh-catalog-on-stale.js hook (see Bundled hooks) automatically rebuilds the catalog when a source file (skill sidecar or agent frontmatter) is newer than the catalog itself. This skill exists for cases the mtime heuristic misses or when you want to force a rebuild for debugging:
[CATALOG ERROR] or [CATALOG STALE] banner.Read the mtime of the catalog before running the generator. The catalog path is resolved from $DISPATCH_CATALOG_PATH if set, otherwise the documented default ~/.claude/dispatch-catalog.json. If the file does not exist, note "catalog absent before run".
python -c "
import os, datetime
p = os.environ.get('DISPATCH_CATALOG_PATH') or os.path.expanduser('~/.claude/dispatch-catalog.json')
if os.path.exists(p):
t = os.path.getmtime(p)
print(datetime.datetime.fromtimestamp(t).isoformat(timespec='seconds'))
else:
print('absent')
"
Invoke claude-wayfinder catalog build with the consumer's source directories. The default layout follows Claude Code's standard ~/.claude/ tree; adjust the flags if your project uses non-standard paths.
claude-wayfinder catalog build \
--skills-dir ~/.claude/skills \
--agents-dir ~/.claude/agents \
--plugin-overrides-dir ~/.claude/triggers \
--plugins-dir ~/.claude/plugins \
--builtin-agents-dir ~/.claude/triggers/builtin \
--out "${DISPATCH_CATALOG_PATH:-$HOME/.claude/dispatch-catalog.json}" \
--log ~/.claude/dispatch-catalog-build.log
Capture both stdout and stderr. Record the exit code.
If the generator exits non-zero, surface the error visibly:
Catalog generation FAILED (exit {N})
{captured stderr}Check
~/.claude/dispatch-catalog-build.logfor per-entry details.
Read the mtime again using the same command as Step 1.
Read the catalog file. The top-level structure is:
{ "entries": [ { "kind": "skill" | "agent", ... }, ... ] }
Count entries by kind:
kind == "skill"kind == "agent"Read ~/.claude/dispatch-catalog-build.log and extract any lines containing warning or fatal (case-insensitive). Show only the lines from the most recent run (lines after the last generator-invocation timestamp that precedes the run).
If there are no warning/fatal lines, report "No warnings or fatal issues."
Print a structured summary:
Catalog regenerated successfully. ← or "DEGRADED (exit 2)" / "FAILED (exit 1)"
Skills: <N>
Agents: <M>
Total: <N+M>
Catalog mtime before: <ISO timestamp or "absent">
Catalog mtime after: <ISO timestamp>
Exclusion warnings (from dispatch-catalog-build.log):
<warning/fatal lines, or "None">
If exit code was 2, prepend the summary with a visible banner:
WARNING: Catalog is degraded — some entries were excluded due to validation errors. Review the warnings above and fix the affected
triggers.ymlor agent frontmatter files.
npx claudepluginhub glitchwerks/claude-wayfinder --plugin claude-wayfinderProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.