EDIT:
I need to cancel my original answer. Your left recursive grammar doesn't seem ambiguous, as I thought. I think I was confused by the additional rule that is used to make the final delimiter optional.
Here is a simplified version of your original, correct recursive grammar:
list: COMMAND
| COMMAND SEPARATOR
| COMMAND SEPARATOR list
;
( , , , , ) C, CS, CSC, CSCS, CSCSC, CSCSCS .. SEPARATOR- , SEPARATOR .
- , / Bison:
list: COMMAND
| COMMAND SEPARATOR
| list SEPARATOR COMMAND
;
, C, CS, CSC, CSSC, CSCSC, CSSCSC .. , - . COMMANDs SEPARATOR , COMMANDS .
, / , Bison , , , , , .
, , , :
list: separatedlist
| separatedlist SEPARATOR
;
separatedlist: COMMAND
| separatedlist SEPARATOR COMMAND
;
, , . , .