@avcodes/skilled
Advanced tools
+115
|  | ||
| Your AI coding tools keep traces. Skilled reads them. | ||
| Live TUI dashboard that aggregates skill usage across Claude Code, OpenCode, Codex, Grok, and Droid. Reads local history files only. Zero network, zero telemetry. | ||
| <!-- TODO: demo video --> | ||
| ## What you get | ||
| - 30 fps terminal dashboard: bar charts, 16-week activity heatmap, hourly histogram, recent activity feed | ||
| - Skill audit: heavy hitters, rising/declining trends, stale skills, one-offs, cross-project patterns | ||
| - CLI with JSON output: `skilled list`, `skilled audit`, `skilled detail <skill>`. Filter by source or project. | ||
| ## Install | ||
| Shell (Linux / macOS): | ||
| ```sh | ||
| curl -fsSL https://raw.githubusercontent.com/av/skilled/main/install.sh | sh | ||
| ``` | ||
| npm: | ||
| ```sh | ||
| npm install -g @avcodes/skilled | ||
| ``` | ||
| pip: | ||
| ```sh | ||
| pip install skilled | ||
| ``` | ||
| Then run `skilled`. | ||
| ## Usage | ||
| ``` | ||
| skilled Interactive dashboard | ||
| skilled list All skills ranked by usage | ||
| skilled list --sort recent Sorted by last used | ||
| skilled detail review Deep dive on one skill | ||
| skilled audit Health report across all skills | ||
| skilled calls --source codex Raw invocations from a specific tool | ||
| skilled providers Which tools are detected | ||
| ``` | ||
| Add `--json` to any command for machine-readable output. Filter with `--source <tool>` and `--project <path>`. | ||
| ### TUI keys | ||
| | Key | Action | | ||
| |-----|--------| | ||
| | `s` | Cycle sort: count → alphabetical → recent | | ||
| | `Tab` | Toggle sort direction | | ||
| | `j` / `k` | Scroll | | ||
| | `Enter` | Open skill detail (replaces right panel) | | ||
| | `a` | Toggle audit view | | ||
| | `r` | Refresh data | | ||
| | `q` / `Esc` | Quit | | ||
| ## Supported tools | ||
| | Tool | What it reads | | ||
| |------|--------------| | ||
| | **Claude Code** | `~/.claude/history.jsonl` + session JSONL files | | ||
| | **OpenCode** | Local session history | | ||
| | **Codex** | Local session history | | ||
| | **Grok** | Local session history | | ||
| | **Droid** | Local session history | | ||
| Skilled auto-detects which tools are installed. No configuration needed. If the history files exist, they show up. | ||
| ## How it works | ||
| Each tool writes session traces to predictable local paths. Skilled has a provider for each one that parses those files and extracts skill invocations (slash commands, tool calls, skill triggers) into a common format: skill name, timestamp, project, session, source. | ||
| From there: frequency counts, weekly trends, hourly distribution, per-project breakdowns, and audit heuristics (rising = 50%+ increase over 4 weeks, stale = unused 30+ days, etc.). | ||
| The TUI renders at 30 fps using [@opentui/core](https://github.com/nicholasgasior/opentui). Bar charts use 8-level Unicode block elements for sub-character precision. The heatmap uses a 5-level green intensity ramp. | ||
| No data leaves your machine. No accounts, no config files, no API keys. | ||
| ## Build from source | ||
| Requires [Bun](https://bun.sh): | ||
| ```sh | ||
| git clone https://github.com/av/skilled.git | ||
| cd skilled | ||
| bun install | ||
| bun run start | ||
| ``` | ||
| Compile to a standalone binary: | ||
| ```sh | ||
| bun run build # outputs ./skilled | ||
| ``` | ||
| ### Optional: Rust index | ||
| For faster re-scanning of large history files: | ||
| ```sh | ||
| cd index | ||
| cargo build --release | ||
| ``` | ||
| The TUI will use the index automatically when available. | ||
| ## License | ||
| MIT |
+5
-1
| { | ||
| "name": "@avcodes/skilled", | ||
| "version": "0.1.0", | ||
| "version": "0.2.0", | ||
| "description": "TUI dashboard for skill usage stats across AI coding tools", | ||
@@ -11,2 +11,6 @@ "license": "MIT", | ||
| "homepage": "https://github.com/av/skilled", | ||
| "publishConfig": { | ||
| "access": "public", | ||
| "provenance": true | ||
| }, | ||
| "bin": { | ||
@@ -13,0 +17,0 @@ "skilled": "bin/skilled" |
Sorry, the diff of this file is not supported yet
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Shell access
Supply chain riskThis module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
AI-detected potential code anomaly
Supply chain riskAI has identified unusual behaviors that may pose a security risk.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
No README
QualityPackage does not have a README. This may indicate a failed publish or a low quality package.
Found 1 instance in 1 package
Shell access
Supply chain riskThis module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
AI-detected potential code anomaly
Supply chain riskAI has identified unusual behaviors that may pose a security risk.
Found 1 instance in 1 package
7280
78.74%0
-100%116
Infinity%