One stand-out piece you're missing is tmux-ressurect. You mention that you start the day by opening terminals for each project... You'll never have to do that again.
Just a command away from it setting up the Tmux panes with the right sizes and processes running.