Skip to main content

Agent Worktree Manager

Working on several branches or with coding agents means keeping track of both source checkouts and their Python environments. awm pairs Git worktrees with isolated environments and provides a terminal UI to browse and clean them up across projects.

Start with an environment that already works. AWM reproduces its installed dependencies and points selected editable packages at new worktrees. Other editable packages keep their original source links. Install AWM once, separately from your project environments.

Supports Python 3.11–3.14 on macOS and Linux; Git is required. Standard venv/pip is the default; uv and conda backends are optional. AWM and your project environments can use different Python versions.

Installation

From PyPI, once the first release is published, choose either:

uv tool install agent-worktree-manager
# Or install into your chosen Python environment:
python -m pip install agent-worktree-manager

To install from a source checkout now, run at this repository's root:

uv tool install --editable .
# Or:
python -m pip install -e .

To activate a sandbox in your current terminal from the TUI, enable shell integration:

eval "$(awm shell-init zsh)"  # use bash for Bash

Add the same line to ~/.zshrc (or ~/.bashrc) to enable it in new terminals. Then press s on a sandbox to close AWM and activate its environment.

Register your first project

From your project's Git checkout, register its existing Python environment:

awm init --name my-project --base /absolute/path/to/base-env --repo app=.
awm doctor
awm create my-task --repo app
awm run my-task -- python --version
awm

--base is the environment directory, not its Python executable. Use --backend uv for a uv base or --backend conda for a conda base. Repeat --repo ALIAS=PATH to include more repositories. Registration writes awm.toml and machine-specific settings in git-ignored .awm/, and adds the project to your global overview. From elsewhere, select it with awm --project my-project.

Use with coding agents

The bundled awm skill guides agents through creating, resuming, inspecting, and cleaning up worktrees with their environments. Install it for either agent:

# Codex
awm skill --install "$HOME/.agents/skills/awm"
# Claude Code
awm skill --install "$HOME/.claude/skills/awm"

In Codex, select it through /skills or mention $awm. In Claude Code, use /awm. For example: “create a sandbox for fixing the login tests and work there.” See the agent guide for custom locations and updating a skill.

Contributing

Please follow Conventional Commits for commit messages, for example feat(tui): add sandbox shell shortcut or fix(env): preserve editable paths. These messages drive automated versioning and release notes.

License

BSD 3-Clause — Copyright (c) 2026, Jan Wyzula.

Documentation

Usage · Configuration · AI agent skill

Download files

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

Source Distribution

agent_worktree_manager-0.2.0.tar.gz (64.4 kB view details)

Uploaded Source

Built Distribution

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

agent_worktree_manager-0.2.0-py3-none-any.whl (48.0 kB view details)

Uploaded Python 3

File details

Details for the file agent_worktree_manager-0.2.0.tar.gz.

File metadata

  • Download URL: agent_worktree_manager-0.2.0.tar.gz
  • Upload date:
  • Size: 64.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for agent_worktree_manager-0.2.0.tar.gz
Algorithm Hash digest
SHA256 bdf253e0a1e108005dcf1a9bcb9ade55421ffd0d39fdd092f633acf365a80407
MD5 2de8600eb8b49bd6329371ab86273ad9
BLAKE2b-256 6fe585e31ea0882f81353f981239c412a75a26b3621e6808147a6e2c955b1012

See more details on using hashes here.

Provenance

The following attestation bundles were made for agent_worktree_manager-0.2.0.tar.gz:

Publisher: publish.yml on wyzula-jan/agent_worktree_manager

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

File details

Details for the file agent_worktree_manager-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for agent_worktree_manager-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 12eae8b8213b1dfb6577f6e65a8b538478b4e161de8f1d2cc60d87385480bf58
MD5 ed5b94d516b249f2ae3bac2cc73e808c
BLAKE2b-256 6dd5e185d649aac1efe9457cef7cdb5c997d840eae6dce96d79632e3e62d845d

See more details on using hashes here.

Provenance

The following attestation bundles were made for agent_worktree_manager-0.2.0-py3-none-any.whl:

Publisher: publish.yml on wyzula-jan/agent_worktree_manager

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

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page