Skip to content

JadeLiu-tech/skilldex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

skilldex

Your skills deserve a home. Skilldex indexes every agentic skill you've installed, lets you search them by intent, shows which you actually use, and gives you a place to learn the ones you forgot you had.

status: alpha python: 3.11+ license: MIT

Skilldex web dashboard

Two surfaces, one brain:

  • TUIskilldex tui — Textual app with semantic search + analytics.
  • Webskilldex web — Local FastAPI dashboard at http://127.0.0.1:8765.

Both read from the same local sqlite index. No accounts, no network calls, nothing leaves your machine.


Why

Claude Code power users accumulate skills fast. A typical power user today has 100+ skills spread across:

  • ~/.claude/skills/ — skills you've written or cloned.
  • ~/.claude/plugins/marketplaces/*/plugins/*/skills/ — every installed plugin's skills.
  • $PWD/.claude/skills/ — project-local skills.
  • skill_packs/ — vendored packs inside a repo.

Without a dashboard that unifies them, your library becomes a junk drawer: you can't remember what each skill does, you don't know which you actually use, you can't search by intent, and there's no feedback loop on whether your triggers are working.

Skilldex fixes this.


Features

  • Multi-source indexer — finds skills in all four locations above. Dedupes. Flags name collisions across sources.
  • Semantic search — "find a skill for verifying a deploy" → top-k relevant skills. Works offline by default (hashing embedder). Upgrade to sentence-transformers with one extra.
  • Usage analytics from your transcripts — parses ~/.claude/projects/*/*.jsonl for historical slash-command and Skill tool invocations. Shows top-used, dormant, and time-windowed counts.
  • Interactive playground — skill detail page with description, triggers, past invocations, one-click "copy invocation."
  • Doctor — flags name collisions, missing descriptions, weak trigger guidance.
  • TUI + Web — same data, two interfaces. TUI is fast in the terminal. Web is shareable on localhost.

How skilldex compares

ls ~/.claude/skills Plugin marketplace browse skilldex
Lists user skills
Lists plugin skills
Lists project-local skills
Unified view across all sources
Flags collisions across sources
Semantic ("what do I need for X")
Usage analytics from transcripts
Interactive playground / detail partial (docs)
Works offline

No one else is unifying user + plugin + project + pack skills with usage data pulled from your own transcripts. That's the wedge.


Installation

pipx install skilldex          # recommended — isolated CLI
# or
pip install skilldex

Optional: upgrade to neural embeddings (~80MB download, better semantic quality):

pipx install 'skilldex[embed]'

Requires Python 3.11+.


Quickstart (30 seconds)

skilldex index                                   # build the local index
skilldex search "verify a deploy after shipping"  # semantic lookup
skilldex stats                                   # top + dormant skills
skilldex tui                                     # launch the terminal UI
skilldex web                                     # open http://127.0.0.1:8765

First index takes ~2s for ~100 skills. Re-runs are incremental and near-instant.


TUI tour

skilldex tui
  • / focus the filter box.
  • Type freely for fuzzy name/description match.
  • Press s → filter becomes semantic-search. Type "test a website" → runthrough, browse, qa surface.
  • a → analytics modal: total, used, dormant, top-10, dormant-10.
  • Arrow keys on the list update the detail pane on the right.
  • e opens the selected SKILL.md in $EDITOR.
  • c copies the /<skill-name> invocation to clipboard.
  • q or Ctrl+C quits.

Web tour

skilldex web --port 8765
open http://127.0.0.1:8765
  • / — card grid of every skill, filterable by source (chips at the top).
  • /skill/<id> — description, triggers, allowed tools, usage stats, recent invocations, "copy invocation" button.
  • /search — HTMX live-filtering semantic search (types-as-you-go).
  • /analytics — top-used vs dormant, linked to detail pages.
  • /doctor — severity-colored findings for your library.

How it works

Skilldex does four things on index:

  1. Walks your skill sources (see Configuration below).
  2. Parses each SKILL.md (YAML frontmatter + mined "use when" lines).
  3. Scans ~/.claude/projects/**/**.jsonl for both tool_use Skill blocks and <command-name>/…</command-name> slash-command markers.
  4. Embeds every skill and caches vectors in sqlite keyed by content hash (so re-runs don't re-embed unchanged skills).

Everything lives at ~/.local/share/skilldex/skilldex.db. Safe to delete — just re-index.

See document/docs/architecture.md for the full picture.


Configuration

Run skilldex info to see resolved paths. Overrides via env vars:

var effect
CLAUDE_HOME Override ~/.claude (useful for testing on a fake tree).
SKILLDEX_EMBED st (sentence-transformers) or hash (offline default).
XDG_DATA_HOME Move the sqlite db off ~/.local/share.

Full reference: document/docs/configuration.md.

Don't want skilldex reading your transcripts? skilldex index --skip-usage.


API overview

Skilldex is a library, not just a CLI. Core modules are stable:

from skilldex.core.config import load
from skilldex.core.discovery import discover
from skilldex.core.search import build_index, search

cfg = load()
r = discover(cfg)
build_index(cfg.db_path, r.skills)
hits = search(cfg.db_path, "audit a PR", k=3)

Full reference: document/docs/api_reference.md.


Contributing

See CONTRIBUTING.md. Bug reports and PRs welcome — especially additional data sources (e.g. ~/.claude/agents/), more doctor rules, or ideas for the TUI.

License

MIT.

About

Dashboard for discovering, searching, and managing agentic skills (TUI + web)

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors