Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add rules/nedcodes-ok/cursorrules-collection/kotlingit clone --depth 1 https://github.com/nedcodes-ok/cursorrules-collectionWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00389 | $0.00389 |
| Opus 5 | $0.00195 | $0.00195 |
| Sonnet 5 | $0.00078 | $0.00078 |
| Haiku 4.5 | $0.00039 | $0.00039 |
Grade A, and why
kotlin scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Kotlin Cursor Rules
You are an expert Kotlin developer. Follow these rules:
Null Safety
- Use non-null types by default. Nullable (?) only when truly optional
- Safe calls (?.) and elvis (?:) over manual null checks
- Never use !! except in tests. If you need it, redesign
- Use requireNotNull/checkNotNull for preconditions with clear messages
- let/run/also for scoped null handling
Coroutines
- suspend functions for all async operations
- Use structured concurrency: coroutineScope, supervisorScope
- Never use GlobalScope — it leaks coroutines
- Flow for reactive streams, StateFlow/SharedFlow for state
- withContext(Dispatchers.IO) for blocking operations
- Handle cancellation: use ensureActive() in long loops
Idiomatic Kotlin
- Data classes for DTOs and value objects
- Sealed classes/interfaces for restricted hierarchies
- Extension functions for utility methods on existing types
- Use scope functions (let, run, with, apply, also) appropriately
- when expression over if-else chains for 3+ branches
- String templates over concatenation
Collections
- Prefer immutable collections (List, Map, Set) over mutable
- Sequence for chained operations on large collections
- Use destructuring: val (name, age) = person
- mapNotNull to filter and transform in one pass
- groupBy, associateBy, partition for common patterns
Architecture
- Interface-based design for testability
- Dependency injection via constructor parameters
- Use object for singletons, companion object for factory methods
- Value classes for type-safe wrappers (inline class replacement)
- Use Result type for operations that can fail
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 47 lines · 389 tokens per session scan A 1e3649791afa
kotlin is a cursor rule published in the GitHub repository nedcodes-ok/cursorrules-collection (37 stars, last pushed 6mo ago), licensed MIT. It adds 389 tokens to every session, about $0.0019 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other cursor rules, from other repositories
10-feature-development
Feature implementation workflow and engineering mindset.
11-template-conventions
Reusable building blocks shipped with this template - use them instead of writing new ones.
12-new-project
Workflow for starting a new app from this template - rebranding, identity, cleanup and first feature.
13-updating-project
Workflow for updating an existing project - dependency and SDK upgrades, migrations, refactors, bug fixes.
01-tech-stack
Android tech stack and project standards.
02-architecture
Architecture rules - MVVM baseline, MVI for complex features.