IMPORTANT
One Liner Summary: skill.md is not guaranteed to be used
DBJ Observations and Comments
- Observation: runtime infrastructure is not deployment infrastructure
- Agreed, so what?
- In the era of the general lack of experienced engineers that has to be said. Plainly.
- Agreed, so what?
- Observation: Skill is key problem is, it is keeping the whole agent scaffolding non-deterministic
- It’s not Skill, it’s the mechanism that is supposed to use the Skill.
- Fuzzy natural-language matching against a description, decided by the model at invocation time rather than part of a fixed dispatch.
- same mechanism is what makes deferred-tool loading (ToolSearch), subagent selection.
- Also the ordinary tool choice (Grep vs Read vs Agent) is then non-deterministic too.
- Skills are just the most visible facet of the LLM non-determinism because they’re named and listed explicitly.
- But skills are used non deterministically.
- The classical-software analogue is late binding / reflection-based plugin dispatch
- Skill mechanism is trading a fixed call graph for runtime flexibility, and paying for it in determinism lacking.
- Repeating. It is not “Skill” that is the problem, it is that harness resolves most capability binding (skills, tools, subagents, memory recall) via probabilistic matching instead of a deterministic dispatch table
- And that’s a structural feature of the whole LLM architecture, not a flaw isolated to the Skills.
- There is no deterministic table dispatch. It is as simple as that
- It’s not Skill, it’s the mechanism that is supposed to use the Skill.
IMPORTANT
The Message
Skills-as-currently-specified are not a component LLM users can put a hard SLA on. They’re a heuristic layer, not infrastructure. Any system using them needs a deterministic fallback/verification layer above the fuzzy dispatch.That is the core.
Consequence
Treat Skills/Tools/subagent selection as an untrusted heuristic router — never as the control plane.
Put a deterministic layer that verifies after the fact (did the right capability actually fire, did the output satisfy the contract).

LLM rolls the dice on which skill; a deterministic gate decides if the output survives.
