Content
86%Weight 40%Scale 1-5Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
A strong, well-structured body: executable examples, opinionated rules that go beyond common knowledge (runCatching caveats, CancellationException rethrow, BigDecimal for money), and clean progressive disclosure matched to a real bundle of five reference files. The gaps are minor: some standard-convention restatement could be trimmed, and an explicit lint-verification step would complete the feedback loop.
Suggestions
Trim or compress the Naming Conventions table and the basic safe-call/elvis example, which restate conventions Claude already applies by default, keeping only project-specific deviations (e.g., backing-property and boolean-prefix rules).
Add one explicit validation step to the body (e.g., after writing or refactoring, run the Detekt/ktlint setup from references/static-analysis.md and fix violations before finishing) to close the verify-fix loop.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The body is dense and rule-driven with little prose padding, but a few sections restate knowledge Claude already has: the naming-conventions table (PascalCase classes, camelCase functions, UPPER_SNAKE constants) and the basic safe-call/elvis snippets ('val length = name?.length ?: 0'). These could be trimmed for token efficiency, matching the 'minor instances of over-explanation' anchor rather than the fully lean anchor. | 4 / 5 |
Actionability | Nearly every section carries copy-paste-ready Kotlin (sealed Result hierarchy, value class with init validation, exception hierarchy, coroutineScope example, project layout tree) plus prescriptive rules with concrete thresholds ('Detekt LongMethod fires at 60 lines'). The common cases are covered; only trivial fragments like '{ ... }' are placeholders, fitting the 'fully executable' anchor. | 5 / 5 |
Workflow Clarity | This is a reference/style skill with no multi-step process to sequence, and its rules are unambiguous, but the natural validation loop — running the configured linters to verify adherence — is only implied via thresholds and deferred to references/static-analysis.md rather than stated as a step in the body. That minor checkpoint gap fits anchor 4; it is not anchor 5 since no explicit verify/recover sequence exists, and not anchor 3 since nothing destructive or batch-oriented lacks validation. | 4 / 5 |
Progressive Disclosure | Verified against the actual bundle: all five files listed under 'Reference Files' exist in references/ and each gets a one-line scope summary; the body defers detail at the right granularity ('For Flow, Channels, exception handling... see references/coroutines.md'). References are one level deep with only lateral peer pointers (patterns.md to coroutines.md), matching the 'clear overview with well-signaled one-level-deep references' anchor. | 5 / 5 |
Total | 18 / 20 Passed |