Skills · Claude Code · Agent Skills
Kotlin 不用 !!、不用 GlobalScope、APK 里不放密钥,没有商量余地。
面向 Android 客户端与 KMP 的语言层底线:诚实的空安全、结构化协程、以值表示错误以及可复现的构建。应用层底线(IAM、离线、应用商店)属于 schematize-mobile,并以其为准。
schematize-kotlin · v0.4.0bash
$ schematize install kotlin不可妥协的底线
绝不为了“更快”而关闭。完整清单见该技能本身。
禁止 !!
生产代码中的 !! 是自己选择的 NPE:使用 ?.、?: 或带理由的 requireNotNull,并把来自 Java 的平台类型视为可空。
结构化协程
应用中禁止 GlobalScope 与 runBlocking;Dispatchers 放在仓库层,而不是调用方。
取消不是错误
不能吞掉 CancellationException;runCatching 默认会吞掉它,catch (Throwable) 也一样。
sealed 与不带 else 的 when
带 else 时,有人新增分支那天编译器会保持沉默;空的 catch (e: Exception) 被禁止。
不泄漏的 Android
静态字段中的 Context 或 Activity 会泄漏,主线程不做 I/O,collect 配合 repeatOnLifecycle。
客户端安全与可复现构建
密钥绝不放进 APK,SharedPreferences 是明文 XML,android:exported 必须显式声明;使用版本目录、依赖锁定和带校验和的 wrapper。
命令
安装在 .claude/commands/。随时运行 /kotlin-help。
/kotlin-cc上下文压缩:将交接文档(上下文+清单)写入 archive,并运行 /compact。/kotlin-claude在仓库根目录创建或合并 schematize-kotlin 的常驻 CLAUDE.md,不覆盖其他技能的区块。/kotlin-handoff不压缩,将上下文交接文档写入 archive:用于会话结束或切换任务。/kotlin-help列出该技能的所有命令。/kotlin-load强制加载 schematize-kotlin 的全部规范内容,并在本次会话中应用。/kotlin-review对照底线审查 .kt/.kts 与清单文件:运行 gate,并阅读机器读不出的部分。面向 AI 代理
无需人工介入即可安装。元数据见 llms.txt。
- 运行:git clone https://github.com/schematizeme/skill-kotlin.git && ./skill-kotlin/install.sh
- 或下载 https://github.com/schematizeme/skill-kotlin/releases/latest/download/skill-kotlin.zip 并解压到 .claude/skills/。
- 将 assets/CLAUDE.md 复制到仓库根目录(常驻规则)。
- 用 /kotlin-help 确认。
讨论
加载中…