ClaudeHack
0.000

Press t in /skills to sort by token count and demote the bloat to name-only

Context Management·15 hours ago·verified 15 hours ago·easy·~10 min setup·verified

Every installed skill spends context just being listed, before you invoke anything. Sort the list by cost, then set the ones you never use to name-only.

The problem

Skills accumulate. Once you have a hundred of them, the listing alone can eat thousands of tokens in every single session — and a quarter of them are ones you have never invoked.

The hack

Run `/skills` and press `t` to sort by token count. Press `Space` to cycle a skill's visibility, then `Enter` to save. Set low-priority skills to `name-only` so they list without a description.

Why it works

The skill listing is sent to the model on every session, so its cost is fixed overhead you pay whether or not you use any skill. Sorting by tokens shows you which descriptions are expensive, and `name-only` keeps a skill invocable while removing its description from the listing.

Setup

1. Run `/skills`. 2. Press `t` to sort by token count and look at the top of the list. 3. Press `Space` on anything you rarely use to cycle its visibility, then `Enter` to save. This writes `skillOverrides` to `.claude/settings.local.json`. 4. Run `/context` and check the Skills row to see the listing size the model actually receives. 5. Run `/doctor` for an estimate of the listing's context cost and its biggest contributors. 6. Trim long `description` and `when_to_use` text at the source, putting the key use case first.

Code

// .claude/settings.local.json
{
  "skillOverrides": {
    "legacy-context": "name-only",
    "deploy": "off"
  }
}

Prerequisites

Claude Code v2.1.129 or later for skillOverrides.

Additional details

The four visibility values are `on`, `name-only`, `user-invocable-only`, and `off`. `name-only` is the useful middle ground: the skill stays available but stops spending its description on every session. There is a budget involved, which is worth understanding before you start cutting. Each listing entry's combined text is capped at 1,536 characters regardless of budget, and when the whole listing exceeds its budget Claude Code truncates it and writes a warning to the debug log. That means an oversized listing does not just cost tokens — it can silently drop skills you do want. You can raise the ceiling with `skillListingBudgetFraction`, but demoting what you do not use is the cheaper fix. Redundancy is the other thing to look for: two PR-review skills, three frontend skills. Keep the best one and turn the rest off.

Source

youtube·View original →·by Eric Tech

Does this still work?

0 said it works · 0 said it's broken

Related

Discussion

No comments yet. Be the first to say whether this worked for you.