design-patterns

Map classic GoF design patterns to idiomatic Kotlin constructs.

1|Updated Mar 14, 2026
One-click install
npx skills add https://github.com/agnaldo4j/kanban-vision-api-kt --skill design-patterns-agnaldo4j
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: design-patterns
Source: https://github.com/agnaldo4j/kanban-vision-api-kt/tree/main/.claude/skills/design-patterns
Command: npx skills add https://github.com/agnaldo4j/kanban-vision-api-kt --skill design-patterns-agnaldo4j

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill bridges the gap between classic object-oriented design patterns and modern Kotlin development, preventing over-engineering by favoring language-native idioms over complex class hierarchies.

Core Features & Use Cases

  • Pattern Mapping: Identifies how classic GoF patterns (Strategy, Factory, Decorator, etc.) dissolve into Kotlin features like sealed classes, higher-order functions, and interface delegation.
  • Architectural Guidance: Provides a decision framework for structuring object collaborations while maintaining immutability and pure domain logic.
  • Use Case: Use this skill when reviewing a Pull Request to determine if a proposed class-based pattern can be simplified into a more idiomatic Kotlin construct, or when documenting architectural decisions in an ADR.

Quick Start

Use the design-patterns skill to evaluate if the current implementation of the SimulationEngine follows the Strategy pattern or if it can be refactored into a more idiomatic Kotlin approach.

Frequently Asked Questions about design-patterns

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

FAQPage Schema
How do I apply GoF design patterns in Kotlin without over-engineering class hierarchies?▼

Applying GoF design patterns in Kotlin without over-engineering involves mapping classic class-based structures to idiomatic Kotlin constructs like sealed interfaces and higher-order functions. This skill provides a framework to favor language-native solutions over complex hierarchies.

What is the best way to refactor a Strategy pattern implementation into idiomatic Kotlin?▼

The best way to refactor a Strategy pattern into idiomatic Kotlin is to replace verbose class hierarchies with higher-order functions and interface delegation. This skill analyzes your structure to determine if class-based patterns can dissolve into native language features.

When do I need sealed classes instead of traditional Factory or Decorator patterns in Kotlin?▼

You need sealed classes in Kotlin instead of traditional Factory or Decorator patterns when managing restricted domain hierarchies. This skill evaluates pattern necessity against language-native solutions to determine if sealed interfaces provide a safer, more idiomatic alternative.

Can I use this skill to evaluate architectural decisions and composition-over-inheritance during code reviews?▼

Yes, you can use this skill to evaluate architectural decisions and enforce composition-over-inheritance during code reviews. It provides a framework for structuring object collaborations while maintaining immutability and domain-driven design constraints.

Why does my Kotlin refactoring still require complex object collaborations instead of language-native idioms?▼

Your Kotlin refactoring might still require complex object collaborations if pattern necessity outweighs language-native idioms. This skill provides a decision framework to evaluate when classic GoF patterns are genuinely needed versus when features like interface delegation suffice.