Problem
Thread creation only lists worktrees that belong to active bb environments.
It does not discover persistent Git worktrees that users manage themselves.
New managed worktrees also always create a generated bb branch. Selecting an
existing remote branch uses it as a base instead of checking it out directly.
This makes reopening an existing pull request awkward.
Requested behavior
- List every Git worktree for the selected project and machine.
- Show its branch, path, and machine.
- Treat discovered user worktrees as unmanaged workspaces.
- Keep user worktrees after their threads are archived.
- Add New branch and Continue branch modes inside the existing branch picker.
- Continue a local or remote branch directly in a temporary managed worktree.
- Configure remote tracking so a normal push updates the existing branch.
- Remove the temporary worktree after its threads are archived.
- Preserve the continued branch during cleanup.
- Reject branches that another worktree already checks out.
This should not change the default managed-worktree cleanup policy.
Reference implementation
A complete implementation is available here:
ryanbbrown@499533b
It includes the app, server, daemon, SDK, CLI, plugin, guide, and test surfaces.
AGENT GENERATED: by GPT-5.6
Problem
Thread creation only lists worktrees that belong to active bb environments.
It does not discover persistent Git worktrees that users manage themselves.
New managed worktrees also always create a generated bb branch. Selecting an
existing remote branch uses it as a base instead of checking it out directly.
This makes reopening an existing pull request awkward.
Requested behavior
This should not change the default managed-worktree cleanup policy.
Reference implementation
A complete implementation is available here:
ryanbbrown@499533b
It includes the app, server, daemon, SDK, CLI, plugin, guide, and test surfaces.