CtrlK
BlogDocsLog inGet started
Tessl Logo

kotlin-tooling-immutable-collections-0-5-x-migration

Migrate Kotlin (and Java) code from kotlinx.collections.immutable 0.3.x / 0.4.x to the latest 0.5.x. The 0.5.x line renames every copy-returning method on PersistentList / PersistentMap / PersistentSet / PersistentCollection to a participial form per KEEP-0459 (add→adding, removeAt→removingAt, set→replacingAt, put→putting, clear→cleared, …) and deprecates the old names (WARNING, with ReplaceWith). Driven by the compiler: bump the version, recompile, and apply the rename each deprecation warning names. Use when the user mentions kotlinx.collections.immutable 0.5.x, PersistentList migration, "Use adding() instead", KEEP-0459, or sees deprecation warnings from kotlinx.collections.immutable.

74

Quality

91%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

88%Weight 40%Scale 1-5

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

A thorough, executable migration guide with a well-sequenced workflow, concrete commands, and explicit validation feedback loops. It is dense rather than padded, with only minor room to tighten prose or split out reference detail.

Suggestions

Tighten the long 'Unresolved reference' case-analysis paragraph into a compact two-bullet list to reduce prose without losing the receiver-typed decision rule.

Consider moving the full rename-reference table into a references/ file so the body stays a lean overview, given the skill already exceeds 150 lines.

DimensionReasoningScore

Conciseness

Information-dense and free of concepts Claude already knows, but several long parenthetical explanatory passages (e.g. the 'Unresolved reference' case analysis) could be tightened without losing the migration-specific nuance.

4 / 5

Actionability

Provides copy-paste-ready commands — the implementer-detection grep regex, its PowerShell Select-String equivalent, and a concrete Kotlin override/delegation snippet — plus specific build-tool commands covering the common cases.

5 / 5

Workflow Clarity

A six-step sequence (find build command → baseline compile → bump → recompile/fix → custom implementers → follow-up) with explicit validation checkpoints ('confirm it's green', 'Repeat compile → fix until no…warnings remain', 're-confirm the build is clean') and error-recovery feedback loops.

5 / 5

Progressive Disclosure

Well-organized into clearly headed sections with one-level-deep external links (KEEP-0459, 0.5.0-MIGRATION.md, Maven Central); no bundle files exist, and the inline rename reference and prose are appropriately placed, though at 172 lines some detail could live in a reference file.

4 / 5

Total

18

/

20

Passed

Description

95%Weight 40%Scale 1-5

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

A precise, trigger-rich description that clearly states both the capability and the invocation conditions for a specific library migration. It avoids fluff and uses natural phrasing users would actually produce.

DimensionReasoningScore

Specificity

Names concrete actions — 'renames every copy-returning method', 'bump the version, recompile, and apply the rename each deprecation warning names' — covering the migration comprehensively with only minor gaps in enumerating every action.

4 / 5

Completeness

Explicitly answers both what (rename participial forms, deprecate old names at WARNING with ReplaceWith, compiler-driven) and when ('Use when the user mentions…') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Includes natural trigger terms a user would actually say or paste: 'kotlinx.collections.immutable 0.5.x', 'PersistentList migration', the verbatim warning 'Use adding() instead', 'KEEP-0459', and 'deprecation warnings from kotlinx.collections.immutable'.

5 / 5

Distinctiveness Conflict Risk

Targets a narrow, well-defined niche (kotlinx.collections.immutable 0.3.x/0.4.x → 0.5.x migration) with distinct, library-specific triggers and minimal overlap risk with other skills.

5 / 5

Total

19

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
Kotlin/kotlin-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.