github / github/copilot-cli

~/.bash_history is truncated after copilot executes a Bash command

Open
#2,317 2 comments 9 reactions 0 assignees View on GitHub
area:tools
Dominant language
Shell
Stars
11.2k
Forks
1.9k
Avg merge
14h 16m
Merged PRs (30d)
6

Description

### Describe the bug

See: https://github.com/github/copilot-cli/issues/501 for additional context. I believe that #501 should be re-opened, as the fixes mentioned in it are incomplete.

TL;DR: When Copilot executes a Bash command, it truncates the user's `~/.bash_history`, ignoring the user's `HISTFILESIZE`. This is a consequence of the manner in which Bash is invoked (an interactive shell spawned with `bash --norc --noprofile`)

### Affected version

v1.0.11

### Steps to reproduce the behavior

1. Observe `wc -l ~/.bash_history`
2. Instruct copilot to run a Bash command
3. Observe `wc -l ~/.bash_history`

### Expected behavior

Copilot does not modify `~/.bash_history` in any way, especially not truncation.

### Additional context

This issue can be worked around by adding the following shim to your `~/.bashrc`.

```
copilot() {
HISTFILE=/dev/null command copilot "$@"
}
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.