Built-in skill routing is model-driven via the index instruction (match on meaning and tone), and event-based pointers cover mechanically-observable failures. What is not covered: a user with 100+ imported skills, where the index is both a context cost and beyond a weak model's attention.
Explore cheap harness-side matching of the user message against skill descriptions (trigram/BM25, no embedding service) to surface the top 1-2 candidate skills per turn as hints, keeping the model as the decider. Explicitly not keyword tables (tried, removed: cannot enumerate English).
Built-in skill routing is model-driven via the index instruction (match on meaning and tone), and event-based pointers cover mechanically-observable failures. What is not covered: a user with 100+ imported skills, where the index is both a context cost and beyond a weak model's attention.
Explore cheap harness-side matching of the user message against skill descriptions (trigram/BM25, no embedding service) to surface the top 1-2 candidate skills per turn as hints, keeping the model as the decider. Explicitly not keyword tables (tried, removed: cannot enumerate English).