Skip to main content

Customizable git worktree manager

Project description

autowt: a better git worktree experience

autowt is a git worktree manager designed for developers who juggle multiple tasks. It automates the creation, management, and cleanup of git worktrees, giving each branch its own dedicated directory and terminal session. This eliminates context-switching friction, letting you focus on your code.

While powerful for any developer, autowt is a game-changer for those working with command-line AI agents like Claude Code, Gemini CLI, or Codex. It provides the perfect environment for running multiple agents in parallel without interference.

Core features

Automated Worktree Management

autowt handles the entire lifecycle of your worktrees. It automatically creates them in a consistent directory structure, runs your setup scripts, and provides powerful cleanup tools to keep your workspace tidy.

Seamless Terminal Integration

Switching branches is as simple as typing autowt <branch-name>. autowt intelligently manages your terminal sessions, automatically switching to the correct tab or window, or creating a new one if needed.

AI Agent Ready

Isolate your AI agents in their own worktrees. Run multiple agents on different tasks simultaneously without them tripping over each other's work. autowt provides the perfect sandbox for parallel development and experimentation.

Effortless Cleanup

Keep your repository clean with autowt cleanup. It identifies and removes branches that are merged or have no remote counterpart, ensuring your workspace remains clutter-free.

Getting started

You'll need Python 3.10+ and a version of git released in the last decade (2.5+).

First, install autowt:

pip install autowt

Then, from within a git repository, create a new worktree for a new or existing branch:

autowt my-new-feature

Watch as autowt creates a new worktree and opens it in a new terminal tab or window, ready for you to start coding.

A typical workflow

  1. Start a new feature: Run autowt new-feature. A new terminal tab opens in an isolated directory for that branch.
  2. Get an urgent request: Don't stash! Just run autowt hotfix/urgent-bug. A different terminal tab opens for the hotfix.
  3. Finish the hotfix: Commit, push, and close the hotfix tab.
  4. Return to your feature: Run autowt new-feature again, and autowt will switch you right back to the existing terminal tab for that feature.
  5. Clean up: Once the hotfix branch is merged, run autowt cleanup to remove the old worktree and local branch.

Dive deeper

For detailed guides on commands, configuration, and advanced workflows, check out the full documentation.

Contributing

Contributions are welcome! Please feel free to open an issue or submit a pull request.

License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autowt-0.3.2.tar.gz (140.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

autowt-0.3.2-py3-none-any.whl (71.7 kB view details)

Uploaded Python 3

File details

Details for the file autowt-0.3.2.tar.gz.

File metadata

  • Download URL: autowt-0.3.2.tar.gz
  • Upload date:
  • Size: 140.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for autowt-0.3.2.tar.gz
Algorithm Hash digest
SHA256 1fabcb0275061ef7e82a482f9e97c805891cde0d20c5af9df1c6e76a18a2cd9e
MD5 941f13db010d61828ae01efc4ca02b0d
BLAKE2b-256 593569282040f1cad0a3fe3415a0048db9696d6a3bf435979c2055fde38101fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for autowt-0.3.2.tar.gz:

Publisher: pypi.yml on irskep/autowt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autowt-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: autowt-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 71.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for autowt-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 07037bcd7373dffe235e6ca682272ff24b35b06bde5311bcea5a8de89e878fe4
MD5 5d578dd3e06003ec6f61049b4a4b7e98
BLAKE2b-256 81e73159fa4e10febf5fd7a70c4a8eb62dfdd987a5c4dabecd23c070f9bf8535

See more details on using hashes here.

Provenance

The following attestation bundles were made for autowt-0.3.2-py3-none-any.whl:

Publisher: pypi.yml on irskep/autowt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page