distributorlisted
Install: claude install-skill AVA-2568/MY_SKILL
# Distributor (分发器)
Two responsibilities, in priority order:
1. **Discoverability guarantee** (primary) — at session start, read `INDEX.yaml` and inject every registered skill's `name` + `description` into context. This is the anti-hallucination mechanism: the model cannot "forget" a skill it has been explicitly told exists.
2. **Routing** (secondary) — match each user task against skill descriptions; produce a match score (0-100) with risk penalty; forward to the top match or report a gap.
**Always-active** (`user-invocable: false`); loaded into every session as the entry point.
## Why this exists
Model hallucination ("installed but ignored") has three root causes:
| Cause | Mechanism here |
|---|---|
| Model never loaded the skill's description | Session-start injection forces all descriptions into context |
| Model loaded it but mis-routes | Keyword routes (exact) + fuzzy score (semantic) pick the best match; model does not choose freely |
| Model chose a skill but skipped execution | Review's Reflection Gate catches "mentioned but not called" and re-injects |
Distributor owns causes 1 and 2. Review owns cause 3 (see [meta/review/SKILL.md](../review/SKILL.md)).
## Responsibilities
### 1. Session-start discoverability injection
On session start (before any user task):
1. Read `INDEX.yaml` in this directory.
2. For every skill entry, resolve its `SKILL.md` and read the frontmatter `description`.
3. Inject a compact manifest into context:
```
[Available skill