github / github/app

Improve automatic cleanup of session worktrees and branches

Open
#2,787 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
No language data
Stars
2.1k
Forks
153
PR merge metrics
No merged PRs in 30d

Description

I use the GitHub Copilot app across many repositories and parallel sessions. Session isolation through worktrees and branches is valuable, but completed work accumulates quickly.

After several weeks, I had 96 stale local branches and 12 worktrees across 41 repositories. Most branches belonged to merged PRs—especially squash merges—but Git could not reliably identify them as merged. Remote branch deletion also left local branches behind. Only one worktree was truly orphaned, but distinguishing it required substantial manual investigation.

Suggested improvements:

- Optional automatic session archival and worktree cleanup after PR merge

- PR-aware detection of squash-merged branches

- Stale-session reminders based on last activity

- A cleanup dashboard showing session, worktree, local branch, remote branch, PR status, and uncommitted changes together

- A safe “archive session and clean associated Git state” action

- Recovery information before destructive cleanup

Cleanup should remain conservative and never remove unique commits or uncommitted files automatically. The main need is better lifecycle visibility and an explicit, integrated cleanup workflow. Parallel agent sessions make this accumulation inevitable rather than exceptional.

```
{
"type": "eval",
"skill": "github-copilot-app",
"mode": "feature_request",
"severity": "suggestion",
"category": "ux",
"user_input": "Improve automatic lifecycle cleanup for session worktrees and branches.",
"timestamp": "2026-08-11T18:57:18Z",
"session_id": "9a2c908c-134c-4552-b8c3-9e4cfe79b838",
"filed_issue": null
}
```

---
| Field | Value |
| --- | --- |
| App version | 1.1.6 |
| OS | macOS 26.6.0 |
| Theme | GitHub |
| Path | /chat |
| Tenure | Week 16 |

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are identified in the issue. First clarify which lifecycle-cleanup capability is in scope, then define the session, worktree, branch, PR, and recovery states that must be shown or changed before implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, github
Domain
desktop, developer-experience, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.