Skills
Domain proofs
Use constrained values for meaningful scalars. Use sealed hierarchies for finite alternatives. Handle closed cases with exhaustivewhen expressions.
Keep unchecked construction under the invariant’s owner.
Compiler success does not prove an external effect or concurrent behavior.
Keep compiler rejection, runtime evidence, and installed host results separate.
Hooks and Kast
The plugin selectskotlin-engineering-context, gradle-check-green, gradle-wrapper-integrity, and kotlin-horizontalization-check.
The host still owns hook trust and delivery.
The plugin also declares its existing Kast MCP connection.
Kast owns runtime installation and workspace discovery.
A fresh semantic query supplies stronger evidence than plugin installation alone.
The plugin manifest owns these declarations.
The Kotlin instructions own the shared Kotlin rules.