java-kotlin-migration-assistant

Migrate Java code to Kotlin in Spring projects while preserving behavior.

14|1|Updated Mar 6, 2026
One-click install
npx skills add https://github.com/kbrgnj/kotlin-backend-agent-skills --skill java-kotlin-migration-assistant-kbrgnj
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: java-kotlin-migration-assistant
Source: https://github.com/kbrgnj/kotlin-backend-agent-skills/tree/main/.agents/skills/java-kotlin-migration-assistant
Command: npx skills add https://github.com/kbrgnj/kotlin-backend-agent-skills --skill java-kotlin-migration-assistant-kbrgnj

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Java-to-Kotlin migration in Spring projects is error-prone, risky for proxies and persistence, and can cause behavioral drift if not carefully managed. This Skill provides a structured approach to convert Java code to Kotlin incrementally while preserving public contracts, JPA behavior, and binary compatibility.

Core Features & Use Cases

  • Incremental migration plan for mixed Java/Kotlin codebases in Spring applications.
  • Guidance on nullability, Lombok replacements, and annotation retention to avoid runtime issues.
  • Use Case: Transform a legacy service layer from Java to Kotlin without breaking tests or external integrations.

Quick Start

Translate a representative Java module to Kotlin in a Spring project while preserving behavior.

Frequently Asked Questions about java-kotlin-migration-assistant

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I migrate Java to Kotlin in a Spring app without breaking JPA behavior?

Migrating Java to Kotlin in Spring requires preserving public contracts and carefully managing nullability to prevent JPA behavioral drift. An incremental approach ensures proxy-based patterns remain functional without causing runtime issues.

What is the best way to replace Lombok when converting Java code to Kotlin?

Replacing Lombok during a Java to Kotlin conversion involves using Kotlin's native language features. Proper handling of annotation retention and generated API surfaces is necessary to avoid breaking changes and binary incompatibilities in your Spring project.

Can I incrementally migrate a mixed Java and Kotlin codebase for Spring services?

Yes, you can incrementally migrate mixed Java and Kotlin codebases across Spring services, domain models, and configuration classes. This structured approach transforms legacy layers without breaking existing tests or external integrations.

Why does converting Java models to Kotlin cause binary incompatibilities with Spring proxies?

Converting Java models to Kotlin causes binary incompatibilities because Kotlin handles nullability and generated APIs differently than Lombok. Enforcing careful handling of annotations and proxy-based patterns prevents these breaking changes in Spring.

What are the limitations of migrating Java domain models to Kotlin in Spring?

Migrating Java domain models to Kotlin risks behavioral drift if nullability and JPA annotations are not carefully managed. You must avoid changing public contracts and ensure generated API surfaces remain compatible to prevent runtime failures.