taskpods is a lightweight CLI that lets you spin up disposable AI pods inside your Git repo.
Each pod is an isolated Git worktree/branch — perfect for experimenting with Copilot, Cursor, or Claude Code without polluting main.
When done, you can merge, PR, or nuke the pod entirely.
- Instant sandbox:
taskpods start <name>→ creates.taskpods/<name>andpods/<name>frommain. - Clean exit:
taskpods done <name>→ commit, push, open a PR (via [ghCLI]), then remove the worktree. - Abort button:
taskpods abort <name>→ deletes an unpushed pod safely. - Status overview:
taskpods list→ see all active pods and paths. - Housekeeping:
taskpods prune→ removes pods already merged upstream.
pip install taskpodsFrom GitHub (latest dev):
pip install git+https://github.com/yanairon/taskpods.gitManual:
curl -O https://raw.githubusercontent.com/yanairon/taskpods/main/taskpods.py
chmod +x taskpods.py
sudo mv taskpods.py /usr/local/bin/taskpodsRequirements:
- Python 3.9+
- Git 2.5+ with worktree support
- A Git repo with a remote named
origin
taskpods start fix-typostaskpods done fix-typos -m "Fix docs typos" --removetaskpods abort fix-typostaskpods listtaskpods prune- Env var:
export TASKPODS_EDITOR="vim"
export TASKPODS_EDITOR="code"
export TASKPODS_EDITOR="cursor"- Config file
~/.taskpodsrc:
{
"editor": "vim",
"default_base": "main"
}- CLI flag:
taskpods start my-feature --editor vimSupported editors: Cursor, VS Code, Sublime, Atom, Vim/Neovim, Emacs, or any in your PATH.
If taskpods saves you time, please consider supporting:
Your support helps keep the project maintained and evolving for the community!
MIT – see LICENSE.
Git worktrees let you check out multiple branches in separate dirs without cloning. They’re fast, disk-light, and easy to clean up.
taskpods wraps the common git worktree operations with sensible defaults and quality-of-life features like PR creation and safe aborts.
git clone https://github.com/yanairon/taskpods.git
cd taskpods
pip install -e ".[dev]"
pre-commit installRun tests:
make test
make test-cov
make checkTools used: Black, Flake8, MyPy, Pre-commit.
Contributions, bug reports, and feature requests are welcome!
Open an issue or submit a PR.