Token导航 LogoToken导航TokenDH.com
开发敏感数据github未标认证来源可访问许可证需确认审计通过

coding-kotlin编码科特林

Agent Skill

coding-kotlin 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

419

周安装

18

GitHub Stars

4

下载量

147
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:coding-kotlin(编码科特林)
来源仓库:https://github.com/alphaonedev/openclaw-graph
仓库路径:skills/coding-kotlin
安装命令:
npx skills add https://github.com/alphaonedev/openclaw-graph --skill coding-kotlin
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/alphaonedev/openclaw-graph --skill coding-kotlin

简介

coding-kotlin 提供协程异步编程、密封类类型安全与 Gradle 多平台项目支持。

  • 适用于 Android 应用开发与跨平台共享逻辑,强化空安全与不可变数据结构。
  • 集成 KSP 符号处理器与 Compose UI 模板,加速现代移动端界面构建。
  • 使用前请确认 Gradle 版本支持 Kotlin Multiplatform,并配置相应 target 平台 SDK。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

coding-kotlin

Purpose

This skill equips the AI to generate, debug, and optimize Kotlin code, focusing on coroutines for async operations, data classes for immutable data handling, sealed classes for type-safe hierarchies, extension functions for reusable code, Gradle for project builds, and KMM for multiplatform development.

When to Use

Use this skill for Android app development requiring async tasks (e.g., network calls), data modeling in APIs, or cross-platform projects with shared logic. Apply it when performance matters, like using coroutines to avoid blocking threads, or when setting up Gradle for dependency management in KMM setups.

Key Capabilities

  • Coroutines: Handle asynchronous code with structured concurrency; use kotlinx.coroutines for non-blocking I/O.
  • Data classes: Automatically generate equals, hashCode, and toString; define with data class User(val name: String, val id: Int).
  • Sealed classes: Restrict class inheritance for exhaustive when expressions; e.g., sealed class Result {data class Success(val data: String): Result()}.
  • Extension functions: Add methods to existing classes without inheritance; e.g., fun String.reverse() = this.reversed().
  • Gradle: Manage builds with scripts like build.gradle.kts for dependencies and tasks.
  • KMM: Share code between Android/iOS; configure with shared modules in Gradle.

Usage Patterns

To accomplish tasks, always import necessary packages first (e.g., import kotlinx.coroutines.*). For async operations, wrap code in a coroutine scope like runBlocking {} and use launch for fire-and-forget or async for awaited results. When modeling data, use data classes for POJOs and sealed classes for state machines. For Gradle tasks, run commands from the project root and pass flags like --info for debugging. In KMM projects, structure code into shared and platform-specific modules, then link via Gradle configurations. Always check for nullability with ? to prevent crashes.

Common Commands/API

  • Gradle commands: Run gradle build --stacktrace to compile and debug; use gradle assembleDebug for Android builds; in KMM, add dependencies in build.gradle.kts like implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4").
  • Coroutines API: Use launch {delay(1000L); println("Task completed")} for delayed execution; or val deferred = async {someFunction()}; deferred.await() for concurrent tasks.
  • Data classes: Define and use as data class Person(val name: String); val p = Person("John"); println(p.copy(name = "Jane")) to create copies with modifications.
  • Sealed classes: Handle with when (result) {is Result.Success -> process(data); is Result.Error -> handleError()} for exhaustive checking.
  • Extension functions: Implement as fun Int.isEven() = this % 2 == 0; val num = 4; println(num.isEven()) to extend built-ins.
  • KMM setup: In build.gradle.kts, add kotlin {android {compilations.all {kotlinOptions.jvmTarget = "1.8"}} ios {binaries {framework()}}} for multiplatform configuration.
  • API endpoints: For external services in Kotlin, use libraries like Ktor; e.g., HttpClient().get("https://api.example.com/data") with auth via env var like $KOTLIN_API_KEY in headers.

Integration Notes

Integrate this skill by ensuring the environment has Kotlin SDK installed (e.g., via SDKMAN: sdk install kotlin). For Android, add Kotlin plugins in build.gradle: plugins {id("org.jetbrains.kotlin.android")} and set minSdk to 21 for coroutines. In KMM projects, link shared modules with expect fun platformFunction() in common code and actual fun platformFunction() =... in platform-specific files. Use environment variables for secrets, like setting $GRADLE_API_KEY for repository access in gradle.properties: apiKey=$GRADLE_API_KEY. Test integrations with ./gradlew test and handle platform differences by checking OS via System.getProperty("os.name").

Error Handling

Always use structured error handling in coroutines: wrap code in try {launch {riskyOperation()}} catch (e: CancellationException) {log("Coroutine cancelled")} finally {cleanup()}. For data classes, validate inputs at construction: e.g., data class User(val name: String) {init {require(name.isNotBlank()) {"Name cannot be blank"}}}. In sealed classes, ensure all subclasses are handled in when expressions to avoid UnreachableCode errors. For Gradle, parse output with --stacktrace and check for common issues like dependency conflicts by running gradle dependencies. In KMM, handle platform-specific errors with expect class PlatformException() {actual constructor()} and catch in common code.

Concrete Usage Examples

  1. Example: Asynchronous network call with coroutines Import coroutines and launch a scope: import kotlinx.coroutines.*; suspend fun fetchData() = "Data"; fun main() = runBlocking {val result = async {fetchData()}.await(); println(result)}. This fetches data without blocking the main thread.
  2. Example: Modeling API response with sealed classes and data classes Define structures: sealed class ApiResult {data class Success(val data: String): ApiResult(); data class Error(val message: String): ApiResult()}; fun process(result: ApiResult) = when (result) {is Success -> println(result.data); is Error -> println(result.message)}. Use this to handle responses safely in KMM shared code.

Graph Relationships

  • Related to: coding-android (shares tags like "android" and focuses on Kotlin integration).
  • Connected via: coding cluster (links to other coding skills like coding-java for JVM interoperability).
  • Overlaps with: tools-kmm (via KMM multiplatform features) and build-gradle (for shared Gradle usage).

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.19%
按下载量换算55

Claude

29.45%
按下载量换算43

Cursor

17.55%
按下载量换算26

Gemini CLI

10.5%
按下载量换算15

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills