k0 free · open source
A kanban board for your Claude Code sessions.
One card per session, one column per project. k0 watches every Claude Code session running on your machine and lights up the moment one of them actually needs you — so you can run ten of them, or twenty, and still know who to talk to.
npx k0-board or run it from a clone, installing nothing
git clone https://github.com/alessio-ragni/k0-board.git
cd k0-board
node bin/k0-board.js start Free and MIT-licensed. No account, no telemetry, not a single network request — and all of it is on GitHub.
atlas-api 3 ↑ 4
pier-web 3 • 6
northwind-etl 2 ↑ 11
kite-mobile 2 ✓
sandbox 2 ✓
Where the time actually goes
You open a Claude Code session in one repository, then another in a different one, then a third because the first is still thinking. Running five, ten, twenty sessions at once is not hard. Claude Code does not mind.
What is hard is knowing which one is done. Which one asked you a question three minutes ago. Which one is just sitting there, idle, waiting on a yes you have not given it yet.
So you click through terminal windows, one by one, checking. That is the actual bottleneck. Not the AI. You.
Seven colors, one board
A card is the color of its status, and you never pick one yourself.
- Needs answer It is asking you something.
- Needs approval It finished a plan and wants your yes.
- Your turn The terminal has gone idle.
- Working Leave it alone.
- Planning Working, inside a plan.
- Backlog An idea. No session yet.
- Done You closed it. Off the board by default.
That list is also the sort order of the board, so the cards that need you rise straight to the top.
It works the other way round too. Answer the red one and it goes back to work — it turns blue and sinks down its column on its own. You never drag anything.
A menu-bar icon takes on the color of your most urgent card, and sits as a plain outline the moment nothing is waiting on you.
Your real terminal
Double-click a card and that session's terminal window comes to the front — even if it was minimised behind six others. That is the whole interaction, and it is how you drive twenty sessions from one screen.
k0 does not embed a terminal. No PTY, no hooks, no websocket, no second copy of the thing you already have open and already know how to use. It drives the terminal you already have: Terminal.app on macOS, tmux on Linux, Windows Terminal on Windows. It works out what each session is doing by reading Claude Code's own files, not by watching over its shoulder.
- Shift+Enter gives you a new line instead of sending the message.
- Cmd+V pastes a screenshot — it lands in the session as an image, in a plain terminal.
- Each card shows how much memory that session is using.
- Sessions are born in plan mode, so nothing runs before you have seen the plan.
And a few other things
- Four modes
- How awake the machine stays while sessions run — including working with the lid closed, which caffeinate cannot actually do.
- A git mark on everything
- Uncommitted files, unpushed commits, or a quiet tick when everything is safe. It never runs fetch.
- A document viewer
- Only documents — md, txt, PDF, Word — instead of every source file in the repository.
- Import
- Fills the board with the sessions you already had, including the ones you opened by hand.
Before you install
You will need Node 24 or newer, Claude Code, and git. On macOS you will also need the Xcode Command Line Tools, so k0 can build the menu-bar icon.
The installer tells you exactly what it is about to change, asks, and only then does it —
and k0-board uninstall undoes all of it. The board itself opens at
k0.localhost:4319.
I have only actually used k0 on macOS myself. Linux and Windows are built from the documentation and reviewed carefully, and the logic they share is tested on all three platforms in CI — but nobody has yet sat in front of a Linux desktop or a Windows machine and watched k0 open a terminal.
If that is you, I am looking for testers. Clone it, fix what is broken, send it back.