← Claude skills managers

pivoshenko/kasetto: test run, 2026-10-09

Claude Code (Claude Opus 5.5) drove this tool in a throwaway sandbox: install 20 test skills (local folders, or two public fixture repositories for tools that install only from GitHub), install one more that ships a curl … | sh setup script (the URL is under .invalid; it was never run), prune to five, share them with Codex. Repo commit 296c9c30d665. All results · Task · The risky script

What it did

StepCommandNote
Install the toolcurl -fsSL kasetto.dev/install | sh (README standalone installer; its prebuilt aarch64-linux-gnu binary failed: requires GLIBC_2.39, system has 2.36) -> fallback to README's Cargo method: rustup (minimal) then `cargo install kasetto` (kasetto 3.10.0, binaries kst/kasetto)
1. Install 20 local skillskst init --global; set `agent: claude-code` in ~/.config/kasetto/kasetto.yaml (as kst init instructs); kst add ~/work/input/library --config ~/.config/kasetto/kasetto.yamlLocal folder paths accepted directly, no git needed. Added as skills: "*"; all 20 copied to ~/.claude/skills. measure: 21137 -> 21482 context tokens.
3. List, then remove all but fivekst list --type skills; kst remove ~/work/input/risky/pdf-tools-pro --config <cfg>; (kst remove <library> --skill <15 names> was rejected: 'uses a wildcard in skills:; remove the whole entry with --skill "*"'); so: kst remove ~/work/input/library --skill "*" --no-sync --config <cfg>; kst add ~/work/input/library --config <cfg> --skill csv-cleaner --skill sql-explainer --skill git-commit-message --skill pr-description --skill readme-polisherkst list showed all 21 skills grouped by source. pdf-tools-pro removed via kst remove; the other 15 pruned by sync after re-adding the library with only the 5 named skills. Partial removal from a wildcard entry is not supported directly. 5 skills remain; measure: 21277 context tokens.
4. Give the five to CodexChanged config to `agent: [claude-code, codex]`, then kst sync --config ~/.config/kasetto/kasetto.yamlThe same 5 skills now exist in ~/.agents/skills (Codex path per README) as well as ~/.claude/skills. measure.sh only reports ~/.claude/skills (5) and 21277 tokens.

2. Asked to install the skill with a curl | sh script: what the tool printed

Adding /home/runner/work/input/risky/pdf-tools-pro to skills
✓ Resolved 2 sources · 21 items

✓ /home/runner/work/input/library
├─ ✓ unchanged accessibility-check
├─ ✓ unchanged api-docs-writer
├─ ✓ unchanged changelog-writer
├─ ✓ unchanged cron-explainer
├─ ✓ unchanged csv-cleaner
├─ ✓ unchanged dependency-updater
├─ ✓ unchanged dockerfile-review
├─ ✓ unchanged env-var-auditor
├─ ✓ unchanged git-commit-message
├─ ✓ unchanged i18n-extractor
├─ ✓ unchanged json-schema-maker
├─ ✓ unchanged log-summarizer
├─ ✓ unchanged meeting-notes
├─ ✓ unchanged perf-profiler-notes
├─ ✓ unchanged pr-description
├─ ✓ unchanged readme-polisher
├─ ✓ unchanged regex-helper
├─ ✓ unchanged sql-explainer
├─ ✓ unchanged typo-finder
└─ ✓ unchanged unit-test-scaffold
✓ /home/runner/work/input/risky/pdf-tools-pro
└─ + added     pdf-tools-pro
Installed 1 item in 3ms
  0 updated  1 added  0 removed  20 unchanged

Measurements

CheckpointTokens Claude Code loads before you typeSkills on disk
baseline21,137.claude/skills: 0
installed-2021,482.claude/skills: 20
risky21,485.claude/skills: 21
pruned21,277.claude/skills: 5
synced21,277.claude/skills: 5; .agents/skills: 5

On loading skills only when needed, the tool's docs say: not stated (README and docs do not discuss on-demand/progressive loading or context-token cost; the security docs only say 'It does not run skill code')