Turning Kitty into an agentic-first IDE
I’ve been running Kitty for the past 6 months and it’s been a great terminal emulator.
However I found myself running into a consistent issue/slowdown with it when it comes to managing and navigating codebases.
With the current zeitgiest with AI coding agents, it’s increasingly more common to parallelize your workflow across multiple repos and even multiple worktrees. I find myself doing this constantly.
Currently, I run Neovim with Kitty. Neovim is great, but it sucks at navigating worktrees and jumping into and out of different repos.
To paint two common scenarios, I will usually have:
- a frontend repo open in one window and a backend repo in another, with 2 agents performing work on the repos. Both repos have their own Neovim sessions
- A Conductor session (or few) performing parallel work on a repo in worktrees. No Neovim here.
The pain really comes in when it’s time to review with my local code reviewer hunk-review, which runs inside Neovim.
To solve this issue I ended up building my own “Kitten” (a plugin for Kitty, written in Python).
I call it kitty-cmd-k (available on GitHub for your usage!) and it effectively makes agentic coding much more streamlined.
It has two main features: jumping between repo worktrees and jumping between repos themselves
See for yourself: Video demo of kitty-cmd-k
The cool thing here is that kitty-cmd-k is just an interface for spawning sessions within Kitty and is fully customizable to how you want to setup your worktree and repo splits.
For me, I have a custom session which spawns Neovim, a Claude terminal, and a regular zsh session.
This is just my initial steps towards using Kitty + Neovim for better agentic coding.
I’m sure as time goes on, and I run into more snares and slowdowns, kitty-cmd-k will be expanded to handle more and more agentic-driven flows!