copilot --resume creates an extra empty session-state directory with a new session ID
- Dominant language
- Shell
- Stars
- 11.2k
- Forks
- 1.9k
- Avg merge
- 14h 16m
- Merged PRs (30d)
- 6
Description
### Describe the bug
When resuming a session with:
copilot --resume=
the original session is resumed correctly, but Copilot also creates a new session-state directory under ~/.copilot/session-state/ with a different session ID.
Example
- resumed/original session: f3db8a64-0d62-47a6-9253-dd005738ba5c
- extra new directory created: f35d8fc1-f713-4ecd-bad6-ca09a07cb1f6
Actual behavior
- the original session continues correctly
- agent/tool activity is still associated with the original session
- but a second session-state directory is created for the new ID
- important files inside that new directory are empty
Expected behavior
1. resume should reuse only the original session-state directory, with no extra new directory created
Why this seems wrong
I only noticed this because I built a macOS app to inspect Copilot sessions. From that view, it looks like resume creates a duplicate/empty session artifact even though the real resumed work belongs to the original session.
Repro steps
1. Start a Copilot CLI session and note its session ID
2. Exit the session
3. Run:
copilot --resume=
4. Observe: - original session is resumed
- a second new directory appears under ~/.copilot/session-state/
- files in the new directory are empty
Environment
- Copilot CLI version: 1.0.64
- OS: macOS
### Affected version
GitHub Copilot CLI 1.0.64
### Steps to reproduce the behavior
1. Start a Copilot CLI session and note its session ID
2. Exit the session
3. Run:
copilot --resume=
4. Observe: - original session is resumed
- a second new directory appears under ~/.copilot/session-state/
- files in the new directory are empty
### Expected behavior
Expected behavior
1. resume should reuse only the original session-state directory, with no extra new directory created
### Additional context
Environment
- Copilot CLI version: 1.0.64
- OS: macOS
Contributor guide
Research direction
Reproduce the behavior with copilot --resume= on macOS and inspect ~/.copilot/session-state/ before and after resuming. Trace how the original session ID and the new session ID are selected and persisted; done means resume reuses only the original directory and creates no empty second directory.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- shell
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 56/100