Terminal as IDE
For the past decade I’ve mainly used the terminal for my development workflow. With the rise of AI tools and agentic development, the terminal has been the target of tools such as Claude and Opencode. Which made me reevaluate my development workflow
Git Worktrees
Git worktree’s have always been somewhat of an interesting feature, which I’ve been meaning to try for a while, but always seemed to much of a hassle to use in a daily workflow.
Now with some development tasks beeing easily kickstarted by an AI agent, the need for checking out multiple branches simultaneously is pretty much required.
Worktree’s create a directory for each branch/feature your working on, so its possible to keep your main project’s directory checked out to main, have an agent working in one branch and have another branch checked out for review.
Worktrees come with issues though, since a worktree is close to a new clone of the repository, some files are probably missing such as node_modules or .env files. Which is why i’ve created a simple tool to automate basic setup tasks and control tmux sessions (https://github.com/rhermens/wt)
Tmux
Tmux has been a daily driver for me for a while, but the way it matches the multitasking workflow made me even more enthusiastic about tmux.

wt ../foo allows me to create a new worktree named “foo”. Then automatically create a new tmux session named after the new worktree.
Then it starts some processes such as npm i, links the .env file of the main repository and boots up neovim and opencode