Version 0.6.0 makes installed skills visible before they run
Skill Cabinet 0.6.0 scans the places where Claude Code, Codex, Cursor, Hermes, and other agent tools keep skills, then presents them as a local catalog. Each card can show the skill body, YAML frontmatter, related files, filesystem path, origin, invocation style, and whether the entry is a real folder, a file, a symlink, or a broken reference. That is useful when an agent's available-skill list has grown beyond what you can remember.
The catalog does more than count folders. It identifies identical physical copies, keeps virtual references separate, totals the disk occupied by duplicates, and marks origins inferred from a parent plugin or Git remote. Static risk checks inspect the skill body for patterns worth reading. Treat those findings as triage. A badge can point you toward an instruction, while it cannot determine what every bundled script or external command will do at runtime.
The static audit stops after 12 companion files
The audit reads at most 12 companion files, walks no deeper than four levels, and caps the scanned tree at 512,000 bytes. Its rules look for direct shell downloads, broad recursive deletes, sensitive credential paths, decoded execution, instruction overrides, global Git configuration, and network download commands. Those limits keep a local scan bounded. They also mean a large or unusually nested skill can contain relevant code beyond the audit's view.
Invocation labels use another set of static clues. A local hooks.json, sessionStart, or alwaysApply marks a hook; frontmatter can limit a skill to user invocation or switch it off; otherwise the model-callable state is the default. The code also checks descriptions for standing-order phrases and tries to notice nearby negation. This is useful evidence about when a skill may load, though unusual frontmatter or agent-specific behavior can still fall outside those rules.
What happened when we ran it
Our run on commit 3859838 installed 263 npm packages in 9 seconds and occupied 73 MB on disk. The production build passed in 4 seconds. Node's test runner then completed all 64 cases in 2 seconds with 0 failures. Npm audit reported 0 known vulnerabilities: 0 critical, 0 high, 0 moderate, and 0 low. Those results make the local trial unusually cheap for a tool that touches real files.
We measured a 0.5 MB checkout with 39 files and about 5,000 lines of source in our 3-CPU, 8 GB sandbox. The repository has one CI workflow and test files under server/, though there is no top-level tests directory and no Dockerfile. Node 20 or newer is the stated runtime. Our test method covered the supplied commands; it did not delete or quarantine the user's actual skills.
Version 0.6.0 makes quarantine safer than Delete
Version 0.6.0 can quarantine a selected skill under ~/.skill-cabinet/quarantine and record its original path for restoration. A symlink moves as a link, leaving its target alone. Delete is different: it unlinks a symlink or removes the selected file or folder, and the README says there is no undo. The interface names the filesystem effect before acting, which is exactly the right tone for a catalog with destructive authority.
The HTTP service binds to 127.0.0.1, normally on port 3781. Current main also checks the browser Origin on delete, quarantine, and restore requests, accepting loopback hosts and rejecting other origins with 403. That guard addresses the browser boundary while the path checks constrain what the server may move or remove. Neither turns Delete into a recoverable action. Use quarantine first unless the unwanted copy is already backed up elsewhere.
Five open items expose a real discovery gap
GitHub listed 5 issues and pull requests still open when fetched: one issue and four proposed changes. Issue 19 says the scanner misses nested or plugin-owned locations used by Hermes, Grok, Gemini and Antigravity, OpenCode, and mimo Code. Other open work adds custom roots and ignores documentation files that can appear as false skill cards. The app can only help with entries it finds, so an incomplete drawer map is a functional limit rather than a minor polish item.
Main was last pushed on September 2, 2026, when v0.6.0 was released. The discovery issue and related pull requests arrived between September 3 and September 10, showing user activity after the release even though those changes had not landed. That combination is healthier than judging the project from the tag date alone. It also means current users should compare the catalog against their actual agent folders before trusting the house census.
Version 0.6.0 is built for one local operator
The 0.6.0 product document names a single operator at a desk, and the architecture matches that choice. There is no login, team role, hosted account, or remote fleet view. The browser and API stay on the same machine. For one developer trying to understand a messy home directory, that is pleasantly small. A platform team tracking skills across laptops will need a central manager, a Git-backed workflow, or inventory data collected elsewhere.
Skill Cabinet is strongest as a reading and cleanup tool. vercel-labs/skills is better for installing and updating packages from the command line; Skills Manager adds a central library and multi-device backup; OpenSkills bridges skills into agents through AGENTS.md. If your collection already exists and you mainly need to inspect what can run, quarantine questionable entries, and remove known duplicates, Skill Cabinet earns its 73 MB. Just verify the drawers before you trust the total.

