My tool choices and workflows are changing more frequently than ever in the era of AI assisted development. It’s a fun time to experiment and trial new tools as more and more are created each week.
Whilst my tool of choice may be different depending on the task, Claude Code and Codex are the centrepiece. I recently tried emdash and enjoyed the idea of it being the place where development starts for any project. It’s automatic creation of worktrees, and ability to run tasks in parallel with ease was most interesting.
I wanted to replicate similar functionality in the command-line where my development usually starts today, so I made ag.sh. ag.sh is a no-dependency single bash file that wraps all the required functionality under one command-line tool. It’s easy to use, and aims to make picking things up from where you left off an easy default. From the README:
Command-line ADE tooling to run multiple Claude Code/AI agents in parallel - each in its own isolated git worktree.
Spawn, manage, and orchestrate AI-powered development across concurrent tasks without stepping on your own changes.
One command gives you everything: a git worktree, a branch, and a tmux window with the agent and shell running in the same window. Spawn as many as you need. Detach, come back tomorrow, and everything is still there.
- Isolated - Every task runs in its own branch and worktree. Agents can’t collide or overwrite each other.
- Persistent - tmux keeps agents alive when you close your terminal. Worktrees survive reboots.
ag resumerebuilds everything from disk. If a tmux session dies,agattempts to resume conversations forclaudeandcodex.- Stateless - Git worktrees are the state. No databases, no config files, no daemon. If tmux disappears, your work is still intact.
- Combined API - One CLI tool -
ag spawn,ag kill,ag open,ag rm,ag ls. Nothing more.
If you’d like to try developing in parallel but don’t want to go through the effort of setting up a bunch of tools, or want a tool to manage it all for you, give ag.sh a go. You can find me on Mastodon or Bluesky.