Desoul Review Tiếng Việt

← Guides

Why your skill doesn't get called

Many of the skills I had installed never fired. When I looked at the silent ones, most were not a routing failure. Some were a marketing pack linked into a project it had nothing to do with. Others were domain packs that already had one working entry skill, so a perfect router would fire none of them either. What I almost built to fix it, a router that sorts every request and loads the right skills, would have been the wrong fix. My problem was the inventory, not the routing. Here is what else I found, and what helped.

Sometimes "not called" is correct

A skill's description decides when it loads. cloudflare/security-audit-skill describes itself as being for security questions, reviews, audits and pen tests. Given a plain feature request ("add a retry with backoff to this function, tests first"), it matches none of that and stays unloaded, which is what you want. The deep-research skill in jordan-gibbs/hyperresearch would not trigger on the same coding task either. Check the description before you call it a bug.

Reasons a skill won't load by itself

Fixes I tested that didn't work

Asking a model to propose new trigger phrases. I let Claude suggest phrases from my prompts that had matched no skill, then replayed each one against the real prompts and kept only those that would have caught at least two. I ran it three times. Not one proposed phrase passed.

Pasting the whole skill into the prompt. For a month (10 September to 9 October 2026) a hook pasted one skill's full text whenever its phrase matched. It almost never fired, and nearly every time it did, it was wrong: background task notices, a pipeline prompt that happened to contain the word, a passing mention. The one real case was me asking why the skill hadn't been applied, typed after the miss had already happened.

What fixed it

That one miss came from scheduled job sessions that had never been handed the skill. Giving those sessions the skill file explicitly fixed it. So:

  1. Count calls per skill before you build anything.
  2. Uninstall or move packs that don't fit the project they sit in.
  3. Read the description and check it covers the requests you expect.
  4. For headless or scheduled runs, name the skill or hand over its file in the prompt.

One paper reaches the same conclusion about routing from the other direction. The Router Within found that loading skill descriptions into context is the weak baseline for routing, and beat it by reading the model's hidden states. That needs access to model internals, which an API like Claude's doesn't give you.

Tools in this test