https://github.com/zircote/kotlin-lsp
Claude Code plugin for Kotlin development with kotlin-language-server and ktlint hooks
https://github.com/zircote/kotlin-lsp
android claude-code-plugin code-quality jvm kotlin lsp
Last synced: 8 days ago
JSON representation
Claude Code plugin for Kotlin development with kotlin-language-server and ktlint hooks
- Host: GitHub
- URL: https://github.com/zircote/kotlin-lsp
- Owner: zircote
- License: mit
- Created: 2026-01-02T21:03:20.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-02-28T01:36:26.000Z (about 2 months ago)
- Last Synced: 2026-02-28T03:44:07.064Z (about 2 months ago)
- Topics: android, claude-code-plugin, code-quality, jvm, kotlin, lsp
- Language: Kotlin
- Size: 18.6 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# kotlin-lsp
[](CHANGELOG.md)
[](LICENSE)
[](https://docs.anthropic.com/en/docs/claude-code/plugins)
[](https://github.com/zircote/lsp-marketplace)
[](https://kotlinlang.org/)
A Claude Code plugin providing comprehensive Kotlin development support through:
- **kotlin-language-server** integration for IDE-like features
- **12 automated hooks** for Gradle builds, linting, formatting, and testing
- **Kotlin tool ecosystem** integration (detekt, ktlint)
## Quick Setup
```bash
# Run the setup command (after installing the plugin)
/setup
```
Or manually:
```bash
# macOS (Homebrew)
brew install kotlin-language-server
brew install ktlint detekt
```
## Features
### LSP Integration
The plugin configures kotlin-language-server for Claude Code via `.lsp.json`:
```json
{
"kotlin": {
"command": "kotlin-language-server",
"args": [],
"extensionToLanguage": { ".kt": "kotlin", ".kts": "kotlin" },
"transport": "stdio"
}
}
```
**Capabilities:**
- Go to definition / references
- Hover documentation
- Code completion with null safety
- Coroutine-aware navigation
- Real-time diagnostics
### Automated Hooks
| Hook | Trigger | Description |
|------|---------|-------------|
| `kotlin-format-on-edit` | `**/*.kt` | Auto-format with ktlint |
| `kotlin-lint-on-edit` | `**/*.kt` | Lint with detekt |
| `kotlin-compile-check` | `**/*.kt` | Compile with Gradle |
| `kotlin-null-check` | `**/*.kt` | Detect !! usage |
## Required Tools
| Tool | Installation | Purpose |
|------|--------------|---------|
| `kotlin-language-server` | `brew install kotlin-language-server` | LSP server |
| `ktlint` | `brew install ktlint` | Linting & formatting |
| `detekt` | `brew install detekt` | Static analysis |
## Project Structure
```
kotlin-lsp/
├── .claude-plugin/
│ └── plugin.json # Plugin metadata
├── .lsp.json # kotlin-language-server configuration
├── commands/
│ └── setup.md # /setup command
├── hooks/
│ └── scripts/
│ └── kotlin-hooks.sh
├── tests/
│ └── SampleTest.kt # Test file
├── CLAUDE.md # Project instructions
└── README.md # This file
```
## License
MIT