# docs/adr/0005-task-worktrees.md · screen/aggregate-mail

[View on GitCafe](https://git.cafe/screen/aggregate-mail/blob/e0f9854038946c4dbc2e8e289c620df071b57246/docs/adr/0005-task-worktrees.md)

Repository: [screen/aggregate-mail](https://git.cafe/screen/aggregate-mail)

Visibility: public

Requested revision: e0f9854038946c4dbc2e8e289c620df071b57246

Requested commit: e0f9854038946c4dbc2e8e289c620df071b57246

Commit: e0f9854038946c4dbc2e8e289c620df071b57246

Blob: 2a37b84d2d28133ac947e20c9556388ff997529d

Size: 714 bytes

[Immutable source](https://git.cafe/screen/aggregate-mail/blob/e0f9854038946c4dbc2e8e289c620df071b57246/docs/adr/0005-task-worktrees.md?format=markdown)

```
# 0005: Use a new worktree for each task

Status: accepted by the owner on 2026-10-09.

## Decision

Create a new Git worktree and feature branch for every new Aggregate Mail task. Switch the T3 Code thread binding to that checkout before task work. Continue the same task in its existing worktree after an interruption.

## Reason

The owner requires task work to stay off `main`. The T3 Code binding and terminal directory must identify the same checkout so tools and agents do not act on different files.

## Consequences

Preserve the main checkout and other worktrees. Deliver owned changes through the normal review and PR gates. A worktree switch grants no additional task, release or deployment authority.

```
