On a typical day I often work across mutliple different projects at the same time, and fo reach of those projects I may have one or more instances of Claude Code running in terminals.

I manage these projects and switching between them quite effectively with my tmux setup. I could have 8 different tmux sessions running, maybe a total of 20 different terminal windows open, and I can quickly find and switch to whatever I need with a couple of key presses.

However, there were a couple of fundamental problems I kept running into when using LLM agents on my projects.

The more instances of Claude Code I was using the worse it would get.

My typical workflow became switching between various sessions and projects as I was juggling responses and assigning work to various Claude Code instances.

The problem I had was in managing where I needed to direct my attention, which manifested in a few ways:

  • I would lose track of which of my projects currently had agents running that I still needed to follow up on
  • I wouldnโ€™t know when an agent was finished so I would often just rapidly flick through different sessions checking on on agents that often werenโ€™t even running or werenโ€™t finished yet
  • Sometimes I would even entirely forget work I had going on in another project when my attention became absorbed with another project
  • If I decided to take a break and do something else on my computer, I wouldnโ€™t know when an agent was finished so I would often come back to it way too early or way too late

Not only is this inefficient it is also stressful and unnecessary cognitive load.

The workflow I landed on, which is demonstrated in the video, is essentially a tool that does this:

  • Display in the tmux status line any sessions with agents complete or waiting for permission (along with the total number of Claude Code instances running)
  • Display an OS notification when an agent is finished or is blocked waiting for permission (this is for cases where I donโ€™t have my terminal open)
  • Launch a popup window in response to a hotkey that allows switching between all active Claude Code instances (along with status indicators and a preview)

This workflow effectively solved all of these issues for me. I now have a structured and organised way to keep track of the various Claude Code instances I have running, Iโ€™m not wasting time jumping between sessions unnecessarily, and if I am having some down time I can relax without having to worry about whether an agent is finished yet or not (or worry about forgetting that Iโ€™m supposed to be working).

You can use the handoff document Iโ€™ve shared below to implement a version of this on your own machine. What I have done will translate most naturally to a tmux and terminal-based environment, but you can also work with your coding agent to adapt this to other environments and setups too.