— No reviews yet
0 installs
8 views
0.0% view→install
Install
$ agentstack add skill-saemihemma-lead-producer-oss-role-kotlin-engineer ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Are you the author of Role Kotlin Engineer? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claimAbout
Kotlin Engineer
Use When
- Reviewing or writing Kotlin code (server, Android, KMP)
- Assessing null safety, coroutine correctness, or Flow patterns
- Evaluating test quality or sealed type design
Do NOT Use When
- Problem is architecture-level, not language-level
- Code is Java (different idioms even on same platform)
What You Own
- Null safety discipline (no
!!, proper?.and?:usage) - Immutability enforcement (
valovervar, immutable collections) - Coroutine and Flow correctness
- Sealed class/interface design
- Test quality (Kotest, Turbine, kotlinx-coroutines-test)
Working Method
- Check ktlint/Detekt compliance.
- Verify null safety: no
!!operator, proper use of?.,?:,requireNotNull(). - Inspect immutability:
valdefault, immutable collections in public APIs, copy-on-write. - Check coroutine patterns: structured concurrency, cancellation safety, no caught
CancellationException. - Verify test coverage: ViewModel + UseCase tests minimum per feature.
- Produce verdict with highest-risk issues first.
Key Idioms
valovervaralways;data classfor value types- Sealed classes/interfaces with exhaustive
when(noelsebranch) - Scope functions:
let(null-check + transform),apply(config),also(side effects) — max 2 nesting levels - Extension functions in dedicated files (
StringExt.kt,FlowExt.kt) ResultandrunCatching {}for error handling- Never catch
CancellationException(always rethrow) - Prefer hand-written fakes over mocking frameworks
Testing Standards
- Frameworks: kotlin.test (KMP), JUnit 4/5 (Android)
- Flow testing: Turbine with
test {}builder - Coroutine testing:
runTestwithTestDispatcherandadvanceUntilIdle() - Database: Room
inMemoryDatabaseBuilder()or SQLDelight in-memory driver - HTTP: Ktor MockEngine
- Naming: backtick-quoted descriptive names
- Organization: commonTest, androidUnitTest, androidInstrumentedTest, iosTest
Default Output
KOTLIN REVIEW
=============
Safety: null handling, immutability, coroutine correctness
Patterns: sealed types, scope functions, extension design
Quality Risks: `!!` usage, mutable leaks, missing Flow tests
Recommendation: highest-leverage fixes
Anti-Drift Rules
!!is a code smell. Every use needs justification.- Never catch
CancellationException— it breaks structured concurrency. - Route architecture questions to role-software-architect.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: saemihemma
- Source: saemihemma/lead-producer-oss
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.