jackson-kotlin-serialization-specialist

Diagnose and fix Kotlin and Jackson serialization issues in Spring applications.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Diagnose and design JSON serialization and deserialization behavior for Kotlin plus Jackson in Spring applications. Use when DTOs fail to deserialize, default parameters or nullability behave unexpectedly, date-time or enum formats drift, polymorphic payloads are involved, PATCH semantics must distinguish null from absent, or ObjectMapper changes risk breaking existing API or message contracts.

Core Features & Use Cases

  • Diagnose module presence and alignment with jackson-module-kotlin, JavaTimeModule, and other relevant modules
  • Verify constructor semantics, default parameters, and nullable vs non-null fields
  • Validate wire-format handling across MVC, WebFlux, Kafka, and persistence boundaries, including polymorphic types and enum/date-time formatting

Quick Start

Provide the failing JSON payload, the relevant Kotlin DTOs, and any ObjectMapper customizations so I can diagnose and fix the serialization behavior.

Frequently Asked Questions about jackson-kotlin-serialization-specialist

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

FAQPage Schema
Why does Jackson fail to deserialize my Kotlin DTO with missing fields or default parameters?

Kotlin DTO deserialization fails when default parameters are ignored because the jackson-module-kotlin is missing or misconfigured on the ObjectMapper. This Skill diagnoses module presence and verifies constructor semantics to ensure default parameters and nullability are handled correctly.

How do I fix date-time or enum formatting drift in Spring WebFlux JSON responses?

To fix date-time or enum formatting drift in WebFlux, verify JavaTimeModule registration and ObjectMapper customizations. This Skill diagnoses wire-format handling across Spring MVC, WebFlux, and messaging boundaries to align JSON serialization behavior.

Does Jackson work with Kotlin PATCH semantics to distinguish null from absent fields?

Jackson can distinguish null from absent fields for PATCH semantics in Kotlin when configured correctly. This Skill diagnoses nullable vs non-null field handling and boundary serialization behavior to ensure polymorphic payloads and partial updates function as expected.

Do I need jackson-module-kotlin to serialize polymorphic payloads in Spring Boot?

You need jackson-module-kotlin and proper ObjectMapper configuration to reliably serialize and deserialize polymorphic payloads in Spring Boot. This Skill verifies module presence, naming strategies, and constructor semantics to prevent breaking API or message contracts.

What is the best way to diagnose ObjectMapper changes that break existing Kafka message contracts?

The best way to diagnose ObjectMapper changes breaking Kafka contracts is to validate wire-format handling across messaging boundaries. This Skill checks module alignment, field handling, and boundary serialization behavior to ensure existing message contracts remain intact.