Describe the bug
It seems copilot executes shell commands via bash without first loading ~/.bashrc.
So, even if users explictly set HISTFILESIZE=-1 in ~/.bashrc to customize the max number of lines of ~/.bash_history, running a shell command once via copilot truncates ~/.bash_history to 1000 lines or so.
This problem does not occur on codex.
Affected version
0.0.352 Commit: e743766
Steps to reproduce the behavior
-
In one terminal, check the number of lines of ~/.bash_history.
In my case:
$ wc -l ~/.bash_history
375136 /Users/user/.bash_history
-
In another terminal, run copilot and type Run "echo hello".
-
Then copilot runs echo hello for you.
-
In the terminal used in the step 1, re-check the number of lines
$ wc -l ~/.bash_history
1004 /Users/user/.bash_history
By the way, after the truncation, ~/.bash_history includes
{
echo ___BEGIN___COMMAND_OUTPUT_MARKER___;
PS1="";
PS2="";
EC=$?;
echo "___BEGIN___COMMAND_DONE_MARKER___$EC";
}
, which I'm sure is derived from copilot:
$ rg -o '___BEGIN___COMMAND_OUTPUT_MARKER___' ~/.npm/bin/copilot
995:___BEGIN___COMMAND_OUTPUT_MARKER___
Expected behavior
~/.bash_history should not be truncated.
Additional context
No response
Describe the bug
It seems
copilotexecutes shell commands viabashwithout first loading~/.bashrc.So, even if users explictly set
HISTFILESIZE=-1in~/.bashrcto customize the max number of lines of~/.bash_history, running a shell command once viacopilottruncates~/.bash_historyto 1000 lines or so.This problem does not occur on
codex.Affected version
0.0.352 Commit: e743766
Steps to reproduce the behavior
In one terminal, check the number of lines of
~/.bash_history.In my case:
$ wc -l ~/.bash_history 375136 /Users/user/.bash_historyIn another terminal, run
copilotand typeRun "echo hello".Then
copilotrunsecho hellofor you.In the terminal used in the step 1, re-check the number of lines
$ wc -l ~/.bash_history 1004 /Users/user/.bash_historyBy the way, after the truncation,
~/.bash_historyincludes{ echo ___BEGIN___COMMAND_OUTPUT_MARKER___; PS1=""; PS2=""; EC=$?; echo "___BEGIN___COMMAND_DONE_MARKER___$EC"; }, which I'm sure is derived from
copilot:Expected behavior
~/.bash_historyshould not be truncated.Additional context
No response