技術本部 Contract One Engineering Unit の髙野です。2024年に新卒で入社し、AI契約データベース「Contract One」を開発しています。
KotlinConf 2025で突如として発表されたKotlin LSPは、Jetbrains IDEが主流だったKotlin開発に大きな変革をもたらす可能性を秘めています。 そんなKotlin LSPについて、現状と今後の展望をまとめます。
Kotlin LSPとは?
Kotlin LSPは、Jetbrainsが開発している公式のLanguage Serverです。IntelliJなどの内部コードに依存しているため、大部分がクローズドソースとして開発が進められています。
2025年5月27日に初版(v0.252.17811)がリリースされ、 2025年8月6日に第2版(v0.253.10629)がリリースされました。まだPre-alphaフェーズで、今後は2週間ごとにリリースされる予定です。*1
配布形式
Visual Studio Code 拡張機能
Visual Studio Codeのマーケットプレイスには登録されておらず、Releasesページから.vsixファイルをダウンロードし、Visual Studio Codeにドラッグアンドドロップします。詳しいインストール方法はREADMEをご覧ください。
Standalone
Standalone版が配布されており、VimやEmacsなどのエディタでも利用可能です。ただし、記事公開時点で、Standalone版にはfilewatcher関連のバグがいくつかあります。
Termux Issue · Issue #75 · Kotlin/kotlin-lsp · GitHub
completion not working in MacOS · Issue #77 · Kotlin/kotlin-lsp · GitHub
macOSでlibfilewatcher_jni.dylib関連のエラーが出た際には、ReleasesページのZIPからインストールするのではなく、Homebrewからインストールすることで解消する可能性があるので試してみてください。Homebrewからのインストール方法はREADMEをご覧ください。
Kotlin LSPでできること
LSPの仕様に則り、さまざまな機能が提供されています。代表的なものを紹介します。
- Code Completion
- Hover
- Rename
- Go to definition (Kotlin, Kotlin builtins, Javaに対応)
- Diagnostics
- Code Actions (Quickfixes, Organize Imports, Go to references)
- Semantic Tokens (Semantic Highlighting)

AI連携と生産性向上への期待
Kotlin LSPは、AIベースのコーディング支援ツールとの相性も抜群です。Coding Agentがより自律的に動けるようになります。
GitHub Copilotとの連携
Visual Studio CodeのGitHub Copilotと組み合わせると、シームレスにLSPのエラーも検知してコードを修正してくれます。
例えば、Kotlin 2.1から段階的に変更されるcopyメソッドの可視性に関するワーニングに対し、GitHub CopilotがLSPのDiagnosisを見て自動で @ConsistentCopyVisibility を付与してワーニングを解消してくれました。
Serena MCPとの連携
Serenaでは LSPを利用した意味的なコード分析をサポートしています。Kotlinコードでは、コミュニティ版Kotlin LSPである fwcd/kotlin-language-server を使うように実装されていますが、動作の保証はされていません。
公式のKotlin LSPが登場したことにより、コミュニティ版から乗り換えるPull Requestが出ていたりします。社内では、Serenaが公式Kotlin LSPで動作したとの報告もあり、期待が高まります。
触ってみた感想
初版リリース時は実用レベルには達していなかったKotlin LSPですが、第2版のリリースでゾンビプロセスの発生が抑制されたほか、Diskキャッシュレイヤーが新設されてメモリ使用量が削減されました。 Contract OneのリポジトリでKotlin LSPを使用すると、初版では10GB程度メモリを消費していましたが、第2版では6GBまで削減されました。
しかし、まだ改善の余地も多くあり、普段使いできるレベルには達していません。
- 参照へのジャンプ: IntelliJのようなCmd + Clickでの参照表示機能はまだないため、いちいち右クリック -> Go to references しなければいけない。
- インポートの追加: Quickfixesによるimport文の自動追加機能がない。
- 保存時のフォーマット: Organize importsやFormattingの自動実行機能がない。
今後の展望
Kotlin LSPのロードマップが公開されており、さらなる機能拡充が予定されています。
- Inlay Hintsへの対応 *2
- Gradle + Kotlin Multiplatformのサポート
- Refactoring (移動、シグネチャの変更) への対応
- Code Formatting への対応
- Windowsサポート
- Visual Studio CodeのGUIでのアプリ実行およびデバッグの対応 *3
これらの機能が実現されれば、Kotlin LSPはさらに強力なツールとなり、JetBrains IDEに依存しない開発環境の選択肢が広がります。
まとめ
Kotlin LSPはゆっくりと着実に進化しており、Visual Studio CodeなどのエディタでのKotlin開発体験を大きく変える可能性を秘めていると感じています。特にAIとの連携による生産性向上は目覚ましく、今後の開発動向から目が離せません。
現状では足りない機能も多く、本格的なプロダクション利用には課題も残りますが、今後のアップデートによる機能拡充を期待しています。
Contract Oneでは、グロースフェーズで一緒に働いてくれる仲間を募集しています。カジュアル面談の応募をお待ちしています。