Skip to content
Back to skills

Kotlin Professional Usage

ASecurity

`analysis-agent`/`task-agent`/`review-agent`: use for Kotlin coroutine, Flow, type, interop, DSL, or Compose-state decisions; skip incidental Kotlin text.

  • 7 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 8, 2026
documentationjavakotlintestingbackendsecurityperformance

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned September 22, 2026

npx -y skills add machenjie/rd-skills --skill kotlin-professional-usage --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Kotlin Professional Usage?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Kotlin Professional Usage
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/machenjie-kotlin-professional-usage/badge)](https://www.skillsdirectory.com/skills/machenjie-kotlin-professional-usage)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: kotlin-professional-usage
description: "`analysis-agent`/`task-agent`/`review-agent`: use for Kotlin coroutine, Flow, type, interop, DSL, or Compose-state decisions; skip incidental Kotlin text."
---

# kotlin-professional-usage

## Registry Trigger

**Use when**

- Kotlin source changes coroutine, stream/state, type, Java interop, delegate, DSL, or Compose-state behavior.

**Do not use when**

- Kotlin is incidental, or only Android manifest, permission, signing, or packaging metadata changes.

## Skill Role

Own Kotlin language/library semantics; leave JVM runtime and Android policy to their owners.

## High-Value Rules

- When coroutine, cancellation, Flow, shared/state stream, or Compose-state decisions are active, load `coroutine-flow-state-contracts`.
- When nullability, Java interop, sealed/reified/value/data/variance, delegate, or DSL decisions are active, load `type-interop-and-dsl-contracts`.
- Bind the decision to current compiler/backend, libraries, caller, lifecycle owner, and target evidence.
- Stop on an unknown controlling version or boundary.

## Anti-Patterns

- Local compilation substituted for lifecycle, stream, type, or Java-caller evidence.

## Stop Conditions

- Route JVM runtime, Android policy, and generic concurrency, compatibility, security, persistence, performance, and testing to their owners.

## Output Contract

- Kotlin decision with owner and caller paths coroutine stream state type Java ABI DSL Compose lifecycle invalid cancellation outcomes evidence limits and residual risk

## Targeted References

| Path | Type | Load when | Do not load when | Required by | Required output |
|---|---|---|---|---|---|
| [coroutine flow state contracts](references/coroutine-flow-state-contracts.md) | targeted | Coroutine scope cancellation Flow StateFlow SharedFlow or Compose state changes | No asynchronous stream state holder or Compose collection behavior changes | task-agent, review-agent, analysis-agent | selected-approach, proof-limit, residual-risk |
| [type interop and dsl contracts](references/type-interop-and-dsl-contracts.md) | targeted | Nullability Java interop sealed/reified/value/data classes variance delegated-property semantics/lifecycle or DSL scope changes | Kotlin type Java-callable delegated-property and DSL boundaries remain unchanged | task-agent, review-agent, analysis-agent | decision-record, residual-risk |

Files in this skill

  • SKILL.md3.9 KB
  • references/coroutine-flow-state-contracts.md3.9 KB
  • references/type-interop-and-dsl-contracts.md3.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in documentation →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.