Em um buffer *shell* ou eshell, o Emacs executa a conclusão de arquivo sozinho, observando o sistema de arquivos local. Isso não funciona se você estiver conectado a uma máquina remota por SSH.
Para obter a conclusão dos arquivos remotos, o Emacs teria que deixar o shell manipular a tecla Tab . Mas o manuseio do Tab e outras chaves do Emacs é o que distingue *shell* de *term* .
No eshell, você pode acessar diretórios remotos através do Tramp . Por exemplo, cd /servername:/remote/path fornece um shell em um diretório remoto acessado por SSH. A conclusão funciona se você fizer a conexão remota dessa maneira.