kotlin-multiplatform-reviewer_skill

This skill reviews Kotlin Multiplatform projects to validate expect/actual, shared module structure, and iOS interop, ensuring clean separation and correct
  • TypeScript

1

GitHub Stars

1

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill physics91/claude-vibe --skill kotlin-multiplatform-reviewer

  • SKILL.md8.0 KB

Overview

This skill reviews Kotlin Multiplatform (KMP) projects to validate module layout, expect/actual patterns, platform separation, iOS interop, and dependency choices. It highlights critical issues like platform APIs leaking into commonMain, missing actual implementations, and unsafe Flow/suspend exposures to iOS. Use it to get actionable fixes and prioritized recommendations for KMP codebases.

How this skill works

The reviewer scans build files for the kotlin("multiplatform") plugin and common source set layout (commonMain, androidMain, iosMain) to detect module structure and target configuration. It validates expect/actual declarations, flags platform API usage in common code, evaluates iOS interoperability (suspend/Flow exposure, @ObjCName, sealed classes), and checks dependency placement and version consistency. The output lists issues by severity and provides concrete remediation steps.

When to use it

  • Performing a code review of a Kotlin Multiplatform project (shared + platform modules).
  • Assessing expect/actual usage, missing actual implementations, or excessive platform-specific code in commonMain.
  • Improving iOS interoperability (Swift/ObjC exposure, suspend/Flow wrappers, naming).
  • Verifying module separation, circular dependencies, and multiplatform dependency correctness.
  • Not for Android UI-focused reviews (use Android-specific reviewer) or server-only Kotlin projects.

Best practices

  • Keep commonMain limited to pure business logic; move SDK imports to androidMain/iosMain.
  • Prefer interfaces + DI instead of expect/actual for simple contracts to reduce boilerplate.
  • Wrap suspend and Flow APIs with completion/observer wrappers for easy iOS consumption.
  • Use multiplatform libraries (Ktor, kotlinx.serialization, SQLDelight, Napier) in commonMain when possible.
  • Maintain a commonTest source set and check for circular dependencies and version mismatches.

Example use cases

  • Audit a shared module that mixes Android APIs into commonMain and produce a migration plan.
  • Detect missing iosMain actual implementations for expect declarations and list required files.
  • Identify suspend/Flow methods exposed to iOS and generate recommended async wrappers.
  • Evaluate dependency placement and suggest multiplatform alternatives or version-catalog alignment.
  • Review module boundaries to split a bloated shared module into logical layers.

FAQ

Mark them as critical: add platform-specific actual implementations or replace expect/actual with an interface and provide platform bindings via DI.

How should I expose async behavior to iOS?

Provide completion-handler wrappers for suspend functions and Closeable observer wrappers for Flow to avoid exposing Kotlin coroutines/Flow directly.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
kotlin-multiplatform-reviewer skill by physics91/claude-vibe | VeilStrat