Agent Skill
2/7/2026

kotlin-autocomplete

This skill should be used when you need to know what members, methods, or extensions are available on Kotlin types. It queries autocomplete metadata generated by the kotlin-autocomplete-gradle-plugin.

K
kf7mxe
0GitHub Stars
1Views
npx skills add kf7mxe/Brisingr

SKILL.md

Namekotlin-autocomplete
DescriptionThis skill should be used when you need to know what members, methods, or extensions are available on Kotlin types. It queries autocomplete metadata generated by the kotlin-autocomplete-gradle-plugin.

name: Kotlin Autocomplete description: This skill should be used when you need to know what members, methods, or extensions are available on Kotlin types. It queries autocomplete metadata generated by the kotlin-autocomplete-gradle-plugin. version: 1.0.0

Kotlin Autocomplete Skill

You have access to accurate, project-specific Kotlin type information through autocomplete metadata generated by the kotlin-autocomplete-gradle-plugin.

When to Use This Skill

Use this skill when:

  • Writing Kotlin code and need to know what methods/properties are available on a type
  • The user asks "what can I do with X type?" or "what methods does X have?"
  • Verifying if a specific member exists on a type
  • Exploring Kotlin APIs (stdlib, coroutines, or project-specific)
  • You're unsure about method signatures or available extensions

How It Works

The autocomplete metadata is generated by running ./gradlew buildAutocomplete in a Kotlin project. This creates JSON files in build/autocomplete/ containing:

  • All public properties and methods with full signatures
  • Extension functions and properties
  • Both standard library and project-specific types

Querying Type Information

Exact Lookup (with FQN)

.claude/skills/scripts/kotlin-autocomplete-lookup.sh "fully.qualified.TypeName"

Fuzzy Lookup (without FQN)

NEW! You don't need to know the fully-qualified name!

# Just use the simple name - it will auto-search
.claude/skills/scripts/kotlin-autocomplete-lookup.sh "User"      # Finds com.example.User
.claude/skills/scripts/kotlin-autocomplete-lookup.sh "Flow"      # Finds kotlinx.coroutines.flow.Flow
.claude/skills/scripts/kotlin-autocomplete-lookup.sh "String"    # Finds kotlin.String

Search for All Matches

# Find all types containing "Flow"
.claude/skills/scripts/kotlin-autocomplete-search.sh "Flow"

Examples:

# Exact lookup
.claude/skills/scripts/kotlin-autocomplete-lookup.sh "kotlin.String"
.claude/skills/scripts/kotlin-autocomplete-lookup.sh "kotlinx.coroutines.flow.Flow"

# Fuzzy lookup (no FQN needed!)
.claude/skills/scripts/kotlin-autocomplete-lookup.sh "User"
.claude/skills/scripts/kotlin-autocomplete-lookup.sh "TestClass"

# Search all matches
.claude/skills/scripts/kotlin-autocomplete-search.sh "Flow"      # Shows all 27 Flow-related types
.claude/skills/scripts/kotlin-autocomplete-search.sh "State"     # All State types

Response Format

When presenting autocomplete information, format it clearly:

Type: kotlin.String

Members:
- val length: kotlin.Int
- fun substring(startIndex: kotlin.Int): kotlin.String
- fun lowercase(): kotlin.String

Extensions:
- fun toSnakeCase(): kotlin.String
- val firstChar: kotlin.Char?

Total: 3 members, 2 extensions

Prerequisites

The Kotlin project must have:

  1. Applied the plugin in build.gradle.kts:
    plugins {
        id("com.lightningkite.kotlin-autocomplete") version "0.0.1-1"
    }
    
  2. Generated metadata: ./gradlew buildAutocomplete
  3. Metadata exists in build/autocomplete/ directory

Important Notes

  • Fuzzy search now supported: Can use simple names like User instead of com.example.User
  • Auto-detection: If exact match fails, automatically searches by simple name
  • Multiple matches handled: Shows all options when multiple types match
  • Only public members included: Internal and private members are excluded
  • Extensions on Any/Any? filtered: Too generic to be useful
  • Fast lookups: Index-based queries are nearly instant

If Metadata Not Found

If autocomplete metadata doesn't exist:

  1. Suggest running ./gradlew buildAutocomplete
  2. Verify the plugin is applied
  3. Check if the type name is correct
  4. Fall back to general Kotlin knowledge, but note it may not be project-specific

Benefits

  • No hallucinations: All information comes from actual compiled code
  • Project-aware: Includes custom extensions and project types
  • Always up-to-date: Regenerate when code changes
  • Complete signatures: Full parameter types and return types

Example Workflow

User: "What can I do with a Flow?"

  1. Run: .claude/skills/scripts/kotlin-autocomplete-lookup.sh "kotlinx.coroutines.flow.Flow"
  2. Parse the output
  3. Present available operations in a clear format
  4. Suggest common patterns based on the available members

This ensures you provide accurate, project-specific Kotlin guidance!

Skills Info
Original Name:kotlin-autocompleteAuthor:kf7mxe