CtrlK
BlogDocsLog inGet started
Tessl Logo

android-kotlin-core

Use Kotlin idioms safely in Android apps, including nullability, data classes, sealed types, extension functions, and collection pipelines.

56

Quality

47%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/android-kotlin-core/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

60%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description does a good job listing specific Kotlin language features, making it clear what capabilities the skill covers. However, it lacks an explicit 'Use when...' clause, which is critical for Claude to know when to select this skill. It could also benefit from more natural trigger terms and clearer differentiation from general Android or Kotlin development skills.

Suggestions

Add an explicit 'Use when...' clause, e.g., 'Use when the user asks about Kotlin best practices, null safety, idiomatic Kotlin patterns, or writing clean Kotlin code for Android.'

Include common user-facing trigger term variations such as 'null safety', 'sealed class', 'idiomatic Kotlin', 'Kotlin best practices', and 'map/filter/reduce'.

Clarify how this skill differs from a general Android development or general Kotlin skill to reduce conflict risk.

DimensionReasoningScore

Specificity

Lists multiple specific concrete capabilities: nullability, data classes, sealed types, extension functions, and collection pipelines. These are well-defined Kotlin language features.

3 / 3

Completeness

Clearly answers 'what' (use Kotlin idioms safely including specific features), but lacks an explicit 'Use when...' clause. The 'when' is only implied by the domain context of Android apps. Per rubric guidelines, missing 'Use when' caps completeness at 2.

2 / 3

Trigger Term Quality

Includes relevant keywords like 'Kotlin', 'Android', 'nullability', 'data classes', 'sealed types', 'extension functions', and 'collection pipelines'. However, it misses common user variations like 'null safety', 'nullable types', 'sealed class', 'map/filter', 'Kotlin best practices', or 'idiomatic Kotlin'.

2 / 3

Distinctiveness Conflict Risk

The focus on Kotlin idioms in Android is fairly specific, but could overlap with general Android development skills or general Kotlin skills. The description doesn't clearly carve out its niche versus a broader Android or Kotlin coding skill.

2 / 3

Total

9

/

12

Passed

Implementation

35%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This skill reads more like a process/governance document than a technical skill teaching Kotlin idioms. Despite being titled 'Android Kotlin Core' and describing outcomes around nullability, data classes, sealed types, extension functions, and collection pipelines, it contains zero code examples demonstrating any of these patterns. The workflow and guardrails are generic enough to apply to almost any refactoring task, missing the opportunity to provide the concrete, Kotlin-specific guidance that would make this skill valuable.

Suggestions

Add concrete, executable Kotlin code examples for each core pattern mentioned in the description: nullability handling, data classes, sealed classes/interfaces for UI state, extension functions, and collection pipelines (e.g., before/after transformations).

Replace the vague example scenarios with actual code snippets showing the transformation, e.g., a verbose Java-style null check converted to Kotlin's safe-call chain, or a when-expression over a sealed interface for UI state.

Add specific validation guidance in the workflow, such as checking for platform type warnings, ensuring exhaustive when-expressions, or verifying data class equals/hashCode behavior.

Consider creating a companion reference file (e.g., PATTERNS.md) with a catalog of idiomatic Kotlin patterns for Android, and link to it from the main skill for progressive disclosure.

DimensionReasoningScore

Conciseness

The content is moderately efficient but includes several sections with vague, generic guidance that doesn't add Kotlin-specific value Claude wouldn't already know (e.g., 'Apply the smallest change that improves correctness, readability, and long-term maintainability' is generic advice). The guardrails and anti-patterns sections are reasonable but could be tighter.

2 / 3

Actionability

The skill lacks any concrete, executable Kotlin code examples. For a skill about Kotlin idioms (nullability, data classes, sealed types, extension functions, collection pipelines), there are zero code snippets showing actual patterns. The 'examples' section only provides gradle commands and vague scenario descriptions rather than demonstrating the actual Kotlin transformations.

1 / 3

Workflow Clarity

The workflow has numbered steps and the done checklist provides some validation, but the steps are abstract and lack specific validation checkpoints. Step 4 mentions validating against 'showcase app path and repo benchmarks' without specifying what that means concretely. The examples section includes test commands which is good, but there's no explicit error recovery loop.

2 / 3

Progressive Disclosure

The content has reasonable section structure and mentions handoff skills, but all content is inline in a single file with no references to deeper documentation for the specific Kotlin patterns (sealed classes, data classes, extension functions, etc.). The official references are good external links, but there are no internal companion files for detailed pattern catalogs or migration guides.

2 / 3

Total

7

/

12

Passed

Validation

90%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

Total

10

/

11

Passed

Repository
krutikJain/android-agent-skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.