Kotlinās LSP Problem is Real
I wrote about The Kotlin Paradox last month. Back then, it was mostly theoretical: āIn an AI-driven future, Javaās robust LSP might beat Kotlinās nicer syntax.ā It felt like speculation about a problem I foresaw.
Itās not theoretical anymore. Iām living it.
The Daily Grind
Hereās my typical day: I have AI agents writing code across multiple worktrees. Theyāre doing the implementation while I architect and review. When I need to check something, I just want to click through the code.
Thatās it. Go-to-definition. Find references. Basic navigation.
With IntelliJ, this works perfectly. Itās a nice IDE, but it is too heavy for my task. Opening IntelliJ for each git worktree (is that even working now? There was a bug with git worktrees) is killing my productivity.
I donāt want a full IDE. I want to open Helix, or Zed, or VS Code, navigate quickly, and close it.
The Remote Work Problem
It gets worse. A lot of my work happens in devcontainers or on remote boxes.
Open a full remote JetBrains session? Tried that, and 5GB of memory is gone, just to watch a few files. The process is also painful. I just want to hx . and browse to the file and check something. With all other options, I have to click through menus, to open a folder somewhere on the remote filesystem. With OpenCode and Claude Code, my work happens more and more in the terminal. Needing to leave the CLI, breaks my flow.
With Go or Python, Iād just open Helix or VS Code Remote if I want a little more tools. The LSP connects, and Iām navigating code within seconds. gd to jump to definition, gr to find references. It just works.
With Kotlin? I get a text file with pretty colors.
The Kotlin LSP situation is terrible. Jetbrains is working on one, but itās pre-alpha and barely works.
The Agent Perspective
The AI agents (OpenCode, Claude Code) face the same problem. When Iām working with Go or Python codebases, I see them using LSP features. Iām not sure which features are used, but I do see error messages coming back. This allows for faster iteration, because the agent already sees the error, before needing to compile and wasting time waiting on the results.
The Breaking Point
I feel sad and frustrated. Kotlin is still a nice language, and a few months ago I was in camp: āUse an IDE to develop, not a text editor!ā. But I donāt write code by hand anymore. My agents do. And when I need to review, navigate, or verify, I need tooling that works outside the JetBrains ecosystem.
If I were starting a new project today, knowing what I know now about agentic workflows and the importance of universal tooling?
Kotlin wouldnāt be my choice.
What Would Fix This
JetBrains, if youāre reading: the community needs a real Kotlin LSP. Not āpre-alpha.ā Not āexperimental.ā A proper language server that works in all editors and AI agents that support it.
Until that changes, every new project I start is going to be a harder sell for Kotlin. And I suspect Iām not alone.
Related Articles
The Kotlin Paradox
Kotlin may be a nicer language, but Java might be the best choice when paired with AI. Here is why.
2026: The Year the IDE Died
Steve Yegge says if you use an IDE in 2026, you're a bad engineer. From CNC machines to Vibe Coding, here is why we are facing a 'Swiss Watch Moment' in software engineering.
When AI Assistants Reach for CLI Tools
Why does Copilot sometimes choose perl one-liners over proper edit tools? A look at AI assistant habits and how to guide them back on track.