Capability
data class Capability(val id: String, val schema: String, val shots: List<Pair<String, String>> = emptyList())(source)
The capability catalog — the single source of truth for what the on-device model is allowed to do. Every entry is a typed template: the model only picks an action id and fills the declared slots; it never authors a raw Android Intent. Construction, validation and safety all live in Kotlin (CommandRouter), so a hallucinated or malformed reply can at worst fail to build — never fire something arbitrary.
This list generates:
the "allowed actions" block in the prompts, and
the few-shot examples, so adding a capability is a one-line change instead of editing four places.