autowt: a better git worktree experience
What are worktrees?
Worktrees are a built-in feature of git, which are essentially free clones of a local git repo. History is shared and synced across all worktrees for a given repo. Creating a new worktree is cheap, and you can list all your worktrees with a single command. This makes them a great fit for doing work “in parallel,” or not worrying about having uncommitted changes before working on another branch.
How autowt simplifies common workflows
While worktrees are powerful, the built-in tooling is minimalistic. Consider what it takes to set up a fresh worktree in a typical workflow:
- Make a decision about where to put the worktree
git worktree add <worktree_path> -b <branch>- Open a new terminal tab
cd <worktree path>uv syncornpm installor whatever your dependency setup iscp <repo_dir>/.env .to copy secrets
Congrats, you're done! Type type type, open a PR, and merge it. Now you need to clean up:
git worktree rm .- Close the tab
On the other hand, with autowt, it looks like this:
autowt <branch>
And deleting branches that have been merged or are associated with closed PRs looks like this:
autowt cleanup
A lot nicer, right?
Now suppose your team uses an issue tracker like Linear which can suggest branch names based on issue IDs. You could configure autowt to have a custom command to automatically open worktrees for tickets instead of passing a branch name:
autowt linear ABC-1234 # opens yourname/abc-1234-title-of-the-ticket or whatever
What autowt can do for you
What autowt can do for you:
Getting started
You'll need Python 3.10+ and a version of git released less than ten years ago (2.5+).
First, install autowt:
pip install autowt
Then, make a new worktree for a new or existing branch in your current repo:
autowt my-new-feature
Watch as autowt creates a new worktree and opens it in a new terminal tab or window.
Contributing
PRs, GitHub issues, discussion topics, bring 'em on!
License
This project is licensed under the MIT License.
Metadata
Release files for autowt 0.5.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| autowt-0.5.2.tar.gz | 185.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| autowt-0.5.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 252.7 kB
Release files / autowt-0.5.2.tar.gz
| Download URL | autowt-0.5.2.tar.gz |
|---|---|
| Size | 185.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d6f4cec205e47b1d21f895fe73ae078b7d97746fce5fdb66f4b1d585889d5fa7
|
|
BLAKE2b-256 checksum How to use checksums |
3f675f4e6306f20bc5f52a0787c7f4a744b1d32b5dfc7d0988479238cf2d462b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 4, 2026.
Transparency logRelease files / autowt-0.5.2-py3-none-any.whl
| Download URL | autowt-0.5.2-py3-none-any.whl |
|---|---|
| Size | 67.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9231c3f95d2c7a93c35aee6583fd5f4d55fd45345b7e4a62589b1c236a42089c
|
|
BLAKE2b-256 checksum How to use checksums |
e81bf2f3b785d323b4c8b18ac32aeb09e3aef11f7dd9905d6841ff0215396d5e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 4, 2026.
Transparency log